Cmake: Add build configuration for VS builds
* Build vs 2019 project using cmake. * Cmake configured to work in windows. Hopefully still works in linux too! * Update vcpkg install script. * Configures build for MG game release or debug mode. * Still need to fix building mapeditor and g3d viewer. * Remove CurlGetConfig.cmake (not needed!)
This commit is contained in:
parent
dd7139ee10
commit
1e8ff3642c
|
@ -1,4 +1,25 @@
|
|||
CMAKE_MINIMUM_REQUIRED( VERSION 2.8.2 )
|
||||
CMAKE_MINIMUM_REQUIRED( VERSION 3.20 )
|
||||
|
||||
IF(WIN32)
|
||||
STRING(SUBSTRING ${CMAKE_GENERATOR} 0 13 GENERATOR_TYPE)
|
||||
IF(GENERATOR_TYPE STREQUAL "Visual Studio")
|
||||
# This must be Set before "PROJECT()" is called.
|
||||
set(VCPKG_TARGET_TRIPLET "x64-windows-static")
|
||||
|
||||
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
|
||||
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT")
|
||||
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
|
||||
ADD_COMPILE_DEFINITIONS(UNICODE _UNICODE)
|
||||
|
||||
|
||||
SET(MEGAGLEST_DATA_INSTALL_PATH "${CMAKE_INSTALL_PREFIX}/" CACHE STRING "The installation path for data files ${COMMON_INFO_ABOUT_PATH}")
|
||||
SET(MEGAGLEST_INI_INSTALL_PATH "${MEGAGLEST_DATA_INSTALL_PATH}" CACHE STRING "Install path for ini files")
|
||||
|
||||
INCLUDE(FindPkgConfig)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
PROJECT( MegaGlest )
|
||||
|
||||
#SET(CMAKE_VERBOSE_MAKEFILE ON)
|
||||
|
@ -31,8 +52,8 @@ IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
|
|||
ENDIF()
|
||||
|
||||
OPTION(BUILD_MEGAGLEST_MODEL_IMPORT_EXPORT_TOOLS "Build model import/export tools" ON)
|
||||
OPTION(BUILD_MEGAGLEST_MODEL_VIEWER "Build model viewer" ON)
|
||||
OPTION(BUILD_MEGAGLEST_MAP_EDITOR "Build map editor" ON)
|
||||
OPTION(BUILD_MEGAGLEST_MODEL_VIEWER "Build model viewer" OFF)
|
||||
OPTION(BUILD_MEGAGLEST_MAP_EDITOR "Build map editor" OFF)
|
||||
OPTION(BUILD_MEGAGLEST "Build MegaGlest" ON)
|
||||
OPTION(BUILD_MEGAGLEST_TESTS "Build MegaGlest Unit Tests" OFF)
|
||||
OPTION(WANT_SINGLE_INSTALL_DIRECTORY "Use single install directory for everything. It is useful for example for MacOS cpack bundles." OFF)
|
||||
|
@ -368,33 +389,6 @@ ELSE()
|
|||
SET(MEGAGLEST_FRIENDLY_OUTPUT_PATH "${PROJECT_SOURCE_DIR}/data/glest_game/")
|
||||
ENDIF()
|
||||
|
||||
IF(WIN32)
|
||||
SET(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH}
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/lib
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/xerces-c-src_2_8_0/lib
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/wxWidgets-2.8.10/lib)
|
||||
|
||||
SET(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH}
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/include
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/openal-soft-1.12.854/include
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/openal-soft-1.12.854
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/xerces-c-src_2_8_0/include
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/libogg-1.2.1/include
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/lua-5.1/src
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/jpeg-8b
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/lpng141
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/zlib-1.2.5
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/curl-7.21.3/include
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/${SDL_WINDOWS_DIR_DINC}/include
|
||||
${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/Microsoft\ DirectX\ SDK \(November 2007\)/Include")
|
||||
include_directories(${PROJECT_SOURCE_DIR}/source/win32_deps/openal-soft-1.12.854/include)
|
||||
ENDIF()
|
||||
|
||||
# Check if sources exist
|
||||
IF(EXISTS "${PROJECT_SOURCE_DIR}/source/")
|
||||
MESSAGE(STATUS "**Found game source code.")
|
||||
|
|
|
@ -1,63 +0,0 @@
|
|||
#
|
||||
# Curl Get Config
|
||||
#
|
||||
# IF we are using a system that supports curl-config use it.
|
||||
#
|
||||
|
||||
IF(CURL_FOUND)
|
||||
IF(UNIX)
|
||||
IF(UNIX AND APPLE AND NOT CMAKE_CURL_CONFIG)
|
||||
FIND_PROGRAM(CMAKE_CURL_CONFIG curl-config
|
||||
PATHS /opt/local
|
||||
PATH_SUFFIXES bin NO_DEFAULT_PATH)
|
||||
ENDIF()
|
||||
IF(NOT CMAKE_CURL_CONFIG)
|
||||
FIND_PROGRAM(CMAKE_CURL_CONFIG curl-config
|
||||
PATHS
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/sw # Fink
|
||||
/opt/local # DarwinPorts
|
||||
/opt/csw # Blastwave
|
||||
/opt
|
||||
PATH_SUFFIXES bin)
|
||||
ENDIF()
|
||||
MARK_AS_ADVANCED(CMAKE_CURL_CONFIG)
|
||||
|
||||
IF(CMAKE_CURL_CONFIG)
|
||||
IF(STATIC_CURL)
|
||||
# run the curl-config program to get --static-libs
|
||||
execute_process(COMMAND ${CMAKE_CURL_CONFIG} --static-libs
|
||||
OUTPUT_VARIABLE CURL_STATIC_LIBS
|
||||
RESULT_VARIABLE RET
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
ELSE()
|
||||
SET(RET 1)
|
||||
ENDIF()
|
||||
|
||||
IF(RET EQUAL 0 AND CURL_STATIC_LIBS)
|
||||
MESSAGE(STATUS "curl-config: ${CMAKE_CURL_CONFIG}, #1 , using CURL static libs: [${CURL_STATIC_LIBS}]")
|
||||
SET(CURL_LIBRARIES "-Bstatic ${CURL_STATIC_LIBS}")
|
||||
ELSE()
|
||||
execute_process(COMMAND ${CMAKE_CURL_CONFIG} --libs
|
||||
OUTPUT_VARIABLE CURL_DYNAMIC_LIBS
|
||||
RESULT_VARIABLE RET2
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
|
||||
IF(RET2 EQUAL 0 AND CURL_DYNAMIC_LIBS)
|
||||
MESSAGE(STATUS "curl-config: ${CMAKE_CURL_CONFIG}, #2 RET = ${RET}, using CURL dynamic libs: ${CURL_DYNAMIC_LIBS}")
|
||||
SET(CURL_LIBRARIES "${CURL_DYNAMIC_LIBS}")
|
||||
ELSE()
|
||||
MESSAGE(STATUS "curl-config: ${CMAKE_CURL_CONFIG}, #3 RET = ${RET}/${RET2}, using CURL libs found by cmake: ${CURL_LIBRARIES}")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
IF(CURL_VERSION_STRING AND "${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()
|
|
@ -72,6 +72,8 @@ if (MINIUPNP_FOUND)
|
|||
|
||||
set(CMAKE_REQUIRED_INCLUDES ${MINIUPNP_INCLUDE_DIR})
|
||||
set(CMAKE_REQUIRED_LIBRARIES ${MINIUPNP_LIBRARY})
|
||||
|
||||
INCLUDE(CheckCXXSourceRuns)
|
||||
check_cxx_source_runs("
|
||||
#include <miniwget.h>
|
||||
#include <miniupnpc.h>
|
||||
|
@ -201,4 +203,3 @@ else ()
|
|||
endif ()
|
||||
|
||||
MARK_AS_ADVANCED(MINIUPNP_INCLUDE_DIR MINIUPNP_LIBRARY)
|
||||
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
DataPath=$APPLICATIONPATH\..\..\data\glest_game\
|
||||
DataPath=$APPLICATIONPATH\..\..\..\megaglest-data\
|
||||
ServerListPath=$APPLICATIONPATH\..\shared\
|
||||
GlestKeysIniPath=$APPLICATIONPATH\..\shared\
|
||||
|
|
|
@ -1 +1 @@
|
|||
.\vcpkg.exe install brotli:x64-windows-static bzip2:x64-windows-static curl:x64-windows-static expat:x64-windows-static freetype:x64-windows-static fribidi:x64-windows-static ftgl:x64-windows-static glew:x64-windows-static libiconv:x64-windows-static libjpeg-turbo:x64-windows-static liblzma:x64-windows-static libogg:x64-windows-static libpng:x64-windows-static libvorbis:x64-windows-static libxml2:x64-windows-static lua:x64-windows-static openal-soft:x64-windows-static opengl:x64-windows-static pkgconf:x64-windows-static sdl2:x64-windows-static sqlite3:x64-windows-static tiff:x64-windows-static tool-meson:x64-windows-static wxwidgets:x64-windows-static xerces-c:x64-windows-static zlib:x64-windows-static
|
||||
.\vcpkg.exe install brotli:x64-windows-static bzip2:x64-windows-static curl:x64-windows-static expat:x64-windows-static freetype:x64-windows-static fribidi:x64-windows-static ftgl:x64-windows-static glew:x64-windows-static libiconv:x64-windows-static libjpeg-turbo:x64-windows-static liblzma:x64-windows-static libogg:x64-windows-static libpng:x64-windows-static libvorbis:x64-windows-static libxml2:x64-windows-static lua:x64-windows-static openal-soft:x64-windows-static opengl:x64-windows-static miniupnpc:x64-windows-static sdl2:x64-windows-static sqlite3:x64-windows-static tiff:x64-windows-static tool-meson:x64-windows-static wxwidgets:x64-windows-static xerces-c:x64-windows-static zlib:x64-windows-static
|
||||
|
|
|
@ -62,7 +62,9 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER)
|
|||
MESSAGE(STATUS " wxWidgets: ${wxWidgets_INCLUDE_DIRS} ;/; ${wxWidgets_LIBRARIES}")
|
||||
ENDIF()
|
||||
|
||||
find_package(PkgConfig REQUIRED)
|
||||
IF(PKG_CONFIG_FOUND)
|
||||
find_package(PkgConfig REQUIRED)
|
||||
ENDIF()
|
||||
IF(FORCE_STREFLOP_SOFTWRAPPER)
|
||||
pkg_search_module(STREFLOP streflop-soft)
|
||||
ELSE()
|
||||
|
|
|
@ -92,7 +92,6 @@ IF(BUILD_MEGAGLEST)
|
|||
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)
|
||||
|
@ -139,7 +138,10 @@ IF(BUILD_MEGAGLEST)
|
|||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
find_package(PkgConfig REQUIRED)
|
||||
|
||||
IF(PKG_CONFIG_FOUND)
|
||||
find_package(PkgConfig REQUIRED)
|
||||
ENDIF()
|
||||
IF(FORCE_STREFLOP_SOFTWRAPPER)
|
||||
pkg_search_module(STREFLOP streflop-soft)
|
||||
ELSE()
|
||||
|
@ -261,7 +263,7 @@ IF(BUILD_MEGAGLEST)
|
|||
add_custom_target(run ALL DEPENDS mg.tmp)
|
||||
ENDIF()
|
||||
|
||||
IF(WIN32)
|
||||
IF(WIN32 AND NOT GENERATOR_TYPE STREQUAL "Visual Studio")
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,-subsystem,console -mconsole")
|
||||
ENDIF()
|
||||
|
||||
|
@ -294,7 +296,25 @@ IF(BUILD_MEGAGLEST)
|
|||
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)
|
||||
IF(VCPKG_TARGET_TRIPLET)
|
||||
TARGET_LINK_LIBRARIES(${TARGET_NAME} odbc32 wsock32 winspool winmm shell32 comctl32 advapi32 opengl32 glu32 ole32 oleaut32 uuid ddraw dsound dxguid ws2_32 iphlpapi gdi32 user32 kernel32 dbghelp shlwapi)
|
||||
find_package(Ogg CONFIG REQUIRED)
|
||||
find_package(Vorbis CONFIG REQUIRED)
|
||||
# find_package(ZLIB REQUIRED)
|
||||
# find_package(JPEG REQUIRED)
|
||||
find_package(libpng CONFIG REQUIRED)
|
||||
find_package(XercesC CONFIG REQUIRED)
|
||||
find_package(OpenAL CONFIG REQUIRED)
|
||||
# find_package(CURL CONFIG REQUIRED)
|
||||
find_package(SDL2 CONFIG REQUIRED)
|
||||
# include(FindLua)
|
||||
# find_package(Lua REQUIRED)
|
||||
# find_package(GLEW REQUIRED)
|
||||
find_package(FTGL CONFIG REQUIRED)
|
||||
TARGET_LINK_LIBRARIES(${TARGET_NAME} Ogg::ogg Vorbis::vorbis Vorbis::vorbisenc Vorbis::vorbisfile ZLIB::ZLIB ${JPEG_LIBRARIES} png_static xerces_xerces-c XercesC::XercesC OpenAL::OpenAL CURL::libcurl SDL2::SDL2main SDL2::SDL2-static ${LUA_LIBRARIES} ${MG_STREFLOP} libmegaglest GLEW::GLEW ftgl)
|
||||
ELSE()
|
||||
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()
|
||||
ENDIF()
|
||||
|
||||
IF(NOT WIN32)
|
||||
|
|
|
@ -290,7 +290,7 @@ static void cleanupProcessObjects() {
|
|||
CacheManager::cleanupMutexes();
|
||||
}
|
||||
|
||||
#if defined(WIN32) && !defined(_DEBUG) && !defined(__GNUC__)
|
||||
#if defined(WIN32) && !defined(__GNUC__)
|
||||
void fatal(const char *s, ...) // failure exit
|
||||
{
|
||||
static int errors = 0;
|
||||
|
|
|
@ -79,7 +79,9 @@ IF(BUILD_MEGAGLEST_MAP_EDITOR)
|
|||
link_directories(${PROJECT_SOURCE_DIR}/source/win32_deps/xerces-c-src_2_8_0/lib)
|
||||
ENDIF()
|
||||
|
||||
find_package(PkgConfig REQUIRED)
|
||||
IF(PKG_CONFIG_FOUND)
|
||||
find_package(PkgConfig REQUIRED)
|
||||
ENDIF()
|
||||
IF(FORCE_STREFLOP_SOFTWRAPPER)
|
||||
pkg_search_module(STREFLOP streflop-soft)
|
||||
ELSE()
|
||||
|
|
|
@ -4,7 +4,10 @@
|
|||
OPTION(FORCE_EMBEDDED_LIBS "Force use of embedded libraries' code." OFF)
|
||||
|
||||
# IMPORTANT: should come BEFORE finding packages
|
||||
find_package(PkgConfig REQUIRED)
|
||||
IF(PKG_CONFIG_FOUND)
|
||||
find_package(PkgConfig REQUIRED)
|
||||
ENDIF()
|
||||
|
||||
IF(FORCE_STREFLOP_SOFTWRAPPER)
|
||||
pkg_search_module(STREFLOP streflop-soft)
|
||||
ELSE()
|
||||
|
@ -30,6 +33,9 @@ ENDIF()
|
|||
|
||||
IF(WANT_USE_STREFLOP)
|
||||
IF(NOT STREFLOP_FOUND)
|
||||
IF(WIN32 AND GENERATOR_TYPE STREQUAL "Visual Studio")
|
||||
ADD_COMPILE_DEFINITIONS(STREFLOP_SSE LIBM_COMPILING_FLT32)
|
||||
ENDIF()
|
||||
ADD_SUBDIRECTORY(sources/streflop)
|
||||
ELSE()
|
||||
INCLUDE_DIRECTORIES(${STREFLOP_INCLUDE_DIRS} ${STREFLOP_INCLUDE_DIRS}/streflop)
|
||||
|
@ -51,29 +57,31 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
|
|||
INCLUDE (CheckIncludeFiles)
|
||||
|
||||
IF(WIN32)
|
||||
SET(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH}
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/lib
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/xerces-c-src_2_8_0/lib
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/wxWidgets-2.8.10/lib)
|
||||
IF(NOT VCPKG_TARGET_TRIPLET)
|
||||
SET(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH}
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/lib
|
||||
${PROJECT_SOURCE_DIR}/source/win32_deps/xerces-c-src_2_8_0/lib
|
||||
${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/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_WINDOWS_DIR_DINC}/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/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_WINDOWS_DIR_DINC}/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/win32_deps/include)
|
||||
ENDIF()
|
||||
INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/source/shared_lib/include/platform/posix)
|
||||
INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/source/shared_lib/include/platform/win32)
|
||||
ENDIF()
|
||||
|
@ -88,7 +96,6 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
|
|||
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)
|
||||
|
@ -118,13 +125,13 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
|
|||
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${X11_LIBRARIES})
|
||||
ENDIF()
|
||||
|
||||
IF(WANT_USE_XercesC)
|
||||
FIND_PACKAGE(XercesC REQUIRED)
|
||||
INCLUDE_DIRECTORIES(${XERCESC_INCLUDE_DIR})
|
||||
IF(UNIX)
|
||||
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${XERCESC_LIBRARY})
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
IF(WANT_USE_XercesC)
|
||||
FIND_PACKAGE(XercesC REQUIRED)
|
||||
INCLUDE_DIRECTORIES(${XERCESC_INCLUDE_DIR})
|
||||
IF(UNIX)
|
||||
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${XERCESC_LIBRARY})
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
FIND_PACKAGE(OpenAL REQUIRED)
|
||||
INCLUDE_DIRECTORIES(${OPENAL_INCLUDE_DIR})
|
||||
|
@ -132,11 +139,11 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
|
|||
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OPENAL_LIBRARY})
|
||||
ENDIF()
|
||||
|
||||
FIND_PACKAGE(LUA REQUIRED)
|
||||
INCLUDE_DIRECTORIES(${LUA_INCLUDE_DIR})
|
||||
IF(UNIX)
|
||||
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${LUA_LIBRARIES} ${CMAKE_DL_LIBS})
|
||||
ENDIF()
|
||||
FIND_PACKAGE(LUA REQUIRED)
|
||||
INCLUDE_DIRECTORIES(${LUA_INCLUDE_DIR})
|
||||
IF(UNIX)
|
||||
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${LUA_LIBRARIES} ${CMAKE_DL_LIBS})
|
||||
ENDIF()
|
||||
|
||||
FIND_PACKAGE(JPEG REQUIRED)
|
||||
INCLUDE_DIRECTORIES(${JPEG_INCLUDE_DIR})
|
||||
|
@ -150,7 +157,7 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
|
|||
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${PNG_LIBRARY})
|
||||
ENDIF()
|
||||
|
||||
OPTION(WANT_USE_FontConfig "use the library fontconfig" ON)
|
||||
OPTION(WANT_USE_FontConfig "use the library fontconfig" ON)
|
||||
IF(WANT_USE_FontConfig)
|
||||
FIND_PACKAGE(FontConfig)
|
||||
IF(FONTCONFIG_FOUND)
|
||||
|
@ -291,23 +298,25 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
|
|||
FIND_PACKAGE(Miniupnpc)
|
||||
ENDIF()
|
||||
|
||||
if(NOT MINIUPNP_FOUND)
|
||||
if(NOT MINIUPNP_FOUND OR GENERATOR_TYPE STREQUAL "Visual Studio")
|
||||
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")
|
||||
endif()
|
||||
|
||||
if (NOT WIN32)
|
||||
add_definitions (-DMINIUPNPC_SET_SOCKET_TIMEOUT)
|
||||
add_definitions (-D_BSD_SOURCE)
|
||||
if (NOT WIN32)
|
||||
add_definitions (-DMINIUPNPC_SET_SOCKET_TIMEOUT)
|
||||
add_definitions (-D_BSD_SOURCE)
|
||||
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
add_definitions (-DMACOSX -D_DARWIN_C_SOURCE)
|
||||
else()
|
||||
add_definitions (-D_POSIX_C_SOURCE=200809L)
|
||||
endif ()
|
||||
endif()
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
add_definitions (-DMACOSX -D_DARWIN_C_SOURCE)
|
||||
else()
|
||||
add_definitions (-D_POSIX_C_SOURCE=200809L)
|
||||
endif ()
|
||||
ELSEIF(GENERATOR_TYPE STREQUAL "Visual Studio")
|
||||
ADD_COMPILE_DEFINITIONS(MINIUPNP_STATICLIB)
|
||||
endif()
|
||||
|
||||
SET(DIRS_WITH_SRC ${DIRS_WITH_SRC} platform/miniupnpc)
|
||||
else()
|
||||
|
@ -425,7 +434,6 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
|
|||
SET(MG_SOURCE_FILES ${MG_SOURCE_FILES} ${PROJECT_SOURCE_DIR}/source/shared_lib/sources/platform/${SDL_VERSION_SNAME}/thread.cpp)
|
||||
SET(MG_SOURCE_FILES ${MG_SOURCE_FILES} ${PROJECT_SOURCE_DIR}/source/shared_lib/sources/platform/${SDL_VERSION_SNAME}/window.cpp)
|
||||
SET(MG_SOURCE_FILES ${MG_SOURCE_FILES} ${PROJECT_SOURCE_DIR}/source/shared_lib/sources/platform/${SDL_VERSION_SNAME}/window_gl.cpp)
|
||||
SET(MG_SOURCE_FILES ${MG_SOURCE_FILES} ${PROJECT_SOURCE_DIR}/source/win32_deps/src/glprocs.c)
|
||||
ENDIF()
|
||||
|
||||
FOREACH(DIR IN LISTS DIRS_WITH_SRC)
|
||||
|
@ -496,7 +504,25 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
|
|||
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(VCPKG_TARGET_TRIPLET)
|
||||
TARGET_LINK_LIBRARIES(${TARGET_NAME} odbc32 wsock32 winspool winmm shell32 comctl32 advapi32 opengl32 glu32 ole32 oleaut32 uuid ddraw dsound dxguid ws2_32 iphlpapi user32 kernel32 dbghelp shlwapi)
|
||||
find_package(Ogg CONFIG REQUIRED)
|
||||
find_package(Vorbis CONFIG REQUIRED)
|
||||
# find_package(ZLIB REQUIRED)
|
||||
# find_package(JPEG REQUIRED)
|
||||
find_package(libpng CONFIG REQUIRED)
|
||||
find_package(XercesC CONFIG REQUIRED)
|
||||
find_package(OpenAL CONFIG REQUIRED)
|
||||
# find_package(CURL CONFIG REQUIRED)
|
||||
find_package(SDL2 CONFIG REQUIRED)
|
||||
# include(FindLua)
|
||||
# find_package(Lua REQUIRED)
|
||||
# find_package(GLEW REQUIRED)
|
||||
find_package(FTGL CONFIG REQUIRED)
|
||||
TARGET_LINK_LIBRARIES(${TARGET_NAME} Ogg::ogg Vorbis::vorbis Vorbis::vorbisenc Vorbis::vorbisfile ZLIB::ZLIB ${JPEG_LIBRARIES} png_static xerces_xerces-c XercesC::XercesC OpenAL::OpenAL CURL::libcurl gdi32 SDL2::SDL2main SDL2::SDL2-static ${LUA_LIBRARIES} ${MG_STREFLOP} GLEW::GLEW ftgl)
|
||||
ELSE()
|
||||
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)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
IF(WANT_USE_STREFLOP AND NOT STREFLOP_FOUND)
|
||||
|
|
|
@ -112,7 +112,7 @@ void ontop_win32(int width, int height);
|
|||
void CheckPacketThrottling();
|
||||
|
||||
// The following is used for stacking tracing for windows based exceptions
|
||||
#if !defined(_DEBUG) && !defined(__GNUC__)
|
||||
#if !defined(__GNUC__)
|
||||
|
||||
// easy safe strings
|
||||
#define MAXSTRLEN 260
|
||||
|
|
|
@ -16,9 +16,6 @@
|
|||
#include "conversion.h"
|
||||
#include <algorithm>
|
||||
#include "util.h"
|
||||
#ifdef WIN32
|
||||
#include "glext.h"
|
||||
#endif
|
||||
|
||||
#include "leak_dumper.h"
|
||||
|
||||
|
|
Loading…
Reference in New Issue