ftp://ftp.linux.ncsu.edu/mirror/ftp.redhat.com/pub/redhat/linux/enterprise/4/en/os...
[xscreensaver] / driver / Makefile.in
index f7012a66f224fbe4e19fb89cd38abffea4aba6fc..2830471053e7c9ffa7692d9def6bf4c68f6bbc3e 100644 (file)
@@ -1,9 +1,9 @@
-# driver/Makefile.in --- xscreensaver, Copyright (c) 1997-1999 Jamie Zawinski.
+# driver/Makefile.in --- xscreensaver, Copyright (c) 1997-2004 Jamie Zawinski.
 # the `../configure' script generates `driver/Makefile' from this file.
 
 @SET_MAKE@
 .SUFFIXES:
-.SUFFIXES: .c .o
+.SUFFIXES: .c .m .o
 
 srcdir         = @srcdir@
 VPATH          = @srcdir@
@@ -14,24 +14,29 @@ install_prefix      =
 prefix         = @prefix@
 exec_prefix    = @exec_prefix@
 bindir         = @bindir@
+#datadir       = @datadir@
+datadir                = $(GNOME_DATADIR)
+localedir      = $(datadir)/locale
 mandir         = @mandir@
-man1dir                = $(mandir)/man1
 mansuffix      = 1
-datadir                = @datadir@
-localedir      = $(datadir)/locale
+manNdir                = $(mandir)/man$(mansuffix)
 
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
 
 GNOME_DATADIR  = @GNOME_DATADIR@
-GNOME_CCDIR    = $(GNOME_DATADIR)/control-center/Desktop
+GNOME_CCDIR_1  = $(GNOME_DATADIR)/control-center/Desktop
+GNOME_CCDIR_2  = $(GNOME_DATADIR)/control-center/capplets
+GNOME_CCDIR_3  = $(GNOME_DATADIR)/control-center-2.0/capplets
 GNOME_PANELDIR1 = $(GNOME_DATADIR)/gnome/apps/Settings/Desktop
 GNOME_PANELDIR2        = $(GNOME_DATADIR)/applications
 GNOME_PANELDIR = @GNOME_PANELDIR@
 GLADE_DATADIR  = @GLADE_DATADIR@
+GNOME_ICONDIR  = $(GNOME_DATADIR)/pixmaps
 GNOME_BINDIR   = $(bindir)
 HACK_CONF_DIR  = @HACK_CONF_DIR@
 
 CC             = @CC@
+OBJCC          = @OBJCC@
 CFLAGS         = @CFLAGS@
 LDFLAGS                = @LDFLAGS@
 DEFS           = @DEFS@
@@ -42,6 +47,7 @@ CONF_DEFS     = -DHACK_CONFIGURATION_PATH='"$(HACK_CONF_DIR)"'
 
 LIBS           = @LIBS@
 INTL_LIBS      = @INTLLIBS@
+JPEG_LIBS      = @JPEG_LIBS@
 PERL           = @PERL@
 
 DEPEND         = @DEPEND@
@@ -105,15 +111,20 @@ KERBEROS_OBJS     = passwd-kerberos.o
 PAM_SRCS       = passwd-pam.c
 PAM_OBJS       = passwd-pam.o
 
+PWHELPER_SRCS  = passwd-helper.c
+PWHELPER_OBJS  = passwd-helper.o
+
 LOCK_SRCS_1    = lock.c passwd.c
 LOCK_OBJS_1    = lock.o passwd.o
 NOLOCK_SRCS_1  = lock.c
 NOLOCK_OBJS_1  = lock.o
 
-TEST_SRCS      = test-passwd.c test-uid.c test-xdpms.c test-grab.c \
-                 test-apm.c test-fade.c xdpyinfo.c
-TEST_EXES      = test-passwd   test-uid   test-xdpms   test-grab \
-                 test-apm   test-fade   xdpyinfo
+TEST_SRCS      = test-passwd.c test-uid.c  test-xdpms.c    test-grab.c \
+                 test-apm.c    test-fade.c test-xinerama.c test-vp.c   \
+                 test-randr.c  xdpyinfo.c
+TEST_EXES      = test-passwd   test-uid    test-xdpms      test-grab   \
+                 test-apm      test-fade   test-xinerama   test-vp     \
+                 test-randr    xdpyinfo
 
 MOTIF_LIBS     = @MOTIF_LIBS@ @XPM_LIBS@ $(XMU_LIBS)
 GTK_LIBS       = @GTK_LIBS@ $(XMU_LIBS)
