[arch-commits] Commit in jack2/trunk (6 files)

David Runge dvzrv at archlinux.org
Thu Nov 16 23:24:27 UTC 2017


    Date: Thursday, November 16, 2017 @ 23:24:26
  Author: dvzrv
Revision: 267029

Updating to 1.9.11_RC1. Removing gcc6 and jack1compat patches. Introducing patches for gcc7 and debug/example clients. Introducing additional -docs package.

Added:
  jack2/trunk/example-clients-fix-compilation-of-tw.c.patch
  jack2/trunk/jackdebugclient-keep-client-fsynchrotable.patch
  jack2/trunk/tests-fix-compilation-with-gcc7.patch
Modified:
  jack2/trunk/PKGBUILD
Deleted:
  jack2/trunk/gcc6.patch
  jack2/trunk/jack1compat.diff

-------------------------------------------------+
 PKGBUILD                                        |  170 ++++++++++------------
 example-clients-fix-compilation-of-tw.c.patch   |   24 +++
 gcc6.patch                                      |   62 --------
 jack1compat.diff                                |   33 ----
 jackdebugclient-keep-client-fsynchrotable.patch |   53 ++++++
 tests-fix-compilation-with-gcc7.patch           |   25 +++
 6 files changed, 184 insertions(+), 183 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2017-11-16 23:23:01 UTC (rev 267028)
+++ PKGBUILD	2017-11-16 23:24:26 UTC (rev 267029)
@@ -1,113 +1,101 @@
 # $Id$
 # Maintainer: Ray Rashif <schiv at archlinux.org>
+# Maintainer: David Runge <dave at sleepmap.de>
 # Contributor: Daniele Paolella <danielepaolella at email.it>
 # Contributor: Philipp Überbacher <hollunder at gmx dot at>
 # Contributor: Thomas Bahn <thomas-bahn at gmx dot net>
 
 pkgbase=jack2
-pkgname=('jack2' 'jack2-dbus')
-#pkgname= # single build (overrides split)
-_tarname=jack
-pkgver=1.9.10
-pkgrel=6
+pkgname=('jack2' 'jack2-dbus' 'jack2-docs')
+pkgdesc="The next-generation JACK with SMP support"
+pkgver=1.9.11_RC1
+pkgrel=1
 arch=('x86_64')
 url="http://jackaudio.org/"
-backup=(etc/security/limits.d/99-audio.conf)
 license=('GPL')
-makedepends=('python2-dbus' 'libffado' 'celt' 'opus' 'libsamplerate')
-source=("https://dl.dropbox.com/u/28869550/jack-$pkgver.tar.bz2"
+makedepends=('python2-dbus' 'libffado' 'celt' 'opus' 'libsamplerate' 'doxygen')
+source=("${pkgbase}-${pkgver}::https://github.com/jackaudio/${pkgbase}/archive/v${pkgver//_/-}.tar.gz"
         '99-audio.conf'
         '40-hpet-permissions.rules'
-        'jack1compat.diff'
-        'gcc6.patch')
-md5sums=('4aeb91d7ae0cabce98355436ed4f217a'
-         'ae65b7c9ebe0fff6c918ba9d97ae342d'
-         '471aad533ff56c5d3cbbf65ce32cadef'
-         '8c367d60a6375ebacf0d53ad651a0486'
-         '2a28b64d7672f9c38dd777e380b81291')
+        'tests-fix-compilation-with-gcc7.patch'
+        'jackdebugclient-keep-client-fsynchrotable.patch'
+        'example-clients-fix-compilation-of-tw.c.patch')
+sha512sums=('4fd7d82ab6536b8c6061023858ae5b978903608b149498818971481da75c6e9e0e7e7aef5e1343730c259f4378aebfbf25916b9736e0ad8aa19584a44f894436'
+            'c21f593d46ff12d1b8d3ce7ca4593c230a673e67ed4e486944f52fd51bdf902873d3fb253220c8ec9c6c5d5b9f002ecf3dd72318222cd748b1925bfcbf1df5d7'
+            '1f876aa61de4bc4e54d46dde7f8c8c2aa575fc382c09f3dc6819c328224b1998c7171cfd3039d35ca214e40909ad71f8d56a9b3b5652046beb5ca97e44a780b1'
+            '79e44bae409fc47af8b9b227464a3a88c223f103bf59a2aaaf2ade99108c27aeca8f4f8d60ba919a3aa83a0072f9ffef03e7259c28a61d70caf9cc18a23afcad'
+            '4c3290c51bd289e36edddb55a6e4cab981d9d3a3932da8c0a06652a22cce35c7858ff4afa99c309ed0e331224274bdb9dfe8e4fed46d486e1b2b44e6b971c484'
+            'ec5f46c8fffda5f90c7597c8a8058246adefec95c0565ccc72afb7f57cb159fdf368107d3160284f1b2cf1c8e5e5c490f53151039d69423ca48da0d3d676e1e0')
 
