aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2021-11-27 15:01:36 -0500
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2021-12-04 10:09:03 +0700
commitce43731bd052e7cde780610f96182034e03b685d (patch)
tree5d34b6a0c724666c20521145951bd863f4a7b153
parent53158b1cadb345fb87de1600fb7b21eed270cc78 (diff)
audio/mhwaveedit: Build enhancements.
Signed-off-by: B. Watson <yalhcru@gmail.com> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r--audio/mhwaveedit/README34
-rw-r--r--audio/mhwaveedit/mhwaveedit.SlackBuild44
-rw-r--r--audio/mhwaveedit/slack-desc6
3 files changed, 61 insertions, 23 deletions
diff --git a/audio/mhwaveedit/README b/audio/mhwaveedit/README
index 8dfc8d8bb779..5e2b55fb667c 100644
--- a/audio/mhwaveedit/README
+++ b/audio/mhwaveedit/README
@@ -4,17 +4,31 @@ mhWaveEdit is a graphical program for editing, playing, and recording
sound files. It is lightweight, portable, user-friendly, and handles
large files very well.
-The program itself has only simple editing features such as cut'n'paste
-and volume adjustment, but it can also use Ladspa effect plugins
+The program itself has only simple editing features such as cut &
+paste and volume adjustment, but it can also use Ladspa effect plugins
and the effects provided by the SoX application. It can also support
additional file formats besides wav through libsndfile and mp3/ogg
-import and export through lame and oggenc/oggdec.
+import and export through lame and oggenc/oggdec. It can import (but
+not save) other file types via mplayer, such as .webm or .m4a, or the
+soundtracks to video files.
-lame, jack[*], and portaudio are optional dependencies.
+lame is an optional runtime dependency.
-[*] If jack support is included, this package uses POSIX filesystem
- capabilities to execute with elevated privileges
- (required for realtime audio processing). This may
- be considered a security/stability risk. Please read
- http://www.slackbuilds.org/caps/ for more information. To disable
- capabilities, pass SETCAP=no to the script.
+jack is an optional (autodetected) build-time dependency.
+
+Build options (environment):
+
+OSS=yes - if you need OSS audio support (disabled by default).
+PULSE=no - do not include PulseAudio support (included by default).
+JACK=no - do not include jack support (autodetected by default).
+
+ALSA and SDL-1.2 audio support are always included. EsounD and aRts
+are autodetected, but currently neither is included in Slackware
+or SBo.
+
+If jack support is included, this package uses POSIX filesystem
+capabilities to execute with elevated privileges (required
+for realtime audio processing). This may be considered a
+security/stability risk. Please read http://www.slackbuilds.org/caps/
+for more information. To disable capabilities, pass SETCAP=no to the
+script.
diff --git a/audio/mhwaveedit/mhwaveedit.SlackBuild b/audio/mhwaveedit/mhwaveedit.SlackBuild
index 03d26c483be7..fdace487fedb 100644
--- a/audio/mhwaveedit/mhwaveedit.SlackBuild
+++ b/audio/mhwaveedit/mhwaveedit.SlackBuild
@@ -1,12 +1,18 @@
#!/bin/bash
# Slackware build script for mhwaveedit
-# Written by Felix Krueger
+# Originally written by Felix Krueger
# Now maintained by B. Watson <yalhcru@gmail.com>. Original script
# had no license. Modified version licensed under the WTFPL. See
# http://www.wtfpl.net/txt/copying/ for details.
+# 20211127 bkw: BUILD=2
+# - portaudio support was broken, explicitly disable it and remove
+# from README.
+# - add JACK=no in case someone needs it.
+# - dynamic slack-desc.
+
# 20181022 bkw:
# - Take over maintenance.
# - Update for v1.4.24. Incompatible changes, can't build old version.
@@ -19,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mhwaveedit
VERSION=${VERSION:-1.4.24}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -31,9 +37,6 @@ if [ -z "$ARCH" ]; then
esac
fi
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
@@ -73,17 +76,28 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
patch -p0 < $CWD/intbox.diff
# 20181023 bkw: environment variables to control the build options.
-MIXER="${MIXER:-xterm -e alsamixer}"
PULSE="${PULSE:-yes}"
OSS="${OSS:-no}"
+JACK="${JACK:-yes}"
+
+[ "$PULSE" = "no" ] && EXTRAOPTS+=" --without-pulse"
+[ "$OSS" = "no" ] && EXTRAOPTS+=" --without-oss"
+[ "$JACK" = "no" ] && EXTRAOPTS+=" --without-jack"
+
+# 20211127 bkw: this just sets the default; it can be changed in the
+# preferences.
+MIXER="${MIXER:-xterm -e alsamixer}"
-[ "$PULSE" = "no" ] && EXTRAOPTS="$EXTRAOPTS --without-pulse"
-[ "$OSS" = "no" ] && EXTRAOPTS="$EXTRAOPTS --without-oss"
+# 20211127 bkw: add --without-portaudio. Our portaudio lacks the
+# Pa_Timestamp type, so the configure script would disable it anyway.
+# Not sure if that means our portaudio is too new or too old, not
+# all that interested anyway.
CFLAGS="$SLKCFLAGS" \
./configure \
--with-default-mixerapp="$MIXER" \
$EXTRAOPTS \
+ --without-portaudio \
--with-default-ladspa-path=/usr/lib$LIBDIRSUFFIX/ladspa \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -110,11 +124,16 @@ cp -a AUTHORS COPYING ChangeLog NEWS README TODO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
+J=no; P=no; O=no
+
+objdump -p $PKG/usr/bin/$PRGNAM | grep -q 'NEEDED.*libpulse' && P=yes
+strings $PKG/usr/bin/$PRGNAM | grep -q /dev/dsp && O=yes
+
# realtime audio stuff only if JACK support included.
-if ldd $PKG/usr/bin/$PRGNAM | grep -q libjack; then
+if objdump -p $PKG/usr/bin/$PRGNAM | grep -q 'NEEDED.*libjack'; then
+ J=yes
if [ "${SETCAP:-yes}" = "yes" ]; then
cat $CWD/setcap.sh >> $PKG/install/doinst.sh
chown root:audio $PKG/usr/bin/$PRGNAM
@@ -122,5 +141,10 @@ if ldd $PKG/usr/bin/$PRGNAM | grep -q libjack; then
fi
fi
+sed -e "s,@J@,$J," \
+ -e "s,@P@,$P," \
+ -e "s,@O@,$O," \
+ $CWD/slack-desc > $PKG/install/slack-desc
+
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/audio/mhwaveedit/slack-desc b/audio/mhwaveedit/slack-desc
index 8261ecb63ffd..fb8685a0e792 100644
--- a/audio/mhwaveedit/slack-desc
+++ b/audio/mhwaveedit/slack-desc
@@ -12,8 +12,8 @@ mhwaveedit: mhWaveEdit is a graphical program for editing, playing and
mhwaveedit: recording sound files. It is lightweight, portable, user-friendly
mhwaveedit: and handles large files very well.
mhwaveedit:
-mhwaveedit: Homepage: https://github.com/magnush/mhwaveedit
-mhwaveedit:
-mhwaveedit:
+mhwaveedit: This package built with:
+mhwaveedit: JACK=@J@ PulseAudio=@P@ OSS=@O@
mhwaveedit:
+mhwaveedit: Homepage: https://github.com/magnush/mhwaveedit
mhwaveedit: