X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=CMakeLists.txt;h=9af79ce939b166be728dac4e37d5b5698db99ce8;hb=973f6d2137044e056cb72b30cfe5b80ba6de312f;hp=f30b0a2ea0df9f88c8720dd753a59f59c56bcd7b;hpb=5d82e4d3c8043da1c394a76b1e1e65dfce191254;p=xonotic%2Fnetradiant.git diff --git a/CMakeLists.txt b/CMakeLists.txt index f30b0a2e..9af79ce9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,8 +4,8 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake") project(NetRadiant C CXX) option(BUILD_RADIANT "Build the gui" ON) -if (NOT CMAKE_INSTALL_PREFIX) - set(CMAKE_INSTALL_PREFIX "${PROJECT_SOURCE_DIR}/install") +if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(CMAKE_INSTALL_PREFIX "${PROJECT_SOURCE_DIR}/install" CACHE PATH "..." FORCE) endif () #----------------------------------------------------------------------- @@ -115,8 +115,15 @@ endif () include_directories("${PROJECT_SOURCE_DIR}/include") include_directories("${PROJECT_SOURCE_DIR}/libs") +if (WIN32 AND NOT CMAKE_CROSSCOMPILING) + set(BUNDLE_LIBRARIES_DEFAULT ON) +else () + set(BUNDLE_LIBRARIES_DEFAULT OFF) +endif () +option(BUNDLE_LIBRARIES "Bundle libraries" ${BUNDLE_LIBRARIES_DEFAULT}) + macro(copy_dlls target) - if (WIN32) + if (BUNDLE_LIBRARIES) add_custom_command(TARGET ${target} POST_BUILD COMMAND bash ARGS -c "ldd '$' | grep -v /c/Windows | awk '{ print $1 }' | while read dll; do cp \"$(which $dll)\" '${PROJECT_BINARY_DIR}'; done" @@ -194,13 +201,11 @@ endif () add_subdirectory(tools) file(GLOB DATA_FILES "${PROJECT_SOURCE_DIR}/setup/data/tools/*") -file(GLOB DOCS_FILES "${PROJECT_SOURCE_DIR}/docs/*") if (NOT (PROJECT_SOURCE_DIR STREQUAL PROJECT_BINARY_DIR)) # Copy data files from sources to the build directory message(STATUS "Copying data files") file(COPY ${DATA_FILES} DESTINATION "${PROJECT_BINARY_DIR}") - file(COPY ${DOCS_FILES} DESTINATION "${PROJECT_BINARY_DIR}/docs") endif () #----------------------------------------------------------------------- @@ -228,20 +233,41 @@ install( "${PROJECT_BINARY_DIR}/RADIANT_PATCH" DESTINATION ${CMAKE_INSTALL_PREFIX} ) -file(GLOB GAME_FILES "${PROJECT_SOURCE_DIR}/games/*") + +install( + DIRECTORY + ${PROJECT_SOURCE_DIR}/setup/data/tools/ + ${PROJECT_SOURCE_DIR}/docs + DESTINATION ${CMAKE_INSTALL_PREFIX} +) + +set(GAME_FILES + DarkPlaces + Nexuiz + OpenArena + Osirion + Q3 + Quake2 + Quake + Quetoo + Tremulous + UFOAI + Unvanquished + Warsow + Xonotic + ) unset(_tmp) foreach (it ${GAME_FILES}) - list(APPEND _tmp "${it}/games") - file(GLOB GAME_DIR "${it}/*.game") - list(APPEND _tmp "${GAME_DIR}") + set(dir "${PROJECT_BINARY_DIR}/games/${it}Pack") + string(TOLOWER "${it}" it) + list(APPEND _tmp "${dir}/games") + list(APPEND _tmp "${dir}/${it}.game") endforeach () set(GAME_FILES ${_tmp}) install( DIRECTORY - ${PROJECT_SOURCE_DIR}/setup/data/tools/ - ${PROJECT_SOURCE_DIR}/docs ${GAME_FILES} DESTINATION ${CMAKE_INSTALL_PREFIX} + OPTIONAL ) -