diff options
author | kirk.erickson%sun.com <devnull@localhost> | 2002-08-21 19:46:39 +0000 |
---|---|---|
committer | kirk.erickson%sun.com <devnull@localhost> | 2002-08-21 19:46:39 +0000 |
commit | 2056c2cc01485e9a4cfcd884507c28905e4996dc (patch) | |
tree | ae3cba406a0ef15402fb34d3d737903de399d1fb | |
parent | 6449b7ae793a1425af129525d58998d5f8bd0f2b (diff) | |
download | nspr-hg-2056c2cc01485e9a4cfcd884507c28905e4996dc.tar.gz |
Added -z defs (fail on undefines in linking) to Solaris.
Incorporated collection of changes from Wan-Teh (id=96204).
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | config/SunOS5.mk | 4 | ||||
-rw-r--r-- | config/module.df | 2 | ||||
-rw-r--r-- | lib/ds/Makefile | 11 | ||||
-rw-r--r-- | lib/ds/plds.def | 13 | ||||
-rw-r--r-- | lib/libc/src/Makefile | 11 | ||||
-rw-r--r-- | lib/libc/src/plc.def | 5 | ||||
-rw-r--r-- | pkg/solaris/Makefile | 14 | ||||
-rw-r--r-- | pkg/solaris/Makefile.com | 2 | ||||
-rw-r--r-- | pkg/solaris/SUNWnspr/prototype_sparc | 2 | ||||
-rw-r--r-- | pr/src/Makefile | 23 | ||||
-rw-r--r-- | pr/src/md/unix/Makefile | 26 | ||||
-rw-r--r-- | pr/src/nspr.def | 33 |
13 files changed, 77 insertions, 71 deletions
@@ -124,7 +124,7 @@ endif solarispkg: @echo Making Solaris packages. - cd pkg/solaris && $(MAKE) publish + $(MAKE) -C pkg/solaris publish depend: @echo "NSPR20 has no dependencies. Skipped." diff --git a/config/SunOS5.mk b/config/SunOS5.mk index 429ee06f..fe2cda66 100644 --- a/config/SunOS5.mk +++ b/config/SunOS5.mk @@ -160,7 +160,7 @@ MKSHLIB = $(LD) $(DSO_LDOPTS) # ld options: # -G: produce a shared object # -z defs: no unresolved symbols allowed -DSO_LDOPTS = -G -h $(notdir $@) -z combreloc +DSO_LDOPTS = -G -h $(notdir $@) -z combreloc -z defs # -KPIC generates position independent code for use in shared libraries. # (Similarly for -fPIC in case of gcc.) @@ -180,5 +180,5 @@ NOSUCHFILE = /no-such-file # through the -f option to ld. See the nspr Makefile for how this is used. # ifeq ($(OS_TEST),sun4u) -ULTRASPARC_LIBRARY = nspr +ULTRASPARC_LIBRARY = nspr_flt endif diff --git a/config/module.df b/config/module.df index 28602869..f5081b02 100644 --- a/config/module.df +++ b/config/module.df @@ -39,4 +39,4 @@ MOD_NAME = nspr20 MOD_VERSION = 4 MOD_MINOR = 1 -MOD_MICRO = 2 +MOD_PATCH = 2 diff --git a/lib/ds/Makefile b/lib/ds/Makefile index 4338cb50..a06dbad4 100644 --- a/lib/ds/Makefile +++ b/lib/ds/Makefile @@ -39,11 +39,13 @@ include $(MOD_DEPTH)/config/config.mk # Disable optimization of the nspr on SunOS4.1.3 ifeq ($(OS_ARCH),SunOS) +OS_LIBS += -lc +ifeq ($(OS_RELEASE),4.1.3_U1) +OPTIMIZER = +else MAPFILE = $(OBJDIR)/pldsmap.sun ALL_TRASH += $(MAPFILE) MKSHLIB += -M $(MAPFILE) -ifeq ($(OS_RELEASE),4.1.3_U1) -OPTIMIZER = endif endif @@ -184,11 +186,6 @@ endif ifeq ($(OS_ARCH), OpenVMS) $(INSTALL) -m 444 $(SHARED_LIBRARY:.$(DLL_SUFFIX)=.vms) $(DIST)/lib endif -ifeq ($(OS_ARCH), SunOS) -ifeq ($(USE_64), 1) - $(INSTALL) -m 755 $(SHARED_LIBRARY) $(DIST)/lib/sparcv9 -endif -endif endif ifeq ($(MOZ_BITS),16) $(INSTALL) -m 444 $(HEADERS) $(MOZ_INCL) diff --git a/lib/ds/plds.def b/lib/ds/plds.def index 1aefe834..a94f67e6 100644 --- a/lib/ds/plds.def +++ b/lib/ds/plds.def @@ -1,5 +1,5 @@ # nm -n -C -p libplds4.so | awk '/[^ ]* T PL_/ {print $3}' -NSPR_4.1 { +NSPR_4.0 { global: PL_ArenaAllocate; PL_ArenaFinish; @@ -16,16 +16,17 @@ PL_HashTableDestroy; PL_HashTableDump; PL_HashTableEnumerateEntries; PL_HashTableLookup; -PL_HashTableLookupConst; PL_HashTableRawAdd; PL_HashTableRawLookup; -PL_HashTableRawLookupConst; PL_HashTableRawRemove; PL_HashTableRemove; PL_InitArenaPool; PL_NewHashTable; -}; - -NSPRprivate { local: *; }; + +NSPR_4.1 { + global: +PL_HashTableLookupConst; +PL_HashTableRawLookupConst; +} NSPR_4.0; diff --git a/lib/libc/src/Makefile b/lib/libc/src/Makefile index 4cc21ce4..e2df99a5 100644 --- a/lib/libc/src/Makefile +++ b/lib/libc/src/Makefile @@ -39,11 +39,13 @@ include $(MOD_DEPTH)/config/config.mk # Disable optimization of the nspr on SunOS4.1.3 ifeq ($(OS_ARCH),SunOS) +OS_LIBS += -lc +ifeq ($(OS_RELEASE),4.1.3_U1) +OPTIMIZER = +else MAPFILE = $(OBJDIR)/plcmap.sun ALL_TRASH += $(MAPFILE) MKSHLIB += -M $(MAPFILE) -ifeq ($(OS_RELEASE),4.1.3_U1) -OPTIMIZER = endif endif @@ -184,11 +186,6 @@ endif ifeq ($(OS_ARCH), OpenVMS) $(INSTALL) -m 444 $(SHARED_LIBRARY:.$(DLL_SUFFIX)=.vms) $(DIST)/lib endif -ifeq ($(OS_ARCH), SunOS) -ifeq ($(USE_64), 1) - $(INSTALL) -m 755 $(SHARED_LIBRARY) $(DIST)/lib/sparcv9 -endif -endif endif ifeq ($(MOZ_BITS),16) $(INSTALL) -m 444 $(TARGETS) $(MOZ_DIST)/lib diff --git a/lib/libc/src/plc.def b/lib/libc/src/plc.def index c05d81c9..42ba61f9 100644 --- a/lib/libc/src/plc.def +++ b/lib/libc/src/plc.def @@ -1,5 +1,5 @@ # nm -n -C -p libplc4.so | awk '/[^ ]* T PL_/ {print $3}' -NSPR_4.1 { +NSPR_4.0 { global: PL_Base64Decode; PL_Base64Encode; @@ -39,8 +39,5 @@ PL_strprbrk; PL_strrchr; PL_strrstr; PL_strstr; -}; - -NSPRprivate { local: *; }; diff --git a/pkg/solaris/Makefile b/pkg/solaris/Makefile index 3b15df04..3b95b92f 100644 --- a/pkg/solaris/Makefile +++ b/pkg/solaris/Makefile @@ -33,16 +33,30 @@ clean clobber:: $(RM) awk_pkginfo bld_awk_pkginfo $(RM) -r $(ROOT) +ifdef USE_64 +PROTO: \ + $(ROOT) \ + $(ROOT)/usr \ + $(ROOT)/usr/lib \ + $(ROOT)/usr/lib/mps \ + $(ROOT)/usr/lib/mps/sparcv9 +else PROTO: \ $(ROOT) \ $(ROOT)/usr \ $(ROOT)/usr/lib \ $(ROOT)/usr/lib/mps +endif $(ROOT) $(ROOT)/%: mkdir -p $@ +ifdef USE_64 +$(ROOT)/usr/lib/mps/sparcv9: + $(LN) -sf ../../../$(DIST)/lib $@ +else $(ROOT)/usr/lib/mps: $(LN) -sf ../../../$(DIST)/lib $@ +endif .PHONY: PROTO diff --git a/pkg/solaris/Makefile.com b/pkg/solaris/Makefile.com index bcc052a7..e1aa696b 100644 --- a/pkg/solaris/Makefile.com +++ b/pkg/solaris/Makefile.com @@ -20,7 +20,7 @@ FILES = $(DATAFILES) pkginfo PACKAGE = $(shell basename `pwd`) -PRODUCT_VERSION = $(MOD_VERSION).$(MOD_MINOR).$(MOD_MICRO) +PRODUCT_VERSION = $(MOD_VERSION).$(MOD_MINOR).$(MOD_PATCH) LN = /usr/bin/ln CLOBBERFILES = $(FILES) diff --git a/pkg/solaris/SUNWnspr/prototype_sparc b/pkg/solaris/SUNWnspr/prototype_sparc index d6ac8eed..7f303116 100644 --- a/pkg/solaris/SUNWnspr/prototype_sparc +++ b/pkg/solaris/SUNWnspr/prototype_sparc @@ -30,4 +30,4 @@ # d none usr/lib/mps/cpu 755 root bin d none usr/lib/mps/cpu/sparcv8plus 755 root bin -f none usr/lib/mps/cpu/sparcv8plus/libnspr4_flt.so 755 root bin +f none usr/lib/mps/cpu/sparcv8plus/libnspr_flt4.so 755 root bin diff --git a/pr/src/Makefile b/pr/src/Makefile index 202c7144..f848ed78 100644 --- a/pr/src/Makefile +++ b/pr/src/Makefile @@ -62,25 +62,27 @@ endif # Disable optimization of the nspr on SunOS4.1.3 ifeq ($(OS_ARCH),SunOS) -MAPFILE = $(OBJDIR)/nsprmap.sun -ALL_TRASH += $(MAPFILE) -MKSHLIB += -M $(MAPFILE) ifeq ($(OS_RELEASE),4.1.3_U1) OPTIMIZER = export OPTIMIZER -OS_LIBS = -lm +OS_LIBS = -lm -lc else # 4.1.3_U1 +MAPFILE = $(OBJDIR)/nsprmap.sun +ALL_TRASH += $(MAPFILE) +MKSHLIB += -M $(MAPFILE) ifdef USE_PTHREADS -OS_LIBS = -lpthread -lthread -lposix4 -lsocket -lnsl -ldl +OS_LIBS = -lpthread -lthread -lposix4 -lsocket -lnsl -ldl -lc else ifdef LOCAL_THREADS_ONLY -OS_LIBS = -lsocket -lnsl -ldl +OS_LIBS = -lsocket -lnsl -ldl -lc else -OS_LIBS = -lthread -lposix4 -lsocket -lnsl -ldl +OS_LIBS = -lthread -lposix4 -lsocket -lnsl -ldl -lc endif # LOCAL_THREADS_ONLY endif # USE_PTHREADS ifeq ($(OS_TEST),sun4u) -DSO_LDOPTS += -f \$$ORIGIN/cpu/\$$ISALIST/lib$(ULTRASPARC_LIBRARY)$(MOD_VERSION)_flt.so +ifndef USE_64 +DSO_LDOPTS += -f \$$ORIGIN/cpu/\$$ISALIST/lib$(ULTRASPARC_LIBRARY)$(LIBRARY_VERSION).so +endif endif # sun4u endif # 4.1.3_U1 endif # SunOS @@ -449,11 +451,6 @@ endif ifeq ($(OS_ARCH), OpenVMS) $(INSTALL) -m 444 $(SHARED_LIBRARY:.$(DLL_SUFFIX)=.vms) $(DIST)/lib endif -ifeq ($(OS_ARCH), SunOS) -ifeq ($(USE_64), 1) - $(INSTALL) -m 755 $(SHARED_LIBRARY) $(DIST)/lib/sparcv9 -endif -endif endif ifeq ($(MOZ_BITS),16) $(INSTALL) -m 444 $(TARGETS) $(MOZ_DIST)/lib diff --git a/pr/src/md/unix/Makefile b/pr/src/md/unix/Makefile index b02e42c0..229c8e09 100644 --- a/pr/src/md/unix/Makefile +++ b/pr/src/md/unix/Makefile @@ -309,11 +309,18 @@ DEFINES += -D_NSPR_BUILD_ include $(MOD_DEPTH)/config/rules.mk +export:: $(TARGETS) +#ifeq ($(OS_ARCH),AIX) +#ifeq (,$(filter-out 3.2 4.1,$(OS_RELEASE))) +#ifneq ($(USE_PTHREADS), 1) +# $(INSTALL) -m 444 $(OBJDIR)/aixwrap.$(OBJ_SUFFIX) $(DIST)/lib +#endif +#endif +#endif + ifeq ($(OS_ARCH),SunOS) ifneq ($(OS_RELEASE),4.1.3_U1) ifeq ($(OS_TEST),sun4u) -SHARED_LIBRARY = $(OBJDIR)/lib$(LIBRARY_NAME)$(LIBRARY_VERSION)_flt.$(DLL_SUFFIX) - $(SHARED_LIBRARY): $(ULTRASPARC_ASOBJS) $(LD) -G -z text -z endfiltee -o $@ $(ULTRASPARC_ASOBJS) $(INSTALL) -m 444 $(SHARED_LIBRARY) $(DIST)/lib/cpu/sparcv8plus @@ -327,17 +334,8 @@ endif clean:: rm -rf $(ULTRASPARC_ASOBJS) -endif # sun4u -endif # ! 4.1.3_U1 -endif # SunOS - -export:: $(TARGETS) -#ifeq ($(OS_ARCH),AIX) -#ifeq (,$(filter-out 3.2 4.1,$(OS_RELEASE))) -#ifneq ($(USE_PTHREADS), 1) -# $(INSTALL) -m 444 $(OBJDIR)/aixwrap.$(OBJ_SUFFIX) $(DIST)/lib -#endif -#endif -#endif +endif +endif +endif install:: export diff --git a/pr/src/nspr.def b/pr/src/nspr.def index 0b5bed87..3e1c2f68 100644 --- a/pr/src/nspr.def +++ b/pr/src/nspr.def @@ -1,6 +1,9 @@ # nm -n -C -p libnspr4.so | awk '/[^ ]* T PR_/ {print $3}' -NSPR_4.1 { +NSPR_4.0 { global: + LL_MaxInt; + LL_MinInt; + LL_Zero; PR_Abort; PR_Accept; PR_AcceptRead; @@ -41,11 +44,9 @@ NSPR_4.1 { PR_CloseSemaphore; PR_CloseSharedMemory; PR_Connect; - PR_ConnectContinue; PR_ConvertIPv4AddrToIPv6; PR_CreateAlarm; PR_CreateFileMap; - PR_CreateIOLayer; PR_CreateIOLayerStub; PR_CreateMWaitEnumerator; PR_CreatePipe; @@ -76,8 +77,6 @@ NSPR_4.1 { PR_DetachSharedMemory; PR_DetachThread; PR_DisableClockInterrupts; - PR_EmulateAcceptRead; - PR_EmulateSendFile; PR_EnableClockInterrupts; PR_EnterMonitor; PR_EnumerateHostEnt; @@ -99,8 +98,6 @@ NSPR_4.1 { PR_FD_SET; PR_FD_ZERO; PR_FileDesc2NativeHandle; - PR_FindFunctionSymbol; - PR_FindFunctionSymbolAndLibrary; PR_FindLibrary; PR_FindSymbol; PR_FindSymbolAndLibrary; @@ -133,10 +130,8 @@ NSPR_4.1 { PR_GetLayersIdentity; PR_GetLibraryName; PR_GetLibraryPath; - PR_GetMemMapAlignment; PR_GetMonitorEntryCount; PR_GetNameForIdentity; - PR_GetNumberOfProcessors; PR_GetOSError; PR_GetOpenFileInfo; PR_GetOpenFileInfo64; @@ -167,7 +162,6 @@ NSPR_4.1 { PR_ImplodeTime; PR_ImportFile; PR_ImportFileMapFromString; - PR_ImportPipe; PR_ImportTCPSocket; PR_ImportUDPSocket; PR_Init; @@ -270,7 +264,6 @@ NSPR_4.1 { PR_SendTo; PR_SetAlarm; PR_SetConcurrency; - PR_SetEnv; PR_SetError; PR_SetErrorText; PR_SetFDCacheSize; @@ -346,13 +339,25 @@ NSPR_4.1 { PR_vsnprintf; PR_vsprintf_append; PR_vsxprintf; + local: *; }; +NSPR_4.1 { + global: + PR_ConnectContinue; + PR_CreateIOLayer; + PR_EmulateAcceptRead; + PR_EmulateSendFile; + PR_FindFunctionSymbol; + PR_FindFunctionSymbolAndLibrary; + PR_GetMemMapAlignment; + PR_GetNumberOfProcessors; + PR_ImportPipe; + PR_SetEnv; +} NSPR_4.0; + NSPRprivate { global: - LL_MaxInt; - LL_MinInt; - LL_Zero; libVersionPoint; local: *; }; |