aboutsummaryrefslogtreecommitdiff
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018–2020, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 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 musl)
  #:use-module (guix download)
  #:use-module (guix packages)
  #:use-module (guix gexp)
  #:use-module (guix build-system gnu)
  #:use-module ((guix licenses) #:prefix license:)
  #:use-module (gnu packages)
  #:use-module (gnu packages bash))

(define-public musl
  (package
    (name "musl")
    (version "1.2.5")
    (source (origin
              (method url-fetch)
              (uri (string-append "https://www.musl-libc.org/releases/"
                                  "musl-" version ".tar.gz"))
              (sha256
               (base32
                "1r3mgky9d19b2285s274qxzlgs7sncx8plm01vd691sdx2xii8d9"))))
    (build-system gnu-build-system)
    (arguments
     (list #:tests? #f                      ; musl has no tests
           #:configure-flags
           #~(list "--enable-wrapper=all"
                   (string-append "--syslibdir=" #$output "/lib"))
           #:license-file-regexp "COPYRIGHT"))
    (inputs (list bash-minimal))
    (synopsis "Small C standard library")
    (description "musl is a simple and lightweight C standard library.  It
strives to be correct in the sense of standards-conformance and safety.")
    (home-page "https://musl.libc.org")
    (properties `((release-monitoring-url . ,home-page)))
    ;; Musl as a whole is released under the Expat license.  Parts of it are
    ;; derived from various third-party projects that are released under
    ;; non-copyleft licenses.  See the COPYRIGHT file for details.
    (license license:expat)))
Christopher Baines 2023-07-14Revert "gnu: mig: Update to 1.8+git20230520."...As noted in the comment, I think using git-fetch caused problems computing derivaations for i586-linux (Guix would just use more and more memory). This reverts commit 999a6ac0cfd9339e138007ed9e4e544a55e92e3e. Christopher Baines 2023-07-13gnu: gnumach: Disable builtin networking....See also https://logs.guix.gnu.org/hurd/2023-05-25.log#163610 * gnu/packages/hurd.scm (gnumach)[arguments]: Add --disable-net-group, --disable-pcmcia-group, and --disable-wireless-group. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz> Janneke Nieuwenhuizen 2023-07-13gnu: netdde: Resurrect and update to 2.6.32.65-2-e67c284ac1....* gnu/packages/patches/netdde-build-fix.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/hurd.scm (netdde)[source]: Update to e67c284ac113d939b10b4578334f27dab29d5b08 and use it. [inputs]: Add zlib:static. [arguments]: Remove #true from build phases. In 'build' phase, remove obsolete CFLAGS, and also build static version. In 'install' phase, install them in <out>/hurd. There is no check target, so set #:tests? to #false. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz> Janneke Nieuwenhuizen 2023-07-13gnu: gnumach: Support "noide" argument....* gnu/packages/patches/gnumach-support-noide.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/hurd.scm (gnumach-headers): Use it. * doc/guix.texi (Bootloader Configuration): Document it. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz> Janneke Nieuwenhuizen 2023-07-13gnu: hurd: Add rumpkernel....* gnu/packages/patches/hurd-fix-rumpdisk-build.patch, gnu/packages/patches/hurd-rumpdisk-no-hd.patch: New files. * gnu/local.mk (dist_patch_DATA): Add them. * gnu/packages/hurd.scm (hurd): Use them. (hurd)[inputs]: Replace util-linux with util-linux:static, add parted, rumpkernel. [arguments]: Rename `prepare-dde' phase to 'prepare-addons'. Add "rumpdisk" directory. Add --enable-static-progs=... option to #:configure-flags, and remove --without-parted. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz> Janneke Nieuwenhuizen 2023-07-13gnu: hurd-minimal: Include libshouldbeinlibc and libstore....* gnu/packages/hurd.scm (hurd-minimal)[inputs]: Add gnumach-headers. [arguments]: Rewrite to include libshouldbeinlibc and libstore. * gnu/packages/cross-base.scm (cross-kernel-headers*): Update xhurd-minimal accordingly: Add xgnumach-headers, add them to cpath, use gexps for modify-phases, add delete-shared-target phase. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz> Janneke Nieuwenhuizen 2023-07-13gnu: Add rumpkernel....This uses the Debian Salsa rumpkernel package git as upstream as that is where delopment happens. Once things have stabalized upstream may change to the NetBSD git from where Debian takes their snapshots. * gnu/packages/hurd.scm (rumpkernel): New variable. (hurd-headers)[native-inputs]: Use cross-mig directly. (gnumach)[native-inputs]: Likewise. (hurd)[native-inputs]: Likewise. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz> Janneke Nieuwenhuizen 2023-07-13gnu: hurd: Update libpciaccess to 0.17....As suggested by youpi on IRC https://logs.guix.gnu.org/hurd/2023-05-17.log#132259 libpciaccess-0.16 is too old for the Hurd and would need Hurd-specific patches while libpciaccess-0.17 works out of the box. * gnu/packages/hurd.scm (hurd)[inputs]: Use libpciaccess-0.17. (netdde)[inputs]: Likewise. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz> Janneke Nieuwenhuizen 2023-07-13gnu: hurd: Update to v0.9.git20230216....* gnu/packages/hurd.scm (hurd-headers): Update to v0.9.git20230216. Josselin Poiret 2023-07-13gnu: mig: Update to 1.8+git20230520....* gnu/packages/hurd.scm (mig)[source]: Update to 1.8+git20230520. * gnu/packages/patches/gnumach-add-missing-const_mach_port_name_array_t-type.patch: Drop patch. * gnu/local.mk (dist_patch_DATA): Unregister it. Josselin Poiret 2023-07-13gnu: gnumach: Update to 1.8+git20221224....* gnu/packages/hurd.scm (gnumach-headers): Update to 1.8+git20221224. Josselin Poiret 2023-07-13gnu: hurd: Update supported systems....* gnu/packages/hurd.scm (gnumach-headers, hurd-headers, hurd-minimal, hurd-core-headers, gnumach): Update supported systems to %hurd-systems. Josselin Poiret 2023-07-13gnu: gnumach-headers: Cross-build without relying on x86....* gnu/packages/hurd.scm (gnumach-headers): Remove configure flags where we say the builder is running x86. * gnu/packages/cross-base.scm (cross-gnumach-headers): Work around limitation of build system, by manually changing the target host_cpu without relying on --host, because we don't have a working cross-compiler yet. Josselin Poiret 2023-06-17gnu: Use target-hurd?, system-hurd? instead of hurd-target?, hurd-system?....* gnu/packages/hurd.scm (hurd-target?): Remove. (hurd-system?): Move to... * guix/utils.scm (system-hurd?): ...here. * gnu/packages/*: Update all users, removing (gnu packages hurd) include where now unused. Janneke Nieuwenhuizen