-_isbuild() {
-  printf "%s\n" ${pkgname[@]} | grep -qx $1
-}
-
-_pyfix() {
-  sed -i 's:bin/env python:bin/env python2:' \
-    "$pkgdir/usr/bin/jack_control"
-}
-
-_wafconf() {
-  python2 waf configure --prefix=/usr \
-                        --alsa \
-                        --firewire $@
-
-  # not building with doxygen
-  # see https://github.com/jackaudio/jack2/issues/22
-}
-
 prepare() {
-  cd "$srcdir"
+  cd "${pkgbase}-${pkgver//_/-}"
 
-  # Some optimisation bug exists for current GCC
-  # see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53663
-  #export CFLAGS="${CFLAGS/-O[0-9]/-O0}"
-  #export CXXFLAGS="$CFLAGS"
+  # https://github.com/jackaudio/jack2/issues/253
+  patch -Np1 -i "${srcdir}/tests-fix-compilation-with-gcc7.patch"
+  patch -Np1 -i "${srcdir}/example-clients-fix-compilation-of-tw.c.patch"
+  patch -Np1 -i "${srcdir}/jackdebugclient-keep-client-fsynchrotable.patch"
 
-  # fix doxygen building
-  # TODO: report upstream, but redundant until github issue 22 resolves
-  #sed -i 's:build/default/html:html:' $_tarname-$pkgver/wscript
+  # https://github.com/jackaudio/jack2/issues/308
+  sed -i 's:bin/env python:bin/env python2:' \
+    "example-clients/jack_control"
 
+  # copies of the source for jack2-dbus and jack2-docs
+  cp -r "${srcdir}/${pkgbase}-${pkgver//_/-}" "${srcdir}/${pkgname[1]}-${pkgver//_/-}"
+  cp -r "${srcdir}/${pkgbase}-${pkgver//_/-}" "${srcdir}/${pkgname[2]}-${pkgver//_/-}"
 
-  (
-    cd $_tarname-$pkgver
-    patch -Np1 -i $srcdir/gcc6.patch
+  # configure jack2
+  python waf configure --prefix=/usr \
+                       --doxygen=no \
+                       --freebob=no \
+                       --classic \
+                       --dbus
 
-    # see https://bugs.archlinux.org/task/47839
-    patch -Np1 -i $srcdir/jack1compat.diff
-  )
+  # configure jack2-dbus
+  cd "${srcdir}/${pkgname[1]}-${pkgver//_/-}"
+  python waf configure --prefix=/usr \
+                       --doxygen=no \
+                       --freebob=no \
+                       --dbus
 
-  # we may do 2 different builds
-  cp -r $_tarname-$pkgver $_tarname-dbus-$pkgver
-
+  # configure jack2-docs
+  cd "${srcdir}/${pkgname[2]}-${pkgver//_/-}"
+  python waf configure --prefix=/usr \
+                       --htmldir="/usr/share/doc/${pkgbase}/" \
+                       --autostart=none \
+                       --alsa=no \
+                       --firewire=no \
+                       --freebob=no \
+                       --iio=no \
+                       --winmme=no \
+                       --celt=no \
+                       --opus=no \
+                       --samplerate=no \
+                       --sndfile=no \
+                       --readline=no
 }
 
 build() {
-  cd "$srcdir"
-
-  # mixed dbus/classic build
-  if _isbuild jack2; then
-    cd $_tarname-$pkgver
-    msg2 "Running Mixed D-Bus/Classic build"
-    _wafconf --classic --dbus
-    python2 waf build $MAKEFLAGS
-    cd ..
-  fi
-
-  # dbus-ONLY build
-  if _isbuild jack2-dbus; then
-    cd $_tarname-dbus-$pkgver
-    msg2 "Running D-Bus-only build"
-    _wafconf --dbus
-    python2 waf build $MAKEFLAGS
-    cd ..
-  fi
+  # build jack2
+  cd "${pkgname[0]}-${pkgver//_/-}"
+  python waf build
+  # build jack2-dbus
+  cd "${srcdir}/${pkgname[1]}-${pkgver//_/-}"
+  python waf build
+  # build jack2-docs
+  cd "${srcdir}/${pkgname[2]}-${pkgver//_/-}"
+  python waf build
 }
 
 package_jack2() {
-  ! _isbuild jack2 && return 0
-
   pkgdesc="The next-generation JACK with SMP support"
-  depends=('libsamplerate' 'celt' 'opus' 'libffado')
-  optdepends=('python2-dbus: jack_control')
+  depends=('libsamplerate' 'celt' 'opus' 'libffado' 'python2-dbus')
   conflicts=('jack')
   provides=('jack' 'jackmp' 'jackdmp' 'jackdbus')
+  backup=(etc/security/limits.d/99-audio.conf)
 
-  cd "$srcdir/$_tarname-$pkgver"
+  cd "${pkgname[0]}-${pkgver//_/-}"
+  python waf install --destdir="${pkgdir}"
 
-  python2 waf install --destdir="$pkgdir"
-
-  # fix for major python transition
-  _pyfix
-
   # configure realtime access/scheduling
   # see https://bugs.archlinux.org/task/26343
   install -Dm644 "$srcdir/99-audio.conf" \
@@ -118,20 +106,17 @@
 }
 
 package_jack2-dbus() {
-  ! _isbuild jack2-dbus && return 0
-
   pkgdesc="The next-generation JACK with SMP support (for D-BUS interaction only)"
-  depends=('libsamplerate' 'celt' 'opus' 'libffado')
-  optdepends=('python2-dbus: jack_control')
+  depends=('libsamplerate' 'celt' 'opus' 'libffado' 'python2-dbus')
   conflicts=('jack' 'jack2')
   provides=('jack' 'jack2' 'jackmp' 'jackdmp' 'jackdbus')
+  backup=(etc/security/limits.d/99-audio.conf)
 
-  cd "$srcdir/$_tarname-dbus-$pkgver"
+  cd "${pkgname[1]}-${pkgver//_/-}"
+  python waf install --destdir="${pkgdir}"
 
-  python2 waf install --destdir="$pkgdir"
-
-  _pyfix
-
+  # configure realtime access/scheduling
+  # see https://bugs.archlinux.org/task/26343
   install -Dm644 "$srcdir/99-audio.conf" \
     "$pkgdir/etc/security/limits.d/99-audio.conf"
 
@@ -139,4 +124,13 @@
     "$pkgdir/usr/lib/udev/rules.d/40-hpet-permissions.rules"
 }
 
