Skip to content

Commit c8b9c8a

Browse files
author
Michael Koval
committed
Put inner CMakeLists.txt file in src/.
1 parent c658704 commit c8b9c8a

File tree

3 files changed

+25
-29
lines changed

3 files changed

+25
-29
lines changed

CMakeLists.txt

Lines changed: 14 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
cmake_minimum_required(VERSION 2.8)
2-
project(dartpy)
2+
project(dartpy_generator)
3+
4+
set(chimera_CONFIGURATION "${CMAKE_CURRENT_SOURCE_DIR}/chimera.yml")
5+
set(chimera_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src")
6+
set(chimera_GENERATED_DIR "${chimera_SOURCE_DIR}/generated")
7+
set(chimera_PLACEHOLDER_FILE "${chimera_SOURCE_DIR}/placeholder.cpp")
8+
set(chimera_COMPILE_DATABASE
9+
"${CMAKE_CURRENT_BINARY_DIR}/compile_commands.json")
310

411
# Use MACOSX_RPATH by default on OS X. This was added in CMake 2.8.12 and
512
# became default in CMake 3.0. Explicitly setting this policy is necessary to
@@ -12,7 +19,7 @@ endif()
1219
include(ExternalProject)
1320
ExternalProject_Add("${PROJECT_NAME}_external"
1421
DOWNLOAD_COMMAND ""
15-
SOURCE_DIR "${chimera_GENERATED_DIR}"
22+
SOURCE_DIR "${chimera_SOURCE_DIR}"
1623
)
1724
add_custom_target("${PROJECT_NAME}_bindings" ALL
1825
DEPENDS "${PROJECT_NAME}_external"
@@ -22,12 +29,6 @@ find_package(chimera QUIET)
2229
if(${chimera_FOUND})
2330
message(STATUS "Found Chimera. Re-generating Boost.Python bindings.")
2431

25-
set(chimera_CONFIGURATION "${PROJECT_SOURCE_DIR}/chimera.yml")
26-
set(chimera_GENERATED_DIR "${PROJECT_SOURCE_DIR}/src_generated")
27-
set(chimera_COMPILE_DATABASE
28-
"${CMAKE_CURRENT_BINARY_DIR}/compile_commands.json")
29-
set(chimera_SOURCE "${PROJECT_SOURCE_DIR}/src_placeholder/placeholder.cpp")
30-
3132
# Generate a CMake compilation database for use by Chimera.
3233
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
3334

@@ -47,39 +48,29 @@ if(${chimera_FOUND})
4748
# TODO: This should be set by DART.
4849
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
4950

50-
include_directories(
51-
"include"
52-
"src_placeholder"
53-
# Clang ignores docstrings in SYSTEM includes, so we put them here.
54-
${DART_INCLUDE_DIRS}
55-
)
51+
# Clang ignores docstrings in SYSTEM includes, so we omit that flag.
52+
include_directories(${DART_INCLUDE_DIRS})
5653

5754
add_library("${PROJECT_NAME}_placeholder" SHARED EXCLUDE_FROM_ALL
58-
"${chimera_SOURCE}"
55+
"${chimera_PLACEHOLDER_FILE}"
5956
)
6057
target_link_libraries("${PROJECT_NAME}_placeholder"
6158
${DART_LIBRARIES}
6259
)
6360

64-
# TODO: This should be done as a build step.
65-
configure_file("${PROJECT_SOURCE_DIR}/cmake/CMakeLists_bindings.txt.in"
66-
"${PROJECT_SOURCE_DIR}/src_generated/CMakeLists.txt"
67-
@ONLY
68-
)
69-
7061
# Use Chimera to re-generate Boost.Python bindings.
7162
ExternalProject_Add_Step("${PROJECT_NAME}_external" "chimera_bind"
7263
COMMAND "${chimera_EXECUTABLE}"
7364
-m "${PROJECT_NAME}"
7465
-c "${chimera_CONFIGURATION}"
7566
-o "${chimera_GENERATED_DIR}"
7667
-p "${chimera_COMPILE_DATABASE}"
77-
"${chimera_SOURCE}"
68+
"${chimera_PLACEHOLDER_FILE}"
7869
> "${chimera_GENERATED_DIR}/manifest.txt"
7970
DEPENDS
8071
"${chimera_CONFIGURATION}"
8172
"${chimera_COMPILE_DATABASE}"
82-
"${chimera_SOURCE}"
73+
"${chimera_PLACEHOLDER_FILE}"
8374
DEPENDERS
8475
"configure"
8576
COMMENT "Generating bindings"

cmake/CMakeLists_bindings.txt.in renamed to src/CMakeLists.txt

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
cmake_minimum_required(VERSION 2.8)
2+
project(dartpy)
3+
4+
# TODO: This should be set by DART.
5+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
26

37
find_package(PythonInterp REQUIRED)
48
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c
@@ -40,23 +44,24 @@ check_cxx_source_compiles(
4044
)
4145

4246
# Generate a header file for the DARTPY_HAS_STD_SHARED_GET_POINTER flag.
43-
configure_file("${PROJECT_SOURCE_DIR}/cmake/config.h.in"
47+
configure_file("../cmake/config.h.in"
4448
"include/dartpy/config.h"
4549
)
4650
include_directories(
51+
"../include"
4752
"${CMAKE_CURRENT_BINARY_DIR}/include"
4853
)
4954

5055
# Load the file auto-generated by Chimera.
51-
file(STRINGS chimera_GENERATED_SOURCES
52-
"${chimera_GENERATED_DIR}/manifest.txt"
56+
file(STRINGS "${CMAKE_CURRENT_SOURCE_DIR}/generated/manifest.txt"
57+
chimera_GENERATED_SOURCES
5358
NO_HEX_CONVERSION
5459
)
5560

5661
add_library("${PROJECT_NAME}" SHARED
57-
../src/BodyNode.cpp
58-
../src/Skeleton.cpp
59-
../src/template_registry.cpp
62+
BodyNode.cpp
63+
Skeleton.cpp
64+
template_registry.cpp
6065
${chimera_GENERATED_SOURCES}
6166
)
6267
target_link_libraries("${PROJECT_NAME}"
File renamed without changes.

0 commit comments

Comments
 (0)