gnu: dbus: Replace with 1.10.12 [security fix].
[jackhill/guix/guix.git] / gnu / packages / autotools.scm
index eb33009..72492e7 100644 (file)
@@ -1,7 +1,10 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
-;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
 ;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
+;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2016 David Thompson <davet@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -94,7 +97,6 @@ use our own Bash instead of /bin/sh in shebangs.  For that reason, it should
 only be used internally---users should not end up distributing `configure'
 files with a system-specific shebang."
   (package (inherit autoconf)
-    (location (source-properties->location (current-source-location)))
     (name (string-append (package-name autoconf) "-wrapper"))
     (build-system trivial-build-system)
     (inputs `(("guile"
@@ -158,6 +160,51 @@ exec ~a --no-auto-compile \"$0\" \"$@\"
                 port)))
            (chmod (string-append bin "/autoconf") #o555)))))))
 
+(define-public autoconf-archive
+  (package
+    (name "autoconf-archive")
+    (version "2016.09.16")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "mirror://gnu/autoconf-archive/autoconf-archive-"
+                          version ".tar.xz"))
+      (sha256
+       (base32
+        "10mxz9hfnfz66m1l9s28sbyfb9a04akz92wkyv9blhpq6p9fzwp8"))))
+    (build-system gnu-build-system)
+    (home-page "https://www.gnu.org/software/autoconf-archive")
+    (synopsis "Collection of freely reusable Autoconf macros")
+    (description
+     "Autoconf Archive is a collection of over 450 new macros for Autoconf,
+greatly expanding the domain of its functionality.  These macros have been
+contributed as free software by the community.")
+    (license gpl3+)))
+
+(define-public autobuild
+  (package
+    (name "autobuild")
+    (version "5.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://savannah/autobuild/autobuild-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "0gv7g61ja9q9zg1m30k4snqwwy1kq7b4df6sb7d2qra7kbdq8af1"))))
+    (build-system gnu-build-system)
+    (inputs `(("perl" ,perl)))
+    (synopsis "Process generated build logs")
+    (description "Autobuild is a package that processes build logs generated
+when building software.  Autobuild is primarily focused on packages using
+Autoconf and Automake, but can be used with other build systems too.
+Autobuild generates an HTML summary file, containing links to each build log.
+The summary includes project name, version, build hostname, host type (cross
+compile aware), date of build, and indication of success or failure.  The
+output is indexed in many ways to simplify browsing.")
+    (home-page "http://josefsson.org/autobuild/")
+    (license gpl3+)))
+
 (define-public automake
   (package
     (name "automake")
@@ -170,7 +217,9 @@ exec ~a --no-auto-compile \"$0\" \"$@\"
               (base32
                "0dl6vfi2lzz8alnklwxzfz624b95hb1ipjvd3mk177flmddcf24r"))
              (patches
-              (list (search-patch "automake-skip-amhello-tests.patch")))))
+              (search-patches "automake-regexp-syntax.patch"
+                              "automake-skip-amhello-tests.patch"
+                              "automake-test-gzip-warning.patch"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("autoconf" ,(autoconf-wrapper))
@@ -238,45 +287,47 @@ Makefile, simplifying the entire process for the developer.")
 (define-public libtool
   (package
     (name "libtool")
-    (version "2.4.2")
+    (version "2.4.6")
     (source (origin
-             (method url-fetch)
-             (uri (string-append "mirror://gnu/libtool/libtool-"
-                                 version ".tar.gz"))
-             (sha256
-              (base32
-               "0649qfpzkswgcj9vqkkr9rn4nlcx80faxpyqscy2k1x9c94f93dk"))
-             (patches
-              (list (search-patch "libtool-skip-tests.patch")
-                    (search-patch "libtool-skip-tests-for-mips.patch")))))
+              (method url-fetch)
+              (uri (string-append "mirror://gnu/libtool/libtool-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "0vxj52zm709125gwv9qqlw02silj8bnjnh4y07arrz60r31ai1vw"))
+              (patches (search-patches "libtool-skip-tests2.patch"))))
     (build-system gnu-build-system)
+    (propagated-inputs `(("m4" ,m4)))
     (native-inputs `(("m4" ,m4)
-                     ("perl" ,perl)))
-
-    ;; Separate binaries from the rest.  During bootstrap, only ltdl is
-    ;; used; not depending on the binaries allows us to avoid retaining
-    ;; a reference to the bootstrap bash.
-    (outputs '("bin"                         ; libtoolize, libtool, etc.
-               "out"))                       ; libltdl.so, ltdl.h, etc.
+                     ("perl" ,perl)
+                     ("automake" ,automake)      ;some tests rely on 'aclocal'
+                     ("autoconf" ,(autoconf-wrapper)))) ;others on 'autom4te'
 
     (arguments
-     (if (%current-target-system)
-         '()                            ; no `check' phase when cross-building
-         '(#:phases (alist-cons-before
-                     'check 'pre-check
-                     (lambda* (#:key inputs #:allow-other-keys)
-                       ;; Run the test suite in parallel, if possible.
-                       (setenv "TESTSUITEFLAGS"
-                               (string-append
-                                "-j"
-                                (number->string (parallel-job-count))))
+     `(;; Libltdl is provided as a separate package, so don't install it here.
+       #:configure-flags '("--disable-ltdl-install")
+
+       ;; XXX: There are test failures on mips64el-linux starting from 2.4.4:
+       ;; <http://hydra.gnu.org/build/181662>.
+       #:tests? ,(not (string-prefix? "mips64"
+                                      (or (%current-target-system)
+                                          (%current-system))))
+
+       #:phases (alist-cons-before
+                 'check 'pre-check
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   ;; Run the test suite in parallel, if possible.
+                   (setenv "TESTSUITEFLAGS"
+                           (string-append
+                            "-j"
+                            (number->string (parallel-job-count))))
 
-                       ;; Path references to /bin/sh.
-                       (let ((bash (assoc-ref inputs "bash")))
-                         (substitute* "tests/testsuite"
-                           (("/bin/sh")
-                            (string-append bash "/bin/bash")))))
-                     %standard-phases))))
+                   ;; Path references to /bin/sh.
+                   (let ((bash (assoc-ref inputs "bash")))
+                     (substitute* "tests/testsuite"
+                       (("/bin/sh")
+                        (string-append bash "/bin/bash")))))
+                 %standard-phases)))
     (synopsis "Generic shared library support tools")
     (description
      "GNU Libtool helps in the creation and use of shared libraries, by
@@ -285,32 +336,6 @@ complexity of working with shared libraries across platforms.")
     (license gpl3+)
     (home-page "http://www.gnu.org/software/libtool/")))
 
-(define-public libtool-2.4.4
-  (package (inherit libtool)
-    (version "2.4.4")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "mirror://gnu/libtool/libtool-"
-                                  version ".tar.xz"))
-              (sha256
-               (base32
-                "0v3zq08qxv7k5067mpqrkjkjl3wphhg06i696mka90mzadc5nad8"))
-              (patches
-               (list (search-patch "libtool-2.4-skip-tests.patch")))))
-
-    (native-inputs `(("automake" ,automake)      ;some tests rely on 'aclocal'
-                     ("autoconf" ,(autoconf-wrapper)) ;others on 'autom4te'
-                     ,@(package-native-inputs libtool)))
-
-    (arguments
-     ;; XXX: There are test failures on mips64el-linux starting from 2.4.4:
-     ;; <http://hydra.gnu.org/build/181662>.
-     (if (string-prefix? "mips64el"
-                         (or (%current-target-system) (%current-system)))
-         `(#:tests? #f
-           ,@(package-arguments libtool))
-         (package-arguments libtool)))))
-
 (define-public libltdl
   ;; This is a libltdl package separate from the libtool package.  This is
   ;; useful because, unlike libtool, it has zero extra dependencies (making it
@@ -318,8 +343,14 @@ complexity of working with shared libraries across platforms.")
   ;; Libtool's extensive test suite isn't run.
   (package
     (name "libltdl")
-    (version (package-version libtool))
-    (source (package-source libtool))
+    (version "2.4.6")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnu/libtool/libtool-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "0vxj52zm709125gwv9qqlw02silj8bnjnh4y07arrz60r31ai1vw"))))
     (build-system gnu-build-system)
     (arguments
      '(#:configure-flags '("--enable-ltdl-install") ;really install it