diff --git a/.gitignore b/.gitignore index 462b6fc..4c681e6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,11 @@ -/lmms-*.stripped.tar.bz2 -/lmms_*.stripped.tar.xz -/v*.stripped.tar.gz +/lmms-0.4.6.stripped.tar.bz2 +/lmms-0.4.7.stripped.tar.bz2 +/lmms-0.4.8.stripped.tar.bz2 +/lmms-0.4.9.stripped.tar.bz2 +/lmms-0.4.10.stripped.tar.bz2 +/lmms-0.4.11.stripped.tar.bz2 +/lmms-0.4.12.stripped.tar.bz2 +/lmms-0.4.13.stripped.tar.bz2 +/lmms-0.4.15.stripped.tar.bz2 +/lmms-1.0.3-src.stripped.tar.bz2 +/v1.1.3.stripped.tar.gz diff --git a/README.fedora b/README.fedora index 07f6df8..54afdbd 100644 --- a/README.fedora +++ b/README.fedora @@ -1,286 +1,286 @@ For legal reasons, the following files have been removed from the original tarfile: -lmms/data/projects/demos/Alf42red-Mauiwowi.mmpz -lmms/data/projects/demos/AngryLlama-NewFangled.mmpz -lmms/data/projects/demos/Ashore.mmpz -lmms/data/projects/demos/CapDan/CapDan-ReggaeTry.mmpz -lmms/data/projects/demos/CapDan/CapDan-ReggaetonTry.mmpz -lmms/data/projects/demos/CapDan/CapDan-TwilightArea-OriginalByAlf42red.mmpz -lmms/data/projects/demos/CapDan/CapDan-ZeroSumGame-OriginalByZakarra.mmpz -lmms/data/projects/demos/DnB.mmpz -lmms/data/projects/demos/EsoXLB-CPU.mmpz -lmms/data/projects/demos/Farbro-Tectonic.mmpz -lmms/data/projects/demos/Greippi - Krem Kaakkuja (Second Flight Remix).mmpz -lmms/data/projects/demos/Impulslogik-Zen.mmpz -lmms/data/projects/demos/Jousboxx-BuzzerBeater.mmpz -lmms/data/projects/demos/Momo64-esp.mmpz -lmms/data/projects/demos/Namitryus-K-Project.mmpz -lmms/data/projects/demos/Oglsdl-Dr8v2.mmpz -lmms/data/projects/demos/Oglsdl-PpTrip.mmpz -lmms/data/projects/demos/Popsip-Electric Dancer.mmpz -lmms/data/projects/demos/Root84-Initialize.mmpz -lmms/data/projects/demos/Saber-FinalStep.mmpz -lmms/data/projects/demos/Settel-InnerRecreation.mmpz -lmms/data/projects/demos/Shovon-ProgressiveHousePluckDemo.mmpz -lmms/data/projects/demos/Skiessi/Skiessi-C64.mmpz -lmms/data/projects/demos/Skiessi/Skiessi-Onion.mmpz -lmms/data/projects/demos/Skiessi/Skiessi-RandomProjectNumber14253.mmpz -lmms/data/projects/demos/Skiessi/Skiessi-TurningPoint.mmpz -lmms/data/projects/demos/Socceroos-Progress.mmpz -lmms/data/projects/demos/StrictProduction-DearJonDoe.mmp -lmms/data/projects/demos/TameAnderson-MakeMe.mmpz -lmms/data/projects/demos/Thaledric-Armageddon.mmpz -lmms/data/projects/demos/Thomasso-AxeFromThe80s.mmpz -lmms/data/projects/demos/TobyDox-Psycho.mmpz -lmms/data/projects/demos/unfa-Spoken.mmpz -lmms/data/projects/shorties/Crunk(Demo).mmp -lmms/data/projects/shorties/DirtyLove.mmpz -lmms/data/projects/shorties/Greshz-CoolSnip.mmpz -lmms/data/projects/shorties/Root84-TrancyLoop.mmpz -lmms/data/projects/shorties/Skiessi-222.mmpz -lmms/data/projects/shorties/Surrender-Main.mmpz -lmms/data/projects/shorties/sv-DnB-Startup.mmpz -lmms/data/projects/shorties/sv-Trance-Startup.mmpz -lmms/data/projects/tutorials/editing_note_volumes.mmp -lmms/data/samples/basses/bass01.ogg -lmms/data/samples/basses/bass_acid01.ogg -lmms/data/samples/basses/bass_acid02.ogg -lmms/data/samples/basses/bass_hard01.ogg -lmms/data/samples/basses/bass_hard02.ogg -lmms/data/samples/basses/bass_punch01.ogg -lmms/data/samples/basses/horror_bass01.ogg -lmms/data/samples/basses/matrix1000_pluck01.ogg -lmms/data/samples/basses/rave_bass01.ogg -lmms/data/samples/basses/rave_bass02.ogg -lmms/data/samples/basses/rave_bass03.ogg -lmms/data/samples/basses/rave_bass04.ogg -lmms/data/samples/basses/synth_acid01.ogg -lmms/data/samples/basses/synth_acid02.ogg -lmms/data/samples/basses/techno_synth01.ogg -lmms/data/samples/bassloops/briff01.ogg -lmms/data/samples/bassloops/rave_bass01.ogg -lmms/data/samples/bassloops/rave_bass02.ogg -lmms/data/samples/bassloops/tb303_01.ogg -lmms/data/samples/bassloops/techno_bass01.ogg -lmms/data/samples/bassloops/techno_bass02.ogg -lmms/data/samples/bassloops/techno_synth01.ogg -lmms/data/samples/bassloops/techno_synth02.ogg -lmms/data/samples/bassloops/techno_synth03.ogg -lmms/data/samples/bassloops/techno_synth04.ogg -lmms/data/samples/beats/909beat01.ogg -lmms/data/samples/beats/break01.ogg -lmms/data/samples/beats/break02.ogg -lmms/data/samples/beats/break03.ogg -lmms/data/samples/beats/electro_beat01.ogg -lmms/data/samples/beats/electro_beat02.ogg -lmms/data/samples/beats/house_loop01.ogg -lmms/data/samples/beats/jungle01.ogg -lmms/data/samples/beats/rave_hihat01.ogg -lmms/data/samples/beats/rave_hihat02.ogg -lmms/data/samples/beats/rave_kick01.ogg -lmms/data/samples/beats/rave_kick02.ogg -lmms/data/samples/beats/rave_snare01.ogg -lmms/data/samples/drums/bassdrum01.ogg -lmms/data/samples/drums/bassdrum02.ogg -lmms/data/samples/drums/bassdrum03.ogg -lmms/data/samples/drums/bassdrum04.ogg -lmms/data/samples/drums/bassdrum_acoustic01.ogg -lmms/data/samples/drums/bassdrum_acoustic02.ogg -lmms/data/samples/drums/clap01.ogg -lmms/data/samples/drums/clap02.ogg -lmms/data/samples/drums/clap03.ogg -lmms/data/samples/drums/clap04.ogg -lmms/data/samples/drums/clav01.ogg -lmms/data/samples/drums/clav02.ogg -lmms/data/samples/drums/crash01.ogg -lmms/data/samples/drums/crash02.ogg -lmms/data/samples/drums/hihat_closed01.ogg -lmms/data/samples/drums/hihat_closed02.ogg -lmms/data/samples/drums/hihat_closed03.ogg -lmms/data/samples/drums/hihat_closed04.ogg -lmms/data/samples/drums/hihat_closed05.ogg -lmms/data/samples/drums/hihat_foot_pedal01.ogg -lmms/data/samples/drums/hihat_opened01.ogg -lmms/data/samples/drums/hihat_opened02.ogg -lmms/data/samples/drums/hihat_opened03.ogg -lmms/data/samples/drums/kick01.ogg -lmms/data/samples/drums/kick02.ogg -lmms/data/samples/drums/kick03.ogg -lmms/data/samples/drums/kick04.ogg -lmms/data/samples/drums/kick_distorted01.ogg -lmms/data/samples/drums/kick_hard01.ogg -lmms/data/samples/drums/kick_hardcore01.ogg -lmms/data/samples/drums/kick_hiphop01.ogg -lmms/data/samples/drums/kick_long01.ogg -lmms/data/samples/drums/kick_soft01.ogg -lmms/data/samples/drums/kick_soft02.ogg -lmms/data/samples/drums/nasty_bass01.ogg -lmms/data/samples/drums/nasty_rim01.ogg -lmms/data/samples/drums/nasty_snare01.ogg -lmms/data/samples/drums/ride01.ogg -lmms/data/samples/drums/ride02.ogg -lmms/data/samples/drums/rim01.ogg -lmms/data/samples/drums/shaker01.ogg -lmms/data/samples/drums/shaker02.ogg -lmms/data/samples/drums/shaker03.ogg -lmms/data/samples/drums/sidestick01.ogg -lmms/data/samples/drums/snare01.ogg -lmms/data/samples/drums/snare02.ogg -lmms/data/samples/drums/snare03.ogg -lmms/data/samples/drums/snare04.ogg -lmms/data/samples/drums/snare05.ogg -lmms/data/samples/drums/snare06.ogg -lmms/data/samples/drums/snare07.ogg -lmms/data/samples/drums/snare_acoustic01.ogg -lmms/data/samples/drums/snare_electro01.ogg -lmms/data/samples/drums/snare_harsh01.ogg -lmms/data/samples/drums/snare_hiphop01.ogg -lmms/data/samples/drums/snare_hiphop02.ogg -lmms/data/samples/drums/snare_muffled01.ogg -lmms/data/samples/drums/snare_muffled02.ogg -lmms/data/samples/drums/snare_rim01.ogg -lmms/data/samples/drums/snare_short01.ogg -lmms/data/samples/drums/tom01.ogg -lmms/data/samples/drums/tom02.ogg -lmms/data/samples/drums/tom03.ogg -lmms/data/samples/drums/tom04.ogg -lmms/data/samples/drums/tom05.ogg -lmms/data/samples/drums/tom_hi01.ogg -lmms/data/samples/drums/tom_low01.ogg -lmms/data/samples/drums/tom_mid01.ogg -lmms/data/samples/drums/wood01.ogg -lmms/data/samples/drums/zap01.ogg -lmms/data/samples/drums/zap02.ogg -lmms/data/samples/drums/zap03.ogg -lmms/data/samples/effects/chroma_sound_effect01.ogg -lmms/data/samples/effects/explode01.ogg -lmms/data/samples/effects/filter_sweep01.ogg -lmms/data/samples/effects/scratch01.ogg -lmms/data/samples/effects/start01.ogg -lmms/data/samples/effects/start02.ogg -lmms/data/samples/effects/stop01.ogg -lmms/data/samples/effects/warp01.ogg -lmms/data/samples/effects/warp02.ogg -lmms/data/samples/effects/wind_chimes01.ogg -lmms/data/samples/instruments/bassslap01.ogg -lmms/data/samples/instruments/bassslap02.ogg -lmms/data/samples/instruments/cello01.ogg -lmms/data/samples/instruments/church_organ01.ogg -lmms/data/samples/instruments/church_organ02.ogg -lmms/data/samples/instruments/church_organ03.ogg -lmms/data/samples/instruments/church_organ04.ogg -lmms/data/samples/instruments/e_organ01.ogg -lmms/data/samples/instruments/e_piano_accord01.ogg -lmms/data/samples/instruments/e_piano_accord02.ogg -lmms/data/samples/instruments/flute01.ogg -lmms/data/samples/instruments/harpsichord01.ogg -lmms/data/samples/instruments/piano01.ogg -lmms/data/samples/instruments/piano02.ogg -lmms/data/samples/instruments/steel_guitar01.ogg -lmms/data/samples/instruments/steel_guitar_heavy_distorted01.ogg -lmms/data/samples/instruments/steel_guitar_medium_distorted01.ogg -lmms/data/samples/instruments/steel_guitar_slight_distorted01.ogg -lmms/data/samples/instruments/trumpet01.ogg -lmms/data/samples/instruments/violin_double_stop01.ogg -lmms/data/samples/instruments/violin_fingered01.ogg -lmms/data/samples/instruments/violin_pizzicato01.ogg -lmms/data/samples/latin/latin_brass01.ogg -lmms/data/samples/latin/latin_guitar01.ogg -lmms/data/samples/latin/latin_guitar02.ogg -lmms/data/samples/latin/latin_guitar03.ogg -lmms/data/samples/misc/applause01.ogg -lmms/data/samples/misc/bass!.ogg -lmms/data/samples/misc/breath01.ogg -lmms/data/samples/misc/buzz!.ogg -lmms/data/samples/misc/dong01.ogg -lmms/data/samples/misc/dong02.ogg -lmms/data/samples/misc/dong03.ogg -lmms/data/samples/misc/electric_ping01.ogg -lmms/data/samples/misc/hit01.ogg -lmms/data/samples/misc/hit02.ogg -lmms/data/samples/misc/metalish_dong01.ogg -lmms/data/samples/misc/metronome01.ogg -lmms/data/samples/misc/metronome02.ogg -lmms/data/samples/misc/raving_crowd01.ogg -lmms/data/samples/misc/snaph01.ogg -lmms/data/samples/misc/undefined01.ogg -lmms/data/samples/shapes/additive.wav -lmms/data/samples/shapes/additive2.wav -lmms/data/samples/shapes/bunglist.wav -lmms/data/samples/shapes/bunglist2.wav -lmms/data/samples/shapes/bunglist3.wav -lmms/data/samples/shapes/bunglist4.wav -lmms/data/samples/shapes/bunglist5.wav -lmms/data/samples/shapes/bunglist6.wav -lmms/data/samples/shapes/bunglist7.wav -lmms/data/samples/shapes/bunglist8.wav -lmms/data/samples/shapes/bunglist9.wav -lmms/data/samples/shapes/harmonics.wav -lmms/data/samples/shapes/low_sine.wav -lmms/data/samples/shapes/micro.wav -lmms/data/samples/shapes/moog.wav -lmms/data/samples/shapes/roundbass.wav -lmms/data/samples/shapes/roundsaw.ogg -lmms/data/samples/shapes/saw+sine.wav -lmms/data/samples/shapes/sine_dist.ogg -lmms/data/samples/shapes/smooth_inv_saw.ogg -lmms/data/samples/shapes/smooth_inv_saw2.ogg -lmms/data/samples/shapes/smooth_inv_saw_dist.ogg -lmms/data/samples/shapes/technobass.wav -lmms/data/samples/shapes/technosynth1.wav -lmms/data/samples/shapes/technosynth2.wav -lmms/data/samples/shapes/technosynth3.wav -lmms/data/samples/shapes/technosynth4.wav -lmms/data/samples/shapes/technosynth5.wav -lmms/data/samples/shapes/technosynth6.wav -lmms/data/samples/shapes/vowel_a.wav -lmms/data/samples/shapes/vowel_u.wav -lmms/data/samples/stringsnpads/bell_choir01.ogg -lmms/data/samples/stringsnpads/bell_choir02.ogg -lmms/data/samples/stringsnpads/chorus01.ogg -lmms/data/samples/stringsnpads/chorus02.ogg -lmms/data/samples/stringsnpads/heaven_strings01.ogg -lmms/data/samples/stringsnpads/juno_pad01.ogg -lmms/data/samples/stringsnpads/korg_poly6_drone01.ogg -lmms/data/samples/stringsnpads/nord_ambient01.ogg -lmms/data/samples/stringsnpads/orion_string01.ogg -lmms/data/samples/stringsnpads/rave_choir01.ogg -lmms/data/samples/stringsnpads/space_strings01.ogg -lmms/data/samples/stringsnpads/space_strings02.ogg -lmms/data/samples/stringsnpads/space_strings03.ogg -lmms/data/samples/stringsnpads/strings01.ogg -lmms/data/samples/waveforms/10saw.flac -lmms/data/samples/waveforms/10sine.flac -lmms/data/samples/waveforms/10sqr.flac -lmms/data/samples/waveforms/10tri.flac -lmms/data/samples/waveforms/analogsqr.flac -lmms/data/samples/waveforms/fmsaw1.flac -lmms/data/samples/waveforms/fmsine.flac -lmms/data/samples/waveforms/fmsine2.flac -lmms/data/samples/waveforms/halfsine.flac -lmms/data/samples/waveforms/impulse.flac -lmms/data/samples/waveforms/lfo_trancegate_quarter.flac -lmms/data/samples/waveforms/lfo_trancegate_sawdecay_quarter.flac -lmms/data/samples/waveforms/lfo_trancegate_sinedecay_quarter.flac -lmms/data/samples/waveforms/lfo_trancegate_triplet_half.flac -lmms/data/samples/waveforms/lfo_trancegate_triplet_half_2.flac -lmms/data/samples/waveforms/lfo_trancegate_triplet_quarter.flac -lmms/data/samples/waveforms/lfo_trancegate_whole.flac -lmms/data/samples/waveforms/lfo_trancegate_whole_2.flac -lmms/data/samples/waveforms/modsqr.flac -lmms/data/samples/waveforms/saw1.flac -lmms/data/samples/waveforms/saw2.flac -lmms/data/samples/waveforms/sinesaw.flac -lmms/data/samples/waveforms/w2_addsyn.flac -lmms/data/samples/waveforms/w2_angrysaw.flac -lmms/data/samples/waveforms/w2_hexagon.flac -lmms/data/samples/waveforms/w2_invsine.flac -lmms/data/samples/waveforms/w2_invsineabs.flac -lmms/data/samples/waveforms/w2_invsinehalf.flac -lmms/data/samples/waveforms/w2_noisy.flac -lmms/data/samples/waveforms/w2_rad.flac -lmms/data/samples/waveforms/w2_sawsine.flac -lmms/data/samples/waveforms/w2_sharp.flac -lmms/data/samples/waveforms/w2_w-wave.flac -lmms/tests/emptyproject.mmp +lmms-1.1.3/data/projects/CoolSongs/Alf42red-Mauiwowi.mmpz +lmms-1.1.3/data/projects/CoolSongs/CapDan/CapDan-TwilightArea-OriginalByAlf42red.mmpz +lmms-1.1.3/data/projects/CoolSongs/CapDan/CapDan-ZeroSumGame-OriginalByZakarra.mmpz +lmms-1.1.3/data/projects/CoolSongs/Farbro-Tectonic.mmpz +lmms-1.1.3/data/projects/CoolSongs/Greippi-ardudar.mmpz +lmms-1.1.3/data/projects/CoolSongs/Impulslogik-Zen.mmpz +lmms-1.1.3/data/projects/CoolSongs/Momo64-esp.mmpz +lmms-1.1.3/data/projects/CoolSongs/Namitryus-K-Project.mmpz +lmms-1.1.3/data/projects/CoolSongs/Oglsdl-Dr8v2.mmpz +lmms-1.1.3/data/projects/CoolSongs/Popsip-Electric Dancer.mmpz +lmms-1.1.3/data/projects/CoolSongs/Root84-Initialize.mmpz +lmms-1.1.3/data/projects/CoolSongs/Saber-FinalStep.mmpz +lmms-1.1.3/data/projects/CoolSongs/Settel-InnerRecreation.mmpz +lmms-1.1.3/data/projects/CoolSongs/Skiessi/Skiessi-Onion.mmpz +lmms-1.1.3/data/projects/CoolSongs/Skiessi/Skiessi-RandomProjectNumber14253.mmpz +lmms-1.1.3/data/projects/CoolSongs/Skiessi/Skiessi-TurningPoint.mmpz +lmms-1.1.3/data/projects/CoolSongs/Socceroos-Progress.mmpz +lmms-1.1.3/data/projects/CoolSongs/StrictProduction-DearJonDoe.mmp +lmms-1.1.3/data/projects/CoolSongs/TameAnderson-MakeMe.mmpz +lmms-1.1.3/data/projects/CoolSongs/Thaledric-Armageddon.mmpz +lmms-1.1.3/data/projects/CoolSongs/TobyDox-Psycho.mmpz +lmms-1.1.3/data/projects/CoolSongs/Zakarra/Zakarra-59_Degrees.mmpz +lmms-1.1.3/data/projects/CoolSongs/Zakarra/Zakarra-MainstreamMemory.mmpz +lmms-1.1.3/data/projects/CoolSongs/Zakarra/Zakarra-OneDay.mmpz +lmms-1.1.3/data/projects/CoolSongs/unfa-Spoken.mmpz +lmms-1.1.3/data/projects/Demos/AngryLlama-NewFangled.mmpz +lmms-1.1.3/data/projects/Demos/Ashore.mmpz +lmms-1.1.3/data/projects/Demos/CapDan-ReggaeTry.mmpz +lmms-1.1.3/data/projects/Demos/CapDan-ReggaetonTry.mmpz +lmms-1.1.3/data/projects/Demos/DnB.mmpz +lmms-1.1.3/data/projects/Demos/EsoXLB-CPU.mmpz +lmms-1.1.3/data/projects/Demos/Oglsdl-PpTrip.mmpz +lmms-1.1.3/data/projects/Demos/Shovon-ProgressiveHousePluckDemo.mmpz +lmms-1.1.3/data/projects/Demos/Skiessi-C64.mmpz +lmms-1.1.3/data/projects/Demos/Thomasso-AxeFromThe80s.mmpz +lmms-1.1.3/data/projects/Shorties/Crunk(Demo).mmp +lmms-1.1.3/data/projects/Shorties/Greshz-CoolSnip.mmpz +lmms-1.1.3/data/projects/Shorties/Root84-TrancyLoop.mmpz +lmms-1.1.3/data/projects/Shorties/Skiessi-222.mmpz +lmms-1.1.3/data/projects/Shorties/Surrender-Main.mmpz +lmms-1.1.3/data/projects/Shorties/sv-DnB-Startup.mmpz +lmms-1.1.3/data/projects/Shorties/sv-Trance-Startup.mmpz +lmms-1.1.3/data/projects/tutorials/editing_note_volumes.mmp +lmms-1.1.3/data/samples/basses/bass01.ogg +lmms-1.1.3/data/samples/basses/bass_acid01.ogg +lmms-1.1.3/data/samples/basses/bass_acid02.ogg +lmms-1.1.3/data/samples/basses/bass_hard01.ogg +lmms-1.1.3/data/samples/basses/bass_hard02.ogg +lmms-1.1.3/data/samples/basses/bass_punch01.ogg +lmms-1.1.3/data/samples/basses/horror_bass01.ogg +lmms-1.1.3/data/samples/basses/matrix1000_pluck01.ogg +lmms-1.1.3/data/samples/basses/rave_bass01.ogg +lmms-1.1.3/data/samples/basses/rave_bass02.ogg +lmms-1.1.3/data/samples/basses/rave_bass03.ogg +lmms-1.1.3/data/samples/basses/rave_bass04.ogg +lmms-1.1.3/data/samples/basses/synth_acid01.ogg +lmms-1.1.3/data/samples/basses/synth_acid02.ogg +lmms-1.1.3/data/samples/basses/techno_synth01.ogg +lmms-1.1.3/data/samples/bassloopes/briff01.ogg +lmms-1.1.3/data/samples/bassloopes/rave_bass01.ogg +lmms-1.1.3/data/samples/bassloopes/rave_bass02.ogg +lmms-1.1.3/data/samples/bassloopes/tb303_01.ogg +lmms-1.1.3/data/samples/bassloopes/techno_bass01.ogg +lmms-1.1.3/data/samples/bassloopes/techno_bass02.ogg +lmms-1.1.3/data/samples/bassloopes/techno_synth01.ogg +lmms-1.1.3/data/samples/bassloopes/techno_synth02.ogg +lmms-1.1.3/data/samples/bassloopes/techno_synth03.ogg +lmms-1.1.3/data/samples/bassloopes/techno_synth04.ogg +lmms-1.1.3/data/samples/beats/909beat01.ogg +lmms-1.1.3/data/samples/beats/break01.ogg +lmms-1.1.3/data/samples/beats/break02.ogg +lmms-1.1.3/data/samples/beats/break03.ogg +lmms-1.1.3/data/samples/beats/electro_beat01.ogg +lmms-1.1.3/data/samples/beats/electro_beat02.ogg +lmms-1.1.3/data/samples/beats/house_loop01.ogg +lmms-1.1.3/data/samples/beats/jungle01.ogg +lmms-1.1.3/data/samples/beats/rave_hihat01.ogg +lmms-1.1.3/data/samples/beats/rave_hihat02.ogg +lmms-1.1.3/data/samples/beats/rave_kick01.ogg +lmms-1.1.3/data/samples/beats/rave_kick02.ogg +lmms-1.1.3/data/samples/beats/rave_snare01.ogg +lmms-1.1.3/data/samples/drums/bassdrum01.ogg +lmms-1.1.3/data/samples/drums/bassdrum02.ogg +lmms-1.1.3/data/samples/drums/bassdrum03.ogg +lmms-1.1.3/data/samples/drums/bassdrum04.ogg +lmms-1.1.3/data/samples/drums/bassdrum_acoustic01.ogg +lmms-1.1.3/data/samples/drums/bassdrum_acoustic02.ogg +lmms-1.1.3/data/samples/drums/clap01.ogg +lmms-1.1.3/data/samples/drums/clap02.ogg +lmms-1.1.3/data/samples/drums/clap03.ogg +lmms-1.1.3/data/samples/drums/clap04.ogg +lmms-1.1.3/data/samples/drums/clav01.ogg +lmms-1.1.3/data/samples/drums/clav02.ogg +lmms-1.1.3/data/samples/drums/crash01.ogg +lmms-1.1.3/data/samples/drums/crash02.ogg +lmms-1.1.3/data/samples/drums/hihat_closed01.ogg +lmms-1.1.3/data/samples/drums/hihat_closed02.ogg +lmms-1.1.3/data/samples/drums/hihat_closed03.ogg +lmms-1.1.3/data/samples/drums/hihat_closed04.ogg +lmms-1.1.3/data/samples/drums/hihat_closed05.ogg +lmms-1.1.3/data/samples/drums/hihat_foot_pedal01.ogg +lmms-1.1.3/data/samples/drums/hihat_opened01.ogg +lmms-1.1.3/data/samples/drums/hihat_opened02.ogg +lmms-1.1.3/data/samples/drums/hihat_opened03.ogg +lmms-1.1.3/data/samples/drums/kick01.ogg +lmms-1.1.3/data/samples/drums/kick02.ogg +lmms-1.1.3/data/samples/drums/kick03.ogg +lmms-1.1.3/data/samples/drums/kick04.ogg +lmms-1.1.3/data/samples/drums/kick_distorted01.ogg +lmms-1.1.3/data/samples/drums/kick_hard01.ogg +lmms-1.1.3/data/samples/drums/kick_hardcore01.ogg +lmms-1.1.3/data/samples/drums/kick_hiphop01.ogg +lmms-1.1.3/data/samples/drums/kick_long01.ogg +lmms-1.1.3/data/samples/drums/kick_soft01.ogg +lmms-1.1.3/data/samples/drums/kick_soft02.ogg +lmms-1.1.3/data/samples/drums/nasty_bass01.ogg +lmms-1.1.3/data/samples/drums/nasty_rim01.ogg +lmms-1.1.3/data/samples/drums/nasty_snare01.ogg +lmms-1.1.3/data/samples/drums/ride01.ogg +lmms-1.1.3/data/samples/drums/ride02.ogg +lmms-1.1.3/data/samples/drums/rim01.ogg +lmms-1.1.3/data/samples/drums/shaker01.ogg +lmms-1.1.3/data/samples/drums/shaker02.ogg +lmms-1.1.3/data/samples/drums/shaker03.ogg +lmms-1.1.3/data/samples/drums/sidestick01.ogg +lmms-1.1.3/data/samples/drums/snare01.ogg +lmms-1.1.3/data/samples/drums/snare02.ogg +lmms-1.1.3/data/samples/drums/snare03.ogg +lmms-1.1.3/data/samples/drums/snare04.ogg +lmms-1.1.3/data/samples/drums/snare05.ogg +lmms-1.1.3/data/samples/drums/snare06.ogg +lmms-1.1.3/data/samples/drums/snare07.ogg +lmms-1.1.3/data/samples/drums/snare_acoustic01.ogg +lmms-1.1.3/data/samples/drums/snare_electro01.ogg +lmms-1.1.3/data/samples/drums/snare_harsh01.ogg +lmms-1.1.3/data/samples/drums/snare_hiphop01.ogg +lmms-1.1.3/data/samples/drums/snare_hiphop02.ogg +lmms-1.1.3/data/samples/drums/snare_muffled01.ogg +lmms-1.1.3/data/samples/drums/snare_muffled02.ogg +lmms-1.1.3/data/samples/drums/snare_rim01.ogg +lmms-1.1.3/data/samples/drums/snare_short01.ogg +lmms-1.1.3/data/samples/drums/tom01.ogg +lmms-1.1.3/data/samples/drums/tom02.ogg +lmms-1.1.3/data/samples/drums/tom03.ogg +lmms-1.1.3/data/samples/drums/tom04.ogg +lmms-1.1.3/data/samples/drums/tom05.ogg +lmms-1.1.3/data/samples/drums/tom_hi01.ogg +lmms-1.1.3/data/samples/drums/tom_low01.ogg +lmms-1.1.3/data/samples/drums/tom_mid01.ogg +lmms-1.1.3/data/samples/drums/wood01.ogg +lmms-1.1.3/data/samples/drums/zap01.ogg +lmms-1.1.3/data/samples/drums/zap02.ogg +lmms-1.1.3/data/samples/drums/zap03.ogg +lmms-1.1.3/data/samples/effects/chroma_sound_effect01.ogg +lmms-1.1.3/data/samples/effects/explode01.ogg +lmms-1.1.3/data/samples/effects/filter_sweep01.ogg +lmms-1.1.3/data/samples/effects/scratch01.ogg +lmms-1.1.3/data/samples/effects/start01.ogg +lmms-1.1.3/data/samples/effects/start02.ogg +lmms-1.1.3/data/samples/effects/stop01.ogg +lmms-1.1.3/data/samples/effects/warp01.ogg +lmms-1.1.3/data/samples/effects/warp02.ogg +lmms-1.1.3/data/samples/effects/wind_chimes01.ogg +lmms-1.1.3/data/samples/instruments/bassslap01.ogg +lmms-1.1.3/data/samples/instruments/bassslap02.ogg +lmms-1.1.3/data/samples/instruments/cello01.ogg +lmms-1.1.3/data/samples/instruments/church_organ01.ogg +lmms-1.1.3/data/samples/instruments/church_organ02.ogg +lmms-1.1.3/data/samples/instruments/church_organ03.ogg +lmms-1.1.3/data/samples/instruments/church_organ04.ogg +lmms-1.1.3/data/samples/instruments/e_organ01.ogg +lmms-1.1.3/data/samples/instruments/e_piano_accord01.ogg +lmms-1.1.3/data/samples/instruments/e_piano_accord02.ogg +lmms-1.1.3/data/samples/instruments/flute01.ogg +lmms-1.1.3/data/samples/instruments/harpsichord01.ogg +lmms-1.1.3/data/samples/instruments/piano01.ogg +lmms-1.1.3/data/samples/instruments/piano02.ogg +lmms-1.1.3/data/samples/instruments/steel_guitar01.ogg +lmms-1.1.3/data/samples/instruments/steel_guitar_heavy_distorted01.ogg +lmms-1.1.3/data/samples/instruments/steel_guitar_medium_distorted01.ogg +lmms-1.1.3/data/samples/instruments/steel_guitar_slight_distorted01.ogg +lmms-1.1.3/data/samples/instruments/trumpet01.ogg +lmms-1.1.3/data/samples/instruments/violin_double_stop01.ogg +lmms-1.1.3/data/samples/instruments/violin_fingered01.ogg +lmms-1.1.3/data/samples/instruments/violin_pizzicato01.ogg +lmms-1.1.3/data/samples/latin/latin_brass01.ogg +lmms-1.1.3/data/samples/latin/latin_guitar01.ogg +lmms-1.1.3/data/samples/latin/latin_guitar02.ogg +lmms-1.1.3/data/samples/latin/latin_guitar03.ogg +lmms-1.1.3/data/samples/misc/applause01.ogg +lmms-1.1.3/data/samples/misc/bass!.ogg +lmms-1.1.3/data/samples/misc/breath01.ogg +lmms-1.1.3/data/samples/misc/buzz!.ogg +lmms-1.1.3/data/samples/misc/dong01.ogg +lmms-1.1.3/data/samples/misc/dong02.ogg +lmms-1.1.3/data/samples/misc/dong03.ogg +lmms-1.1.3/data/samples/misc/electric_ping01.ogg +lmms-1.1.3/data/samples/misc/hit01.ogg +lmms-1.1.3/data/samples/misc/hit02.ogg +lmms-1.1.3/data/samples/misc/metalish_dong01.ogg +lmms-1.1.3/data/samples/misc/metronome01.ogg +lmms-1.1.3/data/samples/misc/raving_crowd01.ogg +lmms-1.1.3/data/samples/misc/snaph01.ogg +lmms-1.1.3/data/samples/misc/undefined01.ogg +lmms-1.1.3/data/samples/shapes/additive.wav +lmms-1.1.3/data/samples/shapes/additive2.wav +lmms-1.1.3/data/samples/shapes/bunglist.wav +lmms-1.1.3/data/samples/shapes/bunglist2.wav +lmms-1.1.3/data/samples/shapes/bunglist3.wav +lmms-1.1.3/data/samples/shapes/bunglist4.wav +lmms-1.1.3/data/samples/shapes/bunglist5.wav +lmms-1.1.3/data/samples/shapes/bunglist6.wav +lmms-1.1.3/data/samples/shapes/bunglist7.wav +lmms-1.1.3/data/samples/shapes/bunglist8.wav +lmms-1.1.3/data/samples/shapes/bunglist9.wav +lmms-1.1.3/data/samples/shapes/harmonics.wav +lmms-1.1.3/data/samples/shapes/low_sine.wav +lmms-1.1.3/data/samples/shapes/micro.wav +lmms-1.1.3/data/samples/shapes/moog.wav +lmms-1.1.3/data/samples/shapes/roundbass.wav +lmms-1.1.3/data/samples/shapes/roundsaw.ogg +lmms-1.1.3/data/samples/shapes/saw+sine.wav +lmms-1.1.3/data/samples/shapes/sine_dist.ogg +lmms-1.1.3/data/samples/shapes/smooth_inv_saw.ogg +lmms-1.1.3/data/samples/shapes/smooth_inv_saw2.ogg +lmms-1.1.3/data/samples/shapes/smooth_inv_saw_dist.ogg +lmms-1.1.3/data/samples/shapes/technobass.wav +lmms-1.1.3/data/samples/shapes/technosynth1.wav +lmms-1.1.3/data/samples/shapes/technosynth2.wav +lmms-1.1.3/data/samples/shapes/technosynth3.wav +lmms-1.1.3/data/samples/shapes/technosynth4.wav +lmms-1.1.3/data/samples/shapes/technosynth5.wav +lmms-1.1.3/data/samples/shapes/technosynth6.wav +lmms-1.1.3/data/samples/shapes/vowel_a.wav +lmms-1.1.3/data/samples/shapes/vowel_u.wav +lmms-1.1.3/data/samples/stringsnpads/bell_choir01.ogg +lmms-1.1.3/data/samples/stringsnpads/bell_choir02.ogg +lmms-1.1.3/data/samples/stringsnpads/chorus01.ogg +lmms-1.1.3/data/samples/stringsnpads/chorus02.ogg +lmms-1.1.3/data/samples/stringsnpads/heaven_strings01.ogg +lmms-1.1.3/data/samples/stringsnpads/juno_pad01.ogg +lmms-1.1.3/data/samples/stringsnpads/korg_poly6_drone01.ogg +lmms-1.1.3/data/samples/stringsnpads/nord_ambient01.ogg +lmms-1.1.3/data/samples/stringsnpads/orion_string01.ogg +lmms-1.1.3/data/samples/stringsnpads/rave_choir01.ogg +lmms-1.1.3/data/samples/stringsnpads/space_strings01.ogg +lmms-1.1.3/data/samples/stringsnpads/space_strings02.ogg +lmms-1.1.3/data/samples/stringsnpads/space_strings03.ogg +lmms-1.1.3/data/samples/stringsnpads/strings01.ogg +lmms-1.1.3/data/samples/waveforms/10saw.flac +lmms-1.1.3/data/samples/waveforms/10sine.flac +lmms-1.1.3/data/samples/waveforms/10sqr.flac +lmms-1.1.3/data/samples/waveforms/10tri.flac +lmms-1.1.3/data/samples/waveforms/analogsqr.flac +lmms-1.1.3/data/samples/waveforms/fmsaw1.flac +lmms-1.1.3/data/samples/waveforms/fmsine.flac +lmms-1.1.3/data/samples/waveforms/fmsine2.flac +lmms-1.1.3/data/samples/waveforms/halfsine.flac +lmms-1.1.3/data/samples/waveforms/impulse.flac +lmms-1.1.3/data/samples/waveforms/lfo_trancegate_quarter.flac +lmms-1.1.3/data/samples/waveforms/lfo_trancegate_sawdecay_quarter.flac +lmms-1.1.3/data/samples/waveforms/lfo_trancegate_sinedecay_quarter.flac +lmms-1.1.3/data/samples/waveforms/lfo_trancegate_triplet_half.flac +lmms-1.1.3/data/samples/waveforms/lfo_trancegate_triplet_half_2.flac +lmms-1.1.3/data/samples/waveforms/lfo_trancegate_triplet_quarter.flac +lmms-1.1.3/data/samples/waveforms/lfo_trancegate_whole.flac +lmms-1.1.3/data/samples/waveforms/lfo_trancegate_whole_2.flac +lmms-1.1.3/data/samples/waveforms/modsqr.flac +lmms-1.1.3/data/samples/waveforms/saw1.flac +lmms-1.1.3/data/samples/waveforms/saw2.flac +lmms-1.1.3/data/samples/waveforms/sinesaw.flac +lmms-1.1.3/data/samples/waveforms/w2_addsyn.flac +lmms-1.1.3/data/samples/waveforms/w2_angrysaw.flac +lmms-1.1.3/data/samples/waveforms/w2_hexagon.flac +lmms-1.1.3/data/samples/waveforms/w2_invsine.flac +lmms-1.1.3/data/samples/waveforms/w2_invsineabs.flac +lmms-1.1.3/data/samples/waveforms/w2_invsinehalf.flac +lmms-1.1.3/data/samples/waveforms/w2_noisy.flac +lmms-1.1.3/data/samples/waveforms/w2_rad.flac +lmms-1.1.3/data/samples/waveforms/w2_sawsine.flac +lmms-1.1.3/data/samples/waveforms/w2_sharp.flac +lmms-1.1.3/data/samples/waveforms/w2_w-wave.flac +lmms-1.1.3/tests/emptyproject.mmp diff --git a/lmms-1.1.3-fluidsynth1and2.patch b/lmms-1.1.3-fluidsynth1and2.patch new file mode 100644 index 0000000..9e029d2 --- /dev/null +++ b/lmms-1.1.3-fluidsynth1and2.patch @@ -0,0 +1,292 @@ +diff -rupN lmms-1.1.3.org/plugins/sf2_player/fluidsynthshims.h lmms-1.1.3/plugins/sf2_player/fluidsynthshims.h +--- lmms-1.1.3.org/plugins/sf2_player/fluidsynthshims.h 1969-12-31 19:00:00.000000000 -0500 ++++ lmms-1.1.3/plugins/sf2_player/fluidsynthshims.h 2020-02-17 11:16:49.674333549 -0500 +@@ -0,0 +1,88 @@ ++/* ++ * fluidsynthshims.h - a shim header for FluidSynth 2.0 API changes ++ * ++ * Copyright (c) 2018 Hyunjin Song ++ * ++ * This file is part of LMMS - https://lmms.io ++ * ++ * This program is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public ++ * License as published by the Free Software Foundation; either ++ * version 2 of the License, or (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public ++ * License along with this program (see COPYING); if not, write to the ++ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ * Boston, MA 02110-1301 USA. ++ * ++ */ ++ ++ ++#ifndef FLUIDSYNTHSHIMS_H ++#define FLUIDSYNTHSHIMS_H ++ ++#include ++ ++#if FLUIDSYNTH_VERSION_MAJOR < 2 ++ ++inline const char* fluid_preset_get_name(fluid_preset_t* preset) ++{ ++ return preset->get_name(preset); ++} ++ ++inline int fluid_preset_get_banknum(fluid_preset_t* preset) ++{ ++ return preset->get_banknum(preset); ++} ++ ++inline int fluid_preset_get_num(fluid_preset_t* preset) ++{ ++ return preset->get_num(preset); ++} ++ ++inline fluid_sfont_t* fluid_preset_get_sfont(fluid_preset_t* preset) ++{ ++ return preset->sfont; ++} ++ ++inline char* fluid_sfont_get_name(fluid_sfont_t* sfont) ++{ ++ return sfont->get_name(sfont); ++} ++ ++inline void fluid_sfont_iteration_start(fluid_sfont_t* sfont) ++{ ++ sfont->iteration_start(sfont); ++} ++ ++// Due to the API change, we can't simply shim the 'fluid_sfont_iteration_next' function ++inline fluid_preset_t* fluid_sfont_iteration_next_wrapper(fluid_sfont_t* sfont, fluid_preset_t* preset) ++{ ++ return sfont->iteration_next(sfont, preset) ? preset : nullptr; ++} ++ ++#else // FLUIDSYNTH_VERSION_MAJOR < 2 ++ ++#define FLUID_REVERB_DEFAULT_ROOMSIZE 0.2f ++#define FLUID_REVERB_DEFAULT_DAMP 0.0f ++#define FLUID_REVERB_DEFAULT_WIDTH 0.5f ++#define FLUID_REVERB_DEFAULT_LEVEL 0.9f ++ ++#define FLUID_CHORUS_DEFAULT_N 3 ++#define FLUID_CHORUS_DEFAULT_LEVEL 2.0f ++#define FLUID_CHORUS_DEFAULT_SPEED 0.3f ++#define FLUID_CHORUS_DEFAULT_DEPTH 8.0f ++ ++inline fluid_preset_t* fluid_sfont_iteration_next_wrapper(fluid_sfont_t* sfont, fluid_preset_t*) ++{ ++ return fluid_sfont_iteration_next(sfont); ++} ++ ++#endif // FLUIDSYNTH_VERSION_MAJOR < 2 ++ ++#endif // FLUIDSYNTHSHIMS_H +diff -rupN lmms-1.1.3.org/plugins/sf2_player/patches_dialog.cpp lmms-1.1.3/plugins/sf2_player/patches_dialog.cpp +--- lmms-1.1.3.org/plugins/sf2_player/patches_dialog.cpp 2015-03-07 21:47:14.000000000 -0500 ++++ lmms-1.1.3/plugins/sf2_player/patches_dialog.cpp 2020-02-17 11:16:49.674333549 -0500 +@@ -139,7 +139,6 @@ void patchesDialog::setup ( fluid_synth_ + m_iChan = iChan; + + +- fluid_preset_t preset; + QTreeWidgetItem *pBankItem = NULL; + // For all soundfonts (in reversed stack order) fill the available banks... + int cSoundFonts = ::fluid_synth_sfcount(m_pSynth); +@@ -147,11 +146,17 @@ void patchesDialog::setup ( fluid_synth_ + fluid_sfont_t *pSoundFont = ::fluid_synth_get_sfont(m_pSynth, i); + if (pSoundFont) { + #ifdef CONFIG_FLUID_BANK_OFFSET +- int iBankOffset = ::fluid_synth_get_bank_offset(m_pSynth, pSoundFont->id); ++ int iBankOffset = ::fluid_synth_get_bank_offset(m_pSynth, fluid_sfont_get_id(pSoundFont)); + #endif +- pSoundFont->iteration_start(pSoundFont); +- while (pSoundFont->iteration_next(pSoundFont, &preset)) { +- int iBank = preset.get_banknum(&preset); ++ fluid_sfont_iteration_start(pSoundFont); ++#if FLUIDSYNTH_VERSION_MAJOR < 2 ++ fluid_preset_t preset; ++ fluid_preset_t *pCurPreset = &preset; ++#else ++ fluid_preset_t *pCurPreset; ++#endif ++ while ((pCurPreset = fluid_sfont_iteration_next_wrapper(pSoundFont, pCurPreset))) { ++ int iBank = fluid_preset_get_banknum(pCurPreset); + #ifdef CONFIG_FLUID_BANK_OFFSET + iBank += iBankOffset; + #endif +@@ -169,9 +174,9 @@ void patchesDialog::setup ( fluid_synth_ + m_iBank = 0; + fluid_preset_t *pPreset = ::fluid_synth_get_channel_preset(m_pSynth, m_iChan); + if (pPreset) { +- m_iBank = pPreset->get_banknum(pPreset); ++ m_iBank = fluid_preset_get_banknum(pPreset); + #ifdef CONFIG_FLUID_BANK_OFFSET +- m_iBank += ::fluid_synth_get_bank_offset(m_pSynth, (pPreset->sfont)->id); ++ m_iBank += ::fluid_synth_get_bank_offset(m_pSynth, fluid_sfont_get_id(fluid_preset_get_sfont(sfont))); + #endif + } + +@@ -182,7 +187,7 @@ void patchesDialog::setup ( fluid_synth_ + + // Set the selected program. + if (pPreset) +- m_iProg = pPreset->get_num(pPreset); ++ m_iProg = fluid_preset_get_num(pPreset); + QTreeWidgetItem *pProgItem = findProgItem(m_iProg); + m_progListView->setCurrentItem(pProgItem); + m_progListView->scrollToItem(pProgItem); +@@ -308,7 +313,6 @@ void patchesDialog::bankChanged (void) + // Clear up the program listview. + m_progListView->setSortingEnabled(false); + m_progListView->clear(); +- fluid_preset_t preset; + QTreeWidgetItem *pProgItem = NULL; + // For all soundfonts (in reversed stack order) fill the available programs... + int cSoundFonts = ::fluid_synth_sfcount(m_pSynth); +@@ -316,23 +320,29 @@ void patchesDialog::bankChanged (void) + fluid_sfont_t *pSoundFont = ::fluid_synth_get_sfont(m_pSynth, i); + if (pSoundFont) { + #ifdef CONFIG_FLUID_BANK_OFFSET +- int iBankOffset = ::fluid_synth_get_bank_offset(m_pSynth, pSoundFont->id); ++ int iBankOffset = ::fluid_synth_get_bank_offset(m_pSynth, fluid_sfont_get_id(pSoundFont)); ++#endif ++ fluid_sfont_iteration_start(pSoundFont); ++#if FLUIDSYNTH_VERSION_MAJOR < 2 ++ fluid_preset_t preset; ++ fluid_preset_t *pCurPreset = &preset; ++#else ++ fluid_preset_t *pCurPreset; + #endif +- pSoundFont->iteration_start(pSoundFont); +- while (pSoundFont->iteration_next(pSoundFont, &preset)) { +- int iBank = preset.get_banknum(&preset); ++ while ((pCurPreset = fluid_sfont_iteration_next_wrapper(pSoundFont, pCurPreset))) { ++ int iBank = fluid_preset_get_banknum(pCurPreset); + #ifdef CONFIG_FLUID_BANK_OFFSET + iBank += iBankOffset; + #endif +- int iProg = preset.get_num(&preset); ++ int iProg = fluid_preset_get_num(pCurPreset); + if (iBank == iBankSelected && !findProgItem(iProg)) { + pProgItem = new patchItem(m_progListView, pProgItem); + if (pProgItem) { + pProgItem->setText(0, QString::number(iProg)); +- pProgItem->setText(1, preset.get_name(&preset)); +- //pProgItem->setText(2, QString::number(pSoundFont->id)); ++ pProgItem->setText(1, fluid_preset_get_name(pCurPreset)); ++ //pProgItem->setText(2, QString::number(fluid_sfont_get_id(pSoundFont))); + //pProgItem->setText(3, QFileInfo( +- // pSoundFont->get_name(pSoundFont)).baseName()); ++ // fluid_sfont_get_name(pSoundFont).baseName()); + } + } + } +diff -rupN lmms-1.1.3.org/plugins/sf2_player/patches_dialog.h lmms-1.1.3/plugins/sf2_player/patches_dialog.h +--- lmms-1.1.3.org/plugins/sf2_player/patches_dialog.h 2015-03-07 21:47:14.000000000 -0500 ++++ lmms-1.1.3/plugins/sf2_player/patches_dialog.h 2020-02-17 11:18:47.042168274 -0500 +@@ -29,7 +29,7 @@ + #include "ui_patches_dialog.h" + #include "LcdSpinBox.h" + +-#include ++#include "fluidsynthshims.h" + #include + #include + +diff -rupN lmms-1.1.3.org/plugins/sf2_player/sf2_player.cpp lmms-1.1.3/plugins/sf2_player/sf2_player.cpp +--- lmms-1.1.3.org/plugins/sf2_player/sf2_player.cpp 2015-03-07 21:47:14.000000000 -0500 ++++ lmms-1.1.3/plugins/sf2_player/sf2_player.cpp 2020-02-17 11:28:54.242010202 -0500 +@@ -115,6 +115,30 @@ sf2Instrument::sf2Instrument( Instrument + // everytime we load a new soundfont. + m_synth = new_fluid_synth( m_settings ); + ++#if FLUIDSYNTH_VERSION_MAJOR >= 2 ++ // Get the default values from the setting ++ ++ double settingVal; ++ ++ fluid_settings_getnum_default(m_settings, "synth.reverb.room-size", &settingVal); ++ m_reverbRoomSize.setInitValue(settingVal); ++ fluid_settings_getnum_default(m_settings, "synth.reverb.damping", &settingVal); ++ m_reverbDamping.setInitValue(settingVal); ++ fluid_settings_getnum_default(m_settings, "synth.reverb.width", &settingVal); ++ m_reverbWidth.setInitValue(settingVal); ++ fluid_settings_getnum_default(m_settings, "synth.reverb.level", &settingVal); ++ m_reverbLevel.setInitValue(settingVal); ++ ++ fluid_settings_getnum_default(m_settings, "synth.chorus.nr", &settingVal); ++ m_chorusNum.setInitValue(settingVal); ++ fluid_settings_getnum_default(m_settings, "synth.chorus.level", &settingVal); ++ m_chorusLevel.setInitValue(settingVal); ++ fluid_settings_getnum_default(m_settings, "synth.chorus.speed", &settingVal); ++ m_chorusSpeed.setInitValue(settingVal); ++ fluid_settings_getnum_default(m_settings, "synth.chorus.depth", &settingVal); ++ m_chorusDepth.setInitValue(settingVal); ++#endif ++ + InstrumentPlayHandle * iph = new InstrumentPlayHandle( this ); + engine::mixer()->addPlayHandle( iph ); + +@@ -378,7 +402,6 @@ QString sf2Instrument::getCurrentPatchNa + int iBankSelected = m_bankNum.value(); + int iProgSelected = m_patchNum.value(); + +- fluid_preset_t preset; + // For all soundfonts (in reversed stack order) fill the available programs... + int cSoundFonts = ::fluid_synth_sfcount( m_synth ); + for( int i = 0; i < cSoundFonts; i++ ) +@@ -389,21 +412,26 @@ QString sf2Instrument::getCurrentPatchNa + #ifdef CONFIG_FLUID_BANK_OFFSET + int iBankOffset = + fluid_synth_get_bank_offset( +- m_synth, pSoundFont->id ); ++ m_synth, fluid_sfont_get_id(pSoundFont) ); ++#endif ++ fluid_sfont_iteration_start( pSoundFont ); ++#if FLUIDSYNTH_VERSION_MAJOR < 2 ++ fluid_preset_t preset; ++ fluid_preset_t *pCurPreset = &preset; ++#else ++ fluid_preset_t *pCurPreset; + #endif +- pSoundFont->iteration_start( pSoundFont ); +- while( pSoundFont->iteration_next( pSoundFont, +- &preset ) ) ++ while ((pCurPreset = fluid_sfont_iteration_next_wrapper(pSoundFont, pCurPreset))) + { +- int iBank = preset.get_banknum( &preset ); ++ int iBank = fluid_preset_get_banknum( pCurPreset ); + #ifdef CONFIG_FLUID_BANK_OFFSET + iBank += iBankOffset; + #endif +- int iProg = preset.get_num( &preset ); ++ int iProg = fluid_preset_get_num( pCurPreset ); + if( iBank == iBankSelected && iProg == + iProgSelected ) + { +- return preset.get_name( &preset ); ++ return fluid_preset_get_name( pCurPreset ); + } + } + } +diff -rupN lmms-1.1.3.org/plugins/sf2_player/sf2_player.h lmms-1.1.3/plugins/sf2_player/sf2_player.h +--- lmms-1.1.3.org/plugins/sf2_player/sf2_player.h 2015-03-07 21:47:14.000000000 -0500 ++++ lmms-1.1.3/plugins/sf2_player/sf2_player.h 2020-02-17 11:29:39.218922132 -0500 +@@ -35,7 +35,7 @@ + #include "knob.h" + #include "LcdSpinBox.h" + #include "led_checkbox.h" +-#include "fluidsynth.h" ++#include "fluidsynthshims.h" + #include "SampleBuffer.h" + + class sf2InstrumentView; diff --git a/lmms-1.1.3-gcc47.patch b/lmms-1.1.3-gcc47.patch new file mode 100644 index 0000000..804a1e3 --- /dev/null +++ b/lmms-1.1.3-gcc47.patch @@ -0,0 +1,25 @@ +From: Thomas Moschny +Subject: [PATCH] t/gcc-47 + +Small fix for gcc 4.7 compatibility. + +Signed-off-by: Thomas Moschny + +--- + plugins/zynaddsubfx/LocalZynAddSubFx.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/plugins/zynaddsubfx/LocalZynAddSubFx.cpp b/plugins/zynaddsubfx/LocalZynAddSubFx.cpp +index 7bb7e76..29185f5 100644 +--- a/plugins/zynaddsubfx/LocalZynAddSubFx.cpp ++++ b/plugins/zynaddsubfx/LocalZynAddSubFx.cpp +@@ -35,6 +35,7 @@ + #include "zynaddsubfx/src/Misc/Part.h" + #include "zynaddsubfx/src/Misc/Dump.h" + ++#include + + SYNTH_T* synth = NULL; + +-- +tg: (d14f451..) t/gcc-47 (depends on: stable-1.1) diff --git a/lmms-1.1.3-gcc8.patch b/lmms-1.1.3-gcc8.patch new file mode 100644 index 0000000..d1c2591 --- /dev/null +++ b/lmms-1.1.3-gcc8.patch @@ -0,0 +1,10 @@ +diff -up lmms-1.1.3/include/versioninfo.h.orig lmms-1.1.3/include/versioninfo.h +--- lmms-1.1.3/include/versioninfo.orig 2015-03-08 03:47:14.000000000 +0100 ++++ lmms-1.1.3/include/versioninfo.h 2018-02-13 19:00:55.028687538 +0100 +@@ -1,5 +1,5 @@ + #ifdef __GNUC__ +-#define GCC_VERSION "GCC "__VERSION__ ++#define GCC_VERSION "GCC " __VERSION__ + #else + #define GCC_VERSION "unknown compiler" + #endif diff --git a/lmms-1.1.3-libexecdir.patch b/lmms-1.1.3-libexecdir.patch new file mode 100644 index 0000000..9f7a90f --- /dev/null +++ b/lmms-1.1.3-libexecdir.patch @@ -0,0 +1,68 @@ +From: Thomas Moschny +Subject: [PATCH] t/libexecdir + +Move the vst and zynaddsubfx plugins to libexecdir. + +Signed-off-by: Thomas Moschny + +--- + CMakeLists.txt | 2 +- + plugins/vst_base/CMakeLists.txt | 2 +- + plugins/zynaddsubfx/CMakeLists.txt | 2 +- + src/core/RemotePlugin.cpp | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 63af96c..09b52bc 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -436,7 +436,7 @@ ENDIF() + # Paths relative to lmms executable + FILE(RELATIVE_PATH LIB_DIR_RELATIVE "/${BIN_DIR}" "/${LIB_DIR}") + FILE(RELATIVE_PATH PLUGIN_DIR_RELATIVE "/${BIN_DIR}" "/${PLUGIN_DIR}") +-ADD_DEFINITIONS(-D'LIB_DIR="${LIB_DIR_RELATIVE}/"' -D'PLUGIN_DIR="${PLUGIN_DIR_RELATIVE}/"' ${PULSEAUDIO_DEFINITIONS} ${PORTAUDIO_DEFINITIONS}) ++ADD_DEFINITIONS(-D'LIB_DIR="${LIB_DIR_RELATIVE}/"' -D'PLUGIN_DIR="${PLUGIN_DIR_RELATIVE}/"' -D'LIBEXEC_DIR="${LIBEXEC_INSTALL_DIR}"' ${PULSEAUDIO_DEFINITIONS} ${PORTAUDIO_DEFINITIONS}) + INCLUDE_DIRECTORIES("${CMAKE_BINARY_DIR}" + "${CMAKE_BINARY_DIR}/include" + "${CMAKE_SOURCE_DIR}" +diff --git a/plugins/vst_base/CMakeLists.txt b/plugins/vst_base/CMakeLists.txt +index 373604c..be2914f 100644 +--- a/plugins/vst_base/CMakeLists.txt ++++ b/plugins/vst_base/CMakeLists.txt +@@ -42,7 +42,7 @@ ADD_CUSTOM_COMMAND( + ) + + SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES RemoteVstPlugin.exe.so) +-INSTALL(PROGRAMS "${CMAKE_CURRENT_BINARY_DIR}/RemoteVstPlugin" "${CMAKE_CURRENT_BINARY_DIR}/RemoteVstPlugin.exe.so" DESTINATION "${PLUGIN_DIR}") ++INSTALL(PROGRAMS "${CMAKE_CURRENT_BINARY_DIR}/RemoteVstPlugin" "${CMAKE_CURRENT_BINARY_DIR}/RemoteVstPlugin.exe.so" DESTINATION "${LIBEXEC_INSTALL_DIR}") + ENDIF(LMMS_BUILD_LINUX AND NOT WANT_VST_NOWINE) + + +diff --git a/plugins/zynaddsubfx/CMakeLists.txt b/plugins/zynaddsubfx/CMakeLists.txt +index 8864804..f35485a 100644 +--- a/plugins/zynaddsubfx/CMakeLists.txt ++++ b/plugins/zynaddsubfx/CMakeLists.txt +@@ -129,7 +129,7 @@ ENDIF(WIN32) + SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${PLUGIN_DIR}") + SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) + ADD_EXECUTABLE(RemoteZynAddSubFx RemoteZynAddSubFx.cpp "${WINRC}") +-INSTALL(TARGETS RemoteZynAddSubFx RUNTIME DESTINATION "${PLUGIN_DIR}") ++INSTALL(TARGETS RemoteZynAddSubFx RUNTIME DESTINATION "${LIBEXEC_INSTALL_DIR}") + TARGET_LINK_LIBRARIES(RemoteZynAddSubFx zynaddsubfx_gui ZynAddSubFxCore ${FLTK_LIBRARIES} -lpthread ) + + # link Qt libraries when on win32 +diff --git a/src/core/RemotePlugin.cpp b/src/core/RemotePlugin.cpp +index 023f683..5bce7a3 100644 +--- a/src/core/RemotePlugin.cpp ++++ b/src/core/RemotePlugin.cpp +@@ -130,7 +130,7 @@ bool RemotePlugin::init( const QString &pluginExecutable, + reset( new shmFifo(), new shmFifo() ); + m_failed = false; + } +- QString exec = configManager::inst()->pluginDir() + ++ QString exec = QString( LIBEXEC_DIR ) + + QDir::separator() + pluginExecutable; + + QStringList args; +-- +tg: (d14f451..) t/libexecdir (depends on: stable-1.1) diff --git a/lmms-1.1.3-no_werror.patch b/lmms-1.1.3-no_werror.patch new file mode 100644 index 0000000..90b0c83 --- /dev/null +++ b/lmms-1.1.3-no_werror.patch @@ -0,0 +1,31 @@ +From: Rex Dieter +Subject: [PATCH] t/no_werror + +drop all -Werror related flags +-Werror is fine for development, not so much for release builds + +--- + CMakeLists.txt | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 63af96c..7b22e7f 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -333,10 +333,10 @@ CONFIGURE_FILE("${CMAKE_SOURCE_DIR}/lmms.rc.in" "${CMAKE_BINARY_DIR}/lmms.rc") + CONFIGURE_FILE("${CMAKE_SOURCE_DIR}/plugins/zynaddsubfx/zynaddsubfx.rc.in" "${CMAKE_BINARY_DIR}/plugins/zynaddsubfx/zynaddsubfx.rc") + + # set compiler flags +-SET(WERROR_FLAGS "-Wall -Werror=unused-function -Wno-sign-compare -Wno-strict-overflow") +-IF(NOT LMMS_BUILD_APPLE) +- SET(WERROR_FLAGS "${WERROR_FLAGS} -Werror") +-ENDIF() ++#SET(WERROR_FLAGS "-Wall -Werror=unused-function -Wno-sign-compare -Wno-strict-overflow") ++#IF(NOT LMMS_BUILD_APPLE) ++# SET(WERROR_FLAGS "${WERROR_FLAGS} -Werror") ++#ENDIF() + + # Due to a regression in gcc-4.8.X, we need to disable array-bounds check + IF (CMAKE_COMPILER_IS_GNUCXX AND ((CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL "4.8.0") OR (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER "4.8.0"))) +-- +tg: (d14f451..) t/no_werror (depends on: stable-1.1) diff --git a/lmms-1.1.3-vst-nowine.patch b/lmms-1.1.3-vst-nowine.patch new file mode 100644 index 0000000..f1489d4 --- /dev/null +++ b/lmms-1.1.3-vst-nowine.patch @@ -0,0 +1,27 @@ +From: Thomas Moschny +Subject: [PATCH] t/vst-nowine + +Build with vst support but without having wine. + +Signed-off-by: Thomas Moschny + +--- + CMakeLists.txt | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 63af96c..9871ac1 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -321,6 +321,9 @@ IF(LMMS_BUILD_WIN32) + SET(LMMS_SUPPORT_VST TRUE) + SET(STATUS_VST "OK") + ENDIF(LMMS_BUILD_WIN32) ++IF(WANT_VST_NOWINE) ++ SET(LMMS_SUPPORT_VST TRUE) ++ENDIF(WANT_VST_NOWINE) + + + # check for libsamplerate +-- +tg: (d14f451..) t/vst-nowine (depends on: stable-1.1) diff --git a/lmms-1.1.3-vst.patch b/lmms-1.1.3-vst.patch new file mode 100644 index 0000000..ac13d7f --- /dev/null +++ b/lmms-1.1.3-vst.patch @@ -0,0 +1,57 @@ +diff -up lmms-1.1.3/plugins/vestige/CMakeLists.txt.orig lmms-1.1.3/plugins/vestige/CMakeLists.txt +--- lmms-1.1.3/plugins/vestige/CMakeLists.txt.orig 2015-03-08 03:47:14.000000000 +0100 ++++ lmms-1.1.3/plugins/vestige/CMakeLists.txt 2016-11-10 20:14:47.597363084 +0100 +@@ -3,6 +3,10 @@ IF(LMMS_SUPPORT_VST) + INCLUDE_DIRECTORIES("${CMAKE_CURRENT_SOURCE_DIR}/../vst_base") + LINK_DIRECTORIES("${CMAKE_CURRENT_BINARY_DIR}/../vst_base") + LINK_LIBRARIES(vstbase) +- BUILD_PLUGIN(vestige vestige.cpp vestige.h MOCFILES vestige.h EMBEDDED_RESOURCES "${CMAKE_CURRENT_SOURCE_DIR}/*.png") ++ IF(LMMS_BUILD_WIN32) ++ BUILD_PLUGIN(vestige vestige.cpp vestige.h MOCFILES vestige.h EMBEDDED_RESOURCES "${CMAKE_CURRENT_SOURCE_DIR}/*.png") ++ ELSE() ++ BUILD_PLUGIN(vestige vestige.cpp vestige.h MOCFILES vestige.h EMBEDDED_RESOURCES "${CMAKE_CURRENT_SOURCE_DIR}/*.png" LINK SHARED) ++ ENDIF() + ENDIF(LMMS_SUPPORT_VST) + +diff -up lmms-1.1.3/plugins/vst_base/CMakeLists.txt.orig lmms-1.1.3/plugins/vst_base/CMakeLists.txt +--- lmms-1.1.3/plugins/vst_base/CMakeLists.txt.orig 2016-11-10 20:08:27.190930211 +0100 ++++ lmms-1.1.3/plugins/vst_base/CMakeLists.txt 2016-11-10 20:14:47.597363084 +0100 +@@ -17,8 +17,11 @@ IF(LMMS_BUILD_WIN32) + ENDIF(LMMS_BUILD_WIN64) + ENDIF(LMMS_BUILD_WIN32) + +-BUILD_PLUGIN(vstbase vst_base.cpp VstPlugin.cpp VstPlugin.h communication.h MOCFILES VstPlugin.h) +- ++IF(LMMS_BUILD_WIN32) ++ BUILD_PLUGIN(vstbase vst_base.cpp VstPlugin.cpp VstPlugin.h communication.h MOCFILES VstPlugin.h) ++ELSE() ++ BUILD_PLUGIN(vstbase vst_base.cpp VstPlugin.cpp VstPlugin.h communication.h MOCFILES VstPlugin.h LINK SHARED) ++ENDIF() + + IF(LMMS_BUILD_LINUX AND NOT WANT_VST_NOWINE) + +diff -up lmms-1.1.3/cmake/modules/BuildPlugin.cmake.orig lmms-1.1.3/cmake/modules/BuildPlugin.cmake +--- lmms-1.1.3/cmake/modules/BuildPlugin.cmake.orig 2016-11-10 20:35:17.699595380 +0100 ++++ lmms-1.1.3/cmake/modules/BuildPlugin.cmake 2016-11-10 20:37:30.954995672 +0100 +@@ -50,7 +50,7 @@ MACRO(PARSE_ARGUMENTS prefix arg_names o + ENDMACRO(PARSE_ARGUMENTS) + + MACRO(BUILD_PLUGIN) +- PARSE_ARGUMENTS(PLUGIN "MOCFILES;EMBEDDED_RESOURCES;UICFILES" "" ${ARGN} ) ++ PARSE_ARGUMENTS(PLUGIN "MOCFILES;EMBEDDED_RESOURCES;UICFILES;LINK" "" ${ARGN} ) + CAR(PLUGIN_NAME ${PLUGIN_DEFAULT_ARGS}) + CDR(PLUGIN_SOURCES ${PLUGIN_DEFAULT_ARGS}) + +@@ -82,7 +82,11 @@ MACRO(BUILD_PLUGIN) + LINK_LIBRARIES(-llmms ${QT_LIBRARIES}) + ENDIF(LMMS_BUILD_WIN32) + +- ADD_LIBRARY(${PLUGIN_NAME} MODULE ${PLUGIN_SOURCES}) ++ IF ("${PLUGIN_LINK}" STREQUAL "SHARED") ++ ADD_LIBRARY(${PLUGIN_NAME} SHARED ${PLUGIN_SOURCES}) ++ ELSE () ++ ADD_LIBRARY(${PLUGIN_NAME} MODULE ${PLUGIN_SOURCES}) ++ ENDIF () + INSTALL(TARGETS ${PLUGIN_NAME} LIBRARY DESTINATION "${PLUGIN_DIR}") + + IF(LMMS_BUILD_APPLE) diff --git a/lmms-1.1.3-wine.patch b/lmms-1.1.3-wine.patch new file mode 100644 index 0000000..7eac0f4 --- /dev/null +++ b/lmms-1.1.3-wine.patch @@ -0,0 +1,12 @@ +diff -up lmms-1.1.3/cmake/modules/FindWine.cmake.orig lmms-1.1.3/cmake/modules/FindWine.cmake +--- lmms-1.1.3/cmake/modules/FindWine.cmake.orig 2015-03-08 03:47:14.000000000 +0100 ++++ lmms-1.1.3/cmake/modules/FindWine.cmake 2021-05-18 14:55:27.257497240 +0200 +@@ -8,7 +8,7 @@ + # + + FIND_PATH(WINE_INCLUDE_DIR windows/windows.h PATH_SUFFIXES wine) +-FIND_LIBRARY(WINE_LIBRARY NAMES wine PATH_SUFFIXES wine) ++FIND_LIBRARY(WINE_LIBRARY NAMES wine libwine.so.1 PATH_SUFFIXES wine) + FIND_PROGRAM(WINE_CXX NAMES wineg++) + + set(WINE_INCLUDE_DIRS ${WINE_INCLUDE_DIR} ) diff --git a/lmms-1.2.2_carla_2.4.3.patch b/lmms-1.2.2_carla_2.4.3.patch deleted file mode 100644 index 9827028..0000000 --- a/lmms-1.2.2_carla_2.4.3.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/plugins/carlabase/carla.h b/plugins/carlabase/carla.h -index fb54e2271..6f1971ea0 100644 ---- a/plugins/carlabase/carla.h -+++ b/plugins/carlabase/carla.h -@@ -28,6 +28,7 @@ - #include - - #define REAL_BUILD // FIXME this shouldn't be needed -+#include "CarlaDefines.h" - #if CARLA_VERSION_HEX >= 0x010911 - #include "CarlaNativePlugin.h" - #else diff --git a/lmms-1.2.2_lib_suffix.patch b/lmms-1.2.2_lib_suffix.patch deleted file mode 100644 index 6155376..0000000 --- a/lmms-1.2.2_lib_suffix.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff -up lmms/CMakeLists.txt~ lmms/CMakeLists.txt ---- lmms/CMakeLists.txt~ 2018-11-03 02:43:42.000000000 +0100 -+++ lmms/CMakeLists.txt 2021-05-23 15:05:43.959322349 +0200 -@@ -564,6 +564,9 @@ IF(USE_CCACHE) - ENDIF() - ENDIF() - -+# pass LIB_SUFFIX -+add_definitions(-DLIB_SUFFIX="${LIB_SUFFIX}") -+ - # make sub-directories - ADD_SUBDIRECTORY(cmake) - ADD_SUBDIRECTORY(src) -diff -up lmms/src/core/PluginFactory.cpp~ lmms/src/core/PluginFactory.cpp ---- lmms/src/core/PluginFactory.cpp~ 2018-11-03 02:43:42.000000000 +0100 -+++ lmms/src/core/PluginFactory.cpp 2021-05-23 15:24:24.965029963 +0200 -@@ -64,7 +64,7 @@ PluginFactory::PluginFactory() - // plugins at "C:/Program Files/LMMS/plugins/" - - #ifndef LMMS_BUILD_WIN32 -- addRelativeIfExists("../lib/lmms"); // Installed -+ addRelativeIfExists("../lib" LIB_SUFFIX "/lmms"); // Installed - #endif - addRelativeIfExists("plugins"); // Portable - #ifdef PLUGIN_DIR // We may also have received a relative directory via a define diff --git a/lmms-1.2.2_winelib.patch b/lmms-1.2.2_winelib.patch deleted file mode 100644 index 356e4d3..0000000 --- a/lmms-1.2.2_winelib.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up lmms/cmake/modules/FindWine.cmake.orig lmms/cmake/modules/FindWine.cmake ---- lmms/cmake/modules/FindWine.cmake.orig 2018-11-03 02:43:42.000000000 +0100 -+++ lmms/cmake/modules/FindWine.cmake 2021-05-23 21:55:25.176500358 +0200 -@@ -10,7 +10,7 @@ - LIST(APPEND CMAKE_PREFIX_PATH /opt/wine-stable /opt/wine-devel /opt/wine-staging) - - FIND_PATH(WINE_INCLUDE_DIR windows/windows.h PATH_SUFFIXES wine wine/wine) --FIND_LIBRARY(WINE_LIBRARY NAMES wine PATH_SUFFIXES wine i386-linux-gnu/wine) -+FIND_LIBRARY(WINE_LIBRARY NAMES wine PATH_SUFFIXES wine i386-linux-gnu/wine wine/i386-unix) - FIND_PROGRAM(WINE_CXX NAMES wineg++ winegcc winegcc64 winegcc32) - - set(WINE_INCLUDE_DIRS ${WINE_INCLUDE_DIR} ) diff --git a/lmms.metainfo.xml b/lmms.metainfo.xml deleted file mode 100644 index e0624ee..0000000 --- a/lmms.metainfo.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - lmms - CC0 - GPL-2.0+ - LMMS - LMMS - A music production application - Une application de production musicale - -

