From 86423f381dc6a863f2951f2a52e9a417e551828c Mon Sep 17 00:00:00 2001 From: Nikolay Igotti Date: Tue, 11 Oct 2016 17:10:29 +0300 Subject: [PATCH] Fix InteropExample on Linux. --- InteropExample/src/main/kotlin/llvm/LLVM.def | 23 +++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/InteropExample/src/main/kotlin/llvm/LLVM.def b/InteropExample/src/main/kotlin/llvm/LLVM.def index 7c39140a493..504a298cddc 100644 --- a/InteropExample/src/main/kotlin/llvm/LLVM.def +++ b/InteropExample/src/main/kotlin/llvm/LLVM.def @@ -13,16 +13,29 @@ compilerOpts = -std=c99 -fPIC \ linker = clang++ -linkerOpts = -stdlib=libc++ -fPIC -fvisibility-inlines-hidden \ +linkerOpts = -Wall + +linkerOpts.osx = -stdlib=libc++ -fPIC -Wl,-search_paths_first \ + -Wl,-headerpad_max_install_names -fvisibility-inlines-hidden \ -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers \ -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 \ - -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 -lz -lm -lffi -linkerOpts.linux = -Wl,-z,noexecstack -linkerOpts.osx = -lcurses + -lLLVMBitReader -lLLVMMC -lLLVMCore -lLLVMSupport + +linkerOpts.linux = -Wl,-z,noexecstack -fvisibility=default \ + -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