vcpkg/ports/pangolin/portfile.cmake

79 lines
2.9 KiB
CMake
Raw Normal View History

vcpkg_fail_port_install(ON_TARGET "OSX" "UWP")
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
2017-08-21 02:03:45 +08:00
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO stevenlovegrove/Pangolin
REF v0.5
SHA512 7ebeec108f33f1aa8b1ad08e3ca128a837b22d33e3fc580021f981784043b023a1bf563bbfa8b51d46863db770b336d24fc84ee3d836b85e0da1848281b2a5b2
HEAD_REF master
PATCHES
deprecated_constants.patch # Change from upstream pangolin to address build failures from latest ffmpeg library
fix-includepath-error.patch # include path has one more ../
fix-dependency-python.patch
add-definition.patch
[ffmpeg] Add support for dav1d,fontconfig,freetype,fribidi,ilbc,modplug,opengl,openjpeg,libssh,tensorflow,tesseract,webp,libxml2 dependencies. (#15787) * [tesseract] Use vcpkg_fixup_pkgconfig. * [libxml2] Correct pkgconfig lib name. * [libwebp] Use vcpkg_fixup_pkgconfig. * [libssh] Export pkgconfig on windows. Also move to using git to get source. * [modplug] Export pkgconfig on windows. * [ffmpeg] Add support for fontconfig,freetype,fribidi,modplug,openjpeg,libssh,tesseract,libxml2 dependencies. * [openjpeg] Correct required static link libs in pkgconfig. * [modplug] Combine vcpkg_from_github using variable. * Update ports/libssh/CONTROL * Improve portfile.cmake * update version records. * [openjpeg] Update libs in pkgcfg. Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> * update version records * [libssh] Add pthread to pkgconfig when using mbedtls. * [libssh] Correct pthread naming on windows. * [fontconfig] Add libintl to pkgconfig on windows. * update version records * [ffmpeg] Fixup FindFFmpeg. * [ffmpeg] speex now supports non-windows. * [ffmpeg] Add feature libass. * [ffmpeg] Add dav1d feature. * [ffmpeg] Add feature ilbc. * [ffmpeg] Add tensorflow feature. * [ffmpeg] update version record. * [ffmpeg] Add CI feature test. * [ffmpeg] Limit features based on CI failures. * [ffmpeg] Update version record. * [ffmpeg] limit features based on ci.baseline. * [various ports] Update supports field. * [ffmpeg] Limit features more based on CI. * update version records. * [ffmpeg] Add detection of additional non target deps.. select_library_configurations_from_names currently detects the debug libs even for release builds as _IMPORT_PREFIX was not being set. * [aubio] Silence warning about FindFFMPEG. * [pangolin] Use vcpkg supplied FindFFMPEG. * update version files. * [ffnvcodec] Set as not supporting uwp. ffnvcodec will build under uwp as its a header only lib, but it can not be used as it requires dynamic dll loading. * [ffmpeg] Update feature all. * update version records * [tesseract] Wrap debug pkgcfg update. * [libssh,libxml2,openjpeg,fontconfig] Fix pkg-config for release only triplets. * [libssh] Correct port version after merge. * [ffmpeg] Fixup after merge. * Update version files. * [ffmpeg] Add opengl support. * [ffmpeg] Update package version. * [ffmpeg] Fix ffnvcodec support. * [ffmpeg] Fix x265 detection on osx. * [libvpx] Enable arm-uwp build. * [ffmpeg] Fixup x265 patch. * trigger sdl rebuild * [ffmpeg] Disable opengl on osx. * Revert "trigger sdl rebuild" This reverts commit 94065bfe8414259ad5a5576bd4ac0b7ab4b97c6b. * [ffmpeg] Disable failing features on osx. * Update ports/ffmpeg/FindFFMPEG.cmake.in Co-authored-by: Matthias C. M. Troffaes <matthias.troffaes@gmail.com> * [ffmpeg] Add ass dependencies to FindFFmpeg. * Update ports/ffmpeg/FindFFMPEG.cmake.in Co-authored-by: Matthias C. M. Troffaes <matthias.troffaes@gmail.com> * update version * [fontconfig] disable pthread/json as they are not needed for lib builds. Only used for tests. * [ffmpeg] Enable fontconfig on static+windows. * update versions * update versions. * Fix incorrectly included commits * revert pangolin commit Reverts most of 2543be2edf60bf38511c2d477bb17b617398a108 * update versions * Correct port version after merge. * update versions. * [ffmpeg] Fix cmake dependency detection on non-windows. * Revert "revert pangolin commit" This reverts commit f59bc5a53ea74fd9df17fc368886e9d1a80ac42f. * [ffmpeg] Fix dependency loading that does not define separate debug/release libs. * update versions. * [ffmpeg] set CMP0072 policy. * [wavpack] Fix cmake config export. * [ffmpeg] Add optional system dependent libraries. * update versions after merge. * update versions. Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com> Co-authored-by: Matthias C. M. Troffaes <matthias.troffaes@gmail.com>
2021-04-08 01:06:55 +08:00
fix-cmake-version.patch
2017-08-21 02:03:45 +08:00
)
file(REMOVE ${SOURCE_PATH}/CMakeModules/FindGLEW.cmake)
file(REMOVE ${SOURCE_PATH}/CMakeModules/FindFFMPEG.cmake)
string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" MSVC_USE_STATIC_CRT)
2017-08-21 02:03:45 +08:00
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
2017-08-21 02:03:45 +08:00
OPTIONS
-DBUILD_EXTERN_GLEW=OFF
-DBUILD_EXTERN_LIBPNG=OFF
-DBUILD_EXTERN_LIBJPEG=OFF
-DCMAKE_DISABLE_FIND_PACKAGE_PythonLibs=ON
-DCMAKE_DISABLE_FIND_PACKAGE_TooN=ON
-DCMAKE_DISABLE_FIND_PACKAGE_DC1394=ON
-DCMAKE_DISABLE_FIND_PACKAGE_LibRealSense=ON
-DCMAKE_DISABLE_FIND_PACKAGE_OpenNI=ON
-DCMAKE_DISABLE_FIND_PACKAGE_OpenNI2=ON
-DCMAKE_DISABLE_FIND_PACKAGE_uvc=ON
-DCMAKE_DISABLE_FIND_PACKAGE_DepthSense=ON
-DCMAKE_DISABLE_FIND_PACKAGE_TeliCam=ON
-DCMAKE_DISABLE_FIND_PACKAGE_Pleora=ON
-DCMAKE_DISABLE_FIND_PACKAGE_TIFF=ON
-DCMAKE_DISABLE_FIND_PACKAGE_OpenEXR=ON
-DMSVC_USE_STATIC_CRT=${MSVC_USE_STATIC_CRT}
2017-08-21 02:03:45 +08:00
)
vcpkg_install_cmake()
[many ports] improvements for linux/wsl (#6730) * [many ports] improve compatibility with WSL and mixed case filesystems * [treehopper] express dependency on libusb, which was not working on non-win32 platforms and is still broken there * [libharu] add compatibility with non-win32 platforms * [geogram] fix openblas on linux [clapack] better integration with linux environment [visit-struct] put cmake config file in the expected folder [geogram] remove trailing underscore to enable compatibility with OpenBLAS * [openblas] playing with underscore, without success * [openblas/lapack] fix library integration * [clapack] improve target handling in cmake module * [openblas] promote self-generated config to default cmake module, otherwise internal ones thinks wrongly that openblas can also solve lapack libs * [clapack,openblas] improve libraries integration * [many ports] fix cmake unnecessary target paths, wrong config paths, empty default dependencies, unnecessary [core] tags * [suitesparse] improve integration with new lapack/openblas mechanism * [suitesparse] add no underscore postfix also for linux * [ceres] fix integration with newer openblas/lapack configs * [aws-c-event-stream] fix regression * [systemc] fix regression * [libwebp,geogram] trigger rebuild * [libwebp,pthread4w] fix regressions * [glbinding] fix cmake module installation * [globjects] disentangle unnecessary dependency from qt5 * [jasper] remove broken and unnecessary patches * [libwebp] fix regression * [many ports] avoid using BUILD_SHARED_LIBS which is uninitialized in port files * [clapack] correctly find dlls * [clapack] use a generic blas as dependency * [fizz,g2o] restore expected version * fix mistake * [many ports] remove WIN32, APPLE and UNIX (again, they keep creeping in) from ports since they are broken and usually break non-win32 ports * [libressl,openssl] do not try to build one if the other is already installed * [itk] update ref and patch to avoid regression * [libressl,openssl] implement full strategy to fix CI * [libwebp] disable components that are broken on macOS * [ogre] enable macOS build * [freeimage,jxrlib,ogre,openexr,protobuf] port patches from #5169 * [ogre] add missing install command * [ffmpeg] enable wrapper for cmake module * [ffmpeg] add avresample module finder * [ffmpeg] improve module detection and exported symbols * [ffmpeg] add variables to cache * [thrift] remove unnecessary build option * [allegro5] fix shared/static inversion * [protobuf] cleanup * [libressl] cleanup * [moos-core] cleanup * commented features must not be separated from other features, otherwise vcpkg complains * [itk] fix regression * [shogun,itk] fix regressions * [ogre] fix regression * [opusfile] add compatibility with non-win32 * [itk] fix regression * [sndfile,libsndfile] remove duplicate, redirect sndfile to libsndfile * add missing dependencies * [ismrmrd] fix regression * [ffmpeg] trigger rebuild * [clapack,openblas,libogg] fix regressions on macOS * [libtins] fix regression * force rebuild windows regressions, unable to reproduce locally * [mosquitto] enable non-win32 builds * [json-dto] force rebuild, unable to reproduce regression locally * [many ports] uniform naming and path length requests * fix regression * fix regression * [ffmpeg] fixes for downstream projects * clean up - thanks to reviewers * trigger rebuild of regressions on macOS * trigger rebuild of regressions on macOS - part2 * Add core back * Use VCPKG_CONCURRENCY * Add core back to suitesparse * Add core back to curl * Add core back to magnum * Add core back to magnum * Add core back to magnum * Add core back to cgal
2019-06-21 10:11:54 +08:00
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Pangolin)
2017-08-21 02:03:45 +08:00
vcpkg_copy_pdbs()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
2017-09-25 20:48:34 +08:00
file(GLOB EXE ${CURRENT_PACKAGES_DIR}/lib/*.dll)
file(COPY ${EXE} DESTINATION ${CURRENT_PACKAGES_DIR}/bin)
file(REMOVE ${EXE})
file(GLOB DEBUG_EXE ${CURRENT_PACKAGES_DIR}/debug/lib/*.dll)
file(COPY ${DEBUG_EXE} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin)
file(REMOVE ${DEBUG_EXE})
vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/share/pangolin/PangolinTargets-debug.cmake
"lib/pangolin.dll" "bin/pangolin.dll"
)
vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/share/pangolin/PangolinTargets-release.cmake
"lib/pangolin.dll" "bin/pangolin.dll"
)
endif()
if(VCPKG_TARGET_IS_WINDOWS)
# Copy missing header file
file(COPY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/src/include/pangolin/pangolin_export.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/pangolin)
2017-09-25 20:48:34 +08:00
endif()
2017-08-21 02:03:45 +08:00
# Put the license file where vcpkg expects it
file(COPY ${CURRENT_PORT_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}/)
file(INSTALL ${SOURCE_PATH}/LICENCE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)