From: Zygo Blaxell Date: Mon, 2 Mar 2009 05:43:26 +0000 (-0500) Subject: http://ftp.ksu.edu.tw/FTP/FreeBSD/distfiles/xscreensaver-4.20.tar.gz X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?p=xscreensaver;a=commitdiff_plain;h=2d04c4f22466851aedb6ed0f2919d148f726b889 ftp.ksu.edu.tw/FTP/FreeBSD/distfiles/xscreensaver-4.20.tar.gz -rw-r--r-- 1 zblaxell zblaxell 4437919 Mar 14 2005 xscreensaver-4.20.tar.gz 304da3cfa2c02aa4cedca85b48005b4163d94452 xscreensaver-4.20.tar.gz --- diff --git a/Makefile.in b/Makefile.in index e085de53..c2153f57 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in --- xscreensaver, Copyright (c) 1999-2004 Jamie Zawinski. +# Makefile.in --- xscreensaver, Copyright (c) 1999-2005 Jamie Zawinski. # the `../configure' script generates `Makefile' from this file. @SET_MAKE@ @@ -7,12 +7,12 @@ VPATH = @srcdir@ SHELL = /bin/sh SUBDIRS = utils driver hacks hacks/glx po -TARFILES = README README.VMS README.debugging INSTALL xscreensaver.lsm \ +TARFILES = README README.VMS README.debugging INSTALL \ configure configure.in Makefile.in config.h.in \ config.h-vms install-sh setup.com config.guess aclocal.m4 \ config.sub makevms.com \ intltool-merge.in intltool-extract.in intltool-update.in \ - xscreensaver.lsm.sh xscreensaver.spec \ + xscreensaver.spec \ TAR = tar @@ -59,8 +59,6 @@ tar:: rm -f configure ; \ $(MAKE) configure ; \ $(MAKE) distdepend ; \ - sh xscreensaver.lsm.sh > xscreensaver.lsm.$$$$ ; \ - mv xscreensaver.lsm.$$$$ xscreensaver.lsm ; \ NAME=`sed -n \ 's/[^0-9]*\([0-9]\.[0-9][0-9]*b\?[0-9]*\).*/xscreensaver-\1/p' \ utils/version.h` ; \ diff --git a/README b/README index 31b0366f..6c5827d7 100644 --- a/README +++ b/README @@ -65,7 +65,7 @@ there's no need to recompile or reinstall anything. Along with the xscreensaver daemon itself, this package also includes numerous graphics hacks for use as screensavers. There is nothing magic about these: they are just programs that draw on the root window. -More than 180 such programs are included. For details, see the +More than 190 such programs are included. For details, see the xscreensaver web page, or the enclosed manual pages. The latest version of xscreensaver is always available on the web at @@ -76,6 +76,15 @@ the XScreenSaver FAQ about that: http://www.jwz.org/xscreensaver/faq.html ============ +Changes since 4.19: * New hacks, `fiberlamp', `boing', `boxfit', and + `carousel'. + * Rewrote `glslideshow' again: should be faster now. + * Sped up loading of images in GL programs. + * `starwars' uses texture-mapped fonts now. + * New `bsod' modes: tru64, hppa, and nvidia. + * Updates to `webcollage', `juggle', `pinion', + `fireworkx', `sonar', `extrusion', `substrate', and + `pong'. Changes since 4.18: * New hacks, `substrate', `intermomentary', `fireworkx', and `pinion'. * New version of `flow'. diff --git a/configure b/configure index b8c26708..61c6116d 100755 --- a/configure +++ b/configure @@ -309,7 +309,7 @@ ac_includes_default="\ # include #endif" -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 build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA SET_MAKE EGREP PERL X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS INTLTOOL_DESKTOP_RULE INTLTOOL_DIRECTORY_RULE INTLTOOL_KEYS_RULE INTLTOOL_OAF_RULE INTLTOOL_PONG_RULE INTLTOOL_SERVER_RULE INTLTOOL_SHEET_RULE INTLTOOL_SOUNDLIST_RULE INTLTOOL_UI_RULE INTLTOOL_XML_RULE INTLTOOL_CAVES_RULE INTLTOOL_EXTRACT INTLTOOL_MERGE INTLTOOL_UPDATE INTLTOOL_PERL GETTEXT_PACKAGE RANLIB ac_ct_RANLIB ALLOCA USE_NLS MSGFMT GMSGFMT XGETTEXT CATALOGS CATOBJEXT DATADIRNAME GMOFILES INSTOBJEXT INTLDEPS INTLLIBS INTLOBJS POFILES POSUB MKINSTALLDIRS pkg_config have_gnome_help fortune_tmp INCLUDES PREFERRED_DEMO_PROGRAM ALL_DEMO_PROGRAMS SAVER_LIBS MOTIF_LIBS GTK_LIBS XML_LIBS JPEG_LIBS HACK_LIBS XPM_LIBS PTY_LIBS GL_LIBS GLE_LIBS XDPMS_LIBS PASSWD_LIBS INSTALL_SETUID SETUID_HACKS INSTALL_DIRS NEED_SETUID INSTALL_PAM OBJCC EXES_OSX SCRIPTS_OSX MEN_OSX PASSWD_SRCS PASSWD_OBJS XMU_SRCS XMU_OBJS XMU_LIBS SAVER_GL_SRCS SAVER_GL_OBJS SAVER_GL_LIBS LOCK_SRCS LOCK_OBJS JPEG_EXES GL_EXES GL_UTIL_EXES GL_MEN GL_KLUDGE GLE_EXES GLE_KLUDGE GNOMEHELP_Y GNOMEHELP_N HACKDIR GNOME_DATADIR GLADE_DATADIR PO_DATADIR GNOME_PANELDIR HACK_CONF_DIR GTK_EXTRA_OBJS APPDEFAULTS DEPEND DEPEND_FLAGS DEPEND_DEFINES LIBOBJS 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 build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA SET_MAKE EGREP PERL X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS INTLTOOL_DESKTOP_RULE INTLTOOL_DIRECTORY_RULE INTLTOOL_KEYS_RULE INTLTOOL_OAF_RULE INTLTOOL_PONG_RULE INTLTOOL_SERVER_RULE INTLTOOL_SHEET_RULE INTLTOOL_SOUNDLIST_RULE INTLTOOL_UI_RULE INTLTOOL_XML_RULE INTLTOOL_CAVES_RULE INTLTOOL_EXTRACT INTLTOOL_MERGE INTLTOOL_UPDATE INTLTOOL_PERL GETTEXT_PACKAGE RANLIB ac_ct_RANLIB ALLOCA USE_NLS MSGFMT GMSGFMT XGETTEXT CATALOGS CATOBJEXT DATADIRNAME GMOFILES INSTOBJEXT INTLDEPS INTLLIBS INTLOBJS POFILES POSUB MKINSTALLDIRS pkg_config gnome_open_program gnome_url_show_program fortune_tmp INCLUDES PREFERRED_DEMO_PROGRAM ALL_DEMO_PROGRAMS SAVER_LIBS MOTIF_LIBS GTK_LIBS XML_LIBS JPEG_LIBS HACK_LIBS XPM_LIBS PTY_LIBS GL_LIBS GLE_LIBS XDPMS_LIBS PASSWD_LIBS INSTALL_SETUID SETUID_HACKS INSTALL_DIRS NEED_SETUID INSTALL_PAM OBJCC EXES_OSX SCRIPTS_OSX MEN_OSX PASSWD_SRCS PASSWD_OBJS XMU_SRCS XMU_OBJS XMU_LIBS SAVER_GL_SRCS SAVER_GL_OBJS SAVER_GL_LIBS LOCK_SRCS LOCK_OBJS JPEG_EXES GL_EXES GL_UTIL_EXES GL_MEN GL_KLUDGE GLE_EXES GLE_KLUDGE GNOME24 GNOME22 NOGNOME HACKDIR GNOME_DATADIR GLADE_DATADIR PO_DATADIR GNOME_PANELDIR HACK_CONF_DIR GTK_EXTRA_OBJS APPDEFAULTS DEPEND DEPEND_FLAGS DEPEND_DEFINES LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -14796,7 +14796,7 @@ if test "$with_gtk" = yes; then pkg_check_version gtk+-2.0 2.0.1 ; ac_gtk_version_string="$vers" pkg_check_version gmodule-2.0 2.0.0 pkg_check_version libxml-2.0 2.4.6 - pkg_check_version libglade-2.0 2.0.0 + pkg_check_version libglade-2.0 1.99.0 pkg_check_version gdk-pixbuf-2.0 2.0.0 pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0 have_gtk="$ok" @@ -14864,20 +14864,20 @@ _ACEOF fi -# Check for the Gnome Help Browser. +# Check for the various Gnome help and URL loading programs. # if test "$have_gtk" = yes; then - for ac_prog in yelp gnome-help-browser + for ac_prog in gnome-open do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_have_gnome_help+set}" = set; then +if test "${ac_cv_prog_gnome_open_program+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test -n "$have_gnome_help"; then - ac_cv_prog_have_gnome_help="$have_gnome_help" # Let the user override the test. + if test -n "$gnome_open_program"; then + ac_cv_prog_gnome_open_program="$gnome_open_program" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH @@ -14886,7 +14886,7 @@ do test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_have_gnome_help="$ac_prog" + ac_cv_prog_gnome_open_program="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi @@ -14895,22 +14895,58 @@ done fi fi -have_gnome_help=$ac_cv_prog_have_gnome_help -if test -n "$have_gnome_help"; then - echo "$as_me:$LINENO: result: $have_gnome_help" >&5 -echo "${ECHO_T}$have_gnome_help" >&6 +gnome_open_program=$ac_cv_prog_gnome_open_program +if test -n "$gnome_open_program"; then + echo "$as_me:$LINENO: result: $gnome_open_program" >&5 +echo "${ECHO_T}$gnome_open_program" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi - test -n "$have_gnome_help" && break + test -n "$gnome_open_program" && break done -test -n "$have_gnome_help" || have_gnome_help="no" - if test "$have_gnome_help" != no; then - have_gnome_help=yes + for ac_prog in gnome-url-show +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_prog_gnome_url_show_program+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$gnome_url_show_program"; then + ac_cv_prog_gnome_url_show_program="$gnome_url_show_program" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_gnome_url_show_program="$ac_prog" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 fi +done +done + +fi +fi +gnome_url_show_program=$ac_cv_prog_gnome_url_show_program +if test -n "$gnome_url_show_program"; then + echo "$as_me:$LINENO: result: $gnome_url_show_program" >&5 +echo "${ECHO_T}$gnome_url_show_program" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi + + test -n "$gnome_url_show_program" && break +done + fi @@ -16215,7 +16251,7 @@ if test "${ac_cv_mesagl_version_string+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat > conftest.$ac_ext < #ifndef MESA_MAJOR_VERSION @@ -19722,12 +19758,18 @@ fi # Another substitution in the XScreenSaver.ad.in file: # -if test "$have_gnome_help" = yes; then - GNOMEHELP_Y='' - GNOMEHELP_N='! ' +if test "$gnome_open_program" != ''; then + GNOME24='' + GNOME22='! ' + NOGNOME='! ' +elif test "$gnome_url_show_program" != ''; then + GNOME24='! ' + GNOME22='' + NOGNOME='! ' else - GNOMEHELP_Y='! ' - GNOMEHELP_N='' + GNOME24='! ' + GNOME22='! ' + NOGNOME='' fi @@ -19864,6 +19906,7 @@ INCLUDES=`echo "$INCLUDES" | sed 's@ -I${prefix}/include@@g;'` + APPDEFAULTS=$ac_x_app_defaults @@ -19874,7 +19917,7 @@ APPDEFAULTS=$ac_x_app_defaults - ac_config_files="$ac_config_files Makefile utils/Makefile driver/Makefile hacks/Makefile hacks/glx/Makefile po/Makefile.in driver/XScreenSaver.ad driver/xscreensaver.kss" + ac_config_files="$ac_config_files Makefile utils/Makefile driver/Makefile hacks/Makefile hacks/glx/Makefile po/Makefile.in driver/XScreenSaver.ad" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure @@ -20425,7 +20468,6 @@ do "hacks/glx/Makefile" ) CONFIG_FILES="$CONFIG_FILES hacks/glx/Makefile" ;; "po/Makefile.in" ) CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "driver/XScreenSaver.ad" ) CONFIG_FILES="$CONFIG_FILES driver/XScreenSaver.ad" ;; - "driver/xscreensaver.kss" ) CONFIG_FILES="$CONFIG_FILES driver/xscreensaver.kss" ;; "default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; "default-2" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-2" ;; "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; @@ -20575,7 +20617,8 @@ s,@POFILES@,$POFILES,;t t s,@POSUB@,$POSUB,;t t s,@MKINSTALLDIRS@,$MKINSTALLDIRS,;t t s,@pkg_config@,$pkg_config,;t t -s,@have_gnome_help@,$have_gnome_help,;t t +s,@gnome_open_program@,$gnome_open_program,;t t +s,@gnome_url_show_program@,$gnome_url_show_program,;t t s,@fortune_tmp@,$fortune_tmp,;t t s,@INCLUDES@,$INCLUDES,;t t s,@PREFERRED_DEMO_PROGRAM@,$PREFERRED_DEMO_PROGRAM,;t t @@ -20618,8 +20661,9 @@ s,@GL_MEN@,$GL_MEN,;t t s,@GL_KLUDGE@,$GL_KLUDGE,;t t s,@GLE_EXES@,$GLE_EXES,;t t s,@GLE_KLUDGE@,$GLE_KLUDGE,;t t -s,@GNOMEHELP_Y@,$GNOMEHELP_Y,;t t -s,@GNOMEHELP_N@,$GNOMEHELP_N,;t t +s,@GNOME24@,$GNOME24,;t t +s,@GNOME22@,$GNOME22,;t t +s,@NOGNOME@,$NOGNOME,;t t s,@HACKDIR@,$HACKDIR,;t t s,@GNOME_DATADIR@,$GNOME_DATADIR,;t t s,@GLADE_DATADIR@,$GLADE_DATADIR,;t t @@ -21375,6 +21419,19 @@ if test "$with_proc_interrupts_req" = yes -a "$have_proc_interrupts" = no; then warn "Checking of /proc/interrupts was requested, but it's bogus." fi +if test "$pkg_config" = false ; then + warnL 'The "pkg-config" program was not found. Without that,' + warn2 "detection of the various GTK libraries won't work." +else + pkgerr=`$pkg_config --list-all 2>&1 >/dev/null` + if test "x$pkgerr" != "x" ; then + warnL 'The "pkg-config" program produces errors. This often causes' + warn2 "detection of the various GTK libraries to malfunction." + warn2 "The errors are:" + echo '' + echo "$pkgerr" | sed 's/^/ > /g' + fi +fi if test "$gtk_halfassed" != no ; then warnL "GTK version $gtk_halfassed was found, but at least one supporting" @@ -21727,12 +21784,11 @@ if test \! -z "$rpmv" ; then if test "$rpmbdir" = "$rpmhdir" ; then warn2 "The RPM version was installed in $rpmbdir/." + do_dir_warning=yes else warn2 "The RPM version was installed in $rpmbdir/," warn2 "with demos in $rpmhdir/." fi - - do_dir_warning=yes fi @@ -21748,7 +21804,7 @@ if test "$do_dir_warning" = yes; then echo ' "xscreensaver-demo", and "xscreensaver-command" executables' echo " will be installed in ${bindir}/." echo "" - echo " The various graphics demos (180+ different executables) will" + echo " The various graphics demos (190+ different executables) will" echo " be installed in ${HACKDIR}/." echo "" echo " If you would prefer the demos to be installed elsewhere," diff --git a/configure.in b/configure.in index 7559754d..7e3d2e5a 100644 --- a/configure.in +++ b/configure.in @@ -1,4 +1,4 @@ -# configure.in --- xscreensaver, Copyright (c) 1997-2004 Jamie Zawinski. +# configure.in --- xscreensaver, Copyright (c) 1997-2005 Jamie Zawinski. # AC_PREREQ(2.52) @@ -2104,7 +2104,7 @@ if test "$with_gtk" = yes; then pkg_check_version gtk+-2.0 2.0.1 ; ac_gtk_version_string="$vers" pkg_check_version gmodule-2.0 2.0.0 pkg_check_version libxml-2.0 2.4.6 - pkg_check_version libglade-2.0 2.0.0 + pkg_check_version libglade-2.0 1.99.0 pkg_check_version gdk-pixbuf-2.0 2.0.0 pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0 have_gtk="$ok" @@ -2149,13 +2149,11 @@ if test "$with_gtk" = yes; then fi -# Check for the Gnome Help Browser. +# Check for the various Gnome help and URL loading programs. # if test "$have_gtk" = yes; then - AC_CHECK_PROGS(have_gnome_help, yelp gnome-help-browser, no) - if test "$have_gnome_help" != no; then - have_gnome_help=yes - fi + AC_CHECK_PROGS(gnome_open_program, gnome-open) + AC_CHECK_PROGS(gnome_url_show_program, gnome-url-show) fi @@ -3162,12 +3160,18 @@ fi # Another substitution in the XScreenSaver.ad.in file: # -if test "$have_gnome_help" = yes; then - GNOMEHELP_Y='' - GNOMEHELP_N='! ' +if test "$gnome_open_program" != ''; then + GNOME24='' + GNOME22='! ' + NOGNOME='! ' +elif test "$gnome_url_show_program" != ''; then + GNOME24='! ' + GNOME22='' + NOGNOME='! ' else - GNOMEHELP_Y='! ' - GNOMEHELP_N='' + GNOME24='! ' + GNOME22='! ' + NOGNOME='' fi @@ -3294,8 +3298,9 @@ AC_SUBST(GL_MEN) AC_SUBST(GL_KLUDGE) AC_SUBST(GLE_EXES) AC_SUBST(GLE_KLUDGE) -AC_SUBST(GNOMEHELP_Y) -AC_SUBST(GNOMEHELP_N) +AC_SUBST(GNOME24) +AC_SUBST(GNOME22) +AC_SUBST(NOGNOME) AC_SUBST(HACKDIR) AC_SUBST(GNOME_DATADIR) AC_SUBST(GLADE_DATADIR) @@ -3318,8 +3323,7 @@ AC_OUTPUT(Makefile hacks/Makefile hacks/glx/Makefile po/Makefile.in - driver/XScreenSaver.ad - driver/xscreensaver.kss) + driver/XScreenSaver.ad) ############################################################################### # @@ -3421,6 +3425,19 @@ if test "$with_proc_interrupts_req" = yes -a "$have_proc_interrupts" = no; then warn "Checking of /proc/interrupts was requested, but it's bogus." fi +if test "$pkg_config" = false ; then + warnL 'The "pkg-config" program was not found. Without that,' + warn2 "detection of the various GTK libraries won't work." +else + pkgerr=`$pkg_config --list-all 2>&1 >/dev/null` + if test "x$pkgerr" != "x" ; then + warnL 'The "pkg-config" program produces errors. This often causes' + warn2 "detection of the various GTK libraries to malfunction." + warn2 "The errors are:" + echo '' + echo "$pkgerr" | sed 's/^/ > /g' + fi +fi if test "$gtk_halfassed" != no ; then warnL "GTK version $gtk_halfassed was found, but at least one supporting" @@ -3768,12 +3785,11 @@ if test \! -z "$rpmv" ; then if test "$rpmbdir" = "$rpmhdir" ; then warn2 "The RPM version was installed in $rpmbdir/." + do_dir_warning=yes else warn2 "The RPM version was installed in $rpmbdir/," warn2 "with demos in $rpmhdir/." fi - - do_dir_warning=yes fi @@ -3789,7 +3805,7 @@ if test "$do_dir_warning" = yes; then echo ' "xscreensaver-demo", and "xscreensaver-command" executables' echo " will be installed in ${bindir}/." echo "" - echo " The various graphics demos (180+ different executables) will" + echo " The various graphics demos (190+ different executables) will" echo " be installed in ${HACKDIR}/." echo "" echo " If you would prefer the demos to be installed elsewhere," diff --git a/driver/Makefile.in b/driver/Makefile.in index 28304710..f1d0ca54 100644 --- a/driver/Makefile.in +++ b/driver/Makefile.in @@ -1,4 +1,4 @@ -# driver/Makefile.in --- xscreensaver, Copyright (c) 1997-2004 Jamie Zawinski. +# driver/Makefile.in --- xscreensaver, Copyright (c) 1997-2005 Jamie Zawinski. # the `../configure' script generates `driver/Makefile' from this file. @SET_MAKE@ @@ -238,7 +238,6 @@ EXTRAS = README Makefile.in XScreenSaver.ad.in xscreensaver.pam \ xscreensaver-demo.glade2p \ screensaver-properties.desktop.in \ screensaver-properties-capplet \ - xscreensaver.kss.in \ .gdbinit VMSFILES = compile_axp.com compile_decc.com link_axp.com link_decc.com \ vms-getpwnam.c vms-pwd.h vms-hpwd.c vms-validate.c \ @@ -257,9 +256,9 @@ all: $(EXES) $(EXES2) tests: $(TEST_EXES) install: install-program install-ad install-scripts \ - install-gnome install-kde install-man @INSTALL_PAM@ + install-gnome install-man @INSTALL_PAM@ uninstall: uninstall-program uninstall-ad \ - uninstall-gnome uninstall-kde uninstall-man + uninstall-gnome uninstall-man install-strip: $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' \ @@ -678,42 +677,6 @@ uninstall-gnome:: done ;\ fi -# xscreensaver.kss -install-kde: - @src="xscreensaver.kss" ; \ - if [ "$$KDEDIR" != "" ]; then \ - dir="$(install_prefix)$$KDEDIR/bin" ; \ - dest="$$dir/$$src" ; \ - echo $(INSTALL_SCRIPT) $$src $$dest ; \ - if $(INSTALL_SCRIPT) $$src $$dest ; then \ - true ; \ - else \ - e=echo ; \ - $$e "" ;\ - $$e " ####################################################################";\ - $$e " Warning: unable to install $$dest" ;\ - if [ ! -d $(install_prefix)$$KDEDIR ]; then \ - $$e " $(install_prefix)$$KDEDIR (\$$KDEDIR) does not exist." ;\ - elif [ ! -d $(install_prefix)$$KDEDIR/bin ]; then \ - $$e " $(install_prefix)$$KDEDIR/bin (\$$KDEDIR/bin) does not exist.";\ - elif [ -f $$dest ]; then \ - $$e " That file exists, and is unwritable." ;\ - else \ - $$e " The directory is unwritable." ;\ - fi ;\ - $$e " ####################################################################";\ - $$e "" ;\ - exit 1 ; \ - fi ; \ - fi - -uninstall-kde: - @if [ "$$KDEDIR" != "" ]; then \ - dest="$(install_prefix)$$KDEDIR/bin/xscreensaver.kss" ; \ - echo rm -f $$dest ; \ - rm -f $$dest ; \ - fi - clean: -rm -f *.o a.out core $(EXES) $(EXES2) $(TEST_EXES) XScreenSaver_ad.h diff --git a/driver/XScreenSaver.ad.in b/driver/XScreenSaver.ad.in index 5fb206bc..25f99c32 100644 --- a/driver/XScreenSaver.ad.in +++ b/driver/XScreenSaver.ad.in @@ -4,8 +4,8 @@ ! a screen saver and locker for the X window system ! by Jamie Zawinski ! -! version 4.19 -! 16-Dec-2004 +! version 4.20 +! 23-Feb-2005 ! ! See "man xscreensaver" for more info. The latest version is always ! available at http://www.jwz.org/xscreensaver/ @@ -77,19 +77,37 @@ GetViewPortIsFullOfLies: False ! This is what the "Prefs" button on the splash screen runs (/bin/sh syntax.) *prefsCommand: xscreensaver-demo -prefs -! This is the URL that the "Help" button on the splash screen loads. +! This is the URL loaded by the "Help" button on the splash screen, +! and by the "Documentation" menu item in xscreensaver-demo. *helpURL: http://www.jwz.org/xscreensaver/man.html -! This is how the "Help" button loads URLs (/bin/sh syntax.) -! The "helpURL" will be substituted for up to two occurrences of "%s". -@GNOMEHELP_N@*loadURL: mozilla '%s' || netscape '%s' -@GNOMEHELP_Y@*loadURL: gnome-url-show '%s' || gnome-moz-remote --newwin '%s' - -! This is what the "Manual" button in xscreensaver-demo runs (/bin/sh syntax.) -@GNOMEHELP_N@*manualCommand: xterm -sb -fg black -bg gray75 -T '%s manual' \ -@GNOMEHELP_N@ -e /bin/sh -c 'man "%s" ; read foo' -! For GNOME systems: -@GNOMEHELP_Y@*manualCommand: yelp 'man:%s' || gnome-help-browser 'man:%s' +! loadURL -- how the "Help" buttons load the helpURL (/bin/sh syntax.) +! manualCommand -- how the "Documentation" buttons display man pages. +! +! And there are so very many options to choose from! +! +! Gnome 2.4, 2.6: (yelp can't display man pages, as of 2.6.3) +! +@GNOME24@*loadURL: gnome-open '%s' +@GNOME24@*manualCommand: gnome-terminal --title '%s manual' \ +@GNOME24@ --command '/bin/sh -c "man %s; read foo"' +! +! Gnome 2.2: +! +@GNOME22@*loadURL: gnome-url-show '%s' +@GNOME22@*manualCommand: gnome-terminal --title '%s manual' \ +@GNOME22@ --command '/bin/sh -c "man %s; read foo"' +! +! Gnome 1.4: +! +! *loadURL: gnome-moz-remote --newwin '%s' +! *manualCommand: gnome-help-browser 'man:%s' +! +! non-Gnome systems: +! +@NOGNOME@*loadURL: firefox '%s' || mozilla '%s' || netscape '%s' +@NOGNOME@*manualCommand: xterm -sb -fg black -bg gray75 -T '%s manual' \ +@NOGNOME@ -e /bin/sh -c 'man "%s" ; read foo' ! The format used for printing the date and time in the password dialog box @@ -282,8 +300,11 @@ GetViewPortIsFullOfLies: False anemotaxis -root \n\ memscroller -root \n\ substrate -root \n\ + "Substrate (circles)" substrate -root -circle-percent 33 \n\ intermomentary -root \n\ fireworkx -root \n\ + fiberlamp -root \n\ + boxfit -root \n\ - default-n: webcollage -root \n\ - default-n: "WebCollage (whacked)" \ webcollage -root -filter \ @@ -360,8 +381,9 @@ GetViewPortIsFullOfLies: False - GL: antinspect -root \n\ @GL_KLUDGE@ GL: providence -root \n\ @GL_KLUDGE@ GL: "Pinion (large gears)" pinion -root \n\ -@GL_KLUDGE@ GL: "Pinion (small gears)" pinion -root -size 0.2 \n\ -@GL_KLUDGE@ GL: pinion -root \n\ +@GL_KLUDGE@ GL: "Pinion (small gears)" pinion -root -size 0.2 -scroll 0.3 \n\ +@GL_KLUDGE@ GL: boing -root -lighting -smooth \n\ +- GL: carousel -root \n \ - xdaliclock -root -builtin3 -cycle \n\ - default-n: xearth -nofork -nostars -ncolors 50 \ @@ -432,7 +454,7 @@ XScreenSaver.bourneShell: /bin/sh *passwd.thermometer.width: 8 *splash.heading.label: XScreenSaver %s -*splash.body.label: Copyright © 1991-2004 by +*splash.body.label: Copyright © 1991-2005 by *splash.body2.label: Jamie Zawinski *splash.demo.label: Settings *splash.help.label: Help @@ -625,6 +647,7 @@ XScreenSaver*doc.fontList: *-helvetica-medium-r-*-*-*-100-*-*-*-iso8859-1 *hacks.blinkbox.name: BlinkBox *hacks.fuzzyflakes.name: FuzzyFlakes *hacks.memscroller.name: MemScroller +*hacks.boxfit.name: BoxFit ! obsolete, but still used by xscreensaver-demo-Xm. *hacks.documentation.isInstalled: True diff --git a/driver/XScreenSaver_ad.h b/driver/XScreenSaver_ad.h index 9a42c77a..c070ae6b 100644 --- a/driver/XScreenSaver_ad.h +++ b/driver/XScreenSaver_ad.h @@ -40,8 +40,9 @@ "*demoCommand: xscreensaver-demo", "*prefsCommand: xscreensaver-demo -prefs", "*helpURL: http://www.jwz.org/xscreensaver/man.html", -"*loadURL: gnome-url-show '%s' || gnome-moz-remote --newwin '%s'", -"*manualCommand: yelp 'man:%s' || gnome-help-browser 'man:%s'", +"*loadURL: gnome-open '%s'", +"*manualCommand: gnome-terminal --title '%s manual' \ + --command '/bin/sh -c \"man %s; read foo\"'", "*dateFormat: %d-%b-%y (%a); %I:%M %p", "*installColormap: True", "*programs: \ @@ -207,8 +208,11 @@ anemotaxis -root \\n\ memscroller -root \\n\ substrate -root \\n\ + \"Substrate (circles)\" substrate -root -circle-percent 33 \\n\ intermomentary -root \\n\ fireworkx -root \\n\ + fiberlamp -root \\n\ + boxfit -root \\n\ - default-n: webcollage -root \\n\ - default-n: \"WebCollage (whacked)\" \ webcollage -root -filter \ @@ -234,7 +238,7 @@ - GL: \"Pulsar (textures)\" \ pulsar -root -texture -mipmap \ -texture_quality -light -fog \\n\ -- GL: extrusion -root \\n\ + GL: extrusion -root \\n\ GL: sierpinski3d -root \\n\ GL: menger -root \\n\ GL: \"GFlux\" gflux -root \\n\ @@ -285,9 +289,10 @@ - GL: antinspect -root \\n\ GL: providence -root \\n\ GL: \"Pinion (large gears)\" pinion -root \\n\ - GL: \"Pinion (small gears)\" pinion -root -size 0.2 \\n\ - GL: pinion -root \\n\ - \ + GL: \"Pinion (small gears)\" pinion -root -size 0.2 -scroll 0.3 \\n\ + GL: boing -root -lighting -smooth \\n\ +- GL: carousel -root \\n", +" \ - xdaliclock -root -builtin3 -cycle \\n\ - default-n: xearth -nofork -nostars -ncolors 50 \ -night 3 -wait 0 -timewarp 400.0 -pos \ @@ -337,7 +342,7 @@ "*passwd.passwdFont: *-courier-medium-r-*-*-*-140-*-*-*-iso8859-1", "*passwd.thermometer.width: 8", "*splash.heading.label: XScreenSaver %s", -"*splash.body.label: Copyright © 1991-2004 by", +"*splash.body.label: Copyright © 1991-2005 by", "*splash.body2.label: Jamie Zawinski ", "*splash.demo.label: Settings", "*splash.help.label: Help", @@ -502,4 +507,5 @@ "*hacks.blinkbox.name: BlinkBox", "*hacks.fuzzyflakes.name: FuzzyFlakes", "*hacks.memscroller.name: MemScroller", +"*hacks.boxfit.name: BoxFit", "*hacks.documentation.isInstalled: True", diff --git a/driver/demo-Gtk.c b/driver/demo-Gtk.c index c9cfbce2..f9c066c3 100644 --- a/driver/demo-Gtk.c +++ b/driver/demo-Gtk.c @@ -1,5 +1,5 @@ /* demo-Gtk.c --- implements the interactive demo-mode and options dialogs. - * xscreensaver, Copyright (c) 1993-2004 Jamie Zawinski + * xscreensaver, Copyright (c) 1993-2005 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -665,9 +665,9 @@ about_menu_cb (GtkMenuItem *menuitem, gpointer user_data) look as good in the plain-old default Latin1 "C" locale.) */ #ifdef HAVE_GTK2 - sprintf(copy, ("Copyright \xC2\xA9 1991-2004 %s"), s); + sprintf(copy, ("Copyright \xC2\xA9 1991-2005 %s"), s); #else /* !HAVE_GTK2 */ - sprintf(copy, ("Copyright \251 1991-2004 %s"), s); + sprintf(copy, ("Copyright \251 1991-2005 %s"), s); #endif /* !HAVE_GTK2 */ sprintf (msg, "%s\n\n%s", copy, desc); @@ -789,10 +789,11 @@ doc_menu_cb (GtkMenuItem *menuitem, gpointer user_data) } help_command = (char *) malloc (strlen (p->load_url_command) + - (strlen (p->help_url) * 2) + 20); + (strlen (p->help_url) * 4) + 20); strcpy (help_command, "( "); sprintf (help_command + strlen(help_command), - p->load_url_command, p->help_url, p->help_url); + p->load_url_command, + p->help_url, p->help_url, p->help_url, p->help_url); strcat (help_command, " ) &"); system (help_command); free (help_command); @@ -984,7 +985,7 @@ manual_cb (GtkButton *button, gpointer user_data) cmd = get_string_resource ("manualCommand", "ManualCommand"); if (cmd) { - char *cmd2 = (char *) malloc (strlen (cmd) + strlen (name2) + 100); + char *cmd2 = (char *) malloc (strlen (cmd) + (strlen (name2) * 4) + 100); strcpy (cmd2, "( "); sprintf (cmd2 + strlen (cmd2), cmd, @@ -2442,6 +2443,7 @@ populate_prefs_page (state *s) { Bool found_any_writable_cells = False; + Bool fading_possible = False; Bool dpms_supported = False; Display *dpy = GDK_DISPLAY(); @@ -2457,8 +2459,9 @@ populate_prefs_page (state *s) } } + fading_possible = found_any_writable_cells; #ifdef HAVE_XF86VMODE_GAMMA - found_any_writable_cells = True; /* if we can gamma fade, go for it */ + fading_possible = True; #endif #ifdef HAVE_DPMS_EXTENSION @@ -2495,14 +2498,14 @@ populate_prefs_page (state *s) /* Colormaps */ - SENSITIZE ("cmap_frame", found_any_writable_cells); + SENSITIZE ("cmap_frame", found_any_writable_cells || fading_possible); SENSITIZE ("install_button", found_any_writable_cells); - SENSITIZE ("fade_button", found_any_writable_cells); - SENSITIZE ("unfade_button", found_any_writable_cells); + SENSITIZE ("fade_button", fading_possible); + SENSITIZE ("unfade_button", fading_possible); - SENSITIZE ("fade_label", (found_any_writable_cells && + SENSITIZE ("fade_label", (fading_possible && (p->fade_p || p->unfade_p))); - SENSITIZE ("fade_spinbutton", (found_any_writable_cells && + SENSITIZE ("fade_spinbutton", (fading_possible && (p->fade_p || p->unfade_p))); # undef SENSITIZE diff --git a/driver/demo-Xm.c b/driver/demo-Xm.c index c0f72e3a..b5eebb4e 100644 --- a/driver/demo-Xm.c +++ b/driver/demo-Xm.c @@ -385,10 +385,11 @@ doc_menu_cb (Widget button, XtPointer client_data, XtPointer ignored) } help_command = (char *) malloc (strlen (p->load_url_command) + - (strlen (p->help_url) * 2) + 20); + (strlen (p->help_url) * 4) + 20); strcpy (help_command, "( "); sprintf (help_command + strlen(help_command), - p->load_url_command, p->help_url, p->help_url); + p->load_url_command, + p->help_url, p->help_url, p->help_url, p->help_url); strcat (help_command, " ) &"); system (help_command); free (help_command); @@ -674,7 +675,7 @@ manual_cb (Widget button, XtPointer client_data, XtPointer ignored) cmd = get_string_resource ("manualCommand", "ManualCommand"); if (cmd) { - char *cmd2 = (char *) malloc (strlen (cmd) + strlen (name2) + 100); + char *cmd2 = (char *) malloc (strlen (cmd) + (strlen (name2) * 4) + 100); strcpy (cmd2, "( "); sprintf (cmd2 + strlen (cmd2), cmd, diff --git a/driver/splash.c b/driver/splash.c index debeaff4..59816a32 100644 --- a/driver/splash.c +++ b/driver/splash.c @@ -1,4 +1,4 @@ -/* xscreensaver, Copyright (c) 1991-2003 Jamie Zawinski +/* xscreensaver, Copyright (c) 1991-2005 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -854,8 +854,9 @@ do_help (saver_info *si) } help_command = (char *) malloc (strlen (p->load_url_command) + - (strlen (p->help_url) * 2) + 10); - sprintf (help_command, p->load_url_command, p->help_url, p->help_url); + (strlen (p->help_url) * 4) + 10); + sprintf (help_command, p->load_url_command, + p->help_url, p->help_url, p->help_url, p->help_url); fork_and_exec (si, help_command, "URL-loading"); free (help_command); } diff --git a/driver/test-apm.c b/driver/test-apm.c index 108905f0..6b87c7e7 100644 --- a/driver/test-apm.c +++ b/driver/test-apm.c @@ -20,6 +20,7 @@ #endif #include +#include #include #include diff --git a/driver/test-randr.c b/driver/test-randr.c index 5ba24b4a..da86e04d 100644 --- a/driver/test-randr.c +++ b/driver/test-randr.c @@ -1,5 +1,5 @@ /* test-randr.c --- playing with the Resize And Rotate extension. - * xscreensaver, Copyright (c) 2004 Jamie Zawinski + * xscreensaver, Copyright (c) 2004, 2005 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -134,6 +134,9 @@ main (int argc, char **argv) XRRConfigCurrentConfiguration (rrc, ¤t_rotation); /* Times */ +# if 0 /* #### This is wrong -- I don't understand what these two + timestamp numbers represent, or how they correlate + to the wall clock or to each other. */ { Time server_time, config_time; server_time = XRRConfigTimes (rrc, &config_time); @@ -144,6 +147,7 @@ main (int argc, char **argv) fprintf (stderr, "%s: config changed %lu seconds ago\n", blurb(), (unsigned long) (server_time - config_time)); } +# endif /* Rotations */ { diff --git a/driver/xscreensaver-command.c b/driver/xscreensaver-command.c index c80eb29d..fe08d2ea 100644 --- a/driver/xscreensaver-command.c +++ b/driver/xscreensaver-command.c @@ -57,7 +57,7 @@ static char *usage = "\n\ usage: %s -