aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2022-06-19 02:00:05 +0200
committerTobias Geerinckx-Rice <me@tobias.gr>2022-06-19 02:00:00 +0200
commitf454e0fcaa6e41da1ec3caec91ebe87b27fe35d3 (patch)
tree693ab75a67169567abfb85f0b6e35519ea7f6e33 /gnu/packages
parent41bc69886a9ef184fea66531668ac39da8fdcf95 (diff)
downloadguix-f454e0fcaa6e41da1ec3caec91ebe87b27fe35d3.tar
guix-f454e0fcaa6e41da1ec3caec91ebe87b27fe35d3.tar.gz
gnu: exim: Use G-expressions.
* gnu/packages/mail.scm (exim)[arguments]: Rewrite as G-expressions. Make some surface tweaks to reduce excessive indentation in places, but again the output is unchanged.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/mail.scm123
1 files changed, 63 insertions, 60 deletions
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 730687455e..7aea075006 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -1811,66 +1811,69 @@ delivery.")
(native-inputs
(list pcre2 perl pkg-config))
(arguments
- `(#:phases
- (modify-phases %standard-phases
- (replace 'configure
- ;; We'd use #:make-flags but the top-level Makefile calls others
- ;; recursively, so just set all variables this way.
- (lambda* (#:key outputs inputs #:allow-other-keys)
- (substitute* '("Makefile" "OS/Makefile-Default")
- (("(RM_COMMAND=).*" all var)
- (string-append var "rm\n")))
- (copy-file "src/EDITME" "Local/Makefile")
- (copy-file "exim_monitor/EDITME" "Local/eximon.conf")
- (let ((out (assoc-ref outputs "out")))
- (substitute* '("Local/Makefile")
- (("(BIN_DIRECTORY=).*" all var)
- (string-append var out "/bin\n"))
- (("(CONFIGURE_FILE=).*" all var)
- (string-append var out "/etc/exim.conf\n"))
- (("(EXIM_USER=).*" all var)
- (string-append var "nobody\n"))
- (("(FIXED_NEVER_USERS=).*" all var)
- (string-append var "\n")) ; XXX no root in build environment
- (("(COMPRESS_COMMAND=).*" all var)
- (string-append var (search-input-file inputs "bin/gzip") "\n"))
- (("(ZCAT_COMMAND=).*" all var)
- (string-append var (search-input-file inputs "bin/zcat") "\n"))
- (("# (USE_GNUTLS(|_PC)=.*)" all line)
- (string-append line "\n"))
- (("# (AUTH_CRAM_MD5=yes)" all line) line)
- (("# (AUTH_DOVECOT=yes)" all line) line)
- (("# (AUTH_EXTERNAL=yes)" all line) line)
- (("# (AUTH_PLAINTEXT=yes)" all line) line)
- (("# (AUTH_SPA=yes)" all line) line)
- (("# (AUTH_TLS=yes)" all line) line))
- ;; This file has hard-coded relative file names for tools despite
- ;; the zcat configuration above.
- (substitute* '("src/exigrep.src")
- (("'(bzcat|xzcat|zcat|lzma)'" _ command)
- (format #f "'~a'"
- (search-input-file
- inputs (string-append "bin/" command))))))))
- (add-before 'build 'fix-sh-paths
- (lambda _
- (substitute* '("scripts/lookups-Makefile" "scripts/reversion")
- (("SHELL=/bin/sh") "SHELL=sh"))
- (substitute* '("scripts/Configure-config.h")
- (("\\| /bin/sh") "| sh"))
- (patch-shebang "scripts/Configure-eximon")))
- (add-before 'build 'build-reproducibly
- (lambda _
- ;; The ‘compilation number’ is incremented for every build from the
- ;; same source tree. It appears to vary over different (parallel?)
- ;; builds. Make it a ‘constant number’ instead.
- (substitute* "src/version.c"
- (("#include \"cnumber.h\"") "1")))))
- #:make-flags
- (list (string-append "CC=" ,(cc-for-target))
- "INSTALL_ARG=-no_chown")
- ;; No 'check' target. There is a test suite in test/, which assumes that
- ;; certain build options were (not) used and that it can freely ‘sudo’.
- #:tests? #f))
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure
+ ;; We'd use #:make-flags but the top-level Makefile calls
+ ;; others recursively, so just set all variables this way.
+ (lambda* (#:key outputs inputs #:allow-other-keys)
+ (substitute* (list "Makefile" "OS/Makefile-Default")
+ (("(RM_COMMAND=).*" all var)
+ (string-append var "rm\n")))
+ (copy-file "src/EDITME" "Local/Makefile")
+ (copy-file "exim_monitor/EDITME" "Local/eximon.conf")
+ (let ((out (assoc-ref outputs "out")))
+ (substitute* "Local/Makefile"
+ (("(BIN_DIRECTORY=).*" all var)
+ (string-append var out "/bin\n"))
+ (("(CONFIGURE_FILE=).*" all var)
+ (string-append var out "/etc/exim.conf\n"))
+ (("(EXIM_USER=).*" all var)
+ (string-append var "nobody\n"))
+ (("(FIXED_NEVER_USERS=).*" all var)
+ (string-append var "\n")) ; no root in build environment
+ (("(COMPRESS_COMMAND=).*" all var)
+ (string-append var (search-input-file inputs "bin/gzip")
+ "\n"))
+ (("(ZCAT_COMMAND=).*" all var)
+ (string-append var (search-input-file inputs "bin/zcat")
+ "\n"))
+ (("# (USE_GNUTLS(|_PC)=.*)" all line)
+ (string-append line "\n"))
+ (("# (AUTH_CRAM_MD5=yes)" all line) line)
+ (("# (AUTH_DOVECOT=yes)" all line) line)
+ (("# (AUTH_EXTERNAL=yes)" all line) line)
+ (("# (AUTH_PLAINTEXT=yes)" all line) line)
+ (("# (AUTH_SPA=yes)" all line) line)
+ (("# (AUTH_TLS=yes)" all line) line))
+ ;; This file has hard-coded relative file names for tools
+ ;; despite the zcat configuration above.
+ (substitute* "src/exigrep.src"
+ (("'(bzcat|xzcat|zcat|lzma)'" _ command)
+ (format #f "'~a'"
+ (search-input-file
+ inputs (string-append "bin/" command))))))))
+ (add-before 'build 'fix-sh-file-names
+ (lambda _
+ (substitute* (list "scripts/lookups-Makefile"
+ "scripts/reversion")
+ (("SHELL=/bin/sh") "SHELL=sh"))
+ (substitute* "scripts/Configure-config.h"
+ (("\\| /bin/sh") "| sh"))
+ (patch-shebang "scripts/Configure-eximon")))
+ (add-before 'build 'build-reproducibly
+ (lambda _
+ ;; The ‘compilation number’ increments on every build in the
+ ;; same source tree and varies across different (parallel?)
+ ;; builds. Make it a ‘constant number’ instead.
+ (substitute* "src/version.c"
+ (("#include \"cnumber.h\"") "1")))))
+ #:make-flags
+ #~(list (string-append "CC=" #$(cc-for-target))
+ "INSTALL_ARG=-no_chown")
+ ;; No ‘check’ target. The ‘test/’ suite assumes that particular
+ ;; build options were (not) used and that it can freely ‘sudo’.
+ #:tests? #f))
(home-page "https://www.exim.org/")
(synopsis
"Message Transfer Agent (MTA) developed at the University of Cambridge")