Hello community,
here is the log from the commit of package libdiscid for openSUSE:Factory
checked in at Wed Dec 30 00:24:17 CET 2009.
--------
--- libdiscid/libdiscid.changes 2008-08-14 06:40:57.000000000 +0200
+++ /mounts/work_src_done/STABLE/libdiscid/libdiscid.changes 2009-10-07 17:46:33.000000000 +0200
@@ -1,0 +2,5 @@
+Wed Oct 7 15:45:49 UTC 2009 - crrodriguez@opensuse.org
+
+- support GCC visilibity features
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
New:
----
libdiscid-0.2.1-visibility.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libdiscid.spec ++++++
--- /var/tmp/diff_new_pack.wrnSkw/_old 2009-12-30 00:23:32.000000000 +0100
+++ /var/tmp/diff_new_pack.wrnSkw/_new 2009-12-30 00:23:32.000000000 +0100
@@ -1,7 +1,7 @@
#
# spec file for package libdiscid (Version 0.2.1)
#
-# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -20,12 +20,13 @@
Name: libdiscid
Url: http://musicbrainz.org/doc/libdiscid
Version: 0.2.1
-Release: 1
-License: LGPL v2.1 or later
+Release: 2
+License: LGPLv2.1+
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Group: Development/Libraries/C and C++
Summary: Library for creating MusicBrainz DiscIDs from audio CDs
Source: http://users.musicbrainz.org/~matt/%{name}-%{version}.tar.bz2
+Patch: libdiscid-0.2.1-visibility.patch
%description
libdiscid is a C library for creating MusicBrainz DiscIDs from audio
@@ -48,7 +49,7 @@
Robert Kaye
%package -n libdiscid1
-License: LGPL v2.1 or later
+License: LGPLv2.1+
Group: Development/Libraries/C and C++
Summary: Library for creating MusicBrainz DiscIDs from audio CDs
# provide for debuginfo package (always requiring main package name)
@@ -75,7 +76,7 @@
Robert Kaye
%package devel
-License: LGPL v2.1 or later
+License: LGPLv2.1+
Group: Development/Libraries/C and C++
Summary: Library for creating MusicBrainz DiscIDs from audio CDs
Requires: libdiscid1 = %{version}
@@ -102,10 +103,11 @@
%prep
%setup -q
+%patch
%build
autoreconf -fiv
-%configure --disable-static --with-pic
+%configure --enable-hidden-symbols --disable-static --with-pic
%{__make} %{?jobs:-j%jobs}
%install
++++++ libdiscid-0.2.1-visibility.patch ++++++
Index: include/discid/discid.h
===================================================================
--- include/discid/discid.h.orig 2008-03-13 07:17:20.000000000 +0100
+++ include/discid/discid.h 2009-10-07 17:28:46.797921000 +0200
@@ -24,13 +24,7 @@
#ifndef MUSICBRAINZ_DISC_ID_H
#define MUSICBRAINZ_DISC_ID_H
-#ifdef WIN32
-# ifdef libdiscid_EXPORTS
-# define LIBDISCID_API __declspec(dllexport)
-# else
-# define LIBDISCID_API __declspec(dllimport)
-# endif
-#else
+#ifndef LIBDISCID_API
# define LIBDISCID_API
#endif
Index: configure.ac
===================================================================
--- configure.ac.orig 2008-03-13 07:17:22.000000000 +0100
+++ configure.ac 2009-10-07 17:30:29.284843000 +0200
@@ -53,6 +53,45 @@ if test "$GCC" = yes; then
CFLAGS="$CFLAGS -Wall -O2"
fi
+dnl ************************************************************
+dnl Enable hiding of internal symbols in library to reduce its size and
+dnl speed dynamic linking of applications. This currently is only supported
+dnl on gcc >= 4.0 and SunPro C.
+dnl
+AC_MSG_CHECKING([whether to enable hidden symbols in the library])
+AC_ARG_ENABLE(hidden-symbols,
+AC_HELP_STRING([--enable-hidden-symbols],[Hide internal symbols in library])
+AC_HELP_STRING([--disable-hidden-symbols],[Leave all symbols with default visibility in library]),
+[ case "$enableval" in
+ no)
+ AC_MSG_RESULT(no)
+ ;;
+ *)
+ AC_MSG_CHECKING([whether $CC supports it])
+ if test "$GCC" = yes ; then
+ if $CC --help --verbose 2>&1 | grep fvisibility= > /dev/null ; then
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(LIBDISCID_API, [__attribute__ ((visibility ("default")))], [to make a symbol visible])
+ CFLAGS="$CFLAGS -fvisibility=hidden"
+ else
+ AC_MSG_RESULT(no)
+ fi
+
+ else
+ dnl Test for SunPro cc
+ if $CC 2>&1 | grep flags >/dev/null && $CC -flags | grep xldscope= >/dev/null ; then
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(LIBDISCID_API, [__global], [to make a symbol visible])
+ CFLAGS="$CFLAGS -xldscope=hidden"
+ else
+ AC_MSG_RESULT(no)
+ fi
+ fi
+ ;;
+ esac ],
+ AC_MSG_RESULT(no)
+)
+
AC_OUTPUT([
Makefile src/Makefile include/Makefile include/discid/Makefile
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org