aboutsummaryrefslogtreecommitdiff
path: root/lib/libc++/Makefile
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2024-01-24 19:17:23 +0000
committerDimitry Andric <dim@FreeBSD.org>2024-04-06 20:13:49 +0000
commit7a6dacaca14b62ca4b74406814becb87a3fefac0 (patch)
tree273a870ac27484bb1f5ee55e7ef0dc0d061f63e7 /lib/libc++/Makefile
parent46c59ea9b61755455ff6bf9f3e7b834e1af634ea (diff)
parent4df029cc74e5ec124f14a5682e44999ce4f086df (diff)
Diffstat (limited to 'lib/libc++/Makefile')
-rw-r--r--lib/libc++/Makefile14
1 files changed, 12 insertions, 2 deletions
diff --git a/lib/libc++/Makefile b/lib/libc++/Makefile
index 9d74407f2eeb..ea93913e3585 100644
--- a/lib/libc++/Makefile
+++ b/lib/libc++/Makefile
@@ -88,16 +88,21 @@ cxxrt_${_S}: ${_LIBCXXRTDIR}/${_S} .NOMETA
.endfor
WARNS?= 0
+CFLAGS+= -isystem ${SRCDIR}
CFLAGS+= -isystem ${.CURDIR}
CFLAGS+= -isystem ${HDRDIR}
-CFLAGS+= -isystem ${SRCDIR}
CFLAGS+= -isystem ${_LIBCXXRTDIR}
CFLAGS+= -nostdinc++
CFLAGS+= -nostdlib
CFLAGS+= -D_LIBCPP_BUILDING_LIBRARY
+CFLAGS+= -D_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER
+CFLAGS+= -D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES
CFLAGS+= -DLIBCXXRT
-CFLAGS+= -ffunction-sections
CFLAGS+= -fdata-sections
+CFLAGS+= -ffunction-sections
+CFLAGS+= -fno-semantic-interposition
+CFLAGS+= -fvisibility-inlines-hidden
+CFLAGS+= -fvisibility=hidden
CXXSTD?= c++20
LIBADD+= cxxrt
@@ -248,6 +253,10 @@ STD_HEADERS+= wctype.h
STD+= ${HDRDIR}/${hdr}
.endfor
+# Special case for __assertion_handler, which as of libc++ 18.0.0 is generated
+# by CMake.
+STD+= ${.CURDIR}/__assertion_handler
+
# Special case for __config_site, which as of libc++ 12.0.0 is generated by
# CMake, and as of 13.0.0 installed side-by-side with__config.
STD+= ${.CURDIR}/__config_site
@@ -981,6 +990,7 @@ NUM_HEADERS+= partial_sum.h
NUM_HEADERS+= pstl_reduce.h
NUM_HEADERS+= pstl_transform_reduce.h
NUM_HEADERS+= reduce.h
+NUM_HEADERS+= saturation_arithmetic.h
NUM_HEADERS+= transform_exclusive_scan.h
NUM_HEADERS+= transform_inclusive_scan.h
NUM_HEADERS+= transform_reduce.h