pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/audio/jack jack: Update to 1.9.19



details:   https://anonhg.NetBSD.org/pkgsrc/rev/dcda2ecb971d
branches:  trunk
changeset: 458069:dcda2ecb971d
user:      nia <nia%pkgsrc.org@localhost>
date:      Wed Sep 08 19:19:19 2021 +0000

description:
jack: Update to 1.9.19

This switches us to jack2, the latest rewrite of the JACK audio
server, with support for Solaris, Linux, macOS, and NetBSD (support
for NetBSD added by me in a series of patches...)

My primary motivation for this update is to avoid jack1's unpleasant
abuse of unix domain sockets such that it no longer works in NetBSD
9.99.x (see PR kern/56113)

diffstat:

 audio/jack/DESCR                                            |   13 +-
 audio/jack/MESSAGE.NetBSD                                   |   12 +-
 audio/jack/Makefile                                         |  143 +--
 audio/jack/PLIST                                            |   55 +-
 audio/jack/buildlink3.mk                                    |   18 +-
 audio/jack/distinfo                                         |   44 +-
 audio/jack/files/atomicity.h                                |   24 -
 audio/jack/patches/patch-common_JackAudioAdapterFactory.cpp |   18 +
 audio/jack/patches/patch-common_memops.c                    |   20 +
 audio/jack/patches/patch-common_wscript                     |  117 ++
 audio/jack/patches/patch-config_sysdeps_atomicity.h         |   28 -
 audio/jack/patches/patch-config_sysdeps_cycles.h            |   17 -
 audio/jack/patches/patch-configure                          |   37 -
 audio/jack/patches/patch-drivers_coreaudio_Makefile.in      |   15 -
 audio/jack/patches/patch-drivers_netjack_netjack__packet.c  |   15 -
 audio/jack/patches/patch-drivers_oss_oss__driver.c          |   15 -
 audio/jack/patches/patch-drivers_oss_oss__driver.h          |   18 -
 audio/jack/patches/patch-drivers_sun_sun__driver.c          |   80 -
 audio/jack/patches/patch-example-clients_wscript            |   33 +
 audio/jack/patches/patch-include_engine.h                   |   19 -
 audio/jack/patches/patch-jack_control.h                     |   16 -
 audio/jack/patches/patch-jack_types.h                       |   15 -
 audio/jack/patches/patch-jackd_engine.c                     |   16 -
 audio/jack/patches/patch-libjack_unlock.c                   |   28 -
 audio/jack/patches/patch-netbsd_JackAtomic__os.h            |   39 +
 audio/jack/patches/patch-netbsd_JackNetBSDTime.c            |   97 ++
 audio/jack/patches/patch-netbsd_JackPlatformPlug__os.h      |   91 +
 audio/jack/patches/patch-netbsd_sun_JackSunAdapter.cpp      |  485 ++++++++++
 audio/jack/patches/patch-netbsd_sun_JackSunAdapter.h        |  120 ++
 audio/jack/patches/patch-netbsd_sun_JackSunDriver.cpp       |  564 ++++++++++++
 audio/jack/patches/patch-netbsd_sun_JackSunDriver.h         |  120 ++
 audio/jack/patches/patch-posix_JackNetUnixSocket.cpp        |   69 +
 audio/jack/patches/patch-posix_JackNetUnixSocket.h          |   15 +
 audio/jack/patches/patch-posix_JackPosixSemaphore.cpp       |   24 +
 audio/jack/patches/patch-posix_JackSocket.cpp               |   33 +
 audio/jack/patches/patch-tests_wscript                      |   15 +
 audio/jack/patches/patch-tools_netsource.c                  |   17 -
 audio/jack/patches/patch-tools_session__notify.c            |   16 -
 audio/jack/patches/patch-tools_transport.c                  |   15 -
 audio/jack/patches/patch-tools_wscript                      |   15 +
 audio/jack/patches/patch-wscript                            |   49 +
 41 files changed, 2040 insertions(+), 560 deletions(-)

diffs (truncated from 2846 to 300 lines):

