[libcxx] Re-include <osreldate.h> in __config for FreeBSD

  In 0a97720d0197 some changes were made to `__config` for assuming that
  `__BYTE_ORDER__` is always present.

  However, this deleted a `<osreldate.h>` include for FreeBSD, which is
  required to get the value of `__FreeBSD_version`, and that is used later
  in the file to determine whether `_LIBCPP_C_HAS_NO_GETS` needs to be
  enabled.

  Include `<osreldate.h>` just after the other includes used for feature
  detection, to fix this.

  Note that when FreeBSD 13 is EOLed, this can be removed, as then all
  supported FreeBSD versions will no longer have `gets()`.

PR:		276104
MFC after:	1 month

(cherry picked from commit 653487bbc8)
This commit is contained in:
Dimitry Andric 2024-01-07 17:03:13 +01:00
parent 0c85e2760f
commit 15ce79bc8b

View file

@ -477,6 +477,10 @@ _LIBCPP_HARDENING_MODE_DEBUG
# include <features.h> // for __NATIVE_ASCII_F
# endif
# ifdef __FreeBSD__
# include <osreldate.h> // for __FreeBSD_version
# endif
# ifndef __BYTE_ORDER__
# error \
"Your compiler doesn't seem to define __BYTE_ORDER__, which is required by libc++ to know the endianness of your target platform"