gnu: Use 'modify-phases' syntax.

* gnu/packages/admin.scm (mingetty, clusterssh, wpa-supplicant-minimal,
wpa-supplicant, wakelan, acpica, tree, direvent, dstat)[arguments]: Use
'modify-phases' syntax.
* gnu/packages/algebra.scm (arb)[arguments]: Likewise.
* gnu/packages/apr.scm (apr-util)[arguments]: Likewise.
* gnu/packages/audio.scm (clalsadrv, fluidsynth, faad2, lv2-mda-piano,
lv2-mda-epiano, timidity++, vamp, soundtouch, portaudio, rsound,
zita-convolver, zita-alsa-pcmi)[arguments]: Likewise.
* gnu/packages/backup.scm (rdup, btar)[arguments]: Likewise.
* gnu/packages/bioinformatics.scm (bedops, bwa, crossmap, express,
flexbar, grit, hisat, ngs-sdk, subread)[arguments]: Likewise.
* gnu/packages/bittorrent.scm (transmission)[arguments]: Likewise.
* gnu/packages/cdrom.scm (cd-discid)[arguments]: Likewise.
* gnu/packages/compression.scm (sharutils)[arguments]: Likewise.
* gnu/packages/conky.scm (conky)[arguments]: Likewise.
* gnu/packages/databases.scm (bdb, bdb-5.3)[arguments]: Likewise.
* gnu/packages/debug.scm (delta, c-reduce)[arguments]: Likewise.
* gnu/packages/display-managers.scm (slim)[arguments]: Likewise.
* gnu/packages/dns.scm (dnsmasq)[arguments]: Likewise.
* gnu/packages/emacs.scm (geiser, emacs-wget, bbdb)[arguments]: Likewise.
* gnu/packages/engineering.scm (pcb)[arguments]: Likewise.
* gnu/packages/firmware.scm (ath9k-htc-firmware)[arguments]: Likewise.
* gnu/packages/flashing-tools.scm (flashrom)[arguments]: Likewise.
* gnu/packages/fltk.scm (fltk)[arguments]: Likewise.
* gnu/packages/freedesktop.scm (python-pyxdg)[arguments]: Likewise.
* gnu/packages/gd.scm (perl-gd)[arguments]: Likewise.
* gnu/packages/gkrellm.scm (gkrellm)[arguments]: Likewise.
* gnu/packages/glib.scm (glibmm)[arguments]: Likewise.
* gnu/packages/gl.scm (glew)[arguments]: Likewise.
* gnu/packages/gnome.scm (icon-naming-utils, orbit2, libbonobo, gnome-vfs,
libgnome, libbonoboui, goffice-0.8, dconf)[arguments]: Likewise.
* gnu/packages/gprolog.scm (gprolog)[arguments]: Likewise.
* gnu/packages/gps.scm (gpscorrelate)[arguments]: Likewise.
* gnu/packages/graphics.scm (agg)[arguments]: Likewise.
* gnu/packages/gtk.scm (ganv, girara, gtksourceview-2, guile-present,
python2-pycairo)[arguments]: Likewise.
* gnu/packages/guile.scm (guile-1.8)[arguments]: Likewise.
* gnu/packages/guile-wm.scm (guile-wm)[arguments]: Likewise.
* gnu/packages/hugs.scm (hugs)[arguments]: Likewise.
* gnu/packages/hurd.scm (gnumach-headers, hurd-headers, hurd-minimal)
[arguments]: Likewise.
* gnu/packages/image-viewers.scm (feh, sxiv)[arguments]: Likewise.
* gnu/packages/libcanberra.scm (libcanberra)[arguments]: Likewise.
* gnu/packages/linux.scm (bridge-utils, iw, fuse, unionfs-fuse/static,
lm-sensors, i2c-tools, xsensors, perf, mdadm, libaio, module-init-tools)
[arguments]: Likewise.
* gnu/packages/lisp.scm (ccl)[arguments]: Likewise.
* gnu/packages/lout.scm (lout)[arguments]: Likewise.
* gnu/packages/lua.scm (luajit)[arguments]: Likewise.
* gnu/packages/machine-learning.scm (shogun)[arguments]: Likewise.
* gnu/packages/mail.scm (exim)[arguments]: Likewise.
* gnu/packages/man.scm (man-pages, txt2man)[arguments]: Likewise.
* gnu/packages/maths.scm (lapack, superlu-dist, openlibm, openspecfun)
[arguments]: Likewise.
* gnu/packages/messaging.scm (bitlbee)[arguments]: Likewise.
* gnu/packages/mp3.scm (libmad, id3lib, mp3info)[arguments]: Likewise.
* gnu/packages/music.scm (solfege)[arguments]: Likewise.
* gnu/packages/noweb.scm (noweb)[arguments]: Likewise.
* gnu/packages/patchutils.scm (patchutils, quilt, colordiff)[arguments]:
Likewise.
* gnu/packages/pdf.scm (xpdf, zathura-cb, zathura-ps, zathura-djvu,
zathura-pdf-poppler, zathura, podofo, fbida)[arguments]: Likewise.
* gnu/packages/perl.scm (perl-file-list, perl-test-harness)[arguments]:
Likewise.
* gnu/packages/photo.scm (gphoto2)[arguments]: Likewise.
* gnu/packages/popt.scm (popt)[arguments]: Likewise.
* gnu/packages/pretty-print.scm (source-highlight, astyle)[arguments]:
Likewise.
* gnu/packages/pumpio.scm (pumpa)[arguments]: Likewise.
* gnu/packages/python.scm (python-passlib, python-pycrypto, python2-empy,
python-sqlalchemy, python-docopt)[arguments]: Likewise.
* gnu/packages/rdf.scm (lrdf)[arguments]: Likewise.
* gnu/packages/regex.scm (tre)[arguments]: Likewise.
* gnu/packages/rrdtool.scm (rrdtool)[arguments]: Likewise.
* gnu/packages/ruby.scm (ruby-2.1, ruby-1.8)[arguments]: Likewise.
* gnu/packages/sawfish.scm (sawfish)[arguments]: Likewise.
* gnu/packages/scheme.scm (racket)[arguments]: Likewise.
* gnu/packages/sdl.scm (guile-sdl)[arguments]: Likewise.
* gnu/packages/serveez.scm (serveez)[arguments]: Likewise.
* gnu/packages/skribilo.scm (skribilo)[arguments]: Likewise.
* gnu/packages/smalltalk.scm (smalltalk)[arguments]: Likewise.
* gnu/packages/suckless.scm (dmenu, slock)[arguments]: Likewise.
* gnu/packages/tcl.scm (expect)[arguments]: Likewise.
* gnu/packages/telephony.scm (commoncpp)[arguments]: Likewise.
* gnu/packages/textutils.scm (recode, libgtextutils)[arguments]:
Likewise.
* gnu/packages/time.scm (time)[arguments]: Likewise.
* gnu/packages/tor.scm (privoxy)[arguments]: Likewise.
* gnu/packages/uucp.scm (uucp)[arguments]: Likewise.
* gnu/packages/video.scm (libdvdnav-4)[arguments]: Likewise.
* gnu/packages/web-browsers.scm (lynx)[arguments]: Likewise.
* gnu/packages/web.scm (tinyproxy)[arguments]: Likewise.
* gnu/packages/wicd.scm (wicd)[arguments]: Likewise.
* gnu/packages/wm.scm (bspwm)[arguments]: Likewise.
* gnu/packages/xdisorg.scm (sxhkd, xcape)[arguments]: Likewise.
* gnu/packages/xfce.scm (xfconf)[arguments]: Likewise.
* gnu/packages/xfig.scm (transfig)[arguments]: Likewise.
* gnu/packages/xorg.scm (imake)[arguments]: Likewise.
This commit is contained in:
Kei Kebreau 2017-07-29 11:28:42 -04:00 committed by Kei Kebreau
parent a9bd50e352
commit dc1d3cdef7
No known key found for this signature in database
GPG Key ID: E6A5EE3C19467A0D
81 changed files with 2098 additions and 2124 deletions

View File

@ -361,32 +361,31 @@ login, passwd, su, groupadd, and useradd.")
"05yxrp44ky2kg6qknk1ih0kvwkgbn9fbz77r3vci7agslh5wjm8g")))) "05yxrp44ky2kg6qknk1ih0kvwkgbn9fbz77r3vci7agslh5wjm8g"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases (alist-replace 'configure `(#:phases
(lambda* (#:key inputs outputs (modify-phases %standard-phases
#:allow-other-keys) (replace 'configure
(let* ((out (assoc-ref outputs "out")) (lambda* (#:key inputs outputs #:allow-other-keys)
(man8 (string-append (let* ((out (assoc-ref outputs "out"))
out "/share/man/man8")) (man8 (string-append out "/share/man/man8"))
(sbin (string-append out "/sbin")) (sbin (string-append out "/sbin"))
(shadow (assoc-ref inputs "shadow")) (shadow (assoc-ref inputs "shadow"))
(login (string-append shadow (login (string-append shadow "/bin/login")))
"/bin/login"))) (substitute* "Makefile"
(substitute* "Makefile" (("^SBINDIR.*")
(("^SBINDIR.*") (string-append "SBINDIR = " out
(string-append "SBINDIR = " out "/sbin\n"))
"/sbin\n")) (("^MANDIR.*")
(("^MANDIR.*") (string-append "MANDIR = " out
(string-append "MANDIR = " out "/share/man/man8\n")))
"/share/man/man8\n")))
;; Pick the right 'login' by default. ;; Pick the right 'login' by default.
(substitute* "mingetty.c" (substitute* "mingetty.c"
(("\"/bin/login\"") (("\"/bin/login\"")
(string-append "\"" login "\""))) (string-append "\"" login "\"")))
(mkdir-p sbin) (mkdir-p sbin)
(mkdir-p man8))) (mkdir-p man8))
%standard-phases) #t)))
#:tests? #f)) ; no tests #:tests? #f)) ; no tests
(inputs `(("shadow" ,shadow))) (inputs `(("shadow" ,shadow)))
@ -725,25 +724,25 @@ by bandwidth they use.")
("perl-x11-protocol" ,perl-x11-protocol))) ("perl-x11-protocol" ,perl-x11-protocol)))
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-after (modify-phases %standard-phases
'install 'set-load-paths (add-after 'install 'set-load-paths
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
;; Put the perl-tk and perl-x11-protocol modules in the perl inc ;; Put the perl-tk and perl-x11-protocol modules in the perl inc
;; path for PROG ;; path for PROG
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
(prog (string-append out "/bin/cssh")) (prog (string-append out "/bin/cssh"))
(perl-ver ,(package-version perl)) (perl-ver ,(package-version perl))
(x11-inc (string-append (x11-inc (string-append
(assoc-ref inputs "perl-x11-protocol") (assoc-ref inputs "perl-x11-protocol")
"/lib/perl5/site_perl/" perl-ver)) "/lib/perl5/site_perl/" perl-ver))
(tk-inc (string-append (tk-inc (string-append
(assoc-ref inputs "perl-tk") (assoc-ref inputs "perl-tk")
"/lib/perl5/site_perl/" perl-ver "/lib/perl5/site_perl/" perl-ver
"/x86_64-linux"))) "/x86_64-linux")))
(wrap-program (wrap-program
prog prog
`("PERL5LIB" ":" prefix (,x11-inc ,tk-inc))))) `("PERL5LIB" ":" prefix (,x11-inc ,tk-inc))))
%standard-phases))) #t)))))
;; The clusterssh.sourceforge.net address requires login to view ;; The clusterssh.sourceforge.net address requires login to view
(home-page "https://sourceforge.net/projects/clusterssh/") (home-page "https://sourceforge.net/projects/clusterssh/")
(synopsis "Secure concurrent multi-server terminal control") (synopsis "Secure concurrent multi-server terminal control")
@ -908,13 +907,14 @@ commands and their arguments.")
"0l0l5gz3d5j9bqjsbjlfcv4w4jwndllp9fmyai4x9kg6qhs6v4xl")))) "0l0l5gz3d5j9bqjsbjlfcv4w4jwndllp9fmyai4x9kg6qhs6v4xl"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-replace '(#:phases
'configure (modify-phases %standard-phases
(lambda* (#:key outputs #:allow-other-keys) (replace 'configure
(chdir "wpa_supplicant") (lambda* (#:key outputs #:allow-other-keys)
(copy-file "defconfig" ".config") (chdir "wpa_supplicant")
(let ((port (open-file ".config" "al"))) (copy-file "defconfig" ".config")
(display " (let ((port (open-file ".config" "al")))
(display "
CONFIG_DEBUG_SYSLOG=y CONFIG_DEBUG_SYSLOG=y
# Choose GnuTLS (the default is OpenSSL.) # Choose GnuTLS (the default is OpenSSL.)
@ -924,26 +924,23 @@ commands and their arguments.")
CFLAGS += $(shell pkg-config libnl-3.0 --cflags) CFLAGS += $(shell pkg-config libnl-3.0 --cflags)
CONFIG_LIBNL32=y CONFIG_LIBNL32=y
CONFIG_READLINE=y\n" port) CONFIG_READLINE=y\n" port)
(close-port port))) (close-port port))))
(add-after 'install 'install-man-pages
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(man (string-append out "/share/man"))
(man5 (string-append man "/man5"))
(man8 (string-append man "/man8")))
(define (copy-man-page target)
(lambda (file)
(install-file file target)))
(alist-cons-after (mkdir-p man5) (mkdir man8)
'install 'install-man-pages (for-each (copy-man-page man5)
(lambda* (#:key outputs #:allow-other-keys) (find-files "doc/docbook" "\\.5"))
(let* ((out (assoc-ref outputs "out")) (for-each (copy-man-page man8)
(man (string-append out "/share/man")) (find-files "doc/docbook" "\\.8"))
(man5 (string-append man "/man5")) #t))))
(man8 (string-append man "/man8")))
(define (copy-man-page target)
(lambda (file)
(install-file file target)))
(mkdir-p man5) (mkdir man8)
(for-each (copy-man-page man5)
(find-files "doc/docbook" "\\.5"))
(for-each (copy-man-page man8)
(find-files "doc/docbook" "\\.8"))
#t))
%standard-phases))
#:make-flags (list "CC=gcc" #:make-flags (list "CC=gcc"
(string-append "BINDIR=" (assoc-ref %outputs "out") (string-append "BINDIR=" (assoc-ref %outputs "out")
@ -980,25 +977,24 @@ This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.")
(arguments (arguments
(substitute-keyword-arguments (package-arguments wpa-supplicant-minimal) (substitute-keyword-arguments (package-arguments wpa-supplicant-minimal)
((#:phases phases) ((#:phases phases)
`(alist-cons-after `(modify-phases ,phases
'configure 'configure-for-dbus (add-after 'configure 'configure-for-dbus
(lambda _ (lambda _
(let ((port (open-file ".config" "al"))) (let ((port (open-file ".config" "al")))
(display " (display "
CONFIG_CTRL_IFACE_DBUS=y CONFIG_CTRL_IFACE_DBUS=y
CONFIG_CTRL_IFACE_DBUS_NEW=y CONFIG_CTRL_IFACE_DBUS_NEW=y
CONFIG_CTRL_IFACE_DBUS_INTRO=y\n" port) CONFIG_CTRL_IFACE_DBUS_INTRO=y\n" port)
(close-port port)) (close-port port))
#t) #t))
(alist-cons-after (add-after 'install-man-pages 'install-dbus-conf
'install-man-pages 'install-dbus-conf (lambda* (#:key outputs #:allow-other-keys)
(lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out"))
(let* ((out (assoc-ref outputs "out")) (dir (string-append out "/etc/dbus-1/system.d")))
(dir (string-append out "/etc/dbus-1/system.d"))) (mkdir-p dir)
(mkdir-p dir) (copy-file "dbus/dbus-wpa_supplicant.conf"
(copy-file "dbus/dbus-wpa_supplicant.conf" (string-append dir "/wpa_supplicant.conf")))
(string-append dir "/wpa_supplicant.conf")))) #t))))))))
,phases)))))))
(define-public wakelan (define-public wakelan
(package (package
@ -1014,22 +1010,22 @@ This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.")
"0vydqpf44146ir6k87gmqaq6xy66xhc1gkr3nsd7jj3nhy7ypx9x")))) "0vydqpf44146ir6k87gmqaq6xy66xhc1gkr3nsd7jj3nhy7ypx9x"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-replace '(#:phases
'configure (modify-phases %standard-phases
(lambda* (#:key outputs #:allow-other-keys) (replace 'configure
(let ((out (assoc-ref outputs "out"))) (lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append out "/bin")) (let ((out (assoc-ref outputs "out")))
(mkdir-p (string-append out "/share/man/man1")) (mkdir-p (string-append out "/bin"))
(mkdir-p (string-append out "/share/man/man1"))
;; It's an old configure script that doesn't understand ;; It's an old configure script that doesn't understand
;; the extra options we pass. ;; the extra options we pass.
(setenv "CONFIG_SHELL" (which "bash")) (setenv "CONFIG_SHELL" (which "bash"))
(zero? (zero?
(system* "./configure" (system* "./configure"
(string-append "--prefix=" out) (string-append "--prefix=" out)
(string-append "--mandir=" out (string-append "--mandir=" out
"/share/man"))))) "/share/man")))))))
%standard-phases)
#:tests? #f)) #:tests? #f))
(home-page "http://kernel.org") ; really, no home page (home-page "http://kernel.org") ; really, no home page
(synopsis "Send a wake-on-LAN packet") (synopsis "Send a wake-on-LAN packet")
@ -1088,7 +1084,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
"HOST=_LINUX" "HOST=_LINUX"
"OPT_CFLAGS=-Wall -fno-strict-aliasing") "OPT_CFLAGS=-Wall -fno-strict-aliasing")
#:tests? #f ; no 'check' target. #:tests? #f ; no 'check' target.
#:phases (alist-delete 'configure %standard-phases))) #:phases (modify-phases %standard-phases (delete 'configure))))
(home-page "http://acpica.org/") (home-page "http://acpica.org/")
(synopsis "Tools for the development and debug of ACPI tables") (synopsis "Tools for the development and debug of ACPI tables")
(description (description
@ -1198,7 +1194,7 @@ recover lost partitions and/or make non-booting disks bootable again.")
(base32 "04kviw799qxly08zb8n5mgxfd96gyis6x69q2qiw86jnh87c4mv9")))) (base32 "04kviw799qxly08zb8n5mgxfd96gyis6x69q2qiw86jnh87c4mv9"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-delete 'configure %standard-phases) '(#:phases (modify-phases %standard-phases (delete 'configure))
#:tests? #f ; no check target #:tests? #f ; no check target
#:make-flags (let ((out (assoc-ref %outputs "out"))) #:make-flags (let ((out (assoc-ref %outputs "out")))
(list (string-append "prefix=" out))))) (list (string-append "prefix=" out)))))
@ -1227,23 +1223,23 @@ environment variable is set and output is to tty.")
"#!$SHELL"))))) "#!$SHELL")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-cons-before '(#:phases
'build 'patch-/bin/sh (modify-phases %standard-phases
(lambda* (#:key inputs #:allow-other-keys) (add-before 'build 'patch-/bin/sh
;; Use the right shell when executing the watcher and (lambda* (#:key inputs #:allow-other-keys)
;; user-provided shell commands. ;; Use the right shell when executing the watcher and
(let ((bash (assoc-ref inputs "bash"))) ;; user-provided shell commands.
(substitute* '("src/direvent.c" "src/progman.c") (let ((bash (assoc-ref inputs "bash")))
(("\"/bin/sh\"") (substitute* '("src/direvent.c" "src/progman.c")
(string-append "\"" bash "/bin/sh\""))) (("\"/bin/sh\"")
(string-append "\"" bash "/bin/sh\"")))
;; Adjust the 'shell.at' test accordingly. ;; Adjust the 'shell.at' test accordingly.
(substitute* "tests/testsuite" (substitute* "tests/testsuite"
(("SHELL=/bin/sh") (("SHELL=/bin/sh")
(string-append "SHELL=" bash "/bin/sh"))) (string-append "SHELL=" bash "/bin/sh")))
#t)) #t))))))
%standard-phases)))
(home-page "https://www.gnu.org/software/direvent/") (home-page "https://www.gnu.org/software/direvent/")
(synopsis "Daemon to monitor directories for events such as file removal") (synopsis "Daemon to monitor directories for events such as file removal")
(description (description
@ -1700,7 +1696,7 @@ results (ndiff), and a packet generation and response analysis tool (nping).")
(list (string-append "DESTDIR=" out) (list (string-append "DESTDIR=" out)
"prefix=/")) "prefix=/"))
;; no configure script ;; no configure script
#:phases (alist-delete 'configure %standard-phases))) #:phases (modify-phases %standard-phases (delete 'configure))))
(inputs `(("python-2" ,python-2))) (inputs `(("python-2" ,python-2)))
(synopsis "Versatile resource statistics tool") (synopsis "Versatile resource statistics tool")
(description "Dstat is a versatile replacement for @command{vmstat}, (description "Dstat is a versatile replacement for @command{vmstat},

View File

@ -334,22 +334,21 @@ fast arithmetic.")
("mpfr" ,mpfr))) ("mpfr" ,mpfr)))
(arguments (arguments
`(#:phases `(#:phases
(alist-replace (modify-phases %standard-phases
'configure (replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")) (let ((out (assoc-ref outputs "out"))
(flint (assoc-ref inputs "flint")) (flint (assoc-ref inputs "flint"))
(gmp (assoc-ref inputs "gmp")) (gmp (assoc-ref inputs "gmp"))
(mpfr (assoc-ref inputs "mpfr"))) (mpfr (assoc-ref inputs "mpfr")))
;; do not pass "--enable-fast-install", which makes the ;; do not pass "--enable-fast-install", which makes the
;; homebrew configure process fail ;; homebrew configure process fail
(zero? (system* (zero? (system*
"./configure" "./configure"
(string-append "--prefix=" out) (string-append "--prefix=" out)
(string-append "--with-flint=" flint) (string-append "--with-flint=" flint)
(string-append "--with-gmp=" gmp) (string-append "--with-gmp=" gmp)
(string-append "--with-mpfr=" mpfr))))) (string-append "--with-mpfr=" mpfr)))))))))
%standard-phases)))
(synopsis "Arbitrary precision floating-point ball arithmetic") (synopsis "Arbitrary precision floating-point ball arithmetic")
(description (description
"Arb is a C library for arbitrary-precision floating-point ball "Arb is a C library for arbitrary-precision floating-point ball

View File

@ -80,19 +80,18 @@ around or take advantage of platform-specific deficiencies or features.")
`(("expat" ,expat))) `(("expat" ,expat)))
(arguments (arguments
'(#:phases '(#:phases
(alist-replace (modify-phases %standard-phases
'configure (replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")) (let ((out (assoc-ref outputs "out"))
(apr (assoc-ref inputs "apr")) (apr (assoc-ref inputs "apr"))
(expat (assoc-ref inputs "expat"))) (expat (assoc-ref inputs "expat")))
(setenv "CONFIG_SHELL" (which "bash")) (setenv "CONFIG_SHELL" (which "bash"))
(zero? (zero?
(system* "./configure" (system* "./configure"
(string-append "--prefix=" out) (string-append "--prefix=" out)
(string-append "--with-apr=" apr) (string-append "--with-apr=" apr)
(string-append "--with-expat=" expat))))) (string-append "--with-expat=" expat)))))))
%standard-phases)
;; There are race conditions during 'make check'. Typically, the ;; There are race conditions during 'make check'. Typically, the
;; 'testall' executable is not built yet by the time 'make check' tries ;; 'testall' executable is not built yet by the time 'make check' tries

View File

