summary refs log tree commit diff
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2022-07-20 02:41:31 +0200
committerMarius Bakke <marius@gnu.org>2022-07-23 19:43:10 +0200
commit57d5e06ef6941d9b05aebc0d01873d8a89883b09 (patch)
tree448fa8eea914aa9ce2e1e0220fe5b17e6de11239
parentc84fa7a253b3405f8f29e79ac65546eea2562641 (diff)
downloadguix-57d5e06ef6941d9b05aebc0d01873d8a89883b09.tar.gz
gnu: libpaper: Update to 1.2.2.
* gnu/packages/ghostscript.scm (libpaper): Update to 1.2.2.
[source](patches): Remove.
* gnu/packages/patches/libpaper-free-systempapername.patch,
gnu/packages/patches/libpaper-free-xdg-config-home.patch,
gnu/packages/patches/libpaper-invalid-paperspecs.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
-rw-r--r--gnu/local.mk3
-rw-r--r--gnu/packages/ghostscript.scm7
-rw-r--r--gnu/packages/patches/libpaper-free-systempapername.patch38
-rw-r--r--gnu/packages/patches/libpaper-free-xdg-config-home.patch37
-rw-r--r--gnu/packages/patches/libpaper-invalid-paperspecs.patch97
5 files changed, 2 insertions, 180 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 882712fd5e..2872919ce5 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1405,9 +1405,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/libmpeg2-global-symbol-test.patch	\
   %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch		\
   %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch	\
-  %D%/packages/patches/libpaper-free-systempapername.patch	\
-  %D%/packages/patches/libpaper-free-xdg-config-home.patch	\
-  %D%/packages/patches/libpaper-invalid-paperspecs.patch	\
   %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch	\
   %D%/packages/patches/libquicktime-ffmpeg.patch 		\
   %D%/packages/patches/librecad-support-for-boost-1.76.patch	\
diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm
index 8fc91be16d..ee6700747e 100644
--- a/gnu/packages/ghostscript.scm
+++ b/gnu/packages/ghostscript.scm
@@ -77,18 +77,15 @@ Consortium standard (ICC), approved as ISO 15076-1.")
 (define-public libpaper
   (package
     (name "libpaper")
-    (version "1.2.1")
+    (version "1.2.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://github.com/rrthomas/libpaper/releases"
                                   "/download/v" version "/libpaper-"
                                   version ".tar.gz"))
-              (patches (search-patches "libpaper-free-xdg-config-home.patch"
-                                       "libpaper-free-systempapername.patch"
-                                       "libpaper-invalid-paperspecs.patch"))
               (sha256
                (base32
-                "18m1yas7lihlyaxr0vpgy65bq9ri429wrm4sfxyhd5gj88gn16lr"))))
+                "0lixfgmdbna6gflsgp05d09zygrqi1ip5hsg0p33lh7ndjf6v5ma"))))
     (build-system gnu-build-system)
     (native-inputs
      (list help2man))
