File fix-CMakeLists.patch of Package openclonk
diff -Nur oc/CMakeLists.txt new/CMakeLists.txt
--- oc/CMakeLists.txt 2016-08-28 11:12:19.530163468 +0200
+++ new/CMakeLists.txt 2016-08-28 11:15:06.051516654 +0200
@@ -38,6 +38,8 @@
CMAKE_DEPENDENT_OPTION(USE_GTK "Use GTK for the developer mode" ON "USE_X11" OFF)
CMAKE_DEPENDENT_OPTION(USE_COCOA "Use Apple Cocoa for the developer mode and the windows." ON "APPLE" OFF)
option(WITH_AUTOMATIC_UPDATE "Automatic updates are downloaded from the project website." OFF)
+set(OC_SYSTEM_DATA_DIR "${CMAKE_INSTALL_PREFIX}/share/games/openclonk" CACHE PATH "Path to openclonk datafiles on system.")
+set(OC_SYSTEM_GAMES_DIR "${CMAKE_INSTALL_PREFIX}/games" CACHE PATH "Path to where to install games on the system.")
############################################################################
# Assemble compiler flags
@@ -100,7 +102,7 @@
# Don't put this into CMAKE_CXX_FLAGS because otherwise it is cached,
# and when the path is changed both the old and new definition appears
# in the list of flags.
- add_definitions("-DOC_SYSTEM_DATA_DIR=\"${CMAKE_INSTALL_PREFIX}/share/games/openclonk\"")
+ add_definitions("-DOC_SYSTEM_DATA_DIR=\"${OC_SYSTEM_DATA_DIR}\"")
endif()
if(APPLE)
@@ -143,8 +145,8 @@
include(RequireCXXSourceCompiles)
include(CheckCXXSymbolExists)
-REQUIRE_CXX_SOURCE_COMPILES("#include <memory>\nint main() { std::unique_ptr<int> a; std::shared_ptr<int> b; }" HAVE_C11_SMART_PTRS)
-REQUIRE_CXX_SOURCE_COMPILES("int main() { static_assert(true, \"\"); }" HAVE_STATIC_ASSERT)
+REQUIRE_CXX_SOURCE_COMPILES("#include <memory>\nint main() { std::unique_ptr<int> a; std::shared_ptr<int> b; return 0;}" HAVE_C11_SMART_PTRS)
+REQUIRE_CXX_SOURCE_COMPILES("int main() { static_assert(true, \"\"); return 0; }" HAVE_STATIC_ASSERT)
REQUIRE_CXX_SOURCE_COMPILES("#include <memory>\nint main() { auto a = std::make_unique<int>(0); return !!a; }" HAVE_MAKE_UNIQUE)
REQUIRE_CXX_SOURCE_COMPILES("#include <utility>\ntemplate<std::size_t... Is> int foo(std::index_sequence<Is...>) {return 0;} int main() { return foo(std::index_sequence_for<int,int>{}); }" HAVE_INDEX_SEQUENCE)
REQUIRE_CXX_SOURCE_COMPILES("template<class... T> class C; int main() { return 0; }" HAVE_VARIADIC_TEMPLATES)
@@ -154,7 +156,7 @@
# implementation for some things (like std::regex_iterator).
# This needs to test *linking*, not compilation; cmake does both at the same
# time, so the test below works.
-REQUIRE_CXX_SOURCE_COMPILES("#include <regex>\nint main() { std::cregex_iterator ri; }" HAVE_WORKING_REGEX " If you are using gcc, please update to gcc 4.9.")
+REQUIRE_CXX_SOURCE_COMPILES("#include <regex>\nint main() { std::cregex_iterator ri; return 0;}" HAVE_WORKING_REGEX " If you are using gcc, please update to gcc 4.9.")
check_cxx_symbol_exists(vasprintf stdio.h HAVE_VASPRINTF)
check_cxx_symbol_exists(__mingw_vasprintf stdio.h HAVE___MINGW_VASPRINTF)
@@ -1011,7 +1013,7 @@
############################################################################
add_definitions(-DHAVE_CONFIG_H)
-add_library(libmisc
+add_library(libmisc STATIC
src/C4Include.cpp
src/c4group/C4Group.cpp
src/c4group/C4Group.h
@@ -1060,7 +1062,7 @@
target_link_libraries(libmisc rt)
endif()
-add_library(libc4script
+add_library(libc4script STATIC
src/C4Include.cpp
src/c4group/C4GroupSet.cpp
src/c4group/C4GroupSet.h
@@ -1461,7 +1463,7 @@
DEPENDS "${native_c4group}"
VERBATIM
)
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${group} DESTINATION share/games/openclonk)
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${group} DESTINATION "${OC_SYSTEM_DATA_DIR}")
endif()
endforeach()
@@ -1478,7 +1480,7 @@
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/openclonk.appdata.xml DESTINATION share/appdata)
# Install binaries
- install(TARGETS openclonk DESTINATION games)
+ install(TARGETS openclonk DESTINATION "${OC_SYSTEM_GAMES_DIR}")
install(TARGETS c4group DESTINATION bin)
else()
install(TARGETS openclonk
diff -Nur oc/thirdparty/getopt/CMakeLists.txt new/thirdparty/getopt/CMakeLists.txt
--- oc/thirdparty/getopt/CMakeLists.txt 2016-01-15 21:56:57.000000000 +0100
+++ new/thirdparty/getopt/CMakeLists.txt 2016-08-28 22:40:12.661794806 +0200
@@ -1,4 +1,4 @@
-add_library(getopt
+add_library(getopt STATIC
getopt.c
getopt.h
getopt_long.c
diff -Nur oc/thirdparty/tinyxml/CMakeLists.txt new/thirdparty/tinyxml/CMakeLists.txt
--- oc/thirdparty/tinyxml/CMakeLists.txt 2016-01-15 21:56:57.000000000 +0100
+++ new/thirdparty/tinyxml/CMakeLists.txt 2016-08-28 22:39:56.245637044 +0200
@@ -1,4 +1,4 @@
-add_library(tinyxml
+add_library(tinyxml STATIC
tinystr.cpp
tinystr.h
tinyxml.cpp