unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#60358] [PATCH] gnu: Add gnulib.
@ 2022-12-27 16:23 Vivien Kraus via Guix-patches via
  2022-12-27 16:23 ` [bug#60358] [PATCH v6 2/3] " Vivien Kraus via Guix-patches via
                   ` (38 more replies)
  0 siblings, 39 replies; 83+ messages in thread
From: Vivien Kraus via Guix-patches via @ 2022-12-27 16:23 UTC (permalink / raw)
  To: 60358

* gnu/packages/build-tools.scm (gnulib-latest): New variable. This one always
tracks the latest upstream commit, so don’t use it as an input.
(gnulib): New variable. This is a "recent" snapshot.
---
 gnu/packages/build-tools.scm | 71 ++++++++++++++++++++++++++++++++++++
 1 file changed, 71 insertions(+)

diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm
index 6c1350c44f..062956f685 100644
--- a/gnu/packages/build-tools.scm
+++ b/gnu/packages/build-tools.scm
@@ -38,6 +38,7 @@ (define-module (gnu packages build-tools)
   #:use-module (guix gexp)
   #:use-module (guix download)
   #:use-module (guix git-download)
+  #:use-module (guix git)
   #:use-module (guix build-system cmake)
   #:use-module (gnu packages)
   #:use-module (gnu packages adns)
@@ -48,11 +49,13 @@ (define-module (gnu packages build-tools)
   #:use-module (gnu packages cpp)
   #:use-module (gnu packages elf)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages lisp)
   #:use-module (gnu packages logging)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages ninja)
   #:use-module (gnu packages package-management)
   #:use-module (gnu packages pcre)
+  #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pretty-print)
   #:use-module (gnu packages protobuf)
@@ -803,3 +806,71 @@ (define-public genie
 same settings to multiple projects.  It supports generating projects using GNU
 Makefiles, JSON Compilation Database, and experimentally Ninja.")
       (license license:bsd-3))))
