67 lines
1.9 KiB
CMake
67 lines
1.9 KiB
CMake
INCLUDE(../../../cmake/macros.cmake)
|
|
|
|
#PROJECT(tgf)
|
|
|
|
IF(OPTION_SDL2)
|
|
ADD_SDL2_INCLUDEDIR()
|
|
ELSE(OPTION_SDL2)
|
|
ADD_SDL_INCLUDEDIR()
|
|
ENDIF(OPTION_SDL2)
|
|
ADD_EXPAT_INCLUDEDIR()
|
|
|
|
ADD_SDLIB_INCLUDEDIR(txml portability)
|
|
|
|
SET(TGF_HEADERS os.h tgf.h tgf.hpp modinfo.h osspec.h memmanager.h)
|
|
SET(TGF_SOURCES application.cpp eventloop.cpp directory.cpp file.cpp filesetup.cpp
|
|
formula.cpp hash.cpp module.cpp legacymodule.cpp modinfo.cpp os.cpp
|
|
params.cpp profiler.cpp schedulespy.cpp tgf.cpp trace.cpp memmanager.cpp)
|
|
SET(TGF_OTHER_SOURCES params.dtd)
|
|
|
|
IF(WIN32)
|
|
SET(TGF_HEADERS ${TGF_HEADERS} windowsspec.h)
|
|
SET(TGF_SOURCES ${TGF_SOURCES} windowsspec.cpp)
|
|
ELSE(WIN32)
|
|
SET(TGF_HEADERS ${TGF_HEADERS} linuxspec.h)
|
|
SET(TGF_SOURCES ${TGF_SOURCES} linuxspec.cpp)
|
|
ENDIF(WIN32)
|
|
|
|
# Disable developer warning
|
|
IF(COMMAND CMAKE_POLICY)
|
|
CMAKE_POLICY(SET CMP0003 NEW)
|
|
ENDIF(COMMAND CMAKE_POLICY)
|
|
|
|
IF(WIN32)
|
|
# DLL export stuff under Windows (to avoid .def file)
|
|
ADD_DEFINITIONS(-DTGF_DLL)
|
|
ENDIF(WIN32)
|
|
|
|
# Note: Other sources needed for having them available in IDEs.
|
|
SD_ADD_LIBRARY(tgf SHARED ${TGF_HEADERS} ${TGF_SOURCES} ${TGF_OTHER_SOURCES})
|
|
|
|
# Might not work with GCC 4.5 or + (non-robot modules crash at 1st reload = after 1 dlclose)
|
|
#SET_TARGET_PROPERTIES(tgf PROPERTIES VERSION ${VERSION} SOVERSION 0.0.0)
|
|
|
|
IF(CMAKE_SKIP_RPATH OR CMAKE_SKIP_BUILD_RPATH)
|
|
SD_ADD_LIBRARY(tgf_static STATIC ${TGF_HEADERS} ${TGF_SOURCES})
|
|
ENDIF(CMAKE_SKIP_RPATH OR CMAKE_SKIP_BUILD_RPATH)
|
|
|
|
ADD_SDLIB_LIBRARY(tgf portability txml) # txml ignored if OPTION_3RDPARTY_EXPAT
|
|
|
|
ADD_DL_LIBRARY(tgf)
|
|
IF(OPTION_SDL2)
|
|
ADD_SDL2_LIBRARY(tgf)
|
|
ELSE(OPTION_SDL2)
|
|
ADD_SDL_LIBRARY(tgf)
|
|
ENDIF(OPTION_SDL2)
|
|
ADD_EXPAT_LIBRARY(tgf) # Ignored if not OPTION_3RDPARTY_EXPAT
|
|
|
|
IF(WIN32)
|
|
SD_INSTALL_FILES(BIN TARGETS tgf)
|
|
ELSE(WIN32)
|
|
SD_INSTALL_FILES(LIB lib TARGETS tgf)
|
|
ENDIF(WIN32)
|
|
|
|
SD_INSTALL_FILES(INCLUDE FILES ${TGF_HEADERS})
|
|
|
|
SD_INSTALL_FILES(DATA config FILES params.dtd)
|