summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkirk.erickson%sun.com <devnull@localhost>2002-08-21 19:46:39 +0000
committerkirk.erickson%sun.com <devnull@localhost>2002-08-21 19:46:39 +0000
commit2056c2cc01485e9a4cfcd884507c28905e4996dc (patch)
treeae3cba406a0ef15402fb34d3d737903de399d1fb
parent6449b7ae793a1425af129525d58998d5f8bd0f2b (diff)
downloadnspr-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--Makefile2
-rw-r--r--config/SunOS5.mk4
-rw-r--r--config/module.df2
-rw-r--r--lib/ds/Makefile11
-rw-r--r--lib/ds/plds.def13
-rw-r--r--lib/libc/src/Makefile11
-rw-r--r--lib/libc/src/plc.def5
-rw-r--r--pkg/solaris/Makefile14
-rw-r--r--pkg/solaris/Makefile.com2
-rw-r--r--pkg/solaris/SUNWnspr/prototype_sparc2
-rw-r--r--pr/src/Makefile23
-rw-r--r--pr/src/md/unix/Makefile26
-rw-r--r--pr/src/nspr.def33
13 files changed, 77 insertions, 71 deletions
diff --git a/Makefile b/Makefile
index 159b2399..d46c2522 100644
--- a/Makefile
+++ b/Makefile
@@ -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: *;
};