Find LLVM

This commit is contained in:
Markus Hauschild
2013-06-01 13:20:18 +02:00
parent cbf0feecf5
commit f0d0d6ec11
2 changed files with 40 additions and 1 deletions

View File

@@ -11,6 +11,8 @@ SET (SCULLY_VERSION_MINOR 1)
SET (SCULLY_VERSION_RELEASE 0) SET (SCULLY_VERSION_RELEASE 0)
SET (SCULLY_VERSION_EXTRA "WoC Friday Night") SET (SCULLY_VERSION_EXTRA "WoC Friday Night")
SET (CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/)
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_BINARY_DIR}) INCLUDE_DIRECTORIES (${CMAKE_CURRENT_BINARY_DIR})
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/inc) INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/inc)
@@ -85,4 +87,10 @@ SET(SCULLY_SOURCE
${CMAKE_CURRENT_BINARY_DIR}/grammar.cpp ${CMAKE_CURRENT_BINARY_DIR}/grammar.cpp
) )
FIND_PACKAGE (LLVM REQUIRED)
ADD_DEFINITIONS (${LLVM_CFLAGS})
ADD_EXECUTABLE (scully ${SCULLY_SOURCE}) ADD_EXECUTABLE (scully ${SCULLY_SOURCE})
TARGET_LINK_LIBRARIES (scully ${LLVM_JIT_LIBS})
TARGET_LINK_LIBRARIES (scully ${LLVM_LFLAGS})

31
cmake/FindLLVM.cmake Normal file
View File

@@ -0,0 +1,31 @@
# - Find libev
# Find the native LLVM includes and library
#
# LLVM_INCLUDE_DIR - where to find ev.h, etc.
# LLVM_LIBRARIES - List of libraries when using libev.
# LLVM_FOUND - True if libev found.
FIND_PROGRAM (LLVM_CONFIG_EXECUTABLE NAMES llvm-config DOC "llvm-config executable")
EXECUTE_PROCESS (COMMAND ${LLVM_CONFIG_EXECUTABLE} --cppflags
OUTPUT_VARIABLE LLVM_CFLAGS
OUTPUT_STRIP_TRAILING_WHITESPACE
)
EXECUTE_PROCESS (COMMAND ${LLVM_CONFIG_EXECUTABLE} --ldflags
OUTPUT_VARIABLE LLVM_LFLAGS
OUTPUT_STRIP_TRAILING_WHITESPACE
)
EXECUTE_PROCESS (COMMAND ${LLVM_CONFIG_EXECUTABLE} --libs core jit native
OUTPUT_VARIABLE LLVM_JIT_LIBS
OUTPUT_STRIP_TRAILING_WHITESPACE
)
EXECUTE_PROCESS (COMMAND ${LLVM_CONFIG_EXECUTABLE} --libs all
OUTPUT_VARIABLE LLVM_ALL_LIBS
OUTPUT_STRIP_TRAILING_WHITESPACE
)
#MESSAGE("llvm jit libs: " ${LLVM_JIT_LIBS})