summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--buildpaths.mk4
-rw-r--r--components.mk55
-rw-r--r--internal_buildpaths.mk3
-rw-r--r--internal_comp_deps.mk26
-rw-r--r--ldap/cm/Makefile9
-rw-r--r--nsconfig.mk4
6 files changed, 99 insertions, 2 deletions
diff --git a/buildpaths.mk b/buildpaths.mk
index 4b77c69f..316730bb 100644
--- a/buildpaths.mk
+++ b/buildpaths.mk
@@ -73,14 +73,18 @@ ifdef MOZILLA_SOURCE_ROOT
# ours - we need to map ours to theirs
ifneq (,$(findstring RHEL3,$(NSOBJDIR_NAME)))
MOZ_OBJDIR_NAME = $(subst _gcc3_,_glibc_PTH$(NS64TAG)_,$(subst RHEL3,Linux2.4,$(NSOBJDIR_NAME)))
+ MOZ_OBJDIR_NAME_32 = $(subst _gcc3_,_glibc_PTH_,$(subst RHEL3,Linux2.4,$(NSOBJDIR_NAME)))
else
ifneq (,$(findstring RHEL4,$(NSOBJDIR_NAME)))
MOZ_OBJDIR_NAME = $(subst _gcc3_,_glibc_PTH$(NS64TAG)_,$(subst RHEL4,Linux2.6,$(NSOBJDIR_NAME)))
+ MOZ_OBJDIR_NAME_32 = $(subst _gcc3_,_glibc_PTH_,$(subst RHEL4,Linux2.6,$(NSOBJDIR_NAME)))
else
ifneq (,$(findstring Linux,$(NSOBJDIR_NAME)))
MOZ_OBJDIR_NAME = $(subst _glibc_PTH_,_glibc_PTH$(NS64TAG)_,$(NSOBJDIR_NAME))
+ MOZ_OBJDIR_NAME_32 = $(subst _glibc_PTH_,_glibc_PTH_,$(NSOBJDIR_NAME))
else
MOZ_OBJDIR_NAME = $(NSOBJDIR_NAME)
+ MOZ_OBJDIR_NAME_32 = $(NSOBJDIR_NAME_32)
endif
endif
endif
diff --git a/components.mk b/components.mk
index 32fc01fe..c17bab6a 100644
--- a/components.mk
+++ b/components.mk
@@ -152,12 +152,16 @@ NSPR_LIBNAMES += nspr4
ifdef NSPR_SOURCE_ROOT
NSPR_LIBPATH = $(NSPR_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/lib
NSPR_INCDIR = $(NSPR_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/include
+ NSPR_LIBPATH_32 = $(NSPR_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME_32)/lib
+ NSPR_INCDIR_32 = $(NSPR_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME_32)/include
else
NSPR_LIBPATH = $(NSPR_BUILD_DIR)/lib
NSPR_INCDIR = $(NSPR_BUILD_DIR)/include
+ NSPR_LIBPATH_32 = $(NSPR_BUILD_DIR_32)/lib
+ NSPR_INCDIR_32 = $(NSPR_BUILD_DIR_32)/include
endif
NSPR_INCLUDE = -I$(NSPR_INCDIR)
-NSPR_LIBS_TO_PKG = $(addsuffix .$(DLL_SUFFIX),$(addprefix $(NSPR_LIBPATH)/lib,$(NSPR_LIBNAMES)))
+NSPR_LIBS_TO_PKG = $(addsuffix .$(DLL_SUFFIX),$(addprefix $(NSPR_LIBPATH)/$(LIB_PREFIX),$(NSPR_LIBNAMES)))
LIBS_TO_PKG += $(NSPR_LIBS_TO_PKG)
LIBS_TO_PKG_SHARED += $(NSPR_LIBS_TO_PKG) # needed for cmd line tools
@@ -186,10 +190,14 @@ ifdef SECURITY_SOURCE_ROOT
SECURITY_LIBPATH = $(SECURITY_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/lib
SECURITY_BINPATH = $(SECURITY_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/bin
SECURITY_INCDIR = $(SECURITY_SOURCE_ROOT)/dist/public/nss
+ SECURITY_LIBPATH_32 = $(SECURITY_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME_32)/lib
+ SECURITY_BINPATH_32 = $(SECURITY_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME_32)/bin
else
SECURITY_LIBPATH = $(SECURITY_BUILD_DIR)/lib
SECURITY_BINPATH = $(SECURITY_BUILD_DIR)/bin
SECURITY_INCDIR = $(SECURITY_BUILD_DIR)/include
+ SECURITY_LIBPATH_32 = $(SECURITY_BUILD_DIR_32)/lib
+ SECURITY_BINPATH_32 = $(SECURITY_BUILD_DIR_32)/bin
endif
SECURITY_INCLUDE = -I$(SECURITY_INCDIR)
# add crlutil and ocspclnt when we support CRL and OCSP cert checking in DS
@@ -227,6 +235,7 @@ SECURITY_LIBS_TO_PKG = $(addsuffix .$(DLL_SUFFIX),$(addprefix $(SECURITY_LIBPATH
SECURITY_LIBS_TO_PKG += $(addsuffix .chk,$(addprefix $(SECURITY_LIBPATH)/$(LIB_PREFIX),$(SECURITY_NEED_CHK)))
LIBS_TO_PKG += $(SECURITY_LIBS_TO_PKG)
LIBS_TO_PKG_SHARED += $(SECURITY_LIBS_TO_PKG) # for cmd line tools
+
ifeq ($(USE_SETUPUTIL), 1)
PACKAGE_SETUP_LIBS += $(SECURITY_LIBS_TO_PKG) # for the setup programs
endif
@@ -285,10 +294,17 @@ ifdef LDAPSDK_SOURCE_ROOT
LDAPSDK_LIBPATH = $(LDAPSDK_SOURCE_ROOT)/dist/lib
LDAPSDK_INCDIR = $(LDAPSDK_SOURCE_ROOT)/dist/public/ldap
LDAPSDK_BINPATH = $(LDAPSDK_SOURCE_ROOT)/dist/bin
+# need to build in another source root ...
+ LDAPSDK_LIBPATH_32 = $(LDAPSDK_SOURCE_ROOT_32)/dist/lib
+ LDAPSDK_INCDIR_32 = $(LDAPSDK_SOURCE_ROOT_32)/dist/public/ldap
+ LDAPSDK_BINPATH_32 = $(LDAPSDK_SOURCE_ROOT_32)/dist/bin
else
LDAPSDK_LIBPATH = $(LDAP_ROOT)/lib
LDAPSDK_INCDIR = $(LDAP_ROOT)/include
LDAPSDK_BINPATH = $(LDAP_ROOT)/bin
+ LDAPSDK_LIBPATH_32 = $(LDAP_ROOT_32)/lib
+ LDAPSDK_INCDIR_32 = $(LDAP_ROOT_32)/include
+ LDAPSDK_BINPATH_32 = $(LDAP_ROOT_32)/bin
endif
LDAPSDK_INCLUDE = -I$(LDAPSDK_INCDIR)
@@ -601,11 +617,48 @@ PACKAGE_SRC_DEST += $(PERLDAP_ARCHLIB_DIR) lib/perl
PACKAGE_SRC_DEST += $(PERLDAP_LIB_DIR) lib/perl
PACKAGE_SRC_DEST += $(PERLDAP_AUTOLIB_DIR) lib/perl
+# 32-bit perldap is packaged in 64-bit DS on Solaris and HP-UX PA-RISC.
+# It requires 32-bit LDAPSDK, NSPR, NSS.
+ifeq ($(USE_64), 1)
+ ifeq ($(BUILD_ARCH), SOLARIS)
+ PACKAGE_LIB32:=1
+ endif
+ ifeq ($(BUILD_ARCH), HPUX)
+ HPUX_ARCH := $(shell uname -m)
+ ifneq ($(HPUX_ARCH), ia64)
+ PACKAGE_LIB32:=1
+ endif
+ endif
+endif
+
+
# must define dependencies last because they depend on the definitions above
ifeq ($(INTERNAL_BUILD), 1)
include $(BUILD_ROOT)/internal_comp_deps.mk
endif
+ifeq ($(PACKAGE_LIB32), 1)
+ NSS32_LIBNAMES = $(SECURITY_LIBNAMES) smime3
+ NSS32_NEED_CHK = softokn3
+ ifeq ($(ARCH), SOLARIS)
+ NSS32_LIBNAMES += freebl_32fpu_3 freebl_32int64_3 freebl_32int_3
+# these libs have a corresponding .chk file
+ NSS32_NEED_CHK += freebl_32fpu_3 freebl_32int64_3 freebl_32int_3
+ endif
+ ifeq ($(ARCH), HPUX)
+ NSS32_LIBNAMES += freebl_32fpu_3 freebl_32int_3
+# these libs have a corresponding .chk file
+ NSS32_NEED_CHK += freebl_32fpu_3 freebl_32int_3
+ endif
+ NSSCKBI_FILE = $(LIB_PREFIX)nssckbi.$(DLL_SUFFIX)
+ NSSCKBI32_FILE = $(LIB_PREFIX)nssckbi32.$(DLL_SUFFIX)
+ SECURITY_FILES_32_TMP = $(NSSCKBI_FILE) $(addprefix $(LIB_PREFIX),$(addsuffix .$(DLL_SUFFIX),$(NSS32_LIBNAMES))) $(addprefix $(LIB_PREFIX),$(addsuffix .chk,$(NSS32_NEED_CHK)))
+
+ LIBS_TO_PKG_SHARED_32 = $(addprefix $(SECURITY_LIBPATH_32)/,$(SECURITY_FILES_32_TMP))
+ LIBS_TO_PKG_SHARED_32 += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(NSPR_LIBPATH_32)/$(LIB_PREFIX),$(NSPR_LIBNAMES)))
+ LIBS_TO_PKG_SHARED_32 += $(addprefix $(LDAPSDK_LIBPATH_32)/,$(LDAP_SOLIBS))
+endif # PACKAGE_LIB32
+
#################################################
# User Sync Components
#################################################
diff --git a/internal_buildpaths.mk b/internal_buildpaths.mk
index 2e2239f7..00556d43 100644
--- a/internal_buildpaths.mk
+++ b/internal_buildpaths.mk
@@ -77,6 +77,7 @@ endif
#NSPR_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
ifndef NSPR_SOURCE_ROOT
NSPR_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/nspr
+NSPR_BUILD_DIR_32 = $(NSCP_DISTDIR_FULL_RTL_32)/nspr
# NSPR also needs a build dir with a full, absolute path for some reason
NSPR_ABS_BUILD_DIR = $(NSCP_ABS_DISTDIR_FULL_RTL)/nspr
endif # NSPR_SOURCE_ROOT
@@ -89,6 +90,7 @@ endif # DBM_SOURCE_ROOT
#SECURITY_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
ifndef SECURITY_SOURCE_ROOT
SECURITY_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/nss
+SECURITY_BUILD_DIR_32 = $(NSCP_DISTDIR_FULL_RTL_32)/nss
endif # SECURITY_SOURCE_ROOT
#SVRCORE_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
@@ -99,6 +101,7 @@ endif # SVRCORE_SOURCE_ROOT
#LDAPSDK_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
ifndef LDAPSDK_SOURCE_ROOT
LDAP_ROOT = $(NSCP_DISTDIR_FULL_RTL)/ldapsdk
+LDAP_ROOT_32 = $(NSCP_DISTDIR_FULL_RTL_32)/ldapsdk
endif # LDAPSDK_SOURCE_ROOT
#SASL_SOURCE_ROOT = $(BUILD_ROOT)/../cyrus-sasl-2.1.20
diff --git a/internal_comp_deps.mk b/internal_comp_deps.mk
index 3d6f9ad3..c501365d 100644
--- a/internal_comp_deps.mk
+++ b/internal_comp_deps.mk
@@ -53,7 +53,7 @@ BOMB=$(BUILD_BOMB)
endif # BUILD_PUMPKIN
ifndef NSPR_SOURCE_ROOT
-NSPR_IMPORT = $(COMPONENTS_DIR)/nspr20/$(NSPR_RELDATE)/$(FULL_RTL_OBJDIR)
+NSPR_IMPORT = $(COMPONENTS_DIR)/nspr/$(NSPR_RELDATE)/$(FULL_RTL_OBJDIR)
NSPR_DEP = $(NSPR_LIBPATH)/libnspr4.$(LIB_SUFFIX)
ifndef NSPR_PULL_METHOD
@@ -158,6 +158,15 @@ else
LDAPSDK_PULL_LIBS = lib/libssldap$(LDAP_SUF)$(LDAP_DLL_PRESUF).$(LDAP_DLL_SUFFIX),lib/libldap$(LDAP_SUF)$(LDAP_DLL_PRESUF).$(LDAP_DLL_SUFFIX),lib/libprldap$(LDAP_SUF)$(LDAP_DLL_PRESUF).$(LDAP_DLL_SUFFIX)
endif
+# Solaris and HP-UX PA-RISC only #########################################
+# if building 64 bit version, also need the 32 bit version of NSS and NSPR
+ifeq ($(PACKAGE_LIB32), 1)
+ NSPR_IMPORT_32 = $(COMPONENTS_DIR)/nspr/$(NSPR_RELDATE)/$(FULL_RTL_OBJDIR_32)
+ SECURITY_IMPORT_32 = $(COMPONENTS_DIR)/nss/$(SECURITY_RELDATE)/$(FULL_RTL_OBJDIR_32)
+ LDAP_RELEASE_32 = $(LDAP_SBC)/$(LDAPCOMP_DIR)/$(LDAP_VERSION)/$(FULL_RTL_OBJDIR_32)
+ SECURITY_FILES_32 = $(subst $(SPACE),$(COMMA),$(SECURITY_FILES_32_TMP))
+endif
+
ifndef LDAPSDK_PULL_METHOD
LDAPSDK_PULL_METHOD = $(COMPONENT_PULL_METHOD)
endif
@@ -172,6 +181,21 @@ endif
-@if [ ! -f $@ ] ; \
then echo "Error: could not get component LDAPSDK file $@" ; \
fi
+
+ifeq ($(PACKAGE_LIB32), 1)
+ $(FTP_PULL) -method $(SECURITY_PULL_METHOD) \
+ -objdir $(NSPR_BUILD_DIR_32) -componentdir $(NSPR_IMPORT_32) \
+ -files lib
+ mkdir -p $(SECURITY_BUILD_DIR_32)/lib
+ $(FTP_PULL) -method $(SECURITY_PULL_METHOD) \
+ -objdir $(SECURITY_BUILD_DIR_32)/lib -componentdir $(SECURITY_IMPORT_32)/lib \
+ -files $(SECURITY_FILES_32)
+ $(FTP_PULL) -method $(LDAPSDK_PULL_METHOD) \
+ -objdir $(LDAP_ROOT_32) -componentdir $(LDAP_RELEASE_32) \
+ -files lib
+ mv -f $(SECURITY_BUILD_DIR_32)/lib/$(NSSCKBI_FILE) $(SECURITY_BUILD_DIR_32)/lib/$(NSSCKBI32_FILE)
+endif # PACKAGE_LIB32
+##
endif # LDAPSDK_SOURCE_ROOT
ifndef SASL_SOURCE_ROOT
diff --git a/ldap/cm/Makefile b/ldap/cm/Makefile
index aa24b2f4..5b5a58f7 100644
--- a/ldap/cm/Makefile
+++ b/ldap/cm/Makefile
@@ -333,6 +333,14 @@ ifdef USE_DSGW
fi ; \
done
endif
+ifeq ($(PACKAGE_LIB32), 1)
+# these are files to copy to the shared32/lib directory - nspr, nss, ldapsdk lib
+ for file in $(LIBS_TO_PKG_SHARED_32); \
+ do if [ -f $$file ] ; \
+ then $(INSTALL) -m 755 $$file $(RELDIR)/shared32/lib ; \
+ fi ; \
+ done
+endif
endif
# PACKAGE_SRC_DEST is defined in components.mk - these are component files and directories to install
@@ -641,6 +649,7 @@ endif
endif
ifeq ($(USE_PERLDAP), 1)
+ -@rm -rf $(INSTDIR)/perldap
mkdir $(INSTDIR)/perldap
cp -R $(PERLDAP_BUILT_DIR)/* $(INSTDIR)/perldap
$(PERL) genPerlDAPInf.pl $(INSTDIR)/perldap/perldap.inf 1.5 "Fedora Project"
diff --git a/nsconfig.mk b/nsconfig.mk
index b9209955..7afaa6e1 100644
--- a/nsconfig.mk
+++ b/nsconfig.mk
@@ -1335,6 +1335,10 @@ FULL_RTL_OBJDIR = $(NSOBJDIR_NAME)
NSCP_DISTDIR_FULL_RTL = $(NSCP_DISTDIR)
NSCP_ABS_DISTDIR_FULL_RTL = $(ABS_ROOT_PARENT)/dist/$(FULL_RTL_OBJDIR)
+FULL_RTL_OBJDIR_32 = $(NSOBJDIR_NAME_32)
+NSCP_DISTDIR_FULL_RTL_32 = $(BUILD_ROOT)/../dist/$(NSOBJDIR_NAME_32)
+NSCP_ABS_DISTDIR_FULL_RTL_32 = $(ABS_ROOT_PARENT)/dist/$(FULL_RTL_OBJDIR_32)
+
# these components may have additional RTL debugging support built in on NT
# adminutil, dbm, ldapsdk, NLS, NSPR, NSS (security)
# we cannot simply redefine NSOBJDIR_NAME and NSCP_DISTDIR because other