unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#39897] [PATCH] Remove package brotli
@ 2020-03-04  9:56 Lars-Dominik Braun
  2020-03-11 17:36 ` bug#39897: " Ludovic Courtès
  0 siblings, 1 reply; 2+ messages in thread
From: Lars-Dominik Braun @ 2020-03-04  9:56 UTC (permalink / raw)
  To: 39897


[-- Attachment #1.1: Type: text/plain, Size: 367 bytes --]

Hi,

this series removes the package brotli, which is parallel to google-brotli.
The latter provides version 1.0.7 of the shared libraries, whereas brotli
provided an earlier, unknown version. Its only dependent was woff2, which has
been upgraded to the proper release 1.0.2 and which in turn is only used by
font-fantasque-sanse. Both builds succeed.

Cheers,
Lars


[-- Attachment #1.2: 0001-gnu-woff2-Update-to-1.0.2.patch --]
[-- Type: text/x-diff, Size: 7092 bytes --]

From 3f9ff6a73840d2a094dac730ece4d1d06aea3b79 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <ldb@leibniz-psychology.org>
Date: Wed, 4 Mar 2020 10:46:36 +0100
Subject: [PATCH 1/2] gnu: woff2: Update to 1.0.2

* gnu/packages/fontutils.scm (woff2): Update to 1.0.2 and switch to cmake
* gnu/packages/patches/woff2-libbrotli.patch: Remove
* gnu/local.mk (dist_patch_DATA): Remove patch
---
 gnu/local.mk                               |  1 -
 gnu/packages/fontutils.scm                 | 65 ++++++++---------
 gnu/packages/patches/woff2-libbrotli.patch | 84 ----------------------
 3 files changed, 28 insertions(+), 122 deletions(-)
 delete mode 100644 gnu/packages/patches/woff2-libbrotli.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 359ed4bbbc..fd17085585 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1491,7 +1491,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/wicd-wpa2-ttls.patch			\
   %D%/packages/patches/wmctrl-64-fix.patch			\
   %D%/packages/patches/wmfire-update-for-new-gdk-versions.patch	\
-  %D%/packages/patches/woff2-libbrotli.patch			\
   %D%/packages/patches/wordnet-CVE-2008-2149.patch			\
   %D%/packages/patches/wordnet-CVE-2008-3908-pt1.patch			\
   %D%/packages/patches/wordnet-CVE-2008-3908-pt2.patch			\
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 42d12fb143..8f168938b8 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -254,44 +254,35 @@ work with most software requiring Type 1 fonts.")
     (license license:bsd-3)))
 
 (define-public woff2
-  (let ((commit "4e698b8c6c5e070d53c340db9ddf160e21070ede")
-        (revision "1"))
-    (package
-      (name "woff2")
-      (version (string-append "20160306-" revision "."
-                              (string-take commit 7)))
-      (source (origin
-                (method git-fetch)
-                (uri (git-reference
-                      (url "https://github.com/google/woff2.git")
-                      (commit commit)))
-                (file-name (string-append name "-" version ".tar.xz"))
-                (sha256
-                 (base32
-                  "0wka0yhf0cjmd4rv2jckxpyv6lb5ckj4nj0k1ajq5hrjy7f30lcp"))
-                (patches (list (search-patch "woff2-libbrotli.patch")))))
-      (build-system gnu-build-system)
-      (native-inputs
-       `(("pkg-config" ,pkg-config)))
-      (inputs
-       `(("brotli" ,brotli)))
-      (arguments
-       `(#:tests? #f                    ;no tests
-         #:phases (modify-phases %standard-phases
-                    (delete 'configure)
-                    (replace 'install
-                      (lambda* (#:key outputs #:allow-other-keys)
-                        (let* ((out (assoc-ref outputs "out"))
-                               (bin (string-append out "/bin")))
-                          (install-file "woff2_compress" bin)
-                          (install-file "woff2_decompress" bin)
-                          #t))))))
-      (synopsis "Compress TrueType fonts to WOFF2")
-      (description
-       "This package provides utilities for compressing/decompressing TrueType
+  (package
+    (name "woff2")
+    (version "1.0.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/google/woff2.git")
+                    (commit (string-append "v" version))))
+              (file-name (string-append name "-" version ".git"))
+              (sha256
+               (base32
+                "13l4g536h0pr84ww4wxs2za439s0xp1va55g6l478rfbb1spp44y"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("google-brotli" ,google-brotli)))
+    (arguments
+     ;; package has no tests
+     `(#:tests? #f
+       ;; we can’t have both, shared libraries and binaries, so turn off the
+       ;; former
+       #:configure-flags (list "-DBUILD_SHARED_LIBS=OFF")))
+    (synopsis "Compress TrueType fonts to WOFF2")
+    (description
+     "This package provides utilities for compressing/decompressing TrueType
 fonts to/from the WOFF2 format.")
-      (license license:asl2.0)
-      (home-page "https://github.com/google/woff2"))))
+    (license license:asl2.0)
+    (home-page "https://github.com/google/woff2")))
 
 (define-public fontconfig
   (package
diff --git a/gnu/packages/patches/woff2-libbrotli.patch b/gnu/packages/patches/woff2-libbrotli.patch
deleted file mode 100644
index ffa941cf92..0000000000
--- a/gnu/packages/patches/woff2-libbrotli.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From: Eric Bavier <bavier@member.fsf.org>
-Date: Sat, 2 Apr 2016 01:31:03 -0500
-Subject: [PATCH] Build against external libbrotli.
-
----
- Makefile         | 20 ++++----------------
- src/woff2_dec.cc |  2 +-
- src/woff2_enc.cc |  2 +-
- 3 files changed, 6 insertions(+), 18 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 92b8d54..618a751 100644
---- a/Makefile
-+++ b/Makefile
-@@ -1,6 +1,6 @@
- OS := $(shell uname)
- 
--CPPFLAGS = -I./brotli/dec/ -I./brotli/enc/ -I./src
-+CPPFLAGS := -I./src $(shell pkg-config --cflags libbrotlienc libbrotlidec)
- 
- CC ?= gcc
- CXX ?= g++
-@@ -22,29 +22,17 @@ OUROBJ = font.o glyph.o normalize.o table_tags.o transform.o \
-          woff2_dec.o woff2_enc.o woff2_common.o woff2_out.o \
-          variable_length.o
- 
--BROTLI = brotli
--ENCOBJ = $(BROTLI)/enc/*.o
--DECOBJ = $(BROTLI)/dec/*.o
-+BROTLI_LIBS := $(shell pkg-config --libs libbrotlienc libbrotlidec)
- 
- OBJS = $(patsubst %, $(SRCDIR)/%, $(OUROBJ))
- EXECUTABLES=woff2_compress woff2_decompress
- 
- EXE_OBJS=$(patsubst %, $(SRCDIR)/%.o, $(EXECUTABLES))
- 
--ifeq (,$(wildcard $(BROTLI)/*))
--  $(error Brotli dependency not found : you must initialize the Git submodule)
--endif
--
- all : $(OBJS) $(EXECUTABLES)
- 
--$(EXECUTABLES) : $(EXE_OBJS) deps
--	$(CXX) $(LFLAGS) $(OBJS) $(ENCOBJ) $(DECOBJ) $(SRCDIR)/$@.o -o $@
--
--deps :
--	$(MAKE) -C $(BROTLI)/dec
--	$(MAKE) -C $(BROTLI)/enc
-+$(EXECUTABLES) : $(EXE_OBJS) $(OBJS)
-+	$(CXX) $(LDFLAGS) $(OBJS) $(SRCDIR)/$@.o -o $@ $(BROTLI_LIBS) $(LIBS)
- 
- clean :
- 	rm -f $(OBJS) $(EXE_OBJS) $(EXECUTABLES)
--	$(MAKE) -C $(BROTLI)/dec clean
--	$(MAKE) -C $(BROTLI)/enc clean
-diff --git a/src/woff2_dec.cc b/src/woff2_dec.cc
-index 837eede..98c01ce 100644
---- a/src/woff2_dec.cc
-+++ b/src/woff2_dec.cc
-@@ -27,7 +27,7 @@
- #include <memory>
- #include <utility>
- 
--#include "./decode.h"
-+#include "brotli/dec/decode.h"
- #include "./buffer.h"
- #include "./port.h"
- #include "./round.h"
-diff --git a/src/woff2_enc.cc b/src/woff2_enc.cc
-index 920c614..00d74da 100644
---- a/src/woff2_enc.cc
-+++ b/src/woff2_enc.cc
-@@ -23,7 +23,7 @@
- #include <string>
- #include <vector>
- 
--#include "./encode.h"
-+#include "brotli/enc/encode.h"
- #include "./buffer.h"
- #include "./font.h"
- #include "./normalize.h"
--- 
-2.7.3
-
-- 
2.20.1


[-- Attachment #1.3: 0002-gnu-brotli-Remove-package.patch --]
[-- Type: text/x-diff, Size: 2810 bytes --]

From d1497d1da6817da78846601b90aa1b3fcfe36cbc Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <ldb@leibniz-psychology.org>
Date: Wed, 4 Mar 2020 10:48:45 +0100
Subject: [PATCH 2/2] gnu: brotli: Remove package

Same package is provided by google-brotli.

* gnu/packages/compression.scm (brotli): Remove unused variable
---
 gnu/packages/compression.scm | 43 ------------------------------------
 1 file changed, 43 deletions(-)

diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index ee10bd03ce..bfce15558b 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -883,49 +883,6 @@ possible and can compress in parallel.  This is especially useful for large
 tarballs.")
     (license license:bsd-2)))
 
-(define-public brotli
-  (let ((commit "e992cce7a174d6e2b3486616499d26bb0bad6448")
-        (revision "1"))
-    (package
-      (name "brotli")
-      (version (string-append "0.1-" revision "."
-                              (string-take commit 7)))
-      (source (origin
-                (method git-fetch)
-                (uri (git-reference
-                      (url "https://github.com/bagder/libbrotli.git")
-                      (commit commit)
-                      (recursive? #t)))
-                (file-name (string-append name "-" version ".tar.xz"))
-                (sha256
-                 (base32
-                  "1qxxsasvwbbbh6dl3138y9h3fg0q2v7xdk5jjc690bdg7g1wrj6n"))
-                (modules '((guix build utils)))
-                (snippet '(begin
-                            ;; This is a recursive submodule that is
-                            ;; unnecessary for this package, so delete it.
-                            (delete-file-recursively "brotli/terryfy")
-                            #t))))
-      (build-system gnu-build-system)
-      (native-inputs
-       `(("autoconf" ,autoconf)
-         ("automake" ,automake)
-         ("libtool" ,libtool)))
-      (arguments
-       `(#:phases (modify-phases %standard-phases
-                    (add-after 'unpack 'autogen
-                      (lambda _
-                        (mkdir "m4")
-                        (invoke "autoreconf" "-vfi"))))))
-      (home-page "https://github.com/bagder/libbrotli/")
-      (synopsis "Implementation of the Brotli compression algorithm")
-      (description
-       "Brotli is a general-purpose lossless compression algorithm.  It is
-similar in speed to deflate but offers denser compression.  This package
-provides encoder and a decoder libraries: libbrotlienc and libbrotlidec,
-respectively, based on the reference implementation from Google.")
-      (license license:expat))))
-
 (define-public bsdiff
   (package
     (name "bsdiff")
-- 
2.20.1


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

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

* bug#39897: [PATCH] Remove package brotli
  2020-03-04  9:56 [bug#39897] [PATCH] Remove package brotli Lars-Dominik Braun
@ 2020-03-11 17:36 ` Ludovic Courtès
  0 siblings, 0 replies; 2+ messages in thread
From: Ludovic Courtès @ 2020-03-11 17:36 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: 39897-done

Hi,

Lars-Dominik Braun <ldb@leibniz-psychology.org> skribis:

> this series removes the package brotli, which is parallel to google-brotli.
> The latter provides version 1.0.7 of the shared libraries, whereas brotli
> provided an earlier, unknown version. Its only dependent was woff2, which has
> been upgraded to the proper release 1.0.2 and which in turn is only used by
> font-fantasque-sanse. Both builds succeed.

I pushed these two patches a few days ago but forgot to reply (?).

I made “brotli” a deprecated alias for “google-brotli”.

Thanks!

Ludo’.

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

end of thread, other threads:[~2020-03-11 17:37 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-04  9:56 [bug#39897] [PATCH] Remove package brotli Lars-Dominik Braun
2020-03-11 17:36 ` bug#39897: " Ludovic Courtès

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).