aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxime Devos <maximedevos@telenet.be>2021-08-25 12:34:35 +0200
committerMathieu Othacehe <othacehe@gnu.org>2021-09-20 11:15:08 +0000
commit35e1a572f6424c4d9bd2679590be14d664dd2121 (patch)
tree0bdab6f4baa4f381f63758a4559007ff3206df8b
parent2b16755f99997c42b986e75c3e48164884afb245 (diff)
downloadguix-35e1a572f6424c4d9bd2679590be14d664dd2121.tar
guix-35e1a572f6424c4d9bd2679590be14d664dd2121.tar.gz
gnu: libdaemon: Support cross-compilation to aarch64-linux-gnu.
* gnu/packages/libdaemon.scm (libdaemon)[native-inputs]: Add "config" when cross-compiling for aarch64. (libdaemon)[arguments]<#:phases>{update-config.sub}: When cross-compiling for aarch64, update the "config.sub" script.
-rw-r--r--gnu/packages/libdaemon.scm42
1 files changed, 29 insertions, 13 deletions
diff --git a/gnu/packages/libdaemon.scm b/gnu/packages/libdaemon.scm
index e47d66cfa7..9dc851e823 100644
--- a/gnu/packages/libdaemon.scm
+++ b/gnu/packages/libdaemon.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -17,8 +18,10 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages libdaemon)
+ #:use-module (gnu packages autotools)
#:use-module (guix licenses)
#:use-module (guix packages)
+ #:use-module (guix utils)
#:use-module (guix download)
#:use-module (guix build-system gnu))
@@ -45,21 +48,34 @@
"0d5qlq5ab95wh1xc87rqrh1vx6i8lddka1w3f1zcqvcqdxgyn8zx"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
- (arguments
- (if (%current-target-system)
- ;; The 'setpgrp' test cannot provide an answer when cross-compiling,
- ;; so provide the right one for glibc.
- `(#:configure-flags (list "ac_cv_func_setpgrp_void=yes"
-
- ;; TODO: Move this globally on the next
- ;; rebuild cycle.
- ;; Set a valid localstatedir for the
- ;; benefit of the default
- ;; 'daemon_pid_file_proc', used by the
- ;; Hurd's console client.
- "--localstatedir=/var"))
+ (native-inputs
+ (if (and=> (%current-target-system) target-aarch64?)
+ `(("config" ,config)) ; for config.sub
'()))
+ (arguments
+ `(,@(if (%current-target-system)
+ ;; The 'setpgrp' test cannot provide an answer when cross-compiling,
+ ;; so provide the right one for glibc.
+ `(#:configure-flags (list "ac_cv_func_setpgrp_void=yes"
+ ;; TODO: Move this globally on the next
+ ;; rebuild cycle.
+ ;; Set a valid localstatedir for the
+ ;; benefit of the default
+ ;; 'daemon_pid_file_proc', used by the
+ ;; Hurd's console client.
+ "--localstatedir=/var"))
+ '())
+ ,@(if (and=> (%current-target-system) target-aarch64?)
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'update-config.sub
+ (lambda _
+ ;; Replace outdated config.sub such that aarch64
+ ;; will be recognised as an architecture.
+ (delete-file "config.sub")
+ (symlink (which "config.sub") "config.sub")))))
+ '())))
;; XXX: Stale URL, missing replacement. See <http://bugs.gnu.org/18639>.
(home-page "http://0pointer.de/lennart/projects/libdaemon/")