@@ -137,7 +148,7 @@ GL_LIBS             = @SAVER_GL_LIBS@
 
 ICON_SRC        = $(UTILS_SRC)/images
 LOGO           = $(ICON_SRC)/logo-50.xpm
-GTK_ICONS      = $(ICON_SRC)/screensaver-*.xpm
+GTK_ICONS      = $(ICON_SRC)/screensaver-*.png
 
 DEMO_UTIL_SRCS = $(UTILS_SRC)/resources.c $(UTILS_SRC)/usleep.c \
                  $(UTILS_SRC)/visual.c
@@ -187,6 +198,10 @@ DEMO_OBJS_1        = prefs.o dpms.o $(XMU_OBJS)
 DEMO_SRCS      = prefs.c dpms.c remote.c exec.c $(DEMO_UTIL_SRCS)
 DEMO_OBJS      = prefs.o dpms.o remote.o exec.o $(DEMO_UTIL_OBJS)
 
+PDF2JPEG_SRCS  = pdf2jpeg.m
+PDF2JPEG_OBJS  = pdf2jpeg.o
+PDF2JPEG_LIBS  = -framework Cocoa
+
 SAVER_LIBS     = $(LIBS) $(X_LIBS) $(XMU_LIBS) @SAVER_LIBS@ \
                  $(XDPMS_LIBS) $(GL_LIBS) $(X_PRE_LIBS) \
                  -lXt -lX11 -lXext $(X_EXTRA_LIBS) \
@@ -195,36 +210,46 @@ SAVER_LIBS        = $(LIBS) $(X_LIBS) $(XMU_LIBS) @SAVER_LIBS@ \
 CMD_LIBS       = $(LIBS) $(X_LIBS) \
                  $(X_PRE_LIBS) -lX11 -lXext $(X_EXTRA_LIBS)
 
-GETIMG_LIBS    = $(LIBS) $(X_LIBS) $(XPM_LIBS) \
+GETIMG_LIBS    = $(LIBS) $(X_LIBS) $(XPM_LIBS) $(JPEG_LIBS) \
                  $(X_PRE_LIBS) -lXt -lX11 $(XMU_LIBS) -lXext $(X_EXTRA_LIBS)
 
 EXES           = xscreensaver xscreensaver-command xscreensaver-demo \
-                 xscreensaver-getimage
+                 xscreensaver-getimage @EXES_OSX@
 EXES2          = @ALL_DEMO_PROGRAMS@
-SCRIPTS                = xscreensaver-getimage-file xscreensaver-getimage-video
+EXES_OSX       = pdf2jpeg
+
+SCRIPTS_1      = xscreensaver-getimage-file xscreensaver-getimage-video
+SCRIPTS_OSX    = xscreensaver-getimage-desktop
+SCRIPTS                = $(SCRIPTS_1) @SCRIPTS_OSX@
 
 HDRS           = XScreenSaver_ad.h xscreensaver.h prefs.h remote.h \
                  demo-Gtk-widgets.h demo-Gtk-stubs.h demo-Gtk-support.h \
                  demo-Gtk-conf.h
-MEN            = xscreensaver.man xscreensaver-demo.man \
+MEN_1          = xscreensaver.man xscreensaver-demo.man \
                  xscreensaver-command.man \
                  xscreensaver-getimage.man \
                  xscreensaver-getimage-file.man \
                  xscreensaver-getimage-video.man
+MEN_OSX                = xscreensaver-getimage-desktop.man pdf2jpeg.man
+MEN            = $(MEN_1) @MEN_OSX@
+
 EXTRAS         = README Makefile.in XScreenSaver.ad.in xscreensaver.pam \
-                 xscreensaver.kss xscreensaver-demo.glade xscreensaver-demo.glade2 \
+                 xscreensaver-demo.glade xscreensaver-demo.glade2 \
+                 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 \
                  vms_axp.opt vms_axp_12.opt vms_decc.opt vms_decc_12.opt
 
 TARFILES       = $(EXTRAS) $(VMSFILES) $(SAVER_SRCS_1) \