+package_jack2-docs() {
+  pkgdesc="The next-generation JACK with SMP support (documentation)"
+  arch=('any')
+
+  cd "${pkgname[2]}-${pkgver//_/-}"
+  python waf install --destdir="${pkgdir}"
+  rm -r "${pkgdir}"/usr/{bin,lib,include,share/man}
+}
+
 # vim:set ts=2 sw=2 et:

Added: example-clients-fix-compilation-of-tw.c.patch
===================================================================
--- example-clients-fix-compilation-of-tw.c.patch	                        (rev 0)
+++ example-clients-fix-compilation-of-tw.c.patch	2017-11-16 23:24:26 UTC (rev 267029)
@@ -0,0 +1,24 @@
+From eabc679bd4f564a6b5294d0558b579898d66e2fa Mon Sep 17 00:00:00 2001
+From: Kjetil Matheussen <k.s.matheussen at notam02.no>
+Date: Sat, 15 Jul 2017 13:21:36 +0200
+Subject: [PATCH] Example clients: Fix compilation of tw.c
+
+---
+ example-clients/tw.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/example-clients/tw.c b/example-clients/tw.c
+index 623ff240..edc7ef31 100644
+--- a/example-clients/tw.c
++++ b/example-clients/tw.c
+@@ -9,6 +9,7 @@
+ #include <unistd.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <signal.h>
+ 
+ #include <jack/jack.h>
+ 
+-- 
+2.15.0
+

