Skip to content

Commit 4dede6b

Browse files
committed
Remove LLVM subproject, use embedding instead
1 parent ad44036 commit 4dede6b

File tree

3 files changed

+16
-33
lines changed

3 files changed

+16
-33
lines changed

vm/boostenv/main/CMakeLists.txt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,13 @@ set(GENERATED_BOOSTSOURCES_CACHED_DIR ${CMAKE_CURRENT_SOURCE_DIR}/cached/)
4141
set(GENERATED_BOOSTSOURCES_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/generated/)
4242

4343
# Generate sources
44+
find_program(clang_bin clang++)
4445

4546
add_custom_command(
4647
OUTPUT ${GENERATED_BOOSTSOURCES_BINARY_DIR}/boostenv.gen
4748

4849
# First pass: generate data types and interfaces
49-
COMMAND ${LLVM_BUILD_DIR}/bin/clang++ "${CXX_STD_OPT}"
50+
COMMAND ${clang_bin} "${CXX_STD_OPT}"
5051
-Wno-invalid-noreturn -Wno-return-type
5152
-o ${GENERATED_BOOSTSOURCES_BINARY_DIR}/boostenv.ast
5253
-I ${Boost_INCLUDE_DIRS}
@@ -59,7 +60,7 @@ add_custom_command(
5960
${GENERATED_BOOSTSOURCES_BINARY_DIR}/
6061

6162
# Second pass: generate builtin information
62-
COMMAND ${LLVM_BUILD_DIR}/bin/clang++ "${CXX_STD_OPT}"
63+
COMMAND ${clang_bin} "${CXX_STD_OPT}"
6364
-Wno-invalid-noreturn -Wno-return-type
6465
-o ${GENERATED_BOOSTSOURCES_BINARY_DIR}/boostenvmodules.astbi
6566
-I ${Boost_INCLUDE_DIRS}

vm/generator/main/CMakeLists.txt

Lines changed: 9 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,13 @@
1-
set(CLANG_SRC_DIR "${LLVM_SRC_DIR}/tools/clang")
2-
set(CLANG_BUILD_DIR "${LLVM_BUILD_DIR}/tools/clang")
31

4-
add_definitions(-D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS)
2+
find_package(LLVM REQUIRED CONFIG)
3+
message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}")
4+
message(STATUS "Using LLVMConfig.cmake in: ${LLVM_DIR}")
55

6-
set(CMAKE_CXX_FLAGS "-Wall -Wno-enum-compare -Wno-strict-aliasing -std=gnu++0x ${CMAKE_CXX_FLAGS}")
6+
find_package(Clang REQUIRED CONFIG)
7+
message(STATUS "Found Clang using ClangConfig.cmake in: ${Clang_DIR}")
78

8-
# Depending on the platform and version of clang, the clang library will
9-
# be named libclang or liblibclang. Now we detect that.
10-
find_library(CLANG_LIBRARY
11-
NAMES clang libclang
12-
PATHS "${LLVM_BUILD_DIR}/lib"
13-
NO_DEFAULT_PATH)
9+
#include_directories(${LLVM_INCLUDE_DIRS})
10+
#add_definitions(${LLVM_DEFINITIONS})
1411

15-
include_directories(
16-
"${LLVM_SRC_DIR}/include"
17-
"${LLVM_BUILD_DIR}/include"
18-
"${CLANG_SRC_DIR}/include"
19-
"${CLANG_BUILD_DIR}/include")
20-
link_directories("${LLVM_BUILD_DIR}/lib")
21-
22-
if(NOT CLANG_LIBRARY)
23-
if(NOT MOZART_CACHED_BUILD)
24-
message(FATAL_ERROR "Could not find clang library in ${LLVM_BUILD_DIR}")
25-
set("CLANG_LIBRARY" "/not_found/")
26-
endif()
27-
# With MOZART_CACHED_BUILD, we should not require LLVM/Clang at all
28-
# TODO: Fail verbosely if target "generator" is ever required.
29-
else()
30-
add_executable(generator EXCLUDE_FROM_ALL
31-
generator.cc interfaces.cc implementations.cc builtins.cc utils.cc)
32-
target_link_libraries(generator "${CLANG_LIBRARY}")
33-
endif()
12+
add_executable(generator EXCLUDE_FROM_ALL generator.cc interfaces.cc implementations.cc builtins.cc utils.cc)
13+
target_link_libraries(generator clangFrontend clangAST)

vm/vm/main/CMakeLists.txt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,13 @@ configure_file(
1515
set(GENERATED_SOURCES_CACHED_DIR ${CMAKE_CURRENT_SOURCE_DIR}/cached/)
1616
set(GENERATED_SOURCES_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/generated/)
1717

18+
find_program(clang_bin clang++)
19+
1820
add_custom_command(
1921
OUTPUT ${GENERATED_SOURCES_BINARY_DIR}/mozart.gen
2022

2123
# First pass: generate data types and interfaces
22-
COMMAND ${LLVM_BUILD_DIR}/bin/clang++ -std=c++0x
24+
COMMAND ${clang_bin} -std=c++0x
2325
-Wno-invalid-noreturn -Wno-return-type
2426
-o ${GENERATED_SOURCES_BINARY_DIR}/mozart.ast
2527
-DMOZART_GENERATOR
@@ -30,7 +32,7 @@ add_custom_command(
3032
${GENERATED_SOURCES_BINARY_DIR}/
3133

3234
# Second pass: generate builtin information
33-
COMMAND ${LLVM_BUILD_DIR}/bin/clang++ -std=c++0x
35+
COMMAND ${clang_bin} -std=c++0x
3436
-Wno-invalid-noreturn -Wno-return-type
3537
-o ${GENERATED_SOURCES_BINARY_DIR}/coremodules.astbi
3638
-I ${GENERATED_SOURCES_BINARY_DIR}

0 commit comments

Comments
 (0)