ardour: clean up the expression

* Remove unneeded dependencies
* Stop vendoring other dependencies (fluidsynth, hidapi, libltc, qm-dsp)
* Fix using incorrect libusb version (libusb package is just a legacy compat layer)
* Move build-time dependencies to nativeBuildInputs
* Install freedesktop files & man page
* Drop libintl replacement that no longer applies
This commit is contained in:
Jan Tojnar 2020-04-06 14:00:54 +02:00
parent 1ff54d019f
commit 3f7515cb8c
No known key found for this signature in database
GPG Key ID: 7FAB2A15F7A607A4
2 changed files with 42 additions and 49 deletions

View File

@ -13,26 +13,24 @@
, graphviz
, gtkmm2
, libjack2
, libgnomecanvas
, libgnomecanvasmm
, liblo
, libmad
, libogg
, librdf_raptor
, librdf_rasqal
, libsamplerate
, libsigcxx
, libsndfile
, libusb
, libuuid
, libusb1
, fluidsynth_1
, hidapi
, libltc
, qm-dsp
, libxml2
, libxslt
, lilv
, lrdf
, lv2
, makeWrapper
, perl
, pkgconfig
, pkg-config
, itstool
, python2
, rubberband
, serd
@ -68,6 +66,13 @@ in stdenv.mkDerivation rec {
nativeBuildInputs = [
wafHook
makeWrapper
pkg-config
itstool
doxygen
graphviz # for dot
perl
python2
];
buildInputs = [
@ -76,37 +81,28 @@ in stdenv.mkDerivation rec {
boost
cairomm
curl
doxygen
dbus
fftw
fftwSinglePrec
flac
glibmm
graphviz
gtkmm2
libjack2
libgnomecanvas
libgnomecanvasmm
liblo
libmad
libogg
librdf_raptor
librdf_rasqal
libsamplerate
libsigcxx
libsndfile
libusb
libuuid
libusb1
fluidsynth_1
hidapi
libltc
qm-dsp
libxml2
libxslt
lilv
lrdf
lv2
makeWrapper
pango
perl
pkgconfig
python2
rubberband
serd
sord
@ -117,36 +113,35 @@ in stdenv.mkDerivation rec {
libarchive
];
# ardour's wscript has a "tarball" target but that required the git revision
# be available. Since this is an unzipped tarball fetched from github we
# have to do that ourself.
patchPhase = ''
printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${tag}-${builtins.substring 0 8 src.rev}\"; }\n' > libs/ardour/revision.cc
sed 's|/usr/include/libintl.h|${glibc.dev}/include/libintl.h|' -i wscript
patchShebangs ./tools/
'';
wafConfigureFlags = [
"--optimize"
"--docs"
"--use-external-libs"
"--freedesktop"
"--with-backends=jack,alsa,dummy"
];
NIX_CFLAGS_COMPILE = "-I${qm-dsp}/include/qm-dsp";
# ardour's wscript has a "tarball" target but that required the git revision
# be available. Since this is an unzipped tarball fetched from github we
# have to do that ourself.
postPatch = ''
printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${tag}-${builtins.substring 0 8 src.rev}\"; }\n' > libs/ardour/revision.cc
patchShebangs ./tools/
'';
postInstall = ''
# Install desktop file
mkdir -p "$out/share/applications"
cat > "$out/share/applications/ardour.desktop" << EOF
[Desktop Entry]
Name=Ardour 5
GenericName=Digital Audio Workstation
Comment=Multitrack harddisk recorder
Exec=$out/bin/ardour5
Icon=$out/share/ardour5/resources/Ardour-icon_256px.png
Terminal=false
Type=Application
X-MultipleArgs=false
Categories=GTK;Audio;AudioVideoEditing;AudioVideo;Video;
EOF
# wscript does not install these for some reason
install -vDm 644 "build/gtk2_ardour/ardour.xml" \
-t "$out/share/mime/packages"
install -vDm 644 "build/gtk2_ardour/ardour5.desktop" \
-t "$out/share/applications"
for size in 16 22 32 48 256 512; do
install -vDm 644 "gtk2_ardour/resources/Ardour-icon_''${size}px.png" \
"$out/share/icons/hicolor/''${size}x''${size}/apps/ardour5.png"
done
install -vDm 644 "ardour.1"* -t "$out/share/man/man1"
'';
meta = with stdenv.lib; {

View File

@ -18405,9 +18405,7 @@ in
aqemu = libsForQt5.callPackage ../applications/virtualization/aqemu { };
ardour = callPackage ../applications/audio/ardour {
inherit (gnome2) libgnomecanvas libgnomecanvasmm;
};
ardour = callPackage ../applications/audio/ardour { };
arelle = with python3Packages; toPythonApplication arelle;