On Sun, 19 Aug 2012 05:04:21 +0900, HAMANO Tsukasa wrote:

> I think, This is best solution.
> 
> Build-Depends: libcurl4-gnutls-dev
> (It can be a any real package.)

Or leave it as-is.
 
> liboauth-dev's Depends: liboauth0 (= ${binary:Version}), ${misc:Depends}, 
> libcurl4-gnutls-dev | libcurl4-dev, libnss3-dev
> 
> liboauth0's Depends: ${misc:Depends}, ${shlibs:Depends}, libcurl3 | 
> libcurl3-gnutls | libcurl3-nss
> 
> As we know, This isn't enough due to ${shlibs:Depends} is include
> libcurl3-gnutls then remove another libcurl 'or' conditions.
> 
> Please apply the patch:
> 
> --- liboauth-0.9.4.orig/src/Makefile.am
> +++ liboauth-0.9.4/src/Makefile.am
> @@ -4,5 +4,5 @@ include_HEADERS = oauth.h
> 
>  liboauth_la_SOURCES=oauth.c config.h hash.c xmalloc.c xmalloc.h oauth_http.c
>  liboauth_la_LDFLAGS=@LIBOAUTH_LDFLAGS@ -version-info @VERSION_INFO@
> -liboauth_la_LIBADD=@HASH_LIBS@ @CURL_LIBS@
> +liboauth_la_LIBADD=@HASH_LIBS@
>  liboauth_la_CFLAGS=@LIBOAUTH_CFLAGS@ @HASH_CFLAGS@ @CURL_CFLAGS@
> 
> Actually, we do not need to link shared library to shared library.
> We'll get liboauth0 package that Depends: libcurl3 | libcurl3-gnutls | 
> libcurl3-nss

This is not enough, we either need to re-run automake or apply the
same patch to src/Makefile.in.

When I extend the patch I indeed get the expected Depends for
liboauth0 [0]. But also:

dpkg-shlibdeps: warning: symbol curl_slist_free_all used by 
debian/liboauth0/usr/lib/x86_64-linux-gnu/liboauth.so.0.8.1 found in none of 
the libraries
dpkg-shlibdeps: warning: symbol curl_slist_append used by 
debian/liboauth0/usr/lib/x86_64-linux-gnu/liboauth.so.0.8.1 found in none of 
the libraries
dpkg-shlibdeps: warning: symbol curl_easy_cleanup used by 
debian/liboauth0/usr/lib/x86_64-linux-gnu/liboauth.so.0.8.1 found in none of 
the libraries
dpkg-shlibdeps: warning: symbol curl_easy_init used by 
debian/liboauth0/usr/lib/x86_64-linux-gnu/liboauth.so.0.8.1 found in none of 
the libraries
dpkg-shlibdeps: warning: symbol curl_easy_setopt used by 
debian/liboauth0/usr/lib/x86_64-linux-gnu/liboauth.so.0.8.1 found in none of 
the libraries
dpkg-shlibdeps: warning: symbol curl_easy_perform used by 
debian/liboauth0/usr/lib/x86_64-linux-gnu/liboauth.so.0.8.1 found in none of 
the libraries

So not linking to any curl lib doesn't look right ...
 
Cheers,
gregor, attaching the "current" patch and cc'ing the curl maintainer

[0]
 Depends: libc6 (>= 2.4), libnss3 (>= 2:3.13.4-2~) | libnss3-1d (>= 
3.12.0~1.9b1), libcurl3-gnutls | libcurl3-nss | libcurl3

-- 
 .''`.  Homepage: http://info.comodo.priv.at/ - OpenPGP key 0xBB3A68018649AA06
 : :' : Debian GNU/Linux user, admin, and developer  -  http://www.debian.org/
 `. `'  Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe
   `-   NP: Spider Murphy Gang: Ich Schau' Dich An (Peep Peep)
