Skip to content

Commit

Permalink
[fluidsynth] add Windows ARM support (#7837)
Browse files Browse the repository at this point in the history
* [fluidsynth] add Windows ARM support

* [fluidysnth] use target architecture instead of triplet
  • Loading branch information
driver1998 authored and cbezault committed Aug 27, 2019
1 parent e64f2a4 commit ef30526
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 3 deletions.
4 changes: 2 additions & 2 deletions ports/fluidsynth/CONTROL
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Source: fluidsynth
Version: 2.0.5
Version: 2.0.5-1
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.
Build-Depends: glib
Build-Depends: glib
34 changes: 34 additions & 0 deletions ports/fluidsynth/force-x86-gentables.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index f731632..226f408 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -368,10 +368,23 @@ endif ( MACOSX_FRAMEWORK )
# ******* Auto Generated Lookup Tables ******

include(ExternalProject)
-ExternalProject_Add(gentables
- DOWNLOAD_COMMAND ""
- SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/gentables
- BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/gentables
- INSTALL_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/gentables/make_tables.exe "${CMAKE_BINARY_DIR}/"
-)
+if(VCPKG_TARGET_ARCHITECTURE STREQUAL arm OR VCPKG_TARGET_ARCHITECTURE STREQUAL arm64)
+ ExternalProject_Add(gentables
+ DOWNLOAD_COMMAND ""
+ SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/gentables
+ BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/gentables
+ CONFIGURE_COMMAND
+ "${CMAKE_COMMAND}" "${CMAKE_CURRENT_SOURCE_DIR}/gentables" -G "${CMAKE_GENERATOR}" -A Win32 -B "${CMAKE_CURRENT_BINARY_DIR}/gentables"
+ BUILD_COMMAND
+ "${CMAKE_COMMAND}" --build "${CMAKE_CURRENT_BINARY_DIR}/gentables"
+ INSTALL_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/gentables/make_tables.exe "${CMAKE_BINARY_DIR}/"
+ )
+else()
+ ExternalProject_Add(gentables
+ DOWNLOAD_COMMAND ""
+ SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/gentables
+ BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/gentables
+ INSTALL_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/gentables/make_tables.exe "${CMAKE_BINARY_DIR}/"
+ )
+endif()
add_dependencies(libfluidsynth-OBJ gentables)
3 changes: 2 additions & 1 deletion ports/fluidsynth/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,12 @@ vcpkg_from_github(
REF v2.0.5
SHA512 5344ac889d2927dc2465bae40096d756a9bf9b1100e287ba0621c55ffc76f9cb8fa763f6bc832d701cd0ad2997965cf344f58ae4b3dd445eb3491e3659c093d9
HEAD_REF master
PATCHES
force-x86-gentables.patch
)

vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA # Disable this option if project cannot be built with Ninja
OPTIONS -Denable-pkgconfig=0
)

Expand Down

0 comments on commit ef30526

Please sign in to comment.