diff options
| author | Loic Guegan <manzerbredes@mailbox.org> | 2023-01-18 21:53:37 +0100 |
|---|---|---|
| committer | Loic Guegan <manzerbredes@mailbox.org> | 2023-01-18 21:53:37 +0100 |
| commit | 8fd85102ab8e80d8327b4cf95592dd84579ac492 (patch) | |
| tree | 92e8ce8b06c1120ad5f6cb87cce65f3d95570852 /CMakeLists.txt | |
| parent | 5d3004e555079ba018e5f7de1dcb7dda2e99a174 (diff) | |
Create CMI interface
Diffstat (limited to 'CMakeLists.txt')
| -rw-r--r-- | CMakeLists.txt | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..1d7545a --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,22 @@ +cmake_minimum_required(VERSION 3.18) +project(ChessMoveInterface) + +# Includes +set(CMI_INCLUDE_DIR ${CMAKE_CURRENT_BINARY_DIR}/includes) # For conveniance +set(CMI_INCLUDE_DIR ${CMI_INCLUDE_DIR} PARENT_SCOPE) # To be used by other projects with add_subdirectory() +file(MAKE_DIRECTORY ${CMI_INCLUDE_DIR}) + +# Copy all includes +file(GLOB_RECURSE HEADER_FILES src/*.hpp) +foreach(FILE ${HEADER_FILES}) +file(RELATIVE_PATH FILE_SUBDIR ${CMAKE_CURRENT_SOURCE_DIR}/src ${FILE}) +configure_file(${FILE} ${CMI_INCLUDE_DIR}/${FILE_SUBDIR} COPYONLY) +endforeach(FILE ${HEADER_FILES}) + +# Add target if not exists +# This way ChessMoveInterface can be used in multiple submodules +include_directories(src) +file(GLOB_RECURSE SRC_CPP_FILES src/*.cpp) +if(NOT TARGET ChessMoveInterface) + add_library(ChessMoveInterface SHARED ${SRC_CPP_FILES}) +endif()
\ No newline at end of file |
