Index: Makefile.inc1 =================================================================== --- Makefile.inc1 +++ Makefile.inc1 @@ -1983,7 +1983,7 @@ # # static libgcc.a prerequisite for shared libc # -_prereq_libs= gnu/lib/libssp/libssp_nonshared gnu/lib/libgcc lib/libcompiler_rt +_prereq_libs= gnu/lib/libssp/libssp_nonshared lib/libcompiler_rt # These dependencies are not automatically generated: # @@ -1992,7 +1992,6 @@ # _startup_libs= gnu/lib/csu _startup_libs+= lib/csu -_startup_libs+= gnu/lib/libgcc _startup_libs+= lib/libcompiler_rt _startup_libs+= lib/libc _startup_libs+= lib/libc_nonshared @@ -2000,11 +1999,27 @@ _startup_libs+= lib/libcxxrt .endif +.if ${MK_LLVM_LIBUNWIND} != "no" +_prereq_libs+= lib/libgcc_eh lib/libgcc_s +_startup_libs+= lib/libgcc_eh lib/libgcc_s + +lib/libgcc_s__L: lib/libc__L +lib/libgcc_s__L: lib/libc_nonshared__L +.if ${MK_LIBCPLUSPLUS} != "no" +lib/libcxxrt__L: lib/libgcc_s__L +.endif + +.else # MK_LLVM_LIBUNWIND == no + +_prereq_libs+= gnu/lib/libgcc +_startup_libs+= gnu/lib/libgcc + gnu/lib/libgcc__L: lib/libc__L gnu/lib/libgcc__L: lib/libc_nonshared__L .if ${MK_LIBCPLUSPLUS} != "no" lib/libcxxrt__L: gnu/lib/libgcc__L .endif +.endif _prebuild_libs= ${_kerberos5_lib_libasn1} \ ${_kerberos5_lib_libhdb} \ Index: gnu/lib/libgcc/Makefile =================================================================== --- gnu/lib/libgcc/Makefile +++ gnu/lib/libgcc/Makefile @@ -74,34 +74,6 @@ LIB2ADD = $(LIB2FUNCS_EXTRA) LIB2ADD_ST = $(LIB2FUNCS_STATIC_EXTRA) -# Additional sources to handle exceptions; overridden by targets as needed. -.if ${MK_LLVM_LIBUNWIND} != "no" - -.PATH: ${COMPILERRTDIR}/lib/builtins -.PATH: ${UNWINDSRCDIR} -LIB2ADDEH = gcc_personality_v0.c \ - int_util.c \ - Unwind-EHABI.cpp \ - Unwind-sjlj.c \ - UnwindLevel1-gcc-ext.c \ - UnwindLevel1.c \ - UnwindRegistersRestore.S \ - UnwindRegistersSave.S \ - libunwind.cpp - -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 -.if ${MK_DIRDEPS_BUILD} == "yes" -# Avoid dependency on lib/libc++ -CFLAGS+= -I${SRCTOP}/contrib/libc++/include -.endif - -.else # MK_LLVM_LIBUNWIND - .if ${TARGET_CPUARCH} == "arm" LIB2ADDEH = unwind-arm.c libunwind-arm.S pr-support.c unwind-c.c .else @@ -109,8 +81,6 @@ unwind-c.c .endif -.endif # MK_LLVM_LIBUNWIND - LIB2ADDEHSTATIC = $(LIB2ADDEH) LIB2ADDEHSHARED = $(LIB2ADDEH) @@ -202,14 +172,7 @@ .endif COMMONHDRS= tm.h tconfig.h options.h gthr-default.h -.if ${MK_LLVM_LIBUNWIND} != "no" -# unwind.h is a generated file when MK_LLVM_LIBUNWIND == "no", and a stale -# copy may be left behind in OBJDIR when switching, so remove it explicitly. -beforebuild: - @rm -f ${.OBJDIR}/unwind.h -.else COMMONHDRS+= unwind.h -.endif #----------------------------------------------------------------------- # Index: lib/Makefile =================================================================== --- lib/Makefile +++ lib/Makefile @@ -160,6 +160,8 @@ SUBDIR.${MK_EFI}+= libefivar SUBDIR.${MK_LIBTHR}+= libthr +SUBDIR.${MK_LLVM_LIBUNWIND}+= libgcc_eh +SUBDIR.${MK_LLVM_LIBUNWIND}+= libgcc_s SUBDIR.${MK_NAND}+= libnandfs SUBDIR.${MK_NETGRAPH}+= libnetgraph SUBDIR.${MK_NIS}+= libypclnt