Deleted: gcc6.patch
===================================================================
--- gcc6.patch	2017-11-16 23:23:01 UTC (rev 267028)
+++ gcc6.patch	2017-11-16 23:24:26 UTC (rev 267029)
@@ -1,62 +0,0 @@
-From ff1ed2c4524095055140370c1008a2d9cccc5645 Mon Sep 17 00:00:00 2001
-From: Adrian Knoth <adi at drcomp.erfurt.thur.de>
-Date: Sat, 11 Jun 2016 05:35:07 +0200
-Subject: [PATCH] Fix initialization in test/iodelay.cpp
-
-jack_latency_range_t is
-
-struct _jack_latency_range {
-    jack_nframes_t min;
-    jack_nframes_t max;
-};
-
-and jack_nframes_t is
-
-typedef uint32_t        jack_nframes_t;
-
-so it's unsigned. Initialising it with -1 is invalid (at least in C++14). We cannot use {0, 0}, because latency_cb has
-
-   jack_latency_range_t range;
-   range.min = range.max = 0;
-   if ((range.min != capture_latency.min) || (range.max !=
-       capture_latency.max)) {
-       capture_latency = range;
-   }
-
-so we must not have {0, 0}, otherwise the condition would never be true.
-
-Using UINT32_MAX should be equivalent to the previous -1.
----
- tests/iodelay.cpp | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/tests/iodelay.cpp b/tests/iodelay.cpp
-index e1ba63f..1ef470f 100644
---- a/tests/iodelay.cpp
-+++ b/tests/iodelay.cpp
-@@ -20,6 +20,7 @@
- 
- #include <stdlib.h>
- #include <stdio.h>
-+#include <stdint.h>
- #include <math.h>
- #include <unistd.h>
- #include <jack/jack.h>
-@@ -167,8 +168,8 @@ static jack_client_t  *jack_handle;
- static jack_port_t    *jack_capt;
- static jack_port_t    *jack_play;
- 
--jack_latency_range_t   capture_latency = {-1, -1};
--jack_latency_range_t   playback_latency = {-1, -1};
-+jack_latency_range_t   capture_latency = {UINT32_MAX, UINT32_MAX};
-+jack_latency_range_t   playback_latency = {UINT32_MAX, UINT32_MAX};
- 
- void
- latency_cb (jack_latency_callback_mode_t mode, void *arg)
-@@ -266,4 +267,4 @@ int main (int ac, char *av [])
-     return 0;
- }
- 
--// --------------------------------------------------------------------------------
-\ No newline at end of file
-+// --------------------------------------------------------------------------------

