Skip to content

Commit c452501

Browse files
committed
Replace FetchContent with vendored cxxopts header
Changes: - Remove FetchContent dependency for cxxopts - Add cxxopts.hpp (v3.2.1) directly to include/ directory - Simplify CMakeLists.txt by removing FetchContent setup - No internet connection required for build Benefits: - Faster builds (no git clone during configure) - Reproducible builds (exact version committed) - Offline development support - Simpler CMake configuration
1 parent 0f08b60 commit c452501

2 files changed

Lines changed: 2879 additions & 11 deletions

File tree

CMakeLists.txt

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,6 @@ set(CMAKE_CXX_STANDARD 11)
55
set(CMAKE_CXX_STANDARD_REQUIRED ON)
66
set(CMAKE_CXX_EXTENSIONS OFF)
77

8-
include(FetchContent)
9-
10-
# Fetch cxxopts
11-
FetchContent_Declare(
12-
cxxopts
13-
GIT_REPOSITORY https://github.com/jarro2783/cxxopts.git
14-
GIT_TAG v3.2.1
15-
)
16-
FetchContent_MakeAvailable(cxxopts)
17-
188
add_subdirectory(Neptune)
199
add_subdirectory(NThread)
2010
add_subdirectory(NThreadOSUtils)
@@ -30,7 +20,7 @@ set(EXECUTABLE_NAME "${PROJECT_NAME_LOWER}-${PROJECT_VERSION}")
3020

3121
add_executable(${EXECUTABLE_NAME} ${GHOSTINJECTOR_SOURCES})
3222
target_include_directories(${EXECUTABLE_NAME} PRIVATE ${GHOSTINJECTOR_INCLUDE_DIR})
33-
target_link_libraries(${EXECUTABLE_NAME} PRIVATE NThreadOSUtils cxxopts)
23+
target_link_libraries(${EXECUTABLE_NAME} PRIVATE NThreadOSUtils)
3424

3525
# Dynamic linking - will use MSVC runtime DLLs (msvcp140.dll, vcruntime140.dll)
3626
# Removed: -static -static-libgcc -static-libstdc++

0 commit comments

Comments
 (0)