mirror of
https://github.com/glest/glest-source.git
synced 2025-08-18 14:11:15 +02:00
Added cmake build files (thanks RCL)
This commit is contained in:
7
CMakeLists.txt
Normal file
7
CMakeLists.txt
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
CMAKE_MINIMUM_REQUIRED( VERSION 2.6 )
|
||||||
|
PROJECT( MegaGlest )
|
||||||
|
|
||||||
|
SET(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/mk/cmake/Modules)
|
||||||
|
|
||||||
|
ADD_SUBDIRECTORY( source/shared_lib )
|
||||||
|
ADD_SUBDIRECTORY( source/glest_game )
|
27
mk/cmake/Modules/FindCURL.cmake
Normal file
27
mk/cmake/Modules/FindCURL.cmake
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
# - Find curl
|
||||||
|
# Find the native CURL headers and libraries.
|
||||||
|
#
|
||||||
|
# CURL_INCLUDE_DIRS - where to find curl/curl.h, etc.
|
||||||
|
# CURL_LIBRARIES - List of libraries when using curl.
|
||||||
|
# CURL_FOUND - True if curl found.
|
||||||
|
|
||||||
|
# Look for the header file.
|
||||||
|
FIND_PATH(CURL_INCLUDE_DIR NAMES curl/curl.h)
|
||||||
|
MARK_AS_ADVANCED(CURL_INCLUDE_DIR)
|
||||||
|
|
||||||
|
# Look for the library.
|
||||||
|
FIND_LIBRARY(CURL_LIBRARY NAMES curl curl-gnutls)
|
||||||
|
MARK_AS_ADVANCED(CURL_LIBRARY)
|
||||||
|
|
||||||
|
# handle the QUIETLY and REQUIRED arguments and set CURL_FOUND to TRUE if
|
||||||
|
# all listed variables are TRUE
|
||||||
|
INCLUDE(FindPackageHandleStandardArgs)
|
||||||
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(CURL DEFAULT_MSG CURL_LIBRARY CURL_INCLUDE_DIR)
|
||||||
|
|
||||||
|
IF(CURL_FOUND)
|
||||||
|
SET(CURL_LIBRARIES ${CURL_LIBRARY})
|
||||||
|
SET(CURL_INCLUDE_DIRS ${CURL_INCLUDE_DIR})
|
||||||
|
ELSE(CURL_FOUND)
|
||||||
|
SET(CURL_LIBRARIES)
|
||||||
|
SET(CURL_INCLUDE_DIRS)
|
||||||
|
ENDIF(CURL_FOUND)
|
45
mk/cmake/Modules/FindLUA.cmake
Normal file
45
mk/cmake/Modules/FindLUA.cmake
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
# Find the Lua 5.1 includes and library
|
||||||
|
#
|
||||||
|
# LUA_INCLUDE_DIR - where to find lua.h
|
||||||
|
# LUA_LIBRARIES - List of fully qualified libraries to link against
|
||||||
|
# LUA_FOUND - Set to TRUE if found
|
||||||
|
|
||||||
|
# Copyright (c) 2007, Pau Garcia i Quiles, <pgquiles@elpauer.org>
|
||||||
|
#
|
||||||
|
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||||
|
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||||
|
|
||||||
|
# [RCL] FIXME: is it future proof with names like lua5.1? Kubuntu does not provide
|
||||||
|
# a generic (version-independent) include directory for LUA...
|
||||||
|
|
||||||
|
IF(LUA_INCLUDE_DIR AND LUA_LIBRARIES)
|
||||||
|
SET(LUA_FIND_QUIETLY TRUE)
|
||||||
|
ENDIF(LUA_INCLUDE_DIR AND LUA_LIBRARIES)
|
||||||
|
|
||||||
|
FIND_PATH(LUA_INCLUDE_DIR NAMES lua.hpp
|
||||||
|
PATHS /usr/include/lua
|
||||||
|
/usr/include/lua5.1
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(LUA_LIBRARIES NAMES lua5.1 )
|
||||||
|
|
||||||
|
IF(LUA_INCLUDE_DIR AND LUA_LIBRARIES)
|
||||||
|
SET(LUA_FOUND TRUE)
|
||||||
|
INCLUDE(CheckLibraryExists)
|
||||||
|
CHECK_LIBRARY_EXISTS(${LUA_LIBRARIES} lua_close "" LUA_NEED_PREFIX)
|
||||||
|
ELSE(LUA_INCLUDE_DIR AND LUA_LIBRARIES)
|
||||||
|
SET(LUA_FOUND FALSE)
|
||||||
|
ENDIF (LUA_INCLUDE_DIR AND LUA_LIBRARIES)
|
||||||
|
|
||||||
|
IF(LUA_FOUND)
|
||||||
|
IF (NOT LUA_FIND_QUIETLY)
|
||||||
|
MESSAGE(STATUS "Found Lua library: ${LUA_LIBRARIES}")
|
||||||
|
MESSAGE(STATUS "Found Lua headers: ${LUA_INCLUDE_DIR}")
|
||||||
|
ENDIF (NOT LUA_FIND_QUIETLY)
|
||||||
|
ELSE(LUA_FOUND)
|
||||||
|
IF(LUA_FIND_REQUIRED)
|
||||||
|
MESSAGE(FATAL_ERROR "Could NOT find Lua")
|
||||||
|
ENDIF(LUA_FIND_REQUIRED)
|
||||||
|
ENDIF(LUA_FOUND)
|
||||||
|
|
||||||
|
MARK_AS_ADVANCED(LUA_INCLUDE_DIR LUA_LIBRARIES)
|
38
mk/cmake/Modules/FindOGG.cmake
Normal file
38
mk/cmake/Modules/FindOGG.cmake
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
# Defines
|
||||||
|
# OGG_FOUND
|
||||||
|
# OGG_INCLUDE_DIR
|
||||||
|
# OGG_LIBRARY
|
||||||
|
# VORBIS_LIBRARY
|
||||||
|
# VORBIS_FILE_LIBRARY
|
||||||
|
#
|
||||||
|
|
||||||
|
# check for cache to avoid littering log
|
||||||
|
IF(OGG_INCLUDE_DIR AND OGG_LIBRARY AND VORBIS_LIBRARY)
|
||||||
|
SET(OGG_BE_QUIET TRUE)
|
||||||
|
ENDIF(OGG_INCLUDE_DIR AND OGG_LIBRARY AND VORBIS_LIBRARY)
|
||||||
|
|
||||||
|
|
||||||
|
FIND_PATH(OGG_INCLUDE_DIR ogg/ogg.h)
|
||||||
|
FIND_LIBRARY(OGG_LIBRARY NAMES ogg)
|
||||||
|
FIND_LIBRARY(VORBIS_LIBRARY NAMES vorbis)
|
||||||
|
FIND_LIBRARY(VORBIS_FILE_LIBRARY NAMES vorbisfile)
|
||||||
|
|
||||||
|
IF(OGG_INCLUDE_DIR AND OGG_LIBRARY AND VORBIS_LIBRARY AND VORBIS_FILE_LIBRARY)
|
||||||
|
SET(OGG_FOUND TRUE)
|
||||||
|
IF(NOT OGG_BE_QUIET)
|
||||||
|
MESSAGE(STATUS "OGG/Vorbis includes: ${OGG_INCLUDE_DIR}")
|
||||||
|
MESSAGE(STATUS "OGG library : ${OGG_LIBRARY}")
|
||||||
|
MESSAGE(STATUS "Vorbis library : ${VORBIS_LIBRARY}")
|
||||||
|
MESSAGE(STATUS "Vorbis file library: ${VORBIS_FILE_LIBRARY}")
|
||||||
|
ENDIF(NOT OGG_BE_QUIET)
|
||||||
|
ELSE(OGG_INCLUDE_DIR AND OGG_LIBRARY AND VORBIS_LIBRARY AND VORBIS_FILE_LIBRARY)
|
||||||
|
SET(OGG_FOUND FALSE)
|
||||||
|
MESSAGE("OGG/Vorbis was not found on this system!")
|
||||||
|
ENDIF(OGG_INCLUDE_DIR AND OGG_LIBRARY AND VORBIS_LIBRARY AND VORBIS_FILE_LIBRARY)
|
||||||
|
|
||||||
|
MARK_AS_ADVANCED(
|
||||||
|
OGG_INCLUDE_DIR
|
||||||
|
OGG_LIBRARY
|
||||||
|
VORBIS_LIBRARY
|
||||||
|
VORBIS_FILE_LIBRARY
|
||||||
|
)
|
30
mk/cmake/Modules/FindXercesC.cmake
Normal file
30
mk/cmake/Modules/FindXercesC.cmake
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
# - Find Xerces-C
|
||||||
|
# Find the Xerces-C includes and library
|
||||||
|
#
|
||||||
|
# XERCESC_INCLUDE_DIR - Where to find xercesc include sub-directory.
|
||||||
|
# XERCESC_LIBRARIES - List of libraries when using Xerces-C.
|
||||||
|
# XERCESC_FOUND - True if Xerces-C found.
|
||||||
|
|
||||||
|
|
||||||
|
IF (XERCESC_INCLUDE_DIR)
|
||||||
|
# Already in cache, be silent.
|
||||||
|
SET(XERCESC_FIND_QUIETLY TRUE)
|
||||||
|
ENDIF (XERCESC_INCLUDE_DIR)
|
||||||
|
|
||||||
|
FIND_PATH(XERCESC_INCLUDE_DIR xercesc/dom/DOM.hpp)
|
||||||
|
|
||||||
|
SET(XERCESC_NAMES xerces-c xerces-c_3 xerces-c_2)
|
||||||
|
FIND_LIBRARY(XERCESC_LIBRARY NAMES ${XERCESC_NAMES} )
|
||||||
|
|
||||||
|
# Handle the QUIETLY and REQUIRED arguments and set XERCESC_FOUND to
|
||||||
|
# TRUE if all listed variables are TRUE.
|
||||||
|
INCLUDE(FindPackageHandleStandardArgs)
|
||||||
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(XercesC DEFAULT_MSG XERCESC_LIBRARY XERCESC_INCLUDE_DIR)
|
||||||
|
|
||||||
|
IF(XERCESC_FOUND)
|
||||||
|
SET( XERCESC_LIBRARIES ${XERCESC_LIBRARY} )
|
||||||
|
ELSE(XERCESC_FOUND)
|
||||||
|
SET( XERCESC_LIBRARIES )
|
||||||
|
ENDIF(XERCESC_FOUND)
|
||||||
|
|
||||||
|
MARK_AS_ADVANCED( XERCESC_LIBRARY XERCESC_INCLUDE_DIR )
|
95
source/glest_game/CMakeLists.txt
Normal file
95
source/glest_game/CMakeLists.txt
Normal file
@@ -0,0 +1,95 @@
|
|||||||
|
#########################################################################################
|
||||||
|
# common libraries
|
||||||
|
|
||||||
|
SET(EXTERNAL_LIBS "")
|
||||||
|
|
||||||
|
FIND_PACKAGE(SDL REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${SDL_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${SDL_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(OpenGL REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OPENGL_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(XercesC REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${XERCESC_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${XERCESC_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(OpenAL REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${OPENAL_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OPENAL_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(OGG REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${OGG_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OGG_LIBRARY})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_LIBRARY})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_FILE_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(LUA REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${LUA_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${LUA_LIBRARIES})
|
||||||
|
|
||||||
|
FIND_PACKAGE(JPEG REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${JPEG_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${JPEG_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(PNG REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${PNG_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${PNG_LIBRARY})
|
||||||
|
|
||||||
|
#########################################################################################
|
||||||
|
# glest game
|
||||||
|
|
||||||
|
SET(DIRS_WITH_SRC
|
||||||
|
ai
|
||||||
|
facilities
|
||||||
|
game
|
||||||
|
global
|
||||||
|
graphics
|
||||||
|
gui
|
||||||
|
main
|
||||||
|
menu
|
||||||
|
network
|
||||||
|
sound
|
||||||
|
type_instances
|
||||||
|
types
|
||||||
|
world)
|
||||||
|
|
||||||
|
SET(GLEST_LIB_INCLUDE_ROOT "../shared_lib/include/")
|
||||||
|
SET(GLEST_LIB_INCLUDE_DIRS
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}platform/common
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}platform/sdl
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}platform/posix
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}util
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}graphics
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}graphics/gl
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}sound
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}sound/openal
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}xml
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}glew
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}lua
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}streflop
|
||||||
|
${GLEST_LIB_INCLUDE_ROOT}streflop/libm_flt32_source)
|
||||||
|
INCLUDE_DIRECTORIES( ${GLEST_LIB_INCLUDE_DIRS} )
|
||||||
|
|
||||||
|
SET(MG_SOURCE_FILES "")
|
||||||
|
|
||||||
|
FOREACH(DIR IN LISTS DIRS_WITH_SRC)
|
||||||
|
INCLUDE_DIRECTORIES( ${DIR} )
|
||||||
|
|
||||||
|
set(SRC_DIR_TO_GLOB ${DIR})
|
||||||
|
FILE(GLOB SRC_FILES_FROM_THIS_DIR ${SRC_DIR_TO_GLOB}/*.cpp)
|
||||||
|
SET(MG_SOURCE_FILES ${MG_SOURCE_FILES} ${SRC_FILES_FROM_THIS_DIR})
|
||||||
|
ENDFOREACH(DIR)
|
||||||
|
|
||||||
|
# [RCL] FIXME: make it compiler-agnostic
|
||||||
|
SET(CMAKE_CXX_FLAGS "-O3 -msse -msse2 -mfpmath=sse -DSTREFLOP_SSE")
|
||||||
|
|
||||||
|
SET(TARGET_NAME "glest.bin")
|
||||||
|
|
||||||
|
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/data/glest_game)
|
||||||
|
|
||||||
|
ADD_EXECUTABLE(${TARGET_NAME} ${MG_SOURCE_FILES})
|
||||||
|
TARGET_LINK_LIBRARIES(${TARGET_NAME} streflop)
|
||||||
|
TARGET_LINK_LIBRARIES(${TARGET_NAME} glest_lib)
|
||||||
|
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${EXTERNAL_LIBS})
|
107
source/shared_lib/CMakeLists.txt
Normal file
107
source/shared_lib/CMakeLists.txt
Normal file
@@ -0,0 +1,107 @@
|
|||||||
|
#########################################################################################
|
||||||
|
# streflop
|
||||||
|
|
||||||
|
# IMPORTANT: should come BEFORE finding packages
|
||||||
|
ADD_SUBDIRECTORY(sources/streflop)
|
||||||
|
|
||||||
|
#########################################################################################
|
||||||
|
# common libraries
|
||||||
|
|
||||||
|
SET(EXTERNAL_LIBS "")
|
||||||
|
|
||||||
|
FIND_PACKAGE(SDL REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${SDL_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${SDL_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(OpenGL REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OPENGL_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(XercesC REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${XERCESC_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${XERCESC_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(OpenAL REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${OPENAL_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OPENAL_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(OGG REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${OGG_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OGG_LIBRARY})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_LIBRARY})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_FILE_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(LUA REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${LUA_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${LUA_LIBRARIES})
|
||||||
|
|
||||||
|
FIND_PACKAGE(JPEG REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${JPEG_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${JPEG_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(PNG REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${PNG_INCLUDE_DIR})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${PNG_LIBRARY})
|
||||||
|
|
||||||
|
FIND_PACKAGE(CURL REQUIRED)
|
||||||
|
INCLUDE_DIRECTORIES(${CURL_INCLUDE_DIRS})
|
||||||
|
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${CURL_LIBRARIES})
|
||||||
|
|
||||||
|
#########################################################################################
|
||||||
|
# glest lib
|
||||||
|
|
||||||
|
SET(DIRS_WITH_SRC
|
||||||
|
platform/common
|
||||||
|
platform/sdl
|
||||||
|
platform/posix
|
||||||
|
util
|
||||||
|
graphics
|
||||||
|
graphics/gl
|
||||||
|
sound
|
||||||
|
sound/openal
|
||||||
|
xml
|
||||||
|
glew
|
||||||
|
lua
|
||||||
|
streflop
|
||||||
|
streflop/libm_flt32_source)
|
||||||
|
|
||||||
|
SET(MG_INCLUDES_ROOT "include/")
|
||||||
|
SET(MG_SOURCES_ROOT "sources/")
|
||||||
|
SET(MG_INCLUDE_FILES "")
|
||||||
|
SET(MG_SOURCE_FILES "")
|
||||||
|
|
||||||
|
FOREACH(DIR IN LISTS DIRS_WITH_SRC)
|
||||||
|
set(INCLUDE_DIR_TO_GLOB ${MG_INCLUDES_ROOT}${DIR})
|
||||||
|
INCLUDE_DIRECTORIES( ${INCLUDE_DIR_TO_GLOB} )
|
||||||
|
#MESSAGE(STATUS "INCLUDE_DIR_TO_GLOB: ${INCLUDE_DIR_TO_GLOB}")
|
||||||
|
#FILE(GLOB INC_FILES_FROM_THIS_DIR ${INCLUDE_DIR_TO_GLOB}/*.h)
|
||||||
|
#MESSAGE(STATUS "INCLUDE FILES GLOBBED: ${INC_FILES_FROM_THIS_DIR}")
|
||||||
|
#SET(MG_INCLUDE_FILES ${MG_INCLUDE_FILES} ${INC_FILES_FROM_THIS_DIR})
|
||||||
|
|
||||||
|
set(SRC_DIR_TO_GLOB ${MG_SOURCES_ROOT}${DIR})
|
||||||
|
#MESSAGE(STATUS "SRC_DIR_TO_GLOB: ${SRC_DIR_TO_GLOB}")
|
||||||
|
FILE(GLOB SRC_FILES_FROM_THIS_DIR ${SRC_DIR_TO_GLOB}/*.cpp)
|
||||||
|
#MESSAGE(STATUS "SRC_FILES_FROM_THIS_DIR: ${SRC_FILES_FROM_THIS_DIR}")
|
||||||
|
SET(MG_SOURCE_FILES ${MG_SOURCE_FILES} ${SRC_FILES_FROM_THIS_DIR})
|
||||||
|
ENDFOREACH(DIR)
|
||||||
|
|
||||||
|
#MESSAGE(STATUS "Source files: ${MG_INCLUDE_FILES}")
|
||||||
|
#MESSAGE(STATUS "Source files: ${MG_SOURCE_FILES}")
|
||||||
|
#MESSAGE(STATUS "Include dirs: ${INCLUDE_DIRECTORIES}")
|
||||||
|
|
||||||
|
# FIXME: hackish, should be tested for
|
||||||
|
SET(UNIX_SPECIFIC_DEFINES "-DX11_AVAILABLE -DHAVE_SYS_IOCTL_H")
|
||||||
|
|
||||||
|
# FIXME: hackish...
|
||||||
|
SET(STREFLOP_PROPERTIES "-DSTREFLOP_SSE -DLIBM_COMPILING_FLT32")
|
||||||
|
|
||||||
|
# FIXME: should choose between platforms
|
||||||
|
SET_SOURCE_FILES_PROPERTIES(${MG_SOURCE_FILES} PROPERTIES COMPILE_FLAGS
|
||||||
|
"${UNIX_SPECIFIC_DEFINES} ${STREFLOP_PROPERTIES} ${CXXFLAGS}")
|
||||||
|
|
||||||
|
# [RCL] FIXME: make it compiler-agnostic
|
||||||
|
SET(CMAKE_CXX_FLAGS "-O3 -msse -msse2 -mfpmath=sse")
|
||||||
|
|
||||||
|
ADD_LIBRARY(glest_lib ${MG_SOURCE_FILES})
|
||||||
|
TARGET_LINK_LIBRARIES(glest_lib streflop)
|
||||||
|
TARGET_LINK_LIBRARIES(glest_lib ${EXTERNAL_LIBS})
|
@@ -1,16 +1,21 @@
|
|||||||
AUX_SOURCE_DIRECTORY(libm/flt-32 libm_flt32_source)
|
#########################################################################################
|
||||||
|
# streflop
|
||||||
|
#if (NOT $ENV{CXX} MATCHES "icpc")
|
||||||
|
# SET(cxxflags "${cxxflags} -mfpmath=sse -msse")
|
||||||
|
#endif (NOT $ENV{CXX} MATCHES "icpc")
|
||||||
|
|
||||||
SET(cxxflags "-w -O3 -I${CMAKE_CURRENT_SOURCE_DIR}/libm/headers")
|
FILE(GLOB_RECURSE STREFLOP_GLOBBED_CPP libm/flt-32/*.cpp)
|
||||||
if (NOT $ENV{CXX} MATCHES "icpc")
|
|
||||||
SET(cxxflags "${cxxflags} -mfpmath=sse -msse")
|
INCLUDE_DIRECTORIES(
|
||||||
endif (NOT $ENV{CXX} MATCHES "icpc")
|
../../include/streflop/libm/flt-32
|
||||||
SET_SOURCE_FILES_PROPERTIES(${libm_flt32_source} PROPERTIES COMPILE_FLAGS "-DLIBM_COMPILING_FLT32 ${cxxflags}")
|
../../include/streflop/libm/headers
|
||||||
|
)
|
||||||
|
|
||||||
|
SET(STREFLOP_SRC ${STREFLOP_GLOBBED_CPP})
|
||||||
|
# use SSE unconditionally (FIXME?)
|
||||||
|
SET_SOURCE_FILES_PROPERTIES(${STREFLOP_SRC} PROPERTIES COMPILE_FLAGS "-DSTREFLOP_SSE -DLIBM_COMPILING_FLT32 -O3 ${CXXFLAGS}")
|
||||||
|
|
||||||
ADD_LIBRARY(streflop STATIC EXCLUDE_FROM_ALL
|
ADD_LIBRARY(streflop STATIC EXCLUDE_FROM_ALL
|
||||||
SMath.cpp
|
${STREFLOP_SRC}
|
||||||
Random.cpp
|
|
||||||
streflopC.cpp
|
|
||||||
${libm_flt32_source}
|
|
||||||
)
|
)
|
||||||
set_target_properties(streflop PROPERTIES COMPILE_FLAGS "${PIC_FLAG}")
|
set_target_properties(streflop PROPERTIES COMPILE_FLAGS "${PIC_FLAG}")
|
||||||
#TODO do not use -fPIC for streflop (decreases performance)
|
|
||||||
|
Reference in New Issue
Block a user