2022-09-23 05:23:53 +08:00
vcpkg_from_github (
O U T _ S O U R C E _ P A T H S O U R C E _ P A T H
R E P O b r e a k f a s t q u a y / r u b b e r b a n d
2023-04-07 08:02:13 +08:00
R E F " v $ { V E R S I O N } "
2023-06-08 03:00:50 +08:00
S H A 5 1 2 8 1 1 a 8 d b f 0 5 f b e e 3 e 4 6 3 1 b 4 9 f e e 9 f d 0 e 2 3 e a 7 5 0 a c 2 4 a 9 a 1 6 f 2 0 e 6 a 7 e a 0 7 e 6 8 3 7 8 3 a 9 e d f 9 8 0 c 4 3 e 7 3 2 b 6 4 c 2 2 9 d b 2 9 a d e 3 5 7 5 9 3 8 c 4 e 6 f 9 d b 8 c 4 2 5 5 b 2 2 0 e b 3 0 d 9 d c c
2022-09-23 05:23:53 +08:00
H E A D _ R E F d e f a u l t
)
2023-04-07 08:02:13 +08:00
if ( "cli" IN_LIST FEATURES )
set ( CLI_FEATURE enabled )
else ( )
set ( CLI_FEATURE disabled )
endif ( )
2023-06-08 03:00:50 +08:00
# Select fastest available FFT library according https://github.com/breakfastquay/rubberband/blob/default/COMPILING.md#fft-libraries-supported
if ( VCPKG_TARGET_IS_WINDOWS AND ( VCPKG_TARGET_ARCHITECTURE STREQUAL "x86" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "arm" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" ) )
set ( FFT_LIB "fftw" )
elseif ( VCPKG_TARGET_IS_OSX AND VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" )
set ( FFT_LIB "fftw" )
else ( )
set ( FFT_LIB "sleef" )
endif ( )
2022-09-23 05:23:53 +08:00
vcpkg_configure_meson (
S O U R C E _ P A T H " $ { S O U R C E _ P A T H } "
O P T I O N S
2023-06-08 03:00:50 +08:00
- D f f t = $ { F F T _ L I B } # 'auto', 'builtin', 'kissfft', 'fftw', sleef', 'vdsp', 'ipp' 'FFT library to use. The default (auto) will use vDSP if available, the builtin implementation otherwise.')
2023-04-07 08:02:13 +08:00
- D r e s a m p l e r = l i b s a m p l e r a t e # 'auto', 'builtin', 'libsamplerate', 'speex', 'libspeexdsp', 'ipp' 'Resampler library to use. The default (auto) simply uses the builtin implementation.'
2022-09-23 05:23:53 +08:00
- D i p p _ p a t h = # 'Path to Intel IPP libraries, if selected for any of the other options.'
- D e x t r a _ i n c l u d e _ d i r s = # 'Additional local header directories to search for dependencies.'
- D e x t r a _ l i b _ d i r s = # 'Additional local library directories to search for dependencies.'
2023-04-07 08:02:13 +08:00
- D j n i = d i s a b l e d # 'auto', 'disabled', 'enabled'
- D l a d s p a = d i s a b l e d # 'auto', 'disabled', 'enabled'
- D l v 2 = d i s a b l e d # 'auto', 'disabled', 'enabled' lv2 feature is not yet supported yet because vcpkg can't isntall to
# %APPDATA%\LV2 or %COMMONPROGRAMFILES%\LV2 but also complains about dlls in "${CURRENT_PACKAGES_DIR}/lib/lv2"
- D v a m p = d i s a b l e d # 'auto', 'disabled', 'enabled'
- D c m d l i n e = $ { C L I _ F E A T U R E } # 'auto', 'disabled', 'enabled'
- D t e s t s = d i s a b l e d # 'auto', 'disabled', 'enabled'
2022-09-23 05:23:53 +08:00
)
vcpkg_install_meson ( )
vcpkg_fixup_pkgconfig ( )
vcpkg_copy_pdbs ( )
if ( EXISTS "${CURRENT_PACKAGES_DIR}/bin/rubberband-program${VCPKG_TARGET_EXECUTABLE_SUFFIX}" )
2022-11-03 04:43:21 +08:00
# Rubberband uses a different executable name when compiled with msvc
2022-09-23 05:23:53 +08:00
# Just looking for that file is faster than detecting msvc builds
2022-11-03 04:43:21 +08:00
set ( RUBBERBAND_PROGRAM_NAMES rubberband-program rubberband-program-r3 )
2022-09-23 05:23:53 +08:00
else ( )
2022-11-03 04:43:21 +08:00
set ( RUBBERBAND_PROGRAM_NAMES rubberband rubberband-r3 )
endif ( )
2022-09-23 05:23:53 +08:00
2022-11-03 04:43:21 +08:00
# Remove them when not enabled.
2022-09-23 05:23:53 +08:00
if ( "cli" IN_LIST FEATURES )
2022-11-03 04:43:21 +08:00
vcpkg_copy_tools ( TOOL_NAMES ${ RUBBERBAND_PROGRAM_NAMES } AUTO_CLEAN )
2022-09-23 05:23:53 +08:00
endif ( )
file (
I N S T A L L " $ { S O U R C E _ P A T H } / C O P Y I N G "
D E S T I N A T I O N " $ { C U R R E N T _ P A C K A G E S _ D I R } / s h a r e / $ { P O R T } "
R E N A M E c o p y r i g h t
)