mirror of
https://github.com/corda/corda.git
synced 2025-01-03 19:54:13 +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
|
.gdb_history
|
||||||
build
|
/build
|
||||||
*~
|
*~
|
||||||
.classpath
|
.classpath
|
||||||
.project
|
.project
|
||||||
@ -13,3 +13,4 @@ bin
|
|||||||
/*.sublime-*
|
/*.sublime-*
|
||||||
workspace/
|
workspace/
|
||||||
src/.cproject
|
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