diff -Nru liboauth-0.9.4/debian/changelog liboauth-0.9.4/debian/changelog
--- liboauth-0.9.4/debian/changelog	2011-11-05 12:41:07.000000000 +0100
+++ liboauth-0.9.4/debian/changelog	2012-07-28 19:09:48.000000000 +0200
@@ -1,3 +1,11 @@
+liboauth (0.9.4-3.1) UNRELEASED; urgency=low
+
+  * Non-maintainer upload.
+  * Fix "please make loose libcurl dependency"
+    (Closes: #639565)
+
+ -- gregor herrmann <gre...@debian.org>  Sat, 28 Jul 2012 19:09:40 +0200
+
 liboauth (0.9.4-3) unstable; urgency=low
 
   * Sync from Ubuntu:
diff -Nru liboauth-0.9.4/debian/control liboauth-0.9.4/debian/control
--- liboauth-0.9.4/debian/control	2011-11-05 12:41:07.000000000 +0100
+++ liboauth-0.9.4/debian/control	2012-09-16 15:58:14.000000000 +0200
@@ -2,7 +2,7 @@
 Priority: optional
 Maintainer: Bilal Akhtar <bilalakh...@ubuntu.com>
 Build-Depends: debhelper (>= 8.1.3),
-               libcurl4-nss-dev,
+               libcurl4-gnutls-dev | libcurl4-dev,
                libnss3-dev,
                libtool,
                locales-all | language-pack-en,
@@ -16,7 +16,7 @@
 Package: liboauth-dev
 Section: libdevel
 Architecture: any
-Depends: liboauth0 (= ${binary:Version}), libcurl4-nss-dev, ${misc:Depends}
+Depends: liboauth0 (= ${binary:Version}), libcurl4-gnutls-dev | libcurl4-dev, libnss3-dev, ${misc:Depends}
 Description: C library for implementing OAuth 1.0 (development files)
  liboauth is a collection of C functions implementing the
  OAuth Core 1.0 standard API. liboauth provides basic functions to escape
@@ -28,7 +28,7 @@
 Package: liboauth0
 Architecture: any
 Pre-Depends: ${misc:Pre-Depends}
-Depends: ${misc:Depends}, ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}, libcurl3-gnutls | libcurl3-nss | libcurl3
 Multi-Arch: same
 Description: C library for implementing OAuth 1.0
  liboauth is a collection of C functions implementing the
diff -Nru liboauth-0.9.4/debian/patches/03_curl.patch liboauth-0.9.4/debian/patches/03_curl.patch
--- liboauth-0.9.4/debian/patches/03_curl.patch	1970-01-01 01:00:00.000000000 +0100
+++ liboauth-0.9.4/debian/patches/03_curl.patch	2012-09-16 16:08:45.000000000 +0200
@@ -0,0 +1,20 @@
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -4,5 +4,5 @@
+ 
+ liboauth_la_SOURCES=oauth.c config.h hash.c xmalloc.c xmalloc.h oauth_http.c
+ liboauth_la_LDFLAGS=@LIBOAUTH_LDFLAGS@ -version-info @VERSION_INFO@
+-liboauth_la_LIBADD=@HASH_LIBS@ @CURL_LIBS@
++liboauth_la_LIBADD=@HASH_LIBS@
+ liboauth_la_CFLAGS=@LIBOAUTH_CFLAGS@ @HASH_CFLAGS@ @CURL_CFLAGS@
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -243,7 +243,7 @@
+ include_HEADERS = oauth.h 
+ liboauth_la_SOURCES = oauth.c config.h hash.c xmalloc.c xmalloc.h oauth_http.c
+ liboauth_la_LDFLAGS = @LIBOAUTH_LDFLAGS@ -version-info @VERSION_INFO@
+-liboauth_la_LIBADD = @HASH_LIBS@ @CURL_LIBS@
++liboauth_la_LIBADD = @HASH_LIBS@
+ liboauth_la_CFLAGS = @LIBOAUTH_CFLAGS@ @HASH_CFLAGS@ @CURL_CFLAGS@
+ all: config.h
+ 	$(MAKE) $(AM_MAKEFLAGS) all-am
diff -Nru liboauth-0.9.4/debian/patches/series liboauth-0.9.4/debian/patches/series
--- liboauth-0.9.4/debian/patches/series	2011-11-05 12:41:07.000000000 +0100
+++ liboauth-0.9.4/debian/patches/series	2012-09-16 16:04:05.000000000 +0200
@@ -1,2 +1,3 @@
 01_ltmain_as-needed.patch
 02_xmalloc_dont_exit.patch
+03_curl.patch

Attachment: signature.asc
Description: Digital signature

Reply via email to