-                 $(MOTIF_SRCS) $(GTK_SRCS) $(PWENT_SRCS) \
+                 $(MOTIF_SRCS) $(GTK_SRCS) $(PWENT_SRCS) $(PWHELPER_SRCS) \
                  $(KERBEROS_SRCS) $(PAM_SRCS) $(LOCK_SRCS_1) $(DEMO_SRCS_1) \
-                 $(CMD_SRCS) $(GETIMG_SRCS_1) $(HDRS) $(SCRIPTS) \
-                 $(TEST_SRCS) $(MEN)
+                 $(CMD_SRCS) $(GETIMG_SRCS_1) $(PDF2JPEG_SRCS) $(HDRS) \
+                 $(SCRIPTS_1) $(SCRIPTS_OSX) $(MEN_1) $(MEN_OSX) \
+                 $(TEST_SRCS)
 
 
 default: $(EXES)
@@ -267,18 +292,11 @@ install-program: $(EXES)
        fi ;                                                                  \
        echo $$inst xscreensaver $(install_prefix)$(bindir)/xscreensaver ;    \
        $$inst xscreensaver $(install_prefix)$(bindir)/xscreensaver
-       @echo $(INSTALL_PROGRAM) xscreensaver-command \
-         $(install_prefix)$(bindir)/xscreensaver-command ; \
-       $(INSTALL_PROGRAM) xscreensaver-command \
-         $(install_prefix)$(bindir)/xscreensaver-command
-       @echo $(INSTALL_PROGRAM) xscreensaver-demo \
-         $(install_prefix)$(bindir)/xscreensaver-demo ; \
-       $(INSTALL_PROGRAM) xscreensaver-demo \
-         $(install_prefix)$(bindir)/xscreensaver-demo
-       @echo $(INSTALL_PROGRAM) xscreensaver-getimage \
-         $(install_prefix)$(bindir)/xscreensaver-getimage ; \
-       $(INSTALL_PROGRAM) xscreensaver-getimage \
-         $(install_prefix)$(bindir)/xscreensaver-getimage
+       @for exe in xscreensaver-command xscreensaver-demo                 \
+                   xscreensaver-getimage @EXES_OSX@ ; do                  \
+         echo $(INSTALL_PROGRAM) $$exe $(install_prefix)$(bindir)/$$exe ; \
+              $(INSTALL_PROGRAM) $$exe $(install_prefix)$(bindir)/$$exe ; \
+        done
 
 install-ad: XScreenSaver.ad
        @if [ ! -d $(install_prefix)$(AD_DIR) ]; then                         \
@@ -331,12 +349,13 @@ munge-scripts: $(SCRIPTS)
        perl="${PERL}" ;                                                \
        rm -f $$tmp ;                                                   \
        for program in $(SCRIPTS); do                                   \
-         echo "adjusting location of perl in $$program..." ;           \
          sed "s@^\(#!\)\(/[^ ]*/perl[^ ]*\)\(.*\)\$$@\1$$perl\3@"      \
              < $(srcdir)/$$program > $$tmp ;                           \
          if cmp -s $(srcdir)/$$program $$tmp ; then                    \
+           echo "$$program unchanged" ;                                \
            true ;                                                      \
          else                                                          \
+           echo "$$program: setting interpreter to $$perl" ;           \
            cat $$tmp > ./$$program ;                                   \
          fi ;                                                          \
        done ;                                                          \
@@ -344,15 +363,15 @@ munge-scripts: $(SCRIPTS)
 
 install-man: $(MEN)
        @men="$(MEN)" ;                                                 \
-       if [ ! -d $(install_prefix)$(man1dir) ]; then                   \
-         $(INSTALL_DIRS) $(install_prefix)$(man1dir) ;                 \
+       if [ ! -d $(install_prefix)$(manNdir) ]; then                   \
+         $(INSTALL_DIRS) $(install_prefix)$(manNdir) ;                 \
         fi ;                                                           \
        for man in $$men; do                                            \
          instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ;     \
          echo $(INSTALL_DATA) $(srcdir)/$$man                          \
-          $(install_prefix)$(man1dir)/$$instname ;                     \
+          $(install_prefix)$(manNdir)/$$instname ;                     \
          $(INSTALL_DATA) $(srcdir)/$$man                               \
