Adapt libstdc++ os_defines for VxWorks to more recent versions
authorJerome Lambourg <lambourg@adacore.com>
Mon, 30 Dec 2019 22:22:34 +0000 (22:22 +0000)
committerOlivier Hainque <hainque@gcc.gnu.org>
Mon, 30 Dec 2019 22:22:34 +0000 (22:22 +0000)
commitc75e82cd60a1479c1c8539296cd2e91ea9063526
tree2966972a2bffe5e6f714070e819a806cf721c091
parentbbbc05957e55777805cef2d7ea39f1a73604c91a
Adapt libstdc++ os_defines for VxWorks to more recent versions

This change reworks the VxWorks specific os_defines.h internal
lisbstdc++ header to help fix build and runtime failures of various
kinds in environments from 6.4/6.9 to 7 SR640, based on experiments
and observations conducted against real installs of these OSes for
different CPU architectures.

2019-12-30  Jerome Lambourg  <lambourg@adacore.com>
           Olivier Hainque  <hainque@adacore.com>

libstdc++
* config/os/vxworks/os_defines.h
(NOMINMAX): Always redefine to 1.
(_NO_CPP_INLINES): Likewise.
(_GLIBCXX_USE_WEAK_REF): Define to 1 for RTP on
VxWorks >= 7, to 0 otherwise.
(_GLIBCXX_HAVE_TLS): Define to 1.
For VxWorks >= 7:
(_GLIBCXX_USE_C99_MATH): Define to 1.
(_GLIBCXX_USE_C99_MATH_FP_MACROS_DYNAMIC): Define to 0.
(_HAS_TR1_DECLARATIONS): Redefine to 0.
For VxWorks < 7, RTP:
(_GLIBCXX_INCLUDE_NEXT_C_HEADERS): Define to 1.
(_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC): Redefine to 1.
(__CORRECT_ISO_CPP11_MATH_H_PROTO_FP): Define.
For VxWorks < 7, kernel: #include <vxWorks.h>

Co-Authored-By: Olivier Hainque <hainque@adacore.com>
From-SVN: r279792
libstdc++-v3/ChangeLog
libstdc++-v3/config/os/vxworks/os_defines.h