summaryrefslogtreecommitdiffstats
path: root/gnu/lib/libsupc++
diff options
context:
space:
mode:
authorkan <kan@FreeBSD.org>2007-05-19 04:25:59 +0000
committerkan <kan@FreeBSD.org>2007-05-19 04:25:59 +0000
commitebf45ed0c9ac33acf511d695cfa9c23664f0096f (patch)
treec672216e954c97dc45e1ed2b7fc903556dfde7b5 /gnu/lib/libsupc++
parentbbc340f2f6b6d86b4e93b75cf2dc5f1ca503724b (diff)
downloadFreeBSD-src-ebf45ed0c9ac33acf511d695cfa9c23664f0096f.zip
FreeBSD-src-ebf45ed0c9ac33acf511d695cfa9c23664f0096f.tar.gz
Update bmake glue to build GCC 4.2.
Also: Switch FreeBSD to use libgcc_s.so.1. Use dl_iterate_phdr to locate shared objects' exception frame info instead of depending on older register_frame_info machinery. This allows us to avoid depending on libgcc_s.so.1 in binaries that do not use exception handling directly. As an additional benefit it breaks circular libc <=> libgcc_s.so.1 dependency too. Build newly added libgomp.so.1 library, the runtime support bits for OpenMP. Build LGPLed libssp library. Our libc provides our own BSD-licensed SSP callbacks implementation, so this library is only built to benefit applications that have hadcoded knowledge of libssp.so and libssp_nonshared.a. When linked in from command line, these libraries override libc implementation.
Diffstat (limited to 'gnu/lib/libsupc++')
-rw-r--r--gnu/lib/libsupc++/Makefile18
1 files changed, 13 insertions, 5 deletions
diff --git a/gnu/lib/libsupc++/Makefile b/gnu/lib/libsupc++/Makefile
index 011556e..54e96b8 100644
--- a/gnu/lib/libsupc++/Makefile
+++ b/gnu/lib/libsupc++/Makefile
@@ -1,14 +1,15 @@
# $FreeBSD$
GCCDIR= ${.CURDIR}/../../../contrib/gcc
+GCCLIB= ${.CURDIR}/../../../contrib/gcclibs
SRCDIR= ${.CURDIR}/../../../contrib/libstdc++/libsupc++
-.PATH: ${SRCDIR} ${GCCDIR}
+.PATH: ${SRCDIR} ${GCCLIB}/libiberty
# Static only.
LIB= supc++
-SRCS+= del_op.cc del_opnt.cc del_opv.cc del_opvnt.cc eh_alloc.cc \
- eh_aux_runtime.cc eh_catch.cc eh_exception.cc eh_globals.cc \
+SRCS+= del_op.cc del_opnt.cc del_opv.cc del_opvnt.cc eh_alloc.cc eh_arm.cc \
+ eh_aux_runtime.cc eh_call.cc eh_catch.cc eh_exception.cc eh_globals.cc \
eh_personality.cc eh_term_handler.cc eh_terminate.cc eh_throw.cc \
eh_type.cc eh_unex_handler.cc guard.cc new_handler.cc new_op.cc \
new_opnt.cc new_opv.cc new_opvnt.cc pure.cc tinfo.cc tinfo2.cc \
@@ -18,12 +19,19 @@ SRCS+= del_op.cc del_opnt.cc del_opv.cc del_opvnt.cc eh_alloc.cc \
SRCS+= cp-demangle.c
CFLAGS+= -DIN_GLIBCPP_V3 -DHAVE_CONFIG_H
-CFLAGS+= -I${SRCDIR} -I${GCCDIR} -I${.CURDIR}/../libstdc++
+CFLAGS+= -I${GCCLIB}/include -I${SRCDIR} -I${GCCDIR}
+CFLAGS+= -I${.CURDIR}/../libstdc++ -I.
CFLAGS+= -frandom-seed=RepeatabilityConsideredGood
CXXFLAGS+= -fno-implicit-templates -ffunction-sections -fdata-sections
HDRS= exception new typeinfo cxxabi.h exception_defines.h
INCS= ${HDRS:S;^;${SRCDIR}/;}
-INCSDIR=${INCLUDEDIR}/c++/3.4
+INCSDIR=${INCLUDEDIR}/c++/4.2
+
+unwind.h: ${GCCDIR}/unwind-generic.h
+ ln -sf ${.ALLSRC} ${.TARGET}
+
+SRCS+= unwind.h
+CLEANFILES+= unwind.h
.include <bsd.lib.mk>
OpenPOWER on IntegriCloud