Message ID | 20210929221938.17168-1-maximedevos@telenet.be |
---|---|
State | Accepted |
Headers | show |
Series | Clean up TODO(core-updates) | expand |
Context | Check | Description |
---|---|---|
cbaines/comparison | success | View comparision |
cbaines/git branch | success | View Git branch |
cbaines/comparison | success | View comparision |
cbaines/git branch | success | View Git branch |
cbaines/applying patch | success | View Laminar job |
cbaines/issue | success | View issue |
cbaines/applying patch | success | View Laminar job |
cbaines/issue | success | View issue |
cbaines/comparison | success | View comparision |
cbaines/git branch | success | View Git branch |
cbaines/comparison | success | View comparision |
cbaines/git branch | success | View Git branch |
cbaines/applying patch | success | View Laminar job |
cbaines/issue | success | View issue |
cbaines/applying patch | success | View Laminar job |
cbaines/issue | success | View issue |
cbaines/comparison | success | View comparision |
cbaines/git branch | success | View Git branch |
cbaines/applying patch | success | View Laminar job |
cbaines/issue | success | View issue |
Hello Maxime, > +(define mozilla-build-system > + (build-system > + (name 'mozilla) > + (description "The build system for Mozilla software using the Autotools") > + (lower lower-mozilla))) This new build system should be documented in the "Build systems" section of the documentation. Otherwise, the series looks fine and I'll probably apply it once the above comment is fixed. Thanks, Mathieu
Mathieu Othacehe schreef op vr 01-10-2021 om 09:52 [+0000]: > Hello Maxime, > > > +(define mozilla-build-system > > + (build-system > > + (name 'mozilla) > > + (description "The build system for Mozilla software using the Autotools") > > + (lower lower-mozilla))) > > This new build system should be documented in the "Build systems" > section of the documentation. > > Otherwise, the series looks fine and I'll probably apply it once the > above comment is fixed. I sent a v2, wherein the ‘gnu: icecat: Use mozilla-build-system.’ documents the build system in doc/guix.texi. Greetings, Maxime.
diff --git a/Makefile.am b/Makefile.am index 56f60278b7..76166f4eec 100644 --- a/Makefile.am +++ b/Makefile.am @@ -140,6 +140,7 @@ MODULES = \ guix/build-system/font.scm \ guix/build-system/go.scm \ guix/build-system/meson.scm \ + guix/build-system/mozilla.scm \ guix/build-system/minify.scm \ guix/build-system/minetest.scm \ guix/build-system/asdf.scm \ diff --git a/guix/build-system/mozilla.scm b/guix/build-system/mozilla.scm new file mode 100644 index 0000000000..b4141c8177 --- /dev/null +++ b/guix/build-system/mozilla.scm @@ -0,0 +1,52 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (guix build-system mozilla) + #:use-module (guix build-system gnu) + #:use-module (guix build-system) + #:use-module (guix utils) + #:export (mozilla-build-system)) + +;; +;; Build procedure for packages using Autotools with the Mozillian conventions +;; for --target, --host and --build, which are different from the GNU +;; conventions. +;; +;; Code: + +(define* (lower-mozilla name #:key system target #:allow-other-keys + #:rest arguments) + (define lower (build-system-lower gnu-build-system)) + (if target + (apply lower + (substitute-keyword-arguments arguments + ;; Override --target and --host to what Mozillian configure + ;; scripts expect. + ((#:configure-flags configure-flags ''()) + `(cons* ,(string-append "--target=" target) + ,(string-append "--host=" (nix-system->gnu-triplet system)) + ,configure-flags)))) + (apply lower name arguments))) ; not cross-compiling + +(define mozilla-build-system + (build-system + (name 'mozilla) + (description "The build system for Mozilla software using the Autotools") + (lower lower-mozilla))) + +;;; mozilla.scm ends here