nphilipp pushed to ardour4 (f21). "Initial import (#1216055)."

notifications at fedoraproject.org notifications at fedoraproject.org
Fri May 1 13:28:10 UTC 2015


>From c2ce225bf2704177a89e5f9950f1a91c20f721fc Mon Sep 17 00:00:00 2001
From: Nils Philippsen <nils at redhat.com>
Date: Fri, 1 May 2015 15:25:34 +0200
Subject: Initial import (#1216055).


diff --git a/.gitignore b/.gitignore
index e69de29..52eaa15 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/Ardour-4.0.0.tar.bz2
diff --git a/LICENSING b/LICENSING
new file mode 100644
index 0000000..e110d8e
--- /dev/null
+++ b/LICENSING
@@ -0,0 +1,71 @@
+Ardour is licensed under the GNU General Public License, version 2 or later.
+See the file COPYING for details.
+
+Ardour uses some 3rd party code distributed under different licenses which are
+reproduced here:
+
+=====
+
+The piano_keyboard widget:
+
+/*-
+ * Copyright (c) 2007, 2008 Edward Tomasz Napiera<81>Å<82>a <trasz at FreeBSD.org>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+=====
+
+The sndfile.hh C++ wrapper for libsndfile:
+
+/*
+** Copyright (C) 2005-2007 Erik de Castro Lopo <erikd at mega-nerd.com>
+**
+** All rights reserved.
+**
+** Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+**
+**     * Redistributions of source code must retain the above copyright
+**       notice, this list of conditions and the following disclaimer.
+**     * Redistributions in binary form must reproduce the above copyright
+**       notice, this list of conditions and the following disclaimer in
+**       the documentation and/or other materials provided with the
+**       distribution.
+**     * Neither the author nor the names of any contributors may be used
+**       to endorse or promote products derived from this software without
+**       specific prior written permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+** TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+** PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+** CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+** EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+** PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+** OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+** WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+** OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+** ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
diff --git a/ardour4-4.0.0-dont-install-libsmf-a.patch b/ardour4-4.0.0-dont-install-libsmf-a.patch
new file mode 100644
index 0000000..50857dd
--- /dev/null
+++ b/ardour4-4.0.0-dont-install-libsmf-a.patch
@@ -0,0 +1,25 @@
+From f90a5a3949ac19ab9d91fafc5f4b75db4040e030 Mon Sep 17 00:00:00 2001
+From: Nils Philippsen <nils at tiptoe.de>
+Date: Fri, 1 May 2015 00:19:53 +0200
+Subject: [PATCH] don't install static library libsmf.a
+
+---
+ libs/evoral/wscript | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libs/evoral/wscript b/libs/evoral/wscript
+index f97096b..12ebffe 100644
+--- a/libs/evoral/wscript
++++ b/libs/evoral/wscript
+@@ -71,7 +71,7 @@ def build(bld):
+     libsmf.name         = 'libsmf'
+     libsmf.target       = 'smf'
+     libsmf.uselib       = 'GLIB'
+-    libsmf.install_path = bld.env['LIBDIR']
++    libsmf.install_path = None
+     if bld.env['build_target'] != 'mingw':
+         libsmf.cxxflags     = [ '-fPIC' ]
+         libsmf.cflags       = [ '-fPIC' ]
+-- 
+2.1.0
+
diff --git a/ardour4.spec b/ardour4.spec
new file mode 100644
index 0000000..378bee4
--- /dev/null
+++ b/ardour4.spec
@@ -0,0 +1,269 @@
+# gcc 4.8 doesn't seem to like bluetooth headers with strict
+%bcond_with strict
+
+# the test scripts seem to be broken
+%bcond_with tests
+
+# whether to do a verbose build
+%bcond_without verbose_build
+%if %{with verbose_build}
+%global _verbose -v
+%else
+%global _verbose %{nil}
+%endif
+
+%global backends jack,alsa,dummy
+
+%global man_langs_encodings :UTF-8 es:UTF-8 fr:ISO-8859-1 ru:KOI8-R
+
+# Don't generate provides for internal shared objects and plugins
+%global internal_libs_re (ardour.*|audiographer|canvas|evoral|gtkmm2ext|jack_audiobackend|midipp|pan[12]in2out|panbalance|panvbap|pbd|qmdsp|timecode)
+%global __provides_exclude_from ^%{_libdir}/(%{name}|lv2)/.*$
+%global __requires_exclude ^lib%{internal_libs_re}\.so.*$
+
+# This package is named ardour4 to allow parallel installation with older versions of Ardour (2 and 3).
+Name:       ardour4
+Version:    4.0.0
+
+Release:    1%{?dist}
+Summary:    Digital Audio Workstation
+
+Group:      Applications/Multimedia
+License:    GPLv2+
+URL:        http://ardour.org
+# Not available via direct download. Download via
+# http://ardour.org/download.html
+Source0:    Ardour-%{version}.tar.bz2
+# BSD 2/3-clause licenses used in some code files
+Source1:    LICENSING
+# Don't install static library libsmf.a
+# https://github.com/Ardour/ardour/pull/111
+Patch0:     ardour4-4.0.0-dont-install-libsmf-a.patch
+
+BuildRequires:  alsa-lib-devel
+BuildRequires:  aubio-devel >= 0.3.2
+BuildRequires:  bluez-libs-devel
+BuildRequires:  boost-devel >= 1.39
+BuildRequires:  cppunit-devel >= 1.12.0
+BuildRequires:  cwiid-devel >= 0.6.00
+BuildRequires:  dbus-devel
+BuildRequires:  desktop-file-utils
+BuildRequires:  doxygen
+BuildRequires:  fftw-devel
+BuildRequires:  flac-devel >= 1.2.1
+BuildRequires:  fontconfig
+BuildRequires:  gettext
+BuildRequires:  glib2-devel >= 2.14.0
+BuildRequires:  glibmm24-devel >= 2.32.0
+BuildRequires:  graphviz
+BuildRequires:  gtk2-devel >= 2.18
+BuildRequires:  gtkmm24-devel >= 2.18
+BuildRequires:  jack-audio-connection-kit-devel >= 1.9.10
+BuildRequires:  kernel-headers
+BuildRequires:  libcurl-devel >= 7.0.0
+BuildRequires:  libgnomecanvas-devel >= 2.30
+BuildRequires:  libgnomecanvasmm26-devel >= 2.16
+BuildRequires:  liblo-devel >= 0.24
+BuildRequires:  liblrdf-devel >= 0.4.0
+BuildRequires:  libltc-devel >= 1.1.1
+BuildRequires:  libogg-devel >= 1.1.2
+BuildRequires:  libsamplerate-devel >= 0.1.7
+BuildRequires:  libsigc++20-devel >= 2.0
+BuildRequires:  libsndfile-devel >= 1.0.18
+BuildRequires:  libuuid-devel
+BuildRequires:  libX11-devel >= 1.1
+BuildRequires:  libxml2-devel
+BuildRequires:  lilv-devel >= 0.14.0
+BuildRequires:  lv2-devel >= 1.0.0
+BuildRequires:  python
+BuildRequires:  rubberband-devel >= 1.0
+BuildRequires:  serd-devel >= 0.14.0
+BuildRequires:  sord-devel >= 0.8.0
+BuildRequires:  sratom-devel >= 0.2.0
+BuildRequires:  suil-devel >= 0.6.0
+BuildRequires:  taglib-devel >= 1.4
+BuildRequires:  vamp-plugin-sdk-devel
+
+Requires:       google-droid-sans-mono-fonts
+
+%description
+Ardour is a multi-channel digital audio workstation, allowing users to record,
+edit, mix and master audio and MIDI projects. It is targeted at audio
+engineers, musicians, soundtrack editors and composers.
+
+%prep
+%setup -q -n Ardour-%{version}
+%patch0 -p1 -b .dont-install-libsmf-a
+
+# use versionized name for all and reencode some man pages
+for lang_enc in %{man_langs_encodings}; do
+    lang="${lang_enc%%:*}"
+    enc="${lang_enc#*:}"
+    if [ -n "$lang" ]; then
+        lang=".${lang}"
+    fi
+    fromfile="ardour.1${lang}"
+    tofile="%{name}.1${lang}"
+    iconv -f "$enc" -t UTF-8 "$fromfile" > "$tofile"
+    touch -r "$fromfile" "$tofile"
+done
+
+cp %{SOURCE1} .
+
+%build
+export LC_ALL=en_US.UTF-8
+./waf configure \
+%if %{with strict}
+    --strict \
+%endif
+%if %{with tests}
+    --test \
+%endif
+    --prefix="%_prefix" \
+    --bindir="%_bindir" \
+    --configdir="%_sysconfdir" \
+    --datadir="%_datadir" \
+    --includedir="%_includedir" \
+    --libdir="%_libdir" \
+    --mandir="%_mandir" \
+    --docdir="%_docdir" \
+    --docs \
+    --freedesktop \
+    --lv2 \
+    --lxvst \
+    --nls \
+    --noconfirm \
+    --no-phone-home \
+    --optimize \
+%ifarch %ix86 x86_64
+    --arch="%optflags -msse -mfpmath=sse -DUSE_XMMINTRIN" \
+%else
+    --arch="%optflags" \
+%endif
+    --use-external-libs \
+    --with-backends=%{backends}
+
+./waf build %{_verbose} %{?_smp_mflags}
+./waf i18n %{_verbose} %{?_smp_mflags}
+
+sed 's/=ardour3/=%{name}/g' < gtk2_ardour/ardour3.desktop.in > \
+    gtk2_ardour/%{name}.desktop
+
+%install
+./waf --destdir=%{buildroot} install %{_verbose}
+
+# ArdourMono.ttf is really Droid Sans Mono
+ln -snf ../fonts/google-droid/DroidSansMono.ttf %{buildroot}%{_datadir}/%{name}/ArdourMono.ttf
+
+# install man pages
+install -d -m755 %{buildroot}%{_mandir}/man1
+for lang_enc in %man_langs_encodings; do
+    lang="${lang_enc%%:*}"
+    if [ -n "$lang" ]; then
+        _lang=".${lang}"
+    else
+        _lang=""
+    fi
+    fromfile="%{name}.1${_lang}"
+    todir="%{buildroot}%{_mandir}/${lang}/man1"
+    tofile="${todir}/%{name}.1"
+    install -d -m755 "$todir"
+    install -p -m644 "$fromfile" "$tofile"
+done
+
+# install icons to freedesktop locations
+for s in 16 22 32 48 256 512; do
+    mkdir -p %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps
+    ln -s ../../../../%{name}/icons/ardour_icon_${s}px.png \
+       %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps/%{name}.png
+done
+
+# tweak and install desktop file
+mkdir -p %{buildroot}%{_datadir}/applications/
+desktop-file-install --dir %{buildroot}%{_datadir}/applications \
+    --set-key=Name --set-value="Ardour %{version}" \
+    --set-generic-name="Digital Audio Workstation" \
+    --set-key=X-GNOME-FullName \
+    --set-value="Ardour v%{version} (Digital Audio Workstation)" \
+    --set-comment="Record, mix and master audio" \
+    --remove-category=AudioEditing \
+    --add-category=X-AudioEditing \
+    gtk2_ardour/%{name}.desktop
+
+# install mime entry
+mkdir -p %{buildroot}%{_datadir}/mime/packages/
+install -p -m 0644 gtk2_ardour/ardour3.xml %{buildroot}%{_datadir}/mime/packages/%{name}.xml
+
+%find_lang %{name}
+%find_lang gtk2_%{name}
+%find_lang gtkmm2ext3
+
+# Collect non-locale data files and (all) directories
+find %{buildroot}%{_datadir}/%{name} | \
+    sed 's|^%{buildroot}||g' | \
+    while read f; do
+        # *sigh*
+        if [ "$f" = "${f/ /}" ]; then
+            _f="$f"
+        else
+            _f="\"${f}\""
+        fi
+
+        if [ -d "%{buildroot}${f}" ]; then
+            echo "%%dir ${_f}"
+        else
+            if [ "${f}" = "${f#%{_datadir}/%{name}/locale}" ]; then
+                echo "${_f}"
+            fi
+        fi
+    done > %{name}-datafiles.list
+
+%if %{with tests}
+%check
+WAFTPATH="$PWD/doc/waft"
+pushd libs/ardour
+sh "$WAFTPATH" --targets=libardour-tests && ./run-tests.sh
+popd
+%endif
+
+rm -f %{buildroot}%{_bindir}/run-tests
+
+%post
+/bin/touch --no-create %{_datadir}/icons/hicolor &> /dev/null || :
+/bin/touch --no-create %{_datadir}/mime/packages &> /dev/null || :
+/usr/bin/update-desktop-database &> /dev/null || :
+
+%postun
+/usr/bin/update-desktop-database &> /dev/null || :
+if [ $1 -eq 0 ] ; then
+    /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
+    /bin/touch --no-create %{_datadir}/mime/packages &>/dev/null
+    /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+    /usr/bin/update-mime-database %{?fedora:-n} %{_datadir}/mime &> /dev/null || :
+fi
+
+%posttrans
+/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+/usr/bin/update-mime-database %{?fedora:-n} %{_datadir}/mime &> /dev/null || :
+
+%files -f %{name}.lang -f gtk2_%{name}.lang -f gtkmm2ext3.lang -f %{name}-datafiles.list
+%doc COPYING LICENSING
+%{_bindir}/%{name}
+%config(noreplace) %{_sysconfdir}/%{name}
+%{_libdir}/%{name}
+%{_datadir}/icons/hicolor/*/apps/%{name}.png
+%{_datadir}/applications/%{name}.desktop
+%{_datadir}/mime/packages/%{name}.xml
+%{_mandir}/man1/%{name}.1*
+%{_mandir}/*/man1/%{name}.1*
+
+%changelog
+* Fri May 01 2015 Nils Philippsen <nils at redhat.com> - 4.0.0-1
+- don't install static library libsmf.a
+- symlink rather than hardlink application icons
+
+* Mon Apr 27 2015 Nils Philippsen <nils at redhat.com> - 4.0.0-0.2
+- build alsa, dummy backends
+
+* Thu Apr 23 2015 Nils Philippsen <nils at redhat.com> - 4.0.0-0.1
+- version 4.0.0
diff --git a/sources b/sources
index e69de29..075a31a 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+7a703a975f86e68992dd7be08739c114  Ardour-4.0.0.tar.bz2
-- 
cgit v0.10.2


	http://pkgs.fedoraproject.org/cgit/ardour4.git/commit/?h=f21&id=c2ce225bf2704177a89e5f9950f1a91c20f721fc


More information about the scm-commits mailing list