Compare commits
2 commits
a5cacb38c2
...
f666903a88
Author | SHA1 | Date | |
---|---|---|---|
f666903a88 | |||
1d75b2ac0f |
4 changed files with 25 additions and 18 deletions
|
@ -8,6 +8,7 @@ set(CMAKE_C_STANDARD 99)
|
|||
set(CMAKE_C_STANDARD_REQUIRED ON)
|
||||
|
||||
# Dependencies
|
||||
set(CMAKE_TLS_VERIFY FALSE) # Custom TLS/Proxy sometimes does not enable download
|
||||
include(dependencies.cmake)
|
||||
|
||||
# Game source files
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
|
||||
Here is an example of the cmake fetch if the `find_package()` cannot be used. Fetch is useful when building custom version of popular libraries.
|
||||
|
|
|
@ -1,16 +1,15 @@
|
|||
cmake_minimum_required(VERSION 3.11)
|
||||
|
||||
# Poco
|
||||
set(ENABLE_MONGODB OFF)
|
||||
set(ENABLE_REDIS OFF)
|
||||
set(ENABLE_DATA_SQLITE OFF)
|
||||
set(ENABLE_DATA_MYSQL OFF)
|
||||
set(ENABLE_DATA_ODBC OFF)
|
||||
set(ENABLE_ZIP OFF)
|
||||
set(ENABLE_PAGECOMPILER OFF) # Disable PageCompiler (unused binary)
|
||||
set(ENABLE_PAGECOMPILER_FILE2PAGE OFF) # Disable File2Page (unused binary)
|
||||
# Will maybe change later, for now we want the lib to be static.
|
||||
set(POCO_STATIC ON)
|
||||
set(ENABLE_MONGODB OFF CACHE BOOL "Disable MongoDB support" FORCE)
|
||||
set(ENABLE_REDIS OFF CACHE BOOL "Disable Redis support" FORCE)
|
||||
set(ENABLE_DATA_SQLITE OFF CACHE BOOL "Disable SQLite support" FORCE)
|
||||
set(ENABLE_DATA_MYSQL OFF CACHE BOOL "Disable MySQL support" FORCE)
|
||||
set(ENABLE_DATA_ODBC OFF CACHE BOOL "Disable ODBC support" FORCE)
|
||||
set(ENABLE_ZIP OFF CACHE BOOL "Disable Zip support" FORCE)
|
||||
set(ENABLE_PAGECOMPILER OFF CACHE BOOL "Disable PageCompiler support" FORCE)
|
||||
set(ENABLE_PAGECOMPILER_FILE2PAGE OFF CACHE BOOL "Disable File2Page support" FORCE)
|
||||
set(POCO_STATIC ON CACHE BOOL "Build Poco as static libraries" FORCE)
|
||||
|
||||
find_package(Poco QUIET)
|
||||
if (NOT Poco_FOUND)
|
||||
|
@ -21,7 +20,11 @@ if (NOT Poco_FOUND)
|
|||
URL https://github.com/pocoproject/poco/archive/refs/tags/poco-1.9.4-release.tar.gz
|
||||
)
|
||||
FetchContent_GetProperties(Poco)
|
||||
FetchContent_MakeAvailable(Poco)
|
||||
if (NOT Poco_POPULATED)
|
||||
set(FETCHCONTENT_QUIET NO)
|
||||
FetchContent_MakeAvailable(Poco)
|
||||
endif()
|
||||
|
||||
set(Poco_INCLUDE_DIRS
|
||||
"${poco_SOURCE_DIR}/Foundation/include"
|
||||
"${poco_SOURCE_DIR}/Encodings/include"
|
||||
|
@ -34,8 +37,8 @@ if (NOT Poco_FOUND)
|
|||
endif()
|
||||
|
||||
# LibXML2
|
||||
set(LIBXML2_WITH_PROGRAMS OFF) # Disable programs
|
||||
set(LIBXML2_WITH_TESTS OFF) # Disable tests
|
||||
set(LIBXML2_WITH_PROGRAMS OFF)
|
||||
set(LIBXML2_WITH_TESTS OFF)
|
||||
# Disabling every dependencies to build libxml2
|
||||
set(LIBXML2_WITH_PYTHON OFF)
|
||||
set(LIBXML2_WITH_ICONV OFF)
|
||||
|
@ -45,7 +48,7 @@ set(LIBXML2_WITH_ZLIB OFF)
|
|||
set(BUILD_SHARED_LIBS OFF)
|
||||
|
||||
find_package(libxml2 QUIET)
|
||||
if (NOT (libxml2_FOUND OR LIBXML2_FOUND))
|
||||
if (NOT libxml2_FOUND)
|
||||
include(FetchContent)
|
||||
FetchContent_Declare(
|
||||
libxml2
|
||||
|
@ -53,10 +56,13 @@ if (NOT (libxml2_FOUND OR LIBXML2_FOUND))
|
|||
GIT_TAG v2.12.6
|
||||
)
|
||||
FetchContent_GetProperties(libxml2)
|
||||
FetchContent_MakeAvailable(libxml2)
|
||||
if (NOT libxml2_POPULATED)
|
||||
set(FETCHCONTENT_QUIET NO)
|
||||
FetchContent_MakeAvailable(libxml2)
|
||||
endif()
|
||||
|
||||
set(LIBXML2_INCLUDE_DIR
|
||||
"${libxml2_SOURCE_DIR}/include"
|
||||
"${libxml2_BINARY_DIR}"
|
||||
)
|
||||
set(LIBXML2_LIBRARY "${libxml2_BINARY_DIR}/libxml2.a")
|
||||
endif()
|
||||
|
|
|
@ -24,7 +24,7 @@ target_include_directories(${TARGET} PRIVATE "${Poco_INCLUDE_DIRS}")
|
|||
# Libraries
|
||||
target_link_libraries(
|
||||
${TARGET} PRIVATE
|
||||
${LIBXML2_LIBRARY}
|
||||
LibXml2
|
||||
PocoFoundation
|
||||
PocoUtil
|
||||
PocoNet
|
||||
|
|
Loading…
Add table
Reference in a new issue