summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile33
-rw-r--r--buildpaths.mk82
-rw-r--r--components.mk883
-rw-r--r--internal_buildpaths.mk90
-rw-r--r--internal_comp_deps.mk703
-rw-r--r--ldap/Makefile10
-rw-r--r--ldap/admin/src/Makefile63
-rw-r--r--ldap/cm/Makefile14
-rw-r--r--ldap/servers/Makefile2
-rw-r--r--nsconfig.mk11
10 files changed, 1125 insertions, 766 deletions
diff --git a/Makefile b/Makefile
index 4c7d2cb1..3f945348 100644
--- a/Makefile
+++ b/Makefile
@@ -21,7 +21,6 @@ COMPONENT_DEPS := 1
include nsdefs.mk
include nsconfig.mk
-include ns_usedb.mk
# first (default) rule: build and create a DS package
all: buildAndPkgDirectory
@@ -35,6 +34,20 @@ help:
@echo " gmake pkgDirectory"
@echo " gmake pkgDirectoryl10n"
@echo " gmake pkgDirectoryPseudoL10n"
+ @echo " gmake with no arguments will do buildAndPkgDirectory, which "
+ @echo " is usually what you want to do"
+ @echo ""
+ @echo " The following are optional build flags which build or pull in"
+ @echo " optional components which are only available internally for"
+ @echo " now. In the future these components may be made available"
+ @echo " externally or in an open source version."
+ @echo " USE_ADMINSERVER=1 - bundle the Admin Server (required to run Console/webapps)"
+ @echo " USE_CONSOLE=1 - bundle the Administration Console (requires Java)"
+ @echo " USE_DSMLGW=1 - build/bundle the DSMLv2 Gateway (requires Java)"
+ @echo " USE_ORGCHART=1 - build/bundle the Org Chart webapp"
+ @echo " USE_DSGW=1 - build/bundle the Phonebook/DS Gateway webapp"
+ @echo " USE_JAVATOOLS=1 - build/bundle the Java command line tools"
+ @echo " USE_SETUPSDK=1 - build/bundle programs that use Setup SDK"
###### Implementation notes:
#
@@ -84,9 +97,13 @@ help:
#
###### End of implementation notes.
-components: $(ADMINUTIL_DEP) $(NSPR_DEP) $(ARLIB_DEP) $(DBM_DEP) $(SECURITY_DEP) $(SVRCORE_DEP) \
+ifeq ($(INTERNAL_BUILD), 1)
+ COMPONENT_DEPENDENCIES = $(ADMINUTIL_DEP) $(NSPR_DEP) $(ARLIB_DEP) $(DBM_DEP) $(SECURITY_DEP) $(SVRCORE_DEP) \
$(ICU_DEP) $(SETUPSDK_DEP) $(LDAPSDK_DEP) $(DB_LIB_DEP) $(SASL_DEP) $(PEER_DEP) \
$(AXIS_DEP) $(DSMLJAR_DEP)
+endif
+
+components: $(COMPONENT_DEPENDENCIES)
-@echo "The components are up to date"
ifeq ($(BUILD_JAVA_CODE),1)
@@ -202,14 +219,20 @@ cleanDirectory:
buildDirectoryConsole: consoleComponents java_platform_check
ifeq ($(BUILD_JAVA_CODE),1)
# cd ldap/admin/src/java/com/netscape/admin/dirserv; $(MAKE) $(MFLAGS) package
- cd ldap/admin/src/java/com/netscape/xmltools; $(MAKE) $(MFLAGS) package
+ ifeq ($(USE_JAVATOOLS), 1)
+ cd ldap/admin/src/java/com/netscape/xmltools; $(MAKE) $(MFLAGS) package
+ endif
endif
buildDirectoryClients: $(ANT_DEP) java_platform_check
ifeq ($(BUILD_JAVA_CODE),1)
- cd ldap/clients; $(MAKE) _dsmlgw
+ ifeq ($(USE_DSMLGW), 1)
+ cd ldap/clients; $(MAKE) _dsmlgw
+ endif
endif
+ifeq ($(USE_DSGW), 1)
cd ldap/clients; $(MAKE) _dsgw
+endif
$(OBJDIR):
if test ! -d $(OBJDIR); then mkdir -p $(OBJDIR); fi;
@@ -248,7 +271,9 @@ Longduration:
setupDirectory:
cd ldap/cm; $(MAKE) $(MFLAGS) releaseDirectory;
+ifeq ($(USE_SETUPSDK), 1)
cd ldap/cm; $(MAKE) $(MFLAGS) packageDirectory;
+endif
pkgDirectoryJars:
cd ldap/cm; $(MAKE) $(MFLAGS) packageJars
diff --git a/buildpaths.mk b/buildpaths.mk
new file mode 100644
index 00000000..c600d8d0
--- /dev/null
+++ b/buildpaths.mk
@@ -0,0 +1,82 @@
+#
+# BEGIN COPYRIGHT BLOCK
+# Copyright (C) 2005 Red Hat, Inc.
+# All rights reserved.
+# END COPYRIGHT BLOCK
+#
+# This file is where you tell the build process where to find the
+# various components used during the build process.
+
+# You can either use components built locally from source or
+# pre-built components. The reason for the different macros
+# for SOURCE and BUILD is that the locations for the libs, includes,
+# etc. are usually different for packages built from source vs.
+# pre-built packages. As an example, when building NSPR from
+# source, the includes are in mozilla/dist/$(OBJDIR_NAME)/include
+# where OBJDIR_NAME includes the OS, arch, compiler, thread model, etc.
+# When using the pre-built NSPR from Mozilla FTP, the include files
+# are just in nsprdir/include. This is why we have to make the
+# distinction between a SOURCE component and a BUILD (pre-built)
+# component. See components.mk for the gory details.
+
+# For each component, specify the source root OR the pre-built
+# component directory. If both a SOURCE_ROOT and a BUILD_DIR are
+# defined for a component, the SOURCE_ROOT will be used - don't do
+# this, it's confusing.
+
+# For the Mozilla components, if using source for all of them,
+# you can just define MOZILLA_SOURCE_ROOT - the build will
+# assume all of them have been built in that same directory
+# (as per the recommended build instructions)
+
+# For all components, the recommended way is to put each
+# component in a subdirectory of the parent directory of
+# BUILD_ROOT, both with pre-built and source components
+
+MOZILLA_SOURCE_ROOT = $(BUILD_ROOT)/../mozilla
+ifdef MOZILLA_SOURCE_ROOT
+ # some of the mozilla components are put in a platform/buildtype specific
+ # subdir of mozilla/dist, and their naming convention is different than
+ # ours - we need to map ours to theirs
+ ifneq (,$(findstring RHEL3,$(NSOBJDIR_NAME)))
+ MOZ_OBJDIR_NAME = $(subst _gcc3_,_glibc_PTH_,$(subst RHEL3,Linux2.4,$(NSOBJDIR_NAME)))
+ else
+ ifneq (,$(findstring RHEL4,$(NSOBJDIR_NAME)))
+ MOZ_OBJDIR_NAME = $(subst _gcc3_,_glibc_PTH_,$(subst RHEL4,Linux2.6,$(NSOBJDIR_NAME)))
+ else
+ MOZ_OBJDIR_NAME = $(NSOBJDIR_NAME)
+ endif
+ endif
+endif
+
+NSPR_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
+#NSPR_BUILD_DIR = $(BUILD_ROOT)/../nspr-4.4.1
+# NSPR also needs a build dir with a full, absolute path for some reason
+#NSPR_ABS_BUILD_DIR = $(shell cd $(NSPR_BUILD_DIR) && pwd)
+
+DBM_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
+#DBM_BUILD_DIR = $(BUILD_ROOT)/../nss-3.9.3
+
+SECURITY_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
+#SECURITY_BUILD_DIR = $(BUILD_ROOT)/../nss-3.9.3
+
+SVRCORE_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
+#SVRCORE_BUILD_DIR = $(BUILD_ROOT)/../svrcore-4.0
+
+LDAPSDK_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
+#LDAP_ROOT = $(BUILD_ROOT)/../ldapsdk-5.15
+
+SASL_SOURCE_ROOT = $(BUILD_ROOT)/../cyrus-sasl-2.1.20
+#SASL_BUILD_DIR = $(BUILD_ROOT)/../sasl
+
+ICU_SOURCE_ROOT = $(BUILD_ROOT)/../icu
+#ICU_BUILD_DIR = $(BUILD_ROOT)/../icu-2.4
+
+DB_SOURCE_ROOT = $(BUILD_ROOT)/../db-4.2.52.NC
+# DB_MAJOR_MINOR is the root name for the db shared library
+# source builds use db-4.2 - lib is prepended later
+DB_MAJOR_MINOR := db-4.2
+# internal builds rename this to be db42
+#DB_MAJOR_MINOR := db42
+#component_name:=$(DB_MAJOR_MINOR)
+#db_path_config:=$(BUILD_ROOT)/../$(component_name)
diff --git a/components.mk b/components.mk
index f4c4a93e..8b7c090b 100644
--- a/components.mk
+++ b/components.mk
@@ -78,10 +78,12 @@ PACKAGE_UNDER_JAVA =
# nls locale files are in libnls31/locale, but for packaging they need to
# go into lib/nls, not just lib; the destination should be a directory name;
# separate the src from the dest with a single space
+PACKAGE_SRC_DEST =
+
+# these defs are useful for doing pattern search/replace
COMMA := ,
NULLSTRING :=
SPACE := $(NULLSTRING) # the space is between the ) and the #
-PACKAGE_SRC_DEST =
ifeq ($(ARCH), WINNT)
EXE_SUFFIX = .exe
@@ -89,90 +91,11 @@ else # unix - windows has no lib name prefix, except for nspr
LIB_PREFIX = lib
endif
-# work around vsftpd -L problem
-ifeq ($(COMPONENT_PULL_METHOD), FTP)
-ifdef USING_VSFTPD
-VSFTPD_HACK=1
-endif
-endif
-
-# ADMINUTIL library #######################################
-ADMINUTIL_VERSION=$(ADMINUTIL_RELDATE)$(SEC_SUFFIX)
-ADMINUTIL_BASE=$(ADMINUTIL_VERSDIR)/${ADMINUTIL_VERSION}
-ADMSDKOBJDIR = $(FULL_RTL_OBJDIR)
-ADMINUTIL_IMPORT=$(COMPONENTS_DIR)/${ADMINUTIL_BASE}/$(NSOBJDIR_NAME)
-# this is the base directory under which the component's files will be found
-# during the build process
-ADMINUTIL_BUILD_DIR=$(NSCP_DISTDIR_FULL_RTL)/adminutil
-ADMINUTIL_LIBPATH=$(ADMINUTIL_BUILD_DIR)/lib
-ADMINUTIL_INCPATH=$(ADMINUTIL_BUILD_DIR)/include
-
-PACKAGE_SRC_DEST += $(ADMINUTIL_LIBPATH)/property bin/slapd/lib
-LIBS_TO_PKG += $(wildcard $(ADMINUTIL_LIBPATH)/*.$(DLL_SUFFIX))
-LIBS_TO_PKG_CLIENTS += $(wildcard $(ADMINUTIL_LIBPATH)/*.$(DLL_SUFFIX))
-
-#
-# Libadminutil
-#
-ADMINUTIL_DEP = $(ADMINUTIL_LIBPATH)/libadminutil$(ADMINUTIL_VER).$(LIB_SUFFIX)
-ifeq ($(ARCH), WINNT)
-ADMINUTIL_LINK = /LIBPATH:$(ADMINUTIL_LIBPATH) libadminutil$(ADMINUTIL_VER).$(LIB_SUFFIX)
-ADMINUTIL_S_LINK = /LIBPATH:$(ADMINUTIL_LIBPATH) libadminutil_s$(ADMINUTIL_VER).$(LIB_SUFFIX)
-LIBADMINUTILDLL_NAMES = $(ADMINUTIL_LIBPATH)/libadminutil$(ADMINUTIL_VER).$(DLL_SUFFIX)
+ifeq ($(INTERNAL_BUILD), 1)
+include $(BUILD_ROOT)/internal_buildpaths.mk
else
-ADMINUTIL_LINK=-L$(ADMINUTIL_LIBPATH) -ladminutil$(ADMINUTIL_VER)
+include $(BUILD_ROOT)/buildpaths.mk
endif
-ADMINUTIL_INCLUDE=-I$(ADMINUTIL_INCPATH) \
- -I$(ADMINUTIL_INCPATH)/libadminutil \
- -I$(ADMINUTIL_INCPATH)/libadmsslutil
-
-ifndef ADMINUTIL_PULL_METHOD
-ADMINUTIL_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(ADMINUTIL_DEP): ${NSCP_DISTDIR_FULL_RTL}
-ifdef COMPONENT_DEPS
- $(FTP_PULL) -method $(ADMINUTIL_PULL_METHOD) \
- -objdir $(ADMINUTIL_BUILD_DIR) \
- -componentdir $(ADMINUTIL_IMPORT) \
- -files include,lib
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component adminutil file $@" ; \
- fi
-###########################################################
-# Peer
-
-PEER_BUILD_DIR = $(NSCP_DISTDIR)/peer
-ifeq ($(ARCH), WINNT)
-# PEER_RELEASE = $(COMPONENTS_DIR)/peer/$(PEER_RELDATE)
-# PEER_FILES = include
-else
-PEER_RELEASE = $(COMPONENTS_DIR)/peer/$(PEER_RELDATE)/$(NSOBJDIR_NAME)
-PEER_FILES = obj
-PEER_DEP = $(PEER_OBJPATH)/ns-ldapagt
-endif
-# PEER_MGMTPATH = $(PEER_BUILD_DIR)/dev
-# PEER_INCDIR = $(PEER_BUILD_DIR)/include
-# PEER_BINPATH = $(PEER_BUILD_DIR)/dev
-PEER_OBJPATH = $(PEER_BUILD_DIR)/obj
-# PEER_INCLUDE = -I$(PEER_INCDIR)
-
-ifndef PEER_PULL_METHOD
-PEER_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(PEER_DEP): $(NSCP_DISTDIR)
-ifdef COMPONENT_DEPS
- $(FTP_PULL) -method $(PEER_PULL_METHOD) \
- -objdir $(PEER_BUILD_DIR) -componentdir $(PEER_RELEASE) \
- -files $(PEER_FILES)
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component PEER file $@" ; \
- fi
-endif
-
-###########################################################
# NSPR20 Library
NSPR_LIBNAMES = plc4 plds4
@@ -185,19 +108,25 @@ LIBS_TO_PKG += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(NSPR_LIBPATH)/lib,ultras
endif
endif
NSPR_LIBNAMES += nspr4
-NSPR_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/nspr
-NSPR_ABS_BUILD_DIR = $(NSCP_ABS_DISTDIR_FULL_RTL)/nspr
-NSPR_LIBPATH = $(NSPR_BUILD_DIR)/lib
-NSPR_INCLUDE = -I$(NSPR_BUILD_DIR)/include
-NSPR_IMPORT = $(COMPONENTS_DIR)/nspr20/$(NSPR_RELDATE)/$(FULL_RTL_OBJDIR)
+ifdef NSPR_SOURCE_ROOT
+ NSPR_LIBPATH = $(NSPR_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/lib
+ NSPR_INCDIR = $(NSPR_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/include
+else
+ NSPR_LIBPATH = $(NSPR_BUILD_DIR)/lib
+ NSPR_INCDIR = $(NSPR_BUILD_DIR)/include
+endif
+NSPR_INCLUDE = -I$(NSPR_INCDIR)
NSPR_LIBS_TO_PKG = $(addsuffix .$(DLL_SUFFIX),$(addprefix $(NSPR_LIBPATH)/lib,$(NSPR_LIBNAMES)))
LIBS_TO_PKG += $(NSPR_LIBS_TO_PKG)
LIBS_TO_PKG_SHARED += $(NSPR_LIBS_TO_PKG) # needed for cmd line tools
-PACKAGE_SETUP_LIBS += $(NSPR_LIBS_TO_PKG)
-LIBS_TO_PKG_CLIENTS += $(NSPR_LIBS_TO_PKG) # for dsgw
+ifeq ($(USE_SETUPSDK), 1)
+ PACKAGE_SETUP_LIBS += $(NSPR_LIBS_TO_PKG)
+endif
+ifeq ($(USE_DSGW), 1)
+ LIBS_TO_PKG_CLIENTS += $(NSPR_LIBS_TO_PKG) # for dsgw
+endif
-NSPR_DEP = $(NSPR_LIBPATH)/libnspr4.$(LIB_SUFFIX)
ifeq ($(ARCH), WINNT)
NSPRDLL_NAME = $(addprefix lib, $(NSPR_LIBNAMES))
NSPROBJNAME = $(addsuffix .lib, $(NSPRDLL_NAME))
@@ -211,27 +140,15 @@ else
NSPRLINK = -L$(NSPR_LIBPATH) $(addprefix -l, $(NSPR_LIBNAMES))
endif
-ifndef NSPR_PULL_METHOD
-NSPR_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(NSPR_DEP): $(NSCP_DISTDIR_FULL_RTL)
-ifdef COMPONENT_DEPS
- $(FTP_PULL) -method $(NSPR_PULL_METHOD) \
- -objdir $(NSPR_BUILD_DIR) -componentdir $(NSPR_IMPORT) \
- -files lib,include
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component NSPR file $@" ; \
- fi
-
### DBM #############################
-DBM_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/dbm
-DBM_LIBPATH = $(DBM_BUILD_DIR)/lib
-DBM_INCDIR = $(DBM_BUILD_DIR)/include
-DBM_DEP = $(DBM_LIBPATH)/libdbm.$(LIB_SUFFIX)
-DBM_IMPORT = $(COMPONENTS_DIR)/dbm/$(DBM_RELDATE)/$(NSOBJDIR_NAME)
+ifdef DBM_SOURCE_ROOT
+ DBM_LIBPATH = $(DBM_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/lib
+ DBM_INCDIR = $(DBM_SOURCE_ROOT)/dist/public/dbm
+else
+ DBM_LIBPATH = $(DBM_BUILD_DIR)/lib
+ DBM_INCDIR = $(DBM_BUILD_DIR)/include
+endif
DBM_INCLUDE = -I$(DBM_INCDIR)
DBM_LIBNAMES = dbm
@@ -239,39 +156,25 @@ ifeq ($(ARCH), WINNT)
DBMOBJNAME = $(addsuffix .lib, $(DBM_LIBNAMES))
LIBDBM = $(addprefix $(DBM_LIBPATH)/, $(DBMOBJNAME))
DBMLINK = /LIBPATH:$(DBM_LIBPATH) $(DBMOBJNAME)
- DBM_DEP = $(DBM_LIBPATH)/dbm.$(LIB_SUFFIX)
else
DBM_SOLIBS = $(addsuffix .$(DLL_SUFFIX), $(addprefix $(LIB_PREFIX), $(DBM_LIBNAMES)))
DBMROBJNAME = $(addsuffix .a, $(addprefix $(LIB_PREFIX), $(DBM_LIBNAMES)))
LIBDBM = $(addprefix $(DBM_LIBPATH)/, $(DBMROBJNAME))
DBMLINK = -L$(DBM_LIBPATH) $(addprefix -l, $(DBM_LIBNAMES))
- DBM_DEP = $(DBM_LIBPATH)/libdbm.$(LIB_SUFFIX)
endif
-ifndef DBM_PULL_METHOD
-DBM_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(DBM_DEP): $(NSCP_DISTDIR_FULL_RTL)
-ifdef COMPONENT_DEPS
- $(FTP_PULL) -method $(DBM_PULL_METHOD) \
- -objdir $(DBM_BUILD_DIR) -componentdir $(DBM_IMPORT)/.. \
- -files xpheader.jar -unzip $(DBM_INCDIR)
- $(FTP_PULL) -method $(DBM_PULL_METHOD) \
- -objdir $(DBM_BUILD_DIR) -componentdir $(DBM_IMPORT) \
- -files mdbinary.jar -unzip $(DBM_BUILD_DIR)
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component DBM file $@" ; \
- fi
-
### DBM END #############################
### SECURITY #############################
-SECURITY_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/nss
-SECURITY_LIBPATH = $(SECURITY_BUILD_DIR)/lib
-SECURITY_BINPATH = $(SECURITY_BUILD_DIR)/bin
-SECURITY_INCDIR = $(SECURITY_BUILD_DIR)/include
+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
+else
+ SECURITY_LIBPATH = $(SECURITY_BUILD_DIR)/lib
+ SECURITY_BINPATH = $(SECURITY_BUILD_DIR)/bin
+ SECURITY_INCDIR = $(SECURITY_BUILD_DIR)/include
+endif
SECURITY_INCLUDE = -I$(SECURITY_INCDIR)
# add crlutil and ocspclnt when we support CRL and OCSP cert checking in DS
ifeq ($(SECURITY_RELDATE), NSS_3_7_9_RTM)
@@ -280,7 +183,6 @@ else
SECURITY_BINNAMES = certutil derdump pp pk12util ssltap modutil shlibsign
endif
SECURITY_LIBNAMES = ssl3 nss3 softokn3
-SECURITY_IMPORT = $(COMPONENTS_DIR)/nss/$(SECURITY_RELDATE)/$(FULL_RTL_OBJDIR)
SECURITY_LIBNAMES.pkg = $(SECURITY_LIBNAMES)
SECURITY_LIBNAMES.pkg += smime3
@@ -309,19 +211,21 @@ SECURITY_LIBS_TO_PKG += $(addsuffix .chk,$(addprefix $(SECURITY_LIBPATH)/$(LIB_P
endif
LIBS_TO_PKG += $(SECURITY_LIBS_TO_PKG)
LIBS_TO_PKG_SHARED += $(SECURITY_LIBS_TO_PKG) # for cmd line tools
-PACKAGE_SETUP_LIBS += $(SECURITY_LIBS_TO_PKG)
-LIBS_TO_PKG_CLIENTS += $(SECURITY_LIBS_TO_PKG) # for dsgw
+ifeq ($(USE_SETUPSDK), 1)
+ PACKAGE_SETUP_LIBS += $(SECURITY_LIBS_TO_PKG)
+endif
+ifeq ($(USE_DSGW), 1)
+ LIBS_TO_PKG_CLIENTS += $(SECURITY_LIBS_TO_PKG) # for dsgw
+endif
ifeq ($(ARCH), WINNT)
SECURITYOBJNAME = $(addsuffix .$(LIB_SUFFIX), $(SECURITY_LIBNAMES))
LIBSECURITY = $(addprefix $(SECURITY_LIBPATH)/, $(SECURITYOBJNAME))
SECURITYLINK = /LIBPATH:$(SECURITY_LIBPATH) $(SECURITYOBJNAME)
- SECURITY_DEP = $(SECURITY_LIBPATH)/ssl3.$(DLL_SUFFIX)
else
SECURITYOBJNAME = $(addsuffix .$(DLL_SUFFIX), $(addprefix $(LIB_PREFIX), $(SECURITY_LIBNAMES)))
LIBSECURITY = $(addprefix $(SECURITY_LIBPATH)/, $(SECURITYOBJNAME))
SECURITYLINK = -L$(SECURITY_LIBPATH) $(addprefix -l, $(SECURITY_LIBNAMES))
- SECURITY_DEP = $(SECURITY_LIBPATH)/libssl3.$(DLL_SUFFIX)
endif
# we need to package the root cert file in the alias directory
@@ -330,187 +234,71 @@ PACKAGE_SRC_DEST += $(SECURITY_LIBPATH)/$(LIB_PREFIX)nssckbi.$(DLL_SUFFIX) alias
# need to package the sec tools in shared/bin
BINS_TO_PKG_SHARED += $(SECURITY_TOOLS_FULLPATH)
-#ifeq ($(ARCH), OSF1)
-#OSF1SECURITYHACKOBJ = $(OBJDIR)/osf1securityhack.o
-
-#$(OSF1SECURITYHACKOBJ): $(BUILD_ROOT)/osf1securityhack.c
-# $(CC) -c $(CFLAGS) $(MCC_INCLUDE) $< -o $@
-
-# SECURITYLINK += $(OSF1SECURITYHACKOBJ)
-#endif
-
-ifdef VSFTPD_HACK
-SECURITY_FILES=lib,bin/$(subst $(SPACE),$(COMMA)bin/,$(SECURITY_TOOLS))
-else
-SECURITY_FILES=lib,include,bin/$(subst $(SPACE),$(COMMA)bin/,$(SECURITY_TOOLS))
-endif
-
-ifndef SECURITY_PULL_METHOD
-SECURITY_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(SECURITY_DEP): $(NSCP_DISTDIR_FULL_RTL) $(OSF1SECURITYHACKOBJ)
-ifdef COMPONENT_DEPS
- mkdir -p $(SECURITY_BINPATH)
- $(FTP_PULL) -method $(SECURITY_PULL_METHOD) \
- -objdir $(SECURITY_BUILD_DIR) -componentdir $(SECURITY_IMPORT) \
- -files $(SECURITY_FILES)
-ifdef VSFTPD_HACK
-# work around vsftpd -L problem
- $(FTP_PULL) -method $(SECURITY_PULL_METHOD) \
- -objdir $(SECURITY_BUILD_DIR) -componentdir $(COMPONENTS_DIR)/nss/$(SECURITY_RELDATE) \
- -files include
-endif
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component NSS file $@" ; \
- fi
-
### SECURITY END #############################
### SVRCORE #############################
-SVRCORE_BUILD_DIR = $(NSCP_DISTDIR)/svrcore
-SVRCORE_LIBPATH = $(SVRCORE_BUILD_DIR)/lib
-SVRCORE_INCDIR = $(SVRCORE_BUILD_DIR)/include
+ifdef SVRCORE_SOURCE_ROOT
+ SVRCORE_LIBPATH = $(SVRCORE_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/lib
+ SVRCORE_INCDIR = $(SVRCORE_SOURCE_ROOT)/dist/public/svrcore
+else
+ SVRCORE_LIBPATH = $(SVRCORE_BUILD_DIR)/lib
+ SVRCORE_INCDIR = $(SVRCORE_BUILD_DIR)/include
+endif
SVRCORE_INCLUDE = -I$(SVRCORE_INCDIR)
-#SVRCORE_LIBNAMES = svrplcy svrcore
SVRCORE_LIBNAMES = svrcore
-SVRCORE_IMPORT = $(COMPONENTS_DIR)/svrcore/$(SVRCORE_RELDATE)/$(NSOBJDIR_NAME)
-#SVRCORE_IMPORT = $(COMPONENTS_DIR_DEV)/svrcore/$(SVRCORE_RELDATE)/$(NSOBJDIR_NAME)
ifeq ($(ARCH), WINNT)
SVRCOREOBJNAME = $(addsuffix .lib, $(SVRCORE_LIBNAMES))
LIBSVRCORE = $(addprefix $(SVRCORE_LIBPATH)/, $(SVRCOREOBJNAME))
SVRCORELINK = /LIBPATH:$(SVRCORE_LIBPATH) $(SVRCOREOBJNAME)
- SVRCORE_DEP = $(SVRCORE_LIBPATH)/svrcore.$(LIB_SUFFIX)
else
SVRCOREOBJNAME = $(addsuffix .a, $(addprefix $(LIB_PREFIX), $(SVRCORE_LIBNAMES)))
LIBSVRCORE = $(addprefix $(SVRCORE_LIBPATH)/, $(SVRCOREOBJNAME))
-ifeq ($(ARCH), OSF1)
-# the -all flag is used by default. This flag causes _all_ objects in lib.a files to
-# be processed and linked. This causes problems with svrcore because there are
-# several undefined symbols (notably, the JSS_xxx functions)
- SVRCORELINK = -L$(SVRCORE_LIBPATH) -none $(addprefix -l, $(SVRCORE_LIBNAMES)) -all
-else
SVRCORELINK = -L$(SVRCORE_LIBPATH) $(addprefix -l, $(SVRCORE_LIBNAMES))
endif
- SVRCORE_DEP = $(SVRCORE_LIBPATH)/libsvrcore.$(LIB_SUFFIX)
-endif
-
-ifndef SVRCORE_PULL_METHOD
-SVRCORE_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(SVRCORE_DEP): $(NSCP_DISTDIR)
-ifdef COMPONENT_DEPS
- $(FTP_PULL) -method $(SVRCORE_PULL_METHOD) \
- -objdir $(SVRCORE_BUILD_DIR) -componentdir $(SVRCORE_IMPORT)/.. \
- -files xpheader.jar -unzip $(SVRCORE_INCDIR)
- $(FTP_PULL) -method $(SVRCORE_PULL_METHOD) \
- -objdir $(SVRCORE_BUILD_DIR) -componentdir $(SVRCORE_IMPORT) \
- -files mdbinary.jar -unzip $(SVRCORE_BUILD_DIR)
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component SVRCORE file $@" ; \
- fi
### SVRCORE END #############################
-### SETUPSDK #############################
-# this is where the build looks for setupsdk components
-SETUP_SDK_BUILD_DIR = $(NSCP_DISTDIR)/setupsdk
-SETUPSDK_VERSION = $(SETUP_SDK_RELDATE)$(SEC_SUFFIX)
-SETUPSDK_RELEASE = $(COMPONENTS_DIR)/setupsdk/$(SETUPSDK_VERSDIR)/$(SETUPSDK_VERSION)/$(NSOBJDIR_NAME)
-SETUPSDK_LIBPATH = $(SETUP_SDK_BUILD_DIR)/lib
-SETUPSDK_INCDIR = $(SETUP_SDK_BUILD_DIR)/include
-SETUPSDK_BINPATH = $(SETUP_SDK_BUILD_DIR)/bin
-SETUPSDK_INCLUDE = -I$(SETUPSDK_INCDIR)
-
-ifeq ($(ARCH), WINNT)
-SETUP_SDK_FILES = setupsdk.tar.gz -unzip $(NSCP_DISTDIR)/setupsdk
-SETUPSDK_DEP = $(SETUPSDK_LIBPATH)/nssetup32.$(LIB_SUFFIX)
-SETUPSDKLINK = /LIBPATH:$(SETUPSDK_LIBPATH) nssetup32.$(LIB_SUFFIX)
-SETUPSDK_S_LINK = /LIBPATH:$(SETUPSDK_LIBPATH) nssetup32_s.$(LIB_SUFFIX)
-else
-SETUP_SDK_FILES = bin,lib,include
-SETUPSDK_DEP = $(SETUPSDK_LIBPATH)/libinstall.$(LIB_SUFFIX)
-SETUPSDKLINK = -L$(SETUPSDK_LIBPATH) -linstall
-SETUPSDK_S_LINK = $(SETUPSDKLINK)
-endif
-
-ifndef SETUPSDK_PULL_METHOD
-SETUPSDK_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(SETUPSDK_DEP): $(NSCP_DISTDIR)
-ifdef COMPONENT_DEPS
- $(FTP_PULL) -method $(SETUPSDK_PULL_METHOD) \
- -objdir $(SETUP_SDK_BUILD_DIR) -componentdir $(SETUPSDK_RELEASE) \
- -files $(SETUP_SDK_FILES)
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component SETUPSDK file $@" ; \
- fi
-
####################################################
# LDAP SDK
###################################################
-ifndef LDAP_VERSION
- LDAP_VERSION = $(LDAP_RELDATE)$(SEC_SUFFIX)
-endif
-LDAP_ROOT = $(NSCP_DISTDIR_FULL_RTL)/ldapsdk
-LDAPSDK_LIBPATH = $(LDAP_ROOT)/lib
-LDAPSDK_INCDIR = $(LDAP_ROOT)/include
-LDAPSDK_INCLUDE = -I$(LDAPSDK_INCDIR)
-ifndef LDAP_SBC
-# LDAP_SBC = $(COMPONENTS_DIR_DEV)
-LDAP_SBC = $(COMPONENTS_DIR)
+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
+else
+ LDAPSDK_LIBPATH = $(LDAP_ROOT)/lib
+ LDAPSDK_INCDIR = $(LDAP_ROOT)/include
+ LDAPSDK_BINPATH = $(LDAP_ROOT)/tools
endif
+LDAPSDK_INCLUDE = -I$(LDAPSDK_INCDIR)
# package the command line programs
-LDAPSDK_TOOLS = $(wildcard $(LDAP_ROOT)/tools/*$(EXE_SUFFIX))
+LDAPSDK_TOOLS = $(wildcard $(LDAPSDK_BINPATH)/ldap*$(EXE_SUFFIX))
BINS_TO_PKG_SHARED += $(LDAPSDK_TOOLS)
# package the include files - needed for the plugin API
LDAPSDK_INCLUDE_FILES = $(wildcard $(LDAPSDK_INCDIR)/*.h)
PACKAGE_SRC_DEST += $(subst $(SPACE),$(SPACE)plugins/slapd/slapi/include$(SPACE),$(LDAPSDK_INCLUDE_FILES))
PACKAGE_SRC_DEST += plugins/slapd/slapi/include
-LDAPOBJDIR = $(FULL_RTL_OBJDIR)
ifeq ($(ARCH), WINNT)
- ifeq ($(PROCESSOR), ALPHA)
- ifeq ($(DEBUG), full)
- LDAPOBJDIR = WINNTALPHA3.51_DBG.OBJ
- else
- LDAPOBJDIR = WINNTALPHA3.51_OPT.OBJ
- endif
- endif
-
- LDAP_RELEASE = $(LDAP_SBC)/$(LDAPCOMP_DIR)/$(LDAP_VERSION)/$(LDAPOBJDIR)
LDAP_LIBNAMES = ldapssl32v$(LDAP_SUF) ldap32v$(LDAP_SUF) ldappr32v$(LDAP_SUF)
LDAPDLL_NAME = $(addprefix ns, $(LDAP_LIBNAMES))
LDAPOBJNAME = $(addsuffix .$(LIB_SUFFIX), $(LDAPDLL_NAME))
LDAPLINK = /LIBPATH:$(LDAPSDK_LIBPATH) $(LDAPOBJNAME)
LDAP_NOSSL_LINK = /LIBPATH:$(LDAPSDK_LIBPATH) nsldap32v$(LDAP_SUF).$(LIB_SUFFIX)
LIBLDAPDLL_NAMES = $(addsuffix .dll, $(addprefix $(LDAP_LIBPATH)/, $(LDAPDLL_NAME)))
- LDAPSDK_DEP = $(LDAPSDK_LIBPATH)/nsldap32v$(LDAP_SUF).$(DLL_SUFFIX)
- LDAPSDK_PULL_LIBS = lib/nsldapssl32v$(LDAP_SUF).$(LIB_SUFFIX),lib/nsldapssl32v$(LDAP_SUF).$(LDAP_DLL_SUFFIX),lib/nsldap32v$(LDAP_SUF).$(LIB_SUFFIX),lib/nsldap32v$(LDAP_SUF).$(LDAP_DLL_SUFFIX),lib/nsldappr32v$(LDAP_SUF).$(LIB_SUFFIX),lib/nsldappr32v$(LDAP_SUF).$(LDAP_DLL_SUFFIX)
LIBS_TO_PKG += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(LDAPSDK_LIBPATH)/,$(LDAPDLL_NAME)))
- PACKAGE_SETUP_LIBS += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(LDAPSDK_LIBPATH)/,$(LDAPDLL_NAME)))
LIBS_TO_PKG_SHARED += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(LDAPSDK_LIBPATH)/,$(LDAPDLL_NAME)))
- LIBS_TO_PKG_CLIENTS += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(LDAPSDK_LIBPATH)/,$(LDAPDLL_NAME)))
-endif
-
-# override LDAP version in OS specific section
-ifneq ($(ARCH), WINNT)
-# LDAP Does not has PTH version, so here is the hack which treat non PTH
-# version as PTH version
- ifeq ($(USE_PTHREADS), 1)
- LDAP_RELEASE = $(LDAP_SBC)/$(LDAPCOMP_DIR)/$(LDAP_VERSION)/$(NSOBJDIR_NAME1)
- else
- LDAP_RELEASE = $(LDAP_SBC)/$(LDAPCOMP_DIR)/$(LDAP_VERSION)/$(LDAPOBJDIR)
+ ifeq ($(USE_SETUPSDK), 1)
+ PACKAGE_SETUP_LIBS += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(LDAPSDK_LIBPATH)/,$(LDAPDLL_NAME)))
+ endif
+ ifeq ($(USE_DSGW), 1)
+ LIBS_TO_PKG_CLIENTS += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(LDAPSDK_LIBPATH)/,$(LDAPDLL_NAME)))
endif
+else # not WINNT
LDAP_SOLIB_NAMES = ssldap$(LDAP_SUF)$(LDAP_DLL_PRESUF) ldap$(LDAP_SUF)$(LDAP_DLL_PRESUF) prldap$(LDAP_SUF)$(LDAP_DLL_PRESUF)
ifndef LDAP_NO_LIBLCACHE
LDAP_SOLIB_NAMES += lcache30$(LDAP_DLL_PRESUF)
@@ -520,489 +308,128 @@ ifneq ($(ARCH), WINNT)
LDAP_SOLIBS = $(addsuffix .$(LDAP_DLL_SUFFIX), $(addprefix $(LIB_PREFIX), $(LDAP_SOLIB_NAMES)))
LDAPOBJNAME = $(addsuffix .$(LIB_SUFFIX), $(addprefix $(LIB_PREFIX), $(LDAP_DOTALIB_NAMES))) \
$(LDAP_SOLIBS)
- LDAPSDK_DEP = $(LDAPSDK_LIBPATH)/libldap$(LDAP_SUF).$(DLL_SUFFIX)
LDAPLINK = -L$(LDAPSDK_LIBPATH) $(addprefix -l,$(LDAP_SOLIB_NAMES))
LDAP_NOSSL_LINK = -L$(LDAPSDK_LIBPATH) -lldap$(LDAP_SUF)$(LDAP_DLL_PRESUF)
- 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)
LIBS_TO_PKG += $(addprefix $(LDAPSDK_LIBPATH)/,$(LDAP_SOLIBS))
- PACKAGE_SETUP_LIBS += $(addprefix $(LDAPSDK_LIBPATH)/,$(LDAP_SOLIBS))
LIBS_TO_PKG_SHARED += $(addprefix $(LDAPSDK_LIBPATH)/,$(LDAP_SOLIBS))
- LIBS_TO_PKG_CLIENTS += $(addprefix $(LDAPSDK_LIBPATH)/,$(LDAP_SOLIBS))
+ ifeq ($(USE_SETUPSDK), 1)
+ PACKAGE_SETUP_LIBS += $(addprefix $(LDAPSDK_LIBPATH)/,$(LDAP_SOLIBS))
+ endif
+ ifeq ($(USE_DSGW), 1)
+ LIBS_TO_PKG_CLIENTS += $(addprefix $(LDAPSDK_LIBPATH)/,$(LDAP_SOLIBS))
+ endif
endif
-LDAP_LIBPATH = $(LDAP_ROOT)/lib
-LDAP_INCLUDE = $(LDAP_ROOT)/include
-LDAP_TOOLDIR = $(LDAP_ROOT)/tools
+LDAP_LIBPATH = $(LDAPSDK_LIBPATH)
+LDAP_INCLUDE = $(LDAPSDK_INCDIR)
+LDAP_TOOLDIR = $(LDAPSDK_BINPATH)
LIBLDAP = $(addprefix $(LDAP_LIBPATH)/, $(LDAPOBJNAME))
-LDAPSDK_FILES = include,$(LDAPSDK_PULL_LIBS),tools
-
-ifndef LDAPSDK_PULL_METHOD
-LDAPSDK_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(LDAPSDK_DEP): $(NSCP_DISTDIR_FULL_RTL)
-ifdef COMPONENT_DEPS
- mkdir -p $(LDAP_LIBPATH)
- $(FTP_PULL) -method $(LDAPSDK_PULL_METHOD) \
- -objdir $(LDAP_ROOT) -componentdir $(LDAP_RELEASE) \
- -files $(LDAPSDK_FILES)
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component LDAPSDK file $@" ; \
- fi
-
-# apache-axis java classes #######################################
-AXIS = axis-bin-$(AXIS_VERSION).zip
-AXIS_FILES = $(AXIS)
-AXIS_RELEASE = $(COMPONENTS_DIR)/axis
-#AXISJAR_DIR = $(AXISJAR_RELEASE)/$(AXISJAR_COMP)/$(AXISJAR_VERSION)
-AXIS_DIR = $(AXIS_RELEASE)/$(AXIS_VERSION)
-AXIS_FILE = $(CLASS_DEST)/$(AXIS)
-AXIS_DEP = $(AXIS_FILE)
-AXIS_REL_DIR=$(subst -bin,,$(subst .zip,,$(AXIS)))
-
-
-# This is java, so there is only one real platform subdirectory
-
-#PACKAGE_UNDER_JAVA += $(AXIS_FILE)
-
-ifndef AXIS_PULL_METHOD
-AXIS_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(AXIS_DEP): $(CLASS_DEST)
-ifdef COMPONENT_DEPS
- echo "Inside ftppull"
- $(FTP_PULL) -method $(COMPONENT_PULL_METHOD) \
- -objdir $(CLASS_DEST) -componentdir $(AXIS_DIR) \
- -files $(AXIS_FILES) -unzip $(CLASS_DEST)
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component AXIS files $@" ; \
- fi
-
-###########################################################
-
-
-# other dsml java classes #######################################
-DSMLJAR = activation.jar,jaxrpc-api.jar,jaxrpc.jar,saaj.jar,xercesImpl.jar,xml-apis.jar
-DSMLJAR_FILES = $(DSMLJAR)
-DSMLJAR_RELEASE = $(COMPONENTS_DIR)
-#DSMLJARJAR_DIR = $(DSMLJARJAR_RELEASE)/$(DSMLJARJAR_COMP)/$(DSMLJARJAR_VERSION)
-DSMLJAR_DIR = $(DSMLJAR_RELEASE)/dsmljars
-DSMLJAR_FILE = $(CLASS_DEST)
-DSMLJAR_DEP = $(CLASS_DEST)/activation.jar $(CLASS_DEST)/jaxrpc-api.jar $(CLASS_DEST)/jaxrpc.jar $(CLASS_DEST)/saaj.jar $(CLASS_DEST)/xercesImpl.jar $(CLASS_DEST)/xml-apis.jar
-ifndef DSMLJAR_PULL_METHOD
-DSMLJAR_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(DSMLJAR_DEP): $(CLASS_DEST)
-ifdef COMPONENT_DEPS
- echo "Inside ftppull"
- $(FTP_PULL) -method $(COMPONENT_PULL_METHOD) \
- -objdir $(CLASS_DEST) -componentdir $(DSMLJAR_DIR) \
- -files $(DSMLJAR_FILES)
-
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component DSMLJAR files $@" ; \
- fi
-
-###########################################################
-
-# XMLTOOLS java classes #######################################
-CRIMSONJAR = crimson.jar
-CRIMSON_LICENSE = LICENSE.crimson
-CRIMSONJAR_FILES = $(CRIMSONJAR),$(CRIMSON_LICENSE)
-CRIMSONJAR_RELEASE = $(COMPONENTS_DIR)
-CRIMSONJAR_DIR = $(CRIMSONJAR_RELEASE)/$(CRIMSONJAR_COMP)/$(CRIMSONJAR_VERSION)
-CRIMSONJAR_FILE = $(CLASS_DEST)/$(CRIMSONJAR)
-CRIMSONJAR_DEP = $(CRIMSONJAR_FILE) $(CLASS_DEST)/$(CRIMSON_LICENSE)
-
-
-# This is java, so there is only one real platform subdirectory
-
-PACKAGE_UNDER_JAVA += $(CRIMSONJAR_FILE)
-
-ifndef CRIMSONJAR_PULL_METHOD
-CRIMSONJAR_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(CRIMSONJAR_DEP): $(CLASS_DEST)
-ifdef COMPONENT_DEPS
- echo "Inside ftppull"
- $(FTP_PULL) -method $(COMPONENT_PULL_METHOD) \
- -objdir $(CLASS_DEST) -componentdir $(CRIMSONJAR_DIR) \
- -files $(CRIMSONJAR_FILES)
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component CRIMSONJAR files $@" ; \
- fi
-
-###########################################################
-
-# ANT java classes #######################################
-ifeq ($(BUILD_JAVA_CODE),1)
-# (we use ant for building some Java code)
-ANTJAR = ant.jar
-JAXPJAR = jaxp.jar
-ANT_FILES = $(ANTJAR) $(JAXPJAR)
-ANT_RELEASE = $(COMPONENTS_DIR)
-ANT_HOME = $(ANT_RELEASE)/$(ANT_COMP)/$(ANT_VERSION)
-ANT_DIR = $(ANT_HOME)/lib
-ANT_DEP = $(addprefix $(CLASS_DEST)/, $(ANT_FILES))
-ANT_CP = $(subst $(SPACE),$(PATH_SEP),$(ANT_DEP))
-ANT_PULL = $(subst $(SPACE),$(COMMA),$(ANT_FILES))
-
-ifndef ANT_PULL_METHOD
-ANT_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(ANT_DEP): $(CLASS_DEST) $(CRIMSONJAR_DEP)
-ifdef COMPONENT_DEPS
- echo "Inside ftppull"
- $(FTP_PULL) -method $(COMPONENT_PULL_METHOD) \
- -objdir $(CLASS_DEST) -componentdir $(ANT_DIR) \
- -files $(ANT_PULL)
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component ant files $@" ; \
- fi
-endif
-###########################################################
-
-# Servlet SDK classes #######################################
-SERVLETJAR = servlet.jar
-SERVLET_FILES = $(SERVLETJAR)
-SERVLET_RELEASE = $(COMPONENTS_DIR)
-SERVLET_DIR = $(SERVLET_RELEASE)/$(SERVLET_COMP)/$(SERVLET_VERSION)
-SERVLET_DEP = $(addprefix $(CLASS_DEST)/, $(SERVLET_FILES))
-SERVLET_CP = $(subst $(SPACE),$(PATH_SEP),$(SERVLET_DEP))
-SERVLET_PULL = $(subst $(SPACE),$(COMMA),$(SERVLET_FILES))
-
-ifndef SERVLET_PULL_METHOD
-SERVLET_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(SERVLET_DEP): $(CLASS_DEST)
-ifdef COMPONENT_DEPS
- echo "Inside ftppull"
- $(FTP_PULL) -method $(COMPONENT_PULL_METHOD) \
- -objdir $(CLASS_DEST) -componentdir $(SERVLET_DIR) \
- -files $(SERVLET_PULL)
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component servlet SDK files $@" ; \
- fi
-
-###########################################################
-
-# LDAP java classes #######################################
-LDAPJDK = ldapjdk.jar
-LDAPJDK_VERSION = $(LDAPJDK_RELDATE)
-LDAPJDK_RELEASE = $(COMPONENTS_DIR)
-LDAPJDK_DIR = $(LDAPJDK_RELEASE)
-LDAPJDK_IMPORT = $(LDAPJDK_RELEASE)/$(LDAPJDK_COMP)/$(LDAPJDK_VERSION)/$(NSOBJDIR_NAME)
-# This is java, so there is only one real platform subdirectory
-LDAPJARFILE=$(CLASS_DEST)/ldapjdk.jar
-LDAPJDK_DEP=$(LDAPJARFILE)
-
-#PACKAGE_UNDER_JAVA += $(LDAPJARFILE)
-
-ifndef LDAPJDK_PULL_METHOD
-LDAPJDK_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(LDAPJDK_DEP): $(CLASS_DEST)
-ifdef COMPONENT_DEPS
- $(FTP_PULL) -method $(LDAPJDK_PULL_METHOD) \
- -objdir $(CLASS_DEST) -componentdir $(LDAPJDK_IMPORT) \
- -files $(LDAPJDK)
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component LDAPJDK file $@" ; \
- fi
-
-###########################################################
-
-# MCC java classes - the Mission Control Console #########
-MCC_VERSION=$(MCC_RELDATE)$(SEC_SUFFIX)
-#
-MCCJAR = mcc$(MCC_REL).jar
-MCCJAR_EN = mcc$(MCC_REL)_en.jar
-NMCLFJAR = nmclf$(MCC_REL).jar
-NMCLFJAR_EN = nmclf$(MCC_REL)_en.jar
-BASEJAR = base.jar
-#MCC_RELEASE=$(COMPONENTS_DIR_DEV)
-MCC_RELEASE=$(COMPONENTS_DIR)
-MCC_JARDIR = $(MCC_RELEASE)/$(MCC_COMP)/$(MCC_VERSION)/jars
-MCCJARFILE=$(CLASS_DEST)/$(MCCJAR)
-NMCLFJARFILE=$(CLASS_DEST)/$(NMCLFJAR)
-BASEJARFILE=$(CLASS_DEST)/$(BASEJAR)
-
-MCC_DEP = $(BASEJARFILE)
-MCC_FILES=$(MCCJAR),$(MCCJAR_EN),$(NMCLFJAR),$(NMCLFJAR_EN),$(BASEJAR)
-
-#PACKAGE_UNDER_JAVA += $(addprefix $(CLASS_DEST)/,$(subst $(COMMA),$(SPACE),$(MCC_FILES)))
-
-ifndef MCC_PULL_METHOD
-MCC_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(MCC_DEP): $(CLASS_DEST)
-ifdef COMPONENT_DEPS
- $(FTP_PULL) -method $(MCC_PULL_METHOD) \
- -objdir $(CLASS_DEST) -componentdir $(MCC_JARDIR) \
- -files $(MCC_FILES)
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component MCC file $@" ; \
- fi
-
-###########################################################
-# LDAP Console java classes
-###########################################################
-LDAPCONSOLEJAR = ds$(LDAPCONSOLE_REL).jar
-LDAPCONSOLEJAR_EN = ds$(LDAPCONSOLE_REL)_en.jar
-
-LDAPCONSOLE_RELEASE=$(COMPONENTS_DIR_DEV)
-LDAPCONSOLE_JARDIR = $(LDAPCONSOLE_RELEASE)/$(LDAPCONSOLE_COMP)ext/$(LDAPCONSOLE_RELDATE)/jars
-LDAPCONSOLE_DEP = $(CLASS_DEST)/$(LDAPCONSOLEJAR)
-LDAPCONSOLE_FILES=$(LDAPCONSOLEJAR),$(LDAPCONSOLEJAR_EN)
-
-ifndef LDAPCONSOLE_PULL_METHOD
-LDAPCONSOLE_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(LDAPCONSOLE_DEP): $(CLASS_DEST)
-ifdef COMPONENT_DEPS
- $(FTP_PULL) -method $(LDAPCONSOLE_PULL_METHOD) \
- -objdir $(CLASS_DEST) -componentdir $(LDAPCONSOLE_JARDIR) \
- -files $(LDAPCONSOLE_FILES)
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component LDAPCONSOLE file $@" ; \
- fi
-
-###########################################################
-### Perldap package #######################################
-
-PERLDAP_COMPONENT_DIR = $(COMPONENTS_DIR)/perldap/$(PERLDAP_VERSION)/$(NSOBJDIR_NAME_32)
-PERLDAP_ZIP_FILE = perldap14.zip
-
-###########################################################
-
-# JSS classes - for the Mission Control Console ######
-JSSJAR = jss$(JSS_JAR_VERSION).jar
-JSSJARFILE = $(CLASS_DEST)/$(JSSJAR)
-JSS_RELEASE = $(COMPONENTS_DIR)/$(JSS_COMP)/$(JSS_VERSION)
-JSS_DEP = $(JSSJARFILE)
-
-#PACKAGE_UNDER_JAVA += $(JSSJARFILE)
-
-ifndef JSS_PULL_METHOD
-JSS_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(JSS_DEP): $(CLASS_DEST)
-ifdef COMPONENT_DEPS
-ifdef VSFTPD_HACK
-# work around vsftpd -L problem
- $(FTP_PULL) -method $(JSS_PULL_METHOD) \
- -objdir $(CLASS_DEST)/jss -componentdir $(JSS_RELEASE) \
- -files xpclass.jar
- mv $(CLASS_DEST)/jss/xpclass.jar $(CLASS_DEST)/$(JSSJAR)
- rm -rf $(CLASS_DEST)/jss
-else
- $(FTP_PULL) -method $(JSS_PULL_METHOD) \
- -objdir $(CLASS_DEST) -componentdir $(JSS_RELEASE) \
- -files $(JSSJAR)
-endif
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component JSS file $@" ; \
- fi
-
-###########################################################
+### SASL package ##########################################
-###########################################################
-### Admin Server package ##################################
-
-ADMIN_REL = $(ADM_VERSDIR)
-ADMIN_REL_DATE = $(ADM_VERSION)
-ADMIN_FILE = admserv.tar.gz
-ADMIN_FILE_TAR = admserv.tar
-ADMSDKOBJDIR = $(NSCONFIG)$(NSOBJDIR_TAG).OBJ
-IMPORTADMINSRV_BASE=$(COMPONENTS_DIR)/$(ADMIN_REL)/$(ADMIN_REL_DATE)
-IMPORTADMINSRV = $(IMPORTADMINSRV_BASE)/$(NSOBJDIR_NAME_32)
-ADMSERV_DIR=$(ABS_ROOT_PARENT)/dist/$(NSOBJDIR_NAME)/admserv
-ADMSERV_DEP = $(ADMSERV_DIR)/setup$(EXE_SUFFIX)
-
-ifdef FORTEZZA
- ADM_VERSION = $(ADM_RELDATE)F
+ifdef SASL_SOURCE_ROOT
+ SASL_LIBPATH = $(SASL_SOURCE_ROOT)/lib
+ SASL_BINPATH = $(SASL_SOURCE_ROOT)/bin
+ SASL_INCDIR = $(SASL_SOURCE_ROOT)/include
else
- ifeq ($(SECURITY), domestic)
- ADM_VERSION = $(ADM_RELDATE)D
- else
- ifneq ($(ARCH), IRIX)
- ADM_VERSION = $(ADM_RELDATE)E
- else
- ADM_VERSION = $(ADM_RELDATE)D
- endif
- endif
+ SASL_LIBPATH = $(SASL_BUILD_DIR)/lib
+ SASL_BINPATH = $(SASL_BUILD_DIR)/bin
+ SASL_INCDIR = $(SASL_BUILD_DIR)/include
endif
+SASL_INCLUDE = $(SASL_INCDIR)
+SASL_LIB_ROOT_NAME = sasl
+# for cyrus it's sasl2
+#SASL_LIB_ROOT_NAME = sasl2
-ADM_VERSION = $(ADM_RELDATE)$(SEC_SUFFIX)
-ADM_RELEASE = $(COMPONENTS_DIR)/$(ADM_VERSDIR)/$(ADM_VERSION)/$(NSOBJDIR_NAME)
-
-ifndef ADMSERV_PULL_METHOD
-ADMSERV_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-ifndef ADMSERV_DEPS
-ADMSERV_DEPS = $(COMPONENT_DEPS)
-endif
-#IMPORTADMINSRV = /share/builds/sbsrel1/admsvr/admsvr62/ships/20030702.2/spd04_Solaris8/SunOS5.8-domestic-optimize-normal
-#ADM_RELEASE = /share/builds/sbsrel1/admsvr/admsvr62/ships/20030702.2/spd04_Solaris8/SunOS5.8-domestic-optimize-normal
-$(ADMSERV_DEP): $(ABS_ROOT_PARENT)/dist/$(NSOBJDIR_NAME)
-ifdef ADMSERV_DEPS
- $(FTP_PULL) -method $(ADMSERV_PULL_METHOD) \
- -objdir $(ADMSERV_DIR) -componentdir $(IMPORTADMINSRV) \
- -files $(ADMIN_FILE) -unzip $(ADMSERV_DIR)
-endif
- @if [ ! -f $@ ] ; \
- then echo "Error: could not get component ADMINSERV file $@" ; \
- exit 1 ; \
- fi
-### Admin Server END ######################################
-
-
-
-### SASL package ##########################################
-
-SASL_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/sasl
-SASL_RELEASE = $(COMPONENTS_DIR)/sasl/$(SASL_VERSDIR)/$(SASL_RELDATE)/$(NSOBJDIR_NAME)
-SASL_LIBPATH = $(SASL_BUILD_DIR)/lib
-SASL_BINPATH = $(SASL_BUILD_DIR)/bin
-SASL_INCLUDE = $(SASL_BUILD_DIR)/include
-SASL_DEP = $(SASL_INCLUDE)/sasl.h
ifeq ($(ARCH), WINNT)
-SASL_LINK = /LIBPATH:$(SASL_LIBPATH) sasl.lib
+ SASL_LINK = /LIBPATH:$(SASL_LIBPATH) $(SASL_LIB_ROOT_NAME).lib
else
-ifeq ($(ARCH), SOLARIS)
-GSSAPI_LIBS=-lgss
-endif
+ ifeq ($(ARCH), SOLARIS)
+ GSSAPI_LIBS=-lgss
+ endif
#ifeq ($(ARCH), HPUX)
-GSSAPI_LIBS=-lgss
+ GSSAPI_LIBS=-lgss
#endif
-ifeq ($(ARCH), Linux)
-GSSAPI_LIBS=-L/usr/kerberos/lib -lgssapi_krb5
-endif
-SASL_LINK = -L$(SASL_LIBPATH) -lsasl $(GSSAPI_LIBS)
-#SASL_LINK = -L$(SASL_LIBPATH) -lsasl
-endif
-
-ifndef SASL_PULL_METHOD
-SASL_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(SASL_DEP): $(NSCP_DISTDIR_FULL_RTL)
-ifdef COMPONENT_DEPS
-ifdef VSFTPD_HACK
- $(FTP_PULL) -method $(SASL_PULL_METHOD) \
- -objdir $(SASL_BUILD_DIR) -componentdir $(SASL_RELEASE) \
- -files lib
- $(FTP_PULL) -method $(SASL_PULL_METHOD) \
- -objdir $(SASL_INCLUDE) -componentdir $(SASL_RELEASE)/../public \
- -files .\*.h
-else
- $(FTP_PULL) -method $(SASL_PULL_METHOD) \
- -objdir $(SASL_BUILD_DIR) -componentdir $(SASL_RELEASE) \
- -files lib,include
-
-endif
-endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component SASL file $@" ; \
- fi
-
-###########################################################
-
-### JSP compiler package ##################################
-
-JSPC_REL = $(JSPC_VERSDIR)
-JSPC_REL_DATE = $(JSPC_VERSION)
-JSPC_FILES = jasper-compiler.jar jasper-runtime.jar
-JSPC_RELEASE = $(COMPONENTS_DIR)
-JSPC_DIR = $(JSPC_RELEASE)/$(JSPC_COMP)/$(JSPC_VERSION)
-JSPC_DEP = $(addprefix $(CLASS_DEST)/, $(JSPC_FILES))
-JSPC_CP = $(subst $(SPACE),$(PATH_SEP),$(JSPC_DEP))
-JSPC_PULL = $(subst $(SPACE),$(COMMA),$(JSPC_FILES))
-
-ifndef JSPC_PULL_METHOD
-JSPC_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
-
-$(JSPC_DEP): $(CLASS_DEST)
-ifdef COMPONENT_DEPS
- echo "Inside ftppull"
- $(FTP_PULL) -method $(COMPONENT_PULL_METHOD) \
- -objdir $(CLASS_DEST) -componentdir $(JSPC_DIR) \
- -files $(JSPC_PULL)
+ ifeq ($(ARCH), Linux)
+ GSSAPI_LIBS=-L/usr/kerberos/lib -lgssapi_krb5
+ endif
+ SASL_LINK = -L$(SASL_LIBPATH) -l$(SASL_LIB_ROOT_NAME) $(GSSAPI_LIBS)
+#SASL_LINK = -L$(SASL_LIBPATH) -l$(SASL_LIB_ROOT_NAME)
endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component jspc files $@" ; \
- fi
###########################################################
### ICU package ##########################################
ICU_LIB_VERSION = 24
-ICU_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/libicu
-ICU_RELEASE = $(COMPONENTS_DIR)/libicu/$(ICU_VERSDIR)/$(ICU_RELDATE)/$(NSOBJDIR_NAME)
-ICU_LIBPATH = $(ICU_BUILD_DIR)/lib
-ICU_BINPATH = $(ICU_BUILD_DIR)/bin
-ICU_INCPATH = $(ICU_BUILD_DIR)/include
-ICU_DEP = $(ICU_INCPATH)/unicode/unicode.h
-ICU_INCLUDE = -I$(ICU_INCPATH)
-ifeq ($(ARCH), WINNT)
-ifeq ($(BUILD_DEBUG), optimize)
-ICU_LIB_SUF=
+ifdef ICU_SOURCE_ROOT
+ ICU_LIBPATH = $(ICU_SOURCE_ROOT)/built/lib
+ ICU_BINPATH = $(ICU_SOURCE_ROOT)/built/bin
+ ICU_INCPATH = $(ICU_SOURCE_ROOT)/built/include
else
-ICU_LIB_SUF=d
+ ICU_LIBPATH = $(ICU_BUILD_DIR)/lib
+ ICU_BINPATH = $(ICU_BUILD_DIR)/bin
+ ICU_INCPATH = $(ICU_BUILD_DIR)/include
endif
-ICU_LIBNAMES = icuin$(ICU_LIB_SUF) icuuc$(ICU_LIB_SUF) icudata
-ICU_DLLNAMES = icuin$(ICU_LIB_VERSION)$(ICU_LIB_SUF) icuuc$(ICU_LIB_VERSION)$(ICU_LIB_SUF) icudt$(ICU_LIB_VERSION)l
-ICULINK = /LIBPATH:$(ICU_LIBPATH) $(addsuffix .$(LIB_SUFFIX),$(ICU_LIBNAMES))
-LIBS_TO_PKG += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_BINPATH)/,$(ICU_DLLNAMES)))
-LIBS_TO_PKG_SHARED += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_BINPATH)/,$(ICU_DLLNAMES)))
-LIBS_TO_PKG_CLIENTS += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_BINPATH)/,$(ICU_DLLNAMES)))
+ICU_INCLUDE = -I$(ICU_INCPATH)
+ifeq ($(ARCH), WINNT)
+ ifeq ($(BUILD_DEBUG), optimize)
+ ICU_LIB_SUF=
+ else
+ ICU_LIB_SUF=d
+ endif
+ ICU_LIBNAMES = icuin$(ICU_LIB_SUF) icuuc$(ICU_LIB_SUF) icudata
+ ICU_DLLNAMES = icuin$(ICU_LIB_VERSION)$(ICU_LIB_SUF) icuuc$(ICU_LIB_VERSION)$(ICU_LIB_SUF) icudt$(ICU_LIB_VERSION)l
+ ICULINK = /LIBPATH:$(ICU_LIBPATH) $(addsuffix .$(LIB_SUFFIX),$(ICU_LIBNAMES))
+ LIBS_TO_PKG += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_BINPATH)/,$(ICU_DLLNAMES)))
+ LIBS_TO_PKG_SHARED += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_BINPATH)/,$(ICU_DLLNAMES)))
+ ifeq ($(USE_DSGW), 1)
+ LIBS_TO_PKG_CLIENTS += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_BINPATH)/,$(ICU_DLLNAMES)))
+ endif
else
-ICU_LIBNAMES = icui18n icuuc icudata
-ICULINK = -L$(ICU_LIBPATH) $(addprefix -l, $(ICU_LIBNAMES))
-LIBS_TO_PKG += $(addsuffix .$(ICU_LIB_VERSION),$(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_LIBPATH)/,$(addprefix lib,$(ICU_LIBNAMES)))))
-LIBS_TO_PKG_SHARED += $(addsuffix .$(ICU_LIB_VERSION),$(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_LIBPATH)/,$(addprefix lib,$(ICU_LIBNAMES)))))
-LIBS_TO_PKG_CLIENTS += $(addsuffix .$(ICU_LIB_VERSION),$(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_LIBPATH)/,$(addprefix lib,$(ICU_LIBNAMES)))))
+ ICU_LIBNAMES = icui18n icuuc icudata
+ ICULINK = -L$(ICU_LIBPATH) $(addprefix -l, $(ICU_LIBNAMES))
+ LIBS_TO_PKG += $(addsuffix .$(ICU_LIB_VERSION),$(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_LIBPATH)/,$(addprefix lib,$(ICU_LIBNAMES)))))
+ LIBS_TO_PKG_SHARED += $(addsuffix .$(ICU_LIB_VERSION),$(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_LIBPATH)/,$(addprefix lib,$(ICU_LIBNAMES)))))
+ ifeq ($(USE_DSGW), 1)
+ LIBS_TO_PKG_CLIENTS += $(addsuffix .$(ICU_LIB_VERSION),$(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_LIBPATH)/,$(addprefix lib,$(ICU_LIBNAMES)))))
+ endif
#LIBS_TO_PKG = $(addsuffix $(addprefix lib,$(ICU_LIBNAMES))
endif
BINS_TO_PKG_SHARED += $(ICU_BINPATH)/uconv$(EXE_SUFFIX)
-ifndef ICU_PULL_METHOD
-ICU_PULL_METHOD = $(COMPONENT_PULL_METHOD)
-endif
+###########################################################
-$(ICU_DEP): $(NSCP_DISTDIR_FULL_RTL)
-ifdef COMPONENT_DEPS
- $(FTP_PULL) -method $(ICU_PULL_METHOD) \
- -objdir $(ICU_BUILD_DIR) -componentdir $(ICU_RELEASE) \
- -files lib,include,bin
+### DB component (Berkeley DB) ############################
+DB_LIBNAME=lib$(DB_MAJOR_MINOR)
+ifdef DB_SOURCE_ROOT
+ DB_INCLUDE =$(DB_SOURCE_ROOT)/built
+ DB_LIBPATH =$(DB_SOURCE_ROOT)/built/.libs
+ DB_BINPATH =$(DB_SOURCE_ROOT)/built
+else
+ DB_INCLUDE =$(db_path_config)/include
+ DB_LIBPATH =$(db_path_config)/lib
+ DB_BINPATH =$(db_path_config)/bin
endif
- -@if [ ! -f $@ ] ; \
- then echo "Error: could not get component ICU file $@" ; \
- fi
+ifeq ($(ARCH), WINNT)
+ db_import_lib_suffix =$(LIB_SUFFIX)
+ DB_LIB =$(DB_LIBPATH)/$(DB_LIBNAME).$(db_import_lib_suffix)
+ DB_STATIC_LIB =$(DB_LIBPATH)/$(DB_LIBNAME).$(LIB_SUFFIX)
+else # not WINNT
+ db_import_lib_suffix =$(DLL_SUFFIX)
+ DB_LIB =-L$(DB_LIBPATH) -l$(DB_MAJOR_MINOR)
+# XXXsspitzer: we need the spinlock symbols staticly linked in to libdb
+ DB_STATIC_LIB =-L$(DB_LIBPATH) -ldbs
+endif # not WINNT
-###########################################################
+# libdb only needs to be in the server directory since only the server uses it
+PACKAGE_SRC_DEST += $(wildcard $(DB_LIBPATH)/*.$(DLL_SUFFIX)) bin/slapd/server
+
+### DB component (Berkeley DB) ############################
+
+# must define dependencies last because they depend on the definitions above
+ifeq ($(INTERNAL_BUILD), 1)
+include $(BUILD_ROOT)/internal_comp_deps.mk
+endif
diff --git a/internal_buildpaths.mk b/internal_buildpaths.mk
new file mode 100644
index 00000000..e1ad4052
--- /dev/null
+++ b/internal_buildpaths.mk
@@ -0,0 +1,90 @@
+#
+# BEGIN COPYRIGHT BLOCK
+# Copyright (C) 2005 Red Hat, Inc.
+# All rights reserved.
+# END COPYRIGHT BLOCK
+#
+# This file is where you tell the build process where to find the
+# various components used during the build process.
+
+# You can either use components built locally from source or
+# pre-built components. The reason for the different macros
+# for SOURCE and BUILD is that the locations for the libs, includes,
+# etc. are usually different for packages built from source vs.
+# pre-built packages. As an example, when building NSPR from
+# source, the includes are in mozilla/dist/$(OBJDIR_NAME)/include
+# where OBJDIR_NAME includes the OS, arch, compiler, thread model, etc.
+# When using the pre-built NSPR from Mozilla FTP, the include files
+# are just in nsprdir/include. This is why we have to make the
+# distinction between a SOURCE component and a BUILD (pre-built)
+# component. See components.mk for the gory details.
+
+# For each component, specify the source root OR the pre-built
+# component directory. If both a SOURCE_ROOT and a BUILD_DIR are
+# defined for a component, the SOURCE_ROOT will be used - don't do
+# this, it's confusing.
+
+# For the Mozilla components, if using source for all of them,
+# you can just define MOZILLA_SOURCE_ROOT - the build will
+# assume all of them have been built in that same directory
+# (as per the recommended build instructions)
+
+# For all components, the recommended way is to put each
+# component in a subdirectory of the parent directory of
+# BUILD_ROOT, both with pre-built and source components
+
+# work around vsftpd -L problem
+ifeq ($(COMPONENT_PULL_METHOD), FTP)
+ifdef USING_VSFTPD
+VSFTPD_HACK=1
+endif
+endif
+
+#MOZILLA_SOURCE_ROOT = $(BUILD_ROOT)/../mozilla
+
+#NSPR_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
+ifndef NSPR_SOURCE_ROOT
+NSPR_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/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
+
+#DBM_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
+ifndef DBM_SOURCE_ROOT
+DBM_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/dbm
+endif # DBM_SOURCE_ROOT
+
+#SECURITY_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
+ifndef SECURITY_SOURCE_ROOT
+SECURITY_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/nss
+endif # SECURITY_SOURCE_ROOT
+
+#SVRCORE_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
+ifndef SVRCORE_SOURCE_ROOT
+SVRCORE_BUILD_DIR = $(NSCP_DISTDIR)/svrcore
+endif # SVRCORE_SOURCE_ROOT
+
+#LDAPSDK_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)
+ifndef LDAPSDK_SOURCE_ROOT
+LDAP_ROOT = $(NSCP_DISTDIR_FULL_RTL)/ldapsdk
+endif # LDAPSDK_SOURCE_ROOT
+
+#SASL_SOURCE_ROOT = $(BUILD_ROOT)/../cyrus-sasl-2.1.20
+ifndef SASL_SOURCE_ROOT
+SASL_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/sasl
+endif # SASL_SOURCE_ROOT
+
+#ICU_SOURCE_ROOT = $(BUILD_ROOT)/../icu
+ifndef ICU_SOURCE_ROOT
+ICU_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/libicu
+endif # ICU_SOURCE_ROOT
+
+#DB_SOURCE_ROOT = $(BUILD_ROOT)/../db-4.2.52.NC
+# DB_MAJOR_MINOR is the root name for the db shared library
+# source builds use db-4.2 - uncomment this if using source
+#DB_MAJOR_MINOR := db-4.2
+ifndef DB_SOURCE_ROOT
+DB_MAJOR_MINOR := db42
+component_name:=$(DB_MAJOR_MINOR)
+db_path_config =$(NSCP_DISTDIR)/$(component_name)
+endif # DB_SOURCE_ROOT
diff --git a/internal_comp_deps.mk b/internal_comp_deps.mk
new file mode 100644
index 00000000..cdf647b7
--- /dev/null
+++ b/internal_comp_deps.mk
@@ -0,0 +1,703 @@
+#
+# BEGIN COPYRIGHT BLOCK
+# Copyright (C) 2005 Red Hat, Inc.
+# All rights reserved.
+# END COPYRIGHT BLOCK
+#
+# This file defines dependencies for components and
+# tells how to satisfy thoes dependencies
+
+# For internal components, we use ftp_puller_new.pl
+# We should consider using wget or something like that
+# in the future.
+
+ifndef NSPR_SOURCE_ROOT
+NSPR_IMPORT = $(COMPONENTS_DIR)/nspr20/$(NSPR_RELDATE)/$(FULL_RTL_OBJDIR)
+NSPR_DEP = $(NSPR_LIBPATH)/libnspr4.$(LIB_SUFFIX)
+
+ifndef NSPR_PULL_METHOD
+NSPR_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(NSPR_DEP): $(NSCP_DISTDIR_FULL_RTL)
+ifdef COMPONENT_DEPS
+ $(FTP_PULL) -method $(NSPR_PULL_METHOD) \
+ -objdir $(NSPR_BUILD_DIR) -componentdir $(NSPR_IMPORT) \
+ -files lib,include
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component NSPR file $@" ; \
+ fi
+endif # NSPR_SOURCE_ROOT
+
+ifndef DBM_SOURCE_ROOT
+DBM_IMPORT = $(COMPONENTS_DIR)/dbm/$(DBM_RELDATE)/$(NSOBJDIR_NAME)
+ifeq ($(ARCH), WINNT)
+ DBM_DEP = $(DBM_LIBPATH)/dbm.$(LIB_SUFFIX)
+else
+ DBM_DEP = $(DBM_LIBPATH)/libdbm.$(LIB_SUFFIX)
+endif
+
+ifndef DBM_PULL_METHOD
+DBM_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(DBM_DEP): $(NSCP_DISTDIR_FULL_RTL)
+ifdef COMPONENT_DEPS
+ $(FTP_PULL) -method $(DBM_PULL_METHOD) \
+ -objdir $(DBM_BUILD_DIR) -componentdir $(DBM_IMPORT)/.. \
+ -files xpheader.jar -unzip $(DBM_INCDIR)
+ $(FTP_PULL) -method $(DBM_PULL_METHOD) \
+ -objdir $(DBM_BUILD_DIR) -componentdir $(DBM_IMPORT) \
+ -files mdbinary.jar -unzip $(DBM_BUILD_DIR)
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component DBM file $@" ; \
+ fi
+endif # DBM_SOURCE_ROOT
+
+ifndef SECURITY_SOURCE_ROOT
+SECURITY_IMPORT = $(COMPONENTS_DIR)/nss/$(SECURITY_RELDATE)/$(FULL_RTL_OBJDIR)
+ifeq ($(ARCH), WINNT)
+ SECURITY_DEP = $(SECURITY_LIBPATH)/ssl3.$(DLL_SUFFIX)
+else
+ SECURITY_DEP = $(SECURITY_LIBPATH)/libssl3.$(DLL_SUFFIX)
+endif
+
+ifdef VSFTPD_HACK
+SECURITY_FILES=lib,bin/$(subst $(SPACE),$(COMMA)bin/,$(SECURITY_TOOLS))
+else
+SECURITY_FILES=lib,include,bin/$(subst $(SPACE),$(COMMA)bin/,$(SECURITY_TOOLS))
+endif
+
+ifndef SECURITY_PULL_METHOD
+SECURITY_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(SECURITY_DEP): $(NSCP_DISTDIR_FULL_RTL)
+ifdef COMPONENT_DEPS
+ mkdir -p $(SECURITY_BINPATH)
+ $(FTP_PULL) -method $(SECURITY_PULL_METHOD) \
+ -objdir $(SECURITY_BUILD_DIR) -componentdir $(SECURITY_IMPORT) \
+ -files $(SECURITY_FILES)
+ifdef VSFTPD_HACK
+# work around vsftpd -L problem
+ $(FTP_PULL) -method $(SECURITY_PULL_METHOD) \
+ -objdir $(SECURITY_BUILD_DIR) -componentdir $(COMPONENTS_DIR)/nss/$(SECURITY_RELDATE) \
+ -files include
+endif
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component NSS file $@" ; \
+ fi
+endif # SECURITY_SOURCE_ROOT
+
+ifndef SVRCORE_SOURCE_ROOT
+SVRCORE_IMPORT = $(COMPONENTS_DIR)/svrcore/$(SVRCORE_RELDATE)/$(NSOBJDIR_NAME)
+#SVRCORE_IMPORT = $(COMPONENTS_DIR_DEV)/svrcore/$(SVRCORE_RELDATE)/$(NSOBJDIR_NAME)
+ifeq ($(ARCH), WINNT)
+ SVRCORE_DEP = $(SVRCORE_LIBPATH)/svrcore.$(LIB_SUFFIX)
+else
+ SVRCORE_DEP = $(SVRCORE_LIBPATH)/libsvrcore.$(LIB_SUFFIX)
+endif
+
+ifndef SVRCORE_PULL_METHOD
+SVRCORE_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(SVRCORE_DEP): $(NSCP_DISTDIR)
+ifdef COMPONENT_DEPS
+ $(FTP_PULL) -method $(SVRCORE_PULL_METHOD) \
+ -objdir $(SVRCORE_BUILD_DIR) -componentdir $(SVRCORE_IMPORT)/.. \
+ -files xpheader.jar -unzip $(SVRCORE_INCDIR)
+ $(FTP_PULL) -method $(SVRCORE_PULL_METHOD) \
+ -objdir $(SVRCORE_BUILD_DIR) -componentdir $(SVRCORE_IMPORT) \
+ -files mdbinary.jar -unzip $(SVRCORE_BUILD_DIR)
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component SVRCORE file $@" ; \
+ fi
+endif # SVRCORE_SOURCE_ROOT
+
+ifndef LDAPSDK_SOURCE_ROOT
+ifndef LDAP_VERSION
+ LDAP_VERSION = $(LDAP_RELDATE)$(SEC_SUFFIX)
+endif
+ifndef LDAP_SBC
+# LDAP_SBC = $(COMPONENTS_DIR_DEV)
+LDAP_SBC = $(COMPONENTS_DIR)
+endif
+LDAPOBJDIR = $(FULL_RTL_OBJDIR)
+# LDAP does not have PTH version, so here is the hack which treat non PTH
+# version as PTH version
+ifeq ($(USE_PTHREADS), 1)
+ LDAP_RELEASE = $(LDAP_SBC)/$(LDAPCOMP_DIR)/$(LDAP_VERSION)/$(NSOBJDIR_NAME1)
+else
+ LDAP_RELEASE = $(LDAP_SBC)/$(LDAPCOMP_DIR)/$(LDAP_VERSION)/$(LDAPOBJDIR)
+endif
+ifeq ($(ARCH), WINNT)
+ LDAPSDK_DEP = $(LDAPSDK_LIBPATH)/nsldap32v$(LDAP_SUF).$(DLL_SUFFIX)
+ LDAPSDK_PULL_LIBS = lib/nsldapssl32v$(LDAP_SUF).$(LIB_SUFFIX),lib/nsldapssl32v$(LDAP_SUF).$(LDAP_DLL_SUFFIX),lib/nsldap32v$(LDAP_SUF).$(LIB_SUFFIX),lib/nsldap32v$(LDAP_SUF).$(LDAP_DLL_SUFFIX),lib/nsldappr32v$(LDAP_SUF).$(LIB_SUFFIX),lib/nsldappr32v$(LDAP_SUF).$(LDAP_DLL_SUFFIX)
+else
+ LDAPSDK_DEP = $(LDAPSDK_LIBPATH)/libldap$(LDAP_SUF).$(DLL_SUFFIX)
+ 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
+
+ifndef LDAPSDK_PULL_METHOD
+LDAPSDK_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(LDAPSDK_DEP): $(NSCP_DISTDIR_FULL_RTL)
+ifdef COMPONENT_DEPS
+ mkdir -p $(LDAP_LIBPATH)
+ $(FTP_PULL) -method $(LDAPSDK_PULL_METHOD) \
+ -objdir $(LDAP_ROOT) -componentdir $(LDAP_RELEASE) \
+ -files include,$(LDAPSDK_PULL_LIBS),tools
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component LDAPSDK file $@" ; \
+ fi
+endif # LDAPSDK_SOURCE_ROOT
+
+ifndef SASL_SOURCE_ROOT
+#SASL_RELEASE = $(COMPONENTS_DIR_DEV)/sasl/$(SASL_VERSDIR)/$(SASL_RELDATE)/$(NSOBJDIR_NAME)
+SASL_RELEASE = $(COMPONENTS_DIR)/sasl/$(SASL_VERSDIR)/$(SASL_RELDATE)/$(NSOBJDIR_NAME)
+SASL_DEP = $(SASL_INCLUDE)/sasl.h
+ifndef SASL_PULL_METHOD
+SASL_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(SASL_DEP): $(NSCP_DISTDIR_FULL_RTL)
+ifdef COMPONENT_DEPS
+ $(FTP_PULL) -method $(SASL_PULL_METHOD) \
+ -objdir $(SASL_BUILD_DIR) -componentdir $(SASL_RELEASE) \
+ -files lib,include
+
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component SASL file $@" ; \
+ fi
+endif # SASL_SOURCE_ROOT
+
+ifndef ICU_SOURCE_ROOT
+ICU_RELEASE = $(COMPONENTS_DIR)/libicu/$(ICU_VERSDIR)/$(ICU_RELDATE)/$(NSOBJDIR_NAME)
+ICU_DEP = $(ICU_INCPATH)/unicode/ucol.h
+ifndef ICU_PULL_METHOD
+ICU_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(ICU_DEP): $(NSCP_DISTDIR_FULL_RTL)
+ifdef COMPONENT_DEPS
+ $(FTP_PULL) -method $(ICU_PULL_METHOD) \
+ -objdir $(ICU_BUILD_DIR) -componentdir $(ICU_RELEASE) \
+ -files lib,include,bin
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component ICU file $@" ; \
+ fi
+endif # ICU_SOURCE_ROOT
+
+ifndef DB_SOURCE_ROOT
+#if no version specified, we'll use the latest one
+ifndef DB_VERSION
+ DB_VERSION=20040130
+endif
+# define the paths to the component parts
+db_components_share=$(COMPONENTS_DIR)/$(component_name)
+MY_NSOBJDIR_TAG=$(NSOBJDIR_TAG).OBJ
+db_release_config =$(db_components_share)/$(DB_VERSION)/$(NSCONFIG_NOTAG)$(NS64TAG)$(MY_NSOBJDIR_TAG)
+# add ",bin" to DB_FILES if you want the programs like db_verify, db_recover, etc.
+DB_FILES=include,lib,bin
+
+ifeq ($(ARCH), WINNT)
+ DB_LIB_DEP =$(DB_STATIC_LIB)
+else # not WINNT
+ DB_LIB_DEP =$(DB_LIBPATH)/$(DB_LIBNAME).$(DLL_SUFFIX)
+endif # not WINNT
+
+ifndef DB_PULL_METHOD
+DB_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(DB_LIB_DEP): $(NSCP_DISTDIR)
+ifdef COMPONENT_DEPS
+ $(FTP_PULL) -method $(DB_PULL_METHOD) \
+ -objdir $(db_path_config) -componentdir $(db_release_config) \
+ -files $(DB_FILES)
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component $(component_name) file $@" ; \
+ fi
+endif # DB_SOURCE_ROOT
+
+######## END OF OPEN SOURCE COMPONENTS ######################
+
+######## The rest of these components are internal only (for now)
+
+# ADMINUTIL library #######################################
+ADMINUTIL_VERSION=$(ADMINUTIL_RELDATE)$(SEC_SUFFIX)
+ADMINUTIL_BASE=$(ADMINUTIL_VERSDIR)/${ADMINUTIL_VERSION}
+ADMSDKOBJDIR = $(FULL_RTL_OBJDIR)
+ADMINUTIL_IMPORT=$(COMPONENTS_DIR)/${ADMINUTIL_BASE}/$(NSOBJDIR_NAME)
+# this is the base directory under which the component's files will be found
+# during the build process
+ADMINUTIL_BUILD_DIR=$(NSCP_DISTDIR_FULL_RTL)/adminutil
+ADMINUTIL_LIBPATH=$(ADMINUTIL_BUILD_DIR)/lib
+ADMINUTIL_INCPATH=$(ADMINUTIL_BUILD_DIR)/include
+
+PACKAGE_SRC_DEST += $(ADMINUTIL_LIBPATH)/property bin/slapd/lib
+LIBS_TO_PKG += $(wildcard $(ADMINUTIL_LIBPATH)/*.$(DLL_SUFFIX))
+LIBS_TO_PKG_CLIENTS += $(wildcard $(ADMINUTIL_LIBPATH)/*.$(DLL_SUFFIX))
+
+#
+# Libadminutil
+#
+ADMINUTIL_DEP = $(ADMINUTIL_LIBPATH)/libadminutil$(ADMINUTIL_VER).$(LIB_SUFFIX)
+ifeq ($(ARCH), WINNT)
+ADMINUTIL_LINK = /LIBPATH:$(ADMINUTIL_LIBPATH) libadminutil$(ADMINUTIL_VER).$(LIB_SUFFIX)
+ADMINUTIL_S_LINK = /LIBPATH:$(ADMINUTIL_LIBPATH) libadminutil_s$(ADMINUTIL_VER).$(LIB_SUFFIX)
+LIBADMINUTILDLL_NAMES = $(ADMINUTIL_LIBPATH)/libadminutil$(ADMINUTIL_VER).$(DLL_SUFFIX)
+else
+ADMINUTIL_LINK=-L$(ADMINUTIL_LIBPATH) -ladminutil$(ADMINUTIL_VER)
+endif
+ADMINUTIL_INCLUDE=-I$(ADMINUTIL_INCPATH) \
+ -I$(ADMINUTIL_INCPATH)/libadminutil \
+ -I$(ADMINUTIL_INCPATH)/libadmsslutil
+
+ifndef ADMINUTIL_PULL_METHOD
+ADMINUTIL_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(ADMINUTIL_DEP): ${NSCP_DISTDIR_FULL_RTL}
+ifdef COMPONENT_DEPS
+ $(FTP_PULL) -method $(ADMINUTIL_PULL_METHOD) \
+ -objdir $(ADMINUTIL_BUILD_DIR) \
+ -componentdir $(ADMINUTIL_IMPORT) \
+ -files include,lib
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component adminutil file $@" ; \
+ fi
+
+###########################################################
+# Peer
+
+PEER_BUILD_DIR = $(NSCP_DISTDIR)/peer
+ifeq ($(ARCH), WINNT)
+# PEER_RELEASE = $(COMPONENTS_DIR)/peer/$(PEER_RELDATE)
+# PEER_FILES = include
+else
+PEER_RELEASE = $(COMPONENTS_DIR)/peer/$(PEER_RELDATE)/$(NSOBJDIR_NAME)
+PEER_FILES = obj
+PEER_DEP = $(PEER_OBJPATH)/ns-ldapagt
+endif
+# PEER_MGMTPATH = $(PEER_BUILD_DIR)/dev
+# PEER_INCDIR = $(PEER_BUILD_DIR)/include
+# PEER_BINPATH = $(PEER_BUILD_DIR)/dev
+PEER_OBJPATH = $(PEER_BUILD_DIR)/obj
+# PEER_INCLUDE = -I$(PEER_INCDIR)
+
+ifndef PEER_PULL_METHOD
+PEER_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(PEER_DEP): $(NSCP_DISTDIR)
+ifdef COMPONENT_DEPS
+ $(FTP_PULL) -method $(PEER_PULL_METHOD) \
+ -objdir $(PEER_BUILD_DIR) -componentdir $(PEER_RELEASE) \
+ -files $(PEER_FILES)
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component PEER file $@" ; \
+ fi
+endif
+
+###########################################################
+
+### SETUPSDK #############################
+# this is where the build looks for setupsdk components
+SETUP_SDK_BUILD_DIR = $(NSCP_DISTDIR)/setupsdk
+SETUPSDK_VERSION = $(SETUP_SDK_RELDATE)$(SEC_SUFFIX)
+SETUPSDK_RELEASE = $(COMPONENTS_DIR)/setupsdk/$(SETUPSDK_VERSDIR)/$(SETUPSDK_VERSION)/$(NSOBJDIR_NAME)
+SETUPSDK_LIBPATH = $(SETUP_SDK_BUILD_DIR)/lib
+SETUPSDK_INCDIR = $(SETUP_SDK_BUILD_DIR)/include
+SETUPSDK_BINPATH = $(SETUP_SDK_BUILD_DIR)/bin
+SETUPSDK_INCLUDE = -I$(SETUPSDK_INCDIR)
+
+ifeq ($(ARCH), WINNT)
+SETUP_SDK_FILES = setupsdk.tar.gz -unzip $(NSCP_DISTDIR)/setupsdk
+SETUPSDK_DEP = $(SETUPSDK_LIBPATH)/nssetup32.$(LIB_SUFFIX)
+SETUPSDKLINK = /LIBPATH:$(SETUPSDK_LIBPATH) nssetup32.$(LIB_SUFFIX)
+SETUPSDK_S_LINK = /LIBPATH:$(SETUPSDK_LIBPATH) nssetup32_s.$(LIB_SUFFIX)
+else
+SETUP_SDK_FILES = bin,lib,include
+SETUPSDK_DEP = $(SETUPSDK_LIBPATH)/libinstall.$(LIB_SUFFIX)
+SETUPSDKLINK = -L$(SETUPSDK_LIBPATH) -linstall
+SETUPSDK_S_LINK = $(SETUPSDKLINK)
+endif
+
+ifndef SETUPSDK_PULL_METHOD
+SETUPSDK_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(SETUPSDK_DEP): $(NSCP_DISTDIR)
+ifdef COMPONENT_DEPS
+ $(FTP_PULL) -method $(SETUPSDK_PULL_METHOD) \
+ -objdir $(SETUP_SDK_BUILD_DIR) -componentdir $(SETUPSDK_RELEASE) \
+ -files $(SETUP_SDK_FILES)
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component SETUPSDK file $@" ; \
+ fi
+# apache-axis java classes #######################################
+AXIS = axis-bin-$(AXIS_VERSION).zip
+AXIS_FILES = $(AXIS)
+AXIS_RELEASE = $(COMPONENTS_DIR)/axis
+#AXISJAR_DIR = $(AXISJAR_RELEASE)/$(AXISJAR_COMP)/$(AXISJAR_VERSION)
+AXIS_DIR = $(AXIS_RELEASE)/$(AXIS_VERSION)
+AXIS_FILE = $(CLASS_DEST)/$(AXIS)
+AXIS_DEP = $(AXIS_FILE)
+AXIS_REL_DIR=$(subst -bin,,$(subst .zip,,$(AXIS)))
+
+
+# This is java, so there is only one real platform subdirectory
+
+#PACKAGE_UNDER_JAVA += $(AXIS_FILE)
+
+ifndef AXIS_PULL_METHOD
+AXIS_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(AXIS_DEP): $(CLASS_DEST)
+ifdef COMPONENT_DEPS
+ echo "Inside ftppull"
+ $(FTP_PULL) -method $(COMPONENT_PULL_METHOD) \
+ -objdir $(CLASS_DEST) -componentdir $(AXIS_DIR) \
+ -files $(AXIS_FILES) -unzip $(CLASS_DEST)
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component AXIS files $@" ; \
+ fi
+
+###########################################################
+
+
+# other dsml java classes #######################################
+DSMLJAR = activation.jar,jaxrpc-api.jar,jaxrpc.jar,saaj.jar,xercesImpl.jar,xml-apis.jar
+DSMLJAR_FILES = $(DSMLJAR)
+DSMLJAR_RELEASE = $(COMPONENTS_DIR)
+#DSMLJARJAR_DIR = $(DSMLJARJAR_RELEASE)/$(DSMLJARJAR_COMP)/$(DSMLJARJAR_VERSION)
+DSMLJAR_DIR = $(DSMLJAR_RELEASE)/dsmljars
+DSMLJAR_FILE = $(CLASS_DEST)
+DSMLJAR_DEP = $(CLASS_DEST)/activation.jar $(CLASS_DEST)/jaxrpc-api.jar $(CLASS_DEST)/jaxrpc.jar $(CLASS_DEST)/saaj.jar $(CLASS_DEST)/xercesImpl.jar $(CLASS_DEST)/xml-apis.jar
+
+ifndef DSMLJAR_PULL_METHOD
+DSMLJAR_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(DSMLJAR_DEP): $(CLASS_DEST)
+ifdef COMPONENT_DEPS
+ echo "Inside ftppull"
+ $(FTP_PULL) -method $(COMPONENT_PULL_METHOD) \
+ -objdir $(CLASS_DEST) -componentdir $(DSMLJAR_DIR) \
+ -files $(DSMLJAR_FILES)
+
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component DSMLJAR files $@" ; \
+ fi
+
+###########################################################
+
+# XMLTOOLS java classes #######################################
+CRIMSONJAR = crimson.jar
+CRIMSON_LICENSE = LICENSE.crimson
+CRIMSONJAR_FILES = $(CRIMSONJAR),$(CRIMSON_LICENSE)
+CRIMSONJAR_RELEASE = $(COMPONENTS_DIR)
+CRIMSONJAR_DIR = $(CRIMSONJAR_RELEASE)/$(CRIMSONJAR_COMP)/$(CRIMSONJAR_VERSION)
+CRIMSONJAR_FILE = $(CLASS_DEST)/$(CRIMSONJAR)
+CRIMSONJAR_DEP = $(CRIMSONJAR_FILE) $(CLASS_DEST)/$(CRIMSON_LICENSE)
+
+
+# This is java, so there is only one real platform subdirectory
+
+PACKAGE_UNDER_JAVA += $(CRIMSONJAR_FILE)
+
+ifndef CRIMSONJAR_PULL_METHOD
+CRIMSONJAR_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(CRIMSONJAR_DEP): $(CLASS_DEST)
+ifdef COMPONENT_DEPS
+ echo "Inside ftppull"
+ $(FTP_PULL) -method $(COMPONENT_PULL_METHOD) \
+ -objdir $(CLASS_DEST) -componentdir $(CRIMSONJAR_DIR) \
+ -files $(CRIMSONJAR_FILES)
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component CRIMSONJAR files $@" ; \
+ fi
+
+###########################################################
+
+# ANT java classes #######################################
+ifeq ($(BUILD_JAVA_CODE),1)
+# (we use ant for building some Java code)
+ANTJAR = ant.jar
+JAXPJAR = jaxp.jar
+ANT_FILES = $(ANTJAR) $(JAXPJAR)
+ANT_RELEASE = $(COMPONENTS_DIR)
+ANT_HOME = $(ANT_RELEASE)/$(ANT_COMP)/$(ANT_VERSION)
+ANT_DIR = $(ANT_HOME)/lib
+ANT_DEP = $(addprefix $(CLASS_DEST)/, $(ANT_FILES))
+ANT_CP = $(subst $(SPACE),$(PATH_SEP),$(ANT_DEP))
+ANT_PULL = $(subst $(SPACE),$(COMMA),$(ANT_FILES))
+
+ifndef ANT_PULL_METHOD
+ANT_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(ANT_DEP): $(CLASS_DEST) $(CRIMSONJAR_DEP)
+ifdef COMPONENT_DEPS
+ echo "Inside ftppull"
+ $(FTP_PULL) -method $(COMPONENT_PULL_METHOD) \
+ -objdir $(CLASS_DEST) -componentdir $(ANT_DIR) \
+ -files $(ANT_PULL)
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component ant files $@" ; \
+ fi
+endif
+###########################################################
+
+# Servlet SDK classes #######################################
+SERVLETJAR = servlet.jar
+SERVLET_FILES = $(SERVLETJAR)
+SERVLET_RELEASE = $(COMPONENTS_DIR)
+SERVLET_DIR = $(SERVLET_RELEASE)/$(SERVLET_COMP)/$(SERVLET_VERSION)
+SERVLET_DEP = $(addprefix $(CLASS_DEST)/, $(SERVLET_FILES))
+SERVLET_CP = $(subst $(SPACE),$(PATH_SEP),$(SERVLET_DEP))
+SERVLET_PULL = $(subst $(SPACE),$(COMMA),$(SERVLET_FILES))
+
+ifndef SERVLET_PULL_METHOD
+SERVLET_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(SERVLET_DEP): $(CLASS_DEST)
+ifdef COMPONENT_DEPS
+ echo "Inside ftppull"
+ $(FTP_PULL) -method $(COMPONENT_PULL_METHOD) \
+ -objdir $(CLASS_DEST) -componentdir $(SERVLET_DIR) \
+ -files $(SERVLET_PULL)
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component servlet SDK files $@" ; \
+ fi
+
+###########################################################
+
+# LDAP java classes #######################################
+LDAPJDK = ldapjdk.jar
+LDAPJDK_VERSION = $(LDAPJDK_RELDATE)
+LDAPJDK_RELEASE = $(COMPONENTS_DIR)
+LDAPJDK_DIR = $(LDAPJDK_RELEASE)
+LDAPJDK_IMPORT = $(LDAPJDK_RELEASE)/$(LDAPJDK_COMP)/$(LDAPJDK_VERSION)/$(NSOBJDIR_NAME)
+# This is java, so there is only one real platform subdirectory
+LDAPJARFILE=$(CLASS_DEST)/ldapjdk.jar
+LDAPJDK_DEP=$(LDAPJARFILE)
+
+#PACKAGE_UNDER_JAVA += $(LDAPJARFILE)
+
+ifndef LDAPJDK_PULL_METHOD
+LDAPJDK_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(LDAPJDK_DEP): $(CLASS_DEST)
+ifdef COMPONENT_DEPS
+ $(FTP_PULL) -method $(LDAPJDK_PULL_METHOD) \
+ -objdir $(CLASS_DEST) -componentdir $(LDAPJDK_IMPORT) \
+ -files $(LDAPJDK)
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component LDAPJDK file $@" ; \
+ fi
+
+###########################################################
+
+# MCC java classes - the Mission Control Console #########
+MCC_VERSION=$(MCC_RELDATE)$(SEC_SUFFIX)
+#
+MCCJAR = mcc$(MCC_REL).jar
+MCCJAR_EN = mcc$(MCC_REL)_en.jar
+NMCLFJAR = nmclf$(MCC_REL).jar
+NMCLFJAR_EN = nmclf$(MCC_REL)_en.jar
+BASEJAR = base.jar
+#MCC_RELEASE=$(COMPONENTS_DIR_DEV)
+MCC_RELEASE=$(COMPONENTS_DIR)
+MCC_JARDIR = $(MCC_RELEASE)/$(MCC_COMP)/$(MCC_VERSION)/jars
+MCCJARFILE=$(CLASS_DEST)/$(MCCJAR)
+NMCLFJARFILE=$(CLASS_DEST)/$(NMCLFJAR)
+BASEJARFILE=$(CLASS_DEST)/$(BASEJAR)
+
+MCC_DEP = $(BASEJARFILE)
+MCC_FILES=$(MCCJAR),$(MCCJAR_EN),$(NMCLFJAR),$(NMCLFJAR_EN),$(BASEJAR)
+
+#PACKAGE_UNDER_JAVA += $(addprefix $(CLASS_DEST)/,$(subst $(COMMA),$(SPACE),$(MCC_FILES)))
+
+ifndef MCC_PULL_METHOD
+MCC_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(MCC_DEP): $(CLASS_DEST)
+ifdef COMPONENT_DEPS
+ $(FTP_PULL) -method $(MCC_PULL_METHOD) \
+ -objdir $(CLASS_DEST) -componentdir $(MCC_JARDIR) \
+ -files $(MCC_FILES)
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component MCC file $@" ; \
+ fi
+
+###########################################################
+# LDAP Console java classes
+###########################################################
+LDAPCONSOLEJAR = ds$(LDAPCONSOLE_REL).jar
+LDAPCONSOLEJAR_EN = ds$(LDAPCONSOLE_REL)_en.jar
+
+LDAPCONSOLE_RELEASE=$(COMPONENTS_DIR_DEV)
+LDAPCONSOLE_JARDIR = $(LDAPCONSOLE_RELEASE)/$(LDAPCONSOLE_COMP)ext/$(LDAPCONSOLE_RELDATE)/jars
+LDAPCONSOLE_DEP = $(CLASS_DEST)/$(LDAPCONSOLEJAR)
+LDAPCONSOLE_FILES=$(LDAPCONSOLEJAR),$(LDAPCONSOLEJAR_EN)
+
+ifndef LDAPCONSOLE_PULL_METHOD
+LDAPCONSOLE_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(LDAPCONSOLE_DEP): $(CLASS_DEST)
+ifdef COMPONENT_DEPS
+ $(FTP_PULL) -method $(LDAPCONSOLE_PULL_METHOD) \
+ -objdir $(CLASS_DEST) -componentdir $(LDAPCONSOLE_JARDIR) \
+ -files $(LDAPCONSOLE_FILES)
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component LDAPCONSOLE file $@" ; \
+ fi
+
+###########################################################
+### Perldap package #######################################
+
+PERLDAP_COMPONENT_DIR = $(COMPONENTS_DIR)/perldap/$(PERLDAP_VERSION)/$(NSOBJDIR_NAME_32)
+PERLDAP_ZIP_FILE = perldap14.zip
+
+###########################################################
+
+# JSS classes - for the Mission Control Console ######
+JSSJAR = jss$(JSS_JAR_VERSION).jar
+JSSJARFILE = $(CLASS_DEST)/$(JSSJAR)
+JSS_RELEASE = $(COMPONENTS_DIR)/$(JSS_COMP)/$(JSS_VERSION)
+JSS_DEP = $(JSSJARFILE)
+
+#PACKAGE_UNDER_JAVA += $(JSSJARFILE)
+
+ifndef JSS_PULL_METHOD
+JSS_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(JSS_DEP): $(CLASS_DEST)
+ifdef COMPONENT_DEPS
+ifdef VSFTPD_HACK
+# work around vsftpd -L problem
+ $(FTP_PULL) -method $(JSS_PULL_METHOD) \
+ -objdir $(CLASS_DEST)/jss -componentdir $(JSS_RELEASE) \
+ -files xpclass.jar
+ mv $(CLASS_DEST)/jss/xpclass.jar $(CLASS_DEST)/$(JSSJAR)
+ rm -rf $(CLASS_DEST)/jss
+else
+ $(FTP_PULL) -method $(JSS_PULL_METHOD) \
+ -objdir $(CLASS_DEST) -componentdir $(JSS_RELEASE) \
+ -files $(JSSJAR)
+endif
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component JSS file $@" ; \
+ fi
+
+###########################################################
+
+### JSP compiler package ##################################
+
+JSPC_REL = $(JSPC_VERSDIR)
+JSPC_REL_DATE = $(JSPC_VERSION)
+JSPC_FILES = jasper-compiler.jar jasper-runtime.jar
+JSPC_RELEASE = $(COMPONENTS_DIR)
+JSPC_DIR = $(JSPC_RELEASE)/$(JSPC_COMP)/$(JSPC_VERSION)
+JSPC_DEP = $(addprefix $(CLASS_DEST)/, $(JSPC_FILES))
+JSPC_CP = $(subst $(SPACE),$(PATH_SEP),$(JSPC_DEP))
+JSPC_PULL = $(subst $(SPACE),$(COMMA),$(JSPC_FILES))
+
+ifndef JSPC_PULL_METHOD
+JSPC_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+$(JSPC_DEP): $(CLASS_DEST)
+ifdef COMPONENT_DEPS
+ echo "Inside ftppull"
+ $(FTP_PULL) -method $(COMPONENT_PULL_METHOD) \
+ -objdir $(CLASS_DEST) -componentdir $(JSPC_DIR) \
+ -files $(JSPC_PULL)
+endif
+ -@if [ ! -f $@ ] ; \
+ then echo "Error: could not get component jspc files $@" ; \
+ fi
+
+###########################################################
+
+###########################################################
+### Admin Server package ##################################
+
+ADMIN_REL = $(ADM_VERSDIR)
+ADMIN_REL_DATE = $(ADM_VERSION)
+ADMIN_FILE = admserv.tar.gz
+ADMIN_FILE_TAR = admserv.tar
+ADMSDKOBJDIR = $(NSCONFIG)$(NSOBJDIR_TAG).OBJ
+IMPORTADMINSRV_BASE=$(COMPONENTS_DIR)/$(ADMIN_REL)/$(ADMIN_REL_DATE)
+IMPORTADMINSRV = $(IMPORTADMINSRV_BASE)/$(NSOBJDIR_NAME_32)
+ADMSERV_DIR=$(ABS_ROOT_PARENT)/dist/$(NSOBJDIR_NAME)/admserv
+ADMSERV_DEP = $(ADMSERV_DIR)/setup$(EXE_SUFFIX)
+
+ifdef FORTEZZA
+ ADM_VERSION = $(ADM_RELDATE)F
+else
+ ifeq ($(SECURITY), domestic)
+ ADM_VERSION = $(ADM_RELDATE)D
+ else
+ ifneq ($(ARCH), IRIX)
+ ADM_VERSION = $(ADM_RELDATE)E
+ else
+ ADM_VERSION = $(ADM_RELDATE)D
+ endif
+ endif
+endif
+
+ADM_VERSION = $(ADM_RELDATE)$(SEC_SUFFIX)
+ADM_RELEASE = $(COMPONENTS_DIR)/$(ADM_VERSDIR)/$(ADM_VERSION)/$(NSOBJDIR_NAME)
+
+ifndef ADMSERV_PULL_METHOD
+ADMSERV_PULL_METHOD = $(COMPONENT_PULL_METHOD)
+endif
+
+ifndef ADMSERV_DEPS
+ADMSERV_DEPS = $(COMPONENT_DEPS)
+endif
+#IMPORTADMINSRV = /share/builds/sbsrel1/admsvr/admsvr62/ships/20030702.2/spd04_Solaris8/SunOS5.8-domestic-optimize-normal
+#ADM_RELEASE = /share/builds/sbsrel1/admsvr/admsvr62/ships/20030702.2/spd04_Solaris8/SunOS5.8-domestic-optimize-normal
+$(ADMSERV_DEP): $(ABS_ROOT_PARENT)/dist/$(NSOBJDIR_NAME)
+ifdef ADMSERV_DEPS
+ $(FTP_PULL) -method $(ADMSERV_PULL_METHOD) \
+ -objdir $(ADMSERV_DIR) -componentdir $(IMPORTADMINSRV) \
+ -files $(ADMIN_FILE) -unzip $(ADMSERV_DIR)
+endif
+ @if [ ! -f $@ ] ; \
+ then echo "Error: could not get component ADMINSERV file $@" ; \
+ exit 1 ; \
+ fi
+### Admin Server END ######################################
diff --git a/ldap/Makefile b/ldap/Makefile
index 9328b632..a81c4481 100644
--- a/ldap/Makefile
+++ b/ldap/Makefile
@@ -29,6 +29,7 @@ ldapprogs:
ifneq ($(ARCH), WINNT)
cd systools; $(MAKE) $(MFLAGS) all
# new unix installer
+ifeq ($(USE_SETUPSDK), 1)
cd cm/newinst; $(MAKE) $(MFLAGS) all
ifeq ($(USE_64),1)
# In 64-bit builds, we build the installer 32-bit, which has the side-effect that the uninstaller and ns-update scripts
@@ -36,10 +37,13 @@ ifeq ($(USE_64),1)
# to see them in the 64-bit output directory. So, here we copy them over.
$(CP) $(RELDIR_32)/bin/slapd/admin/bin/ns-update $(LDAP_ADMIN_BIN_RELDIR)
$(CP) $(RELDIR_32)/bin/slapd/admin/bin/uninstall $(LDAP_ADMIN_BIN_RELDIR)
-endif
-else
+endif # USE_64
+endif # USE_SETUPSDK
+else # not WINNT
+ifeq ($(USE_SETUPSDK), 1)
cd cm/newinstnt; $(MAKE) $(MFLAGS) all
-endif
+endif # USE_SETUPSDK
+endif # WINNT
cd admin; $(MAKE) $(MFLAGS) all
ldapdocs:
diff --git a/ldap/admin/src/Makefile b/ldap/admin/src/Makefile
index b78bd1f2..0bde63e7 100644
--- a/ldap/admin/src/Makefile
+++ b/ldap/admin/src/Makefile
@@ -21,11 +21,10 @@ SCRIPTSDIR=$(LDAP_BASE_RELDIR)/admin/scripts
include $(BUILD_ROOT)/nsconfig.mk
include $(LDAP_SRC)/nsldap.mk
-ifndef LDAP_USE_OLD_DB
-include $(BUILD_ROOT)/ns_usedb.mk
-endif
+ifeq ($(USE_ADMINSERVER), 1)
MCC_INCLUDE += $(ADMINUTIL_INCLUDE)
+endif
INCLUDES += -I$(LDAP_SRC)/admin/include
@@ -36,15 +35,21 @@ EXTRALDFLAGS += $(SSLLIBFLAG)
endif
ifeq ($(BUILD_DLL), yes)
-DYNAMIC_DEPLIBS=$(LDAP_ADMLIB) $(LDAP_COMMON_LIBS_DEP) $(ADMINUTIL)
+DYNAMIC_DEPLIBS=$(LDAP_ADMLIB) $(LDAP_COMMON_LIBS_DEP)
+ifeq ($(USE_ADMINSERVER), 1)
+ DYNAMIC_DEPLIBS += $(ADMINUTIL)
+endif
DYNAMIC_DEPLINK=$(DYNAMIC_DEPLIBS)
else
DYNAMIC_DEPLIBS=$(LDAP_COMMON_LIBS_DEP)
DYNAMIC_DEPLINK=$(LDAP_ADMLIB) $(LDAP_COMMON_LIBS)
endif
-EXTRA_LIBS_DEP += $(NSPR_DEP) $(LDAPSDK_DEP) $(ADMINUTIL_DEP) $(ICU_DEP)
-
+EXTRA_LIBS_DEP += $(NSPR_DEP) $(LDAPSDK_DEP)
+ifeq ($(USE_ADMINSERVER), 1)
+ EXTRA_LIBS_DEP += $(ADMINUTIL_DEP)
+endif
+EXTRA_LIBS_DEP += $(ICU_DEP)
# we don't want to build with warnings-as-errors for the admin/ stuff, because
# it's got crappy C++ code which is LITTERED with warnings, most of which we
# can't fix because it comes from files in dist/, etc.
@@ -53,8 +58,15 @@ CFLAGS := $(subst -Werror,,$(CFLAGS))
endif
OLD_EXTRA_LIBS := $(EXTRA_LIBS)
-EXTRA_LIBS = $(DYNAMIC_DEPLINK) $(ADMINUTIL_LINK) $(LDAP_NOSSL_LINK) \
- $(SECURITYLINK) $(NSPRLINK) $(SETUPSDK_S_LINK) $(ICULINK) $(OLD_EXTRA_LIBS)
+EXTRA_LIBS = $(DYNAMIC_DEPLINK) $(LDAP_NOSSL_LINK)
+ifeq ($(USE_ADMINSERVER), 1)
+ EXTRA_LIBS += $(ADMINUTIL_LINK)
+endif
+EXTRA_LIBS += $(SECURITYLINK) $(NSPRLINK)
+ifeq ($(USE_SETUPSDK), 1)
+ EXTRA_LIBS += $(SETUPSDK_S_LINK)
+endif
+EXTRA_LIBS += $(ICULINK) $(OLD_EXTRA_LIBS)
# these are the libraries to use when building the installer for the open source version
OPENSOURCE_LIBS = $(LDAP_ADMLIB) $(LDAP_NOSSL_LINK) $(SECURITYLINK) $(NSPRLINK)
@@ -146,7 +158,9 @@ SECURE_BINS=
SECLIB=$(LIBSECURITY)
endif
-ADMIN_DLLGLUEOBJ=$(BUILD_ROOT)/built/$(ARCH)-$(SECURITY)-$(DEBUG)-admin/admin-lib/dllglue.o
+ifeq ($(USE_ADMINSERVER), 1)
+ ADMIN_DLLGLUEOBJ=$(BUILD_ROOT)/built/$(ARCH)-$(SECURITY)-$(DEBUG)-admin/admin-lib/dllglue.o
+endif
ifeq ($(ARCH),AIX)
DLLGLUEOBJ=
@@ -156,29 +170,27 @@ endif
$(OBJDEST)/key.res: key.rc
$(RC) $(OFFLAG)$(OBJDEST)/key.res ey.rc
-OLD_PROGS = ds_pcontrol ds_impldif \
- ds_backldif ds_backdb ds_restdb \
- ds_monitor ds_conf ds_rmldif \
- commit index ds_acccon ds_perf ds_dbconf ds_conf_check \
- ds_net ds_ldap ds_pwconf ds_inconf ds_grplst ds_grpcrt \
- ds_version ds_client ds_secpref ds_secact instindex \
- ds_reploc ds_repinit ldif2replica ds_addldif ds_ldif2ldap clpstat \
- ds_sscfg ds_attr_manage ds_oc_view ds_oc_create ds_schema_update \
- ds_replov ds_pw ds_snmpconf
-
-PROGS = start restart shutdown ds_ldif2db \
+PROGS = ds_newinst
+ifeq ($(USE_ADMINSERVER), 1)
+PROGS += start restart shutdown ds_ldif2db \
ds_db2ldif ds_db2bak ds_listdb \
- ds_bak2db ds_rmdb ds_create ds_newinst \
+ ds_bak2db ds_rmdb ds_create \
ds_remove ds_snmpctrl vlvindex addindex
+endif
ifeq ($(ARCH), WINNT)
SERVER_PROGS = namegen latest_file
endif
+ifeq ($(USE_ADMINSERVER), 1)
OBJECTS= init_ds_env.o
+endif
ifeq ($(ARCH), WINNT)
-OBJECTS += namegen.o latest_file.o ds_remove_uninst.o
+OBJECTS += namegen.o latest_file.o
+ifeq ($(USE_SETUPSDK), 1)
+ OBJECTS += ds_remove_uninst.o
+endif
endif
ifeq ($(ARCH), WINNT)
@@ -212,9 +224,6 @@ $(SCRIPTSDIR):
.PHONY: installPerlFiles
-#NSSetupSDK:
-# $(MAKE) -f NSSetupSDK_Base.mk $(MFLAGS) all
-
clean:
-@echo $(BINS)
-$(RM) $(BINS)
@@ -236,13 +245,13 @@ $(BINDIR)/ds_newinst: $(OBJDEST)/ds_newinst.o $(OBJDEST)/cfg_sspt.o \
$(OBJDEST)/create_instance.o $(OBJDEST)/script-gen.o
$(LINK_EXE_NOLIBSOBJS) $(SHARED) $(EXTRALDFLAGS) \
$(OBJDEST)/ds_newinst.o $(OBJDEST)/cfg_sspt.o \
- $(OBJDEST)/create_instance.o $(OBJDEST)/script-gen.o $(OPENSOURCE_LIBS)
+ $(OBJDEST)/create_instance.o $(OBJDEST)/script-gen.o $(EXTRA_LIBS)
$(BINDIR)/ds_newinst.exe: $(OBJDEST)/ds_newinst.o $(OBJDEST)/cfg_sspt.o \
$(OBJDEST)/create_instance.o $(OBJDEST)/script-gen.o
$(LINK_EXE) $(NT_NOLIBS) $(OBJDEST)/ds_newinst.o $(OBJDEST)/cfg_sspt.o \
$(OBJDEST)/create_instance.o $(OBJDEST)/script-gen.o \
- $(LIBNT) $(OPENSOURCE_LIBS)
+ $(LIBNT) $(NSPRLINK) $(EXTRA_LIBS) $(DB_LIB)
# linking this file causes a .exp and a .lib file to be generated which don't seem
# to be required while running, so I get rid of them
$(RM) $(subst .exe,.exp,$@) $(subst .exe,.lib,$@)
diff --git a/ldap/cm/Makefile b/ldap/cm/Makefile
index 9c4fdc7f..288e7cf3 100644
--- a/ldap/cm/Makefile
+++ b/ldap/cm/Makefile
@@ -27,7 +27,6 @@ ADMSERV_DEPS = 1
include $(BUILD_ROOT)/nsconfig.mk
include $(BUILD_ROOT)/ldap/nsldap.mk
include $(BUILD_ROOT)/ldap/javarules.mk
-include $(BUILD_ROOT)/ns_usedb.mk
include $(BUILD_ROOT)/ns_usesh.mk
NSDISTMODE = copy
@@ -279,6 +278,7 @@ endif
done
# install the DSMLGW into the client directory
+ifeq ($(USE_DSMLGW), 1)
$(MKDIR) $(RELDIR)/clients/dsmlgw
$(CP) -R $(NSDIST)/classes/$(AXIS_REL_DIR)/webapps/axis/* $(RELDIR)/clients/dsmlgw/
@@ -295,7 +295,7 @@ endif
$(INSTALL) -m 644 $(NSDIST)/classes/saaj.jar $(RELDIR)/clients/dsmlgw/WEB-INF/lib
$(INSTALL) -m 644 $(NSDIST)/classes/xercesImpl.jar $(RELDIR)/clients/dsmlgw/WEB-INF/lib
$(INSTALL) -m 644 $(NSDIST)/classes/xml-apis.jar $(RELDIR)/clients/dsmlgw/WEB-INF/lib
-
+endif # USE_DSMLGW
# PACKAGE_UNDER_JAVA is defined in components.mk - these are component .jar files to install
# with the other component files that we don't necessarily pick up from the admin server build
@@ -320,6 +320,7 @@ endif
# fi
### Package up the orgchart ###
+ifeq ($(USE_ORGCHART), 1)
$(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/clients/orgchart/*.gif $(RELDIR)/clients/orgchart/html
$(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/clients/orgchart/*.html $(RELDIR)/clients/orgchart/html
$(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/clients/orgchart/*.css $(RELDIR)/clients/orgchart/html
@@ -335,6 +336,7 @@ else
chmod 755 $(RELDIR)/clients/orgchart/bin/org
chmod 755 $(RELDIR)/clients/orgchart/bin/myorg
endif
+endif # USE_ORGCHART
### end orgchart package ###
$(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/schema/*.ldif $(RELDIR)/bin/slapd/install/schema
@@ -366,8 +368,8 @@ endif
# the plugin API
$(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/servers/slapd/slapi-plugin.h $(RELDIR)/plugins/slapd/slapi/include
- $(INSTALL) -m 644 $(NSPR_BUILD_DIR)/include/*.h $(RELDIR)/plugins/slapd/slapi/include
- $(INSTALL) -m 644 $(NSPR_BUILD_DIR)/include/obsolete/*.h $(RELDIR)/plugins/slapd/slapi/include/obsolete
+ $(INSTALL) -m 644 $(NSPR_INCDIR)/*.h $(RELDIR)/plugins/slapd/slapi/include
+ $(INSTALL) -m 644 $(NSPR_INCDIR)/obsolete/*.h $(RELDIR)/plugins/slapd/slapi/include/obsolete
$(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/servers/slapd/slapi-plugin-compat4.h $(RELDIR)/plugins/slapd/slapi/include
# if [ -f $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/docs/plugin/README ] ; \
# then $(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/docs/plugin/README $(RELDIR)/plugins/slapd ; \
@@ -406,11 +408,15 @@ endif
# install the ds jar file in the <server root>/$(DS_JAR_DEST_PATH) directory
# also install the other jar files we use
+ifeq ($(USE_CONSOLE), 1)
$(INSTALL) -m 644 $(NSDIST)/classes/$(LDAPCONSOLEJAR) $(RELDIR)/$(DS_JAR_DEST_PATH)
$(INSTALL) -m 644 $(NSDIST)/classes/$(LDAPCONSOLEJAR_EN) $(RELDIR)/$(DS_JAR_DEST_PATH)
+endif
+ifeq ($(USE_JAVATOOLS), 1)
$(INSTALL) -m 644 $(DS_JAR_SRC_PATH)/$(XMLTOOLS_JAR_FILE) $(RELDIR)/$(DS_JAR_DEST_PATH)
$(INSTALL) -m 644 $(NSDIST)/classes/$(CRIMSONJAR) $(RELDIR)/$(DS_JAR_DEST_PATH)
$(INSTALL) -m 644 $(NSDIST)/classes/$(CRIMSON_LICENSE) $(RELDIR)/$(DS_JAR_DEST_PATH)
+endif
# Images for IM Presence plugin
ifdef BUILD_PRESENCE
diff --git a/ldap/servers/Makefile b/ldap/servers/Makefile
index 01b2797c..a0666859 100644
--- a/ldap/servers/Makefile
+++ b/ldap/servers/Makefile
@@ -48,7 +48,9 @@ _plugins:
cd plugins; $(MAKE) $(MFLAGS) all
_snmp:
+ifdef still_waiting_for_net_snmp
cd snmp; $(MAKE) $(MFLAGS) all
+endif
_slapdtools:
cd slapd/tools; $(MAKE) $(MFLAGS) all
diff --git a/nsconfig.mk b/nsconfig.mk
index 2afe1cb9..48239cc2 100644
--- a/nsconfig.mk
+++ b/nsconfig.mk
@@ -26,6 +26,17 @@ MAKE=gmake $(BUILDOPT)
# 7/12/96 Adrian - allow MAKEFLAGS to propagate
# override MAKEFLAGS :=
+# all of these things are on by default for internal builds
+ifdef INTERNAL_BUILD
+ USE_ADMINSERVER:=1
+ USE_CONSOLE:=1
+ USE_DSMLGW:=1
+ USE_ORGCHART:=1
+ USE_DSGW:=1
+ USE_JAVATOOLS:=1
+ USE_SETUPSDK:=1
+endif
+
include $(BUILD_ROOT)/nsdefs.mk
include $(BUILD_ROOT)/component_versions.mk