Browse Source

Bug(s) fixed: 171892
Bug Description: parameterize ldapjdk and crimson jar locations
Reviewed by: Noriko, Nathan (Thanks!)
Fix Description: This is also needed for GAR. The xmltools also
ldapjdk.jar, and needs crimson.jar. DSMLGW does not need crimson.jar.
It makes sense to separate these out of the dsmlgw jars. I changed the
dsmlgw build.xml to be able to pickup ldapjdk.jar from a different
location - defaults to the usual dist/classes.
Platforms tested: RHEL4
Flag Day: no
Doc impact: no
QA impact: should be covered by regular nightly and manual testing
New Tests integrated into TET: none

Bug(s) fixed: 172005
Bug Description: Change ldapserver version to 1.0
Reviewed by: Noriko (Thanks!)
Fix Description: This also fixes some lingering build issues involving
perldap, which is no longer a separate setup package, but just gets
included into DS in a similar manner to nspr, nss, etc.
Platforms tested: RHEL4
Flag Day: no
Doc impact: no
QA impact: should be covered by regular nightly and manual testing
New Tests integrated into TET: none

Rich Megginson 20 years ago
parent
commit
1edb0d5cd5
6 changed files with 49 additions and 56 deletions
  1. 5 4
      buildpaths.mk
  2. 18 10
      components.mk
  3. 8 0
      internal_buildpaths.mk
  4. 2 2
      ldap/clients/dsmlgw/Makefile
  5. 2 1
      ldap/clients/dsmlgw/build.xml
  6. 14 39
      ldap/cm/Makefile

+ 5 - 4
buildpaths.mk

@@ -122,7 +122,10 @@ ADMINUTIL_SOURCE_ROOT = $(BUILD_ROOT)/../adminutil
 SETUPUTIL_SOURCE_ROOT = $(BUILD_ROOT)/../setuputil
 #SETUPUTIL_BUILD_DIR = $(NSCP_DISTDIR_FULL_RTL)/setuputil
 
-LDAPJDK_SOURCE_DIR = $(MOZILLA_SOURCE_ROOT)
+# it's customary and easier to use the pre-built jars
+#LDAPJDK_SOURCE_DIR = $(MOZILLA_SOURCE_ROOT)
+# Crimson - crimson.jar - http://xml.apache.org/crimson/
+#CRIMSON_SOURCE_DIR = $(BUILD_ROOT)/../crimson
 
 ADMINSERVER_SOURCE_ROOT = $(BUILD_ROOT)/../adminserver
 
@@ -134,9 +137,7 @@ LDAPCONSOLE_SOURCE_ROOT = $(BUILD_ROOT)/../directoryconsole
 # Xerces-J - xercesImpl.jar, xml-apis.jar http://xml.apache.org/xerces2-j/download.cgi
 # JAF - activation.jar - http://java.sun.com/products/javabeans/glasgow/jaf.html
 # JWSDP - jaxrpc-api.jar,jaxrpc.jar,saaj.jar - http://java.sun.com/webservices/downloads/webservicespack.html
-# Crimson - crimson.jar - http://xml.apache.org/crimson/
-# Also the ldapjdk.jar
-# all of these files need to be in the following directory
+# all of these files need to be in the following directory:
 DSMLGWJARS_BUILD_DIR = $(BUILD_ROOT)/../dsmlgwjars
 
 PERLDAP_SOURCE_ROOT = $(MOZILLA_SOURCE_ROOT)

+ 18 - 10
components.mk

@@ -538,7 +538,8 @@ ADMINUTIL_INCLUDE=-I$(ADMINUTIL_INCPATH) -I$(ADMINUTIL_INCPATH)/libadminutil \
 LDAPJDK = ldapjdk.jar
 ifdef LDAPJDK_SOURCE_DIR
   LDAPJDK_DIR = $(LDAPJDK_SOURCE_DIR)/directory/java-sdk/dist/packages
-else
+endif
+ifndef LDAPJDK_DIR
   LDAPJDK_DIR = $(CLASS_DEST)
 endif
 LDAPJARFILE=$(LDAPJDK_DIR)/ldapjdk.jar
@@ -552,7 +553,13 @@ DSMLJAR_FILE = $(CLASS_DEST)
 
 CRIMSON_LICENSE = LICENSE.crimson
 CRIMSONJAR = crimson.jar
