diff options
Diffstat (limited to 'components.mk')
| -rw-r--r-- | components.mk | 978 |
1 files changed, 978 insertions, 0 deletions
diff --git a/components.mk b/components.mk new file mode 100644 index 00000000..f661a26f --- /dev/null +++ b/components.mk @@ -0,0 +1,978 @@ +# +# BEGIN COPYRIGHT BLOCK +# Copyright 2001 Sun Microsystems, Inc. +# Portions copyright 1999, 2001-2003 Netscape Communications Corporation. +# All rights reserved. +# END COPYRIGHT BLOCK +# +# this file contains definitions for component macros used during the build +# process. Things like the component location in the build tree, etc. +# this file should be included by nsconfig.mk after it figures out all +# of the OS, architecture, security, and other platform and build related +# macros. This file also contains the instructions for making the component +# up to date e.g. copying the files from their repository to an area where +# the build process has access to it. For some components and OS's, this may +# be as simple as creating a symbolic link to the repository + +# Each component should define a COMPONENT_DEP macro which can be used in +# other makefiles for dependency checking e.g. +# target: $(COMPONENT1_DEP) $(COMPONENT2_DEP) ... +# This macro should evaluate to the name of a single file which must be +# present for the package to be complete e.g. some library or include +# file name +# Each component then should define a target for that dependency which will +# bring the component up to date if that target does not exist e.g. +# $(COMPONENT1_DEP): +# use ftp or symlinks or ??? to get the necessary files to the build +# area + +# Each component should define a COMPONENT_LINK macro which can be used to +# link the component's libraries with the target. For NT, this will typically +# be something like +# /LIBPATH:path_to_library lib1 lib2 lib3 /LIBPATH:more_libs lib4 lib5 ... +# On Unix, this will be something like +# -Lpath_to_library -l1 -l2 -l3 -Lmore_libs -l4 -l5 ... + +# Each component should define a COMPONENT_INCLUDE macro which can be used +# to compile using the component's header files e.g. +# -Ipath_to_include_files -Ipath_to_more_include_files + +# Once this file is working, I will DELETE compvers.sh and ns_ftp.sh +# from the tree, so help me god. + +# this macro contains a list of source files and directories to copy to +# the directory where DLLs/SOs go at runtime; each component will add the files/dirs to +# this macro that it needs to package; not all components will have +# files which need packaging +# if you need some other behavior, see PACKAGE_SRC_DEST below +LIBS_TO_PKG = + +# this macro contains a list of source files and directories to copy to +# the directory where DLLs/SOs go at runtime; each component will add the files/dirs to +# this macro that it needs to package; this is for DLLs/SOs for the shared/bin +# directory where the ldap c sdk command line tools, some security tools, and +# the i18n conversion tools live +LIBS_TO_PKG_SHARED = + +# this macro contains a list of source files and directories to copy to +# the shared tools directory - things like the ldap c sdk command line +# tools, shared security tools, etc. +BINS_TO_PKG_SHARED = + +# this macro contains a list of shared libraries/dlls needed during +# setup to run the setup pre-install program on unix (ns-config) or +# the slapd plugin on NT (DSINST_PreInstall) +PACKAGE_SETUP_LIBS = + +# this macro contains a list of libraries/dlls to copy to the clients +# library directory +LIBS_TO_PKG_CLIENTS = + +# this macro contains a list of source files and directories to copy to +# the release/java directory; usually a list of jar files +PACKAGE_UNDER_JAVA = + +# this macro contains a list of pairs of source and dest files and directories +# the source is where to find the item in the build tree, and the dest is +# the place in the release to put the item, relative to the server root e.g. +# 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 +COMMA := , +NULLSTRING := +SPACE := $(NULLSTRING) # the space is between the ) and the # +PACKAGE_SRC_DEST = + +ifeq ($(ARCH), WINNT) +EXE_SUFFIX = .exe +else # unix - windows has no lib name prefix, except for nspr +LIB_PREFIX = lib +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) +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 + +########################################################### + +# NSPR20 Library +NSPR_LIBNAMES = plc4 plds4 +ifeq ($(ARCH), SOLARIS) + ifeq ($(NSPR_RELDATE), v4.2.2) +# no need after v4.4.1 +NSPR_LIBNAMES += ultrasparc4 +# just need ultrasparc for now +LIBS_TO_PKG += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(NSPR_LIBPATH)/lib,ultrasparc4)) + 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) +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 + +NSPR_DEP = $(NSPR_LIBPATH)/libnspr4.$(LIB_SUFFIX) +ifeq ($(ARCH), WINNT) + NSPRDLL_NAME = $(addprefix lib, $(NSPR_LIBNAMES)) + NSPROBJNAME = $(addsuffix .lib, $(NSPRDLL_NAME)) + NSPRLINK = /LIBPATH:$(NSPR_LIBPATH) $(NSPROBJNAME) + LIBNSPRDLL_NAMES = $(addsuffix .dll, $(addprefix $(NSPR_LIBPATH)/, \ + $(addprefix lib, $(NSPR_LIBNAMES)))) +else + NSPR_SOLIBS = $(addsuffix .$(DLL_SUFFIX), $(addprefix $(LIB_PREFIX), $(NSPR_LIBNAMES))) + NSPROBJNAME = $(addsuffix .a, $(addprefix $(LIB_PREFIX), $(NSPR_LIBNAMES)) + LIBNSPR = $(addprefix $(NSPR_LIBPATH)/, $(NSPR_SOLIBS)) + 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) +DBM_INCLUDE = -I$(DBM_INCDIR) +DBM_LIBNAMES = dbm + +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 +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) +SECURITY_BINNAMES = certutil derdump pp pk12util ssltap modutil +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 +ifeq ($(ARCH), SOLARIS) +SECURITY_LIBNAMES.pkg += freebl_hybrid_3 freebl_pure32_3 fort swft +endif +ifeq ($(ARCH), HPUX) +SECURITY_LIBNAMES.pkg += freebl_hybrid_3 freebl_pure32_3 fort swft +endif +ifeq ($(ARCH), AIX) +SECURITY_LIBNAMES.pkg += fort swft +endif +ifeq ($(ARCH), OSF1) +SECURITY_LIBNAMES.pkg += fort swft +endif +ifeq ($(ARCH), WINNT) +SECURITY_LIBNAMES.pkg += fort32 swft32 +endif + +SECURITY_TOOLS = $(addsuffix $(EXE_SUFFIX),$(SECURITY_BINNAMES)) +SECURITY_TOOLS_FULLPATH = $(addprefix $(SECURITY_BINPATH)/, $(SECURITY_TOOLS)) + +SECURITY_LIBS_TO_PKG = $(addsuffix .$(DLL_SUFFIX),$(addprefix $(SECURITY_LIBPATH)/$(LIB_PREFIX),$(SECURITY_LIBNAMES.pkg))) +ifneq ($(SECURITY_RELDATE), NSS_3_7_9_RTM) +SECURITY_LIBS_TO_PKG += $(addsuffix .chk,$(addprefix $(SECURITY_LIBPATH)/$(LIB_PREFIX),$(SECURITY_LIBNAMES.pkg))) +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 ($(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 +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): $(MCOM_ROOT)/ldapserver/osf1securityhack.c +# $(CC) -c $(CFLAGS) $(MCC_INCLUDE) $< -o $@ + +# SECURITYLINK += $(OSF1SECURITYHACKOBJ) +#endif + +SECURITY_FILES=lib,include,bin/$(subst $(SPACE),$(COMMA)bin/,$(SECURITY_TOOLS)) + +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) +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 +SVRCORE_INCLUDE = -I$(SVRCORE_INCDIR) +#SVRCORE_LIBNAMES = svrplcy svrcore +SVRCORE_LIBNAMES = svrcore +SVRCORE_IMPORT = $(COMPONENTS_DIR)/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) +endif + +# package the command line programs +LDAPSDK_TOOLS = $(wildcard $(LDAP_ROOT)/tools/*$(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) + 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) + endif + 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) + endif + LDAP_DOTALIB_NAMES = + LDAP_LIBNAMES = $(LDAP_DOTALIB_NAMES) $(LDAP_SOLIB_NAMES) + 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)) +endif + +LDAP_LIBPATH = $(LDAP_ROOT)/lib +LDAP_INCLUDE = $(LDAP_ROOT)/include +LDAP_TOOLDIR = $(LDAP_ROOT)/tools +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 + +#################################################### +# DSRK +#################################################### +ifndef DSRK_VERSION + DSRK_VERSION = $(DSRK_RELDATE)$(SEC_SUFFIX) +endif +ifndef DSRK_SBC +# DSRK_SBC = $(COMPONENTS_DIR_DEV) +DSRK_SBC = $(COMPONENTS_DIR) +endif + +DSRK_RELEASE = $(DSRK_SBC)/dsrk/$(DSRKCOMP_DIR)/$(DSRK_VERSION)/$(NSOBJDIR_NAME) +DSRK_FILES = bin,perl +DSRK_BUILD_DIR = $(NSCP_DISTDIR)/dsrk +DSRK_DEP = $(DSRK_BUILD_DIR)/bin/n$(DSRKCOMP_DIR) + +ifndef DSRK_PULL_METHOD +DSRK_PULL_METHOD = $(COMPONENT_PULL_METHOD) +endif + +$(DSRK_DEP): $(NSCP_DISTDIR_FULL_RTL) +ifdef COMPONENT_DEPS + $(FTP_PULL) -method $(DSRK_PULL_METHOD) \ + -objdir $(DSRK_BUILD_DIR) -componentdir $(DSRK_RELEASE) \ + -files $(DSRK_FILES) +endif + -@if [ ! -d $@ ] ; \ + then echo "Error: could not get component DSRK file $@" ; \ + fi + +# apache-axis java classes ####################################### +AXIS = axis-bin-$(AXIS_VERSION).zip +AXIS_FILES = $(AXIS) +#AXIS_RELEASE = $(COMPONENTS_DIR) +AXIS_RELEASE = $(COMPONENTS_DIR_DEV)/ds/ds70-bozeman +#AXISJAR_DIR = $(AXISJAR_RELEASE)/$(AXISJAR_COMP)/$(AXISJAR_VERSION) +AXIS_DIR = $(AXIS_RELEASE)/axis +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_DEV)/ds/ds70-bozeman +#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 + +########################################################### + +########################################################### +### 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 + $(FTP_PULL) -method $(JSS_PULL_METHOD) \ + -objdir $(CLASS_DEST) -componentdir $(JSS_RELEASE) \ + -files $(JSSJAR) +endif + -@if [ ! -f $@ ] ; \ + then echo "Error: could not get component JSS file $@" ; \ + 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)/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)/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 +else +ifeq ($(ARCH), SOLARIS) +GSSAPI_LIBS=-lgss +endif +#ifeq ($(ARCH), HPUX) +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 + $(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 + +########################################################### + +### 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 + +########################################################### + +### 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= +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))) +LIBS_TO_PKG_CLIENTS += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_BINPATH)/,$(ICU_DLLNAMES))) +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))))) +#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 +endif + -@if [ ! -f $@ ] ; \ + then echo "Error: could not get component ICU file $@" ; \ + fi + +########################################################### |
