From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: Re: [PATCH] gnu: Add exempi and eog. Date: Wed, 15 Jul 2015 12:15:49 -0400 Message-ID: <87d1zttn0q.fsf@netris.org> References: 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]:39463) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZFPLo-0004bF-0X for guix-devel@gnu.org; Wed, 15 Jul 2015 12:16:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZFPLl-00075M-4H for guix-devel@gnu.org; Wed, 15 Jul 2015 12:16:03 -0400 Received: from world.peace.net ([50.252.239.5]:45190) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZFPLl-00075E-1i for guix-devel@gnu.org; Wed, 15 Jul 2015 12:16:01 -0400 In-Reply-To: (David Hashe's message of "Wed, 15 Jul 2015 01:36:44 -0500") 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: David Hashe Cc: guix-devel@gnu.org David Hashe writes: > The attached patches add Eye of GNOME and one of its dependencies, > exempi. The Eye of GNOME (eog) patch depends on the exempi patch. I agree with the comments by Ricardo and =E5=AE=8B=E6=96=87=E6=AD=A6, and h= ave a few additional comments: > From cf0f69390f00852b9971e88e5e817ca540264d88 Mon Sep 17 00:00:00 2001 > From: David Hashe > Date: Wed, 15 Jul 2015 01:02:02 -0500 > Subject: [PATCH] gnu: Add exempi. > > * gnu/packages/freedesktop.scm (exempi): New variable. > --- > gnu/packages/freedesktop.scm | 45 ++++++++++++++++++++++++++++++++++++++= ++++++ > 1 file changed, 45 insertions(+) > > diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm > index eeb97cd..93a4470 100644 > --- a/gnu/packages/freedesktop.scm > +++ b/gnu/packages/freedesktop.scm > @@ -4,6 +4,7 @@ > ;;; Copyright =C2=A9 2015 Andy Wingo > ;;; Copyright =C2=A9 2015 Ludovic Court=C3=A8s > ;;; Copyright =C2=A9 2015 Ricardo Wurmus > +;;; Copyright =C2=A9 2015 David Hashe > ;;; > ;;; This file is part of GNU Guix. > ;;; > @@ -40,6 +41,7 @@ > #:use-module (gnu packages xdisorg) > #:use-module (gnu packages xorg) > #:use-module (gnu packages doxygen) > + #:use-module (gnu packages compression) > #:use-module (gnu packages libffi)) >=20=20 > (define-public xdg-utils > @@ -232,3 +234,46 @@ display server running on Linux kernel modesetting a= nd evdev input devices, an X > application, or a wayland client itself. The clients can be traditional > applications, X servers (rootless or fullscreen) or other display server= s.") > (license license:x11))) > + > +(define-public exempi > + (package > + (name "exempi") > + (version (string-append "2.2.2")) > + (source (origin > + (method git-fetch) > + (uri (git-reference > + (url "http://anongit.freedesktop.org/git/exempi.git= ") > + (commit version))) > + (sha256 > + (base32 > + "1z25wij89fn86bm38d9ahhzfq8a2sgxaphdc4lrpyq87dgb766q9")) > + (file-name (string-append name "-" version)))) If we had used the git checkout, the file-name should end with "-checkout", but we should use the release tarball instead. > + (build-system gnu-build-system) > + (arguments > + ;; FIXME: tests depend on boost, but unable to find headers when > + ;; used as an input > + `(#:configure-flags '("--disable-unittest") > + #:phases (alist-cons-after > + 'unpack 'fix-autogen > + (lambda _ > + (substitute* "autogen.sh" > + ;; autogen.sh tries to run configure before we > + ;; are able to patch it > + (("^.*topsrcdir/configure.*$") ""))) > + (alist-cons-before > + 'configure 'autogen > + (lambda _ > + (zero? (system* "./autogen.sh"))) > + %standard-phases)))) Autogen/autoreconf/bootstrap phases should always go after 'unpack' (or in this case, after 'fix-autogen'), *not* before 'configure'. The reason is that there are some other phases (patch-usr-bin-file and patch-source-shebangs) which should have access to the generated files. For example, letting 'patch-usr-bin-file' patch the generated 'configure' is important on some platforms. However, this is moot because you should use the release tarball. Can you send updated patches? Thanks, Mark