aboutsummaryrefslogtreecommitdiff
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016, 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018–2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021, 2022 Greg Hogan <code@greghogan.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; 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 ccache)
  #:use-module (guix gexp)
  #:use-module (guix packages)
  #:use-module ((guix licenses) #:select (gpl3+))
  #:use-module (guix download)
  #:use-module (guix build-system cmake)
  #:use-module (gnu packages)
  #:use-module (gnu packages base)
  #:use-module (gnu packages compression)
  #:use-module (gnu packages perl)
  #:use-module (gnu packages ruby))

(define-public ccache
  (package
    (name "ccache")
    (version "4.8.3")
    (source
     (origin
       (method url-fetch)
       (uri (string-append "https://github.com/ccache/ccache/releases/download/v"
                           version "/ccache-" version ".tar.xz"))
       (sha256
        (base32 "049b3xhp464w5m1bqi4ripbgyqy7qy31vvk56v5cyj5j23478wz4"))))
    (build-system cmake-build-system)
    (arguments
     (list #:configure-flags
           ;; The backend must be explicitly disabled to build without Redis.
           #~(list "-DREDIS_STORAGE_BACKEND=OFF")
           #:phases
           #~(modify-phases %standard-phases
               (add-before 'configure 'fix-shell
                 ;; Run early whilst we're still in the source directory.
                 (lambda _
                   (substitute* (list "test/run"
                                      "test/suites/base.bash"
                                      "unittest/test_hashutil.cpp")
                     (("compgen -e") "env | cut -d= -f1")
                     (("#!/bin/sh") (string-append "#!" (which "sh"))))))
               (add-before 'check 'set-home
                 ;; Tests require a writable HOME.
                 (lambda _
                   (setenv "HOME" (getenv "TMPDIR")))))))
    (native-inputs
     (append (list perl which)
             (if (supported-package? ruby-asciidoctor)
               (list ruby-asciidoctor)
               '())))
    (inputs (list zlib `(,zstd "lib")))
    (home-page "https://ccache.dev/")
    (synopsis "Compiler cache")
    (description
     "Ccache is a compiler cache.  It speeds up recompilation by caching
previous compilations and detecting when the same compilation is being done
again.  Supported languages are C, C++, Objective-C and Objective-C++.")
    (license gpl3+)))
s='msg-avail'>...* gnu/packages/password-utils.scm (password-store)[arguments]: Add 'install-shell-completions' phase. Marius Bakke 2017-01-10gnu: cracklib: Fix buffer overflow....* gnu/packages/patches/cracklib-fix-buffer-overflow.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/password-utils.scm (cracklib)[source]: Use it. Leo Famulari 2017-01-03gnu: assword: Update to 0.10....* gnu/packages/password-utils.scm (assword): Update to 0.10. [arguments]: Use Python 3 instead of Python 2. [inputs]: Use Python 3 variants of inputs. Replace python2-pygpgme with python-gpg. Remove python2-pygtk. Add python-pygobject. [native-inputs]: Replace help2man with txt2man. [arguments]: Remove PYTHONPATH from 'Makefile' in the 'manpage' phase. Leo Famulari 2016-12-20gnu: argon2: Update to 20161029....* gnu/packages/password-utils.scm (argon2): Update to 20161029. Tobias Geerinckx-Rice 2016-12-10gnu: password-store: Don't run tests in parallel....* gnu/packages/password-utils.scm (password-store): Don't run tests in parallel, as it causes them to hang and the build to timeout. Signed-off-by: Marius Bakke <mbakke@fastmail.com> Christopher Baines 2016-12-10gnu: password-store: Delete build phase...* gnu/packages/password-utils.scm (password-store): Remove the build phase, as it is unused. Signed-off-by: Marius Bakke <mbakke@fastmail.com> Christopher Baines 2016-11-15gnu: Fix python inputs, part 1: all inputs become propagated-inputs....This patch contains the changes where all [inputs] are changed to [propagated-inputs] * gnu/packages/python.scm (python-passlib, python-paramiko, python-ccm, python-babel, python-keyring python-pandas, python-tzlocal, python-parse-type, python-nose2, python-pytest, python-pytest-mock, python-pytest-xdist, python-scripttest, python-testtools, python-pytest-cov, python-testscenarios, python-pbr-0.11, python-oauthlib, python-jinja2, python-sphinx, python-tzlocal, python-bugz, python2-pytest-mock, behave, pelican, sqlalchemy-utils, python-pygridtools, python-urwidtrees, python-tornado, python2-tornado, python-debian, python-execnet, python-pytest-cache, pytest-localserver, python-clint, python-rply, python-hy, python-rauth, python-rsa, python-celery, python-vobject, s3cmd, python-prompt-toolkit, ptpython, python-requests-oauthlib, python-stem, python-binaryornot, python2-binaryornot, python-nltk, python-pymongo, python-schematics, python-url, python2-url, python-freezegun, python-glances, python-graphql-core, python-graphql-relay, python-graphene, python-nautilus, python-s3transfer): All [inputs] become [propagated-inputs]. * gnu/packages/bioinformatics.scm (python-biopython): Likewise. * gnu/packages/django.scm (pytest-django): Likewise. * gnu/packages/mail.scm (python-mailmanclient): Likewise. * gnu/packages/password-utils.scm (python-bcrypt): Likewise. * gnu/packages/propbuf.scm (python-protobuf): Likewise. * gnu/packages/rdf.scm (python-rdflib): Likewise. SQACH all become propagated Hartmut Goebel 2016-11-15gnu: Remove python-setuptools and python2-setuptools from inputs (part 4a)...This patch contains the changes for all modules beside python.scm where setuptools are used in an inherited package and removing this input also removes the need for inheriting the package. This is the case if adding setuptools in the inherited package was the only change. Change this to not inherit and remove the new needless call to "strip-python2-variant (if applicable). * gnu/packages/bioinformatics.scm (python-biopython, python2-biopython, python-twobitreader, python2-twobitreader, python-plastid, python2-plastid, python2-pybigwig, python2-screed, sra-tools): No longer "inherit" Python 2 packages inheriting from a Python 3 package if the sole reason for inheriting was adding python-setuptools respective python2-setuptools to [inputs], [native-inputs] or [propagated-inputs]. Remove now needless [properties] "python2-variant" where applicable. * gnu/packages/django.scm (python-pytest-django, python2-pytest-django, python-django-filter, python2-django-filter): Likewise. * gnu/packages/gnupg.scm (python2-pygpgme): Likewise. * gnu/packages/mail.scm (python-mailmanclient, python2-mailmanclient): Likewise. * gnu/packages/mpd.scm (python-msp, python2-mpd2): Likewise. * gnu/packages/music.scm (python-pylast, python2-pylast): Likewise. * gnu/packages/openstack.scm (python-requests-mock, python2-requests-mock, python2-git-review): Likewise. * gnu/packages/password-utils.scm (python2-bcrypt): Likewise. * gnu/packages/protobuf.scm (python-protobuf, python2-protobuf): Likewise. * gnu/packages/statistics.scm (python-patsy, python2-patsy): Likewise. * gnu/packages/web.scm (python2-feedparser): Likewise. Hartmut Goebel 2016-11-15gnu: Remove python-setuptools and python2-setuptools from inputs (part 2)...This patch contains the changes where removing setuptools from the inputs affected some code-lines beside. * gnu/packages/admin.scm (ansible): Remove all [inputs], [native-inputs] and [propagated-inputs] where python-setuptools or python2-setuptools are the sole entries. Remove python-setuptools and python2-setuptools listed on a line by its own from [inputs], [native-inputs] and [propagated-inputs]. * gnu/packages/backup.scm (duplicity): Likewise. * gnu/packages/bioinformatics.scm (bamm, python2-pybedtools, python2-bx-python, python2-dendropy, python-pysam, python2-pysam, clipper, crossmap, cutadapt, deeptools, grit, idr, python2-warpedlmm, pbtranscript-tofu, seqmagick): Likewise. * gnu/packages/docbook.scm (dblatex): Likewise. * gnu/packages/freedesktop.scm (python-pyxdg, python2-pyxdg): Likewise. * gnu/packages/lirc.scm (python2-lirc): Likewise. * gnu/packages/mp3.scm (eyed3): Likewise. * gnu/packages/nutrition.scm (gourmet): Likewise. * gnu/packages/openstack.scm (python-hacking, python2-hacking, python-os-testr, python2-os-testr, python-stevedore, python2-stevedore, python-tempest-lib, python2-tempest-lib, python-oslo.log, python2-oslo.log, python-keystoneclient, python2-keystoneclient): Likewise. * gnu/packages/password-utils.scm (assword): Likewise. * gnu/packages/python.scm (python-passlib, python2-passlib, python-babel, python2-babel, python-parse-type, python-pytest, python2-pytest, python-scripttest, python2-scripttest, python-testtools, python2-testtools, python-testscenarios, python2-testscenarios, python-subunit, python2-subunit, python-pbr-0.11, python-pbr, python2-pbr, python-testrepository, python2-testrepository, behave, python-wheel, python2-wheel, python-requests, python2-requests, python-jsonschema, python2-jsonschema, python-pyjwt, python2-pyjwt, python-virtualenv, python2-virtualenv, python-jinja2, python2-jinja2, python-joblib, python2-joblib, python-sphinx, python2-sphinx, python-feedgenerator, python2-feedgenerator, python-scikit-image, python2-scikit-image, python-redis, python2-redis, python2-fastlmm, python-numpydoc, python2-numpydoc, python-matplotlib, python2-matplotlib, python2-pysnptools, python-rpy2, python2-rpy2, python-pillow, python2-pillow, python-pycparser, python2-pycparser, python-cffi, python2-cffi, python-cairocffi, python2-cairocffi, python-drmaa, python2-drmaa, python-pathpy, python2-pathpy, python-simplegeneric, python2-simplegeneric, python-ipython, python2-ipython, python-apsw, python2-apsw, python-lxml, python2-lxml, python-networkx, python2-networkx, python-pyzmq, python2-pyzmq, python-mccabe, python2-mccabe, python-mccabe-0.2.1, python-flake8, python2-flake8, python-flake8-2.2.4, python-mistune, python2-mistune, python-ptyprocess, python2-ptyprocess, python-llfuse, python2-llfuse, python-webob, python2-webob, python-xlrd, python2-xlrd, python-tables, python2-tables, python-pip, python2-pip, python-libarchive-c, python2-libarchive-c, python-docopt, python2-docopt, python-pyrfc3339, python2-pyrfc3339, python-configobj, python2-configobj, python-clint, python2-clint, python-rply, python2-rply, python2-rpython, python-widgetsnbextension, python2-widgetsnbextension jupyter, python-jupyter-console, python2-jupyter-console, python-hy, python2-hy, python-urllib3, python2-urllib3, python-rsa, python2-rsa, python-tox, python2-tox, python2-hypothesis, python-paste, python2-paste, python-pastescript, python2-pastescript, python2-unicodecsv, python-pkgconfig, python2-pkgconfig, python2-rope, python-sqlparse, python2-sqlparse, python-gevent, python2-gevent, python-tabulate, python2-tabulate, python-arrow, python2-arrow, python-cleo, python2-cleo, python-fake-factory, python2-fake-factory, ptpython): Likewise. * gnu/packages/rdf.scm (python-rdflib, python2-rdflib): Likewise. * gnu/packages/terminals.scm (asciinema): Likewise. * gnu/packages/version-control.scm (git-annex-remote-hubic): Likewise. * gnu/packages/xdisorg.scm (arandr): Likewise. Hartmut Goebel 2016-11-07gnu: keepassx: Update to 2.0.3....* gnu/packages/password-utils.scm (keepassx): Update to 2.0.3. [inputs]: Add libxi. Efraim Flashner 2016-10-01gnu: shroud: Wrap 'shroud' with 'GUILE_LOAD_COMPILED_PATH'....* gnu/packages/password-utils.scm (shroud)[arguments]: New field. 宋文武 2016-09-18gnu: Add python-bcrypt....* gnu/packages/password-utils.scm (python-bcrypt): New variable. Efraim Flashner 2016-08-17gnu: cracklib: Fix CVE-2016-6318....* gnu/packages/patches/cracklib-CVE-2016-6318.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/password-utils.scm (cracklib)[source]: Use the patch. Leo Famulari 2016-07-29gnu: password-store: Wrap PATH....* gnu/packages/password-utils.scm (password-store) [arguments]: Wrap PATH more thoroughly. [native-inputs]: Move getopt to inputs. [inputs]: Add sed. Signed-off-by: Mathieu Lirzin <mthl@gnu.org> Alex Griffin 2016-07-21gnu: Update URLs for sourceforge.net....* gnu/packages/admin.scm: Update URLs pointing to sourceforge.net. * gnu/packages/audacity.scm: Likewise. * gnu/packages/audio.scm: Likewise. * gnu/packages/bioinformatics.scm: Likewise. * gnu/packages/boost.scm: Likewise. * gnu/packages/cdrom.scm: Likewise. * gnu/packages/code.scm: Likewise. * gnu/packages/compression.scm: Likewise. * gnu/packages/cups.scm: Likewise. * gnu/packages/djvu.scm: Likewise. * gnu/packages/docbook.scm: Likewise. * gnu/packages/documentation.scm: Likewise. * gnu/packages/flashing-tools.scm: Likewise. * gnu/packages/fonts.scm: Likewise. * gnu/packages/fontutils.scm: Likewise. * gnu/packages/games.scm: Likewise. * gnu/packages/ghostscript.scm: Likewise. * gnu/packages/gl.scm: Likewise. * gnu/packages/gnucash.scm: Likewise. * gnu/packages/graphviz.scm: Likewise. * gnu/packages/image.scm: Likewise. * gnu/packages/libreoffice.scm: Likewise. * gnu/packages/libusb.scm: Likewise. * gnu/packages/linux.scm: Likewise. * gnu/packages/lirc.scm: Likewise. * gnu/packages/maths.scm: Likewise. * gnu/packages/mcrypt.scm: Likewise. * gnu/packages/mp3.scm: Likewise. * gnu/packages/music.scm: Likewise. * gnu/packages/networking.scm: Likewise. * gnu/packages/onc-rpc.scm: Likewise. * gnu/packages/password-utils.scm: Likewise. * gnu/packages/pdf.scm: Likewise. * gnu/packages/perl.scm: Likewise. * gnu/packages/photo.scm: Likewise. * gnu/packages/popt.scm: Likewise. * gnu/packages/python.scm: Likewise. * gnu/packages/rdesktop.scm: Likewise. * gnu/packages/screen.scm: Likewise. * gnu/packages/swig.scm: Likewise. * gnu/packages/tcl.scm: Likewise. * gnu/packages/version-control.scm: Likewise. * gnu/packages/video.scm: Likewise. * gnu/packages/w3m.scm: Likewise. * gnu/packages/web.scm: Likewise. * gnu/packages/wm.scm: Likewise. * gnu/packages/xdisorg.scm: Likewise. * gnu/packages/xml.scm: Likewise. Leo Famulari 2016-06-20gnu: Add argon2....* gnu/packages/password-utils.scm (argon2): New variable. Signed-off-by: Leo Famulari <leo@famulari.name> Lukas Gradl 2016-03-02gnu: Add password-store....* gnu/packages/password-utils.scm (password-store): New variable. Co-authored-by: Andreas Enge <andreas@enge.fr> Co-authored-by: Leo Famulari <leo@famulari.name> Jessica Tallon 2016-02-07gnu: Add assword....* gnu/packages/password-utils.scm (assword): New variable. Christopher Allan Webber 2016-02-07gnu: keepassx: Update to 2.0.2....* gnu/packages/password-utils.scm (keepassx): Update to 2.0.2. Efraim Flashner 2016-02-01gnu: keepassx: Update to 2.0.1....* gnu/packages/password-utils.scm (keepassx): Update to 2.0.1. Leo Famulari 2015-12-18gnu: Add libpwquality....* gnu/packages/password-utils.scm (libpwquality): New variable. 宋文武 2015-12-18gnu: Add cracklib....* gnu/packages/password-utils.scm (cracklib): New variable. 宋文武 2015-12-07gnu: keepassx: Update to 2.0....* gnu/packages/password-utils.scm (keepassx): Update to 2.0. [source]: Change to official release location. Efraim Flashner 2015-10-27gnu: Add yapet....* gnu/packages/password-utils.scm (yapet): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Aljosha Papsch 2015-10-01gnu: shroud: Update to 0.1.1....* gnu/packages/password-utils.scm (shroud): Update to 0.1.1. David Thompson 2015-10-01gnu: Add shroud....* gnu/packages/password-utils.scm (shroud): New variable. David Thompson 2015-09-16gnu: Add keepassx....* gnu/packages/password-utils.scm (keepassx): New variable. Efraim Flashner 2015-08-20gnu: Add pwgen....* gnu/packages/password-utils.scm: New file. * gnu-system.am (GNU_SYSTEM_MODULES): Add it. Steve Sprang