+
+;; Gnulib is a source code library. The developers encourage you to develop
+;; your programs with the latest commit of gnulib. However, gnulib is also
+;; used to bootstrap some GNU programs. To avoid rebuilding the world when a
+;; new gnulib commit is pushed, gnulib as a native input must use a known
+;; snapshot of the library.
+
+(define-public gnulib-latest
+  ;; Use this to develop.
+  (package
+    (name "gnulib-latest")
+    (version "latest")
+    (source
+     (git-checkout
+      (url "https://git.savannah.gnu.org/git/gnulib.git")))
+    (build-system gnu-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (delete 'configure)
+          (replace 'install
+            (lambda _
+              (install-file "gnulib-tool"
+                            (string-append #$output "/bin"))
+              (copy-recursively "."
+                                (string-append #$output "/share/gnulib-srcdir")))))
+      #:tests? #f)) ;; Tests are syntax and indentation checks for the
+                    ;; maintainer.
+    (inputs ;; Shebangs for some auxiliary build files.
+     (list python perl clisp))
+    (home-page "https://www.gnu.org/software/gnulib/")
+    (synopsis "GNU portability library")
+    (description
+     "Gnulib is a library that provides common functions from the glibc to your
+programs, in order to enhance portability across operating systems. It also
+provides common maintainer tools for gnu packages. This package always tracks
+the latest commit in gnulib. @strong{For packages dependencies, please use the
+@code{gnulib} package instead.} The latter provides a recent enough snapshot.")
+    (native-search-paths
+     (list
+      (search-path-specification
+       (variable "GNULIB_SRCDIR")
+       (files (list "share/gnulib-srcdir")))))
+    (license
+     (list license:lgpl2.0+ license:gpl3+))))
+
+(define-public gnulib
+  ;; Use this as a native input.
+  (package
+    (inherit gnulib-latest)
+    (name "gnulib")
+    (version "2022-12-27")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://git.savannah.gnu.org/git/gnulib.git")
+             (commit "fde75446490e18d2539817ca418ab8adf73b02d3")))
+       (sha256
+        (base32
+         "0fjbdhwi9025wyq39rwc2j6aazfmagx056kkbvxx6bs97i80dcim"))))
+    (synopsis "GNU portability library")
+    (description
+     "Gnulib is a library that provides common functions from the glibc to your
+programs, in order to enhance portability across operating systems. It also
+provides common maintainer tools for gnu packages. This package provides a
+recent snapshot of gnulib.")))

base-commit: 8f93a1e01a879ae026678dd92c18e2a2a49be540
-- 
2.38.1




^ permalink raw reply related	[flat|nested] 83+ messages in thread

end of thread, other threads:[~2023-01-16 12:01 UTC | newest]

Thread overview: 83+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-27 16:23 [bug#60358] [PATCH] gnu: Add gnulib Vivien Kraus via Guix-patches via
2022-12-27 16:23 ` [bug#60358] [PATCH v6 2/3] " Vivien Kraus via Guix-patches via
2022-12-27 16:23 ` [bug#60358] [PATCH v11 3/4] " Vivien Kraus via Guix-patches via
2023-01-01 20:48   ` Vivien Kraus via Guix-patches via
2022-12-27 16:23 ` [bug#60358] [PATCH v8 " Vivien Kraus via Guix-patches via
2022-12-27 16:23 ` [bug#60358] [PATCH v9 " Vivien Kraus via Guix-patches via
2023-01-01 16:25   ` Liliana Marie Prikler
2023-01-01 16:55     ` Vivien Kraus via Guix-patches via
2023-01-01 17:31       ` Liliana Marie Prikler
2022-12-27 16:23 ` [bug#60358] [PATCH v4 1/3] " Vivien Kraus via Guix-patches via
2022-12-27 16:23 ` [bug#60358] [PATCH v10 3/4] " Vivien Kraus via Guix-patches via
2022-12-27 16:23 ` [bug#60358] [PATCH v7 4/5] " Vivien Kraus via Guix-patches via
2022-12-31 19:26   ` Liliana Marie Prikler
2022-12-27 16:23 ` [bug#60358] [PATCH v5 1/5] " Vivien Kraus via Guix-patches via
2022-12-31  6:53   ` Liliana Marie Prikler
2022-12-27 17:33 ` [bug#60358] Providing gnulib Vivien Kraus via Guix-patches via
2022-12-27 18:44 ` [bug#60358] [PATCH] gnu: Add gnulib Simon Josefsson via Guix-patches via
2022-12-28  1:57   ` Vivien Kraus via Guix-patches via
2022-12-29 14:44     ` Simon Josefsson via Guix-patches via
2022-12-29 15:56       ` Simon Josefsson via Guix-patches via
2022-12-27 20:45 ` Liliana Marie Prikler
2022-12-27 16:23   ` [bug#60358] [PATCH v2 1/2] " Vivien Kraus via Guix-patches via
2022-12-28  2:20   ` [bug#60358] [PATCH v2 2/2] gnu: guile-gnutls: Update to 3.7.11 Vivien Kraus via Guix-patches via
2022-12-28  2:50     ` Vivien Kraus via Guix-patches via
2022-12-29 14:55       ` Simon Josefsson via Guix-patches via
2022-12-27 16:23         ` [bug#60358] [PATCH v3 1/2] gnu: Add gnulib Vivien Kraus via Guix-patches via
2022-12-29 20:02           ` Liliana Marie Prikler
2022-12-30 11:45             ` Vivien Kraus via Guix-patches via
2022-12-30 19:35               ` Liliana Marie Prikler
2022-12-28  2:20         ` [bug#60358] [PATCH v3 2/2] gnu: guile-gnutls: Update to 3.7.11 Vivien Kraus via Guix-patches via
2022-12-29 15:25           ` Vivien Kraus via Guix-patches via
2022-12-29 15:37             ` Simon Josefsson via Guix-patches via
2022-12-29 16:06               ` Vivien Kraus via Guix-patches via
2022-12-29 16:14                 ` Simon Josefsson via Guix-patches via
2022-12-28  2:20 ` [bug#60358] [PATCH v8 4/4] " Vivien Kraus via Guix-patches via
2022-12-28  2:20 ` [bug#60358] [PATCH v11 " Vivien Kraus via Guix-patches via
2022-12-28  2:20 ` [bug#60358] [PATCH v10 " Vivien Kraus via Guix-patches via
2023-01-15  7:07   ` bug#60358: " Liliana Marie Prikler
2022-12-28  2:20 ` [bug#60358] [PATCH v5 5/5] " Vivien Kraus via Guix-patches via
2022-12-31  6:53   ` Liliana Marie Prikler
2022-12-28  2:20 ` [bug#60358] [PATCH v6 3/3] " Vivien Kraus via Guix-patches via
2022-12-28  2:20 ` [bug#60358] [PATCH v7 5/5] " Vivien Kraus via Guix-patches via
2022-12-28  2:20 ` [bug#60358] [PATCH v9 4/4] " Vivien Kraus via Guix-patches via
2022-12-28  2:20 ` [bug#60358] [PATCH v4 3/3] " Vivien Kraus via Guix-patches via
2022-12-30 11:30 ` [bug#60358] [PATCH v4 2/3] gnu: gnulib: Enable tests Vivien Kraus via Guix-patches via
2022-12-30 11:30 ` [bug#60358] [PATCH v5 2/5] " Vivien Kraus via Guix-patches via
2022-12-30 21:20 ` [bug#60358] [PATCH v6 1/3] gnu: UCD: Add version 3.0-update1 Vivien Kraus via Guix-patches via
2022-12-30 21:20 ` [bug#60358] [PATCH v5 3/5] " Vivien Kraus via Guix-patches via
2022-12-31  6:49   ` Liliana Marie Prikler
2022-12-31 10:56     ` Vivien Kraus via Guix-patches via
2022-12-31 14:07       ` Liliana Marie Prikler
2022-12-30 21:20 ` [bug#60358] [PATCH v7 " Vivien Kraus via Guix-patches via
2022-12-31 19:17   ` Liliana Marie Prikler
2023-01-01  0:24     ` Vivien Kraus via Guix-patches via
2023-01-01  1:28       ` Liliana Marie Prikler
2022-12-30 22:05 ` [bug#60358] [PATCH v5 4/5] gnu: gnulib: Regenerate the unicode data Vivien Kraus via Guix-patches via
2022-12-31 17:33 ` [bug#60358] [PATCH v11 1/4] gnu: libunibreak: Use ucd instead of ucd-next Vivien Kraus via Guix-patches via
2022-12-31 17:33 ` [bug#60358] [PATCH v10 " Vivien Kraus via Guix-patches via
2022-12-31 17:33 ` [bug#60358] [PATCH v7 1/5] " Vivien Kraus via Guix-patches via
2022-12-31 17:33 ` [bug#60358] [PATCH v8 1/4] " Vivien Kraus via Guix-patches via
2022-12-31 17:33 ` [bug#60358] [PATCH v9 " Vivien Kraus via Guix-patches via
2022-12-31 17:34 ` [bug#60358] [PATCH v10 2/4] gnu: ucd-next: Update to 15.0.0 Vivien Kraus via Guix-patches via
2022-12-31 17:34 ` [bug#60358] [PATCH v7 2/5] " Vivien Kraus via Guix-patches via
2022-12-31 17:34 ` [bug#60358] [PATCH v9 2/4] " Vivien Kraus via Guix-patches via
2022-12-31 17:34 ` [bug#60358] [PATCH v11 " Vivien Kraus via Guix-patches via
2022-12-31 17:34 ` [bug#60358] [PATCH v8 " Vivien Kraus via Guix-patches via
2023-01-01 21:45 ` [bug#60358] [PATCH v11 0/4] Use a cover letter Vivien Kraus via Guix-patches via
2022-12-31 17:33   ` [bug#60358] [PATCH v11 1/4] gnu: libunibreak: Use ucd instead of ucd-next Vivien Kraus via Guix-patches via
2022-12-31 17:34     ` [bug#60358] [PATCH v11 2/4] gnu: ucd-next: Update to 15.0.0 Vivien Kraus via Guix-patches via
2022-12-27 16:23       ` [bug#60358] [PATCH v11 3/4] gnu: Add gnulib Vivien Kraus via Guix-patches via
2022-12-28  2:20         ` [bug#60358] [PATCH v11 4/4] gnu: guile-gnutls: Update to 3.7.11 Vivien Kraus via Guix-patches via
2023-01-01 21:59 ` [bug#60358] [PATCH v11 0/4] Using a cover letter with a shallow thread style Vivien Kraus via Guix-patches via
2022-12-27 16:23   ` [bug#60358] [PATCH v11 3/4] gnu: Add gnulib Vivien Kraus via Guix-patches via
2022-12-28  2:20   ` [bug#60358] [PATCH v11 4/4] gnu: guile-gnutls: Update to 3.7.11 Vivien Kraus via Guix-patches via
2022-12-31 17:33   ` [bug#60358] [PATCH v11 1/4] gnu: libunibreak: Use ucd instead of ucd-next Vivien Kraus via Guix-patches via
2022-12-31 17:34   ` [bug#60358] [PATCH v11 2/4] gnu: ucd-next: Update to 15.0.0 Vivien Kraus via Guix-patches via
2023-01-02 19:43 ` [bug#60358] [PATCH v12 0/4] Add my name to the copyright line Vivien Kraus via Guix-patches via
2022-12-27 16:23   ` [bug#60358] [PATCH v12 3/4] gnu: Add gnulib Vivien Kraus via Guix-patches via
2023-01-16 11:59     ` [bug#60358] [PATCH] " Ludovic Courtès
2022-12-28  2:20   ` [bug#60358] [PATCH v12 4/4] gnu: guile-gnutls: Update to 3.7.11 Vivien Kraus via Guix-patches via
2022-12-31 17:33   ` [bug#60358] [PATCH v12 1/4] gnu: libunibreak: Use ucd instead of ucd-next Vivien Kraus via Guix-patches via
2022-12-31 17:34   ` [bug#60358] [PATCH v12 2/4] gnu: ucd-next: Update to 15.0.0 Vivien Kraus via Guix-patches via
2023-01-07 10:21 ` [bug#60358] gnulib: Should this be in its own module? Vivien Kraus via Guix-patches via

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).