removed not required CURL module, renamed several cmake-build options for be more easy sortable by name

This commit is contained in:
filux 2015-09-27 19:46:35 +02:00
parent 4ad684deaf
commit 4bef525bf3
21 changed files with 358 additions and 406 deletions

View File

@ -14,6 +14,10 @@ IF(NOT CMAKE_BUILD_TYPE)
ENDIF()
SET_PROPERTY(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS None Debug Release RelWithDebInfo MinSizeRel)
IF(CMAKE_VERSION VERSION_GREATER "3.0")
cmake_policy(SET CMP0054 NEW)
ENDIF()
# add additional CMake modules
MESSAGE(STATUS "CMAKE_SOURCE_DIR = ${CMAKE_SOURCE_DIR}")
list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/mk/cmake/Modules)
@ -31,9 +35,14 @@ OPTION(BUILD_MEGAGLEST_MODEL_VIEWER "Build model viewer" ON)
OPTION(BUILD_MEGAGLEST_MAP_EDITOR "Build map editor" ON)
OPTION(BUILD_MEGAGLEST "Build MegaGlest" ON)
OPTION(BUILD_MEGAGLEST_TESTS "Build MegaGlest Unit Tests" OFF)
OPTION(WITH_VLC "Use libVLC to play videos" ON)
OPTION(SINGLE_INSTALL_DIRECTORY "Use single install directory for everything. It is useful for example for MacOS cpack bundles." OFF)
OPTION(WANT_SINGLE_INSTALL_DIRECTORY "Use single install directory for everything. It is useful for example for MacOS cpack bundles." OFF)
OPTION(WANT_STATIC_LIBS "Builds as many static libs as possible." OFF)
OPTION(WANT_USE_VLC "Use libVLC to play videos." ON)
OPTION(WANT_USE_OpenSSL "Use libOpenSSL during CURL linking." ON)
OPTION(WANT_USE_FriBiDi "Enable libFriBIDi support." ON)
OPTION(WANT_USE_GoogleBreakpad "Enable GoogleBreakpad support." ON)
OPTION(WANT_USE_STREFLOP "Use the library streflop." ON)
OPTION(WANT_USE_XercesC "Enable libXercesC support." OFF)
FIND_PROGRAM(HELP2MAN "help2man")
@ -46,6 +55,7 @@ endif()
MARK_AS_ADVANCED(HELP2MAN XVFB_RUN)
include(${CMAKE_SOURCE_DIR}/mk/cmake/Modules/SpecialMacros.cmake)
include(${CMAKE_SOURCE_DIR}/mk/cmake/Modules/ReqVersAndStaticConf.cmake)
SET(PKG_NAME "megaglest")
# read version
@ -99,9 +109,6 @@ IF(CMAKE_COMPILER_IS_GNUCXX OR MINGW)
MESSAGE(STATUS "Detected MINGW Compiler...")
ENDIF()
# Default compiler flags
#SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s") ## Strip binary
# Common generic GNU type compiler options that work with all generic GCC compatible compilers
ADD_DEFINITIONS("-Wuninitialized -Wsign-compare -Wunused-function -Wunused-variable -Wreturn-type -fno-strict-aliasing")
@ -132,34 +139,30 @@ IF(CMAKE_COMPILER_IS_GNUCXX OR MINGW)
#SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
#MESSAGE(STATUS "*TEST: Checking for max SSE LEVEL [${MAX_SSE_LEVEL_DESIRED}]")
#MESSAGE(STATUS "*TEST: Checking for max SSE LEVEL [${FORCE_MAX_SSE_LEVEL}]")
IF(NOT STREFLOP_SOFTWRAPPER_FORCE)
SET(STREFLOP_SOFTWRAPPER_FORCE "0" CACHE STRING "Set the streflop library to be forced to use the software emulator")
OPTION(FORCE_STREFLOP_SOFTWRAPPER "Set the streflop library to be forced to use the software emulator" OFF)
IF(NOT FORCE_MAX_SSE_LEVEL AND NOT FORCE_STREFLOP_SOFTWRAPPER)
SET(FORCE_MAX_SSE_LEVEL "1" CACHE STRING "Set the max SSE level to use if supported (0-3)")
ENDIF()
IF(NOT MAX_SSE_LEVEL_DESIRED AND NOT STREFLOP_SOFTWRAPPER_FORCE)
SET(MAX_SSE_LEVEL_DESIRED "1" CACHE STRING "Set the max SSE level to use if supported (0-3)")
ENDIF()
IF(NOT STREFLOP_SOFTWRAPPER_FORCE)
MESSAGE(STATUS "*NOTE: Checking for max SSE LEVEL [${MAX_SSE_LEVEL_DESIRED}]")
special_check_for_sse( ${MAX_SSE_LEVEL_DESIRED} )
IF(NOT FORCE_STREFLOP_SOFTWRAPPER)
MESSAGE(STATUS "*NOTE: Checking for max SSE LEVEL [${FORCE_MAX_SSE_LEVEL}]")
special_check_for_sse( ${FORCE_MAX_SSE_LEVEL} )
ENDIF()
OPTION(WANT_STREFLOP "use the library streflop" ON)
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
ADD_DEFINITIONS("-DUSE_STREFLOP -DSTREFLOP_RANDOM_GEN_SIZE=32 -DLIBM_COMPILING_FLT32 -DN_SPECIALIZED=32")
IF(HAS_SSE_EXTENSIONS AND NOT ${MAX_SSE_LEVEL_DESIRED} MATCHES "0" AND NOT STREFLOP_SOFTWRAPPER_FORCE)
IF(HAS_SSE_EXTENSIONS AND NOT ${FORCE_MAX_SSE_LEVEL} MATCHES "0" AND NOT FORCE_STREFLOP_SOFTWRAPPER)
ADD_DEFINITIONS("-DSTREFLOP_SSE")
MESSAGE(STATUS "*NOTE: using SSE for STREFLOP.")
ELSE()
IF(NOT STREFLOP_SOFTWRAPPER_FORCE)
IF(NOT FORCE_STREFLOP_SOFTWRAPPER)
special_check_for_x87()
ENDIF()
IF(HAS_X87_SUPPORT AND NOT STREFLOP_SOFTWRAPPER_FORCE)
IF(HAS_X87_SUPPORT AND NOT FORCE_STREFLOP_SOFTWRAPPER)
ADD_DEFINITIONS("-DSTREFLOP_X87")
MESSAGE(STATUS "*NOTE: using X87 for STREFLOP.")
ELSE()
@ -257,45 +260,33 @@ IF(CMAKE_COMPILER_IS_GNUCXX OR MINGW)
IF(CMAKE_INSTALL_PREFIX STREQUAL "")
MESSAGE(STATUS "*NOTE: NOT USING a Custom Data Install Path...")
ELSE()
IF(SINGLE_INSTALL_DIRECTORY AND NOT MEGAGLEST_SINGLE_DIRECTORY_INSTALL_PATH)
IF(WANT_SINGLE_INSTALL_DIRECTORY AND NOT MEGAGLEST_SINGLE_DIRECTORY_INSTALL_PATH)
SET(MEGAGLEST_SINGLE_DIRECTORY_INSTALL_PATH "megaglest-game/" CACHE STRING "The single directory installation path for game (this is appended to the CMAKE_INSTALL_PREFIX)")
ENDIF()
IF(NOT MEGAGLEST_BIN_INSTALL_PATH)
IF(NOT SINGLE_INSTALL_DIRECTORY)
SET(MEGAGLEST_BIN_INSTALL_PATH "bin/" CACHE STRING "The installation path for binaries (this is appended to the CMAKE_INSTALL_PREFIX)")
ELSE()
SET(MEGAGLEST_BIN_INSTALL_PATH "${MEGAGLEST_SINGLE_DIRECTORY_INSTALL_PATH}")
ENDIF()
IF(NOT MEGAGLEST_BIN_INSTALL_PATH AND NOT WANT_SINGLE_INSTALL_DIRECTORY)
SET(MEGAGLEST_BIN_INSTALL_PATH "bin/" CACHE STRING "The installation path for binaries (this is appended to the CMAKE_INSTALL_PREFIX)")
ENDIF()
IF(NOT MEGAGLEST_DATA_INSTALL_PATH)
IF(NOT SINGLE_INSTALL_DIRECTORY)
SET(MEGAGLEST_DATA_INSTALL_PATH "share/megaglest/" CACHE STRING "The installation path for data files (this is appended to the CMAKE_INSTALL_PREFIX)")
ELSE()
SET(MEGAGLEST_DATA_INSTALL_PATH "${MEGAGLEST_SINGLE_DIRECTORY_INSTALL_PATH}")
ENDIF()
IF(NOT MEGAGLEST_DATA_INSTALL_PATH AND NOT WANT_SINGLE_INSTALL_DIRECTORY)
SET(MEGAGLEST_DATA_INSTALL_PATH "share/megaglest/" CACHE STRING "The installation path for data files (this is appended to the CMAKE_INSTALL_PREFIX)")
ENDIF()
IF(NOT MEGAGLEST_DESKTOP_INSTALL_PATH)
IF(NOT SINGLE_INSTALL_DIRECTORY)
SET(MEGAGLEST_DESKTOP_INSTALL_PATH "share/applications/" CACHE STRING "The installation path for desktop files (this is appended to the CMAKE_INSTALL_PREFIX)")
ELSE()
SET(MEGAGLEST_DESKTOP_INSTALL_PATH "${MEGAGLEST_SINGLE_DIRECTORY_INSTALL_PATH}")
ENDIF()
IF(NOT MEGAGLEST_DESKTOP_INSTALL_PATH AND NOT WANT_SINGLE_INSTALL_DIRECTORY)
SET(MEGAGLEST_DESKTOP_INSTALL_PATH "share/applications/" CACHE STRING "The installation path for desktop files (this is appended to the CMAKE_INSTALL_PREFIX)")
ENDIF()
IF(NOT MEGAGLEST_ICON_INSTALL_PATH)
IF(NOT SINGLE_INSTALL_DIRECTORY)
SET(MEGAGLEST_ICON_INSTALL_PATH "share/pixmaps/" CACHE STRING "The installation path for icon files (this is appended to the CMAKE_INSTALL_PREFIX)")
ELSE()
SET(MEGAGLEST_ICON_INSTALL_PATH "${MEGAGLEST_SINGLE_DIRECTORY_INSTALL_PATH}")
ENDIF()
IF(NOT MEGAGLEST_ICON_INSTALL_PATH AND NOT WANT_SINGLE_INSTALL_DIRECTORY)
SET(MEGAGLEST_ICON_INSTALL_PATH "share/pixmaps/" CACHE STRING "The installation path for icon files (this is appended to the CMAKE_INSTALL_PREFIX)")
ENDIF()
IF(NOT MEGAGLEST_MANPAGE_INSTALL_PATH AND NOT SINGLE_INSTALL_DIRECTORY)
IF(NOT SINGLE_INSTALL_DIRECTORY)
SET(MEGAGLEST_MANPAGE_INSTALL_PATH "share/man/man6/" CACHE STRING "The installation path for manpage files (this is appended to the CMAKE_INSTALL_PREFIX)")
ELSE()
SET(MEGAGLEST_MANPAGE_INSTALL_PATH "${MEGAGLEST_SINGLE_DIRECTORY_INSTALL_PATH}")
ENDIF()
IF(NOT MEGAGLEST_MANPAGE_INSTALL_PATH AND NOT WANT_SINGLE_INSTALL_DIRECTORY)
SET(MEGAGLEST_MANPAGE_INSTALL_PATH "share/man/man6/" CACHE STRING "The installation path for manpage files (this is appended to the CMAKE_INSTALL_PREFIX)")
ENDIF()
IF(NOT CUSTOM_DATA_INSTALL_PATH AND NOT SINGLE_INSTALL_DIRECTORY)
IF(WANT_SINGLE_INSTALL_DIRECTORY)
FOREACH(MG_PATH BIN DATA DESKTOP ICON)
IF(NOT MEGAGLEST_${MG_PATH}_INSTALL_PATH)
SET(MEGAGLEST_${MG_PATH}_INSTALL_PATH "${MEGAGLEST_SINGLE_DIRECTORY_INSTALL_PATH}")
ENDIF()
ENDFOREACH()
ENDIF()
IF(NOT CUSTOM_DATA_INSTALL_PATH AND NOT WANT_SINGLE_INSTALL_DIRECTORY)
SET(CUSTOM_DATA_INSTALL_PATH "${CMAKE_INSTALL_PREFIX}/${MEGAGLEST_DATA_INSTALL_PATH}" CACHE STRING "The FULL installation path for data files (this is build automatically by combining CMAKE_INSTALL_PREFIX and MEGAGLEST_DATA_INSTALL_PATH)")
SET(CUSTOM_DATA_INSTALL_PATH_VALUE "-DCUSTOM_DATA_INSTALL_PATH=${CUSTOM_DATA_INSTALL_PATH}")
ENDIF()
@ -305,45 +296,21 @@ IF(CMAKE_COMPILER_IS_GNUCXX OR MINGW)
MESSAGE(STATUS "*NOTE: Custom Data Install Path is [${CUSTOM_DATA_INSTALL_PATH}]")
ENDIF()
string(TOUPPER "${CMAKE_BUILD_TYPE}" MG_BUILD_TYPE)
IF(HAS_GIT STREQUAL "TRUE")
SET(CMAKE_CXX_FLAGS_NONE "${CMAKE_CXX_FLAGS_NONE} ${GIT_VERSION_CMD}")
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${GIT_VERSION_CMD}")
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${GIT_VERSION_CMD}")
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${GIT_VERSION_CMD}")
SET(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} ${GIT_VERSION_CMD}")
SET(CMAKE_CXX_FLAGS_${MG_BUILD_TYPE} "${CMAKE_CXX_FLAGS_${MG_BUILD_TYPE}} ${GIT_VERSION_CMD}")
ENDIF()
SET(CMAKE_CXX_FLAGS_NONE "${CMAKE_CXX_FLAGS_NONE} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
SET(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
SET(CMAKE_CXX_FLAGS_${MG_BUILD_TYPE} "${CMAKE_CXX_FLAGS_${MG_BUILD_TYPE}} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
# We do some funky character escaping to get the right stuff written out to
# the final Makefile so we get the GIT Global Revsion #
string(REPLACE "'" "\"" CMAKE_CXX_FLAGS_NONE "${CMAKE_CXX_FLAGS_NONE}")
string(REPLACE "'" "\"" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
string(REPLACE "'" "\"" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
string(REPLACE "'" "\"" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
string(REPLACE "'" "\"" CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL}")
string(REPLACE "'" "\"" CMAKE_CXX_FLAGS_${MG_BUILD_TYPE} "${CMAKE_CXX_FLAGS_${MG_BUILD_TYPE}}")
IF( CMAKE_BUILD_TYPE STREQUAL None )
message(STATUS "CMAKE_CXX_FLAGS_NONE: ${CMAKE_CXX_FLAGS_NONE}")
ELSEIF( CMAKE_BUILD_TYPE STREQUAL Debug )
message(STATUS "CMAKE_CXX_FLAGS_DEBUG: ${CMAKE_CXX_FLAGS_DEBUG}")
ELSEIF( CMAKE_BUILD_TYPE STREQUAL Release )
message(STATUS "CMAKE_CXX_FLAGS_RELEASE: ${CMAKE_CXX_FLAGS_RELEASE}")
ELSEIF( CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo )
message(STATUS "CMAKE_CXX_FLAGS_RELWITHDEBINFO: ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
ELSEIF( CMAKE_BUILD_TYPE STREQUAL MinSizeRel )
message(STATUS "CMAKE_CXX_FLAGS_MINSIZEREL: ${CMAKE_CXX_FLAGS_MINSIZEREL}")
ENDIF()
message(STATUS "CMAKE_CXX_FLAGS_${MG_BUILD_TYPE}: ${CMAKE_CXX_FLAGS_${MG_BUILD_TYPE}}")
# Win32 specific Compiler Flags
IF(WIN32)
ADD_DEFINITIONS("-D_WINDOWS -D_WIN32 -D_STDCALL_SUPPORTED -D_M_IX86 -DXML_LIBRARY -D_LIB -DCURL_STATICLIB")
ELSE()
ADD_DEFINITIONS("-DCURL_STATICLIB")
ENDIF()
ENDIF()
@ -515,3 +482,4 @@ MARK_AS_ADVANCED(${SDL_VERSION_NAME}_INCLUDE_DIR)
MARK_AS_ADVANCED(${SDL_VERSION_NAME}_LIBRARY)
MARK_AS_ADVANCED(wxWidgets_CONFIG_EXECUTABLE)
MARK_AS_ADVANCED(wxWidgets_wxrc_EXECUTABLE)
MARK_AS_ADVANCED(wxWidgets_USE_DEBUG)

View File

@ -0,0 +1,50 @@
#
# Curl Get Config
#
# IF we are using a system that supports curl-config use it.
#
IF(CURL_FOUND)
IF(UNIX AND NOT APPLE)
FIND_PROGRAM( CMAKE_CURL_CONFIG curl-config)
MARK_AS_ADVANCED(CMAKE_CURL_CONFIG)
IF(CMAKE_CURL_CONFIG)
IF(STATIC_CURL)
# run the curl-config program to get --static-libs
EXEC_PROGRAM(sh
ARGS "${CMAKE_CURL_CONFIG} --static-libs"
OUTPUT_VARIABLE CURL_STATIC_LIBS
RETURN_VALUE RET)
MESSAGE(STATUS "CURL RET = ${RET} libs: [${CURL_STATIC_LIBS}]")
ELSE()
SET(RET 1)
ENDIF()
IF(RET EQUAL 0 AND CURL_STATIC_LIBS)
MESSAGE(STATUS "#2 CURL RET = ${RET}, using CURL static libs")
SET(CURL_LIBRARIES "-Bstatic ${CURL_STATIC_LIBS}")
ELSE()
EXEC_PROGRAM(sh
ARGS "${CMAKE_CURL_CONFIG} --libs"
OUTPUT_VARIABLE CURL_DYNAMIC_LIBS
RETURN_VALUE RET2)
IF(RET2 EQUAL 0 AND CURL_DYNAMIC_LIBS)
MESSAGE(STATUS "#2 CURL RET = ${RET2}, using CURL dynamic libs: ${CURL_DYNAMIC_LIBS}")
SET(CURL_LIBRARIES "${CURL_DYNAMIC_LIBS}")
ELSE()
MESSAGE(STATUS "#3 CURL RET = ${RET2}, using CURL libs found by cmake: ${CURL_LIBRARIES}")
ENDIF()
ENDIF()
ENDIF()
ENDIF()
IF( "${CURL_VERSION_STRING}" VERSION_LESS "${CURL_MIN_VERSION_MG}")
MESSAGE(STATUS "(please visit http://curl.haxx.se/libcurl/ to find a newer version)")
MESSAGE(FATAL_ERROR " CURL version = [${CURL_VERSION_STRING}] we require AT LEAST [7.16.4]")
ENDIF()
ELSE()
SET(CURL_LIBRARIES)
SET(CURL_INCLUDE_DIRS)
ENDIF()

View File

@ -1,71 +0,0 @@
# - 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
PATHS /usr/local/include/
/usr/include/
/opt/local/include/)
MARK_AS_ADVANCED(CURL_INCLUDE_DIR)
# Look for the library.
FIND_LIBRARY(CURL_LIBRARY NAMES curl curl-gnutls
PATHS /usr/local/lib/
/usr/lib/
/opt/local/lib/)
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})
# IF we are using a system that supports curl-config use it
# and force using static libs
IF(UNIX AND NOT APPLE)
FIND_PROGRAM( CMAKE_CURL_CONFIG curl-config)
MARK_AS_ADVANCED(CMAKE_CURL_CONFIG)
IF(CMAKE_CURL_CONFIG)
OPTION(WANT_STATIC_LIBS "builds as many static libs as possible" OFF)
OPTION(FORCE_CURL_DYNAMIC_LIBS "force the use of dynamic libs for CURL" OFF)
MESSAGE(STATUS "Force Curl dynamic: ${FORCE_CURL_DYNAMIC_LIBS}")
IF(WANT_STATIC_LIBS AND NOT FORCE_CURL_DYNAMIC_LIBS)
# run the curl-config program to get --static-libs
EXEC_PROGRAM(sh
ARGS "${CMAKE_CURL_CONFIG} --static-libs"
OUTPUT_VARIABLE CURL_STATIC_LIBS
RETURN_VALUE RET)
MESSAGE(STATUS "CURL RET = ${RET} libs: [${CURL_STATIC_LIBS}]")
ELSE()
SET(RET 1)
ENDIF()
IF(RET EQUAL 0 AND CURL_STATIC_LIBS)
MESSAGE(STATUS "#2 CURL RET = ${RET}, using CURL static libs")
SET(CURL_LIBRARIES "-Bstatic ${CURL_STATIC_LIBS}")
ELSE()
EXEC_PROGRAM(sh
ARGS "${CMAKE_CURL_CONFIG} --libs"
OUTPUT_VARIABLE CURL_STATIC_LIBS
RETURN_VALUE RET)
MESSAGE(STATUS "#2 CURL RET = ${RET}, using CURL dynamic libs: ${CURL_STATIC_LIBS}")
SET(CURL_LIBRARIES "${CURL_STATIC_LIBS}")
ENDIF()
ENDIF()
ENDIF()
ELSE(CURL_FOUND)
SET(CURL_LIBRARIES)
SET(CURL_INCLUDE_DIRS)
ENDIF(CURL_FOUND)

View File

@ -10,10 +10,6 @@
#
#
IF(WANT_STATIC_LIBS)
OPTION(FTGL_STATIC "Set to ON to link your project with static library (instead of DLL)." ON)
ENDIF()
#message(STATUS "!!!!!!!!!!!!!!!!!!!!!!!!!!!!! #1 Searching for FTGL lib in custom path: [${FTGL_LIBRARY_PATH}]")
IF (FTGL_LIBRARY AND FTGL_INCLUDE_DIR)
@ -29,9 +25,9 @@ ELSE (FTGL_LIBRARY AND FTGL_INCLUDE_DIR)
PATHS /usr/local/include
/usr/include)
IF (FTGL_STATIC AND NOT FTGL_LIBRARY)
IF (STATIC_FTGL AND NOT FTGL_LIBRARY)
FIND_LIBRARY(FTGL_LIBRARY
NAMES libftgl.a ftgl libftgl libftgl.dll
NAMES libftgl.a ftgl.a ftgl libftgl libftgl.dll
PATHS /usr/local/lib
/usr/lib
${FTGL_LIBRARY_PATH})

View File

@ -5,17 +5,13 @@
# FONTCONFIG_LIBRARIES - List of libraries when using FONTCONFIG.
# FONTCONFIG_FOUND - True if FONTCONFIG found.
IF(WANT_STATIC_LIBS)
OPTION(FONTCONFIG_STATIC "Set to ON to link your project with static library (instead of DLL)." ON)
ENDIF()
# Look for the header file.
FIND_PATH( FONTCONFIG_INCLUDE_DIR NAMES fontconfig/fontconfig.h
DOC "Path in which the file fontconfig/fontconfig.h is located." )
MARK_AS_ADVANCED(FONTCONFIG_INCLUDE_DIR)
IF(FONTCONFIG_STATIC)
FIND_LIBRARY( FONTCONFIG_LIBRARY NAMES libfontconfig.a fontconfig
IF(STATIC_FONTCONFIG)
FIND_LIBRARY( FONTCONFIG_LIBRARY NAMES libfontconfig.a fontconfig.a fontconfig
DOC "Path to fontconfig library." )
ELSE()
FIND_LIBRARY( FONTCONFIG_LIBRARY NAMES fontconfig

View File

@ -28,8 +28,8 @@ set(FRIBIDI_INCLUDE_DIR ${xFRIBIDI_INCLUDE_DIR})
SET(FRIBIDI_NAMES ${FRIBIDI_NAMES} fribidi libfribidi)
IF(WANT_STATIC_LIBS)
SET(FRIBIDI_NAMES fribidi.a libfribidi.a ${FRIBIDI_NAMES})
IF(STATIC_FriBiDi)
SET(FRIBIDI_NAMES libfribidi.a fribidi.a ${FRIBIDI_NAMES})
ENDIF()
#MESSAGE(STATUS "** Searching for library names: [${FRIBIDI_NAMES}] ...")

View File

@ -35,15 +35,11 @@
# (To distribute this file outside of CMake, substitute the full
# License text for the above reference.)
IF(WANT_STATIC_LIBS)
OPTION(GLEW_STATIC "Set to ON to link your project with static library (instead of DLL)." ON)
ENDIF()
find_path(GLEW_INCLUDE_DIR GL/glew.h)
SET(GLEW_NAMES ${GLEW_NAMES} GLEW glew32 glew glew32s)
IF(GLEW_STATIC)
SET(GLEW_NAMES libGLEW.a libglew32.a libglew.a libglew32s.a ${GLEW_NAMES})
IF(STATIC_GLEW)
SET(GLEW_NAMES libGLEW.a libglew32.a libglew.a libglew32s.a GLEW.a glew32.a glew.a glew32s.a ${GLEW_NAMES})
ENDIF()
find_library(GLEW_LIBRARY NAMES ${GLEW_NAMES} PATH_SUFFIXES lib64)

View File

@ -132,4 +132,4 @@ IF(BREAKPAD_FOUND)
#SET(BREAKPAD_FOUND FALSE)
ENDIF(BREAKPAD_DUMPSYMS_EXE)
ENDIF(BREAKPAD_FOUND)
MARK_AS_ADVANCED(BREAKPAD_INCLUDE_DIR)

View File

@ -41,11 +41,8 @@ FIND_PATH(IRCCLIENT_INCLUDE_DIR libircclient.h
SET(IRCCLIENT_FIND_LIBRARIES ircclient)
OPTION(FORCE_IRCCLIENT_DYNAMIC_LIBS "force the use of dynamic libs for IRCCLIENT" OFF)
MESSAGE(STATUS "Force IRCCLient dynamic: ${FORCE_IRCCLIENT_DYNAMIC_LIBS}")
IF(WANT_STATIC_LIBS AND NOT FORCE_IRCCLIENT_DYNAMIC_LIBS)
SET(IRCCLIENT_FIND_LIBRARIES libircclient.a ircclient.a)
IF(STATIC_Ircclient)
SET(IRCCLIENT_FIND_LIBRARIES libircclient.a ircclient.a libircclient ircclient)
ELSE()
SET(IRCCLIENT_FIND_LIBRARIES libircclient ircclient)
ENDIF()

View File

@ -51,11 +51,12 @@
unset(_lua_include_subdirs)
unset(_lua_library_names)
IF(WANT_STATIC_LIBS)
OPTION(LUA_STATIC "Set to ON to link your project with static library (instead of DLL)." ON)
ENDIF()
IF("${FORCE_LUA_VERSION}" STREQUAL "OFF")
SET(LUA_VERSIONS5 "${ALL_LUA_VERSIONS_IN_ORDER}")
IF(DEFINED ALL_LUA_VERSIONS_IN_ORDER)
SET(LUA_VERSIONS5 "${ALL_LUA_VERSIONS_IN_ORDER}")
ELSE()
SET(LUA_VERSIONS5 5.3 5.2 5.1 5.0)
ENDIF()
ELSE()
SET(LUA_VERSIONS5 "${FORCE_LUA_VERSION}")
ENDIF()
@ -91,12 +92,15 @@ function(set_lua_version_vars)
include/lua${CMAKE_MATCH_1}.${CMAKE_MATCH_2}
include/lua-${CMAKE_MATCH_1}.${CMAKE_MATCH_2}
)
IF(LUA_STATIC)
IF(STATIC_LUA)
list(APPEND _lua_library_names
liblua${CMAKE_MATCH_1}${CMAKE_MATCH_2}.a
liblua${CMAKE_MATCH_1}.${CMAKE_MATCH_2}.a
liblua-${CMAKE_MATCH_1}.${CMAKE_MATCH_2}.a
)
lua${CMAKE_MATCH_1}${CMAKE_MATCH_2}.a
lua${CMAKE_MATCH_1}.${CMAKE_MATCH_2}.a
lua-${CMAKE_MATCH_1}.${CMAKE_MATCH_2}.a
)
ENDIF()
list(APPEND _lua_library_names
lua${CMAKE_MATCH_1}${CMAKE_MATCH_2}

View File

@ -48,11 +48,10 @@ FIND_PATH(MINIUPNP_INCLUDE_DIR miniupnpc.h
#message(STATUS "Finding miniupnpc.h result: ${MINIUPNP_INCLUDE_DIR}")
#find_library(MINIUPNP_LIBRARY miniupnpc)
set(MINIUPNPC_LIBRARY_NAMES ${MINIUPNPC_LIBRARY_DYNAMIC_NAME} libminiupnpc miniupnpc)
IF(WANT_STATIC_LIBS)
set(MINIUPNPC_LIBRARY_NAMES ${MINIUPNPC_LIBRARY_STATIC_NAME} libminiupnpc.a)
ELSE()
set(MINIUPNPC_LIBRARY_NAMES ${MINIUPNPC_LIBRARY_DYNAMIC_NAME} libminiupnpc.so miniupnpc)
IF(STATIC_Miniupnpc)
set(MINIUPNPC_LIBRARY_NAMES ${MINIUPNPC_LIBRARY_STATIC_NAME} libminiupnpc.a miniupnpc.a ${MINIUPNPC_LIBRARY_NAMES})
ENDIF()
FIND_LIBRARY(MINIUPNP_LIBRARY NAMES ${MINIUPNPC_LIBRARY_NAMES})

View File

@ -6,10 +6,6 @@
# VORBIS_FILE_LIBRARY
#
IF(WANT_STATIC_LIBS)
OPTION(OGG_STATIC "Set to ON to link your project with static library (instead of DLL)." ON)
ENDIF()
# check for cache to avoid littering log
IF(OGG_INCLUDE_DIR AND OGG_LIBRARY AND VORBIS_LIBRARY)
SET(OGG_BE_QUIET TRUE)
@ -17,14 +13,14 @@ ENDIF()
FIND_PATH(OGG_INCLUDE_DIR ogg/ogg.h)
IF (OGG_STATIC AND NOT OGG_LIBRARY)
FIND_LIBRARY(OGG_LIBRARY NAMES libogg.a ogg)
IF (STATIC_OGG AND NOT OGG_LIBRARY)
FIND_LIBRARY(OGG_LIBRARY NAMES libogg.a ogg.a ogg)
ELSE()
FIND_LIBRARY(OGG_LIBRARY NAMES ogg)
ENDIF()
IF (OGG_STATIC AND NOT VORBIS_LIBRARY)
FIND_LIBRARY(VORBIS_LIBRARY NAMES libvorbis.a vorbis)
IF (STATIC_OGG AND NOT VORBIS_LIBRARY)
FIND_LIBRARY(VORBIS_LIBRARY NAMES libvorbis.a vorbis.a vorbis)
ELSE()
FIND_LIBRARY(VORBIS_LIBRARY NAMES vorbis)
ENDIF()
@ -33,8 +29,8 @@ ENDIF()
#IF(NOT APPLE)
# comment above is full of lies
IF (OGG_STATIC AND NOT VORBIS_FILE_LIBRARY)
FIND_LIBRARY(VORBIS_FILE_LIBRARY NAMES libvorbisfile.a vorbisfile)
IF (STATIC_OGG AND NOT VORBIS_FILE_LIBRARY)
FIND_LIBRARY(VORBIS_FILE_LIBRARY NAMES libvorbisfile.a vorbisfile.a vorbisfile)
ELSE()
FIND_LIBRARY(VORBIS_FILE_LIBRARY NAMES vorbisfile)
ENDIF()

View File

@ -46,16 +46,12 @@ IF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
#MESSAGE(STATUS "Found cached Xerces-C lib [${XERCESC_LIBRARY}]")
ENDIF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
IF(WANT_STATIC_LIBS)
OPTION(XERCESC_STATIC "Set to ON to link your project with static library (instead of DLL)." ON)
ENDIF()
IF (NOT ${XERCESC_WAS_STATIC} STREQUAL ${XERCESC_STATIC})
IF (NOT ${XERCESC_WAS_STATIC} STREQUAL ${STATIC_XercesC})
UNSET(XERCESC_LIBRARY CACHE)
UNSET(XERCESC_LIBRARY_DEBUG CACHE)
ENDIF (NOT ${XERCESC_WAS_STATIC} STREQUAL ${XERCESC_STATIC})
ENDIF (NOT ${XERCESC_WAS_STATIC} STREQUAL ${STATIC_XercesC})
SET(XERCESC_WAS_STATIC ${XERCESC_STATIC} CACHE INTERNAL "" )
SET(XERCESC_WAS_STATIC ${STATIC_XercesC} CACHE INTERNAL "" )
IF (XERCESC_INCLUDE_DIR)
SET(XERCESC_INCLUDE ${XERCESC_INCLUDE_DIR})
@ -73,7 +69,7 @@ ENDIF()
#MESSAGE(STATUS "Current Xerces-C lib [${XERCESC_LIBRARY}] XERCESC_INCLUDE [${XERCESC_INCLUDE}")
IF (XERCESC_STATIC AND NOT XERCESC_LIBRARY)
IF (STATIC_XercesC AND NOT XERCESC_LIBRARY)
MESSAGE(STATUS "Looking for static Xerces-C lib...")
FIND_LIBRARY(XERCESC_LIBRARY NAMES xerces-c_static_3 libxerces-c.a libxerces-c_3.a libxerces-c2_8_0.a libxerces-c_2.a libXerces.a
PATHS

View File

@ -0,0 +1,76 @@
#
# Required Versions And Static Config
#
# Things related with "Static build" and optional versioning.
#
# By assumption in general all should be done in the way that the default dynamic
# compilation should work even without this file.
#
IF(WANT_STATIC_LIBS)
IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST)
# shared lib
FOREACH(STATIC_LIB
OpenSSL
CURL
XercesC
LUA
JPEG
PNG
FontConfig
FTGL
GLEW
FriBiDi
Miniupnpc
Ircclient)
LIST(APPEND LIST_OF_STATIC_LIBS_MG "${STATIC_LIB}")
ENDFOREACH()
ENDIF()
IF(BUILD_MEGAGLEST)
# only libs not used by shared lib
FOREACH(STATIC_LIB
OGG)
LIST(APPEND LIST_OF_STATIC_LIBS_MG "${STATIC_LIB}")
ENDFOREACH()
ENDIF()
FOREACH(STATIC_LIB ${LIST_OF_STATIC_LIBS_MG})
IF(DEFINED WANT_USE_${STATIC_LIB} AND NOT WANT_USE_${STATIC_LIB})
IF(DEFINED STATIC_${STATIC_LIB})
UNSET(STATIC_${STATIC_LIB} CACHE)
ENDIF()
ELSE()
OPTION("STATIC_${STATIC_LIB}" "Set to ON to link your project with static library (instead of DLL)." ON)
ENDIF()
ENDFOREACH()
ENDIF()
IF(STATIC_OpenSSL)
SET(OPENSSL_USE_STATIC_LIBS ON)
ENDIF()
IF(STATIC_CURL AND UNIX)
ADD_DEFINITIONS("-DCURL_STATICLIB")
ENDIF()
SET(CURL_MIN_VERSION_MG "7.16.4")
IF(NOT DEFINED FORCE_LUA_VERSION)
SET(FORCE_LUA_VERSION "OFF" CACHE STRING "Try to force some specific lua version (for example older). On the list may be also not existing versions yet for future use." FORCE)
ENDIF()
SET_PROPERTY(CACHE FORCE_LUA_VERSION PROPERTY STRINGS OFF 5.5 5.4 5.3 5.2 5.1 5.0)
SET(ALL_LUA_VERSIONS_IN_ORDER 5.3 5.2 5.1 5.4 5.5 5.0)
IF(STATIC_JPEG)
SET(JPEG_NAMES jpeg.a libjpeg.a ${JPEG_NAMES})
ENDIF()
IF(STATIC_PNG)
list(APPEND PNG_NAMES png.a libpng.a)
set(_PNG_VERSION_SUFFIXES 17 16 15 14 12 18 19 20 21 22)
foreach(v IN LISTS _PNG_VERSION_SUFFIXES)
list(APPEND PNG_NAMES png${v}.a libpng${v}.a)
list(APPEND PNG_NAMES_DEBUG png${v}d.a libpng${v}d.a)
endforeach()
unset(_PNG_VERSION_SUFFIXES)
ENDIF()
SET(VLC_MIN_VERSION_MG "1.1.0")

View File

@ -138,14 +138,14 @@ detect_system
echo 'We have detected the following system:'
echo ' [ '"$distribution"' ] [ '"$release"' ] [ '"$codename"' ] [ '"$architecture"' ]'
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DFONTCONFIG_STATIC=OFF"
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DSTATIC_FONTCONFIG=OFF"
case $distribution in
Debian)
case $release in
6.*|7.*) ;;
*)
echo 'Turning ON dynamic FTGL, LUA, JPEG, PNG ... and forcing use the embedded IRCCLIENT'
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DFTGL_STATIC=OFF -DLUA_STATIC=OFF -DJPEG_STATIC=OFF -DPNG_STATIC=OFF -DOGG_STATIC=OFF -DFORCE_USE_EMBEDDED_IRCCLIENT=ON"
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DSTATIC_FTGL=OFF -DSTATIC_LUA=OFF -DSTATIC_JPEG=OFF -DSTATIC_PNG=OFF -DSTATIC_OGG=OFF -DFORCE_USE_EMBEDDED_Ircclient=ON"
;;
esac
;;
@ -155,7 +155,7 @@ case $distribution in
10.*|11.*|12.*|13.*|14.*) ;;
*)
echo 'Turning ON dynamic FTGL, LUA, JPEG, PNG ... and forcing use the embedded IRCCLIENT'
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DFTGL_STATIC=OFF -DLUA_STATIC=OFF -DJPEG_STATIC=OFF -DPNG_STATIC=OFF -DOGG_STATIC=OFF -DFORCE_USE_EMBEDDED_IRCCLIENT=ON"
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DSTATIC_FTGL=OFF -DSTATIC_LUA=OFF -DSTATIC_JPEG=OFF -DSTATIC_PNG=OFF -DSTATIC_OGG=OFF -DFORCE_USE_EMBEDDED_Ircclient=ON"
;;
esac
;;
@ -165,7 +165,7 @@ case $distribution in
13|13.*|14|15|16|17|17.*) ;;
*)
echo 'Turning ON dynamic FTGL, LUA, JPEG, PNG ... and forcing use the embedded IRCCLIENT'
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DFTGL_STATIC=OFF -DLUA_STATIC=OFF -DJPEG_STATIC=OFF -DPNG_STATIC=OFF -DOGG_STATIC=OFF -DFORCE_USE_EMBEDDED_IRCCLIENT=ON"
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DSTATIC_FTGL=OFF -DSTATIC_LUA=OFF -DSTATIC_JPEG=OFF -DSTATIC_PNG=OFF -DSTATIC_OGG=OFF -DFORCE_USE_EMBEDDED_Ircclient=ON"
;;
esac
;;
@ -174,7 +174,7 @@ case $distribution in
case $release in
*)
echo 'Turning ON dynamic CURL ...'
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DFORCE_CURL_DYNAMIC_LIBS=ON"
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DSTATIC_CURL=OFF"
;;
esac
;;
@ -183,7 +183,7 @@ case $distribution in
case $release in
*)
echo 'Turning ON dynamic CURL ...'
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DFORCE_CURL_DYNAMIC_LIBS=ON"
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DSTATIC_CURL=OFF"
;;
esac
;;

