From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: [PATCH] gnu: Add audacity. Date: Tue, 03 Mar 2015 21:37:41 +0100 Message-ID: <87zj7trf56.fsf@gnu.org> References: <87mw46kdkq.fsf@taylan.uni.cx> <87sidrpcm3.fsf@gnu.org> <871tl6fcpy.fsf@taylan.uni.cx> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:55861) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YStZc-0003bN-W6 for guix-devel@gnu.org; Tue, 03 Mar 2015 15:37:50 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YStZY-00070J-Gh for guix-devel@gnu.org; Tue, 03 Mar 2015 15:37:48 -0500 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:58570) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YStZY-00070F-DN for guix-devel@gnu.org; Tue, 03 Mar 2015 15:37:44 -0500 In-Reply-To: <871tl6fcpy.fsf@taylan.uni.cx> ("Taylan Ulrich \=\?utf-8\?Q\?\=5C\=22Bay\=C4\=B1rl\=C4\=B1\=2FKammer\=5C\=22\=22's\?\= message of "Tue, 03 Mar 2015 14:10:49 +0100") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Taylan Ulrich =?utf-8?Q?=22Bay=C4=B1rl=C4=B1?= =?utf-8?Q?=2FKammer=22?= Cc: guix-devel@gnu.org taylanbayirli@gmail.com (Taylan Ulrich "Bay=C4=B1rl=C4=B1/Kammer") skribis: > ludo@gnu.org (Ludovic Court=C3=A8s) writes: > >>> - It tries to find libid3tag and libmad via pkg-config even though they >>> don't install .pc files. Perhaps we can generate them manually in the >>> install phase of those packages, or maybe they just don't get >>> installed due to a bug. Perhaps they just need 'pkg-config' as an >>> input? I might try that next. >> >> That would be surprising. Perhaps the Audacity developers were using a >> distro that adds .pc files for these two libs? > > Apparently Debian indeed adds .pc files. I added patches to them to do > the same. Sorry for not being clear: I think we should avoid diverging from upstream in this way, especially if there=E2=80=99s just one package that m= akes the incorrect assumption. So I would rather not add those .pc files. If Audacity uses Autoconf and pkg.m4, I guess you could just pass PKG_CONFIG=3Dtrue as a configure flag, or {LIBID3TAG,LIBMAD}_{CFLAGS,LIBS} and it will just work. >>> - Audacity apparently uses PortAudio version 19, but the in-tree one has >>> a function which the upstream one doesn't. It would be strange if >>> they had an API change without changing the version, so no idea what's >>> going on there. >> >> Could you try to find out what the story of this function is? It would >> be best to avoid using the bundled PortAudio. > > Apparently it's from a patch that has been waiting forever to be merged > into PortAudio and it's questionable whether it ever will. I applied it > to our PortAudio package. OK. (I=E2=80=99d normally recommend relying on upstream but in this case, if the choice is between not having Audacity and adding this patch, I think the latter makes more sense.) >>> - The test suite fails due to some missing portaudio.h file. I didn't >>> come far trying to figure out why this happens so I just disabled the >>> test suite. >> >> Perhaps that problem would magically vanish when using system=E2=80=99s >> PortAudio because headers would be in $CPATH. > > Indeed. Sadly the test suite seems to have other issues, and I've been > told it isn't "well exercised" so I disabled it for now. (FWIW it also > fails in the upcoming Audacity 2.1.0 which is now entering RC2 phase and > will be released soon.) OK. >> The rest of the patch looks good to me; just the PortAudio issue needs >> to be resolved. > > Updated patches below. > > Note also it's in audacity.scm now and not audio.scm, because it depends > on ffmpeg, which is in video.scm, which now imports audio.scm, so > audio.scm cannot import video.scm. It actually can, but it=E2=80=99s fine (and safer) the way you propose. :-) > We might want to just wait for 2.1.0 to be released by the way, since it > should be out in a couple days. The FFmpeg dynamic loading and test > suite issues aren't resolved, so the only difference will be the > version; feel free to review this patch as if it were for 2.1.0. Your call! > From 3853b807f69fbd4b0cfe8116cc0d934c941df6aa Mon Sep 17 00:00:00 2001 > From: =3D?UTF-8?q?Taylan=3D20Ulrich=3D20Bay=3DC4=3DB1rl=3DC4=3DB1/Kammer?= =3D > > Date: Sun, 1 Mar 2015 21:52:23 +0100 > Subject: [PATCH 1/3] gnu: mp3: Add .pc files to libmad and libid3tag. > > * gnu/packages/mp3.scm (libmad, libid3tag): Add .pc files to installation= s. > * gnu/packages/patches/libid3tag-add-pc-file.patch: New file. > * gnu/packages/patches/libmad-add-pc-file.patch: New file. > * gnu-system.am (dist_patch_DATA): Add them. Rather no. > From fe095e3aebcaaa9e88587610832db3f65f7ec015 Mon Sep 17 00:00:00 2001 > From: =3D?UTF-8?q?Taylan=3D20Ulrich=3D20Bay=3DC4=3DB1rl=3DC4=3DB1/Kammer?= =3D > > Date: Mon, 2 Mar 2015 01:06:35 +0100 > Subject: [PATCH 2/3] gnu: portaudio: Patch for Audacity compatibility. > > * gnu/packages/audio.scm (portaudio): Add a patch for Audacity compatibil= ity. > * gnu/packages/patches/portaudio-audacity-compat.patch: New file. > * gnu-system.am (dist_patch_DATA): Add it. [...] > +++ b/gnu/packages/patches/portaudio-audacity-compat.patch > @@ -0,0 +1,322 @@ > +Description: Add features needed to make portmixer work with audacity. > +Author: Audacity Team > +Last-Update: 2011-12-07 Could you add a link to PortAudio=E2=80=99s bug tracker or list? Other than that OK. > From b14e4eb8e276a2dd98c189c1edd18b7cc57dcb52 Mon Sep 17 00:00:00 2001 > From: =3D?UTF-8?q?Taylan=3D20Ulrich=3D20Bay=3DC4=3DB1rl=3DC4=3DB1/Kammer?= =3D > > Date: Fri, 20 Feb 2015 21:52:21 +0100 > Subject: [PATCH 3/3] gnu: Add audacity. > > * gnu/packages/audacity.scm: New file. > * gnu-system.am (GNU_SYSTEM_MODULES): Add it. > * gnu/packages/patches/audacity-fix-ffmpeg-binding.patch: New file. > * gnu-system.am (dist_patch_DATA): Add it. LGTM! Apologies for the extra work. Thank you! Ludo=E2=80=99.