Community Packages

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#57748 - [libcurl-gnutls] Consider changing SONAME of the library to “libcurl-gnutls.so.4”

Attached to Project: Community Packages
Opened by EFanZh (EFanZh) - Thursday, 08 March 2018, 00:46 GMT
Last edited by Doug Newgard (Scimmia) - Thursday, 08 March 2018, 15:01 GMT
Task Type Feature Request
Category Packages
Status Assigned
Assigned To Maxime Gauduin (Alucryd)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 0%
Votes 0
Private No

Details

I want to link my program against libcurl-gnutls, but since the the current SONAME of libcurl-gnutls is the same as libcurl, the result program will depend on libcurl instead of libcurl-gnutls.

I think libcurl-gnutls should be built with a SONAME of “libcurl-gnutls.so.4” like it is in Debian. Here is a patch file that I think does the job:

diff --git a/libcurl-gnutls/trunk/PKGBUILD b/libcurl-gnutls/trunk/PKGBUILD
index 11027a651c..9b47976ad7 100644
--- a/libcurl-gnutls/trunk/PKGBUILD
+++ b/libcurl-gnutls/trunk/PKGBUILD
@@ -12,14 +12,20 @@ license=('MIT')
depends=('curl' 'glibc' 'gnutls' 'libpsl' 'nettle' 'zlib'
'libssh2.so')
options=('strip')
-source=("https://curl.haxx.se/download/curl-${pkgver}.tar.gz"{,.asc})
+source=("https://curl.haxx.se/download/curl-${pkgver}.tar.gz"{,.asc}
+ "https://salsa.debian.org/debian/curl/raw/08767c2765234efb72953979e734668b245d8453/debian/patches/90_gnutls.patch")
validpgpkeys=('27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2') # Daniel Stenberg
sha512sums=('7b12b79107558bb266672d6e128615fe5a8149c37f4ae540197e3298f5d312beb2d78fbb23e3ea84ea7afc41549898a1e5cd38509f0388b11707b48d5efb8ca3'
- 'SKIP')
+ 'SKIP'
+ '701825b820b31e6601d3a3c19f10d4ebf8a83e7dc6a58c978171c68a16fb2a9b906b8f3cb7baae22e7e9d9087b1e1fde48ffc1021029dffc1399398dd435c165')

build() {
cd curl-${pkgver}

+ patch -Np1 < ../90_gnutls.patch
+
+ ./buildconf
+
./configure \
--prefix='/usr' \
--disable-ldap \
@@ -43,9 +49,7 @@ package() {

make -C lib DESTDIR="${pkgdir}" install

- mv "${pkgdir}"/usr/lib/libcurl{,-gnutls}.so.4.5.0
- rm "${pkgdir}"/usr/lib/libcurl.{a,so}*
- for version in 3 4 4.0.0 4.1.0 4.2.0 4.3.0 4.4.0; do
+ for version in 4.0.0 4.1.0 4.2.0 4.3.0 4.4.0; do
ln -s libcurl-gnutls.so.4.5.0 "${pkgdir}"/usr/lib/libcurl-gnutls.so.${version}
done


This task depends upon

Comment by EFanZh (EFanZh) - Tuesday, 13 March 2018, 05:32 GMT
I have updated a new patch that reverts line change introduced by 90_gnutls.patch. I don’t think that line should be modified.

Loading...