[haiku-commits] haiku: hrev50647 - build/jam src/kits/midi

  • From: jerome.duval@xxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Tue, 1 Nov 2016 08:53:27 +0100 (CET)

hrev50647 adds 1 changeset to branch 'master'
old head: 33e68be4798145fd072ca572a9ba13d1fe485765
new head: 7e9b90f7e43ae853ef999abede1660255ac5b516
overview: 
http://cgit.haiku-os.org/haiku/log/?qt=range&q=7e9b90f7e43a+%5E33e68be47981

----------------------------------------------------------------------------

7e9b90f7e43a: Midi: use fluidlite as fluidsynth replacement.
  
  * SF3 support.

                                   [ Jérôme Duval <jerome.duval@xxxxxxxxx> ]

----------------------------------------------------------------------------

Revision:    hrev50647
Commit:      7e9b90f7e43ae853ef999abede1660255ac5b516
URL:         http://cgit.haiku-os.org/haiku/commit/?id=7e9b90f7e43a
Author:      Jérôme Duval <jerome.duval@xxxxxxxxx>
Date:        Tue Nov  1 07:48:13 2016 UTC

----------------------------------------------------------------------------

3 files changed, 44 insertions(+), 3 deletions(-)
build/jam/BuildFeatures   | 31 +++++++++++++++++++++++++++++++
src/kits/midi/Jamfile     | 14 ++++++++++++--
src/kits/midi/SoftSynth.h |  2 +-

----------------------------------------------------------------------------

diff --git a/build/jam/BuildFeatures b/build/jam/BuildFeatures
index 0b75ec3..660ee57 100644
--- a/build/jam/BuildFeatures
+++ b/build/jam/BuildFeatures
@@ -256,6 +256,37 @@ if [ IsPackageAvailable ffmpeg_devel ] {
 }
 
 
+# Fluidlite
+if [ IsPackageAvailable fluidlite_devel ] && [ IsPackageAvailable 
libvorbis_devel ] {
+       ExtractBuildFeatureArchives fluidlite :
+               file: devel fluidlite_devel
+                       library: $(developLibDir)/libfluidlite.a
+                       headers: $(developHeadersDir)
+               ;
+
+       EnableBuildFeatures fluidlite ;
+} else {
+       Echo "Fluidlite support not available on $(TARGET_PACKAGING_ARCH)" ;
+}
+
+
+# Libvorbis
+if [ IsPackageAvailable libvorbis_devel ] {
+       ExtractBuildFeatureArchives libvorbis :
+               file: base libvorbis
+                       runtime: lib
+               file: devel libvorbis_devel
+                       depends: base
+                       library: $(developLibDir)/libvorbisfile.so.3
+                       headers: $(developHeadersDir)
+               ;
+
+       EnableBuildFeatures libvorbis ;
+} else {
+       Echo "Libvorbis support not available on $(TARGET_PACKAGING_ARCH)" ;
+}
+
+
 # Freetype
 if [ IsPackageAvailable freetype_devel ] {
        ExtractBuildFeatureArchives freetype :
diff --git a/src/kits/midi/Jamfile b/src/kits/midi/Jamfile
index d6bb5c2..d91a03a 100644
--- a/src/kits/midi/Jamfile
+++ b/src/kits/midi/Jamfile
@@ -9,11 +9,20 @@ if $(TARGET_PLATFORM) != haiku {
 }
 
 UsePrivateHeaders midi ;
-UseLibraryHeaders fluidsynth ;
+
 
 local architectureObject ;
 for architectureObject in [ MultiArchSubDirSetup ] {
        on $(architectureObject) {
+               if ! [ FIsBuildFeatureEnabled fluidlite ] {
+                       continue ;
+               }
+
+               UseBuildFeatureHeaders fluidlite ;
+               Includes [ FGristFiles MidiSynth.cpp MidiSynthFile.cpp
+                       SoftSynth.cpp Synth.cpp ]
+                       : [ BuildFeatureAttribute fluidlite : headers ] ;
+
                SharedLibrary [ MultiArchDefaultGristFiles libmidi.so ] :
                        Midi.cpp
                        MidiGlue.cpp
@@ -30,7 +39,8 @@ for architectureObject in [ MultiArchSubDirSetup ] {
                        be
                        midi2
                        media
-                       [ MultiArchDefaultGristFiles libfluidsynth.so ]
+                       [ BuildFeatureAttribute libvorbis : library ]
+                       [ BuildFeatureAttribute fluidlite : library ]
                        [ TargetLibsupc++ ]
                        ;
        }
diff --git a/src/kits/midi/SoftSynth.h b/src/kits/midi/SoftSynth.h
index ccd7cb4..da9c7a8 100644
--- a/src/kits/midi/SoftSynth.h
+++ b/src/kits/midi/SoftSynth.h
@@ -19,7 +19,7 @@
        This version of SoftSynth is a wrapper libfluidsynth.so.
  */
 
-#include <fluidsynth.h>
+#include <fluidlite.h>
 #include <Midi.h>
 #include <SoundPlayer.h>
 #include <Synth.h>


Other related posts:

  • » [haiku-commits] haiku: hrev50647 - build/jam src/kits/midi - jerome . duval