-           $(install_prefix)$(man1dir)/$$instname ;                    \
+           $(install_prefix)$(manNdir)/$$instname ;                    \
        done
 
 uninstall-program:
@@ -368,8 +387,8 @@ uninstall-man:
        @men="$(MEN)" ;                                                 \
        for man in $$men; do                                            \
          instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ;     \
-         echo rm -f $(install_prefix)$(man1dir)/$$instname ;           \
-         rm -f $(install_prefix)$(man1dir)/$$instname ;                \
+         echo rm -f $(install_prefix)$(manNdir)/$$instname ;           \
+         rm -f $(install_prefix)$(manNdir)/$$instname ;                \
        done
 
 install-pam:
@@ -415,23 +434,36 @@ install-pam:
          fi ;                                                          \
        elif [ -f $$conf ]; then                                        \
          if ( grep $$dest $$conf >/dev/null ); then                    \
-          true ;                                                       \
+          echo "$$conf unchanged: already has an entry for $$dest" ;   \
          else                                                          \
+           src="pam.conf.$$$$" ;                                       \
+           echo "grep -v $$dest $$conf > $$src" ;                      \
+                 grep -v $$dest $$conf > $$src ;                       \
+           extras=`sed -n "s/^login\(.*auth.*\)$$/$$dest\1/p" $$conf`; \
+           echo "$$extras" >> $$src ;                                  \
+           if [ "x$$extras" = "x" ]; then                              \
+             echo "Error: no login rules in $$conf?" >&2 ;             \
+           else                                                        \
+             echo "adding $$dest rules to $$src:" ;                    \
+             echo "$$extras" | sed 's/^/       /' ;                    \
+           fi ;                                                        \
+           echo $(INSTALL_DATA) $$src $$conf ;                         \
+                $(INSTALL_DATA) $$src $$conf ;                         \
+           echo rm -f $$src ;                                          \
+                rm -f $$src ;                                          \
+         fi ;                                                          \
+         if ! ( grep $$dest $$conf >/dev/null ); then                  \
            e=echo ;                                                    \
  $$e ""                                                                             ;\
  $$e "  ####################################################################";\
  $$e "  Warning: xscreensaver has been compiled with support for Pluggable"  ;\
- $$e "           Authentication Modules (PAM).  To complete the installation";\
- $$e "           of PAM support, you must add the following line to the file";\
- $$e "           $$conf:"                                                   ;\
- $$e ""                                                                             ;\
- $$e   "       $$dest  auth required   /usr/lib/security/pam_unix.so.1"     ;\
- $$e ""                                                                             ;\
- $$e "           Be careful: if you mess up that file, you could completely" ;\
- $$e "           hose your machine (e.g., \`login' and \`su' won't work, and";\
- $$e "           you'll have to boot single-user to fix it.)"                ;\
+ $$e "           Authentication Modules (PAM).  However, we were unable to"  ;\
+ $$e "           install xscreensaver rules in the file $$conf."            ;\
+ $$e "           PAM is unlikely to work without this (and old-style"        ;\
+ $$e "           password authentication will be used instead, which may"    ;\
+ $$e "           or may not work.)"                                         ;\
  $$e "  ####################################################################";\
          echo "";                                                    \
$$e ""                                                                             ;\
          fi ;                                                          \
        fi
 
@@ -439,30 +471,57 @@ install-gnome:: screensaver-properties.desktop
        @lost=""                                                             ;\
          if [ "$(GNOME_DATADIR)" != "" ]; then                                \
                                                                              \
