Closed Bug 463678 Opened 16 years ago Closed 16 years ago

Need to add RPATH to 64-bit libraries on HP-UX

Categories

(NSS :: Libraries, defect, P2)

3.12.2
HP
HP-UX
defect

Tracking

(Not tracked)

RESOLVED FIXED
3.12.3

People

(Reporter: christophe.ravel.bugs, Assigned: christophe.ravel.bugs)

Details

Attachments

(1 file, 2 obsolete files)

We fixed libnss3.sl in bug 335454. We need to fix the other NSS public libraries: libssl3.sl and libsmime3.sl
Do we need to set the rpath for other libraries ?
Attachment #346974 - Flags: review?(julien.pierre.boogz)
Attachment #346974 - Flags: review?(julien.pierre.boogz) → review+
Comment on attachment 346974 [details] [diff] [review] Add RPATH to libssl3.sl and libsmime3.so for HP-UX 64 bit Note: the fix for libssl3.sl and libsmime3.sl is identical to what has been done for libnss3.sl.
We probably need this fix in every one of our public libraries. I think libsoftokn3 may need it, as well as libnssckbi . We should consider NSPR as well. For the private libraries, ie. freebl, nssdbm, etc., I'm less sure how the HP-UX 64-bit linker works. We may want to add new test programs without setting SHLIB_PATH and see what happens.
I searched all the config.mk files under nss/lib to check where we set the RPATH for Solaris as a comparison. For Solaris, we set the RPATH in the following files: nss/lib/ckfw/builtins/config.mk nss/lib/ckfw/capi/config.mk nss/lib/nss/config.mk nss/lib/smime/config.mk nss/lib/softoken/config.mk nss/lib/softoken/legacydb/config.mk nss/lib/sqlite/config.mk nss/lib/ssl/config.mk nss/lib/util/config.mk For HP-UX, we currently set the RPATH in (including the proposed one in patch #1): nss/lib/nss/config.mk nss/lib/smime/config.mk nss/lib/ssl/config.mk nss/lib/util/config.mk I'd suggest the we extend this list to match what we do for Solaris. Add: nss/lib/ckfw/builtins/config.mk nss/lib/ckfw/capi/config.mk nss/lib/softoken/config.mk nss/lib/softoken/legacydb/config.mk nss/lib/sqlite/config.mk Details of the search: $ find nss/lib -name config.mk | xargs grep ORIGIN nss/lib/ckfw/builtins/config.mk:# The -R '$ORIGIN' linker option instructs this library to search for its nss/lib/ckfw/builtins/config.mk:MKSHLIB += -R '$$ORIGIN' nss/lib/ckfw/capi/config.mk:# The -R '$ORIGIN' linker option instructs this library to search for its nss/lib/ckfw/capi/config.mk:MKSHLIB += -R '$$ORIGIN' nss/lib/nss/config.mk:# The -R '$ORIGIN' linker option instructs this library to search for its nss/lib/nss/config.mk:MKSHLIB += -R '$$ORIGIN:/usr/lib/mps/secv1/64:/usr/lib/mps/64' nss/lib/nss/config.mk:MKSHLIB += -R '$$ORIGIN:/usr/lib/mps/secv1:/usr/lib/mps' nss/lib/nss/config.mk:MKSHLIB += -R '$$ORIGIN' nss/lib/nss/config.mk:MKSHLIB += +b '$$ORIGIN' nss/lib/smime/config.mk:# The -R '$ORIGIN' linker option instructs this library to search for its nss/lib/smime/config.mk:MKSHLIB += -R '$$ORIGIN' nss/lib/smime/config.mk:MKSHLIB += +b '$$ORIGIN' nss/lib/softoken/config.mk:# The -R '$ORIGIN' linker option instructs this library to search for its nss/lib/softoken/config.mk:MKSHLIB += -R '$$ORIGIN' nss/lib/softoken/legacydb/config.mk:# The -R '$ORIGIN' linker option instructs this library to search for its nss/lib/softoken/legacydb/config.mk:MKSHLIB += -R '$$ORIGIN' nss/lib/sqlite/config.mk:# The -R '$ORIGIN' linker option instructs this library to search for its nss/lib/sqlite/config.mk:MKSHLIB += -R '$$ORIGIN' nss/lib/ssl/config.mk:# The -R '$ORIGIN' linker option instructs this library to search for its nss/lib/ssl/config.mk:MKSHLIB += -R '$$ORIGIN' nss/lib/ssl/config.mk:MKSHLIB += +b '$$ORIGIN' nss/lib/util/config.mk:# The -R '$ORIGIN' linker option instructs this library to search for its nss/lib/util/config.mk:MKSHLIB += -R '$$ORIGIN:/usr/lib/mps/secv1/64:/usr/lib/mps/64' nss/lib/util/config.mk:MKSHLIB += -R '$$ORIGIN:/usr/lib/mps/secv1:/usr/lib/mps' nss/lib/util/config.mk:MKSHLIB += -R '$$ORIGIN' nss/lib/util/config.mk:MKSHLIB += +b '$$ORIGIN'
Attachment #348228 - Flags: review?(julien.pierre.boogz) → review+
Comment on attachment 348228 [details] [diff] [review] Add RPATH to libssl3.sl, libsmime3.sl, libsqlite3.sl, libnssutil3.sl, libsoftokn3.sl, libnssdbm3.sl and libnssckbi.sl for HP-UX 64 bit This is all OK except for the lib/ckfw/capi/config.mk change . That module is only built on Windows, never on HP-UX . So the change should not go in for that file.
I'll check in this patch when the tree is open again. Take's Julien comment about lib/ckfw/capi/config.mk into account.
Attachment #348228 - Attachment is obsolete: true
Patch #3 checked in. Checking in ckfw/builtins/config.mk; /cvsroot/mozilla/security/nss/lib/ckfw/builtins/config.mk,v <-- config.mk new revision: 1.12; previous revision: 1.11 done Checking in smime/config.mk; /cvsroot/mozilla/security/nss/lib/smime/config.mk,v <-- config.mk new revision: 1.26; previous revision: 1.25 done Checking in softoken/config.mk; /cvsroot/mozilla/security/nss/lib/softoken/config.mk,v <-- config.mk new revision: 1.25; previous revision: 1.24 done Checking in softoken/legacydb/config.mk; /cvsroot/mozilla/security/nss/lib/softoken/legacydb/config.mk,v <-- config.mk new revision: 1.7; previous revision: 1.6 done Checking in sqlite/config.mk; /cvsroot/mozilla/security/nss/lib/sqlite/config.mk,v <-- config.mk new revision: 1.5; previous revision: 1.4 done Checking in ssl/config.mk; /cvsroot/mozilla/security/nss/lib/ssl/config.mk,v <-- config.mk new revision: 1.26; previous revision: 1.25 done
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Priority: -- → P2
Resolution: --- → FIXED
Attachment #348635 - Attachment description: Patch as it will be checked in → Patch as checked in
I need to do a update-roots-module-only release of NSS (by tomorrow, will discuss tomorrow in the NSS call). If I take only the portion of the patch that lives in the ckfw subdirectory for the upcoming Firefox 3.0.6 release, is that OK ? Thanks!
Do you deliver a 64 bit Firefox on HP-UX ? If the answer is no, then you don't need this patch. But don't apply this patch partially in a tag. We need to go back to a clean situation with our tags.
I don't deliver such a Firefox. But the effect of my proposal would be: The official source tarball for Firefox 3.0.6 would contain only the ckfw subset from this bug and patch. I hear you don't like that idea. Someone might try to use this official tarball to build for HP-UX 64. I'll use a different approach for my problem, thanks.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: