Package: nspr.0f-shlibs Version: 4.35 Revision: 1 Source: https://archive.mozilla.org/pub/nspr/releases/v%v/src/nspr-%v.tar.gz Source-Checksum: SHA256(7ea3297ea5969b5d25a5dd8d47f2443cda88e9ee746301f6e1e1426f8a6abc8f) SourceDirectory: nspr-%v/nspr PatchFile: %n.patch PatchFile-MD5: 3cc011b83ef8dde967335426636c826c PatchScript: << patch -p2 < %{PatchFile} # this looks like a simple bug: perl -pi -e 's/LIBPL[^CD]/LIBPLC/g' pr/src/cplus/tests/Makefile.in << NoSetCPPFLAGS: true NoSetLDFLAGS: true ConfigureParams: --disable-debug --libdir=%p/lib/nspr.0f --enable-64bit InstallScript: << #!/bin/sh -ev make -j1 install DESTDIR=%d # counteract side-effect of burying the libs mv %i/lib/nspr.0f/pkgconfig %i/lib rm %i/lib/nspr.0f/lib*.a # The lib does not build with any SOVERSION and hacking to # include it interferes with inter-lib linking among the # components of this suite, so instead we bury the libs in a # SOVERSIONed subdir. The nspr.pc publishes -L to the subdir, # and we want to avoid polluting the main libdir with # accidentally-detected libs. << DocFiles: LICENSE Shlibs: << %p/lib/nspr.0f/libnspr4.dylib 1.0.0 %n (>= 4.33-1) %p/lib/nspr.0f/libplc4.dylib 1.0.0 %n (>= 4.33-1) %p/lib/nspr.0f/libplds4.dylib 1.0.0 %n (>= 4.33-1) << SplitOff: << Package: nspr.0f Depends: %N (= %v-%r) Conflicts: << nspr, nspr.0d, nspr.0e, nspr.0f << Replaces: << nspr, nspr.0d, nspr.0e, nspr.0f << BuildDependsOnly: true Files: << bin include lib/pkgconfig share/aclocal << DocFiles: LICENSE << Description: Netscape Portable Runtime DescDetail: << Netscape Portable Runtime (NSPR) provides a platform-neutral API for system level and libc like functions. The API is used in the Mozilla client, many of Netscape/AOL/iPlanet's and other software offerings. << DescUsage: << Note: the dll handlers use ".dylib" not ".so" for the extension. << DescPackaging: << dmacks overhauled 4.6.7-1 -> 4.8-1 all the following: Upstream does not update compatibility_version when added new public symbols! Maybe that's why debian hacked soname in recent versions? We'll do that too: rename nspr -> nspr.0d And then 4.8.4 -> 4.10.7 even broke ABI, so use nspr.0e 4.29 adds a few symbols but does not appear to break ABI, so we keep .0e .0f seems to be the same as .0e, but we change our lib file burial scheme to avoid breaking the hand-coded makefiles, which means a different install_name. Bury library files so don't accidentally find them (many pkgs seem to need BuildConflicts:nspr) macos-target for consistency among all fink-supported platforms (cleaner to use %c than patch configure fallbacks). No external deps, so scrap -I and -L for %p altogether instead of tracing and fixing makefile-variable spaghetti that uses local -L for linking against build-dir dynamic libraries. # Don't leak internal-emulation poll() symbol into public of # libnspr ABI. It's not part of public API nor used by other # libs in nspr suite, and linker gets annoyed and confused when # other things link against libnspr because libSystem already # has that symbol. # ^-- other OSX distros do not do this, so let's try not doing it # either as of 4.29-1 << License: OSI-Approved Maintainer: Daniel Macks Homepage: http://www.mozilla.org/projects/nspr/