Sunday, June 03, 2018

Re: lmms update

On 2018/06/03 14:02, Ken M wrote:
>
> Diff for lmms update.
>
> A couple of notes:
>
> 1. sndio support is now included by upstream so no need to patch for that
> 2. Zynaddsubfx support is dropped, it won't work effectively till someone ports
> it standalone first, if even. I personally don't care about it so I dropped it.
> 3. Due to the use of submodules on git I have the tgz hosted on my webserver at
> the moment but would prefer putting it somewhere else before this gets commited
> to the ports tree.
>
> I have tested on i386 and amd64. Everything works well. I would suggest
> modifying ulimit -d up to at least 2GB or more is better for effective usage.
>
> Diff below:

cvs diff -u please, this type of diff is pretty much unreadable
(and include the other files not just the Makefile). I'll do my best
though :

>
> iff audio/lmms/Makefile mystuff/audio/lmms/Makefile
> 1c1,3
> < # $OpenBSD: Makefile,v 1.14 2017/07/26 22:45:15 sthen Exp $
> ---
> > # $OpenBSD: Makefile,v 1.77 2018/02/09 17:08:33 sthen Exp $
> > #
> > COMMENT = music studio with tracking, sampling and MIDI
> 3c5,6
> < ONLY_FOR_ARCHS = ${GCC4_ARCHS} ${CLANG_ARCHS}
> ---
> > DISTNAME = lmms-stable-1.2
> > PKGNAME = lmms-1.2

1.2 is not released yet so lmms-1.2 is not appropriate.

> 5c8
> < COMMENT = music studio with tracking, sampling and MIDI
> ---
> > CATEGORIES = audio
> 7,9c10
> < DISTNAME = lmms-0.4.8
> < REVISION = 4
> < CATEGORIES = audio
> ---
> > homepage = https://lmms.io/

"HOMEPAGE" not "homepage"

> 11c12,18
> < HOMEPAGE = http://lmms.sourceforge.net/
> ---
> > # person who is responsible for the port. use a complete email address with
> > # a real name, e.g., "maintainer = john doe <doe57@machine.somewhere.org>".
> > # if you maintain several ports, use the same line each time.
> > # if you no longer use the port, or are unwilling/unable to handle issues
> > # in a timely manner, *leave the field blank*.
> > # default value is ports@openbsd.org, no need to fill in
> > #maintainer = ???

trim comments (Makefile.template is a starting point but the completed
thing should look like most other ports in the tree with this stuff
removed)

> 16,19c23
> < WANTLIB = ICE SM QtGui QtXml X11 Xext Xft Xinerama c fltk jack \
> < fftw3f fluidsynth fontconfig freetype m ncurses ogg \
> < pthread readline samplerate sndfile sndio vorbis \
> < vorbisenc vorbisfile z ${COMPILER_LIBCXX}
> ---
> > COMPILER = base-clang ports-gcc
> 21,22c25,33
> < MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=lmms/}
> < EXTRACT_SUFX = .tar.bz2
> ---
> > WANTLIB += ${COMPILER_LIBCXX}
> > WANTLIB += Qt5Core Qt5Gui Qt5Widgets Qt5Xml
> > WANTLIB += c curses fftw3f fluidsynth
> > WANTLIB += jack m mp3lame ogg portaudio readline
> > WANTLIB += samplerate sndfile sndio vorbis vorbisenc vorbisfile

WANTLIB formatting is a mess, usually best to clear it completely,
run port-lib-depends-check, and paste in the output.

> > WANTLIB += ossaudio

like I said before, ossaudio should not be used.

> > # where the source files and patches can be fetched
> > #
> > MASTER_SITES = http://mack-z.com/downloads/OpenBSD/ports/lmms/
> 24c35
> < MODULES = x11/qt4 devel/cmake
> ---
> > DISTFILES = lmms-stable-1.2.tar.gz
> 26c37,40
> < BUILD_DEPENDS = audio/portaudio-svn
> ---
> > # Dependencies
> > #
> > MODULES = x11/qt5 devel/cmake
> >
> 28c42,43
> < misc/shared-mime-info
> ---
> > misc/shared-mime-info \
> > x11/gtk+3,-guic
> 34c49,51
> < x11/fltk
> ---
> > audio/lame \
> > audio/libsndfile \
> > audio/portaudio-svn
> 40,41c57,58
> < LDFLAGS="${LDFLAGS} -L${X11BASE}/lib"
> < CONFIGURE_ARGS = -DWANT_OSS=OFF -DWANT_SDL=OFF -DWANT_PULSEAUDIO=OFF
> ---
> > LDFLAGS="${LDFLAGS} -L${X11BASE}/lib" \
> > -DLMMS_HAVE_OSS=FALSE -DWANT_OSS=OFF
> 42a60,62
> > CONFIGURE_ARGS = -DWANT_VST=OFF -DWANT_PULSEAUDIO=OFF -DWANT_ALSA=OFF \
> > -DWANT_SDL=OFF -DCMAKE_PREFIX_PATH=${LOCALBASE}/lib/qt5/cmake

separate lines for these

> >
> 45c65,66
> < -DWANT_SWH=OFF -DWANT_TAP=OFF
> ---
> > -DWANT_SWH=OFF -DWANT_TAP=OFF -DWANT_GIG=OFF -DWANT_CARLA=OFF \
> > -DWANT_QT5=ON
> 46a68,77
> > CONFIGURE_ARGS += -DPLUGIN_LIST="Amplifier \
> > BassBooster Bitcrush CrossoverEQ Delay DualFilter Eq Flanger \
> > HydrogenImport LadspaEffect MidiExport \
> > MidiImport MultitapEcho ReverbSC SpectrumAnalyzer \
> > audio_file_processor bit_invader dynamics_processor \
> > kicker ladspa_browser lb302 monstro nes organic patman \
> > peak_controller_effect sf2_player sfxr sid \
> > stereo_enhancer stereo_matrix triple_oscillator \
> > vestige vibed watsyn waveshaper opl2"

if there's no way to disable *just* zynaddsubfx from being built without
listing all the plugins you *do* want, then the simplest way is probably
to build all the plugins and @comment or rm the unwanted one. Otherwise
this is going to be a pain to keep in sync with updates.

> >
> 49,55c80,82
> < NO_TEST = Yes
> <
> < post-patch:
> < cp ${FILESDIR}/FindSndio.cmake ${WRKSRC}/cmake/modules/
> < cp ${FILESDIR}/{Audio,Midi}Sndio.h ${WRKSRC}/include/
> < cp ${FILESDIR}/AudioSndio.cpp ${WRKSRC}/src/core/audio/
> < cp ${FILESDIR}/MidiSndio.cpp ${WRKSRC}/src/core/midi/
> ---
> > # uncompress man files
> > post-install:
> > gunzip ${PREFIX}/share/man/man1/lmms.1.gz
>

I don't get it. I sent a 95% completed update with a fairly clean
Makefile that just needed an update to a newer version and maybe
tweaking to disable modules that don't work.. This rewrite from scratch
is going to take a bunch of work to get in suitable shape.

No comments:

Post a Comment