Sunday, June 03, 2018

Re: lmms update

On 2018/06/03 19:33, Ken M wrote:
> On Mon, Jun 04, 2018 at 12:19:46AM +0100, Stuart Henderson wrote:
> >
> > 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 :
> >
>
> Kind of new to CVS but I will figure it out

Basically, fetch the -current ports tree (http://www.openbsd.org/anoncvs.html),
make whatever changes, and run "cvs diff".

For sending in mail, copy-and-paste from a terminal will likely mangle it
(whitespace may change e.g. tabs/spaces), some people use "xclip"
(cvs diff | xclip) and paste into mail, some people redirect to a file
(cvs diff > /tmp/lmms.diff) and include that instead.

> >
> > 1.2 is not released yet so lmms-1.2 is not appropriate.
> >
>
> To my understanding it is the current stable one, and also the one I found compiled the
> cleanest.

Go to https://lmms.io/download/ or https://github.com/LMMS/lmms/releases
and you'll see that the latest is 1.2.0-rc6.

The "stable-1.2" tree on github is actively being developed on the path
towards 1.2.0, rc6 was tagged from that tree a few days ago.

I've just asked upstream if they'd mind rolling tarballs and adding them
to the release (https://github.com/LMMS/lmms/issues/4400) as that would
make life easier.

> >
> > 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.
> >
> I don't like this much either. Are you suggesting a patch to the lmms make to
> stop zyn from building? Just making sure I understand correctly.

Either of these:

- build it as normal, but don't install it. Either patch in the port
Makefile to rm zyn-related files, or @comment in pkg/PLIST.

- patch lmms to disable building it.

> > 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.
> >
>
> I was not able to get yours to run. I probably did something wrong there. Like I
> said new guy.

Did it not build, or did it build and not run (and if so, what happened)?
It did start for me and I was able to play demo tracks etc.
To rule out patching-related problems I'll attach a tar of my port directory
if you fancy giving that a spin (move the old directory out the way before
untarring as it removes some old files). I'll send the diff in-line as
well for anyone who wants to test in the usual way. I've updated it to
1.2.0-rc6 and patched out zynaddsubfx build now.

> I wasn't sure if you were going to take that further or not so I had this one
> that was working. Granted not in shape. Trying to do my part but if the learning
> curve is a problem I understand.

They seem pretty close to 1.2.0 so sometime after that would be a good
natural point to actually update it in ports. There doesn't seem to
be much point in looking at an older version than 1.2. Typically we
wait for a stable release (rather than updating to a release candidate)
though that's not a hard rule.

On 2018/06/03 19:52, Ken M wrote:
> On Mon, Jun 04, 2018 at 12:19:46AM +0100, Stuart Henderson wrote:
> > > > WANTLIB += ossaudio
> >
> > like I said before, ossaudio should not be used.
> >
>
> So to revisit this. The port-lib-depends-check is what pulled that up. The why,
> the -DWANT_OSS=OFF is not supported anymore on the 1.2 version. It basically
> checks for a soundcard.h and if it finds it is considers it oss. So I guess it
> could let stand in the wantlib or comment out that part of the Cmake with a
> patch.

It needs patching - libossaudio isn't used for audio io on OpenBSD, there are
a couple of remaining users in ports but I believe they're just for some
volume-control-related function. Certainly it shouldn't be added to anything
else. I have patched that in my update.


Index: Makefile
===================================================================
RCS file: /cvs/ports/audio/lmms/Makefile,v
retrieving revision 1.14
diff -u -p -r1.14 Makefile
--- Makefile 26 Jul 2017 22:45:15 -0000 1.14
+++ Makefile 4 Jun 2018 01:04:36 -0000
@@ -1,57 +1,61 @@
# $OpenBSD: Makefile,v 1.14 2017/07/26 22:45:15 sthen Exp $

-ONLY_FOR_ARCHS = ${GCC4_ARCHS} ${CLANG_ARCHS}
-
COMMENT = music studio with tracking, sampling and MIDI

-DISTNAME = lmms-0.4.8
-REVISION = 4
+# rolled from git; requires submodules
+# git clone --recurse-submodules -b v1.2.0-rc6 https://github.com/lmms/lmms
+DISTNAME = lmms-1.2.0rc6
+EXTRACT_SUFX = .tar.xz
+
CATEGORIES = audio

-HOMEPAGE = http://lmms.sourceforge.net/
+HOMEPAGE = https://lmms.io/
+
+MASTER_SITES = https://spacehopper.org/mirrors/

# GPLv2
PERMIT_PACKAGE_CDROM = Yes

-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}
+WANTLIB += ${COMPILER_LIBCXX} Qt5Core Qt5Gui Qt5Widgets Qt5Xml
+WANTLIB += c curses fftw3f fluidsynth jack m mp3lame ogg portaudio
+WANTLIB += readline samplerate sndfile sndio vorbis vorbisenc
+WANTLIB += vorbisfile

-MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=lmms/}
-EXTRACT_SUFX = .tar.bz2
+COMPILER = base-clang ports-gcc

