diff options
Diffstat (limited to 'vcpkg/ports/dlib/fix-dependencies.patch')
| -rw-r--r-- | vcpkg/ports/dlib/fix-dependencies.patch | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/vcpkg/ports/dlib/fix-dependencies.patch b/vcpkg/ports/dlib/fix-dependencies.patch new file mode 100644 index 0000000..06e17db --- /dev/null +++ b/vcpkg/ports/dlib/fix-dependencies.patch @@ -0,0 +1,80 @@ +diff --git a/dlib/CMakeLists.txt b/dlib/CMakeLists.txt +index cfe6ad9..75cfd54 100644 +--- a/dlib/CMakeLists.txt ++++ b/dlib/CMakeLists.txt +@@ -293,6 +293,7 @@ if (NOT TARGET dlib) + set(dlib_needed_public_ldflags) + set(dlib_needed_private_libraries) + set(dlib_needed_private_includes) ++ set(pkg_config_dlib_requires_private "") + + if (DLIB_ISO_CPP_ONLY) + add_library(dlib ${source_files} ) +@@ -833,6 +834,10 @@ if (NOT TARGET dlib) + + + if (DLIB_LINK_WITH_SQLITE3) ++ find_package(unofficial-sqlite3 CONFIG REQUIRED) ++ list(APPEND dlib_needed_libraries unofficial::sqlite3::sqlite3) ++ string(APPEND pkg_config_dlib_requires_private " sqlite3") ++ elseif(0) + find_library(sqlite sqlite3) + # make sure sqlite3.h is in the include path + find_path(sqlite_path sqlite3.h) +@@ -848,6 +853,10 @@ if (NOT TARGET dlib) + + + if (DLIB_USE_FFTW) ++ find_package(FFTW3 CONFIG REQUIRED) ++ list(APPEND dlib_needed_libraries FFTW3::fftw3) ++ string(APPEND pkg_config_dlib_requires_private " fftw3") ++ elseif(0) + find_library(fftw fftw3) + # make sure fftw3.h is in the include path + find_path(fftw_path fftw3.h) +@@ -998,6 +1007,8 @@ if (NOT TARGET dlib) + + ## dlib-1.pc generation and installation + ++ string (REGEX REPLACE " m " " -lm " pkg_config_dlib_needed_libraries "${pkg_config_dlib_needed_libraries} ") ++ string (REGEX REPLACE "[^ ]*::[^ ]*" "" pkg_config_dlib_needed_libraries "${pkg_config_dlib_needed_libraries}") + configure_file("cmake_utils/dlib.pc.in" "dlib-1.pc" @ONLY) + install(FILES "${CMAKE_CURRENT_BINARY_DIR}/dlib-1.pc" + DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig") +@@ -1011,7 +1022,7 @@ if (NOT TARGET dlib) + + endif() + +-if (MSVC) ++if (0) + # Give the output library files names that are unique functions of the + # visual studio mode that compiled them. We do this so that people who + # compile dlib and then copy the .lib files around (which they shouldn't be +diff --git a/dlib/cmake_utils/dlib.pc.in b/dlib/cmake_utils/dlib.pc.in +index 9060110..2ec27e8 100644 +--- a/dlib/cmake_utils/dlib.pc.in ++++ b/dlib/cmake_utils/dlib.pc.in +@@ -6,3 +6,4 @@ Description: Numerical and networking C++ library + Version: @VERSION@ + Libs: -L${libdir} -ldlib @pkg_config_dlib_needed_libraries@ + Cflags: -I${includedir} @pkg_config_dlib_needed_includes@ ++Requires.private: @pkg_config_dlib_requires_private@ +diff --git a/dlib/cmake_utils/dlibConfig.cmake.in b/dlib/cmake_utils/dlibConfig.cmake.in +index 2667a2e..cc7b4a2 100644 +--- a/dlib/cmake_utils/dlibConfig.cmake.in ++++ b/dlib/cmake_utils/dlibConfig.cmake.in +@@ -31,6 +31,14 @@ if(NOT TARGET dlib-shared AND NOT dlib_BINARY_DIR) + unset(dlib_deps_threads_check) + endif() + ++include(CMakeFindDependencyMacro) ++if("@DLIB_USE_FFTW@") ++ find_dependency(FFTW3 CONFIG) ++endif() ++if("@DLIB_LINK_WITH_SQLITE3@") ++ find_dependency(unofficial-sqlite3 CONFIG) ++endif() ++ + set(dlib_LIBRARIES dlib::dlib) + set(dlib_LIBS dlib::dlib) + set(dlib_INCLUDE_DIRS "@CMAKE_INSTALL_FULL_INCLUDEDIR@" "@dlib_needed_includes@") |