diff options
-rw-r--r-- | buildpaths.mk | 4 | ||||
-rw-r--r-- | components.mk | 55 | ||||
-rw-r--r-- | internal_buildpaths.mk | 3 | ||||
-rw-r--r-- | internal_comp_deps.mk | 26 | ||||
-rw-r--r-- | ldap/cm/Makefile | 9 | ||||
-rw-r--r-- | nsconfig.mk | 4 |
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 |