summaryrefslogtreecommitdiff
path: root/gnu/packages/base.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/base.scm')
-rw-r--r--gnu/packages/base.scm148
1 files changed, 75 insertions, 73 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index f221e9484f..6d614ce5c3 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -58,6 +58,7 @@
#:use-module (gnu packages gettext)
#:use-module (guix i18n)
#:use-module (guix utils)
+ #:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
@@ -1270,71 +1271,72 @@ command.")
"022fn6gkmp7pamlgab04x0dm5hnyn2m2fcnyr3pvm36612xd5rrr"))))
(build-system gnu-build-system)
(arguments
- `(#:tests? #f
- ;; This consists purely of (architecture-independent) data,
- ;; so ‘cross-compilation’ is pointless here!
- ;; (The binaries zic, dump, and tzselect are deleted in the post-install
- ;; phase.)
- #:target #f
- ;; share/zoneinfo/posix is a symlink to share/zoneinfo,
- ;; so include the package itself in #:allowed-references.
- #:allowed-references ("out")
- #:make-flags (let ((out (assoc-ref %outputs "out"))
- (tmp (getenv "TMPDIR")))
- (list (string-append "TOPDIR=" out)
- (string-append "TZDIR=" out "/share/zoneinfo")
- (string-append "TZDEFAULT=" out
- "/share/zoneinfo/localtime")
-
- ;; Likewise for the C library routines.
- (string-append "LIBDIR=" tmp "/lib")
- (string-append "MANDIR=" tmp "/man")
-
- ;; XXX: tzdata 2020b changed the on-disk format
- ;; of the time zone files from 'fat' to 'slim'.
- ;; Many packages (particularly evolution-data-server)
- ;; can not yet handle the latter, so we stick with
- ;; 'fat' for now.
- ,@(if (version>=? (package-version this-package)
- "2020b")
- '("CPPFLAGS=-DZIC_BLOAT_DEFAULT='\"fat\"'")
- '())
-
- "AWK=awk"
- "CC=gcc"))
- #:modules ((guix build utils)
- (guix build gnu-build-system)
- (srfi srfi-1))
- #:phases
- (modify-phases %standard-phases
- (replace 'unpack
- (lambda* (#:key source inputs #:allow-other-keys)
- (invoke "tar" "xvf" source)
- (invoke "tar" "xvf" (assoc-ref inputs "tzcode"))))
- (add-after 'install 'post-install
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Move data in the right place.
- (let ((out (assoc-ref outputs "out")))
- ;; Discard zic, dump, and tzselect, already
- ;; provided by glibc.
- (delete-file-recursively (string-append out "/usr"))
- (symlink (string-append out "/share/zoneinfo")
- (string-append out "/share/zoneinfo/posix"))
- (delete-file-recursively
- (string-append out "/share/zoneinfo-posix"))
- (copy-recursively (string-append out "/share/zoneinfo-leaps")
- (string-append out "/share/zoneinfo/right"))
- (delete-file-recursively
- (string-append out "/share/zoneinfo-leaps")))))
- (delete 'configure))))
- (inputs `(("tzcode" ,(origin
- (method url-fetch)
- (uri (string-append
- "https://data.iana.org/time-zones/releases/tzcode"
- version ".tar.gz"))
- (sha256
- (base32
- "1l02b0jiwp3fl0xd6227i69d26rmx3yrnq0ssq9vvdmm4jhvyipb"))))))
+ (list #:tests? #f
+
+ ;; This consists purely of (architecture-independent) data, so
+ ;; ‘cross-compilation’ is pointless here! (The binaries zic,
+ ;; dump, and tzselect are deleted in the post-install phase.)
+ #:target #f
+
+ #:make-flags
+ #~(let ((out #$output)
+ (tmp (getenv "TMPDIR")))
+ (list (string-append "TOPDIR=" out)
+ (string-append "TZDIR=" out "/share/zoneinfo")
+ (string-append "TZDEFAULT=" out
+ "/share/zoneinfo/localtime")
+
+ ;; Likewise for the C library routines.
+ (string-append "LIBDIR=" tmp "/lib")
+ (string-append "MANDIR=" tmp "/man")
+
+ ;; XXX: tzdata 2020b changed the on-disk format
+ ;; of the time zone files from 'fat' to 'slim'.
+ ;; Many packages (particularly evolution-data-server)
+ ;; can not yet handle the latter, so we stick with
+ ;; 'fat' for now.
+ #$@(if (version>=? (package-version this-package)
+ "2020b")
+ '("CPPFLAGS=-DZIC_BLOAT_DEFAULT='\"fat\"'")
+ '())
+
+ "AWK=awk"
+ "CC=gcc"))
+ #:modules '((guix build utils)
+ (guix build gnu-build-system)
+ (srfi srfi-1))
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'unpack
+ (lambda* (#:key source inputs #:allow-other-keys)
+ (invoke "tar" "xvf" source)
+ (invoke "tar" "xvf"
+ #$(match (package-inputs this-package)
+ (((_ tzcode)) tzcode)))))
+ (add-after 'install 'post-install
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; Move data in the right place.
+ (let ((out (assoc-ref outputs "out")))
+ ;; Discard zic, dump, and tzselect, already
+ ;; provided by glibc.
+ (delete-file-recursively (string-append out "/usr"))
+ (symlink (string-append out "/share/zoneinfo")
+ (string-append out "/share/zoneinfo/posix"))
+ (delete-file-recursively
+ (string-append out "/share/zoneinfo-posix"))
+ (copy-recursively (string-append out "/share/zoneinfo-leaps")
+ (string-append out "/share/zoneinfo/right"))
+ (delete-file-recursively
+ (string-append out "/share/zoneinfo-leaps")))))
+ (delete 'configure))))
+ (inputs (list (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://data.iana.org/time-zones/releases/tzcode"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1l02b0jiwp3fl0xd6227i69d26rmx3yrnq0ssq9vvdmm4jhvyipb")))))
(home-page "https://www.iana.org/time-zones")
(synopsis "Database of current and historical time zones")
(description "The Time Zone Database (often called tz or zoneinfo)
@@ -1363,14 +1365,14 @@ and daylight-saving rules.")
(base32
"022fn6gkmp7pamlgab04x0dm5hnyn2m2fcnyr3pvm36612xd5rrr"))))
(inputs
- `(("tzcode" ,(origin
- (method url-fetch)
- (uri (string-append
- "https://data.iana.org/time-zones/releases/tzcode"
- version ".tar.gz"))
- (sha256
- (base32
- "1l02b0jiwp3fl0xd6227i69d26rmx3yrnq0ssq9vvdmm4jhvyipb")))))))))
+ (list (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://data.iana.org/time-zones/releases/tzcode"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1l02b0jiwp3fl0xd6227i69d26rmx3yrnq0ssq9vvdmm4jhvyipb"))))))))
(define-public libiconv
(package