2020-08-15 01:25:01 +08:00
set ( GEOGRAM_VERSION 1.7.5 )
2020-10-07 00:24:52 +08:00
vcpkg_fail_port_install ( ON_TARGET "UWP" )
2018-12-14 09:43:20 +08:00
2017-07-25 13:00:02 +08:00
vcpkg_download_distfile ( ARCHIVE
2020-08-15 01:25:01 +08:00
U R L S " h t t p s : / / g f o r g e . i n r i a . f r / f r s / d o w n l o a d . p h p / f i l e / 3 8 3 1 4 / g e o g r a m _ $ { G E O G R A M _ V E R S I O N } . t a r . g z "
2020-08-19 03:16:39 +08:00
F I L E N A M E " g e o g r a m _ $ { G E O G R A M _ V E R S I O N } _ 4 7 d c b b 8 . t a r . g z "
2020-08-15 01:25:01 +08:00
S H A 5 1 2 4 7 d c b b 8 a 5 c 4 e 5 f 7 9 1 f e b 8 d 9 b 2 0 9 b 0 4 b 5 7 5 b 0 7 5 7 e 8 b 8 9 d e 0 9 c 8 2 e f 2 3 2 4 a 3 6 d 4 0 5 6 a 1 f 3 0 0 1 5 3 7 0 3 8 c 8 a 7 5 2 0 4 5 b 0 e 6 b 6 e e d f 5 4 2 1 a d 4 9 1 3 2 2 1 4 c 0 f 6 0 1 6 3 f f 0 9 5 c 3 6 f
2017-07-25 13:00:02 +08:00
)
2018-12-14 09:43:20 +08:00
vcpkg_extract_source_archive_ex (
O U T _ S O U R C E _ P A T H S O U R C E _ P A T H
A R C H I V E $ { A R C H I V E }
R E F $ { G E O G R A M _ V E R S I O N }
[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
P A T C H E S
f i x - c m a k e - c o n f i g - a n d - i n s t a l l . p a t c h
2021-03-30 01:18:25 +08:00
f i x - w i n d o w s - d y n a m i c . p a t c h
2017-07-25 13:00:02 +08:00
)
2018-12-14 09:43:20 +08:00
file ( COPY ${ CURRENT_PORT_DIR } /Config.cmake.in DESTINATION ${ SOURCE_PATH } /cmake )
2020-08-15 01:25:01 +08:00
vcpkg_check_features ( OUT_FEATURE_OPTIONS FEATURE_OPTIONS
F E A T U R E S
" g r a p h i c s " G E O G R A M _ W I T H _ G R A P H I C S
)
2018-07-04 12:26:54 +08:00
2018-12-14 09:43:20 +08:00
if ( VCPKG_LIBRARY_LINKAGE STREQUAL "static" )
set ( VORPALINE_BUILD_DYNAMIC FALSE )
2020-08-15 01:25:01 +08:00
if ( VCPKG_TARGET_IS_WINDOWS )
2019-05-10 02:53:13 +08:00
set ( VORPALINE_PLATFORM Win-vs-generic )
endif ( )
2020-10-07 00:24:52 +08:00
if ( VCPKG_CRT_LINKAGE STREQUAL "dynamic" AND VCPKG_TARGET_IS_WINDOWS )
message ( "geogram on Windows with CRT dynamic linkage only supports dynamic library linkage. Building dynamic." )
set ( VCPKG_LIBRARY_LINKAGE dynamic )
set ( VORPALINE_PLATFORM Win-vs-dynamic-generic )
endif ( )
2020-08-15 01:25:01 +08:00
if ( VCPKG_TARGET_IS_LINUX )
2019-05-10 02:53:13 +08:00
message ( "geogram on Linux only supports dynamic library linkage. Building dynamic." )
set ( VCPKG_LIBRARY_LINKAGE dynamic )
set ( VORPALINE_PLATFORM Linux64-gcc-dynamic )
endif ( )
2020-08-15 01:25:01 +08:00
if ( VCPKG_TARGET_IS_OSX )
2019-05-10 02:53:13 +08:00
message ( "geogram on Darwin only supports dynamic library linkage. Building dynamic." )
set ( VCPKG_LIBRARY_LINKAGE dynamic )
set ( VORPALINE_PLATFORM Darwin-clang-dynamic )
endif ( )
2017-07-25 13:00:02 +08:00
else ( )
2018-12-14 09:43:20 +08:00
set ( VORPALINE_BUILD_DYNAMIC TRUE )
2020-08-15 01:25:01 +08:00
if ( VCPKG_TARGET_IS_WINDOWS )
2019-05-10 02:53:13 +08:00
set ( VORPALINE_PLATFORM Win-vs-generic )
endif ( )
2020-08-15 01:25:01 +08:00
if ( VCPKG_TARGET_IS_LINUX )
2019-05-10 02:53:13 +08:00
set ( VORPALINE_PLATFORM Linux64-gcc-dynamic )
endif ( )
2020-08-15 01:25:01 +08:00
if ( VCPKG_TARGET_IS_OSX )
2019-05-10 02:53:13 +08:00
set ( VORPALINE_PLATFORM Darwin-clang-dynamic )
endif ( )
2017-07-25 13:00:02 +08:00
endif ( )
2018-12-14 09:43:20 +08:00
vcpkg_configure_cmake (
S O U R C E _ P A T H $ { S O U R C E _ P A T H }
# Geogram cannot be built with ninja because it embeds $(Configuration) in some of the generated paths. These require MSBuild in order to be evaluated.
#PREFER_NINJA # Disable this option if project cannot be built with Ninja
O P T I O N S
- D V O R P A L I N E _ B U I L D _ D Y N A M I C = $ { V O R P A L I N E _ B U I L D _ D Y N A M I C }
- D G E O G R A M _ L I B _ O N L Y = O N
- D G E O G R A M _ U S E _ S Y S T E M _ G L F W 3 = O N
- D V O R P A L I N E _ P L A T F O R M = $ { V O R P A L I N E _ P L A T F O R M }
- D G E O G R A M _ W I T H _ V O R P A L I N E = O F F
2020-08-15 01:25:01 +08:00
$ { F E A T U R E _ O P T I O N S }
2018-12-14 09:43:20 +08:00
)
2017-07-25 13:00:02 +08:00
vcpkg_install_cmake ( )
vcpkg_copy_pdbs ( )
[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 ( )
2017-07-25 13:00:02 +08:00
file ( MAKE_DIRECTORY ${ CURRENT_PACKAGES_DIR } /share )
file ( REMOVE_RECURSE ${ CURRENT_PACKAGES_DIR } /doc )
file ( REMOVE_RECURSE ${ CURRENT_PACKAGES_DIR } /debug/doc )
file ( REMOVE_RECURSE ${ CURRENT_PACKAGES_DIR } /debug/include )
2020-08-15 01:25:01 +08:00
vcpkg_replace_string (
$ { C U R R E N T _ P A C K A G E S _ D I R } / s h a r e / g e o g r a m / G e o g r a m T a r g e t s . c m a k e
[ [ I N T E R F A C E _ I N C L U D E _ D I R E C T O R I E S " / s r c / l i b ; $ { _ I M P O R T _ P R E F I X } / i n c l u d e " ] ]
[ [ I N T E R F A C E _ I N C L U D E _ D I R E C T O R I E S " $ { _ I M P O R T _ P R E F I X } / i n c l u d e " ] ]
)
2019-09-30 04:07:50 +08:00
2017-07-25 13:00:02 +08:00
# Handle copyright
2020-08-15 01:25:01 +08:00
file ( INSTALL ${ SOURCE_PATH } /doc/devkit/license.dox DESTINATION ${ CURRENT_PACKAGES_DIR } /share/ ${ PORT } RENAME copyright )