misc/physfs/CMakeLists.txt
changeset 8073 5a289ef40fdb
parent 8068 b35427506169
child 8076 5ee474476ae1
equal deleted inserted replaced
8072:c803d89ae74d 8073:5a289ef40fdb
    32 
    32 
    33 INCLUDE(CheckIncludeFile)
    33 INCLUDE(CheckIncludeFile)
    34 INCLUDE(CheckLibraryExists)
    34 INCLUDE(CheckLibraryExists)
    35 INCLUDE(CheckCSourceCompiles)
    35 INCLUDE(CheckCSourceCompiles)
    36 
    36 
    37 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/src)
    37 include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src)
       
    38 include_directories(${SDL_INCLUDE_DIR}) #hw
       
    39 include_directories(${LUA_INCLUDE_DIR}) #hw
    38 
    40 
    39 IF(MACOSX)
    41 IF(MACOSX)
    40     # Fallback to older OS X on PowerPC to support wider range of systems...
    42     # Fallback to older OS X on PowerPC to support wider range of systems...
    41     IF(CMAKE_OSX_ARCHITECTURES MATCHES ppc)
    43     IF(CMAKE_OSX_ARCHITECTURES MATCHES ppc)
    42         ADD_DEFINITIONS(-DMAC_OS_X_VERSION_MIN_REQUIRED=1020)
    44         ADD_DEFINITIONS(-DMAC_OS_X_VERSION_MIN_REQUIRED=1020)
   133     src/archiver_mvl.c
   135     src/archiver_mvl.c
   134     src/archiver_qpak.c
   136     src/archiver_qpak.c
   135     src/archiver_wad.c
   137     src/archiver_wad.c
   136     src/archiver_zip.c
   138     src/archiver_zip.c
   137     src/archiver_iso9660.c
   139     src/archiver_iso9660.c
       
   140     #custom files from Hedgewars
       
   141     extras/physfsrwops.c
       
   142     extras/physfslualoader.c
       
   143     extras/hwpacksmounter.c
   138     ${PHYSFS_BEOS_SRCS}
   144     ${PHYSFS_BEOS_SRCS}
   139 )
   145 )
   140 
   146 
   141 
   147 
   142 # platform layers ...
   148 # platform layers ...
   252 OPTION(PHYSFS_ARCHIVE_ISO9660 "Enable ISO9660 support" TRUE)
   258 OPTION(PHYSFS_ARCHIVE_ISO9660 "Enable ISO9660 support" TRUE)
   253 IF(PHYSFS_ARCHIVE_ISO9660)
   259 IF(PHYSFS_ARCHIVE_ISO9660)
   254     ADD_DEFINITIONS(-DPHYSFS_SUPPORTS_ISO9660=1)
   260     ADD_DEFINITIONS(-DPHYSFS_SUPPORTS_ISO9660=1)
   255 ENDIF(PHYSFS_ARCHIVE_ISO9660)
   261 ENDIF(PHYSFS_ARCHIVE_ISO9660)
   256 
   262 
   257 
   263 IF(WINDOWS)
   258 OPTION(PHYSFS_BUILD_STATIC "Build static library" TRUE)
   264     OPTION(PHYSFS_BUILD_STATIC "Build static library" FALSE)
       
   265     OPTION(PHYSFS_BUILD_SHARED "Build shared library" TRUE)
       
   266 ELSE(WINDOWS)
       
   267     OPTION(PHYSFS_BUILD_STATIC "Build static library" TRUE)
       
   268     OPTION(PHYSFS_BUILD_SHARED "Build shared library" FALSE)
       
   269 ENDIF(WINDOWS)
       
   270 
   259 IF(PHYSFS_BUILD_STATIC)
   271 IF(PHYSFS_BUILD_STATIC)
   260     ADD_LIBRARY(physfs STATIC ${PHYSFS_SRCS})
   272     ADD_LIBRARY(physfs STATIC ${PHYSFS_SRCS})
   261     SET_TARGET_PROPERTIES(physfs PROPERTIES OUTPUT_NAME "physfs")
   273     SET_TARGET_PROPERTIES(physfs PROPERTIES OUTPUT_NAME "physfs")
   262     SET(PHYSFS_LIB_TARGET physfs)
   274     SET(PHYSFS_LIB_TARGET physfs)
   263     SET(PHYSFS_INSTALL_TARGETS ${PHYSFS_INSTALL_TARGETS} ";physfs")
   275     SET(PHYSFS_INSTALL_TARGETS ${PHYSFS_INSTALL_TARGETS} ";physfs")
   264 ENDIF(PHYSFS_BUILD_STATIC)
   276 ENDIF(PHYSFS_BUILD_STATIC)
   265 
   277 
   266 #OPTION(PHYSFS_BUILD_SHARED "Build shared library" FALSE)
   278 IF(PHYSFS_BUILD_SHARED)
   267 #IF(PHYSFS_BUILD_SHARED)
   279     find_package(SDL REQUIRED)
   268 #    ADD_LIBRARY(physfs SHARED ${PHYSFS_SRCS})
   280     ADD_LIBRARY(physfs SHARED ${PHYSFS_SRCS})
   269 #    SET_TARGET_PROPERTIES(physfs PROPERTIES VERSION ${PHYSFS_VERSION})
   281     SET_TARGET_PROPERTIES(physfs PROPERTIES VERSION ${PHYSFS_VERSION})
   270 #    SET_TARGET_PROPERTIES(physfs PROPERTIES SOVERSION ${PHYSFS_SOVERSION})
   282     SET_TARGET_PROPERTIES(physfs PROPERTIES SOVERSION ${PHYSFS_SOVERSION})
   271 #    TARGET_LINK_LIBRARIES(physfs ${OPTIONAL_LIBRARY_LIBS} ${OTHER_LDFLAGS})
   283     TARGET_LINK_LIBRARIES(physfs ${OPTIONAL_LIBRARY_LIBS} ${OTHER_LDFLAGS} SDL)
   272 #    SET(PHYSFS_LIB_TARGET physfs)
   284     SET(PHYSFS_LIB_TARGET physfs)
   273 #    SET(PHYSFS_INSTALL_TARGETS ${PHYSFS_INSTALL_TARGETS} ";physfs")
   285     SET(PHYSFS_INSTALL_TARGETS ${PHYSFS_INSTALL_TARGETS} ";physfs")
   274 #ENDIF(PHYSFS_BUILD_SHARED)
   286 ENDIF(PHYSFS_BUILD_SHARED)
   275 
   287 
   276 IF(NOT PHYSFS_BUILD_SHARED AND NOT PHYSFS_BUILD_STATIC)
   288 IF(NOT PHYSFS_BUILD_SHARED AND NOT PHYSFS_BUILD_STATIC)
   277     MESSAGE(FATAL "Both shared and static libraries are disabled!")
   289     MESSAGE(FATAL "Both shared and static libraries are disabled!")
   278 ENDIF(NOT PHYSFS_BUILD_SHARED AND NOT PHYSFS_BUILD_STATIC)
   290 ENDIF(NOT PHYSFS_BUILD_SHARED AND NOT PHYSFS_BUILD_STATIC)
   279 
   291 
   280 # CMake FAQ says I need this...
   292 # CMake FAQ says I need this...
   281 IF(PHYSFS_BUILD_SHARED AND PHYSFS_BUILD_STATIC)
   293 IF(PHYSFS_BUILD_SHARED AND PHYSFS_BUILD_STATIC)
   282     SET_TARGET_PROPERTIES(physfs PROPERTIES CLEAN_DIRECT_OUTPUT 1)
   294     SET_TARGET_PROPERTIES(physfs PROPERTIES CLEAN_DIRECT_OUTPUT 1)
   283     SET_TARGET_PROPERTIES(physfs-static PROPERTIES CLEAN_DIRECT_OUTPUT 1)
       
   284 ENDIF(PHYSFS_BUILD_SHARED AND PHYSFS_BUILD_STATIC)
   295 ENDIF(PHYSFS_BUILD_SHARED AND PHYSFS_BUILD_STATIC)
   285 
   296 
   286 OPTION(PHYSFS_BUILD_TEST "Build stdio test program." FALSE)
   297 OPTION(PHYSFS_BUILD_TEST "Build stdio test program." FALSE)
   287 MARK_AS_ADVANCED(PHYSFS_BUILD_TEST)
   298 MARK_AS_ADVANCED(PHYSFS_BUILD_TEST)
   288 IF(PHYSFS_BUILD_TEST)
   299 IF(PHYSFS_BUILD_TEST)