git » ardour.git » commit 4ac6c05

upgpkg: 5.12-12

author David Runge
2019-11-25 09:40:45 UTC
committer David Runge
2019-11-25 09:40:45 UTC
parent 1f73c477235e9f0cc5a92bc84c2a9d779e2bb42d

upgpkg: 5.12-12

Updating maintainer info. Switching to correct license (GPL2). Adding all direct library dependencies. Adding lv2 and waf to makedepends. Building with system waf, by devendoring all ancient waf things (a patch for current master has been offered to upstream in a pull request). Fixing a bug in regards to gtk2 theming (FS#54389).

PKGBUILD +54 -23
ardour-5.12-waf-python3.patch +98 -0

diff --git a/PKGBUILD b/PKGBUILD
index cb0f861..17b8466 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,44 +1,76 @@
-# Maintainer: David Runge <dave@sleepmap.de>
+# Maintainer: David Runge <dvzrv@archlinux.org>
 # Contributor: Ray Rashif <schiv@archlinux.org>
 # Contributor: SpepS <dreamspepser at yahoo dot it>
 
 _name=Ardour
 pkgname=ardour
 pkgver=5.12
-pkgrel=11
+pkgrel=12
 pkgdesc="Professional-grade digital audio workstation"
 arch=('x86_64')
 url="https://ardour.org/"
-license=('GPL')
+license=('GPL2')
 groups=('pro-audio')
-depends=('liblrdf' 'libarchive' 'liblo' 'lilv' 'suil' 'taglib' 'aubio'
-'rubberband' 'gtkmm')
-makedepends=('boost' 'cppunit' 'git' 'itstool' 'python2')
+depends=('atk' 'cairo' 'dbus' 'fftw' 'fontconfig' 'gdk-pixbuf2' 'glib2'
+'glibc' 'gtk2' 'gtkmm' 'harfbuzz' 'libaubio.so' 'libarchive.so' 'libcurl.so'
+'libFLAC.so' 'libfreetype.so' 'liblo.so' 'liblrdf.so' 'liblilv-0.so' 'libogg'
+'libreadline.so' 'librubberband.so' 'libsamplerate' 'libserd-0.so'
+'libsord-0.so' 'libsratom-0.so' 'libsuil-0.so' 'libusb-1.0.so'
+'libvamp-hostsdk.so' 'libvamp-sdk.so' 'libx11' 'libxml2' 'pango' 'taglib')
+makedepends=('boost' 'cppunit' 'doxygen' 'git' 'graphviz' 'itstool' 'lv2' 'waf')
 optdepends=('xjadeo: video monitoring'
             'harvid: video timeline')
-source=("${pkgname}-${pkgver}::git+https://github.com/${pkgname}/${pkgname}.git#tag=${pkgver}")
-sha512sums=('SKIP')
+source=("${pkgname}-${pkgver}::git+https://github.com/${pkgname}/${pkgname}.git#tag=${pkgver}"
+        "${pkgname}-${pkgver}-waf-python3.patch"
+        'https://gitlab.com/ita1024/waf/raw/waf-1.6.11/waflib/extras/misc.py')
+sha512sums=('SKIP'
+            'a716271681ae312b36d6b7e2c82ace91ca29d7ee579e14002fb5936e0708b0957ccb4f2da0e4d23068287585b8b20c633ed1e1807f30e0e06ca67c7de2a611d4'
+            '71bd724dfce9f02d2635a4594ee28c85a467cacd7ea5a6bb0b3e431a8759b161ace021086c97e73923b98b41876407df6cce2b588a79e8f9fb4b3010afba962e')
+
+prepare() {
+  cd "${pkgname}-${pkgver}"
+
+  # unsetting gtk2 rc (FS#54389)
+  sed -e '8iexport GTK2_RC_FILES=/dev/null' -i gtk2_ardour/ardour.sh.in
+
+  # make wscripts python3 and current waf compatible
+  patch -Np1 -i "../${pkgname}-${pkgver}-waf-python3.patch"
+
+  # Fixes to use system waf:
+  # making sure, that subdirectories can be picked up with local includes
+  touch __init__.py
+  # making ancient 'misc' include available to system installed waf
+  ln -sv "${srcdir}/misc.py" tools/misc.py
+  sed -e "s/('misc')/('misc', tooldir='tools')/" \
+      -i {tools/luadevel,gtk2_ardour,session_utils,libs/fst,headless}/wscript
+  # make custom 'autowaf' include compatible with system installed waf
+  find . -type f \
+         -iname "*wscript*" \
+         -exec sed -e 's/from waflib.extras import autowaf/from tools import autowaf/g' \
+                   -e 's/import waflib.extras.autowaf/from tools import autowaf/g' \
+                   -i {} \;
+}
 
 build() {
   cd "${pkgname}-${pkgver}"
-  python2 waf configure --prefix=/usr \
-                        --configdir=/etc \
-                        --with-backends="jack,alsa,dummy" \
-                        --libjack=weak \
-                        --nls \
-                        --optimize \
-                        --cxx11 \
-                        --freedesktop \
-                        --ptformat \
-                        --lxvst \
-                        --no-phone-home
-  python2 waf build
+  waf configure --prefix=/usr \
+                --configdir=/etc \
+                --with-backends="jack,alsa,dummy" \
+                --libjack=weak \
+                --nls \
+                --optimize \
+                --cxx11 \
+                --freedesktop \
+                --ptformat \
+                --lxvst \
+                --no-phone-home
+  waf build -v
 }
 
 package() {
   cd "${pkgname}-${pkgver}"
-  python2 waf i18n --destdir="${pkgdir}"
-  python2 waf install --destdir="${pkgdir}"
+  waf i18n --destdir="${pkgdir}"
+  waf install --destdir="${pkgdir}"
   # xdg integration
   install -vDm 644 "build/gtk2_${pkgname}/${pkgname}.xml" \
     -t "${pkgdir}/usr/share/mime/packages/"
@@ -51,5 +83,4 @@ package() {
   # man pages
   install -vDm 644 "${pkgname}.1"* -t "${pkgdir}/usr/share/man/man1/"
 }
-
 # vim:set ts=2 sw=2 et:
diff --git a/ardour-5.12-waf-python3.patch b/ardour-5.12-waf-python3.patch
new file mode 100644
index 0000000..036ffd5
--- /dev/null
+++ b/ardour-5.12-waf-python3.patch
@@ -0,0 +1,98 @@
+diff --git c/gtk2_ardour/wscript w/gtk2_ardour/wscript
+index d3824a0a63..b8d92513bd 100644
+--- c/gtk2_ardour/wscript
++++ w/gtk2_ardour/wscript
+@@ -588,7 +588,9 @@ def build(bld):
+         obj.source    = list(gtk2_ardour_sources)
+         obj.target = 'ardour-' + str (bld.env['VERSION'])
+         obj.includes = ['.']
++        obj.includes += bld.env['INCLUDES_LILV']
+         obj.ldflags = ['-no-undefined']
++        obj.ldflags = ['-l' + lib for lib in bld.env['LIB_LILV']]
+ 
+         if bld.is_defined('WINDOWS_VST_SUPPORT'):
+         # Windows VST support mingw
+diff --git c/libs/ptformat/wscript w/libs/ptformat/wscript
+index 4d381234fe..ad3370d19b 100644
+--- c/libs/ptformat/wscript
++++ w/libs/ptformat/wscript
+@@ -31,7 +31,7 @@ def build(bld):
+     obj = bld(features = 'cxx cxxshlib')
+     obj.source = 'ptfformat.cc'
+     obj.export_includes = ['.']
+-    obj.includes     = ['.']
++    obj.includes = ['.'] + bld.env['INCLUDES_GLIB']
+     obj.name         = 'libptformat'
+     obj.target       = 'ptformat'
+     obj.use          = 'libardour'
+diff --git c/libs/surfaces/osc/wscript w/libs/surfaces/osc/wscript
+index 4d0dba6750..6b8db9f86c 100644
+--- c/libs/surfaces/osc/wscript
++++ w/libs/surfaces/osc/wscript
+@@ -27,7 +27,7 @@ def build(bld):
+     obj.export_includes = ['.']
+     obj.defines      = [ 'PACKAGE="ardour_osc"' ]
+     obj.defines     += [ 'ARDOURSURFACE_DLL_EXPORTS' ]
+-    obj.includes     = ['.', './osc']
++    obj.includes = ['.', './osc'] + bld.env['INCLUDES_XML']
+     obj.name         = 'libardour_osc'
+     obj.target       = 'ardour_osc'
+     obj.uselib       = 'LO GTKMM GTK GDK'
+diff --git c/libs/surfaces/push2/wscript w/libs/surfaces/push2/wscript
+index 9c75f9d69f..f12e1a5578 100644
+--- c/libs/surfaces/push2/wscript
++++ w/libs/surfaces/push2/wscript
+@@ -39,7 +39,7 @@ def build(bld):
+     obj.defines      = [ 'PACKAGE="ardour_push2"' ]
+     obj.defines     += [ 'ARDOURSURFACE_DLL_EXPORTS' ]
+     obj.defines     += [ 'VERSIONSTRING="' + bld.env['VERSION'] + '"' ]
+-    obj.includes     = [ '.', './push2']
++    obj.includes = ['.', './push2'] + bld.env['INCLUDES_XML']
+     obj.name         = 'libardour_push2'
+     obj.target       = 'ardour_push2'
+     obj.uselib       = 'CAIROMM PANGOMM USB GTKMM SIGCPP'
+diff --git c/libs/widgets/wscript w/libs/widgets/wscript
+index 0559abe4dc..6e7ca29fc6 100644
+--- c/libs/widgets/wscript
++++ w/libs/widgets/wscript
+@@ -76,9 +76,9 @@ def build(bld):
+         obj.defines      = [ ]
+ 
+     obj.export_includes = ['.']
+-    obj.includes     = ['.']
+     obj.uselib       = 'SIGCPP CAIROMM GTKMM BOOST XML'
+     obj.use          = [ 'libpbd', 'libgtkmm2ext' ]
++    obj.includes = ['.'] + bld.env['INCLUDES_GLIB']
+     obj.name         = 'libwidgets'
+     obj.target       = 'widgets'
+     obj.vnum         = WIDGETS_LIB_VERSION
+diff --git c/session_utils/wscript w/session_utils/wscript
+index 5fe9445426..249796d132 100644
+--- c/session_utils/wscript
++++ w/session_utils/wscript
+@@ -86,7 +86,7 @@ def build(bld):
+     utils = bld.path.ant_glob('*.cc', excl=['example.cc', 'common.cc'])
+ 
+     for util in utils:
+-        fn = str(util)[:-3]
++        fn = os.path.basename(str(util))[:-3]
+         build_ardour_util(bld, fn)
+         if bld.env['build_target'] != 'mingw':
+             bld.symlink_as(bld.env['BINDIR'] + '/' + pgmprefix + "-" + fn, bld.env['LIBDIR'] + '/utils/ardour-util.sh')
+diff --git c/tools/luadevel/wscript w/tools/luadevel/wscript
+index 3190380091..d56d72ad86 100755
+--- c/tools/luadevel/wscript
++++ w/tools/luadevel/wscript
+@@ -27,12 +27,6 @@ def configure(conf):
+ 
+ def build(bld):
+     VERSION = "%s.%s" % (bld.env['MAJOR'], bld.env['MINOR'])
+-    if not bld.is_defined('HAVE_READLINE'):
+-            return;
+-    # no wine
+-    if bld.is_defined('WINDOWS_VST_SUPPORT') and bld.env['build_target'] != 'mingw':
+-        return
+-
+     if bld.env['build_target'] != 'mingw':
+     # TEST/DEVEL TOOL #######################
+         obj = bld (features = 'cxx c cxxprogram')