diff -ur a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt 2019-09-10 14:05:06.000000000 +0300 +++ b/CMakeLists.txt 2019-10-21 10:18:05.867675179 +0300 @@ -110,16 +110,8 @@ configure_file(include/QBDI/Version.h.in "${CMAKE_SOURCE_DIR}/include/QBDI/Version.h" @ONLY) -# Add dependency build targets - -add_subdirectory(deps) - if(${DEPENDENCY_SATISFIED}) -# Add includes - -set(LLVM_LIBS_DIR deps/llvm/${PLATFORM}/lib) - # Resolve LLVM options if((${PLATFORM} STREQUAL "linux-X86_64") OR @@ -270,7 +262,7 @@ enable_language(ASM_MASM) set(ASM_EXT "asm") else() - set(CMAKE_ASM-ATT_COMPILER ${AS_BINARY}) + set(CMAKE_ASM_COMPILER ${AS_BINARY}) enable_language(ASM-ATT) set(ASM_EXT "s") if(${OS} STREQUAL "iOS") @@ -294,7 +286,7 @@ if(${OS} STREQUAL "win") PREPEND(LLVM_STATIC_LIBS ${CMAKE_SOURCE_DIR}/${LLVM_LIBS_DIR}/ ${_LLVM_STATIC_LIBS}) else() - PREPEND(LLVM_STATIC_LIBS ${CMAKE_SOURCE_DIR}/${LLVM_LIBS_DIR}/lib ${_LLVM_STATIC_LIBS}) + PREPEND(LLVM_STATIC_LIBS ${LLVM_STATIC_LIBS_DIR}/lib ${_LLVM_STATIC_LIBS}) endif() # Final QBDI static library is a merge of static libraries @@ -303,8 +295,10 @@ target_include_directories(QBDI_obj PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/include/QBDI" "${CMAKE_CURRENT_SOURCE_DIR}/src" - "${CMAKE_CURRENT_SOURCE_DIR}/deps/llvm/${PLATFORM}/include" - "${CMAKE_CURRENT_SOURCE_DIR}/deps/llvm/${PLATFORM}/lib/Target/${LLVM_ARCH}" + "${LLVM_BASE_DIR}/include" + "${LLVM_BASE_DIR}/lib/Target/${LLVM_ARCH}" + "${LLVM_BASE_DIR}_build/include" + "${LLVM_BASE_DIR}_build/lib/Target/${LLVM_ARCH}" ) # Hack because generators expressions don't work properly under visual studio ... @@ -373,17 +367,17 @@ set(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME "QBDI") install(TARGETS QBDI_static EXPORT QBDI_targets - ARCHIVE DESTINATION lib) + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) install(TARGETS QBDI EXPORT QBDI_targets - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib - RUNTIME DESTINATION lib) + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME DESTINATION ${CMAKE_INSTALL_LIBDIR}) if(${OS} STREQUAL "win") install(FILES ${CMAKE_BINARY_DIR}/${CMAKE_BUILD_TYPE}/QBDI.exp - DESTINATION lib) + DESTINATION ${CMAKE_INSTALL_LIBDIR}) endif() install(DIRECTORY include/QBDI DESTINATION include/ @@ -395,7 +389,7 @@ if(FULL_PACKAGE) string(REPLACE ";" " " LLVM_LIBS_STR "${LLVM_LIBS}") configure_file(package/qbdi.pc.in package/qbdi.pc @ONLY) - install(FILES ${CMAKE_BINARY_DIR}/package/qbdi.pc DESTINATION lib/pkgconfig/) + install(FILES ${CMAKE_BINARY_DIR}/package/qbdi.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig/) set(RESOURCES_PREFIX ${CMAKE_INSTALL_PREFIX}/share/qbdi) diff -ur a/tools/pyqbdi/CMakeLists.txt b/tools/pyqbdi/CMakeLists.txt --- a/tools/pyqbdi/CMakeLists.txt 2019-09-10 14:05:06.000000000 +0300 +++ b/tools/pyqbdi/CMakeLists.txt 2019-10-21 10:18:05.867675179 +0300 @@ -27,5 +27,5 @@ ) target_link_libraries(pyqbdi QBDIPreload QBDI ${PYTHON_LIBRARIES}) install(TARGETS pyqbdi - LIBRARY DESTINATION lib) + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) endif() diff -ur a/tools/QBDIPreload/CMakeLists.txt b/tools/QBDIPreload/CMakeLists.txt --- a/tools/QBDIPreload/CMakeLists.txt 2019-09-10 14:05:06.000000000 +0300 +++ b/tools/QBDIPreload/CMakeLists.txt 2019-10-21 10:18:05.867675179 +0300 @@ -20,7 +20,7 @@ install(TARGETS QBDIPreload EXPORT QBDIPreload_targets - ARCHIVE DESTINATION lib) + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) install(FILES include/QBDIPreload.h DESTINATION include/) diff -ur a/tools/validator/CMakeLists.txt b/tools/validator/CMakeLists.txt --- a/tools/validator/CMakeLists.txt 2019-09-10 14:05:06.000000000 +0300 +++ b/tools/validator/CMakeLists.txt 2019-10-21 10:51:44.207313583 +0300 @@ -23,3 +23,12 @@ $ ) target_link_libraries(validator QBDIPreload QBDI_static) + +install(TARGETS validator + EXPORT validator_targets + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) + +install(EXPORT validator_targets + FILE QBDIPreloadConfig.cmake + NAMESPACE QBDIPreload:: + DESTINATION ${PRELOAD_RESOURCES_PREFIX}/cmake)