2010-06-05 17:34:55 +00:00
#########################################################################################
# streflop
# IMPORTANT: should come BEFORE finding packages
2011-12-16 06:24:21 +00:00
IF ( WANT_STREFLOP )
ADD_SUBDIRECTORY ( sources/streflop )
ENDIF ( )
2010-06-05 17:34:55 +00:00
#########################################################################################
# common libraries
SET ( EXTERNAL_LIBS "" )
2011-10-17 16:59:22 +00:00
SET ( TARGET_NAME "libmegaglest" )
2010-06-05 17:34:55 +00:00
2012-10-26 00:05:44 +00:00
IF ( BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST )
2011-10-17 16:59:22 +00:00
MESSAGE ( STATUS "Will try to build MegaGlest shared library" )
INCLUDE ( CheckIncludeFiles )
IF ( WIN32 )
SET ( CMAKE_LIBRARY_PATH ${ CMAKE_LIBRARY_PATH }
$ { P R O J E C T _ S O U R C E _ D I R } / s o u r c e / w i n 3 2 _ d e p s / l i b
$ { P R O J E C T _ S O U R C E _ D I R } / s o u r c e / w i n 3 2 _ d e p s / x e r c e s - c - s r c _ 2 _ 8 _ 0 / l i b
$ { P R O J E C T _ S O U R C E _ D I R } / s o u r c e / w i n 3 2 _ d e p s / w x W i d g e t s - 2 . 8 . 1 0 / l i b )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/include )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/openal-soft-1.12.854/include )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/openal-soft-1.12.854 )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/xerces-c-src_2_8_0/include )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/libogg-1.2.1/include )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/lua-5.1/src )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/jpeg-8b )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/lpng141 )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/zlib-1.2.5 )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/curl-7.21.3/include )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/SDL-1.2.x/include )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/wxWidgets-2.8.10/include )
link_directories ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/lib )
link_directories ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/xerces-c-src_2_8_0/lib )
link_directories ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/wxWidgets-2.8.10/lib )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/win32_deps/include )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/shared_lib/include/platform/posix )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/shared_lib/include/platform/win32 )
ENDIF ( )
FIND_PACKAGE ( CURL REQUIRED )
INCLUDE_DIRECTORIES ( ${ CURL_INCLUDE_DIRS } )
IF ( UNIX )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ CURL_LIBRARIES } )
ENDIF ( )
# check libcurl version #
IF ( WIN32 )
file ( READ ${ PROJECT_SOURCE_DIR } ${ CURL_INCLUDE_DIR } /curl/curlver.h CURL_VERSION_H_CONTENTS )
ELSE ( )
file ( READ ${ CURL_INCLUDE_DIR } /curl/curlver.h CURL_VERSION_H_CONTENTS )
ENDIF ( )
string ( REGEX MATCH "LIBCURL_VERSION_MAJOR[ \t]+([0-9]+)" LIBCURL_VERSION_MJ ${ CURL_VERSION_H_CONTENTS } )
string ( REGEX MATCH "([0-9]+)" LIBCURL_VERSION_MJ ${ LIBCURL_VERSION_MJ } )
string ( REGEX MATCH "LIBCURL_VERSION_MINOR[ \t]+([0-9]+)" LIBCURL_VERSION_MI ${ CURL_VERSION_H_CONTENTS } )
string ( REGEX MATCH "([0-9]+)" LIBCURL_VERSION_MI ${ LIBCURL_VERSION_MI } )
string ( REGEX MATCH "LIBCURL_VERSION_PATCH[ \t]+([0-9]+)" LIBCURL_VERSION_PT ${ CURL_VERSION_H_CONTENTS } )
string ( REGEX MATCH "([0-9]+)" LIBCURL_VERSION_PT ${ LIBCURL_VERSION_PT } )
set ( CURL_MAJOR_VERSION ${ LIBCURL_VERSION_MJ } )
set ( CURL_MINOR_VERSION ${ LIBCURL_VERSION_MI } )
set ( CURL_PATCH_VERSION ${ LIBCURL_VERSION_PT } )
include_regular_expression ( "^.*$" )
# Setup package meta-data
set ( CURL_VERSION ${ CURL_MAJOR_VERSION } . ${ CURL_MINOR_VERSION } . ${ CURL_PATCH_VERSION } )
message ( STATUS "curl version=[${CURL_VERSION}]" )
#IF( ${CURL_VERSION} VERSION_LESS 7.21.0)
IF ( ${ CURL_VERSION } VERSION_LESS 7.16.4 )
message ( STATUS "(please visit http://curl.haxx.se/libcurl/ to find a newer version)" )
#message(FATAL_ERROR " CURL version = [${CURL_VERSION}] we require AT LEAST [7.21.0]")
message ( FATAL_ERROR " CURL version = [${CURL_VERSION}] we require AT LEAST [7.16.4]" )
ENDIF ( )
FIND_PACKAGE ( SDL REQUIRED )
INCLUDE_DIRECTORIES ( ${ SDL_INCLUDE_DIR } )
IF ( UNIX )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ SDL_LIBRARY } )
ENDIF ( )
FIND_PACKAGE ( OpenGL REQUIRED )
INCLUDE_DIRECTORIES ( ${ OPENGL_INCLUDE_DIR } )
IF ( UNIX )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ OPENGL_LIBRARY } )
ENDIF ( )
FIND_PACKAGE ( XercesC REQUIRED )
INCLUDE_DIRECTORIES ( ${ XERCESC_INCLUDE_DIR } )
IF ( UNIX )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ XERCESC_LIBRARY } )
ENDIF ( )
FIND_PACKAGE ( OpenAL REQUIRED )
INCLUDE_DIRECTORIES ( ${ OPENAL_INCLUDE_DIR } )
IF ( UNIX )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ OPENAL_LIBRARY } )
ENDIF ( )
# FIND_PACKAGE(OGG REQUIRED)
# INCLUDE_DIRECTORIES(${OGG_INCLUDE_DIR})
# IF(UNIX)
# SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OGG_LIBRARY})
# SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_LIBRARY})
# SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_FILE_LIBRARY})
# ENDIF()
2012-04-26 16:17:12 +00:00
2012-11-14 19:20:08 +00:00
# FIND_PACKAGE(LUAJIT)
# IF(LUAJIT_FOUND)
# MESSAGE(STATUS "**NOTE: LUAJIT found, this should improve Lua performance.")
#
# INCLUDE_DIRECTORIES(${LUAJIT_INCLUDE_DIR})
# IF(UNIX)
2012-11-30 23:40:27 +00:00
# SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${LUAJIT_LIBRARIES} ${CMAKE_DL_LIBS})
2012-11-14 19:20:08 +00:00
# ENDIF()
# ELSE()
# MESSAGE(STATUS "**WARNING: LUAJIT NOT found, so Lua performance may suffer.")
#
FIND_PACKAGE ( LUA REQUIRED )
INCLUDE_DIRECTORIES ( ${ LUA_INCLUDE_DIR } )
IF ( UNIX )
2012-11-30 23:40:27 +00:00
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ LUA_LIBRARIES } ${ CMAKE_DL_LIBS } )
2012-04-26 16:17:12 +00:00
ENDIF ( )
2012-11-14 19:20:08 +00:00
# ENDIF()
2011-10-17 16:59:22 +00:00
2011-11-30 05:10:04 +00:00
OPTION ( WANT_STATIC_LIBS "builds as many static libs as possible" OFF )
IF ( WANT_STATIC_LIBS )
SET ( JPEG_NAMES libjpeg.a ${ JPEG_NAMES } )
ENDIF ( )
2011-10-17 16:59:22 +00:00
FIND_PACKAGE ( JPEG REQUIRED )
INCLUDE_DIRECTORIES ( ${ JPEG_INCLUDE_DIR } )
IF ( UNIX )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ JPEG_LIBRARY } )
ENDIF ( )
2011-11-30 05:10:04 +00:00
2011-11-14 08:54:42 +00:00
IF ( WANT_STATIC_LIBS )
SET ( PNG_NAMES libpng.a ${ PNG_NAMES } )
ENDIF ( )
2011-10-17 16:59:22 +00:00
FIND_PACKAGE ( PNG REQUIRED )
INCLUDE_DIRECTORIES ( ${ PNG_INCLUDE_DIR } )
IF ( UNIX )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ PNG_LIBRARY } )
ENDIF ( )
2012-10-30 19:47:31 +00:00
OPTION ( WANT_FONTCONFIG "use the library fontconfig" ON )
IF ( WANT_FONTCONFIG )
FIND_PACKAGE ( FontConfig )
IF ( FONTCONFIG_FOUND )
MESSAGE ( STATUS "**NOTE: FontConfig support was detected and enabled." )
SET ( HAVE_FONTCONFIG 1 )
ADD_DEFINITIONS ( -DHAVE_FONTCONFIG )
INCLUDE_DIRECTORIES ( ${ FONTCONFIG_INCLUDE_DIR } )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ FONTCONFIG_LIBRARIES } )
ENDIF ( FONTCONFIG_FOUND )
ENDIF ( )
2011-10-17 16:59:22 +00:00
OPTION ( USE_FTGL "Use FTGL for on-screen fonts (found on your system)" ON )
if ( USE_FTGL )
ADD_DEFINITIONS ( -DUSE_FTGL )
find_package ( Freetype REQUIRED )
include_directories ( ${ FREETYPE_INCLUDE_DIRS } )
2011-06-06 21:38:25 +00:00
2011-10-17 16:59:22 +00:00
endif ( USE_FTGL )
2011-06-06 21:38:25 +00:00
2011-10-17 16:59:22 +00:00
#INCLUDE(FindPkgConfig.cmake)
#pkg_search_module (FTGL ftgl)
FIND_PACKAGE ( FTGL )
2011-06-06 21:38:25 +00:00
2011-10-17 16:59:22 +00:00
IF ( USE_FTGL )
if ( FTGL_FOUND )
MESSAGE ( STATUS "**NOTE: FTGL font support was detected and enabled." )
else ( )
MESSAGE ( STATUS
" * * N O T E : W a r n i n g ! F T G L h a s b e e n e n a b l e d b u t n o t d e t e c t e d . Y o u r c o m p i l a t i o n w i l l p r o b a b l y b r e a k . T u r n o f f F T G L s u p p o r t b y s e t t i n g U S E _ F T G L t o f a l s e , o r v i s i t h t t p : / / f t g l . w i k i . s o u r c e f o r g e . n e t / f o r h e l p o n i n s t a l l i n g F T G L . " )
endif ( )
2011-06-06 21:38:25 +00:00
2011-10-17 16:59:22 +00:00
ADD_DEFINITIONS ( -DUSE_FTGL )
2011-06-06 21:38:25 +00:00
2011-10-17 16:59:22 +00:00
#set(FTGL_INCUDE_DIR ${FTGL_INCLUDE_DIR} ${CMAKE_INCLUDE_PATH} ${OPENGL_INCLUDE_DIR})
#set(FTGL_LINK_DIRS ${FTGL_LIBRARY_DIRS} )
#set(FTGL_LINK_TARGETS ftgl freetype)
2011-06-06 21:38:25 +00:00
2011-10-17 16:59:22 +00:00
INCLUDE_DIRECTORIES ( ${ FTGL_INCLUDE_DIR } )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ FTGL_LIBRARY } )
ELSE ( )
IF ( FTGL_FOUND )
MESSAGE ( STATUS "**NOTE: Warning: FTGL font support was detected but NOT enabled. You can enable it by setting USE_FTGL=true" )
ELSE ( )
MESSAGE ( STATUS "**NOTE: Warning: FTGL font support was not detected. Visit http://ftgl.wiki.sourceforge.net/ for help on installing FTGL." )
ENDIF ( )
2011-06-06 21:38:25 +00:00
2011-10-17 16:59:22 +00:00
ENDIF ( USE_FTGL )
2011-12-16 05:30:46 +00:00
OPTION ( USE_FREETYPEGL "Use Freetype-GL for on-screen fonts" OFF )
2011-11-17 09:56:25 +00:00
if ( USE_FREETYPEGL )
ADD_DEFINITIONS ( -DUSE_FREETYPEGL )
endif ( USE_FREETYPEGL )
2011-12-16 05:30:46 +00:00
FIND_PACKAGE ( Freetype REQUIRED )
INCLUDE_DIRECTORIES ( ${ FREETYPE_INCLUDE_PATH } )
IF ( UNIX )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ FREETYPE_LIBRARY } )
ENDIF ( )
2011-11-18 08:42:50 +00:00
FIND_PACKAGE ( GLEW REQUIRED )
INCLUDE_DIRECTORIES ( ${ GLEW_INCLUDE_PATH } )
IF ( UNIX )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ GLEW_LIBRARY } )
ENDIF ( )
2011-11-18 00:28:45 +00:00
2012-05-16 21:48:51 +00:00
SET ( LIBVLC_MIN_VERSION "1.1.0" )
2012-05-12 20:33:18 +00:00
FIND_PACKAGE ( LIBVLC )
2012-05-12 23:05:34 +00:00
2012-11-14 19:20:08 +00:00
IF ( LIBVLC_FOUND AND WITH_VLC AND NOT LIBVLC_VERSION STRLESS "${LIBVLC_MIN_VERSION}" )
2012-09-22 23:18:26 +00:00
MESSAGE ( STATUS "**NOTE: LIBVLC found so videos are supported." )
2012-05-12 20:33:18 +00:00
INCLUDE_DIRECTORIES ( ${ LIBVLC_INCLUDE_DIR } )
IF ( UNIX )
2012-05-16 05:46:04 +00:00
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ LIBVLCCORE_LIBRARY } ${ LIBVLC_LIBRARY } )
2012-05-12 20:33:18 +00:00
ADD_DEFINITIONS ( -DHAS_LIBVLC )
ENDIF ( )
2012-05-14 15:57:50 +00:00
IF ( LIBVLC_VERSION_PRE_V2 )
ADD_DEFINITIONS ( -DLIBVLC_VERSION_PRE_2 )
ENDIF ( )
2012-05-14 21:09:44 +00:00
IF ( LIBVLC_VERSION_PRE_1_1_13 )
ADD_DEFINITIONS ( -DLIBVLC_VERSION_PRE_1_1_13 )
ENDIF ( )
2012-05-12 20:33:18 +00:00
ELSE ( )
2012-09-22 23:18:26 +00:00
MESSAGE ( STATUS "**WARNING: LIBVLC NOT found so videos are NOT supported." )
2012-11-14 19:20:08 +00:00
IF ( WITH_VLC )
MESSAGE ( STATUS "**WARNING: LIBVLC NOT found so videos are NOT supported." )
ELSE ( )
MESSAGE ( STATUS "LIBVLC disabled so videos are NOT supported." )
ENDIF ( )
2012-05-12 20:33:18 +00:00
ENDIF ( )
2011-10-17 16:59:22 +00:00
#########################################################################################
# megaglest lib
SET ( DIRS_WITH_SRC
f e a t h e r y _ f t p
g l e w
g r a p h i c s
2011-11-17 09:56:25 +00:00
g r a p h i c s / f r e e t y p e - g l
2011-10-17 16:59:22 +00:00
g r a p h i c s / g l
2012-08-02 00:57:28 +00:00
g r a p h i c s / i q m
2011-10-17 16:59:22 +00:00
l u a
m a p
p l a t f o r m / c o m m o n
s o u n d
s o u n d / o p e n a l
u t i l
x m l )
2011-12-16 06:24:21 +00:00
IF ( WANT_STREFLOP )
SET ( DIRS_WITH_SRC
$ { D I R S _ W I T H _ S R C }
s t r e f l o p
2012-02-11 15:20:40 +00:00
s t r e f l o p / l i b m _ f l t 3 2 _ s o u r c e
s t r e f l o p / s o f t f l o a t )
2011-12-16 06:24:21 +00:00
ENDIF ( )
2011-10-17 16:59:22 +00:00
IF ( NOT WANT_STATIC_LIBS )
MESSAGE ( STATUS "*** Searching for miniupnpc since WANT_STATIC_LIBS is off ..." )
FIND_PACKAGE ( Miniupnpc )
ENDIF ( )
if ( NOT MINIUPNP_FOUND )
MESSAGE ( STATUS "*** Using EMBEDDED miniupnpc since dev system does not have it... MINIUPNP_FOUND [${MINIUPNP_FOUND}]" )
SET ( DIRS_WITH_SRC ${ DIRS_WITH_SRC } platform/miniupnpc )
else ( )
MESSAGE ( STATUS "*** Using SHARED miniupnpc found in [${MINIUPNP_INCLUDE_DIR}] MINIUPNP_FOUND [${MINIUPNP_FOUND}] MINIUPNP_LIBRARY [${MINIUPNP_LIBRARY}]" )
INCLUDE_DIRECTORIES ( ${ MINIUPNP_INCLUDE_DIR } )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ MINIUPNP_LIBRARY } )
endif ( )
2011-10-12 22:04:00 +00:00
2012-06-05 22:29:43 +00:00
IF ( MINIUPNPC_VERSION_PRE1_5 )
ADD_DEFINITIONS ( -DMINIUPNPC_VERSION_PRE1_5 )
message ( STATUS "Adding macro for miniupnpc version: pre v1.5" )
ENDIF ( )
IF ( MINIUPNPC_VERSION_PRE1_6 )
ADD_DEFINITIONS ( -DMINIUPNPC_VERSION_PRE1_6 )
message ( STATUS "Adding macro for miniupnpc version: pre v1.6" )
ENDIF ( )
IF ( NOT MINIUPNPC_VERSION_PRE1_5 AND NOT MINIUPNPC_VERSION_PRE1_6 )
2012-09-22 23:18:26 +00:00
message ( STATUS "**No macros required for miniupnpc version" )
2012-06-05 22:29:43 +00:00
ENDIF ( )
2011-10-17 16:59:22 +00:00
IF ( APPLE )
SET ( DIRS_WITH_SRC ${ DIRS_WITH_SRC } platform/sdl )
SET ( DIRS_WITH_SRC ${ DIRS_WITH_SRC } platform/posix )
SET ( DIRS_WITH_SRC ${ DIRS_WITH_SRC } platform/macosx )
ELSEIF ( WIN32 )
SET ( DIRS_WITH_SRC ${ DIRS_WITH_SRC } platform/win32 )
SET ( DIRS_WITH_SRC ${ DIRS_WITH_SRC } sound/ds8 )
SET ( DIRS_WITH_SRC ${ DIRS_WITH_SRC } ${ PROJECT_SOURCE_DIR } /source/win32_deps/src )
ELSE ( )
SET ( DIRS_WITH_SRC ${ DIRS_WITH_SRC } platform/sdl )
SET ( DIRS_WITH_SRC ${ DIRS_WITH_SRC } platform/posix )
SET ( DIRS_WITH_SRC ${ DIRS_WITH_SRC } platform/unix )
ENDIF ( )
2010-06-05 17:34:55 +00:00
2011-10-17 16:59:22 +00:00
SET ( MG_INCLUDES_ROOT "include/" )
SET ( MG_SOURCES_ROOT "sources/" )
SET ( MG_INCLUDE_FILES "" )
SET ( MG_SOURCE_FILES "" )
INCLUDE_DIRECTORIES ( ${ MG_INCLUDES_ROOT } platform/sdl )
2012-03-14 21:52:13 +00:00
INCLUDE_DIRECTORIES ( ${ MG_INCLUDES_ROOT } xml/rapidxml )
2011-10-17 16:59:22 +00:00
IF ( NOT WANT_STATIC_LIBS )
MESSAGE ( STATUS "*** Searching for libircclient since WANT_STATIC_LIBS is off ..." )
FIND_PACKAGE ( Ircclient )
ENDIF ( )
if ( NOT IRCCLIENT_FOUND )
2012-09-22 23:18:26 +00:00
MESSAGE ( STATUS "*** Using EMBEDDED libircclient since this system does not have it... IRCCLIENT_FOUND [${IRCCLIENT_FOUND}]" )
2011-10-17 16:59:22 +00:00
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ PROJECT_SOURCE_DIR } /source/shared_lib/sources/libircclient/src/libircclient.c )
INCLUDE_DIRECTORIES ( ${ PROJECT_SOURCE_DIR } /source/shared_lib/include/libircclient/include )
else ( )
MESSAGE ( STATUS "*** Using SHARED libircclient found in [${IRCCLIENT_INCLUDE_DIR}] IRCCLIENT_FOUND [${IRCCLIENT_FOUND}] IRCCLIENT_LIBRARY [${IRCCLIENT_LIBRARY}]" )
INCLUDE_DIRECTORIES ( ${ IRCCLIENT_INCLUDE_DIR } )
SET ( EXTERNAL_LIBS ${ EXTERNAL_LIBS } ${ IRCCLIENT_LIBRARY } )
endif ( )
2012-01-23 20:36:15 +00:00
set ( CMAKE_REQUIRED_INCLUDES "${IRCCLIENT_INCLUDE_DIR}" )
set ( CMAKE_REQUIRED_LIBRARIES "${IRCCLIENT_LIBRARY}" )
2012-02-10 06:21:06 +00:00
include ( CheckCXXSourceRuns )
2012-01-23 20:36:15 +00:00
check_cxx_source_runs ( "
#include <stdio.h>
#include <stdlib.h>
#include <libircclient.h>
i n t main ( )
{
u n s i g n e d i n t h i g h = 0 ;
u n s i g n e d i n t l o w = 0 ;
irc_get_version ( &high,&low ) ;
if ( ( high == 1 && low >= 6 ) || ( high > 1 ) ) {
r e t u r n 0 ;
}
t h r o w 1 ;
} "
H A S _ L I B I R C C L I E N T _ 1 _ 6 )
IF ( HAS_LIBIRCCLIENT_1_6 )
message ( STATUS "Found HAS_LIBIRCCLIENT_1_6: ${HAS_LIBIRCCLIENT_1_6}" )
ELSE ( )
ADD_DEFINITIONS ( -DLIBIRCCLIENT_PRE1_6 )
ENDIF ( )
2011-10-17 16:59:22 +00:00
IF ( WIN32 )
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ PROJECT_SOURCE_DIR } /source/shared_lib/sources/platform/posix/socket.cpp )
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ PROJECT_SOURCE_DIR } /source/shared_lib/sources/platform/posix/ircclient.cpp )
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ PROJECT_SOURCE_DIR } /source/shared_lib/sources/platform/posix/miniftpserver.cpp )
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ PROJECT_SOURCE_DIR } /source/shared_lib/sources/platform/posix/miniftpclient.cpp )
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ PROJECT_SOURCE_DIR } /source/shared_lib/sources/platform/sdl/gl_wrap.cpp )
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ PROJECT_SOURCE_DIR } /source/shared_lib/sources/platform/sdl/thread.cpp )
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ PROJECT_SOURCE_DIR } /source/shared_lib/sources/platform/sdl/window.cpp )
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ PROJECT_SOURCE_DIR } /source/shared_lib/sources/platform/sdl/window_gl.cpp )
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ PROJECT_SOURCE_DIR } /source/win32_deps/src/glprocs.c )
ENDIF ( )
2010-06-05 17:34:55 +00:00
2011-10-17 16:59:22 +00:00
FOREACH ( DIR IN LISTS DIRS_WITH_SRC )
set ( INCLUDE_DIR_TO_GLOB ${ MG_INCLUDES_ROOT } ${ DIR } )
INCLUDE_DIRECTORIES ( ${ INCLUDE_DIR_TO_GLOB } )
IF ( APPLE )
#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 } )
ENDIF ( APPLE )
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 } )
2010-12-11 06:32:21 +00:00
2011-10-17 16:59:22 +00:00
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 } /*.c )
#MESSAGE(STATUS "SRC_FILES_FROM_THIS_DIR: ${SRC_FILES_FROM_THIS_DIR}")
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ SRC_FILES_FROM_THIS_DIR } )
IF ( APPLE )
FILE ( GLOB SRC_FILES_FROM_THIS_DIR ${ SRC_DIR_TO_GLOB } /*.mm )
#MESSAGE(STATUS "SRC_FILES_FROM_THIS_DIR: ${SRC_FILES_FROM_THIS_DIR}")
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ SRC_FILES_FROM_THIS_DIR } )
FILE ( GLOB SRC_FILES_FROM_THIS_DIR ${ SRC_DIR_TO_GLOB } /*.m )
#MESSAGE(STATUS "SRC_FILES_FROM_THIS_DIR: ${SRC_FILES_FROM_THIS_DIR}")
SET ( MG_SOURCE_FILES ${ MG_SOURCE_FILES } ${ SRC_FILES_FROM_THIS_DIR } )
ENDIF ( APPLE )
ENDFOREACH ( DIR )
#MESSAGE(STATUS "Source files: ${MG_INCLUDE_FILES}")
#MESSAGE(STATUS "Source files: ${MG_SOURCE_FILES}")
#MESSAGE(STATUS "Include dirs: ${INCLUDE_DIRECTORIES}")
2010-09-16 15:15:42 +00:00
IF ( APPLE )
2011-10-17 16:59:22 +00:00
SET ( PLATFORM_SPECIFIC_DEFINES "-DHAVE_SYS_IOCTL_H" )
ELSEIF ( WIN32 )
SET ( PLATFORM_SPECIFIC_DEFINES "-DX11_AVAILABLE" )
ELSE ( )
SET ( PLATFORM_SPECIFIC_DEFINES "-DX11_AVAILABLE -DHAVE_SYS_IOCTL_H" )
ENDIF ( )
SET_SOURCE_FILES_PROPERTIES ( ${ MG_SOURCE_FILES } PROPERTIES COMPILE_FLAGS
" $ { P L A T F O R M _ S P E C I F I C _ D E F I N E S } $ { S T R E F L O P _ P R O P E R T I E S } $ { C X X F L A G S } " )
2010-09-16 15:15:42 +00:00
2011-10-17 16:59:22 +00:00
SET_SOURCE_FILES_PROPERTIES ( ${ MG_INCLUDE_FILES } PROPERTIES HEADER_FILE_ONLY 1 )
2010-12-11 12:53:38 +00:00
2011-10-17 16:59:22 +00:00
IF ( NOT WIN32 )
ADD_LIBRARY ( ${ TARGET_NAME } STATIC ${ MG_SOURCE_FILES } ${ MG_INCLUDE_FILES } )
MESSAGE ( STATUS "Building shared game library as a STATIC library and saving to [${LIBRARY_OUTPUT_PATH}]" )
ELSE ( )
SET ( LIBRARY_OUTPUT_PATH ${ PROJECT_SOURCE_DIR } /data/glest_game )
ADD_LIBRARY ( ${ TARGET_NAME } STATIC ${ MG_SOURCE_FILES } ${ MG_INCLUDE_FILES } )
MESSAGE ( STATUS "Building shared game library as a SHARED library and saving to [${LIBRARY_OUTPUT_PATH}]" )
ENDIF ( )
2010-12-11 13:35:27 +00:00
2011-10-17 16:59:22 +00:00
# ADD_LIBRARY(libmegaglest SHARED ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
# ADD_LIBRARY(libmegaglest STATIC ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
2011-04-05 12:57:52 +00:00
2011-10-17 16:59:22 +00:00
MESSAGE ( STATUS "EXTERNAL_LIBS = [${EXTERNAL_LIBS}]" )
2011-04-05 12:57:52 +00:00
2011-10-21 03:24:04 +00:00
OPTION ( BUILD_MEGAGLEST_UPNP_DEBUG "Build MegaGlest with UPNP DEBUG enabled" OFF )
IF ( BUILD_MEGAGLEST_UPNP_DEBUG )
MESSAGE ( STATUS "Will try to build MegaGlest shared library with DEBUG info for UPNP" )
ADD_DEFINITIONS ( "-DDEBUG" )
ENDIF ( )
2011-10-17 16:59:22 +00:00
IF ( WIN32 )
2011-12-16 06:24:21 +00:00
TARGET_LINK_LIBRARIES ( ${ TARGET_NAME } stdc++ gcc odbc32 wsock32 winspool winmm shell32 comctl32 ctl3d32 advapi32 wsock32 opengl32 glu32 ole32 oleaut32 uuid mingw32 ddraw dsound dxguid ws2_32 iphlpapi wsock32 libogg libvorbis libvorbisfile zlib jpeg libpng xerces-c2_8_0 OpenAL32 libcurl winmm gdi32 opengl32 glu32 SDL SDLmain lua5.1 stdc++ moldname mingwex msvcrt user32 kernel32 )
2011-04-05 12:57:52 +00:00
2011-12-16 06:24:21 +00:00
IF ( WANT_STREFLOP )
TARGET_LINK_LIBRARIES ( ${ TARGET_NAME } streflop )
ENDIF ( )
2011-10-17 16:59:22 +00:00
TARGET_LINK_LIBRARIES ( ${ TARGET_NAME } ${ EXTERNAL_LIBS } )
ELSE ( )
2011-12-16 06:24:21 +00:00
IF ( WANT_STREFLOP )
TARGET_LINK_LIBRARIES ( ${ TARGET_NAME } streflop )
ENDIF ( )
2011-10-17 16:59:22 +00:00
TARGET_LINK_LIBRARIES ( ${ TARGET_NAME } ${ EXTERNAL_LIBS } )
2010-09-16 15:15:42 +00:00
2011-10-17 16:59:22 +00:00
ENDIF ( )
2011-10-21 03:24:04 +00:00
#IF(BUILD_MEGAGLEST_UPNP_DEBUG)
# REMOVE_DEFINITIONS("-DDEBUG")
#ENDIF()
2011-04-05 12:57:52 +00:00
ENDIF ( )