From 9bb4857d56890557e7df8b028b68e00850231839 Mon Sep 17 00:00:00 2001 From: Fuzzard Date: Tue, 27 Sep 2022 14:06:26 +1000 Subject: [fmt] fixup patch for windows Fixes patch applied for windows. Existing version doesnt install headers appropriately --- tools/depends/target/fmt/001-windows-pdb-symbol-gen.patch | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/tools/depends/target/fmt/001-windows-pdb-symbol-gen.patch b/tools/depends/target/fmt/001-windows-pdb-symbol-gen.patch index d4429afe05..7722f13dd3 100644 --- a/tools/depends/target/fmt/001-windows-pdb-symbol-gen.patch +++ b/tools/depends/target/fmt/001-windows-pdb-symbol-gen.patch @@ -1,6 +1,6 @@ --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -249,10 +249,21 @@ +@@ -249,6 +249,16 @@ set(FMT_DEBUG_POSTFIX d CACHE STRING "Debug library postfix.") @@ -13,15 +13,10 @@ + COMPILE_PDB_NAME fmt + COMPILE_PDB_NAME_DEBUG fmt${FMT_DEBUG_POSTFIX} + ) -+else() ++endif() set_target_properties(fmt PROPERTIES VERSION ${FMT_VERSION} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR} PUBLIC_HEADER "${FMT_HEADERS}" - DEBUG_POSTFIX "${FMT_DEBUG_POSTFIX}") -+endif() - - # Set FMT_LIB_NAME for pkg-config fmt.pc. We cannot use the OUTPUT_NAME target - # property because it's not set by default. @@ -339,6 +350,18 @@ install(EXPORT ${targets_export_name} DESTINATION ${FMT_CMAKE_DIR} NAMESPACE fmt::) -- cgit v1.2.3 From 98bd7aea2103717fc48b4a96bd47f3ae9f52a001 Mon Sep 17 00:00:00 2001 From: fuzzard Date: Tue, 28 Jun 2022 13:36:51 +1000 Subject: [cmake] modulehelper function to get only version from a specific VERSION file The use of this is to allow a find module to get a version of a dependency from a VERSION file without smashing the find module SETUP_BUILD_VARS variables to allow us to provide a version to a find_package call of the dependency --- cmake/scripts/common/ModuleHelpers.cmake | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/cmake/scripts/common/ModuleHelpers.cmake b/cmake/scripts/common/ModuleHelpers.cmake index 472cdbd92b..e9657cea1e 100644 --- a/cmake/scripts/common/ModuleHelpers.cmake +++ b/cmake/scripts/common/ModuleHelpers.cmake @@ -67,6 +67,30 @@ function(get_versionfile_data) endif() endfunction() +# Parse and set Version from VERSION dependency file +# Used for retrieving version numbers for dependency libs to allow setting +# a required version for find_package call +# On return: +# LIB_MODULENAME_VER will be set to parent scope (eg LIB_FMT_VER) +function(get_libversion_data module libtype) + + # Dependency path + set(LIB_MODULE_PATH "${CMAKE_SOURCE_DIR}/tools/depends/${libtype}/${module}") + string(TOUPPER ${module} MOD_UPPER) + + if(NOT EXISTS "${LIB_MODULE_PATH}/${MOD_UPPER}-VERSION") + MESSAGE(FATAL_ERROR "${MOD_UPPER}-VERSION does not exist at ${LIB_MODULE_PATH}.") + else() + set(${MOD_UPPER}_FILE "${LIB_MODULE_PATH}/${MOD_UPPER}-VERSION") + endif() + + file(STRINGS ${${MOD_UPPER}_FILE} ${MOD_UPPER}_VER REGEX "^[ \t]*VERSION=") + + string(REGEX REPLACE ".*VERSION=([^ \t]*).*" "\\1" ${MOD_UPPER}_VER "${${MOD_UPPER}_VER}") + + set(LIB_${MOD_UPPER}_VER ${${MOD_UPPER}_VER} PARENT_SCOPE) +endfunction() + # Function to loop through list of patch files (full path) # Sets to a PATCH_COMMAND variable and set to parent scope (caller) # Used to test windows line endings and set appropriate patch commands -- cgit v1.2.3 From 580285f6bf6766cb7a1370d87625f4486d906d0d Mon Sep 17 00:00:00 2001 From: fuzzard Date: Tue, 28 Jun 2022 13:29:38 +1000 Subject: [cmake] allow handling of more corner cases of existing lib versions of spdlog/fmt If a dependency lib is rebuilt, allow a way to notify the calling parent that the dependency is being built. This then allows the parent to rebuild to make sure all the correct versions of a lib are inline. Eg Spdlog exists and was built against FMT 7.0.1 (we cant know what version). We no longer have FMT lib, so it is rebuilt (ver 8.0.1). Allow spdlog to recognise that its dependency is being force built, and therefore it should rebuild to make sure the same lib/api is used throughout. --- cmake/modules/FindFmt.cmake | 44 +++++++++++++++++++++++++++++++++++++----- cmake/modules/FindSpdlog.cmake | 13 +++++++------ 2 files changed, 46 insertions(+), 11 deletions(-) diff --git a/cmake/modules/FindFmt.cmake b/cmake/modules/FindFmt.cmake index 32af4a21a1..abecba501f 100644 --- a/cmake/modules/FindFmt.cmake +++ b/cmake/modules/FindFmt.cmake @@ -12,11 +12,20 @@ # # fmt::fmt - The Fmt library +define_property(TARGET PROPERTY LIB_BUILD + BRIEF_DOCS "This target will be compiling the library" + FULL_DOCS "This target will be compiling the library") + +set(FORCE_BUILD OFF) + # If target exists, no need to rerun find # Allows a module that may be a dependency for multiple libraries to just be executed # once to populate all required variables/targets -if(NOT TARGET fmt::fmt) - if(ENABLE_INTERNAL_FMT) +if((NOT TARGET fmt::fmt OR Fmt_FIND_REQUIRED) AND NOT TARGET fmt) + + # Build if ENABLE_INTERNAL_FMT, or if required version in find_package call is greater + # than already found FMT_VERSION from a previous find_package call + if(ENABLE_INTERNAL_FMT OR (Fmt_FIND_REQUIRED AND FMT_VERSION VERSION_LESS Fmt_FIND_VERSION)) include(cmake/scripts/common/ModuleHelpers.cmake) @@ -27,7 +36,16 @@ if(NOT TARGET fmt::fmt) # Check for existing FMT. If version >= FMT-VERSION file version, dont build find_package(FMT CONFIG QUIET) - if(FMT_VERSION VERSION_LESS ${${MODULE}_VER}) + if(Fmt_FIND_VERSION) + if(FMT_VERSION VERSION_LESS ${Fmt_FIND_VERSION}) + set(FORCE_BUILD ON) + endif() + endif() + + if(${FORCE_BUILD} OR FMT_VERSION VERSION_LESS ${${MODULE}_VER}) + + # Set FORCE_BUILD to enable fmt::fmt property that build will occur + set(FORCE_BUILD ON) if(APPLE) set(EXTRA_ARGS "-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}") @@ -88,8 +106,16 @@ if(NOT TARGET fmt::fmt) set(FMT_LIBRARIES ${FMT_LIBRARY}) set(FMT_INCLUDE_DIRS ${FMT_INCLUDE_DIR}) + # Reorder this to allow handling of FMT_FORCE_BUILD and not duplicate in property if(NOT TARGET fmt::fmt) - add_library(fmt::fmt UNKNOWN IMPORTED) + set_property(GLOBAL APPEND PROPERTY INTERNAL_DEPS_PROP fmt::fmt) + endif() + + if(NOT TARGET fmt::fmt OR FORCE_BUILD) + if(NOT TARGET fmt::fmt) + add_library(fmt::fmt UNKNOWN IMPORTED) + endif() + if(FMT_LIBRARY_RELEASE) set_target_properties(fmt::fmt PROPERTIES IMPORTED_CONFIGURATIONS RELEASE @@ -102,11 +128,19 @@ if(NOT TARGET fmt::fmt) endif() set_target_properties(fmt::fmt PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${FMT_INCLUDE_DIR}") + + # If a force build is done, let any calling packages know they may want to rebuild + if(FORCE_BUILD) + set_target_properties(fmt::fmt PROPERTIES LIB_BUILD ON) + endif() endif() if(TARGET fmt) add_dependencies(fmt::fmt fmt) endif() - set_property(GLOBAL APPEND PROPERTY INTERNAL_DEPS_PROP fmt::fmt) + else() + if(FMT_FIND_REQUIRED) + message(FATAL_ERROR "Fmt lib not found. Maybe use -DENABLE_INTERNAL_FMT=ON") + endif() endif() mark_as_advanced(FMT_INCLUDE_DIR FMT_LIBRARY) diff --git a/cmake/modules/FindSpdlog.cmake b/cmake/modules/FindSpdlog.cmake index fca6437388..23c8617db0 100644 --- a/cmake/modules/FindSpdlog.cmake +++ b/cmake/modules/FindSpdlog.cmake @@ -14,21 +14,22 @@ # Spdlog::Spdlog - The Spdlog library if(ENABLE_INTERNAL_SPDLOG) + include(cmake/scripts/common/ModuleHelpers.cmake) - # Check for dependencies - find_package(Fmt MODULE QUIET) + # Check for dependencies - Must be done before SETUP_BUILD_VARS + get_libversion_data("fmt" "target") + find_package(Fmt ${LIB_FMT_VER} MODULE REQUIRED) - include(cmake/scripts/common/ModuleHelpers.cmake) + # Check if we want to force a build due to a dependency rebuild + get_property(LIB_FORCE_REBUILD TARGET fmt::fmt PROPERTY LIB_BUILD) set(MODULE_LC spdlog) - SETUP_BUILD_VARS() # Check for existing SPDLOG. If version >= SPDLOG-VERSION file version, dont build find_package(SPDLOG CONFIG QUIET) - if(SPDLOG_VERSION VERSION_LESS ${${MODULE}_VER}) - + if(SPDLOG_VERSION VERSION_LESS ${${MODULE}_VER} OR LIB_FORCE_REBUILD) if(APPLE) set(EXTRA_ARGS "-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}") endif() -- cgit v1.2.3 From ddef8092ef0c247ae3ad0528e0b4c880fa475615 Mon Sep 17 00:00:00 2001 From: fuzzard Date: Tue, 28 Jun 2022 09:54:58 +1000 Subject: [cmake] default build spdlog/fmt internal all platforms --- CMakeLists.txt | 8 ++------ project/BuildDependencies/scripts/0_package.target-win10-arm.list | 2 -- .../BuildDependencies/scripts/0_package.target-win10-win32.list | 2 -- project/BuildDependencies/scripts/0_package.target-win10-x64.list | 2 -- project/BuildDependencies/scripts/0_package.target-win32.list | 2 -- project/BuildDependencies/scripts/0_package.target-x64.list | 2 -- tools/depends/target/Makefile | 3 --- 7 files changed, 2 insertions(+), 19 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 44f994bfd3..dccb06dc5c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -63,23 +63,19 @@ option(ENABLE_INTERNAL_CROSSGUID "Enable internal crossguid?" ON) option(ENABLE_INTERNAL_FFMPEG "Enable internal ffmpeg?" OFF) option(ENABLE_INTERNAL_RapidJSON "Enable internal rapidjson?" ON) cmake_dependent_option(ENABLE_INTERNAL_FLATBUFFERS "Enable internal flatbuffers?" OFF "DEFINED USE_INTERNAL_LIBS;NOT USE_INTERNAL_LIBS" ON) +cmake_dependent_option(ENABLE_INTERNAL_FMT "Enable internal fmt?" OFF "DEFINED USE_INTERNAL_LIBS;NOT USE_INTERNAL_LIBS" ON) cmake_dependent_option(ENABLE_INTERNAL_NFS "Enable internal libnfs?" OFF "DEFINED USE_INTERNAL_LIBS;NOT USE_INTERNAL_LIBS" ON) cmake_dependent_option(ENABLE_INTERNAL_PCRE "Enable internal pcre?" OFF "DEFINED USE_INTERNAL_LIBS;NOT USE_INTERNAL_LIBS" ON) +cmake_dependent_option(ENABLE_INTERNAL_SPDLOG "Enable internal spdlog?" OFF "DEFINED USE_INTERNAL_LIBS;NOT USE_INTERNAL_LIBS" ON) cmake_dependent_option(ENABLE_INTERNAL_TAGLIB "Enable internal taglib?" OFF "DEFINED USE_INTERNAL_LIBS;NOT USE_INTERNAL_LIBS" ON) # Internal Depends - supported on UNIX platforms if(UNIX) option(FFMPEG_PATH "Path to external ffmpeg?" "") - option(ENABLE_INTERNAL_FMT "Enable internal fmt?" OFF) option(ENABLE_INTERNAL_FSTRCMP "Enable internal fstrcmp?" OFF) option(ENABLE_INTERNAL_DAV1D "Enable internal dav1d?" OFF) option(ENABLE_INTERNAL_GTEST "Enable internal gtest?" OFF) option(ENABLE_INTERNAL_UDFREAD "Enable internal udfread?" OFF) - option(ENABLE_INTERNAL_SPDLOG "Enable internal spdlog?" OFF) - - if(ENABLE_INTERNAL_SPDLOG) - set(ENABLE_INTERNAL_FMT ON CACHE BOOL "" FORCE) - endif() endif() # prefer kissfft from xbmc/contrib but let use system one on unices cmake_dependent_option(ENABLE_INTERNAL_KISSFFT "Enable internal kissfft?" ON "UNIX" ON) diff --git a/project/BuildDependencies/scripts/0_package.target-win10-arm.list b/project/BuildDependencies/scripts/0_package.target-win10-arm.list index f091203ac2..eb88e90dad 100644 --- a/project/BuildDependencies/scripts/0_package.target-win10-arm.list +++ b/project/BuildDependencies/scripts/0_package.target-win10-arm.list @@ -8,7 +8,6 @@ ;PLEASE KEEP THIS LIST IN ALPHABETICAL ORDER! curl-7.67.0-win10-arm-v141-20200105.7z dav1d-0.8.2-win10-arm-v142-20210314.7z -fmt-6.1.2-win10-arm-v141-20200105.7z freetype-2.10.1-win10-arm-v141-20200105.7z fstrcmp-0.7-win10-arm-v141-20200105.7z GoogleTest-1.10.0-win10-arm-v141-20200410.7z @@ -32,7 +31,6 @@ openssl-1.1.1d-win10-arm-v141-20200105.7z pillow-6.2.1-win10-arm-v142-20200803.7z pycryptodome-3.9.4-win10-arm-v142-20200803.7z python-3.8.5-win10-arm-v142-20210211.7z -spdlog-1.5.0-win10-arm-v141-20200320-2.7z sqlite-3300100-win10-arm-v141-20200105.7z tinyxml-2.6.2-win10-arm-v141-20200105.7z zlib-1.2.11-win10-arm-v141-20200105.7z diff --git a/project/BuildDependencies/scripts/0_package.target-win10-win32.list b/project/BuildDependencies/scripts/0_package.target-win10-win32.list index 5e8495e135..7c202a3b87 100644 --- a/project/BuildDependencies/scripts/0_package.target-win10-win32.list +++ b/project/BuildDependencies/scripts/0_package.target-win10-win32.list @@ -8,7 +8,6 @@ ;PLEASE KEEP THIS LIST IN ALPHABETICAL ORDER! curl-7.67.0-win10-win32-v141-20200105.7z dav1d-0.8.2-win10-win32-v142-20210314.7z -fmt-6.1.2-win10-win32-v141-20200105.7z freetype-2.10.1-win10-win32-v141-20200105.7z fstrcmp-0.7-win10-win32-v141-20200105.7z GoogleTest-1.10.0-win10-win32-v141-20200410.7z @@ -32,7 +31,6 @@ openssl-1.1.1d-win10-win32-v141-20200105.7z pillow-6.2.1-win10-win32-v142-20200803.7z pycryptodome-3.9.4-win10-win32-v142-20200803.7z python-3.8.5-win10-win32-v142-20210211.7z -spdlog-1.5.0-win10-win32-v141-20200320-2.7z sqlite-3300100-win10-win32-v141-20200105.7z tinyxml-2.6.2-win10-win32-v141-20200105.7z zlib-1.2.11-win10-win32-v141-20200105.7z diff --git a/project/BuildDependencies/scripts/0_package.target-win10-x64.list b/project/BuildDependencies/scripts/0_package.target-win10-x64.list index bce4a1fe45..c14b573c8a 100644 --- a/project/BuildDependencies/scripts/0_package.target-win10-x64.list +++ b/project/BuildDependencies/scripts/0_package.target-win10-x64.list @@ -8,7 +8,6 @@ ;PLEASE KEEP THIS LIST IN ALPHABETICAL ORDER! curl-7.67.0-win10-x64-v141-20200105.7z dav1d-0.8.2-win10-x64-v142-20210314.7z -fmt-6.1.2-win10-x64-v141-20200105.7z freetype-2.10.1-win10-x64-v141-20200105.7z fstrcmp-0.7-win10-x64-v141-20200105.7z GoogleTest-1.10.0-win10-x64-v141-20200410.7z @@ -32,7 +31,6 @@ openssl-1.1.1d-win10-x64-v141-20200105.7z pillow-6.2.1-win10-x64-v142-20200803.7z pycryptodome-3.9.4-win10-x64-v142-20200803.7z python-3.8.5-win10-x64-v142-20210211.7z -spdlog-1.5.0-win10-x64-v141-20200320.7z sqlite-3300100-win10-x64-v141-20200105.7z tinyxml-2.6.2-win10-x64-v141-20200105.7z zlib-1.2.11-win10-x64-v141-20200105.7z diff --git a/project/BuildDependencies/scripts/0_package.target-win32.list b/project/BuildDependencies/scripts/0_package.target-win32.list index ae8d7b4f70..1b5603bf40 100644 --- a/project/BuildDependencies/scripts/0_package.target-win32.list +++ b/project/BuildDependencies/scripts/0_package.target-win32.list @@ -10,7 +10,6 @@ curl-7.67.0-win32-v141-20200105.7z dav1d-0.8.2-win32-v142-20210314.7z detours-64ec13-win32-v141-20200105.7z dnssd-878.260.1-win32-v141-20200105.7z -fmt-6.1.2-win32-v141-20200105.7z freetype-2.10.1-win32-v141-20200105.7z fstrcmp-0.7-win32-v141-20200105.7z giflib-5.2.1-win32-v141-20200105.7z @@ -40,7 +39,6 @@ pillow-6.2.1-win32-v142-20200803.7z pycryptodome-3.9.4-win32-v142-20200803.7z python-3.8.5-win32-v142-20210211.7z shairplay-ce80e00-win32-v141-20200105.7z -spdlog-1.5.0-win32-v141-20200320-2.7z sqlite-3300100-win32-v141-20200105.7z tinyxml-2.6.2-win32-v141-20200105.7z zlib-1.2.11-win32-v141-20200105.7z diff --git a/project/BuildDependencies/scripts/0_package.target-x64.list b/project/BuildDependencies/scripts/0_package.target-x64.list index 3d1eaf90b8..00f1b6311e 100644 --- a/project/BuildDependencies/scripts/0_package.target-x64.list +++ b/project/BuildDependencies/scripts/0_package.target-x64.list @@ -10,7 +10,6 @@ curl-7.67.0-x64-v141-20200105.7z dav1d-0.8.2-x64-v142-20210314.7z detours-64ec13-x64-v141-20200105.7z dnssd-878.260.1-x64-v141-20200105.7z -fmt-6.1.2-x64-v141-20200105.7z freetype-2.10.1-x64-v141-20200105.7z fstrcmp-0.7-x64-v141-20200105.7z GoogleTest-1.10.0-x64-v141-20200410.7z @@ -37,7 +36,6 @@ pillow-6.2.1-x64-v142-20200803.7z pycryptodome-3.9.4-x64-v142-20200803.7z python-3.8.5-x64-v142-20210211.7z shairplay-ce80e00-x64-v141-20200105.7z -spdlog-1.5.0-x64-v141-20200320.7z sqlite-3300100-x64-v141-20200105.7z tinyxml-2.6.2-x64-v141-20200105.7z zlib-1.2.11-x64-v141-20200105.7z diff --git a/tools/depends/target/Makefile b/tools/depends/target/Makefile index efaa4e5c7e..243479fdf9 100644 --- a/tools/depends/target/Makefile +++ b/tools/depends/target/Makefile @@ -11,7 +11,6 @@ DEPENDS = \ dav1d \ expat \ ffmpeg \ - fmt \ fontconfig \ freetype2 \ freetype2-noharfbuzz \ @@ -46,7 +45,6 @@ DEPENDS = \ pythonmodule-pil \ pythonmodule-pycryptodome \ pythonmodule-setuptools \ - spdlog \ sqlite3 \ tinyxml \ udfread \ @@ -148,7 +146,6 @@ libinput: mtdev libevdev meson-cross-file libmicrohttpd: gnutls libgcrypt libgpg-error libplist: $(ZLIB) libpng: $(ZLIB) -spdlog: fmt libva: libdrm $(LIBVA_DEPS) libxml2: $(ZLIB) libxslt: libgcrypt libxml2 -- cgit v1.2.3 From 0699e2a4665ed773319e970bc972bcbda623b3ce Mon Sep 17 00:00:00 2001 From: fuzzard Date: Tue, 27 Sep 2022 15:28:53 +1000 Subject: [cmake] dependent_option function This function allows us to handle in a generic way our use of internal lib state, and to then allow it to be overridden more easily by the user. cmake_dependent_option has proven too restrictive for our use of it. --- cmake/scripts/common/DependencyOptions.cmake | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 cmake/scripts/common/DependencyOptions.cmake diff --git a/cmake/scripts/common/DependencyOptions.cmake b/cmake/scripts/common/DependencyOptions.cmake new file mode 100644 index 0000000000..a45dcec553 --- /dev/null +++ b/cmake/scripts/common/DependencyOptions.cmake @@ -0,0 +1,23 @@ +# Set Option varname based on USE_INTERNAL_LIBS status +# +# Alternative to cmake_dependent_option +# cmake_dependent_option is restrictive, in the fact that we cannot override the +# set option value as a cache variable (-Dvar=foo) +# +# This allows us to have the same outcome as cmake_dependent_option whilst still allowing +# user to override for platforms that would normally be forced ON +# +function(dependent_option varname optionmessage) + + # If varname already set, accept that, as it was provided by the user + if(NOT DEFINED ${varname}) + # Generally we only define USE_INTERNAL_LIBS as the exception for platforms + # we explicitly dont want to build internal libs (eg Linux/Freebsd) + if(NOT DEFINED USE_INTERNAL_LIBS) + option(${varname} ${optionmessage} ON) + else() + # Respect Value of USE_INTERNAL_LIBS for ON/OFF + option(${varname} ${optionmessage} ${USE_INTERNAL_LIBS}) + endif() + endif() +endfunction() -- cgit v1.2.3 From 6b1bded881998b20ff204c1810951c476cdb2aea Mon Sep 17 00:00:00 2001 From: fuzzard Date: Tue, 27 Sep 2022 15:35:01 +1000 Subject: [cmake] utilise new dependent_option function for internal deps --- CMakeLists.txt | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index dccb06dc5c..19881e4708 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -44,6 +44,7 @@ include(cmake/scripts/common/PathSetup.cmake) include(cmake/scripts/common/CompilerSettings.cmake) include(ExternalProject) include(CMakeDependentOption) +include(cmake/scripts/common/DependencyOptions.cmake) # general option(VERBOSE "Enable verbose output?" OFF) @@ -58,16 +59,21 @@ option(ENABLE_PYTHON "Enable python support?" ON) option(ENABLE_TESTING "Enable testing support?" ON) # Internal Depends - supported on all platforms + +# These are required enabled for all CI platforms, and recommended for all builds option(ENABLE_INTERNAL_CROSSGUID "Enable internal crossguid?" ON) +option(ENABLE_INTERNAL_RapidJSON "Enable internal rapidjson?" ON) + # use ffmpeg from depends or system option(ENABLE_INTERNAL_FFMPEG "Enable internal ffmpeg?" OFF) -option(ENABLE_INTERNAL_RapidJSON "Enable internal rapidjson?" ON) -cmake_dependent_option(ENABLE_INTERNAL_FLATBUFFERS "Enable internal flatbuffers?" OFF "DEFINED USE_INTERNAL_LIBS;NOT USE_INTERNAL_LIBS" ON) -cmake_dependent_option(ENABLE_INTERNAL_FMT "Enable internal fmt?" OFF "DEFINED USE_INTERNAL_LIBS;NOT USE_INTERNAL_LIBS" ON) -cmake_dependent_option(ENABLE_INTERNAL_NFS "Enable internal libnfs?" OFF "DEFINED USE_INTERNAL_LIBS;NOT USE_INTERNAL_LIBS" ON) -cmake_dependent_option(ENABLE_INTERNAL_PCRE "Enable internal pcre?" OFF "DEFINED USE_INTERNAL_LIBS;NOT USE_INTERNAL_LIBS" ON) -cmake_dependent_option(ENABLE_INTERNAL_SPDLOG "Enable internal spdlog?" OFF "DEFINED USE_INTERNAL_LIBS;NOT USE_INTERNAL_LIBS" ON) -cmake_dependent_option(ENABLE_INTERNAL_TAGLIB "Enable internal taglib?" OFF "DEFINED USE_INTERNAL_LIBS;NOT USE_INTERNAL_LIBS" ON) + +# These are built for all platforms not using system libs or disabled by user +dependent_option(ENABLE_INTERNAL_FLATBUFFERS "Enable internal flatbuffers?") +dependent_option(ENABLE_INTERNAL_FMT "Enable internal fmt?") +dependent_option(ENABLE_INTERNAL_NFS "Enable internal libnfs?") +dependent_option(ENABLE_INTERNAL_PCRE "Enable internal pcre?") +dependent_option(ENABLE_INTERNAL_SPDLOG "Enable internal spdlog?") +dependent_option(ENABLE_INTERNAL_TAGLIB "Enable internal taglib?") # Internal Depends - supported on UNIX platforms if(UNIX) -- cgit v1.2.3