50 lines
2.0 KiB
CMake
50 lines
2.0 KiB
CMake
|
cmake_minimum_required(VERSION 2.8.12)
|
||
|
|
||
|
project(pkmnlib_ai NONE)
|
||
|
|
||
|
include(ExternalProject)
|
||
|
ExternalProject_Add(pkmnlib
|
||
|
GIT_REPOSITORY https://git.p-epsilon.com/Deukhoofd/PkmnLib
|
||
|
GIT_TAG master
|
||
|
PREFIX "${CMAKE_CURRENT_BINARY_DIR}/PkmnLib"
|
||
|
CONFIGURE_COMMAND ""
|
||
|
BUILD_COMMAND ""
|
||
|
INSTALL_COMMAND ""
|
||
|
TEST_COMMAND ""
|
||
|
CMAKE_ARGS "-DSHARED=${SHARED} -DWINDOWS=${WINDOWS} -DSTATICC=${STATICC}"
|
||
|
)
|
||
|
|
||
|
|
||
|
function(include_pkmnlib)
|
||
|
# Download and unpack googletest at configure time
|
||
|
configure_file(CMakeLists.txt.in PkmnLib/download/CMakeLists.txt)
|
||
|
execute_process(COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" .
|
||
|
RESULT_VARIABLE result
|
||
|
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/PkmnLib/download)
|
||
|
if (result)
|
||
|
message(FATAL_ERROR "CMake step for pkmnlib failed: ${result}")
|
||
|
endif ()
|
||
|
execute_process(COMMAND ${CMAKE_COMMAND} --build .
|
||
|
RESULT_VARIABLE result
|
||
|
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/PkmnLib/download)
|
||
|
if (result)
|
||
|
message(FATAL_ERROR "Build step for pkmnlib failed: ${result}")
|
||
|
endif ()
|
||
|
|
||
|
# Add googletest directly to our build. This defines
|
||
|
# the gtest and gtest_main targets.
|
||
|
add_subdirectory(${CMAKE_CURRENT_BINARY_DIR}/PkmnLib/src/pkmnlib
|
||
|
${CMAKE_CURRENT_BINARY_DIR}/PkmnLib/bin
|
||
|
EXCLUDE_FROM_ALL)
|
||
|
|
||
|
execute_process(COMMAND mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/PkmnLib/include)
|
||
|
execute_process(COMMAND ln -s ${CMAKE_CURRENT_BINARY_DIR}/PkmnLib/src/pkmnlib/src
|
||
|
${CMAKE_CURRENT_BINARY_DIR}/PkmnLib/include/PkmnLib)
|
||
|
|
||
|
include_directories(${CMAKE_CURRENT_BINARY_DIR}/PkmnLib/include
|
||
|
${CMAKE_CURRENT_BINARY_DIR}/PkmnLib/bin/CreatureLib/include
|
||
|
${CMAKE_CURRENT_BINARY_DIR}/PkmnLib/bin/Angelscript/src/AngelscriptProj/angelscript/include
|
||
|
${CMAKE_CURRENT_BINARY_DIR}/PkmnLib/bin/CreatureLib/bin/Arbutils/include)
|
||
|
|
||
|
|
||
|
endfunction()
|