head 1.10; access; symbols pkgsrc-2026Q1:1.10.0.2 pkgsrc-2026Q1-base:1.10 pkgsrc-2025Q4:1.9.0.12 pkgsrc-2025Q4-base:1.9 pkgsrc-2025Q3:1.9.0.10 pkgsrc-2025Q3-base:1.9 pkgsrc-2025Q2:1.9.0.8 pkgsrc-2025Q2-base:1.9 pkgsrc-2025Q1:1.9.0.6 pkgsrc-2025Q1-base:1.9 pkgsrc-2024Q4:1.9.0.4 pkgsrc-2024Q4-base:1.9 pkgsrc-2024Q3:1.9.0.2 pkgsrc-2024Q3-base:1.9 pkgsrc-2024Q2:1.7.0.6 pkgsrc-2024Q2-base:1.7 pkgsrc-2024Q1:1.7.0.4 pkgsrc-2024Q1-base:1.7 pkgsrc-2023Q4:1.7.0.2 pkgsrc-2023Q4-base:1.7 pkgsrc-2023Q3:1.5.0.28 pkgsrc-2023Q3-base:1.5 pkgsrc-2023Q2:1.5.0.26 pkgsrc-2023Q2-base:1.5 pkgsrc-2023Q1:1.5.0.24 pkgsrc-2023Q1-base:1.5 pkgsrc-2022Q4:1.5.0.22 pkgsrc-2022Q4-base:1.5 pkgsrc-2022Q3:1.5.0.20 pkgsrc-2022Q3-base:1.5 pkgsrc-2022Q2:1.5.0.18 pkgsrc-2022Q2-base:1.5 pkgsrc-2022Q1:1.5.0.16 pkgsrc-2022Q1-base:1.5 pkgsrc-2021Q4:1.5.0.14 pkgsrc-2021Q4-base:1.5 pkgsrc-2021Q3:1.5.0.12 pkgsrc-2021Q3-base:1.5 pkgsrc-2021Q2:1.5.0.10 pkgsrc-2021Q2-base:1.5 pkgsrc-2021Q1:1.5.0.8 pkgsrc-2021Q1-base:1.5 pkgsrc-2020Q4:1.5.0.6 pkgsrc-2020Q4-base:1.5 pkgsrc-2020Q3:1.5.0.4 pkgsrc-2020Q3-base:1.5 pkgsrc-2020Q2:1.5.0.2 pkgsrc-2020Q2-base:1.5 pkgsrc-2020Q1:1.4.0.2 pkgsrc-2020Q1-base:1.4; locks; strict; comment @# @; 1.10 date 2026.03.10.20.40.57; author wiz; state Exp; branches; next 1.9; commitid P9yH2T43POTpctxG; 1.9 date 2024.09.19.09.01.15; author nia; state Exp; branches; next 1.8; commitid Nz81VVoYWZKyBoqF; 1.8 date 2024.09.18.23.02.59; author nia; state Exp; branches; next 1.7; commitid tTvHV4bovc8eilqF; 1.7 date 2023.12.21.10.46.15; author nros; state Exp; branches; next 1.6; commitid vTK8auxr8xPEXjRE; 1.6 date 2023.11.09.20.31.00; author nia; state Exp; branches; next 1.5; commitid 5BuOje8s0eNWxYLE; 1.5 date 2020.06.05.12.15.16; author jperkin; state Exp; branches; next 1.4; commitid DBk9HMiFMwFoZ1bC; 1.4 date 2020.03.19.23.58.34; author joerg; state Exp; branches; next 1.3; commitid M9uQTymlvKQDr41C; 1.3 date 2020.01.22.20.46.49; author sevan; state Exp; branches; next 1.2; commitid s6NtTssKpwu9dJTB; 1.2 date 2020.01.11.13.33.31; author schmonz; state Exp; branches; next 1.1; commitid Ecr9vo0nRuyJahSB; 1.1 date 2020.01.07.20.25.14; author sevan; state Exp; branches; next ; commitid bJ5uJpXJfuYEzNRB; desc @@ 1.10 log @giflib*: update to 6.1.2 Version 6.1.2 ============= Code Fixes ---------- * Fix for low-severity CVE-2026-23868 affecting gifponge, giftool, and gifbuild, but not the core library - library clients need not be alarned. Version 6.1.1 ============= This release bumps the major version, but only one entry point - EGifSpew() - has changed signature and behavior (in order to be able to pass out a detailed error code). The internal error codes in the E_GIF_ERR series have changed value so none of them collides with GIF_ERROR. This code has been systematically audited and hardened wuth ChatGPT-5.2. The only library fixes reported by users or found by robot were for some memory leaks that could only triggered by severely malformed GIFs. Other bugs are edge-case failures in the CLI tools. The gif2rbg CLI tool has been moved to the "obsolete" bin, because its only deployment case in 2026 is as a piñata at fuzzer parties. Warning: the CLI tools in the obsolete category will soon be removed from the distribution entirely. The maintainer is tired of fielding junk bugs filed against them by would-be coup-counters who found yet another edge case, and the rest of the world doesn't need noisy CVEs that aren't actually DoS or security issues for giflib clients. Code Fixes ---------- * Fix for CVE-2021-40633. * Fix SF bug #165 EGifSpew leaks GifFileOut->SColorMap * Fix SF bug #171 ImageMagick required to build giflib on non-Darwin Platforms * Fix SF bug #172 Incorrect object files in shared libutil on darwin * Fix SF bug #173 installation of manual pages and html documentation * Fix SF bug #175 Memory leaks in gifecho.c's main() and in gifalloc.c's GifMakeMapObject * Fix SF bug #177 wrong pointer used in giftool getbool * Fix SF bug #179 Path Traversal vulnerability * Fix SF bug #180: -Wformat-truncation likely pointing out an actual bug * Fix SF bug #182 out‐of‐bounds writes in Icon2Gif * Fix SF bug #184 uninitialized buffer in DumpScreen2RGB * Fix SF bug #185 integer overflow in gifbg.c * Fix SF bug #186 integer overflow in Icon2Gif * Fix SF bug #187: CVE-2025-31344 * Fix SF bug #170 Tests failing on Ubuntu Noble, giftext buffer overflow * Fix SF bug #165 EGifSpew leaks GifFileOut->SColorMap * Fix SF bug #162 detected memory leaks in GifMakeSavedImage giflib/gifalloc.c * Fix SF bug #161 detected memory leaks in EGifOpenFileHandle giflib/egif_lib.c * Fix SF bug #142 ABI break public symbol GifQuantizeBuffer Other bugs that duplicate these have breen addressesed by these fixes * SF bug #156 EGifSpew leaks SavedImages (and more); won't fix, caller might want to write a GIF, modify the in-memory data, then write again. Tests ----- Test suite now emits TAP (Test Anything Protocol). @ text @$NetBSD: patch-Makefile,v 1.9 2024/09/19 09:01:15 nia Exp $ - Libtoolize. - Allow override of PREFIX. - Allow separate installation of utilities. - Move quantize.c back into libgif.so to fix various library users. --- Makefile.orig 2026-03-10 17:50:52.000000000 +0000 +++ Makefile @@@@ -36,11 +36,11 @@@@ HEADERS = gif_hash.h gif_lib.h gif_lib_private.h SOURCES = dgif_lib.c egif_lib.c gifalloc.c gif_err.c gif_font.c \ gif_hash.c openbsd-reallocarray.c quantize.c HEADERS = gif_hash.h gif_lib.h gif_lib_private.h -OBJECTS = $(SOURCES:.c=.o) +OBJECTS = $(SOURCES:.c=.lo) USOURCES = qprintf.c getarg.c UHEADERS = getarg.h -UOBJECTS = $(USOURCES:.c=.o) +UOBJECTS = $(USOURCES:.c=.lo) UNAME:=$(shell uname) @@@@ -75,7 +75,7 @@@@ UTILS = $(INSTALLABLE) \ gifwedge \ gif2rgb -LDLIBS=libgif.a -lm +LDLIBS=-lm MANUAL_PAGES_1 = \ doc/gifbuild.xml \ @@@@ -91,52 +91,37 @@@@ MANUAL_PAGES_7_MAN = $(MANUAL_PAGES_7:%.xml=%.7) MANUAL_PAGES_1_MAN = $(MANUAL_PAGES_1:%.xml=%.1) MANUAL_PAGES_7_MAN = $(MANUAL_PAGES_7:%.xml=%.7) -SOEXTENSION = so +SOEXTENSION = la LIBGIFSO = libgif.$(SOEXTENSION) LIBGIFSOMAJOR = libgif.$(SOEXTENSION).$(LIBMAJOR) LIBGIFSOVER = libgif.$(SOEXTENSION).$(LIBVER) LIBUTILSO = libutil.$(SOEXTENSION) LIBUTILSOMAJOR = libutil.$(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) -endif SHARED_LIBS = $(LIBGIFSO) $(LIBUTILSO) STATIC_LIBS = libgif.a libutil.a -all: shared-lib static-lib $(UTILS) -ifeq ($(UNAME), Darwin) -else - $(MAKE) -C doc -endif +all: $(LIBGIFSO) $(LIBUTILSO) -$(UTILS):: $(STATIC_LIBS) +.SUFFIXES: .lo shared-lib: $(SHARED_LIBS) static-lib: $(STATIC_LIBS) -$(LIBGIFSO): $(OBJECTS) $(HEADERS) -ifeq ($(UNAME), Darwin) - $(CC) $(CFLAGS) -dynamiclib -current_version $(LIBVER) $(OBJECTS) -o $(LIBGIFSO) -else - $(CC) $(CFLAGS) $(CPPFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,$(LIBGIFSOMAJOR) -o $(LIBGIFSO) $(OBJECTS) -endif +.c.lo: + $(LIBTOOL) --tag=CC --mode=compile $(CC) $(CFLAGS) -c $< -libgif.a: $(OBJECTS) $(HEADERS) - $(AR) rcs libgif.a $(OBJECTS) +.libs/libgif.a: $(LIBGIFSO) +.libs/libutil.a: $(LIBUTILSO) +$(UTILS): .libs/libutil.a .libs/libgif.a + +$(LIBGIFSO): $(OBJECTS) $(HEADERS) + $(LIBTOOL) --mode=link --tag=CC $(CC) $(CFLAGS) $(LDFLAGS) -version-info $(LIBMAJOR):0:0 -rpath $(PREFIX)/lib -o $(LIBGIFSO) $(OBJECTS) + $(LIBUTILSO): $(UOBJECTS) $(UHEADERS) -ifeq ($(UNAME), Darwin) - $(CC) $(CFLAGS) -dynamiclib -current_version $(LIBVER) $(UOBJECTS) -o $(LIBUTILSO) -else - $(CC) $(CFLAGS) $(CPPLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,$(LIBUTILSOMAJOR) -o $(LIBUTILSO) $(UOBJECTS) -endif + $(LIBTOOL) --mode=link --tag=CC $(CC) $(CFLAGS) $(LDFLAGS) -version-info $(LIBMAJOR):0:0 -rpath $(PREFIX)/lib -o $(LIBUTILSO) $(UOBJECTS) libutil.a: $(UOBJECTS) $(UHEADERS) $(AR) rcs libutil.a $(UOBJECTS) @@@@ -166,11 +151,7 @@@@ spellcheck: # Install/uninstall -ifeq ($(UNAME), Darwin) -install: all install-bin install-include install-lib -else install: all install-bin install-include install-lib install-man install-doc -endif install-bin: $(INSTALLABLE) $(INSTALL) -d "$(DESTDIR)$(BINDIR)" @@@@ -178,15 +159,9 @@@@ install-include: install-include: $(INSTALL) -d "$(DESTDIR)$(INCDIR)" $(INSTALL) -m 644 gif_lib.h "$(DESTDIR)$(INCDIR)" -install-static-lib: +install-lib: $(INSTALL) -d "$(DESTDIR)$(LIBDIR)" - $(INSTALL) -m 644 libgif.a "$(DESTDIR)$(LIBDIR)/libgif.a" -install-shared-lib: - $(INSTALL) -d "$(DESTDIR)$(LIBDIR)" - $(INSTALL) -m 755 $(LIBGIFSO) "$(DESTDIR)$(LIBDIR)/$(LIBGIFSOVER)" - ln -sf $(LIBGIFSOVER) "$(DESTDIR)$(LIBDIR)/$(LIBGIFSOMAJOR)" - ln -sf $(LIBGIFSOMAJOR) "$(DESTDIR)$(LIBDIR)/$(LIBGIFSO)" -install-lib: install-static-lib install-shared-lib + $(LIBTOOL) --mode=install --tag=CC $(BSD_INSTALL_LIB) $(LIBGIFSO) "$(DESTDIR)$(LIBDIR)" install-man: $(INSTALL) -d "$(DESTDIR)$(MANDIR)/man1" "$(DESTDIR)$(MANDIR)/man7" $(INSTALL) -m 644 $(MANUAL_PAGES_1_MAN) "$(DESTDIR)$(MANDIR)/man1" @ 1.9 log @giflib: Simplify patches. @ text @d1 1 a1 1 $NetBSD: patch-Makefile,v 1.8 2024/09/18 23:02:59 nia Exp $ d8 1 a8 1 --- Makefile.orig 2024-02-19 01:01:50.000000000 +0000 d10 1 a10 19 @@@@ -8,13 +8,13 @@@@ # OFLAGS = -O0 -g OFLAGS = -O2 -CFLAGS = -std=gnu99 -fPIC -Wall -Wno-format-truncation $(OFLAGS) +CFLAGS += -std=gnu99 -fPIC SHELL = /bin/sh TAR = tar INSTALL = install -PREFIX = /usr/local +PREFIX?= /usr/local BINDIR = $(PREFIX)/bin INCDIR = $(PREFIX)/include LIBDIR = $(PREFIX)/lib @@@@ -29,13 +29,13 @@@@ LIBPOINT=0 LIBVER=$(LIBMAJOR).$(LIBMINOR).$(LIBPOINT) d12 1 a12 2 - gif_hash.c openbsd-reallocarray.c + gif_hash.c openbsd-reallocarray.c quantize.c d17 1 a17 2 -USOURCES = qprintf.c quantize.c getarg.c +USOURCES = qprintf.c getarg.c d24 3 a26 3 @@@@ -61,7 +61,7 @@@@ UTILS = $(INSTALLABLE) \ gifsponge \ gifwedge d31 5 a35 5 MANUAL_PAGES = \ doc/gif2rgb.xml \ @@@@ -72,45 +72,30 @@@@ MANUAL_PAGES = \ doc/giftext.xml \ doc/giftool.xml d53 4 a56 1 -all: $(LIBGIFSO) libgif.a $(LIBUTILSO) libutil.a $(UTILS) d63 1 a63 1 -$(UTILS):: libgif.a libutil.a d66 4 d74 1 a74 1 - $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,$(LIBGIFSOMAJOR) -o $(LIBGIFSO) $(OBJECTS) d78 3 a80 1 + a83 2 -libgif.a: $(OBJECTS) $(HEADERS) - $(AR) rcs libgif.a $(OBJECTS) d88 1 a88 1 d91 1 a91 1 - $(CC) $(CFLAGS) -dynamiclib -current_version $(LIBVER) $(OBJECTS) -o $(LIBUTILSO) d93 1 a93 1 - $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,$(LIBUTILMAJOR) -o $(LIBUTILSO) $(UOBJECTS) d99 1 a99 1 @@@@ -129,11 +114,7 @@@@ reflow: d101 1 a101 1 # Installation/uninstallation d106 1 a106 1 install: all install-bin install-include install-lib install-man d111 3 a113 1 @@@@ -143,10 +124,7 @@@@ install-include: d115 2 a116 1 install-lib: d119 2 d124 1 d127 2 a128 2 $(INSTALL) -d "$(DESTDIR)$(MANDIR)/man1" $(INSTALL) -m 644 $(MANUAL_PAGES) "$(DESTDIR)$(MANDIR)/man1" @ 1.8 log @giflib[-util]: Update to 5.2.2. Libtoolize. This is a point release intended to clear up a couple of CVEs and apply point fixes that have been accumulating since 5.2.1 There are a few unresolved (but minor) memory leaks related to design issues in the API that still need to be resolved. Expect those fixes in the next release. Code Fixes ---------- * Fixes for CVE-2023-48161, CVE-2022-28506, * Address SF issue #138 Documentation for obsolete utilities still installed * Address SF issue #139: Typo in "LZW image data" page ("110_2 = 4_10") * Address SF issue #140: Typo in "LZW image data" page ("LWZ") * Address SF issue #141: Typo in "Bits and bytes" page ("filed") * Note as already fixed SF issue #143: cannot compile under mingw * Address SF issue #144: giflib-5.2.1 cannot be build on windows and other platforms using c89 * Address SF issue #145: Remove manual pages installation for binaries that are not installed too * Address SF issue #146: [PATCH] Limit installed man pages to binaries, move giflib to section 7 * Address SF issue #147 [PATCH] Fixes to doc/whatsinagif/ content * Address SF issue #148: heap Out of Bound Read in gif2rgb.c:298 DumpScreen2RGB * Declared no-info on SF issue #150: There is a denial of service vulnerability in GIFLIB 5.2.1 * Declared Won't-fix on SF issue 149: Out of source builds no longer possible * Address SF issue #151: A heap-buffer-overflow in gif2rgb.c:294:45 * Address SF issue #152: Fix some typos on the html documentation and man pages * Address SF issue #153: Fix segmentation faults due to non correct checking for args * Address SF issue #154: Recover the giffilter manual page * Address SF issue #155: Add gifsponge docs * Address SF issue #157: An OutofMemory-Exception or Memory Leak in gif2rgb * Address SF issue #158: There is a null pointer problem in gif2rgb * Address SF issue #159 A heap-buffer-overflow in GIFLIB5.2.1 DumpScreen2RGB() in gif2rgb.c:298:45 * Address SF issue #163: detected memory leaks in openbsd_reallocarray giflib/openbsd-reallocarray.c * Address SF issue #164: detected memory leaks in GifMakeMapObject giflib/gifalloc.c * Address SF issue #166: a read zero page leads segment fault in getarg.c and memory leaks in gif2rgb.c and gifmalloc.c * Address SF issue #167: Heap-Buffer Overflow during Image Saving in DumpScreen2RGB Function at Line 321 of gif2rgb.c @ text @d1 1 a1 1 $NetBSD: patch-Makefile,v 1.7 2023/12/21 10:46:15 nros Exp $ d4 1 a4 1 - Allow override of PREFIX and MANDIR. d10 1 a10 1 @@@@ -8,17 +8,17 @@@@ a25 5 -MANDIR = $(PREFIX)/share/man +MANDIR?= $(PREFIX)/share/man # No user-serviceable parts below this line d49 1 a49 1 +LDLIBS=-L$(PREFIX)/lib $(COMPILER_RPATH_FLAG)$(PREFIX)/lib -lgif -lm d97 1 a97 1 +$(UTILS): .libs/libgif.a .libs/libutil.a @ 1.7 log @giflib-util: Fix manpage installation when custom PKGMANDIR is set @ text @d1 1 a1 1 $NetBSD: patch-Makefile,v 1.6 2023/11/09 20:31:00 nia Exp $ d3 3 a5 4 - Inherit the PREFIX rather than hard-coding it. - Allow override of MANDIR to install manpages correctly - Apply to fix Darwin build d8 1 a8 1 --- Makefile.orig 2019-06-24 16:08:57.000000000 +0000 d31 1 a31 1 @@@@ -29,14 +29,16 @@@@ LIBPOINT=0 d38 2 a39 1 OBJECTS = $(SOURCES:.c=.o) d44 2 a45 1 UOBJECTS = $(USOURCES:.c=.o) d47 49 a95 1 +UNAME:=$(shell uname) d97 2 a98 4 # Some utilities are installed INSTALLABLE = \ gif2rgb \ @@@@ -61,27 +63,38 @@@@ UTILS = $(INSTALLABLE) \ d100 3 a102 14 LDLIBS=libgif.a -lm -all: libgif.so libgif.a libutil.so libutil.a $(UTILS) - $(MAKE) -C doc +ifeq ($(UNAME), Darwin) +SOEXTENSION = dylib +LIBGIFSOMAJOR = libgif.$(LIBMAJOR).$(SOEXTENSION) +LIBGIFSOVER = libgif.$(LIBVER).$(SOEXTENSION) +else +SOEXTENSION = so +LIBGIFSOMAJOR = libgif.$(SOEXTENSION).$(LIBMAJOR) +LIBGIFSOVER = libgif.$(SOEXTENSION).$(LIBVER) +endif +LIBGIFSO = libgif.$(SOEXTENSION) d104 2 a105 1 +all: $(LIBGIFSO) libgif.a libutil.a $(UTILS) d107 7 a113 1 $(UTILS):: libgif.a libutil.a a114 15 -libgif.so: $(OBJECTS) $(HEADERS) - $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,libgif.so.$(LIBMAJOR) -o libgif.so $(OBJECTS) +$(LIBGIFSO): $(OBJECTS) $(HEADERS) +ifeq ($(UNAME), Darwin) + $(CC) $(CFLAGS) -dynamiclib -current_version $(LIBVER) $(OBJECTS) -o $(LIBGIFSO) +else + $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,$(LIBGIFSOMAJOR) -o $(LIBGIFSO) $(OBJECTS) +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) - d117 1 d119 1 a119 8 clean: - rm -f $(UTILS) $(TARGET) libgetarg.a libgif.a libgif.so libutil.a libutil.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 *.o + rm -f $(LIBGIFSOVER) + rm -f $(LIBGIFSOMAJOR) rm -fr doc/*.1 *.html doc/staging d121 5 a125 4 check: all @@@@ -89,7 +102,8 @@@@ check: all # Installation/uninstallation a126 3 -install: all install-bin install-include install-lib install-man +install: all install-bin install-include install-lib + d129 2 a130 2 $(INSTALL) $^ "$(DESTDIR)$(BINDIR)" @@@@ -99,9 +113,10 @@@@ install-include: d133 5 a137 8 $(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)" + d140 1 a140 10 $(INSTALL) -m 644 doc/*.1 "$(DESTDIR)$(MANDIR)/man1" @@@@ -112,7 +127,7 @@@@ uninstall-include: rm -f "$(DESTDIR)$(INCDIR)/gif_lib.h" uninstall-lib: cd "$(DESTDIR)$(LIBDIR)" && \ - rm -f libgif.a libgif.so libgif.so.$(LIBMAJOR) libgif.so.$(LIBVER) + rm -f libgif.a $(LIBGIFSO) $(LIBGIFSOMAJOR) $(LIBGIFSOVER) uninstall-man: cd "$(DESTDIR)$(MANDIR)/man1" && rm -f $(shell cd doc >/dev/null && echo *.1) @ 1.6 log @giflib: Honour CFLAGS. @ text @d1 1 a1 1 $NetBSD: patch-Makefile,v 1.5 2020/06/05 12:15:16 jperkin Exp $ d4 1 a4 1 - Adjust location where manuals are installed. d28 1 a28 1 +MANDIR = $(PREFIX)/man @ 1.5 log @giflib: Stop installing a broken libgifutil. The release of giflib 5.1.9 removed GifQuantizeBuffer from its API as it was undocumented. Unfortunately a number of third party programs were relying on this function, and no longer built without it. The original attempt to fix this was to build and install the libgifutil.so library that now contains it, but this was done incorrectly (the SONAME was broken) and required modifying those third party programs anyway to pull in libgifutil (see e.g. multimedia/mplayer-share), which feels like completely missing the point. It is a lot simpler and less error-prone to simply revert the upstream decision and put GifQuantizeBuffer back into the main library. This is the approach that other upstreams (e.g. Fedora) have taken, and so we now do the same. Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD: patch-Makefile,v 1.4 2020/03/19 23:58:34 joerg Exp $ d11 8 a18 1 @@@@ -14,11 +14,11 @@@@ SHELL = /bin/sh @ 1.4 log @Fix soname of libgifutils.so. Bump revision. @ text @d1 1 a1 1 $NetBSD: patch-Makefile,v 1.3 2020/01/22 20:46:49 sevan Exp $ d7 1 d25 11 a35 1 @@@@ -37,6 +37,8 @@@@ USOURCES = qprintf.c quantize.c getarg.c d44 1 a44 1 @@@@ -61,27 +63,48 @@@@ UTILS = $(INSTALLABLE) \ a53 1 +LIBUTILSOMAJOR = libutil.$(LIBMAJOR).$(SOEXTENSION) a57 1 +LIBUTILSOMAJOR = libutil.$(SOEXTENSION).$(LIBMAJOR) a59 1 +LIBUTILSO = libutil.$(SOEXTENSION) d61 1 a61 1 +all: $(LIBGIFSO) libgif.a $(LIBUTILSO) libutil.a $(UTILS) d79 1 a79 7 +$(LIBUTILSO): $(UOBJECTS) $(UHEADERS) +ifeq ($(UNAME), Darwin) + $(CC) $(CFLAGS) -dynamiclib -current_version $(LIBVER) $(OBJECTS) -o $(LIBUTILSO) +else + $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,$(LIBUTILSOMAJOR) -o $(LIBUTILSO) $(UOBJECTS) +endif d87 1 a87 1 + rm -f $(UTILS) $(TARGET) libgetarg.a libgif.a $(LIBGIFSO) libutil.a $(LIBUTILSO) *.o d93 1 a93 1 @@@@ -89,7 +112,8 @@@@ check: all d103 1 a103 1 @@@@ -99,9 +123,12 @@@@ install-include: a112 2 + $(INSTALL) -m 644 libutil.a "$(DESTDIR)$(LIBDIR)/libgifutil.a" + $(INSTALL) -m 755 $(LIBUTILSO) "$(DESTDIR)$(LIBDIR)/libgifutil.$(SOEXTENSION)" d117 1 a117 1 @@@@ -112,7 +139,7 @@@@ uninstall-include: @ 1.3 log @Fix MANDIR after it got zapped in the previous change. @ text @d1 1 a1 1 $NetBSD$ d75 1 a75 1 + $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,$(LIBUTILMAJOR) -o $(LIBUTILSO) $(UOBJECTS) @ 1.2 log @Apply to fix Darwin build. @ text @d1 1 a1 1 $NetBSD: patch-Makefile,v 1.1 2020/01/07 20:25:14 sevan Exp $ d10 1 a10 1 @@@@ -14,7 +14,7 @@@@ SHELL = /bin/sh d19 5 @ 1.1 log @Update to giflib/giflib-util 5.2.1 @ text @d1 1 a1 1 $NetBSD$ d5 2 d10 1 a10 1 @@@@ -14,11 +14,10 @@@@ SHELL = /bin/sh d15 1 d19 3 a21 2 -MANDIR = $(PREFIX)/share/man +MANDIR = $(PREFIX)/man d23 97 a119 1 # No user-serviceable parts below this line @