@ -617,23 +617,21 @@ language and software synthesizer.")
`(#:tests? #f ; no "check" target `(#:tests? #f ; no "check" target
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'patch-makefile-and-enter-directory (add-after 'unpack 'patch-makefile-and-enter-directory
(lambda _ (lambda _
(substitute* "libs/Makefile" (substitute* "libs/Makefile"
(("/sbin/ldconfig") "true") (("/sbin/ldconfig") "true")
(("^LIBDIR =.*") "LIBDIR = lib\n")) (("^LIBDIR =.*") "LIBDIR = lib\n"))
(chdir "libs") (chdir "libs")
#t) #t))
(alist-cons-after (add-after 'install 'install-symlink
'install (lambda _
'install-symlink (symlink "libclalsadrv.so"
(lambda _ (string-append (assoc-ref %outputs "out")
(symlink "libclalsadrv.so" "/lib/libclalsadrv.so.2")))
(string-append (assoc-ref %outputs "out") ;; no configure script
"/lib/libclalsadrv.so.2"))) (modify-phases %standard-phases (delete 'configure))))))
;; no configure script
(alist-delete 'configure %standard-phases)))))
(inputs (inputs
`(("alsa-lib" ,alsa-lib) `(("alsa-lib" ,alsa-lib)
("fftw" ,fftw))) ("fftw" ,fftw)))
@ -972,11 +970,9 @@ follower.")
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-after (modify-phases %standard-phases
'unpack (add-after 'unpack 'remove-broken-symlinks
'remove-broken-symlinks (lambda _ (delete-file-recursively "m4") #t)))))
(lambda _ (delete-file-recursively "m4") #t)
%standard-phases)))
(inputs (inputs
`(("libsndfile" ,libsndfile) `(("libsndfile" ,libsndfile)
("alsa-lib" ,alsa-lib) ("alsa-lib" ,alsa-lib)
@ -1015,12 +1011,11 @@ also play midifiles using a Soundfont.")
("unzip" ,unzip))) ("unzip" ,unzip)))
(arguments (arguments
'(#:phases '(#:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'bootstrap (add-after 'unpack 'bootstrap
(lambda _ (lambda _
(substitute* "bootstrap" (("\r\n") "\n")) (substitute* "bootstrap" (("\r\n") "\n"))
(zero? (system* "sh" "bootstrap"))) (zero? (system* "sh" "bootstrap")))))))
%standard-phases)))
(home-page "http://www.audiocoding.com/faad2.html") (home-page "http://www.audiocoding.com/faad2.html")
(synopsis "MPEG-4 and MPEG-2 AAC decoder") (synopsis "MPEG-4 and MPEG-2 AAC decoder")
(description (description
@ -1674,7 +1669,7 @@ software.")
"TYPE=mdaPiano" "TYPE=mdaPiano"
(string-append "PREFIX=" (assoc-ref %outputs "out"))) (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:tests? #f ; no check target #:tests? #f ; no check target
#:phases (alist-delete 'configure %standard-phases))) #:phases (modify-phases %standard-phases (delete 'configure))))
(inputs (inputs
`(("lv2" ,lv2) `(("lv2" ,lv2)
("lvtk" ,lvtk))) ("lvtk" ,lvtk)))
@ -1697,7 +1692,7 @@ software.")
"TYPE=mdaEPiano" "TYPE=mdaEPiano"
(string-append "PREFIX=" (assoc-ref %outputs "out"))) (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:tests? #f ; no check target #:tests? #f ; no check target
#:phases (alist-delete 'configure %standard-phases))) #:phases (modify-phases %standard-phases (delete 'configure))))
(home-page "http://elephly.net/lv2/mdaepiano.html") (home-page "http://elephly.net/lv2/mdaepiano.html")
(synopsis "LV2 port of the mda EPiano plugin") (synopsis "LV2 port of the mda EPiano plugin")
(description "An LV2 port of the mda EPiano VSTi."))) (description "An LV2 port of the mda EPiano VSTi.")))
@ -2090,19 +2085,19 @@ Suil currently supports every combination of Gtk 2, Qt 4, and X11.")
(string-append "--with-default-path=" (string-append "--with-default-path="
(assoc-ref %outputs "out") "/etc/timidity")) (assoc-ref %outputs "out") "/etc/timidity"))
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'install 'install-config (add-after 'install 'install-config
(lambda _ (lambda _
(let ((out (string-append (assoc-ref %outputs "out") (let ((out (string-append (assoc-ref %outputs "out")
"/etc/timidity"))) "/etc/timidity")))
(mkdir-p out) (mkdir-p out)
(call-with-output-file (call-with-output-file
(string-append out "/timidity.cfg") (string-append out "/timidity.cfg")
(lambda (port) (lambda (port)
(format port (string-append "source " (format port (string-append "source "
(assoc-ref %build-inputs "freepats") (assoc-ref %build-inputs "freepats")
"/share/freepats/freepats.cfg")))))) "/share/freepats/freepats.cfg")))))
%standard-phases))) #t)))))
(inputs (inputs
`(("alsa-lib" ,alsa-lib) `(("alsa-lib" ,alsa-lib)
("ao" ,ao) ("ao" ,ao)
@ -2141,16 +2136,15 @@ disks as various audio file formats.")
(arguments (arguments
`(#:tests? #f ; no check target `(#:tests? #f ; no check target
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'install 'remove-libvamp-hostsdk.la (add-after 'install 'remove-libvamp-hostsdk.la
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
;; https://bugs.launchpad.net/ubuntu/+source/vamp-plugin-sdk/+bug/1253656 ;; https://bugs.launchpad.net/ubuntu/+source/vamp-plugin-sdk/+bug/1253656
(for-each delete-file (for-each delete-file
(let ((out (assoc-ref outputs "out"))) (let ((out (assoc-ref outputs "out")))
(list (string-append out "/lib/libvamp-sdk.la") (list (string-append out "/lib/libvamp-sdk.la")
(string-append out "/lib/libvamp-hostsdk.la")))) (string-append out "/lib/libvamp-hostsdk.la"))))
#t) #t)s))))
%standard-phases)))
(inputs (inputs
`(("libsndfile" ,libsndfile))) `(("libsndfile" ,libsndfile)))
(native-inputs (native-inputs
@ -2312,11 +2306,10 @@ Tracker 3 S3M and Impulse Tracker IT files.")
("file" ,file))) ("file" ,file)))
(arguments (arguments
'(#:phases '(#:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'bootstrap (add-after 'unpack 'bootstrap
(lambda _ (lambda _
(zero? (system* "sh" "bootstrap"))) (zero? (system* "sh" "bootstrap")))))))
%standard-phases)))
(home-page "http://www.surina.net/soundtouch/") (home-page "http://www.surina.net/soundtouch/")
(synopsis (synopsis
"Audio processing library for changing tempo, pitch and playback rate") "Audio processing library for changing tempo, pitch and playback rate")
@ -2450,11 +2443,10 @@ portions of LAME.")
'(#:phases '(#:phases
;; Autoreconf is necessary because the audacity-compat patch modifies ;; Autoreconf is necessary because the audacity-compat patch modifies
;; .in files. ;; .in files.
(alist-cons-after (modify-phases %standard-phases
'unpack 'autoreconf (add-after 'unpack 'autoreconf
(lambda _ (lambda _
(zero? (system* "autoreconf" "-vif"))) (zero? (system* "autoreconf" "-vif")))))
%standard-phases)
#:tests? #f)) ;no 'check' target #:tests? #f)) ;no 'check' target
(home-page "http://www.portaudio.com/") (home-page "http://www.portaudio.com/")
(synopsis "Audio I/O library") (synopsis "Audio I/O library")
@ -2518,14 +2510,13 @@ synthesizer written in C++.")
("pulseaudio" ,pulseaudio))) ("pulseaudio" ,pulseaudio)))
(arguments (arguments
'(#:phases '(#:phases
(alist-replace (modify-phases %standard-phases
'configure (replace 'configure
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(setenv "CC" "gcc") (setenv "CC" "gcc")
(zero? (zero?
(system* "./configure" (system* "./configure"
(string-append "--prefix=" (assoc-ref outputs "out"))))) (string-append "--prefix=" (assoc-ref outputs "out")))))))
%standard-phases)
;; No 'check' target. ;; No 'check' target.
#:tests? #f)) #:tests? #f))
(home-page "http://themaister.net/rsound.html") (home-page "http://themaister.net/rsound.html")
@ -2592,22 +2583,20 @@ result.")
`(#:tests? #f ; no "check" target `(#:tests? #f ; no "check" target
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'patch-makefile-and-enter-directory (add-after 'unpack 'patch-makefile-and-enter-directory
(lambda _ (lambda _
(substitute* "libs/Makefile" (substitute* "libs/Makefile"
(("ldconfig") "true") (("ldconfig") "true")
(("^LIBDIR =.*") "LIBDIR = lib\n")) (("^LIBDIR =.*") "LIBDIR = lib\n"))
(chdir "libs") #t) (chdir "libs") #t)
(alist-cons-after (add-after 'install 'install-symlink
'install (lambda _
'install-symlink (symlink "libzita-convolver.so"
(lambda _ (string-append (assoc-ref %outputs "out")
(symlink "libzita-convolver.so" "/lib/libzita-convolver.so.3"))))
(string-append (assoc-ref %outputs "out") ;; no configure script
"/lib/libzita-convolver.so.3"))) (delete 'configure)))))
;; no configure script
(alist-delete 'configure %standard-phases)))))
(inputs `(("fftwf" ,fftwf))) (inputs `(("fftwf" ,fftwf)))
(home-page "http://kokkinizita.linuxaudio.org") (home-page "http://kokkinizita.linuxaudio.org")
(synopsis "Fast, partitioned convolution engine library") (synopsis "Fast, partitioned convolution engine library")
@ -2682,23 +2671,21 @@ provide high-quality sample rate conversion.")
`(#:tests? #f ; no "check" target `(#:tests? #f ; no "check" target
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'patch-makefile-and-enter-directory (add-after 'unpack 'patch-makefile-and-enter-directory
(lambda _ (lambda _
(substitute* "libs/Makefile" (substitute* "libs/Makefile"
(("ldconfig") "true") (("ldconfig") "true")
(("^LIBDIR =.*") "LIBDIR = lib\n")) (("^LIBDIR =.*") "LIBDIR = lib\n"))
(chdir "libs") (chdir "libs")
#t) #t))
(alist-cons-after (add-after 'install 'install-symlink
'install (lambda _
'install-symlink (symlink "libzita-alsa-pcmi.so"
(lambda _ (string-append (assoc-ref %outputs "out")
(symlink "libzita-alsa-pcmi.so" "/lib/libzita-alsa-pcmi.so.0"))))
(string-append (assoc-ref %outputs "out") ;; no configure script
"/lib/libzita-alsa-pcmi.so.0"))) (delete 'configure))))
;; no configure script
(alist-delete 'configure %standard-phases)))))
(inputs (inputs
`(("alsa-lib" ,alsa-lib) `(("alsa-lib" ,alsa-lib)
("fftw" ,fftw))) ("fftw" ,fftw)))

View File

@ -293,20 +293,20 @@ random access nor for in-place modification.")
("nettle" ,nettle))) ("nettle" ,nettle)))
(arguments (arguments
`(#:parallel-build? #f ;race conditions `(#:parallel-build? #f ;race conditions
#:phases (alist-cons-before #:phases
'build 'remove-Werror (modify-phases %standard-phases
;; rdup uses a deprecated function from libarchive (add-before 'build 'remove-Werror
(lambda _ ;; rdup uses a deprecated function from libarchive
(substitute* "GNUmakefile" (lambda _
(("^(CFLAGS=.*)-Werror" _ front) front))) (substitute* "GNUmakefile"
(alist-cons-before (("^(CFLAGS=.*)-Werror" _ front) front))
'check 'pre-check #t))
(lambda _ (add-before 'check 'pre-check
(setenv "HOME" (getcwd)) (lambda _
(substitute* "testsuite/rdup/rdup.rdup-up-t-with-file.exp" (setenv "HOME" (getcwd))
(("/bin/cat") (which "cat")))) (substitute* "testsuite/rdup/rdup.rdup-up-t-with-file.exp"
(("/bin/cat") (which "cat")))
%standard-phases)))) #t)))))
(home-page "http://archive.miek.nl/projects/rdup/index.html") (home-page "http://archive.miek.nl/projects/rdup/index.html")
(synopsis "Provide a list of files to backup") (synopsis "Provide a list of files to backup")
(description (description
@ -336,9 +336,9 @@ list and implement the backup strategy.")
"CC=gcc") "CC=gcc")
#:tests? #f ;test input not distributed #:tests? #f ;test input not distributed
#:phases #:phases
(alist-delete ;; no configure phase
'configure ;no configure phase (modify-phases %standard-phases
%standard-phases))) (delete 'configure))))
(home-page "http://viric.name/cgi-bin/btar/doc/trunk/doc/home.wiki") (home-page "http://viric.name/cgi-bin/btar/doc/trunk/doc/home.wiki")
(synopsis "Tar-compatible archiver") (synopsis "Tar-compatible archiver")
(description (description

View File

@ -369,32 +369,33 @@ transparently with both VCFs and BCFs, both uncompressed and BGZF-compressed.")
'(#:tests? #f '(#:tests? #f
#:make-flags (list (string-append "BINDIR=" %output "/bin")) #:make-flags (list (string-append "BINDIR=" %output "/bin"))
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'unpack-tarballs (add-after 'unpack 'unpack-tarballs
(lambda _ (lambda _
;; FIXME: Bedops includes tarballs of minimally patched upstream ;; FIXME: Bedops includes tarballs of minimally patched upstream
;; libraries jansson, zlib, and bzip2. We cannot just use stock ;; libraries jansson, zlib, and bzip2. We cannot just use stock
;; libraries because at least one of the libraries (zlib) is ;; libraries because at least one of the libraries (zlib) is
;; patched to add a C++ function definition (deflateInit2cpp). ;; patched to add a C++ function definition (deflateInit2cpp).
;; Until the Bedops developers offer a way to link against system ;; Until the Bedops developers offer a way to link against system
;; libraries we have to build the in-tree copies of these three ;; libraries we have to build the in-tree copies of these three
;; libraries. ;; libraries.
;; See upstream discussion: ;; See upstream discussion:
;; https://github.com/bedops/bedops/issues/124 ;; https://github.com/bedops/bedops/issues/124
;; Unpack the tarballs to benefit from shebang patching. ;; Unpack the tarballs to benefit from shebang patching.
(with-directory-excursion "third-party" (with-directory-excursion "third-party"
(and (zero? (system* "tar" "xvf" "jansson-2.6.tar.bz2")) (and (zero? (system* "tar" "xvf" "jansson-2.6.tar.bz2"))
(zero? (system* "tar" "xvf" "zlib-1.2.7.tar.bz2")) (zero? (system* "tar" "xvf" "zlib-1.2.7.tar.bz2"))
(zero? (system* "tar" "xvf" "bzip2-1.0.6.tar.bz2")))) (zero? (system* "tar" "xvf" "bzip2-1.0.6.tar.bz2"))))
;; Disable unpacking of tarballs in Makefile. ;; Disable unpacking of tarballs in Makefile.
(substitute* "system.mk/Makefile.linux" (substitute* "system.mk/Makefile.linux"
(("^\tbzcat .*") "\t@echo \"not unpacking\"\n") (("^\tbzcat .*") "\t@echo \"not unpacking\"\n")
(("\\./configure") "CONFIG_SHELL=bash ./configure")) (("\\./configure") "CONFIG_SHELL=bash ./configure"))
(substitute* "third-party/zlib-1.2.7/Makefile.in" (substitute* "third-party/zlib-1.2.7/Makefile.in"
(("^SHELL=.*$") "SHELL=bash\n"))) (("^SHELL=.*$") "SHELL=bash\n"))
(alist-delete 'configure %standard-phases)))) #t))
(delete 'configure))))
(home-page "https://github.com/bedops/bedops") (home-page "https://github.com/bedops/bedops")
(synopsis "Tools for high-performance genomic feature operations") (synopsis "Tools for high-performance genomic feature operations")
(description (description
@ -1325,20 +1326,21 @@ splice junctions between exons.")
(arguments (arguments
'(#:tests? #f ;no "check" target '(#:tests? #f ;no "check" target
#:phases #:phases
(alist-replace (modify-phases %standard-phases
'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (let ((bin (string-append
(assoc-ref outputs "out") "/bin")) (assoc-ref outputs "out") "/bin"))
(doc (string-append (doc (string-append
(assoc-ref outputs "out") "/share/doc/bwa")) (assoc-ref outputs "out") "/share/doc/bwa"))
(man (string-append (man (string-append
(assoc-ref outputs "out") "/share/man/man1"))) (assoc-ref outputs "out") "/share/man/man1")))
(install-file "bwa" bin) (install-file "bwa" bin)
(install-file "README.md" doc) (install-file "README.md" doc)
(install-file "bwa.1" man))) (install-file "bwa.1" man))
;; no "configure" script #t))
(alist-delete 'configure %standard-phases)))) ;; no "configure" script
(delete 'configure))))
(inputs `(("zlib" ,zlib))) (inputs `(("zlib" ,zlib)))
;; Non-portable SSE instructions are used so building fails on platforms ;; Non-portable SSE instructions are used so building fails on platforms
;; other than x86_64. ;; other than x86_64.
@ -1815,10 +1817,9 @@ time.")
(arguments (arguments
`(#:python ,python-2 `(#:python ,python-2
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'set-env (add-after 'unpack 'set-env
(lambda _ (setenv "CROSSMAP_USE_SYSTEM_PYSAM" "1")) (lambda _ (setenv "CROSSMAP_USE_SYSTEM_PYSAM" "1") #t)))))
%standard-phases)))
(inputs (inputs
`(("python-numpy" ,python2-numpy) `(("python-numpy" ,python2-numpy)
("python-pysam" ,python2-pysam) ("python-pysam" ,python2-pysam)
@ -2365,19 +2366,18 @@ dynamic programming or a variety of heuristics.")
(arguments (arguments
`(#:tests? #f ;no "check" target `(#:tests? #f ;no "check" target
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'use-shared-boost-libs-and-set-bamtools-paths (add-after 'unpack 'use-shared-boost-libs-and-set-bamtools-paths
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "CMakeLists.txt" (substitute* "CMakeLists.txt"
(("set\\(Boost_USE_STATIC_LIBS ON\\)") (("set\\(Boost_USE_STATIC_LIBS ON\\)")
"set(Boost_USE_STATIC_LIBS OFF)") "set(Boost_USE_STATIC_LIBS OFF)")
(("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/bamtools/include") (("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/bamtools/include")
(string-append (assoc-ref inputs "bamtools") "/include/bamtools"))) (string-append (assoc-ref inputs "bamtools") "/include/bamtools")))
(substitute* "src/CMakeLists.txt" (substitute* "src/CMakeLists.txt"
(("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/\\.\\./bamtools/lib") (("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/\\.\\./bamtools/lib")
(string-append (assoc-ref inputs "bamtools") "/lib/bamtools"))) (string-append (assoc-ref inputs "bamtools") "/lib/bamtools")))
#t) #t)))))
%standard-phases)))
(inputs (inputs
`(("boost" ,boost) `(("boost" ,boost)
("bamtools" ,bamtools) ("bamtools" ,bamtools)
@ -2544,15 +2544,15 @@ results. The FASTX-Toolkit tools perform some of these preprocessing tasks.")
(assoc-ref %outputs "out") (assoc-ref %outputs "out")
"/bin/")) "/bin/"))
#:phases #:phases
(alist-replace (modify-phases %standard-phases
'check (replace 'check
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(setenv "PATH" (string-append (setenv "PATH" (string-append
(assoc-ref outputs "out") "/bin:" (assoc-ref outputs "out") "/bin:"
(getenv "PATH"))) (getenv "PATH")))
(chdir "../flexbar_v2.5_src/test") (chdir "../flexbar_v2.5_src/test")
(zero? (system* "bash" "flexbar_validate.sh"))) (zero? (system* "bash" "flexbar_validate.sh"))))
(alist-delete 'install %standard-phases)))) (delete 'install))))
(inputs (inputs
`(("tbb" ,tbb) `(("tbb" ,tbb)
("zlib" ,zlib))) ("zlib" ,zlib)))
@ -2788,21 +2788,21 @@ association studies (GWAS).")
(arguments (arguments
`(#:python ,python-2 `(#:python ,python-2
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'generate-from-cython-sources (add-after 'unpack 'generate-from-cython-sources
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
;; Delete these C files to force fresh generation from pyx sources. ;; Delete these C files to force fresh generation from pyx sources.
(delete-file "grit/sparsify_support_fns.c") (delete-file "grit/sparsify_support_fns.c")
(delete-file "grit/call_peaks_support_fns.c") (delete-file "grit/call_peaks_support_fns.c")
(substitute* "setup.py" (substitute* "setup.py"
(("Cython.Setup") "Cython.Build") (("Cython.Setup") "Cython.Build")
;; Add numpy include path to fix compilation ;; Add numpy include path to fix compilation
(("pyx\", \\]") (("pyx\", \\]")
(string-append "pyx\", ], include_dirs = ['" (string-append "pyx\", ], include_dirs = ['"
(assoc-ref inputs "python-numpy") (assoc-ref inputs "python-numpy")
"/lib/python2.7/site-packages/numpy/core/include/" "/lib/python2.7/site-packages/numpy/core/include/"
"']"))) #t) "']")))
%standard-phases))) #t)))))
(inputs (inputs
`(("python-scipy" ,python2-scipy) `(("python-scipy" ,python2-scipy)
("python-numpy" ,python2-numpy) ("python-numpy" ,python2-numpy)
@ -2845,28 +2845,29 @@ estimates transcript expression.")
'() '()
'("POPCNT_CAPABILITY=0"))) '("POPCNT_CAPABILITY=0")))
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'patch-sources (add-after 'unpack 'patch-sources
(lambda _ (lambda _
;; XXX Cannot use snippet because zip files are not supported ;; XXX Cannot use snippet because zip files are not supported
(substitute* "Makefile" (substitute* "Makefile"
(("^CC = .*$") "CC = gcc") (("^CC = .*$") "CC = gcc")
(("^CPP = .*$") "CPP = g++") (("^CPP = .*$") "CPP = g++")
;; replace BUILD_HOST and BUILD_TIME for deterministic build ;; replace BUILD_HOST and BUILD_TIME for deterministic build
(("-DBUILD_HOST=.*") "-DBUILD_HOST=\"\\\"guix\\\"\"") (("-DBUILD_HOST=.*") "-DBUILD_HOST=\"\\\"guix\\\"\"")
(("-DBUILD_TIME=.*") "-DBUILD_TIME=\"\\\"0\\\"\"")) (("-DBUILD_TIME=.*") "-DBUILD_TIME=\"\\\"0\\\"\""))
(substitute* '("hisat-build" "hisat-inspect") (substitute* '("hisat-build" "hisat-inspect")
(("/usr/bin/env") (which "env")))) (("/usr/bin/env") (which "env")))
(alist-replace #t))
'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin/"))) (let ((bin (string-append (assoc-ref outputs "out") "/bin/")))
(for-each (lambda (file) (for-each (lambda (file)
(install-file file bin)) (install-file file bin))
(find-files (find-files
"." "."
"hisat(-(build|align|inspect)(-(s|l)(-debug)*)*)*$")))) "hisat(-(build|align|inspect)(-(s|l)(-debug)*)*)*$")))
(alist-delete 'configure %standard-phases))))) #t))
(delete 'configure))))
(native-inputs (native-inputs
`(("unzip" ,unzip))) `(("unzip" ,unzip)))
(inputs (inputs
@ -4680,23 +4681,21 @@ Roche 454, Ion Torrent and Pacific BioSciences SMRT.")
`(#:parallel-build? #f ; not supported `(#:parallel-build? #f ; not supported
#:tests? #f ; no "check" target #:tests? #f ; no "check" target
#:phases #:phases
(alist-replace (modify-phases %standard-phases
'configure (replace 'configure
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))) (let ((out (assoc-ref outputs "out")))
;; Allow 'konfigure.perl' to find 'package.prl'. ;; Allow 'konfigure.perl' to find 'package.prl'.
(setenv "PERL5LIB" (setenv "PERL5LIB"
(string-append ".:" (getenv "PERL5LIB"))) (string-append ".:" (getenv "PERL5LIB")))
;; The 'configure' script doesn't recognize things like ;; The 'configure' script doesn't recognize things like
;; '--enable-fast-install'. ;; '--enable-fast-install'.
(zero? (system* "./configure" (zero? (system* "./configure"
(string-append "--build-prefix=" (getcwd) "/build") (string-append "--build-prefix=" (getcwd) "/build")
(string-append "--prefix=" out))))) (string-append "--prefix=" out))))))
(alist-cons-after (add-after 'unpack 'enter-dir
'unpack 'enter-dir (lambda _ (chdir "ngs-sdk") #t)))))
(lambda _ (chdir "ngs-sdk") #t)
%standard-phases))))
(native-inputs `(("perl" ,perl))) (native-inputs `(("perl" ,perl)))
;; According to the test ;; According to the test
;; unless ($MARCH =~ /x86_64/i || $MARCH =~ /i?86/i) ;; unless ($MARCH =~ /x86_64/i || $MARCH =~ /i?86/i)
@ -5460,17 +5459,16 @@ sequences.")
"-f" "Makefile.Linux" "-f" "Makefile.Linux"
"CC=gcc ${CCFLAGS}") "CC=gcc ${CCFLAGS}")
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'enter-dir (add-after 'unpack 'enter-dir
(lambda _ (chdir "src") #t) (lambda _ (chdir "src") #t))
(alist-replace (replace 'install
'install (lambda* (#:key outputs #:allow-other-keys)
(lambda* (#:key outputs #:allow-other-keys) (let ((bin (string-append (assoc-ref outputs "out") "/bin/")))
(let ((bin (string-append (assoc-ref outputs "out") "/bin/"))) (mkdir-p bin)
(mkdir-p bin) (copy-recursively "../bin" bin))))
(copy-recursively "../bin" bin)))
;; no "configure" script ;; no "configure" script
(alist-delete 'configure %standard-phases))))) (delete 'configure))))
(inputs `(("zlib" ,zlib))) (inputs `(("zlib" ,zlib)))
(home-page "http://bioinf.wehi.edu.au/subread-package/") (home-page "http://bioinf.wehi.edu.au/subread-package/")
(synopsis "Tool kit for processing next-gen sequencing data") (synopsis "Tool kit for processing next-gen sequencing data")

View File

@ -74,23 +74,24 @@
"gui")) ; graphical user interface "gui")) ; graphical user interface
(arguments (arguments
'(#:glib-or-gtk-wrap-excluded-outputs '("out") '(#:glib-or-gtk-wrap-excluded-outputs '("out")
#:phases (alist-cons-after #:phases
'install 'move-gui (modify-phases %standard-phases
(lambda* (#:key outputs #:allow-other-keys) (add-after 'install 'move-gui
;; Move the GUI to its own output, so that "out" doesn't (lambda* (#:key outputs #:allow-other-keys)
;; depend on GTK+. ;; Move the GUI to its own output, so that "out" doesn't
(let ((out (assoc-ref outputs "out")) ;; depend on GTK+.
(gui (assoc-ref outputs "gui"))) (let ((out (assoc-ref outputs "out"))
(mkdir-p (string-append gui "/bin")) (gui (assoc-ref outputs "gui")))
(rename-file (string-append out "/bin/transmission-gtk") (mkdir-p (string-append gui "/bin"))
(string-append gui (rename-file (string-append out "/bin/transmission-gtk")
"/bin/transmission-gtk")) (string-append gui
"/bin/transmission-gtk"))
;; Move the '.desktop' file as well. ;; Move the '.desktop' file as well.
(mkdir (string-append gui "/share")) (mkdir (string-append gui "/share"))
(rename-file (string-append out "/share/applications") (rename-file (string-append out "/share/applications")
(string-append gui "/share/applications")))) (string-append gui "/share/applications")))
%standard-phases))) #t)))))
(inputs (inputs
`(("inotify-tools" ,inotify-tools) `(("inotify-tools" ,inotify-tools)
("libevent" ,libevent) ("libevent" ,libevent)

View File

@ -454,7 +454,7 @@ the data.")
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:tests? #f '(#:tests? #f
#:phases (alist-delete 'configure %standard-phases) #:phases (modify-phases %standard-phases (delete 'configure))
#:make-flags (list "CC=gcc" #:make-flags (list "CC=gcc"
(string-append "PREFIX=" (string-append "PREFIX="
(assoc-ref %outputs "out"))))) (assoc-ref %outputs "out")))))

View File

@ -521,14 +521,14 @@ decompressors when faced with corrupted input.")
`(("which" ,which))) `(("which" ,which)))
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-after (modify-phases %standard-phases
'patch-source-shebangs 'unpatch-source-shebang (add-after 'patch-source-shebangs 'unpatch-source-shebang
;; revert the patch-shebang phase on a script which is ;; revert the patch-shebang phase on a script which is
;; in fact test data ;; in fact test data
(lambda _ (lambda _
(substitute* "tests/shar-1.ok" (substitute* "tests/shar-1.ok"
(((which "sh")) "/bin/sh"))) (((which "sh")) "/bin/sh"))
%standard-phases))) #t)))))
(home-page "https://www.gnu.org/software/sharutils/") (home-page "https://www.gnu.org/software/sharutils/")
(synopsis "Archives in shell scripts, uuencode/uudecode") (synopsis "Archives in shell scripts, uuencode/uudecode")
(description (description

View File

@ -50,22 +50,21 @@
;; TODO: add 'ncurses.pc' to the ncurses package. ;; TODO: add 'ncurses.pc' to the ncurses package.
"-DBUILD_NCURSES=false") "-DBUILD_NCURSES=false")
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'add-freetype-to-search-path (add-after 'unpack 'add-freetype-to-search-path
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "cmake/ConkyPlatformChecks.cmake" (substitute* "cmake/ConkyPlatformChecks.cmake"
(("set\\(INCLUDE_SEARCH_PATH") (("set\\(INCLUDE_SEARCH_PATH")
(string-append (string-append
"set(INCLUDE_SEARCH_PATH " "set(INCLUDE_SEARCH_PATH "
(assoc-ref inputs "freetype") "/include/freetype2 "))) (assoc-ref inputs "freetype") "/include/freetype2 ")))
#t) #t))
(alist-replace (replace 'install
'install (lambda* (#:key outputs #:allow-other-keys)
(lambda* (#:key outputs #:allow-other-keys) (let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(let ((bin (string-append (assoc-ref outputs "out") "/bin"))) (mkdir-p bin)
(mkdir-p bin) (install-file "src/conky" bin))
(install-file "src/conky" bin))) #t)))))
%standard-phases))))
(inputs (inputs
`(("freetype" ,freetype) `(("freetype" ,freetype)
("ncurses" ,ncurses) ("ncurses" ,ncurses)

View File

@ -167,34 +167,33 @@ and provides interfaces to the traditional file format.")
'(#:tests? #f ; no check target available '(#:tests? #f ; no check target available
#:disallowed-references ("doc") #:disallowed-references ("doc")
#:phases #:phases
(alist-replace (modify-phases %standard-phases
'configure (replace 'configure
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")) (let ((out (assoc-ref outputs "out"))
(doc (assoc-ref outputs "doc"))) (doc (assoc-ref outputs "doc")))
;; '--docdir' is not honored, so we need to patch. ;; '--docdir' is not honored, so we need to patch.
(substitute* "dist/Makefile.in" (substitute* "dist/Makefile.in"
(("docdir[[:blank:]]*=.*") (("docdir[[:blank:]]*=.*")
(string-append "docdir = " doc "/share/doc/bdb"))) (string-append "docdir = " doc "/share/doc/bdb")))
(zero? (zero?
(system* "./dist/configure" (system* "./dist/configure"
(string-append "--prefix=" out) (string-append "--prefix=" out)
(string-append "CONFIG_SHELL=" (which "bash")) (string-append "CONFIG_SHELL=" (which "bash"))
(string-append "SHELL=" (which "bash")) (string-append "SHELL=" (which "bash"))
;; Remove 7 MiB of .a files. ;; Remove 7 MiB of .a files.
"--disable-static" "--disable-static"
;; The compatibility mode is needed by some packages, ;; The compatibility mode is needed by some packages,
;; notably iproute2. ;; notably iproute2.
"--enable-compat185" "--enable-compat185"
;; The following flag is needed so that the inclusion ;; The following flag is needed so that the inclusion
;; of db_cxx.h into C++ files works; it leads to ;; of db_cxx.h into C++ files works; it leads to
;; HAVE_CXX_STDHEADERS being defined in db_cxx.h. ;; HAVE_CXX_STDHEADERS being defined in db_cxx.h.
"--enable-cxx")))) "--enable-cxx"))))))))
%standard-phases)))
(synopsis "Berkeley database") (synopsis "Berkeley database")
(description (description
"Berkeley DB is an embeddable database allowing developers the choice of "Berkeley DB is an embeddable database allowing developers the choice of
@ -222,39 +221,38 @@ SQL, Key/Value, XML/XQuery or Java Object storage for their data model.")
`(#:tests? #f ; no check target available `(#:tests? #f ; no check target available
#:disallowed-references ("doc") #:disallowed-references ("doc")
#:phases #:phases
(alist-replace (modify-phases %standard-phases
'configure (replace 'configure
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")) (let ((out (assoc-ref outputs "out"))
(doc (assoc-ref outputs "doc"))) (doc (assoc-ref outputs "doc")))
;; '--docdir' is not honored, so we need to patch. ;; '--docdir' is not honored, so we need to patch.
(substitute* "dist/Makefile.in" (substitute* "dist/Makefile.in"
(("docdir[[:blank:]]*=.*") (("docdir[[:blank:]]*=.*")
(string-append "docdir = " doc "/share/doc/bdb"))) (string-append "docdir = " doc "/share/doc/bdb")))
(zero? (zero?
(system* "./dist/configure" (system* "./dist/configure"
(string-append "--prefix=" out) (string-append "--prefix=" out)
(string-append "CONFIG_SHELL=" (which "bash")) (string-append "CONFIG_SHELL=" (which "bash"))
(string-append "SHELL=" (which "bash")) (string-append "SHELL=" (which "bash"))
;; Bdb doesn't recognize aarch64 as an architecture. ;; Bdb doesn't recognize aarch64 as an architecture.
,@(if (string=? "aarch64-linux" (%current-system)) ,@(if (string=? "aarch64-linux" (%current-system))
'("--build=aarch64-unknown-linux-gnu") '("--build=aarch64-unknown-linux-gnu")
'()) '())
;; Remove 7 MiB of .a files. ;; Remove 7 MiB of .a files.
"--disable-static" "--disable-static"
;; The compatibility mode is needed by some packages, ;; The compatibility mode is needed by some packages,
;; notably iproute2. ;; notably iproute2.
"--enable-compat185" "--enable-compat185"
;; The following flag is needed so that the inclusion ;; The following flag is needed so that the inclusion
;; of db_cxx.h into C++ files works; it leads to ;; of db_cxx.h into C++ files works; it leads to
;; HAVE_CXX_STDHEADERS being defined in db_cxx.h. ;; HAVE_CXX_STDHEADERS being defined in db_cxx.h.
"--enable-cxx")))) "--enable-cxx"))))))))))
%standard-phases)))))
(define-public leveldb (define-public leveldb
(package (package

View File

@ -58,23 +58,24 @@
`(("perl" ,perl))) `(("perl" ,perl)))
(arguments (arguments
`(#:phases `(#:phases
(alist-replace (modify-phases %standard-phases
'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
;; Makefile contains no install target ;; Makefile contains no install target
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")) (bin (string-append out "/bin"))
(doc (string-append out "/share/doc/delta-" ,version))) (doc (string-append out "/share/doc/delta-" ,version)))
(begin (begin
(mkdir-p bin) (mkdir-p bin)
(mkdir-p doc) (mkdir-p doc)
(for-each (lambda (h) (for-each (lambda (h)
(install-file h doc)) (install-file h doc))
`("License.txt" ,@(find-files "www" ".*\\.html"))) `("License.txt" ,@(find-files "www" ".*\\.html")))
(for-each (lambda (b) (for-each (lambda (b)
(install-file b bin)) (install-file b bin))
`("delta" "multidelta" "topformflat"))))) `("delta" "multidelta" "topformflat"))))
(alist-delete 'configure %standard-phases)))) #t))
(delete 'configure))))
(home-page "http://delta.tigris.org/") (home-page "http://delta.tigris.org/")
(synopsis "Heuristical file minimizer") (synopsis "Heuristical file minimizer")
(description (description
@ -114,23 +115,24 @@ program to exhibit a bug.")
("sys-cpu" ,perl-sys-cpu) ("sys-cpu" ,perl-sys-cpu)
("term-readkey" ,perl-term-readkey))) ("term-readkey" ,perl-term-readkey)))
(arguments (arguments
`(#:phases (alist-cons-after `(#:phases
'install 'set-load-paths (modify-phases %standard-phases
(lambda* (#:key inputs outputs #:allow-other-keys) (add-after 'install 'set-load-paths
;; Tell creduce where to find the perl modules it needs. (lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) ;; Tell creduce where to find the perl modules it needs.
(prog (string-append out "/bin/creduce"))) (let* ((out (assoc-ref outputs "out"))
(wrap-program (prog (string-append out "/bin/creduce")))
prog (wrap-program
`("PERL5LIB" ":" prefix prog
,(map (lambda (p) `("PERL5LIB" ":" prefix
(string-append (assoc-ref inputs p) ,(map (lambda (p)
"/lib/perl5/site_perl/" (string-append (assoc-ref inputs p)
,(package-version perl))) "/lib/perl5/site_perl/"
'("term-readkey" "exporter-lite" ,(package-version perl)))
"file-which" "getopt-tabular" '("term-readkey" "exporter-lite"
"regex-common" "sys-cpu")))))) "file-which" "getopt-tabular"
%standard-phases))) "regex-common" "sys-cpu")))))
#t)))))
(home-page "http://embed.cs.utah.edu/creduce") (home-page "http://embed.cs.utah.edu/creduce")
(synopsis "Reducer for interesting code") (synopsis "Reducer for interesting code")
(description (description

View File

@ -337,17 +337,18 @@ GTK+, lets you select a desktop session and log in to it.")
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
(arguments (arguments
'(#:phases (alist-cons-before '(#:phases
'configure 'set-new-etc-location (modify-phases %standard-phases
(lambda _ (add-before 'configure 'set-new-etc-location
(substitute* "CMakeLists.txt" (lambda _
(("/etc") (substitute* "CMakeLists.txt"
(string-append (assoc-ref %outputs "out") "/etc")) (("/etc")
(("install.*systemd.*") (string-append (assoc-ref %outputs "out") "/etc"))
;; The build system's logic here is: if "Linux", then (("install.*systemd.*")
;; "systemd". Strip that. ;; The build system's logic here is: if "Linux", then
""))) ;; "systemd". Strip that.
%standard-phases) ""))
#t)))
#:configure-flags '("-DUSE_PAM=yes" #:configure-flags '("-DUSE_PAM=yes"
"-DUSE_CONSOLEKIT=no") "-DUSE_CONSOLEKIT=no")
#:tests? #f)) #:tests? #f))

View File

@ -75,7 +75,7 @@
`(("dbus" ,dbus))) `(("dbus" ,dbus)))
(arguments (arguments
`(#:phases `(#:phases
(alist-delete 'configure %standard-phases) (modify-phases %standard-phases (delete 'configure))
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
"CC=gcc" "CC=gcc"
"COPTS=\"-DHAVE_DBUS\"") "COPTS=\"-DHAVE_DBUS\"")

View File

@ -305,14 +305,15 @@ editor (without an X toolkit)" )
"0phz9d8wjk4p13vqannv0003fwh8qqrp0gfzcs2hgq1mrmv1srss")))) "0phz9d8wjk4p13vqannv0003fwh8qqrp0gfzcs2hgq1mrmv1srss"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-cons-after '(#:phases
'install 'post-install (modify-phases %standard-phases
(lambda* (#:key outputs #:allow-other-keys) (add-after 'install 'post-install
(symlink "geiser-install.el" (lambda* (#:key outputs #:allow-other-keys)
(string-append (assoc-ref outputs "out") (symlink "geiser-install.el"
"/share/emacs/site-lisp/" (string-append (assoc-ref outputs "out")
"geiser-autoloads.el"))) "/share/emacs/site-lisp/"
%standard-phases))) "geiser-autoloads.el"))
#t)))))
(inputs `(("guile" ,guile-2.0))) (inputs `(("guile" ,guile-2.0)))
(native-inputs `(("emacs" ,emacs-minimal))) (native-inputs `(("emacs" ,emacs-minimal)))
(home-page "http://nongnu.org/geiser/") (home-page "http://nongnu.org/geiser/")
@ -771,25 +772,25 @@ provides an optional IDE-like error list.")
(guix build emacs-utils)) (guix build emacs-utils))
#:tests? #f ; no check target #:tests? #f ; no check target
#:phases #:phases
(alist-replace (modify-phases %standard-phases
'configure (replace 'configure
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile" (substitute* "Makefile"
(("/usr/local") (assoc-ref outputs "out")) (("/usr/local") (assoc-ref outputs "out"))
(("/site-lisp/emacs-wget") "/site-lisp"))) (("/site-lisp/emacs-wget") "/site-lisp"))
(alist-cons-before #t))
'build 'patch-exec-paths (add-before 'build 'patch-exec-paths
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((wget (assoc-ref inputs "wget"))) (let ((wget (assoc-ref inputs "wget")))
(emacs-substitute-variables "wget.el" (emacs-substitute-variables "wget.el"
("wget-command" (string-append wget "/bin/wget"))))) ("wget-command" (string-append wget "/bin/wget"))))
(alist-cons-after #t))
'install 'post-install (add-after 'install 'post-install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(emacs-generate-autoloads (emacs-generate-autoloads
"wget" (string-append (assoc-ref outputs "out") "wget" (string-append (assoc-ref outputs "out")
"/share/emacs/site-lisp/"))) "/share/emacs/site-lisp/"))
%standard-phases))))) #t)))))
(home-page "http://www.emacswiki.org/emacs/EmacsWget") (home-page "http://www.emacswiki.org/emacs/EmacsWget")
(synopsis "Simple file downloader for Emacs based on wget") (synopsis "Simple file downloader for Emacs based on wget")
(description (description
@ -993,15 +994,16 @@ within a specified width. It is useful for displaying long track titles.")
"doc_DATA =\n"))))) "doc_DATA =\n")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-cons-after '(#:phases
'install 'post-install (modify-phases %standard-phases
(lambda* (#:key outputs #:allow-other-keys) (add-after 'install 'post-install
;; Add an autoloads file with the right name for guix.el. (lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) ;; Add an autoloads file with the right name for guix.el.
(site (string-append out "/share/emacs/site-lisp"))) (let* ((out (assoc-ref outputs "out"))
(with-directory-excursion site (site (string-append out "/share/emacs/site-lisp")))
(symlink "bbdb-loaddefs.el" "bbdb-autoloads.el")))) (with-directory-excursion site
%standard-phases))) (symlink "bbdb-loaddefs.el" "bbdb-autoloads.el")))
#t)))))
(native-inputs `(("emacs" ,emacs-minimal))) (native-inputs `(("emacs" ,emacs-minimal)))
(home-page "http://savannah.nongnu.org/projects/bbdb/") (home-page "http://savannah.nongnu.org/projects/bbdb/")
(synopsis "Contact management utility for Emacs") (synopsis "Contact management utility for Emacs")