-MODULES = x11/qt4 devel/cmake
+MODULES = x11/qt5 devel/cmake

-BUILD_DEPENDS = audio/portaudio-svn
RUN_DEPENDS = devel/desktop-file-utils \
- misc/shared-mime-info
-LIB_DEPENDS = audio/jack \
- math/fftw3,float \
- audio/fluidsynth \
+ misc/shared-mime-info \
+ x11/gtk+3,-guic
+LIB_DEPENDS = audio/fluidsynth \
+ audio/jack \
+ audio/lame \
audio/libsamplerate \
audio/libvorbis \
- x11/fltk
+ audio/portaudio-svn \
+ math/fftw3,float

-USE_X11 = Yes
-
-CONFIGURE_ENV = CFLAGS="${CFLAGS} -I${X11BASE}/include" \
- CXXFLAGS="${CXXFLAGS} -I${X11BASE}/include" \
- LDFLAGS="${LDFLAGS} -L${X11BASE}/lib"
-CONFIGURE_ARGS = -DWANT_OSS=OFF -DWANT_SDL=OFF -DWANT_PULSEAUDIO=OFF
+CONFIGURE_ENV = CFLAGS="${CFLAGS} -I${X11BASE}/include -I${LOCALBASE}/include" \
+ CXXFLAGS="${CXXFLAGS} -I${X11BASE}/include -I${LOCALBASE}/include" \
+ LDFLAGS="${LDFLAGS} -L${X11BASE}/lib -L${LOCALBASE}/lib"
+
+CONFIGURE_ARGS = -DCMAKE_PREFIX_PATH=${LOCALBASE}/lib/qt5/cmake \
+ -DLMMS_HAVE_OSS=FALSE \
+ -DWANT_QT5=ON \
+ -DWANT_SDL=OFF \
+ -DWANT_PULSEAUDIO=OFF

# these are all available as separate ports
-CONFIGURE_ARGS += -DWANT_CALF=OFF -DWANT_CAPS=OFF -DWANT_CMT=OFF \
- -DWANT_SWH=OFF -DWANT_TAP=OFF
+CONFIGURE_ARGS += -DWANT_CALF=OFF \
+ -DWANT_CAPS=OFF \
+ -DWANT_CMT=OFF \
+ -DWANT_SWH=OFF \
+ -DWANT_TAP=OFF

-MAKE_FLAGS += VERBOSE=1
+# needs wine
+CONFIGURE_ARGS += -DWANT_VST=OFF

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/

.include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/audio/lmms/distinfo,v
retrieving revision 1.2
diff -u -p -r1.2 distinfo
--- distinfo 18 Jan 2015 03:12:44 -0000 1.2
+++ distinfo 4 Jun 2018 01:04:36 -0000
@@ -1,2 +1,2 @@
-SHA256 (lmms-0.4.8.tar.bz2) = lqU9tfGqmnjSfnt2uIVRK2h1Z+tEd2exi9Qp5HM5SUw=
-SIZE (lmms-0.4.8.tar.bz2) = 12682364
+SHA256 (lmms-1.2.0rc6.tar.xz) = VVPBubjvauc7nANtjDP8JmgKEnsGHZDb9E2r365dk64=
+SIZE (lmms-1.2.0rc6.tar.xz) = 14668568
Index: files/AudioSndio.cpp
===================================================================
RCS file: files/AudioSndio.cpp
diff -N files/AudioSndio.cpp
--- files/AudioSndio.cpp 4 May 2017 13:56:58 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,207 +0,0 @@
-#ifndef SINGLE_SOURCE_COMPILE
-
-/* license */
-
-#include "AudioSndio.h"
-
-#ifdef LMMS_HAVE_SNDIO
-
-#include <QtCore/QFileInfo>
-#include <QtGui/QLabel>
-#include <QtGui/QLineEdit>
-
-#include "endian_handling.h"
-#include "lcd_spinbox.h"
-#include "engine.h"
-#include "gui_templates.h"
-#include "templates.h"
-
-#ifdef LMMS_HAVE_UNISTD_H
-#include <unistd.h>
-

No comments:

Post a Comment