[packages/giflib] - updated to 5.2.2 (fixes CVE-2022-28506, CVE-2023-48161)

qboosh qboosh at pld-linux.org
Sun Feb 25 22:08:23 CET 2024


commit b1d6f2d503765f23ce1b69ddb8f770179fc9242c
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sun Feb 25 22:02:47 2024 +0100

    - updated to 5.2.2 (fixes CVE-2022-28506, CVE-2023-48161)

 giflib-make.patch | 78 +++++++++++++++++++++++++++++++++++++------------------
 giflib.spec       | 32 +++++++++++++----------
 2 files changed, 72 insertions(+), 38 deletions(-)
---
diff --git a/giflib.spec b/giflib.spec
index 80eb629..16b9326 100644
--- a/giflib.spec
+++ b/giflib.spec
@@ -9,14 +9,14 @@ Summary(pt_BR.UTF-8):	Biblioteca de manipulação de arquivos GIF
 Summary(ru.UTF-8):	Библиотека для работы с GIF-файлами
 Summary(uk.UTF-8):	Бібліотека для роботи з GIF-файлами
 Name:		giflib
-Version:	5.2.1
-Release:	2
+Version:	5.2.2
+Release:	1
 License:	MIT-like
 Group:		Libraries
-Source0:	http://downloads.sourceforge.net/giflib/%{name}-%{version}.tar.gz
-# Source0-md5:	6f03aee4ebe54ac2cc1ab3e4b0a049e5
+Source0:	https://downloads.sourceforge.net/giflib/%{name}-%{version}.tar.gz
+# Source0-md5:	913dd251492134e235ee3c9a91987a4d
 Patch0:		%{name}-make.patch
-URL:		http://sourceforge.net/projects/giflib/
+URL:		https://sourceforge.net/projects/giflib/
 BuildRequires:	gcc >= 5:3.2
 BuildRequires:	netpbm-devel
 BuildRequires:	rpmbuild(macros) >= 1.213
@@ -56,8 +56,8 @@ Summary(uk.UTF-8):	Хедери, бібліотеки та документац
 Group:		Development/Libraries
 Requires:	%{name} = %{version}-%{release}
 Provides:	libungif-devel
-Obsoletes:	giflib4-devel
-Obsoletes:	libungif-devel
+Obsoletes:	giflib4-devel < 5
+Obsoletes:	libungif-devel < 5
 
 %description devel
 Libraries and headers needed for developing programs that use libgif
@@ -93,8 +93,8 @@ Summary(uk.UTF-8):	Статичні бібліотеки GIF-бібліотек
 Group:		Development/Libraries
 Requires:	%{name}-devel = %{version}-%{release}
 Provides:	libungif-static
-Obsoletes:	giflib4-static
-Obsoletes:	libungif-static
+Obsoletes:	giflib4-static < 5
+Obsoletes:	libungif-static < 5
 
 %description static
 Static libraries needed for developing programs that use libgif to
@@ -122,8 +122,8 @@ Summary(uk.UTF-8):	Програми для конвертування та об
 Group:		Applications/Graphics
 Requires:	%{name} = %{version}-%{release}
 Provides:	libungif-progs
-Obsoletes:	giflib4-progs
-Obsoletes:	libungif-progs
+Obsoletes:	giflib4-progs < 5
+Obsoletes:	libungif-progs < 5
 
 %description progs
 This package contains various programs for manipulating GIF image
@@ -164,8 +164,14 @@ rm -rf $RPM_BUILD_ROOT
 	PREFIX=%{_prefix} \
 	LIBDIR=%{_libdir}
 
