aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/ninja.scm
blob: ea5488afc9d44f1762a84138878196429dfcdfa4 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;;
;;; 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 (gnu packages ninja)
  #:use-module ((guix licenses) #:select (asl2.0))
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix build-system gnu)
  #:use-module (gnu packages)
  #:use-module (gnu packages python))

(define-public ninja
  (package
    (name "ninja")
    (version "1.5.3")
    (source (origin
              (method url-fetch)
              (uri (string-append "https://github.com/martine/ninja/"
                                  "archive/v" version ".tar.gz"))
              (file-name (string-append name "-" version ".tar.gz"))
              (sha256
               (base32
                "1h3yfwcfl61v493vna6jia2fizh8rpig7qw2504cvkr6gid3p5bw"))
              (patches (map search-patch
                            '("ninja-zero-mtime.patch" "ninja-tests.patch")))))
    (build-system gnu-build-system)
    (native-inputs `(("python" ,python-2)))
    (arguments
     '(#:phases
       (modify-phases %standard-phases
         (replace
          'configure
          (lambda _
            (substitute* "src/subprocess-posix.cc"
              (("/bin/sh") (which "sh")))
            #t))
         (replace
          'build
          (lambda _
            (zero? (system* "./configure.py" "--bootstrap"))))
         (replace
          'check
          (lambda _
            (and (zero? (system* "./configure.py"))
                 (zero? (system* "./ninja" "ninja_test"))
                 (zero? (system* "./ninja_test")))))
         (replace
          'install
          (lambda* (#:key outputs #:allow-other-keys)
            (let* ((out (assoc-ref outputs "out"))
                   (bin (string-append out "/bin"))
                   (doc (string-append out "/share/doc/ninja")))
              (install-file "ninja" bin)
              (install-file "doc/manual.asciidoc" doc)
              #t))))))
    (home-page "http://martine.github.io/ninja/")
    (synopsis "Small build system")
    (description
     "Ninja is a small build system with a focus on speed.  It differs from
other build systems in two major respects: it is designed to have its input
files generated by a higher-level build system, and it is designed to run
builds as fast as possible.")
    (license asl2.0)))
03'>nls: Add Persian translation....* po/packages/fa.po: New file. * po/packages/LINGUAS: Add 'fa'. * po/doc/guix-cookbook.fa.po: New file. * po/doc/guix-manual.fa.po: New file. * po/doc/local.mk (DOC_PO_FILES, DOC_COOKBOOK_PO_FILES): Add them. * doc/local.mk (info_TEXINFOS): Add them. Julien Lepiller 2021-04-18nls: Add Slovak translation....* po/packages/sk.po: New file. * po/packages/LINGUAS: Add 'sk'. * po/doc/guix-manual.sk.po: New file. * doc/local.mk (info_TEXINFOS): Add it. * po/doc/local.mk (DOC_PO_FILES): Add it. Julien Lepiller 2021-04-18nls: Add Portuguese (Brazil) translation of the manual.Julien Lepiller 2021-04-18nls: Update 'zh_CN' translations.Julien Lepiller 2021-04-18nls: Update 'es' translations.Julien Lepiller 2021-04-18nls: Update 'de' translations.Julien Lepiller 2021-04-18nls: Update 'fr' translations.Julien Lepiller 2021-04-18nls: Add French translation of the cookbook.Julien Lepiller 2021-01-28nls: Update 'fr' translation.Julien Lepiller 2021-01-22Revert "nls: Update 'fr' translation."...This reverts commit 5d03ef73c3c1d995714abdaff650f73ac9fafc0f, which led to these errors: /gnu/store/…-guix/fr.po:7206: 'msgstr' is not a valid Scheme format string, unlike 'msgid'. Reason: In the directive number 3, the character ' ' is not a valid conversion specifier. /gnu/store/…-guix/fr.po:7554: format specifications in 'msgid' and 'msgstr' are not equivalent /gnu/store/…-gettext-minimal-0.20.1/bin/msgfmt: found 2 fatal errors Ludovic Courtès 2021-01-22nls: Update 'fr' translation.Julien Lepiller 2020-12-03nls: Update 'fr' translation of the manual.Ludovic Courtès 2020-11-21nls: Update 'fr' translation of the manual.Ludovic Courtès 2020-11-12nls: Update translations of the manual.Ludovic Courtès 2020-11-12nls: Update translations of the manual.Julien Lepiller 2020-11-03nls: Fix Texinfo typo....* po/doc/guix-manual.de.po: Fix ‘@sasmp{}’ that broke ‘make’. Tobias Geerinckx-Rice 2020-11-03nls: Update translations of the manual.Julien Lepiller 2020-11-01nls: Update ‘de’ cookbook translation.Florian Pelz 2020-10-30nls: Update 'fr' translation of the manual.Julien Lepiller 2020-10-29nls: Update 'ru' translation of the manual.Julien Lepiller 2020-10-27nls: Update.Ludovic Courtès 2020-10-16nls: Update manual translations.Ludovic Courtès 2020-09-29nls: Fix documentation pot generation....* po/doc/local.mk: Fix POT_OPTIONS to properly assign copyright and define the proper license. Julien Lepiller 2020-05-05nls: Update.Ludovic Courtès 2020-04-12nls: Update.Ludovic Courtès 2020-03-23nls: Update.Ludovic Courtès 2020-03-06doc: Fix build of German Cookbook translation....This is a follow-up to f98e83a17fa30587520e858231ec9c61f3624ecd. See <https://lists.gnu.org/archive/html/guix-devel/2020-03/msg00095.html>. Reported there by Vagrant Cascadian <vagrant@debian.org>. * po/doc/local.mk (DOC_COOKBOOK_PO_FILES): Use correct file name. (doc-po-update-cookbook-%): Use correct PO file name. Florian Pelz 2020-02-17doc: Add German Cookbook translation....* doc/local.mk (info_TEXINFOS): Add guix-cookbook.de.texi. (TRANSLATED_INFO): Add guix-cookbook.de.texi. * po/doc/guix-cookbook.de.po: New file. * po/doc/local.mk (DOC_COOKBOOK_PO_FILES): Add guix-cookbook.de.po. Florian Pelz 2020-02-14Revert "nls: Update 'es' translation of the manual."...I believe this change breaks guix pull: ./guix.es.texi:20971: @samp missing closing brace This reverts commit d156e3fbcd6fc61a39d1d32622b90b0f8f741729. Christopher Baines 2020-02-14nls: Update 'de' translation of the manual.Julien Lepiller 2020-02-14nls: Update 'es' translation of the manual.Julien Lepiller