View File

@ -137,7 +137,7 @@ echo 'We have detected the following system:'
echo " [ $distribution ] [ $release ] [ $architecture ] [ $xcode_ver ]"
case $release in
*) echo 'Turning ON dynamic PNG ...'
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DPNG_STATIC=OFF";;
EXTRA_CMAKE_OPTIONS="${EXTRA_CMAKE_OPTIONS} -DSTATIC_PNG=OFF";;
esac
case $xcode_ver in
# en.wikipedia.org/wiki/Xcode, Version, OS X SDK(s) <- lowest, but not less than 10.4

View File

@ -32,8 +32,7 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER)
ENDIF()
IF(NOT WIN32)
IF(WANT_XERCES)
IF(WANT_USE_XercesC)
FIND_PACKAGE(XercesC REQUIRED)
INCLUDE_DIRECTORIES(${XERCESC_INCLUDE})
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${XERCESC_LIBRARY})
@ -102,7 +101,7 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER)
${GLEST_MAIN_INCLUDE_ROOT}global
${GLEST_MAIN_INCLUDE_ROOT}sound)
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
SET(GLEST_LIB_INCLUDE_DIRS
${GLEST_LIB_INCLUDE_DIRS}
${GLEST_LIB_INCLUDE_ROOT}streflop)
@ -112,10 +111,8 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER)
IF(WIN32)
INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/source/shared_lib/include/platform/win32)
INCLUDE_DIRECTORIES( ${GLEST_LIB_INCLUDE_ROOT}platform/${SDL_VERSION_SNAME} )
ELSE()
INCLUDE_DIRECTORIES( ${GLEST_LIB_INCLUDE_ROOT}platform/${SDL_VERSION_SNAME} )
ENDIF()
INCLUDE_DIRECTORIES( ${GLEST_LIB_INCLUDE_ROOT}platform/${SDL_VERSION_SNAME} )
SET(MG_SOURCE_FILES "../glest_game/graphics/particle_type.cpp" "../glest_game/graphics/unit_particle_type.cpp" "../glest_game/global/config.cpp")
@ -154,15 +151,11 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER)
ADD_EXECUTABLE(${TARGET_NAME} ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
TARGET_LINK_LIBRARIES(${TARGET_NAME} streflop)
ENDIF()
IF(WIN32)
TARGET_LINK_LIBRARIES(${TARGET_NAME} libmegaglest)
ELSE()
TARGET_LINK_LIBRARIES(${TARGET_NAME} libmegaglest)
ENDIF()
TARGET_LINK_LIBRARIES(${TARGET_NAME} libmegaglest)
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${EXTERNAL_LIBS})
IF(EXISTS ${HELP2MAN})
@ -219,6 +212,5 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER)
DESTINATION ${MEGAGLEST_ICON_INSTALL_PATH})
ENDIF()
ENDIF()
ENDIF()
ENDIF()

