Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 24 additions & 6 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,12 +1,17 @@
CMAKE_MINIMUM_REQUIRED(VERSION 3.14)
SET(CMAKE_TOOLCHAIN_FILE ${CMAKE_CURRENT_SOURCE_DIR}/vcpkg/scripts/buildsystems/vcpkg.cmake)
SET(VCPKG_TARGET_TRIPLET "x86-windows-static" CACHE STRING "")

PROJECT(vACDM VERSION "1.3.3")
PROJECT(vACDM VERSION "1.4.0")
SET_PROPERTY(GLOBAL PROPERTY USE_FOLDERS ON)
SET(CMAKE_CXX_STANDARD 20)
SET(CMAKE_CXX_STANDARD_REQUIRED ON)
SET(CMAKE_CXX_EXTENSIONS OFF)
SET(CMAKE_INTERPROCEDURAL_OPTIMIZATION_RELEASE TRUE)

# Use static runtime libraries
SET(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")

IF (MSVC)
IF (CMAKE_CXX_FLAGS MATCHES "/W[0-4]")
STRING(REGEX REPLACE "/W[0-4]" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
Expand All @@ -22,6 +27,12 @@ IF (MSVC)
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /sdl /permissive- /DNOMINMAX")
SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /MANIFESTUAC:NO /ignore:4099")
ADD_DEFINITIONS(/D_USRDLL)

FOREACH(flag_var CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE)
IF(${flag_var} MATCHES "/MD")
STRING(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
ENDIF()
ENDFOREACH()
ENDIF ()

if(DEV_BUILD)
Expand Down Expand Up @@ -53,6 +64,7 @@ ADD_DEFINITIONS(
-DSQLITE_DEFAULT_WAL_SYNCHRONOUS=0
-DSQLITE_WIN32_MALLOC
-DSQLITE_THREADSAFE=0
-DWIN32_LEAN_AND_MEAN
)

SET(SOURCE_FILES
Expand All @@ -73,17 +85,23 @@ SET(SOURCE_FILES
)


FIND_PACKAGE(CURL CONFIG REQUIRED)
FIND_PACKAGE(OpenSSL CONFIG REQUIRED)
FIND_PACKAGE(httplib CONFIG REQUIRED)
FIND_PACKAGE(nlohmann_json CONFIG REQUIRED)
FIND_PACKAGE(GeographicLib CONFIG REQUIRED)

ADD_LIBRARY(${PROJECT_NAME} SHARED ${SOURCE_FILES})
TARGET_LINK_LIBRARIES(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/external/lib/EuroScopePlugInDLL.lib crypt32.lib ws2_32.lib Shlwapi.lib)

TARGET_LINK_LIBRARIES(${PROJECT_NAME} PRIVATE
CURL::libcurl
${CMAKE_SOURCE_DIR}/external/lib/EuroScopePlugInDLL.lib
OpenSSL::SSL OpenSSL::Crypto
httplib::httplib
nlohmann_json::nlohmann_json
${GeographicLib_LIBRARIES}
crypt32.lib ws2_32.lib Shlwapi.lib
)

TARGET_LINK_LIBRARIES(${PROJECT_NAME} PRIVATE
debug ${CMAKE_SOURCE_DIR}/external/lib/GeographicLib_d.lib
optimized ${CMAKE_SOURCE_DIR}/external/lib/GeographicLib.lib
)

# move config file to output dir, allows loading of DLL from output dir
Expand Down
Binary file added external/lib/GeographicLib.lib
Binary file not shown.
Binary file added external/lib/GeographicLib_d.lib
Binary file not shown.
Loading
Loading