View File

@ -191,28 +191,27 @@ utilities.")
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'use-wish8.6 (add-after 'unpack 'use-wish8.6
(lambda _ (lambda _
(substitute* "configure" (substitute* "configure"
(("wish85") "wish8.6"))) (("wish85") "wish8.6"))
(alist-cons-after #t))
'install 'wrap (add-after 'install 'wrap
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
;; FIXME: Mesa tries to dlopen libudev.so.0 and fails. Pending a ;; FIXME: Mesa tries to dlopen libudev.so.0 and fails. Pending a
;; fix of the mesa package we wrap the pcb executable such that ;; fix of the mesa package we wrap the pcb executable such that
;; Mesa can find libudev.so.0 through LD_LIBRARY_PATH. ;; Mesa can find libudev.so.0 through LD_LIBRARY_PATH.
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
(path (string-append (assoc-ref inputs "udev") "/lib"))) (path (string-append (assoc-ref inputs "udev") "/lib")))
(wrap-program (string-append out "/bin/pcb") (wrap-program (string-append out "/bin/pcb")
`("LD_LIBRARY_PATH" ":" prefix (,path))))) `("LD_LIBRARY_PATH" ":" prefix (,path))))
(alist-cons-before #t))
'check 'pre-check (add-before 'check 'pre-check
(lambda _ (lambda _
(system "Xvfb :1 &") (system "Xvfb :1 &")
(setenv "DISPLAY" ":1") (setenv "DISPLAY" ":1")
#t) #t)))))
%standard-phases)))))
(inputs (inputs
`(("dbus" ,dbus) `(("dbus" ,dbus)
("mesa" ,mesa) ("mesa" ,mesa)

View File

@ -52,31 +52,31 @@
(patches (search-patches "ath9k-htc-firmware-objcopy.patch")))) (patches (search-patches "ath9k-htc-firmware-objcopy.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-cons-before '(#:phases
'configure 'pre-configure (modify-phases %standard-phases
(lambda* (#:key inputs #:allow-other-keys) (add-before 'configure 'pre-configure
(chdir "target_firmware") (lambda* (#:key inputs #:allow-other-keys)
(chdir "target_firmware")
;; 'configure' is a simple script that runs 'cmake' with ;; 'configure' is a simple script that runs 'cmake' with
;; the right flags. ;; the right flags.
(substitute* "configure" (substitute* "configure"
(("^TOOLCHAIN=.*$") (("^TOOLCHAIN=.*$")
(string-append "TOOLCHAIN=" (string-append "TOOLCHAIN="
(assoc-ref inputs "cross-gcc") (assoc-ref inputs "cross-gcc")
"\n")))) "\n")))
(alist-replace #t))
'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
(fw-dir (string-append out "/lib/firmware"))) (fw-dir (string-append out "/lib/firmware")))
(mkdir-p fw-dir) (mkdir-p fw-dir)
(for-each (lambda (file) (for-each (lambda (file)
(copy-file file (copy-file file
(string-append fw-dir "/" (string-append fw-dir "/"
(basename file)))) (basename file))))
(find-files "." "\\.fw$")) (find-files "." "\\.fw$"))
#t)) #t))))
%standard-phases))
#:tests? #f)) #:tests? #f))
;; The firmware is cross-compiled using a "bare bones" compiler (no libc.) ;; The firmware is cross-compiled using a "bare bones" compiler (no libc.)

View File

@ -62,17 +62,16 @@
"CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no") "CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no")
#:tests? #f ; no 'check' target #:tests? #f ; no 'check' target
#:phases #:phases
(alist-delete (modify-phases %standard-phases
'configure (delete 'configure)
(alist-cons-before (add-before 'build 'patch-exec-paths
'build 'patch-exec-paths (lambda* (#:key inputs #:allow-other-keys)
(lambda* (#:key inputs #:allow-other-keys) (substitute* "dmi.c"
(substitute* "dmi.c" (("\"dmidecode\"")
(("\"dmidecode\"") (format #f "~S"
(format #f "~S" (string-append (assoc-ref inputs "dmidecode")
(string-append (assoc-ref inputs "dmidecode") "/sbin/dmidecode"))))
"/sbin/dmidecode"))))) #t)))))
%standard-phases))))
(home-page "http://flashrom.org/") (home-page "http://flashrom.org/")
(synopsis "Identify, read, write, erase, and verify ROM/flash chips") (synopsis "Identify, read, write, erase, and verify ROM/flash chips")
(description (description

View File

@ -63,27 +63,27 @@
(list "--enable-shared" (list "--enable-shared"
(string-append "DSOFLAGS=-Wl,-rpath=" %output "/lib")) (string-append "DSOFLAGS=-Wl,-rpath=" %output "/lib"))
#:phases #:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'patch-makeinclude (add-before 'configure 'patch-makeinclude
(lambda _ (lambda _
(substitute* "makeinclude.in" (substitute* "makeinclude.in"
(("/bin/sh") (which "sh")))) (("/bin/sh") (which "sh")))
(alist-cons-after #t))
'install 'patch-config (add-after 'install 'patch-config
;; Provide -L flags for image libraries when querying fltk-config to ;; Provide -L flags for image libraries when querying fltk-config to
;; avoid propagating inputs. ;; avoid propagating inputs.
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(use-modules (srfi srfi-26)) (use-modules (srfi srfi-26))
(let* ((conf (string-append (assoc-ref outputs "out") (let* ((conf (string-append (assoc-ref outputs "out")
"/bin/fltk-config")) "/bin/fltk-config"))
(jpeg (assoc-ref inputs "libjpeg")) (jpeg (assoc-ref inputs "libjpeg"))
(png (assoc-ref inputs "libpng")) (png (assoc-ref inputs "libpng"))
(zlib (assoc-ref inputs "zlib"))) (zlib (assoc-ref inputs "zlib")))
(substitute* conf (substitute* conf
(("-ljpeg") (string-append "-L" jpeg "/lib -ljpeg")) (("-ljpeg") (string-append "-L" jpeg "/lib -ljpeg"))
(("-lpng") (string-append "-L" png "/lib -lpng")) (("-lpng") (string-append "-L" png "/lib -lpng"))
(("-lz") (string-append "-L" zlib "/lib -lz"))))) (("-lz") (string-append "-L" zlib "/lib -lz"))))
%standard-phases)))) #t)))))
(home-page "http://www.fltk.org") (home-page "http://www.fltk.org")
(synopsis "3D C++ GUI library") (synopsis "3D C++ GUI library")
(description "FLTK is a C++ GUI toolkit providing modern GUI functionality (description "FLTK is a C++ GUI toolkit providing modern GUI functionality

View File

@ -357,23 +357,22 @@ manager for the current system.")
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
'(#:phases '(#:phases
(alist-replace (modify-phases %standard-phases
'check (replace 'check
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(setenv "XDG_DATA_DIRS" (setenv "XDG_DATA_DIRS"
(string-append (assoc-ref inputs "shared-mime-info") (string-append (assoc-ref inputs "shared-mime-info")
"/share/")) "/share/"))
(substitute* "test/test-icon.py" (substitute* "test/test-icon.py"
(("/usr/share/icons/hicolor/index.theme") (("/usr/share/icons/hicolor/index.theme")
(string-append (assoc-ref inputs "hicolor-icon-theme") (string-append (assoc-ref inputs "hicolor-icon-theme")
"/share/icons/hicolor/index.theme"))) "/share/icons/hicolor/index.theme")))
;; One test fails with: ;; One test fails with:
;; AssertionError: 'x-apple-ios-png' != 'png' ;; AssertionError: 'x-apple-ios-png' != 'png'
(substitute* "test/test-mime.py" (substitute* "test/test-mime.py"
(("self.check_mimetype\\(imgpng, 'image', 'png'\\)") "#")) (("self.check_mimetype\\(imgpng, 'image', 'png'\\)") "#"))
(zero? (system* "nosetests" "-v"))) (zero? (system* "nosetests" "-v")))))))
%standard-phases)))
(native-inputs (native-inputs
`(("shared-mime-info" ,shared-mime-info) ;for tests `(("shared-mime-info" ,shared-mime-info) ;for tests
("hicolor-icon-theme" ,hicolor-icon-theme) ;for tests ("hicolor-icon-theme" ,hicolor-icon-theme) ;for tests

View File

@ -122,15 +122,16 @@ most common applications of GD involve website development.")
(assoc-ref %build-inputs i))) (assoc-ref %build-inputs i)))
'("zlib" "png" "ft" "jpeg" "fontconfig")) '("zlib" "png" "ft" "jpeg" "fontconfig"))
#:tests? #f ;; Failed 1/2 test programs. 1/12 subtests failed. #:tests? #f ;; Failed 1/2 test programs. 1/12 subtests failed.
#:phases (alist-cons-after #:phases
'configure 'clear-autogenerated-files (modify-phases %standard-phases
(lambda _ (add-after 'configure 'clear-autogenerated-files
;; This file is autogenerated by its .PLS script at build (lambda _
;; time, but file creation fails because that file already ;; This file is autogenerated by its .PLS script at build
;; exists in the distribution with non-writable ;; time, but file creation fails because that file already
;; permissions, so delete it first. ;; exists in the distribution with non-writable
(delete-file "bdf_scripts/bdf2gdfont.pl")) ;; permissions, so delete it first.
%standard-phases))) (delete-file "bdf_scripts/bdf2gdfont.pl")
#t)))))
(home-page "http://search.cpan.org/dist/GD") (home-page "http://search.cpan.org/dist/GD")
(synopsis "Perl interface to the GD graphics library") (synopsis "Perl interface to the GD graphics library")
(description "GD.pm is an autoloadable interface module for libgd, a (description "GD.pm is an autoloadable interface module for libgd, a

View File

@ -49,10 +49,7 @@
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
(arguments (arguments
`(#:tests? #f ; there is no check target `(#:tests? #f ; there is no check target
#:phases #:phases (modify-phases %standard-phases (delete 'configure))
(alist-delete
'configure
%standard-phases)
#:make-flags #:make-flags
(let ((out (assoc-ref %outputs "out"))) (let ((out (assoc-ref %outputs "out")))
(list (string-append "INSTALLROOT=" out) (list (string-append "INSTALLROOT=" out)

View File

@ -427,7 +427,7 @@ glxgears, glxheads, and glxinfo.")
(("/lib64") "/lib"))))) (("/lib64") "/lib")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-delete 'configure %standard-phases) '(#:phases (modify-phases %standard-phases (delete 'configure))
#:make-flags (list (string-append "GLEW_PREFIX=" #:make-flags (list (string-append "GLEW_PREFIX="
(assoc-ref %outputs "out")) (assoc-ref %outputs "out"))
(string-append "GLEW_DEST=" (string-append "GLEW_DEST="

View File

@ -504,22 +504,23 @@ has an ease of use unmatched by other C++ callback libraries.")
"1926b3adx903hzvdp8glblsgjyadzqnwgkj8hg605d4wv98m1n0z")))) "1926b3adx903hzvdp8glblsgjyadzqnwgkj8hg605d4wv98m1n0z"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases (alist-cons-before `(#:phases
'build 'pre-build (modify-phases %standard-phases
(lambda _ (add-before 'build 'pre-build
;; This test uses /etc/fstab as an example file to read (lambda _
;; from; choose a better example. ;; This test uses /etc/fstab as an example file to read
(substitute* "tests/giomm_simple/main.cc" ;; from; choose a better example.
(("/etc/fstab") (substitute* "tests/giomm_simple/main.cc"
(string-append (getcwd) (("/etc/fstab")
"/tests/giomm_simple/main.cc"))) (string-append (getcwd)
"/tests/giomm_simple/main.cc")))
;; This test does a DNS lookup, and then expects to be able ;; This test does a DNS lookup, and then expects to be able
;; to open a TLS session; just skip it. ;; to open a TLS session; just skip it.
(substitute* "tests/giomm_tls_client/main.cc" (substitute* "tests/giomm_tls_client/main.cc"
(("Gio::init.*$") (("Gio::init.*$")
"return 77;\n"))) "return 77;\n"))
%standard-phases))) #t)))))
(native-inputs `(("pkg-config" ,pkg-config) (native-inputs `(("pkg-config" ,pkg-config)
("glib" ,glib "bin"))) ("glib" ,glib "bin")))
(propagated-inputs (propagated-inputs

View File

@ -809,16 +809,16 @@ for settings shared by various components of the GNOME desktop.")
("perl-xml-simple" ,perl-xml-simple))) ("perl-xml-simple" ,perl-xml-simple)))
(arguments (arguments
'(#:phases '(#:phases
(alist-cons-after (modify-phases %standard-phases
'install 'set-load-paths (add-after 'install 'set-load-paths
;; Tell 'icon-name-mapping' where XML::Simple is. ;; Tell 'icon-name-mapping' where XML::Simple is.
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
(prog (string-append out "/libexec/icon-name-mapping"))) (prog (string-append out "/libexec/icon-name-mapping")))
(wrap-program (wrap-program
prog prog
`("PERL5LIB" = ,(list (getenv "PERL5LIB")))))) `("PERL5LIB" = ,(list (getenv "PERL5LIB")))))
%standard-phases))) #t)))))
(home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification") (home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification")
(synopsis (synopsis
"Utility to implement the Freedesktop Icon Naming Specification") "Utility to implement the Freedesktop Icon Naming Specification")
@ -1260,12 +1260,12 @@ functionality was designed to be as reusable and portable as possible.")
'("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS") '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
;; ... which they then completly ignore !! ;; ... which they then completly ignore !!
#:phases #:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'ignore-deprecations (add-before 'configure 'ignore-deprecations
(lambda _ (lambda _
(substitute* "linc2/src/Makefile.in" (substitute* "linc2/src/Makefile.in"
(("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))) (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
%standard-phases))) #t)))))
(inputs `(("glib" ,glib) (inputs `(("glib" ,glib)
("libidl" ,libidl))) ("libidl" ,libidl)))
(native-inputs (native-inputs
@ -1300,12 +1300,12 @@ featuring mature C, C++ and Python bindings.")
'("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS") '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
;; ... which they then completly ignore !! ;; ... which they then completly ignore !!
#:phases #:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'ignore-deprecations (add-before 'configure 'ignore-deprecations
(lambda _ (lambda _
(substitute* "activation-server/Makefile.in" (substitute* "activation-server/Makefile.in"
(("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))) (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
%standard-phases))) #t)))))
(inputs `(("popt" ,popt) (inputs `(("popt" ,popt)
("libxml2" ,libxml2))) ("libxml2" ,libxml2)))
;; The following are Required by the .pc file ;; The following are Required by the .pc file
@ -1408,19 +1408,18 @@ designed to be accessed through the MIME functions in GnomeVFS.")
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'ignore-deprecations (add-before 'configure 'ignore-deprecations
(lambda _ (lambda _
(substitute* '("libgnomevfs/Makefile.in" (substitute* '("libgnomevfs/Makefile.in"
"daemon/Makefile.in") "daemon/Makefile.in")
(("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")) (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
#t) #t))
(alist-cons-before (add-before 'configure 'patch-test-async-cancel-to-never-fail
'configure 'patch-test-async-cancel-to-never-fail (lambda _
(lambda _ (substitute* "test/test-async-cancel.c"
(substitute* "test/test-async-cancel.c" (("EXIT_FAILURE") "77"))
(("EXIT_FAILURE") "77"))) #t)))))
%standard-phases))))
(inputs `(("libxml2" ,libxml2) (inputs `(("libxml2" ,libxml2)
("dbus-glib" ,dbus-glib) ("dbus-glib" ,dbus-glib)
("gconf" ,gconf) ("gconf" ,gconf)
@ -1455,12 +1454,12 @@ to access local and remote files with a single consistent API.")
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'enable-deprecated (add-before 'configure 'enable-deprecated
(lambda _ (lambda _
(substitute* "libgnome/Makefile.in" (substitute* "libgnome/Makefile.in"
(("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))) (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
%standard-phases))) #t)))))
(inputs `(("libxml2" ,libxml2))) (inputs `(("libxml2" ,libxml2)))
(native-inputs (native-inputs
`(("glib" ,glib "bin") ; for glib-mkenums, etc. `(("glib" ,glib "bin") ; for glib-mkenums, etc.
@ -1695,18 +1694,17 @@ since ca. 2006, when GTK+ itself incorporated printing support.")
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-before (modify-phases %standard-phases
'check 'start-xserver (add-before 'check 'start-xserver
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(let ((xorg-server (assoc-ref inputs "xorg-server")) (let ((xorg-server (assoc-ref inputs "xorg-server"))
(disp ":1")) (disp ":1"))
(setenv "HOME" (getcwd)) (setenv "HOME" (getcwd))
(setenv "DISPLAY" disp) (setenv "DISPLAY" disp)
;; There must be a running X server and make check doesn't start one. ;; There must be a running X server and make check doesn't start one.
;; Therefore we must do it. ;; Therefore we must do it.
(zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp))))) (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp)))))))))
%standard-phases)))
;; Mentioned as Required by the .pc file ;; Mentioned as Required by the .pc file
(propagated-inputs `(("libxml2" ,libxml2))) (propagated-inputs `(("libxml2" ,libxml2)))
(inputs (inputs
@ -1820,14 +1818,13 @@ Hints specification (EWMH).")
(base32 "05fvzbs5bin05bbsr4dp79aiva3lnq0a3a40zq55i13vnsz70l0n")))) (base32 "05fvzbs5bin05bbsr4dp79aiva3lnq0a3a40zq55i13vnsz70l0n"))))
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'fix-pcre-check (add-after 'unpack 'fix-pcre-check
(lambda _ (lambda _
;; Only glib.h can be included directly. See ;; Only glib.h can be included directly. See
;; https://bugzilla.gnome.org/show_bug.cgi?id=670316 ;; https://bugzilla.gnome.org/show_bug.cgi?id=670316
(substitute* "configure" (substitute* "configure"
(("glib/gregex\\.h") "glib.h")) #t) (("glib/gregex\\.h") "glib.h")) #t)))
%standard-phases)
,@(package-arguments goffice))) ,@(package-arguments goffice)))
(propagated-inputs (propagated-inputs
@ -2200,19 +2197,19 @@ and RDP protocols.")
(assoc-ref %outputs "out") "/lib") (assoc-ref %outputs "out") "/lib")
"--disable-gtk-doc-html") ; FIXME: requires gtk-doc "--disable-gtk-doc-html") ; FIXME: requires gtk-doc
#:phases #:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'fix-docbook (add-before 'configure 'fix-docbook
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "docs/Makefile.in" (substitute* "docs/Makefile.in"
(("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl") (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
(string-append (assoc-ref inputs "docbook-xsl") (string-append (assoc-ref inputs "docbook-xsl")
"/xml/xsl/docbook-xsl-" "/xml/xsl/docbook-xsl-"
,(package-version docbook-xsl) ,(package-version docbook-xsl)
"/manpages/docbook.xsl"))) "/manpages/docbook.xsl")))
(setenv "XML_CATALOG_FILES" (setenv "XML_CATALOG_FILES"
(string-append (assoc-ref inputs "docbook-xml") (string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook/catalog.xml"))) "/xml/dtd/docbook/catalog.xml"))
%standard-phases))) #t)))))
(home-page "https://developer.gnome.org/dconf") (home-page "https://developer.gnome.org/dconf")
(synopsis "Low-level GNOME configuration system") (synopsis "Low-level GNOME configuration system")
(description "Dconf is a low-level configuration system. Its main purpose (description "Dconf is a low-level configuration system. Its main purpose

View File

@ -41,14 +41,15 @@
`(#:configure-flags `(#:configure-flags
(list (string-append (list (string-append
"--with-install-dir=" %output "/share/gprolog")) "--with-install-dir=" %output "/share/gprolog"))
#:phases (alist-cons-before #:phases
'configure 'change-dir-n-fix-shells (modify-phases %standard-phases
(lambda _ (add-before 'configure 'change-dir-n-fix-shells
(chdir "src") (lambda _
(substitute* "configure" (chdir "src")
(("-/bin/sh") (string-append "-" (which "sh"))) (substitute* "configure"
(("= /bin/sh") (string-append "= " (which "sh"))))) (("-/bin/sh") (string-append "-" (which "sh")))
%standard-phases))) (("= /bin/sh") (string-append "= " (which "sh"))))
#t)))))
(home-page "https://www.gnu.org/software/gprolog/") (home-page "https://www.gnu.org/software/gprolog/")
(synopsis "Prolog compiler") (synopsis "Prolog compiler")
(description (description

View File

@ -102,15 +102,16 @@ manipulate maps.")
"006a6l8p38a4h7y2959sqrmjjn29d8pd50zj9nypcp5ph18nybjb")))) "006a6l8p38a4h7y2959sqrmjjn29d8pd50zj9nypcp5ph18nybjb"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases (alist-replace `(#:phases
'configure (modify-phases %standard-phases
(lambda* (#:key inputs outputs #:allow-other-keys) (replace 'configure
;; This is a rudimentary build system. (lambda* (#:key inputs outputs #:allow-other-keys)
(substitute* "Makefile" ;; This is a rudimentary build system.
(("prefix[[:blank:]]*=.*$") (substitute* "Makefile"
(string-append "prefix = " (assoc-ref outputs "out") (("prefix[[:blank:]]*=.*$")
"\n")))) (string-append "prefix = " (assoc-ref outputs "out")
%standard-phases) "\n")))
#t)))
#:tests? #f)) #:tests? #f))
(inputs (inputs
`(("gtk+" ,gtk+-2) `(("gtk+" ,gtk+-2)

View File

@ -630,13 +630,12 @@ and understanding different BRDFs (and other component functions).")
(string-append "--x-libraries=" (assoc-ref %build-inputs "libx11") (string-append "--x-libraries=" (assoc-ref %build-inputs "libx11")
"/lib")) "/lib"))
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'autoreconf (add-after 'unpack 'autoreconf
(lambda _ (lambda _
;; let's call configure from configure phase and not now ;; let's call configure from configure phase and not now
(substitute* "autogen.sh" (("./configure") "# ./configure")) (substitute* "autogen.sh" (("./configure") "# ./configure"))
(zero? (system* "sh" "autogen.sh"))) (zero? (system* "sh" "autogen.sh")))))))
%standard-phases)))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("libtool" ,libtool) ("libtool" ,libtool)

View File

@ -279,16 +279,17 @@ functions which were removed.")
"0g7s5mp14qgbfjdql0k1s8464r21g47ssn5dws6jazsnw6njhl0l")))) "0g7s5mp14qgbfjdql0k1s8464r21g47ssn5dws6jazsnw6njhl0l"))))
(build-system waf-build-system) (build-system waf-build-system)
(arguments (arguments
`(#:phases (alist-cons-before `(#:phases
'configure 'set-flags (modify-phases %standard-phases
(lambda* (#:key outputs #:allow-other-keys) (add-before 'configure 'set-flags
;; Compile with C++11, required by gtkmm. (lambda* (#:key outputs #:allow-other-keys)
(setenv "CXXFLAGS" "-std=c++11") ;; Compile with C++11, required by gtkmm.
;; Allow 'bin/ganv_bench' to find libganv-1.so. (setenv "CXXFLAGS" "-std=c++11")
(setenv "LDFLAGS" ;; Allow 'bin/ganv_bench' to find libganv-1.so.
(string-append "-Wl,-rpath=" (setenv "LDFLAGS"
(assoc-ref outputs "out") "/lib"))) (string-append "-Wl,-rpath="
%standard-phases) (assoc-ref outputs "out") "/lib"))
#t)))
#:tests? #f)) ; no check target #:tests? #f)) ; no check target
(inputs (inputs
`(("gtk" ,gtk+-2) `(("gtk" ,gtk+-2)
@ -349,24 +350,24 @@ diagrams.")
`(#:phases `(#:phases
;; Unfortunately, some of the tests in "make check" are highly dependent ;; Unfortunately, some of the tests in "make check" are highly dependent
;; on the environment therefore, some black magic is required. ;; on the environment therefore, some black magic is required.
(alist-cons-before (modify-phases %standard-phases
'check 'start-xserver (add-before 'check 'start-xserver
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(let ((xorg-server (assoc-ref inputs "xorg-server")) (let ((xorg-server (assoc-ref inputs "xorg-server"))
(mime (assoc-ref inputs "shared-mime-info"))) (mime (assoc-ref inputs "shared-mime-info")))
;; There must be a running X server and make check doesn't start one. ;; There must be a running X server and make check doesn't start one.
;; Therefore we must do it. ;; Therefore we must do it.
(system (format #f "~a/bin/Xvfb :1 &" xorg-server)) (system (format #f "~a/bin/Xvfb :1 &" xorg-server))
(setenv "DISPLAY" ":1") (setenv "DISPLAY" ":1")
;; The .lang files must be found in $XDG_DATA_HOME/gtksourceview-2.0 ;; The .lang files must be found in $XDG_DATA_HOME/gtksourceview-2.0
(system "ln -s gtksourceview gtksourceview-2.0") (system "ln -s gtksourceview gtksourceview-2.0")
(setenv "XDG_DATA_HOME" (getcwd)) (setenv "XDG_DATA_HOME" (getcwd))
;; Finally, the mimetypes must be available. ;; Finally, the mimetypes must be available.
(setenv "XDG_DATA_DIRS" (string-append mime "/share/")) )) (setenv "XDG_DATA_DIRS" (string-append mime "/share/")))
%standard-phases))) #t)))))
(synopsis "Widget that extends the standard GTK+ 2.x 'GtkTextView' widget") (synopsis "Widget that extends the standard GTK+ 2.x 'GtkTextView' widget")
(description (description
"GtkSourceView is a portable C library that extends the standard GTK+ "GtkSourceView is a portable C library that extends the standard GTK+
@ -875,18 +876,19 @@ images onto Cairo surfaces.")
"godir = $(moddir)\n"))))) "godir = $(moddir)\n")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-cons-after '(#:phases
'install 'post-install (modify-phases %standard-phases
(lambda* (#:key inputs outputs #:allow-other-keys) (add-after 'install 'post-install
(let* ((out (assoc-ref outputs "out")) (lambda* (#:key inputs outputs #:allow-other-keys)
(bin (string-append out "/bin")) (let* ((out (assoc-ref outputs "out"))
(guile (assoc-ref inputs "guile"))) (bin (string-append out "/bin"))
(substitute* (find-files bin ".*") (guile (assoc-ref inputs "guile")))
(("guile") (substitute* (find-files bin ".*")
(string-append guile "/bin/guile -L " (("guile")
out "/share/guile/site/2.0 -C " (string-append guile "/bin/guile -L "
out "/share/guile/site/2.0 "))))) out "/share/guile/site/2.0 -C "
%standard-phases))) out "/share/guile/site/2.0 "))))
#t)))))
(native-inputs `(("pkg-config" ,pkg-config))) (native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("guile" ,guile-2.2))) (inputs `(("guile" ,guile-2.2)))
(propagated-inputs (propagated-inputs
@ -1160,7 +1162,7 @@ extensive documentation, including API reference and a tutorial.")
`(#:python ,python-2 `(#:python ,python-2
,@(substitute-keyword-arguments (package-arguments python-pycairo) ,@(substitute-keyword-arguments (package-arguments python-pycairo)
((#:phases phases) ((#:phases phases)
`(alist-delete 'patch-waf ,phases)) `(modify-phases ,phases (delete 'patch-waf)))
((#:native-inputs native-inputs) ((#:native-inputs native-inputs)
`(alist-delete "python-waf" ,native-inputs))))) `(alist-delete "python-waf" ,native-inputs)))))
;; Dual-licensed under LGPL 2.1 or Mozilla Public License 1.1 ;; Dual-licensed under LGPL 2.1 or Mozilla Public License 1.1
@ -1254,7 +1256,7 @@ write GNOME applications.")
#:test-target "test" #:test-target "test"
#:tests? #f ; Tests fail with "Gtk cannot open display:" #:tests? #f ; Tests fail with "Gtk cannot open display:"
#:phases #:phases
(alist-delete 'configure %standard-phases))) (modify-phases %standard-phases (delete 'configure))))
(build-system gnu-build-system) (build-system gnu-build-system)
(home-page "https://pwmt.org/projects/girara/") (home-page "https://pwmt.org/projects/girara/")
(synopsis "Library for minimalistic gtk+3 user interfaces") (synopsis "Library for minimalistic gtk+3 user interfaces")

View File

@ -83,50 +83,51 @@ dependencies.")
#:configure-flags (list (string-append "--datadir=" #:configure-flags (list (string-append "--datadir="
(assoc-ref %outputs "out") (assoc-ref %outputs "out")
"/share/guile/site/2.0")) "/share/guile/site/2.0"))
#:phases (alist-cons-before #:phases
'configure 'set-go-directory (modify-phases %standard-phases
(lambda* (#:key outputs #:allow-other-keys) (add-before 'configure 'set-go-directory
;; Install .go files to $out/share/guile/site/2.0. (lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))) ;; Install .go files to $out/share/guile/site/2.0.
(substitute* "module/Makefile.in" (let ((out (assoc-ref outputs "out")))
(("^wmdir = .*$") (substitute* "module/Makefile.in"
(string-append "wmdir = " out (("^wmdir = .*$")
"/share/guile/site/2.0\n"))))) (string-append "wmdir = " out
(alist-cons-after "/share/guile/site/2.0\n"))))
'install 'set-load-path #t))
(lambda* (#:key inputs outputs #:allow-other-keys) (add-after 'install 'set-load-path
;; Put Guile-XCB's and Guile-WM's modules in the (lambda* (#:key inputs outputs #:allow-other-keys)
;; search path of PROG. ;; Put Guile-XCB's and Guile-WM's modules in the
(let* ((out (assoc-ref outputs "out")) ;; search path of PROG.
(prog (string-append out "/bin/guile-wm")) (let* ((out (assoc-ref outputs "out"))
(mods (string-append (prog (string-append out "/bin/guile-wm"))
out "/share/guile/site/2.0")) (mods (string-append
(xcb (string-append out "/share/guile/site/2.0"))
(assoc-ref inputs "guile-xcb") (xcb (string-append
"/share/guile/site/2.0"))) (assoc-ref inputs "guile-xcb")
(wrap-program "/share/guile/site/2.0")))
prog (wrap-program
`("GUILE_LOAD_PATH" ":" prefix (,mods ,xcb)) prog
`("GUILE_LOAD_COMPILED_PATH" ":" prefix `("GUILE_LOAD_PATH" ":" prefix (,mods ,xcb))
(,mods ,xcb))))) `("GUILE_LOAD_COMPILED_PATH" ":" prefix
(alist-cons-after (,mods ,xcb))))
'install 'install-xsession #t))
(lambda* (#:key outputs #:allow-other-keys) (add-after 'install 'install-xsession
;; add a .desktop file to xsessions (lambda* (#:key outputs #:allow-other-keys)
(let ((xsessions (string-append ;; add a .desktop file to xsessions
%output "/share/xsessions"))) (let ((xsessions (string-append
(mkdir-p xsessions) %output "/share/xsessions")))
(call-with-output-file (string-append (mkdir-p xsessions)
xsessions "/guile-wm.desktop") (call-with-output-file (string-append
(lambda (port) xsessions "/guile-wm.desktop")
(format port (lambda (port)
"[Desktop Entry]~@ (format port
"[Desktop Entry]~@
Name=~a~@ Name=~a~@
Comment=~a~@ Comment=~a~@
Exec=~a/bin/guile-wm~@ Exec=~a/bin/guile-wm~@
Type=Application~%" Type=Application~%"
,name ,synopsis %output))))) ,name ,synopsis %output))))
%standard-phases))))) #t)))))
(native-inputs `(("pkg-config" ,pkg-config))) (native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("guile" ,guile-2.0) (inputs `(("guile" ,guile-2.0)
("guile-xcb" ,guile-xcb))) ("guile-xcb" ,guile-xcb)))

View File

@ -94,24 +94,24 @@
(arguments '(#:configure-flags '("--disable-error-on-warning") (arguments '(#:configure-flags '("--disable-error-on-warning")
;; Insert a phase before `configure' to patch things up. ;; Insert a phase before `configure' to patch things up.
#:phases (alist-cons-before #:phases
'configure (modify-phases %standard-phases
'patch-stuff (add-before 'configure 'patch-stuff
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
;; Add a call to `lt_dladdsearchdir' so that ;; Add a call to `lt_dladdsearchdir' so that
;; `libguile-readline.so' & co. are in the ;; `libguile-readline.so' & co. are in the
;; loader's search path. ;; loader's search path.
(substitute* "libguile/dynl.c" (substitute* "libguile/dynl.c"
(("lt_dlinit.*$" match) (("lt_dlinit.*$" match)
(format #f (format #f
" ~a~% lt_dladdsearchdir(\"~a/lib\");~%" " ~a~% lt_dladdsearchdir(\"~a/lib\");~%"
match match
(assoc-ref outputs "out")))) (assoc-ref outputs "out"))))
;; The usual /bin/sh... ;; The usual /bin/sh...
(substitute* "ice-9/popen.scm" (substitute* "ice-9/popen.scm"
(("/bin/sh") (which "sh")))) (("/bin/sh") (which "sh")))
%standard-phases))) #t)))))
(inputs `(("gawk" ,gawk) (inputs `(("gawk" ,gawk)
("readline" ,readline))) ("readline" ,readline)))

View File

@ -39,36 +39,37 @@
"1mdy4aq4campgmnpc2qwq7bsbfhaxfsqdghbyyz2wms4lnfcmyma")))) "1mdy4aq4campgmnpc2qwq7bsbfhaxfsqdghbyyz2wms4lnfcmyma"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases (alist-cons-before `(#:phases
'configure 'fix-sh-n-cp (modify-phases %standard-phases
(lambda _ (add-before 'configure 'fix-sh-n-cp
(substitute* (lambda _
'("configure" (substitute*
"libraries/configure" '("configure"
"packages/time/configure" "libraries/configure"
"packages/base/configure" "packages/time/configure"
"packages/X11/configure" "packages/base/configure"
"packages/HGL/configure" "packages/X11/configure"
"packages/OpenAL/configure" "packages/HGL/configure"
"packages/OpenGL/configure" "packages/OpenAL/configure"
"packages/network/configure" "packages/OpenGL/configure"
"packages/unix/configure" "packages/network/configure"
"packages/Cabal/tests/HSQL/configure" "packages/unix/configure"
"packages/ALUT/configure" "packages/Cabal/tests/HSQL/configure"
"packages/GLUT/configure" "packages/ALUT/configure"
"packages/base/cbits/execvpe.c" "packages/GLUT/configure"
"packages/base/System/Process/Internals.hs" "packages/base/cbits/execvpe.c"
"packages/Cabal/Distribution/attic" "packages/base/System/Process/Internals.hs"
"packages/Cabal/Distribution/Simple/Register.hs" "packages/Cabal/Distribution/attic"
"packages/Cabal/Distribution/Simple/Hugs.hs" "packages/Cabal/Distribution/Simple/Register.hs"
"tools/hugs-hc" "packages/Cabal/Distribution/Simple/Hugs.hs"
"src/machdep.c" "tools/hugs-hc"
"libraries/Makefile.in") "src/machdep.c"
(("/bin/sh") (which "sh"))) "libraries/Makefile.in")
(substitute* '("demos/Makefile.in" (("/bin/sh") (which "sh")))
"libraries/Makefile.in") (substitute* '("demos/Makefile.in"
(("/bin/cp") (which "cp")))) "libraries/Makefile.in")
%standard-phases) (("/bin/cp") (which "cp")))
#t)))
#:tests? #f)) ; no test target #:tests? #f)) ; no test target
;; FIXME: Fails to build with GCC 5. ;; FIXME: Fails to build with GCC 5.
(native-inputs `(("gcc" ,gcc-4.9))) (native-inputs `(("gcc" ,gcc-4.9)))

View File

@ -56,14 +56,13 @@
"02hygsfpd2dljl5lg1vjjg9pizi9jyxd4aiiqzjshz6jax62jm9f")))) "02hygsfpd2dljl5lg1vjjg9pizi9jyxd4aiiqzjshz6jax62jm9f"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases (alist-replace `(#:phases
'install (modify-phases %standard-phases
(lambda _ (replace 'install
(zero? (lambda _
(system* "make" "install-data"))) (zero?
(alist-delete (system* "make" "install-data"))))
'build (delete 'build))
%standard-phases))
;; GNU Mach supports only IA32 currently, so cheat so that we can at ;; GNU Mach supports only IA32 currently, so cheat so that we can at
;; least install its headers. ;; least install its headers.
@ -125,11 +124,12 @@ communication.")
(native-inputs (native-inputs
`(("mig" ,mig))) `(("mig" ,mig)))
(arguments (arguments
`(#:phases (alist-replace `(#:phases
'install (modify-phases %standard-phases
(lambda _ (replace 'install
(zero? (system* "make" "install-headers" "no_deps=t"))) (lambda _
(alist-delete 'build %standard-phases)) (zero? (system* "make" "install-headers" "no_deps=t"))))
(delete 'build))
#:configure-flags '(;; Pretend we're on GNU/Hurd; 'configure' wants #:configure-flags '(;; Pretend we're on GNU/Hurd; 'configure' wants
;; that. ;; that.
@ -164,24 +164,22 @@ Library and other user programs.")
(arguments (arguments
(substitute-keyword-arguments (package-arguments hurd-headers) (substitute-keyword-arguments (package-arguments hurd-headers)
((#:phases _) ((#:phases _)
'(alist-replace '(modify-phases %standard-phases
'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))) (let ((out (assoc-ref outputs "out")))
;; We need to copy libihash.a to the output directory manually, ;; We need to copy libihash.a to the output directory manually,
;; since there is no target for that in the makefile. ;; since there is no target for that in the makefile.
(mkdir-p (string-append out "/include")) (mkdir-p (string-append out "/include"))
(copy-file "libihash/ihash.h" (copy-file "libihash/ihash.h"
(string-append out "/include/ihash.h")) (string-append out "/include/ihash.h"))
(mkdir-p (string-append out "/lib")) (mkdir-p (string-append out "/lib"))
(copy-file "libihash/libihash.a" (copy-file "libihash/libihash.a"
(string-append out "/lib/libihash.a")) (string-append out "/lib/libihash.a"))
#t)) #t)))
(alist-replace (replace 'build
'build (lambda _
(lambda _ (zero? (system* "make" "-Clibihash" "libihash.a"))))))))
(zero? (system* "make" "-Clibihash" "libihash.a")))
%standard-phases)))))
(home-page "https://www.gnu.org/software/hurd/hurd.html") (home-page "https://www.gnu.org/software/hurd/hurd.html")
(synopsis "GNU Hurd libraries") (synopsis "GNU Hurd libraries")
(description (description

View File

@ -65,10 +65,10 @@
"02vhdv16nf4kjna4inpbfy4k3p40bhl7xpc4kh4xvily14146l2b")))) "02vhdv16nf4kjna4inpbfy4k3p40bhl7xpc4kh4xvily14146l2b"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-delete 'configure %standard-phases) '(#:phases (modify-phases %standard-phases (delete 'configure))
#:tests? #f ;FIXME: Requires 'perl-test-command'. #:tests? #f ;FIXME: Requires 'perl-test-command'.
#:make-flags #:make-flags
(list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out"))))) (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out")))))
(inputs `(("imlib2" ,imlib2) (inputs `(("imlib2" ,imlib2)
("curl" ,curl) ("curl" ,curl)
("libpng" ,libpng) ("libpng" ,libpng)
@ -178,9 +178,8 @@ It is the default image viewer on LXDE desktop environment.")
'(#:tests? #f ; no check target '(#:tests? #f ; no check target
#:make-flags (list (string-append "PREFIX=" %output) #:make-flags (list (string-append "PREFIX=" %output)
"CC=gcc") "CC=gcc")
#:phases (alist-delete ;; no configure phase
'configure ; no configure phase #:phases (modify-phases %standard-phases (delete 'configure))))
%standard-phases)))
(inputs (inputs
`(("libx11" ,libx11) `(("libx11" ,libx11)
("imlib2" ,imlib2) ("imlib2" ,imlib2)

View File

@ -79,15 +79,15 @@
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-before (modify-phases %standard-phases
'build 'patch-default-sounds-directory (add-before 'build 'patch-default-sounds-directory
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/sound-theme-spec.c" (substitute* "src/sound-theme-spec.c"
(("@SOUND_THEME_DIRECTORY@") (("@SOUND_THEME_DIRECTORY@")
(string-append (string-append
(assoc-ref inputs "sound-theme-freedesktop") (assoc-ref inputs "sound-theme-freedesktop")
"/share")))) "/share")))
%standard-phases))) #t)))))
(home-page "http://0pointer.de/lennart/projects/libcanberra/") (home-page "http://0pointer.de/lennart/projects/libcanberra/")
(synopsis (synopsis
"Implementation of the XDG Sound Theme and Name Specifications") "Implementation of the XDG Sound Theme and Name Specifications")

View File

@ -1435,22 +1435,22 @@ Linux-based operating systems.")
(native-inputs `(("autoconf" ,autoconf) (native-inputs `(("autoconf" ,autoconf)
("automake" ,automake))) ("automake" ,automake)))
(arguments (arguments
'(#:phases (alist-cons-after '(#:phases
'unpack 'bootstrap (modify-phases %standard-phases
(lambda _ (add-after 'unpack 'bootstrap
;; Fix "field ip6 has incomplete type" errors. (lambda _
(substitute* "libbridge/libbridge.h" ;; Fix "field ip6 has incomplete type" errors.
(("#include <linux/if_bridge.h>") (substitute* "libbridge/libbridge.h"
"#include <linux/in6.h>\n#include <linux/if_bridge.h>")) (("#include <linux/if_bridge.h>")
"#include <linux/in6.h>\n#include <linux/if_bridge.h>"))
;; Ensure that the entire build fails if one of the ;; Ensure that the entire build fails if one of the
;; sub-Makefiles fails. ;; sub-Makefiles fails.
(substitute* "Makefile.in" (substitute* "Makefile.in"
(("\\$\\(MAKE\\) \\$\\(MFLAGS\\) -C \\$\\$x ;") (("\\$\\(MAKE\\) \\$\\(MFLAGS\\) -C \\$\\$x ;")
"$(MAKE) $(MFLAGS) -C $$x || exit 1;")) "$(MAKE) $(MFLAGS) -C $$x || exit 1;"))
(zero? (system* "autoreconf" "-vf"))) (zero? (system* "autoreconf" "-vf")))))
%standard-phases)
#:tests? #f)) ; no 'check' target #:tests? #f)) ; no 'check' target
(home-page (home-page
@ -1555,7 +1555,7 @@ configuration and monitoring interfaces.")
(arguments (arguments
`(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
"CC=gcc") "CC=gcc")
#:phases (alist-delete 'configure %standard-phases))) #:phases (modify-phases %standard-phases (delete 'configure))))
(home-page "https://wireless.wiki.kernel.org/") (home-page "https://wireless.wiki.kernel.org/")
(synopsis "Tool for configuring wireless devices") (synopsis "Tool for configuring wireless devices")
(description (description
@ -1688,27 +1688,28 @@ processes currently causing I/O.")
(string-append "UDEV_RULES_PATH=" (string-append "UDEV_RULES_PATH="
(assoc-ref %outputs "out") (assoc-ref %outputs "out")
"/lib/udev/rules.d")) "/lib/udev/rules.d"))
#:phases (alist-cons-before #:phases
'build 'set-file-names (modify-phases %standard-phases
(lambda* (#:key inputs #:allow-other-keys) (add-before 'build 'set-file-names
;; libfuse calls out to mount(8) and umount(8). Make sure (lambda* (#:key inputs #:allow-other-keys)
;; it refers to the right ones. ;; libfuse calls out to mount(8) and umount(8). Make sure
(substitute* '("lib/mount_util.c" "util/mount_util.c") ;; it refers to the right ones.
(("/bin/(u?)mount" _ maybe-u) (substitute* '("lib/mount_util.c" "util/mount_util.c")
(string-append (assoc-ref inputs "util-linux") (("/bin/(u?)mount" _ maybe-u)
"/bin/" maybe-u "mount"))) (string-append (assoc-ref inputs "util-linux")
(substitute* '("util/mount.fuse.c") "/bin/" maybe-u "mount")))
(("/bin/sh") (substitute* '("util/mount.fuse.c")
(which "sh"))) (("/bin/sh")
(which "sh")))
;; This hack leads libfuse to search for 'fusermount' in ;; This hack leads libfuse to search for 'fusermount' in
;; $PATH, where it may find a setuid-root binary, instead of ;; $PATH, where it may find a setuid-root binary, instead of
;; trying solely $out/sbin/fusermount and failing because ;; trying solely $out/sbin/fusermount and failing because
;; it's not setuid. ;; it's not setuid.
(substitute* "lib/Makefile" (substitute* "lib/Makefile"
(("-DFUSERMOUNT_DIR=[[:graph:]]+") (("-DFUSERMOUNT_DIR=[[:graph:]]+")
"-DFUSERMOUNT_DIR=\\\"/var/empty\\\""))) "-DFUSERMOUNT_DIR=\\\"/var/empty\\\""))
%standard-phases))) #t)))))
(home-page "https://github.com/libfuse/libfuse") (home-page "https://github.com/libfuse/libfuse")
(synopsis "Support file systems implemented in user space") (synopsis "Support file systems implemented in user space")
(description (description
@ -1786,20 +1787,20 @@ UnionFS-FUSE additionally supports copy-on-write.")
(arguments (arguments
'(#:tests? #f '(#:tests? #f
#:configure-flags '("-DCMAKE_EXE_LINKER_FLAGS=-static") #:configure-flags '("-DCMAKE_EXE_LINKER_FLAGS=-static")
#:phases (alist-cons-after #:phases
'install 'post-install (modify-phases %standard-phases
(lambda* (#:key outputs #:allow-other-keys) (add-after 'install 'post-install
(let* ((out (assoc-ref outputs "out")) (lambda* (#:key outputs #:allow-other-keys)
(exe (string-append out "/bin/unionfs"))) (let* ((out (assoc-ref outputs "out"))
;; By default, 'unionfs' keeps references to (exe (string-append out "/bin/unionfs")))
;; $glibc/share/locale and similar stuff. Remove them. ;; By default, 'unionfs' keeps references to
(remove-store-references exe) ;; $glibc/share/locale and similar stuff. Remove them.
(remove-store-references exe)
;; 'unionfsctl' has references to glibc as well. Since ;; 'unionfsctl' has references to glibc as well. Since
;; we don't need it, remove it. ;; we don't need it, remove it.
(delete-file (string-append out "/bin/unionfsctl")) (delete-file (string-append out "/bin/unionfsctl"))
#t)) #t))))))
%standard-phases)))
(inputs `(("fuse" ,fuse-static))))) (inputs `(("fuse" ,fuse-static)))))
(define-public sshfs-fuse (define-public sshfs-fuse
@ -2374,43 +2375,42 @@ country-specific regulations for the wireless spectrum.")
(string-append "ETCDIR=" %output "/etc") (string-append "ETCDIR=" %output "/etc")
(string-append "MANDIR=" %output "/share/man")) (string-append "MANDIR=" %output "/share/man"))
#:phases #:phases
(alist-delete (modify-phases %standard-phases
'configure (delete 'configure)
(alist-cons-before (add-before 'build 'patch-exec-paths
'build 'patch-exec-paths (lambda* (#:key inputs outputs #:allow-other-keys)
(lambda* (#:key inputs outputs #:allow-other-keys) (substitute* "prog/detect/sensors-detect"
(substitute* "prog/detect/sensors-detect" (("`uname")
(("`uname") (string-append "`" (assoc-ref inputs "coreutils")
(string-append "`" (assoc-ref inputs "coreutils") "/bin/uname"))
"/bin/uname")) (("(`|\")modprobe" all open-quote)
(("(`|\")modprobe" all open-quote) (string-append open-quote
(string-append open-quote (assoc-ref inputs "kmod")
(assoc-ref inputs "kmod") "/bin/modprobe")))
"/bin/modprobe"))) (substitute* '("prog/pwm/pwmconfig"
(substitute* '("prog/pwm/pwmconfig" "prog/pwm/fancontrol")
"prog/pwm/fancontrol") (("gnuplot")
(("gnuplot") (string-append (assoc-ref inputs "gnuplot")
(string-append (assoc-ref inputs "gnuplot") "/bin/gnuplot"))
"/bin/gnuplot")) (("cat ")
(("cat ") (string-append (assoc-ref inputs "coreutils")
(string-append (assoc-ref inputs "coreutils") "/bin/cat "))
"/bin/cat ")) (("egrep ")
(("egrep ") (string-append (assoc-ref inputs "grep")
(string-append (assoc-ref inputs "grep") "/bin/egrep "))
"/bin/egrep ")) (("sed -e")
(("sed -e") (string-append (assoc-ref inputs "sed")
(string-append (assoc-ref inputs "sed") "/bin/sed -e"))
"/bin/sed -e")) (("cut -d")
(("cut -d") (string-append (assoc-ref inputs "coreutils")
(string-append (assoc-ref inputs "coreutils") "/bin/cut -d"))
"/bin/cut -d")) (("sleep ")
(("sleep ") (string-append (assoc-ref inputs "coreutils")
(string-append (assoc-ref inputs "coreutils") "/bin/sleep "))
"/bin/sleep ")) (("readlink -f")
(("readlink -f") (string-append (assoc-ref inputs "coreutils")
(string-append (assoc-ref inputs "coreutils") "/bin/readlink -f")))
"/bin/readlink -f")))) #t)))))
%standard-phases))))
(home-page "http://jdelvare.nerim.net/devel.html#lmsensors") (home-page "http://jdelvare.nerim.net/devel.html#lmsensors")
(synopsis "Utilities to read temperature/voltage/fan sensors") (synopsis "Utilities to read temperature/voltage/fan sensors")
(description (description
@ -2437,7 +2437,7 @@ It works with most newer systems.")
#:make-flags (list (string-append "prefix=" %output) #:make-flags (list (string-append "prefix=" %output)
"CC=gcc") "CC=gcc")
;; no configure script ;; no configure script
#:phases (alist-delete 'configure %standard-phases))) #:phases (modify-phases %standard-phases (delete 'configure))))
(inputs (inputs
`(("perl" ,perl))) `(("perl" ,perl)))
(home-page "http://jdelvare.nerim.net/devel.html#i2ctools") (home-page "http://jdelvare.nerim.net/devel.html#i2ctools")
@ -2466,18 +2466,19 @@ SMBus access.")
("gtk" ,gtk+-2))) ("gtk" ,gtk+-2)))
(native-inputs `(("pkg-config" ,pkg-config))) (native-inputs `(("pkg-config" ,pkg-config)))
(arguments (arguments
`(#:phases (alist-cons-before `(#:phases
'configure 'enable-deprecated (modify-phases %standard-phases
(lambda _ (add-before 'configure 'enable-deprecated
(substitute* "src/Makefile.in" (lambda _
(("-DGDK_DISABLE_DEPRECATED") "") (substitute* "src/Makefile.in"
(("-DGTK_DISABLE_DEPRECATED") ""))) (("-DGDK_DISABLE_DEPRECATED") "")
(alist-cons-before (("-DGTK_DISABLE_DEPRECATED") ""))
'configure 'remove-Werror #t))
(lambda _ (add-before 'configure 'remove-Werror
(substitute* '("configure" "src/Makefile.in") (lambda _
(("-Werror") ""))) (substitute* '("configure" "src/Makefile.in")
%standard-phases)))) (("-Werror") ""))
#t)))))
(home-page "http://www.linuxhardware.org/xsensors/") (home-page "http://www.linuxhardware.org/xsensors/")
(synopsis "Hardware health information viewer") (synopsis "Hardware health information viewer")
(description (description
@ -2493,12 +2494,13 @@ in a digital read-out.")
(source (package-source linux-libre)) (source (package-source linux-libre))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-replace '(#:phases
'configure (modify-phases %standard-phases
(lambda* (#:key inputs #:allow-other-keys) (replace 'configure
(setenv "SHELL_PATH" (which "bash")) (lambda* (#:key inputs #:allow-other-keys)
(chdir "tools/perf")) (setenv "SHELL_PATH" (which "bash"))
%standard-phases) (chdir "tools/perf")
#t)))
#:make-flags (list (string-append "DESTDIR=" #:make-flags (list (string-append "DESTDIR="
(assoc-ref %outputs "out")) (assoc-ref %outputs "out"))
"WERROR=0" "WERROR=0"
@ -2837,22 +2839,23 @@ MPEG-2 and audio over Linux IEEE 1394.")
(string-append "BINDIR=" out "/sbin") (string-append "BINDIR=" out "/sbin")
(string-append "MANDIR=" out "/share/man") (string-append "MANDIR=" out "/share/man")
(string-append "UDEVDIR=" out "/lib/udev"))) (string-append "UDEVDIR=" out "/lib/udev")))
#:phases (alist-cons-before #:phases
'build 'patch-program-paths (modify-phases %standard-phases
(lambda* (#:key inputs #:allow-other-keys) (add-before 'build 'patch-program-paths
(let ((coreutils (assoc-ref inputs "coreutils"))) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "udev-md-raid-arrays.rules" (let ((coreutils (assoc-ref inputs "coreutils")))
(("/usr/bin/(readlink|basename)" all program) (substitute* "udev-md-raid-arrays.rules"
(string-append coreutils "/bin/" program))))) (("/usr/bin/(readlink|basename)" all program)
(alist-cons-before (string-append coreutils "/bin/" program))))
'build 'remove-W-error #t))
(lambda _ (add-before 'build 'remove-W-error
;; We cannot build with -Werror on i686 due to a (lambda _
;; 'sign-compare' warning in util.c. ;; We cannot build with -Werror on i686 due to a
(substitute* "Makefile" ;; 'sign-compare' warning in util.c.
(("-Werror") "")) (substitute* "Makefile"
#t) (("-Werror") ""))
(alist-delete 'configure %standard-phases))) #t))
(delete 'configure))
;;tests must be done as root ;;tests must be done as root
#:tests? #f)) #:tests? #f))
(home-page "http://neil.brown.name/blog/mdadm") (home-page "http://neil.brown.name/blog/mdadm")
@ -2987,7 +2990,7 @@ Linux Device Mapper multipathing driver:
(list "CC=gcc" (string-append "prefix=" %output)) (list "CC=gcc" (string-append "prefix=" %output))
#:test-target "partcheck" ; need root for a full 'check' #:test-target "partcheck" ; need root for a full 'check'
#:phases #:phases
(alist-delete 'configure %standard-phases))) ; no configure script (modify-phases %standard-phases (delete 'configure)))) ; no configure script
(home-page "http://lse.sourceforge.net/io/aio.html") (home-page "http://lse.sourceforge.net/io/aio.html")
(synopsis "Linux-native asynchronous I/O access library") (synopsis "Linux-native asynchronous I/O access library")
(description (description
@ -3642,13 +3645,14 @@ the default @code{nsswitch} and the experimental @code{umich_ldap}.")
;; FIXME: The upstream tarball lacks man pages, and building them would ;; FIXME: The upstream tarball lacks man pages, and building them would
;; require DocBook & co. We used to use Gentoo's pre-built man pages, ;; require DocBook & co. We used to use Gentoo's pre-built man pages,
;; but they vanished. In the meantime, fake it. ;; but they vanished. In the meantime, fake it.
'(#:phases (alist-cons-before '(#:phases
'configure 'fake-docbook (modify-phases %standard-phases
(lambda _ (add-before 'configure 'fake-docbook
(substitute* "Makefile.in" (lambda _
(("^DOCBOOKTOMAN.*$") (substitute* "Makefile.in"
"DOCBOOKTOMAN = true\n"))) (("^DOCBOOKTOMAN.*$")
%standard-phases))) "DOCBOOKTOMAN = true\n"))
#t)))))
(home-page "http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/") (home-page "http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/")
(synopsis "Tools for loading and managing Linux kernel modules") (synopsis "Tools for loading and managing Linux kernel modules")
(description (description

View File

@ -445,36 +445,33 @@ statistical profiler, a code coverage tool, and many other extensions.")
(guix build utils) (guix build utils)
(guix build gnu-build-system)) (guix build gnu-build-system))
#:phases #:phases
(alist-replace (modify-phases %standard-phases
'unpack (replace 'unpack
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(and (zero? (system* "tar" "xzvf" (assoc-ref inputs "ccl"))) (and (zero? (system* "tar" "xzvf" (assoc-ref inputs "ccl")))
(begin (chdir "ccl") #t))) (begin (chdir "ccl") #t))))
(alist-delete (delete 'configure)
'configure (add-before 'build 'pre-build
(alist-cons-before ;; Enter the source directory for the current platform's lisp
'build 'pre-build ;; kernel, and run 'make clean' to remove the precompiled one.
;; Enter the source directory for the current platform's lisp (lambda _
;; kernel, and run 'make clean' to remove the precompiled one. (chdir (string-append
(lambda _ "lisp-kernel/"
(chdir (string-append ,(match (or (%current-target-system) (%current-system))
"lisp-kernel/" ("i686-linux" "linuxx8632")
,(match (or (%current-target-system) (%current-system)) ("x86_64-linux" "linuxx8664")
("i686-linux" "linuxx8632") ("armhf-linux" "linuxarm")
("x86_64-linux" "linuxx8664") ;; Prevent errors when querying this package
("armhf-linux" "linuxarm") ;; on unsupported platforms, e.g. when running
;; Prevent errors when querying this package ;; "guix package --search="
;; on unsupported platforms, e.g. when running (_ "UNSUPPORTED"))))
;; "guix package --search=" (substitute* '("Makefile")
(_ "UNSUPPORTED")))) (("/bin/rm") "rm"))
(substitute* '("Makefile") (setenv "CC" "gcc")
(("/bin/rm") "rm")) (zero? (system* "make" "clean"))))
(setenv "CC" "gcc") ;; XXX Do we need to recompile the heap image as well for Guix?
(zero? (system* "make" "clean"))) ;; For now just use the one we already got in the tarball.
;; XXX Do we need to recompile the heap image as well for Guix? (replace 'install
;; For now just use the one we already got in the tarball.
(alist-replace
'install
(lambda* (#:key outputs inputs #:allow-other-keys) (lambda* (#:key outputs inputs #:allow-other-keys)
;; The lisp kernel built by running 'make' in lisp-kernel/$system ;; The lisp kernel built by running 'make' in lisp-kernel/$system
;; is put back into the original directory, so go back. The heap ;; is put back into the original directory, so go back. The heap
@ -513,8 +510,8 @@ statistical profiler, a code coverage tool, and many other extensions.")
"CCL_DEFAULT_DIRECTORY=" libdir "\n" "CCL_DEFAULT_DIRECTORY=" libdir "\n"
"export CCL_DEFAULT_DIRECTORY\n" "export CCL_DEFAULT_DIRECTORY\n"
"exec " libdir kernel "\n")))) "exec " libdir kernel "\n"))))
(chmod wrapper #o755))) (chmod wrapper #o755))
%standard-phases)))))) #t)))))
(supported-systems '("i686-linux" "x86_64-linux" "armhf-linux")) (supported-systems '("i686-linux" "x86_64-linux" "armhf-linux"))
(home-page "http://ccl.clozure.com/") (home-page "http://ccl.clozure.com/")
(synopsis "Common Lisp implementation") (synopsis "Common Lisp implementation")

View File

@ -28,53 +28,11 @@
;; rules. Instead, it has a makefile that has to be patched to set the ;; rules. Instead, it has a makefile that has to be patched to set the
;; prefix, etc., and it has no makefile rules to build its doc. ;; prefix, etc., and it has no makefile rules to build its doc.
(let ((configure-phase (let ((configure-phase
'(lambda* (#:key outputs #:allow-other-keys) ')
(let ((out (assoc-ref outputs "out"))
(doc (assoc-ref outputs "doc")))
(substitute* "makefile"
(("^PREFIX[[:blank:]]*=.*$")
(string-append "PREFIX = " out "\n"))
(("^LOUTLIBDIR[[:blank:]]*=.*$")
(string-append "LOUTLIBDIR = " out "/lib/lout\n"))
(("^LOUTDOCDIR[[:blank:]]*=.*$")
(string-append "LOUTDOCDIR = " doc "/share/doc/lout\n"))
(("^MANDIR[[:blank:]]*=.*$")
(string-append "MANDIR = " out "/man\n")))
(mkdir out)
(mkdir (string-append out "/bin"))
(mkdir (string-append out "/lib"))
(mkdir (string-append out "/man"))
(mkdir-p (string-append doc "/share/doc/lout")))))
(install-man-phase (install-man-phase
'(lambda* (#:key outputs #:allow-other-keys) ')
(zero? (system* "make" "installman"))))
(doc-phase (doc-phase
'(lambda* (#:key outputs #:allow-other-keys) '))
(define out
(assoc-ref outputs "doc"))
(setenv "PATH"
(string-append (assoc-ref outputs "out")
"/bin:" (getenv "PATH")))
(chdir "doc")
(every (lambda (doc)
(format #t "doc: building `~a'...~%" doc)
(with-directory-excursion doc
(let ((file (string-append out "/share/doc/lout/"
doc ".ps")))
(and (or (file-exists? "outfile.ps")
(zero? (system* "lout" "-r4" "-o"
"outfile.ps" "all")))
(begin
(copy-file "outfile.ps" file)
#t)
(zero? (system* "ps2pdf"
"-dPDFSETTINGS=/prepress"
"-sPAPERSIZE=a4"
file
(string-append out "/share/doc/lout/"
doc ".pdf")))))))
'("design" "expert" "slides" "user")))))
(package (package
(name "lout") (name "lout")
(version "3.40") (version "3.40")
@ -89,23 +47,64 @@
(outputs '("out" "doc")) (outputs '("out" "doc"))
(native-inputs (native-inputs
`(("ghostscript" ,ghostscript))) `(("ghostscript" ,ghostscript)))
(arguments `(#:modules ((guix build utils) (arguments
(guix build gnu-build-system) `(#:modules ((guix build utils)
(srfi srfi-1)) ; we need SRFI-1 (guix build gnu-build-system)
#:tests? #f ; no "check" target (srfi srfi-1)) ; we need SRFI-1
#:tests? #f ; no "check" target
;; Customize the build phases. ;; Customize the build phases.
#:phases (alist-replace #:phases
'configure ,configure-phase (modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(doc (assoc-ref outputs "doc")))
(substitute* "makefile"
(("^PREFIX[[:blank:]]*=.*$")
(string-append "PREFIX = " out "\n"))
(("^LOUTLIBDIR[[:blank:]]*=.*$")
(string-append "LOUTLIBDIR = " out "/lib/lout\n"))
(("^LOUTDOCDIR[[:blank:]]*=.*$")
(string-append "LOUTDOCDIR = " doc "/share/doc/lout\n"))
(("^MANDIR[[:blank:]]*=.*$")
(string-append "MANDIR = " out "/man\n")))
(mkdir out)
(mkdir (string-append out "/bin"))
(mkdir (string-append out "/lib"))
(mkdir (string-append out "/man"))
(mkdir-p (string-append doc "/share/doc/lout")))
#t))
(add-after 'install 'install-man-pages
(lambda* (#:key outputs #:allow-other-keys)
(zero? (system* "make" "installman"))))
(add-after 'install 'install-doc
(lambda* (#:key outputs #:allow-other-keys)
(define out
(assoc-ref outputs "doc"))
(alist-cons-after (setenv "PATH"
'install 'install-man-pages (string-append (assoc-ref outputs "out")
,install-man-phase "/bin:" (getenv "PATH")))
(chdir "doc")
(alist-cons-after (every (lambda (doc)
'install 'install-doc (format #t "doc: building `~a'...~%" doc)
,doc-phase (with-directory-excursion doc
%standard-phases))))) (let ((file (string-append out "/share/doc/lout/"
doc ".ps")))
(and (or (file-exists? "outfile.ps")
(zero? (system* "lout" "-r4" "-o"
"outfile.ps" "all")))
(begin
(copy-file "outfile.ps" file)
#t)
(zero? (system* "ps2pdf"
"-dPDFSETTINGS=/prepress"
"-sPAPERSIZE=a4"
file
(string-append out "/share/doc/lout/"
doc ".pdf")))))))
'("design" "expert" "slides" "user")))))))
(synopsis "Document layout system") (synopsis "Document layout system")
(description (description
"The Lout document formatting system reads a high-level description of "The Lout document formatting system reads a high-level description of

View File

@ -124,7 +124,7 @@ for configuration, scripting, and rapid prototyping.")
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:tests? #f ;luajit is distributed without tests '(#:tests? #f ;luajit is distributed without tests
#:phases (alist-delete 'configure %standard-phases) #:phases (modify-phases %standard-phases (delete 'configure))
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))))) #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))))
(home-page "http://www.luajit.org/") (home-page "http://www.luajit.org/")
(synopsis "Just in time compiler for Lua programming language version 5.1") (synopsis "Just in time compiler for Lua programming language version 5.1")

View File

@ -376,54 +376,50 @@ sample proximities between pairs of cases.")
(arguments (arguments
'(#:tests? #f ;no check target '(#:tests? #f ;no check target
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'delete-broken-symlinks (add-after 'unpack 'delete-broken-symlinks
(lambda _ (lambda _
(for-each delete-file '("applications/arts/data" (for-each delete-file '("applications/arts/data"
"applications/asp/data" "applications/asp/data"
"applications/easysvm/data" "applications/easysvm/data"
"applications/msplicer/data" "applications/msplicer/data"
"applications/ocr/data" "applications/ocr/data"
"examples/documented/data" "examples/documented/data"
"examples/documented/matlab_static" "examples/documented/matlab_static"
"examples/documented/octave_static" "examples/documented/octave_static"
"examples/undocumented/data" "examples/undocumented/data"
"examples/undocumented/matlab_static" "examples/undocumented/matlab_static"
"examples/undocumented/octave_static" "examples/undocumented/octave_static"
"tests/integration/data" "tests/integration/data"
"tests/integration/matlab_static" "tests/integration/matlab_static"
"tests/integration/octave_static" "tests/integration/octave_static"
"tests/integration/python_modular/tests")) "tests/integration/python_modular/tests"))
#t) #t))
(alist-cons-after (add-after 'unpack 'change-R-target-path
'unpack 'change-R-target-path (lambda* (#:key outputs #:allow-other-keys)
(lambda* (#:key outputs #:allow-other-keys) (substitute* '("src/interfaces/r_modular/CMakeLists.txt"
(substitute* '("src/interfaces/r_modular/CMakeLists.txt" "src/interfaces/r_static/CMakeLists.txt"
"src/interfaces/r_static/CMakeLists.txt" "examples/undocumented/r_modular/CMakeLists.txt")
"examples/undocumented/r_modular/CMakeLists.txt") (("\\$\\{R_COMPONENT_LIB_PATH\\}")
(("\\$\\{R_COMPONENT_LIB_PATH\\}") (string-append (assoc-ref outputs "out")
(string-append (assoc-ref outputs "out") "/lib/R/library/")))
"/lib/R/library/"))) #t))
#t) (add-after 'unpack 'fix-octave-modules
(alist-cons-after (lambda* (#:key outputs #:allow-other-keys)
'unpack 'fix-octave-modules (substitute* '("src/interfaces/octave_modular/CMakeLists.txt"
(lambda* (#:key outputs #:allow-other-keys) "src/interfaces/octave_static/CMakeLists.txt")
(substitute* '("src/interfaces/octave_modular/CMakeLists.txt" (("^include_directories\\(\\$\\{OCTAVE_INCLUDE_DIRS\\}")
"src/interfaces/octave_static/CMakeLists.txt") "include_directories(${OCTAVE_INCLUDE_DIRS} ${OCTAVE_INCLUDE_DIRS}/octave"))
(("^include_directories\\(\\$\\{OCTAVE_INCLUDE_DIRS\\}")
"include_directories(${OCTAVE_INCLUDE_DIRS} ${OCTAVE_INCLUDE_DIRS}/octave"))
;; change target directory ;; change target directory
(substitute* "src/interfaces/octave_modular/CMakeLists.txt" (substitute* "src/interfaces/octave_modular/CMakeLists.txt"
(("\\$\\{OCTAVE_OCT_LOCAL_API_FILE_DIR\\}") (("\\$\\{OCTAVE_OCT_LOCAL_API_FILE_DIR\\}")
(string-append (assoc-ref outputs "out") (string-append (assoc-ref outputs "out")
"/share/octave/packages"))) "/share/octave/packages")))
#t) #t))
(alist-cons-before (add-before 'build 'set-HOME
'build 'set-HOME
;; $HOME needs to be set at some point during the build phase ;; $HOME needs to be set at some point during the build phase
(lambda _ (setenv "HOME" "/tmp") #t) (lambda _ (setenv "HOME" "/tmp") #t)))
%standard-phases))))
#:configure-flags #:configure-flags
(list "-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE" (list "-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE"
"-DUSE_SVMLIGHT=OFF" ;disable proprietary SVMLIGHT "-DUSE_SVMLIGHT=OFF" ;disable proprietary SVMLIGHT

View File

@ -1034,51 +1034,51 @@ delivery.")
("perl" ,perl))) ("perl" ,perl)))
(arguments (arguments
'(#:phases '(#:phases
(alist-replace (modify-phases %standard-phases
'configure (replace 'configure
;; We'd use #:make-flags but the top-level Makefile calls others ;; We'd use #:make-flags but the top-level Makefile calls others
;; recursively, so just set all variables this way. ;; recursively, so just set all variables this way.
(lambda* (#:key outputs inputs #:allow-other-keys) (lambda* (#:key outputs inputs #:allow-other-keys)
(substitute* '("Makefile" "OS/Makefile-Default") (substitute* '("Makefile" "OS/Makefile-Default")
(("(RM_COMMAND=).*" all var) (("(RM_COMMAND=).*" all var)
(string-append var "rm\n"))) (string-append var "rm\n")))
(copy-file "src/EDITME" "Local/Makefile") (copy-file "src/EDITME" "Local/Makefile")
(copy-file "exim_monitor/EDITME" "Local/eximon.conf") (copy-file "exim_monitor/EDITME" "Local/eximon.conf")
(let ((out (assoc-ref outputs "out")) (let ((out (assoc-ref outputs "out"))
(gzip (assoc-ref inputs "gzip")) (gzip (assoc-ref inputs "gzip"))
(bzip2 (assoc-ref inputs "bzip2")) (bzip2 (assoc-ref inputs "bzip2"))
(xz (assoc-ref inputs "xz"))) (xz (assoc-ref inputs "xz")))
(substitute* '("Local/Makefile") (substitute* '("Local/Makefile")
(("(BIN_DIRECTORY=).*" all var) (("(BIN_DIRECTORY=).*" all var)
(string-append var out "/bin\n")) (string-append var out "/bin\n"))
(("(CONFIGURE_FILE=).*" all var) (("(CONFIGURE_FILE=).*" all var)
(string-append var out "/etc/exim.conf\n")) (string-append var out "/etc/exim.conf\n"))
(("(EXIM_USER=).*" all var) (("(EXIM_USER=).*" all var)
(string-append var "nobody\n")) (string-append var "nobody\n"))
(("(FIXED_NEVER_USERS=).*" all var) (("(FIXED_NEVER_USERS=).*" all var)
(string-append var "\n")) ;XXX no root in build environment (string-append var "\n")) ;XXX no root in build environment
(("(COMPRESS_COMMAND=).*" all var) (("(COMPRESS_COMMAND=).*" all var)
(string-append var gzip "/bin/gzip\n")) (string-append var gzip "/bin/gzip\n"))
(("(ZCAT_COMMAND=).*" all var) (("(ZCAT_COMMAND=).*" all var)
(string-append var gzip "/bin/zcat\n"))) (string-append var gzip "/bin/zcat\n")))
;; This file has hardcoded names for tools despite the zcat ;; This file has hardcoded names for tools despite the zcat
;; configuration above. ;; configuration above.
(substitute* '("src/exigrep.src") (substitute* '("src/exigrep.src")
(("'zcat'") (string-append "'" gzip "/bin/zcat'")) (("'zcat'") (string-append "'" gzip "/bin/zcat'"))
(("'bzcat'") (string-append "'" bzip2 "/bin/bzcat'")) (("'bzcat'") (string-append "'" bzip2 "/bin/bzcat'"))
(("'xzcat'") (string-append "'" xz "/bin/xzcat'")) (("'xzcat'") (string-append "'" xz "/bin/xzcat'"))
(("'lzma'") (string-append "'" xz "/bin/lzma'"))))) (("'lzma'") (string-append "'" xz "/bin/lzma'"))))
(alist-cons-before #t))
'build 'fix-sh-paths (add-before 'build 'fix-sh-paths
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(substitute* '("scripts/lookups-Makefile" "scripts/reversion") (substitute* '("scripts/lookups-Makefile" "scripts/reversion")
(("SHELL=/bin/sh") "SHELL=sh")) (("SHELL=/bin/sh") "SHELL=sh"))
(substitute* '("scripts/Configure-config.h") (substitute* '("scripts/Configure-config.h")
(("\\| /bin/sh") "| sh")) (("\\| /bin/sh") "| sh"))
(let ((bash (assoc-ref inputs "bash"))) (let ((bash (assoc-ref inputs "bash")))
(substitute* '("scripts/Configure-eximon") (substitute* '("scripts/Configure-eximon")
(("#!/bin/sh") (string-append "#!" bash "/bin/sh"))))) (("#!/bin/sh") (string-append "#!" bash "/bin/sh"))))
%standard-phases)) #t)))
#:make-flags '("INSTALL_ARG=-no_chown") #:make-flags '("INSTALL_ARG=-no_chown")
;; No 'check' target. ;; No 'check' target.
#:tests? #f)) #:tests? #f))

View File

@ -154,7 +154,7 @@ the traditional flat-text whatis databases.")
"1gri0rm9i3a6w5dvsmwawhwzywl5x80dwq05d2v8l92knv2hbh6m")))) "1gri0rm9i3a6w5dvsmwawhwzywl5x80dwq05d2v8l92knv2hbh6m"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-delete 'configure %standard-phases) '(#:phases (modify-phases %standard-phases (delete 'configure))
;; The 'all' target depends on three targets that directly populate ;; The 'all' target depends on three targets that directly populate
;; $(MANDIR) based on its current contents. Doing that in parallel ;; $(MANDIR) based on its current contents. Doing that in parallel
@ -220,7 +220,7 @@ automatically.")
(arguments (arguments
`(#:tests? #f ; no "check" target `(#:tests? #f ; no "check" target
#:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))) #:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out")))
#:phases (alist-delete 'configure %standard-phases))) #:phases (modify-phases %standard-phases (delete 'configure))))
(inputs (inputs
`(("gawk" ,gawk))) `(("gawk" ,gawk)))
(home-page "https://github.com/mvertes/txt2man") (home-page "https://github.com/mvertes/txt2man")

View File

@ -456,13 +456,14 @@ large scale eigenvalue problems.")
;; Build the 'LAPACKE_clatms' functions. ;; Build the 'LAPACKE_clatms' functions.
"-DLAPACKE_WITH_TMG=ON") "-DLAPACKE_WITH_TMG=ON")
#:phases (alist-cons-before #:phases
'check 'patch-python (modify-phases %standard-phases
(lambda* (#:key inputs #:allow-other-keys) (add-before 'check 'patch-python
(let ((python (assoc-ref inputs "python"))) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "lapack_testing.py" (let ((python (assoc-ref inputs "python")))
(("/usr/bin/env python") python)))) (substitute* "lapack_testing.py"
%standard-phases))) (("/usr/bin/env python") python)))
#t)))))
(synopsis "Library for numerical linear algebra") (synopsis "Library for numerical linear algebra")
(description (description
"LAPACK is a Fortran 90 library for solving the most commonly occurring "LAPACK is a Fortran 90 library for solving the most commonly occurring
@ -1866,12 +1867,12 @@ void mc64ad_ (int *a, int *b, int *c, int *d, int *e, double *f, int *g,
(arguments (arguments
`(#:parallel-build? #f ;race conditions using ar `(#:parallel-build? #f ;race conditions using ar
#:phases #:phases
(alist-replace (modify-phases %standard-phases
'configure (replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(call-with-output-file "make.inc" (call-with-output-file "make.inc"
(lambda (port) (lambda (port)
(format port " (format port "
PLAT = PLAT =
DSuperLUroot = ~a DSuperLUroot = ~a
DSUPERLULIB = ~a/lib/libsuperlu_dist.a DSUPERLULIB = ~a/lib/libsuperlu_dist.a
@ -1894,47 +1895,46 @@ FORTRAN = mpifort
FFLAGS = -O2 -g $(PIC) FFLAGS = -O2 -g $(PIC)
LOADER = $(CC) LOADER = $(CC)
CDEFS = -DAdd_" CDEFS = -DAdd_"
(getcwd) (getcwd)
(assoc-ref outputs "out") (assoc-ref outputs "out")
(assoc-ref inputs "lapack") (assoc-ref inputs "lapack")
(assoc-ref inputs "pt-scotch"))))) (assoc-ref inputs "pt-scotch"))))
(alist-cons-after #t))
'unpack 'remove-broken-symlinks (add-after 'unpack 'remove-broken-symlinks
(lambda _ (lambda _
(for-each delete-file (for-each delete-file
(find-files "MAKE_INC" "\\.#make\\..*"))) (find-files "MAKE_INC" "\\.#make\\..*"))
(alist-cons-before #t))
'build 'create-install-directories (add-before 'build 'create-install-directories
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(for-each (for-each
(lambda (dir) (lambda (dir)
(mkdir-p (string-append (assoc-ref outputs "out") (mkdir-p (string-append (assoc-ref outputs "out")
"/" dir))) "/" dir)))
'("lib" "include"))) '("lib" "include"))
(alist-replace #t))
'check (replace 'check
(lambda _ (lambda _
(with-directory-excursion "EXAMPLE" (with-directory-excursion "EXAMPLE"
(and (and
(zero? (system* "mpirun" "-n" "2" (zero? (system* "mpirun" "-n" "2"
"./pddrive" "-r" "1" "-c" "2" "g20.rua")) "./pddrive" "-r" "1" "-c" "2" "g20.rua"))
(zero? (system* "mpirun" "-n" "2" (zero? (system* "mpirun" "-n" "2"
"./pzdrive" "-r" "1" "-c" "2" "cg20.cua"))))) "./pzdrive" "-r" "1" "-c" "2" "cg20.cua"))))))
(alist-replace (replace 'install
'install (lambda* (#:key outputs #:allow-other-keys)
(lambda* (#:key outputs #:allow-other-keys) ;; Library is placed in lib during the build phase. Copy over
;; Library is placed in lib during the build phase. Copy over ;; headers to include.
;; headers to include. (let* ((out (assoc-ref outputs "out"))
(let* ((out (assoc-ref outputs "out")) (incdir (string-append out "/include")))
(incdir (string-append out "/include"))) (for-each (lambda (file)
(for-each (lambda (file) (let ((base (basename file)))
(let ((base (basename file))) (format #t "installing `~a' to `~a'~%"
(format #t "installing `~a' to `~a'~%" base incdir)
base incdir) (copy-file file
(copy-file file (string-append incdir "/" base))))
(string-append incdir "/" base)))) (find-files "SRC" ".*\\.h$")))
(find-files "SRC" ".*\\.h$")))) #t)))))
%standard-phases)))))))
(home-page (package-home-page superlu)) (home-page (package-home-page superlu))
(synopsis "Parallel supernodal direct solver") (synopsis "Parallel supernodal direct solver")
(description (description
@ -2621,7 +2621,7 @@ access to BLIS implementations via traditional BLAS routine calls.")
(list (string-append "prefix=" (assoc-ref %outputs "out"))) (list (string-append "prefix=" (assoc-ref %outputs "out")))
#:phases #:phases
;; no configure script ;; no configure script
(alist-delete 'configure %standard-phases) (modify-phases %standard-phases (delete 'configure))
#:tests? #f)) ;the tests are part of the default target #:tests? #f)) ;the tests are part of the default target
(home-page "http://openlibm.org/") (home-page "http://openlibm.org/")
(synopsis "Portable C mathematical library (libm)") (synopsis "Portable C mathematical library (libm)")
@ -2660,7 +2660,7 @@ environments.")
#:make-flags #:make-flags
(list (string-append "prefix=" (assoc-ref %outputs "out"))) (list (string-append "prefix=" (assoc-ref %outputs "out")))
;; no configure script ;; no configure script
#:phases (alist-delete 'configure %standard-phases))) #:phases (modify-phases %standard-phases (delete 'configure))))
(inputs (inputs
`(("fortran" ,gfortran))) `(("fortran" ,gfortran)))
(home-page "https://github.com/JuliaLang/openspecfun") (home-page "https://github.com/JuliaLang/openspecfun")

View File

@ -142,20 +142,19 @@ keys, no previous conversation is compromised.")
("python" ,python-2) ("python" ,python-2)
("perl" ,perl))) ("perl" ,perl)))
(arguments (arguments
`(#:phases (alist-cons-after `(#:phases
'install 'install-etc (modify-phases %standard-phases
(lambda* (#:key (make-flags '()) #:allow-other-keys) (add-after 'install 'install-etc
(zero? (apply system* "make" "install-etc" make-flags))) (lambda* (#:key (make-flags '()) #:allow-other-keys)
(alist-replace (zero? (apply system* "make" "install-etc" make-flags))))
'configure (replace 'configure
;; bitlbee's configure script does not tolerate many of the ;; bitlbee's configure script does not tolerate many of the
;; variable settings that Guix would pass to it. ;; variable settings that Guix would pass to it.
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(zero? (system* "./configure" (zero? (system* "./configure"
(string-append "--prefix=" (string-append "--prefix="
(assoc-ref outputs "out")) (assoc-ref outputs "out"))
"--otr=1"))) "--otr=1")))))))
%standard-phases))))
(synopsis "IRC to instant messaging gateway") (synopsis "IRC to instant messaging gateway")
(description "BitlBee brings IM (instant messaging) to IRC clients, for (description "BitlBee brings IM (instant messaging) to IRC clients, for
people who have an IRC client running all the time and don't want to run an people who have an IRC client running all the time and don't want to run an

View File

@ -66,12 +66,13 @@
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'remove-unsupported-gcc-flags (add-before 'configure 'remove-unsupported-gcc-flags
(lambda _ (lambda _
;; remove option that is not supported by gcc any more ;; remove option that is not supported by gcc any more
(substitute* "configure" ((" -fforce-mem") ""))) (substitute* "configure" ((" -fforce-mem") ""))
%standard-phases))) #t)
%standard-phases))))
(synopsis "MPEG audio decoder") (synopsis "MPEG audio decoder")
(description (description
"MAD (MPEG Audio Decoder) supports MPEG-1 and the MPEG-2 extension to "MAD (MPEG Audio Decoder) supports MPEG-1 and the MPEG-2 extension to
@ -123,20 +124,20 @@ versions of ID3v2.")
(inputs `(("zlib" ,zlib))) (inputs `(("zlib" ,zlib)))
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'apply-patches (add-before 'configure 'apply-patches
;; TODO: create a patch for origin instead? ;; TODO: create a patch for origin instead?
(lambda _ (lambda _
(substitute* "configure" (substitute* "configure"
(("iomanip.h") "")) ; drop check for unused header (("iomanip.h") "")) ; drop check for unused header
;; see http://www.linuxfromscratch.org/patches/downloads/id3lib/ ;; see http://www.linuxfromscratch.org/patches/downloads/id3lib/
(substitute* "include/id3/id3lib_strings.h" (substitute* "include/id3/id3lib_strings.h"
(("include <string>") "include <cstring>\n#include <string>")) (("include <string>") "include <cstring>\n#include <string>"))
(substitute* "include/id3/writers.h" (substitute* "include/id3/writers.h"
(("//\\#include <string.h>") "#include <cstring>")) (("//\\#include <string.h>") "#include <cstring>"))
(substitute* "examples/test_io.cpp" (substitute* "examples/test_io.cpp"
(("dami;") "dami;\nusing namespace std;"))) (("dami;") "dami;\nusing namespace std;"))
%standard-phases))) #t)))))
(synopsis "Library for reading, writing, and manipulating ID3v1 and ID3v2 tags") (synopsis "Library for reading, writing, and manipulating ID3v1 and ID3v2 tags")
(description (description
"Id3lib is a cross-platform software development library for reading, "Id3lib is a cross-platform software development library for reading,
@ -194,29 +195,30 @@ Speex, WavPack TrueAudio, WAV, AIFF, MP4 and ASF files.")
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" "gui")) ;GTK+ interface in "gui" (outputs '("out" "gui")) ;GTK+ interface in "gui"
(arguments (arguments
'(#:phases (alist-replace '(#:phases
'configure (modify-phases %standard-phases
(lambda* (#:key outputs #:allow-other-keys) (replace 'configure
(let ((out (assoc-ref outputs "out"))) (lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile" (let ((out (assoc-ref outputs "out")))
(("prefix=.*") (substitute* "Makefile"
(string-append "prefix := " out "\n"))))) (("prefix=.*")
(alist-cons-before (string-append "prefix := " out "\n"))))
'install 'pre-install #t))
(lambda* (#:key outputs #:allow-other-keys) (add-before 'install 'pre-install
(let ((out (assoc-ref outputs "out"))) (lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append out "/bin")) (let ((out (assoc-ref outputs "out")))
(mkdir-p (string-append out "/share/man/man1")))) (mkdir-p (string-append out "/bin"))
(alist-cons-after (mkdir-p (string-append out "/share/man/man1")))
'install 'post-install #t))
(lambda* (#:key outputs #:allow-other-keys) (add-after 'install 'post-install
;; Move the GTK+ interface to "gui". (lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")) ;; Move the GTK+ interface to "gui".
(gui (assoc-ref outputs "gui"))) (let ((out (assoc-ref outputs "out"))
(mkdir-p (string-append gui "/bin")) (gui (assoc-ref outputs "gui")))
(rename-file (string-append out "/bin/gmp3info") (mkdir-p (string-append gui "/bin"))
(string-append gui "/bin/gmp3info")))) (rename-file (string-append out "/bin/gmp3info")
%standard-phases))) (string-append gui "/bin/gmp3info")))
#t)))
#:tests? #f)) #:tests? #f))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))

View File

@ -869,60 +869,60 @@ complete studio.")
`(#:tests? #f ; xmllint attempts to download DTD `(#:tests? #f ; xmllint attempts to download DTD
#:test-target "test" #:test-target "test"
#:phases #:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'fix-configuration (add-after 'unpack 'fix-configuration
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "default.config" (substitute* "default.config"
(("csound=csound") (("csound=csound")
(string-append "csound=" (string-append "csound="
(assoc-ref inputs "csound") (assoc-ref inputs "csound")
"/bin/csound")) "/bin/csound"))
(("/usr/bin/aplay") (("/usr/bin/aplay")
(string-append (assoc-ref inputs "aplay") (string-append (assoc-ref inputs "aplay")
"/bin/aplay")) "/bin/aplay"))
(("/usr/bin/timidity") (("/usr/bin/timidity")
(string-append (assoc-ref inputs "timidity") (string-append (assoc-ref inputs "timidity")
"/bin/timidity")) "/bin/timidity"))
(("/usr/bin/mpg123") (("/usr/bin/mpg123")
(string-append (assoc-ref inputs "mpg123") (string-append (assoc-ref inputs "mpg123")
"/bin/mpg123")) "/bin/mpg123"))
(("/usr/bin/ogg123") (("/usr/bin/ogg123")
(string-append (assoc-ref inputs "ogg123") (string-append (assoc-ref inputs "ogg123")
"/bin/ogg123")))) "/bin/ogg123")))
(alist-cons-before #t))
'build 'patch-python-shebangs (add-before 'build 'patch-python-shebangs
(lambda _ (lambda _
;; Two python scripts begin with a Unicode BOM, so patch-shebang ;; Two python scripts begin with a Unicode BOM, so patch-shebang
;; has no effect. ;; has no effect.
(substitute* '("solfege/parsetree.py" (substitute* '("solfege/parsetree.py"
"solfege/presetup.py") "solfege/presetup.py")
(("#!/usr/bin/python") (string-append "#!" (which "python"))))) (("#!/usr/bin/python") (string-append "#!" (which "python"))))
(alist-cons-before #t))
'build 'add-sitedirs (add-before 'build 'add-sitedirs
;; .pth files are not automatically interpreted unless the ;; .pth files are not automatically interpreted unless the
;; directories containing them are added as "sites". The directories ;; directories containing them are added as "sites". The directories
;; are then added to those in the PYTHONPATH. This is required for ;; are then added to those in the PYTHONPATH. This is required for
;; the operation of pygtk and pygobject. ;; the operation of pygtk and pygobject.
(lambda _ (lambda _
(substitute* "run-solfege.py" (substitute* "run-solfege.py"
(("import os") (("import os")
"import os, site "import os, site
for path in [path for path in sys.path if 'site-packages' in path]: site.addsitedir(path)"))) for path in [path for path in sys.path if 'site-packages' in path]: site.addsitedir(path)"))
(alist-cons-before #t))
'build 'adjust-config-file-prefix (add-before 'build 'adjust-config-file-prefix
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(substitute* "run-solfege.py" (substitute* "run-solfege.py"
(("prefix = os.path.*$") (("prefix = os.path.*$")
(string-append "prefix = " (assoc-ref outputs "out"))))) (string-append "prefix = " (assoc-ref outputs "out"))))
(alist-cons-after #t))
'install 'wrap-program (add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
;; Make sure 'solfege' runs with the correct PYTHONPATH. ;; Make sure 'solfege' runs with the correct PYTHONPATH.
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
(path (getenv "PYTHONPATH"))) (path (getenv "PYTHONPATH")))
(wrap-program (string-append out "/bin/solfege") (wrap-program (string-append out "/bin/solfege")
`("PYTHONPATH" ":" prefix (,path))))) `("PYTHONPATH" ":" prefix (,path))))
%standard-phases))))))) #t)))))
(inputs (inputs
`(("python" ,python-2) `(("python" ,python-2)
("pygtk" ,python2-pygtk) ("pygtk" ,python2-pygtk)

View File

@ -35,47 +35,46 @@
"10hdd6mrk26kyh4bnng4ah5h1pnanhsrhqa7qwqy6dyv3rng44y9")))) "10hdd6mrk26kyh4bnng4ah5h1pnanhsrhqa7qwqy6dyv3rng44y9"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-cons-before '(#:phases
'install 'pre-install (modify-phases %standard-phases
(lambda* (#:key outputs #:allow-other-keys) (add-before 'install 'pre-install
(let ((out (assoc-ref outputs "out"))) (lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append out "/share/texmf/tex/latex")) (let ((out (assoc-ref outputs "out")))
#t)) (mkdir-p (string-append out "/share/texmf/tex/latex"))
(alist-cons-after #t)))
'install 'post-install (add-after 'install 'post-install
(lambda* (#:key outputs inputs #:allow-other-keys) (lambda* (#:key outputs inputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")) (let ((out (assoc-ref outputs "out"))
(cu (assoc-ref inputs "coreutils")) (cu (assoc-ref inputs "coreutils"))
(du (assoc-ref inputs "diffutils"))) (du (assoc-ref inputs "diffutils")))
(with-directory-excursion out (with-directory-excursion out
(for-each (lambda (prog) (for-each (lambda (prog)
(substitute* prog (substitute* prog
(("nawk") (which "awk")))) (("nawk") (which "awk"))))
(append (map (lambda (x) (append (map (lambda (x)
(string-append "bin/" x)) (string-append "bin/" x))
'("noweb" "nountangle" '("noweb" "nountangle"
"noroots" "noroff" "noroots" "noroff"
"noindex")) "noindex"))
(map (lambda (x) (map (lambda (x)
(string-append "lib/" x)) (string-append "lib/" x))
'("btdefn" "emptydefn" "noidx" '("btdefn" "emptydefn" "noidx"
"pipedocs" "toascii" "tohtml" "pipedocs" "toascii" "tohtml"
"toroff" "totex" "unmarkup")))) "toroff" "totex" "unmarkup"))))
(substitute* "bin/cpif" (substitute* "bin/cpif"
(("^PATH=.*$") (("^PATH=.*$")
(string-append "PATH=" cu "/bin:" du "/bin\n")))) (string-append "PATH=" cu "/bin:" du "/bin\n"))))
#t)) #t)))
(alist-replace (replace 'configure
'configure (lambda _
(lambda _ ;; Jump in the source.
;; Jump in the source. (chdir "src")
(chdir "src")
;; The makefile reads "source: FAQ", but FAQ isn't ;; The makefile reads "source: FAQ", but FAQ isn't
;; available. ;; available.
(substitute* "Makefile" (substitute* "Makefile"
(("FAQ") ""))) (("FAQ") ""))
%standard-phases))) #t)))
#:make-flags (let ((out (assoc-ref %outputs "out"))) #:make-flags (let ((out (assoc-ref %outputs "out")))
(list (string-append "BIN=" out "/bin") (list (string-append "BIN=" out "/bin")
(string-append "LIB=" out "/lib") (string-append "LIB=" out "/lib")

View File

@ -53,30 +53,31 @@
(inputs `(("perl" ,perl))) (inputs `(("perl" ,perl)))
(arguments (arguments
'(#:parallel-tests? #f '(#:parallel-tests? #f
#:phases (alist-cons-before #:phases
'check 'patch-test-scripts (modify-phases %standard-phases
(lambda _ (add-before 'check 'patch-test-scripts
(let ((echo (which "echo"))) (lambda _
(substitute* (let ((echo (which "echo")))
(find-files "tests" "^run-test$") (substitute*
(("/bin/echo") echo)))) (find-files "tests" "^run-test$")
(alist-cons-after (("/bin/echo") echo)))
'install 'wrap-program #t))
;; Point installed scripts to the utilities they need. (add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys) ;; Point installed scripts to the utilities they need.
(let* ((out (assoc-ref outputs "out")) (lambda* (#:key inputs outputs #:allow-other-keys)
(diffutils (assoc-ref inputs "diffutils")) (let* ((out (assoc-ref outputs "out"))
(sed (assoc-ref inputs "sed")) (diffutils (assoc-ref inputs "diffutils"))
(gawk (assoc-ref inputs "gawk"))) (sed (assoc-ref inputs "sed"))
(for-each (gawk (assoc-ref inputs "gawk")))
(lambda (prog) (for-each
(wrap-program (string-append out "/bin/" prog) (lambda (prog)
`("PATH" ":" prefix (wrap-program (string-append out "/bin/" prog)
,(map (lambda (dir) `("PATH" ":" prefix
(string-append dir "/bin")) ,(map (lambda (dir)
(list diffutils sed gawk))))) (string-append dir "/bin"))
'("dehtmldiff" "editdiff" "espdiff")))) (list diffutils sed gawk)))))
%standard-phases)))) '("dehtmldiff" "editdiff" "espdiff")))
#t)))))
(home-page "http://cyberelk.net/tim/software/patchutils") (home-page "http://cyberelk.net/tim/software/patchutils")
(synopsis "Collection of tools for manipulating patch files") (synopsis "Collection of tools for manipulating patch files")
(description (description
@ -105,39 +106,39 @@ listing the files modified by a patch.")
("ed" ,ed))) ("ed" ,ed)))
(arguments (arguments
'(#:parallel-tests? #f '(#:parallel-tests? #f
#:phases #:phases
(alist-cons-before (modify-phases %standard-phases
'check 'patch-tests (add-before 'check 'patch-tests
(lambda _ (lambda _
(substitute* (substitute*
'("test/run" '("test/run"
"test/edit.test") "test/edit.test")
(("/bin/sh") (which "sh"))) (("/bin/sh") (which "sh")))
;; TODO: Run the mail tests once the mail feature can be supported. ;; TODO: Run the mail tests once the mail feature can be supported.
(delete-file "test/mail.test")) (delete-file "test/mail.test")
(alist-cons-after #t))
'install 'wrap-program (add-after 'install 'wrap-program
;; quilt's configure checks for the absolute path to the utilities it ;; quilt's configure checks for the absolute path to the utilities it
;; needs, but uses only the name when invoking them, so we need to ;; needs, but uses only the name when invoking them, so we need to
;; make sure the quilt script can find those utilities when run. ;; make sure the quilt script can find those utilities when run.
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
(coreutils (assoc-ref inputs "coreutils")) (coreutils (assoc-ref inputs "coreutils"))
(diffutils (assoc-ref inputs "diffutils")) (diffutils (assoc-ref inputs "diffutils"))
(findutils (assoc-ref inputs "findutils")) (findutils (assoc-ref inputs "findutils"))
(less (assoc-ref inputs "less")) (less (assoc-ref inputs "less"))
(file (assoc-ref inputs "file")) (file (assoc-ref inputs "file"))
(ed (assoc-ref inputs "ed")) (ed (assoc-ref inputs "ed"))
(sed (assoc-ref inputs "sed")) (sed (assoc-ref inputs "sed"))
(bash (assoc-ref inputs "bash")) (bash (assoc-ref inputs "bash"))
(grep (assoc-ref inputs "grep"))) (grep (assoc-ref inputs "grep")))
(wrap-program (string-append out "/bin/quilt") (wrap-program (string-append out "/bin/quilt")
`("PATH" ":" prefix `("PATH" ":" prefix
,(map (lambda (dir) ,(map (lambda (dir)
(string-append dir "/bin")) (string-append dir "/bin"))
(list coreutils diffutils findutils (list coreutils diffutils findutils
less file ed sed bash grep)))))) less file ed sed bash grep)))))
%standard-phases)))) #t)))))
(home-page "https://savannah.nongnu.org/projects/quilt/") (home-page "https://savannah.nongnu.org/projects/quilt/")
(synopsis "Script for managing patches to software") (synopsis "Script for managing patches to software")
(description (description
@ -164,8 +165,9 @@ refreshed, and more.")
#:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out")) #:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))
"INSTALL_DIR=/bin" "MAN_DIR=/share/man/man1") "INSTALL_DIR=/bin" "MAN_DIR=/share/man/man1")
#:phases #:phases
(alist-delete 'configure (modify-phases %standard-phases
(alist-delete 'build %standard-phases)))) (delete 'configure)
(delete 'build))))
(inputs (inputs
`(("perl" ,perl) `(("perl" ,perl)
("xmlto" ,xmlto))) ("xmlto" ,xmlto)))

View File

@ -300,19 +300,19 @@ reading and editing of existing PDF files.")
(assoc-ref %build-inputs "freetype") (assoc-ref %build-inputs "freetype")
"/include/freetype2")) "/include/freetype2"))
#:phases #:phases
(alist-replace (modify-phases %standard-phases
'install (replace 'install
(lambda* (#:key outputs inputs #:allow-other-keys #:rest args) (lambda* (#:key outputs inputs #:allow-other-keys #:rest args)
(let* ((install (assoc-ref %standard-phases 'install)) (let* ((install (assoc-ref %standard-phases 'install))
(out (assoc-ref outputs "out")) (out (assoc-ref outputs "out"))
(xpdfrc (string-append out "/etc/xpdfrc")) (xpdfrc (string-append out "/etc/xpdfrc"))
(gs-fonts (assoc-ref inputs "gs-fonts"))) (gs-fonts (assoc-ref inputs "gs-fonts")))
(apply install args) (apply install args)
(substitute* xpdfrc (substitute* xpdfrc
(("/usr/local/share/ghostscript/fonts") (("/usr/local/share/ghostscript/fonts")
(string-append gs-fonts "/share/fonts/type1/ghostscript")) (string-append gs-fonts "/share/fonts/type1/ghostscript"))
(("#fontFile") "fontFile")))) (("#fontFile") "fontFile")))
%standard-phases))) #t)))))
(synopsis "Viewer for PDF files based on the Motif toolkit") (synopsis "Viewer for PDF files based on the Motif toolkit")
(description (description
"Xpdf is a viewer for Portable Document Format (PDF) files.") "Xpdf is a viewer for Portable Document Format (PDF) files.")
@ -343,7 +343,7 @@ reading and editing of existing PDF files.")
"CC=gcc") "CC=gcc")
#:tests? #f ; Package does not contain tests. #:tests? #f ; Package does not contain tests.
#:phases #:phases
(alist-delete 'configure %standard-phases))) (modify-phases %standard-phases (delete 'configure))))
(home-page "https://pwmt.org/projects/zathura-cb/") (home-page "https://pwmt.org/projects/zathura-cb/")
(synopsis "Comic book support for zathura (libarchive backend)") (synopsis "Comic book support for zathura (libarchive backend)")
(description "The zathura-cb plugin adds comic book support to zathura (description "The zathura-cb plugin adds comic book support to zathura
@ -374,7 +374,7 @@ using libarchive.")
"CC=gcc") "CC=gcc")
#:tests? #f ; Package does not contain tests. #:tests? #f ; Package does not contain tests.
#:phases #:phases
(alist-delete 'configure %standard-phases))) (modify-phases %standard-phases (delete 'configure))))
(home-page "https://pwmt.org/projects/zathura-ps/") (home-page "https://pwmt.org/projects/zathura-ps/")
(synopsis "PS support for zathura (libspectre backend)") (synopsis "PS support for zathura (libspectre backend)")
(description "The zathura-ps plugin adds PS support to zathura (description "The zathura-ps plugin adds PS support to zathura
@ -406,7 +406,7 @@ using libspectre.")
"CC=gcc") "CC=gcc")
#:tests? #f ; Package does not contain tests. #:tests? #f ; Package does not contain tests.
#:phases #:phases
(alist-delete 'configure %standard-phases))) (modify-phases %standard-phases (delete 'configure))))
(home-page "https://pwmt.org/projects/zathura-djvu/") (home-page "https://pwmt.org/projects/zathura-djvu/")
(synopsis "DjVu support for zathura (DjVuLibre backend)") (synopsis "DjVu support for zathura (DjVuLibre backend)")
(description "The zathura-djvu plugin adds DjVu support to zathura (description "The zathura-djvu plugin adds DjVu support to zathura
@ -439,7 +439,7 @@ using the DjVuLibre library.")
"CC=gcc") "CC=gcc")
#:tests? #f ; Package does not include tests. #:tests? #f ; Package does not include tests.
#:phases #:phases
(alist-delete 'configure %standard-phases))) (modify-phases %standard-phases (delete 'configure))))
(home-page "https://pwmt.org/projects/zathura-pdf-poppler/") (home-page "https://pwmt.org/projects/zathura-pdf-poppler/")
(synopsis "PDF support for zathura (poppler backend)") (synopsis "PDF support for zathura (poppler backend)")
(description "The zathura-pdf-poppler plugin adds PDF support to zathura (description "The zathura-pdf-poppler plugin adds PDF support to zathura
@ -477,7 +477,7 @@ by using the poppler rendering engine.")
#:tests? #f ; Tests fail: "Gtk cannot open display". #:tests? #f ; Tests fail: "Gtk cannot open display".
#:test-target "test" #:test-target "test"
#:phases #:phases
(alist-delete 'configure %standard-phases))) (modify-phases %standard-phases (delete 'configure))))
(home-page "https://pwmt.org/projects/zathura/") (home-page "https://pwmt.org/projects/zathura/")
(synopsis "Lightweight keyboard-driven PDF viewer") (synopsis "Lightweight keyboard-driven PDF viewer")
(description "Zathura is a customizable document viewer. It provides a (description "Zathura is a customizable document viewer. It provides a
@ -510,14 +510,14 @@ interaction.")
`(#:configure-flags '("-DPODOFO_BUILD_SHARED=ON" `(#:configure-flags '("-DPODOFO_BUILD_SHARED=ON"
"-DPODOFO_BUILD_STATIC=ON") "-DPODOFO_BUILD_STATIC=ON")
#:phases #:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'patch (add-before 'configure 'patch
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(let ((freetype (assoc-ref inputs "freetype"))) (let ((freetype (assoc-ref inputs "freetype")))
;; Look for freetype include files in the correct place. ;; Look for freetype include files in the correct place.
(substitute* "cmake/modules/FindFREETYPE.cmake" (substitute* "cmake/modules/FindFREETYPE.cmake"
(("/usr/local") freetype)))) (("/usr/local") freetype)))
%standard-phases))) #t)))))
(home-page "http://podofo.sourceforge.net") (home-page "http://podofo.sourceforge.net")
(synopsis "Tools to work with the PDF file format") (synopsis "Tools to work with the PDF file format")
(description (description
@ -763,12 +763,13 @@ the PDF pages.")
"0bw224vb7jh0lrqaf4jgxk48xglvxs674qcpj5y0axyfbh896cfk")))) "0bw224vb7jh0lrqaf4jgxk48xglvxs674qcpj5y0axyfbh896cfk"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-cons-after '(#:phases
'unpack 'patch-ldconfig (modify-phases %standard-phases
(lambda _ (add-after 'unpack 'patch-ldconfig
(substitute* "mk/Autoconf.mk" (lambda _
(("/sbin/ldconfig -p") "echo lib")) #t) (substitute* "mk/Autoconf.mk"
(alist-delete 'configure %standard-phases)) (("/sbin/ldconfig -p") "echo lib")) #t))
(delete 'configure))
#:tests? #f #:tests? #f
#:make-flags (list "CC=gcc" #:make-flags (list "CC=gcc"
(string-append "prefix=" (assoc-ref %outputs "out"))))) (string-append "prefix=" (assoc-ref %outputs "out")))))

