]> git.siccegge.de Git - frida/frida.git/commitdiff
Clean up LLVM Linking and use LLVM.so
authorChristoph Egger <christoph@anonymous.siccegge.de>
Wed, 26 Nov 2014 19:32:54 +0000 (20:32 +0100)
committerChristoph Egger <christoph@anonymous.siccegge.de>
Wed, 26 Nov 2014 19:32:54 +0000 (20:32 +0100)
LLVM.so prevents segfaults when running with an llvmized graphics
driver as it avoids linking against LLVM multiple times (and using
incompatible versions).

CMakeLists.txt

index bd078ad0ee6a38138d500338222f261f7068fe01..87bed5a2da49a9d56f7f790eeeee3e948cf1e62b 100644 (file)
@@ -22,9 +22,10 @@ if(NOT LLVM_CONFIG)
   message(FATAL_ERROR "LLVM not found")
 endif()
 
-execute_process(COMMAND ${LLVM_CONFIG} --cxxflags OUTPUT_VARIABLE LLVM_CFLAGS  OUTPUT_STRIP_TRAILING_WHITESPACE)
-execute_process(COMMAND ${LLVM_CONFIG} --ldflags  OUTPUT_VARIABLE LLVM_LDFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE)
-execute_process(COMMAND ${LLVM_CONFIG} --libs     OUTPUT_VARIABLE LLVM_LIBS    OUTPUT_STRIP_TRAILING_WHITESPACE)
+execute_process(COMMAND ${LLVM_CONFIG} --cxxflags    OUTPUT_VARIABLE LLVM_CFLAGS      OUTPUT_STRIP_TRAILING_WHITESPACE)
+execute_process(COMMAND ${LLVM_CONFIG} --ldflags     OUTPUT_VARIABLE LLVM_LDFLAGS     OUTPUT_STRIP_TRAILING_WHITESPACE)
+execute_process(COMMAND ${LLVM_CONFIG} --libs        OUTPUT_VARIABLE LLVM_LIBS        OUTPUT_STRIP_TRAILING_WHITESPACE)
+execute_process(COMMAND ${LLVM_CONFIG} --system-libs OUTPUT_VARIABLE LLVM_SYSTEM_LIBS OUTPUT_STRIP_TRAILING_WHITESPACE)
 
 string(REPLACE -O2 '' LLVM_CFLAGS ${LLVM_CFLAGS})
 
@@ -63,4 +64,4 @@ ADD_DEFINITIONS(${QT_DEFINITIONS})
 qt5_use_modules(frida Widgets)
 INCLUDE_DIRECTORIES("src")
 
-TARGET_LINK_LIBRARIES(frida ${QT_LIBRARIES} ${LLVM_LDFLAGS} ${LLVM_LIBS} ${LOG4CXX_LDFLAGS} ${GUILE_LDFLAGS} -ltinfo -lpthread -ldl)
+TARGET_LINK_LIBRARIES(frida ${QT_LIBRARIES} ${LLVM_LDFLAGS} -lLLVM-3.5 ${LLVM_SYSTEM_LIBS} ${LOG4CXX_LDFLAGS} ${GUILE_LDFLAGS})