-CRIMSONJAR_FILE = $(CLASS_DEST)/$(CRIMSONJAR)
+ifdef CRIMSON_SOURCE_DIR
+  CRIMSONJAR_BUILD_DIR = $(CRIMSON_SOURCE_DIR)
+endif
+ifndef CRIMSONJAR_BUILD_DIR
+  CRIMSONJAR_BUILD_DIR = $(CLASS_DEST)
+endif
+CRIMSONJAR_FILE = $(CRIMSONJAR_BUILD_DIR)/$(CRIMSONJAR)
 
 ifdef ADMINSERVER_SOURCE_ROOT
   ADMSERV_DIR = $(ADMINSERVER_SOURCE_ROOT)/built/package/$(COMPONENT_OBJDIR)
@@ -744,12 +751,13 @@ endif #WINNT
 ########### PerLDAP #############
 ifdef PERLDAP_SOURCE_ROOT
   PERLDAP_BUILT_DIR = $(PERLDAP_SOURCE_ROOT)/directory/perldap/blib
-  PERLDAP_ARCHLIB_DIR = $(PERLDAP_BUILT_DIR)/arch
-  PERLDAP_LIB_DIR = $(PERLDAP_BUILT_DIR)/lib/Mozilla
-  PERLDAP_AUTOLIB_DIR = $(PERLDAP_BUILT_DIR)/lib/auto
-# under the serverroot/lib directory, we should have a perl directory which contains arch/, auto/, and Mozilla/
-  PACKAGE_SRC_DEST += $(PERLDAP_ARCHLIB_DIR) lib/perl
-  PACKAGE_SRC_DEST += $(PERLDAP_LIB_DIR) lib/perl
-  PACKAGE_SRC_DEST += $(PERLDAP_AUTOLIB_DIR) lib/perl
-# else we're using the pre-built zip file - see ldap/cm/Makefile
+# else set in internal_buildpaths.mk and pulled in internal_comp_deps.mk
 endif
+
+PERLDAP_ARCHLIB_DIR = $(PERLDAP_BUILT_DIR)/arch
+PERLDAP_LIB_DIR = $(PERLDAP_BUILT_DIR)/lib/Mozilla
+PERLDAP_AUTOLIB_DIR = $(PERLDAP_BUILT_DIR)/lib/auto
+# under the serverroot/lib directory, we should have a perl directory which contains arch/, auto/, and Mozilla/
+PACKAGE_SRC_DEST += $(PERLDAP_ARCHLIB_DIR) lib/perl
+PACKAGE_SRC_DEST += $(PERLDAP_LIB_DIR) lib/perl
+PACKAGE_SRC_DEST += $(PERLDAP_AUTOLIB_DIR) lib/perl

+ 8 - 0
internal_buildpaths.mk

@@ -141,3 +141,11 @@ ADMSERV_DIR=$(ABS_ROOT_PARENT)/dist/$(NSOBJDIR_NAME)/adminserver
 endif
 
 DSMLGWJARS_BUILD_DIR = $(CLASS_DEST)
+
+LDAPJDK_DIR = $(CLASS_DEST)
+
+CRIMSON_BUILD_DIR = $(CLASS_DEST)
+
+ifndef PERLDAP_SOURCE_ROOT
+PERLDAP_BUILT_DIR = $(NSCP_DISTDIR_FULL_RTL)/perldap
+endif

+ 2 - 2
ldap/clients/dsmlgw/Makefile

@@ -46,10 +46,10 @@ include $(BUILD_ROOT)/nsconfig.mk
 include $(BUILD_ROOT)/ldap/javarules.mk
 
 all: $(ANT_DEP) $(LDAPJDK_DEP)
-	@if [ ! -f $(CLASS_DEST)/axis.jar ]; then \
+	@if [ ! -f $(DSMLGWJARS_BUILD_DIR)/axis.jar ]; then \
 		cp $(CLASS_DEST)/$(AXIS_REL_DIR)/lib/axis.jar $(CLASS_DEST) ; \
 	fi
-	$(ANT) -Dglobaldist.dir=$(DSMLGWJARS_BUILD_DIR)
+	$(ANT) -Dglobaldist.dir=$(DSMLGWJARS_BUILD_DIR) -Dldapdist.dir=$(LDAPJDK_DIR)
 
 clean: 	
 	$(ANT) clean

+ 2 - 1
ldap/clients/dsmlgw/build.xml

@@ -45,10 +45,11 @@
 <!-- ******************** Adjustable Properties *********************** -->
 <property name="mcom.root"       value="../../.."/>
 <property name="globaldist.dir"  value="${mcom.root}/../dist/classes"/>
+<property name="ldapdist.dir"    value="${mcom.root}/../dist/classes"/>
 <property name="app.name"        value="dsmlgw"/>
 <property name="taglib.name"     value="dsmlgw"/>
 
