diff options
Diffstat (limited to 'lib/libgcc_eh/Makefile.inc')
-rw-r--r-- | lib/libgcc_eh/Makefile.inc | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/lib/libgcc_eh/Makefile.inc b/lib/libgcc_eh/Makefile.inc new file mode 100644 index 0000000000000..a8536e2413f12 --- /dev/null +++ b/lib/libgcc_eh/Makefile.inc @@ -0,0 +1,39 @@ +# $FreeBSD$ + +COMPILERRTDIR= ${SRCTOP}/contrib/compiler-rt +UNWINDINCDIR= ${SRCTOP}/contrib/llvm/projects/libunwind/include +UNWINDSRCDIR= ${SRCTOP}/contrib/llvm/projects/libunwind/src + +STATIC_CFLAGS+=${PICFLAG} -fvisibility=hidden -DVISIBILITY_HIDDEN + +.PATH: ${COMPILERRTDIR}/lib/builtins +.PATH: ${UNWINDSRCDIR} +SRCS_EXC+= gcc_personality_v0.c +SRCS_EXC+= int_util.c +SRCS_EXC+= Unwind-EHABI.cpp +SRCS_EXC+= Unwind-sjlj.c +SRCS_EXC+= UnwindLevel1-gcc-ext.c +SRCS_EXC+= UnwindLevel1.c +SRCS_EXC+= UnwindRegistersRestore.S +SRCS_EXC+= UnwindRegistersSave.S +SRCS_EXC+= libunwind.cpp + +SRCS+= ${SRCS_EXC} +.for file in ${SRCS_EXC:M*.c} +CFLAGS.${file}+= -fno-exceptions -funwind-tables +.endfor +.for file in ${SRCS_EXC:M*.cpp} +CXXFLAGS.${file}+= -fno-exceptions -funwind-tables +.endfor + +CFLAGS+= -I${UNWINDINCDIR} -I${.CURDIR} -D_LIBUNWIND_IS_NATIVE_ONLY +.if empty(CXXFLAGS:M-std=*) +CXXFLAGS+= -std=c++11 +.endif +CXXFLAGS+= -fno-rtti +STATIC_CXXFLAGS+= -fvisibility=hidden -fPIC +# Probably need to just move this earlier or use CXXFLAGS +.if ${MK_DIRDEPS_BUILD} == "yes" +# Avoid dependency on lib/libc++ +CFLAGS+= -isystem ${SRCTOP}/contrib/libc++/include -nostdinc++ +.endif |