diff options
| author | Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> | 2021-05-01 01:59:39 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-04-30 10:59:39 -0700 |
| commit | 8dad905c6f5b8a44ce72de7221b9165a591de107 (patch) | |
| tree | 3c2b1cd59ee4c336124f50c07da1e0530655c06e /ports/matplotplusplus | |
| parent | c8c95c50c11689920b9c67d88f9028f7553b389b (diff) | |
| download | vcpkg-8dad905c6f5b8a44ce72de7221b9165a591de107.tar.gz vcpkg-8dad905c6f5b8a44ce72de7221b9165a591de107.zip | |
[matplotplusplus] Fix find and use dependencies (#17552)
* [matplotplusplus] Fix find and use dependencies
* update version record
Diffstat (limited to 'ports/matplotplusplus')
| -rw-r--r-- | ports/matplotplusplus/fix-dependencies.patch | 96 | ||||
| -rw-r--r-- | ports/matplotplusplus/portfile.cmake | 22 | ||||
| -rw-r--r-- | ports/matplotplusplus/vcpkg.json | 39 |
3 files changed, 150 insertions, 7 deletions
diff --git a/ports/matplotplusplus/fix-dependencies.patch b/ports/matplotplusplus/fix-dependencies.patch new file mode 100644 index 000000000..89ef9fba8 --- /dev/null +++ b/ports/matplotplusplus/fix-dependencies.patch @@ -0,0 +1,96 @@ +diff --git a/source/3rd_party/CMakeLists.txt b/source/3rd_party/CMakeLists.txt +index ab58bbd..f9fed7e 100644 +--- a/source/3rd_party/CMakeLists.txt ++++ b/source/3rd_party/CMakeLists.txt +@@ -67,57 +67,69 @@ find_package(PkgConfig) + # Lots of optional packages are not a good idea in general. + # It makes the library much less "packagable" (https://youtu.be/sBP17HQAQjk) + # and much more difficult to make sure it works on multiple OSs +-find_package(JPEG) +-if(JPEG_FOUND) ++ ++if (WITH_JPEG) ++find_package(JPEG REQUIRED) ++if(1) + target_compile_definitions(cimg INTERFACE cimg_use_jpeg) + target_link_libraries(cimg INTERFACE ${JPEG_LIBRARIES}) + target_include_directories(cimg INTERFACE ${JPEG_INCLUDE_DIRS}) + endif() ++endif() + +-find_package(TIFF) +-if(TIFF_FOUND) ++if (WITH_TIFF) ++find_package(TIFF REQUIRED) ++if(1) + target_compile_definitions(cimg INTERFACE cimg_use_tiff) + target_link_libraries(cimg INTERFACE ${TIFF_LIBRARIES}) + target_include_directories(cimg INTERFACE ${TIFF_INCLUDE_DIRS}) + endif() ++endif() + +-find_package(ZLIB) +-if(ZLIB_FOUND) +- find_package(PNG) +- if (PNG_FOUND) ++if (WITH_ZLIB) ++find_package(ZLIB REQUIRED) ++if(1) ++ find_package(libpng CONFIG REQUIRED) ++ if (1) + target_compile_definitions(cimg INTERFACE cimg_use_zlib cimg_use_png) +- target_include_directories(cimg INTERFACE ${ZLIB_INCLUDE_DIRS} ${PNG_INCLUDE_DIRS}) +- target_link_libraries(cimg INTERFACE ${ZLIB_LIBRARIES} ${PNG_LIBRARIES}) ++ target_link_libraries(cimg INTERFACE ZLIB::ZLIB png) + endif () + endif() ++endif() + +-find_package(LAPACK) +-if(LAPACK_FOUND) ++if (WITH_LAPACK) ++find_package(LAPACK REQUIRED) ++if(1) + target_compile_definitions(cimg INTERFACE cimg_use_lapack) + target_link_libraries(cimg INTERFACE ${LAPACK_LIBRARIES}) + target_include_directories(cimg INTERFACE ${LAPACK_INCLUDE_DIRS}) + endif() ++endif() + +-find_package(BLAS) +-if(BLAS_FOUND) ++if (WITH_BLAS) ++find_package(BLAS REQUIRED) ++if(1) + target_compile_definitions(cimg INTERFACE cimg_use_blas) + target_link_libraries(cimg INTERFACE ${BLAS_LIBRARIES}) + target_include_directories(cimg INTERFACE ${BLAS_INCLUDE_DIRS}) + endif() ++endif() + +-find_package(FFTW) +-if(FFTW_FOUND) ++if (WITH_FFTW3) ++find_package(FFTW3 CONFIG REQUIRED) ++if(1) + target_compile_definitions(cimg INTERFACE cimg_use_fftw3) +- target_link_libraries(cimg INTERFACE ${FFTW_LIBRARIES}) +- target_include_directories(cimg INTERFACE ${FFTW_INCLUDE_DIRS}) ++ target_link_libraries(cimg INTERFACE FFTW3::fftw3) ++endif() + endif() + + if (CMAKE_MODULE_PATH) +- find_package(OpenCV QUIET) +- if (OpenCV_FOUND) ++ if (WITH_OPENCV) ++ find_package(OpenCV CONFIG REQUIRED) ++ if (1) + target_compile_definitions(cimg INTERFACE cimg_use_opencv) +- target_link_libraries(cimg INTERFACE ${OpenCV_LIBRARIES}) +- target_include_directories(cimg INTERFACE ${OpenCV_INCLUDE_DIRS}) ++ target_link_libraries(cimg INTERFACE opencv_core) ++ endif() + endif() + else() + message("No CMAKE_MODULE_PATH path for OpenCV configured") diff --git a/ports/matplotplusplus/portfile.cmake b/ports/matplotplusplus/portfile.cmake index 82901c5c5..a332d9210 100644 --- a/ports/matplotplusplus/portfile.cmake +++ b/ports/matplotplusplus/portfile.cmake @@ -12,18 +12,28 @@ vcpkg_from_github( REF 36d8dc6c3b94b7a71c4f129763f2c6ad8fc0b54a SHA512 ac8902e953a2a9f6bd62e14e2eb0bd42e407bae6c0b2921ad16ce547e4921ba2c8d8a9cc68e75831676dce3cd89cdf8294862710e838510b68e20f8a6cdf806f HEAD_REF master - PATCHES install-3rd-libraries.patch # Remove this patch when nodesoup is added in vcpkg + PATCHES + install-3rd-libraries.patch # Remove this patch when nodesoup is added in vcpkg + fix-dependencies.patch ) vcpkg_check_features( OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES - opengl BUILD_EXPERIMENTAL_OPENGL_BACKEND + opengl BUILD_EXPERIMENTAL_OPENGL_BACKEND + jpeg WITH_JPEG + tiff WITH_TIFF + zlib WITH_ZLIB + lapack WITH_LAPACK + blas WITH_BLAS + fftw3 WITH_FFTW3 + opencv WITH_OPENCV ) vcpkg_cmake_configure( SOURCE_PATH ${SOURCE_PATH} - OPTIONS + PREFER_NINJA + OPTIONS ${FEATURE_OPTIONS} -DCPM_USE_LOCAL_PACKAGES=ON -DBUILD_EXAMPLES=OFF -DBUILD_TESTS=OFF @@ -31,13 +41,13 @@ vcpkg_cmake_configure( -DBUILD_PACKAGE=OFF -DBUILD_WITH_PEDANTIC_WARNINGS=OFF -DWITH_SYSTEM_CIMG=ON - ${FEATURE_OPTIONS} + -DBUILD_HIGH_RESOLUTION_WORLD_MAP=${BUILD_WORLD_MAP} ) vcpkg_cmake_install() -# The official documentation says: -# find_package(Matplot++ ...) +vcpkg_copy_pdbs() + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/Matplot++/matplot++-config.cmake ${CURRENT_PACKAGES_DIR}/lib/cmake/Matplot++/Matplot++-config.cmake diff --git a/ports/matplotplusplus/vcpkg.json b/ports/matplotplusplus/vcpkg.json index a664421f8..8d88d5005 100644 --- a/ports/matplotplusplus/vcpkg.json +++ b/ports/matplotplusplus/vcpkg.json @@ -1,7 +1,7 @@ { "name": "matplotplusplus", "version-date": "2021-04-11", - "port-version": 1, + "port-version": 2, "description": "A C++ graphics library for data visualization", "homepage": "https://alandefreitas.github.io/matplotplusplus/", "license": "MIT", @@ -18,6 +18,36 @@ } ], "features": { + "blas": { + "description": "BLAS support for Matplot++", + "dependencies": [ + "blas" + ] + }, + "fftw": { + "description": "fftw3 support for Matplot++", + "dependencies": [ + "fftw3" + ] + }, + "jpeg": { + "description": "JPEG support for Matplot++", + "dependencies": [ + "libjpeg-turbo" + ] + }, + "lapack": { + "description": "LAPACK support for Matplot++", + "dependencies": [ + "lapack" + ] + }, + "opencv": { + "description": "opencv support for Matplot++", + "dependencies": [ + "opencv" + ] + }, "opengl": { "description": "OpenGL backend for Matplot++", "dependencies": [ @@ -25,6 +55,13 @@ "glfw3", "opengl" ] + }, + "zlib": { + "description": "ZLIB and libpng support for Matplot++", + "dependencies": [ + "libpng", + "zlib" + ] } } } |
