3 COMPILERRTDIR= ${SRCTOP}/contrib/llvm-project/compiler-rt
4 UNWINDINCDIR= ${SRCTOP}/contrib/llvm-project/libunwind/include
5 UNWINDSRCDIR= ${SRCTOP}/contrib/llvm-project/libunwind/src
7 STATIC_CFLAGS+=${PICFLAG} -fvisibility=hidden -DVISIBILITY_HIDDEN
9 .PATH: ${COMPILERRTDIR}/lib/builtins
10 .PATH: ${UNWINDSRCDIR}
11 SRCS_EXC+= gcc_personality_v0.c
12 SRCS_EXC+= Unwind-EHABI.cpp
13 SRCS_EXC+= Unwind-sjlj.c
14 SRCS_EXC+= UnwindLevel1-gcc-ext.c
15 SRCS_EXC+= UnwindLevel1.c
16 SRCS_EXC+= UnwindRegistersRestore.S
17 SRCS_EXC+= UnwindRegistersSave.S
18 SRCS_EXC+= libunwind.cpp
21 .for file in ${SRCS_EXC:M*.c}
22 CFLAGS.${file}+= -fno-exceptions -funwind-tables
24 .for file in ${SRCS_EXC:M*.cpp}
25 CXXFLAGS.${file}+= -fno-exceptions -funwind-tables
28 CFLAGS+= -I${UNWINDINCDIR}
30 CFLAGS+= -D_LIBUNWIND_IS_NATIVE_ONLY
31 CFLAGS+= -D_LIBUNWIND_USE_FRAME_HEADER_CACHE
34 STATIC_CXXFLAGS+= -fvisibility=hidden -fPIC
35 # Probably need to just move this earlier or use CXXFLAGS
36 .if ${MK_DIRDEPS_BUILD} == "yes"
37 # Avoid dependency on lib/libc++
38 CFLAGS+= -isystem ${SRCTOP}/contrib/llvm-project/libcxx/include -nostdinc++