On Thu, Aug 29, 2013 at 10:16:37PM +0200, Cyril Roelandt wrote:
> So, I've just tried to make git work. The attached patch allows me
> to build Git on my x86 machine, but the build fails on my x86-64
> machine. Any idea ?

For me, everything works on x86_64 and with --system=i686-linux.

The tests fail, but a few simple operations (stash, diff, pull) on the
guix tree work. Shall I push the attached patch despite the test failures?

Andreas

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 5059dcd..4b0d331 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2013 Nikita Karetnikov <[email protected]>
 ;;; Copyright © 2013 Cyril Roelandt <[email protected]>
 ;;; Copyright © 2013 Ludovic Courtès <[email protected]>
+;;; Copyright © 2013 Andreas Enge <[email protected]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -19,7 +20,7 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu packages version-control)
-  #:use-module ((guix licenses) #:select (asl2.0 gpl1+ gpl2+ gpl3+))
+  #:use-module ((guix licenses) #:select (asl2.0 gpl1+ gpl2 gpl2+ gpl3+))
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
@@ -28,11 +29,14 @@
   #:use-module ((gnu packages gettext)
                 #:renamer (symbol-prefix-proc 'guix:))
   #:use-module (gnu packages apr)
+  #:use-module (gnu packages curl)
   #:use-module (gnu packages nano)
+  #:use-module (gnu packages openssl)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages python)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages system)
+  #:use-module (gnu packages xml)
   #:use-module (gnu packages emacs)
   #:use-module (gnu packages compression))
 
@@ -64,6 +68,48 @@ organize their workspace in whichever way they want.  It is possible to work
 from a command line or use a GUI application.")
     (license gpl2+)))
 
+(define-public git
+  (package
+   (name "git")
+   (version "1.8.4")
+   (source (origin
+            (method url-fetch)
+            (uri (string-append "http://git-core.googlecode.com/files/git-";
+                                version ".tar.gz"))
+            (sha256
+             (base32
+              "156bwqqgaw65rsvbb4wih5jfg94bxyf6p16mdwf0ky3f4ln55s2i"))))
+   (build-system gnu-build-system)
+   (inputs
+    `(("curl" ,curl)
+      ("expat" ,expat)
+      ("gettext" ,guix:gettext)
+      ("openssl" ,openssl)
+      ("perl" ,perl)
+      ("python" ,python-2) ; incompatible with python-3 according to INSTALL
+      ("zlib" ,zlib)))
+   (arguments
+    `(#:make-flags `("V=1") ; more verbose compilation
+      #:test-target "test"
+      #:tests? #f ; FIXME: Many tests are failing
+      #:phases
+       (alist-replace
+        'configure
+        (lambda* (#:key #:allow-other-keys #:rest args)
+          (let ((configure (assoc-ref %standard-phases 'configure)))
+          (apply configure args)
+          (substitute* "Makefile"
+            (("/bin/sh") (which "sh"))
+            (("/usr/bin/perl") (which "perl"))
+            (("/usr/bin/python") (which "python")))))
+         %standard-phases)))
+   (synopsis "distributed version control system")
+   (description
+    "Git is a free distributed version control system designed to handle
+everything from small to very large projects with speed and efficiency.")
+   (license gpl2)
+   (home-page "http://git-scm.com/";)))
+
 (define-public subversion
   (package
     (name "subversion")

Reply via email to