View File

@ -41,7 +41,7 @@ IF(BUILD_MEGAGLEST)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OPENGL_LIBRARY})
ENDIF()
IF(WANT_XERCES)
IF(WANT_USE_XercesC)
FIND_PACKAGE(XercesC REQUIRED)
INCLUDE_DIRECTORIES(${XERCESC_INCLUDE})
IF(UNIX)
@ -59,7 +59,7 @@ IF(BUILD_MEGAGLEST)
INCLUDE_DIRECTORIES(${OGG_INCLUDE_DIR})
IF(UNIX)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_FILE_LIBRARY})
IF(OGG_STATIC)
IF(STATIC_OGG)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OGG_LIBRARY} ${VORBIS_LIBRARY} ${OGG_LIBRARY})
ENDIF()
ENDIF()
@ -76,26 +76,23 @@ IF(BUILD_MEGAGLEST)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${JPEG_LIBRARY})
ENDIF()
IF(WANT_STATIC_LIBS)
SET(PNG_NAMES libpng.a ${PNG_NAMES})
ENDIF()
FIND_PACKAGE(PNG REQUIRED)
INCLUDE_DIRECTORIES(${PNG_INCLUDE_DIR})
IF(UNIX)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${PNG_LIBRARY})
ENDIF()
IF(WANT_STATIC_LIBS)
OPTION(OPENSSL_USE_STATIC_LIBS "Set to ON to link your project with static library (instead of DLL)." ON)
ENDIF()
FIND_PACKAGE(OpenSSL)
IF(OPENSSL_FOUND)
INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
ELSE()
MESSAGE(STATUS "**NOTE: OpenSSL is usually not required.")
IF(WANT_USE_OpenSSL)
FIND_PACKAGE(OpenSSL)
IF(OPENSSL_FOUND)
INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
ELSE()
MESSAGE(STATUS "**NOTE: OpenSSL is usually not required.")
ENDIF()
ENDIF()
FIND_PACKAGE(CURL REQUIRED)
INCLUDE(${CMAKE_SOURCE_DIR}/mk/cmake/Modules/CurlGetConfig.cmake)
INCLUDE_DIRECTORIES(${CURL_INCLUDE_DIRS})
IF(UNIX)
IF(NOT OPENSSL_FOUND)
@ -113,7 +110,11 @@ IF(BUILD_MEGAGLEST)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${GLEW_LIBRARIES})
ENDIF()
#SET(LIBVLC_MIN_VERSION "2.0.1")
IF(VLC_MIN_VERSION_MG)
SET(LIBVLC_MIN_VERSION "${VLC_MIN_VERSION_MG}")
ELSE()
SET(LIBVLC_MIN_VERSION "1.1.0")
ENDIF()
FIND_PACKAGE(LIBVLC)
IF(LIBVLC_FOUND AND NOT LIBVLC_VERSION STRLESS "${LIBVLC_MIN_VERSION}")
@ -169,7 +170,7 @@ IF(BUILD_MEGAGLEST)
${GLEST_LIB_INCLUDE_ROOT}lua
${GLEST_LIB_INCLUDE_ROOT}map)
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
SET(GLEST_LIB_INCLUDE_DIRS
${GLEST_LIB_INCLUDE_DIRS}
${GLEST_LIB_INCLUDE_ROOT}streflop
@ -202,7 +203,7 @@ IF(BUILD_MEGAGLEST)
FILE(GLOB SRC_FILES_FROM_THIS_DIR ${SRC_DIR_TO_GLOB}/*.c)
SET(MG_SOURCE_FILES ${MG_SOURCE_FILES} ${SRC_FILES_FROM_THIS_DIR})
FILE(GLOB INCLUDE_FILES_FROM_THIS_DIR ${SRC_DIR_TO_GLOB}/*.h)
SET(MG_INCLUDE_FILES ${MG_INCLUDE_FILES} ${INCLUDE_FILES_FROM_THIS_DIR})
SET(MG_INCLUDE_FILES ${MG_INCLUDE_FILES} ${INCLUDE_FILES_FROM_THIS_DIR})
IF(APPLE)
FILE(GLOB SRC_FILES_FROM_THIS_DIR ${SRC_DIR_TO_GLOB}/*.mm)
@ -210,7 +211,7 @@ IF(BUILD_MEGAGLEST)
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})
SET(MG_SOURCE_FILES ${MG_SOURCE_FILES} ${SRC_FILES_FROM_THIS_DIR})
ENDIF(APPLE)
ENDFOREACH(DIR)
@ -224,12 +225,7 @@ IF(BUILD_MEGAGLEST)
ENDIF()
IF(WIN32)
SET(CMAKE_CXX_FLAGS_NONE "${CMAKE_CXX_FLAGS_NONE} -Wl,-subsystem,console -mconsole")
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wl,-subsystem,console -mconsole")
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Wl,-subsystem,console -mconsole")
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -Wl,-subsystem,console -mconsole")
SET(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} -Wl,-subsystem,console -mconsole")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,-subsystem,console -mconsole")
ENDIF()
IF(WANT_DEV_OUTPATH)
@ -243,26 +239,28 @@ IF(BUILD_MEGAGLEST)
ADD_EXECUTABLE(${TARGET_NAME} ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
SET(MG_STREFLOP "")
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
SET(MG_STREFLOP "streflop")
ENDIF()
find_package( GoogleBreakpad )
if(BREAKPAD_EXCEPTION_HANDLER_FOUND AND BREAKPAD_EXCEPTION_HANDLER_LIBRARIES)
add_definitions(-DHAVE_GOOGLE_BREAKPAD)
if(WANT_USE_GoogleBreakpad)
find_package( GoogleBreakpad )
if(BREAKPAD_EXCEPTION_HANDLER_FOUND AND BREAKPAD_EXCEPTION_HANDLER_LIBRARIES)
add_definitions(-DHAVE_GOOGLE_BREAKPAD)
include_directories( ${BREAKPAD_EXCEPTION_HANDLER_INCLUDE_DIR} )
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${BREAKPAD_EXCEPTION_HANDLER_LIBRARIES})
include_directories( ${BREAKPAD_EXCEPTION_HANDLER_INCLUDE_DIR} )
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${BREAKPAD_EXCEPTION_HANDLER_LIBRARIES})
else()
message(STATUS "** WARNING: Could not find GoogleBreakpad. Disabling GoogleBreakpad support.")
else()
message(STATUS "** WARNING: Could not find GoogleBreakpad. Disabling GoogleBreakpad support.")
endif()
endif()
IF(WIN32)
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_VERSION_NAME} ${SDL_VERSION_NAME}main lua5.1 ${MG_STREFLOP} libmegaglest stdc++ moldname mingwex msvcrt user32 kernel32)
ENDIF()
IF(NOT WIN32)
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${MG_STREFLOP})
ENDIF()
TARGET_LINK_LIBRARIES(${TARGET_NAME} libmegaglest)
@ -326,12 +324,12 @@ IF(BUILD_MEGAGLEST)
INSTALL(FILES
"${PROJECT_SOURCE_DIR}/mk/macosx/glest.ini"
DESTINATION ${MEGAGLEST_DATA_INSTALL_PATH})
IF(SINGLE_INSTALL_DIRECTORY AND EXISTS "${PROJECT_SOURCE_DIR}/mk/macosx/p7zip/")
IF(WANT_SINGLE_INSTALL_DIRECTORY AND EXISTS "${PROJECT_SOURCE_DIR}/mk/macosx/p7zip/")
INSTALL(DIRECTORY
"${PROJECT_SOURCE_DIR}/mk/macosx/p7zip"
DESTINATION ${MEGAGLEST_DATA_INSTALL_PATH})
ENDIF()
IF(SINGLE_INSTALL_DIRECTORY AND EXISTS "${PROJECT_SOURCE_DIR}/mk/macosx/lib/")
IF(WANT_SINGLE_INSTALL_DIRECTORY AND EXISTS "${PROJECT_SOURCE_DIR}/mk/macosx/lib/")
INSTALL(DIRECTORY
"${PROJECT_SOURCE_DIR}/mk/macosx/lib/"
DESTINATION "${MEGAGLEST_DATA_INSTALL_PATH}/../../Frameworks/")
@ -362,7 +360,7 @@ IF(BUILD_MEGAGLEST)
"${PROJECT_SOURCE_DIR}/mk/linux/megaglest.xpm"
DESTINATION ${MEGAGLEST_ICON_INSTALL_PATH})
ELSEIF(UNIX AND APPLE)
IF(NOT SINGLE_INSTALL_DIRECTORY)
IF(NOT WANT_SINGLE_INSTALL_DIRECTORY)
INSTALL(FILES
"${PROJECT_SOURCE_DIR}/mk/macosx/bundle_resources/MegaGlest.icns"
DESTINATION ${MEGAGLEST_ICON_INSTALL_PATH})

View File

@ -85,7 +85,7 @@ IF(BUILD_MEGAGLEST_MAP_EDITOR)
${GLEST_LIB_INCLUDE_ROOT}xml/rapidxml
${GLEST_MAIN_INCLUDE_ROOT}global)
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
SET(GLEST_LIB_INCLUDE_DIRS
${GLEST_LIB_INCLUDE_DIRS}
${GLEST_LIB_INCLUDE_ROOT}streflop)
@ -95,11 +95,8 @@ IF(BUILD_MEGAGLEST_MAP_EDITOR)
IF(WIN32)
INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/source/shared_lib/include/platform/win32)
INCLUDE_DIRECTORIES( ${GLEST_LIB_INCLUDE_ROOT}platform/${SDL_VERSION_SNAME} )
ELSE()
INCLUDE_DIRECTORIES( ${GLEST_LIB_INCLUDE_ROOT}platform/${SDL_VERSION_SNAME} )
ENDIF()
INCLUDE_DIRECTORIES( ${GLEST_LIB_INCLUDE_ROOT}platform/${SDL_VERSION_SNAME} )
SET(MG_SOURCE_FILES "../glest_game/global/config.cpp")
@ -139,7 +136,7 @@ IF(BUILD_MEGAGLEST_MAP_EDITOR)
ADD_EXECUTABLE(${TARGET_NAME} ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
SET(MG_STREFLOP "")
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
SET(MG_STREFLOP "streflop")
ENDIF()
@ -147,15 +144,11 @@ IF(BUILD_MEGAGLEST_MAP_EDITOR)
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_VERSION_NAME} ${SDL_VERSION_NAME}main lua5.1 ${MG_STREFLOP} libmegaglest stdc++ moldname mingwex msvcrt user32 kernel32)
ENDIF()
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${MG_STREFLOP})
ENDIF()
IF(WIN32)
TARGET_LINK_LIBRARIES(${TARGET_NAME} libmegaglest)
ELSE()
TARGET_LINK_LIBRARIES(${TARGET_NAME} libmegaglest)
ENDIF()
TARGET_LINK_LIBRARIES(${TARGET_NAME} libmegaglest)
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${EXTERNAL_LIBS})
IF(EXISTS ${HELP2MAN})
@ -176,7 +169,6 @@ IF(BUILD_MEGAGLEST_MAP_EDITOR)
ENDIF()
ENDIF()
# Requires an install prefix for the items below to work
IF(NOT CMAKE_INSTALL_PREFIX STREQUAL "")
# Installation of the program

View File

@ -2,7 +2,7 @@
# streflop
# IMPORTANT: should come BEFORE finding packages
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
ADD_SUBDIRECTORY(sources/streflop)
ENDIF()
@ -17,14 +17,6 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
INCLUDE (CheckIncludeFiles)
#Game options
option(ENABLE_FRIBIDI "Enable FriBIDi support" ON)
IF(NOT FORCE_LUA_VERSION)
SET(FORCE_LUA_VERSION "OFF" CACHE STRING "Try to force some specific lua version (for example older). On the list may be also not existing versions yet for future use." FORCE)
ENDIF()
SET_PROPERTY(CACHE FORCE_LUA_VERSION PROPERTY STRINGS OFF 5.5 5.4 5.3 5.2 5.1 5.0)
SET(ALL_LUA_VERSIONS_IN_ORDER 5.3 5.2 5.1 5.4 5.5 5.0)
IF(WIN32)
SET(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH}
${PROJECT_SOURCE_DIR}/source/win32_deps/lib
@ -53,17 +45,17 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/source/shared_lib/include/platform/win32)
ENDIF()
IF(WANT_STATIC_LIBS)
OPTION(OPENSSL_USE_STATIC_LIBS "Set to ON to link your project with static library (instead of DLL)." ON)
ENDIF()
FIND_PACKAGE(OpenSSL)
IF(OPENSSL_FOUND)
INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
ELSE()
MESSAGE(STATUS "**NOTE: OpenSSL is usually not required.")
IF(WANT_USE_OpenSSL)
FIND_PACKAGE(OpenSSL)
IF(OPENSSL_FOUND)
INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
ELSE()
MESSAGE(STATUS "**NOTE: OpenSSL is usually not required.")
ENDIF()
ENDIF()
FIND_PACKAGE(CURL REQUIRED)
INCLUDE(${CMAKE_SOURCE_DIR}/mk/cmake/Modules/CurlGetConfig.cmake)
INCLUDE_DIRECTORIES(${CURL_INCLUDE_DIRS})
IF(UNIX)
IF(NOT OPENSSL_FOUND)
@ -93,7 +85,7 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${X11_LIBRARIES})
ENDIF()
IF(WANT_XERCES)
IF(WANT_USE_XercesC)
FIND_PACKAGE(XercesC REQUIRED)
INCLUDE_DIRECTORIES(${XERCESC_INCLUDE_DIR})
IF(UNIX)
@ -113,35 +105,20 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${LUA_LIBRARIES} ${CMAKE_DL_LIBS})
ENDIF()
IF(WANT_STATIC_LIBS)
OPTION(JPEG_STATIC "Set to ON to link your project with static library (instead of DLL)." ON)
OPTION(PNG_STATIC "Set to ON to link your project with static library (instead of DLL)." ON)
ENDIF()
IF(JPEG_STATIC)
SET(JPEG_NAMES libjpeg.a ${JPEG_NAMES})
ELSE()
SET(JPEG_NAMES libjpeg ${JPEG_NAMES})
ENDIF()
FIND_PACKAGE(JPEG REQUIRED)
INCLUDE_DIRECTORIES(${JPEG_INCLUDE_DIR})
IF(UNIX)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${JPEG_LIBRARY})
ENDIF()
IF(PNG_STATIC)
SET(PNG_NAMES libpng.a ${PNG_NAMES})
ELSE()
SET(PNG_NAMES libpng ${PNG_NAMES})
ENDIF()
FIND_PACKAGE(PNG REQUIRED)
INCLUDE_DIRECTORIES(${PNG_INCLUDE_DIR})
IF(UNIX)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${PNG_LIBRARY})
ENDIF()
OPTION(WANT_FONTCONFIG "use the library fontconfig" ON)
IF(WANT_FONTCONFIG)
OPTION(WANT_USE_FontConfig "use the library fontconfig" ON)
IF(WANT_USE_FontConfig)
FIND_PACKAGE(FontConfig)
IF(FONTCONFIG_FOUND)
MESSAGE(STATUS "**NOTE: FontConfig support was detected and enabled.")
@ -153,46 +130,34 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
ENDIF(FONTCONFIG_FOUND)
ENDIF()
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} )
endif(USE_FTGL)
OPTION(WANT_USE_FTGL "Use libFTGL for on-screen fonts (found on your system)" ON)
find_package( Freetype REQUIRED)
include_directories( ${FREETYPE_INCLUDE_DIRS} )
FIND_PACKAGE(FTGL)
IF(USE_FTGL)
IF(WANT_USE_FTGL)
if (FTGL_FOUND)
MESSAGE(STATUS "**NOTE: FTGL font support was detected and enabled.")
else()
MESSAGE(STATUS
"**NOTE: Warning! FTGL has been enabled but not detected. Your compilation will probably break. Turn off FTGL support by setting USE_FTGL to false, or visit http://ftgl.wiki.sourceforge.net/ for help on installing FTGL.")
endif()
ADD_DEFINITIONS(-DUSE_FTGL)
#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)
INCLUDE_DIRECTORIES(${FTGL_INCLUDE_DIR})
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${FTGL_LIBRARY})
ADD_DEFINITIONS(-DUSE_FTGL)
INCLUDE_DIRECTORIES(${FTGL_INCLUDE_DIR})
IF(UNIX)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${FTGL_LIBRARY})
ENDIF()
else()
MESSAGE("**NOTE: Warning! FTGL has been enabled but not detected. Your compilation will probably break. Turn off FTGL support by setting WANT_USE_FTGL to false, or visit http://ftgl.wiki.sourceforge.net/ for help on installing FTGL.")
endif()
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")
MESSAGE(STATUS "**NOTE: Warning: FTGL font support was detected but NOT enabled. You can enable it by setting WANT_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()
ENDIF(USE_FTGL)
ENDIF()
FIND_PACKAGE(Freetype REQUIRED)
INCLUDE_DIRECTORIES(${FREETYPE_INCLUDE_PATH})
IF(NOT FREETYPE_FOUND)
FIND_PACKAGE(Freetype REQUIRED)
INCLUDE_DIRECTORIES(${FREETYPE_INCLUDE_DIRS})
ENDIF()
IF(UNIX)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${FREETYPE_LIBRARY})
ENDIF()
@ -203,12 +168,15 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${GLEW_LIBRARIES})
ENDIF()
SET(LIBVLC_MIN_VERSION "1.1.0")
IF(VLC_MIN_VERSION_MG)
SET(LIBVLC_MIN_VERSION "${VLC_MIN_VERSION_MG}")
ELSE()
SET(LIBVLC_MIN_VERSION "1.1.0")
ENDIF()
FIND_PACKAGE(LIBVLC)
MESSAGE(STATUS "LIBVLC version: ${LIBVLC_VERSION} WANT_USE_VLC macro: ${WANT_USE_VLC}")
MESSAGE(STATUS "LIBVLC version: ${LIBVLC_VERSION} WITH_VLC macro: ${WITH_VLC}")
IF(LIBVLC_FOUND AND WITH_VLC AND NOT LIBVLC_VERSION STRLESS "${LIBVLC_MIN_VERSION}")
IF(LIBVLC_FOUND AND WANT_USE_VLC AND NOT LIBVLC_VERSION STRLESS "${LIBVLC_MIN_VERSION}")
MESSAGE(STATUS "**NOTE: LIBVLC found so videos are supported.")
INCLUDE_DIRECTORIES(${LIBVLC_INCLUDE_DIR})
IF(UNIX)
@ -224,35 +192,38 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
ELSE()
MESSAGE(STATUS "**WARNING: LIBVLC NOT found so videos are NOT supported.")
IF(WITH_VLC)
IF(WANT_USE_VLC)
MESSAGE(STATUS "**WARNING: LIBVLC NOT found so videos are NOT supported.")
ELSE()
MESSAGE(STATUS "LIBVLC disabled so videos are NOT supported.")
ENDIF()
ENDIF()
if(WANT_USE_FriBiDi)
find_package( FriBiDi )
if(FRIBIDI_FOUND)
add_definitions(-DHAVE_FRIBIDI)
find_package( FriBiDi )
if(ENABLE_FRIBIDI AND FRIBIDI_LIBRARIES)
add_definitions(-DHAVE_FRIBIDI)
include_directories( ${FRIBIDI_INCLUDE_DIR} )
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${FRIBIDI_LIBRARIES})
include_directories( ${FRIBIDI_INCLUDE_DIR} )
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${FRIBIDI_LIBRARIES})
elseif(ENABLE_FRIBIDI AND NOT FRIBIDI_LIBRARIES)
message("Could not find FriBiDi. Disabling FriBiDi support.")
else()
message("Could not find FriBiDi. Disabling FriBiDi support.")
endif()
endif()
find_package( GoogleBreakpad )
if(BREAKPAD_EXCEPTION_HANDLER_FOUND AND BREAKPAD_EXCEPTION_HANDLER_LIBRARIES)
add_definitions(-DHAVE_GOOGLE_BREAKPAD)
if(WANT_USE_GoogleBreakpad)
find_package( GoogleBreakpad )
if(BREAKPAD_EXCEPTION_HANDLER_FOUND AND BREAKPAD_EXCEPTION_HANDLER_LIBRARIES)
add_definitions(-DHAVE_GOOGLE_BREAKPAD)
#include_directories( ${BREAKPAD_EXCEPTION_HANDLER_INCLUDE_DIR} )
#SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${BREAKPAD_EXCEPTION_HANDLER_LIBRARIES})
#include_directories( ${BREAKPAD_EXCEPTION_HANDLER_INCLUDE_DIR} )
#SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${BREAKPAD_EXCEPTION_HANDLER_LIBRARIES})
else()
message(STATUS "** WARNING: Could not find GoogleBreakpad. Disabling GoogleBreakpad support.")
else()
message(STATUS "** WARNING: Could not find GoogleBreakpad. Disabling GoogleBreakpad support.")
endif()
endif()
#########################################################################################
@ -272,7 +243,7 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
util
xml)
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
SET(DIRS_WITH_SRC
${DIRS_WITH_SRC}
streflop
@ -283,11 +254,18 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
#IF(NOT WANT_STATIC_LIBS)
#MESSAGE(STATUS "*** Searching for miniupnpc since WANT_STATIC_LIBS is off ...")
#MESSAGE(STATUS "*** Searching for miniupnpc ...")
FIND_PACKAGE(Miniupnpc)
#ENDIF()
OPTION(FORCE_USE_EMBEDDED_Miniupnpc "Use embedded to source code version of miniupnpc" OFF)
IF(NOT FORCE_USE_EMBEDDED_Miniupnpc)
FIND_PACKAGE(Miniupnpc)
ENDIF()
if(NOT MINIUPNP_FOUND)
MESSAGE(STATUS "*** Using EMBEDDED miniupnpc since dev system does not have it... MINIUPNP_FOUND [${MINIUPNP_FOUND}]")
if(NOT FORCE_USE_EMBEDDED_Miniupnpc)
MESSAGE(STATUS "*** Using EMBEDDED miniupnpc since dev system does not have it... MINIUPNP_FOUND [${MINIUPNP_FOUND}]")
else()
MESSAGE(STATUS "*** Using EMBEDDED miniupnpc because it was forced by option 'FORCE_USE_EMBEDDED_Miniupnpc'")
endif()
if (NOT WIN32)
add_definitions (-DMINIUPNPC_SET_SOCKET_TIMEOUT)
@ -346,21 +324,21 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
INCLUDE_DIRECTORIES( ${MG_INCLUDES_ROOT}xml/rapidxml )
INCLUDE_DIRECTORIES("sources/")
option(DISABLE_IRCCLIENT "Disable libircclient support" OFF)
option(FORCE_USE_EMBEDDED_IRCCLIENT "Use embedded to source code version of ircclient" OFF)
OPTION(WANT_USE_Ircclient "Enable libircclient support" ON)
OPTION(FORCE_USE_EMBEDDED_Ircclient "Use embedded to source code version of ircclient" OFF)
IF(NOT DISABLE_IRCCLIENT)
IF(WANT_USE_Ircclient)
#IF(NOT WANT_STATIC_LIBS)
IF(NOT FORCE_USE_EMBEDDED_IRCCLIENT)
IF(NOT FORCE_USE_EMBEDDED_Ircclient)
MESSAGE(STATUS "*** Searching for libircclient since WANT_STATIC_LIBS is: ${WANT_STATIC_LIBS} ...")
FIND_PACKAGE(Ircclient)
ENDIF()
if(NOT IRCCLIENT_FOUND OR FORCE_USE_EMBEDDED_IRCCLIENT)
if(NOT FORCE_USE_EMBEDDED_IRCCLIENT)
if(NOT IRCCLIENT_FOUND OR FORCE_USE_EMBEDDED_Ircclient)
if(NOT FORCE_USE_EMBEDDED_Ircclient)
MESSAGE(STATUS "*** Using EMBEDDED libircclient since this system does not have it... IRCCLIENT_FOUND [${IRCCLIENT_FOUND}]")
else()
MESSAGE(STATUS "*** Using EMBEDDED libircclient because it was forced by option 'FORCE_USE_EMBEDDED_IRCCLIENT'")
MESSAGE(STATUS "*** Using EMBEDDED libircclient because it was forced by option 'FORCE_USE_EMBEDDED_Ircclient'")
endif()
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)
@ -476,28 +454,23 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
MESSAGE(STATUS "EXTERNAL_LIBS = [${EXTERNAL_LIBS}]")
OPTION(BUILD_MEGAGLEST_UPNP_DEBUG "Build MegaGlest with UPNP DEBUG enabled" OFF)
IF(BUILD_MEGAGLEST_UPNP_DEBUG)
OPTION(MINIUPNP_DEBUG_BUILD "Build MegaGlest with UPNP DEBUG enabled" OFF)
MARK_AS_ADVANCED(MINIUPNP_DEBUG_BUILD)
IF(MINIUPNP_DEBUG_BUILD)
MESSAGE(STATUS "Will try to build MegaGlest shared library with DEBUG info for UPNP")
ADD_DEFINITIONS("-DDEBUG")
ENDIF()
IF(WIN32)
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_VERSION_NAME} ${SDL_VERSION_NAME}main lua5.1 stdc++ moldname mingwex msvcrt user32 kernel32)
IF(WANT_STREFLOP)
TARGET_LINK_LIBRARIES(${TARGET_NAME} streflop)
ENDIF()
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${EXTERNAL_LIBS})
ELSE()
IF(WANT_STREFLOP)
TARGET_LINK_LIBRARIES(${TARGET_NAME} streflop)
ENDIF()
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${EXTERNAL_LIBS})
ENDIF()
#IF(BUILD_MEGAGLEST_UPNP_DEBUG)
IF(WANT_USE_STREFLOP)
TARGET_LINK_LIBRARIES(${TARGET_NAME} streflop)
ENDIF()
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${EXTERNAL_LIBS})
#IF(MINIUPNP_DEBUG_BUILD)
# REMOVE_DEFINITIONS("-DDEBUG")
#ENDIF()

View File

@ -21,15 +21,16 @@ IF(BUILD_MEGAGLEST_TESTS)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${${SDL_VERSION_NAME}_LIBRARY})
ENDIF()
find_package( FriBiDi )
if(ENABLE_FRIBIDI AND FRIBIDI_LIBRARIES)
add_definitions(-DHAVE_FRIBIDI)
if(WANT_USE_FriBiDi)
find_package( FriBiDi )
if(FRIBIDI_FOUND)
add_definitions(-DHAVE_FRIBIDI)
include_directories( ${FRIBIDI_INCLUDE_DIR} )
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${FRIBIDI_LIBRARIES})
elseif(ENABLE_FRIBIDI AND NOT FRIBIDI_LIBRARIES)
message("Could not find FriBiDi. Disabling FriBiDi support.")
include_directories( ${FRIBIDI_INCLUDE_DIR} )
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${FRIBIDI_LIBRARIES})
else()
message("Could not find FriBiDi. Disabling FriBiDi support.")
endif()
endif()
#########################################################################################
@ -70,7 +71,7 @@ IF(BUILD_MEGAGLEST_TESTS)
${PROJECT_SOURCE_DIR}/source/glest_game/types
)
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
SET(GLEST_LIB_INCLUDE_DIRS
${GLEST_LIB_INCLUDE_DIRS}
${GLEST_LIB_INCLUDE_ROOT}streflop
@ -139,16 +140,9 @@ IF(BUILD_MEGAGLEST_TESTS)
SET_SOURCE_FILES_PROPERTIES(${MG_INCLUDE_FILES} PROPERTIES HEADER_FILE_ONLY 1)
OPTION(WANT_DEV_OUTPATH "use developer friendly output paths" OFF)
IF(WANT_DEV_OUTPATH)
IF(UNIX AND NOT APPLE)
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/mk/linux/)
ELSEIF(UNIX AND APPLE)
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/mk/macosx/)
ELSE()
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/data/glest_game/)
ENDIF()
ENDIF()
IF(WANT_DEV_OUTPATH)
SET(EXECUTABLE_OUTPUT_PATH "${MEGAGLEST_FRIENDLY_OUTPUT_PATH}")
ENDIF()
MESSAGE(STATUS "EXTERNAL_LIBS = [${EXTERNAL_LIBS}]")
@ -159,7 +153,7 @@ IF(BUILD_MEGAGLEST_TESTS)
ADD_EXECUTABLE(${TARGET_NAME} ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
IF(NOT WIN32)
IF(WANT_STREFLOP)
IF(WANT_USE_STREFLOP)
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${MG_STREFLOP})
ENDIF()
TARGET_LINK_LIBRARIES(${TARGET_NAME} libmegaglest)