202 Commits

Author SHA1 Message Date
Rene Rivera
499d28e34f Update from hash-predef. 2022-02-27 14:31:25 -06:00
Zhang Na
4abc13fa55 Add support for LoongArch (#122) 2022-02-25 21:02:32 -06:00
Rene Rivera
76218d7a19 Predef 1.13.1 2021-10-24 12:51:46 -05:00
tkoecker
1be0e4a2d8 added missing brackets (#118) 2021-05-21 09:31:11 -05:00
Jonathan Wakely
df63bf3dca Fix spelling of epoch (#119) 2021-05-21 09:30:36 -05:00
Rene Rivera
c9ee4eb329 Update from upstream Hash Predef. 2021-02-13 10:21:16 -06:00
Rene Rivera
cfbda6e0cc Bump to 1.13 2021-02-09 23:05:35 -06:00
SSE4
d3460e05aa Add support for Elbrus 2000 (e2k) architecture (#116) 2021-02-09 22:52:29 -06:00
Rene Rivera
f51e4ff45e Fix bad link to libstdc++. 2021-02-09 22:49:00 -06:00
Rene Rivera
40c6205858 Fix incorrect reference to IA-64 instead of X86-64. 2021-02-09 22:31:02 -06:00
Rene Rivera
a7ac034985 Add WORD_BITS predef detection.
fixes https://github.com/boostorg/predef/pull/107
fixes https://github.com/boostorg/predef/pull/108
2021-01-05 09:40:19 -06:00
Rene Rivera
d990549214 Fix redef of OS_BSD predef.
When a BSD sub-os header is included directly the general
OS_BSD predef is inidially defined as not-available. Which
warns as the sub-os header defines it. The fix is to unconditionally
un-def the OS_BSD predef.

fixes https://github.com/boostorg/predef/issues/111
2021-01-04 14:37:33 -06:00
Rene Rivera
e697cafd12 Fix not handling stdcxx recent versions that go above 10.x.
Fixes #112
2021-01-03 22:52:27 -06:00
brad0
99cfb298de Switch to using the endian.h header on OpenBSD. (#110)
Switch to using the endian.h header on OpenBSD.
2021-01-02 20:49:42 -06:00
Rene Rivera
17cb5b78d5 Start of 1.12 changes. 2021-01-02 17:57:43 -06:00
Kevin Puetz
078226b9f8 wineg++ doesn't have <ntverp.h> either (#104) 2020-02-29 20:59:29 -06:00
Rene Rivera
966707dc1f Remove deprecated HASH_PREDEF_OS_ANDROID.
Fixes #101 (merge from hash-predef)
2020-02-29 09:34:42 -06:00
Rene Rivera
c092d00770 Fix UWP detection error on WinCE.
The ntverp.h header is not avilable on Win32 WinCE, just like MinGW32.

Fixes #102 (merge from hash-predef)
2020-02-29 08:06:33 -06:00
Rene Rivera
fa099f3b2c Fix C++ version number doc.
Fixes #105 (merge from hash-predef)
2020-02-28 23:35:01 -06:00
Rene Rivera
aa6e232bf1 Remove deprecated Boost endian macros. 2020-01-01 16:08:28 -06:00
Rene Rivera
fb59068deb Convert documentatio to Asciidoctor. 2019-12-31 16:14:17 -06:00
Rene Rivera
29095cefd9 Start of 1.11 version. Add missing (c) for riscv.h 2019-08-04 09:20:13 -05:00
Andreas Schwab
fc99bc29cb Add detection of RISC-V from __riscv (#97) 2019-08-03 10:27:22 -05:00
Thomas Petazzoni
4bc7cc02ed Add RISC-V endian detection (#100)
boost/predef/other/endian.h has two ways of detecting the endianess:

 (1) It includes <endian.h> if BOOST_LIB_C_GNU is defined, and then
     use __BYTE_ORDER to decide the endianness.

 (2) Otherwise, if (1) was not possible for some reason, it uses
     architecture defines to decide the endianness.

(1) works perfectly fine with glibc toolchains, because
BOOST_LIB_C_GNU is defined, but it doesn't work with musl. Due to
this, <endian.h> is not included, __BYTE_ORDER is not defined, and
method (1) does not work, causing build failures on musl toolchains
that don't have explicit handling by architecture name (method 2).

So this commit fixes RISC-V musl build by adding support for the
__riscv architecture define, to determine that the endianness is
little endian.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-08-03 10:25:06 -05:00
Rene Rivera
2e65c250f5 Update copyright date. 2019-01-21 22:33:23 -06:00
Rene Rivera
a2608f26a3 Rework ARM detection to favor versioned predefs.
This reworks the order in which the compiler predefs are checked to use
the ones that provide version info. Also add the arch predefs for older
compilers that don't define the predefs with version info for arm4,
arm5, arm6, and arm7.

Continuation of #94
2019-01-21 22:13:42 -06:00
Rene Rivera
7e31244f01 Fix bad include of sub-BSD os headers from main BSD header.
Fixes #85
2019-01-14 00:21:46 -06:00
Rene Rivera
6fea8a4b90 Fix NetBSD def name. 2019-01-13 11:56:08 -06:00
Rene Rivera
2e35ba95c8 Fixes use of deprecated TARGET_IPHONE_SIMULATOR.
The TARGET_IPHONE_SIMULATOR predef was deprecated in favor of
TARGET_OS_SIMULATOR. We now use both predefs to detect device vs.
simulator.

Fixes #83
2019-01-13 08:53:22 -06:00
Rene Rivera
a340a52605 Add PLAT_ANDROID and deprecate OS_ANDROID.
Fixes #41 #81
2019-01-10 13:27:41 -06:00
Rene Rivera
eb682657a2 Add detection of ARM from __aarch64__ predef.
Fixes #94
2019-01-07 16:28:30 -06:00
Rene Rivera
c53294180d Refresh from Hash. 2019-01-07 08:33:58 -06:00
Dimitri John Ledkov
d58fcca2d5 os/linux: add more linux detection defines. (#91)
Some releases of g++, on some platforms, whilst running under some
standards, may not define neither linux, nor __linux. Add detections
for __linux__ and __gnu_linux__ for robustness.
2018-11-26 08:15:55 -06:00
James E. King III
62a50d3892 Add version information to os/cygwin detection (#88) 2018-11-06 08:56:11 -06:00
Rene Rivera
32d4581c16 Deprecation message for detail endian headers. 2018-09-03 15:42:43 -05:00
Rene Rivera
92881c4c7a Bump version for next release. 2018-09-02 14:30:00 -05:00
Benjamin Worpitz
07df9dd360 Always define BOOST_COMP_NVCC instead of BOOST_COMP_NVCC_EMULATED (#84)
Currently BOOST_COMP_NVCC is never set but always BOOST_COMP_NVCC_EMULATED
because the NVCC preprocessor emulates the host compiler being used
(gcc/clang/msvc/...) which are detected earlier.

The nvcc compilation process is somewhat special as can be read here:
https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html#cuda-compilation-trajectory
The nvcc compiler precompiles the input two times. Once for the device code
being compiled by the cicc device compiler and once for the host code
compiled by the real host compiler. NVCC uses gcc/clang/msvc/...
depending on the host compiler being set on the command line.

Predef (as a preprocessor only lib) detects the one doing the preprocessing
as compiler and expects it to be the one doing the real compilation.
This is not true for NVCC which is only doing the preprocessing and which
is using another compiler for parts of its work. So for NVCC it should be
allowed to set BOOST_COMP_NVCC additionally to the already detected host
compiler because both is true: It is gcc/clang/... compiling the code, but it
is also NVCC doing th preprocessing and adding some other quirks you may
want to detect.

This behavior is similar to what boost config is doing in `select_compiler_config.hpp`.
There the NVCC detection is not handled as a real compiler (part of the
#if-#elif) but as additional option before the real compiler.
2018-08-30 14:41:44 -05:00
Rene Rivera
759400b413 Rebase from hash-predef source. 2018-08-25 23:36:20 -05:00
Rene Rivera
560ff5298e Bump version, add history. 2018-06-23 21:37:05 -05:00
Tim Blechmann
5d8818ddcb architecture: add support for __ARM_ARCH macro (#74)
gcc-6 defines __ARM_ARCH
2018-06-12 07:40:29 -05:00
Benjamin Worpitz
11569d270c add detection for PTX architecture (#73) 2018-06-12 07:39:43 -05:00
Benjamin Worpitz
7a4ca9dc90 add nvcc compiler detection (#72) 2018-05-13 10:22:00 -05:00
Benjamin Worpitz
e8681a9b37 Add support for detecting CUDA (#71)
* add support for detecting CUDA
* add test for new make macro
2018-05-13 10:21:13 -05:00
Peter Kolbus
9e31c6455c Remove undefined BOOST_ARCH_AMD64 (#75)
Remove reference to BOOST_ARCH_AMD64 as it has not been defined since commit b10e3490e.
2018-05-13 10:19:21 -05:00
James E. King, III
5e8f5d5a4b properly obtain the FreeBSD version (BOOST_OS_BSD_FREE) (#69) 2017-11-10 07:04:25 -06:00
James E. King, III
74f88005cc rename library/c/cloudlibc.h to library/c/cloudabi.h (#68)
fix typo in cloudlibc detection
2017-11-09 22:48:35 -06:00
James E. King, III
4a230ebe85 add detection for OpenBSD 5.x and 6.x (#67)
This fixes #66
2017-11-08 23:01:35 -06:00
Rene Rivera
e31d12f25d Fix typo in header guard. 2017-10-25 12:32:20 -05:00
James E. King, III
6f8a9ae440 platform detection for CloudABI with cloudlibc detection (#65) 2017-10-23 13:54:01 -05:00
Rene Rivera
a7cdea8faf Merge branch 'develop' of https://github.com/boostorg/predef into
develop

Conflicts:
	include/boost/predef/platform/windows_runtime.h
	include/boost/predef/platform/windows_uwp.h
2017-10-23 09:34:04 -05:00