Tino has proposed merging lp:~widelands-dev/widelands/appveyor into lp:widelands.
Requested reviews: Widelands Developers (widelands-dev) For more details, see: https://code.launchpad.net/~widelands-dev/widelands/appveyor/+merge/281599 Provide a build script for appveyor, the "travis ci" for windows. Currently a release build is done and a complete inno setup created. Includes 2 fixes for windows: - enable static linking glew32 with cmake option on windows - allow git revision detection in windows (does work on my machine, but atm not an appveyor) -- Your team Widelands Developers is requested to review the proposed merge of lp:~widelands-dev/widelands/appveyor into lp:widelands.
=== modified file 'CMakeLists.txt' --- CMakeLists.txt 2016-01-04 20:58:32 +0000 +++ CMakeLists.txt 2016-01-05 10:27:43 +0000 @@ -1,296 +1,300 @@ -project (widelands) - -cmake_minimum_required (VERSION 2.8.7) - -include("${CMAKE_SOURCE_DIR}/cmake/WlFunctions.cmake") - -option(OPTION_USE_GLBINDING "Use glbinding instead of GLEW" OFF) -option(OPTION_GLEW_STATIC "Use static GLEW Library" OFF) - -if (CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR) - message(FATAL_ERROR "Build directory and source directory must not be the same.") -endif (CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR) - -# Define the directory structure for installation - will be hardcoded in WL bin -# (through config.h). If not specified, we are going to use the directory where -# the executable is in. Also on Linux. -# Packagers (or people using make install) have to set this variable to an absolute path. -wl_set_if_unset(WL_INSTALL_DATADIR ".") - -if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") - if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.7) - message(FATAL_ERROR "Widelands needs GCC >= 4.7 to compile.") - endif() -elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.2) - message(FATAL_ERROR "Clang version must be at least 3.2!") - endif() -else() - message(WARNING "You are using an unsupported compiler! Supported are Clang and GCC.") -endif() - -SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules) - -set (Boost_USE_STATIC_LIBS OFF) -set (Boost_USE_MULTITHREADED ON) -set (Boost_DETAILED_FAILURE_MSG ON) -find_package(Boost 1.48 - COMPONENTS - unit_test_framework - regex - REQUIRED) - -find_package (PythonInterp REQUIRED) - -find_package(Gettext REQUIRED) -find_package(OpenGL REQUIRED) -find_package(PNG REQUIRED) -find_package(SDL2 REQUIRED) -find_package(SDL2_image REQUIRED) -find_package(SDL2_mixer REQUIRED) -find_package(SDL2_net REQUIRED) -find_package(SDL2_ttf REQUIRED) -find_package(ZLIB REQUIRED) -find_package(ICU REQUIRED) -if(OPTION_USE_GLBINDING) - find_package(glbinding REQUIRED) -else() - find_package(GLEW REQUIRED) -endif() - -if (APPLE OR WIN32 OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD") - if (NOT CMAKE_SYSTEM_NAME MATCHES "kFreeBSD") - find_package(intl REQUIRED) - endif() -endif() - -# TODO(sirver): One day, this should be enabled. Then we have no more cycles in our dependencies.... -# set_property(GLOBAL PROPERTY GLOBAL_DEPENDS_NO_CYCLES ON) - -if (NOT CMAKE_BUILD_TYPE OR CMAKE_BUILD_TYPE STREQUAL "") - find_path(FILE_WL_RELEASE "WL_RELEASE" ${CMAKE_CURRENT_SOURCE_DIR}) - if(${FILE_WL_RELEASE} STREQUAL "FILE_WL_RELEASE-NOTFOUND") - set(CMAKE_BUILD_TYPE Debug) - else() - set(CMAKE_BUILD_TYPE Release) - endif() -endif (NOT CMAKE_BUILD_TYPE OR CMAKE_BUILD_TYPE STREQUAL "") - -if(CMAKE_BUILD_TYPE STREQUAL "Debug") - set(WL_DEBUG_FLAGS "-g -DDEBUG") -elseif(CMAKE_BUILD_TYPE STREQUAL "Release") - set(WL_OPTIMIZE_FLAGS "-O3") - set(WL_DEBUG_FLAGS "-DNDEBUG -DNOPARACHUTE") -elseif(CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo") - set(WL_OPTIMIZE_FLAGS "-O3") - set(WL_DEBUG_FLAGS "-g -DNDEBUG -DNOPARACHUTE") -else() - message(FATAL_ERROR "Unknown CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}") -endif() - -wl_add_flag(WL_GENERIC_CXX_FLAGS "-std=c++11") - -if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Weverything") - - # Disabled warnings that are overly verbose right now or just do not make sense. - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-c++98-compat") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-c++98-compat-pedantic") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-conversion") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-exit-time-destructors") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-global-constructors") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-padded") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-sign-conversion") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-switch-enum") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-missing-noreturn") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-implicit-fallthrough") - - # TODO(sirver): weak-vtables should be enabled, but leads to lot of errors right now. - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-weak-vtables") - - # This warning warns when a default case is at a switch that handles all - # cases. While this is super nice, silencing this warning for clang will add - # a warning for GCC (which is not as clever and does not figure out that all - # cases are handled). Therefore we disable the warning and the unreachable as - # they always come in pairs in these cases. - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-covered-switch-default") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-unreachable-code") - - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Werror=non-pod-varargs") - - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Qunused-arguments") -else() - # Assuming GCC 4.7 or higher. - if(WIN32) - # This is needed for getenv(). - wl_add_flag(WL_GENERIC_CXX_FLAGS "-std=gnu++11") - endif() - - if (NOT (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.8)) - # Because of: https://svn.boost.org/trac/boost/ticket/9240. - wl_add_flag(WL_GENERIC_CXX_FLAGS "-fext-numeric-literals") - endif() - - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wall") - if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.8) - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-pedantic") - else() - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wpedantic") - endif() - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wdeprecated-declarations") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wextra") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wformat") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wformat-nonliteral") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wformat-security") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wformat-y2k") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Winit-self") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Winvalid-pch") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wlogical-op") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wmissing-include-dirs") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-undef") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wold-style-cast") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Woverlength-strings") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wpacked") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wpointer-arith") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wredundant-decls") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wshadow") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wsign-promo") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wswitch-default") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wsync-nand") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wtrampolines") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wundef") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wunused") - wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wunused-macros") -endif() - -# Turn some warnings into errors. -wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Werror=uninitialized") -wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Werror=return-type") - - -IF (WIN32) - add_definitions(-DMINGW_HAS_SECURE_API) - if (CMAKE_SIZEOF_VOID_P EQUAL 4) - set (CMAKE_EXE_LINKER_FLAGS "-Wl,--large-address-aware" CACHE STRING "Set by widelands CMakeLists.txt" FORCE) - message (STATUS "Enabled large address awareness on mingw32") - else (CMAKE_SIZEOF_VOID_P EQUAL 4) - message (STATUS "Detected mingw32-w64") - endif (CMAKE_SIZEOF_VOID_P EQUAL 4) -endif (WIN32) - -# on BSD this must be explicitly linked -if (CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "OpenBSD") - # Not needed on Debian GNU/kFreeBSD.. - if (NOT CMAKE_SYSTEM_NAME MATCHES "kFreeBSD") - find_library(EXECINFO_LIBRARY NAMES execinfo) - endif (NOT CMAKE_SYSTEM_NAME MATCHES "kFreeBSD") -endif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "OpenBSD") - -if (NOT DEFINED WL_VERSION) - add_custom_target ( - BzrRevision ALL - COMMAND ${CMAKE_COMMAND} -DWL_INSTALL_DATADIR=${WL_INSTALL_DATADIR} -DPYTHON_EXECUTABLE=${PYTHON_EXECUTABLE} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DSOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR} -DBINARY_DIR=${CMAKE_CURRENT_BINARY_DIR} -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/BzrRevision.cmake - ) - - # Detect version now - execute_process ( - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/utils/detect_revision.py - OUTPUT_VARIABLE WL_VERSION - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - OUTPUT_STRIP_TRAILING_WHITESPACE - ) - file (WRITE ${CMAKE_CURRENT_BINARY_DIR}/VERSION "${WL_VERSION}") - configure_file (${CMAKE_CURRENT_SOURCE_DIR}/src/build_info.cc.cmake ${CMAKE_CURRENT_BINARY_DIR}/src/build_info.cc) - message (STATUS "Version of Widelands Build is ${WL_VERSION}(${CMAKE_BUILD_TYPE})") -else (NOT DEFINED WL_VERSION) - add_custom_target ( - InputRevision ALL - COMMAND ${CMAKE_COMMAND} -DWL_INSTALL_DATADIR=${WL_INSTALL_DATADIR} -DWL_VERSION=${WL_VERSION} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DSOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR} -DBINARY_DIR=${CMAKE_CURRENT_BINARY_DIR} -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/InputRevision.cmake - ) -endif (NOT DEFINED WL_VERSION) - -# Enable testing. -include(CTest) -enable_testing() - -# Run a test after a normal compile. This magic is needed as 'make test' will -# not rebuild tests: -# http://stackoverflow.com/questions/733475/cmake-ctest-make-test-doesnt-build-tests -add_custom_target(_run_all_tests ALL - COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure - WORKING_DIRECTORY ${CMAKE_BINARY_DIR} - DEPENDS wl_tests -) - -install ( - FILES ${CMAKE_CURRENT_BINARY_DIR}/VERSION - DESTINATION ${WL_INSTALL_DATADIR} - CONFIGURATIONS Debug;Release - COMPONENT CoreVersionFile -) - -# Installation. -add_subdirectory(doc) -add_subdirectory(po) -add_subdirectory(src) - -# install files to the correct locations here -install( - DIRECTORY - campaigns - i18n - tribes - txts - world - pics - scripting - DESTINATION ${WL_INSTALL_DATADIR} - CONFIGURATIONS Debug;Release - COMPONENT CoreDataFiles -) - -install( - DIRECTORY - maps - DESTINATION ${WL_INSTALL_DATADIR} - CONFIGURATIONS Debug;Release - COMPONENT MapFiles -) - -install( - DIRECTORY - music - sound - DESTINATION ${WL_INSTALL_DATADIR} - CONFIGURATIONS Debug;Release - COMPONENT MusicFiles -) - -install( - FILES - COPYING - CREDITS - ChangeLog - DESTINATION ${WL_INSTALL_DATADIR} - CONFIGURATIONS Debug;Release - COMPONENT CoreLicenseFiles -) - -install( - DIRECTORY - doc - DESTINATION ${WL_INSTALL_DATADIR} - CONFIGURATIONS Debug - COMPONENT DocFiles - PATTERN "CMakeLists.txt" EXCLUDE -) - -set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES locale) - -install( - DIRECTORY - ${CMAKE_CURRENT_BINARY_DIR}/locale/ - DESTINATION ${WL_INSTALL_DATADIR}/locale - CONFIGURATIONS Debug;Release - COMPONENT CoreLanguageFiles -) +project (widelands) + +cmake_minimum_required (VERSION 2.8.7) + +include("${CMAKE_SOURCE_DIR}/cmake/WlFunctions.cmake") + +option(OPTION_USE_GLBINDING "Use glbinding instead of GLEW" OFF) +option(OPTION_GLEW_STATIC "Use static GLEW Library" OFF) + +if (CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR) + message(FATAL_ERROR "Build directory and source directory must not be the same.") +endif (CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR) + +# Define the directory structure for installation - will be hardcoded in WL bin +# (through config.h). If not specified, we are going to use the directory where +# the executable is in. Also on Linux. +# Packagers (or people using make install) have to set this variable to an absolute path. +wl_set_if_unset(WL_INSTALL_DATADIR ".") + +if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") + if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.7) + message(FATAL_ERROR "Widelands needs GCC >= 4.7 to compile.") + endif() +elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") + if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.2) + message(FATAL_ERROR "Clang version must be at least 3.2!") + endif() +else() + message(WARNING "You are using an unsupported compiler! Supported are Clang and GCC.") +endif() + +SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules) + +if (WIN32) + set (Boost_USE_STATIC_LIBS ON) +else() + set (Boost_USE_STATIC_LIBS OFF) +endif() +set (Boost_USE_MULTITHREADED ON) +set (Boost_DETAILED_FAILURE_MSG ON) +find_package(Boost 1.48 + COMPONENTS + unit_test_framework + regex + REQUIRED) + +find_package (PythonInterp REQUIRED) + +find_package(Gettext REQUIRED) +find_package(OpenGL REQUIRED) +find_package(PNG REQUIRED) +find_package(SDL2 REQUIRED) +find_package(SDL2_image REQUIRED) +find_package(SDL2_mixer REQUIRED) +find_package(SDL2_net REQUIRED) +find_package(SDL2_ttf REQUIRED) +find_package(ZLIB REQUIRED) +find_package(ICU REQUIRED) +if(OPTION_USE_GLBINDING) + find_package(glbinding REQUIRED) +else() + find_package(GLEW REQUIRED) +endif() + +if (APPLE OR WIN32 OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD") + if (NOT CMAKE_SYSTEM_NAME MATCHES "kFreeBSD") + find_package(intl REQUIRED) + endif() +endif() + +# TODO(sirver): One day, this should be enabled. Then we have no more cycles in our dependencies.... +# set_property(GLOBAL PROPERTY GLOBAL_DEPENDS_NO_CYCLES ON) + +if (NOT CMAKE_BUILD_TYPE OR CMAKE_BUILD_TYPE STREQUAL "") + find_path(FILE_WL_RELEASE "WL_RELEASE" ${CMAKE_CURRENT_SOURCE_DIR}) + if(${FILE_WL_RELEASE} STREQUAL "FILE_WL_RELEASE-NOTFOUND") + set(CMAKE_BUILD_TYPE Debug) + else() + set(CMAKE_BUILD_TYPE Release) + endif() +endif (NOT CMAKE_BUILD_TYPE OR CMAKE_BUILD_TYPE STREQUAL "") + +if(CMAKE_BUILD_TYPE STREQUAL "Debug") + set(WL_DEBUG_FLAGS "-g -DDEBUG") +elseif(CMAKE_BUILD_TYPE STREQUAL "Release") + set(WL_OPTIMIZE_FLAGS "-O3") + set(WL_DEBUG_FLAGS "-DNDEBUG -DNOPARACHUTE") +elseif(CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo") + set(WL_OPTIMIZE_FLAGS "-O3") + set(WL_DEBUG_FLAGS "-g -DNDEBUG -DNOPARACHUTE") +else() + message(FATAL_ERROR "Unknown CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}") +endif() + +wl_add_flag(WL_GENERIC_CXX_FLAGS "-std=c++11") + +if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Weverything") + + # Disabled warnings that are overly verbose right now or just do not make sense. + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-c++98-compat") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-c++98-compat-pedantic") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-conversion") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-exit-time-destructors") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-global-constructors") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-padded") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-sign-conversion") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-switch-enum") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-missing-noreturn") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-implicit-fallthrough") + + # TODO(sirver): weak-vtables should be enabled, but leads to lot of errors right now. + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-weak-vtables") + + # This warning warns when a default case is at a switch that handles all + # cases. While this is super nice, silencing this warning for clang will add + # a warning for GCC (which is not as clever and does not figure out that all + # cases are handled). Therefore we disable the warning and the unreachable as + # they always come in pairs in these cases. + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-covered-switch-default") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-unreachable-code") + + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Werror=non-pod-varargs") + + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Qunused-arguments") +else() + # Assuming GCC 4.7 or higher. + if(WIN32) + # This is needed for getenv(). + wl_add_flag(WL_GENERIC_CXX_FLAGS "-std=gnu++11") + endif() + + if (NOT (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.8)) + # Because of: https://svn.boost.org/trac/boost/ticket/9240. + wl_add_flag(WL_GENERIC_CXX_FLAGS "-fext-numeric-literals") + endif() + + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wall") + if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.8) + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-pedantic") + else() + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wpedantic") + endif() + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wdeprecated-declarations") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wextra") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wformat") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wformat-nonliteral") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wformat-security") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wformat-y2k") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Winit-self") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Winvalid-pch") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wlogical-op") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wmissing-include-dirs") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-undef") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wold-style-cast") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Woverlength-strings") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wpacked") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wpointer-arith") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wredundant-decls") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wshadow") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wsign-promo") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wswitch-default") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wsync-nand") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wtrampolines") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wundef") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wunused") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wunused-macros") +endif() + +# Turn some warnings into errors. +wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Werror=uninitialized") +wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Werror=return-type") + + +IF (WIN32) + add_definitions(-DMINGW_HAS_SECURE_API) + if (CMAKE_SIZEOF_VOID_P EQUAL 4) + set (CMAKE_EXE_LINKER_FLAGS "-Wl,--large-address-aware" CACHE STRING "Set by widelands CMakeLists.txt" FORCE) + message (STATUS "Enabled large address awareness on mingw32") + else (CMAKE_SIZEOF_VOID_P EQUAL 4) + message (STATUS "Detected mingw32-w64") + endif (CMAKE_SIZEOF_VOID_P EQUAL 4) +endif (WIN32) + +# on BSD this must be explicitly linked +if (CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "OpenBSD") + # Not needed on Debian GNU/kFreeBSD.. + if (NOT CMAKE_SYSTEM_NAME MATCHES "kFreeBSD") + find_library(EXECINFO_LIBRARY NAMES execinfo) + endif (NOT CMAKE_SYSTEM_NAME MATCHES "kFreeBSD") +endif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "OpenBSD") + +if (NOT DEFINED WL_VERSION) + add_custom_target ( + BzrRevision ALL + COMMAND ${CMAKE_COMMAND} -DWL_INSTALL_DATADIR=${WL_INSTALL_DATADIR} -DPYTHON_EXECUTABLE=${PYTHON_EXECUTABLE} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DSOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR} -DBINARY_DIR=${CMAKE_CURRENT_BINARY_DIR} -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/BzrRevision.cmake + ) + + # Detect version now + execute_process ( + COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/utils/detect_revision.py + OUTPUT_VARIABLE WL_VERSION + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + file (WRITE ${CMAKE_CURRENT_BINARY_DIR}/VERSION "${WL_VERSION}") + configure_file (${CMAKE_CURRENT_SOURCE_DIR}/src/build_info.cc.cmake ${CMAKE_CURRENT_BINARY_DIR}/src/build_info.cc) + message (STATUS "Version of Widelands Build is ${WL_VERSION}(${CMAKE_BUILD_TYPE})") +else (NOT DEFINED WL_VERSION) + add_custom_target ( + InputRevision ALL + COMMAND ${CMAKE_COMMAND} -DWL_INSTALL_DATADIR=${WL_INSTALL_DATADIR} -DWL_VERSION=${WL_VERSION} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DSOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR} -DBINARY_DIR=${CMAKE_CURRENT_BINARY_DIR} -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/InputRevision.cmake + ) +endif (NOT DEFINED WL_VERSION) + +# Enable testing. +include(CTest) +enable_testing() + +# Run a test after a normal compile. This magic is needed as 'make test' will +# not rebuild tests: +# http://stackoverflow.com/questions/733475/cmake-ctest-make-test-doesnt-build-tests +add_custom_target(_run_all_tests ALL + COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure + WORKING_DIRECTORY ${CMAKE_BINARY_DIR} + DEPENDS wl_tests +) + +install ( + FILES ${CMAKE_CURRENT_BINARY_DIR}/VERSION + DESTINATION ${WL_INSTALL_DATADIR} + CONFIGURATIONS Debug;Release + COMPONENT CoreVersionFile +) + +# Installation. +add_subdirectory(doc) +add_subdirectory(po) +add_subdirectory(src) + +# install files to the correct locations here +install( + DIRECTORY + campaigns + i18n + tribes + txts + world + pics + scripting + DESTINATION ${WL_INSTALL_DATADIR} + CONFIGURATIONS Debug;Release + COMPONENT CoreDataFiles +) + +install( + DIRECTORY + maps + DESTINATION ${WL_INSTALL_DATADIR} + CONFIGURATIONS Debug;Release + COMPONENT MapFiles +) + +install( + DIRECTORY + music + sound + DESTINATION ${WL_INSTALL_DATADIR} + CONFIGURATIONS Debug;Release + COMPONENT MusicFiles +) + +install( + FILES + COPYING + CREDITS + ChangeLog + DESTINATION ${WL_INSTALL_DATADIR} + CONFIGURATIONS Debug;Release + COMPONENT CoreLicenseFiles +) + +install( + DIRECTORY + doc + DESTINATION ${WL_INSTALL_DATADIR} + CONFIGURATIONS Debug + COMPONENT DocFiles + PATTERN "CMakeLists.txt" EXCLUDE +) + +set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES locale) + +install( + DIRECTORY + ${CMAKE_CURRENT_BINARY_DIR}/locale/ + DESTINATION ${WL_INSTALL_DATADIR}/locale + CONFIGURATIONS Debug;Release + COMPONENT CoreLanguageFiles +) === added file 'appveyor.yml' --- appveyor.yml 1970-01-01 00:00:00 +0000 +++ appveyor.yml 2016-01-05 10:27:43 +0000 @@ -0,0 +1,33 @@ +install: + # Installing various utilities + - choco install -y InnoSetup + - set PATH=C:\msys64\mingw64\bin;C:\msys64\usr\bin;"C:\Program Files (x86)\Inno Setup 5";%PATH% + - cmd: "bash --login -c \"update-core\"" + - cmd: "bash --login -c \"pacman -Syu --noconfirm\"" + - cmd: "bash --login -c \"pacman --noconfirm -S mingw-w64-x86_64-ninja mingw-w64-x86_64-boost mingw-w64-x86_64-SDL2_net mingw-w64-x86_64-SDL2_ttf mingw-w64-x86_64-SDL2_mixer mingw-w64-x86_64-SDL2_image mingw-w64-x86_64-glew\"" + # Hack, there are wrong dependencies atm in the msys2 packages (SDL_image, libwebp) + - cmd: copy c:\msys64\mingw64\bin\libwebp-6.dll c:\msys64\mingw64\bin\libwebp-5.dll + +shallow_clone: true + +build: + verbosity: detailed + +build_script: + - cmd: cd c:\projects + - cmd: md build + - cmd: cd build + - cmd: cmake -G "Ninja" -DOPTION_GLEW_STATIC=ON -DCMAKE_BUILD_TYPE=Release ..\widelands + - cmd: ninja + - cmd: strip -sv src\widelands.exe + - cmd: ISCC /q /fWidelands-git-%APPVEYOR_BUILD_VERSION% ..\widelands\utils\win32\innosetup\Widelands.iss + - appveyor PushArtifact c:\projects\Widelands-git-%APPVEYOR_BUILD_VERSION%.exe + +artifacts: + - path: Widelands-git-$(APPVEYOR_BUILD_VERSION).exe + name: Widelands Setup + +platform: + - x64 + +version: "{branch}-{build}" === modified file 'cmake/Modules/FindGLEW.cmake' --- cmake/Modules/FindGLEW.cmake 2015-10-20 19:56:34 +0000 +++ cmake/Modules/FindGLEW.cmake 2016-01-05 10:27:43 +0000 @@ -1,56 +1,60 @@ -# - Try to find GLEW -# Once done this will define -# -# GLEW_FOUND - system has GLEW -# GLEW_INCLUDE_DIR - the GLEW include directory -# GLEW_LIBRARY_DIR - where the libraries are -# GLEW_LIBRARY - Link these to use GLEW -# - -IF (GLEW_INCLUDE_DIR) - # Already in cache, be silent - SET(GLEW_FIND_QUIETLY TRUE) -ENDIF (GLEW_INCLUDE_DIR) - -if( WIN32 ) - if( MSVC80 ) - set( COMPILER_PATH "C:/Program\ Files/Microsoft\ Visual\ Studio\ 8/VC" ) - endif( MSVC80 ) - if( MSVC71 ) - set( COMPILER_PATH "C:/Program\ Files/Microsoft\ Visual\ Studio\ .NET\ 2003/Vc7" ) - endif( MSVC71 ) - FIND_PATH( GLEW_INCLUDE_DIR gl/glew.h gl/wglew.h - PATHS c:/glew/include ${COMPILER_PATH}/PlatformSDK/Include ) - SET( GLEW_NAMES glew32 glew32s) - FIND_LIBRARY( GLEW_LIBRARY - NAMES ${GLEW_NAMES} - PATHS c:/glew/lib ${COMPILER_PATH}/PlatformSDK/Lib ) - # Static library version requires extra flag - GET_FILENAME_COMPONENT( GLEW_LIBRARY_NAME ${GLEW_LIBRARY} NAME_WE ) - if ( GLEW_LIBRARY_NAME STREQUAL "glew32s" OR OPTION_GLEW_STATIC) - SET(GLEW_EXTRA_DEFINITIONS "-DGLEW_STATIC") - else ( GLEW_LIBRARY_NAME STREQUAL "glew32s" OR OPTION_GLEW_STATIC) - SET(GLEW_EXTRA_DEFINITIONS ) - endif() - -else( WIN32 ) - FIND_PATH( GLEW_INCLUDE_DIR glew.h wglew.h - PATHS /usr/local/include /usr/include - PATH_SUFFIXES gl/ GL/ ) - SET( GLEW_NAMES glew GLEW ) - FIND_LIBRARY( GLEW_LIBRARY - NAMES ${GLEW_NAMES} - PATHS /usr/lib /usr/local/lib ) -endif( WIN32 ) - -GET_FILENAME_COMPONENT( GLEW_LIBRARY_DIR ${GLEW_LIBRARY} PATH ) - -IF (GLEW_INCLUDE_DIR AND GLEW_LIBRARY) - SET(GLEW_FOUND TRUE) - SET( GLEW_LIBRARY_DIR ${GLEW_LIBRARY} ) -ELSE (GLEW_INCLUDE_DIR AND GLEW_LIBRARY) - SET( GLEW_FOUND FALSE ) - SET( GLEW_LIBRARY_DIR ) - SET( GLEW_EXTRA_DEFINITIONS ) -ENDIF (GLEW_INCLUDE_DIR AND GLEW_LIBRARY) - +# - Try to find GLEW +# Once done this will define +# +# GLEW_FOUND - system has GLEW +# GLEW_INCLUDE_DIR - the GLEW include directory +# GLEW_LIBRARY_DIR - where the libraries are +# GLEW_LIBRARY - Link these to use GLEW +# + +IF (GLEW_INCLUDE_DIR) + # Already in cache, be silent + SET(GLEW_FIND_QUIETLY TRUE) +ENDIF (GLEW_INCLUDE_DIR) + +if( WIN32 ) + if( MSVC80 ) + set( COMPILER_PATH "C:/Program\ Files/Microsoft\ Visual\ Studio\ 8/VC" ) + endif( MSVC80 ) + if( MSVC71 ) + set( COMPILER_PATH "C:/Program\ Files/Microsoft\ Visual\ Studio\ .NET\ 2003/Vc7" ) + endif( MSVC71 ) + FIND_PATH( GLEW_INCLUDE_DIR gl/glew.h gl/wglew.h + PATHS c:/glew/include ${COMPILER_PATH}/PlatformSDK/Include ) + SET( GLEW_NAMES glew32 glew32s) + if ( OPTION_GLEW_STATIC ) + #find static lib .a instead of dynamic lib .dll.a + set( CMAKE_FIND_LIBRARY_SUFFIXES .a ) + endif( OPTION_GLEW_STATIC ) + FIND_LIBRARY( GLEW_LIBRARY + NAMES ${GLEW_NAMES} + PATHS c:/glew/lib ${COMPILER_PATH}/PlatformSDK/Lib ) + # Static library version requires extra flag + GET_FILENAME_COMPONENT( GLEW_LIBRARY_NAME ${GLEW_LIBRARY} NAME_WE ) + if ( GLEW_LIBRARY_NAME STREQUAL "glew32s" OR OPTION_GLEW_STATIC) + SET(GLEW_EXTRA_DEFINITIONS "-DGLEW_STATIC") + else ( GLEW_LIBRARY_NAME STREQUAL "glew32s" OR OPTION_GLEW_STATIC) + SET(GLEW_EXTRA_DEFINITIONS ) + endif() + +else( WIN32 ) + FIND_PATH( GLEW_INCLUDE_DIR glew.h wglew.h + PATHS /usr/local/include /usr/include + PATH_SUFFIXES gl/ GL/ ) + SET( GLEW_NAMES glew GLEW ) + FIND_LIBRARY( GLEW_LIBRARY + NAMES ${GLEW_NAMES} + PATHS /usr/lib /usr/local/lib ) +endif( WIN32 ) + +GET_FILENAME_COMPONENT( GLEW_LIBRARY_DIR ${GLEW_LIBRARY} PATH ) + +IF (GLEW_INCLUDE_DIR AND GLEW_LIBRARY) + SET(GLEW_FOUND TRUE) + SET( GLEW_LIBRARY_DIR ${GLEW_LIBRARY} ) +ELSE (GLEW_INCLUDE_DIR AND GLEW_LIBRARY) + SET( GLEW_FOUND FALSE ) + SET( GLEW_LIBRARY_DIR ) + SET( GLEW_EXTRA_DEFINITIONS ) +ENDIF (GLEW_INCLUDE_DIR AND GLEW_LIBRARY) + === modified file 'utils/detect_revision.py' --- utils/detect_revision.py 2015-07-23 10:46:52 +0000 +++ utils/detect_revision.py 2016-01-05 10:27:43 +0000 @@ -1,94 +1,98 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- - -# Tries to find out the repository revision of the current working directory -# using bzr or debian/changelog - -import os -import sys -import os.path as p -import subprocess -import re -import string - -# Support for bzr local branches -try: - from bzrlib.branch import Branch - from bzrlib.bzrdir import BzrDir - from bzrlib.errors import NotBranchError - __has_bzrlib = True -except ImportError: - __has_bzrlib = False - -base_path = p.abspath(p.join(p.dirname(__file__), p.pardir)) - -def detect_debian_version(): - """ - Parse bzr revision and branch information from debian/changelog - """ - if sys.platform.startswith('win'): - return None - fname = p.join(base_path, "debian/changelog") - if not p.exists(fname): - return None - f = open(fname) - version = f.readline() - #bzr5905-210307251546 - pattern = re.compile("bzr[0-9]+-[0-9]+") - m = pattern.search(version) - if m == None: - return None - version = version[m.start():m.end()] - return version - -def detect_git_revision(): - if not sys.platform.startswith('linux') and \ - not sys.platform.startswith('darwin'): - return None - - is_git_workdir=os.system('git show >/dev/null 2>&1')==0 - if is_git_workdir: - git_revnum=os.popen('git show --pretty=format:%h | head -n 1').read().rstrip() - return 'unofficial-git-%s' % (git_revnum,) - - -def check_for_explicit_version(): - """ - Checks for a file WL_RELEASE in the root directory. It then defaults to - this version without further trying to find which revision we're on - """ - fname = p.join(base_path, "WL_RELEASE") - if os.path.exists(fname): - return open(fname).read().strip() - -def detect_bzr_revision(): - if __has_bzrlib: - b = BzrDir.open(base_path).open_branch() - revno, nick = b.revno(), b.nick - else: - # Windows stand alone installer do not come with bzrlib. We try to - # parse the output of bzr then directly - try: - run_bzr = lambda subcmd: subprocess.Popen( - ["bzr",subcmd], stdout=subprocess.PIPE, cwd=base_path - ).stdout.read().strip().decode("utf-8") - revno = run_bzr("revno") - nick = run_bzr("nick") - except OSError: - return None - return "bzr%s[%s] " % (revno, nick) - -def detect_revision(): - for func in ( - check_for_explicit_version, - detect_git_revision, - detect_bzr_revision, - detect_debian_version): - rv = func() - if rv: - return rv - - return 'REVDETECT-BROKEN-PLEASE-REPORT-THIS' - -if __name__ == "__main__": - print(detect_revision()) +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +# Tries to find out the repository revision of the current working directory +# using bzr or debian/changelog + +import os +import sys +import os.path as p +import subprocess +import re +import string + +# Support for bzr local branches +try: + from bzrlib.branch import Branch + from bzrlib.bzrdir import BzrDir + from bzrlib.errors import NotBranchError + __has_bzrlib = True +except ImportError: + __has_bzrlib = False + +base_path = p.abspath(p.join(p.dirname(__file__), p.pardir)) + +def detect_debian_version(): + """ + Parse bzr revision and branch information from debian/changelog + """ + if sys.platform.startswith('win'): + return None + fname = p.join(base_path, "debian/changelog") + if not p.exists(fname): + return None + f = open(fname) + version = f.readline() + #bzr5905-210307251546 + pattern = re.compile("bzr[0-9]+-[0-9]+") + m = pattern.search(version) + if m == None: + return None + version = version[m.start():m.end()] + return version + +def detect_git_revision(): + if not sys.platform.startswith('linux') and \ + not sys.platform.startswith('darwin'): + git_revnum=os.popen('git show --pretty=format:%h | head -n 1').read().rstrip() + if git_revnum: + return 'unofficial-git-%s' % (git_revnum,) + else: + return None + + is_git_workdir=os.system('git show >/dev/null 2>&1')==0 + if is_git_workdir: + git_revnum=os.popen('git show --pretty=format:%h | head -n 1').read().rstrip() + return 'unofficial-git-%s' % (git_revnum,) + + +def check_for_explicit_version(): + """ + Checks for a file WL_RELEASE in the root directory. It then defaults to + this version without further trying to find which revision we're on + """ + fname = p.join(base_path, "WL_RELEASE") + if os.path.exists(fname): + return open(fname).read().strip() + +def detect_bzr_revision(): + if __has_bzrlib: + b = BzrDir.open(base_path).open_branch() + revno, nick = b.revno(), b.nick + else: + # Windows stand alone installer do not come with bzrlib. We try to + # parse the output of bzr then directly + try: + run_bzr = lambda subcmd: subprocess.Popen( + ["bzr",subcmd], stdout=subprocess.PIPE, cwd=base_path + ).stdout.read().strip().decode("utf-8") + revno = run_bzr("revno") + nick = run_bzr("nick") + except OSError: + return None + return "bzr%s[%s] " % (revno, nick) + +def detect_revision(): + for func in ( + check_for_explicit_version, + detect_git_revision, + detect_bzr_revision, + detect_debian_version): + rv = func() + if rv: + return rv + + return 'REVDETECT-BROKEN-PLEASE-REPORT-THIS' + +if __name__ == "__main__": + print(detect_revision()) === modified file 'utils/win32/innosetup/Widelands.iss' --- utils/win32/innosetup/Widelands.iss 2015-03-01 09:21:20 +0000 +++ utils/win32/innosetup/Widelands.iss 2016-01-05 10:27:43 +0000 @@ -22,10 +22,10 @@ ;Version String #define Name "Widelands" -#define VerName "Widelands Build18" -#define VerNumber "0.18.0.1" +#define VerName "Widelands Build19" +#define VerNumber "0.19.0.1" #define Copyright "Widelands Development Team 2001-2015" -#define SetupFileName "Widelands-Build18-win32" +#define SetupFileName "Widelands-Build19-win64" ;General String #define Publisher "Widelands Development Team" @@ -75,8 +75,6 @@ Name: french; MessagesFile: compiler:Languages\French.isl Name: german; MessagesFile: compiler:Languages\German.isl Name: polish; MessagesFile: compiler:Languages\Polish.isl -Name: swedish; MessagesFile: compiler:Languages\Swedish.isl -Name: slovak; MessagesFile: compiler:Languages\Slovak.isl Name: russian; MessagesFile: compiler:Languages\Russian.isl Name: hungarian; MessagesFile: compiler:Languages\Hungarian.isl Name: dutch; MessagesFile: compiler:Languages\Dutch.isl @@ -92,7 +90,7 @@ [Files] Source: ..\..\..\campaigns\*; DestDir: {app}\campaigns\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" Source: ..\..\..\i18n\*; DestDir: {app}\i18n\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" -Source: ..\..\..\locale\*; DestDir: {app}\locale\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" +Source: ..\..\..\..\build\locale\*; DestDir: {app}\locale\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" Source: ..\..\..\maps\*; DestDir: {app}\maps\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Components: " Maps" Source: ..\..\..\music\*; DestDir: {app}\music\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Components: " Music" Source: ..\..\..\pics\*; DestDir: {app}\pics\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" @@ -100,13 +98,36 @@ Source: ..\..\..\tribes\*; DestDir: {app}\tribes\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" Source: ..\..\..\txts\*; DestDir: {app}\txts\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" Source: ..\..\..\world\*; DestDir: {app}\world\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" -Source: ..\..\..\global\*; DestDir: {app}\global\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" -Source: ..\..\..\*.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" -Source: ..\..\..\widelands.exe; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" -Source: ..\..\..\ChangeLog; DestDir: {app}; Flags: ignoreversion; DestName: ChangeLog.txt; Components: " Widelands" -Source: ..\..\..\COPYING; DestDir: {app}; Flags: ignoreversion; DestName: COPYING.txt; Components: " Widelands" -Source: ..\..\..\CREDITS; DestDir: {app}; Flags: ignoreversion; DestName: CREDITS.txt; Components: " Widelands" -Source: .\WL-Editor.ico; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libicuuc56.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libbz2-1.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libfreetype-6.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libgcc_s_seh-1.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libglib-2.0-0.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libharfbuzz-0.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libicudt56.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libicuuc56.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libjpeg-8.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\liblzma-5.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libmad-0.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libogg-0.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libpng16-16.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libstdc++-6.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libtiff-5.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libvorbis-0.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libvorbisfile-3.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libwebp-5.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\libwinpthread-1.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\SDL2.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\SDL2_image.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\SDL2_mixer.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\SDL2_net.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\SDL2_ttf.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: c:\msys64\mingw64\bin\zlib1.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: ..\..\..\..\build\src\widelands.exe; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" +Source: ..\..\..\ChangeLog; DestDir: {app}; Flags: ignoreversion; DestName: ChangeLog.txt; Components: " Widelands" +Source: ..\..\..\COPYING; DestDir: {app}; Flags: ignoreversion; DestName: COPYING.txt; Components: " Widelands" +Source: ..\..\..\CREDITS; DestDir: {app}; Flags: ignoreversion; DestName: CREDITS.txt; Components: " Widelands" +Source: .\WL-Editor.ico; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" [INI] Filename: {app}\{#UrlName}; Section: InternetShortcut; Key: URL; String: {#URL}
_______________________________________________ Mailing list: https://launchpad.net/~widelands-dev Post to : widelands-dev@lists.launchpad.net Unsubscribe : https://launchpad.net/~widelands-dev More help : https://help.launchpad.net/ListHelp