diff -r 39478bbc8619 -r dcda2ecb971d audio/jack/DESCR
--- a/audio/jack/DESCR  Wed Sep 08 15:38:48 2021 +0000
+++ b/audio/jack/DESCR  Wed Sep 08 19:19:19 2021 +0000
@@ -1,6 +1,7 @@
-JACK is a low-latency audio server, written for POSIX conformant
-operating systems such as GNU/Linux and Apple's OS X. It can connect a
-number of different applications to an audio device, as well as allowing
-them to share audio between themselves. Its clients can run in their own
-processes (ie. as normal applications), or can they can run within the
-JACK server (ie. as a "plugin").
+JACK (JACK Audio Connection Kit) provides a basic infrastructure for audio
+applications to communicate with each other and with audio hardware. Through
+JACK, users are enabled to build powerful systems for signal processing and
+music production.
+
+JACK2 aka jackdmp is a C++ version of the JACK low-latency audio server for
+multi-processor machines.
diff -r 39478bbc8619 -r dcda2ecb971d audio/jack/MESSAGE.NetBSD
--- a/audio/jack/MESSAGE.NetBSD Wed Sep 08 15:38:48 2021 +0000
+++ b/audio/jack/MESSAGE.NetBSD Wed Sep 08 19:19:19 2021 +0000
@@ -1,16 +1,12 @@
 ===========================================================================
-$NetBSD: MESSAGE.NetBSD,v 1.2 2019/12/02 11:48:38 nia Exp $
+$NetBSD: MESSAGE.NetBSD,v 1.3 2021/09/08 19:19:19 nia Exp $
 
-Realtime support is currently problematic.
-You need to pass -r to disable it, e.g:
+To start JACK on NetBSD:
 
-$ jackd -r -d sun
+$ jackd -Sr -d sun
 
 If you have an external USB mic:
 
-$ jackd -r -d sun -P /dev/audio -C /dev/audio1
-
-Note that to use JACK on NetBSD you need procfs mounted.
-This should be done by default.
+$ jackd -Sr -d sun -P /dev/audio -C /dev/audio1 -i 1
 
 ===========================================================================
