mirror of
https://github.com/microsoft/vcpkg.git
synced 2025-06-07 17:02:48 +08:00
[fluidsynth] Update to 2.2.8, improvements (#25951)
* Update to 2.2.8 * Fix generated pc file * Repair 'sndfile' feature control * Reintegrate gentables into main build * Update versions
This commit is contained in:
parent
4b5b820053
commit
d73287bbc1
@ -9,7 +9,15 @@ index e4ea71c..df37028 100644
|
|||||||
- pkg_check_modules ( GLIB REQUIRED glib-2.0>=2.6.5 gthread-2.0>=2.6.5 )
|
- pkg_check_modules ( GLIB REQUIRED glib-2.0>=2.6.5 gthread-2.0>=2.6.5 )
|
||||||
+ pkg_check_modules ( GLIB IMPORTED_TARGET REQUIRED glib-2.0>=2.6.5 gthread-2.0>=2.6.5 )
|
+ pkg_check_modules ( GLIB IMPORTED_TARGET REQUIRED glib-2.0>=2.6.5 gthread-2.0>=2.6.5 )
|
||||||
list( APPEND PC_REQUIRES_PRIV "glib-2.0" "gthread-2.0")
|
list( APPEND PC_REQUIRES_PRIV "glib-2.0" "gthread-2.0")
|
||||||
+ set(GLIB_LIBRARIES PkgConfig::GLIB)
|
+ set(GLIB_LIBRARIES PkgConfig::GLIB) # To carry libs with absolute paths, https://gitlab.kitware.com/cmake/cmake/-/issues/16154
|
||||||
|
|
||||||
if ( GLIB_glib-2.0_VERSION AND GLIB_glib-2.0_VERSION VERSION_LESS "2.26.0" )
|
if ( GLIB_glib-2.0_VERSION AND GLIB_glib-2.0_VERSION VERSION_LESS "2.26.0" )
|
||||||
message ( WARNING "Your version of glib is very old. This may cause problems with fluidsynth's sample cache on Windows. Consider updating to glib 2.26 or newer!" )
|
message ( WARNING "Your version of glib is very old. This may cause problems with fluidsynth's sample cache on Windows. Consider updating to glib 2.26 or newer!" )
|
||||||
|
@@ -865,6 +866,7 @@ endif ()
|
||||||
|
if ( CMAKE_VERSION VERSION_EQUAL "3.12.0" OR CMAKE_VERSION VERSION_GREATER "3.12.0" )
|
||||||
|
# retrieve all the private libs we depend on
|
||||||
|
get_target_property ( LIBS_PRIVATE libfluidsynth INTERFACE_LINK_LIBRARIES)
|
||||||
|
+ list(FILTER LIBS_PRIVATE EXCLUDE REGEX "^PkgConfig::") # already in 'Requires.private'
|
||||||
|
# make a copy
|
||||||
|
set ( LIBS_PRIVATE_WITH_PATH ${LIBS_PRIVATE} )
|
||||||
|
|
||||||
|
@ -1,43 +1,51 @@
|
|||||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||||
index e913cb2..570207e 100644
|
index 2803ca8..49f3505 100644
|
||||||
--- a/src/CMakeLists.txt
|
--- a/src/CMakeLists.txt
|
||||||
+++ b/src/CMakeLists.txt
|
+++ b/src/CMakeLists.txt
|
||||||
@@ -268,6 +268,9 @@ generate_product_version(
|
@@ -419,6 +419,10 @@ else ( MACOSX_FRAMEWORK )
|
||||||
)
|
|
||||||
endif ( WIN32 )
|
|
||||||
|
|
||||||
+find_program(GENTABLES make_tables REQUIRED)
|
|
||||||
+execute_process(COMMAND ${GENTABLES} "${CMAKE_BINARY_DIR}/")
|
|
||||||
+
|
|
||||||
add_library ( libfluidsynth-OBJ OBJECT
|
|
||||||
${config_SOURCES}
|
|
||||||
${fluid_alsa_SOURCES}
|
|
||||||
@@ -413,6 +416,7 @@ else ( MACOSX_FRAMEWORK )
|
|
||||||
install ( FILES ${public_main_HEADER} DESTINATION ${INCLUDE_INSTALL_DIR} )
|
install ( FILES ${public_main_HEADER} DESTINATION ${INCLUDE_INSTALL_DIR} )
|
||||||
endif ( MACOSX_FRAMEWORK )
|
endif ( MACOSX_FRAMEWORK )
|
||||||
|
|
||||||
+if (0)
|
+option(VCPKG_BUILD_MAKE_TABLES "Build `make_tables`" OFF)
|
||||||
|
+if(VCPKG_BUILD_MAKE_TABLES)
|
||||||
|
+ add_subdirectory(gentables)
|
||||||
|
+elseif(0)
|
||||||
# ******* Auto Generated Lookup Tables ******
|
# ******* Auto Generated Lookup Tables ******
|
||||||
|
|
||||||
include(ExternalProject)
|
include(ExternalProject)
|
||||||
@@ -435,3 +439,4 @@ ExternalProject_Add(gentables
|
@@ -440,4 +444,11 @@ ExternalProject_Add(gentables
|
||||||
|
"${CMAKE_COMMAND}" --build "${GENTAB_BDIR}"
|
||||||
INSTALL_COMMAND ${GENTAB_BDIR}/make_tables.exe "${CMAKE_BINARY_DIR}/"
|
INSTALL_COMMAND ${GENTAB_BDIR}/make_tables.exe "${CMAKE_BINARY_DIR}/"
|
||||||
)
|
)
|
||||||
add_dependencies(libfluidsynth-OBJ gentables)
|
|
||||||
+endif()
|
+endif()
|
||||||
|
+if(TARGET make_tables AND NOT CMAKE_CROSSCOMPILING)
|
||||||
|
+ set(GENTABLES make_tables)
|
||||||
|
+else()
|
||||||
|
+ find_program(GENTABLES make_tables REQUIRED)
|
||||||
|
+endif()
|
||||||
|
+add_custom_target(gentables COMMAND "${GENTABLES}" "${CMAKE_BINARY_DIR}/")
|
||||||
|
add_dependencies(libfluidsynth-OBJ gentables)
|
||||||
diff --git a/src/gentables/CMakeLists.txt b/src/gentables/CMakeLists.txt
|
diff --git a/src/gentables/CMakeLists.txt b/src/gentables/CMakeLists.txt
|
||||||
index 638f299..e834e34 100644
|
index 638f299..19dd9e6 100644
|
||||||
--- a/src/gentables/CMakeLists.txt
|
--- a/src/gentables/CMakeLists.txt
|
||||||
+++ b/src/gentables/CMakeLists.txt
|
+++ b/src/gentables/CMakeLists.txt
|
||||||
@@ -15,7 +15,6 @@ project (gentables C)
|
@@ -12,6 +12,7 @@ unset(ENV{LDFLAGS})
|
||||||
|
|
||||||
|
project (gentables C)
|
||||||
|
|
||||||
|
+if (0)
|
||||||
set ( CMAKE_BUILD_TYPE Debug )
|
set ( CMAKE_BUILD_TYPE Debug )
|
||||||
|
|
||||||
# hardcode ".exe" as suffix to the binary, else in case of cross-platform cross-compiling the calling cmake will not know the suffix used here and fail to find the binary
|
# hardcode ".exe" as suffix to the binary, else in case of cross-platform cross-compiling the calling cmake will not know the suffix used here and fail to find the binary
|
||||||
-set ( CMAKE_EXECUTABLE_SUFFIX ".exe" )
|
@@ -20,6 +21,7 @@ set ( CMAKE_EXECUTABLE_SUFFIX ".exe" )
|
||||||
|
|
||||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
||||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR})
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR})
|
||||||
@@ -34,3 +33,5 @@ if ( WIN32 )
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR})
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../)
|
||||||
|
|
||||||
|
@@ -34,3 +36,5 @@ if ( WIN32 )
|
||||||
else ( WIN32 )
|
else ( WIN32 )
|
||||||
target_link_libraries (make_tables "m")
|
target_link_libraries (make_tables "m")
|
||||||
endif ()
|
endif ()
|
@ -1,38 +1,22 @@
|
|||||||
vcpkg_from_github(
|
vcpkg_from_github(
|
||||||
OUT_SOURCE_PATH SOURCE_PATH
|
OUT_SOURCE_PATH SOURCE_PATH
|
||||||
REPO FluidSynth/fluidsynth
|
REPO FluidSynth/fluidsynth
|
||||||
REF 8b00644751578ba67b709a827cbe5133d849d339 #v2.2.6
|
REF v2.2.8
|
||||||
SHA512 37361c6fdbb54eba78e59f03c9ca702129f0fb522721dfb4e744fdc9a8721e665728fa5606bc68c2fb2ce971b4829cfc472f0a7cd72ce3fe14b3a335b098f7ec
|
SHA512 8173f2d368a214cf1eb7faae2f6326db43fb094ec9c83e652f953290c3f29c34ebd0b92cbb439bea8d814d3a7e4f9dc0c18c648df1d414989d5d8b4700c79535
|
||||||
HEAD_REF master
|
HEAD_REF master
|
||||||
PATCHES
|
PATCHES
|
||||||
fix-dependencies.patch
|
fix-dependencies.patch
|
||||||
separate-gentables.patch
|
gentables.patch
|
||||||
)
|
)
|
||||||
|
|
||||||
if ("buildtools" IN_LIST FEATURES)
|
|
||||||
vcpkg_cmake_configure(
|
|
||||||
SOURCE_PATH "${SOURCE_PATH}/src/gentables"
|
|
||||||
LOGFILE_BASE configure-tools
|
|
||||||
)
|
|
||||||
|
|
||||||
vcpkg_cmake_build(
|
|
||||||
LOGFILE_BASE install-tools
|
|
||||||
TARGET install
|
|
||||||
)
|
|
||||||
|
|
||||||
vcpkg_copy_tools(TOOL_NAMES make_tables AUTO_CLEAN)
|
|
||||||
|
|
||||||
vcpkg_add_to_path(APPEND "${CURRENT_PACKAGES_DIR}/tools/${PORT}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
vcpkg_check_features(
|
vcpkg_check_features(
|
||||||
OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
||||||
FEATURES
|
FEATURES
|
||||||
|
buildtools VCPKG_BUILD_MAKE_TABLES
|
||||||
sndfile enable-libsndfile
|
sndfile enable-libsndfile
|
||||||
)
|
)
|
||||||
|
|
||||||
set(feature_list dbus jack libinstpatch midishare opensles oboe oss sdl2 pulseaudio readline lash systemd dart)
|
set(feature_list dbus jack libinstpatch midishare opensles oboe oss sdl2 pulseaudio readline lash systemd dart)
|
||||||
vcpkg_list(SET FEATURE_OPTIONS)
|
|
||||||
foreach(_feature IN LISTS feature_list)
|
foreach(_feature IN LISTS feature_list)
|
||||||
list(APPEND FEATURE_OPTIONS -Denable-${_feature}:BOOL=OFF)
|
list(APPEND FEATURE_OPTIONS -Denable-${_feature}:BOOL=OFF)
|
||||||
endforeach()
|
endforeach()
|
||||||
@ -54,12 +38,11 @@ list(APPEND FEATURE_OPTIONS -DCOREMIDI_FOUND=${VCPKG_TARGET_IS_OSX})
|
|||||||
list(APPEND FEATURE_OPTIONS -Denable-alsa=${VCPKG_TARGET_IS_LINUX})
|
list(APPEND FEATURE_OPTIONS -Denable-alsa=${VCPKG_TARGET_IS_LINUX})
|
||||||
list(APPEND FEATURE_OPTIONS -DALSA_FOUND=${VCPKG_TARGET_IS_LINUX})
|
list(APPEND FEATURE_OPTIONS -DALSA_FOUND=${VCPKG_TARGET_IS_LINUX})
|
||||||
|
|
||||||
vcpkg_add_to_path("${CURRENT_HOST_INSTALLED_DIR}/tools/${PORT}")
|
|
||||||
|
|
||||||
vcpkg_find_acquire_program(PKGCONFIG)
|
vcpkg_find_acquire_program(PKGCONFIG)
|
||||||
vcpkg_cmake_configure(
|
vcpkg_cmake_configure(
|
||||||
SOURCE_PATH "${SOURCE_PATH}"
|
SOURCE_PATH "${SOURCE_PATH}"
|
||||||
OPTIONS
|
OPTIONS
|
||||||
|
"-DVCPKG_HOST_TRIPLET=${HOST_TRIPLET}"
|
||||||
${FEATURE_OPTIONS}
|
${FEATURE_OPTIONS}
|
||||||
-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}
|
-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}
|
||||||
-DLIB_INSTALL_DIR=lib
|
-DLIB_INSTALL_DIR=lib
|
||||||
@ -76,8 +59,11 @@ vcpkg_cmake_configure(
|
|||||||
vcpkg_cmake_install()
|
vcpkg_cmake_install()
|
||||||
vcpkg_fixup_pkgconfig()
|
vcpkg_fixup_pkgconfig()
|
||||||
|
|
||||||
# Copy fluidsynth.exe to tools dir
|
set(tools fluidsynth)
|
||||||
vcpkg_copy_tools(TOOL_NAMES fluidsynth AUTO_CLEAN)
|
if("buildtools" IN_LIST FEATURES)
|
||||||
|
list(APPEND tools make_tables)
|
||||||
|
endif()
|
||||||
|
vcpkg_copy_tools(TOOL_NAMES ${tools} AUTO_CLEAN)
|
||||||
|
|
||||||
# Remove unnecessary files
|
# Remove unnecessary files
|
||||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "fluidsynth",
|
"name": "fluidsynth",
|
||||||
"version": "2.2.6",
|
"version": "2.2.8",
|
||||||
"port-version": 2,
|
|
||||||
"description": "FluidSynth reads and handles MIDI events from the MIDI input device. It is the software analogue of a MIDI synthesizer. FluidSynth can also play midifiles using a Soundfont.",
|
"description": "FluidSynth reads and handles MIDI events from the MIDI input device. It is the software analogue of a MIDI synthesizer. FluidSynth can also play midifiles using a Soundfont.",
|
||||||
"homepage": "https://github.com/FluidSynth/fluidsynth",
|
"homepage": "https://github.com/FluidSynth/fluidsynth",
|
||||||
"license": "LGPL-2.1-or-later",
|
"license": "LGPL-2.1-or-later",
|
||||||
@ -13,6 +12,7 @@
|
|||||||
{
|
{
|
||||||
"name": "fluidsynth",
|
"name": "fluidsynth",
|
||||||
"host": true,
|
"host": true,
|
||||||
|
"default-features": false,
|
||||||
"features": [
|
"features": [
|
||||||
"buildtools"
|
"buildtools"
|
||||||
]
|
]
|
||||||
|
@ -2305,8 +2305,8 @@
|
|||||||
"port-version": 2
|
"port-version": 2
|
||||||
},
|
},
|
||||||
"fluidsynth": {
|
"fluidsynth": {
|
||||||
"baseline": "2.2.6",
|
"baseline": "2.2.8",
|
||||||
"port-version": 2
|
"port-version": 0
|
||||||
},
|
},
|
||||||
"fmem": {
|
"fmem": {
|
||||||
"baseline": "c-libs-2ccee3d2fb",
|
"baseline": "c-libs-2ccee3d2fb",
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
{
|
{
|
||||||
"versions": [
|
"versions": [
|
||||||
|
{
|
||||||
|
"git-tree": "c9629205f0ca376ee2139ec80c48229f5723eecf",
|
||||||
|
"version": "2.2.8",
|
||||||
|
"port-version": 0
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"git-tree": "ad0fa73283950f13ecfff01deb0688c30a57c330",
|
"git-tree": "ad0fa73283950f13ecfff01deb0688c30a57c330",
|
||||||
"version": "2.2.6",
|
"version": "2.2.6",
|
||||||
|
Loading…
Reference in New Issue
Block a user