From 0ea005b618db607bf113650cf83753337b82f943 Mon Sep 17 00:00:00 2001 From: Toshaan Bharvani Date: Thu, 6 Oct 2022 13:05:13 +0200 Subject: [PATCH] initial package creation Signed-off-by: Toshaan Bharvani --- SOURCES/giflib_coverity.patch | 43 ++++ SOURCES/giflib_html-docs-consistent-ids.patch | 12 + SOURCES/giflib_quantize.patch | 17 ++ SPECS/giflib.spec | 238 ++++++++++++++++++ 4 files changed, 310 insertions(+) create mode 100644 SOURCES/giflib_coverity.patch create mode 100644 SOURCES/giflib_html-docs-consistent-ids.patch create mode 100644 SOURCES/giflib_quantize.patch create mode 100644 SPECS/giflib.spec diff --git a/SOURCES/giflib_coverity.patch b/SOURCES/giflib_coverity.patch new file mode 100644 index 0000000..c51234f --- /dev/null +++ b/SOURCES/giflib_coverity.patch @@ -0,0 +1,43 @@ +diff -rupN --no-dereference giflib-5.2.1/gif2rgb.c giflib-5.2.1-new/gif2rgb.c +--- giflib-5.2.1/gif2rgb.c 2019-06-24 09:24:27.000000000 +0200 ++++ giflib-5.2.1-new/gif2rgb.c 2020-02-17 16:51:04.468397502 +0100 +@@ -170,6 +170,8 @@ static void SaveGif(GifByteType *OutputB + /* Open stdout for the output file: */ + if ((GifFile = EGifOpenFileHandle(1, &Error)) == NULL) { + PrintGifError(Error); ++ free(OutputBuffer); ++ GifFreeMapObject(OutputColorMap); + exit(EXIT_FAILURE); + } + +@@ -179,6 +181,8 @@ static void SaveGif(GifByteType *OutputB + EGifPutImageDesc(GifFile, + 0, 0, Width, Height, false, NULL) == GIF_ERROR) { + PrintGifError(Error); ++ free(OutputBuffer); ++ GifFreeMapObject(OutputColorMap); + exit(EXIT_FAILURE); + } + +@@ -187,8 +191,11 @@ static void SaveGif(GifByteType *OutputB + GifFile->Image.Width, GifFile->Image.Height); + + for (i = 0; i < Height; i++) { +- if (EGifPutLine(GifFile, Ptr, Width) == GIF_ERROR) ++ if (EGifPutLine(GifFile, Ptr, Width) == GIF_ERROR) { ++ free(OutputBuffer); ++ GifFreeMapObject(OutputColorMap); + exit(EXIT_FAILURE); ++ } + GifQprintf("\b\b\b\b%-4d", Height - i - 1); + + Ptr += Width; +@@ -196,6 +203,8 @@ static void SaveGif(GifByteType *OutputB + + if (EGifCloseFile(GifFile, &Error) == GIF_ERROR) { + PrintGifError(Error); ++ free(OutputBuffer); ++ GifFreeMapObject(OutputColorMap); + exit(EXIT_FAILURE); + } + } diff --git a/SOURCES/giflib_html-docs-consistent-ids.patch b/SOURCES/giflib_html-docs-consistent-ids.patch new file mode 100644 index 0000000..d4006ea --- /dev/null +++ b/SOURCES/giflib_html-docs-consistent-ids.patch @@ -0,0 +1,12 @@ +diff -rupN --no-dereference giflib-5.2.1/doc/Makefile giflib-5.2.1-new/doc/Makefile +--- giflib-5.2.1/doc/Makefile 2019-03-28 18:05:25.000000000 +0100 ++++ giflib-5.2.1-new/doc/Makefile 2020-02-17 16:51:04.489397582 +0100 +@@ -1,7 +1,7 @@ + .SUFFIXES: .xml .html .txt .adoc .1 + + .xml.html: +- xmlto xhtml-nochunks $< ++ xmlto --stringparam generate.consistent.ids=1 xhtml-nochunks $< + + .xml.1: + xmlto man $< diff --git a/SOURCES/giflib_quantize.patch b/SOURCES/giflib_quantize.patch new file mode 100644 index 0000000..aa34629 --- /dev/null +++ b/SOURCES/giflib_quantize.patch @@ -0,0 +1,17 @@ +diff -rupN --no-dereference giflib-5.2.1/Makefile giflib-5.2.1-new/Makefile +--- giflib-5.2.1/Makefile 2019-06-24 18:08:57.000000000 +0200 ++++ giflib-5.2.1-new/Makefile 2020-02-17 16:51:04.450397434 +0100 +@@ -29,11 +29,11 @@ LIBPOINT=0 + LIBVER=$(LIBMAJOR).$(LIBMINOR).$(LIBPOINT) + + SOURCES = dgif_lib.c egif_lib.c gifalloc.c gif_err.c gif_font.c \ +- gif_hash.c openbsd-reallocarray.c ++ gif_hash.c openbsd-reallocarray.c quantize.c + HEADERS = gif_hash.h gif_lib.h gif_lib_private.h + OBJECTS = $(SOURCES:.c=.o) + +-USOURCES = qprintf.c quantize.c getarg.c ++USOURCES = qprintf.c getarg.c + UHEADERS = getarg.h + UOBJECTS = $(USOURCES:.c=.o) + diff --git a/SPECS/giflib.spec b/SPECS/giflib.spec new file mode 100644 index 0000000..1aaf101 --- /dev/null +++ b/SPECS/giflib.spec @@ -0,0 +1,238 @@ +Name: giflib +Summary: A library and utilities for processing GIFs +Version: 5.2.1 +Release: 9%{?dist} + +License: MIT +URL: http://www.sourceforge.net/projects/%{name}/ +Source: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz +# Move quantize.c back into libgif.so (#1750122) +Patch0: giflib_quantize.patch +# Fix several defects found by Coverity scan +Patch1: giflib_coverity.patch +# Generate HTML docs with consistent section IDs to avoid multilib difference +Patch2: giflib_html-docs-consistent-ids.patch + +BuildRequires: gcc +BuildRequires: make +BuildRequires: xmlto + + +%description +giflib is a library for reading and writing gif images. + + +%package devel +Summary: Development files for programs using the giflib library +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +The giflib-devel package includes header files, libraries necessary for +developing programs which use the giflib library. + + +%package utils +Summary: Programs for manipulating GIF format image files +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description utils +The giflib-utils package contains various programs for manipulating GIF +format image files. + + +%prep +%autosetup -p1 + + +%build +%make_build CFLAGS="%{optflags} -fPIC" LDFLAGS="%{__global_ldflags}" + + +%install +%make_install PREFIX="%{_prefix}" LIBDIR="%{_libdir}" + +# Drop static library +rm -f %{buildroot}%{_libdir}/libgif.a + + +%ldconfig_scriptlets + + +%files +%doc ChangeLog NEWS README +%license COPYING +%{_libdir}/libgif.so.7* + +%files devel +%doc doc/* +%{_libdir}/libgif.so +%{_includedir}/gif_lib.h + +%files utils +%{_bindir}/gif* +%{_mandir}/man1/*.1* + + +%changelog +* Mon Aug 09 2021 Mohan Boddu - 5.2.1-9 +- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags + Related: rhbz#1991688 + +* Thu Apr 15 2021 Mohan Boddu - 5.2.1-8 +- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 + +* Tue Jan 26 2021 Fedora Release Engineering - 5.2.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Jul 27 2020 Fedora Release Engineering - 5.2.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Feb 17 2020 Sandro Mani - 5.2.1-5 +- Fix several defects found by Coverity scan +- Generate HTML docs with consistent section IDs to avoid multilib difference + +* Tue Jan 28 2020 Fedora Release Engineering - 5.2.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Tue Oct 01 2019 Sandro Mani - 5.2.1-3 +- Move quantize.c back into libgif.so (#1750122) + +* Thu Jul 25 2019 Fedora Release Engineering - 5.2.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Fri Jun 28 2019 Sandro Mani - 5.2.1-1 +- Update to 5.2.1 + +* Mon Apr 01 2019 Sandro Mani - 5.1.9-1 +- Update to 5.1.9 + +* Wed Mar 20 2019 Sandro Mani - 5.1.8-1 +- Update to 5.1.8 + +* Mon Mar 11 2019 Sandro Mani - 5.1.7-1 +- Update to 5.1.7 + +* Sat Feb 23 2019 Sandro Mani - 5.1.6-2 +- Fix broken soname + +* Mon Feb 18 2019 Sandro Mani - 5.1.6-1 +- Update to 5.1.6 + +* Thu Jan 31 2019 Fedora Release Engineering - 5.1.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 13 2018 Fedora Release Engineering - 5.1.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Sun Feb 11 2018 Sandro Mani - 5.1.4-1 +- Update to 5.1.4 + +* Thu Feb 8 2018 Florian Weimer - 4.1.6-22 +- Build libungif with linker flags from redhat-rpm-config + +* Wed Feb 07 2018 Fedora Release Engineering - 4.1.6-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sat Feb 03 2018 Igor Gnatenko - 4.1.6-20 +- Switch to %%ldconfig_scriptlets + +* Wed Aug 02 2017 Fedora Release Engineering - 4.1.6-19 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 4.1.6-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed Mar 29 2017 Stephen Gallagher - 4.1.6-17 +- Fix compilation errors when -Werror=format-security + +* Fri Feb 10 2017 Fedora Release Engineering - 4.1.6-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Feb 03 2016 Fedora Release Engineering - 4.1.6-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Fri Aug 14 2015 Adam Jackson 4.1.6-14 +- Link libungif with -z now too + +* Wed Jun 17 2015 Fedora Release Engineering - 4.1.6-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat Aug 16 2014 Fedora Release Engineering - 4.1.6-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 4.1.6-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Wed Dec 18 2013 Peter Robinson 4.1.6-10 +- Rebuild + +* Sat Aug 03 2013 Fedora Release Engineering - 4.1.6-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Wed Jul 17 2013 Petr Pisar - 4.1.6-8 +- Perl 5.18 rebuild + +* Wed Feb 13 2013 Fedora Release Engineering - 4.1.6-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Thu Jul 19 2012 Fedora Release Engineering - 4.1.6-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Fri Jan 13 2012 Fedora Release Engineering - 4.1.6-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Feb 08 2011 Fedora Release Engineering - 4.1.6-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Fri Jul 24 2009 Fedora Release Engineering - 4.1.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Sat May 09 2009 Robert Scheck 4.1.6-2 +- Solved multilib problems with documentation (#465208, #474538) +- Removed static library from giflib-devel package (#225796 #c1) + +* Mon Apr 13 2009 Tom "spot" Callaway - 4.1.6-1 +- update to 4.1.6 + +* Tue Feb 24 2009 Fedora Release Engineering - 4.1.3-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Tue Feb 19 2008 Fedora Release Engineering - 4.1.3-9 +- Autorebuild for GCC 4.3 + +* Tue Mar 13 2007 Karsten Hopp 4.1.3-8 +- add BR libXt-devel, otherwise X support will be disabled + +* Wed Jul 12 2006 Jesse Keating +- rebuild + +* Mon May 22 2006 Karsten Hopp 4.1.3-7 +- buildrequires libICE-devel, libSM-devel + +* Fri Feb 10 2006 Jesse Keating - 4.1.3-6.2.1 +- bump again for double-long bug on ppc(64) + +* Tue Feb 07 2006 Jesse Keating - 4.1.3-6.2 +- rebuilt for new gcc4.1 snapshot and glibc changes + +* Fri Dec 09 2005 Jesse Keating +- rebuilt + +* Tue Nov 1 2005 Matthias Clasen 4.1.3-6 +- Switch requires to modular X + +* Wed Sep 21 2005 Toshio Kuratomi 4.1.3-5 +- Merge an option on the empty library link line. +- Obsolete libungif progs package. +- Rename -progs to -utils as FC packages seem to have moved in this direction + for subpackages. + +* Tue Sep 20 2005 Toshio Kuratomi 4.1.3-4 +- Modify the way we provide libungif compatibility by building an empty + library that requires libgif. +- Remove chmod in install. It doesn't seem to be necessary. +- Add a patch to fix a problem with long being 64 bit on x86_64 but the code + assuming it was 32 bit. + +* Mon Sep 19 2005 Toshio Kuratomi 4.1.3-1 +- Port package from libungif to giflib.