diff options
-rw-r--r-- | Makefile.am | 14 | ||||
-rw-r--r-- | Makefile.in | 88 | ||||
-rwxr-xr-x | configure | 18 | ||||
-rw-r--r-- | configure.ac | 15 | ||||
-rw-r--r-- | ldap/admin/src/initconfig.in | 22 | ||||
-rwxr-xr-x | ldap/admin/src/scripts/template-start-slapd.in | 6 | ||||
-rw-r--r-- | wrappers/initscript.in | 9 |
7 files changed, 139 insertions, 33 deletions
diff --git a/Makefile.am b/Makefile.am index d1fd67df..9be7c4a0 100644 --- a/Makefile.am +++ b/Makefile.am @@ -78,6 +78,7 @@ serverdir = $(libdir)@serverdir@ serverplugindir = $(libdir)@serverplugindir@ taskdir = $(datadir)@scripttemplatedir@ initdir = $(sysconfdir)@initdir@ +initconfigdir = $(sysconfdir)@initconfigdir@ instconfigdir = @instconfigdir@ perldir = $(libdir)@perldir@ infdir = $(datadir)@infdir@ @@ -241,6 +242,8 @@ task_SCRIPTS = ldap/admin/src/scripts/template-bak2db \ init_SCRIPTS = wrappers/$(PACKAGE_NAME) +initconfig_SCRIPTS = ldap/admin/src/$(PACKAGE_NAME) + inf_DATA = ldap/admin/src/slapd.inf \ ldap/admin/src/scripts/dscreate.map \ ldap/admin/src/scripts/dsorgentries.map @@ -1039,7 +1042,8 @@ fixupcmd = sed \ -e 's,@defaultuser\@,$(defaultuser),g' \ -e 's,@defaultgroup\@,$(defaultgroup),g' \ -e 's,@with_fhs_opt\@,@with_fhs_opt@,g' \ - -e 's,@perlexec\@,@perlexec@,g' + -e 's,@perlexec\@,@perlexec@,g' \ + -e 's,@initconfigdir\@,$(initconfigdir),g' else fixupcmd = sed \ -e 's,@bindir\@,$(bindir),g' \ @@ -1086,7 +1090,8 @@ fixupcmd = sed \ -e 's,@defaultuser\@,$(defaultuser),g' \ -e 's,@defaultgroup\@,$(defaultgroup),g' \ -e 's,@with_fhs_opt\@,@with_fhs_opt@,g' \ - -e 's,@perlexec\@,@perlexec@,g' + -e 's,@perlexec\@,@perlexec@,g' \ + -e 's,@initconfigdir\@,$(initconfigdir),g' endif %: %.in @@ -1094,4 +1099,9 @@ endif $(fixupcmd) $^ > $@ %/$(PACKAGE_NAME): %/initscript.in + if [ ! -d $(dir $@) ] ; then mkdir -p $(dir $@) ; fi + $(fixupcmd) $^ > $@ + +%/$(PACKAGE_NAME): %/initconfig.in + if [ ! -d $(dir $@) ] ; then mkdir -p $(dir $@) ; fi $(fixupcmd) $^ > $@ diff --git a/Makefile.in b/Makefile.in index 139e8a24..d8c291fa 100644 --- a/Makefile.in +++ b/Makefile.in @@ -93,11 +93,12 @@ am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(serverdir)" \ "$(DESTDIR)$(serverplugindir)" "$(DESTDIR)$(bindir)" \ "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(bindir)" \ - "$(DESTDIR)$(initdir)" "$(DESTDIR)$(perldir)" \ - "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(taskdir)" \ - "$(DESTDIR)$(configdir)" "$(DESTDIR)$(infdir)" \ - "$(DESTDIR)$(propertydir)" "$(DESTDIR)$(propertydir)" \ - "$(DESTDIR)$(sampledatadir)" "$(DESTDIR)$(schemadir)" + "$(DESTDIR)$(initdir)" "$(DESTDIR)$(initconfigdir)" \ + "$(DESTDIR)$(perldir)" "$(DESTDIR)$(sbindir)" \ + "$(DESTDIR)$(taskdir)" "$(DESTDIR)$(configdir)" \ + "$(DESTDIR)$(infdir)" "$(DESTDIR)$(propertydir)" \ + "$(DESTDIR)$(propertydir)" "$(DESTDIR)$(sampledatadir)" \ + "$(DESTDIR)$(schemadir)" serverLTLIBRARIES_INSTALL = $(INSTALL) serverpluginLTLIBRARIES_INSTALL = $(INSTALL) LTLIBRARIES = $(server_LTLIBRARIES) $(serverplugin_LTLIBRARIES) @@ -690,11 +691,12 @@ rsearch_bin_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) binSCRIPT_INSTALL = $(INSTALL_SCRIPT) initSCRIPT_INSTALL = $(INSTALL_SCRIPT) +initconfigSCRIPT_INSTALL = $(INSTALL_SCRIPT) perlSCRIPT_INSTALL = $(INSTALL_SCRIPT) sbinSCRIPT_INSTALL = $(INSTALL_SCRIPT) taskSCRIPT_INSTALL = $(INSTALL_SCRIPT) -SCRIPTS = $(bin_SCRIPTS) $(init_SCRIPTS) $(perl_SCRIPTS) \ - $(sbin_SCRIPTS) $(task_SCRIPTS) +SCRIPTS = $(bin_SCRIPTS) $(init_SCRIPTS) $(initconfig_SCRIPTS) \ + $(perl_SCRIPTS) $(sbin_SCRIPTS) $(task_SCRIPTS) DEFAULT_INCLUDES = -I. -I$(srcdir) -I. depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles @@ -917,6 +919,7 @@ icu_lib = @icu_lib@ includedir = @includedir@ infdir = $(datadir)@infdir@ infodir = @infodir@ +initconfigdir = $(sysconfdir)@initconfigdir@ initdir = $(sysconfdir)@initdir@ install_sh = @install_sh@ instconfigdir = @instconfigdir@ @@ -1153,6 +1156,7 @@ task_SCRIPTS = ldap/admin/src/scripts/template-bak2db \ ldap/admin/src/scripts/template-dbverify init_SCRIPTS = wrappers/$(PACKAGE_NAME) +initconfig_SCRIPTS = ldap/admin/src/$(PACKAGE_NAME) inf_DATA = ldap/admin/src/slapd.inf \ ldap/admin/src/scripts/dscreate.map \ ldap/admin/src/scripts/dsorgentries.map @@ -1910,7 +1914,8 @@ rsearch_bin_LDADD = $(NSPR_LINK) $(NSS_LINK) $(LDAPSDK_LINK) $(SASL_LINK) $(LIBS @BUNDLE_FALSE@ -e 's,@defaultuser\@,$(defaultuser),g' \ @BUNDLE_FALSE@ -e 's,@defaultgroup\@,$(defaultgroup),g' \ @BUNDLE_FALSE@ -e 's,@with_fhs_opt\@,@with_fhs_opt@,g' \ -@BUNDLE_FALSE@ -e 's,@perlexec\@,@perlexec@,g' +@BUNDLE_FALSE@ -e 's,@perlexec\@,@perlexec@,g' \ +@BUNDLE_FALSE@ -e 's,@initconfigdir\@,$(initconfigdir),g' # these are for the config files and scripts that we need to generate and replace @@ -1967,7 +1972,8 @@ rsearch_bin_LDADD = $(NSPR_LINK) $(NSS_LINK) $(LDAPSDK_LINK) $(SASL_LINK) $(LIBS @BUNDLE_TRUE@ -e 's,@defaultuser\@,$(defaultuser),g' \ @BUNDLE_TRUE@ -e 's,@defaultgroup\@,$(defaultgroup),g' \ @BUNDLE_TRUE@ -e 's,@with_fhs_opt\@,@with_fhs_opt@,g' \ -@BUNDLE_TRUE@ -e 's,@perlexec\@,@perlexec@,g' +@BUNDLE_TRUE@ -e 's,@perlexec\@,@perlexec@,g' \ +@BUNDLE_TRUE@ -e 's,@initconfigdir\@,$(initconfigdir),g' all: $(BUILT_SOURCES) config.h $(MAKE) $(AM_MAKEFLAGS) all-am @@ -3742,6 +3748,25 @@ uninstall-initSCRIPTS: echo " rm -f '$(DESTDIR)$(initdir)/$$f'"; \ rm -f "$(DESTDIR)$(initdir)/$$f"; \ done +install-initconfigSCRIPTS: $(initconfig_SCRIPTS) + @$(NORMAL_INSTALL) + test -z "$(initconfigdir)" || $(mkdir_p) "$(DESTDIR)$(initconfigdir)" + @list='$(initconfig_SCRIPTS)'; for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + if test -f $$d$$p; then \ + f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ + echo " $(initconfigSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(initconfigdir)/$$f'"; \ + $(initconfigSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(initconfigdir)/$$f"; \ + else :; fi; \ + done + +uninstall-initconfigSCRIPTS: + @$(NORMAL_UNINSTALL) + @list='$(initconfig_SCRIPTS)'; for p in $$list; do \ + f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ + echo " rm -f '$(DESTDIR)$(initconfigdir)/$$f'"; \ + rm -f "$(DESTDIR)$(initconfigdir)/$$f"; \ + done install-perlSCRIPTS: $(perl_SCRIPTS) @$(NORMAL_INSTALL) test -z "$(perldir)" || $(mkdir_p) "$(DESTDIR)$(perldir)" @@ -8876,7 +8901,7 @@ check: $(BUILT_SOURCES) all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(PROGRAMS) $(SCRIPTS) \ $(DATA) config.h installdirs: - for dir in "$(DESTDIR)$(serverdir)" "$(DESTDIR)$(serverplugindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(initdir)" "$(DESTDIR)$(perldir)" "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(taskdir)" "$(DESTDIR)$(configdir)" "$(DESTDIR)$(infdir)" "$(DESTDIR)$(propertydir)" "$(DESTDIR)$(propertydir)" "$(DESTDIR)$(sampledatadir)" "$(DESTDIR)$(schemadir)"; do \ + for dir in "$(DESTDIR)$(serverdir)" "$(DESTDIR)$(serverplugindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(initdir)" "$(DESTDIR)$(initconfigdir)" "$(DESTDIR)$(perldir)" "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(taskdir)" "$(DESTDIR)$(configdir)" "$(DESTDIR)$(infdir)" "$(DESTDIR)$(propertydir)" "$(DESTDIR)$(propertydir)" "$(DESTDIR)$(sampledatadir)" "$(DESTDIR)$(schemadir)"; do \ test -z "$$dir" || $(mkdir_p) "$$dir"; \ done install: $(BUILT_SOURCES) @@ -9001,9 +9026,9 @@ info: info-am info-am: install-data-am: install-configDATA install-infDATA \ - install-initSCRIPTS install-nodist_propertyDATA \ - install-perlSCRIPTS install-propertyDATA \ - install-sampledataDATA install-schemaDATA \ + install-initSCRIPTS install-initconfigSCRIPTS \ + install-nodist_propertyDATA install-perlSCRIPTS \ + install-propertyDATA install-sampledataDATA install-schemaDATA \ install-serverLTLIBRARIES install-serverpluginLTLIBRARIES \ install-taskSCRIPTS @@ -9038,12 +9063,12 @@ ps-am: uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS \ uninstall-configDATA uninstall-infDATA uninstall-info-am \ - uninstall-initSCRIPTS uninstall-nodist_propertyDATA \ - uninstall-perlSCRIPTS uninstall-propertyDATA \ - uninstall-sampledataDATA uninstall-sbinPROGRAMS \ - uninstall-sbinSCRIPTS uninstall-schemaDATA \ - uninstall-serverLTLIBRARIES uninstall-serverpluginLTLIBRARIES \ - uninstall-taskSCRIPTS + uninstall-initSCRIPTS uninstall-initconfigSCRIPTS \ + uninstall-nodist_propertyDATA uninstall-perlSCRIPTS \ + uninstall-propertyDATA uninstall-sampledataDATA \ + uninstall-sbinPROGRAMS uninstall-sbinSCRIPTS \ + uninstall-schemaDATA uninstall-serverLTLIBRARIES \ + uninstall-serverpluginLTLIBRARIES uninstall-taskSCRIPTS .PHONY: CTAGS GTAGS all all-am am--refresh check check-am clean \ clean-binPROGRAMS clean-generic clean-libtool \ @@ -9057,10 +9082,10 @@ uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS \ install-binPROGRAMS install-binSCRIPTS install-configDATA \ install-data install-data-am install-exec install-exec-am \ install-infDATA install-info install-info-am \ - install-initSCRIPTS install-man install-nodist_propertyDATA \ - install-perlSCRIPTS install-propertyDATA \ - install-sampledataDATA install-sbinPROGRAMS \ - install-sbinSCRIPTS install-schemaDATA \ + install-initSCRIPTS install-initconfigSCRIPTS install-man \ + install-nodist_propertyDATA install-perlSCRIPTS \ + install-propertyDATA install-sampledataDATA \ + install-sbinPROGRAMS install-sbinSCRIPTS install-schemaDATA \ install-serverLTLIBRARIES install-serverpluginLTLIBRARIES \ install-strip install-taskSCRIPTS installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ @@ -9068,12 +9093,12 @@ uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS \ mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ uninstall-am uninstall-binPROGRAMS uninstall-binSCRIPTS \ uninstall-configDATA uninstall-infDATA uninstall-info-am \ - uninstall-initSCRIPTS uninstall-nodist_propertyDATA \ - uninstall-perlSCRIPTS uninstall-propertyDATA \ - uninstall-sampledataDATA uninstall-sbinPROGRAMS \ - uninstall-sbinSCRIPTS uninstall-schemaDATA \ - uninstall-serverLTLIBRARIES uninstall-serverpluginLTLIBRARIES \ - uninstall-taskSCRIPTS + uninstall-initSCRIPTS uninstall-initconfigSCRIPTS \ + uninstall-nodist_propertyDATA uninstall-perlSCRIPTS \ + uninstall-propertyDATA uninstall-sampledataDATA \ + uninstall-sbinPROGRAMS uninstall-sbinSCRIPTS \ + uninstall-schemaDATA uninstall-serverLTLIBRARIES \ + uninstall-serverpluginLTLIBRARIES uninstall-taskSCRIPTS dirver.h: Makefile @@ -9093,6 +9118,11 @@ ns-slapd.properties: makstrdb $(fixupcmd) $^ > $@ %/$(PACKAGE_NAME): %/initscript.in + if [ ! -d $(dir $@) ] ; then mkdir -p $(dir $@) ; fi + $(fixupcmd) $^ > $@ + +%/$(PACKAGE_NAME): %/initconfig.in + if [ ! -d $(dir $@) ] ; then mkdir -p $(dir $@) ; fi $(fixupcmd) $^ > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. @@ -465,7 +465,7 @@ ac_includes_default="\ #endif" ac_default_prefix=/opt/$PACKAGE_NAME -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT build build_cpu build_vendor build_os host host_cpu host_vendor host_os CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CC CFLAGS ac_ct_CC CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE SED EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBOBJS debug_defs BUNDLE_TRUE BUNDLE_FALSE enable_pam_passthru_TRUE enable_pam_passthru_FALSE enable_dna_TRUE enable_dna_FALSE enable_ldapi_TRUE enable_ldapi_FALSE enable_bitwise_TRUE enable_bitwise_FALSE with_fhs_opt configdir sampledatadir propertydir schemadir serverdir serverplugindir scripttemplatedir perldir infdir defaultuser defaultgroup instconfigdir WINNT_TRUE WINNT_FALSE LIBSOCKET LIBNSL LIBDL LIBCSTD LIBCRUN initdir perlexec HPUX_TRUE HPUX_FALSE SOLARIS_TRUE SOLARIS_FALSE PKG_CONFIG ICU_CONFIG NETSNMP_CONFIG PACKAGE_BASE_VERSION nspr_inc nspr_lib nspr_libdir nss_inc nss_lib nss_libdir ldapsdk_inc ldapsdk_lib ldapsdk_libdir ldapsdk_bindir db_inc db_incdir db_lib db_libdir db_bindir db_libver sasl_inc sasl_lib sasl_libdir sasl_path svrcore_inc svrcore_lib icu_lib icu_inc icu_bin netsnmp_inc netsnmp_lib netsnmp_libdir netsnmp_link brand capbrand vendor LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT build build_cpu build_vendor build_os host host_cpu host_vendor host_os CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CC CFLAGS ac_ct_CC CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE SED EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBOBJS debug_defs BUNDLE_TRUE BUNDLE_FALSE enable_pam_passthru_TRUE enable_pam_passthru_FALSE enable_dna_TRUE enable_dna_FALSE enable_ldapi_TRUE enable_ldapi_FALSE enable_bitwise_TRUE enable_bitwise_FALSE with_fhs_opt configdir sampledatadir propertydir schemadir serverdir serverplugindir scripttemplatedir perldir infdir defaultuser defaultgroup instconfigdir WINNT_TRUE WINNT_FALSE LIBSOCKET LIBNSL LIBDL LIBCSTD LIBCRUN initdir perlexec initconfigdir HPUX_TRUE HPUX_FALSE SOLARIS_TRUE SOLARIS_FALSE PKG_CONFIG ICU_CONFIG NETSNMP_CONFIG PACKAGE_BASE_VERSION nspr_inc nspr_lib nspr_libdir nss_inc nss_lib nss_libdir ldapsdk_inc ldapsdk_lib ldapsdk_libdir ldapsdk_bindir db_inc db_incdir db_lib db_libdir db_bindir db_libver sasl_inc sasl_lib sasl_libdir sasl_path svrcore_inc svrcore_lib icu_lib icu_inc icu_bin netsnmp_inc netsnmp_lib netsnmp_libdir netsnmp_link brand capbrand vendor LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -23342,6 +23342,7 @@ _ACEOF # assume 64 bit perlexec='/opt/perl_64/bin/perl' platform="hpux" + initconfigdir="/$PACKAGE_NAME/config" ;; hppa*-hp-hpux*) @@ -23390,6 +23391,7 @@ cat >>confdefs.h <<\_ACEOF _ACEOF # assume 64 bit + initconfigdir="/$PACKAGE_NAME/config" perlexec='/opt/perl_64/bin/perl' platform="hpux" ;; @@ -23477,6 +23479,19 @@ esac +# set default initconfigdir if not already set +# value will be set so as to be relative to $(sysconfdir) +if test -z "$initconfigdir" ; then + if test -d /etc/sysconfig ; then + initconfigdir=/sysconfig + elif test -d /etc/default ; then + initconfigdir=/default + else + initconfigdir="/$PACKAGE_NAME/config" + fi +fi + + if test "$platform" = "hpux"; then @@ -26076,6 +26091,7 @@ s,@LIBCSTD@,$LIBCSTD,;t t s,@LIBCRUN@,$LIBCRUN,;t t s,@initdir@,$initdir,;t t s,@perlexec@,$perlexec,;t t +s,@initconfigdir@,$initconfigdir,;t t s,@HPUX_TRUE@,$HPUX_TRUE,;t t s,@HPUX_FALSE@,$HPUX_FALSE,;t t s,@SOLARIS_TRUE@,$SOLARIS_TRUE,;t t diff --git a/configure.ac b/configure.ac index 042de1ee..d47de5b4 100644 --- a/configure.ac +++ b/configure.ac @@ -275,6 +275,7 @@ case $host in # assume 64 bit perlexec='/opt/perl_64/bin/perl' platform="hpux" + initconfigdir="/$PACKAGE_NAME/config" ;; hppa*-hp-hpux*) AC_DEFINE([XP_UNIX], [1], [UNIX]) @@ -287,6 +288,7 @@ case $host in AC_DEFINE([_POSIX_C_SOURCE], [199506L], [POSIX revision]) AC_DEFINE([_HPUX_SOURCE], [1], [Source namespace]) # assume 64 bit + initconfigdir="/$PACKAGE_NAME/config" perlexec='/opt/perl_64/bin/perl' platform="hpux" ;; @@ -327,6 +329,19 @@ esac AC_SUBST(initdir) AC_SUBST(perlexec) +# set default initconfigdir if not already set +# value will be set so as to be relative to $(sysconfdir) +if test -z "$initconfigdir" ; then + if test -d /etc/sysconfig ; then + initconfigdir=/sysconfig + elif test -d /etc/default ; then + initconfigdir=/default + else + initconfigdir="/$PACKAGE_NAME/config" + fi +fi +AC_SUBST(initconfigdir) + AM_CONDITIONAL(HPUX,test "$platform" = "hpux") AM_CONDITIONAL(SOLARIS,test "$platform" = "solaris") diff --git a/ldap/admin/src/initconfig.in b/ldap/admin/src/initconfig.in new file mode 100644 index 00000000..aa2c4674 --- /dev/null +++ b/ldap/admin/src/initconfig.in @@ -0,0 +1,22 @@ +# This file is sourced by @package_name@ upon startup to set +# the default environment for all directory server instances. +# To set instance specific defaults, make a copy of this +# file in the same directory called @package_name@-instance +# where "instance" is the name of your directory server +# instance e.g. @package_name@-localhost for the +# slapd-localhost instance + +# In order to make more file descriptors available +# to the directory server, first make sure the system +# hard limits are raised, then use ulimit - uncomment +# out the following line and change the value to the +# desired value +# ulimit -n 8192 + +# In order to use SASL/GSSAPI the directory +# server needs to know where to find its keytab +# file - uncomment the following line and set +# the path and filename appropriately +# KRB5_KTNAME=@instconfigdir@/slapd-instance/keytab ; export KRB5_KTNAME + +# other environment settings can be added here too diff --git a/ldap/admin/src/scripts/template-start-slapd.in b/ldap/admin/src/scripts/template-start-slapd.in index 59d32345..f2f70c5b 100755 --- a/ldap/admin/src/scripts/template-start-slapd.in +++ b/ldap/admin/src/scripts/template-start-slapd.in @@ -6,6 +6,12 @@ export LD_LIBRARY_PATH SHLIB_PATH=$prefix{{SERVER-DIR}}:$prefix@nss_libdir@:$prefix@libdir@:@nss_libdir@ export SHLIB_PATH +# source env. for all instances +[ -f @initconfigdir@/@package_name@ ] && . @initconfigdir@/@package_name@ + +# source env. for this instance +[ -f @initconfigdir@/@package_name@-{{SERV-ID}} ] && . @initconfigdir@/@package_name@-{{SERV-ID}} + # Script that starts the ns-slapd server. # Exit status can be: # 0: Server started successfully diff --git a/wrappers/initscript.in b/wrappers/initscript.in index 28a5d37e..320d3506 100644 --- a/wrappers/initscript.in +++ b/wrappers/initscript.in @@ -86,6 +86,8 @@ instbase="@instconfigdir@" umask 077 +[ -f @initconfigdir@/@package_name@ ] && . @initconfigdir@/@package_name@ + INSTANCES="" for FILE in `/bin/ls -d $instbase/slapd-* 2>/dev/null`; do @@ -143,7 +145,12 @@ start() { rm -f $pidfile rm -f $startpidfile fix_pid_dir_ownership $instbase/slapd-$instance - $exec -D $instbase/slapd-$instance -i $pidfile -w $startpidfile + # start the directory server in a subshell so that the instance specific + # init config environment will not apply to any other instance + ( + [ -f @initconfigdir@/@package_name@-$instance ] && . @initconfigdir@/@package_name@-$instance + $exec -D $instbase/slapd-$instance -i $pidfile -w $startpidfile + ) if [ $? -eq 0 ]; then server_started=1 # well, perhaps not running, but started ok else |