-<property name="ldapjdk.jar"     value="${globaldist.dir}/ldapjdk.jar"/>
+<property name="ldapjdk.jar"     value="${ldapdist.dir}/ldapjdk.jar"/>
 <property name="activation.jar"  value="${globaldist.dir}/activation.jar"/>
 <property name="jaxrpc-api.jar"  value="${globaldist.dir}/jaxrpc-api.jar"/>
 <property name="jaxrpc.jar"  value="${globaldist.dir}/jaxrpc.jar"/>

+ 14 - 39
ldap/cm/Makefile

@@ -106,9 +106,9 @@ endif
 endif
 
 ifdef USE_64
-VERSION=-ver 7.1-64bit
+VERSION=-ver 1.0-64bit
 else
-VERSION=-ver 7.1
+VERSION=-ver 1.0
 endif
 
 ifeq ($(ARCH), HPUX)
@@ -185,10 +185,6 @@ DOTEXE = .exe
 PACKAGE_STAGE_DIR=$(OBJDIR)/package
 endif
 
-ifdef INTERNAL_BUILD
-	PERLDAP := perldap
-endif
-
 # these are files and directories in the import adminsrv directory which we don't
 # make a local copy of, we just import directly into the tar file or create a
 # symlink to
@@ -225,7 +221,7 @@ ESCAPED_ABS_DISTDIR = $(shell echo $(ABS_DISTDIR) | sed -e 's/\//\\\//g')
 
 ifdef BUILD_PATCH
 PATCHINSTDIR = $(ABS_INSTDIR)-SP
-SLAPDSP = slapd-71
+SLAPDSP = slapd-10
 endif
 
 INST_TARGET_RESKIT=$(INSTDIR)/reskit
@@ -261,7 +257,7 @@ PACKAGE_SETUP_LIBS_32=$(subst $(NS64TAG),,$(PACKAGE_SETUP_LIBS))
 ifdef BUILD_RPM
 # name and version of RPM - must correspond to the spec file - these get branded
 	RPM_BASE_NAME=fedora
-	RPM_VERSION=7.1
+	RPM_VERSION=1.0
 	RPM_FILE_BASE=$(RPM_BASE_NAME)-ds-$(RPM_VERSION)
 	RPM_ARCH = $(shell uname -i)
 # root dir for RPM built and temp files
@@ -340,8 +336,8 @@ endif
 # install the DSMLGW into the client directory
 ifeq ($(USE_DSMLGW), 1)
 	$(MKDIR) $(RELDIR)/clients/dsmlgw