LMMS is a music production application. It allows the creation - of loops, synthesizing and mixing sounds, arranging samples having - fun with your MIDI-keyboard and much more... It combines the - features of a tracker-/sequencer-program and those of powerful - synthesizers, samplers, effects etc. in a modern, user-friendly and - easy to use graphical user-interface.

-
- -

LMMS est une applicaton de production musicale. Elle permet la - creation de loops, de synthétiser et mixer des sons, d'arranger des - échantillons, de jouer avec un clavier MIDI, et plus... Elle - combine les fonctionalités d'un programme tracker/séquenceur et - celles de synthétiseurs puissants, échantilloneurs, effets, etc. le - tout dans une interface graphique moderne et facile à utiliser.

-
- - lmms.desktop - lmms - - - https://lmms.io/wiki/images/thumb/2/2d/Startup_LMMS_new.png/1200px-Startup_LMMS_new.png - The main LMMS window - - - lmms-devel_AT_lists.sourceforge.net - https://lmms.io/ - https://github.com/LMMS/lmms/issues - https://lmms.io/documentation/User_FAQ - https://lmms.io/documentation/ - https://github.com/LMMS/lmms/wiki/Creating-a-localization -
diff --git a/lmms.spec b/lmms.spec index b17b3e5..fcf538c 100644 --- a/lmms.spec +++ b/lmms.spec @@ -1,17 +1,12 @@ - -%ifarch %ix86 -%bcond_with wine -%else -%bcond_with wine -%endif - Name: lmms -Version: 1.2.2 -Release: 18%{?dist} +Version: 1.1.3 +Release: 17%{?dist} Summary: Linux MultiMedia Studio URL: https://lmms.io/ # - lmms itself is GPLv2+ +# - included third-party code +# - libsamplerate: GPLv2+ (but we use the system one) # - third party code used by plugins: # - drumsynth files: GPLv2+ or MIT # - for ladspa-effects (note that we only include cmt and swh in the @@ -21,6 +16,7 @@ URL: https://lmms.io/ # - swh: GPLv2+ # - tap: GPLv2+ # - calf: GPLv2+ and LGPLv2+ +# - GNU UnRTF (flp_import plugin): GPLv3+ # - Portsmf (midi_import plugin): MIT # - Blip_Buffer and Gb_Snd_Emu (papu plugin): LGPLv2.1+ # - reSID (sid plugin): GPLv2+ @@ -31,24 +27,40 @@ URL: https://lmms.io/ License: GPLv2+ and GPLv2 and (GPLv2+ or MIT) and GPLv3+ and MIT and LGPLv2+ and (LGPLv2+ with exceptions) and Copyright only # original tarfile can be found here: -# https://github.com/LMMS/lmms/releases/download/v%%{version}/lmms_%%{version}.tar.xz -Source0: lmms_%{version}.stripped.tar.xz +# https://github.com/LMMS/lmms/archive/v%%{version}.tar.gz +Source0: v%{version}.stripped.tar.gz # we strip all .ogg / .wav / .mmp(z) files from the tarfile, # until their license situation becomes clearer. Source1: README.fedora -# see #1575262 -Source2: lmms.metainfo.xml +# move the vst and zynaddsubfx plugins to libexecdir. +Patch0: lmms-1.1.3-libexecdir.patch -# Fix for finding libwine -Patch0: lmms-1.2.2_winelib.patch +# build with vst support but without having wine. that is a tiny patch +# upstream isn't really interested in. +Patch1: lmms-1.1.3-vst-nowine.patch -# Pass LIB_SUFFIX -Patch1: lmms-1.2.2_lib_suffix.patch +# adds missing includes +Patch2: lmms-1.1.3-gcc47.patch -# Fix building against Carla 2.4.3, see #6395 -Patch2: lmms-1.2.2_carla_2.4.3.patch +# drop all -Werror related flags +# -Werror is fine for development, not so much for release builds +Patch3: lmms-1.1.3-no_werror.patch + +# small issue with c++11 +Patch4: lmms-1.1.3-gcc8.patch + +# backported upstream commit 3974faca, trying to fix #2628 (see also +# bz #1388466) +Patch5: lmms-1.1.3-vst.patch + +# backported upstream commit 1f7cd3ed to build against fluidsynth 1 +# and 2 (thanks to Christoph Karl ) +Patch6: lmms-1.1.3-fluidsynth1and2.patch + +# Work around the fact that wine-devel does not provide libwine.so +Patch7: lmms-1.1.3-wine.patch # according to upstream we should at least support oss, alsa, and # jack. output via pulseaudio has high latency, but we enable it @@ -65,28 +77,15 @@ BuildRequires: libvorbis-devel BuildRequires: libogg-devel BuildRequires: ladspa-devel BuildRequires: stk-devel -BuildRequires: qt5-qt3d-devel -BuildRequires: qt5-qtbase-devel -BuildRequires: qt5-qtbase-private-devel -BuildRequires: qt5-qttools-devel -BuildRequires: qt5-qtx11extras-devel -BuildRequires: xcb-util-devel -BuildRequires: xcb-util-keysyms-devel +BuildRequires: qt4-devel BuildRequires: fltk-devel BuildRequires: fltk-fluid BuildRequires: cmake -BuildRequires: make BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: desktop-file-utils -BuildRequires: bash-completion -BuildRequires: Carla-devel -BuildRequires: libappstream-glib -# require packages owning directories we use -Requires: shared-mime-info -Requires: hicolor-icon-theme -%if %{with wine} +%ifarch %ix86 BuildRequires: wine-devel %endif @@ -101,13 +100,12 @@ Requires: ladspa-calf-plugins # the -vst subpackage can only be built on ix86, but is also usable # (and thus should be installed) on x86_64. -#ifarch #ix86 x86_64 -%if %{with wine} +%ifarch %ix86 x86_64 Requires: %{name}-vst = %{version}-%{release} %endif %global __provides_exclude_from ^%{_libdir}/lmms/.*$ -%global __requires_exclude ^libvstbase\\.so.*$|^libZynAddSubFxCore\\.so.*$|^libcarlabase\\.so.*$|^libcarla_native-plugin\\.so.*$ +%global __requires_exclude ^libvstbase\\.so.*$|^libZynAddSubFxCore\\.so.*$ %description @@ -142,8 +140,12 @@ The %{name}-devel package contains header files for developing addons for %{name}. +# rpath needed e.g. for /usr/libexec/RemoteZynAddSubFx +%global _cmake_skip_rpath %{nil} + + %prep -%autosetup -p1 -n %{name} +%autosetup -p1 # remove spurious x-bits find . -type f -exec chmod 0644 {} \; @@ -158,28 +160,23 @@ cp -a %{SOURCE1} README.fedora -DWANT_CAPS:BOOL=OFF \ -DWANT_TAP:BOOL=OFF \ -DWANT_CALF:BOOL=OFF \ - -DWINE_CXX_FLAGS:STRING="-fno-lto" \ - -DWANT_QT5:BOOL=ON \ -%ifarch %ix86 x86_64 +%ifarch %ix86 -DWANT_VST:BOOL=ON \ %else -DWANT_VST:BOOL=OFF \ %endif %ifarch x86_64 -DWANT_VST_NOWINE:BOOL=ON \ - -DREMOTE_VST_PLUGIN_FILEPATH="../../lib/lmms/RemoteVstPlugin" \ %endif -DCMAKE_INSTALL_LIBDIR=%{_lib} \ - -Wno-dev - -%cmake_build + -DLIBEXEC_INSTALL_DIR=%{_libexecdir} \ + -Wno-dev \ + . +make VERBOSE=1 %{?_smp_mflags} %install -%cmake_install - -# remove unneeded file -rm -f %{buildroot}%{_libdir}/libqx11embedcontainer.a +make DESTDIR=%{buildroot} install desktop-file-install --vendor '' \ --add-category=Midi \ @@ -188,33 +185,26 @@ desktop-file-install --vendor '' \ --dir %{buildroot}%{_datadir}/applications \ %{buildroot}%{_datadir}/applications/%{name}.desktop -install -D -m 0644 -p %{SOURCE2} %{buildroot}%{_metainfodir}/%{name}.metainfo.xml -appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.metainfo.xml - %files -%doc README.md README.fedora -%doc doc/AUTHORS doc/CONTRIBUTORS -%license LICENSE.txt +%doc AUTHORS README TODO README.fedora +%license COPYING %{_bindir}/%{name} %{_libdir}/%{name} +%{_libexecdir}/RemoteZynAddSubFx %{_datadir}/%{name} %{_datadir}/applications/%{name}.desktop %{_datadir}/mime/packages/%{name}.xml -%{_datadir}/icons/hicolor/*/apps/%{name}.{png,svg} -%{_datadir}/icons/hicolor/*/mimetypes/application-x-%{name}-project.{png,svg} -%{_metainfodir}/%{name}.metainfo.xml -%dir %{_datadir}/bash-completion -%dir %{_datadir}/bash-completion/completions -%{_datadir}/bash-completion/completions/%{name} +%{_datadir}/pixmaps/%{name}.png %{_mandir}/man*/%{name}* +%exclude %{_datadir}/menu/%{name} %files devel %{_includedir}/%{name} -%if %{with wine} +%ifarch %ix86 %package vst Summary: VST hosting plugin for %{name} @@ -223,93 +213,17 @@ Summary: VST hosting plugin for %{name} This package contains the necessary files to host VST plugins. %files vst -%dir %{_libdir}/%{name} -%{_libdir}/%{name}/RemoteVstPlugin* +%{_libexecdir}/RemoteVstPlugin* -%endif +%endif # ifarch %%ix86 %changelog -* Thu Jul 24 2025 Fedora Release Engineering - 1.2.2-18 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild +* Tue May 18 2021 Thomas Moschny - 1.1.3-17 +- Add patches to fix building on F32. -* Fri Jan 17 2025 Fedora Release Engineering - 1.2.2-17 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Thu Jul 18 2024 Fedora Release Engineering - 1.2.2-16 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Sun Jan 21 2024 Fedora Release Engineering - 1.2.2-15 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild -- Disable wine vst due to libwine.so.1 being removed in wine version 8.3 - see https://bugs.winehq.org/show_bug.cgi?id=54635 and https://github.com/LMMS/lmms/issues/6672 - (copied from https://build.opensuse.org/package/view_file/openSUSE:Backports:SLE-15-SP6/lmms/) - -* Thu Jul 20 2023 Fedora Release Engineering - 1.2.2-14 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Thu Jan 19 2023 Fedora Release Engineering - 1.2.2-13 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Thu Jul 21 2022 Fedora Release Engineering - 1.2.2-12 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Thu Jul 14 2022 Jan Grulich - 1.2.2-11 -- Rebuild (qt5) - -* Tue May 24 2022 Thomas Moschny - 1.2.2-10 -- Add patch to fix building with Carla 2.4.3. - -* Tue May 17 2022 Jan Grulich - 1.2.2-9 -- Rebuild (qt5) - -* Tue Mar 08 2022 Jan Grulich - 1.2.2-8 -- Rebuild (qt5) - -* Thu Jan 20 2022 Fedora Release Engineering - 1.2.2-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Thu Jul 22 2021 Fedora Release Engineering - 1.2.2-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Jun 16 2021 Thomas Moschny - 1.2.2-5 -- Rebuild against newer fluidsynth. - -* Sun May 23 2021 Thomas Moschny - 1.2.2-4 -- Switch to Qt5. -- Fix search path for RemoteZynAddSubFx plugin. -- Update patch for wine 6.8. - -* Mon May 10 2021 Thomas Moschny - 1.2.2-3 -- Install appdata file (#1575262). - -* Mon May 10 2021 Thomas Moschny - 1.2.2-2 -- Filter unwanted requirements. -- VST fixes. -- Enable Carla plugins. - -* Sat May 8 2021 Thomas Moschny - 1.2.2-1 -- Update to 1.2.2. -- Remove obsolete patches. - -* Tue Jan 26 2021 Fedora Release Engineering - 1.1.3-21 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Sat Oct 03 2020 Thomas Moschny - 1.1.3-20 -- Rebuilt for newer stk. - -* Wed Aug 5 2020 Thomas Moschny - 1.1.3-19 -- Use %%cmake macros. - -* Sat Aug 01 2020 Fedora Release Engineering - 1.1.3-18 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Jul 28 2020 Fedora Release Engineering - 1.1.3-17 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Mon Feb 17 2020 Orcan Ogetbil - 1.1.3-16 -- Rebuild against fluidsynth2 +* Fri May 07 2021 Carl George - 1.1.3-16 +- Rebuilt for fluidsynth soname bump rhbz#1953438 * Wed Jan 29 2020 Fedora Release Engineering - 1.1.3-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild diff --git a/repack.sh b/repack.sh index 3832435..cf4e466 100755 --- a/repack.sh +++ b/repack.sh @@ -1,19 +1,19 @@ #! /bin/bash -version="1.2.2" +version="1.1.3" -src="lmms_${version}.tar.xz" -dst="${src%.tar.xz}.stripped.tar.xz" +src="v${version}.tar.gz" +dst="${src%.tar.gz}.stripped.tar.gz" IFS=$'\n' command read -d '' -r -a list < <(tar tf "${src}" | egrep 'ogg$|wav$|mmpz?$|flac$') -rm -rf "${dst}" "${dst%.xz}" +rm -rf "${dst}" "${dst%.gz}" cp -av "${src}" "${dst}" -xz -d "${dst}" -tar --delete --file="${dst%.xz}" -- "${list[@]}" -touch -m -r "${src}" "${dst%.xz}" -xz "${dst%.xz}" +gzip -d "${dst}" +tar --delete --file="${dst%.gz}" -- "${list[@]}" +touch -m -r "${src}" "${dst%.gz}" +gzip "${dst%.gz}" ( printf 'For legal reasons, the following files have been removed from the\n' diff --git a/sources b/sources index 0af892d..21cb092 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lmms_1.2.2.stripped.tar.xz) = a5ca3eaecc0b8ebd70e219471f67e9ac31b24b3aa799076d439cc0499d42e66598ce0df10255ba6ce3a1925c977241d34aac5ed7fc6dfead47ef0641dc6e4ee1 +906211b524e916d0238e476d5fff7dbf v1.1.3.stripped.tar.gz