diff options
author | Sebastian Gsänger | 2020-09-23 18:29:21 +0200 |
---|---|---|
committer | Sebastian Gsänger | 2020-09-23 18:29:21 +0200 |
commit | 515eba2aec83a5dd5ffa3e3cfc7fca495fc2595f (patch) | |
tree | a493afa4fe0803575b12d2b6e3cf8d967ff14c18 /0002-Use-llvm-from-cling.patch | |
download | aur-515eba2aec83a5dd5ffa3e3cfc7fca495fc2595f.tar.gz |
initial commit
Diffstat (limited to '0002-Use-llvm-from-cling.patch')
-rw-r--r-- | 0002-Use-llvm-from-cling.patch | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/0002-Use-llvm-from-cling.patch b/0002-Use-llvm-from-cling.patch new file mode 100644 index 000000000000..d23a03be7294 --- /dev/null +++ b/0002-Use-llvm-from-cling.patch @@ -0,0 +1,82 @@ +diff --unified --recursive --text xeus-cling-0.10.0/CMakeLists.txt xeus-cling-0.10.0-fixed/CMakeLists.txt +--- xeus-cling-0.10.0/CMakeLists.txt 2020-08-29 00:08:47.000000000 +0200 ++++ xeus-cling-0.10.0-fixed/CMakeLists.txt 2020-09-23 17:00:45.525608638 +0200 +@@ -46,58 +46,6 @@ + "${CMAKE_CURRENT_SOURCE_DIR}/share/jupyter/kernels/xcpp17/kernel.json" + ) + +-####################### +-# Rely on llvm-config # +-####################### +- +-set(CONFIG_OUTPUT) +-find_program(LLVM_CONFIG "llvm-config") +-if(LLVM_CONFIG) +- message(STATUS "Found LLVM_CONFIG as ${LLVM_CONFIG}") +- set(CONFIG_COMMAND ${LLVM_CONFIG} +- "--assertion-mode" +- "--bindir" +- "--libdir" +- "--includedir" +- "--prefix" +- "--src-root") +- execute_process(COMMAND ${CONFIG_COMMAND} +- RESULT_VARIABLE HAD_ERROR +- OUTPUT_VARIABLE CONFIG_OUTPUT) +- if(NOT HAD_ERROR) +- string(REGEX REPLACE +- "[ \t]*[\r\n]+[ \t]*" ";" +- CONFIG_OUTPUT ${CONFIG_OUTPUT}) +- else() +- string(REPLACE ";" " " CONFIG_COMMAND_STR "${CONFIG_COMMAND}") +- message(STATUS "${CONFIG_COMMAND_STR}") +- message(FATAL_ERROR "llvm-config failed with status ${HAD_ERROR}") +- endif() +-else() +- message(FATAL_ERROR "llvm-config not found -- ${LLVM_CONFIG}") +-endif() +- +-list(GET CONFIG_OUTPUT 0 ENABLE_ASSERTIONS) +-list(GET CONFIG_OUTPUT 1 TOOLS_BINARY_DIR) +-list(GET CONFIG_OUTPUT 2 LIBRARY_DIR) +-list(GET CONFIG_OUTPUT 3 INCLUDE_DIR) +-list(GET CONFIG_OUTPUT 4 LLVM_OBJ_ROOT) +-list(GET CONFIG_OUTPUT 5 MAIN_SRC_DIR) +- +-if(NOT MSVC_IDE) +- set(LLVM_ENABLE_ASSERTIONS ${ENABLE_ASSERTIONS} CACHE BOOL "Enable assertions") +- mark_as_advanced(LLVM_ENABLE_ASSERTIONS) +-endif() +- +-set(LLVM_TOOLS_BINARY_DIR ${TOOLS_BINARY_DIR} CACHE PATH "Path to llvm/bin") +-set(LLVM_LIBRARY_DIR ${LIBRARY_DIR} CACHE PATH "Path to llvm/lib") +-set(LLVM_MAIN_INCLUDE_DIR ${INCLUDE_DIR} CACHE PATH "Path to llvm/include") +-set(LLVM_BINARY_DIR ${LLVM_OBJ_ROOT} CACHE PATH "Path to LLVM build tree") +-set(LLVM_MAIN_SRC_DIR ${MAIN_SRC_DIR} CACHE PATH "Path to LLVM source tree") +- +-include_directories(${LLVM_MAIN_INCLUDE_DIR}) +-link_directories(${LLVM_LIBRARY_DIR}) +-add_definitions(-DLLVM_DIR="${LLVM_BINARY_DIR}") + + ################ + # Dependencies # +@@ -110,8 +58,10 @@ + find_package(cppzmq ${cppzmq_REQUIRED_VERSION} REQUIRED) + find_package(pugixml REQUIRED) + +-find_package(Clang REQUIRED) + find_package(Cling REQUIRED) ++find_package(Clang REQUIRED) ++find_package(LLVM REQUIRED) ++add_definitions(-DLLVM_DIR="${LLVM_INSTALL_PREFIX}") + find_package(cxxopts REQUIRED) + + ######### +@@ -228,6 +178,7 @@ + + target_include_directories(xeus-cling + PUBLIC ++ $<BUILD_INTERFACE:${LLVM_INCLUDE_DIR}> + $<BUILD_INTERFACE:${XEUS_CLING_INCLUDE_DIR}> + $<INSTALL_INTERFACE:include>) + target_link_libraries(xeus-cling PUBLIC clingInterpreter clingMetaProcessor clingUtils xeus pugixml cxxopts::cxxopts) |