mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-11 21:01:29 +00:00
CMake will fetch visual studio dependencies automatically now
This commit is contained in:
parent
5a852d4780
commit
9520499103
@ -43,6 +43,11 @@ ADD_DEFINITIONS(-DGLM_FORCE_RADIANS)
|
||||
ADD_DEFINITIONS(-DGLM_FORCE_CTOR_INIT)
|
||||
ADD_DEFINITIONS(-DGLM_ENABLE_EXPERIMENTAL)
|
||||
|
||||
#MSVC can fetch dependencies automatically.
|
||||
IF(MSVC)
|
||||
INCLUDE("${CMAKE_SOURCE_DIR}/cmake/DependencyHelperMSVC.cmake")
|
||||
ENDIF()
|
||||
|
||||
#Find everything we need
|
||||
FIND_PACKAGE(Boost REQUIRED)
|
||||
FIND_PACKAGE(MySQL)
|
||||
@ -346,8 +351,6 @@ IF(EQEMU_BUILD_SERVER OR EQEMU_BUILD_LOGIN OR EQEMU_BUILD_TESTS OR EQEMU_BUILD_H
|
||||
ADD_SUBDIRECTORY(submodules/recastnavigation)
|
||||
ENDIF(EQEMU_BUILD_SERVER OR EQEMU_BUILD_LOGIN OR EQEMU_BUILD_TESTS OR EQEMU_BUILD_HC)
|
||||
|
||||
MESSAGE(STATUS "Libs: ${SERVER_LIBS}")
|
||||
|
||||
IF(EQEMU_BUILD_SERVER)
|
||||
ADD_SUBDIRECTORY(shared_memory)
|
||||
ADD_SUBDIRECTORY(world)
|
||||
|
||||
47
cmake/DependencyHelperMSVC.cmake
Normal file
47
cmake/DependencyHelperMSVC.cmake
Normal file
@ -0,0 +1,47 @@
|
||||
OPTION(EQEMU_FETCH_MSVC_DEPENDENCIES "Automatically fetch vcpkg dependencies for MSCV" ON)
|
||||
MARK_AS_ADVANCED(EQEMU_FETCH_MSVC_DEPENDENCIES)
|
||||
|
||||
SET(EQEMU_MSVC_DEPENDENCIES_VCPKG_X86 "https://github.com/EQEmu/Server/releases/download/v1.2/vcpkg-export-x86.zip" CACHE STRING "The location that windows x86 dependencies will be pulled from.")
|
||||
SET(EQEMU_MSVC_DEPENDENCIES_VCPKG_X64 "https://github.com/EQEmu/Server/releases/download/v1.2/vcpkg-export-x64.zip" CACHE STRING "The location that windows x64 dependencies will be pulled from.")
|
||||
|
||||
MARK_AS_ADVANCED(EQEMU_WINDOWS_DEPENDENCIES_X86)
|
||||
MARK_AS_ADVANCED(EQEMU_WINDOWS_DEPENDENCIES_X64)
|
||||
|
||||
IF(EQEMU_FETCH_MSVC_DEPENDENCIES AND NOT DEFINED VCPKG_TARGET_TRIPLET)
|
||||
MESSAGE(STATUS "No existing vcpkg found for MSVC")
|
||||
MESSAGE(STATUS "Downloading existing dependencies from releases...")
|
||||
|
||||
IF(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
SET(DEP_URL ${EQEMU_MSVC_DEPENDENCIES_VCPKG_X64})
|
||||
ELSE()
|
||||
SET(DEP_URL ${EQEMU_MSVC_DEPENDENCIES_VCPKG_X86})
|
||||
ENDIF()
|
||||
|
||||
EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E remove_directory ${PROJECT_SOURCE_DIR}/vcpkg/vcpkg-export-20180828-145455)
|
||||
EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E remove_directory ${PROJECT_SOURCE_DIR}/vcpkg/vcpkg-export-20180828-145854)
|
||||
EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E remove_directory ${PROJECT_SOURCE_DIR}/vcpkg)
|
||||
EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_SOURCE_DIR}/vcpkg)
|
||||
|
||||
FILE(DOWNLOAD ${DEP_URL} ${PROJECT_SOURCE_DIR}/vcpkg/vcpkg.zip
|
||||
SHOW_PROGRESS
|
||||
STATUS DOWNLOAD_STATUS)
|
||||
|
||||
LIST(GET DOWNLOAD_STATUS 0 STATUS_CODE)
|
||||
IF(NOT STATUS_CODE EQUAL 0)
|
||||
MESSAGE(FATAL_ERROR "Was unable to download dependencies from ${DEP_URL}")
|
||||
ENDIF()
|
||||
|
||||
MESSAGE(STATUS "Extracting files")
|
||||
EXECUTE_PROCESS(
|
||||
COMMAND ${CMAKE_COMMAND} -E tar xzf ${PROJECT_SOURCE_DIR}/vcpkg/vcpkg.zip
|
||||
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/vcpkg
|
||||
)
|
||||
|
||||
IF(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
INCLUDE("${PROJECT_SOURCE_DIR}/vcpkg/vcpkg-export-20180828-145455/scripts/buildsystems/vcpkg.cmake")
|
||||
ELSE()
|
||||
INCLUDE("${PROJECT_SOURCE_DIR}/vcpkg/vcpkg-export-20180828-145854/scripts/buildsystems/vcpkg.cmake")
|
||||
ENDIF()
|
||||
|
||||
#TODO: Perl, will be more complicated
|
||||
ENDIF()
|
||||
Loading…
x
Reference in New Issue
Block a user