X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=configure.in;h=c486f2a173f0048cd2fa203970e7fe5622a47cc5;hb=c1b9b55ad8d59dc05ef55e316aebf5863e7dfa56;hp=03e1a7d2483ba870bf720ff0be840c0334b8ef40;hpb=49f5b54f312fe4ac2e9bc47581a72451bd0e8439;p=xscreensaver diff --git a/configure.in b/configure.in index 03e1a7d2..c486f2a1 100644 --- a/configure.in +++ b/configure.in @@ -106,6 +106,9 @@ AH_TEMPLATE([HAVE_RANDR], possibly elsewhere. (It's available if the file /usr/include/X11/extensions/Xrandr.h exists.)]) +AH_TEMPLATE([HAVE_RANDR_12], + [Define this if the RANDR library is version 1.2 or newer.]) + AH_TEMPLATE([HAVE_PROC_INTERRUPTS], [Define this if you have a Linux-like /proc/interrupts file which can be examined to determine when keyboard activity has @@ -191,6 +194,9 @@ AH_TEMPLATE([PASSWD_HELPER_PROGRAM], AH_TEMPLATE([NO_LOCKING], [Define this to remove the option of locking the screen at all.]) +AH_TEMPLATE([ALLOW_ROOT_PASSWD], + [Define this to allow the root password to unlock the screen.]) + AH_TEMPLATE([HAVE_KERBEROS], [Define this if you want to use Kerberos authentication to lock/unlock the screen instead of your local password. This @@ -221,10 +227,17 @@ AH_TEMPLATE([PAM_SERVICE_NAME], configured for xlock, so setting this to "xlock" would also work in that case.]) +AH_TEMPLATE([HAVE_PAM_FAIL_DELAY], + [Define this if you have pam_fail_delay function. + see driver/passwd-pam.c.]) + AH_TEMPLATE([PAM_STRERROR_TWO_ARGS], [Define if you have PAM and pam_strerror() requires two arguments.]) +AH_TEMPLATE([HAVE_SIGTIMEDWAIT], + [Define to 1 if you have the `sigtimedwait' function.]) + AH_TEMPLATE([HAVE_SHADOW_PASSWD], [Define this if your system uses 'shadow' passwords, that is, the passwords live in /etc/shadow instead of /etc/passwd, and one @@ -343,8 +356,8 @@ AC_DEFUN(AC_PROG_CC_ANSI, AC_MSG_RESULT(Turning on gcc compiler warnings.) CC="$CC -pedantic -Wall -Wstrict-prototypes -Wnested-externs -Wmissing-prototypes" OBJCC="$OBJCC -Wall" - # supposedly gcc 3.4 will have "-Wdeclaration-after-statement" - # and then perhaps we can do without -pedantic? + # As of gcc 3.4, we have "-Wdeclaration-after-statement" + # and so perhaps now we can do without -pedantic? else case "$host" in *-irix5* |*-irix6.[0-3]* ) @@ -364,7 +377,42 @@ AC_DEFUN(AC_PROG_CC_ANSI, ############################################################################### # -# Functions to figure out how to disable // comments in ANSI C code. +# Check for availability of various gcc command-line options. +# +############################################################################### + +AC_DEFUN(AC_CHECK_GCC_ARG, + [if test -n "$GCC"; then + AC_CACHE_CHECK([whether gcc accepts [$2]], + ac_cv_gcc_accepts_[$1], + [rm -rf conftest.$ac_ext + touch conftest.$ac_ext + if ( ( gcc -c [$2] conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ + grep unrecognized >/dev/null ); then + ac_cv_gcc_accepts_[$1]=no + else + ac_cv_gcc_accepts_[$1]=yes + CC="$CC [$2]" + fi]) + ac_gcc_accepts_[$1]="$ac_cv_gcc_accepts_[$1]" + fi +]) + +AC_DEFUN(AC_NO_LONG_STRING_WARNINGS, + [AC_CHECK_GCC_ARG(no_overlength, -Wno-overlength-strings)]) + +AC_DEFUN(AC_NO_MISPLACED_DECLARATIONS, + [AC_CHECK_GCC_ARG(no_decl_after, -Wdeclaration-after-statement)]) + +# Need to disable Objective C extensions in ANSI C on MacOS X to work +# around an Apple-specific gcc bug. +# +AC_DEFUN(AC_NO_OBJECTIVE_C, + [AC_CHECK_GCC_ARG(no_cpp_precomp, -no-cpp-precomp)]) + +############################################################################### +# +# Function to figure out how to disable // comments in ANSI C code. # # (With recent gcc, this is done with "-std=c89". With older gcc, this # is done by passing "-lang-c89" to cpp, by passing "-Wp,-lang-c89" to @@ -383,18 +431,7 @@ AC_DEFUN(AC_PROG_CC_ANSI, ############################################################################### AC_DEFUN(AC_GCC_ACCEPTS_STD, - [if test -n "$GCC"; then - AC_CACHE_CHECK([whether gcc accepts -std], - ac_cv_gcc_accepts_std, - [if ( ( gcc -E -std=c89 - /dev/null ) 2>&1 | \ - grep unrecognized >/dev/null ); then - ac_cv_gcc_accepts_std=no - else - ac_cv_gcc_accepts_std=yes - fi]) - ac_gcc_accepts_std="$ac_cv_gcc_accepts_std" - fi -]) + [AC_CHECK_GCC_ARG(std, -std=c89)]) AC_DEFUN(AC_NO_CPLUSPLUS_COMMENTS_IN_C_CODE, [if test -n "$GCC"; then @@ -419,7 +456,8 @@ AC_DEFUN(AC_NO_CPLUSPLUS_COMMENTS_IN_C_CODE, # before they were in the ANSI C 99 spec... (gcc 2.96 permits // # with -std=gnu89 but not with -std=c89.) # - CC="$CC -std=c89 -U__STRICT_ANSI__" + # $CC already contains "-std=c89" via AC_GCC_ACCEPTS_STD + CC="$CC -U__STRICT_ANSI__" else # The old way: CC="$CC -Wp,-lang-c89" @@ -428,38 +466,6 @@ AC_DEFUN(AC_NO_CPLUSPLUS_COMMENTS_IN_C_CODE, ]) -############################################################################### -# -# Function to figure out how to turn off Objective C on MacOS X. -# (We have to do this to work around an Apple-specific gcc bug.) -# -############################################################################### - -AC_DEFUN(AC_GCC_ACCEPTS_NO_CPP_PRECOMP, - [if test -n "$GCC"; then - AC_CACHE_CHECK([whether gcc accepts -no-cpp-precomp], - ac_cv_gcc_accepts_no_cpp_precomp, - [if ( ( gcc -E -no-cpp-precomp - /dev/null ) 2>&1 | \ - grep unrecognized >/dev/null ); then - ac_cv_gcc_accepts_no_cpp_precomp=no - else - ac_cv_gcc_accepts_no_cpp_precomp=yes - fi]) - ac_gcc_accepts_no_cpp_precomp="$ac_cv_gcc_accepts_no_cpp_precomp" - fi -]) - -AC_DEFUN(AC_NO_OBJECTIVE_C, - [if test -n "$GCC"; then - AC_GCC_ACCEPTS_NO_CPP_PRECOMP - if test "$ac_gcc_accepts_no_cpp_precomp" = yes ; then - AC_MSG_RESULT(Disabling Objective C extensions in ANSI C code.) - CC="$CC -no-cpp-precomp" - fi - fi -]) - - ############################################################################### # # Function to figure out how to create directory trees. @@ -950,6 +956,7 @@ AC_DEFUN(AC_CHECK_X_HEADER, [ CPPFLAGS="$CPPFLAGS -I$includedir" fi CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` AC_CHECK_HEADER([$1],[$2],[$3],[$4]) CPPFLAGS="$ac_save_CPPFLAGS"]) @@ -961,6 +968,7 @@ AC_DEFUN(AC_EGREP_X_HEADER, [ CPPFLAGS="$CPPFLAGS -I$includedir" fi CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` AC_EGREP_HEADER([$1], [$2], [$3], [$4]) CPPFLAGS="$ac_save_CPPFLAGS"]) @@ -972,6 +980,7 @@ AC_DEFUN(AC_TRY_X_COMPILE, [ CPPFLAGS="$CPPFLAGS -I$includedir" fi CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` AC_TRY_COMPILE([$1], [$2], [$3], [$4]) CPPFLAGS="$ac_save_CPPFLAGS"]) @@ -996,6 +1005,8 @@ AC_DEFUN(AC_CHECK_X_LIB, [ # note: $X_LIBS includes $x_libraries LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` AC_CHECK_LIB([$1], [$2], [$3], [$4], [$5]) CPPFLAGS="$ac_save_CPPFLAGS" LDFLAGS="$ac_save_LDFLAGS" @@ -1011,6 +1022,7 @@ AC_DEFUN(AC_TRY_X_RUN, [ CPPFLAGS="$CPPFLAGS -I$includedir" fi CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` AC_TRY_RUN([$1], [$2], [$3], [$4]) CPPFLAGS="$ac_save_CPPFLAGS"]) @@ -1080,11 +1092,18 @@ AC_DEFUN(HANDLE_X_PATH_ARG, [ ############################################################################### ############################################################################### +# WTF! autoconf emits this *way* too late. Do it earlier. +test "x$prefix" = xNONE && prefix=$ac_default_prefix +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + + # random compiler setup AC_CANONICAL_HOST AC_PROG_CC_ANSI -AC_NO_CPLUSPLUS_COMMENTS_IN_C_CODE +AC_NO_LONG_STRING_WARNINGS +AC_NO_MISPLACED_DECLARATIONS AC_NO_OBJECTIVE_C +AC_NO_CPLUSPLUS_COMMENTS_IN_C_CODE AC_PROG_CPP AC_C_CONST AC_C_INLINE @@ -1147,15 +1166,6 @@ AC_MSG_CHECKING(whether this is MacOS X) AC_MSG_RESULT($ac_macosx) -if test "$ac_macosx" = yes; then - if test -n "$GCC"; then - # Without these, every link against libGL gets a bunch of useless warnings. - osx_crud="-bind_at_load -multiply_defined suppress" - AC_MSG_RESULT(adding "$osx_crud" to LDFLAGS) - LDFLAGS="$LDFLAGS $osx_crud" - fi -fi - ############################################################################### # # Gettext support @@ -1269,9 +1279,7 @@ fi HACKDIR=`echo "${HACKDIR}" | sed 's@/$@@;s@//*@/@g'` # Expand HACKDIR as HACKDIR_FULL -eval HACKDIR_FULL=${HACKDIR} -eval HACKDIR_FULL=${HACKDIR_FULL} -eval HACKDIR_FULL=${HACKDIR_FULL} +HACKDIR_FULL=`eval eval eval eval eval eval eval eval eval echo $HACKDIR` # This option used to be called --enable-subdir; make sure that is no longer # used, since configure brain-damagedly ignores unknown --enable options. @@ -1648,7 +1656,7 @@ HANDLE_X_PATH_ARG(with_randr, --with-randr-ext, RANDR) if test "$with_randr" = yes; then - # first check for Randr.h + # first check for Xrandr.h AC_CHECK_X_HEADER(X11/extensions/Xrandr.h, [have_randr=yes],, [#include ]) @@ -1677,8 +1685,13 @@ if test "$with_randr" = yes; then # if that succeeded, then we've really got it. if test "$have_randr" = yes; then AC_DEFINE(HAVE_RANDR) + + # Now check for version 1.2 in the same libs. + AC_CHECK_X_LIB(c, XRRGetOutputInfo, [AC_DEFINE(HAVE_RANDR_12)], + [true], $SAVER_LIBS) fi + elif test "$with_randr" != no; then echo "error: must be yes or no: --with-randr-ext=$with_randr" exit 1 @@ -1770,7 +1783,15 @@ fi AC_ARG_ENABLE(locking,[Screen locking options: --enable-locking Compile in support for locking the display. --disable-locking Do not allow locking at all.], - [enable_locking="$enableval"],[enable_locking=yes]) + [enable_locking="$enableval"], + [if test "$ac_macosx" = yes; then + # We can't lock on MacOS X, so default to not compiling in support for it. + # But allow --enable-locking to override that, so I can debug Linux locking + # under MacOS X11. + enable_locking=no + else + enable_locking=yes + fi]) if test "$enable_locking" = yes; then true elif test "$enable_locking" = no; then @@ -1780,17 +1801,24 @@ else exit 1 fi -# We can't lock on MacOS X, so don't even bother compiling in support for it. + +############################################################################### # -if test "$ac_macosx" = yes; then - if test "$enable_locking" = yes; then - AC_MSG_RESULT(locking disabled: it doesn't work on MacOS X) - enable_locking=no - AC_DEFINE(NO_LOCKING) - fi +# Whether to allow root password to unblank. +# +############################################################################### +AC_ARG_ENABLE(root-passwd, [ + --enable-root-passwd Allow root passwd to unlock screen. + --disable-root-passwd Do not allow that.], + [enable_root_passwd="$enableval"],[enable_root_passwd=yes]) +if test "$enable_root_passwd" = yes; then + AC_DEFINE(ALLOW_ROOT_PASSWD) + true +elif test "$enable_root_passwd" != no; then + echo "error: must be yes or no: --enable-root-passwd=$enable_root_passwd" + exit 1 fi - ############################################################################### # # Check for PAM. @@ -1842,26 +1870,30 @@ if test "$enable_locking" = yes -a "$with_pam" = yes; then # On Linux, sigtimedwait() is in libc; on Solaris, it's in librt. have_timedwait=no - AC_CHECK_LIB(c, sigtimedwait, [have_timedwait=yes]) + AC_CHECK_LIB(c, sigtimedwait, + [have_timedwait=yes + AC_DEFINE(HAVE_SIGTIMEDWAIT)]) if test "$have_timedwait" = no ; then - AC_CHECK_LIB(rt, sigtimedwait, [PASSWD_LIBS="${PASSWD_LIBS} -lrt"]) + AC_CHECK_LIB(rt, sigtimedwait, [have_timedwait=yes + AC_DEFINE(HAVE_SIGTIMEDWAIT) + PASSWD_LIBS="${PASSWD_LIBS} -lrt"]) fi AC_MSG_CHECKING(how to call pam_strerror) AC_CACHE_VAL(ac_cv_pam_strerror_args, - [AC_TRY_COMPILE([#include - #include - #include ], - [pam_handle_t *pamh = 0; - char *s = pam_strerror(pamh, PAM_SUCCESS);], - [ac_pam_strerror_args=2], - [AC_TRY_COMPILE([#include - #include - #include ], - [char *s = - pam_strerror(PAM_SUCCESS);], - [ac_pam_strerror_args=1], - [ac_pam_strerror_args=0])]) + [AC_TRY_X_COMPILE([#include + #include + #include ], + [pam_handle_t *pamh = 0; + char *s = pam_strerror(pamh, PAM_SUCCESS);], + [ac_pam_strerror_args=2], + [AC_TRY_X_COMPILE([#include + #include + #include ], + [char *s = + pam_strerror(PAM_SUCCESS);], + [ac_pam_strerror_args=1], + [ac_pam_strerror_args=0])]) ac_cv_pam_strerror_args=$ac_pam_strerror_args]) ac_pam_strerror_args=$ac_cv_pam_strerror_args if test "$ac_pam_strerror_args" = 1 ; then @@ -1872,6 +1904,28 @@ if test "$enable_locking" = yes -a "$with_pam" = yes; then else AC_MSG_RESULT(unknown) fi + +# Check pam_fail_delay + AC_MSG_CHECKING(pam_fail_delay in -lpam) + AC_CACHE_VAL(ac_cv_pam_fail_delay, + [ac_save_LDFLAGS="$LDFLAGS" + LDFLAGS="-lpam" + AC_TRY_LINK([#include ], + [pam_handle_t *pamh = 0; + unsigned int usec = 1; + int status = pam_fail_delay (pamh, usec);], + [ac_pam_fail_delay=yes], + [ac_pam_fail_delay=no]) + ac_cv_pam_fail_delay=$ac_pam_fail_delay, + LDFLAGS=$ac_save_LDFLAGS]) + + if test "$ac_pam_fail_delay" = yes ; then + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_PAM_FAIL_DELAY) + else + AC_MSG_RESULT(no) + fi + fi fi @@ -2219,7 +2273,7 @@ esac have_login_manager=no with_login_manager_req=unspecified -default_login_manager='gdmflexiserver -l' +default_login_manager='gdmflexiserver -ls' AC_ARG_WITH(login-manager, [ --with-login-manager Put a "New Login" button on the unlock dialog that @@ -2241,6 +2295,9 @@ if test -n "$with_login_manager_req" ; then fi case "$with_login_manager_req" in + no) + with_login_manager="" + ;; /*) # absolute path set dummy $with_login_manager_req ; login_manager_tmp=$2 @@ -2430,6 +2487,7 @@ fi # Check for the various Gnome help and URL loading programs. # +WITH_BROWSER=gnome-open if test "$have_gtk" = yes; then AC_CHECK_PROGS(gnome_open_program, gnome-open) AC_CHECK_PROGS(gnome_url_show_program, gnome-url-show) @@ -2654,14 +2712,37 @@ if test "$with_gl" = yes; then # AC_CACHE_CHECK([whether GL is really MesaGL], ac_cv_have_mesa_gl, [ac_cv_have_mesa_gl=no - AC_EGREP_X_HEADER(Mesa|MESA, GL/glx.h, [ac_cv_have_mesa_gl=yes]) - ]) + if test "$ac_macosx" = no; then + # WTF! MacOS 10.5.0 ships the Mesa GL headers! + # It's not really Mesa, is it? + AC_EGREP_X_HEADER(Mesa|MESA, GL/glx.h, [ac_cv_have_mesa_gl=yes]) + fi]) ac_have_mesa_gl=$ac_cv_have_mesa_gl - gl_lib_1="" GL_LIBS="" + if test "$ac_macosx" = yes; then + + # Without these, every link against libGL gets a bunch of useless + # warnings. + # + osx_crud="-bind_at_load -multiply_defined suppress" + AC_MSG_RESULT(adding "$osx_crud" to GL_LIBS) + GL_LIBS="$GL_LIBS $osx_crud" + unset osx_crud + + # New lossage in 10.5.0: without this, we get: + # ld: cycle in dylib re-exports with /usr/X11/lib/libGL.dylib + # + osx_crud="/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib" + osx_crud="-Wl,-dylib_file,${osx_crud}:${osx_crud}" + + AC_MSG_RESULT(adding "$osx_crud" to GL_LIBS) + GL_LIBS="$GL_LIBS $osx_crud" + unset osx_crud + fi + # Some versions of MesaGL are compiled to require -lpthread. # So if the Mesa headers exist, and -lpthread exists, then always @@ -3327,9 +3408,11 @@ case "$with_textfile" in #### Could use some more defaults here... for f in \ - "/usr/X11R6/lib/X11/doc/README" \ - "/usr/share/doc/xserver-common/copyright" \ - "/usr/X11R6/README" \ + "/usr/X11R6/lib/X11/doc/README" \ + "/usr/share/doc/xserver-common/copyright" \ + "/usr/share/doc/xserver-xorg-core/copyright" \ + "/usr/X11R6/README" \ + "/usr/share/doc/debian/debian-manifesto" \ ; do if test -z "$with_textfile"; then AC_MSG_CHECKING([for text file $f]) @@ -3357,6 +3440,45 @@ ac_cv_textfile="$with_textfile" DEFAULT_TEXT_FILE="$ac_cv_textfile" +############################################################################### +# +# Check the browser to see help URL +# +############################################################################### + +have_browser=no +with_browser_req=unspecified + +AC_ARG_WITH(browser, +[ --with-browser=BROWSER Specify the browser to show help URL.], + [with_browser="$withval"; with_browser_req="$withval"], + [with_browser=no ]) +# no HANDLE_X_PATH_ARG for this one + +case "$with_browser" in + no ) + ;; + * ) + WITH_BROWSER=$with_browser + gnome_open_program=$with_browser + AC_MSG_CHECKING([for browser $with_browser]) + with_browser_fullpath=`which $with_browser 2>/dev/null` + case $with_browser_fullpath in + /* ) + AC_MSG_RESULT(yes) + have_browser=yes + ;; + * ) + AC_MSG_RESULT(no) +# Only warning: we don't want to install all packages for the +# dependency of the browser in building stage... + echo "WARNING: browser not found: --with-browser=$with_browser" + ;; + esac + ;; +esac +ac_cv_browser="$with_browser" + ############################################################################### # # Check whether it's ok to install some hacks as setuid (e.g., "sonar") @@ -3470,16 +3592,16 @@ if test "$have_gl" = yes; then GL_EXES='$(GL_EXES)' GL_UTIL_EXES='$(GL_UTIL_EXES)' GL_MEN='$(GL_MEN)' - GL_KLUDGE="${tab} " + GL_KLUDGE=" " else - GL_KLUDGE="-${tab} " + GL_KLUDGE="-" fi if test "$have_gle" = yes; then GLE_EXES='$(GLE_EXES)' - GLE_KLUDGE="${tab} " + GLE_KLUDGE=" " else - GLE_KLUDGE="-${tab} " + GLE_KLUDGE="-" fi if test "$have_jpeg" = yes -a "$have_gdk_pixbuf" = yes; then @@ -3520,12 +3642,7 @@ if test -z "$PO_DATADIR" ; then # Map /build/prefix/usr/X11R6/share/ to /build/prefix/usr/share/ # but of course we need to expand all the nested variables to do that... # - dd=$datadir - eval dd=${dd} - eval dd=${dd} - eval dd=${dd} - eval dd=${dd} - eval dd=${dd} + dd=`eval eval eval eval eval eval eval eval eval eval eval echo $datadir` PO_DATADIR=`echo $dd | sed 's@/X11R6/@/@'` fi @@ -3574,11 +3691,13 @@ AC_SUBST(SETUID_HACKS) AC_SUBST(INSTALL_DIRS) AC_SUBST(NEED_SETUID) AC_SUBST(INSTALL_PAM) +AC_SUBST(HAVE_PAM_FAIL_DELAY) AC_SUBST(NEW_LOGIN_COMMAND) AC_SUBST(NEW_LOGIN_COMMAND_P) AC_SUBST(DEFAULT_IMAGES_P) AC_SUBST(DEFAULT_IMAGE_DIRECTORY) AC_SUBST(DEFAULT_TEXT_FILE) +AC_SUBST(WITH_BROWSER) AC_SUBST(OBJCC) AC_SUBST(EXES_OSX) @@ -3912,8 +4031,9 @@ if test "$have_gl" = yes -a "$ac_have_mesa_gl" = yes ; then pgl="$preferred_mesagl" if test "$ac_mesagl_version" = unknown; then - warnL "Unable to determine the MesaGL version number!" - warn2 "Make sure you are using version $preferred_mesagl or newer." + true + # warnL "Unable to determine the MesaGL version number!" + # warn2 "Make sure you are using version $preferred_mesagl or newer." elif test \! "$ac_mesagl_version" -gt 2006; then warnL "MesaGL version number is $mgv --" @@ -4008,28 +4128,20 @@ if test "$with_shadow_req" = yes -a "$have_shadow" = no ; then warn 'Use of shadow passwords was requested, but they were not found.' fi +if test "$ac_macosx" = yes ; then + if test "$enable_locking" = yes ; then + warn "You have specified --enable-locking on MacOS X." + warn2 "THIS DOES NOT WORK! Don't do this!" + fi +fi + # You are in a twisty maze of namespaces and syntaxes, all alike. # Fuck the skull of Unix. # -eval bindir=${bindir} -eval bindir=${bindir} -eval bindir=${bindir} -eval bindir=${bindir} -eval bindir=${bindir} -eval bindir=${bindir} -eval HACKDIR=${HACKDIR} -eval HACKDIR=${HACKDIR} -eval HACKDIR=${HACKDIR} -eval HACKDIR=${HACKDIR} -eval HACKDIR=${HACKDIR} -eval HACKDIR=${HACKDIR} -eval HACK_CONF_DIR=${HACK_CONF_DIR} -eval HACK_CONF_DIR=${HACK_CONF_DIR} -eval HACK_CONF_DIR=${HACK_CONF_DIR} -eval HACK_CONF_DIR=${HACK_CONF_DIR} -eval HACK_CONF_DIR=${HACK_CONF_DIR} -eval HACK_CONF_DIR=${HACK_CONF_DIR} +bindir=`eval eval eval eval eval eval eval echo $bindir` +HACKDIR=`eval eval eval eval eval eval eval echo $HACKDIR` +HACK_CONF_DIR=`eval eval eval eval eval eval eval echo $HACK_CONF_DIR` # canonicalize slashes. bindir=`echo "${bindir}" | sed 's@/$@@;s@//*@/@g'` @@ -4067,7 +4179,7 @@ if test -z "$RPM_PACKAGE_VERSION" ; then if test \! -z "$rpmv" ; then rpmbdir=`rpm -ql $rpmnames | sed -n 's@^\(.*\)/xscreensaver-demo$@\1@p'` - rpmhdir=`rpm -ql $rpmnames | sed -n 's@^\(.*\)/attraction$@\1@p'` + rpmhdir=`rpm -ql $rpmnames | sed -n 's@^\(.*\)/popsquares$@\1@p'` warning=no warnL "There is already an installed RPM of xscreensaver $rpmv" @@ -4090,6 +4202,33 @@ if test -z "$RPM_PACKAGE_VERSION" ; then fi fi +# Also warn if there's a Debian package installed. +# +debnames="xscreensaver xscreensaver-data xscreensaver-data-extra" +debv='' +for dpkg in $debnames ; do + if test -z "$debv"; then + debv=`dpkg -s $dpkg 2>/dev/null | sed -n 's/^Version: \(.*\)$/\1/p'` + fi +done + +if test \! -z "$debv" ; then + debbdir=`dpkg -L $debnames 2>/dev/null | \ + sed -n 's@^\(.*/bin/\)xscreensaver$@\1@p'` + debhdir=`dpkg -L $debnames 2>/dev/null | \ + sed -n 's@^\(.*/\)popsquares$@\1@p'` + if test -z "$debbdir" ; then debbdir='???'; fi + if test -z "$debhdir" ; then debhdir='???'; fi + + warning=no + warnL "There is already an installed dpkg of xscreensaver" + warn2 "version \"$debv\" on this system." + echo "" + warn2 "The dpkg was installed in $debbdir," + warn2 "with demos in $debhdir." +fi + + if test "${bindir}" = "${HACKDIR}" ; then do_dir_warning=yes fi @@ -4121,7 +4260,7 @@ if test "$do_dir_warning" = no; then fi echo "User programs will be installed in ${bindir}/" echo "Screen savers will be installed in ${HACKDIR}/" - echo "Hack configurations will be installed in ${HACK_CONF_DIR}/" - echo "Saver configuration will be installed in ${APPDEFAULTS}/" + echo "Configuration dialogs will be installed in ${HACK_CONF_DIR}/" + echo "System-wide default settings will be installed in ${APPDEFAULTS}/" echo '' fi