aboutsummaryrefslogtreecommitdiff
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018, 2021-2024 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; 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 cobol)
  #:use-module (gnu packages)
  #:use-module (guix build-system gnu)
  #:use-module (guix licenses)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix gexp)
  #:use-module (gnu packages bison)
  #:use-module (gnu packages dbm)
  #:use-module (gnu packages flex)
  #:use-module (gnu packages multiprecision)
  #:use-module (gnu packages ncurses)
  #:use-module (gnu packages perl)
  #:use-module (gnu packages web)
  #:use-module (gnu packages xml))

(define-public gnucobol
  (package
    (name "gnucobol")
    (version "3.2")
    (source
      (origin
        (method url-fetch)
        (uri (string-append
               "mirror://gnu/gnucobol/gnucobol-"
               version ".tar.xz"))
        (sha256
         (base32
          "1qifkkrmscc5csri1l4rm9pbik74c3pc5za1rzx7jizddks8md1v"))
        (snippet
         #~(begin (use-modules (guix build utils))
                  ;; Remove some files generated by bison and flex.
                  (for-each delete-file
                            '("cobc/parser.c"
                              "cobc/parser.h"
                              "cobc/ppparse.c"
                              "cobc/ppparse.h"
                              "cobc/pplex.c"
                              "cobc/scanner.c"))))))
    (arguments
     (list
       #:configure-flags
       #~(list (string-append "LDFLAGS=-Wl,-rpath="
                              #$output "/lib")
               (string-append "JSON_C_CFLAGS=-I"
                              (search-input-directory %build-inputs
                              "/include/json-c")))
       #:phases
       #~(modify-phases %standard-phases
           (add-after 'unpack 'place-cobol85-test-suite
             (lambda* (#:key inputs #:allow-other-keys)
               (let ((newcob (assoc-ref inputs "newcob")))
                 (copy-file newcob "tests/cobol85/newcob.val.Z"))))
           (add-before 'check 'set-TERM
             ;; Some tests expect a known terminal
             (lambda _ (setenv "TERM" "xterm-256color"))))
       #:test-target "checkall"))
    (native-inputs
     `(("bison" ,bison)
       ("flex" ,flex)
       ("perl" ,perl)
       ("newcob" ,(origin
                    (method url-fetch)
                    (uri "https://www.itl.nist.gov/div897/ctg/suites/newcob.val.Z")
                    (sha256
                     (base32
                      "1yb1plmv4firfnbb119r2vh1hay221w1ya34nyz0qwsxppfr56hy"))))))
    (inputs
     (list bdb gmp json-c libxml2 ncurses))
    (build-system gnu-build-system)
    (home-page "https://www.gnu.org/software/gnucobol/")
    (synopsis "Modern COBOL compiler")
    (description
     "GnuCOBOL is a free, modern COBOL compiler.  It implements a substantial
part of COBOL 85, X/Open COBOL and newer ISO COBOL standards as well as many
extensions from other COBOL compilers (IBM COBOL, MicroFocus COBOL, ACUCOBOL-GT
and others).")
    (license gpl3+)))
/packages/gnuzilla.scm gnu/packages/haskell.scm gnu/packages/pdf.scm gnu/packages/python-xyz.scm gnu/packages/samba.scm gnu/packages/tex.scm gnu/packages/tls.scm gnu/packages/wxwidgets.scm Christopher Baines 2023-02-05gnu: Rename 'samba/fixed' to 'samba/pinned'....* gnu/packages/samba.scm: Rename variable 'samba/fixed' to 'samba/pinned' and 'samba/fixed-patched' to 'samba/fixed'. * gnu/packages/gnome.scm (libsoup-minimal)[inputs]: Replace 'samba/fixed' with 'samba/pinned'. Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com> Simon Tournier 2023-01-30Merge remote-tracking branch 'origin/master' into core-updates... Conflicts: doc/guix.texi gnu/local.mk gnu/packages/admin.scm gnu/packages/base.scm gnu/packages/chromium.scm gnu/packages/compression.scm gnu/packages/databases.scm gnu/packages/diffoscope.scm gnu/packages/freedesktop.scm gnu/packages/gnome.scm gnu/packages/gnupg.scm gnu/packages/guile.scm gnu/packages/inkscape.scm gnu/packages/llvm.scm gnu/packages/openldap.scm gnu/packages/pciutils.scm gnu/packages/ruby.scm gnu/packages/samba.scm gnu/packages/sqlite.scm gnu/packages/statistics.scm gnu/packages/syndication.scm gnu/packages/tex.scm gnu/packages/tls.scm gnu/packages/version-control.scm gnu/packages/xml.scm guix/build-system/copy.scm guix/scripts/home.scm Efraim Flashner 2023-01-17gnu: cifs-utils: Update to 7.0 [fixes CVE-2022-27239]....* gnu/packages/samba.scm (cifs-utils): Update to 7.0. [arguments]: Use new style. Drop unneeded phase 'install-man-pages. [inputs]: Drop labels. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Timotej Lazar 2022-12-31gnu: samba/fixed: Replacement package has the same store name length....This is a follow-up to c39db91e51e55e46f177378c7b5a797441dc7d1b. * gnu/packages/samba.scm (samba/fixed-patched)[version]: Set to 4.15.A. Marius Bakke 2022-12-31gnu: samba/fixed: Update to 4.15.13....* gnu/packages/samba.scm (samba/fixed-patched): New variable. (samba/fixed): Add replacement for samba/fixed-patched. Liliana Marie Prikler 2022-12-31gnu: samba: Update to 4.16.8....* gnu/packages/samba.scm (samba): Update to 4.16.8. Liliana Marie Prikler 2022-10-31gnu: Fix various lint issues in synopsis and descriptions....* gnu/packages/android.scm (etc1tool)[synopsis]: Drop trailing period. * gnu/packages/bioinformatics.scm (mudskipper)[synopsis]: Likewise. * gnu/packages/crates-io.scm (rust-async-log-attributes-1)[synopsis]: Likewise. (rust-atomic-polyfill-1)[synopsis]: Likewise. (rust-modifier-0.1)[synopsis]: Likewise. (rust-openssl-macros-0.1)[synopsis]: Likewise. (rust-syn-mid-0.5)[synopsis]: Likewise. (rust-toml-edit-0.14)[synopsis]: Likewise. (rust-valuable-derive-0.1)[synopsis]: Likewise. (rust-inflections-1)[synopsis]: Likewise. * gnu/packages/databases.scm (python-databases)[synopsis]: Likewise. * gnu/packages/games.scm (liquidwar6)[synopsis]: Likewise. * gnu/packages/golang.scm (go-golang.org-x-sync-errgroup)[synopsis]: Likewise. * gnu/packages/guile-xyz.scm (guile-config)[synopsis]: Likewise. * gnu/packages/haskell-web.scm (ghc-hxt-xpath)[synopsis]: Likewise. * gnu/packages/haskell-xyz.scm (ghc-string-qq)[synopsis]: Likewise. * gnu/packages/machine-learning.scm (python-lap)[synopsis]: Likewise. (python-pyro-api)[synopsis]: Likewise. * gnu/packages/messaging.scm (python-librecaptcha)[synopsis]: Likewise. * gnu/packages/python-check.scm (python-pytest-cram)[synopsis]: Likewise. * gnu/packages/python-web.scm (python-jschema-to-python)[synopsis]: Likewise. (python-sarif-om)[synopsis]: Likewise. (python-socksio)[synopsis]: Likewise. (python-msrest)[synopsis]: Likewise. * gnu/packages/tor.scm (torsocks)[synopsis]: Likewise. * gnu/packages/cran.scm (r-rlist)[synopsis]: Remove leading article. * gnu/packages/crates-io.scm (rust-clippy-lints-0.0.153)[synopsis]: Likewise. (rust-simplelog-0.11)[synopsis]: Likewise. * gnu/packages/samba.scm (wsdd)[synopsis]: Likewise. * gnu/packages/crates-io.scm (rust-spki-0.4)[synopsis]: Remove trailing whitespace. * gnu/packages/golang.scm (go-github-com-mattn-go-zglob)[description]: Remove leading whitespace. * gnu/packages/haskell-check.scm (ghc-crypto-cipher-tests)[description]: Likewise. * gnu/packages/lisp-xyz.scm (sbcl-ctype)[synopsis]: Remove trailing whitespace. * gnu/packages/mpi.scm (openmpi-thread-multiple)[description]: Remove leading whitespace. * gnu/packages/node-xyz.scm (node-string-decoder)[synopsis]: Remove trailing whitespace. Vagrant Cascadian 2022-10-24gnu: Various typo fixes....* gnu/packages/emacs-xyz.scm (emacs-popup-kill-ring)[description]: Fix very sneaky "This packages" variant. Thanks to nckhexen! * gnu/packages/bioinformatics.scm (r-icellnet)[description]: Fix use of "allows to". * gnu/packages/check.scm (python-pytest-freezegun)[description]: Ditto. * gnu/packages/linux.scm (tp-smapi-module)[description]: Ditto. * gnu/packages/mail.scm (procmail): Ditto. * gnu/packages/maths.scm (maxima): Ditto. * gnu/packages/samba.scm (wsdd)[description]: Ditto. * gnu/packages/ssh.scm (openssh): Ditto. Vagrant Cascadian 2022-09-27gnu: samba: Invert inheritance relationship with samba/fixed....This already led to 2 problematic 9K builds on the master branch; let's remove this trap. * gnu/packages/samba.scm (samba): Rename variable to samba/fixed. (samba): Define as a new variable inheriting from samba/fixed. Maxim Cournoyer 2022-09-27gnu: docbook-xsl: Replace with docbook-xsl-next....* gnu/packages/docbook.scm (docbook-xsl): Replace with... (docbook-xsl-next): ... this package, adding the missing home-page, synopsis, description and license fields to the later, and removing the inheritance. Maxim Cournoyer 2022-09-27Merge branch 'staging' into core-updatesMaxim Cournoyer 2022-09-27Merge branch 'staging' into core-updates...Conflicts resolved in: gnu/local.mk gnu/packages/cran.scm gnu/packages/gnome.scm gnu/packages/gtk.scm gnu/packages/icu4c.scm gnu/packages/java.scm gnu/packages/machine-learning.scm gnu/packages/tex.scm Maxim Cournoyer 2022-09-27Re-instate "gnu: samba: Fix corrupted man pages."...This reverts commit 968ec0a87, which was itself a revert of 62048ff9fc. Maxim Cournoyer 2022-09-27gnu: samba/fixed: Do not inherit native-inputs....* gnu/packages/samba.scm (samba/fixed): Add a FIXME comment. [native-inputs]: Copy the complete native inputs from samba, to protect against unintended changes in the inherited package. Maxim Cournoyer 2022-09-27Revert "gnu: samba: Fix corrupted man pages."...This reverts commit 62048ff9fcfbe3fc790a7207fc5f6f3e0476a02a. This caused a half world rebuild (9K packages). Maxim Cournoyer 2022-09-27gnu: samba: Fix corrupted man pages....* gnu/packages/samba.scm (samba) [native-inputs]: Replace docbook-xsl with docbook-xsl-next. Maxim Cournoyer 2022-09-25gnu: samba: Add avahi to inputs....* gnu/packages/samba.scm (samba) <inputs>: Add avahi. Signed-off-by: Lars-Dominik Braun <lars@6xq.net> Simon Streit 2022-09-24Revert "gnu: samba: Add avahi to inputs."...This reverts commit 4cbc1622961f62f8fc3613de0c8f215e0cde6494. samba/fixed inherits from samba, which causes ~9000 rebuilds. Lars-Dominik Braun 2022-09-24gnu: Add wsdd....* gnu/packages/samba.scm (wsdd): New variable. Signed-off-by: Lars-Dominik Braun <lars@6xq.net> Simon Streit 2022-09-24gnu: samba: Add avahi to inputs....* gnu/packages/samba.scm (samba) <inputs>: Add avahi. Signed-off-by: Lars-Dominik Braun <lars@6xq.net> Simon Streit 2022-09-16gnu: ldb: Update to 2.6.1....* gnu/packages/samba.scm (ldb): Update to 2.6.1. Marius Bakke 2022-09-16gnu: tevent: Update to 0.13.0....* gnu/packages/samba.scm (tevent): Update to 0.13.0. Marius Bakke 2022-09-16gnu: talloc: Update to 2.3.4....* gnu/packages/samba.scm (talloc): Update to 2.3.4. Marius Bakke 2022-09-16gnu: samba: Update to 4.17.0....* gnu/packages/samba.scm (samba, samba/fixed): Update to 4.17.0. [source](uri): Adjust. Marius Bakke 2022-08-30Merge branch 'staging' into core-updatesMarius Bakke 2022-08-28gnu: samba: Update to 4.17.0rc3 to fix build....* gnu/packages/samba.scm (samba): Update to 4.17.0rc3. [source]: Adjust URL. [configure-flags]: Delete leftover comment. (samba/fixed): Update to 4.17.0rc3. Maxim Cournoyer 2022-08-27gnu: samba: Update to 4.16.4....As a reproducibility check, you can check the hash: $ guix hash -r $(./pre-inst-env guix build samba --no-grafts --system=x86_64-linux) 1mg3nh705pbiz3ihq8jzkmjb15m6y8zjnzyr4hxmbciv7frgykk0 I've checked that it's correctly signed, and I've tried to verify that the PGP key is correct -- searching for 'Samba Distribution Verification Key', the websites of the first search results have the same key: * https://www.linuxcompatible.org/story/samba-4150rc5-released/ * https://wiki.samba.org/index.php/Samba_4.12_Features_added/changed * https://www.mail-archive.com/samba-announce@lists.samba.org/msg00562.html * https://wiki.linuxfromscratch.org/blfs/ticket/14748 https://groups.google.com/g/linux.samba/c/k3xaN0TIcQU has a different key, but as mentioned on the previous locations, the key has changed. I have also checked the source code diff (using diffoscope) between the the current version and the previous, nothing appears 'suspicious' (with the caveat that it is written in C). According to "guix refresh -l" there aren't too many dependents. I'm currently rebuilding them, no failures so far except for lxde, but it already failed to build before this patch. * gnu/packages/samba.scm (samba): Update to 4.16.4. To help future updaters, add the current PGP fingerprint in a comment. Signed-off-by: Marius Bakke <marius@gnu.org> Maxime Devos 2022-07-13gnu: samba: Update to 4.16.2....* gnu/packages/samba.scm (samba): Update to 4.16.2. Marius Bakke 2022-06-25gnu: Use license: prefix in (gnu packages samba)....* gnu/packages/samba.scm: Import (guix licenses) with the "license:" prefix to solve the conflict between the 'openssl' variables from (guix licenses) and from (gnu packages tls). Adjust all license fields. (ppp)[inputs]: Simplify list of inputs. Guillaume Le Vaillant 2022-06-25gnu: ppp: Update source url....* gnu/packages/samba.scm (ppp)[source]: Use new url. Guillaume Le Vaillant 2022-06-25gnu: ppp: Fix cross-compilation....* gnu/packages/samba.scm (ppp)[arguments]: Use G-Expressions. Remove unused substitution. Fix OpenSSL and libpcap include paths. Signed-off-by: Guillaume Le Vaillant <glv@posteo.net> Jean-Pierre De Jesus DIAZ 2022-02-07gnu: samba: Update to 4.15.5 [security fixes]....This fixes CVE-2021-44141, CVE-2021-44142, and CVE-2022-0336. * gnu/packages/samba.scm (samba): Update to 4.15.5. Marius Bakke 2022-01-10gnu: samba: Update to 4.15.3....* gnu/packages/samba.scm (samba): Update to 4.15.3. [source]: Delete snippet; pyiso8601 is no longer bundled. [arguments]: Adjust make-flags and arguments to use G-Exp. [phases]{configure}: Add the '--with-system-mitkrb5', '--with-system-mitkdc' and '--with-experimental-mit-ad-dc' configure flags. [inputs]: Replace heimdal with mit-krb5. [native-inputs]: Use new style. {python-cryptography, python-dnspython, python-markdown} {python-pyasn1}: New inputs. (samba/fixed): Update to 4.15.3 and hide package. Maxim Cournoyer