mirror of
https://github.com/corda/corda.git
synced 2024-12-29 09:18:58 +00:00
add initial cmake script (only builds parts of the code)
This commit is contained in:
parent
41cb6fabf5
commit
d248ad53b0
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,5 +1,5 @@
|
||||
.gdb_history
|
||||
build
|
||||
/build
|
||||
*~
|
||||
.classpath
|
||||
.project
|
||||
@ -13,3 +13,4 @@ bin
|
||||
/*.sublime-*
|
||||
workspace/
|
||||
src/.cproject
|
||||
/cmake-build
|
||||
|
28
CMakeLists.txt
Normal file
28
CMakeLists.txt
Normal file
@ -0,0 +1,28 @@
|
||||
# NOTE that this CMake file doesn't current build all of avian.
|
||||
# It only builds what's required for example/kaleidoscope.
|
||||
|
||||
cmake_minimum_required (VERSION 2.6)
|
||||
project (avian)
|
||||
|
||||
include_directories (include src)
|
||||
|
||||
add_definitions (
|
||||
-DAVIAN_TARGET_FORMAT=AVIAN_FORMAT_MACHO
|
||||
|
||||
-DAVIAN_TARGET_ARCH=AVIAN_ARCH_X86_64
|
||||
|
||||
-DTARGET_BYTES_PER_WORD=8
|
||||
-D__STDC_LIMIT_MACROS
|
||||
-D__STDC_CONSTANT_MACROS
|
||||
)
|
||||
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Werror -fno-exceptions")
|
||||
|
||||
include ("cmake/Platform.cmake")
|
||||
include (CTest)
|
||||
|
||||
# Sadly, we can't use the 'test' target, as that's coopted by ctest
|
||||
add_custom_target(check ${CMAKE_CTEST_COMMAND} -V)
|
||||
|
||||
add_subdirectory (src)
|
||||
add_subdirectory (unittest)
|
8
cmake/Platform.cmake
Normal file
8
cmake/Platform.cmake
Normal file
@ -0,0 +1,8 @@
|
||||
IF (APPLE)
|
||||
INCLUDE_DIRECTORIES ( /Developer/Headers/FlatCarbon )
|
||||
FIND_LIBRARY(CORE_FOUNDATION_LIBRARY CoreFoundation)
|
||||
|
||||
MARK_AS_ADVANCED (CORE_FOUNDATION_LIBRARY)
|
||||
|
||||
SET(PLATFORM_LIBS ${CORE_FOUNDATION_LIBRARY})
|
||||
ENDIF()
|
7
src/CMakeLists.txt
Normal file
7
src/CMakeLists.txt
Normal file
@ -0,0 +1,7 @@
|
||||
add_subdirectory(codegen)
|
||||
add_subdirectory(system)
|
||||
add_subdirectory(heap)
|
||||
add_subdirectory(util)
|
||||
add_subdirectory(tools)
|
||||
|
||||
add_library(avian_jvm_finder finder.cpp)
|
19
src/codegen/CMakeLists.txt
Normal file
19
src/codegen/CMakeLists.txt
Normal file
@ -0,0 +1,19 @@
|
||||
add_library (avian_codegen
|
||||
compiler.cpp
|
||||
registers.cpp
|
||||
runtime.cpp
|
||||
targets.cpp
|
||||
|
||||
compiler/context.cpp
|
||||
compiler/event.cpp
|
||||
compiler/frame.cpp
|
||||
compiler/ir.cpp
|
||||
compiler/promise.cpp
|
||||
compiler/read.cpp
|
||||
compiler/regalloc.cpp
|
||||
compiler/resource.cpp
|
||||
compiler/site.cpp
|
||||
compiler/value.cpp
|
||||
)
|
||||
|
||||
add_subdirectory(target)
|
2
src/codegen/target/CMakeLists.txt
Normal file
2
src/codegen/target/CMakeLists.txt
Normal file
@ -0,0 +1,2 @@
|
||||
add_subdirectory(arm)
|
||||
add_subdirectory(x86)
|
8
src/codegen/target/arm/CMakeLists.txt
Normal file
8
src/codegen/target/arm/CMakeLists.txt
Normal file
@ -0,0 +1,8 @@
|
||||
add_library(avian_codegen_arm
|
||||
assembler.cpp
|
||||
block.cpp
|
||||
context.cpp
|
||||
fixup.cpp
|
||||
multimethod.cpp
|
||||
operations.cpp
|
||||
)
|
11
src/codegen/target/x86/CMakeLists.txt
Normal file
11
src/codegen/target/x86/CMakeLists.txt
Normal file
@ -0,0 +1,11 @@
|
||||
add_library(avian_codegen_x86
|
||||
assembler.cpp
|
||||
block.cpp
|
||||
context.cpp
|
||||
detect.cpp
|
||||
encode.cpp
|
||||
fixup.cpp
|
||||
multimethod.cpp
|
||||
operations.cpp
|
||||
padding.cpp
|
||||
)
|
2
src/heap/CMakeLists.txt
Normal file
2
src/heap/CMakeLists.txt
Normal file
@ -0,0 +1,2 @@
|
||||
|
||||
add_library(avian_heap heap.cpp)
|
3
src/system/CMakeLists.txt
Normal file
3
src/system/CMakeLists.txt
Normal file
@ -0,0 +1,3 @@
|
||||
|
||||
# TODO: use posix.cpp or windows.cpp, depending on platform
|
||||
add_library(avian_system posix.cpp posix/crash.cpp)
|
3
src/tools/CMakeLists.txt
Normal file
3
src/tools/CMakeLists.txt
Normal file
@ -0,0 +1,3 @@
|
||||
add_subdirectory(binary-to-object)
|
||||
add_subdirectory(object-writer)
|
||||
add_subdirectory(type-generator)
|
3
src/tools/binary-to-object/CMakeLists.txt
Normal file
3
src/tools/binary-to-object/CMakeLists.txt
Normal file
@ -0,0 +1,3 @@
|
||||
add_executable(binary_to_object main.cpp)
|
||||
|
||||
target_link_libraries(binary_to_object object_writer)
|
6
src/tools/object-writer/CMakeLists.txt
Normal file
6
src/tools/object-writer/CMakeLists.txt
Normal file
@ -0,0 +1,6 @@
|
||||
add_library(object_writer
|
||||
elf.cpp
|
||||
mach-o.cpp
|
||||
pe.cpp
|
||||
tools.cpp
|
||||
)
|
11
src/tools/type-generator/CMakeLists.txt
Normal file
11
src/tools/type-generator/CMakeLists.txt
Normal file
@ -0,0 +1,11 @@
|
||||
add_executable(type_generator main.cpp)
|
||||
|
||||
target_link_libraries(type_generator
|
||||
avian_jvm_finder
|
||||
avian_system
|
||||
avian_util
|
||||
z
|
||||
pthread
|
||||
dl
|
||||
${PLATFORM_LIBS}
|
||||
)
|
1
src/util/CMakeLists.txt
Normal file
1
src/util/CMakeLists.txt
Normal file
@ -0,0 +1 @@
|
||||
add_library(avian_util arg-parser.cpp fixed-allocator.cpp)
|
25
unittest/CMakeLists.txt
Normal file
25
unittest/CMakeLists.txt
Normal file
@ -0,0 +1,25 @@
|
||||
|
||||
include_directories (${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
add_executable (avian_unittest
|
||||
test-harness.cpp
|
||||
|
||||
codegen/assembler-test.cpp
|
||||
codegen/registers-test.cpp
|
||||
|
||||
util/arg-parser-test.cpp
|
||||
)
|
||||
|
||||
target_link_libraries (avian_unittest
|
||||
avian_codegen
|
||||
avian_codegen_x86
|
||||
avian_system
|
||||
avian_heap
|
||||
avian_util
|
||||
pthread
|
||||
dl
|
||||
${PLATFORM_LIBS}
|
||||
)
|
||||
|
||||
add_test(NAME avian_unittest COMMAND avian_unittest)
|
||||
add_dependencies(check avian_unittest)
|
Loading…
Reference in New Issue
Block a user