diff -r 39478bbc8619 -r dcda2ecb971d audio/jack/Makefile
--- a/audio/jack/Makefile       Wed Sep 08 15:38:48 2021 +0000
+++ b/audio/jack/Makefile       Wed Sep 08 19:19:19 2021 +0000
@@ -1,127 +1,54 @@
-# $NetBSD: Makefile,v 1.41 2021/05/24 19:49:05 wiz Exp $
-
-DISTNAME=      jack-audio-connection-kit-0.125.0
-PKGREVISION=   4
-PKGNAME=       ${DISTNAME:S/audio-connection-kit-//}
-CATEGORIES=    audio
-MASTER_SITES=  http://jackaudio.org/downloads/
+# $NetBSD: Makefile,v 1.42 2021/09/08 19:19:19 nia Exp $
 
-MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE=      http://www.jackaudio.org/
-COMMENT=       JACK audio connection kit
-LICENSE=       gnu-gpl-v2 AND gnu-lgpl-v2.1
-
-BUILD_DEFS+=           JACKD_DEFAULT_TMPDIR
-BUILD_DEFS+=           JACKD_PROCFS_PATH
+DISTNAME=      jack2-1.9.19
+PKGNAME=       ${DISTNAME:S/jack2/jack/1}
+CATEGORIES=    audio
+MASTER_SITES=  ${MASTER_SITE_GITHUB:=jackaudio/}
+GITHUB_PROJECT=        jack2
+GITHUB_TAG=    v${PKGVERSION_NOREV}
 
-SET_LIBDIR=            yes
-USE_TOOLS+=            pkg-config
-USE_LIBTOOL=           yes
-GNU_CONFIGURE=         yes
-CONFIGURE_ARGS+=       --disable-alsa
-CONFIGURE_ARGS+=       --disable-firewire
-CONFIGURE_ARGS+=       --disable-freebob
-CONFIGURE_ARGS+=       --disable-optimize
-CONFIGURE_ARGS+=       --enable-timestamps
-CONFIGURE_ARGS+=       --enable-resize
-CONFIGURE_ENV+=                HAVE_DOXYGEN=no
-CONFIGURE_ENV+=                ac_cv_header_readline_chardefs_h=yes
-PKGCONFIG_OVERRIDE+=   jack.pc.in
+MAINTAINER=    nia%NetBSD.org@localhost
+HOMEPAGE=      https://jackaudio.org/
+COMMENT=       Low-latency audio server
+LICENSE=       gnu-gpl-v2
 
-PTHREAD_OPTS+=         require native
+USE_LANGUAGES= c c++
+USE_TOOLS+=    pkg-config bash
 
-CFLAGS.NetBSD+=                -D_NETBSD_SOURCE -lossaudio
-CFLAGS.Linux+=         -D_GNU_SOURCE
-CFLAGS.SunOS+=         -std=c99 -D_XOPEN_SOURCE=600 -D__EXTENSIONS__
-
-JACKD_DEFAULT_TMPDIR?= /tmp
+WAF_ARGS+=     --systemd=no
 
 .include "../../mk/bsd.prefs.mk"
 
-.if !empty(OPSYS:M*BSD) || ${OPSYS} == "DragonFly" || ${OPSYS} == "Darwin"
-CFLAGS+=               -DJACK_HOST_HAS_BSD_POLL
-.endif
-###
-### XXX Is there a way to properly use the emulation framework
-###    for this?
-###
-.if exists(${PREFIX}/emul/linux/proc) && ${OPSYS} != "Linux"
-JACKD_PROCFS_PATH?=    ${PREFIX}/emul/linux/proc
-.else
-JACKD_PROCFS_PATH?=    /proc
-.endif
-
-.if exists(/dev/shm) && ${OPSYS} == "Linux"
-CONFIGURE_ARGS+=       --with-default-tmpdir=/dev/shm
-.else
-CONFIGURE_ARGS+=       --with-default-tmpdir=${JACKD_DEFAULT_TMPDIR:Q}
+PLIST_VARS+=   alsa
+.if ${OPSYS} == "Linux"
+PLIST.alsa=    yes
 .endif
 
-PLIST_VARS=            coreaudio oss sunaudio
-###
-### XXX        This is untested.  Please file a PR and/or commit a fix should
-###    any problems arise.
-###
-.if ${OPSYS} == "Darwin"
-CONFIGURE_ARGS+=       --enable-coreaudio
-PLIST.coreaudio=       yes
-.else
-CONFIGURE_ARGS+=       --disable-coreaudio
+PLIST_VARS+=   boomer oss
+.if ${OPSYS} == "SunOS"
+PLIST.boomer=  yes
+PLIST.oss=     yes
 .endif
 
-.if ${OPSYS} == "NetBSD" || ${OPSYS} == "OpenBSD" || ${OPSYS} == "SunOS" || \
-    exists(/usr/include/sys/audioio.h)
-CONFIGURE_ARGS+=       --enable-sun
-PLIST.sunaudio=                yes
-.else
-CONFIGURE_ARGS+=       --disable-sun
+PLIST_VARS+=   sun
+.if ${OPSYS} == "NetBSD"
+PLIST.sun=     yes
 .endif
 
-.include "../../mk/oss.buildlink3.mk"
+REPLACE_PYTHON+=       waf
+REPLACE_PYTHON+=       tools/jack_control
+REPLACE_BASH+=         svnversion_regenerate.sh
 
-.if ${OSS_TYPE} != "none" && ${OPSYS} != "NetBSD" && ${OPSYS} != "SunOS"
-CONFIGURE_ARGS+=       --enable-oss
-PLIST.oss=             yes
-MAKE_ENV+=             LIBOSSAUDIO=${LIBOSSAUDIO}
-CFLAGS+=               -DDEVOSSAUDIO=\"${DEVOSSAUDIO:U/dev/dsp}\"
-.else
-CONFIGURE_ARGS+=       --disable-oss
-.endif
+PYTHON_VERSIONS_INCOMPATIBLE=  27
 
-SUBST_CLASSES+=                jacksrc
-SUBST_FILES.jacksrc=   libjack/unlock.c
-SUBST_MESSAGE.jacksrc= Peforming substitutions in JACK sources.
-SUBST_STAGE.jacksrc=   pre-build
-SUBST_VARS.jacksrc=    PREFIX JACKD_PROCFS_PATH X11BASE
+PKGCONFIG_OVERRIDE+=           jack.pc.in
 
-.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
-PKG_OPTIONS_VAR=       PKG_OPTIONS.jack
-PKG_SUPPORTED_OPTIONS= simd
-# on 7.99.26/amd64:
-# ./simd.c: In function 'x86_3dnow_add2f':
-# ./simd.c:211:3: error: impossible constraint in 'asm'
-#   asm volatile (
-#PKG_SUGGESTED_OPTIONS=        simd
-
-.  include "../../mk/bsd.options.mk"
-
-.  if !empty(PKG_OPTIONS:Msimd)
-CONFIGURE_ARGS+=       --enable-dynsimd
-.  else
-CONFIGURE_ARGS+=       --disable-dynsimd
-.  endif
+.include "../../lang/python/application.mk"
+.include "../../devel/waf/waf.mk"
+.if ${OPSYS} == "Linux"
+.  include "../../audio/alsa-lib/buildlink3.mk"
 .endif
-
-BDB_ACCEPTED=          db4 db5
-BUILDLINK_TRANSFORM+=  l:db:${BDB_TYPE}
-
-post-extract:
-       ${MKDIR} ${WRKSRC}/config/os/netbsd
-       ${CP} ${FILESDIR}/atomicity.h ${WRKSRC}/config/os/netbsd
-
+.include "../../audio/libopus/buildlink3.mk"
 .include "../../audio/libsamplerate/buildlink3.mk"
-.include "../../mk/bdb.buildlink3.mk"
-.include "../../mk/dlopen.buildlink3.mk"
-.include "../../mk/pthread.buildlink3.mk"
-.include "../../mk/readline.buildlink3.mk"
+.include "../../audio/libsndfile/buildlink3.mk"
 .include "../../mk/bsd.pkg.mk"
diff -r 39478bbc8619 -r dcda2ecb971d audio/jack/PLIST
--- a/audio/jack/PLIST  Wed Sep 08 15:38:48 2021 +0000
+++ b/audio/jack/PLIST  Wed Sep 08 19:19:19 2021 +0000
@@ -1,34 +1,40 @@
-@comment $NetBSD: PLIST,v 1.10 2018/01/01 22:29:17 rillig Exp $
+@comment $NetBSD: PLIST,v 1.11 2021/09/08 19:19:19 nia Exp $
 bin/jack_alias
 bin/jack_bufsize
 bin/jack_connect
+bin/jack_control
+bin/jack_cpu
+bin/jack_cpu_load
 bin/jack_disconnect
 bin/jack_evmon
 bin/jack_freewheel
-bin/jack_impulse_grabber
 bin/jack_iodelay
 bin/jack_latent_client
 bin/jack_load
-bin/jack_load_test
 bin/jack_lsp
 bin/jack_metro
 bin/jack_midi_dump
+bin/jack_midi_latency_test
 bin/jack_midiseq
 bin/jack_midisine
 bin/jack_monitor_client
-bin/jack_netsource
+bin/jack_multiple_metro
+bin/jack_net_master
+bin/jack_net_slave
 bin/jack_property
 bin/jack_rec
 bin/jack_samplerate
 bin/jack_server_control
 bin/jack_session_notify
 bin/jack_showtime
+bin/jack_simdtests
 bin/jack_simple_client
 bin/jack_simple_session_client
-bin/jack_transport
-bin/jack_transport_client
+bin/jack_test
+bin/jack_thru
 bin/jack_unload
 bin/jack_wait
+bin/jack_zombie
 bin/jackd
 include/jack/control.h
 include/jack/intclient.h
@@ -36,24 +42,39 @@
 include/jack/jslist.h
 include/jack/metadata.h
 include/jack/midiport.h
+include/jack/net.h
 include/jack/ringbuffer.h
 include/jack/session.h
 include/jack/statistics.h
+include/jack/systemdeps.h
 include/jack/thread.h
 include/jack/transport.h
 include/jack/types.h
 include/jack/uuid.h
 include/jack/weakjack.h
 include/jack/weakmacros.h
-lib/jack/inprocess.la
-lib/jack/intime.la
-${PLIST.coreaudio}lib/jack/jack_coreaudio.la
-lib/jack/jack_dummy.la
-lib/jack/jack_net.la
-${PLIST.oss}lib/jack/jack_oss.la
-${PLIST.sunaudio}lib/jack/jack_sun.la
-lib/libjack.la
-lib/libjackserver.la
+lib/jack/audioadapter.so
+lib/jack/inprocess.so
+${PLIST.alsa}lib/jack/jack_alsa.so
+${PLIST.alsa}lib/jack/jack_alsarawmidi.so
+${PLIST.boomer}lib/jack/jack_boomer.so
+lib/jack/jack_dummy.so
+lib/jack/jack_loopback.so
+lib/jack/jack_net.so
+lib/jack/jack_netone.so
+${PLIST.oss}lib/jack/jack_oss.so
+lib/jack/jack_proxy.so
+${PLIST.sun}lib/jack/jack_sun.so
+lib/jack/netadapter.so
+lib/jack/netmanager.so
+lib/jack/profiler.so
+lib/libjack.so
+lib/libjack.so.0
+lib/libjack.so.0.1.0
+lib/libjacknet.so



Home | Main Index | Thread Index | Old Index