diff --git a/gnu/packages/patches/libpaper-free-systempapername.patch b/gnu/packages/patches/libpaper-free-systempapername.patch
deleted file mode 100644
index 12fea8ee10..0000000000
--- a/gnu/packages/patches/libpaper-free-systempapername.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-Ensure backwards compatibility with libpaper 1.1 by returning a value that
-must be free()'d.
-
-Taken from upstream:
-
-  https://github.com/rrthomas/libpaper/commit/9a4f7cdd6b749fd9d08ec92b6e3b434f7d322b6d
-
-diff --git a/lib/libpaper.c.in.in b/lib/libpaper.c.in.in
-index aa86d06..19e3332 100644
---- a/lib/libpaper.c.in.in
-+++ b/lib/libpaper.c.in.in
-@@ -316,9 +316,9 @@ const char *defaultpapername(void) {
-     return paperstr;
- }
- 
--/* Alias for defaultpapername. */
-+/* Alias for defaultpapername; its return value must be freed! */
- const char *systempapername(void) {
--    return defaultpapername();
-+    return strdup(defaultpapername());
- }
- 
- /* Get the default paper size. */
-diff --git a/lib/paper.h b/lib/paper.h
-index c940bed..fe5d4be 100644
---- a/lib/paper.h
-+++ b/lib/paper.h
-@@ -123,8 +123,8 @@ const struct paper *defaultpaper(void);
- const char *defaultpapername(void);
- 
- /*
-- * Deprecated, only for backwards compatibility; an alias for
-- * defaultpapername().
-+ * Deprecated, only for backwards compatibility; does the same as
-+ * defaultpapername(), but returns a value that must be freed.
-  */
- const char *systempapername(void);
- 
diff --git a/gnu/packages/patches/libpaper-free-xdg-config-home.patch b/gnu/packages/patches/libpaper-free-xdg-config-home.patch
deleted file mode 100644
index 79c3d8173d..0000000000
--- a/gnu/packages/patches/libpaper-free-xdg-config-home.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Free the xdg_config_home_variable only when needed.
-
-Taken from upstream:
-
-  https://github.com/rrthomas/libpaper/commit/29e3e3800cfea738f12a9760290b92d5c199092b
-
-diff --git a/lib/libpaper.c.in.in b/lib/libpaper.c.in.in
-index f7af1d7..aa86d06 100644
---- a/lib/libpaper.c.in.in
-+++ b/lib/libpaper.c.in.in
-@@ -295,7 +295,6 @@ const char *defaultpapername(void) {
- 
-     const char *paperstr = getenv("PAPERSIZE");
-     if (paperstr == NULL && xdg_config_home != NULL) {
--        free_xdg_config_home = true;
-         char *papersize = mfile_name_concat(xdg_config_home, PAPERSIZE_FILENAME, NULL);
-         if (papersize != NULL) {
-             paperstr = papernamefile(papersize);
-@@ -374,6 +373,7 @@ int paperinit(void)
-     xdg_config_home = getenv("XDG_CONFIG_HOME");
-     if (xdg_config_home == NULL) {
-         char *home = getenv("HOME");
-+        free_xdg_config_home = true;
-         xdg_config_home = mfile_name_concat(home, ".config", NULL);
-         if (xdg_config_home == NULL)
-             return PAPER_NOMEM;
-@@ -409,8 +409,10 @@ int paperdone(void)
- {
-     if (initialized) {
-         free(sysconfdir);
-+        sysconfdir = NULL;
-         if (free_xdg_config_home)
-             free(xdg_config_home);
-+        xdg_config_home = NULL;
-         initialized = false;
-     }
-     return PAPER_OK;
diff --git a/gnu/packages/patches/libpaper-invalid-paperspecs.patch b/gnu/packages/patches/libpaper-invalid-paperspecs.patch
deleted file mode 100644
index 29f1ca64a3..0000000000
--- a/gnu/packages/patches/libpaper-invalid-paperspecs.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-Handle invalid paper specifications.
-
-Taken from upstream:
-
-  https://github.com/rrthomas/libpaper/commit/24bcaa54e2813683404e3e13a4fedd47f3e4d614
-
-diff --git a/lib/libpaper.c.in.in b/lib/libpaper.c.in.in
-index 19e3332..c68a936 100644
---- a/lib/libpaper.c.in.in
-+++ b/lib/libpaper.c.in.in
-@@ -164,10 +164,8 @@ const struct paper *papernext(const struct paper *paper)
- }
- 
- /* Constructor. */
--static int readspecs(struct paper **papers_list, const char *specsfile, struct paper **last) {
--    paper_lineno = 0;
--    free(paper_specsfile);
--    paper_specsfile = strdup(specsfile);
-+static int readspecs(struct paper **papers_list, const char *specsfile, struct paper **last, size_t *lineno) {
-+    *lineno = 0;
-     char *old_locale = setlocale(LC_ALL, NULL);
-     if (old_locale != NULL)
-         old_locale = strdup(old_locale);
-@@ -178,7 +176,7 @@ static int readspecs(struct paper **papers_list, const char *specsfile, struct p
-         struct paper *prev = *papers_list, *p;
-         size_t n;
-         char *l;
--        for (paper_lineno = 1, l = NULL; getline(&l, &n, ps) > 0; prev = p, paper_lineno++) {
-+        for (*lineno = 1, l = NULL; getline(&l, &n, ps) > 0; prev = p, (*lineno)++) {
-             char *saveptr;
-             char *name = gettok(l, &saveptr);
-             char *wstr = gettok(NULL, &saveptr), *hstr = gettok(NULL, &saveptr);
-@@ -350,6 +348,8 @@ int paperinit(void)
-         return PAPER_OK;
-     initialized = true;
- 
-+    int ret = PAPER_OK;
-+
-     /* Read system paperspecs. */
-     struct paper *system_papers = NULL;
-     sysconfdir = alloc_relocate("@sysconfdir@");
-@@ -357,12 +357,9 @@ int paperinit(void)
-         char *system_paperspecs = mfile_name_concat(sysconfdir, PAPERSPECS_FILENAME, NULL);
-         if (system_paperspecs == NULL)
-             return PAPER_NOMEM;
--        int ret = readspecs(&system_papers, system_paperspecs, NULL);
--        free(system_paperspecs);
--        if (ret != PAPER_OK) {
--            paperdone();
--            return ret;
--        }
-+        ret = readspecs(&system_papers, system_paperspecs, NULL, &paper_lineno);
-+        free(paper_specsfile);
-+        paper_specsfile = system_paperspecs;
-     }
- 
-     /* Set default paper to first system paper, if any. */
-@@ -381,11 +378,15 @@ int paperinit(void)
-     char *user_paperspecs = mfile_name_concat(xdg_config_home, PAPERSPECS_FILENAME, NULL);
-     struct paper *last_paper = NULL;
-     if (user_paperspecs != NULL) {
--        int ret = readspecs(&papers, user_paperspecs, &last_paper);
--        free(user_paperspecs);
--        if (ret != PAPER_OK) {
--            paperdone();
--            return ret;
-+        size_t user_lineno;
-+        int user_ret = readspecs(&papers, user_paperspecs, &last_paper, &user_lineno);
-+        if (ret == PAPER_OK) {
-+            ret = user_ret;
-+            free(user_paperspecs);
-+        } else if (paper_lineno == 0) {
-+            free(paper_specsfile);
-+            paper_specsfile = user_paperspecs;
-+            paper_lineno = user_lineno;
-         }
-     }
- 
-@@ -395,13 +396,16 @@ int paperinit(void)
-             default_paper = papers;
- 
-         /* Concatenate system papers to user papers. */
--        last_paper->next = system_papers;
-+        if (last_paper != NULL)
-+            last_paper->next = system_papers;
-+        else
-+            last_paper = system_papers;
-     }
- 
-     if (papers == NULL) /* System papers are all we have. */
-         papers = system_papers;
- 
--    return PAPER_OK;
-+    return ret;
- }
- 
- /* Shut down the library. */