Bug 213144 - devel/nspr, security/nss: drop version from SONAME
Summary: devel/nspr, security/nss: drop version from SONAME
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Jan Beich
URL:
Keywords: patch
Depends on:
Blocks:
 
Reported: 2016-10-01 20:11 UTC by Jan Beich
Modified: 2016-10-21 10:45 UTC (History)
2 users (show)

See Also:
jbeich: exp-run?


Attachments
v0 (25.50 KB, patch)
2016-10-01 20:11 UTC, Jan Beich
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Beich freebsd_committer freebsd_triage 2016-10-01 20:11:55 UTC
Created attachment 175341 [details]
v0

NSPR/NSS build system are a relic of pre-libtool era. There's no
need to invent a version that no other downstream maintains,
especially if it causes subtle bugs like the following:

$ cc -lplds4 -L/usr/local/lib
/usr/lib/crt1.o: In function `_start1':
crt1_c.c:(.text+0xa6): undefined reference to `main'
/usr/local/lib/libplds4.so: undefined reference to `pthread_set_name_np'
/usr/local/lib/libplds4.so: undefined reference to `pthread_create'
/usr/local/lib/libplds4.so: undefined reference to `pthread_condattr_init'
/usr/local/lib/libplds4.so: undefined reference to `pthread_setschedparam'
/usr/local/lib/libplds4.so: undefined reference to `pthread_getschedparam'
Comment 1 Jan Beich freebsd_committer freebsd_triage 2016-10-01 20:15:21 UTC
Note, if using patch(1) apply with at least -p1 and -E flags.
Comment 2 Jan Beich freebsd_committer freebsd_triage 2016-10-01 20:18:30 UTC
Also append to make.conf

  OPTIONS_SET += NSS SMARTCARD SPIDERMONKEY
Comment 3 Jan Beich freebsd_committer freebsd_triage 2016-10-01 20:44:01 UTC
Hmm, NSS option in ports may already be broken. Without the patch devel/apr1 fails at configure stage, ftp/curl requires manually unselecting other options (OPENSSL, CA_BUNDLE, TLS_SRP). This blocks too many ports, so let's try the following instead

  OPTIONS_SET += SMARTCARD SPIDERMONKEY
Comment 4 Antoine Brodin freebsd_committer freebsd_triage 2016-10-09 05:32:56 UTC
Exp-run looks fine.
Comment 5 commit-hook freebsd_committer freebsd_triage 2016-10-09 12:10:42 UTC
A commit references this bug:

Author: jbeich
Date: Sun Oct  9 12:10:08 UTC 2016
New revision: 423591
URL: https://svnweb.freebsd.org/changeset/ports/423591

Log:
  devel/nspr, security/nss: drop version from SONAME

  No other downstream appends synthetic library version, and doing so
  causes underlinking due to fragile build system (see below). Not to
  mention being unable to swap out bundled libs from upstream builds.

    $ cc -lplds4 -L/usr/local/lib
    /usr/lib/crt1.o: In function `_start1':
    crt1_c.c:(.text+0xa6): undefined reference to `main'
    /usr/local/lib/libplds4.so: undefined reference to `pthread_set_name_np'
    /usr/local/lib/libplds4.so: undefined reference to `pthread_create'
    /usr/local/lib/libplds4.so: undefined reference to `pthread_condattr_init'
    /usr/local/lib/libplds4.so: undefined reference to `pthread_setschedparam'
    /usr/local/lib/libplds4.so: undefined reference to `pthread_getschedparam'

  PR:		213144
  Exp-run by:	antoine

Changes:
  head/archivers/rpm4/Makefile
  head/databases/evolution-data-server/Makefile
  head/deskutils/gnome-contacts/Makefile
  head/devel/apr1/Makefile
  head/devel/apr2/Makefile
  head/devel/nspr/Makefile
  head/devel/nspr/files/patch-configure
  head/devel/nspr/pkg-plist
  head/editors/libreoffice/Makefile.common
  head/editors/libreoffice4/Makefile
  head/editors/openoffice-4/Makefile
  head/editors/openoffice-devel/Makefile
  head/ftp/curl/Makefile
  head/games/0ad/Makefile
  head/games/oolite/Makefile
  head/graphics/gnash/Makefile
  head/irc/bitlbee/Makefile
  head/lang/spidermonkey17/Makefile
  head/lang/spidermonkey170/Makefile
  head/lang/spidermonkey185/Makefile
  head/lang/spidermonkey24/Makefile
  head/mail/evolution/Makefile
  head/mail/thunderbird/Makefile
  head/misc/xiphos/Makefile
  head/multimedia/gxine/Makefile
  head/net/corosync/Makefile
  head/net/ldapsdk/Makefile
  head/net-im/libpurple/Makefile
  head/net-im/pidgin-sipe/Makefile
  head/net-im/ring-gnome/Makefile
  head/security/libfprint/Makefile
  head/security/nss/Makefile
  head/security/nss/files/patch-coreconf_FreeBSD.mk
  head/security/nss/files/patch-coreconf_rules.mk
  head/security/nss/pkg-plist
  head/security/nss_compat_ossl/Makefile
  head/security/pidgin-encryption/Makefile
  head/security/sssd/Makefile
  head/security/suricata/Makefile
  head/security/xmlsec1/Makefile
  head/sysutils/cinnamon-settings-daemon/Makefile
  head/sysutils/gnome-settings-daemon/Makefile
  head/sysutils/mate-settings-daemon/Makefile
  head/sysutils/pesign/Makefile
  head/www/chromium/Makefile
  head/www/elinks/Makefile
  head/www/epiphany/Makefile
  head/www/firefox/Makefile
  head/www/firefox-esr/Makefile
  head/www/gecko-mediaplayer/Makefile
  head/www/libxul/Makefile
  head/www/seamonkey/Makefile
  head/x11/gdm/Makefile