-           if [ ! -d "$(install_prefix)$(GNOME_CCDIR)" ]; then                \
-             echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_CCDIR)"          ;\
-                  $(INSTALL_DIRS) "$(install_prefix)$(GNOME_CCDIR)"          ;\
+           if [ ! -d "$(install_prefix)$(GNOME_CCDIR_1)" ]; then              \
+             echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_CCDIR_1)"        ;\
+                  $(INSTALL_DIRS) "$(install_prefix)$(GNOME_CCDIR_1)"        ;\
+           fi                                                                ;\
+           if [ ! -d "$(install_prefix)$(GNOME_CCDIR_2)" ]; then              \
+             echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_CCDIR_2)"        ;\
+                  $(INSTALL_DIRS) "$(install_prefix)$(GNOME_CCDIR_2)"        ;\
+           fi                                                                ;\
+           if [ ! -d "$(install_prefix)$(GNOME_CCDIR_3)" ]; then              \
+             echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_CCDIR_3)"        ;\
+                  $(INSTALL_DIRS) "$(install_prefix)$(GNOME_CCDIR_3)"        ;\
+           fi                                                                ;\
+           if [ ! -d "$(install_prefix)$(GNOME_PANELDIR)" ]; then             \
+             echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_PANELDIR)"       ;\
+                  $(INSTALL_DIRS) "$(install_prefix)$(GNOME_PANELDIR)"       ;\
            fi                                                                ;\
                                                                              \
-           echo    $(INSTALL_DATA) screensaver-properties.desktop            \
-             $(install_prefix)$(GNOME_CCDIR)/screensaver-properties.desktop;  \
+           echo $(INSTALL_DATA) screensaver-properties.desktop               \
+             $(install_prefix)$(GNOME_CCDIR_1)/screensaver-properties.desktop;\
                                                                              \
-           if      $(INSTALL_DATA) screensaver-properties.desktop            \
-             $(install_prefix)$(GNOME_CCDIR)/screensaver-properties.desktop;  \
+           if   $(INSTALL_DATA) screensaver-properties.desktop               \
+             $(install_prefix)$(GNOME_CCDIR_1)/screensaver-properties.desktop;\
              then true                                                       ;\
            else                                                               \
-             lost="$$lost $(install_prefix)$(GNOME_CCDIR)"                   ;\
+             lost="$$lost $(install_prefix)$(GNOME_CCDIR_1)"                 ;\
            fi                                                                ;\
                                                                              \
-           if [ ! -d "$(install_prefix)$(GNOME_PANELDIR)" ]; then             \
-             echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_PANELDIR)"       ;\
-                  $(INSTALL_DIRS) "$(install_prefix)$(GNOME_PANELDIR)"       ;\
+           echo $(INSTALL_DATA) screensaver-properties.desktop               \
+             $(install_prefix)$(GNOME_CCDIR_2)/screensaver-properties.desktop;\
+                                                                             \
+           if   $(INSTALL_DATA) screensaver-properties.desktop               \
+             $(install_prefix)$(GNOME_CCDIR_2)/screensaver-properties.desktop;\
+             then true                                                       ;\
+           else                                                               \
+             lost="$$lost $(install_prefix)$(GNOME_CCDIR_2)"                 ;\
            fi                                                                ;\
                                                                              \
            echo $(INSTALL_DATA) screensaver-properties.desktop               \
-                        $(GNOME_PANELDIR)/screensaver-properties.desktop     ;\
+             $(install_prefix)$(GNOME_CCDIR_3)/screensaver-properties.desktop;\
+                                                                             \
+           if   $(INSTALL_DATA) screensaver-properties.desktop               \
+             $(install_prefix)$(GNOME_CCDIR_3)/screensaver-properties.desktop;\
+             then true                                                       ;\
+           else                                                               \
+             lost="$$lost $(install_prefix)$(GNOME_CCDIR_3)"                 ;\
+           fi                                                                ;\
+                                                                             \
+           echo $(INSTALL_DATA) screensaver-properties.desktop               \
+            $(install_prefix)$(GNOME_PANELDIR)/screensaver-properties.desktop;\
            if   $(INSTALL_DATA) screensaver-properties.desktop               \
-       $(install_prefix)$(GNOME_PANELDIR)/screensaver-properties.desktop     ;\
+            $(install_prefix)$(GNOME_PANELDIR)/screensaver-properties.desktop;\
              then true                                                       ;\
            else                                                               \
              lost="$$lost $(install_prefix)$(GNOME_PANELDIR)"                ;\
@@ -510,20 +569,27 @@ install-gnome:: screensaver-properties-capplet
         fi
 
 # xscreensaver.xpm
+# into /usr/share/pixmaps/
 install-gnome:: $(LOGO)
