Compile libcxxrt as C++11, since it is only really used in combination
with libc++, which is also C++11. Also change one _Static_assert (which is really C11) back into static_assert, like upstream. This should help when compiling libcxxrt with newer versions of gcc, which refuse to recognize any form of static assertions, if not compiling for C++11 or higher. While here, add -nostdinc++ to CFLAGS, to prevent picking up any C++ headers outside the source tree.
This commit is contained in:
parent
0b3b29f07b
commit
6b368b3f04
@ -101,7 +101,7 @@ typedef struct {
|
||||
uint32_t init_half;
|
||||
uint32_t lock_half;
|
||||
} guard_t;
|
||||
_Static_assert(sizeof(guard_t) == sizeof(uint64_t), "");
|
||||
static_assert(sizeof(guard_t) == sizeof(uint64_t), "");
|
||||
static const uint32_t LOCKED = 1;
|
||||
static const uint32_t INITIALISED = static_cast<guard_lock_t>(1) << 24;
|
||||
# endif
|
||||
|
@ -20,7 +20,10 @@ SRCS+= libelftc_dem_gnu3.c\
|
||||
guard.cc
|
||||
|
||||
WARNS= 0
|
||||
CFLAGS+= -I${SRCDIR}
|
||||
CFLAGS+= -I${SRCDIR} -nostdinc++
|
||||
.if empty(CXXFLAGS:M-std=*)
|
||||
CXXFLAGS+= -std=c++11
|
||||
.endif
|
||||
VERSION_MAP= ${.CURDIR}/Version.map
|
||||
|
||||
.include <bsd.lib.mk>
|
||||
|
Loading…
x
Reference in New Issue
Block a user