Mercurial > hg > sv-dependency-builds
annotate src/capnproto-0.6.0/c++/src/CMakeLists.txt @ 62:0994c39f1e94
Cap'n Proto v0.6 + build for OSX
author | Chris Cannam <cannam@all-day-breakfast.com> |
---|---|
date | Mon, 22 May 2017 10:01:37 +0100 |
parents | |
children |
rev | line source |
---|---|
cannam@62 | 1 |
cannam@62 | 2 # Tests ======================================================================== |
cannam@62 | 3 |
cannam@62 | 4 if(BUILD_TESTING) |
cannam@62 | 5 include(CTest) |
cannam@62 | 6 |
cannam@62 | 7 if (EXTERNAL_CAPNP) |
cannam@62 | 8 # Setup CAPNP_GENERATE_CPP for compiling test schemas |
cannam@62 | 9 find_package(CapnProto CONFIG QUIET) |
cannam@62 | 10 if (NOT CapnProto_FOUND) |
cannam@62 | 11 # Try and find the executables from an autotools-based installation |
cannam@62 | 12 # Setup paths to the schema compiler for generating ${test_capnp_files} |
cannam@62 | 13 if(NOT EXTERNAL_CAPNP AND NOT CAPNP_LITE) |
cannam@62 | 14 set(CAPNP_EXECUTABLE $<TARGET_FILE:capnp_tool>) |
cannam@62 | 15 set(CAPNPC_CXX_EXECUTABLE $<TARGET_FILE:capnpc_cpp>) |
cannam@62 | 16 else() |
cannam@62 | 17 # Allow paths to tools to be set with either environment variables or find_program() |
cannam@62 | 18 if (NOT CAPNP_EXECUTABLE) |
cannam@62 | 19 if (DEFINED ENV{CAPNP}) |
cannam@62 | 20 set(CAPNP_EXECUTABLE "$ENV{CAPNP}") |
cannam@62 | 21 else() |
cannam@62 | 22 find_program(CAPNP_EXECUTABLE capnp) |
cannam@62 | 23 endif() |
cannam@62 | 24 endif() |
cannam@62 | 25 |
cannam@62 | 26 if(NOT CAPNPC_CXX_EXECUTABLE) |
cannam@62 | 27 if (DEFINED ENV{CAPNPC_CXX}) |
cannam@62 | 28 set(CAPNPC_CXX_EXECUTABLE "$ENV{CAPNPC_CXX}") |
cannam@62 | 29 else() |
cannam@62 | 30 # Also search in the same directory that `capnp` was found in |
cannam@62 | 31 get_filename_component(capnp_dir "${CAPNP_EXECUTABLE}" DIRECTORY) |
cannam@62 | 32 find_program(CAPNPC_CXX_EXECUTABLE capnpc-c++ HINTS "${capnp_dir}") |
cannam@62 | 33 endif() |
cannam@62 | 34 endif() |
cannam@62 | 35 endif() |
cannam@62 | 36 endif() |
cannam@62 | 37 |
cannam@62 | 38 set(CAPNP_INCLUDE_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}") |
cannam@62 | 39 #TODO(someday) It would be nice to use targets instead of variables in CAPNP_GENERATE_CPP macro |
cannam@62 | 40 endif() |
cannam@62 | 41 |
cannam@62 | 42 # Sadly, we can't use the 'test' target, as that's coopted by ctest |
cannam@62 | 43 add_custom_target(check "${CMAKE_CTEST_COMMAND}" -V) |
cannam@62 | 44 endif() # BUILD_TESTING |
cannam@62 | 45 |
cannam@62 | 46 # kj =========================================================================== |
cannam@62 | 47 |
cannam@62 | 48 add_subdirectory(kj) |
cannam@62 | 49 |
cannam@62 | 50 # capnp ======================================================================== |
cannam@62 | 51 |
cannam@62 | 52 add_subdirectory(capnp) |