summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRich Megginson <rmeggins@redhat.com>2006-09-15 14:59:48 +0000
committerRich Megginson <rmeggins@redhat.com>2006-09-15 14:59:48 +0000
commitbcaf265a82c281bcb0c3921d67944a3b42359c84 (patch)
tree2d94afa964c6903738a9aa858a23039014282a30
parent2a5a4a95b5e87dcbe88f1f512597ffaaded59cba (diff)
downloadds-bcaf265a82c281bcb0c3921d67944a3b42359c84.tar.gz
ds-bcaf265a82c281bcb0c3921d67944a3b42359c84.tar.xz
ds-bcaf265a82c281bcb0c3921d67944a3b42359c84.zip
Bug: 206527
Description: Enable rpmbuild of directory server Fix Description: You can set env. vars. to override all of the LIB and INCLUDE paths with the make -e flag. I moved all of the external component packaging stuff into the packageDirectory target of ldap/cm/Makefile, and moved the "packaging" of the internal files into the releaseDirectory target. So the releaseDirectory target will now copy all of the ldapserver binaries and runtime files into their correct places under RELDIR, which is then used to create the rpm. There were a couple of other places that needed to change the way a particular file was packaged in order ot make sure it was packaged in the core ds and not as an external component. Tested on: RHEL4 Reviewed by: nhosoi (Thanks!)
-rw-r--r--Makefile3
-rw-r--r--components.mk9
-rw-r--r--ldap/admin/src/ds_newinst.pl4
-rw-r--r--ldap/cm/Makefile165
-rw-r--r--lib/ldaputil/Makefile11
-rw-r--r--nsconfig.mk18
6 files changed, 110 insertions, 100 deletions
diff --git a/Makefile b/Makefile
index 04258632..df1d1866 100644
--- a/Makefile
+++ b/Makefile
@@ -316,6 +316,9 @@ Acceptance:
Longduration:
cd ldap/cm; $(MAKE) Longduration $(MFLAGS)
+releaseDirectory:
+ cd ldap/cm; $(MAKE) $(MFLAGS) releaseDirectory
+
setupDirectory:
cd ldap/cm; $(MAKE) $(MFLAGS) releaseDirectory;
cd ldap/cm; $(MAKE) $(MFLAGS) packageDirectory;
diff --git a/components.mk b/components.mk
index dff15652..71b48533 100644
--- a/components.mk
+++ b/components.mk
@@ -389,7 +389,9 @@ else
SASL_LIB_ROOT_NAME = sasl2
SASL_LIBS = lib$(SASL_LIB_ROOT_NAME).a
ifeq ($(ARCH), Linux)
- GSSAPI_LIBS=-lgssapi_krb5
+# I don't think we need this anymore
+ GSSAPI_LIBS=
+# GSSAPI_LIBS=-lgssapi_krb5
endif
ifeq ($(ARCH), SOLARIS)
GSSAPI_LIBS=-lgss
@@ -645,11 +647,6 @@ ifeq ($(USE_64), 1)
endif
endif
-# must package certmap.conf ourselves if not using admin server
-ifneq ($(USE_ADMINSERVER), 1)
- PACKAGE_SRC_DEST += $(BUILD_ROOT)/lib/ldaputil/certmap.conf shared/config
-endif
-
# must define dependencies last because they depend on the definitions above
ifeq ($(INTERNAL_BUILD), 1)
include $(BUILD_ROOT)/internal_comp_deps.mk
diff --git a/ldap/admin/src/ds_newinst.pl b/ldap/admin/src/ds_newinst.pl
index 41acb71e..ca2dd9c6 100644
--- a/ldap/admin/src/ds_newinst.pl
+++ b/ldap/admin/src/ds_newinst.pl
@@ -183,7 +183,9 @@ $cgiargs{adminport} = $table{admin}->{Port};
# If this is set, the new DS instance will be set up for use as
# a Configuration DS (e.g. o=NetscapeRoot)
-$cgiargs{cfg_sspt} = $table{slapd}->{SlapdConfigForMC};
+if ($table{slapd}->{SlapdConfigForMC} =~ /yes/i) {
+ $cgiargs{cfg_sspt} = "1";
+}
# set this to 1 to register this DS with an existing Configuration DS
# or 0 to create this DS as a new Configuration DS
$cgiargs{use_existing_config_ds} = $table{slapd}->{UseExistingMC};
diff --git a/ldap/cm/Makefile b/ldap/cm/Makefile
index 56798b9d..07348f54 100644
--- a/ldap/cm/Makefile
+++ b/ldap/cm/Makefile
@@ -306,6 +306,88 @@ dummy:
importAdmin:
releaseDirectory:
+ $(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/ldif/*.ldif $(RELDIR)/bin/slapd/install/ldif
+ $(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/schema/*.ldif $(RELDIR)/bin/slapd/install/schema
+ $(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/schema/slapd-collations.conf $(RELDIR)/bin/slapd/install/config
+
+# the httpd library
+ifneq ($(ARCH), WINNT)
+ $(INSTALL) -m 755 $(OBJDIR)/$(NSHTTPD_DLL)$(DLL_PRESUF).$(DLL_SUFFIX)* $(RELDIR)/bin/slapd/lib
+endif
+
+# Images for IM Presence plugin
+ifdef BUILD_PRESENCE
+ $(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/servers/plugins/presence/images/*.gif $(RELDIR)/bin/slapd/install/presence
+endif
+
+ifdef USE_PURIFY
+ -$(INSTALL) -m 755 $(DB_LIBPATH)/*.so_pure* $(RELDIR)/lib
+ -$(INSTALL) -m 755 $(NSCP_DISTDIR)/lib/*.so_pure* $(RELDIR)/lib
+ rm -f $(RELDIR)/bin/slapd/server/ns-slapd
+ mv -f $(RELDIR)/bin/slapd/server/ns-slapd.pure $(RELDIR)/bin/slapd/server/ns-slapd
+endif
+ifdef USE_QUANTIFY
+ rm -f $(RELDIR)/bin/slapd/server/ns-slapd
+ mv -f $(RELDIR)/bin/slapd/server/ns-slapd.quantify $(RELDIR)/bin/slapd/server/ns-slapd
+endif
+
+ $(INSTALL) -m 755 $(OBJDIR)/lib/libsi18n/ns-slapd.properties $(RELDIR)/bin/slapd/property;
+
+# Install LDAP Readme and License files at root of SLAPD Release sub-directory.
+ifeq ($(ARCH), WINNT)
+ if [ -d $(LDAPDIR)/docs ] ; then \
+ cd $(LDAPDIR)/docs; \
+ perl $(NT_RELTOOLS)/unx2dos.plx WINNT LICENSE.txt $(RELDIR)/bin/slapd; \
+ perl $(NT_RELTOOLS)/unx2dos.plx WINNT LICENSE.txt $(RELDIR); \
+ perl $(NT_RELTOOLS)/unx2dos.plx WINNT README.txt $(RELDIR)/bin/slapd; \
+ perl $(NT_RELTOOLS)/unx2dos.plx WINNT README.txt $(RELDIR); \
+ fi
+else
+ if [ -d $(LDAPDIR)/docs ] ; then \
+ cd $(LDAPDIR)/docs; \
+ $(INSTALL) -m 755 README.txt LICENSE.txt $(RELDIR)/bin/slapd; \
+ $(INSTALL) -m 755 README.txt LICENSE.txt $(RELDIR); \
+ fi
+endif
+
+# include the old configuration files in the package so we can use them
+# for comparison purposes during migration
+ $(INSTALL) -m 444 $(LDAPDIR)/cm/v1confs/*.* $(RELDIR)/bin/slapd/install/version1
+ $(INSTALL) -m 444 $(LDAPDIR)/cm/v3confs/*.* $(RELDIR)/bin/slapd/install/version3
+ $(INSTALL) -m 444 $(LDAPDIR)/cm/v4confs/40/*.* $(RELDIR)/bin/slapd/install/version4/40
+ $(INSTALL) -m 444 $(LDAPDIR)/cm/v4confs/41/*.* $(RELDIR)/bin/slapd/install/version4/41
+ $(INSTALL) -m 444 $(LDAPDIR)/cm/v4confs/411/*.* $(RELDIR)/bin/slapd/install/version4/411
+ $(INSTALL) -m 444 $(LDAPDIR)/cm/v4confs/412/*.* $(RELDIR)/bin/slapd/install/version4/412
+
+# for RPM, include the post install setup program
+ifdef BUILD_RPM
+ $(INSTALL) -m 755 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/cm/newinst/setup $(RELDIR)/setup
+endif # BUILD_RPM
+
+ find $(RELDIR) -exec chmod go-w {} \;
+# $(RELDIR)/bin/slapd/server may host a core file if the server crashes
+# shortly after startup (otherwise, cores go in slapd-instance/logs)
+# For security reasons, it's readable only by the owner
+# but it needs to be executable (11) so that it can
+# load in shared libs from slapd/lib after the setuid
+ chmod 711 $(RELDIR)/bin/slapd/server
+
+$(INSTDIR):
+ $(MKDIR) -p $@
+
+$(INSTDIR)/slapd:
+ifeq ($(USE_SETUPUTIL), 1)
+ $(MKDIR) -p $@
+endif
+
+# Packaging for UNIX is totally different than NT, so we conditionally execute here
+
+ifneq ($(ARCH), WINNT)
+
+# ---THE UNIX PACKAGE---
+packageDirectory: $(INSTDIR) $(INSTDIR)/slapd \
+ $(ADMSERV_DEP)
+
# LIBS_TO_PKG is defined in components.mk - these are component files (not directories) to install
# with the other component files that we don't necessarily pick up from the admin server build
# see below for windows packaging
@@ -422,7 +504,6 @@ ifdef PACKAGE_UNDER_JAVA
done
endif
- $(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/ldif/*.ldif $(RELDIR)/bin/slapd/install/ldif
$(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/dsml/*.dsml $(RELDIR)/bin/slapd/install/dsml
### Package up the orgchart ###
@@ -445,9 +526,6 @@ endif
endif # USE_ORGCHART
### end orgchart package ###
- $(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/schema/*.ldif $(RELDIR)/bin/slapd/install/schema
- $(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/schema/slapd-collations.conf $(RELDIR)/bin/slapd/install/config
-
# libdb for windows special and smartheap
ifeq ($(ARCH), WINNT)
$(INSTALL) -m 755 $(DB_LIBPATH)/$(DB_LIBNAME).$(DLL_SUFFIX) $(RELDIR)/bin/slapd/server
@@ -515,12 +593,6 @@ ifeq ($(ARCH), WINNT)
$(INSTALL) -m 755 $(DB_LIBPATH)/$(DB_LIBNAME).lib $(RELDIR)/plugins/slapd/slapi/examples/lib
endif
-# the httpd library
-ifneq ($(ARCH), WINNT)
- $(INSTALL) -m 755 $(OBJDIR)/$(NSHTTPD_DLL)$(DLL_PRESUF).$(DLL_SUFFIX)* $(RELDIR)/bin/slapd/lib
- $(INSTALL) -m 755 $(OBJDIR)/$(NSHTTPD_DLL)$(DLL_PRESUF).$(DLL_SUFFIX)* $(RELDIR)/clients/lib
-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)
@@ -539,11 +611,6 @@ ifeq ($(USE_JAVATOOLS), 1)
fi
endif
-# Images for IM Presence plugin
-ifdef BUILD_PRESENCE
- $(INSTALL) -m 644 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/servers/plugins/presence/images/*.gif $(RELDIR)/bin/slapd/install/presence
-endif
-
# docs
-$(RM) -r $(RELDIR)/manual/en/slapd
-$(MKDIR) $(RELDIR)/manual/en/slapd
@@ -566,78 +633,10 @@ endif
fi ; \
fi
-ifdef USE_PURIFY
- -$(INSTALL) -m 755 $(DB_LIBPATH)/*.so_pure* $(RELDIR)/lib
- -$(INSTALL) -m 755 $(NSCP_DISTDIR)/lib/*.so_pure* $(RELDIR)/lib
- rm -f $(RELDIR)/bin/slapd/server/ns-slapd
- mv -f $(RELDIR)/bin/slapd/server/ns-slapd.pure $(RELDIR)/bin/slapd/server/ns-slapd
-endif
-ifdef USE_QUANTIFY
- rm -f $(RELDIR)/bin/slapd/server/ns-slapd
- mv -f $(RELDIR)/bin/slapd/server/ns-slapd.quantify $(RELDIR)/bin/slapd/server/ns-slapd
-endif
-
# Copy db tools
$(INSTALL) -m 755 $(DB_BINPATH)/db_printlog$(EXE_SUFFIX) $(RELDIR)/bin/slapd/server
$(INSTALL) -m 755 $(DB_BINPATH)/db_verify$(EXE_SUFFIX) $(RELDIR)/bin/slapd/server
- $(INSTALL) -m 755 $(OBJDIR)/lib/libsi18n/ns-slapd.properties $(RELDIR)/bin/slapd/property;
-
-# Install LDAP Readme and License files at root of SLAPD Release sub-directory.
-ifeq ($(ARCH), WINNT)
- if [ -d $(LDAPDIR)/docs ] ; then \
- cd $(LDAPDIR)/docs; \
- perl $(NT_RELTOOLS)/unx2dos.plx WINNT LICENSE.txt $(RELDIR)/bin/slapd; \
- perl $(NT_RELTOOLS)/unx2dos.plx WINNT LICENSE.txt $(RELDIR); \
- perl $(NT_RELTOOLS)/unx2dos.plx WINNT README.txt $(RELDIR)/bin/slapd; \
- perl $(NT_RELTOOLS)/unx2dos.plx WINNT README.txt $(RELDIR); \
- fi
-else
- if [ -d $(LDAPDIR)/docs ] ; then \
- cd $(LDAPDIR)/docs; \
- $(INSTALL) -m 755 README.txt LICENSE.txt $(RELDIR)/bin/slapd; \
- $(INSTALL) -m 755 README.txt LICENSE.txt $(RELDIR); \
- fi
-endif
-
-# include the old configuration files in the package so we can use them
-# for comparison purposes during migration
- $(INSTALL) -m 444 $(LDAPDIR)/cm/v1confs/*.* $(RELDIR)/bin/slapd/install/version1
- $(INSTALL) -m 444 $(LDAPDIR)/cm/v3confs/*.* $(RELDIR)/bin/slapd/install/version3
- $(INSTALL) -m 444 $(LDAPDIR)/cm/v4confs/40/*.* $(RELDIR)/bin/slapd/install/version4/40
- $(INSTALL) -m 444 $(LDAPDIR)/cm/v4confs/41/*.* $(RELDIR)/bin/slapd/install/version4/41
- $(INSTALL) -m 444 $(LDAPDIR)/cm/v4confs/411/*.* $(RELDIR)/bin/slapd/install/version4/411
- $(INSTALL) -m 444 $(LDAPDIR)/cm/v4confs/412/*.* $(RELDIR)/bin/slapd/install/version4/412
-
-# for RPM, include the post install setup program
-ifdef BUILD_RPM
- $(INSTALL) -m 755 $(BUILD_DRIVE)$(BUILD_ROOT)/ldap/cm/newinst/setup $(RELDIR)/setup
-endif # BUILD_RPM
-
- find $(RELDIR) -exec chmod go-w {} \;
-# $(RELDIR)/bin/slapd/server may host a core file if the server crashes
-# shortly after startup (otherwise, cores go in slapd-instance/logs)
-# For security reasons, it's readable only by the owner
-# but it needs to be executable (11) so that it can
-# load in shared libs from slapd/lib after the setuid
- chmod 711 $(RELDIR)/bin/slapd/server
-
-$(INSTDIR):
- $(MKDIR) -p $@
-
-$(INSTDIR)/slapd:
-ifeq ($(USE_SETUPUTIL), 1)
- $(MKDIR) -p $@
-endif
-
-# Packaging for UNIX is totally different than NT, so we conditionally execute here
-
-ifneq ($(ARCH), WINNT)
-
-# ---THE UNIX PACKAGE---
-packageDirectory: $(INSTDIR) $(INSTDIR)/slapd \
- $(ADMSERV_DEP)
-
# this gets setup, setup.inf, silent.inf, the zip wrapper, and svrcore, among others
ifeq ($(USE_SETUPUTIL), 1)
cp -R $(SETUPUTIL_BINPATH)/* $(INSTDIR)
diff --git a/lib/ldaputil/Makefile b/lib/ldaputil/Makefile
index 0102d029..21b39972 100644
--- a/lib/ldaputil/Makefile
+++ b/lib/ldaputil/Makefile
@@ -60,7 +60,9 @@ MCC_INCLUDE=-I$(BUILD_ROOT)/include \
$(DBM_INCLUDE) $(LDAPSDK_INCLUDE) \
$(SECURITY_INCLUDE) $(NSPR_INCLUDE)
-all: $(OBJDEST) $(LOCAL_DEPS) $(LIBS)
+CERTMAP_CONF = $(RELDIR)/shared/config/certmap.conf
+
+all: $(OBJDEST) $(LOCAL_DEPS) $(LIBS) $(CERTMAP_CONF)
$(OBJDEST):
mkdir -p $(OBJDEST)
@@ -92,5 +94,12 @@ $(LIBS): $(OBJS)
$(AR) $(OBJS)
$(RANLIB) $@
+$(CERTMAP_CONF): certmap.conf
+ rm -f $@
+ if [ ! -d $(dir $@) ] ; then \
+ mkdir -p $(dir $@) ; \
+ fi
+ cp $< $(dir $@)
+
include $(INCLUDE_DEPENDS)
diff --git a/nsconfig.mk b/nsconfig.mk
index 1754bd80..4bd705da 100644
--- a/nsconfig.mk
+++ b/nsconfig.mk
@@ -69,18 +69,18 @@ ifdef INTERNAL_BUILD
USE_SETUPUTIL:=0
USE_PERLDAP:=1
else
- USE_ADMINSERVER:=1
- USE_CONSOLE:=1
- USE_DSMLGW:=1
- USE_ORGCHART:=1
- USE_DSGW:=1
- USE_JAVATOOLS:=1
- USE_SETUPUTIL:=1
- USE_PERLDAP:=1
+ USE_ADMINSERVER:=0
+ USE_CONSOLE:=0
+ USE_DSMLGW:=0
+ USE_ORGCHART:=0
+ USE_DSGW:=0
+ USE_JAVATOOLS:=0
+ USE_SETUPUTIL:=0
+ USE_PERLDAP:=0
GET_JAVA_FROM_PATH := 1
GET_ANT_FROM_PATH := 1
USE_PERL_FROM_PATH := 1
- BUILD_JAVA_CODE := 1
+ BUILD_JAVA_CODE := 0
endif
include $(BUILD_ROOT)/nsdefs.mk