Deleted: jack1compat.diff
===================================================================
--- jack1compat.diff	2017-11-16 23:23:01 UTC (rev 267028)
+++ jack1compat.diff	2017-11-16 23:24:26 UTC (rev 267029)
@@ -1,33 +0,0 @@
-diff --git a/common/jack/types.h b/common/jack/types.h
-index 094d407..2dccf34 100644
---- a/common/jack/types.h
-+++ b/common/jack/types.h
-@@ -403,10 +403,8 @@ typedef void (*JackPortConnectCallback)(jack_port_id_t a, jack_port_id_t b, int
-  * @param port the port that has been renamed
-  * @param new_name the new name
-  * @param arg pointer to a client supplied structure
-- *
-- * @return zero on success, non-zero on error
-  */
--typedef int (*JackPortRenameCallback)(jack_port_id_t port, const char* old_name, const char* new_name, void *arg);
-+typedef void (*JackPortRenameCallback)(jack_port_id_t port, const char* old_name, const char* new_name, void *arg);
- 
- /**
-  * Prototype for the client supplied function that is called
-diff --git a/tests/test.cpp b/tests/test.cpp
-index 750d152..8a8a811 100644
---- a/tests/test.cpp
-+++ b/tests/test.cpp
-@@ -186,11 +186,10 @@ void Jack_Client_Registration_Callback(const char* name, int val, void *arg)
- 		client_register--;
- }
- 
--int Jack_Port_Rename_Callback(jack_port_id_t port, const char* old_name, const char* new_name, void *arg)
-+void Jack_Port_Rename_Callback(jack_port_id_t port, const char* old_name, const char* new_name, void *arg)
- {
-      Log("Rename callback has been successfully called with old_name '%s' and new_name '%s'. (msg from callback)\n", old_name, new_name);
-      port_rename_clbk = 1;
--     return 0;
- }
- 
- int Jack_Update_Buffer_Size(jack_nframes_t nframes, void *arg)

Added: jackdebugclient-keep-client-fsynchrotable.patch
===================================================================
--- jackdebugclient-keep-client-fsynchrotable.patch	                        (rev 0)
+++ jackdebugclient-keep-client-fsynchrotable.patch	2017-11-16 23:24:26 UTC (rev 267029)
@@ -0,0 +1,53 @@
+From ccedff2f357d7d52bf4327cf14dfade2b41052ca Mon Sep 17 00:00:00 2001
+From: Kjetil Matheussen <k.s.matheussen at notam02.no>
+Date: Sat, 15 Jul 2017 13:21:17 +0200
+Subject: [PATCH] JackDebugClient: Keep client->fSynchroTable. Prevents crash
+ in jack_client_wait, plus that it seems to be the correct thing to do.
+
+---
+ common/JackClient.cpp      | 3 ---
+ common/JackClient.h        | 1 -
+ common/JackDebugClient.cpp | 1 +
+ 3 files changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/common/JackClient.cpp b/common/JackClient.cpp
+index 7334a57a..bcb06ead 100644
+--- a/common/JackClient.cpp
++++ b/common/JackClient.cpp
+@@ -39,9 +39,6 @@ namespace Jack
+ 
+ #define IsRealTime() ((fProcess != NULL) | (fThreadFun != NULL) | (fSync != NULL) | (fTimebase != NULL))
+ 
+-JackClient::JackClient():fThread(this)
+-{}
+-
+ JackClient::JackClient(JackSynchro* table):fThread(this)
+ {
+     fSynchroTable = table;
+diff --git a/common/JackClient.h b/common/JackClient.h
+index 3013334b..b6e78ef3 100644
+--- a/common/JackClient.h
++++ b/common/JackClient.h
+@@ -124,7 +124,6 @@ class SERVER_EXPORT JackClient : public JackClientInterface, public JackRunnable
+ 
+     public:
+ 
+-        JackClient();
+         JackClient(JackSynchro* table);
+         virtual ~JackClient();
+ 
+diff --git a/common/JackDebugClient.cpp b/common/JackDebugClient.cpp
+index 3308c457..7c1f539a 100644
+--- a/common/JackDebugClient.cpp
++++ b/common/JackDebugClient.cpp
+@@ -35,6 +35,7 @@ namespace Jack
+ {
+ 
+ JackDebugClient::JackDebugClient(JackClient * client)
++  : JackClient(client->fSynchroTable)
+ {
+     fTotalPortNumber = 1;       // The total number of port opened and maybe closed. Historical view.
+     fOpenPortNumber = 0;        // The current number of opened port.
+-- 
+2.15.0
+

Added: tests-fix-compilation-with-gcc7.patch
===================================================================
--- tests-fix-compilation-with-gcc7.patch	                        (rev 0)
+++ tests-fix-compilation-with-gcc7.patch	2017-11-16 23:24:26 UTC (rev 267029)
@@ -0,0 +1,25 @@
+From f7bccdca651592cc4082b28fd4a01ed6ef8ab655 Mon Sep 17 00:00:00 2001
+From: Kjetil Matheussen <k.s.matheussen at notam02.no>
+Date: Sat, 15 Jul 2017 13:21:59 +0200
+Subject: [PATCH] Tests: Fix compilation with gcc7
+
+---
+ tests/test.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/test.cpp b/tests/test.cpp
+index 8a8a8117..d2ef9a05 100644
+--- a/tests/test.cpp
++++ b/tests/test.cpp
+@@ -479,7 +479,7 @@ int process4(jack_nframes_t nframes, void *arg)
+ 	jack_nframes_t delta_time = cur_time - last_time;
+ 
+ 	Log("calling process4 callback : jack_frame_time = %ld delta_time = %ld\n", cur_time, delta_time);
+-	if (delta_time > 0  && (jack_nframes_t)abs(delta_time - cur_buffer_size) > tolerance) {
++	if (delta_time > 0  && abs((int64_t)delta_time - (int64_t)cur_buffer_size) > (int64_t)tolerance) {
+ 		printf("!!! ERROR !!! jack_frame_time seems to return incorrect values cur_buffer_size = %d, delta_time = %d tolerance %d\n", cur_buffer_size, delta_time, tolerance);
+ 	}
+ 
+-- 
+2.15.0
+



More information about the arch-commits mailing list