View File

@ -3166,11 +3166,9 @@ at the end of the scope.")
(build-system perl-build-system) (build-system perl-build-system)
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'cd (add-after 'unpack 'cd
(lambda* _ (lambda _ (chdir "List") #t)))))
(chdir "List"))
%standard-phases)))
(license (package-license perl)) (license (package-license perl))
(synopsis "Perl extension for crawling directory trees and compiling (synopsis "Perl extension for crawling directory trees and compiling
lists of files") lists of files")
@ -7342,16 +7340,17 @@ contents of a file is equal to a particular string.")
"0chiqnzmna2mglm37nzxvn9qhq2j31iwz3i9isqjs7bf3k449gb9")))) "0chiqnzmna2mglm37nzxvn9qhq2j31iwz3i9isqjs7bf3k449gb9"))))
(build-system perl-build-system) (build-system perl-build-system)
(arguments (arguments
`(#:phases (alist-cons-before `(#:phases
'check 'patch-test (modify-phases %standard-phases
(lambda* (#:key inputs #:allow-other-keys) (add-before 'check 'patch-test
;; This test looks for "#!/usr/bin/perl" in some source. (lambda* (#:key inputs #:allow-other-keys)
;; Patch what the test looks for. ;; This test looks for "#!/usr/bin/perl" in some source.
(substitute* "t/source.t" ;; Patch what the test looks for.
(("#!/usr/bin/perl") (substitute* "t/source.t"
(string-append "#!" (assoc-ref inputs "perl") (("#!/usr/bin/perl")
"/bin/perl")))) (string-append "#!" (assoc-ref inputs "perl")
%standard-phases))) "/bin/perl")))
#t)))))
(home-page "http://search.cpan.org/dist/Test-Harness") (home-page "http://search.cpan.org/dist/Test-Harness")
(synopsis "Run Perl standard test scripts with statistics") (synopsis "Run Perl standard test scripts with statistics")
(description "Simple test harness which allows tests to be run and results (description "Simple test harness which allows tests to be run and results

View File

@ -152,13 +152,14 @@ from digital cameras.")
("libexif" ,libexif) ("libexif" ,libexif)
("libgphoto2" ,libgphoto2))) ("libgphoto2" ,libgphoto2)))
(arguments (arguments
'(#:phases (alist-cons-before '(#:phases
'check 'pre-check (modify-phases %standard-phases
(lambda* (#:key inputs #:allow-other-keys) (add-before 'check 'pre-check
(substitute* (find-files "tests/data" "\\.param$") (lambda* (#:key inputs #:allow-other-keys)
(("/usr/bin/env") (substitute* (find-files "tests/data" "\\.param$")
(which "env")))) (("/usr/bin/env")
%standard-phases) (which "env")))
#t)))
;; FIXME: There are 2 test failures, most likely related to the build ;; FIXME: There are 2 test failures, most likely related to the build
;; environment. ;; environment.

View File

@ -66,14 +66,15 @@ line syntax.")
"1j2c61nn2n351nhj4d25mnf3vpiddcykq005w2h6kw79dwlysa77")))) "1j2c61nn2n351nhj4d25mnf3vpiddcykq005w2h6kw79dwlysa77"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-cons-before '(#:phases
'configure 'patch-test (modify-phases %standard-phases
(lambda _ (add-before 'configure 'patch-test
(substitute* "test-poptrc.in" (lambda _
(("/bin/echo") (which "echo"))) (substitute* "test-poptrc.in"
(substitute* "testit.sh" ; don't expect old libtool names (("/bin/echo") (which "echo")))
(("lt-test1") "test1"))) (substitute* "testit.sh" ; don't expect old libtool names
%standard-phases))) (("lt-test1") "test1"))
#t)))))
(home-page "http://rpm5.org/files/popt/") (home-page "http://rpm5.org/files/popt/")
(synopsis "Command line option parsing library") (synopsis "Command line option parsing library")
(description (description

View File

@ -205,22 +205,23 @@ to @code{IOStreams}.")
(list (string-append "--with-boost=" (list (string-append "--with-boost="
(assoc-ref %build-inputs "boost"))) (assoc-ref %build-inputs "boost")))
#:parallel-tests? #f ;There appear to be race conditions #:parallel-tests? #f ;There appear to be race conditions
#:phases (alist-cons-before #:phases
'check 'patch-test-files (modify-phases %standard-phases
(lambda _ (add-before 'check 'patch-test-files
;; Unpatch shebangs in test input so that source-highlight (lambda _
;; is still able to infer input language ;; Unpatch shebangs in test input so that source-highlight
(substitute* '("tests/test.sh" ;; is still able to infer input language
"tests/test2.sh" (substitute* '("tests/test.sh"
"tests/test.tcl") "tests/test2.sh"
(((string-append "#! *" (which "sh"))) "#!/bin/sh")) "tests/test.tcl")
;; Initial patching unrecoverably removes whitespace, so (((string-append "#! *" (which "sh"))) "#!/bin/sh"))
;; remove it also in the comparison output. ;; Initial patching unrecoverably removes whitespace, so
(substitute* '("tests/test.sh.html" ;; remove it also in the comparison output.
"tests/test2.sh.html" (substitute* '("tests/test.sh.html"
"tests/test.tcl.html") "tests/test2.sh.html"
(("#! */bin/sh") "#!/bin/sh"))) "tests/test.tcl.html")
%standard-phases))) (("#! */bin/sh") "#!/bin/sh"))
#t)))))
(home-page "https://www.gnu.org/software/src-highlite/") (home-page "https://www.gnu.org/software/src-highlite/")
(synopsis "Produce a document with syntax highlighting from a source file") (synopsis "Produce a document with syntax highlighting from a source file")
(description (description
@ -292,22 +293,22 @@ highlighting. Language definitions and color themes are customizable.")
#:make-flags (list (string-append "prefix=" %output) #:make-flags (list (string-append "prefix=" %output)
"INSTALL=install" "INSTALL=install"
"all") "all")
#:phases (alist-replace #:phases
'configure (modify-phases %standard-phases
(lambda _ (chdir "build/gcc")) (replace 'configure
(alist-cons-after (lambda _ (chdir "build/gcc") #t))
'install 'install-libs (add-after 'install 'install-libs
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
;; Libraries are not installed by default ;; Libraries are not installed by default
(let* ((output (assoc-ref outputs "out")) (let* ((output (assoc-ref outputs "out"))
(libdir (string-append output "/lib"))) (libdir (string-append output "/lib")))
(begin (begin
(mkdir-p libdir) (mkdir-p libdir)
(for-each (lambda (l) (for-each (lambda (l)
(copy-file (copy-file
l (string-append libdir "/" (basename l)))) l (string-append libdir "/" (basename l))))
(find-files "bin" "lib*"))))) (find-files "bin" "lib*"))))
%standard-phases)))) #t)))))
(home-page "http://astyle.sourceforge.net/") (home-page "http://astyle.sourceforge.net/")
(synopsis "Source code indenter, formatter, and beautifier") (synopsis "Source code indenter, formatter, and beautifier")
(description (description

View File

@ -42,22 +42,23 @@
(file-name (string-append name "-" version "-checkout")))) (file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-replace '(#:phases
'configure (modify-phases %standard-phases
(lambda* (#:key inputs outputs #:allow-other-keys) (replace 'configure
;; Fix dependency tests. (lambda* (#:key inputs outputs #:allow-other-keys)
(substitute* "pumpa.pro" ;; Fix dependency tests.
(("/usr/include/tidy\\.h") (substitute* "pumpa.pro"
(string-append (assoc-ref inputs "tidy") (("/usr/include/tidy\\.h")
"/include/tidy.h")) (string-append (assoc-ref inputs "tidy")
(("/usr/include/aspell.h") "/include/tidy.h"))
(string-append (assoc-ref inputs "aspell") (("/usr/include/aspell.h")
"/include/aspell.h"))) (string-append (assoc-ref inputs "aspell")
;; Run qmake with proper installation prefix. "/include/aspell.h")))
(let ((prefix (string-append "PREFIX=" ;; Run qmake with proper installation prefix.
(assoc-ref outputs "out")))) (let ((prefix (string-append "PREFIX="
(zero? (system* "qmake" prefix)))) (assoc-ref outputs "out"))))
%standard-phases))) (zero? (system* "qmake" prefix)))
#t)))))
(inputs (inputs
`(("aspell" ,aspell) `(("aspell" ,aspell)
("qtbase" ,qtbase) ("qtbase" ,qtbase)

View File

@ -485,11 +485,10 @@ pidof, tty, taskset, pmap.")
`(("python-py-bcrypt" ,python-py-bcrypt))) `(("python-py-bcrypt" ,python-py-bcrypt)))
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-before (modify-phases %standard-phases
'check 'set-PYTHON_EGG_CACHE (add-before 'check 'set-PYTHON_EGG_CACHE
;; some tests require access to "$HOME/.cython" ;; some tests require access to "$HOME/.cython"
(lambda* _ (setenv "PYTHON_EGG_CACHE" "/tmp")) (lambda* _ (setenv "PYTHON_EGG_CACHE" "/tmp") #t)))))
%standard-phases)))
(home-page "https://bitbucket.org/ecollins/passlib") (home-page "https://bitbucket.org/ecollins/passlib")
(synopsis (synopsis
"Comprehensive password hashing framework") "Comprehensive password hashing framework")
@ -1079,12 +1078,10 @@ multiple Unicode code points, e.g. \"G\" + acute-accent)
("gmp" ,gmp))) ("gmp" ,gmp)))
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-before (modify-phases %standard-phases
'build 'set-build-env (add-before 'build 'set-build-env
;; pycrypto runs an autoconf configure script behind the scenes ;; pycrypto runs an autoconf configure script behind the scenes
(lambda _ (lambda _ (setenv "CONFIG_SHELL" (which "bash")) #t)))))
(setenv "CONFIG_SHELL" (which "bash")))
%standard-phases)))
(home-page "http://www.pycrypto.org/") (home-page "http://www.pycrypto.org/")
(synopsis "Cryptographic modules for Python") (synopsis "Cryptographic modules for Python")
(description (description
@ -1496,11 +1493,11 @@ other Python program.")
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:python ,python-2 `(#:python ,python-2
#:phases (alist-replace #:phases
'check (modify-phases %standard-phases
(lambda _ (replace 'check
(zero? (system* "./test.sh"))) (lambda _
%standard-phases))) (zero? (system* "./test.sh")))))))
(home-page "http://www.alcyone.com/software/empy/") (home-page "http://www.alcyone.com/software/empy/")
(synopsis "Templating system for Python") (synopsis "Templating system for Python")
(description (description
@ -4665,10 +4662,10 @@ as the original project seems to have been abandoned circa 2007.")
("python-pytest" ,python-pytest) ("python-pytest" ,python-pytest)
("python-mock" ,python-mock))) ;for tests ("python-mock" ,python-mock))) ;for tests
(arguments (arguments
`(#:phases (alist-replace `(#:phases
'check (modify-phases %standard-phases
(lambda _ (zero? (system* "py.test"))) (replace 'check
%standard-phases))) (lambda _ (zero? (system* "py.test")))))))
(home-page "http://www.sqlalchemy.org") (home-page "http://www.sqlalchemy.org")
(synopsis "Database abstraction library") (synopsis "Database abstraction library")
(description (description
@ -8581,10 +8578,10 @@ automatically detect a wide range of file encodings.")
(native-inputs (native-inputs
`(("python-pytest" ,python-pytest))) `(("python-pytest" ,python-pytest)))
(arguments (arguments
`(#:phases (alist-replace `(#:phases
'check (modify-phases %standard-phases
(lambda _ (zero? (system* "py.test"))) (replace 'check
%standard-phases))) (lambda _ (zero? (system* "py.test")))))))
(home-page "http://docopt.org") (home-page "http://docopt.org")
(synopsis "Command-line interface description language for Python") (synopsis "Command-line interface description language for Python")
(description "This library allows the user to define a command-line (description "This library allows the user to define a command-line

View File

@ -127,26 +127,26 @@ Java Lucene text search engine API to C++.")
"18p2flb2sv2hq6w2qkd29z9c7knnwqr3f12i2srshlzx6vwkm05s")))) "18p2flb2sv2hq6w2qkd29z9c7knnwqr3f12i2srshlzx6vwkm05s"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-cons-after '(#:phases
'remove-out-of-tree-references 'autoreconf (modify-phases %standard-phases
(lambda _ (add-after 'remove-out-of-tree-references 'autoreconf
(zero? (system* "autoreconf" "-vfi"))) (lambda _
(alist-cons-after (zero? (system* "autoreconf" "-vfi"))))
'unpack 'remove-out-of-tree-references (add-after 'unpack 'remove-out-of-tree-references
(lambda _ (lambda _
;; remove symlinks to files in /usr/ ;; remove symlinks to files in /usr/
(delete-file-recursively "m4") (delete-file-recursively "m4")
(for-each delete-file '("config.guess" (for-each delete-file '("config.guess"
"config.sub" "config.sub"
"depcomp" "depcomp"
"install-sh" "install-sh"
"ltmain.sh" "ltmain.sh"
"missing")) "missing"))
;; remove_test depends on an out-of-tree RDF file ;; remove_test depends on an out-of-tree RDF file
(substitute* "examples/Makefile.am" (substitute* "examples/Makefile.am"
(("instances_test remove_test") "instances_test") (("instances_test remove_test") "instances_test")
(("\\$\\(TESTS\\) remove_test") "$(TESTS)"))) (("\\$\\(TESTS\\) remove_test") "$(TESTS)"))
%standard-phases)))) #t)))))
(inputs (inputs
`(("raptor" ,raptor2) `(("raptor" ,raptor2)
("cyrus-sasl" ,cyrus-sasl) ("cyrus-sasl" ,cyrus-sasl)

View File

@ -85,16 +85,16 @@ Python. It is a C++ library.")
"0n36cgqys59r2gmb7jzbqiwsy790v8nbxk82d2n2saz0rp145ild")))) "0n36cgqys59r2gmb7jzbqiwsy790v8nbxk82d2n2saz0rp145ild"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases (alist-cons-before `(#:phases
'check 'install-locales (modify-phases %standard-phases
(lambda _ (add-before 'check 'install-locales
;; The tests require the availability of the (lambda _
;; 'en_US.ISO-8859-1' locale. ;; The tests require the availability of the
(setenv "LOCPATH" (getcwd)) ;; 'en_US.ISO-8859-1' locale.
(zero? (system* "localedef" "--no-archive" (setenv "LOCPATH" (getcwd))
"--prefix" (getcwd) "-i" "en_US" (zero? (system* "localedef" "--no-archive"
"-f" "ISO-8859-1" "./en_US.ISO-8859-1"))) "--prefix" (getcwd) "-i" "en_US"
%standard-phases))) "-f" "ISO-8859-1" "./en_US.ISO-8859-1")))))))
(synopsis "Approximate regex matching library and agrep utility") (synopsis "Approximate regex matching library and agrep utility")
(description "Superset of the POSIX regex API, enabling approximate (description "Superset of the POSIX regex API, enabling approximate
matching. Also ships a version of the agrep utility which behaves similar to matching. Also ships a version of the agrep utility which behaves similar to

View File

@ -53,15 +53,16 @@
(native-inputs `(("pkg-config" ,pkg-config) (native-inputs `(("pkg-config" ,pkg-config)
("groff" ,groff))) ("groff" ,groff)))
(arguments (arguments
'(#:phases (alist-cons-before '(#:phases
'configure 'pre-configure (modify-phases %standard-phases
(lambda _ (add-before 'configure 'pre-configure
(substitute* "libtool" (lambda _
(("/bin/sed") (which "sed"))) (substitute* "libtool"
(substitute* "src/Makefile.in" (("/bin/sed") (which "sed")))
(("^rrdcached_LDADD = librrd_th.la") (substitute* "src/Makefile.in"
"rrdcached_LDADD = librrd_th.la -lglib-2.0"))) (("^rrdcached_LDADD = librrd_th.la")
%standard-phases))) "rrdcached_LDADD = librrd_th.la -lglib-2.0"))
#t)))))
(home-page "http://oss.oetiker.ch/rrdtool/") (home-page "http://oss.oetiker.ch/rrdtool/")
(synopsis "Time-series data storage and display system") (synopsis "Time-series data storage and display system")
(description (description

View File

@ -150,16 +150,16 @@ a focus on simplicity and productivity.")
`(#:test-target "test" `(#:test-target "test"
#:parallel-tests? #f #:parallel-tests? #f
#:phases #:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'replace-bin-sh (add-before 'configure 'replace-bin-sh
(lambda _ (lambda _
(substitute* '("Makefile.in" (substitute* '("Makefile.in"
"ext/pty/pty.c" "ext/pty/pty.c"
"io.c" "io.c"
"lib/mkmf.rb" "lib/mkmf.rb"
"process.c") "process.c")
(("/bin/sh") (which "sh")))) (("/bin/sh") (which "sh")))
%standard-phases))) #t)))))
(native-search-paths (native-search-paths
(list (search-path-specification (list (search-path-specification
(variable "GEM_PATH") (variable "GEM_PATH")
@ -184,16 +184,16 @@ a focus on simplicity and productivity.")
`(#:test-target "test" `(#:test-target "test"
#:parallel-tests? #f #:parallel-tests? #f
#:phases #:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'replace-bin-sh (add-before 'configure 'replace-bin-sh
(lambda _ (lambda _
(substitute* '("Makefile.in" (substitute* '("Makefile.in"
"ext/pty/pty.c" "ext/pty/pty.c"
"io.c" "io.c"
"lib/mkmf.rb" "lib/mkmf.rb"
"process.c") "process.c")
(("/bin/sh") (which "sh")))) (("/bin/sh") (which "sh")))
%standard-phases))))) #t)))))))
(define-public ruby-hoe (define-public ruby-hoe
(package (package

View File

@ -138,31 +138,31 @@ backend of Sawfish.")
(arguments (arguments
'(#:tests? #f ; no tests '(#:tests? #f ; no tests
#:phases #:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'patch-exec-rep (add-before 'configure 'patch-exec-rep
(lambda _ (lambda _
(substitute* '("lisp/sawfish/cfg/main.jl.in" (substitute* '("lisp/sawfish/cfg/main.jl.in"
"scripts/sawfish-about.jl.in" "scripts/sawfish-about.jl.in"
"scripts/sawfish-client.jl" "scripts/sawfish-client.jl"
"scripts/sawfish-menu.jl") "scripts/sawfish-menu.jl")
(("exec rep") (string-append "exec " (which "rep"))))) (("exec rep") (string-append "exec " (which "rep"))))
(alist-cons-after #t))
'install 'wrap-scripts (add-after 'install 'wrap-scripts
;; Wrap scripts with REP_DL_LOAD_PATH for finding rep-gtk ;; Wrap scripts with REP_DL_LOAD_PATH for finding rep-gtk
;; and sawfish.client. ;; and sawfish.client.
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(define (wrap-script script) (define (wrap-script script)
(let ((out (assoc-ref outputs "out"))) (let ((out (assoc-ref outputs "out")))
(wrap-program (string-append out script) (wrap-program (string-append out script)
`("REP_DL_LOAD_PATH" = `("REP_DL_LOAD_PATH" =
,(list (getenv "REP_DL_LOAD_PATH") ,(list (getenv "REP_DL_LOAD_PATH")
(string-append out "/lib/rep")))))) (string-append out "/lib/rep"))))))
(for-each wrap-script (for-each wrap-script
(list "/bin/sawfish-about" (list "/bin/sawfish-about"
"/bin/sawfish-client" "/bin/sawfish-client"
"/bin/sawfish-config" "/bin/sawfish-config"
"/lib/sawfish/sawfish-menu"))) "/lib/sawfish/sawfish-menu"))
%standard-phases)))) #t)))))
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
("makeinfo" ,texinfo) ("makeinfo" ,texinfo)

View File

@ -417,73 +417,73 @@ implementation techniques and as an expository tool.")
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases '(#:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'pre-configure (add-before 'configure 'pre-configure
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
;; Patch dynamically loaded libraries with their absolute paths. ;; Patch dynamically loaded libraries with their absolute paths.
(let* ((library-path (search-path-as-string->list (let* ((library-path (search-path-as-string->list
(getenv "LIBRARY_PATH"))) (getenv "LIBRARY_PATH")))
(find-so (lambda (soname) (find-so (lambda (soname)
(search-path (search-path
library-path library-path
(format #f "~a.so" soname)))) (format #f "~a.so" soname))))
(patch-ffi-libs (lambda (file libs) (patch-ffi-libs (lambda (file libs)
(for-each (for-each
(lambda (lib) (lambda (lib)
(substitute* file (substitute* file
(((format #f "\"~a\"" lib)) (((format #f "\"~a\"" lib))
(format #f "\"~a\"" (find-so lib))))) (format #f "\"~a\"" (find-so lib)))))
libs)))) libs))))
(substitute* "collects/db/private/sqlite3/ffi.rkt" (substitute* "collects/db/private/sqlite3/ffi.rkt"
(("ffi-lib sqlite-so") (("ffi-lib sqlite-so")
(format #f "ffi-lib \"~a\"" (find-so "libsqlite3")))) (format #f "ffi-lib \"~a\"" (find-so "libsqlite3"))))
(substitute* "collects/openssl/libssl.rkt" (substitute* "collects/openssl/libssl.rkt"
(("ffi-lib libssl-so") (("ffi-lib libssl-so")
(format #f "ffi-lib \"~a\"" (find-so "libssl")))) (format #f "ffi-lib \"~a\"" (find-so "libssl"))))
(substitute* "collects/openssl/libcrypto.rkt" (substitute* "collects/openssl/libcrypto.rkt"
(("ffi-lib libcrypto-so") (("ffi-lib libcrypto-so")
(format #f "ffi-lib \"~a\"" (find-so "libcrypto")))) (format #f "ffi-lib \"~a\"" (find-so "libcrypto"))))
(substitute* "share/pkgs/math-lib/math/private/bigfloat/gmp.rkt" (substitute* "share/pkgs/math-lib/math/private/bigfloat/gmp.rkt"
(("ffi-lib libgmp-so") (("ffi-lib libgmp-so")
(format #f "ffi-lib \"~a\"" (find-so "libgmp")))) (format #f "ffi-lib \"~a\"" (find-so "libgmp"))))
(substitute* "share/pkgs/math-lib/math/private/bigfloat/mpfr.rkt" (substitute* "share/pkgs/math-lib/math/private/bigfloat/mpfr.rkt"
(("ffi-lib libmpfr-so") (("ffi-lib libmpfr-so")
(format #f "ffi-lib \"~a\"" (find-so "libmpfr")))) (format #f "ffi-lib \"~a\"" (find-so "libmpfr"))))
(for-each (for-each
(lambda (x) (apply patch-ffi-libs x)) (lambda (x) (apply patch-ffi-libs x))
'(("share/pkgs/draw-lib/racket/draw/unsafe/cairo-lib.rkt" '(("share/pkgs/draw-lib/racket/draw/unsafe/cairo-lib.rkt"
("libfontconfig" "libcairo")) ("libfontconfig" "libcairo"))
("share/pkgs/draw-lib/racket/draw/unsafe/glib.rkt" ("share/pkgs/draw-lib/racket/draw/unsafe/glib.rkt"
("libglib-2.0" "libgmodule-2.0" "libgobject-2.0")) ("libglib-2.0" "libgmodule-2.0" "libgobject-2.0"))
("share/pkgs/draw-lib/racket/draw/unsafe/jpeg.rkt" ("share/pkgs/draw-lib/racket/draw/unsafe/jpeg.rkt"
("libjpeg")) ("libjpeg"))
("share/pkgs/draw-lib/racket/draw/unsafe/pango.rkt" ("share/pkgs/draw-lib/racket/draw/unsafe/pango.rkt"
("libpango-1.0" "libpangocairo-1.0")) ("libpango-1.0" "libpangocairo-1.0"))
("share/pkgs/draw-lib/racket/draw/unsafe/png.rkt" ("share/pkgs/draw-lib/racket/draw/unsafe/png.rkt"
("libpng")) ("libpng"))
("share/pkgs/db-lib/db/private/odbc/ffi.rkt" ("share/pkgs/db-lib/db/private/odbc/ffi.rkt"
("libodbc")) ("libodbc"))
("share/pkgs/gui-lib/mred/private/wx/gtk/x11.rkt" ("share/pkgs/gui-lib/mred/private/wx/gtk/x11.rkt"
("libX11")) ("libX11"))
("share/pkgs/gui-lib/mred/private/wx/gtk/gsettings.rkt" ("share/pkgs/gui-lib/mred/private/wx/gtk/gsettings.rkt"
("libgio-2.0")) ("libgio-2.0"))
("share/pkgs/gui-lib/mred/private/wx/gtk/gtk3.rkt" ("share/pkgs/gui-lib/mred/private/wx/gtk/gtk3.rkt"
("libgdk-3" "libgtk-3")) ("libgdk-3" "libgtk-3"))
("share/pkgs/gui-lib/mred/private/wx/gtk/unique.rkt" ("share/pkgs/gui-lib/mred/private/wx/gtk/unique.rkt"
("libunique-1.0")) ("libunique-1.0"))
("share/pkgs/gui-lib/mred/private/wx/gtk/utils.rkt" ("share/pkgs/gui-lib/mred/private/wx/gtk/utils.rkt"
("libgdk-x11-2.0" "libgdk_pixbuf-2.0" "libgtk-x11-2.0")) ("libgdk-x11-2.0" "libgdk_pixbuf-2.0" "libgtk-x11-2.0"))
("share/pkgs/gui-lib/mred/private/wx/gtk/gl-context.rkt" ("share/pkgs/gui-lib/mred/private/wx/gtk/gl-context.rkt"
("libGL")) ("libGL"))
("share/pkgs/sgl/gl.rkt" ("share/pkgs/sgl/gl.rkt"
("libGL" "libGLU"))))) ("libGL" "libGLU")))))
(chdir "src")) (chdir "src")
(alist-cons-after #t))
'unpack 'patch-/bin/sh (add-after 'unpack 'patch-/bin/sh
(lambda _ (lambda _
(substitute* "collects/racket/system.rkt" (substitute* "collects/racket/system.rkt"
(("/bin/sh") (which "sh")))) (("/bin/sh") (which "sh")))
%standard-phases)) #t)))
#:tests? #f ; XXX: how to run them? #:tests? #f ; XXX: how to run them?
)) ))
(inputs (inputs

View File

@ -405,30 +405,30 @@ directory.")
(assoc-ref %build-inputs "sdl-union"))) (assoc-ref %build-inputs "sdl-union")))
#:parallel-build? #f ; parallel build fails #:parallel-build? #f ; parallel build fails
#:phases #:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'fix-env-and-patch (add-before 'configure 'fix-env-and-patch
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(setenv "GUILE_AUTO_COMPILE" "0") (setenv "GUILE_AUTO_COMPILE" "0")
;; SDL_image needs to dlopen libjpeg in the test suite. ;; SDL_image needs to dlopen libjpeg in the test suite.
(setenv "LD_LIBRARY_PATH" (setenv "LD_LIBRARY_PATH"
(string-append (assoc-ref inputs "libjpeg") "/lib")) (string-append (assoc-ref inputs "libjpeg") "/lib"))
;; Change the site directory /site/2.0 like Guile expects. ;; Change the site directory /site/2.0 like Guile expects.
(substitute* "build-aux/guile-baux/re-prefixed-site-dirs" (substitute* "build-aux/guile-baux/re-prefixed-site-dirs"
(("\"/site\"") "\"/site/2.0\"")) (("\"/site\"") "\"/site/2.0\""))
;; Skip tests that rely on sound support, which is unavailable in ;; Skip tests that rely on sound support, which is unavailable in
;; the build environment. ;; the build environment.
(substitute* "test/Makefile.in" (substitute* "test/Makefile.in"
(("HAVE_MIXER = .*$") (("HAVE_MIXER = .*$")
"HAVE_MIXER = 0\n"))) "HAVE_MIXER = 0\n"))
(alist-cons-before #t))
'check 'start-xorg-server (add-before 'check 'start-xorg-server
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
;; The test suite requires a running X server. ;; The test suite requires a running X server.
(system (format #f "~a/bin/Xvfb :1 &" (system (format #f "~a/bin/Xvfb :1 &"
(assoc-ref inputs "xorg-server"))) (assoc-ref inputs "xorg-server")))
(setenv "DISPLAY" ":1")) (setenv "DISPLAY" ":1")
%standard-phases)))) #t)))))
(synopsis "Guile interface for SDL (Simple DirectMedia Layer)") (synopsis "Guile interface for SDL (Simple DirectMedia Layer)")
(description "Guile-SDL is a set of bindings to the Simple DirectMedia (description "Guile-SDL is a set of bindings to the Simple DirectMedia
Layer (SDL). With them, Guile programmers can have easy access to graphics, Layer (SDL). With them, Guile programmers can have easy access to graphics,

View File

@ -40,13 +40,14 @@
(inputs `(("guile" ,guile-2.0))) (inputs `(("guile" ,guile-2.0)))
(arguments (arguments
`(#:configure-flags '("--enable-libserveez-install") `(#:configure-flags '("--enable-libserveez-install")
#:phases (alist-cons-before #:phases
'patch-source-shebangs 'patch-test-source (modify-phases %standard-phases
(lambda _ (add-before 'patch-source-shebangs 'patch-test-source
(substitute* (lambda _
(find-files "test" "^t[0-9]{3}$") (substitute*
(("/bin/sh") (which "sh")))) (find-files "test" "^t[0-9]{3}$")
%standard-phases))) (("/bin/sh") (which "sh")))
#t)))))
(home-page "https://www.gnu.org/software/serveez/") (home-page "https://www.gnu.org/software/serveez/")
(synopsis "Framework for implementing IP-based servers") (synopsis "Framework for implementing IP-based servers")
(description (description

View File

@ -46,20 +46,21 @@
(assoc-ref %outputs "out") (assoc-ref %outputs "out")
"/share/guile/site/2.0")) "/share/guile/site/2.0"))
#:phases (alist-cons-before #:phases
'configure 'pre-configure (modify-phases %standard-phases
(lambda* (#:key inputs #:allow-other-keys) (add-before 'configure 'pre-configure
;; Make sure the 'skribilo' command gets to see (lambda* (#:key inputs #:allow-other-keys)
;; Guile-Reader, even if Guile-Reader is not in the search ;; Make sure the 'skribilo' command gets to see
;; path. ;; Guile-Reader, even if Guile-Reader is not in the search
(let ((reader (assoc-ref inputs "guile-reader"))) ;; path.
(substitute* "src/skribilo.in" (let ((reader (assoc-ref inputs "guile-reader")))
(("^exec (.*) -c" _ things) (substitute* "src/skribilo.in"
(string-append "exec " things (("^exec (.*) -c" _ things)
" -L " reader "/share/guile/site/2.0" (string-append "exec " things
" -C " reader "/share/guile/site/2.0" " -L " reader "/share/guile/site/2.0"
" -c"))))) " -C " reader "/share/guile/site/2.0"
%standard-phases) " -c"))))
#t)))
#:parallel-build? #f)) #:parallel-build? #f))

View File

@ -60,14 +60,15 @@
(inputs (inputs
`(("zip" ,zip))) `(("zip" ,zip)))
(arguments (arguments
`(#:phases (alist-cons-before `(#:phases
'configure 'fix-libc (modify-phases %standard-phases
(lambda _ (add-before 'configure 'fix-libc
(let ((libc (assoc-ref %build-inputs "libc"))) (lambda _
(substitute* "libc.la.in" (let ((libc (assoc-ref %build-inputs "libc")))
(("@LIBC_SO_NAME@") "libc.so") (substitute* "libc.la.in"
(("@LIBC_SO_DIR@") (string-append libc "/lib"))))) (("@LIBC_SO_NAME@") "libc.so")
%standard-phases))) (("@LIBC_SO_DIR@") (string-append libc "/lib"))))
#t)))))
(home-page "http://smalltalk.gnu.org/") (home-page "http://smalltalk.gnu.org/")
(synopsis "Smalltalk environment") (synopsis "Smalltalk environment")
(description (description

View File

@ -154,7 +154,7 @@ optimising the environment for the application in use and the task performed.")
(assoc-ref %build-inputs "freetype") (assoc-ref %build-inputs "freetype")
"/include/freetype2")) "/include/freetype2"))
#:phases #:phases
(alist-delete 'configure %standard-phases))) (modify-phases %standard-phases (delete 'configure))))
(inputs (inputs
`(("freetype" ,freetype) `(("freetype" ,freetype)
("libxft" ,libxft) ("libxft" ,libxft)
@ -211,7 +211,7 @@ numbers of user-defined menu items efficiently.")
'(#:tests? #f ; no tests '(#:tests? #f ; no tests
#:make-flags (list "CC=gcc" #:make-flags (list "CC=gcc"
(string-append "PREFIX=" %output)) (string-append "PREFIX=" %output))
#:phases (alist-delete 'configure %standard-phases))) #:phases (modify-phases %standard-phases (delete 'configure))))
(inputs (inputs
`(("libx11" ,libx11) `(("libx11" ,libx11)
("libxext" ,libxext) ("libxext" ,libxext)

View File

@ -114,13 +114,14 @@
(string-append "--exec-prefix=" out) (string-append "--exec-prefix=" out)
(string-append "--mandir=" out "/share/man"))) (string-append "--mandir=" out "/share/man")))
#:phases (alist-cons-before #:phases
'configure 'set-path-to-stty (modify-phases %standard-phases
(lambda _ (add-before 'configure 'set-path-to-stty
(substitute* "configure" (lambda _
(("STTY_BIN=/bin/stty") (substitute* "configure"
(string-append "STTY_BIN=" (which "stty"))))) (("STTY_BIN=/bin/stty")
%standard-phases) (string-append "STTY_BIN=" (which "stty"))))
#t)))
#:test-target "test")) #:test-target "test"))
(home-page "http://expect.nist.gov/") (home-page "http://expect.nist.gov/")

View File

@ -56,12 +56,12 @@
"0kmgr5w3b1qwzxnsnw94q6rqs0hr8nbv9clf07ca2a2fyypx9kjk")))) "0kmgr5w3b1qwzxnsnw94q6rqs0hr8nbv9clf07ca2a2fyypx9kjk"))))
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-before (modify-phases %standard-phases
'configure 'pre-configure (add-before 'configure 'pre-configure
(lambda _ (lambda _
(substitute* "src/applog.cpp" (substitute* "src/applog.cpp"
(("^// TODO sc.*") "#include <sys/types.h>\n#include <sys/stat.h>\n"))) (("^// TODO sc.*") "#include <sys/types.h>\n#include <sys/stat.h>\n"))
%standard-phases))) #t)))))
(build-system gnu-build-system) (build-system gnu-build-system)
(synopsis "(u)Common C++ framework for threaded applications") (synopsis "(u)Common C++ framework for threaded applications")
(description "GNU Common C++ is an portable, optimized class framework for (description "GNU Common C++ is an portable, optimized class framework for

View File

@ -97,15 +97,15 @@ to DOS format and vice versa.")
(native-inputs `(("python" ,python-2))) (native-inputs `(("python" ,python-2)))
(arguments (arguments
'(#:phases '(#:phases
(alist-cons-before (modify-phases %standard-phases
'check 'pre-check (add-before 'check 'pre-check
(lambda _ (lambda _
(substitute* "tests/setup.py" (substitute* "tests/setup.py"
(("([[:space:]]*)include_dirs=.*" all space) (("([[:space:]]*)include_dirs=.*" all space)
(string-append all space "library_dirs=['../src/.libs'],\n"))) (string-append all space "library_dirs=['../src/.libs'],\n")))
;; The test extension 'Recode.so' lacks RUNPATH for 'librecode.so'. ;; The test extension 'Recode.so' lacks RUNPATH for 'librecode.so'.
(setenv "LD_LIBRARY_PATH" (string-append (getcwd) "/src/.libs"))) (setenv "LD_LIBRARY_PATH" (string-append (getcwd) "/src/.libs"))
%standard-phases))) #t)))))
(home-page "https://github.com/pinard/Recode") (home-page "https://github.com/pinard/Recode")
(synopsis "Text encoding converter") (synopsis "Text encoding converter")
(description "The Recode library converts files between character sets and (description "The Recode library converts files between character sets and
@ -208,10 +208,9 @@ encoding, supporting Unicode version 9.0.0.")
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases '(#:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'autoreconf (add-after 'unpack 'autoreconf
(lambda _ (zero? (system* "autoreconf" "-vif"))) (lambda _ (zero? (system* "autoreconf" "-vif")))))))
%standard-phases)))
(native-inputs (native-inputs
`(("autoconf" ,autoconf) `(("autoconf" ,autoconf)
("automake" ,automake) ("automake" ,automake)

View File

@ -41,16 +41,16 @@
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases '(#:phases
(alist-replace 'configure (modify-phases %standard-phases
(lambda* (#:key outputs #:allow-other-keys) (replace 'configure
;; This old `configure' script doesn't support (lambda* (#:key outputs #:allow-other-keys)
;; variables passed as arguments. ;; This old `configure' script doesn't support
(let ((out (assoc-ref outputs "out"))) ;; variables passed as arguments.
(setenv "CONFIG_SHELL" (which "bash")) (let ((out (assoc-ref outputs "out")))
(zero? (setenv "CONFIG_SHELL" (which "bash"))
(system* "./configure" (zero?
(string-append "--prefix=" out))))) (system* "./configure"
%standard-phases))) (string-append "--prefix=" out)))))))))
(home-page "https://www.gnu.org/software/time/") (home-page "https://www.gnu.org/software/time/")
(synopsis "Run a command, then display its resource usage") (synopsis "Run a command, then display its resource usage")
(description (description

View File

@ -134,13 +134,13 @@ rejects UDP traffic from the application you're using.")
#:configure-flags (list (string-append "--sysconfdir=" #:configure-flags (list (string-append "--sysconfdir="
(assoc-ref %outputs "out") (assoc-ref %outputs "out")
"/etc/privoxy")) "/etc/privoxy"))
#:phases (alist-cons-after #:phases
'unpack 'autoconf (modify-phases %standard-phases
(lambda _ (add-after 'unpack 'autoconf
;; Unfortunately, this is not a tarball produced by (lambda _
;; "make dist". ;; Unfortunately, this is not a tarball produced by
(zero? (system* "autoreconf" "-vfi"))) ;; "make dist".
%standard-phases) (zero? (system* "autoreconf" "-vfi")))))
#:tests? #f)) #:tests? #f))
(inputs (inputs
`(("w3m" ,w3m) `(("w3m" ,w3m)

View File

@ -35,18 +35,18 @@
"0b5nhl9vvif1w3wdipjsk8ckw49jj1w85xw1mmqi3zbcpazia306")))) "0b5nhl9vvif1w3wdipjsk8ckw49jj1w85xw1mmqi3zbcpazia306"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (alist-replace '(#:phases
'configure (modify-phases %standard-phases
(lambda* (#:key outputs #:allow-other-keys) (replace 'configure
;; The old 'configure' script doesn't support the arguments (lambda* (#:key outputs #:allow-other-keys)
;; that we pass by default. ;; The old 'configure' script doesn't support the arguments
(setenv "CONFIG_SHELL" (which "sh")) ;; that we pass by default.
(let ((out (assoc-ref outputs "out"))) (setenv "CONFIG_SHELL" (which "sh"))
(zero? (system* "./configure" (let ((out (assoc-ref outputs "out")))
(string-append "--prefix=" out) (zero? (system* "./configure"
(string-append "--infodir=" out (string-append "--prefix=" out)
"/share/info"))))) (string-append "--infodir=" out
%standard-phases))) "/share/info")))))))))
(home-page "https://www.gnu.org/software/uucp/uucp.html") (home-page "https://www.gnu.org/software/uucp/uucp.html")
(synopsis "UUCP protocol implementation") (synopsis "UUCP protocol implementation")
(description (description

View File

@ -1399,11 +1399,10 @@ encapsulated.")
("libtool" ,libtool))) ("libtool" ,libtool)))
(arguments (arguments
'(#:phases '(#:phases
(alist-cons-after (modify-phases %standard-phases
'unpack 'autoreconf (add-after 'unpack 'autoreconf
(lambda _ (lambda _
(zero? (system* "autoreconf" "-vif"))) (zero? (system* "autoreconf" "-vif")))))))))
%standard-phases)))))
(define-public libdvdcss (define-public libdvdcss
(package (package

View File

@ -165,11 +165,11 @@ features including, tables, builtin image display, bookmarks, SSL and more.")
"--enable-nls" "--enable-nls"
"--enable-ipv6")) "--enable-ipv6"))
#:tests? #f ; no check target #:tests? #f ; no check target
#:phases (alist-replace #:phases
'install (modify-phases %standard-phases
(lambda* (#:key (make-flags '()) #:allow-other-keys) (replace 'install
(zero? (apply system* "make" "install-full" make-flags))) (lambda* (#:key (make-flags '()) #:allow-other-keys)
%standard-phases))) (zero? (apply system* "make" "install-full" make-flags)))))))
(synopsis "Text Web Browser") (synopsis "Text Web Browser")
(description (description
"Lynx is a fully-featured World Wide Web (WWW) client for users running "Lynx is a fully-featured World Wide Web (WWW) client for users running

View File

@ -677,14 +677,13 @@ used to validate and fix HTML data.")
;; For the log file, etc. ;; For the log file, etc.
"--localstatedir=/var") "--localstatedir=/var")
#:phases #:phases
(alist-cons-before (modify-phases %standard-phases
'build 'pre-build (add-before 'build 'pre-build
(lambda* (#:key inputs #:allow-other-keys #:rest args) (lambda* (#:key inputs #:allow-other-keys #:rest args)
;; Uncommenting the next two lines may assist in debugging ;; Uncommenting the next two lines may assist in debugging
;; (substitute* "docs/man5/Makefile" (("a2x") "a2x -v")) ;; (substitute* "docs/man5/Makefile" (("a2x") "a2x -v"))
;; (setenv "XML_DEBUG_CATALOG" "1") ;; (setenv "XML_DEBUG_CATALOG" "1")
#t) #t)))))
%standard-phases)))
;; All of the below are used to generate the documentation ;; All of the below are used to generate the documentation
;; (Should they be propagated inputs of asciidoc ??) ;; (Should they be propagated inputs of asciidoc ??)
(native-inputs `(("asciidoc" ,asciidoc))) (native-inputs `(("asciidoc" ,asciidoc)))

View File

@ -71,123 +71,121 @@
;; we can't easily make setup.py use setuptools. ;; we can't easily make setup.py use setuptools.
#:use-setuptools? #f #:use-setuptools? #f
#:phases #:phases
(alist-cons-before (modify-phases %standard-phases
'build 'configure (add-before 'build 'configure
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")) (let ((out (assoc-ref outputs "out"))
(python (assoc-ref inputs "python"))) (python (assoc-ref inputs "python")))
(define (which* cmd) (define (which* cmd)
(cond ((string=? cmd "ping") (cond ((string=? cmd "ping")
"/run/setuid-programs/ping") "/run/setuid-programs/ping")
((which cmd) ((which cmd)
=> identity) => identity)
(else (else
(format (current-error-port) (format (current-error-port)
"WARNING: Unable to find absolute path for ~s~%" "WARNING: Unable to find absolute path for ~s~%"
cmd) cmd)
#f))) #f)))
(substitute* "setup.py" (substitute* "setup.py"
;; The handling of unrecognized distros in setup.py is ;; The handling of unrecognized distros in setup.py is
;; broken. Work around the problem. ;; broken. Work around the problem.
(("\\('init=', " all) (("\\('init=', " all)
(string-append "#" all)) (string-append "#" all))
;; Inhibit attempts to install in /var or /etc. ;; Inhibit attempts to install in /var or /etc.
(("\\(wpath\\.(log|etc|networks|.*scripts), " all) (("\\(wpath\\.(log|etc|networks|.*scripts), " all)
(string-append "#" all))) (string-append "#" all)))
;; Patch references to subprograms with absolute pathnames. ;; Patch references to subprograms with absolute pathnames.
(substitute* "wicd/wnettools.py" (substitute* "wicd/wnettools.py"
(("(misc\\.Run\\(\\[?[\"'])([^\"' ]*)" all pre cmd) (("(misc\\.Run\\(\\[?[\"'])([^\"' ]*)" all pre cmd)
(string-append pre (which* cmd))) (string-append pre (which* cmd)))
(("(self\\._find_program_path|misc\\.find_path)\\([\"']([^\"']*)[\"']\\)" (("(self\\._find_program_path|misc\\.find_path)\\([\"']([^\"']*)[\"']\\)"
all dummy cmd) all dummy cmd)
(let ((pathname (which* cmd))) (let ((pathname (which* cmd)))
(if pathname (if pathname
(string-append "'" pathname "'") (string-append "'" pathname "'")
"None"))) "None")))
(("([\"'])(ifconfig|route|wpa_cli|wpa_supplicant|iwconfig|iwpriv|iwlist|ping)" (("([\"'])(ifconfig|route|wpa_cli|wpa_supplicant|iwconfig|iwpriv|iwlist|ping)"
all open-quote cmd) all open-quote cmd)
(string-append open-quote (which* cmd)))) (string-append open-quote (which* cmd))))
;; setup.py cannot cope without LANG ;; setup.py cannot cope without LANG
(setenv "LANG" "C") (setenv "LANG" "C")
(let ((params (let ((params
(list (list
(string-append "--python=" python "/bin/python") (string-append "--python=" python "/bin/python")
"--no-install-init" "--no-install-init"
"--no-install-docs" "--no-install-docs"
"--no-install-acpi" "--no-install-acpi"
"--no-install-pmutils" "--no-install-pmutils"
"--no-install-kde" "--no-install-kde"
"--no-install-gnome-shell-extensions" "--no-install-gnome-shell-extensions"
"--distro=guixsd" "--distro=guixsd"
"--wicdgroup=netdev" "--wicdgroup=netdev"
"--loggroup=root" "--loggroup=root"
"--logperms=0640" "--logperms=0640"
;; XXX setup.py configure asks us to pass --init=, ;; XXX setup.py configure asks us to pass --init=,
;; but if we do it says "no such option 'init'". ;; but if we do it says "no such option 'init'".
;; (string-append "--init=" out "/etc/init.d") ;; (string-append "--init=" out "/etc/init.d")
(string-append "--initfile=" out "/etc/init.d/wicd") (string-append "--initfile=" out "/etc/init.d/wicd")
(string-append "--lib=" out "/lib/wicd") (string-append "--lib=" out "/lib/wicd")
(string-append "--share=" out "/share/wicd") (string-append "--share=" out "/share/wicd")
"--etc=/etc/wicd" "--etc=/etc/wicd"
"--scripts=/etc/wicd/scripts" "--scripts=/etc/wicd/scripts"
"--pmutils=/etc/pm-utils/sleep.d" "--pmutils=/etc/pm-utils/sleep.d"
(string-append "--encryption=" (string-append "--encryption="
out "/etc/encryption/templates") out "/etc/encryption/templates")
(string-append "--bin=" out "/bin") (string-append "--bin=" out "/bin")
(string-append "--sbin=" out "/sbin") (string-append "--sbin=" out "/sbin")
(string-append "--daemon=" out "/share/wicd/daemon") (string-append "--daemon=" out "/share/wicd/daemon")
(string-append "--backends=" out "/share/wicd/backends") (string-append "--backends=" out "/share/wicd/backends")
(string-append "--curses=" out "/share/wicd/curses") (string-append "--curses=" out "/share/wicd/curses")
(string-append "--gtk=" out "/share/wicd/gtk") (string-append "--gtk=" out "/share/wicd/gtk")
(string-append "--cli=" out "/share/wicd/cli") (string-append "--cli=" out "/share/wicd/cli")
(string-append "--gnome-shell-extensions=" (string-append "--gnome-shell-extensions="
out "/share/gnome-shell-extensions") out "/share/gnome-shell-extensions")
(string-append "--icons=" out "/share/icons/hicolor") (string-append "--icons=" out "/share/icons/hicolor")
(string-append "--pixmaps=" out "/share/pixmaps") (string-append "--pixmaps=" out "/share/pixmaps")
(string-append "--images=" out "/share/icons") (string-append "--images=" out "/share/icons")
(string-append "--dbus=" out "/etc/dbus-1/system.d") (string-append "--dbus=" out "/etc/dbus-1/system.d")
(string-append "--dbus-service=" (string-append "--dbus-service="
out "/share/dbus-1/system-services") out "/share/dbus-1/system-services")
(string-append "--systemd=" out "/lib/systemd/system") (string-append "--systemd=" out "/lib/systemd/system")
(string-append "--logrotate=" out "/etc/logrotate.d") (string-append "--logrotate=" out "/etc/logrotate.d")
(string-append "--desktop=" out "/share/applications") (string-append "--desktop=" out "/share/applications")
(string-append "--translations=" out "/share/locale") (string-append "--translations=" out "/share/locale")
(string-append "--autostart=" out "/etc/xdg/autostart") (string-append "--autostart=" out "/etc/xdg/autostart")
(string-append "--docdir=" out "/share/doc/wicd") (string-append "--docdir=" out "/share/doc/wicd")
(string-append "--mandir=" out "/share/man") (string-append "--mandir=" out "/share/man")
(string-append "--kdedir=" out "/share/autostart")))) (string-append "--kdedir=" out "/share/autostart"))))
(format #t (format #t
"running ~s with command ~s and parameters ~s~%" "running ~s with command ~s and parameters ~s~%"
"python setup.py" "configure" params) "python setup.py" "configure" params)
(zero? (apply system* "python" "setup.py" "configure" params))))) (zero? (apply system* "python" "setup.py" "configure" params))))))
(alist-cons-after (add-after 'install 'post-install
'install 'post-install (lambda* (#:key inputs outputs #:allow-other-keys)
(lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")))
(let ((out (assoc-ref outputs "out"))) ;; wicd's installer tries to put dhclient.conf.template.default
;; wicd's installer tries to put dhclient.conf.template.default ;; in /etc/wicd/other, which is not available in the build
;; in /etc/wicd/other, which is not available in the build ;; environment, so here we install it manually in the output
;; environment, so here we install it manually in the output ;; directory.
;; directory. (let ((dest-dir (string-append out "/etc/wicd"))
(let ((dest-dir (string-append out "/etc/wicd")) (name "dhclient.conf.template.default"))
(name "dhclient.conf.template.default")) (install-file (string-append "other/" name) dest-dir))
(install-file (string-append "other/" name) dest-dir))
;; Copy index.theme from hicolor-icon-theme. This is needed to ;; Copy index.theme from hicolor-icon-theme. This is needed to
;; allow wicd-gtk to find its icons. ;; allow wicd-gtk to find its icons.
(let ((hicolor (assoc-ref inputs "hicolor-icon-theme")) (let ((hicolor (assoc-ref inputs "hicolor-icon-theme"))
(name "/share/icons/hicolor/index.theme")) (name "/share/icons/hicolor/index.theme"))
(install-file (string-append hicolor name) (install-file (string-append hicolor name)
(string-append out "/share/icons/hicolor"))) (string-append out "/share/icons/hicolor")))
#t)) #t))))))
%standard-phases))))
(synopsis "Network connection manager") (synopsis "Network connection manager")
(description "Wicd is a network manager that aims to simplify wired and (description "Wicd is a network manager that aims to simplify wired and
wireless networking.") wireless networking.")

View File

@ -115,7 +115,7 @@ nested include statements).")
("xcb-util-keysyms" ,xcb-util-keysyms) ("xcb-util-keysyms" ,xcb-util-keysyms)
("xcb-util-wm" ,xcb-util-wm))) ("xcb-util-wm" ,xcb-util-wm)))
(arguments (arguments
'(#:phases (alist-delete 'configure %standard-phases) '(#:phases (modify-phases %standard-phases (delete 'configure))
#:tests? #f ; no check target #:tests? #f ; no check target
#:make-flags (list "CC=gcc" #:make-flags (list "CC=gcc"
(string-append "PREFIX=" %output)))) (string-append "PREFIX=" %output))))

