Commit | Line | Data |
---|---|---|
233e7676 LC |
1 | ;;; GNU Guix --- Functional package management for GNU |
2 | ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> | |
c0d56bb2 | 3 | ;;; Copyright © 2014, 2018 Mark H Weaver <mhw@netris.org> |
aa3d9011 | 4 | ;;; Copyright © 2014 Andreas Enge <andreas@enge.fr> |
0f1adf45 | 5 | ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> |
4403030b | 6 | ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> |
6ad2697d | 7 | ;;; |
233e7676 | 8 | ;;; This file is part of GNU Guix. |
6ad2697d | 9 | ;;; |
233e7676 | 10 | ;;; GNU Guix is free software; you can redistribute it and/or modify it |
6ad2697d NK |
11 | ;;; under the terms of the GNU General Public License as published by |
12 | ;;; the Free Software Foundation; either version 3 of the License, or (at | |
13 | ;;; your option) any later version. | |
14 | ;;; | |
233e7676 | 15 | ;;; GNU Guix is distributed in the hope that it will be useful, but |
6ad2697d NK |
16 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of |
17 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
18 | ;;; GNU General Public License for more details. | |
19 | ;;; | |
20 | ;;; You should have received a copy of the GNU General Public License | |
233e7676 | 21 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. |
6ad2697d | 22 | |
1ffa7090 | 23 | (define-module (gnu packages acl) |
4a44e743 | 24 | #:use-module (guix licenses) |
1ffa7090 | 25 | #:use-module (gnu packages attr) |
3f2a7727 | 26 | #:use-module (gnu packages base) |
1dba6407 | 27 | #:use-module (gnu packages gettext) |
3f2a7727 | 28 | #:use-module (gnu packages perl) |
6ad2697d NK |
29 | #:use-module (guix packages) |
30 | #:use-module (guix download) | |
561840b4 | 31 | #:use-module (gnu packages) |
6ad2697d NK |
32 | #:use-module (guix build-system gnu)) |
33 | ||
34 | (define-public acl | |
35 | (package | |
36 | (name "acl") | |
5c47b06b | 37 | (version "2.2.52") |
6ad2697d NK |
38 | (source |
39 | (origin | |
40 | (method url-fetch) | |
41 | (uri (string-append "mirror://savannah/acl/acl-" | |
42 | version ".src.tar.gz")) | |
43 | (sha256 | |
44 | (base32 | |
561840b4 | 45 | "08qd9s3wfhv0ajswsylnfwr5h0d7j9d4rgip855nrh400nxp940p")) |
0f1adf45 EF |
46 | (patches (search-patches "acl-fix-perl-regex.patch" |
47 | "acl-hurd-path-max.patch")))) | |
6ad2697d NK |
48 | (build-system gnu-build-system) |
49 | (arguments | |
2d433b53 | 50 | `(#:test-target "tests" |
4403030b RW |
51 | #:modules ((ice-9 ftw) |
52 | ,@%gnu-build-system-modules) | |
16755848 | 53 | #:phases |
79272039 | 54 | (modify-phases %standard-phases |
4403030b RW |
55 | ;; XXX After repacking the sources the timestamps are reset to the |
56 | ;; epoch, which leads to a failure in gzipping the CHANGES file. | |
57 | (add-after 'unpack 'ensure-no-mtimes-pre-1980 | |
58 | (lambda _ | |
59 | (let ((early-1980 315619200)) ; 1980-01-02 UTC | |
60 | (ftw "." (lambda (file stat flag) | |
61 | (unless (<= early-1980 (stat:mtime stat)) | |
62 | (utime file early-1980 early-1980)) | |
63 | #t)) | |
64 | #t))) | |
79272039 EF |
65 | (add-after 'build 'patch-exec-bin-sh |
66 | (lambda _ | |
67 | (substitute* "test/run" | |
68 | (("/bin/sh") (which "sh"))) | |
69 | #t)) | |
2d433b53 | 70 | (add-before 'check 'patch-tests |
7183c4bf LF |
71 | (lambda _ |
72 | ;; The coreutils do not have an ACL bit to remove from their | |
73 | ;; output, so the sed expression that removes the bit is disabled. | |
74 | (substitute* "test/sbits-restore.test" | |
75 | (("\\| sed.*'") "")) | |
76 | ;; These tests require the existence of a user named "bin", but | |
77 | ;; this user does not exist within Guix's build environment. | |
78 | (for-each (lambda (file) | |
79 | (delete-file (string-append "test/" file))) | |
c0d56bb2 MW |
80 | '("setfacl-X.test" "cp.test" "misc.test")) |
81 | #t)) | |
79272039 EF |
82 | (replace 'install |
83 | (lambda _ | |
c0d56bb2 | 84 | (invoke "make" "install" "install-lib" "install-dev")))))) |
16755848 | 85 | (inputs `(("attr" ,attr))) |
2a552f11 | 86 | (native-inputs |
b94a6ca0 | 87 | `(("gettext" ,gettext-minimal) |
52f62492 | 88 | ("perl" ,perl))) |
340978d7 | 89 | (home-page "https://savannah.nongnu.org/projects/acl") |
6ad2697d NK |
90 | (synopsis |
91 | "Library and tools for manipulating access control lists") | |
92 | (description | |
93 | "Library and tools for manipulating access control lists.") | |
38bbd61d | 94 | (license (list gpl2+ lgpl2.1+)))) |