diff --git a/backend.native/compiler/ir/backend.native/src/llvm/LLVM.def b/backend.native/compiler/ir/backend.native/src/llvm/LLVM.def index f5152374184..ad5bb08710e 100644 --- a/backend.native/compiler/ir/backend.native/src/llvm/LLVM.def +++ b/backend.native/compiler/ir/backend.native/src/llvm/LLVM.def @@ -18,12 +18,23 @@ linkerOpts = -stdlib=libc++ -fPIC -fvisibility-inlines-hidden \ -pedantic -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor -Wdelete-non-virtual-dtor \ -std=c++11 \ -DNDEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS \ + +linkerOpts.osx = \ -Wl,-search_paths_first -Wl,-headerpad_max_install_names \ -lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter \ -lLLVMX86Desc -lLLVMMCDisassembler -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMInterpreter \ -lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine -lLLVMInstrumentation -lLLVMProfileData -lLLVMTransformUtils \ -lLLVMBitWriter -lLLVMExecutionEngine -lLLVMTarget -lLLVMAnalysis -lLLVMRuntimeDyld -lLLVMObject -lLLVMMCParser \ - -lLLVMBitReader -lLLVMMC -lLLVMCore -lLLVMSupport -lpthread -lz -lm \ - -lffi -linkerOpts.linux=-Wl,-z,noexecstack -linkerOpts.osx = -lcurses + -lLLVMBitReader -lLLVMMC -lLLVMCore -lLLVMSupport \ + -lpthread -lz -lm -lcurses -lffi + +linkerOpts.linux=\ + -Wl,—whole-archive \ + -lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter \ + -lLLVMX86Desc -lLLVMMCDisassembler -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMInterpreter \ + -lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine -lLLVMInstrumentation -lLLVMProfileData -lLLVMTransformUtils \ + -lLLVMBitWriter -lLLVMExecutionEngine -lLLVMTarget -lLLVMAnalysis -lLLVMRuntimeDyld -lLLVMObject -lLLVMMCParser \ + -lLLVMBitReader -lLLVMMC -lLLVMCore -lLLVMSupport \ + -Wl,—no-whole-archive \ + -lrt -ldl -ltinfo -lpthread -lz -lm -lffi \ + -Wl,-z,noexecstack