View File

@ -689,7 +689,7 @@ Guile will work for XBindKeys.")
("xcb-util-keysyms" ,xcb-util-keysyms) ("xcb-util-keysyms" ,xcb-util-keysyms)
("xcb-util-wm" ,xcb-util-wm))) ("xcb-util-wm" ,xcb-util-wm)))
(arguments (arguments
'(#:phases (alist-delete 'configure %standard-phases) '(#:phases (modify-phases %standard-phases (delete 'configure))
#:tests? #f ; no check target #:tests? #f ; no check target
#:make-flags (list "CC=gcc" #:make-flags (list "CC=gcc"
(string-append "PREFIX=" %output)))) (string-append "PREFIX=" %output))))
@ -796,7 +796,8 @@ within a single process.")
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no check target `(#:tests? #f ; no check target
#:phases (alist-delete 'configure %standard-phases) ; no configure script ;; no configure script
#:phases (modify-phases %standard-phases (delete 'configure))
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
"MANDIR=/share/man/man1" "MANDIR=/share/man/man1"
"CC=gcc"))) "CC=gcc")))

View File

@ -114,17 +114,17 @@ Xfce Desktop Environment.")
(arguments (arguments
'(#:phases '(#:phases
;; Run check after install phase to test dbus activation. ;; Run check after install phase to test dbus activation.
(alist-cons-after (modify-phases %standard-phases
'install 'check (add-after 'install 'check
(lambda _ (lambda _
(setenv "HOME" (getenv "TMPDIR")) ; xfconfd requires a writable HOME (setenv "HOME" (getenv "TMPDIR")) ; xfconfd requires a writable HOME
;; Run test-suite under a dbus session. ;; Run test-suite under a dbus session.
(setenv "XDG_DATA_DIRS" ; for finding org.xfce.Xfconf.service (setenv "XDG_DATA_DIRS" ; for finding org.xfce.Xfconf.service
(string-append %output "/share")) (string-append %output "/share"))
;; For the missing '/etc/machine-id'. ;; For the missing '/etc/machine-id'.
(setenv "DBUS_FATAL_WARNINGS" "0"); (setenv "DBUS_FATAL_WARNINGS" "0");
(zero? (system* "dbus-launch" "make" "check"))) (zero? (system* "dbus-launch" "make" "check"))))
(alist-delete 'check %standard-phases)))) (delete 'check))))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("intltool" ,intltool))) ("intltool" ,intltool)))

View File

@ -159,44 +159,42 @@ selected in various ways. For text, 35 fonts are available.")
(arguments (arguments
`(#:tests? #f `(#:tests? #f
#:phases #:phases
(alist-replace (modify-phases %standard-phases
'configure (replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((imake (assoc-ref inputs "imake")) (let ((imake (assoc-ref inputs "imake"))
(out (assoc-ref outputs "out"))) (out (assoc-ref outputs "out")))
(substitute* '("fig2dev/Imakefile" (substitute* '("fig2dev/Imakefile"
"transfig/Imakefile") "transfig/Imakefile")
(("XCOMM (BINDIR = )[[:graph:]]*" _ front) (("XCOMM (BINDIR = )[[:graph:]]*" _ front)
(string-append front out "/bin")) (string-append front out "/bin"))
(("XCOMM USEINLINE") "USEINLINE") (("XCOMM USEINLINE") "USEINLINE")
;; The variable name is deceptive. The directory is used as an ;; The variable name is deceptive. The directory is used as an
;; installation path for bitmaps. ;; installation path for bitmaps.
(("(XFIGLIBDIR =[[:blank:]]*)[[:graph:]]*" _ front) (("(XFIGLIBDIR =[[:blank:]]*)[[:graph:]]*" _ front)
(string-append front out "/lib")) (string-append front out "/lib"))
(("(XPMLIBDIR = )[[:graph:]]*" _ front) (("(XPMLIBDIR = )[[:graph:]]*" _ front)
(string-append front (assoc-ref inputs "libxpm") "/lib")) (string-append front (assoc-ref inputs "libxpm") "/lib"))
(("(XPMINC = -I)[[:graph:]]*" _ front) (("(XPMINC = -I)[[:graph:]]*" _ front)
(string-append front (assoc-ref inputs "libxpm") "/include/X11")) (string-append front (assoc-ref inputs "libxpm") "/include/X11"))
(("/usr/local/lib/fig2dev") (string-append out "/lib"))) (("/usr/local/lib/fig2dev") (string-append out "/lib")))
;; The -a argument is required in order to pick up the correct paths ;; The -a argument is required in order to pick up the correct paths
;; to several X header files. ;; to several X header files.
(zero? (system* "xmkmf" "-a")) (zero? (system* "xmkmf" "-a"))
(substitute* '("Makefile" (substitute* '("Makefile"
"fig2dev/Makefile" "fig2dev/Makefile"
"transfig/Makefile") "transfig/Makefile")
;; These imake variables somehow remain undefined ;; These imake variables somehow remain undefined
(("DefaultGcc2[[:graph:]]*Opt") "-O2") (("DefaultGcc2[[:graph:]]*Opt") "-O2")
;; Reset a few variable defaults that are set in imake templates ;; Reset a few variable defaults that are set in imake templates
((imake) out) ((imake) out)
(("(MANPATH = )[[:graph:]]*" _ front) (("(MANPATH = )[[:graph:]]*" _ front)
(string-append front out "/share/man")) (string-append front out "/share/man"))
(("(CONFDIR = )([[:graph:]]*)" _ front default) (("(CONFDIR = )([[:graph:]]*)" _ front default)
(string-append front out default))))) (string-append front out default))))))
(alist-cons-after (add-after 'install 'install/doc
'install 'install/doc (lambda _
(lambda _ (zero? (system* "make" "install.man")))))))
(zero? (system* "make" "install.man")))
%standard-phases))))
(home-page "http://www.xfig.org/") (home-page "http://www.xfig.org/")
(synopsis "Create portable LaTeX figures") (synopsis "Create portable LaTeX figures")
(description (description

View File

@ -114,26 +114,25 @@
("xproto" ,xproto))) ("xproto" ,xproto)))
(arguments (arguments
`(#:phases `(#:phases
(alist-cons-after (modify-phases %standard-phases
'install 'install-data (add-after 'install 'install-data
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((cf-files (assoc-ref inputs "xorg-cf-files")) (let ((cf-files (assoc-ref inputs "xorg-cf-files"))
(out (assoc-ref outputs "out")) (out (assoc-ref outputs "out"))
(unpack (assoc-ref %standard-phases 'unpack)) (unpack (assoc-ref %standard-phases 'unpack))
(patch-source-shebangs (patch-source-shebangs
(assoc-ref %standard-phases 'patch-source-shebangs))) (assoc-ref %standard-phases 'patch-source-shebangs)))
(mkdir "xorg-cf-files") (mkdir "xorg-cf-files")
(with-directory-excursion "xorg-cf-files" (with-directory-excursion "xorg-cf-files"
(apply unpack (list #:source cf-files)) (apply unpack (list #:source cf-files))
(apply patch-source-shebangs (list #:source cf-files)) (apply patch-source-shebangs (list #:source cf-files))
(substitute* '("mingw.cf" "Imake.tmpl" "nto.cf" "os2.cf" (substitute* '("mingw.cf" "Imake.tmpl" "nto.cf" "os2.cf"
"linux.cf" "Amoeba.cf" "cygwin.cf") "linux.cf" "Amoeba.cf" "cygwin.cf")
(("/bin/sh") (which "bash"))) (("/bin/sh") (which "bash")))
(and (zero? (system* "./configure" (and (zero? (system* "./configure"
(string-append "SHELL=" (which "bash")) (string-append "SHELL=" (which "bash"))
(string-append "--prefix=" out))) (string-append "--prefix=" out)))
(zero? (system* "make" "install")))))) (zero? (system* "make" "install"))))))))))
%standard-phases)))
(home-page "http://www.x.org") (home-page "http://www.x.org")
(synopsis "Source code configuration and build system") (synopsis "Source code configuration and build system")
(description (description