@@ -112,7 +112,9 @@ set(DS_USE_DEBUG_BREAK ON)
112112add_subdirectory ("${CMAKE_CURRENT_LIST_DIR} /External/DSResult" )
113113
114114set (BUILD_TESTING ON )
115- add_subdirectory ("${CMAKE_CURRENT_LIST_DIR} /External/libyaml" )
115+ # add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/External/libyaml")
116+ add_library (libyaml INTERFACE )
117+ target_include_directories (libyaml INTERFACE "${CMAKE_CURRENT_LIST_DIR} /External/libyaml/include" )
116118set (BUILD_TESTING OFF )
117119
118120# NOTE: Just include the file. Can't add subdirectory since it install stuff
@@ -123,7 +125,7 @@ target_include_directories( string-view-lite INTERFACE
123125
124126# Copy cfgpath.h
125127configure_file ( "${CMAKE_CURRENT_LIST_DIR} /External/cfgpath/cfgpath.h"
126- "${CMAKE_CURRENT_LIST_DIR} /Include /cfgpath.h" COPYONLY )
128+ "${CMAKE_CURRENT_LIST_DIR} /Src /cfgpath.h" COPYONLY )
127129
128130add_subdirectory ("${CMAKE_CURRENT_LIST_DIR} /External/CppOverride" )
129131
@@ -177,49 +179,21 @@ endif()
177179# runcpp2 library
178180# =========================================================================
179181
180- set (RUNCPP2_SOURCE_FILES "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/Profile.cpp"
181- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/DependencyInfo.cpp"
182- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/DependencyLinkProperty.cpp"
183- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/DependencySource.cpp"
184- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/GitSource.cpp"
185- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/LocalSource.cpp"
186- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/FileProperties.cpp"
187- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/FlagsOverrideInfo.cpp"
188- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/ProfilesCommands.cpp"
189- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/ProfilesFlagsOverride.cpp"
190- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/ScriptInfo.cpp"
191- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/ProfilesProcessPaths.cpp"
192- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/FilesTypesInfo.cpp"
193- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/StageInfo.cpp"
194- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/ProfilesDefines.cpp"
195- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/FilesToCopyInfo.cpp"
196- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/Data/BuildTypeHelper.cpp"
197- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/ProfileHelper.cpp"
198- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/CompilingLinking.cpp"
199- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/ConfigParsing.cpp"
200- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/DefaultYAMLs.c"
201- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/DependenciesHelper.cpp"
202- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/ParseUtil.cpp"
203- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/PlatformUtil.cpp"
204- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/StringUtil.cpp"
205- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/runcpp2.cpp"
206- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/BuildsManager.cpp"
207- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/PipelineSteps.cpp"
208- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/IncludeManager.cpp"
209- "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/LibYAML_Wrapper.cpp" )
210-
211- add_library (runcpp2Lib STATIC ${RUNCPP2_SOURCE_FILES} )
182+ set (RUNCPP2_SOURCE_FILES "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/runcpp2.cpp" )
183+
184+ # add_library(runcpp2Lib STATIC ${RUNCPP2_SOURCE_FILES})
185+ add_library (runcpp2Lib INTERFACE )
212186
213187set (RUNCPP2_PRIVATE_LINK_LIBS ssLogger System2 CppOverride dylib)
214- set (RUNCPP2_PUBLIC_LINK_LIBS ghc_filesystem mpark_variant MacroPowerToys string -view-lite yaml DSResult)
188+ set (RUNCPP2_PUBLIC_LINK_LIBS ghc_filesystem mpark_variant MacroPowerToys string -view-lite libyaml DSResult)
189+ target_include_directories (runcpp2Lib INTERFACE "${CMAKE_CURRENT_LIST_DIR} /Src" )
190+ target_link_libraries (runcpp2Lib INTERFACE ${RUNCPP2_PRIVATE_LINK_LIBS} )
191+ target_link_libraries (runcpp2Lib INTERFACE ${RUNCPP2_PUBLIC_LINK_LIBS} )
215192
216- target_include_directories (runcpp2Lib PUBLIC "${CMAKE_CURRENT_LIST_DIR} /Include" )
217- target_link_libraries (runcpp2Lib PRIVATE ${RUNCPP2_PRIVATE_LINK_LIBS} )
218- target_link_libraries (runcpp2Lib PUBLIC ${RUNCPP2_PUBLIC_LINK_LIBS} )
219193
220194if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC" )
221195 # TODO: Try to change to /Wall
222- set (RUNCPP2_STANDARD_COMPILE_FLAGS "/utf-8;/W1;/DGHC_WIN_DISABLE_WSTRING_STORAGE_TYPE=1" )
196+ set (RUNCPP2_STANDARD_COMPILE_FLAGS "/utf-8;/W1;/DGHC_WIN_DISABLE_WSTRING_STORAGE_TYPE=1;/bigobj " )
223197 if (RUNCPP2_WARNINGS_AS_ERRORS)
224198 list (APPEND RUNCPP2_STANDARD_COMPILE_FLAGS "/WX" )
225199 endif ()
@@ -233,42 +207,33 @@ else()
233207 #"-Wno-unused-but-set-variable"
234208 "-Wno-unused-parameter"
235209 "-Wno-switch"
236- "-Wno-gnu-zero-variadic-macro-arguments"
210+ # "-Wno-gnu-zero-variadic-macro-arguments"
237211 "-Wextra"
238212 "-Wpedantic" )
239213 if (RUNCPP2_WARNINGS_AS_ERRORS)
240214 list (APPEND RUNCPP2_STANDARD_COMPILE_FLAGS "-Werror" )
241215 endif ()
242216endif ()
243217
244- target_compile_options (runcpp2Lib PRIVATE "${RUNCPP2_STANDARD_COMPILE_FLAGS} " )
218+ target_compile_options (runcpp2Lib INTERFACE "${RUNCPP2_STANDARD_COMPILE_FLAGS} " )
245219
246220# Define the runcpp2 and default config version macro
247- target_compile_definitions (runcpp2Lib PUBLIC RUNCPP2_VERSION= "${RUNCPP2_PROJECT_VERSION} "
248- RUNCPP2_CONFIG_VERSION=${RUNCPP2_CONFIG_VERSION} )
221+ target_compile_definitions (runcpp2Lib INTERFACE RUNCPP2_VERSION= "${RUNCPP2_PROJECT_VERSION} "
222+ RUNCPP2_CONFIG_VERSION=${RUNCPP2_CONFIG_VERSION}
223+ YAML_DECLARE_STATIC=1 )
249224
250225# =========================================================================
251226# runcpp2 executable
252227# =========================================================================
253228
254229add_executable (runcpp2 "${CMAKE_CURRENT_LIST_DIR} /Src/runcpp2/main.cpp" )
255- target_compile_options (runcpp2 PRIVATE "${RUNCPP2_STANDARD_COMPILE_FLAGS} " )
256- target_link_libraries (runcpp2 PUBLIC runcpp2Lib ssLogger )
230+ target_link_libraries (runcpp2 PUBLIC runcpp2Lib )
257231
258232# =========================================================================
259233# runcpp2 library override
260234# =========================================================================
261235
262236if (RUNCPP2_BUILD_TESTS)
263- add_library (runcpp2Override STATIC ${RUNCPP2_SOURCE_FILES} )
264- target_include_directories (runcpp2Override PUBLIC "${CMAKE_CURRENT_LIST_DIR} /Include" )
265- target_link_libraries (runcpp2Override PRIVATE ${RUNCPP2_PRIVATE_LINK_LIBS} )
266- target_link_libraries (runcpp2Override PUBLIC ${RUNCPP2_PUBLIC_LINK_LIBS} )
267- target_compile_options (runcpp2Override PRIVATE "${RUNCPP2_STANDARD_COMPILE_FLAGS} " )
268- target_compile_definitions ( runcpp2Override PUBLIC
269- RUNCPP2_VERSION= "${RUNCPP2_PROJECT_VERSION} "
270- RUNCPP2_CONFIG_VERSION=${RUNCPP2_CONFIG_VERSION}
271- INTERNAL_RUNCPP2_UNIT_TESTS=1 )
272237 add_subdirectory ("${CMAKE_CURRENT_LIST_DIR} /Src/Tests" )
273238endif ()
274239
0 commit comments