-       @if [ "$(GLADE_DATADIR)" != "" ]; then                                  \
-           if [ ! -d "$(install_prefix)$(GLADE_DATADIR)" ]; then                \
-             echo $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)"          ;\
-                  $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)"          ;\
+       @if [ "$(GNOME_DATADIR)" != "" ]; then                                \
+           if [ ! -d "$(install_prefix)$(GNOME_ICONDIR)" ]; then              \
+             echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_ICONDIR)"        ;\
+                  $(INSTALL_DIRS) "$(install_prefix)$(GNOME_ICONDIR)"        ;\
            fi                                                                ;\
           target=xscreensaver.xpm                                           ;\
           echo $(INSTALL_DATA) $(LOGO)                                       \
-                 $(install_prefix)$(GLADE_DATADIR)/$$target                 ;\
+                 $(install_prefix)$(GNOME_ICONDIR)/$$target                 ;\
                $(INSTALL_DATA) $(LOGO)                                       \
-                 $(install_prefix)$(GLADE_DATADIR)/$$target                 ;\
+                 $(install_prefix)$(GNOME_ICONDIR)/$$target                 ;\
         fi
 
-# ../utils/images/screensaver-*.xpm
+# ../utils/images/screensaver-*.png
+# into /usr/share/xscreensaver/
+#
+# Should these really go in GLADE_DATADIR (/usr/share/xscreensaver/)
+# or should they instead go in GNOME_ICONDIR (/usr/share/pixmaps/)?
+# Does it matter?
+#
 install-gnome::
        @if [ "$(GLADE_DATADIR)" != "" ]; then                                \
            if [ ! -d "$(install_prefix)$(GLADE_DATADIR)" ]; then              \
@@ -540,6 +606,7 @@ install-gnome::
         fi
 
 # xscreensaver-demo.glade2
+# into /usr/share/xscreensaver/
 install-gnome:: xscreensaver-demo.glade2
        @if [ "$(GLADE_DATADIR)" != "" ]; then                                \
          if [ ! -d "$(install_prefix)$(GLADE_DATADIR)" ]; then               \
@@ -568,16 +635,22 @@ install-gnome:: xscreensaver-demo.glade2
 
 
 # screensaver-properties.desktop
+# into /usr/share/gnome/apps/Settings/Desktop/
 uninstall-gnome::
        @if [ "$(GNOME_DATADIR)" != "" ]; then                                \
           f=screensaver-properties.desktop                                   ;\
-          echo rm -f $(install_prefix)$(GNOME_CCDIR)/$$f                     ;\
-               rm -f $(install_prefix)$(GNOME_CCDIR)/$$f                     ;\
+          echo rm -f $(install_prefix)$(GNOME_CCDIR_1)/$$f                   ;\
+               rm -f $(install_prefix)$(GNOME_CCDIR_1)/$$f                   ;\
+          echo rm -f $(install_prefix)$(GNOME_CCDIR_2)/$$f                   ;\
+               rm -f $(install_prefix)$(GNOME_CCDIR_2)/$$f                   ;\
+          echo rm -f $(install_prefix)$(GNOME_CCDIR_3)/$$f                   ;\
+               rm -f $(install_prefix)$(GNOME_CCDIR_3)/$$f                   ;\
           echo rm -f $(install_prefix)$(GNOME_PANELDIR)/$$f                  ;\
                rm -f $(install_prefix)$(GNOME_PANELDIR)/$$f                  ;\
         fi
 
 # screensaver-properties-capplet
+# into /usr/X11R6/bin/
 uninstall-gnome::
        @if [ "$(GNOME_DATADIR)" != "" ]; then                                \
          program=screensaver-properties-capplet                             ;\
@@ -586,14 +659,16 @@ uninstall-gnome::
         fi
 
 # xscreensaver.xpm
+# into /usr/share/pixmaps/
 uninstall-gnome::
-       @if [ "$(GLADE_DATADIR)" != "" ]; then                                \
+       @if [ "$(GNOME_ICONDIR)" != "" ]; then                                \
          target=xscreensaver.xpm                                            ;\
-         echo rm -f $(install_prefix)$(GLADE_DATADIR)/$$target                ;\
-              rm -f $(install_prefix)$(GLADE_DATADIR)/$$target                ;\
+         echo rm -f $(install_prefix)$(GNOME_ICONDIR)/$$target              ;\
+              rm -f $(install_prefix)$(GNOME_ICONDIR)/$$target              ;\
         fi
 
