QTfrontend/CMakeLists.txt
changeset 8316 89232b2fa1d6
parent 8315 b3875e10a8ae
child 8317 ec9f94ab2737
equal deleted inserted replaced
8315:b3875e10a8ae 8316:89232b2fa1d6
    41 if(UNIX)
    41 if(UNIX)
    42     # HACK: in freebsd cannot find iconv.h included via SDL.h
    42     # HACK: in freebsd cannot find iconv.h included via SDL.h
    43     include_directories("/usr/local/include")
    43     include_directories("/usr/local/include")
    44 endif(UNIX)
    44 endif(UNIX)
    45 
    45 
    46 
    46 #directory containing hw executables
    47 if(WIN32 AND NOT UNIX)
    47 set(HEDGEWARS_BINDIR ${CMAKE_INSTALL_PREFIX}/${target_binary_install_dir})
    48     set(HEDGEWARS_BINDIR ".")
    48 #directory for resources, relative to the one above on certain platforms/configurations
    49     set(HEDGEWARS_DATADIR "../share/")
    49 if(DEFINED DATA_INSTALL_DIR OR WIN32 OR APPLE)
    50     add_definitions(-DUSE_XFIRE)
    50     set(HEDGEWARS_DATADIR ${SHAREPATH})
    51 else()
    51 else()
    52     set(HEDGEWARS_BINDIR ${CMAKE_INSTALL_PREFIX})
    52     set(HEDGEWARS_DATADIR ${CMAKE_INSTALL_PREFIX}/${SHAREPATH}/)
    53     if(DEFINED DATA_INSTALL_DIR)
    53 endif()
    54         set(HEDGEWARS_DATADIR ${DATA_INSTALL_DIR})
    54 
    55     else()
    55 #only the cocoa version of qt supports building 64 bit apps
    56         set(HEDGEWARS_DATADIR ${CMAKE_INSTALL_PREFIX}/share/)
    56 if(APPLE AND (CMAKE_OSX_ARCHITECTURES MATCHES "x86_64*") AND (NOT QT_MAC_USE_COCOA))
    57     endif()
    57     message(FATAL_ERROR "Building the 64 bit version of Hedgewars *requires* the Cocoa variant of QT on Mac OS X")
    58     #only the cocoa version of qt supports building 64 bit apps
    58 endif()
    59     if(APPLE AND (CMAKE_OSX_ARCHITECTURES MATCHES "x86_64*") AND (NOT QT_MAC_USE_COCOA))
    59 #endif()
    60         message(FATAL_ERROR "Building the 64 bit version of Hedgewars *requires* the Cocoa variant of QT on Mac OS X")
       
    61     endif()
       
    62 endif()
       
    63 
    60 
    64 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/hwconsts.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/hwconsts.cpp)
    61 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/hwconsts.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/hwconsts.cpp)
    65 
    62 
    66 file(GLOB NetCpp net/*.cpp)
    63 file(GLOB NetCpp net/*.cpp)
    67 file(GLOB ModelCpp model/*.cpp)
    64 file(GLOB ModelCpp model/*.cpp)
   134     campaign.h
   131     campaign.h
   135     )
   132     )
   136 
   133 
   137 set(hwfr_rez hedgewars.qrc)
   134 set(hwfr_rez hedgewars.qrc)
   138 
   135 
   139 if(BUILD_ENGINE_LIBRARY)
   136 if(${BUILD_ENGINE_LIBRARY})
   140     add_definitions(-DHWLIBRARY=1)
   137     add_definitions(-DHWLIBRARY=1)
   141     set(hwlibname "${EXECUTABLE_OUTPUT_PATH}/${CMAKE_SHARED_LIBRARY_PREFIX}hwengine${CMAKE_SHARED_LIBRARY_SUFFIX}")
   138     set(hwlibname "${EXECUTABLE_OUTPUT_PATH}/${CMAKE_SHARED_LIBRARY_PREFIX}hwengine${CMAKE_SHARED_LIBRARY_SUFFIX}")
   142     set(HW_LINK_LIBS ${hwlibname} ${HW_LINK_LIBS})
   139     set(HW_LINK_LIBS ${hwlibname} ${HW_LINK_LIBS})
   143 endif()
   140 endif()
   144 
   141 
   178     ${hwfr_hdrs}
   175     ${hwfr_hdrs}
   179     ${hwfr_rez_src}
   176     ${hwfr_rez_src}
   180     )
   177     )
   181 
   178 
   182 if((UNIX AND NOT APPLE) AND ${BUILD_ENGINE_LIBRARY})
   179 if((UNIX AND NOT APPLE) AND ${BUILD_ENGINE_LIBRARY})
   183     set_target_properties(hedgewars PROPERTIES LINK_FLAGS "-Wl,-rpath,${CMAKE_INSTALL_PREFIX}/${target_dir}")
   180     set_target_properties(hedgewars PROPERTIES LINK_FLAGS "-Wl,-rpath,${CMAKE_INSTALL_PREFIX}/${target_library_install_dir}")
   184 endif()
   181 endif()
   185 
   182 
   186 set(HW_LINK_LIBS
   183 set(HW_LINK_LIBS
   187     physfs
   184     physfs
   188     ${QT_LIBRARIES}
   185     ${QT_LIBRARIES}
   210 if (NOT CROSSAPPLE)
   207 if (NOT CROSSAPPLE)
   211     target_link_libraries(hedgewars ${HW_LINK_LIBS})
   208     target_link_libraries(hedgewars ${HW_LINK_LIBS})
   212 endif()
   209 endif()
   213 
   210 
   214 
   211 
   215 install(PROGRAMS "${EXECUTABLE_OUTPUT_PATH}/hedgewars${CMAKE_EXECUTABLE_SUFFIX}" DESTINATION ${target_dir})
   212 install(PROGRAMS "${EXECUTABLE_OUTPUT_PATH}/hedgewars${CMAKE_EXECUTABLE_SUFFIX}" DESTINATION ${target_binary_install_dir})
   216 
   213