From f748984e9a24b6f3319f8ff5470dab589df63021 Mon Sep 17 00:00:00 2001 From: blackflame576 Date: Fri, 8 Dec 2023 21:59:41 +0300 Subject: [PATCH 01/11] Deploy --- .init.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 .init.txt diff --git a/.init.txt b/.init.txt new file mode 100644 index 000000000..e69de29bb From 969cd846b1c7fccc25d14e29a4a6d2d90ede3659 Mon Sep 17 00:00:00 2001 From: blackflame576 Date: Fri, 8 Dec 2023 22:00:42 +0300 Subject: [PATCH 02/11] Deploy --- build/.init | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 build/.init diff --git a/build/.init b/build/.init new file mode 100644 index 000000000..e69de29bb From b70b462f092c9c1a5b1691573752b3f04ea83f88 Mon Sep 17 00:00:00 2001 From: Blackflame576 <88478228+Blackflame576@users.noreply.github.com> Date: Mon, 26 Aug 2024 18:47:04 +0300 Subject: [PATCH 03/11] Update CMakeLists.txt --- src/lib_json/CMakeLists.txt | 38 ------------------------------------- 1 file changed, 38 deletions(-) diff --git a/src/lib_json/CMakeLists.txt b/src/lib_json/CMakeLists.txt index 3cf66eb34..5c4696cd5 100644 --- a/src/lib_json/CMakeLists.txt +++ b/src/lib_json/CMakeLists.txt @@ -2,20 +2,16 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_G #-Werror=* was introduced -after- GCC 4.1.2 add_compile_options("-Werror=strict-aliasing") endif() - include(CheckIncludeFileCXX) include(CheckTypeSize) include(CheckStructHasMember) include(CheckCXXSymbolExists) - check_include_file_cxx(clocale HAVE_CLOCALE) check_cxx_symbol_exists(localeconv clocale HAVE_LOCALECONV) - set(CMAKE_EXTRA_INCLUDE_FILES clocale) check_type_size(lconv LCONV_SIZE LANGUAGE CXX) unset(CMAKE_EXTRA_INCLUDE_FILES) check_struct_has_member(lconv decimal_point clocale HAVE_DECIMAL_POINT LANGUAGE CXX) - if(NOT (HAVE_CLOCALE AND HAVE_LCONV_SIZE AND HAVE_DECIMAL_POINT AND HAVE_LOCALECONV)) message(WARNING "Locale functionality is not supported") if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.12.0) @@ -24,9 +20,7 @@ if(NOT (HAVE_CLOCALE AND HAVE_LCONV_SIZE AND HAVE_DECIMAL_POINT AND HAVE_LOCALEC add_definitions(-DJSONCPP_NO_LOCALE_SUPPORT) endif() endif() - set(JSONCPP_INCLUDE_DIR ../../include) - set(PUBLIC_HEADERS ${JSONCPP_INCLUDE_DIR}/json/config.h ${JSONCPP_INCLUDE_DIR}/json/forwards.h @@ -37,9 +31,7 @@ set(PUBLIC_HEADERS ${JSONCPP_INCLUDE_DIR}/json/writer.h ${JSONCPP_INCLUDE_DIR}/json/assertions.h ) - source_group("Public API" FILES ${PUBLIC_HEADERS}) - set(JSONCPP_SOURCES json_tool.h json_reader.cpp @@ -47,14 +39,12 @@ set(JSONCPP_SOURCES json_value.cpp json_writer.cpp ) - # Install instructions for this target if(JSONCPP_WITH_CMAKE_PACKAGE) set(INSTALL_EXPORT EXPORT jsoncpp) else() set(INSTALL_EXPORT) endif() - # Specify compiler features required when compiling a given target. # See https://cmake.org/cmake/help/v3.1/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.html#prop_gbl:CMAKE_CXX_KNOWN_FEATURES # for complete list of features available @@ -104,15 +94,11 @@ list(APPEND REQUIRED_FEATURES cxx_variadic_macros # Variadic macros, as defined in N1653. cxx_variadic_templates # Variadic templates, as defined in N2242. ) - - -if(BUILD_SHARED_LIBS) if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.12.0) add_compile_definitions(JSON_DLL_BUILD) else() add_definitions(-DJSON_DLL_BUILD) endif() - set(SHARED_LIB ${PROJECT_NAME}_lib) add_library(${SHARED_LIB} SHARED ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) set_target_properties(${SHARED_LIB} PROPERTIES @@ -121,27 +107,19 @@ if(BUILD_SHARED_LIBS) SOVERSION ${PROJECT_SOVERSION} POSITION_INDEPENDENT_CODE ${BUILD_SHARED_LIBS} ) - # Set library's runtime search path on OSX if(APPLE) set_target_properties(${SHARED_LIB} PROPERTIES INSTALL_RPATH "@loader_path/.") endif() - target_compile_features(${SHARED_LIB} PUBLIC ${REQUIRED_FEATURES}) - target_include_directories(${SHARED_LIB} PUBLIC $ $ $ ) - list(APPEND CMAKE_TARGETS ${SHARED_LIB}) -endif() - -if(BUILD_STATIC_LIBS) set(STATIC_LIB ${PROJECT_NAME}_static) add_library(${STATIC_LIB} STATIC ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) - # avoid name clashes on windows as the shared import lib is also named jsoncpp.lib if(NOT DEFINED STATIC_SUFFIX AND BUILD_SHARED_LIBS) if (MSVC) @@ -150,59 +128,43 @@ if(BUILD_STATIC_LIBS) set(STATIC_SUFFIX "") endif() endif() - set_target_properties(${STATIC_LIB} PROPERTIES OUTPUT_NAME jsoncpp${STATIC_SUFFIX} VERSION ${PROJECT_VERSION} ) - # Set library's runtime search path on OSX if(APPLE) set_target_properties(${STATIC_LIB} PROPERTIES INSTALL_RPATH "@loader_path/.") endif() - target_compile_features(${STATIC_LIB} PUBLIC ${REQUIRED_FEATURES}) - target_include_directories(${STATIC_LIB} PUBLIC $ $ $ ) - list(APPEND CMAKE_TARGETS ${STATIC_LIB}) -endif() - -if(BUILD_OBJECT_LIBS) set(OBJECT_LIB ${PROJECT_NAME}_object) add_library(${OBJECT_LIB} OBJECT ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) - set_target_properties(${OBJECT_LIB} PROPERTIES OUTPUT_NAME jsoncpp VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_SOVERSION} POSITION_INDEPENDENT_CODE ${BUILD_SHARED_LIBS} ) - # Set library's runtime search path on OSX if(APPLE) set_target_properties(${OBJECT_LIB} PROPERTIES INSTALL_RPATH "@loader_path/.") endif() - target_compile_features(${OBJECT_LIB} PUBLIC ${REQUIRED_FEATURES}) - target_include_directories(${OBJECT_LIB} PUBLIC $ $ $ ) - list(APPEND CMAKE_TARGETS ${OBJECT_LIB}) -endif() - install(TARGETS ${CMAKE_TARGETS} ${INSTALL_EXPORT} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} OBJECTS DESTINATION ${CMAKE_INSTALL_LIBDIR} ) - From 4cd02f8dff4efc29d50e197fd42fe807e2aa2094 Mon Sep 17 00:00:00 2001 From: Blackflame576 <88478228+Blackflame576@users.noreply.github.com> Date: Mon, 26 Aug 2024 21:56:45 +0300 Subject: [PATCH 04/11] Update CMakeLists.txt --- src/lib_json/CMakeLists.txt | 103 ++++++++++++++++++++++++++---------- 1 file changed, 76 insertions(+), 27 deletions(-) diff --git a/src/lib_json/CMakeLists.txt b/src/lib_json/CMakeLists.txt index 5c4696cd5..7f89bd798 100644 --- a/src/lib_json/CMakeLists.txt +++ b/src/lib_json/CMakeLists.txt @@ -2,16 +2,30 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_G #-Werror=* was introduced -after- GCC 4.1.2 add_compile_options("-Werror=strict-aliasing") endif() + include(CheckIncludeFileCXX) include(CheckTypeSize) include(CheckStructHasMember) include(CheckCXXSymbolExists) + check_include_file_cxx(clocale HAVE_CLOCALE) check_cxx_symbol_exists(localeconv clocale HAVE_LOCALECONV) -set(CMAKE_EXTRA_INCLUDE_FILES clocale) -check_type_size(lconv LCONV_SIZE LANGUAGE CXX) -unset(CMAKE_EXTRA_INCLUDE_FILES) -check_struct_has_member(lconv decimal_point clocale HAVE_DECIMAL_POINT LANGUAGE CXX) + +if(CMAKE_VERSION VERSION_LESS 3.0.0) + # The "LANGUAGE CXX" parameter is not supported in CMake versions below 3, + # so the C compiler and header has to be used. + check_include_file(locale.h HAVE_LOCALE_H) + set(CMAKE_EXTRA_INCLUDE_FILES locale.h) + check_type_size("struct lconv" LCONV_SIZE) + unset(CMAKE_EXTRA_INCLUDE_FILES) + check_struct_has_member("struct lconv" decimal_point locale.h HAVE_DECIMAL_POINT) +else() + set(CMAKE_EXTRA_INCLUDE_FILES clocale) + check_type_size(lconv LCONV_SIZE LANGUAGE CXX) + unset(CMAKE_EXTRA_INCLUDE_FILES) + check_struct_has_member(lconv decimal_point clocale HAVE_DECIMAL_POINT LANGUAGE CXX) +endif() + if(NOT (HAVE_CLOCALE AND HAVE_LCONV_SIZE AND HAVE_DECIMAL_POINT AND HAVE_LOCALECONV)) message(WARNING "Locale functionality is not supported") if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.12.0) @@ -20,7 +34,9 @@ if(NOT (HAVE_CLOCALE AND HAVE_LCONV_SIZE AND HAVE_DECIMAL_POINT AND HAVE_LOCALEC add_definitions(-DJSONCPP_NO_LOCALE_SUPPORT) endif() endif() + set(JSONCPP_INCLUDE_DIR ../../include) + set(PUBLIC_HEADERS ${JSONCPP_INCLUDE_DIR}/json/config.h ${JSONCPP_INCLUDE_DIR}/json/forwards.h @@ -31,7 +47,9 @@ set(PUBLIC_HEADERS ${JSONCPP_INCLUDE_DIR}/json/writer.h ${JSONCPP_INCLUDE_DIR}/json/assertions.h ) + source_group("Public API" FILES ${PUBLIC_HEADERS}) + set(JSONCPP_SOURCES json_tool.h json_reader.cpp @@ -39,12 +57,14 @@ set(JSONCPP_SOURCES json_value.cpp json_writer.cpp ) + # Install instructions for this target if(JSONCPP_WITH_CMAKE_PACKAGE) set(INSTALL_EXPORT EXPORT jsoncpp) else() set(INSTALL_EXPORT) endif() + # Specify compiler features required when compiling a given target. # See https://cmake.org/cmake/help/v3.1/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.html#prop_gbl:CMAKE_CXX_KNOWN_FEATURES # for complete list of features available @@ -94,74 +114,103 @@ list(APPEND REQUIRED_FEATURES cxx_variadic_macros # Variadic macros, as defined in N1653. cxx_variadic_templates # Variadic templates, as defined in N2242. ) + + +if(BUILD_SHARED_LIBS) if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.12.0) add_compile_definitions(JSON_DLL_BUILD) else() add_definitions(-DJSON_DLL_BUILD) endif() + set(SHARED_LIB ${PROJECT_NAME}_lib) add_library(${SHARED_LIB} SHARED ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) set_target_properties(${SHARED_LIB} PROPERTIES OUTPUT_NAME jsoncpp VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_SOVERSION} - POSITION_INDEPENDENT_CODE ${BUILD_SHARED_LIBS} + POSITION_INDEPENDENT_CODE ON ) + # Set library's runtime search path on OSX if(APPLE) set_target_properties(${SHARED_LIB} PROPERTIES INSTALL_RPATH "@loader_path/.") endif() + target_compile_features(${SHARED_LIB} PUBLIC ${REQUIRED_FEATURES}) - target_include_directories(${SHARED_LIB} PUBLIC - $ - $ - $ - ) + + if(NOT CMAKE_VERSION VERSION_LESS 2.8.11) + target_include_directories(${SHARED_LIB} PUBLIC + $ + $ + $ + ) + endif() + list(APPEND CMAKE_TARGETS ${SHARED_LIB}) +endif() + +if(BUILD_STATIC_LIBS) set(STATIC_LIB ${PROJECT_NAME}_static) add_library(${STATIC_LIB} STATIC ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) - # avoid name clashes on windows as the shared import lib is also named jsoncpp.lib + + # avoid name clashes on windows as the shared import lib is alse named jsoncpp.lib if(NOT DEFINED STATIC_SUFFIX AND BUILD_SHARED_LIBS) - if (MSVC) - set(STATIC_SUFFIX "_static") - else() - set(STATIC_SUFFIX "") - endif() + set(STATIC_SUFFIX "_static") endif() + set_target_properties(${STATIC_LIB} PROPERTIES OUTPUT_NAME jsoncpp${STATIC_SUFFIX} VERSION ${PROJECT_VERSION} ) + # Set library's runtime search path on OSX if(APPLE) set_target_properties(${STATIC_LIB} PROPERTIES INSTALL_RPATH "@loader_path/.") endif() + target_compile_features(${STATIC_LIB} PUBLIC ${REQUIRED_FEATURES}) - target_include_directories(${STATIC_LIB} PUBLIC - $ - $ - $ - ) + + if(NOT CMAKE_VERSION VERSION_LESS 2.8.11) + target_include_directories(${STATIC_LIB} PUBLIC + $ + $ + $ + ) + endif() + list(APPEND CMAKE_TARGETS ${STATIC_LIB}) +endif() + +if(BUILD_OBJECT_LIBS) set(OBJECT_LIB ${PROJECT_NAME}_object) add_library(${OBJECT_LIB} OBJECT ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) + set_target_properties(${OBJECT_LIB} PROPERTIES OUTPUT_NAME jsoncpp VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_SOVERSION} - POSITION_INDEPENDENT_CODE ${BUILD_SHARED_LIBS} + POSITION_INDEPENDENT_CODE ON ) + # Set library's runtime search path on OSX if(APPLE) set_target_properties(${OBJECT_LIB} PROPERTIES INSTALL_RPATH "@loader_path/.") endif() + target_compile_features(${OBJECT_LIB} PUBLIC ${REQUIRED_FEATURES}) - target_include_directories(${OBJECT_LIB} PUBLIC - $ - $ - $ - ) + + if(NOT CMAKE_VERSION VERSION_LESS 2.8.11) + target_include_directories(${OBJECT_LIB} PUBLIC + $ + $ + $ + ) + endif() + list(APPEND CMAKE_TARGETS ${OBJECT_LIB}) +endif() + install(TARGETS ${CMAKE_TARGETS} ${INSTALL_EXPORT} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} From 354753676080f494dd8575cfff6a8ea5c6a2957b Mon Sep 17 00:00:00 2001 From: Blackflame576 <88478228+Blackflame576@users.noreply.github.com> Date: Mon, 26 Aug 2024 22:23:35 +0300 Subject: [PATCH 05/11] Update CMakeLists.txt --- src/lib_json/CMakeLists.txt | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/lib_json/CMakeLists.txt b/src/lib_json/CMakeLists.txt index 7f89bd798..364aaaa7b 100644 --- a/src/lib_json/CMakeLists.txt +++ b/src/lib_json/CMakeLists.txt @@ -125,12 +125,6 @@ if(BUILD_SHARED_LIBS) set(SHARED_LIB ${PROJECT_NAME}_lib) add_library(${SHARED_LIB} SHARED ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) - set_target_properties(${SHARED_LIB} PROPERTIES - OUTPUT_NAME jsoncpp - VERSION ${PROJECT_VERSION} - SOVERSION ${PROJECT_SOVERSION} - POSITION_INDEPENDENT_CODE ON - ) # Set library's runtime search path on OSX if(APPLE) @@ -186,12 +180,6 @@ if(BUILD_OBJECT_LIBS) set(OBJECT_LIB ${PROJECT_NAME}_object) add_library(${OBJECT_LIB} OBJECT ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) - set_target_properties(${OBJECT_LIB} PROPERTIES - OUTPUT_NAME jsoncpp - VERSION ${PROJECT_VERSION} - SOVERSION ${PROJECT_SOVERSION} - POSITION_INDEPENDENT_CODE ON - ) # Set library's runtime search path on OSX if(APPLE) From 2be48ab8d5dcf30b5502f0a850723349abc78054 Mon Sep 17 00:00:00 2001 From: Blackflame576 <88478228+Blackflame576@users.noreply.github.com> Date: Mon, 26 Aug 2024 22:50:11 +0300 Subject: [PATCH 06/11] Update CMakeLists.txt --- src/lib_json/CMakeLists.txt | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/lib_json/CMakeLists.txt b/src/lib_json/CMakeLists.txt index 364aaaa7b..d2d00535b 100644 --- a/src/lib_json/CMakeLists.txt +++ b/src/lib_json/CMakeLists.txt @@ -116,7 +116,6 @@ list(APPEND REQUIRED_FEATURES ) -if(BUILD_SHARED_LIBS) if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.12.0) add_compile_definitions(JSON_DLL_BUILD) else() @@ -142,9 +141,7 @@ if(BUILD_SHARED_LIBS) endif() list(APPEND CMAKE_TARGETS ${SHARED_LIB}) -endif() - -if(BUILD_STATIC_LIBS) + set(STATIC_LIB ${PROJECT_NAME}_static) add_library(${STATIC_LIB} STATIC ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) @@ -175,8 +172,6 @@ if(BUILD_STATIC_LIBS) list(APPEND CMAKE_TARGETS ${STATIC_LIB}) endif() - -if(BUILD_OBJECT_LIBS) set(OBJECT_LIB ${PROJECT_NAME}_object) add_library(${OBJECT_LIB} OBJECT ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) @@ -197,7 +192,6 @@ if(BUILD_OBJECT_LIBS) endif() list(APPEND CMAKE_TARGETS ${OBJECT_LIB}) -endif() install(TARGETS ${CMAKE_TARGETS} ${INSTALL_EXPORT} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} From a7637099d87fadbb6c338d788a079da5a614d7a8 Mon Sep 17 00:00:00 2001 From: Blackflame576 <88478228+Blackflame576@users.noreply.github.com> Date: Mon, 26 Aug 2024 22:59:29 +0300 Subject: [PATCH 07/11] Update CMakeLists.txt --- src/lib_json/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib_json/CMakeLists.txt b/src/lib_json/CMakeLists.txt index d2d00535b..7bbc6b8bc 100644 --- a/src/lib_json/CMakeLists.txt +++ b/src/lib_json/CMakeLists.txt @@ -171,7 +171,7 @@ list(APPEND REQUIRED_FEATURES endif() list(APPEND CMAKE_TARGETS ${STATIC_LIB}) -endif() + set(OBJECT_LIB ${PROJECT_NAME}_object) add_library(${OBJECT_LIB} OBJECT ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) From 10e34b757012dda07230133b9043ec50107b87ea Mon Sep 17 00:00:00 2001 From: Blackflame576 <88478228+Blackflame576@users.noreply.github.com> Date: Tue, 27 Aug 2024 16:15:25 +0300 Subject: [PATCH 08/11] Update CMakeLists.txt --- src/lib_json/CMakeLists.txt | 86 +++++++------------------------------ 1 file changed, 16 insertions(+), 70 deletions(-) diff --git a/src/lib_json/CMakeLists.txt b/src/lib_json/CMakeLists.txt index 7bbc6b8bc..753db4ec2 100644 --- a/src/lib_json/CMakeLists.txt +++ b/src/lib_json/CMakeLists.txt @@ -116,82 +116,28 @@ list(APPEND REQUIRED_FEATURES ) - if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.12.0) - add_compile_definitions(JSON_DLL_BUILD) - else() - add_definitions(-DJSON_DLL_BUILD) - endif() - - set(SHARED_LIB ${PROJECT_NAME}_lib) - add_library(${SHARED_LIB} SHARED ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) - - # Set library's runtime search path on OSX - if(APPLE) - set_target_properties(${SHARED_LIB} PROPERTIES INSTALL_RPATH "@loader_path/.") - endif() - - target_compile_features(${SHARED_LIB} PUBLIC ${REQUIRED_FEATURES}) + if(BUILD_SHARED_LIBS) + set(LIBRARY_TYPE SHARED) +else() + set(LIBRARY_TYPE STATIC) +endif() - if(NOT CMAKE_VERSION VERSION_LESS 2.8.11) - target_include_directories(${SHARED_LIB} PUBLIC - $ - $ - $ - ) - endif() +set(LIB ${PROJECT_NAME}_lib) +add_library(${LIB} ${LIBRARY_TYPE} ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) - list(APPEND CMAKE_TARGETS ${SHARED_LIB}) - - set(STATIC_LIB ${PROJECT_NAME}_static) - add_library(${STATIC_LIB} STATIC ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) +# ... (rest of the script remains the same) - # avoid name clashes on windows as the shared import lib is alse named jsoncpp.lib - if(NOT DEFINED STATIC_SUFFIX AND BUILD_SHARED_LIBS) - set(STATIC_SUFFIX "_static") - endif() +target_compile_features(${LIB} PUBLIC ${REQUIRED_FEATURES}) - set_target_properties(${STATIC_LIB} PROPERTIES - OUTPUT_NAME jsoncpp${STATIC_SUFFIX} - VERSION ${PROJECT_VERSION} +if(NOT CMAKE_VERSION VERSION_LESS 2.8.11) + target_include_directories(${LIB} PUBLIC + $ + $ + $ ) +endif() - # Set library's runtime search path on OSX - if(APPLE) - set_target_properties(${STATIC_LIB} PROPERTIES INSTALL_RPATH "@loader_path/.") - endif() - - target_compile_features(${STATIC_LIB} PUBLIC ${REQUIRED_FEATURES}) - - if(NOT CMAKE_VERSION VERSION_LESS 2.8.11) - target_include_directories(${STATIC_LIB} PUBLIC - $ - $ - $ - ) - endif() - - list(APPEND CMAKE_TARGETS ${STATIC_LIB}) - - set(OBJECT_LIB ${PROJECT_NAME}_object) - add_library(${OBJECT_LIB} OBJECT ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) - - - # Set library's runtime search path on OSX - if(APPLE) - set_target_properties(${OBJECT_LIB} PROPERTIES INSTALL_RPATH "@loader_path/.") - endif() - - target_compile_features(${OBJECT_LIB} PUBLIC ${REQUIRED_FEATURES}) - - if(NOT CMAKE_VERSION VERSION_LESS 2.8.11) - target_include_directories(${OBJECT_LIB} PUBLIC - $ - $ - $ - ) - endif() - - list(APPEND CMAKE_TARGETS ${OBJECT_LIB}) +list(APPEND CMAKE_TARGETS ${LIB}) install(TARGETS ${CMAKE_TARGETS} ${INSTALL_EXPORT} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} From 78c170102dc3369c63901b595a50b20954aa5fd0 Mon Sep 17 00:00:00 2001 From: Blackflame576 <88478228+Blackflame576@users.noreply.github.com> Date: Tue, 27 Aug 2024 16:26:23 +0300 Subject: [PATCH 09/11] Update CMakeLists.txt --- src/test_lib_json/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test_lib_json/CMakeLists.txt b/src/test_lib_json/CMakeLists.txt index 1c3fce913..71d8379bd 100644 --- a/src/test_lib_json/CMakeLists.txt +++ b/src/test_lib_json/CMakeLists.txt @@ -17,7 +17,7 @@ if(BUILD_SHARED_LIBS) endif() target_link_libraries(jsoncpp_test jsoncpp_lib) else() - target_link_libraries(jsoncpp_test jsoncpp_static) + target_link_libraries(jsoncpp_test jsoncpp_lib) endif() # another way to solve issue #90 From fbdca17de292c30023d35eba1f42325fbebb7490 Mon Sep 17 00:00:00 2001 From: Blackflame576 <88478228+Blackflame576@users.noreply.github.com> Date: Tue, 27 Aug 2024 16:27:24 +0300 Subject: [PATCH 10/11] Update CMakeLists.txt --- src/jsontestrunner/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/jsontestrunner/CMakeLists.txt b/src/jsontestrunner/CMakeLists.txt index 1fc71ea87..5c93350b5 100644 --- a/src/jsontestrunner/CMakeLists.txt +++ b/src/jsontestrunner/CMakeLists.txt @@ -21,7 +21,7 @@ if(BUILD_SHARED_LIBS) endif() target_link_libraries(jsontestrunner_exe jsoncpp_lib) else() - target_link_libraries(jsontestrunner_exe jsoncpp_static) + target_link_libraries(jsontestrunner_exe jsoncpp_lib) endif() set_target_properties(jsontestrunner_exe PROPERTIES OUTPUT_NAME jsontestrunner_exe) From 9dc869e0886ddf5acc1a754913b1ad24142fb2e9 Mon Sep 17 00:00:00 2001 From: Blackflame576 <88478228+Blackflame576@users.noreply.github.com> Date: Fri, 30 Aug 2024 12:02:31 +0300 Subject: [PATCH 11/11] Update CMakeLists.txt --- src/lib_json/CMakeLists.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/lib_json/CMakeLists.txt b/src/lib_json/CMakeLists.txt index 753db4ec2..5ac99f3a2 100644 --- a/src/lib_json/CMakeLists.txt +++ b/src/lib_json/CMakeLists.txt @@ -115,15 +115,15 @@ list(APPEND REQUIRED_FEATURES cxx_variadic_templates # Variadic templates, as defined in N2242. ) - + if(BUILD_SHARED_LIBS) - set(LIBRARY_TYPE SHARED) + set(LIB jsoncpp_shared) + add_library(${LIB} SHARED ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) else() - set(LIBRARY_TYPE STATIC) + set(LIB jsoncpp_static) + add_library(${LIB} STATIC ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) endif() -set(LIB ${PROJECT_NAME}_lib) -add_library(${LIB} ${LIBRARY_TYPE} ${PUBLIC_HEADERS} ${JSONCPP_SOURCES}) # ... (rest of the script remains the same)