+# wrong files installed in 5.2.2
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/*.xml
+cp -p doc/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
+install -d $RPM_BUILD_ROOT%{_mandir}/man7
+cp -p doc/*.7 $RPM_BUILD_ROOT%{_mandir}/man7
+
 # docs for not installed programs used in tests
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/{gifbg,gifcolor,gifecho,gifhisto,gifinto,gifwedge}.1
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/{gifbg,gifcolor,gifecho,giffilter,gifhisto,gifinto,gifsponge,gifwedge}.1
 
 cd $RPM_BUILD_ROOT%{_libdir}
 ln -sf libgif.so.*.*.* $RPM_BUILD_ROOT%{_libdir}/libungif.so
@@ -212,6 +218,6 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man1/gifbuild.1*
 %{_mandir}/man1/gifclrmp.1*
 %{_mandir}/man1/giffix.1*
-%{_mandir}/man1/giflib.1*
 %{_mandir}/man1/giftext.1*
 %{_mandir}/man1/giftool.1*
+%{_mandir}/man7/giflib.7*
diff --git a/giflib-make.patch b/giflib-make.patch
index dcfa1ae..097453f 100644
--- a/giflib-make.patch
+++ b/giflib-make.patch
@@ -1,29 +1,57 @@
---- giflib-5.2.1/Makefile.orig	2019-06-24 18:08:57.000000000 +0200
-+++ giflib-5.2.1/Makefile	2020-11-30 19:44:50.354825609 +0100
-@@ -59,12 +59,12 @@
+--- giflib-5.2.2/Makefile.orig	2024-02-25 21:33:25.080972300 +0100
++++ giflib-5.2.2/Makefile	2024-02-25 21:50:41.035360053 +0100
+@@ -61,7 +61,7 @@ UTILS = $(INSTALLABLE) \
  	gifsponge \
  	gifwedge
  
 -LDLIBS=libgif.a -lm
 +LDLIBS=-L. -lgif -lm
  
--all: libgif.so libgif.a libutil.so libutil.a $(UTILS)
-+all: libgif.so libgif.a libgifutil.so libgifutil.a $(UTILS)
+ MANUAL_PAGES = \
+ 	doc/gif2rgb.xml \
+@@ -76,24 +76,24 @@ SOEXTENSION	= so
+ LIBGIFSO	= libgif.$(SOEXTENSION)
+ LIBGIFSOMAJOR	= libgif.$(SOEXTENSION).$(LIBMAJOR)
+ LIBGIFSOVER	= libgif.$(SOEXTENSION).$(LIBVER)
+-LIBUTILSO	= libutil.$(SOEXTENSION)
+-LIBUTILSOMAJOR	= libutil.$(SOEXTENSION).$(LIBMAJOR)
++LIBUTILSO	= libgifutil.$(SOEXTENSION)
++LIBUTILSOMAJOR	= libgifutil.$(SOEXTENSION).$(LIBMAJOR)
+ ifeq ($(UNAME), Darwin)
+ SOEXTENSION	= dylib
+ LIBGIFSO        = libgif.$(SOEXTENSION)
+ LIBGIFSOMAJOR   = libgif.$(LIBMAJOR).$(SOEXTENSION)
+ LIBGIFSOVER	= libgif.$(LIBVER).$(SOEXTENSION)
+-LIBUTILSO	= libutil.$(SOEXTENSION)
+-LIBUTILSOMAJOR	= libutil.$(LIBMAJOR).$(SOEXTENSION)
++LIBUTILSO	= libgifutil.$(SOEXTENSION)
++LIBUTILSOMAJOR	= libgifutil.$(LIBMAJOR).$(SOEXTENSION)
+ endif
+ 
+-all: $(LIBGIFSO) libgif.a $(LIBUTILSO) libutil.a $(UTILS)
++all: $(LIBGIFSO) libgif.a $(LIBUTILSO) libgifutil.a $(UTILS)
+ ifeq ($(UNAME), Darwin)
+ else
  	$(MAKE) -C doc
+ endif
  
 -$(UTILS):: libgif.a libutil.a
-+$(UTILS):: libgif.so libgifutil.so
++$(UTILS):: $(LIBGIFSO) $(LIBUTILSO)
  
- libgif.so: $(OBJECTS) $(HEADERS)
- 	$(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,libgif.so.$(LIBMAJOR) -o libgif.so $(OBJECTS)
-@@ -72,14 +72,14 @@
+ $(LIBGIFSO): $(OBJECTS) $(HEADERS)
+ ifeq ($(UNAME), Darwin)
+@@ -105,18 +105,18 @@ endif
  libgif.a: $(OBJECTS) $(HEADERS)
  	$(AR) rcs libgif.a $(OBJECTS)
  
--libutil.so: $(UOBJECTS) $(UHEADERS)
--	$(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,libutil.so.$(LIBMAJOR) -o libutil.so $(UOBJECTS)
-+libgifutil.so: $(UOBJECTS) $(UHEADERS) libgif.so
-+	$(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,libgifutil.so.$(LIBMAJOR) -o libgifutil.so $(UOBJECTS) -L. -lgif
+-$(LIBUTILSO): $(UOBJECTS) $(UHEADERS)
++$(LIBUTILSO): $(UOBJECTS) $(UHEADERS) libgif.so
+ ifeq ($(UNAME), Darwin)
+ 	$(CC) $(CFLAGS) -dynamiclib -current_version $(LIBVER) $(OBJECTS) -o $(LIBUTILSO)
+ else
+-	$(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,$(LIBUTILMAJOR) -o $(LIBUTILSO) $(UOBJECTS)
++	$(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,$(LIBUTILSOMAJOR) -o $(LIBUTILSO) $(UOBJECTS) -L. -lgif
+ endif
  
 -libutil.a: $(UOBJECTS) $(UHEADERS)
 -	$(AR) rcs libutil.a $(UOBJECTS)
@@ -31,12 +59,12 @@
 +	$(AR) rcs libgifutil.a $(UOBJECTS)
  
  clean:
--	rm -f $(UTILS) $(TARGET) libgetarg.a libgif.a libgif.so libutil.a libutil.so *.o
-+	rm -f $(UTILS) $(TARGET) libgetarg.a libgif.a libgif.so libgifutil.a libgifutil.so *.o
- 	rm -f libgif.so.$(LIBMAJOR).$(LIBMINOR).$(LIBPOINT)
- 	rm -f libgif.so.$(LIBMAJOR)
+-	rm -f $(UTILS) $(TARGET) libgetarg.a libgif.a $(LIBGIFSO) libutil.a $(LIBUTILSO) *.o
++	rm -f $(UTILS) $(TARGET) libgetarg.a libgif.a $(LIBGIFSO) libgifutil.a $(LIBUTILSO) *.o
+ 	rm -f $(LIBGIFSOVER)
+ 	rm -f $(LIBGIFSOMAJOR)
  	rm -fr doc/*.1 *.html doc/staging
-@@ -96,12 +96,17 @@
+@@ -141,12 +141,17 @@ install-bin: $(INSTALLABLE)
  install-include:
  	$(INSTALL) -d "$(DESTDIR)$(INCDIR)"
  	$(INSTALL) -m 644 gif_lib.h "$(DESTDIR)$(INCDIR)"
@@ -44,22 +72,22 @@
  install-lib:
  	$(INSTALL) -d "$(DESTDIR)$(LIBDIR)"
  	$(INSTALL) -m 644 libgif.a "$(DESTDIR)$(LIBDIR)/libgif.a"
- 	$(INSTALL) -m 755 libgif.so "$(DESTDIR)$(LIBDIR)/libgif.so.$(LIBVER)"
- 	ln -sf libgif.so.$(LIBVER) "$(DESTDIR)$(LIBDIR)/libgif.so.$(LIBMAJOR)"
- 	ln -sf libgif.so.$(LIBMAJOR) "$(DESTDIR)$(LIBDIR)/libgif.so"
+ 	$(INSTALL) -m 755 $(LIBGIFSO) "$(DESTDIR)$(LIBDIR)/$(LIBGIFSOVER)"
+ 	ln -sf $(LIBGIFSOVER) "$(DESTDIR)$(LIBDIR)/$(LIBGIFSOMAJOR)"
+ 	ln -sf $(LIBGIFSOMAJOR) "$(DESTDIR)$(LIBDIR)/$(LIBGIFSO)"
 +	$(INSTALL) -m 644 libgifutil.a "$(DESTDIR)$(LIBDIR)/libgifutil.a"
 +	$(INSTALL) -m 755 libgifutil.so "$(DESTDIR)$(LIBDIR)/libgifutil.so.$(LIBVER)"
 +	ln -sf libgifutil.so.$(LIBVER) "$(DESTDIR)$(LIBDIR)/libgifutil.so.$(LIBMAJOR)"
 +	ln -sf libgifutil.so.$(LIBMAJOR) "$(DESTDIR)$(LIBDIR)/libgifutil.so"
  install-man:
  	$(INSTALL) -d "$(DESTDIR)$(MANDIR)/man1"
- 	$(INSTALL) -m 644 doc/*.1 "$(DESTDIR)$(MANDIR)/man1"
-@@ -113,6 +118,8 @@
+ 	$(INSTALL) -m 644 $(MANUAL_PAGES) "$(DESTDIR)$(MANDIR)/man1"
+@@ -158,6 +163,8 @@ uninstall-include:
  uninstall-lib:
  	cd "$(DESTDIR)$(LIBDIR)" && \
- 		rm -f libgif.a libgif.so libgif.so.$(LIBMAJOR) libgif.so.$(LIBVER)
+ 		rm -f libgif.a $(LIBGIFSO) $(LIBGIFSOMAJOR) $(LIBGIFSOVER)
 +	cd "$(DESTDIR)$(LIBDIR)" && \
 +		rm -f libgifutil.a libgifutil.so libgifutil.so.$(LIBMAJOR) libgifutil.so.$(LIBVER)
  uninstall-man:
  	cd "$(DESTDIR)$(MANDIR)/man1" && rm -f $(shell cd doc >/dev/null && echo *.1)
- 
+ 	cd "$(DESTDIR)$(MANDIR)/man7" && rm -f $(shell cd doc >/dev/null && echo *.7)
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/giflib.git/commitdiff/b1d6f2d503765f23ce1b69ddb8f770179fc9242c



More information about the pld-cvs-commit mailing list