-	if [ -d $(NSDIST)/classes/$(AXIS_REL_DIR)/webapps/axis ] ; then \
-		$(CP) -R $(NSDIST)/classes/$(AXIS_REL_DIR)/webapps/axis/*  $(RELDIR)/clients/dsmlgw/ ; \
+	if [ -d $(DSMLGWJARS_BUILD_DIR)/$(AXIS_REL_DIR)/webapps/axis ] ; then \
+		$(CP) -R $(DSMLGWJARS_BUILD_DIR)/$(AXIS_REL_DIR)/webapps/axis/*  $(RELDIR)/clients/dsmlgw/ ; \
 	fi
 
 	$(INSTALL) -m 644 $(NSDIST)/dsmlgw/dsmlgw.jar $(RELDIR)/clients/dsmlgw/WEB-INF/lib
@@ -349,7 +345,7 @@ ifeq ($(USE_DSMLGW), 1)
 	$(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/clients/dsmlgw/misc/web-app_2_3.dtd $(RELDIR)/clients/dsmlgw/
 
 # now time to move the necessary jars in place
-	$(INSTALL) -m 644 $(DSMLGWJARS_BUILD_DIR)/ldapjdk.jar  $(RELDIR)/clients/dsmlgw/WEB-INF/lib
+	$(INSTALL) -m 644 $(LDAPJARFILE)  $(RELDIR)/clients/dsmlgw/WEB-INF/lib
 	$(INSTALL) -m 644 $(DSMLGWJARS_BUILD_DIR)/activation.jar  $(RELDIR)/clients/dsmlgw/WEB-INF/lib
 # if you use the jaxrpc.jar from the axis distribution, you don't need the api file
 # or perhaps you need the jaxrpc.jar for building, and jaxrpc-api.jar at runtime, or vice versa
@@ -473,9 +469,9 @@ ifeq ($(USE_CONSOLE), 1)
 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)
-	if [ -f $(NSDIST)/classes/$(CRIMSON_LICENSE) ] ; then \
-		$(INSTALL) -m 644 $(NSDIST)/classes/$(CRIMSON_LICENSE) $(RELDIR)/$(DS_JAR_DEST_PATH) ; \
+	$(INSTALL) -m 644 $(CRIMSONJAR_FILE) $(RELDIR)/$(DS_JAR_DEST_PATH)
+	if [ -f $(CRIMSON_BUILD_DIR)/$(CRIMSON_LICENSE) ] ; then \
+		$(INSTALL) -m 644 $(CRIMSON_BUILD_DIR)/$(CRIMSON_LICENSE) $(RELDIR)/$(DS_JAR_DEST_PATH) ; \
 	fi
 endif
 
@@ -552,25 +548,6 @@ endif # BUILD_RPM
 # For security reason, it's readable only by the owner
 	chmod 700 $(RELDIR)/bin/slapd/server
 
-# this is the rule to pull PerLDAP
-ifndef PERLDAP_PULL_METHOD
-PERLDAP_PULL_METHOD = FTP
-endif
-
-$(INSTDIR)/perldap/$(PERLDAP_ZIP_FILE):
-ifdef INTERNAL_BUILD
-	$(RM) $@
-	$(FTP_PULL) -method $(PERLDAP_PULL_METHOD) \
-		-objdir $(dir $@) \
-		-componentdir $(PERLDAP_COMPONENT_DIR) \
-		-files $(notdir $@),perldap.inf
-	@if [ ! -f $@ ] ; \
-	then echo "Error: could not get component PERLDAP file $@" ; \
-	exit 1 ; \
-	fi
-	$(PERL) -w fixPerlDAPInf.pl $(dir $@)/perldap.inf
-endif
-
 $(INSTDIR)/slapd:
 	$(MKDIR) -p $@
 
@@ -580,7 +557,6 @@ ifneq ($(ARCH), WINNT)
 
 # ---THE UNIX PACKAGE---
 packageDirectory: $(INSTDIR)/slapd \
-	$(INSTDIR)/perldap/$(PERLDAP_ZIP_FILE) \
 	$(ADMSERV_DEP)
 
 # this gets setup, setup.inf, silent.inf, the zip wrapper, and svrcore, among others
@@ -675,6 +651,7 @@ endif
 		for file in $(ADMINSERVER_SUBCOMPS) ; \
 			do rm -rf $(INSTDIR)/$$file ; \
 			cp -r $(ADMSERV_DIR)/$$file $(INSTDIR)/$$file ; \
+			rm -rf $(INSTDIR)/$$file/unzipped ; \
 		done ; \
 	fi
 
@@ -702,14 +679,14 @@ ifndef NO_INSTALLER_TAR_FILES
 ifdef BUILD_SHIP
 ifndef BUILD_PATCH
 	cd $(INSTDIR); $(TAR) cvfh - setup.inf setup slapd \
-	$(PERLDAP) dsktune $(ADMIN_IMPORTS) | gzip -f > $(BUILD_SHIP)/$(FTPNAMEGZ)
+	dsktune $(ADMIN_IMPORTS) | gzip -f > $(BUILD_SHIP)/$(FTPNAMEGZ)
 endif
 ifeq ($(DEBUG), optimize)
 #	$(REMSH) "/u/svbld/bin/preRtm $(BUILD_SHIP) $(FTPNAMEGZ) svbld"
 endif
 else
 	cd $(INSTDIR); $(TAR) cvfh - setup.inf setup slapd  \
-	$(PERLDAP) dsktune $(ADMIN_IMPORTS) | gzip -f > ../all$(NS_BUILD_FLAVOR).tar.gz
+	dsktune $(ADMIN_IMPORTS) | gzip -f > ../all$(NS_BUILD_FLAVOR).tar.gz
 endif # BUILD_SHIP
 #cp $(INSTDIR).tar.gz  $(BUILD_SHIP)
 #cp $(INSTDIR)/all$(NS_BUILD_FLAVOR).tar.gz  $(BUILD_SHIP)
@@ -882,11 +859,9 @@ ifeq ($(ARCH), WINNT)
 
 SLAPD_DIR=slapd
 
-_perl: $(INSTDIR)/perldap/$(PERLDAP_ZIP_FILE)
-
 # ------------------------- all below this line is packageDirectory --------------------------
 
-packageDirectory: $(INSTDIR)/$(SLAPD_DIR) _admserv_files _perl _slapd_files _setup_files make_zip
+packageDirectory: $(INSTDIR)/$(SLAPD_DIR) _admserv_files _slapd_files _setup_files make_zip
 
 #--------------------------  admserv rules ----------------------------------------------------
 _admserv_files: $(INSTDIR) $(ADMSERV_DEP)