[Fedora-directory-commits] adminserver Makefile.in, 1.53, 1.54 aclocal.m4, 1.46, 1.47 configure, 1.50, 1.51 configure.ac, 1.29, 1.30 ltmain.sh, 1.7, 1.8
by Noriko Hosoi
Author: nhosoi
Update of /cvs/dirsec/adminserver
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv1131
Modified Files:
Makefile.in aclocal.m4 configure configure.ac ltmain.sh
Log Message:
Resolves: #476096
Summary: move perl on solaris to a <TBD> path
Description: Changing Solaris perl path (perlexec) from /opt/perl5x/bin/perl to /usr/lib/sparcv9/dirsrv/perl5x/bin/perl.
Index: Makefile.in
===================================================================
RCS file: /cvs/dirsec/adminserver/Makefile.in,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -r1.53 -r1.54
--- Makefile.in 27 Feb 2009 17:34:20 -0000 1.53
+++ Makefile.in 10 Mar 2009 17:03:59 -0000 1.54
@@ -357,6 +357,7 @@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
RANLIB = @RANLIB@
+SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SOLARIS_FALSE = @SOLARIS_FALSE@
Index: aclocal.m4
===================================================================
RCS file: /cvs/dirsec/adminserver/aclocal.m4,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -r1.46 -r1.47
--- aclocal.m4 27 Feb 2009 17:34:20 -0000 1.46
+++ aclocal.m4 10 Mar 2009 17:03:59 -0000 1.47
@@ -1578,10 +1578,27 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '[#]line __oline__ "configure"' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -4288,6 +4305,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$_LT_AC_TAGVAR(GCC, $1)
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -4421,11 +4441,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1)
+predep_objects=\`echo $lt_[]_LT_AC_TAGVAR(predep_objects, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1)
+postdep_objects=\`echo $lt_[]_LT_AC_TAGVAR(postdep_objects, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -4437,7 +4457,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
+compiler_lib_search_path=\`echo $lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -4517,7 +4537,7 @@
link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1)
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -6353,6 +6373,7 @@
done
done
done
+IFS=$as_save_IFS
lt_ac_max=0
lt_ac_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
@@ -6385,6 +6406,7 @@
done
])
SED=$lt_cv_path_SED
+AC_SUBST([SED])
AC_MSG_RESULT([$SED])
])
Index: configure
===================================================================
RCS file: /cvs/dirsec/adminserver/configure,v
retrieving revision 1.50
retrieving revision 1.51
diff -u -r1.50 -r1.51
--- configure 27 Feb 2009 17:34:20 -0000 1.50
+++ configure 10 Mar 2009 17:03:59 -0000 1.51
@@ -468,7 +468,7 @@
ac_default_prefix=/opt/dirsrv
ac_subdirs_all="$ac_subdirs_all mod_admserv"
ac_subdirs_all="$ac_subdirs_all mod_restartd"
-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 EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXX
CPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBOBJS PACKAGE_BASE_NAME PACKAGE_BASE_VERSION debug_defs BUNDLE_TRUE BUNDLE_FALSE LIBSOCKET LIBNSL LIBCSTD LIBCRUN initdir perlexec CXXLINK_REQUIRED_TRUE CXXLINK_REQUIRED_FALSE HPUX_TRUE HPUX_FALSE SOLARIS_TRUE SOLARIS_FALSE initconfigdir HTTPD APXS APR_CONFIG PKG_CONFIG ICU_CONFIG nsspcache instconfigdir dslibdir nspr_inc nspr_lib nspr_libdir nss_inc nss_lib nss_libdir sasl_inc sasl_lib sasl_libdir ldapsdk_inc ldapsdk_lib ldapsdk_libdir adminutil_inc adminutil_lib adminutil_libdir adminutil_ver icu_lib icu_libdir icu_inc icu_bin instancename cgibindir cmdbindir moddir modnssbindir propertydir htmldir icondir manualdir httpdconf httpdconfdir mimemagic httpduser httpdgroup admlogdir piddir pidfile admservport admservip ldifdir admmoddir nssmoddir infdir perldir brand capbrand vendor WINNT_TRUE WINNT_FALSE APACHE22_TRUE APACHE22_FALSE subdirs MOD_ADMSERV_TRUE MOD_ADMSERV_FALSE MOD_RESTARTD_TRUE MOD_RESTARTD_FALSE 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 PACKAGE_BASE_NAME PACKAGE_BASE_VERSION debug_defs BUNDLE_TRUE BUNDLE_FALSE LIBSOCKET LIBNSL LIBCSTD LIBCRUN initdir perlexec CXXLINK_REQUIRED_TRUE CXXLINK_REQUIRED_FALSE HPUX_TRUE HPUX_FALSE SOLARIS_TRUE SOLARIS_FALSE initconfigdir HTTPD APXS APR_CONFIG PKG_CONFIG ICU_CONFIG nsspcache instconfigdir dslibdir nspr_inc nspr_lib nspr_libdir nss_inc nss_lib nss_libdir sasl_inc sasl_lib sasl_libdir ldapsdk_inc ldapsdk_lib ldapsdk_libdir adminutil_inc adminutil_lib adminutil_libdir adminutil_ver icu_lib icu_libdir icu_inc icu_bin instancename cgibindir cmdbindir moddir modnssbindir propertydir htmldir icondir manualdir httpdconf httpdconfdir mimemagic httpduser httpdgroup admlogdir piddir pidfile admservport admservip ldifdir admmoddir nssmoddir infdir perldir brand capbrand vendor WINNT_TRUE WINNT_FALSE APACHE22_TRUE APACHE22_FALSE subdirs MOD_ADMSERV_TRUE MOD_ADMSERV_FALSE MOD_RESTARTD_TRUE MOD_RESTARTD_FALSE LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -3839,6 +3839,7 @@
done
done
done
+IFS=$as_save_IFS
lt_ac_max=0
lt_ac_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
@@ -3873,6 +3874,7 @@
fi
SED=$lt_cv_path_SED
+
echo "$as_me:$LINENO: result: $SED" >&5
echo "${ECHO_T}$SED" >&6
@@ -4313,7 +4315,7 @@
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 4316 "configure"' > conftest.$ac_ext
+ echo '#line 4318 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -5448,7 +5450,7 @@
# Provide some information about the compiler.
-echo "$as_me:5451:" \
+echo "$as_me:5453:" \
"checking for Fortran 77 compiler version" >&5
ac_compiler=`set X $ac_compile; echo $2`
{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
@@ -6511,11 +6513,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6514: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6516: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:6518: \$? = $ac_status" >&5
+ echo "$as_me:6520: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -6779,11 +6781,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6782: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6784: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:6786: \$? = $ac_status" >&5
+ echo "$as_me:6788: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -6883,11 +6885,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6886: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6888: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:6890: \$? = $ac_status" >&5
+ echo "$as_me:6892: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -8348,10 +8350,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 8357 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -9228,7 +9251,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 9231 "configure"
+#line 9254 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -9328,7 +9351,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 9331 "configure"
+#line 9354 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -9659,6 +9682,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -9792,11 +9818,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects
+predep_objects=\`echo $lt_predep_objects | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects
+postdep_objects=\`echo $lt_postdep_objects | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -9808,7 +9834,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -9888,7 +9914,7 @@
link_all_deplibs=$link_all_deplibs
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -11668,11 +11694,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11671: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11697: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:11675: \$? = $ac_status" >&5
+ echo "$as_me:11701: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -11772,11 +11798,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11775: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11801: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:11779: \$? = $ac_status" >&5
+ echo "$as_me:11805: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -12304,10 +12330,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 12337 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -12691,6 +12738,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_CXX
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -12824,11 +12874,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_CXX
+predep_objects=\`echo $lt_predep_objects_CXX | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_CXX
+postdep_objects=\`echo $lt_postdep_objects_CXX | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -12840,7 +12890,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_CXX
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_CXX | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -12920,7 +12970,7 @@
link_all_deplibs=$link_all_deplibs_CXX
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -13342,11 +13392,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13345: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13395: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:13349: \$? = $ac_status" >&5
+ echo "$as_me:13399: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -13446,11 +13496,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13449: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13499: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:13453: \$? = $ac_status" >&5
+ echo "$as_me:13503: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -14891,10 +14941,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 14948 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -15278,6 +15349,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_F77
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -15411,11 +15485,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_F77
+predep_objects=\`echo $lt_predep_objects_F77 | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_F77
+postdep_objects=\`echo $lt_postdep_objects_F77 | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -15427,7 +15501,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_F77
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_F77 | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -15507,7 +15581,7 @@
link_all_deplibs=$link_all_deplibs_F77
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -15649,11 +15723,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15652: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15726: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15656: \$? = $ac_status" >&5
+ echo "$as_me:15730: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -15917,11 +15991,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15920: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15994: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15924: \$? = $ac_status" >&5
+ echo "$as_me:15998: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -16021,11 +16095,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:16024: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16098: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:16028: \$? = $ac_status" >&5
+ echo "$as_me:16102: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -17486,10 +17560,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 17567 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -17873,6 +17968,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_GCJ
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -18006,11 +18104,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_GCJ
+predep_objects=\`echo $lt_predep_objects_GCJ | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_GCJ
+postdep_objects=\`echo $lt_postdep_objects_GCJ | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -18022,7 +18120,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_GCJ
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_GCJ | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -18102,7 +18200,7 @@
link_all_deplibs=$link_all_deplibs_GCJ
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -18354,6 +18452,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_RC
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -18487,11 +18588,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_RC
+predep_objects=\`echo $lt_predep_objects_RC | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_RC
+postdep_objects=\`echo $lt_postdep_objects_RC | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -18503,7 +18604,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_RC
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_RC | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -18583,7 +18684,7 @@
link_all_deplibs=$link_all_deplibs_RC
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -23144,7 +23245,7 @@
CXXLINK_REQUIRED=1
platform="solaris"
# assume 64 bit
- perlexec='/opt/perl5x/bin/perl'
+ perlexec='/usr/lib/sparcv9/dirsrv/perl5x/bin/perl'
# relative to sysconfdir
initdir=/init.d
;;
@@ -25830,6 +25931,7 @@
s,@CCDEPMODE@,$CCDEPMODE,;t t
s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t
s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t
+s,@SED@,$SED,;t t
s,@EGREP@,$EGREP,;t t
s,@LN_S@,$LN_S,;t t
s,@ECHO@,$ECHO,;t t
Index: configure.ac
===================================================================
RCS file: /cvs/dirsec/adminserver/configure.ac,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- configure.ac 29 Jan 2009 21:33:11 -0000 1.29
+++ configure.ac 10 Mar 2009 17:04:00 -0000 1.30
@@ -187,7 +187,7 @@
CXXLINK_REQUIRED=1
platform="solaris"
# assume 64 bit
- perlexec='/opt/perl5x/bin/perl'
+ perlexec='/usr/lib/sparcv9/dirsrv/perl5x/bin/perl'
# relative to sysconfdir
initdir=/init.d
;;
Index: ltmain.sh
===================================================================
RCS file: /cvs/dirsec/adminserver/ltmain.sh,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- ltmain.sh 5 Sep 2007 16:45:58 -0000 1.7
+++ ltmain.sh 10 Mar 2009 17:04:00 -0000 1.8
@@ -46,10 +46,16 @@
VERSION=1.5.22
TIMESTAMP=" (1.1220.2.365 2005/12/18 22:14:06)"
-# See if we are running on zsh, and set the options which allow our
-# commands through without removal of \ escapes.
-if test -n "${ZSH_VERSION+set}" ; then
+# Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE).
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
fi
# Check that we have a working $echo.
@@ -105,12 +111,14 @@
# These must not be set unconditionally because not all systems understand
# e.g. LANG=C (notably SCO).
# We save the old values to restore during execute mode.
-if test "${LC_ALL+set}" = set; then
- save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL
-fi
-if test "${LANG+set}" = set; then
- save_LANG="$LANG"; LANG=C; export LANG
-fi
+for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+do
+ eval "if test \"\${$lt_var+set}\" = set; then
+ save_$lt_var=\$$lt_var
+ $lt_var=C
+ export $lt_var
+ fi"
+done
# Make sure IFS has a sensible default
lt_nl='
@@ -136,6 +144,8 @@
preserve_args=
lo2o="s/\\.lo\$/.${objext}/"
o2lo="s/\\.${objext}\$/.lo/"
+extracted_archives=
+extracted_serial=0
#####################################
# Shell function definitions:
@@ -327,7 +337,17 @@
*) my_xabs=`pwd`"/$my_xlib" ;;
esac
my_xlib=`$echo "X$my_xlib" | $Xsed -e 's%^.*/%%'`
- my_xdir="$my_gentop/$my_xlib"
+ my_xlib_u=$my_xlib
+ while :; do
+ case " $extracted_archives " in
+ *" $my_xlib_u "*)
+ extracted_serial=`expr $extracted_serial + 1`
+ my_xlib_u=lt$extracted_serial-$my_xlib ;;
+ *) break ;;
+ esac
+ done
+ extracted_archives="$extracted_archives $my_xlib_u"
+ my_xdir="$my_gentop/$my_xlib_u"
$show "${rm}r $my_xdir"
$run ${rm}r "$my_xdir"
@@ -758,6 +778,7 @@
*.f90) xform=f90 ;;
*.for) xform=for ;;
*.java) xform=java ;;
+ *.obj) xform=obj ;;
esac
libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
@@ -1138,8 +1159,9 @@
for arg
do
case $arg in
- -all-static | -static)
- if test "X$arg" = "X-all-static"; then
+ -all-static | -static | -static-libtool-libs)
+ case $arg in
+ -all-static)
if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
$echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
fi
@@ -1147,12 +1169,20 @@
dlopen_self=$dlopen_self_static
fi
prefer_static_libs=yes
- else
+ ;;
+ -static)
if test -z "$pic_flag" && test -n "$link_static_flag"; then
dlopen_self=$dlopen_self_static
fi
prefer_static_libs=built
- fi
+ ;;
+ -static-libtool-libs)
+ if test -z "$pic_flag" && test -n "$link_static_flag"; then
+ dlopen_self=$dlopen_self_static
+ fi
+ prefer_static_libs=yes
+ ;;
+ esac
build_libtool_libs=no
build_old_libs=yes
break
@@ -1712,7 +1742,7 @@
continue
;;
- -static)
+ -static | -static-libtool-libs)
# The effects of -static are defined in a previous loop.
# We used to do the same as -all-static on platforms that
# didn't have a PIC flag, but the assumption that the effects
@@ -2490,7 +2520,9 @@
if test "$linkmode,$pass" = "prog,link"; then
if test -n "$library_names" &&
- { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
+ { { test "$prefer_static_libs" = no ||
+ test "$prefer_static_libs,$installed" = "built,yes"; } ||
+ test -z "$old_library"; }; then
# We need to hardcode the library path
if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
# Make sure the rpath contains only unique directories.
@@ -3186,7 +3218,7 @@
# which has an extra 1 added just for fun
#
case $version_type in
- darwin|linux|osf|windows)
+ darwin|linux|osf|windows|none)
current=`expr $number_major + $number_minor`
age="$number_minor"
revision="$number_revision"
@@ -3410,11 +3442,11 @@
fi
# Eliminate all temporary directories.
- for path in $notinst_path; do
- lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"`
- deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"`
- dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"`
- done
+# for path in $notinst_path; do
+# lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"`
+# deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"`
+# dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"`
+# done
if test -n "$xrpath"; then
# If the user specified any rpath flags, then add them.
@@ -3515,13 +3547,12 @@
int main() { return 0; }
EOF
$rm conftest
- $LTCC $LTCFLAGS -o conftest conftest.c $deplibs
- if test "$?" -eq 0 ; then
+ if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
ldd_output=`ldd conftest`
for i in $deplibs; do
name=`expr $i : '-l\(.*\)'`
# If $name is empty we are operating on a -L argument.
- if test "$name" != "" && test "$name" -ne "0"; then
+ if test "$name" != "" && test "$name" != "0"; then
if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
case " $predeps $postdeps " in
*" $i "*)
@@ -3560,9 +3591,7 @@
# If $name is empty we are operating on a -L argument.
if test "$name" != "" && test "$name" != "0"; then
$rm conftest
- $LTCC $LTCFLAGS -o conftest conftest.c $i
- # Did it work?
- if test "$?" -eq 0 ; then
+ if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
ldd_output=`ldd conftest`
if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
case " $predeps $postdeps " in
@@ -3594,7 +3623,7 @@
droppeddeps=yes
$echo
$echo "*** Warning! Library $i is needed by this library but I was not able to"
- $echo "*** make it link in! You will probably need to install it or some"
+ $echo "*** make it link in! You will probably need to install it or some"
$echo "*** library that it depends on before this library will be fully"
$echo "*** functional. Installing it before continuing would be even better."
fi
@@ -4239,12 +4268,14 @@
reload_conv_objs=
gentop=
# reload_cmds runs $LD directly, so let us get rid of
- # -Wl from whole_archive_flag_spec
+ # -Wl from whole_archive_flag_spec and hope we can get by with
+ # turning comma into space..
wl=
if test -n "$convenience"; then
if test -n "$whole_archive_flag_spec"; then
- eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\"
+ eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
+ reload_conv_objs=$reload_objs\ `$echo "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'`
else
gentop="$output_objdir/${obj}x"
generated="$generated $gentop"
@@ -4692,16 +4723,16 @@
case $host in
*cygwin* | *mingw* )
if test -f "$output_objdir/${outputname}.def" ; then
- compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%"`
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%"`
+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%" | $NL2SP`
+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%" | $NL2SP`
else
- compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%"`
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%"`
+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
fi
;;
* )
- compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%"`
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%"`
+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
;;
esac
;;
@@ -4716,13 +4747,13 @@
# really was required.
# Nullify the symbol file.
- compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s% @SYMFILE@%%" | $NL2SP`
+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s% @SYMFILE@%%" | $NL2SP`
fi
if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
# Replace the output file specification.
- compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e 's%@OUTPUT@%'"$output"'%g' | $NL2SP`
link_command="$compile_command$compile_rpath"
# We have no uninstalled library dependencies, so finalize right now.
@@ -4809,7 +4840,7 @@
if test "$fast_install" != no; then
link_command="$finalize_var$compile_command$finalize_rpath"
if test "$fast_install" = yes; then
- relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
+ relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $SP2NL | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g' | $NL2SP`
else
# fast_install is set to needless
relink_command=
@@ -4846,7 +4877,7 @@
fi
done
relink_command="(cd `pwd`; $relink_command)"
- relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
+ relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e "$sed_quote_subst" | $NL2SP`
fi
# Quote $echo for shipping.
@@ -5253,6 +5284,18 @@
Xsed='${SED} -e 1s/^X//'
sed_quote_subst='$sed_quote_subst'
+# Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE).
+if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '\${1+\"\$@\"}'='\"\$@\"'
+ setopt NO_GLOB_SUBST
+else
+ case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
+fi
+
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
@@ -5395,7 +5438,7 @@
;;
esac
$echo >> $output "\
- \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\"
+ \$echo \"\$0: cannot exec \$program \$*\"
exit $EXIT_FAILURE
fi
else
@@ -5581,7 +5624,7 @@
done
# Quote the link command for shipping.
relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
- relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
+ relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e "$sed_quote_subst" | $NL2SP`
if test "$hardcode_automatic" = yes ; then
relink_command=
fi
@@ -5926,9 +5969,9 @@
if test -n "$inst_prefix_dir"; then
# Stick the inst_prefix_dir data into the link command.
- relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
+ relink_command=`$echo "$relink_command" | $SP2NL | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%" | $NL2SP`
else
- relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%%"`
+ relink_command=`$echo "$relink_command" | $SP2NL | $SED "s%@inst_prefix_dir@%%" | $NL2SP`
fi
$echo "$modename: warning: relinking \`$file'" 1>&2
@@ -6137,7 +6180,7 @@
file=`$echo "X$file$stripped_ext" | $Xsed -e 's%^.*/%%'`
outputname="$tmpdir/$file"
# Replace the output file specification.
- relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
+ relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g' | $NL2SP`
$show "$relink_command"
if $run eval "$relink_command"; then :
@@ -6413,12 +6456,15 @@
fi
# Restore saved environment variables
- if test "${save_LC_ALL+set}" = set; then
- LC_ALL="$save_LC_ALL"; export LC_ALL
- fi
- if test "${save_LANG+set}" = set; then
- LANG="$save_LANG"; export LANG
- fi
+ for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+ do
+ eval "if test \"\${save_$lt_var+set}\" = set; then
+ $lt_var=\$save_$lt_var; export $lt_var
+ else
+ $lt_unset $lt_var
+ fi"
+ done
+
# Now prepare to actually exec the command.
exec_cmd="\$cmd$args"
@@ -6775,9 +6821,9 @@
-dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
-export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
-export-symbols SYMFILE
- try to export only the symbols listed in SYMFILE
+ try to export only the symbols listed in SYMFILE
-export-symbols-regex REGEX
- try to export only the symbols matching REGEX
+ try to export only the symbols matching REGEX
-LLIBDIR search LIBDIR for required installed libraries
-lNAME OUTPUT-FILE requires the installed library libNAME
-module build a library that can dlopened
@@ -6791,9 +6837,11 @@
-release RELEASE specify package release information
-rpath LIBDIR the created library will eventually be installed in LIBDIR
-R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
- -static do not do any dynamic linking of libtool libraries
+ -static do not do any dynamic linking of uninstalled libtool libraries
+ -static-libtool-libs
+ do not do any dynamic linking of libtool libraries
-version-info CURRENT[:REVISION[:AGE]]
- specify library version info [each variable defaults to 0]
+ specify library version info [each variable defaults to 0]
All other options (arguments beginning with \`-') are ignored.
15 years, 2 months
[Fedora-directory-commits] ldapserver Makefile.in, 1.104, 1.105 aclocal.m4, 1.80, 1.81 configure, 1.100, 1.101 configure.ac, 1.57, 1.58 ltmain.sh, 1.31, 1.32
by Noriko Hosoi
Author: nhosoi
Update of /cvs/dirsec/ldapserver
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv30996
Modified Files:
Makefile.in aclocal.m4 configure configure.ac ltmain.sh
Log Message:
Resolves: #476096
Summary: move perl on solaris to a <TBD> path
Description: Changing Solaris perl path (perlexec) from /opt/perl5x/bin/perl to /usr/lib/sparcv9/dirsrv/perl5x/bin/perl.
Index: Makefile.in
===================================================================
RCS file: /cvs/dirsec/ldapserver/Makefile.in,v
retrieving revision 1.104
retrieving revision 1.105
diff -u -r1.104 -r1.105
--- Makefile.in 13 Feb 2009 20:05:55 -0000 1.104
+++ Makefile.in 10 Mar 2009 16:55:13 -0000 1.105
@@ -935,6 +935,7 @@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
RANLIB = @RANLIB@
+SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SOLARIS_FALSE = @SOLARIS_FALSE@
Index: aclocal.m4
===================================================================
RCS file: /cvs/dirsec/ldapserver/aclocal.m4,v
retrieving revision 1.80
retrieving revision 1.81
diff -u -r1.80 -r1.81
--- aclocal.m4 13 Feb 2009 20:05:57 -0000 1.80
+++ aclocal.m4 10 Mar 2009 16:55:17 -0000 1.81
@@ -1578,10 +1578,27 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '[#]line __oline__ "configure"' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -4288,6 +4305,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$_LT_AC_TAGVAR(GCC, $1)
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -4421,11 +4441,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1)
+predep_objects=\`echo $lt_[]_LT_AC_TAGVAR(predep_objects, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1)
+postdep_objects=\`echo $lt_[]_LT_AC_TAGVAR(postdep_objects, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -4437,7 +4457,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
+compiler_lib_search_path=\`echo $lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -4517,7 +4537,7 @@
link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1)
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -6353,6 +6373,7 @@
done
done
done
+IFS=$as_save_IFS
lt_ac_max=0
lt_ac_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
@@ -6385,6 +6406,7 @@
done
])
SED=$lt_cv_path_SED
+AC_SUBST([SED])
AC_MSG_RESULT([$SED])
])
Index: configure
===================================================================
RCS file: /cvs/dirsec/ldapserver/configure,v
retrieving revision 1.100
retrieving revision 1.101
diff -u -r1.100 -r1.101
--- configure 13 Feb 2009 20:05:58 -0000 1.100
+++ configure 10 Mar 2009 16:55:17 -0000 1.101
@@ -465,7 +465,7 @@
#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 CCAS CCASFLAGS 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_autobind_TRUE enable_autobind_FALSE enable_auto_dn_suffix_TRUE enable_auto_dn_suffix_FALSE enable_bitwise_TRUE enable_bitwise_FALSE with_fhs_opt configdir sampledatadir propertydir schemadir serverdir serverplugindir scripttemplatedir perldir infdir mibdir 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 KRB5_CONFIG_BIN kerberos_inc kerberos_lib kerberos_libdir 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 CCAS CCASFLAGS SED EGREP LN_S ECHO AR ac_ct_AR RANLIB a
c_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_autobind_TRUE enable_autobind_FALSE enable_auto_dn_suffix_TRUE enable_auto_dn_suffix_FALSE enable_bitwise_TRUE enable_bitwise_FALSE with_fhs_opt configdir sampledatadir propertydir schemadir serverdir serverplugindir scripttemplatedir perldir infdir mibdir 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 KRB5_CONFIG_BIN kerberos_inc kerberos_lib kerberos_libdir 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.
@@ -3876,6 +3876,7 @@
done
done
done
+IFS=$as_save_IFS
lt_ac_max=0
lt_ac_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
@@ -3910,6 +3911,7 @@
fi
SED=$lt_cv_path_SED
+
echo "$as_me:$LINENO: result: $SED" >&5
echo "${ECHO_T}$SED" >&6
@@ -4350,7 +4352,7 @@
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 4353 "configure"' > conftest.$ac_ext
+ echo '#line 4355 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -5485,7 +5487,7 @@
# Provide some information about the compiler.
-echo "$as_me:5488:" \
+echo "$as_me:5490:" \
"checking for Fortran 77 compiler version" >&5
ac_compiler=`set X $ac_compile; echo $2`
{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
@@ -6548,11 +6550,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6551: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6553: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:6555: \$? = $ac_status" >&5
+ echo "$as_me:6557: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -6816,11 +6818,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6819: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6821: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:6823: \$? = $ac_status" >&5
+ echo "$as_me:6825: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -6920,11 +6922,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:6923: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:6925: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:6927: \$? = $ac_status" >&5
+ echo "$as_me:6929: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -8385,10 +8387,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 8394 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -9265,7 +9288,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 9268 "configure"
+#line 9291 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -9365,7 +9388,7 @@
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 9368 "configure"
+#line 9391 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -9696,6 +9719,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -9829,11 +9855,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects
+predep_objects=\`echo $lt_predep_objects | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects
+postdep_objects=\`echo $lt_postdep_objects | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -9845,7 +9871,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -9925,7 +9951,7 @@
link_all_deplibs=$link_all_deplibs
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -11705,11 +11731,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11708: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11734: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:11712: \$? = $ac_status" >&5
+ echo "$as_me:11738: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -11809,11 +11835,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:11812: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:11838: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:11816: \$? = $ac_status" >&5
+ echo "$as_me:11842: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -12341,10 +12367,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 12374 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -12728,6 +12775,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_CXX
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -12861,11 +12911,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_CXX
+predep_objects=\`echo $lt_predep_objects_CXX | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_CXX
+postdep_objects=\`echo $lt_postdep_objects_CXX | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -12877,7 +12927,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_CXX
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_CXX | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -12957,7 +13007,7 @@
link_all_deplibs=$link_all_deplibs_CXX
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -13379,11 +13429,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13382: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13432: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:13386: \$? = $ac_status" >&5
+ echo "$as_me:13436: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -13483,11 +13533,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13486: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13536: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:13490: \$? = $ac_status" >&5
+ echo "$as_me:13540: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -14928,10 +14978,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 14985 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -15315,6 +15386,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_F77
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -15448,11 +15522,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_F77
+predep_objects=\`echo $lt_predep_objects_F77 | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_F77
+postdep_objects=\`echo $lt_postdep_objects_F77 | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -15464,7 +15538,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_F77
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_F77 | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -15544,7 +15618,7 @@
link_all_deplibs=$link_all_deplibs_F77
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -15686,11 +15760,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15689: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15763: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15693: \$? = $ac_status" >&5
+ echo "$as_me:15767: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -15954,11 +16028,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15957: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16031: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15961: \$? = $ac_status" >&5
+ echo "$as_me:16035: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -16058,11 +16132,11 @@
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:16061: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:16135: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:16065: \$? = $ac_status" >&5
+ echo "$as_me:16139: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -17523,10 +17597,31 @@
# before this can be enabled.
hardcode_into_libs=yes
+ # find out which ABI we are using
+ libsuff=
+ case "$host_cpu" in
+ x86_64*|s390x*|powerpc64*)
+ echo '#line 17604 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *64-bit*)
+ libsuff=64
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+ esac
+
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -17910,6 +18005,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_GCJ
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -18043,11 +18141,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_GCJ
+predep_objects=\`echo $lt_predep_objects_GCJ | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_GCJ
+postdep_objects=\`echo $lt_postdep_objects_GCJ | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -18059,7 +18157,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_GCJ
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_GCJ | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -18139,7 +18237,7 @@
link_all_deplibs=$link_all_deplibs_GCJ
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -18391,6 +18489,9 @@
# Is the compiler the GNU C compiler?
with_gcc=$GCC_RC
+gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\`
+gcc_ver=\`gcc -dumpversion\`
+
# An ERE matcher.
EGREP=$lt_EGREP
@@ -18524,11 +18625,11 @@
# Dependencies to place before the objects being linked to create a
# shared library.
-predep_objects=$lt_predep_objects_RC
+predep_objects=\`echo $lt_predep_objects_RC | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place after the objects being linked to create a
# shared library.
-postdep_objects=$lt_postdep_objects_RC
+postdep_objects=\`echo $lt_postdep_objects_RC | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Dependencies to place before the objects being linked to create a
# shared library.
@@ -18540,7 +18641,7 @@
# The library search path used internally by the compiler when linking
# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_RC
+compiler_lib_search_path=\`echo $lt_compiler_lib_search_path_RC | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
@@ -18620,7 +18721,7 @@
link_all_deplibs=$link_all_deplibs_RC
# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\`
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
@@ -23729,7 +23830,7 @@
platform="solaris"
# assume 64 bit
- perlexec='/opt/perl5x/bin/perl'
+ perlexec='/usr/lib/sparcv9/dirsrv/perl5x/bin/perl'
# relative to sysconfdir
initdir=/init.d
;;
@@ -27082,6 +27183,7 @@
s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t
s,@CCAS@,$CCAS,;t t
s,@CCASFLAGS@,$CCASFLAGS,;t t
+s,@SED@,$SED,;t t
s,@EGREP@,$EGREP,;t t
s,@LN_S@,$LN_S,;t t
s,@ECHO@,$ECHO,;t t
Index: configure.ac
===================================================================
RCS file: /cvs/dirsec/ldapserver/configure.ac,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -r1.57 -r1.58
--- configure.ac 4 Nov 2008 18:23:06 -0000 1.57
+++ configure.ac 10 Mar 2009 16:55:20 -0000 1.58
@@ -388,7 +388,7 @@
AC_SUBST([LIBCRUN], [$LIBCRUN])
platform="solaris"
# assume 64 bit
- perlexec='/opt/perl5x/bin/perl'
+ perlexec='/usr/lib/sparcv9/dirsrv/perl5x/bin/perl'
# relative to sysconfdir
initdir=/init.d
;;
Index: ltmain.sh
===================================================================
RCS file: /cvs/dirsec/ldapserver/ltmain.sh,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- ltmain.sh 13 Feb 2009 20:05:58 -0000 1.31
+++ ltmain.sh 10 Mar 2009 16:55:20 -0000 1.32
@@ -46,10 +46,16 @@
VERSION=1.5.22
TIMESTAMP=" (1.1220.2.365 2005/12/18 22:14:06)"
-# See if we are running on zsh, and set the options which allow our
-# commands through without removal of \ escapes.
-if test -n "${ZSH_VERSION+set}" ; then
+# Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE).
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
fi
# Check that we have a working $echo.
@@ -105,12 +111,14 @@
# These must not be set unconditionally because not all systems understand
# e.g. LANG=C (notably SCO).
# We save the old values to restore during execute mode.
-if test "${LC_ALL+set}" = set; then
- save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL
-fi
-if test "${LANG+set}" = set; then
- save_LANG="$LANG"; LANG=C; export LANG
-fi
+for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+do
+ eval "if test \"\${$lt_var+set}\" = set; then
+ save_$lt_var=\$$lt_var
+ $lt_var=C
+ export $lt_var
+ fi"
+done
# Make sure IFS has a sensible default
lt_nl='
@@ -136,6 +144,8 @@
preserve_args=
lo2o="s/\\.lo\$/.${objext}/"
o2lo="s/\\.${objext}\$/.lo/"
+extracted_archives=
+extracted_serial=0
#####################################
# Shell function definitions:
@@ -327,7 +337,17 @@
*) my_xabs=`pwd`"/$my_xlib" ;;
esac
my_xlib=`$echo "X$my_xlib" | $Xsed -e 's%^.*/%%'`
- my_xdir="$my_gentop/$my_xlib"
+ my_xlib_u=$my_xlib
+ while :; do
+ case " $extracted_archives " in
+ *" $my_xlib_u "*)
+ extracted_serial=`expr $extracted_serial + 1`
+ my_xlib_u=lt$extracted_serial-$my_xlib ;;
+ *) break ;;
+ esac
+ done
+ extracted_archives="$extracted_archives $my_xlib_u"
+ my_xdir="$my_gentop/$my_xlib_u"
$show "${rm}r $my_xdir"
$run ${rm}r "$my_xdir"
@@ -758,6 +778,7 @@
*.f90) xform=f90 ;;
*.for) xform=for ;;
*.java) xform=java ;;
+ *.obj) xform=obj ;;
esac
libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
@@ -1138,8 +1159,9 @@
for arg
do
case $arg in
- -all-static | -static)
- if test "X$arg" = "X-all-static"; then
+ -all-static | -static | -static-libtool-libs)
+ case $arg in
+ -all-static)
if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
$echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
fi
@@ -1147,12 +1169,20 @@
dlopen_self=$dlopen_self_static
fi
prefer_static_libs=yes
- else
+ ;;
+ -static)
if test -z "$pic_flag" && test -n "$link_static_flag"; then
dlopen_self=$dlopen_self_static
fi
prefer_static_libs=built
- fi
+ ;;
+ -static-libtool-libs)
+ if test -z "$pic_flag" && test -n "$link_static_flag"; then
+ dlopen_self=$dlopen_self_static
+ fi
+ prefer_static_libs=yes
+ ;;
+ esac
build_libtool_libs=no
build_old_libs=yes
break
@@ -1712,7 +1742,7 @@
continue
;;
- -static)
+ -static | -static-libtool-libs)
# The effects of -static are defined in a previous loop.
# We used to do the same as -all-static on platforms that
# didn't have a PIC flag, but the assumption that the effects
@@ -2490,7 +2520,9 @@
if test "$linkmode,$pass" = "prog,link"; then
if test -n "$library_names" &&
- { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
+ { { test "$prefer_static_libs" = no ||
+ test "$prefer_static_libs,$installed" = "built,yes"; } ||
+ test -z "$old_library"; }; then
# We need to hardcode the library path
if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
# Make sure the rpath contains only unique directories.
@@ -3186,7 +3218,7 @@
# which has an extra 1 added just for fun
#
case $version_type in
- darwin|linux|osf|windows)
+ darwin|linux|osf|windows|none)
current=`expr $number_major + $number_minor`
age="$number_minor"
revision="$number_revision"
@@ -3410,11 +3442,11 @@
fi
# Eliminate all temporary directories.
- for path in $notinst_path; do
- lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"`
- deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"`
- dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"`
- done
+# for path in $notinst_path; do
+# lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"`
+# deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"`
+# dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"`
+# done
if test -n "$xrpath"; then
# If the user specified any rpath flags, then add them.
@@ -3515,13 +3547,12 @@
int main() { return 0; }
EOF
$rm conftest
- $LTCC $LTCFLAGS -o conftest conftest.c $deplibs
- if test "$?" -eq 0 ; then
+ if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
ldd_output=`ldd conftest`
for i in $deplibs; do
name=`expr $i : '-l\(.*\)'`
# If $name is empty we are operating on a -L argument.
- if test "$name" != "" && test "$name" -ne "0"; then
+ if test "$name" != "" && test "$name" != "0"; then
if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
case " $predeps $postdeps " in
*" $i "*)
@@ -3560,9 +3591,7 @@
# If $name is empty we are operating on a -L argument.
if test "$name" != "" && test "$name" != "0"; then
$rm conftest
- $LTCC $LTCFLAGS -o conftest conftest.c $i
- # Did it work?
- if test "$?" -eq 0 ; then
+ if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
ldd_output=`ldd conftest`
if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
case " $predeps $postdeps " in
@@ -3594,7 +3623,7 @@
droppeddeps=yes
$echo
$echo "*** Warning! Library $i is needed by this library but I was not able to"
- $echo "*** make it link in! You will probably need to install it or some"
+ $echo "*** make it link in! You will probably need to install it or some"
$echo "*** library that it depends on before this library will be fully"
$echo "*** functional. Installing it before continuing would be even better."
fi
@@ -4239,12 +4268,14 @@
reload_conv_objs=
gentop=
# reload_cmds runs $LD directly, so let us get rid of
- # -Wl from whole_archive_flag_spec
+ # -Wl from whole_archive_flag_spec and hope we can get by with
+ # turning comma into space..
wl=
if test -n "$convenience"; then
if test -n "$whole_archive_flag_spec"; then
- eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\"
+ eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
+ reload_conv_objs=$reload_objs\ `$echo "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'`
else
gentop="$output_objdir/${obj}x"
generated="$generated $gentop"
@@ -4692,16 +4723,16 @@
case $host in
*cygwin* | *mingw* )
if test -f "$output_objdir/${outputname}.def" ; then
- compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%"`
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%"`
+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%" | $NL2SP`
+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%" | $NL2SP`
else
- compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%"`
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%"`
+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
fi
;;
* )
- compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%"`
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%"`
+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE(a)%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
;;
esac
;;
@@ -4716,13 +4747,13 @@
# really was required.
# Nullify the symbol file.
- compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s% @SYMFILE@%%" | $NL2SP`
+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s% @SYMFILE@%%" | $NL2SP`
fi
if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
# Replace the output file specification.
- compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e 's%@OUTPUT@%'"$output"'%g' | $NL2SP`
link_command="$compile_command$compile_rpath"
# We have no uninstalled library dependencies, so finalize right now.
@@ -4809,7 +4840,7 @@
if test "$fast_install" != no; then
link_command="$finalize_var$compile_command$finalize_rpath"
if test "$fast_install" = yes; then
- relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
+ relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $SP2NL | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g' | $NL2SP`
else
# fast_install is set to needless
relink_command=
@@ -4846,7 +4877,7 @@
fi
done
relink_command="(cd `pwd`; $relink_command)"
- relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
+ relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e "$sed_quote_subst" | $NL2SP`
fi
# Quote $echo for shipping.
@@ -5253,6 +5284,18 @@
Xsed='${SED} -e 1s/^X//'
sed_quote_subst='$sed_quote_subst'
+# Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE).
+if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '\${1+\"\$@\"}'='\"\$@\"'
+ setopt NO_GLOB_SUBST
+else
+ case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
+fi
+
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
@@ -5395,7 +5438,7 @@
;;
esac
$echo >> $output "\
- \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\"
+ \$echo \"\$0: cannot exec \$program \$*\"
exit $EXIT_FAILURE
fi
else
@@ -5581,7 +5624,7 @@
done
# Quote the link command for shipping.
relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
- relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
+ relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e "$sed_quote_subst" | $NL2SP`
if test "$hardcode_automatic" = yes ; then
relink_command=
fi
@@ -5926,9 +5969,9 @@
if test -n "$inst_prefix_dir"; then
# Stick the inst_prefix_dir data into the link command.
- relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
+ relink_command=`$echo "$relink_command" | $SP2NL | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%" | $NL2SP`
else
- relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%%"`
+ relink_command=`$echo "$relink_command" | $SP2NL | $SED "s%@inst_prefix_dir@%%" | $NL2SP`
fi
$echo "$modename: warning: relinking \`$file'" 1>&2
@@ -6137,7 +6180,7 @@
file=`$echo "X$file$stripped_ext" | $Xsed -e 's%^.*/%%'`
outputname="$tmpdir/$file"
# Replace the output file specification.
- relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
+ relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g' | $NL2SP`
$show "$relink_command"
if $run eval "$relink_command"; then :
@@ -6413,12 +6456,15 @@
fi
# Restore saved environment variables
- if test "${save_LC_ALL+set}" = set; then
- LC_ALL="$save_LC_ALL"; export LC_ALL
- fi
- if test "${save_LANG+set}" = set; then
- LANG="$save_LANG"; export LANG
- fi
+ for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+ do
+ eval "if test \"\${save_$lt_var+set}\" = set; then
+ $lt_var=\$save_$lt_var; export $lt_var
+ else
+ $lt_unset $lt_var
+ fi"
+ done
+
# Now prepare to actually exec the command.
exec_cmd="\$cmd$args"
@@ -6775,9 +6821,9 @@
-dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
-export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
-export-symbols SYMFILE
- try to export only the symbols listed in SYMFILE
+ try to export only the symbols listed in SYMFILE
-export-symbols-regex REGEX
- try to export only the symbols matching REGEX
+ try to export only the symbols matching REGEX
-LLIBDIR search LIBDIR for required installed libraries
-lNAME OUTPUT-FILE requires the installed library libNAME
-module build a library that can dlopened
@@ -6791,9 +6837,11 @@
-release RELEASE specify package release information
-rpath LIBDIR the created library will eventually be installed in LIBDIR
-R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
- -static do not do any dynamic linking of libtool libraries
+ -static do not do any dynamic linking of uninstalled libtool libraries
+ -static-libtool-libs
+ do not do any dynamic linking of libtool libraries
-version-info CURRENT[:REVISION[:AGE]]
- specify library version info [each variable defaults to 0]
+ specify library version info [each variable defaults to 0]
All other options (arguments beginning with \`-') are ignored.
15 years, 2 months
[Fedora-directory-commits] fedora-idm-console/win unzip.vbs, NONE, 1.1 Makefile, 1.3, 1.4
by Richard Allen Megginson
Author: rmeggins
Update of /cvs/dirsec/fedora-idm-console/win
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv29683
Modified Files:
Makefile
Added Files:
unzip.vbs
Log Message:
added unzip.vbs ; cleaned up/simplified Makefile
--- NEW FILE unzip.vbs ---
' unzip a zip file
Sub Usage()
WScript.Echo "Usage: cscript unzip.vbs \path\to\file.zip [destinationfolder]"
WScript.Echo "Example: cscript unzip.vbs ..\src\foo.zip ..\dest"
WScript.Echo "NOTE: The .zip file must have a .zip extension, so if"
WScript.Echo "it does not, a temporary copy will be made with a .zip extension"
WScript.Echo "If the destinationfolder does not exist, it will be created"
WScript.Echo "Use '.' for the current directory"
WScript.Echo "If the destinationfolder is not specified, '.' will be used"
End Sub
' see if args are correct
Set objArgs = WScript.Arguments
If objArgs.Count < 1 then
Usage
WScript.Quit(1)
End If
' get our FSO object
Set objFSO = CreateObject("Scripting.FileSystemObject")
' src zip file is arg 0
SRC = objFSO.GetAbsolutePathName(objArgs(0))
' dest folder is arg 1 or "."
If objArgs.Count < 2 then
DEST = objFSO.GetAbsolutePathName(".")
Else
DEST = objFSO.GetAbsolutePathName(objArgs(1))
End If
' debugging - print args
' For I = 0 to objArgs.Count - 1
' WScript.Echo "arg ", I, " ", objArgs(I)
' Next
' create dest folder if it does not exist
If not objFSO.FolderExists(DEST) Then
objFSO.CreateFolder(DEST)
WScript.Echo "Created new folder", DEST
End If
' see if file ends in .zip - if not (e.g. .jar) make temp copy
' that ends in .zip
Dim newSRC
newSRC = ""
If not Right(SRC, 4) = ".zip" Then
newSRC = SRC & ".zip"
objFSO.CopyFile SRC, newSRC, true
SRC = newSRC
End If
' get the shell application object used to do the unzip
Set objShell = CreateObject("Shell.Application")
Set objSrc = objShell.Namespace(SRC)
Set objDest = objShell.Namespace(DEST)
' For Each item in objSrc.Items
' WScript.Echo "item = ", item
' Next
objDest.CopyHere(objSrc.Items)
' remove temp zip, if any
If Len(newSrc) > 0 Then
objFSO.DeleteFile(newSRC)
End If
WScript.Stdout.Write "Done. Copied contents of " & SRC & " to " & DEST
' Set WshShell = WScript.CreateObject("WScript.Shell")
' WScript.Echo "CD =", WshShell.CurrentDirectory
' Set objFolder = objFSO.GetFolder(".")
' WScript.Echo "name = ", objFolder.Name
Index: Makefile
===================================================================
RCS file: /cvs/dirsec/fedora-idm-console/win/Makefile,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- Makefile 3 Feb 2009 16:19:07 -0000 1.3
+++ Makefile 10 Mar 2009 16:49:31 -0000 1.4
@@ -46,8 +46,10 @@
# could also use wget or curl
DOWNLOAD="c:\program files\support tools\bitsadmin" /wrap /transfer consolebuild /download /priority normal
-SBC=http://tsunami.dsdev.sjc.redhat.com/share/builds/components
-SBV=http://tsunami.dsdev.sjc.redhat.com/share/builds/verification
+SBC=http://filer/components
+SBV=http://filer/components
+
+UNZIP=cscript //nologo unzip.vbs
NSPRVER=4.7.3
NSSVER=3_12_2
@@ -57,98 +59,101 @@
JSSVERDIR=JSS_$(JSSVER)_RTM/20090122.1
IDMVER=1.1
IDMVERDIR=$(IDMVER)/20090122.1
+WIXVER=2.0.5805.0
PLAT=WINNT5.0_OPT.OBJ
-PKGDIR="$(BASEDIR)\fedora-idm-console\win\build.$(PLAT)"
+# where to stage the package layout
+PKGDIR=build.$(PLAT)
+# where to find components to package
+COMPDIR=$(PKGDIR)
-#BASEDIR=E:\cygwin\home\rich
# where to find nspr dlls
-NSPRLIBDIR="$(BASEDIR)\nspr-4.7.3\lib"
+NSPRDIR=$(COMPDIR)\nspr
+NSPRLIBDIR=$(NSPRDIR)\lib
# where to find nss dlls
-NSSLIBDIR="$(BASEDIR)\nss-3.12.2\lib"
+NSSDIR=$(COMPDIR)\nss
+NSSLIBDIR=$(NSSDIR)\lib
# where to find nss exes
-NSSBINDIR="$(BASEDIR)\nss-3.12.2\bin"
+NSSBINDIR=$(NSSDIR)\bin
# where to find jss jar and dll
-JSSDIR="$(BASEDIR)\jss-4.2.5"
+JSSDIR=$(COMPDIR)\jss
# where to find the ldapjdk.jar
-LDAPDIR="$(BASEDIR)\console"
-#LDAPDIR=$(BASEDIR)\ldapjdk-4.18
+LDAPDIR=$(COMPDIR)\console
+#LDAPDIR=$(COMPDIR)\ldapjdk-4.18
# where to find the idm-console-framework jars
-IDMDIR="$(BASEDIR)\console"
+IDMDIR=$(COMPDIR)\console
# where to find the fedora-idm-console jar and other files
FEDORACONSOLEDIR=.
-WIXDIR="$(BASEDIR)\wix"
-CANDLE=$(WIXDIR)\candle
-LIGHT=$(WIXDIR)\light
+WIXURL=$(SBC)/wix
+WIXDIR=$(COMPDIR)\wix
+CANDLE=$(WIXDIR)\candle.exe
+LIGHT=$(WIXDIR)\light.exe
-ALL : $(BRAND_PKGNAME).msi
+ALL : $(PKGDIR)\$(BRAND_PKGNAME).msi
$(PKGDIR) :
mkdir $@
mkdir $@\Bitmaps
-LAYOUT : $(PKGDIR)
-# copy /Y $(NSPRLIBDIR)\*.dll $(PKGDIR)
-# copy /Y $(NSSLIBDIR)\*.dll $(PKGDIR)
-# copy /Y $(NSSBINDIR)\certutil.exe $(PKGDIR)
-# copy /Y $(NSSBINDIR)\pk12util.exe $(PKGDIR)
-# copy /Y $(JSSDIR)\jss4.jar $(PKGDIR)
-# copy /Y $(JSSDIR)\jss4.dll $(PKGDIR)
-# copy /Y $(LDAPDIR)\ldapjdk.jar $(PKGDIR)
-# copy /Y $(IDMDIR)\*.jar $(PKGDIR)
+$(NSPRDIR) $(NSSDIR) $(JSSDIR) $(LDAPDIR) $(IDMDIR) $(FEDORACONSOLEDIR) $(WIXDIR):
+ mkdir $@
+
+$(NSPRDIR)\mdbinary.jar : $(NSPRDIR)
+ if not exist $@ $(DOWNLOAD) $(SBC)/nspr/v$(NSPRVER)/$(PLAT)/$(@F) %%CD%%\$@
+
+$(NSPRLIBDIR)\libnspr4.dll : $(NSPRDIR)\mdbinary.jar
+ $(UNZIP) $? $(?D)
+
+$(NSSDIR)\mdbinary.jar : $(NSSDIR)
+ if not exist $@ $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/$(@F) %%CD%%\$@
+
+$(NSSLIBDIR)\nss3.dll : $(NSSDIR)\mdbinary.jar
+ $(UNZIP) $? $(?D)
+
+$(JSSDIR)\jss4.dll : $(JSSDIR)
+ if not exist $@ $(DOWNLOAD) $(SBV)/jss/$(JSSVERDIR)/$(PLAT)/lib/$(@F) %%CD%%\$@
+
+$(JSSDIR)\jss4.jar :
+ if not exist $@ $(DOWNLOAD) $(SBV)/jss/$(JSSVERDIR)/$(@F) %%CD%%\$@
+
+$(LDAPDIR)\ldapjdk.jar : $(LDAPDIR)
+ if not exist $@ $(DOWNLOAD) $(SBV)/ldapjdk/$(LDAPJDKVERDIR)/$(@F) %%CD%%\$@
+
+$(IDMDIR)\idm-console-base.jar $(IDMDIR)\idm-console-mcc.jar $(IDMDIR)\idm-console-mcc_en.jar $(IDMDIR)\idm-console-nmclf.jar $(IDMDIR)\idm-console-nmclf_en.jar : $(IDMDIR)
+ if not exist $@ $(DOWNLOAD) $(SBV)/idm-console-framework/$(IDMVERDIR)/$(@F) %%CD%%\$@
+
+$(FEDORACONSOLEDIR)\fedora-idm-console_en.jar : $(FEDORACONSOLEDIR)
+ echo where is $@
+
+$(WIXDIR)\wix-$(WIXVER).zip : $(WIXDIR)
+ if not exist $@ $(DOWNLOAD) $(WIXURL)/$(@F) %%CD%%\$@
+
+$(CANDLE) : $(WIXDIR)\wix-$(WIXVER).zip
+ $(UNZIP) $? $(?D)
+
+LAYOUT : $(PKGDIR) $(NSPRLIBDIR)\libnspr4.dll $(NSSLIBDIR)\nss3.dll $(JSSDIR)\jss4.dll $(JSSDIR)\jss4.jar $(LDAPDIR)\ldapjdk.jar $(IDMDIR)\idm-console-base.jar $(IDMDIR)\idm-console-mcc.jar $(IDMDIR)\idm-console-mcc_en.jar $(IDMDIR)\idm-console-nmclf.jar $(IDMDIR)\idm-console-nmclf_en.jar $(FEDORACONSOLEDIR)\fedora-idm-console_en.jar
+ copy /Y $(NSPRLIBDIR)\*.dll $(PKGDIR)
+ copy /Y $(NSSLIBDIR)\*.dll $(PKGDIR)
+ copy /Y $(NSSBINDIR)\certutil.exe $(PKGDIR)
+ copy /Y $(NSSBINDIR)\pk12util.exe $(PKGDIR)
+ copy /Y $(JSSDIR)\jss4.jar $(PKGDIR)
+ copy /Y $(JSSDIR)\jss4.dll $(PKGDIR)
+ copy /Y $(LDAPDIR)\ldapjdk.jar $(PKGDIR)
+ copy /Y $(IDMDIR)\*.jar $(PKGDIR)
copy /Y $(FEDORACONSOLEDIR)\*.jar $(PKGDIR)
# directory should already contain the bat file, icon, and bitmaps
- copy /Y $(FEDORACONSOLEDIR)\*.bat $(PKGDIR)
- copy /Y $(FEDORACONSOLEDIR)\*.ico $(PKGDIR)
- copy /Y $(FEDORACONSOLEDIR)\Bitmaps\* $(PKGDIR)\Bitmaps\*
- copy /Y $(FEDORACONSOLEDIR)\License.rtf $(PKGDIR)
-
-DOWNLOAD : $(PKGDIR)
-# NSPR
- $(DOWNLOAD) $(SBC)/nspr/v$(NSPRVER)/$(PLAT)/lib/libnspr4.dll $(PKGDIR)/libnspr4.dll
- $(DOWNLOAD) $(SBC)/nspr/v$(NSPRVER)/$(PLAT)/lib/libplc4.dll $(PKGDIR)/libplc4.dll
- $(DOWNLOAD) $(SBC)/nspr/v$(NSPRVER)/$(PLAT)/lib/libplds4.dll $(PKGDIR)/libplds4.dll
-# NSS
- $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/lib/nss3.dll $(PKGDIR)/nss3.dll
- $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/lib/ssl3.dll $(PKGDIR)/ssl3.dll
- $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/lib/smime3.dll $(PKGDIR)/smime3.dll
- $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/lib/nssutil3.dll $(PKGDIR)/nssutil3.dll
- $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/lib/freebl3.dll $(PKGDIR)/freebl3.dll
- $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/lib/softokn3.dll $(PKGDIR)/softokn3.dll
- $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/lib/sqlite3.dll $(PKGDIR)/sqlite3.dll
- $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/lib/nssdbm3.dll $(PKGDIR)/nssdbm3.dll
- $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/lib/nssckbi.dll $(PKGDIR)/nssckbi.dll
- $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/bin/certutil.exe $(PKGDIR)/certutil.exe
- $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/bin/pk12util.exe $(PKGDIR)/pk12util.exe
- $(DOWNLOAD) $(SBC)/nss/NSS_$(NSSVER)_RTM/$(PLAT)/bin/certutil.exe $(PKGDIR)/certutil.exe
-# JSS
- $(DOWNLOAD) $(SBV)/jss/$(JSSVERDIR)/$(PLAT)/lib/jss4.dll $(PKGDIR)/jss4.dll
- $(DOWNLOAD) $(SBV)/jss/$(JSSVERDIR)/jss4.jar $(PKGDIR)/jss4.jar
-# LDAPJDK
- $(DOWNLOAD) $(SBV)/ldapjdk/$(LDAPJDKVERDIR)/ldapjdk.jar $(PKGDIR)/ldapjdk.jar
-# IDM
- $(DOWNLOAD) $(SBV)/idm-console-framework/$(IDMVERDIR)/idm-console-base.jar $(PKGDIR)/idm-console-base.jar
- $(DOWNLOAD) $(SBV)/idm-console-framework/$(IDMVERDIR)/idm-console-mcc.jar $(PKGDIR)/idm-console-mcc.jar
- $(DOWNLOAD) $(SBV)/idm-console-framework/$(IDMVERDIR)/idm-console-mcc_en.jar $(PKGDIR)/idm-console-mcc_en.jar
- $(DOWNLOAD) $(SBV)/idm-console-framework/$(IDMVERDIR)/idm-console-nmclf.jar $(PKGDIR)/idm-console-nmclf.jar
- $(DOWNLOAD) $(SBV)/idm-console-framework/$(IDMVERDIR)/idm-console-nmclf_en.jar $(PKGDIR)/idm-console-nmclf_en.jar
-
-#$(PKGNAME).msi : LAYOUT DOWNLOAD
-$(PKGNAME).msi :
- cd $(PKGDIR)
- cd
- dir ..\$(PKGNAME).wxs
- $(CANDLE) ..\$(PKGNAME).wxs
- $(LIGHT) -out $(PKGNAME).msi $(PKGNAME).wixobj $(WIXDIR)\wixui.wixlib -loc $(WIXDIR)\WixUI_en-us.wxl
-
-$(BRAND_PKGNAME).msi: $(PKGNAME).msi
- cd $(PKGDIR)
- del /F /Q $(BRAND_PKGNAME).msi
- rename $(PKGNAME).msi $(BRAND_PKGNAME).msi
+ copy /Y *.bat $(PKGDIR)
+ copy /Y *.ico $(PKGDIR)
+ copy /Y Bitmaps\* $(PKGDIR)\Bitmaps\*
+ copy /Y License.rtf $(PKGDIR)
+
+$(PKGDIR)\$(BRAND_PKGNAME).msi : $(PKGDIR) LAYOUT $(CANDLE) $(PKGNAME).wxs
+ $(CANDLE) -nologo -out $(PKGDIR)\$(PKGNAME).wixobj $(PKGNAME).wxs
+ $(LIGHT) -nologo -out $@ -b $(PKGDIR) $(PKGDIR)\$(PKGNAME).wixobj $(WIXDIR)\wixui.wixlib -loc $(WIXDIR)\WixUI_en-us.wxl
clean:
- del /F /Q $(PKGDIR)
+ rmdir /S /Q $(PKGDIR)
help:
@echo You must define the following paths:
15 years, 2 months
[Fedora-directory-commits] ldapserver/ldap/servers/slapd util.c, 1.28, 1.29
by Noriko Hosoi
Author: nhosoi
Update of /cvs/dirsec/ldapserver/ldap/servers/slapd
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv26816
Modified Files:
util.c
Log Message:
Resolves: #488856
Summary: slapi_ldap_init_ext needs to be modified due to the build failure on Solaris
Description: instead of replacing client_callbacks, set sasl path to SASL_PATH
using putenv.
Index: util.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/slapd/util.c,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- util.c 4 Feb 2009 18:21:01 -0000 1.28
+++ util.c 9 Mar 2009 16:35:35 -0000 1.29
@@ -916,23 +916,6 @@
return SASL_OK;
}
-/* copied from mozldap libldap/saslbind.c - except
- SASL_CB_GETPATH added as last item (before SASL_CB_LIST_END
- This allows us to set the sasl path used for outgoing
- client connections */
-sasl_callback_t slapd_client_callbacks[] = {
- { SASL_CB_GETOPT, slapd_sasl_fail, NULL },
- { SASL_CB_GETREALM, NULL, NULL },
- { SASL_CB_USER, NULL, NULL },
- { SASL_CB_CANON_USER, NULL, NULL },
- { SASL_CB_AUTHNAME, NULL, NULL },
- { SASL_CB_PASS, NULL, NULL },
- { SASL_CB_ECHOPROMPT, NULL, NULL },
- { SASL_CB_NOECHOPROMPT, NULL, NULL },
- { SASL_CB_GETPATH, slapd_sasl_getpluginpath, NULL },
- { SASL_CB_LIST_END, NULL, NULL }
-};
-
/*
Perform LDAP init and return an LDAP* handle. If ldapurl is given,
that is used as the basis for the protocol, host, port, and whether
@@ -947,6 +930,10 @@
filename is the ldapi file name - if this is given, and no other options
are given, ldapi is assumed.
*/
+/* util_sasl_path: the string argument for putenv.
+ It must be a global or a static */
+char util_sasl_path[MAXPATHLEN];
+
LDAP *
slapi_ldap_init_ext(
const char *ldapurl, /* full ldap url */
@@ -962,16 +949,36 @@
LDAPURLDesc *ludp = NULL;
LDAP *ld = NULL;
int rc = 0;
- extern sasl_callback_t *client_callbacks;
/* We need to provide a sasl path used for client connections, especially
if the server is not set up to be a sasl server - since mozldap provides
- no way to override the default path programatically, we replace its
- client callback list with our own so that we can provide a CB_GETPATH
- callback */
- if (client_callbacks != slapd_client_callbacks) {
- client_callbacks = slapd_client_callbacks;
+ no way to override the default path programatically, we set the sasl
+ path to the environment variable SASL_PATH. */
+ char *configpluginpath = config_get_saslpath();
+ char *pluginpath = configpluginpath;
+ char *pp = NULL;
+
+ if (NULL == pluginpath || (*pluginpath == '\0')) {
+ slapi_log_error(SLAPI_LOG_FATAL, "slapi_ldap_init_ext",
+ "configpluginpath == NULL\n");
+ if (!(pluginpath = getenv("SASL_PATH"))) {
+#if defined(LINUX) && defined(__LP64__)
+ pluginpath = "/usr/lib64/sasl2";
+#else
+ pluginpath = "/usr/lib/sasl2";
+#endif
+ }
+ }
+ if ('\0' == util_sasl_path[0] || /* first time */
+ NULL == (pp = strchr(util_sasl_path, '=')) || /* invalid arg for putenv */
+ (0 != strcmp(++pp, pluginpath)) /* sasl_path has been updated */ ) {
+ PR_snprintf(util_sasl_path, sizeof(util_sasl_path),
+ "SASL_PATH=%s", pluginpath);
+ slapi_log_error(SLAPI_LOG_FATAL, "slapi_ldap_init_ext",
+ "putenv(%s)\n", util_sasl_path);
+ putenv(util_sasl_path);
}
+ slapi_ch_free_string(&configpluginpath);
/* if ldapurl is given, parse it */
if (ldapurl && ((rc = ldap_url_parse_no_defaults(ldapurl, &ludp, 0)) ||
15 years, 2 months
[Fedora-directory-commits] ldapserver/ldap/servers/slapd mapping_tree.c, 1.17, 1.18
by Richard Allen Megginson
Author: rmeggins
Update of /cvs/dirsec/ldapserver/ldap/servers/slapd
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv29835
Modified Files:
mapping_tree.c
Log Message:
Resolves: bug 488814
Description: mapping tree code inconsistent about treatment of quoted node names
Reviewed by: nhosoi (Thanks!)
Fix Description: Look for (|(%s=\"%s\")(%s=%s))) when looking for mapping tree suffixes - there may be a quoted suffix, or one without quotes, so look for either
Index: mapping_tree.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/slapd/mapping_tree.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- mapping_tree.c 4 Dec 2008 00:42:18 -0000 1.17
+++ mapping_tree.c 7 Mar 2009 00:59:07 -0000 1.18
@@ -910,7 +910,9 @@
filter = slapi_ch_smprintf("(&(objectclass=nsMappingTree)(!(%s=*)))",
MAPPING_TREE_PARENT_ATTRIBUTE);
} else {
- filter = slapi_ch_smprintf("(&(objectclass=nsMappingTree)(%s=\"%s\"))",
+ filter = slapi_ch_smprintf("(&(objectclass=nsMappingTree)(|(%s=\"%s\")(%s=%s)))",
+ MAPPING_TREE_PARENT_ATTRIBUTE,
+ slapi_sdn_get_dn(target->mtn_subtree),
MAPPING_TREE_PARENT_ATTRIBUTE,
slapi_sdn_get_dn(target->mtn_subtree));
}
15 years, 3 months
[Fedora-directory-commits] ldapserver/ldap/servers/plugins/replication repl5_inc_protocol.c, 1.14, 1.15
by Richard Allen Megginson
Author: rmeggins
Update of /cvs/dirsec/ldapserver/ldap/servers/plugins/replication
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv21859/ldapserver/ldap/servers/plugins/replication
Modified Files:
repl5_inc_protocol.c
Log Message:
Resolves: bug 488866
Bug Description: crash in reliab15 test
Reviewed by: nhosoi (Thanks!)
Fix Description: I could not reproduce the crash, but I think the problem is that the server is not handling the disconnection case correctly. It seems that in the event of disconnection (LDAP_SERVER_DOWN 81 - Can't contact server) the code would continue to read results.
repl5_inc_result_threadmain() will call conn_read_result_ex() in a loop. If conn_read_result_ex() detects a disconnection or an unrecoverable error, it will call conn_disconnect to close the connection, and return CONN_NOT_CONNECTED. Once this happens, the code must not use conn->ld any more. However, the code did not differentiate between the not connected case and other errors, so it would keep trying to read results (in case some errors are recoverable, the thread still has to read all of the pending results). The code has been fixed to handle disconnect cases specially. I also added some additional locking to make sure the result and the abort flags were set/read correctly. Finally, I changed the code that waits for results to come in, so that if the connection has been closed, it will just return immediately.
Platforms tested: RHEL5 x86_64
Flag Day: no
Doc impact: no
Index: repl5_inc_protocol.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/plugins/replication/repl5_inc_protocol.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- repl5_inc_protocol.c 5 Dec 2008 22:41:51 -0000 1.14
+++ repl5_inc_protocol.c 6 Mar 2009 20:02:13 -0000 1.15
@@ -329,6 +329,7 @@
}
if (conres != CONN_TIMEOUT)
{
+ int return_value;
int should_finish = 0;
if (message_id)
{
@@ -347,17 +348,26 @@
conn_get_error_ex(conn, &operation_code, &connection_error, &ldap_error_string);
slapi_log_error(SLAPI_LOG_REPL, NULL, "repl5_inc_result_threadmain: result %d, %d, %d, %d, %s\n", operation_code,connection_error,conres,message_id,ldap_error_string);
- rd->result = repl5_inc_update_from_op_result(rd->prp, conres, connection_error, csn_str, uniqueid, replica_id, &should_finish, &(rd->num_changes_sent));
- if (rd->result || should_finish)
+ return_value = repl5_inc_update_from_op_result(rd->prp, conres, connection_error, csn_str, uniqueid, replica_id, &should_finish, &(rd->num_changes_sent));
+ if (return_value || should_finish)
{
- slapi_log_error(SLAPI_LOG_REPL, NULL, "repl5_inc_result_threadmain: got op result %d should finish %d\n", rd->result, should_finish);
+ slapi_log_error(SLAPI_LOG_REPL, NULL, "repl5_inc_result_threadmain: got op result %d should finish %d\n", return_value, should_finish);
/* If so then we need to take steps to abort the update process */
PR_Lock(rd->lock);
+ rd->result = return_value;
rd->abort = 1;
PR_Unlock(rd->lock);
/* We also need to log the error, including details stored from when the operation was sent */
/* we cannot finish yet - we still need to waitfor the pending results, then
the main repl code will shut down this thread */
+ /* we can finish if we have disconnected - in that case, there will be nothing
+ to read */
+ if (return_value == UPDATE_CONNECTION_LOST) {
+ finished = 1;
+ }
+ } else {
+ /* old semantics had result set outside of lock */
+ rd->result = return_value;
}
}
/* Should we stop ? */
@@ -470,13 +480,17 @@
/* If so then we're done */
done = 1;
}
+ if (rd->abort && (rd->result == UPDATE_CONNECTION_LOST))
+ {
+ done = 1; /* no connection == no more results */
+ }
PR_Unlock(rd->lock);
/* If not then sleep a bit */
DS_Sleep(PR_SecondsToInterval(1));
loops++;
/* If we sleep forever then we can conclude that something bad happened, and bail... */
/* Arbitrary 30 second delay : basically we should only expect to wait as long as it takes to process a few operations, which should be on the order of a second at most */
- if (loops > 300)
+ if (!done && (loops > 300))
{
/* Log a warning */
slapi_log_error(SLAPI_LOG_FATAL, NULL,
@@ -1551,7 +1565,7 @@
{
/* We lost the connection - enter backoff state */
- return_value = UPDATE_TRANSIENT_ERROR;
+ return_value = UPDATE_CONNECTION_LOST;
*finished = 1;
slapi_log_error(SLAPI_LOG_FATAL, repl_plugin_name,
"%s: Consumer failed to replay change (uniqueid %s, CSN %s): "
@@ -1794,7 +1808,7 @@
{
/* We lost the connection - enter backoff state */
- return_value = UPDATE_TRANSIENT_ERROR;
+ return_value = UPDATE_CONNECTION_LOST;
finished = 1;
slapi_log_error(SLAPI_LOG_FATAL, repl_plugin_name,
"%s: Consumer failed to replay change (uniqueid %s, CSN %s): "
@@ -1914,19 +1928,24 @@
return_value = UPDATE_YIELD;
finished = 1;
}
+ PR_Lock(rd->lock);
/* See if the result thread has hit a problem */
if (!finished && rd->abort)
{
return_value = rd->result;
finished = 1;
}
+ PR_Unlock(rd->lock);
} while (!finished);
/* Terminate the results reading thread */
if (!prp->repl50consumer)
{
/* We need to ensure that we wait until all the responses have been recived from our operations */
- repl5_inc_waitfor_async_results(rd);
+ if (return_value != UPDATE_CONNECTION_LOST) {
+ /* if connection was lost/closed, there will be nothing to read */
+ repl5_inc_waitfor_async_results(rd);
+ }
rc = repl5_inc_destroy_async_result_thread(rd);
if (rc) {
15 years, 3 months
[Fedora-directory-commits] ldapserver/ldap/servers/plugins/replication cl5_api.c, 1.26, 1.27 cl5_clcache.c, 1.9, 1.10 cl5_clcache.h, 1.5, 1.6 cl5_config.c, 1.9, 1.10
by Richard Allen Megginson
Author: rmeggins
Update of /cvs/dirsec/ldapserver/ldap/servers/plugins/replication
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv6239/ldapserver/ldap/servers/plugins/replication
Modified Files:
cl5_api.c cl5_clcache.c cl5_clcache.h cl5_config.c
Log Message:
Resolves: bug 487425
Bug Description: slapd crashes after changelog is moved
Reviewed by: nkinder, nhosoi (Thanks!)
Fix Description: There are a number of real fixes, mixed in with many changes for debugging and instrumentation.
1) When the update thread gets the changelog iterator, it will use _cl5AddThread to increment the count of threads holding an open handle to the changelog. When it releases the iterator, or if there were some error acquiring the database handle, it will decrement the thread count. The way it used to work was that it would increment the thread count when retrieving the DB object, but then would immediately decrement it, meaning it had an open handle to the database, but there was no way for the changelog code to know that (except via the reference count on the DB object itself).
2) Changed the AddThread code to increment the thread count outside of the state lock - this better fits the semantics of the other uses of threadcount which are outside of the lock.
3) The changelog code that closes the databases was not closing things down in the correct order. The first thing it must do is wait for all threads with open database handles or otherwise accessing the database to terminate. Once that is done, it can call _cl5DBClose() to actually close all of the databases. Otherwise, a race condition could cause a database to be accessed after it has been closed.
4) Added clcache cleanup code, and made it possible to re-init the clcache. The clcache was not designed to be dynamically closed and opened.
clcache is init-ed in _cl5Open
clcache_init is re-entrant
Added more code to clean up the clcache
Delete the clcache in _cl5Delete
5) The clcache stores the current buffer in a thread private storage area. If the clcache has been re-initialized, this buffer is also invalid and the clcache code must get a new buffer.
Platforms tested: RHEL5
Flag Day: no
Doc impact: no
Index: cl5_api.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/plugins/replication/cl5_api.c,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- cl5_api.c 5 Dec 2008 22:41:51 -0000 1.26
+++ cl5_api.c 4 Mar 2009 18:58:05 -0000 1.27
@@ -527,7 +527,7 @@
/* already open - ignore */
if (s_cl5Desc.dbState == CL5_STATE_OPEN)
{
- slapi_log_error(SLAPI_LOG_PLUGIN, repl_plugin_name_cl,
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
"cl5Open: changelog already opened; request ignored\n");
rc = CL5_SUCCESS;
goto done;
@@ -920,6 +920,11 @@
object_release (file_obj);
}
+ else
+ {
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "cl5GetUpperBoundRUV: "
+ "could not find DB object for replica\n");
+ }
object_release (r_obj);
@@ -1756,7 +1761,7 @@
if (replica == NULL || consumerRuv == NULL || iterator == NULL)
{
slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
- "cl5CreateReplayIterator: invalid parameter\n");
+ "cl5CreateReplayIteratorEx: invalid parameter\n");
return CL5_BAD_DATA;
}
@@ -1765,7 +1770,7 @@
if (s_cl5Desc.dbState == CL5_STATE_NONE)
{
slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
- "cl5CreateReplayIterator: changelog is not initialized\n");
+ "cl5CreateReplayIteratorEx: changelog is not initialized\n");
return CL5_BAD_STATE;
}
@@ -1787,8 +1792,17 @@
object_release (obj);
}
}
+ else
+ {
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "cl5CreateReplayIteratorEx: could not find DB object for replica\n");
+ }
- _cl5RemoveThread ();
+ if (rc != CL5_SUCCESS)
+ {
+ /* release the thread */
+ _cl5RemoveThread ();
+ }
return rc;
}
@@ -1842,8 +1856,17 @@
object_release (obj);
}
}
+ else
+ {
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "cl5CreateReplayIterator: could not find DB object for replica\n");
+ }
- _cl5RemoveThread ();
+ if (rc != CL5_SUCCESS)
+ {
+ /* release the thread */
+ _cl5RemoveThread ();
+ }
return rc;
@@ -1937,14 +1960,21 @@
clcache_return_buffer ( &(*iterator)->clcache );
- if ((*iterator)->fileObj)
+ if ((*iterator)->fileObj) {
object_release ((*iterator)->fileObj);
+ (*iterator)->fileObj = NULL;
+ }
/* release supplier's ruv */
- if ((*iterator)->supplierRuvObj)
+ if ((*iterator)->supplierRuvObj) {
object_release ((*iterator)->supplierRuvObj);
+ (*iterator)->supplierRuvObj = NULL;
+ }
slapi_ch_free ((void **)iterator);
+
+ /* this thread no longer holds a db reference, release it */
+ _cl5RemoveThread();
}
/* Name: cl5DeleteOnClose
@@ -2039,10 +2069,14 @@
PR_ASSERT (file);
count = file->entryCount;
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "cl5GetOperationCount: found DB object %p\n", obj);
object_release (obj);
}
else
{
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "cl5GetOperationCount: could not get DB object for replica\n");
count = 0;
}
}
@@ -2071,6 +2105,12 @@
_cl5SetDefaultDBConfig ();
}
+ /* init the clcache */
+ if (( clcache_init (&s_cl5Desc.dbEnv) != 0 )) {
+ rc = CL5_SYSTEM_ERROR;
+ goto done;
+ }
+
/* initialize trimming */
rc = _cl5TrimInit ();
if (rc != CL5_SUCCESS)
@@ -2404,6 +2444,7 @@
PRDirEntry *entry = NULL;
int rc;
Object *replica;
+ int count = 0;
/* create lock that guarantees that each file is only added once to the list */
s_cl5Desc.fileLock = PR_NewLock ();
@@ -2445,6 +2486,7 @@
}
object_release (replica);
+ count++;
}
else /* there is no matching replica for the file - remove */
{
@@ -2464,6 +2506,8 @@
}
}
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5DBOpen: "
+ "opened %d existing databases in %s\n", count, s_cl5Desc.dbDir);
PR_CloseDir(dir);
return CL5_SUCCESS;
@@ -2759,12 +2803,12 @@
return CL5_BAD_STATE;
}
+ PR_RWLock_Unlock (s_cl5Desc.stLock);
+
/* increment global thread count to make sure that changelog does not close while
backup is in progress */
PR_AtomicIncrement (&s_cl5Desc.threadCount);
- PR_RWLock_Unlock (s_cl5Desc.stLock);
-
return CL5_SUCCESS;
}
@@ -3157,6 +3201,7 @@
}
PR_AtomicDecrement (&s_cl5Desc.threadCount);
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5DeadlockMain: exiting\n");
return 0;
}
@@ -3237,6 +3282,7 @@
}
PR_AtomicDecrement (&s_cl5Desc.threadCount);
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5CheckpointMain: exiting\n");
return 0;
}
@@ -3262,6 +3308,7 @@
}
PR_AtomicDecrement (&s_cl5Desc.threadCount);
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5TrickleMain: exiting\n");
return 0;
}
@@ -3773,28 +3820,38 @@
if (s_cl5Desc.dbState != CL5_STATE_CLOSED) /* Don't try to close twice */
{
- /* close db files */
- _cl5DBClose ();
-
- /* stop global threads */
+ /* cl5Close() set the state flag to CL5_STATE_CLOSING, which should
+ trigger all of the db housekeeping threads to exit, and which will
+ eventually cause no new update threads to start - so we wait here
+ for those other threads to finish before we proceed */
interval = PR_MillisecondsToInterval(100);
while (s_cl5Desc.threadCount > 0)
{
- slapi_log_error( SLAPI_LOG_PLUGIN, repl_plugin_name_cl,
+ slapi_log_error( SLAPI_LOG_REPL, repl_plugin_name_cl,
"_cl5Close: waiting for threads to exit: %d thread(s) still active\n",
s_cl5Desc.threadCount);
DS_Sleep(interval);
}
+ /* There should now be no threads accessing any of the changelog databases -
+ it is safe to remove those databases */
+ _cl5DBClose ();
+
/* cleanup trimming */
_cl5TrimCleanup ();
- /* shutdown db environment */
+ /* There should be no more open databases after _cl5DBClose, so it is now
+ safe to close the dbEnv */
if (s_cl5Desc.dbEnv)
{
DB_ENV *dbEnv = s_cl5Desc.dbEnv;
- dbEnv->close(dbEnv, 0);
+ int rc = dbEnv->close(dbEnv, 0);
s_cl5Desc.dbEnv = NULL;
+ if (rc) {
+ slapi_log_error( SLAPI_LOG_FATAL, repl_plugin_name_cl,
+ "_cl5Close: error closing DB environment: %d (%s)\n",
+ rc, db_strerror(rc));
+ }
}
/* record successful close by writing guardian file;
@@ -3828,11 +3885,20 @@
{
if (NULL != s_cl5Desc.dbFiles)
{
- objset_delete (&s_cl5Desc.dbFiles);
+ Object *obj;
+ for (obj = objset_first_obj(s_cl5Desc.dbFiles); obj;
+ obj = objset_next_obj(s_cl5Desc.dbFiles, obj)) {
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "_cl5DBClose: deleting DB object %p\n", obj);
+ }
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "_cl5DBClose: closing databases in %s\n", s_cl5Desc.dbDir);
+ objset_delete (&s_cl5Desc.dbFiles);
}
if (NULL != s_cl5Desc.fileLock)
{
PR_DestroyLock (s_cl5Desc.fileLock);
+ s_cl5Desc.fileLock = NULL;
}
}
@@ -3936,6 +4002,9 @@
"_cl5Delete: changelog dir (%s) is not empty - cannot remove\n",
clDir);
}
+
+ /* invalidate the clcache */
+ clcache_destroy();
return CL5_SUCCESS;
}
@@ -4142,6 +4211,7 @@
}
PR_AtomicDecrement (&s_cl5Desc.threadCount);
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5TrimMain: exiting\n");
return 0;
}
@@ -4502,8 +4572,8 @@
else
{
slapi_log_error(SLAPI_LOG_FATAL, repl_plugin_name_cl,
- "_cl5WriteRUV: failed to write %s RUV for file %s; db error - %d\n",
- purge? "purge" : "upper bound", file->name, rc);
+ "_cl5WriteRUV: failed to write %s RUV for file %s; db error - %d (%s)\n",
+ purge? "purge" : "upper bound", file->name, rc, db_strerror(rc));
if (CL5_OS_ERR_IS_DISKFULL(rc))
{
@@ -5168,12 +5238,14 @@
PR_TRUE /* check for duplicates */);
if (rc != CL5_SUCCESS)
{
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "_cl5WriteOperation: failed to find or open DB object for replica %s\n", replName);
return rc;
}
}
else if (rc != CL5_SUCCESS)
{
- slapi_log_error(SLAPI_LOG_PLUGIN, repl_plugin_name_cl,
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
"_cl5WriteOperation: failed to get db file for target dn (%s)",
op->target_address.dn);
return CL5_OBJSET_ERROR;
@@ -5283,7 +5355,7 @@
}
else if ((cnt + 1) >= MAX_TRIALS)
{
- slapi_log_error(SLAPI_LOG_FATAL, repl_plugin_name_cl, "_cl5WriteOperation: retry (%d) the transaction (csn=%s) failed (rc=%d)\n", cnt, (char*)key.data, rc);
+ slapi_log_error(SLAPI_LOG_FATAL, repl_plugin_name_cl, "_cl5WriteOperation: retry (%d) the transaction (csn=%s) failed (rc=%d (%s))\n", cnt, (char*)key.data, rc, db_strerror(rc));
}
}
cnt ++;
@@ -6235,6 +6307,8 @@
file_name = NULL;
if (tmpObj) /* this file already exist */
{
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "_cl5DBOpenFileByReplicaName: Found DB object %p for replica %s\n", tmpObj, replName);
/* if we were asked for file handle - keep the handle */
if (obj)
{
@@ -6281,6 +6355,8 @@
/* Mark the DB File initialize */
_cl5DBFileInitialized(tmpObj);
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "_cl5DBOpenFileByReplicaName: created new DB object %p\n", tmpObj);
if (obj)
{
*obj = tmpObj;
@@ -6325,6 +6401,11 @@
object_release (tmpObj);
return CL5_OBJSET_ERROR;
}
+ else
+ {
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "_cl5AddDBFile: Added new DB object %p\n", tmpObj);
+ }
if (obj)
{
@@ -6516,6 +6597,11 @@
file = *(CL5DBFile**)data;
+ PR_ASSERT (file);
+
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5DBCloseFile: "
+ "Closing database %s/%s\n", s_cl5Desc.dbDir, file->name);
+
/* close the file */
/* if this is normal close or close after import, update entry count */
if ((s_cl5Desc.dbOpenMode == CL5_OPEN_NORMAL && s_cl5Desc.dbState == CL5_STATE_CLOSING) ||
@@ -6527,28 +6613,38 @@
}
/* close the db */
- if (file->db)
+ if (file->db) {
file->db->close(file->db, 0);
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5DBCloseFile: "
+ "Closed the changelog database handle for %s/%s\n", s_cl5Desc.dbDir, file->name);
+ file->db = NULL;
+ }
if (file->flags & DB_FILE_DELETED)
- {
- int rc = 0;
- /* We need to use the libdb API to delete the files, otherwise we'll
- * run into problems when we try to checkpoint transactions later. */
- PR_snprintf(fullpathname, MAXPATHLEN, "%s/%s", s_cl5Desc.dbDir, file->name);
- rc = s_cl5Desc.dbEnv->dbremove(s_cl5Desc.dbEnv, 0, fullpathname, 0, 0);
- if (rc != 0)
- {
- slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5DBCloseFile: "
- "failed to remove (%s) file; libdb error - %d (%s)\n",
- fullpathname, rc, db_strerror(rc));
- }
+ {
+ int rc = 0;
+ /* We need to use the libdb API to delete the files, otherwise we'll
+ * run into problems when we try to checkpoint transactions later. */
+ PR_snprintf(fullpathname, MAXPATHLEN, "%s/%s", s_cl5Desc.dbDir, file->name);
+ rc = s_cl5Desc.dbEnv->dbremove(s_cl5Desc.dbEnv, 0, fullpathname, 0, 0);
+ if (rc != 0)
+ {
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5DBCloseFile: "
+ "failed to remove (%s) file; libdb error - %d (%s)\n",
+ fullpathname, rc, db_strerror(rc));
+ } else {
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5DBCloseFile: "
+ "Deleted the changelog database file %s/%s\n", s_cl5Desc.dbDir, file->name);
+
}
+ }
/* slapi_ch_free accepts NULL pointer */
slapi_ch_free ((void**)&file->name);
slapi_ch_free ((void**)&file->replName);
slapi_ch_free ((void**)&file->replGen);
+ ruv_destroy(&file->maxRUV);
+ ruv_destroy(&file->purgeRUV);
if (file->sema) {
PR_CloseSemaphore (file->sema);
PR_DeleteSemaphore (file->semaName);
@@ -6568,13 +6664,18 @@
fileName = _cl5Replica2FileName (replica);
*obj = objset_find(s_cl5Desc.dbFiles, _cl5CompareDBFile, fileName);
- slapi_ch_free ((void**)&fileName);
if (*obj)
{
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5GetDBFile: "
+ "found DB object %p for database %s\n", *obj, fileName);
+ slapi_ch_free_string(&fileName);
return CL5_SUCCESS;
}
else
{
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5GetDBFile: "
+ "no DB object found for database %s\n", fileName);
+ slapi_ch_free_string(&fileName);
return CL5_NOTFOUND;
}
}
@@ -6589,13 +6690,18 @@
fileName = _cl5MakeFileName (replName, replGen);
*obj = objset_find(s_cl5Desc.dbFiles, _cl5CompareDBFile, fileName);
- slapi_ch_free ((void**)&fileName);
if (*obj)
{
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5GetDBFileByReplicaName: "
+ "found DB object %p for database %s\n", *obj, fileName);
+ slapi_ch_free_string(&fileName);
return CL5_SUCCESS;
}
else
{
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5GetDBFileByReplicaName: "
+ "no DB object found for database %s\n", fileName);
+ slapi_ch_free_string(&fileName);
return CL5_NOTFOUND;
}
}
@@ -6603,13 +6709,21 @@
static void _cl5DBDeleteFile (Object *obj)
{
CL5DBFile *file;
+ int rc = 0;
PR_ASSERT (obj);
file = (CL5DBFile*)object_get_data (obj);
PR_ASSERT (file);
file->flags |= DB_FILE_DELETED;
- objset_remove_obj(s_cl5Desc.dbFiles, obj);
+ rc = objset_remove_obj(s_cl5Desc.dbFiles, obj);
+ if (rc != OBJSET_SUCCESS) {
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5DBDeleteFile: "
+ "could not find DB object %p\n", obj);
+ } else {
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl, "_cl5DBDeleteFile: "
+ "removed DB object %p\n", obj);
+ }
object_release (obj);
}
Index: cl5_clcache.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/plugins/replication/cl5_clcache.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- cl5_clcache.c 5 Dec 2008 22:41:51 -0000 1.9
+++ cl5_clcache.c 4 Mar 2009 18:58:05 -0000 1.10
@@ -178,6 +178,9 @@
int
clcache_init ( DB_ENV **dbenv )
{
+ if (_pool) {
+ return 0; /* already initialized */
+ }
_pool = (struct clc_pool*) slapi_ch_calloc ( 1, sizeof ( struct clc_pool ));
_pool->pl_dbenv = dbenv;
_pool->pl_buffer_cnt_min = DEFAULT_CLC_BUFFER_COUNT_MIN;
@@ -225,12 +228,23 @@
clcache_get_buffer ( CLC_Buffer **buf, DB *db, ReplicaId consumer_rid, const RUV *consumer_ruv, const RUV *local_ruv )
{
int rc = 0;
+ int need_new;
if ( buf == NULL ) return CL5_BAD_DATA;
*buf = NULL;
- if ( NULL != ( *buf = (CLC_Buffer*) get_thread_private_cache()) ) {
+ /* if the pool was re-initialized, the thread private cache will be invalid,
+ so we must get a new one */
+ need_new = (!_pool || !_pool->pl_busy_lists || !_pool->pl_busy_lists->bl_buffers);
+
+ if ( (!need_new) && (NULL != ( *buf = (CLC_Buffer*) get_thread_private_cache())) ) {
+ slapi_log_error ( SLAPI_LOG_REPL, get_thread_private_agmtname(),
+ "clcache_get_buffer: found thread private buffer cache %p\n", *buf);
+ slapi_log_error ( SLAPI_LOG_REPL, get_thread_private_agmtname(),
+ "clcache_get_buffer: _pool is %p _pool->pl_busy_lists is %p _pool->pl_busy_lists->bl_buffers is %p\n",
+ _pool, _pool ? _pool->pl_busy_lists : NULL,
+ (_pool && _pool->pl_busy_lists) ? _pool->pl_busy_lists->bl_buffers : NULL);
(*buf)->buf_state = CLC_STATE_READY;
(*buf)->buf_load_cnt = 0;
(*buf)->buf_record_cnt = 0;
@@ -481,6 +495,7 @@
int i;
for ( i = 0; i < buf->buf_num_cscbs; i++ ) {
+ csn_free(&buf->buf_cscbs[i]->consumer_maxcsn);
ruv_get_largest_csn_for_replica (
buf->buf_consumer_ruv,
buf->buf_cscbs[i]->rid,
@@ -841,8 +856,22 @@
clcache_delete_busy_list ( CLC_Busy_List **bl )
{
if ( bl && *bl ) {
+ CLC_Buffer *buf = NULL;
if ( (*bl)->bl_lock ) {
+ PR_Lock ( (*bl)->bl_lock );
+ }
+ buf = (*bl)->bl_buffers;
+ while (buf) {
+ CLC_Buffer *next = buf->buf_next;
+ clcache_delete_buffer(&buf);
+ buf = next;
+ }
+ (*bl)->bl_buffers = NULL;
+ (*bl)->bl_db = NULL;
+ if ( (*bl)->bl_lock ) {
+ PR_Unlock ( (*bl)->bl_lock );
PR_DestroyLock ( (*bl)->bl_lock );
+ (*bl)->bl_lock = NULL;
}
/* csn_free (&( (*bl)->bl_max_csn )); */
slapi_ch_free ( (void **) bl );
@@ -951,3 +980,29 @@
*csn1 = csn_new();
csn_init_by_csn ( *csn1, csn2 );
}
+
+void
+clcache_destroy()
+{
+ if (_pool) {
+ CLC_Busy_List *bl = NULL;
+ if (_pool->pl_lock) {
+ PR_RWLock_Wlock (_pool->pl_lock);
+ }
+
+ bl = _pool->pl_busy_lists;
+ while (bl) {
+ CLC_Busy_List *next = bl->bl_next;
+ clcache_delete_busy_list(&bl);
+ bl = next;
+ }
+ _pool->pl_busy_lists = NULL;
+ _pool->pl_dbenv = NULL;
+ if (_pool->pl_lock) {
+ PR_RWLock_Unlock(_pool->pl_lock);
+ PR_DestroyRWLock(_pool->pl_lock);
+ _pool->pl_lock = NULL;
+ }
+ slapi_ch_free ( (void **) &_pool );
+ }
+}
Index: cl5_clcache.h
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/plugins/replication/cl5_clcache.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- cl5_clcache.h 10 Nov 2006 23:45:17 -0000 1.5
+++ cl5_clcache.h 4 Mar 2009 18:58:05 -0000 1.6
@@ -55,5 +55,6 @@
int clcache_load_buffer ( CLC_Buffer *buf, CSN *startCSN, int flag );
void clcache_return_buffer ( CLC_Buffer **buf );
int clcache_get_next_change ( CLC_Buffer *buf, void **key, size_t *keylen, void **data, size_t *datalen, CSN **csn );
+void clcache_destroy ();
#endif
Index: cl5_config.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/plugins/replication/cl5_config.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- cl5_config.c 5 Dec 2008 22:41:51 -0000 1.9
+++ cl5_config.c 4 Mar 2009 18:58:05 -0000 1.10
@@ -497,8 +497,6 @@
"old dir - %s, new dir - %s; recreating changelog.\n",
currentDir, config.dir);
- /* this call will block until all threads using changelog
- release changelog by calling cl5RemoveThread () */
rc = cl5Close ();
if (rc != CL5_SUCCESS)
{
@@ -511,6 +509,9 @@
slapi_log_error(SLAPI_LOG_FATAL, repl_plugin_name_cl,
"changelog5_config_modify: failed to close changelog\n");
goto done;
+ } else {
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "changelog5_config_modify: closed the changelog\n");
}
rc = cl5Delete (currentDir);
@@ -525,6 +526,9 @@
slapi_log_error(SLAPI_LOG_FATAL, repl_plugin_name_cl,
"changelog5_config_modify: failed to remove changelog\n");
goto done;
+ } else {
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "changelog5_config_modify: deleted the changelog at %s\n", currentDir);
}
rc = cl5Open (config.dir, &config.dbconfig);
@@ -544,6 +548,9 @@
"changelog5_config_modify: failed to restore previous changelog\n");
}
goto done;
+ } else {
+ slapi_log_error(SLAPI_LOG_REPL, repl_plugin_name_cl,
+ "changelog5_config_modify: opened the changelog at %s\n", config.dir);
}
}
}
15 years, 3 months
[Fedora-directory-commits] ldapserver/ldap/servers/slapd/back-ldbm import-threads.c, 1.20, 1.21
by Nathan Kinder
Author: nkinder
Update of /cvs/dirsec/ldapserver/ldap/servers/slapd/back-ldbm
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv16184/ldap/servers/slapd/back-ldbm
Modified Files:
import-threads.c
Log Message:
Resolves: bug 486400
Bug Description: During migration, if import fails for some reason,
the exact cause of why it was unable to open the LDIF is not logged.
Reviewed by: nhosoi (thanks!)
Files: see diff
Branch: HEAD
Fix Description: As discussed in the bug council, the fix is to just
report the actual error returned when the open() of the LDIF fails.
This reports the errno and a string description of the error in the
errors log (which is also output to stderr when running ldif2db).
Platforms tested: F9
Flag Day: no
Doc impact: no
Index: import-threads.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/slapd/back-ldbm/import-threads.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- import-threads.c 21 Nov 2008 16:38:34 -0000 1.20
+++ import-threads.c 3 Mar 2009 17:35:59 -0000 1.21
@@ -461,8 +461,8 @@
fd = dblayer_open_huge_file(curr_filename, o_flag, 0);
}
if (fd < 0) {
- import_log_notice(job, "Could not open LDIF file \"%s\"",
- curr_filename);
+ import_log_notice(job, "Could not open LDIF file \"%s\", errno %d (%s)",
+ curr_filename, errno, slapd_system_strerror(errno));
goto error;
}
if (fd == STDIN_FILENO) {
15 years, 3 months
[Fedora-directory-commits] directoryconsole/src/com/netscape/admin/dirserv/panel/replication AgreementDestinationPanel.java, 1.2, 1.3 WindowsAgreementDestinationPanel.java, 1.3, 1.4
by Richard Allen Megginson
Author: rmeggins
Update of /cvs/dirsec/directoryconsole/src/com/netscape/admin/dirserv/panel/replication
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv28857/directoryconsole/src/com/netscape/admin/dirserv/panel/replication
Modified Files:
AgreementDestinationPanel.java
WindowsAgreementDestinationPanel.java
Log Message:
Resolves: bug 483660
Bug Description: Replication and Sync agreement edit should not allow change to/from LDAPS
Reviewed by: nhosoi (Thanks!)
Fix Description: The problem is that there is no way to change the port number in this panel, so if you change to/from LDAPS, there is no way to supply the correct port number. If the agreement was created with LDAPS, disable the LDAP and StartTLS fields, and vice versa.
Platforms tested: RHEL5
Flag Day: no
Doc impact: Yes
Index: AgreementDestinationPanel.java
===================================================================
RCS file: /cvs/dirsec/directoryconsole/src/com/netscape/admin/dirserv/panel/replication/AgreementDestinationPanel.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- AgreementDestinationPanel.java 24 Nov 2008 16:09:23 -0000 1.2
+++ AgreementDestinationPanel.java 3 Mar 2009 01:24:26 -0000 1.3
@@ -349,7 +349,7 @@
}
- private void enableFields(){
+ private void enableFields(){
boolean ssl = _sslEncrypt.isSelected() || _tlsEncrypt.isSelected();
if (_sslAuth != null) {
_sslAuth.setEnabled(ssl);
@@ -357,6 +357,14 @@
if (_gssapiAuth != null) {
_gssapiAuth.setEnabled(!ssl);
}
+ // cannot convert to or from LDAPS because there is no way to change
+ // the port number in this panel
+ if (_sslEncrypt.isSelected()) {
+ _tlsEncrypt.setEnabled(false);
+ _noEncrypt.setEnabled(false);
+ } else {
+ _sslEncrypt.setEnabled(false);
+ }
}
Index: WindowsAgreementDestinationPanel.java
===================================================================
RCS file: /cvs/dirsec/directoryconsole/src/com/netscape/admin/dirserv/panel/replication/WindowsAgreementDestinationPanel.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- WindowsAgreementDestinationPanel.java 24 Nov 2008 16:09:23 -0000 1.3
+++ WindowsAgreementDestinationPanel.java 3 Mar 2009 01:24:26 -0000 1.4
@@ -792,6 +792,14 @@
_bindText.setText(_wizardInfo.getBindDN());
_tlsEncrypt.setSelected(_wizardInfo.getStartTLS());
_sslEncrypt.setSelected(_wizardInfo.getSSL());
+ // cannot change to/from LDAPS in this panel because there
+ // is no way to change the port number
+ if (_sslEncrypt.isSelected()) {
+ _noEncrypt.setEnabled(false);
+ _tlsEncrypt.setEnabled(false);
+ } else {
+ _sslEncrypt.setEnabled(false);
+ }
enableSimpleAuth(true);
/* none of the other auth methods are currently supported */
}
15 years, 3 months
[Fedora-directory-commits] directoryconsole/help/en/help configtab_chaindb.html, 1.2, 1.3 configtab_chaindb7.html, 1.1, 1.2 configtab_replication.html, 1.2, 1.3 configtab_replication2.html, 1.2, 1.3 configtab_replication3.html, 1.3, 1.4 configtab_replication6.html, 1.1, 1.2 configtab_replication7.html, 1.1, 1.2 configtab_synchronization3.html, 1.1, 1.2 replication_wizard.html, 1.2, 1.3 replication_wizard5.html, 1.1, 1.2 synchronization_wizard1.html, 1.1, 1.2 synchronization_wizard2.html, 1.2, 1.3
by Richard Allen Megginson
Author: rmeggins
Update of /cvs/dirsec/directoryconsole/help/en/help
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv11483/directoryconsole/help/en/help
Modified Files:
configtab_chaindb.html configtab_chaindb7.html
configtab_replication.html configtab_replication2.html
configtab_replication3.html configtab_replication6.html
configtab_replication7.html configtab_synchronization3.html
replication_wizard.html replication_wizard5.html
synchronization_wizard1.html synchronization_wizard2.html
Log Message:
Resolves: bug 481213
Bug Description: Update replication, winsync, chaining online help about connections and authentication
Reviewed by: nhosoi (Thanks!)
Fix Description: Updated the online help to reflect the new UI.
Platforms tested: RHEL5
Flag Day: no
Doc impact: no
Index: configtab_chaindb.html
===================================================================
RCS file: /cvs/dirsec/directoryconsole/help/en/help/configtab_chaindb.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- configtab_chaindb.html 19 Nov 2007 18:21:38 -0000 1.2
+++ configtab_chaindb.html 3 Mar 2009 00:13:59 -0000 1.3
@@ -20,36 +20,92 @@
</p>
<p class="text">
-<b>Bind DN.</b> DN of an administrative user by the database link to bind to the remote server. If this field is left blank, the database link binds as anonymous. Note that the bind DN cannot be the directory manager.
+<b>Authentication Mechanism</b>
</p>
<p class="text">
-<b>Password.</b> Password for the administrative user, in plain text. If no password is provided, it means that the database link can bind as anonymous.
+<b>Server TLS/SSL Certificate (requires TLS/SSL server set up). </b>Select this option if you want the chaining server to use its TLS/SSL server certificate for authentication. You cannot use certificate authentication unless the "Use TLS/SSL" or the "Use StartTLS" radio button in the Remote Server(s) Information section is selected. Otherwise, this option will be disabled. The "Bind As" and Password fields are unavailable with this option because the server will use its certificate to authenticate.
</p>
<p class="text">
-<b>Remote server(s) information. </b>In this section you provide information about the remote data sources used by the database link.
+To use this option, you must first do the following:
</p>
<ul>
+<li>
+Configure TLS/SSL for both the local and remote servers.
+</li>
+
+<li>
+Configure your remote server to recognize your local server's certificate as the chaining user DN (certificate mapping).
+</li>
+</ul>
+
+<p class="text">
+<b>SASL/GSSAPI (requires Kerberos keytab). </b>Select this option if you want the local server to use its Kerberos server credentials for authentication. You must have the "Use LDAP" radio button in the Remote Server(s) Information section selected. Otherwise, this option sill be disabled. Note that SASL/GSSAPI will use an encrypted channel, so TLS/SSL is not needed with this option.
+</p>
+
+<p class="text">
+To use this option, you must first do the following:
+</p>
+
+<ul>
+<li>
+Configure Kerberos for both your local and remote servers and assign each one a Kerberos server keytab.
+</li>
+
+<li>
+Configure a SASL mapping on your remote server to map the local server's Kerberos principal to a chaing user DN.
+</li>
+</ul>
+
+<p class="text">
+<b>SASL/DIGEST-MD5 (SASL user id and password). </b>Select this option if you want the local server to use SASL/Digest-MD5 authentication. This option requires a SASL user id and password. You specify them in the Bind As and Password fields (see below). You must configure the remote server with the appropriate SASL mapping to use this option.
+</p>
+
+<p class="text">
+<b>Simple Authentication. </b>Select this option if you want the local server to use simple authentication during communication. You can choose "Use SSL/TLS" or "Use StartTLS" if you want the simple authentication to take place over a secure channel but without certificates.
+</p>
+
+<p class="text">
+<b>Bind As. </b>DN of an administrative user by the database link to bind to the remote server. If this field is left blank, the database link binds as anonymous. Note that the bind DN cannot be the directory manager.
+</p>
+
+<p class="text">
+<b>Password. </b>Password for the administrative user, in plain text. If no password is provided, it means that the database link can bind as anonymous.
+</p>
+
+<p class="text">
+<b>Remote Server(s) Information. </b>In this section you provide information about the remote data sources used by the database link.
+</p>
+
+<ul>
+<p class="text">
+<b>Use LDAP (no encryption). </b>If you want the local server to use plain LDAP with no security, select this radio button. This option must be selected to use SASL/GSSAPI authentication.
+</p>
+
+<p class="text">
+<b>Use TLS/SSL (TLS/SSL encryption with LDAPS). </b><b>Deprecated.</b> If you want the local server to use TLS/SSL for secure communication using LDAPS, select this radio button. To use this option, you must have first configured your servers to use TLS/SSL. <b>This is Deprecated - use StartTLS instead.</b>
+</p>
+
<p class="text">
-<b>Use a secure LDAP connection between servers.</b> Selecting this checkbox indicates that the connection between the server and the remote server is secure.
+<b>Use StartTLS (TLS/SSL encryption with LDAP). </b>If you want the local server to use TLS/SSL for secure communication using StartTLS to start an encrypted channel using LDAP, select this radio button. To use this option, you must have first configured your servers to use TLS/SSL.
</p>
<p class="text">
-<b>Remote Server.</b> The name of the remote data source.
+<b>Remote Server. </b>The name of the remote data source. If using one of the TLS/SSL or SASL/GSSAPI connection types, you must use the fully qualified host and domain name, and this name must be able to be resolved on both the local and remote servers.
</p>
<p class="text">
-<b>Remote server port.</b> The port number on the remote data source used by the database link.
+<b>Remote server port. </b>The port number on the remote data source used by the database link. If using LDAPS, use the secure LDAPS port number (default 636). Otherwise, use the regular LDAP port number (default 389). StartTLS uses the regular LDAP port number.
</p>
<p class="text">
-<b>Failover Server(s).</b> You can specify optional servers for failover in the event that the primary remote server is unavailable. This field contains the name of an alternative remote server. Click Add to add the name and port number to the list.
+<b>Failover Server(s). </b>You can specify optional servers for failover in the event that the primary remote server is unavailable. This field contains the name of an alternative remote server. If using one of the TLS/SSL or SASL/GSSAPI connection types, you must use the fully qualified host and domain name, and this name must be able to be resolved on both the local and remote servers. Click Add to add the name and port number to the list.
</p>
<p class="text">
-<b>Port.</b> Port number of an alternative remote server.
+<b>Port.</b> Port number of an alternative remote server. If using LDAPS, use the secure LDAPS port number (default 636). Otherwise, use the regular LDAP port number (default 389). StartTLS uses the regular LDAP port number.
</p>
</ul>
Index: configtab_chaindb7.html
===================================================================
RCS file: /cvs/dirsec/directoryconsole/help/en/help/configtab_chaindb7.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- configtab_chaindb7.html 13 Aug 2007 22:28:09 -0000 1.1
+++ configtab_chaindb7.html 3 Mar 2009 00:13:59 -0000 1.2
@@ -3,7 +3,7 @@
</p>
<p class="text">
-Use the authentication tab to set the attributes required for your new database link to connect with a remote data source on another server.
+Use the authentication tab to set the attributes required for your new database link to authenticate to and connect with a remote data source on another server.
</p>
<p class="text">
@@ -11,7 +11,71 @@
</p>
<p class="text">
-<b>Remote server URL. </b>The LDAP URL of the remote server to which this database link connects. The LDAP URL syntax is <br><code>ldap://</code><span class="variable">server</span><code>:[</code><span class="variable">port</span><code>][</code> <span class="variable">server</span><code>[:</code><span class="variable">port</span><code>]]/</code>
+<b>Connection Type</b>
+</p>
+
+<p class="text">
+<b>Use LDAP (no encryption). </b>If you want the local server to use plain LDAP with no security, select this radio button. This option must be selected to use SASL/GSSAPI authentication.
+</p>
+
+<p class="text">
+<b>Use TLS/SSL (TLS/SSL encryption with LDAPS). </b><b>Deprecated.</b> If you want the local server to use TLS/SSL for secure communication using LDAPS, select this radio button. To use this option, you must have first configured your servers to use TLS/SSL. <b>This is Deprecated - use StartTLS instead.</b>
+</p>
+
+<p class="text">
+<b>Use StartTLS (TLS/SSL encryption with LDAP). </b>If you want the local server to use TLS/SSL for secure communication using StartTLS to start an encrypted channel using LDAP, select this radio button. To use this option, you must have first configured your servers to use TLS/SSL.
+</p>
+
+<p class="text">
+<b>Remote server URL. </b>The LDAP URL of the remote server to which this database link connects. The LDAP URL syntax is <br><code>ldap(s)://</code><span class="variable">server</span><code>:[</code><span class="variable">port</span><code>][</code> <span class="variable">server</span><code>[:</code><span class="variable">port</span><code>]]/</code> NOTE: If using LDAPS, all servers specified in the URL must use LDAPS, and you must specify the LDAPS port number. You cannot mix LDAP with LDAPS.
+</p>
+
+<p class="text">
+<b>Authentication Mechanism</b>
+</p>
+
+<p class="text">
+<b>Server TLS/SSL Certificate (requires TLS/SSL server set up). </b>Select this option if you want the chaining server to use its TLS/SSL server certificate for authentication. You cannot use certificate authentication unless the "Use TLS/SSL" or the "Use StartTLS" radio button in the Remote Server(s) Information section is selected. Otherwise, this option will be disabled. The "Bind As" and Password fields are unavailable with this option because the server will use its certificate to authenticate.
+</p>
+
+<p class="text">
+To use this option, you must first do the following:
+</p>
+
+<ul>
+<li>
+Configure TLS/SSL for both the local and remote servers.
+</li>
+
+<li>
+Configure your remote server to recognize your local server's certificate as the chaining user DN (certificate mapping).
+</li>
+</ul>
+
+<p class="text">
+<b>SASL/GSSAPI (requires Kerberos keytab). </b>Select this option if you want the local server to use its Kerberos server credentials for authentication. You must have the "Use LDAP" radio button in the Remote Server(s) Information section selected. Otherwise, this option sill be disabled. Note that SASL/GSSAPI will use an encrypted channel, so TLS/SSL is not needed with this option.
+</p>
+
+<p class="text">
+To use this option, you must first do the following:
+</p>
+
+<ul>
+<li>
+Configure Kerberos for both your local and remote servers and assign each one a Kerberos server keytab.
+</li>
+
+<li>
+Configure a SASL mapping on your remote server to map the local server's Kerberos principal to a chaing user DN.
+</li>
+</ul>
+
+<p class="text">
+<b>SASL/DIGEST-MD5 (SASL user id and password). </b>Select this option if you want the local server to use SASL/Digest-MD5 authentication. This option requires a SASL user id and password. You specify them in the Bind As and Password fields (see below). You must configure the remote server with the appropriate SASL mapping to use this option.
+</p>
+
+<p class="text">
+<b>Simple Authentication. </b>Select this option if you want the local server to use simple authentication during communication. You can choose "Use SSL/TLS" or "Use StartTLS" if you want the simple authentication to take place over a secure channel but without certificates.
</p>
<p class="text">
Index: configtab_replication.html
===================================================================
RCS file: /cvs/dirsec/directoryconsole/help/en/help/configtab_replication.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- configtab_replication.html 20 Nov 2007 17:35:08 -0000 1.2
+++ configtab_replication.html 3 Mar 2009 00:13:59 -0000 1.3
@@ -3,11 +3,11 @@
</p>
<p class="text">
-The replication model used in Directory Server 4.1x and the current replication model are different. The former replication model is termed Legacy Replication. Only use this tab if you wish to accept replication updates from a 4.1x Directory Server using legacy replication.
+The replication model used in Directory Server 4.1x and the current replication model are different. The former replication model is termed Legacy Replication. Only use this tab if you wish to accept replication updates from a 4.1x Directory Server using legacy replication.
</p>
<p class="text">
-<b>Enable Legacy Consumer. </b> Select this checkbox if you want this current Directory Server, to act as a legacy consumer. This means that this server can accept updates from a 4.1x supplier server. You must check this checkbox to activate the other fields in this window.
+<b>Enable Legacy Consumer. </b> Select this checkbox if you want this Directory Server to act as a legacy consumer. This means that this server can accept updates from a 4.1x supplier server. You must check this checkbox to activate the other fields in this window.
</p>
<p class="text">
Index: configtab_replication2.html
===================================================================
RCS file: /cvs/dirsec/directoryconsole/help/en/help/configtab_replication2.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- configtab_replication2.html 20 Nov 2007 17:35:08 -0000 1.2
+++ configtab_replication2.html 3 Mar 2009 00:13:59 -0000 1.3
@@ -3,11 +3,11 @@
</p>
<p class="text">
-Use this tab to configure a server as a supplier server. You must specify supplier attributes on any server that holds the master copy of a directory database.
+Use this tab to configure a server as a supplier server. This applies to any server which supplies updates to another server, whether the server is one of several masters, a single master, or a read-only hub.
</p>
<p class="text">
-<b>Enable Changelog. </b>Check this box if you want this server to record all update operations in a change log so that these changes can be replayed on a consumer server.
+<b>Enable Changelog. </b>A supplier server must keep track of changes that it needs to replay to other servers. The database that keeps track of these changes is called the <b>Changelog</b> database. Check this box if you want this server to record all update operations in a change log so that these changes can be replayed on a consumer server.
</p>
<p class="text">
Index: configtab_replication3.html
===================================================================
RCS file: /cvs/dirsec/directoryconsole/help/en/help/configtab_replication3.html,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- configtab_replication3.html 26 Feb 2009 17:49:06 -0000 1.3
+++ configtab_replication3.html 3 Mar 2009 00:13:59 -0000 1.4
@@ -24,7 +24,7 @@
</p>
<p class="text">
-<b>Hub. </b>Select this radio button if you want this Directory Server to accept updates from a supplier server, and replicate changes to consumer servers.
+<b>Hub. </b>Select this radio button if you want this Directory Server to accept updates from one or more supplier server, and replicate changes to consumer servers. Except for replicated operations from suppliers, a hub can service search operations but not update operations. Update operations will be referred to a supplier server.
</p>
<p class="text">
@@ -42,15 +42,15 @@
</p>
<p class="text">
-If the ID is incorrect, the field labels turn red and the Save button is disabled. Dedicated Consumer does not require Replica ID.
+If the ID is incorrect, the field labels turn red and the Save button is disabled. Hub and Dedicated Consumer do not require Replica ID.
</p>
<p class="text">
-<b>Purge delay.</b> The delay you specify in these fields determines how often the state information stored in the replicated entries is purged. Check the Never checkbox if you want to save this information indefinitely.
+<b>Purge delay. </b>The delay you specify in these fields determines how long the server keeps replication state information in the database before it is purged. A longer time means that the risk of needing to perform a replication re-initialization is lower, but you will need more disk space to store the extra data and more memory to cache the extra data. A shorter time means the risk of needing to perform a replication re-initializtion is higher, but you will need less disk space and memory. Check the Never checkbox if you want to save this information indefinitely.
</p>
<p class="text">
-<b>Updatable by a 4.x Replica.</b> Check this checkbox if you want this Directory Server to act as a legacy consumer of a 4.x supplier server.
+<b>Updatable by a 4.x Replica. </b>Check this checkbox if you want this Directory Server to act as a legacy consumer of a 4.x supplier server.
</p>
</ul>
@@ -60,10 +60,10 @@
<ul>
<p class="text">
-<b>Current Supplier DNs.</b> This field lists the supplier bind DNs that supplier servers must use to update this replica. You can now specify multiple supplier bind DNs per replica, but only one supplier DN per replication agreement. Use the "<b>Enter a new Supplier DN</b>" field to specify a new supplier DN and click Add to add it to this list. If you have configured replication over SSL, specify the DN of the entry that contains the supplier's certificate in the "<b>Enter a new Supplier DN</b>" field and click Add to add it to this list.
+<b>Current Supplier DNs. </b>This field lists the supplier bind DNs that supplier servers must use to update this replica. You can specify multiple supplier bind DNs per replica, but only one supplier DN per replication agreement. Use the "<b>Enter a new Supplier DN</b>" field to specify a new supplier DN and click Add to add it to this list. If you have configured replication over SSL, specify the DN of the entry that contains the supplier's certificate in the "<b>Enter a new Supplier DN</b>" field and click Add to add it to this list.
</p>
<p class="text">
-<b>Current URLs for referrals (Optional).</b> Directory Server uses the information contained in the replication agreement to create referrals from the consumer server to the appropriate supplier servers. This field lists the URLs you specify in addition to the automatic URLs which will be set up automatically. If you want the consumer to return an <code>ldaps://</code> URL, so that clients will bind to the supplier servers using SSL, enter the URL in the "Enter a new URL" field and click Add to add it to this list of current URLs. In the same way, if you have a cascading replication scenario and you want the referral returned to clients to point to the original supplier instead of the hub supplier, enter the corresponding URL in the "Enter a new URL" field and click Add to add it to this list of current URLs.
+<b>Current URLs for referrals (Optional). </b>Directory Server uses the information contained in the replication agreement to create referrals from the consumer server to the appropriate supplier servers. This field lists the URLs you specify in addition to the automatic URLs which will be set up automatically. If you want the consumer to return an <code>ldaps://</code> URL, so that clients will bind to the supplier servers using SSL, enter the URL in the "Enter a new URL" field and click Add to add it to this list of current URLs. In the same way, if you have a cascading replication scenario and you want the referral returned to clients to point to the original supplier instead of the hub supplier, enter the corresponding URL in the "Enter a new URL" field and click Add to add it to this list of current URLs.
</p>
</ul>
Index: configtab_replication6.html
===================================================================
RCS file: /cvs/dirsec/directoryconsole/help/en/help/configtab_replication6.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- configtab_replication6.html 13 Aug 2007 22:28:09 -0000 1.1
+++ configtab_replication6.html 3 Mar 2009 00:13:59 -0000 1.2
@@ -3,39 +3,73 @@
</p>
<p class="text">
-Use the Connection tab to display the type of connection used by your replica during replication. You can use this tab to modify the user bind name and password. You cannot change the connection type. To change the connection type, re-create the replication agreement.
+Use the Connection tab to display and configure the type of connection and authentication used by your replica during replication. You cannot change the connection type to or from "Use TLS/SSL (TLS/SSL encryption with LDAPS)" since this would require changing the port number. If you want to do this, re-create the agreement.
</p>
<p class="text">
-<b>Using Encrypted SSL Connection. </b>When selected, specifies that the supplier and consumer servers use SSL for secure communication.
+<b>Use LDAP (no encryption). </b>If you want the supplier and consumer servers to use plain LDAP with no security, select this radio button. This option must be selected to use SASL/GSSAPI authentication (see below).
</p>
<p class="text">
-<b>SSL Client Authentication. </b>When selected, this option specifies that the supplier and consumer servers use certificates for secure communication. SSL client authentication is not used unless the "Using Encrypted SSL Connection" checkbox is selected. The Bind As and Password fields are unavailable with this option because the server will use its security certificate to authenticate to the consumer server.
+<b>Use TLS/SSL (TLS/SSL encryption with LDAPS). </b><b>Deprecated.</b> If you want the supplier and consumer servers to use TLS/SSL for secure communication using LDAPS, select this radio button. To use this option, you must have first configured your servers to use TLS/SSL. <b>This is Deprecated - use StartTLS instead.</b>
</p>
<p class="text">
-To select this option, you must first do the following:
+<b>Use StartTLS (TLS/SSL encryption with LDAP). </b>If you want the supplier and consumer servers to use TLS/SSL for secure communication using StartTLS to start an encrypted channel using LDAP, select this radio button. To use this option, you must have first configured your servers to use TLS/SSL.
+</p>
+
+<p class="text">
+<b>Authentication Mechanism</b>
+</p>
+
+<p class="text">
+<b>Server TLS/SSL Certificate (requires TLS/SSL server set up). </b>Select this option if you want the supplier to use its TLS/SSL server certificate for authentication. You cannot use certificate authentication unless the "Use TLS/SSL" or the "Use StartTLS" radio button in the Connection section is selected. Otherwise, this option will be disabled. The "Bind As" and Password fields are unavailable with this option because the server will use its certificate to authenticate.
+</p>
+
+<p class="text">
+To use this option, you must first do the following:
+</p>
+
+<ul>
+<li>
+Configure TLS/SSL for both your supplier and consumer servers.
+</li>
+
+<li>
+Configure your consumer server to recognize your supplier server's certificate as the supplier DN (certificate mapping).
+</li>
+</ul>
+
+<p class="text">
+<b>SASL/GSSAPI (requires Kerberos keytab). </b>Select this option if you want the supplier to use its Kerberos server credentials for authentication. You must have the "Use LDAP" radio button in the Connection section selected. Otherwise, this option sill be disabled. Note that SASL/GSSAPI will use an encrypted channel, so TLS/SSL is not needed with this option.
+</p>
+
+<p class="text">
+To use this option, you must first do the following:
</p>
<ul>
<li>
-Configure SSL for both your supplier and consumer server.
+Configure Kerberos for both your supplier and consumer servers and assign each one a Kerberos server keytab.
</li>
<li>
-Configure your consumer server to recognize your supplier server's certificate as the supplier DN.
+Configure a SASL mapping on your consumer server to map the supplier's server Kerberos principal to a supplier DN.
</li>
</ul>
<p class="text">
-<b>Simple Authentication. </b>When selected, this option specifies that the supplier and consumer servers use simple authentication during communication.
+<b>SASL/DIGEST-MD5 (SASL user id and password). </b>Select this option if you want the supplier to use SASL/Digest-MD5 authentication. This option requires a SASL user id and password. You specify them in the Bind As and Password fields (see below). You must configure the consumer server with the appropriate SASL mapping to use this option.
+</p>
+
+<p class="text">
+<b>Simple Authentication. </b>Select this option if you want the supplier to use simple authentication during communication. You can choose "Use SSL/TLS" or "Use StartTLS" if you want the simple authentication to take place over a secure channel but without certificates.
</p>
<p class="text">
-<b>Bind As. </b>You can update the supplier bind DN in the Bind As text box.
+<b>Bind As. </b>If you are using Simple or SASL/DIGEST-MD5 authentication, enter the supplier bind DN or SASL user id defined on the consumer server in the Bind As text box.
</p>
<p class="text">
-<b>Password. </b>You can update the password corresponding to the supplier bind DN in the Password field.
+<b>Password. </b>Enter the password for the Supplier DN or SASL user id in the Password field.
</p>
Index: configtab_replication7.html
===================================================================
RCS file: /cvs/dirsec/directoryconsole/help/en/help/configtab_replication7.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- configtab_replication7.html 13 Aug 2007 22:28:09 -0000 1.1
+++ configtab_replication7.html 3 Mar 2009 00:13:59 -0000 1.2
@@ -7,9 +7,9 @@
</p>
<p class="text">
-<b>Host Name. </b>Enter the host name of the supplier or consumer server as appropriate.
+<b>Host Name. </b>Enter the host name of the consumer server. If you are using TLS/SSL or SASL/GSSAPI, you should use a fully qualified host and domain name. Make sure the host name you use will resolve correctly on both the supplier and consumer server.
</p>
<p class="text">
-<b>Port Number. </b>Enter the port number of the supplier or consumer server as appropriate.
+<b>Port Number. </b>Enter the port number of the supplier or consumer server as appropriate. If you are using TLS/SSL over LDAPS, you must enter the secure LDAPS port number (default 636). Otherwise, enter the regular LDAP port number (default 389).
</p>
Index: configtab_synchronization3.html
===================================================================
RCS file: /cvs/dirsec/directoryconsole/help/en/help/configtab_synchronization3.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- configtab_synchronization3.html 13 Aug 2007 22:28:09 -0000 1.1
+++ configtab_synchronization3.html 3 Mar 2009 00:13:59 -0000 1.2
@@ -3,15 +3,19 @@
</p>
<p class="text">
-Use the Connection tab to display the type of connection used by your servers during synchronization. You can use this tab to modify the user bind name and password. You cannot change the connection type since this would require changing the port number. To change the connection type, re-create the synchronization agreement.
+Use the Connection tab to display the type of connection used by your servers during synchronization. You can use this tab to modify the user bind name and password. You cannot change the connection type to or from "Use TLS/SSL (TLS/SSL encryption with LDAPS)" since this would require changing the port number. If you want to do this, re-create the synchronization agreement.
</p>
<p class="text">
-<b>Using Encrypted SSL Connection. </b>When selected, specifies that the supplier and consumer servers use SSL for secure communication.
+<b>Use LDAP (no encryption). </b>If you want the directory server to use plain LDAP with no security to connect to Windows, select this radio button.
</p>
<p class="text">
-<b>SSL Client Authentication. </b>Client authentication is no used for synchronization; this option is ignored if selected.
+<b>Use TLS/SSL (TLS/SSL encryption with LDAPS). </b><b>Deprecated.</b> If you want the directory server to use TLS/SSL for secure communication using LDAPS to connect to Windows, select this radio button. To use this option, you must have first configured your servers to use TLS/SSL. <b>This is Deprecated - use StartTLS instead.</b>
+</p>
+
+<p class="text">
+<b>Use StartTLS (TLS/SSL encryption with LDAP). </b>If you want the directory server to use TLS/SSL for secure communication using StartTLS to start an encrypted channel using LDAP, select this radio button. To use this option, you must have first configured your servers to use TLS/SSL.
</p>
<p class="text">
@@ -25,3 +29,12 @@
<p class="text">
<b>Password. </b>You can update the password corresponding to the bind DN in the Password field.
</p>
+
+<p class="text">
+<b>New Windows User Sync </b>Check this checkbox if you want to add new Windows users automatically to the Directory Server.
+</p>
+
+<p class="text">
+<b>New Windows Group Sync </b>Check this checkbox if you want to add new Windows groups automatically to the Directory Server.
+</p>
+
Index: replication_wizard.html
===================================================================
RCS file: /cvs/dirsec/directoryconsole/help/en/help/replication_wizard.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- replication_wizard.html 20 Nov 2007 17:35:08 -0000 1.2
+++ replication_wizard.html 3 Mar 2009 00:13:59 -0000 1.3
@@ -7,7 +7,7 @@
</p>
<p class="text">
-<b>Supplier. </b>This field contains a static display of the name and port number of the supplier server in this agreement.
+<b>Supplier. </b>This field contains a static display of the name and port number of the supplier server in this agreement. <b>NOTE:</b> This field is only used for naming purposes. If you have chosen to perform replication using TLS/SSL with LDAPS, using the secure port, the <b>Supplier</b> field may still display the non-secure port number - this is ok. Please refer to the Connection and Authentication values below to see if the connection is really using TLS/SSL or not.
</p>
<p class="text">
@@ -20,11 +20,25 @@
<ul>
<p class="text">
-<b>Using Encrypted SSL Connection. </b>If you want the supplier and consumer servers to use SSL for secure communication, select this checkbox. To use this option, you must have first configured your servers to use SSL.
+<b>Use LDAP (no encryption). </b>If you want the supplier and consumer servers to use plain LDAP with no security, select this radio button. This option must be selected to use SASL/GSSAPI authentication (see below).
</p>
<p class="text">
-<b>SSL Client Authentication. </b>Select this option if you want the supplier and consumer servers to use certificates for secure communication. You cannot use SSL client authentication unless the "Using Encrypted SSL Connection" checkbox is selected. The "Bind As" and Password fields are unavailable with this option because the servers will use security certificates to authenticate to each other.
+<b>Use TLS/SSL (TLS/SSL encryption with LDAPS). </b><b>Deprecated.</b> If you want the supplier and consumer servers to use TLS/SSL for secure communication using LDAPS, select this radio button. To use this option, you must have first configured your servers to use TLS/SSL. <b>This is Deprecated - use StartTLS instead.</b>
+</p>
+
+<p class="text">
+<b>Use StartTLS (TLS/SSL encryption with LDAP). </b>If you want the supplier and consumer servers to use TLS/SSL for secure communication using StartTLS to start an encrypted channel using LDAP, select this radio button. To use this option, you must have first configured your servers to use TLS/SSL.
+</p>
+
+</ul>
+<p class="text">
+<b>Authentication Mechanism</b>
+</p>
+
+<ul>
+<p class="text">
+<b>Server TLS/SSL Certificate (requires TLS/SSL server set up). </b>Select this option if you want the supplier to use its TLS/SSL server certificate for authentication. You cannot use certificate authentication unless the "Use TLS/SSL" or the "Use StartTLS" radio button in the Connection section is selected. Otherwise, this option will be disabled. The "Bind As" and Password fields are unavailable with this option because the server will use its certificate to authenticate.
</p>
<p class="text">
@@ -33,24 +47,46 @@
<ul>
<li>
-Configure SSL for both your supplier and consumer servers.
+Configure TLS/SSL for both your supplier and consumer servers.
</li>
<li>
-Configure your consumer server to recognize your supplier server's certificate as the supplier DN.
+Configure your consumer server to recognize your supplier server's certificate as the supplier DN (certificate mapping).
</li>
</ul>
<p class="text">
-<b>Simple Authentication. </b>Select this option if you want the supplier and consumer servers to use simple authentication during communication. If you select the "Using Encrypted SSL Connection" checkbox and you specify this option, the simple authentication will take place over a secure channel but without certificates.
+<b>SASL/GSSAPI (requires Kerberos keytab). </b>Select this option if you want the supplier to use its Kerberos server credentials for authentication. You must have the "Use LDAP" radio button in the Connection section selected. Otherwise, this option sill be disabled. Note that SASL/GSSAPI will use an encrypted channel, so TLS/SSL is not needed with this option.
+</p>
+
+<p class="text">
+To use this option, you must first do the following:
+</p>
+
+<ul>
+<li>
+Configure Kerberos for both your supplier and consumer servers and assign each one a Kerberos server keytab.
+</li>
+
+<li>
+Configure a SASL mapping on your consumer server to map the supplier's server Kerberos principal to a supplier DN.
+</li>
+</ul>
+
+<p class="text">
+<b>SASL/DIGEST-MD5 (SASL user id and password). </b>Select this option if you want the supplier to use SASL/Digest-MD5 authentication. This option requires a SASL user id and password. You specify them in the Bind As and Password fields (see below). You must configure the consumer server with the appropriate SASL mapping to use this option.
+</p>
+
+<p class="text">
+<b>Simple Authentication. </b>Select this option if you want the supplier to use simple authentication during communication. You can choose "Use SSL/TLS" or "Use StartTLS" if you want the simple authentication to take place over a secure channel but without certificates.
</p>
<p class="text">
-<b>Bind As. </b>If you are not using SSL, or you are using SSL with simple authentication, enter the supplier bind DN defined on the consumer server in the Bind As text box.
+<b>Bind As. </b>If you are using Simple or SASL/DIGEST-MD5 authentication, enter the supplier bind DN or SASL user id defined on the consumer server in the Bind As text box.
</p>
<p class="text">
-<b>Password. </b>If you are not using SSL, or you are using SSL with simple authentication, enter the Supplier DN password in the Password field.
+<b>Password. </b>Enter the password for the Supplier DN or SASL user id in the Password field.
</p>
</ul>
Index: replication_wizard5.html
===================================================================
RCS file: /cvs/dirsec/directoryconsole/help/en/help/replication_wizard5.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- replication_wizard5.html 13 Aug 2007 22:28:09 -0000 1.1
+++ replication_wizard5.html 3 Mar 2009 00:13:59 -0000 1.2
@@ -7,7 +7,7 @@
</p>
<p class="text">
-<b>Name. </b>Enter a meaningful name for the replication agreement. This field is required.
+<b>Name. </b>Enter a meaningful name for the replication agreement. This field is required. This field will be used to create the name of the configuration entry (the CN value), so it's better to choose something short yet meaningful and without a lot of special characters.
</p>
<p class="text">
Index: synchronization_wizard1.html
===================================================================
RCS file: /cvs/dirsec/directoryconsole/help/en/help/synchronization_wizard1.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- synchronization_wizard1.html 13 Aug 2007 22:28:09 -0000 1.1
+++ synchronization_wizard1.html 3 Mar 2009 00:13:59 -0000 1.2
@@ -7,7 +7,7 @@
</p>
<p class="text">
-<b>Name. </b>Enter a meaningful name for the synchronization agreement. This field is required.
+<b>Name. </b>Enter a meaningful name for the agreement. This field is required. This field will be used to create the name of the configuration entry (the CN value), so it's better to choose something short yet meaningful and without a lot of special characters.
</p>
<p class="text">
Index: synchronization_wizard2.html
===================================================================
RCS file: /cvs/dirsec/directoryconsole/help/en/help/synchronization_wizard2.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- synchronization_wizard2.html 20 Nov 2007 17:35:08 -0000 1.2
+++ synchronization_wizard2.html 3 Mar 2009 00:13:59 -0000 1.3
@@ -36,11 +36,11 @@
</p>
<p class="text">
-<b>Domain Controller Host. </b>This is the hostname of the domain controller in the Windows domain you wish to use for sync operations. This name must be resolvable and, if SSL is being used, must match the CN of the certificate issued to the domain controller. That is normally the fully qualified DNS name. For example: <span style="font-family: courier new,courier,monospace;">dc01.example.com</span>
+<b>Domain Controller Host. </b>This is the hostname of the domain controller in the Windows domain you wish to use for sync operations. This name must be resolvable and, if TLS/SSL (StartTLS or LDAPS) is being used, must match the CN of the certificate issued to the domain controller. That is normally the fully qualified DNS name. For example: <span style="font-family: courier new,courier,monospace;">dc01.example.com</span>
</p>
<p class="text">
-<b>Port Num. </b>The Windows domain controller port number. By default, this is 389; this is automatically reset to 636 if you check the "Using encrypted SSL connection" checkbox (even if you had previously set a different value).
+<b>Port Num. </b>The Windows domain controller port number. By default, this is 389; this is automatically reset to 636 if you check the "Use TLS/SSL (TLS/SSL encryption with LDAPS)." checkbox (even if you had previously set a different value). It is better to choose the connection type first, then change this port number field if necessary.
</p>
</ul>
@@ -50,11 +50,19 @@
<ul>
<p class="text">
-<b>Using Encrypted SSL Connection. </b>If you want the Directory Server and Windows servers to use SSL for secure communication, select this checkbox. To use this option, you must have first configured your servers to use SSL. It is strongly recommended that you use an SSL connection. Passwords will not be synchronized if you do not enable SSL.
+<b>Use LDAP (no encryption). </b>If you want the supplier and consumer servers to use plain LDAP with no security, select this radio button.
</p>
<p class="text">
-<b>Bind As. </b>Enter the supplier bind DN defined on the Windows server in the Bind As text box. This must be a valid DN.
+<b>Use TLS/SSL (TLS/SSL encryption with LDAPS). </b><b>Deprecated.</b> If you want the supplier and consumer servers to use TLS/SSL for secure communication using LDAPS, select this radio button. To use this option, you must have first configured your servers to use TLS/SSL. <b>This is Deprecated - use StartTLS instead.</b>
+</p>
+
+<p class="text">
+<b>Use StartTLS (TLS/SSL encryption with LDAP). </b>If you want the supplier and consumer servers to use TLS/SSL for secure communication using StartTLS to start an encrypted channel using LDAP, select this radio button. To use this option, you must have first configured your servers to use TLS/SSL.
+</p>
+
+<p class="text">
+<b>Bind As. </b>Enter the supplier bind DN defined on the Windows server in the Bind As text box. This must be a valid DN. This user must be able to read, write, and use the DirSync control in the specified subtree.
</p>
<p class="text">
15 years, 3 months