Hi ports --I would like to spin off the GUS patchset we awkwardly bolt onto the timidity package into its own package. This is because sdl-mixer and sdl2-mixer both have their own internal timidity, and currently timidity is not set as an RDEP for either, meaning that both sdl-mixer and sdl2-mixer effectively have no out-of-the-box midi support, even though they could if only we supplied a default patchset as an RDEP. I don't see a reason to include some useless (and old...) binaries to gain that support. Additionally, I have another port ready to go (audio/wildmidi) that also needs a patchset. Seeing as wildmidi is itself a midi player, it seems strange to have to install a different midi player to get wildmidi to work out-of-the-box.
I did have to tweak a pair of consumers, games/corsixth and games/openxcom. Both use one of the sdl-mixer ports for midi audio, meaning that a useless timidity binary has to be installed just to get audio. This changes things so that sound works as expected, no extra binaries need to be installed. I'll note there is precedent here with sf2 files, audio/generaluser-gs-soundfont being one such example. The timgm6mb port includes the GUS patchset and the sf2 file the patchset was generated from.
tl;dr1. spin off the TimGM6mb GUS patchset that we awkwardly bolt onto the timidity package into its own package
2. update all consumers to use this new package OK? ~Brian
timgm6mb.tgz
Description: Binary data
Index: audio/timidity/Makefile =================================================================== RCS file: /cvs/ports/audio/timidity/Makefile,v retrieving revision 1.47 diff -u -p -u -p -r1.47 Makefile --- audio/timidity/Makefile 2 Aug 2017 15:21:48 -0000 1.47 +++ audio/timidity/Makefile 12 Jan 2018 20:35:32 -0000 @@ -5,20 +5,15 @@ COMMENT= MIDI to WAV renderer and player V= 2.13.2 DISTNAME= TiMidity++-${V} PKGNAME= timidity-${V} -REVISION= 6 +REVISION= 7 CATEGORIES= audio MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=timidity/} -MASTER_SITES0= https://devio.us/~bcallah/source/ -TIINS= TimGM6mb-20170802.tar.gz -DISTFILES= ${TIINS}:0 ${DISTNAME}.tar.gz HOMEPAGE= http://timidity.sourceforge.net/ MAINTAINER= Brian Callahan <bcal...@openbsd.org> # timidity: GPLv2+ -# TimGM6mb: https://musescore.org/en/handbook/soundfonts#list -# "License: GNU GPL, version 2; Courtesy of Tim Brechbill" PERMIT_PACKAGE_CDROM= Yes WANTLIB= c m ncurses sndio @@ -73,13 +68,5 @@ pre-configure: cd ${WRKSRC}; AUTOCONF_VERSION=${AUTOCONF_VERSION} \ AUTOMAKE_VERSION=${AUTOMAKE_VERSION} automake \ --foreign --add-missing --copy - -post-install: - ${INSTALL_DATA_DIR} ${PREFIX}/share/timidity/TimGM6mb - ${INSTALL_DATA} ${WRKDIST}/TimGM6mb/* \ - ${PREFIX}/share/timidity/TimGM6mb - ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/timidity - ${SUBST_CMD} -c -m 644 ${WRKDIR}/timidity.cfg \ - ${PREFIX}/share/examples/timidity/timidity.cfg .include <bsd.port.mk> Index: audio/timidity/distinfo =================================================================== RCS file: /cvs/ports/audio/timidity/distinfo,v retrieving revision 1.6 diff -u -p -u -p -r1.6 distinfo --- audio/timidity/distinfo 2 Aug 2017 15:21:48 -0000 1.6 +++ audio/timidity/distinfo 12 Jan 2018 20:35:32 -0000 @@ -1,4 +1,2 @@ SHA256 (TiMidity++-2.13.2.tar.gz) = 8AclLp8/fzwEOh1RWJghRqRu4ybDsXoiJa/HM8MzK0c= -SHA256 (TimGM6mb-20170802.tar.gz) = tyxC4aU+yDs5vXpT6ftWcbkcOekt/DUFtZk5hVzCcUQ= SIZE (TiMidity++-2.13.2.tar.gz) = 1849553 -SIZE (TimGM6mb-20170802.tar.gz) = 9032726 Index: audio/timidity/pkg/PLIST =================================================================== RCS file: /cvs/ports/audio/timidity/pkg/PLIST,v retrieving revision 1.8 diff -u -p -u -p -r1.8 PLIST --- audio/timidity/pkg/PLIST 2 Aug 2017 15:21:48 -0000 1.8 +++ audio/timidity/pkg/PLIST 12 Jan 2018 20:35:32 -0000 @@ -2,191 +2,4 @@ @bin bin/timidity @man man/man1/timidity.1 @man man/man5/timidity.cfg.5 -share/examples/timidity/ -share/examples/timidity/timidity.cfg -@sample ${SYSCONFDIR}/timidity.cfg -share/timidity/ -share/timidity/TimGM6mb/ -share/timidity/TimGM6mb/5thSawWave.pat -share/timidity/TimGM6mb/808Click.pat -share/timidity/TimGM6mb/808Hat.pat -share/timidity/TimGM6mb/808Snare.pat -share/timidity/TimGM6mb/Accordion.pat -share/timidity/TimGM6mb/AcousticBass.pat -share/timidity/TimGM6mb/AcousticTom.pat -share/timidity/TimGM6mb/Agogo.pat -share/timidity/TimGM6mb/AgogoBell.pat -share/timidity/TimGM6mb/AltoSax-TBv2.3.pat -share/timidity/TimGM6mb/Applause.pat -share/timidity/TimGM6mb/Atmosphere.pat -share/timidity/TimGM6mb/Bagpipe.pat -share/timidity/TimGM6mb/Bandoneon.pat -share/timidity/TimGM6mb/Banjo.pat -share/timidity/TimGM6mb/BariSax-TBv2.3.pat -share/timidity/TimGM6mb/BassDrumNew.pat -share/timidity/TimGM6mb/BassLead.pat -share/timidity/TimGM6mb/Bassoon.pat -share/timidity/TimGM6mb/BellTree.pat -share/timidity/TimGM6mb/Bird.pat -share/timidity/TimGM6mb/BottleChiff.pat -share/timidity/TimGM6mb/BowedGlass.pat -share/timidity/TimGM6mb/Brass.pat -share/timidity/TimGM6mb/BrassTambourine.pat -share/timidity/TimGM6mb/BreathNoise.pat -share/timidity/TimGM6mb/Brightness.pat -share/timidity/TimGM6mb/BrushSnare.pat -share/timidity/TimGM6mb/Cabasa.pat -share/timidity/TimGM6mb/Castanets.pat -share/timidity/TimGM6mb/Celesta.pat -share/timidity/TimGM6mb/Cello.pat -share/timidity/TimGM6mb/Charang.pat -share/timidity/TimGM6mb/ChifferLead.pat -share/timidity/TimGM6mb/ChinaCrashCymb.pat -share/timidity/TimGM6mb/ChoirAahs.pat -share/timidity/TimGM6mb/ChurchOrgan.pat -share/timidity/TimGM6mb/Claps808ish.pat -share/timidity/TimGM6mb/Clarinet.pat -share/timidity/TimGM6mb/Clavinet.pat -share/timidity/TimGM6mb/CleanGuitar.pat -share/timidity/TimGM6mb/Contrabass.pat -share/timidity/TimGM6mb/Cowbell.pat -share/timidity/TimGM6mb/Cowbell808.pat -share/timidity/TimGM6mb/Crystal.pat -share/timidity/TimGM6mb/DistortionGuitar.pat -share/timidity/TimGM6mb/DrumStick.pat -share/timidity/TimGM6mb/Dulcimer.pat -share/timidity/TimGM6mb/E.Piano1.pat -share/timidity/TimGM6mb/E.Piano2.pat -share/timidity/TimGM6mb/EBongoRim.pat -share/timidity/TimGM6mb/ESnare.pat -share/timidity/TimGM6mb/EchoDrops.pat -share/timidity/TimGM6mb/EnglishHorn.pat -share/timidity/TimGM6mb/Fantasia.pat -share/timidity/TimGM6mb/Fiddle.pat -share/timidity/TimGM6mb/FilterSnap.pat -share/timidity/TimGM6mb/FingeredBass.pat -share/timidity/TimGM6mb/FluteTB.pat -share/timidity/TimGM6mb/FrenchHorns.pat -share/timidity/TimGM6mb/FretNoise.pat -share/timidity/TimGM6mb/FretlessBass.pat -share/timidity/TimGM6mb/Glockenspiel.pat -share/timidity/TimGM6mb/Goblin.pat -share/timidity/TimGM6mb/GuiroDown.pat -share/timidity/TimGM6mb/GuiroUp.pat -share/timidity/TimGM6mb/GuitarHarmonics.pat -share/timidity/TimGM6mb/GuitarMutes.pat -share/timidity/TimGM6mb/GunShot.pat -share/timidity/TimGM6mb/HaloPad.pat -share/timidity/TimGM6mb/Harmonica.pat -share/timidity/TimGM6mb/HarpLP.pat -share/timidity/TimGM6mb/Harpsichord.pat -share/timidity/TimGM6mb/Helicopter.pat -share/timidity/TimGM6mb/HighHatClosed.pat -share/timidity/TimGM6mb/HighHatFoot.pat -share/timidity/TimGM6mb/HonkyTonk.pat -share/timidity/TimGM6mb/IceRain.pat -share/timidity/TimGM6mb/JazzGuitar.pat -share/timidity/TimGM6mb/Kalimba.pat -share/timidity/TimGM6mb/Koto.pat -share/timidity/TimGM6mb/LowTumbaTone.pat -share/timidity/TimGM6mb/MBongoTone.pat -share/timidity/TimGM6mb/Maracas.pat -share/timidity/TimGM6mb/Marimba.pat -share/timidity/TimGM6mb/MedCrashCymbal.pat -share/timidity/TimGM6mb/MelodicTom.pat -share/timidity/TimGM6mb/MetClick.pat -share/timidity/TimGM6mb/MetalPad.pat -share/timidity/TimGM6mb/MusicBox.pat -share/timidity/TimGM6mb/MuteTriangle.pat -share/timidity/TimGM6mb/MuteTrumpet.pat -share/timidity/TimGM6mb/NoiseSlap.pat -share/timidity/TimGM6mb/NylonGuitar.pat -share/timidity/TimGM6mb/Oboe-Orch.pat -share/timidity/TimGM6mb/Ocarina.pat -share/timidity/TimGM6mb/OceanWave.pat -share/timidity/TimGM6mb/OpenHighHat.pat -share/timidity/TimGM6mb/OrchestraHit.pat -share/timidity/TimGM6mb/Organ1.pat -share/timidity/TimGM6mb/Organ2.pat -share/timidity/TimGM6mb/Organ3.pat -share/timidity/TimGM6mb/OverdriveGuitar.pat -share/timidity/TimGM6mb/PanFlute.pat -share/timidity/TimGM6mb/Piano1.pat -share/timidity/TimGM6mb/Piano2.pat -share/timidity/TimGM6mb/Piano3.pat -share/timidity/TimGM6mb/Piccolo.pat -share/timidity/TimGM6mb/PickedBass.pat -share/timidity/TimGM6mb/Pizzicato.pat -share/timidity/TimGM6mb/PolySynth.pat -share/timidity/TimGM6mb/QuicaDownstroke.pat -share/timidity/TimGM6mb/QuicaHiTone.pat -share/timidity/TimGM6mb/QuintoClosedSlap.pat -share/timidity/TimGM6mb/QuintoTone.pat -share/timidity/TimGM6mb/Recorder.pat -share/timidity/TimGM6mb/ReedOrgan.pat -share/timidity/TimGM6mb/ReverseCymbal.pat -share/timidity/TimGM6mb/RideBell.pat -share/timidity/TimGM6mb/RidePing.pat -share/timidity/TimGM6mb/RimShot.pat -share/timidity/TimGM6mb/RosewoodClaves.pat -share/timidity/TimGM6mb/SambaWhistle.pat -share/timidity/TimGM6mb/SawWave.pat -share/timidity/TimGM6mb/Scratch.pat -share/timidity/TimGM6mb/Seashore.pat -share/timidity/TimGM6mb/Shakuhachi.pat -share/timidity/TimGM6mb/Shamisen.pat -share/timidity/TimGM6mb/Shenai.pat -share/timidity/TimGM6mb/SineWave.pat -share/timidity/TimGM6mb/Sinetick.pat -share/timidity/TimGM6mb/Sitar.pat -share/timidity/TimGM6mb/SlapBass1.pat -share/timidity/TimGM6mb/SlapBass2.pat -share/timidity/TimGM6mb/SleighBells.pat -share/timidity/TimGM6mb/SlowStringsLP.pat -share/timidity/TimGM6mb/Snare1.pat -share/timidity/TimGM6mb/Snare2.pat -share/timidity/TimGM6mb/SoloTrumpet.pat -share/timidity/TimGM6mb/SoloVox.pat -share/timidity/TimGM6mb/SopSax-TBv2.3.pat -share/timidity/TimGM6mb/Soundtrack.pat -share/timidity/TimGM6mb/SpaceVoice.pat -share/timidity/TimGM6mb/SquareWave.pat -share/timidity/TimGM6mb/StarTheme.pat -share/timidity/TimGM6mb/SteelDrum.pat -share/timidity/TimGM6mb/SteelGuitar.pat -share/timidity/TimGM6mb/Strings-Tremelo.pat -share/timidity/TimGM6mb/StringsCLP.pat -share/timidity/TimGM6mb/SweepPad.pat -share/timidity/TimGM6mb/SynDrumWave.pat -share/timidity/TimGM6mb/SynthBass1.pat -share/timidity/TimGM6mb/SynthBass2.pat -share/timidity/TimGM6mb/SynthBrass1.pat -share/timidity/TimGM6mb/SynthBrass2.pat -share/timidity/TimGM6mb/SynthCalliope.pat -share/timidity/TimGM6mb/SynthDrum.pat -share/timidity/TimGM6mb/SynthStrings1.pat -share/timidity/TimGM6mb/SynthStrings2.pat -share/timidity/TimGM6mb/SynthVox.pat -share/timidity/TimGM6mb/TaikoDrum.pat -share/timidity/TimGM6mb/Telephone.pat -share/timidity/TimGM6mb/TenorSax-TBv2.3.pat -share/timidity/TimGM6mb/TimGM6mb.cfg -share/timidity/TimGM6mb/TimbaleRimshot.pat -share/timidity/TimGM6mb/TimbaleStrike.pat -share/timidity/TimGM6mb/TimpDrumA1.pat -share/timidity/TimGM6mb/Timpani.pat -share/timidity/TimGM6mb/TinkerBell.pat -share/timidity/TimGM6mb/TriangleWaveDb5.pat -share/timidity/TimGM6mb/Trombone.pat -share/timidity/TimGM6mb/Tuba.pat -share/timidity/TimGM6mb/TubularBells.pat -share/timidity/TimGM6mb/VibraLoop.pat -share/timidity/TimGM6mb/Vibraphone.pat -share/timidity/TimGM6mb/Viola.pat -share/timidity/TimGM6mb/Violin.pat -share/timidity/TimGM6mb/VoiceOohs.pat -share/timidity/TimGM6mb/WarmPad.pat -share/timidity/TimGM6mb/Whistle.pat -share/timidity/TimGM6mb/WoodBlock.pat -share/timidity/TimGM6mb/Xylophone.pat %%xaw%% Index: devel/sdl-mixer/Makefile =================================================================== RCS file: /cvs/ports/devel/sdl-mixer/Makefile,v retrieving revision 1.49 diff -u -p -u -p -r1.49 Makefile --- devel/sdl-mixer/Makefile 26 Apr 2016 21:21:22 -0000 1.49 +++ devel/sdl-mixer/Makefile 12 Jan 2018 20:35:32 -0000 @@ -4,7 +4,7 @@ COMMENT= SDL multi-channel audio mixer l DISTNAME= SDL_mixer-1.2.12 PKGNAME= ${DISTNAME:L:S/_/-/} -REVISION= 4 +REVISION= 5 CATEGORIES= devel audio MASTER_SITES= ${HOMEPAGE}release/ @@ -24,6 +24,8 @@ LIB_DEPENDS= audio/flac \ audio/libvorbis \ devel/sdl \ devel/smpeg + +RUN_DEPENDS = audio/timgm6mb USE_GMAKE= Yes CONFIGURE_STYLE= gnu Index: devel/sdl2-mixer/Makefile =================================================================== RCS file: /cvs/ports/devel/sdl2-mixer/Makefile,v retrieving revision 1.8 diff -u -p -u -p -r1.8 Makefile --- devel/sdl2-mixer/Makefile 11 Mar 2016 20:28:25 -0000 1.8 +++ devel/sdl2-mixer/Makefile 12 Jan 2018 20:35:32 -0000 @@ -4,6 +4,7 @@ V = 2.0.1 COMMENT = SDL2 multi-channel audio mixer library DISTNAME = SDL2_mixer-${V} PKGNAME = sdl2-mixer-${V} +REVISION = 0 CATEGORIES = devel audio SHARED_LIBS = SDL2_mixer 0.0 # 0.0 @@ -25,6 +26,8 @@ LIB_DEPENDS = audio/flac \ audio/libvorbis \ devel/sdl2 \ devel/smpeg2 + +RUN_DEPENDS = audio/timgm6mb CONFIGURE_STYLE = gnu CONFIGURE_ARGS += --disable-music-flac-shared \ Index: games/corsixth/Makefile =================================================================== RCS file: /cvs/ports/games/corsixth/Makefile,v retrieving revision 1.3 diff -u -p -u -p -r1.3 Makefile --- games/corsixth/Makefile 22 Dec 2017 07:35:15 -0000 1.3 +++ games/corsixth/Makefile 12 Jan 2018 20:35:32 -0000 @@ -5,6 +5,7 @@ ONLY_FOR_ARCHS = ${CXX11_ARCHS} V = 0.61 COMMENT = open source clone of Theme Hospital PKGNAME = corsixth-${V} +REVISION = 0 CATEGORIES = games x11 GH_ACCOUNT = CorsixTH @@ -31,8 +32,7 @@ MODLUA_VERSION = 5.3 LIB_DEPENDS = devel/sdl2-mixer \ graphics/ffmpeg -RUN_DEPENDS = audio/timidity \ - devel/lpeg,${MODLUA_FLAVOR} \ +RUN_DEPENDS = devel/lpeg,${MODLUA_FLAVOR} \ devel/luafs,${MODLUA_FLAVOR} NO_TEST = Yes Index: games/openxcom/Makefile =================================================================== RCS file: /cvs/ports/games/openxcom/Makefile,v retrieving revision 1.22 diff -u -p -u -p -r1.22 Makefile --- games/openxcom/Makefile 27 Nov 2017 04:21:51 -0000 1.22 +++ games/openxcom/Makefile 12 Jan 2018 20:35:32 -0000 @@ -4,7 +4,7 @@ BROKEN-alpha = OOM on XcomRuleset.cpp BROKEN-hppa = OOM on Engine/Scalers/hq4x.cpp COMMENT = open source reimplementation of the original X-Com DISTNAME = openxcom-1.0.0 -REVISION = 6 +REVISION = 7 EPOCH = 0 CATEGORIES = games x11 @@ -24,8 +24,7 @@ MODULES = devel/cmake COMPILER = base-clang ports-gcc -RUN_DEPENDS = audio/timidity \ - devel/desktop-file-utils \ +RUN_DEPENDS = devel/desktop-file-utils \ x11/gtk+3,-guic LIB_DEPENDS = devel/sdl-gfx \ devel/sdl-image \