CMakeLists.txt
changeset 8316 89232b2fa1d6
parent 8313 31d6613989a6
child 8317 ec9f94ab2737
equal deleted inserted replaced
8315:b3875e10a8ae 8316:89232b2fa1d6
    65 set(CPACK_PACKAGE_VERSION_PATCH 19${version_suffix})
    65 set(CPACK_PACKAGE_VERSION_PATCH 19${version_suffix})
    66 set(HEDGEWARS_PROTO_VER 44)
    66 set(HEDGEWARS_PROTO_VER 44)
    67 set(HEDGEWARS_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
    67 set(HEDGEWARS_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
    68 
    68 
    69 
    69 
    70 #bundle .app setup
    70 set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
    71 if(APPLE OR CROSSAPPLE)
    71 set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
    72     #paths for creating the bundle
    72 
    73     set(bundle_name Hedgewars.app)
    73 if(UNIX AND NOT APPLE)
    74     set(frameworks_dir ${bundle_name}/Contents/Frameworks/)
    74     set(target_binary_install_dir "bin")
    75     set(CMAKE_INSTALL_PREFIX ${bundle_name}/Contents/MacOS/)
    75     set(target_library_install_dir "lib")
    76     set(DATA_INSTALL_DIR "../Resources/")
    76     if(DEFINED DATA_INSTALL_DIR)
    77     set(target_dir ".")
    77         set(SHAREPATH "${DATA_INSTALL_DIR}")
    78 else()
    78     else()
    79     set(target_dir "bin")
    79         set(SHAREPATH "share/hedgewars/")
    80 endif()
    80     endif()
       
    81 else()
       
    82     set(target_binary_install_dir "./")
       
    83 
       
    84     if(APPLE OR ${CROSSAPPLE})
       
    85         set(target_library_install_dir "Hedgewars.app/Contents/Frameworks/")
       
    86         set(CMAKE_INSTALL_PREFIX "Hedgewars.app/Contents/MacOS/")
       
    87         set(SHAREPATH "../Resources/")
       
    88     else()
       
    89         if(WIN32)
       
    90             set(target_library_install_dir "./")
       
    91             set(SHAREPATH "./")
       
    92             set(CMAKE_PREFIX_PATH "${CMAKE_SOURCE_DIR}/misc/winutils/")
       
    93             link_directories("${EXECUTABLE_OUTPUT_PATH}" "${CMAKE_SOURCE_DIR}/misc/winutils/bin")
       
    94         endif(WIN32)
       
    95     endif()
       
    96 endif()
       
    97 
    81 
    98 
    82 if(APPLE)
    99 if(APPLE)
    83     set(CMAKE_FIND_FRAMEWORK "FIRST")
   100     set(CMAKE_FIND_FRAMEWORK "FIRST")
    84 
   101 
    85     #what system are we building for
   102     #what system are we building for
   218     set(pascal_flags "-Os" "-Xs" "-Si" ${pascal_flags})
   235     set(pascal_flags "-Os" "-Xs" "-Si" ${pascal_flags})
   219     set(haskell_flags "-w" "-fno-warn-unused-do-bind" ${haskell_flags})
   236     set(haskell_flags "-w" "-fno-warn-unused-do-bind" ${haskell_flags})
   220 endif()
   237 endif()
   221 
   238 
   222 
   239 
   223 #finish setting paths
       
   224 if(DEFINED DATA_INSTALL_DIR)
       
   225     set(SHAREPATH ${DATA_INSTALL_DIR}/hedgewars/)
       
   226 else()
       
   227     set(SHAREPATH share/hedgewars/)
       
   228 endif()
       
   229 set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
       
   230 set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
       
   231 if(WIN32)
       
   232     set(CMAKE_PREFIX_PATH "${CMAKE_SOURCE_DIR}/misc/winutils/")
       
   233     link_directories("${EXECUTABLE_OUTPUT_PATH}" "${CMAKE_SOURCE_DIR}/misc/winutils/bin")
       
   234 endif(WIN32)
       
   235 
       
   236 
       
   237 #server discovery
   240 #server discovery
   238 if(NOT NOSERVER)
   241 if(NOT NOSERVER)
   239     if(GHC)
   242     if(GHC)
   240         set(ghc_executable ${GHC})
   243         set(ghc_executable ${GHC})
   241     else()
   244     else()
   307     set(CPACK_NSIS_DISPLAY_NAME "Hedgewars")
   310     set(CPACK_NSIS_DISPLAY_NAME "Hedgewars")
   308     set(CPACK_NSIS_HELP_LINK "http://www.hedgewars.org/")
   311     set(CPACK_NSIS_HELP_LINK "http://www.hedgewars.org/")
   309     set(CPACK_NSIS_URL_INFO_ABOUT "http://www.hedgewars.org/")
   312     set(CPACK_NSIS_URL_INFO_ABOUT "http://www.hedgewars.org/")
   310     set(CPACK_NSIS_CONTACT "unC0Rr@gmail.com")
   313     set(CPACK_NSIS_CONTACT "unC0Rr@gmail.com")
   311     set(CPACK_NSIS_MODIFY_PATH OFF)
   314     set(CPACK_NSIS_MODIFY_PATH OFF)
       
   315     set(CPACK_NSIS_EXECUTABLES_DIRECTORY "${target_binary_install_dir}")
   312     set(CPACK_GENERATOR "ZIP;NSIS")
   316     set(CPACK_GENERATOR "ZIP;NSIS")
   313     set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "hedgewars")
   317     set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "hedgewars")
   314 else(WIN32 AND NOT UNIX)
   318 else(WIN32 AND NOT UNIX)
   315     set(CPACK_STRIP_FILES "bin/hedgewars;bin/hwengine")
   319     set(CPACK_STRIP_FILES "bin/hedgewars;bin/hwengine")
   316 endif(WIN32 AND NOT UNIX)
   320 endif(WIN32 AND NOT UNIX)