Hello community, here is the log from the commit of package libcares2 for openSUSE:Factory checked in at 2012-02-08 15:35:36 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libcares2 (Old) and /work/SRC/openSUSE:Factory/.libcares2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "libcares2", Maintainer is "rhafer@suse.com" Changes: -------- --- /work/SRC/openSUSE:Factory/libcares2/libcares2.changes 2011-11-16 17:19:11.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.libcares2.new/libcares2.changes 2012-02-08 15:35:37.000000000 +0100 @@ -1,0 +2,12 @@ +Fri Feb 3 20:27:55 UTC 2012 - crrodriguez@opensuse.org + +- Fix license +- provide symbol versioning support +- fix -debuginfo packages + +------------------------------------------------------------------- +Tue Nov 15 09:16:32 UTC 2011 - jengelh@medozas.de + +- Remove redundant/unwanted tags/section (cf. specfile guidelines) + +------------------------------------------------------------------- New: ---- 0001-add-symbol-versioning-support.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libcares2.spec ++++++ --- /var/tmp/diff_new_pack.XPdjp7/_old 2012-02-08 15:35:38.000000000 +0100 +++ /var/tmp/diff_new_pack.XPdjp7/_new 2012-02-08 15:35:38.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package libcares2 # -# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2012 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 @@ -22,17 +22,19 @@ Name: libcares2 Version: 1.7.5 Release: 1 -License: MIT License (or similar) +License: MIT Summary: Library for asynchronous name resolves Group: Development/Libraries/C and C++ Source: http://daniel.haxx.se/projects/c-ares/%{pkg_name}-%{version}.tar.bz2 Source2: baselibs.conf BuildRequires: pkg-config +BuildRequires: libtool BuildRoot: %{_tmppath}/%{name}-%{version}-build Patch1: 0001-ares_destroy.c-fix-segfault-in-ares_destroy_options.patch Patch2: 0002-ares_getnameinfo-fix-random-results-with-c-ares-1.7..patch Patch3: 0003-ares_init.c-fix-segfault-triggered-in-ares_init_opti.patch Patch4: cares-ocloexec.patch +Patch5: 0001-add-symbol-versioning-support.patch %description c-ares is a C library that performs DNS requests and name resolves @@ -40,7 +42,6 @@ by Greg Hudson at MIT. %package -n libcares-devel -License: MIT License (or similar) Summary: Library for asynchronous name resolves Group: Development/Libraries/C and C++ Requires: %{name} = %{version} @@ -57,17 +58,14 @@ %patch2 -p1 %patch3 -p1 %patch4 -p1 +%patch5 -p1 %build +autoreconf -fiv %configure --enable-symbol-hiding --enable-nonblocking --enable-shared --disable-static --with-pic +sed -i -e 's@-g0@-g@g' Makefile make %{?_smp_mflags} -#there is no test suite atm -#check -#export MALLOC_CHECK_=2 MALLOC_PERTURB_=$((${RANDOM:-256} % 256)) -#{__make} %{?jobs:-j%jobs} check -#unset MALLOC_CHECK_ MALLOC_PERTURB_ - %install make install DESTDIR=%{buildroot} rm -f %{buildroot}%{_libdir}/*.la @@ -76,9 +74,6 @@ %postun -p /sbin/ldconfig -%clean -rm -rf %{buildroot} - %files %defattr(-,root,root) %{_libdir}/libcares.so.2* ++++++ 0001-add-symbol-versioning-support.patch ++++++
From f2f268450d2aff0c7bcbb848b8a1c7b1e1d38291 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristian=20Rodr=C3=ADguez?=
Date: Fri, 3 Feb 2012 16:01:16 -0300 Subject: [PATCH] add symbol versioning support
---
Makefile.am | 11 ++++---
c-ares.map | 72 +++++++++++++++++++++++++++++++++++++++++++++++
configure.ac | 9 +----
m4/ld-version-script.m4 | 53 ++++++++++++++++++++++++++++++++++
4 files changed, 133 insertions(+), 12 deletions(-)
create mode 100644 c-ares.map
create mode 100644 m4/ld-version-script.m4
--- c-ares-1.7.5.orig/Makefile.am
+++ c-ares-1.7.5/Makefile.am
@@ -93,12 +93,13 @@ VER=-version-info 2:0:0
# set age to 0. (c:r:a=0)
#
-if NO_UNDEFINED
-# The -no-undefined flag is crucial for this to build fine on some platforms
-UNDEF = -no-undefined
-endif
+libcares_la_LDFLAGS = -no-undefined $(UNDEF) $(VER)
-libcares_la_LDFLAGS = $(UNDEF) $(VER)
+if HAVE_LD_VERSION_SCRIPT
+libcares_la_LDFLAGS += -Wl,--version-script=$(srcdir)/c-ares.map
+else
+libcares_la_LDFLAGS += -export-symbols-regex '^ares_.*'
+endif
# Add -Werror if defined
CFLAGS += @CARES_CFLAG_EXTRAS@
--- /dev/null
+++ c-ares-1.7.5/c-ares.map
@@ -0,0 +1,72 @@
+CARES_1.2.0 {
+global:
+ ares_cancel;
+ ares_destroy;
+ ares_expand_name;
+ ares_expand_string;
+ ares_fds;
+ ares_free_data;
+ ares_free_hostent;
+ ares_free_string;
+ ares_get_servers;
+ ares_gethostbyaddr;
+ ares_gethostbyname;
+ ares_init;
+ ares_init_options;
+ ares_mkquery;
+ ares_parse_a_reply;
+ ares_parse_ptr_reply;
+ ares_process;
+ ares_query;
+ ares_search;
+ ares_send;
+ ares_set_local_dev;
+ ares_set_local_ip4;
+ ares_set_local_ip6;
+ ares_set_servers;
+ ares_set_servers_csv;
+ ares_strerror;
+ ares_timeout;
+ ares_version;
+local: *;
+};
+
+CARES_1.3.1 {
+global:
+ ares_parse_aaaa_reply;
+ ares_getnameinfo;
+ ares_getsock;
+} CARES_1.2.0;
+
+CARES_1.4.0 {
+global:
+ ares_save_options;
+ ares_destroy_options;
+ ares_parse_ns_reply;
+ ares_process_fd;
+} CARES_1.3.1;
+
+CARES_1.6.0 {
+global:
+ ares_dup;
+ ares_gethostbyname_file;
+} CARES_1.4.0;
+
+CARES_1.7.0 {
+global:
+ ares_set_socket_callback;
+ ares_parse_txt_reply;
+ ares_parse_srv_reply;
+ ares_library_init;
+ ares_library_cleanup;
+} CARES_1.6.0;
+
+CARES_1.7.1 {
+global:
+ ares_reinit;
+} CARES_1.7.0;
+
+CARES_1.7.2 {
+global:
+ ares_parse_mx_reply;
+} CARES_1.7.1;
--- c-ares-1.7.5.orig/configure.ac
+++ c-ares-1.7.5/configure.ac
@@ -97,9 +97,6 @@ case $host_os in
;;
esac
-dnl support building of Windows DLLs
-AC_LIBTOOL_WIN32_DLL
-
dnl force libtool to build static libraries with PIC on AMD64-Linux & FreeBSD
AC_MSG_CHECKING([if arch-OS host is AMD64-Linux/FreeBSD (to build static libraries with PIC)])
case $host in
@@ -124,7 +121,8 @@ case $CC in
esac
dnl libtool setup
-AC_PROG_LIBTOOL
+LT_INIT([win32-dll pic-only disable-static])
+gl_LD_VERSION_SCRIPT
AC_MSG_CHECKING([if we need CARES_BUILDING_LIBRARY])
case $host in
@@ -171,9 +169,6 @@ CARES_CHECK_COMPILER_HALT_ON_ERROR
CARES_CHECK_COMPILER_ARRAY_SIZE_NEGATIVE
CARES_CHECK_COMPILER_SYMBOL_HIDING
-CARES_CHECK_NO_UNDEFINED
-AM_CONDITIONAL(NO_UNDEFINED, test x$need_no_undefined = xyes)
-
CARES_CHECK_CURLDEBUG
AM_CONDITIONAL(CURLDEBUG, test x$want_curldebug = xyes)
--- /dev/null
+++ c-ares-1.7.5/m4/ld-version-script.m4
@@ -0,0 +1,53 @@
+# ld-version-script.m4 serial 3
+dnl Copyright (C) 2008-2012 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl From Simon Josefsson
+
+# FIXME: The test below returns a false positive for mingw
+# cross-compiles, 'local:' statements does not reduce number of
+# exported symbols in a DLL. Use --disable-ld-version-script to work
+# around the problem.
+
+# gl_LD_VERSION_SCRIPT
+# --------------------
+# Check if LD supports linker scripts, and define automake conditional
+# HAVE_LD_VERSION_SCRIPT if so.
+AC_DEFUN([gl_LD_VERSION_SCRIPT],
+[
+ AC_ARG_ENABLE([ld-version-script],
+ AS_HELP_STRING([--enable-ld-version-script],
+ [enable linker version script (default is enabled when possible)]),
+ [have_ld_version_script=$enableval], [])
+ if test -z "$have_ld_version_script"; then
+ AC_MSG_CHECKING([if LD -Wl,--version-script works])
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map"
+ cat > conftest.map <