include(FindPerl)
set(LLVM_MAIN_SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR})
-set(LLVM_MAIN_INCLUDE_DIR ${LLVM_MAIN_SRC_DIR}/include/llvm)
+set(LLVM_MAIN_INCLUDE_DIR ${LLVM_MAIN_SRC_DIR}/include)
set(LLVM_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR})
set(LLVM_TOOLS_BINARY_DIR ${LLVM_BINARY_DIR}/bin)
set(LLVM_EXAMPLES_BINARY_DIR ${LLVM_BINARY_DIR}/examples)
CACHE STRING "Semicolon-separated list of targets to build")
endif( MSVC )
-if( NOT MSVC )
- set(CMAKE_CXX_LINK_EXECUTABLE "sh -c \"${CMAKE_CXX_LINK_EXECUTABLE}\"")
-endif( NOT MSVC )
-
-# TODO: Eliminate?
-get_filename_component(llvm_include_path ${LLVM_MAIN_SRC_DIR}/include ABSOLUTE)
-
-#get_filename_component(llvm_builded_incs_dir ${LLVM_BINARY_DIR}/include/llvm ABSOLUTE)
set(llvm_builded_incs_dir ${LLVM_BINARY_DIR}/include/llvm)
# Add path for custom modules
add_definitions( -wd4355 -wd4715 )
endif( MSVC )
-include_directories( ${LLVM_BINARY_DIR}/include ${llvm_include_path})
+include_directories( ${LLVM_BINARY_DIR}/include ${LLVM_MAIN_INCLUDE_DIR})
#link_directories( d:/dev/lib )
#add_subdirectory(lib)
add_subdirectory(utils/TableGen)
add_custom_command(OUTPUT ${llvm_builded_incs_dir}/Intrinsics.gen
- COMMAND tblgen -gen-intrinsic -I ${llvm_include_path} ${llvm_include_path}/llvm/Intrinsics.td -o ${llvm_builded_incs_dir}/Intrinsics.gen
+ COMMAND tblgen -gen-intrinsic -I ${LLVM_MAIN_INCLUDE_DIR} ${LLVM_MAIN_INCLUDE_DIR}/llvm/Intrinsics.td -o ${llvm_builded_incs_dir}/Intrinsics.gen
DEPENDS tblgen
COMMENT "Building intrinsics.gen...")
message(STATUS "LLVM_HOSTTRIPLE: ${LLVM_HOSTTRIPLE}")
if( MINGW )
- # tbi: Comprobar que existen las librerias:
set(HAVE_LIBIMAGEHLP 1)
set(HAVE_LIBPSAPI 1)
+ # TODO: Check existence of libraries.
# include(CheckLibraryExists)
# CHECK_LIBRARY_EXISTS(imagehlp ??? . HAVE_LIBIMAGEHLP)
endif( MINGW )
set(ENABLE_THREADS 0)
configure_file(
- ${LLVM_MAIN_INCLUDE_DIR}/Config/config.h.cmake
+ ${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/config.h.cmake
${LLVM_BINARY_DIR}/include/llvm/Config/config.h
)
configure_file(
- ${LLVM_MAIN_INCLUDE_DIR}/ADT/iterator.cmake
+ ${LLVM_MAIN_INCLUDE_DIR}/llvm/ADT/iterator.cmake
${LLVM_BINARY_DIR}/include/llvm/ADT/iterator.h
)
configure_file(
- ${LLVM_MAIN_INCLUDE_DIR}/Support/DataTypes.h.cmake
+ ${LLVM_MAIN_INCLUDE_DIR}/llvm/Support/DataTypes.h.cmake
${LLVM_BINARY_DIR}/include/llvm/Support/DataTypes.h
)
configure_file(
- ${LLVM_MAIN_INCLUDE_DIR}/ADT/hash_map.cmake
+ ${LLVM_MAIN_INCLUDE_DIR}/llvm/ADT/hash_map.cmake
${LLVM_BINARY_DIR}/include/llvm/ADT/hash_map.h
)
configure_file(
- ${LLVM_MAIN_INCLUDE_DIR}/ADT/hash_set.cmake
+ ${LLVM_MAIN_INCLUDE_DIR}/llvm/ADT/hash_set.cmake
${LLVM_BINARY_DIR}/include/llvm/ADT/hash_set.h
)
macro(tablegen ofn)
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${ofn}
- COMMAND tblgen ${ARGN} -I ${CMAKE_CURRENT_SOURCE_DIR} -I ${CMAKE_SOURCE_DIR}/lib/Target -I ${llvm_include_path} ${CMAKE_CURRENT_SOURCE_DIR}/${LLVM_TARGET_DEFINITIONS} -o ${ofn}
+ COMMAND tblgen ${ARGN} -I ${CMAKE_CURRENT_SOURCE_DIR} -I ${CMAKE_SOURCE_DIR}/lib/Target -I ${LLVM_MAIN_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/${LLVM_TARGET_DEFINITIONS} -o ${ofn}
DEPENDS tblgen ${CMAKE_CURRENT_SOURCE_DIR}/${LLVM_TARGET_DEFINITIONS}
COMMENT "Building ${ofn}..."
)
macro(tgen ofn)
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${ofn}
- COMMAND tblgen ${ARGN} -I ${CMAKE_CURRENT_SOURCE_DIR} -I ${CMAKE_SOURCE_DIR}/lib/Target -I ${llvm_include_path} ${CMAKE_CURRENT_SOURCE_DIR}/Graph.td -o ${ofn}
+ COMMAND tblgen ${ARGN} -I ${CMAKE_CURRENT_SOURCE_DIR} -I ${CMAKE_SOURCE_DIR}/lib/Target -I ${LLVM_MAIN_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/Graph.td -o ${ofn}
DEPENDS
tblgen
- ${llvm_include_path}/llvm/CompilerDriver/Common.td
- ${llvm_include_path}/llvm/CompilerDriver/Tools.td
+ ${LLVM_MAIN_INCLUDE_DIR}/llvm/CompilerDriver/Common.td
+ ${LLVM_MAIN_INCLUDE_DIR}/llvm/CompilerDriver/Tools.td
COMMENT "Building ${ofn}..."
)
endmacro(tgen ofn)