hedgewars/CMakeLists.txt
branchtransitional_engine
changeset 15975 2146cb7be36f
parent 15949 668c88b31dd6
equal deleted inserted replaced
15928:772a43d88e6b 15975:2146cb7be36f
     1 enable_language(Pascal)
     1 enable_language(Pascal)
     2 
     2 
     3 find_package(SDL2 REQUIRED CONFIG)
     3 find_package(SDL2 REQUIRED CONFIG)
     4 find_package(SDL2_image 2 REQUIRED)
     4 find_package(SDL2_image REQUIRED CONFIG)
     5 find_package(SDL2_net 2 REQUIRED)
     5 find_package(SDL2_net REQUIRED CONFIG)
     6 find_package(SDL2_ttf 2 REQUIRED)
     6 find_package(SDL2_ttf REQUIRED CONFIG)
     7 find_package(SDL2_mixer 2 REQUIRED)
     7 find_package(SDL2_mixer REQUIRED CONFIG)
     8 
     8 
     9 include(CheckLibraryExists)
     9 include(CheckLibraryExists)
    10 include(${CMAKE_MODULE_PATH}/utils.cmake)
    10 include(${CMAKE_MODULE_PATH}/utils.cmake)
    11 
    11 
    12 
    12 
    19     target_architecture(CMAKE_TARGET_ARCHITECTURES)
    19     target_architecture(CMAKE_TARGET_ARCHITECTURES)
    20     if(${CMAKE_Pascal_COMPILER_VERSION} VERSION_GREATER 2.7 OR ${CMAKE_TARGET_ARCHITECTURES} MATCHES "x86_64" OR ${CMAKE_TARGET_ARCHITECTURES} MATCHES "i386")
    20     if(${CMAKE_Pascal_COMPILER_VERSION} VERSION_GREATER 2.7 OR ${CMAKE_TARGET_ARCHITECTURES} MATCHES "x86_64" OR ${CMAKE_TARGET_ARCHITECTURES} MATCHES "i386")
    21         add_flag_append(CMAKE_Pascal_FLAGS "-fPIC")
    21         add_flag_append(CMAKE_Pascal_FLAGS "-fPIC")
    22     endif()
    22     endif()
    23 endif(UNIX)
    23 endif(UNIX)
       
    24 
       
    25 # FPC 3.2.2 does not create s COFF file for the engine icon, but still includes it
       
    26 # in the list of files to be linked, leading to a linking failure
       
    27 if(${CMAKE_Pascal_COMPILER_VERSION} VERSION_GREATER_EQUAL 3.2)
       
    28     add_flag_append(CMAKE_Pascal_FLAGS "-dSKIP_RESOURCES")
       
    29 endif()
    24 
    30 
    25 # convert list into pascal array
    31 # convert list into pascal array
    26 if(FONTS_DIRS)
    32 if(FONTS_DIRS)
    27   list(LENGTH FONTS_DIRS ndirs)
    33   list(LENGTH FONTS_DIRS ndirs)
    28   set(FONTS_DIRS_ARRAY "array [0..${ndirs}] of PChar = (")
    34   set(FONTS_DIRS_ARRAY "array [0..${ndirs}] of PChar = (")
   166     list(APPEND HW_LINK_LIBS lua)
   172     list(APPEND HW_LINK_LIBS lua)
   167     add_flag_append(CMAKE_Pascal_FLAGS "-XLAlua=${lua_output_name}")
   173     add_flag_append(CMAKE_Pascal_FLAGS "-XLAlua=${lua_output_name}")
   168 endif()
   174 endif()
   169 
   175 
   170 # PhysFS
   176 # PhysFS
   171 get_filename_component(PHYSFS_LIBRARY_DIR ${PHYSFS_LIBRARY} PATH)
   177 if (DEFINED PHYSFS_LIBRARY_RELEASE)
   172 add_flag_append(CMAKE_Pascal_FLAGS "-Fl${PHYSFS_LIBRARY}")
   178     if(${USE_DEBUG_LIBRARIES})
       
   179         get_filename_component(PHYSFS_LIBRARY_DIR ${PHYSFS_LIBRARY_DEBUG} PATH)
       
   180         add_flag_append(CMAKE_Pascal_FLAGS "-Fl${PHYSFS_LIBRARY_DEBUG}")
       
   181     else()    
       
   182         get_filename_component(PHYSFS_LIBRARY_DIR ${PHYSFS_LIBRARY_RELEASE} PATH)
       
   183         add_flag_append(CMAKE_Pascal_FLAGS "-Fl${PHYSFS_LIBRARY_RELEASE}")
       
   184     endif()
       
   185 else()
       
   186     get_filename_component(PHYSFS_LIBRARY_DIR ${PHYSFS_LIBRARY} PATH)
       
   187     add_flag_append(CMAKE_Pascal_FLAGS "-Fl${PHYSFS_LIBRARY}")
       
   188 endif()
   173 
   189 
   174 list(APPEND HW_LINK_LIBS physlayer)
   190 list(APPEND HW_LINK_LIBS physlayer)
   175 
   191 
   176 
   192 
   177 #opengl 2
   193 #opengl 2