-# xscreensaver.xpm
+# ../utils/images/screensaver-*.png
+# into /usr/share/xscreensaver/
 uninstall-gnome::
        @if [ "$(GLADE_DATADIR)" != "" ]; then                                \
           for target in $(GTK_ICONS) ; do                                    \
@@ -603,11 +678,12 @@ uninstall-gnome::
           done                                                              ;\
         fi
 
+# xscreensaver.kss
 install-kde:
-       @src="$(srcdir)/xscreensaver.kss" ;                                   \
+       @src="xscreensaver.kss" ;                                             \
        if [ "$$KDEDIR" != "" ]; then                                         \
          dir="$(install_prefix)$$KDEDIR/bin" ;                               \
-         dest="$$dir/xscreensaver.kss" ;                                     \
+         dest="$$dir/$$src" ;                                                \
          echo $(INSTALL_SCRIPT) $$src $$dest ;                               \
          if $(INSTALL_SCRIPT) $$src $$dest ; then                            \
            true ;                                                            \
@@ -766,7 +842,10 @@ $(SAVER_UTIL_OBJS):
 
 # How we build object files in this directory.
 .c.o:
-       $(CC) -c $(INCLUDES) $(DEFS)  $(CFLAGS) $(X_CFLAGS) $<
+       $(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $(X_CFLAGS) $<
+
+.m.o:
+       $(OBJCC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $(X_CFLAGS) $<
 
 # subprocs takes an extra -D option.
 subprocs.o: subprocs.c
@@ -802,8 +881,14 @@ xscreensaver-command: $(CMD_OBJS)
 
 
 xscreensaver-demo: @PREFERRED_DEMO_PROGRAM@
-       cp -p @PREFERRED_DEMO_PROGRAM@@EXEEXT@ $@@EXEEXT@
-#      $(INSTALL_PROGRAM) @PREFERRED_DEMO_PROGRAM@ $@
+       @if [ "@PREFERRED_DEMO_PROGRAM@" = "" ]; then                   \
+         echo "WARNING: neither GTK nor Motif are available,"          \
+              "therefore no xscreensaver-demo!"                      ; \
+         rm -f $@@EXEEXT@                                            ; \
+       else                                                            \
+         echo cp -p @PREFERRED_DEMO_PROGRAM@@EXEEXT@ $@@EXEEXT@      ; \
+              cp -p @PREFERRED_DEMO_PROGRAM@@EXEEXT@ $@@EXEEXT@      ; \
+       fi
 
 xscreensaver-demo-Xm: $(DEMO_OBJS) $(MOTIF_OBJS)
        $(CC) $(LDFLAGS) -o $@ $(DEMO_OBJS) $(MOTIF_OBJS) $(LIBS) $(X_LIBS) \
@@ -812,12 +897,15 @@ xscreensaver-demo-Xm: $(DEMO_OBJS) $(MOTIF_OBJS)
 
 xscreensaver-demo-Gtk: $(DEMO_OBJS) $(GTK_OBJS)
        $(CC) $(LDFLAGS) -o $@ $(DEMO_OBJS) $(GTK_OBJS) $(LIBS) $(X_LIBS) \
-       $(GTK_LIBS) $(XML_LIBS) $(INTL_LIBS) $(X_PRE_LIBS) -lXt -lX11 \
-       $(XDPMS_LIBS) -lXext $(X_EXTRA_LIBS)
+       $(GTK_LIBS) $(XPM_LIBS) $(XML_LIBS) $(INTL_LIBS) $(X_PRE_LIBS) \
+       -lXt -lX11 $(XDPMS_LIBS) -lXext $(X_EXTRA_LIBS)
 
 xscreensaver-getimage: $(GETIMG_OBJS)
        $(CC) $(LDFLAGS) -o $@ $(GETIMG_OBJS) $(GETIMG_LIBS) -lm
 
+pdf2jpeg: $(PDF2JPEG_OBJS)
+       $(OBJCC) $(LDFLAGS) -o $@ $(PDF2JPEG_OBJS) $(PDF2JPEG_LIBS) -lm
+
 
 TEST_PASSWD_OBJS = test-passwd.o $(LOCK_OBJS_1) $(PASSWD_OBJS) \
         subprocs.o setuid.o splash.o prefs.o \
@@ -834,6 +922,18 @@ test-xdpms: test-xdpms.o
        $(CC) $(LDFLAGS) -o $@ test-xdpms.o $(LIBS) $(X_LIBS) $(XDPMS_LIBS) \
        $(X_PRE_LIBS) -lXt -lX11 -lXext $(X_EXTRA_LIBS)
 
+test-xinerama: test-xinerama.o
+       $(CC) $(LDFLAGS) -o $@ test-xinerama.o $(LIBS) $(X_LIBS) $(SAVER_LIBS)\
+       $(X_PRE_LIBS) -lXt -lX11 -lXext $(X_EXTRA_LIBS)
+
+test-vp: test-vp.o
+       $(CC) $(LDFLAGS) -o $@ test-vp.o $(LIBS) $(X_LIBS) $(SAVER_LIBS) \
+       $(X_PRE_LIBS) -lXt -lX11 -lXext $(X_EXTRA_LIBS)
+
+test-randr: test-randr.o
+       $(CC) $(LDFLAGS) -o $@ test-randr.o $(LIBS) $(X_LIBS) $(SAVER_LIBS) \
+       $(X_PRE_LIBS) -lXt -lX11 -lXext $(X_EXTRA_LIBS)
+
 test-grab: test-grab.o
        $(CC) $(LDFLAGS) -o $@ test-grab.o $(SAVER_LIBS)
 
@@ -861,23 +961,20 @@ xdpyinfo: xdpyinfo.o
 
 demo-Gtk-conf.o: ../config.h
 demo-Gtk-conf.o: $(srcdir)/demo-Gtk-conf.h
-demo-Gtk.o: XScreenSaver_ad.h
 demo-Gtk.o: ../config.h
 demo-Gtk.o: $(srcdir)/demo-Gtk-conf.h
 demo-Gtk.o: $(srcdir)/demo-Gtk-support.h
 demo-Gtk.o: $(srcdir)/demo-Gtk-widgets.h
 demo-Gtk.o: $(srcdir)/prefs.h
 demo-Gtk.o: $(srcdir)/remote.h
+demo-Gtk.o: XScreenSaver_ad.h
 demo-Gtk-support.o: ../config.h
 demo-Gtk-support.o: $(srcdir)/demo-Gtk-support.h
 demo-Gtk-widgets.o: ../config.h
 demo-Gtk-widgets.o: $(srcdir)/demo-Gtk-stubs.h
 demo-Gtk-widgets.o: $(srcdir)/demo-Gtk-support.h
 demo-Gtk-widgets.o: $(srcdir)/demo-Gtk-widgets.h
-demo-Xm.o: XScreenSaver_ad.h
 demo-Xm.o: ../config.h
-demo-Xm.o: $(srcdir)/prefs.h
-demo-Xm.o: $(srcdir)/remote.h
 demo-Xm-widgets.o: ../config.h
 dpms.o: ../config.h
 dpms.o: $(srcdir)/prefs.h
@@ -909,12 +1006,15 @@ test-fade.o: ../config.h
 test-fade.o: $(srcdir)/prefs.h
 test-fade.o: $(srcdir)/xscreensaver.h
 test-grab.o: ../config.h
-test-passwd.o: XScreenSaver_ad.h
 test-passwd.o: ../config.h
 test-passwd.o: $(srcdir)/prefs.h
+test-passwd.o: XScreenSaver_ad.h
 test-passwd.o: $(srcdir)/xscreensaver.h
+test-randr.o: ../config.h
 test-uid.o: ../config.h
+test-vp.o: ../config.h
 test-xdpms.o: ../config.h
+test-xinerama.o: ../config.h
 timers.o: ../config.h
 timers.o: $(srcdir)/prefs.h
 timers.o: $(srcdir)/xscreensaver.h
@@ -926,9 +1026,9 @@ xscreensaver-command.o: $(srcdir)/remote.h
 xscreensaver-getimage.o: ../config.h
 xscreensaver-getimage.o: XScreenSaver_ad.h
 xscreensaver-getimage.o: $(srcdir)/prefs.h
-xscreensaver.o: XScreenSaver_ad.h
 xscreensaver.o: ../config.h
 xscreensaver.o: $(srcdir)/prefs.h
+xscreensaver.o: XScreenSaver_ad.h
 xscreensaver.o: $(srcdir)/xscreensaver.h
 xset.o: ../config.h
 xset.o: $(srcdir)/prefs.h