From 3cb8ca77be65461a3940f4958a0b321ebf7c991bebe880d66de6028eeb893b14 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sun, 2 Oct 2011 11:39:21 +0000 Subject: [PATCH 1/3] Accepting request 86029 from home:coolo:removelibtool add libtool as buildrequires so we no longer rely on libtool in the project config of factory - it's only needed by <10% of all packages OBS-URL: https://build.opensuse.org/request/show/86029 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/giflib?expand=0&rev=11 --- giflib.changes | 5 +++++ giflib.spec | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/giflib.changes b/giflib.changes index 01f1d9f..31bf8e0 100644 --- a/giflib.changes +++ b/giflib.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Sat Oct 1 05:39:13 UTC 2011 - coolo@suse.com + +- add libtool as buildrequire to make the spec file more reliable + ------------------------------------------------------------------- Wed Sep 21 10:59:15 UTC 2011 - jengelh@medozas.de diff --git a/giflib.spec b/giflib.spec index 37661a2..376d3d2 100644 --- a/giflib.spec +++ b/giflib.spec @@ -20,9 +20,10 @@ Name: giflib %define lname libgif4 BuildRequires: xorg-x11-libICE-devel xorg-x11-libSM-devel xorg-x11-libX11-devel xorg-x11-libXau-devel xorg-x11-libXdmcp-devel xorg-x11-libXt-devel +BuildRequires: libtool License: MIT Group: System/Libraries -URL: http://sourceforge.net/projects/libungif +Url: http://sourceforge.net/projects/libungif Version: 4.1.6 Release: 23 Summary: A Library for Working with GIF Images From 196c0a51dac20781386375aab29f4f0d5f189d197566cbeb166e1d62c7d660a7 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sun, 2 Oct 2011 11:40:25 +0000 Subject: [PATCH 2/3] Update project URL OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/giflib?expand=0&rev=12 --- giflib.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/giflib.spec b/giflib.spec index 376d3d2..d80c3ff 100644 --- a/giflib.spec +++ b/giflib.spec @@ -23,7 +23,7 @@ BuildRequires: xorg-x11-libICE-devel xorg-x11-libSM-devel xorg-x11-libX11-devel BuildRequires: libtool License: MIT Group: System/Libraries -Url: http://sourceforge.net/projects/libungif +URL: http://sourceforge.net/projects/giflib Version: 4.1.6 Release: 23 Summary: A Library for Working with GIF Images From b7480ccc2bf84bf5208694d0d158ed430afca7a751d8352e42c85540fdb126fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristian=20Rodr=C3=ADguez?= Date: Mon, 10 Oct 2011 15:02:28 +0000 Subject: [PATCH 3/3] Accepting request 87211 from home:elvigia:branches:devel:libraries:c_c++ - annotate functions from gif_lib_private.h with visibility hidden so they are not exported. OBS-URL: https://build.opensuse.org/request/show/87211 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/giflib?expand=0&rev=13 --- giflib-visibility.patch | 89 +++++++++++++++++++++++++++++++++++++++++ giflib.changes | 6 +++ giflib.spec | 7 +++- 3 files changed, 100 insertions(+), 2 deletions(-) create mode 100644 giflib-visibility.patch diff --git a/giflib-visibility.patch b/giflib-visibility.patch new file mode 100644 index 0000000..6bdd494 --- /dev/null +++ b/giflib-visibility.patch @@ -0,0 +1,89 @@ +--- lib/gif_lib_private.h.orig ++++ lib/gif_lib_private.h +@@ -30,6 +30,8 @@ + #define IS_READABLE(Private) (Private->FileState & FILE_STATE_READ) + #define IS_WRITEABLE(Private) (Private->FileState & FILE_STATE_WRITE) + ++#pragma GCC visibility push(hidden) ++ + typedef struct GifFilePrivateType { + GifWord FileState, FileHandle, /* Where all this data goes to! */ + BitsPerPixel, /* Bits per pixel (Codes uses at least this + 1). */ +@@ -55,5 +57,5 @@ typedef struct GifFilePrivateType { + } GifFilePrivateType; + + extern int _GifError; +- ++#pragma GCC visibility pop + #endif /* _GIF_LIB_PRIVATE_H */ +--- lib/getarg.h.orig ++++ lib/getarg.h +@@ -16,6 +16,8 @@ + #define CMD_ERR_NumRead 4 /* Failed on reading number. */ + #define CMD_ERR_AllSatis 5 /* Fail to satisfy (must-'!') option. */ + ++#pragma GCC visibility push(hidden) ++ + #ifdef HAVE_STDARG_H + int GAGetArgs(int argc, char **argv, char *CtrlStr, ...); + #elif defined (HAVE_VARARGS_H) +@@ -25,4 +27,5 @@ int GAGetArgs(int va_alist, ...); + void GAPrintErrMsg(int Error); + void GAPrintHowTo(char *CtrlStr); + ++#pragma GCC visibility pop + #endif /* _GETARG_H */ +--- lib/gif_hash.h.orig ++++ lib/gif_hash.h +@@ -47,6 +47,8 @@ + #define HT_PUT_KEY(l) (l << 12) + #define HT_PUT_CODE(l) (l & 0x0FFF) + ++#pragma GCC visibility push(hidden) ++ + typedef struct GifHashTableType { + UINT32 HTable[HT_SIZE]; + } GifHashTableType; +@@ -56,4 +58,6 @@ void _ClearHashTable(GifHashTableType *H + void _InsertHashTable(GifHashTableType *HashTable, UINT32 Key, int Code); + int _ExistsHashTable(GifHashTableType *HashTable, UINT32 Key); + ++#pragma GCC visibility pop ++ + #endif /* _GIF_HASH_H_ */ +--- Makefile.am.orig ++++ Makefile.am +@@ -1,3 +1,4 @@ ++ACLOCAL_AMFLAGS = -I m4 + SUBDIRS = lib util doc pic + WINDOWS = $(top_srcdir)/windows/GifWin.cpp \ + $(top_srcdir)/windows/GifWin.h \ +--- configure.ac.orig ++++ configure.ac +@@ -3,11 +3,14 @@ AC_INIT(giflib, [4.1.6], [abadger1999@so + AC_CONFIG_SRCDIR([lib/dgif_lib.c]) + AM_INIT_AUTOMAKE([gnu check-news dist-bzip2 -Wall]) + AM_CONFIG_HEADER(config.h) ++AC_CONFIG_MACRO_DIR([m4]) + + dnl Checks for programs. +-AC_PROG_LIBTOOL +-AC_PROG_CC ++AC_PROG_CC_STDC ++AC_USE_SYSTEM_EXTENSIONS ++AC_SYS_LARGEFILE + AC_PROG_CPP ++LT_INIT([pic-only disable-static]) + AC_PROG_INSTALL + AC_PROG_LN_S + AC_PROG_MAKE_SET +--- lib/Makefile.am.orig ++++ lib/Makefile.am +@@ -21,6 +21,6 @@ libgif_la_SOURCES = dev2gif.c \ + quantize.c \ + gif_lib_private.h + +-libgif_la_LDFLAGS = -version-info 5:6:1 ++libgif_la_LDFLAGS = -no-undefined -version-info 5:6:1 + libgif_la_LIBADD = @DEVS@ + libgif_CFLAGS = $(X_CFLAGS) $(AM_CFLAGS) diff --git a/giflib.changes b/giflib.changes index 31bf8e0..3049e1c 100644 --- a/giflib.changes +++ b/giflib.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Oct 10 02:57:31 UTC 2011 - crrodriguez@opensuse.org + +- annotate functions from gif_lib_private.h with visibility + hidden so they are not exported. + ------------------------------------------------------------------- Sat Oct 1 05:39:13 UTC 2011 - coolo@suse.com diff --git a/giflib.spec b/giflib.spec index d80c3ff..6a012d1 100644 --- a/giflib.spec +++ b/giflib.spec @@ -23,13 +23,14 @@ BuildRequires: xorg-x11-libICE-devel xorg-x11-libSM-devel xorg-x11-libX11-devel BuildRequires: libtool License: MIT Group: System/Libraries -URL: http://sourceforge.net/projects/giflib +Url: http://sourceforge.net/projects/giflib Version: 4.1.6 Release: 23 Summary: A Library for Working with GIF Images Source: giflib-%{version}.tar.bz2 Source2: baselibs.conf BuildRoot: %{_tmppath}/%{name}-%{version}-build +Patch: giflib-visibility.patch %description This Library allows manipulating GIF Image files. Since the LZW patents @@ -85,6 +86,7 @@ have expired, giflib can again be used instead of libungif. %prep %setup -q +%patch %build # USE __TIMESTAMP__ instead of __DATE__ , __TIME__ @@ -97,7 +99,7 @@ for file in `find util -name "*.c"`; do rm -v $file.stamp done -autoreconf -fiv +mkdir m4;autoreconf -fiv %configure --disable-static --with-pic --x-libraries=%{_libdir} make %{?_smp_mflags} @@ -110,6 +112,7 @@ ln -sf libungif.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libungif.so #ln -sf libgif.a $RPM_BUILD_ROOT%{_libdir}/libungif.a rm -f %{buildroot}%{_libdir}/*.la find doc -name "Makefile*" -print -delete +nm -C -D %{buildroot}%{_libdir}/lib*.so %post -n %lname -p /sbin/ldconfig