srcdir = @srcdir@
VPATH = @srcdir@
+top_srcdir = @top_srcdir@
+top_builddir = ..
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
+manNdir = $(mandir)/man$(mansuffix)
+
+INTLTOOL_MERGE = @INTLTOOL_MERGE@
GNOME_DATADIR = @GNOME_DATADIR@
-GNOME_CCDIR = $(GNOME_DATADIR)/control-center/Desktop
-GNOME_PANELDIR = $(GNOME_DATADIR)/gnome/apps/Settings/Desktop
-GNOME_ICONDIR = $(GNOME_DATADIR)/pixmaps
+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_BINDIR = $(bindir)
+HACK_CONF_DIR = @HACK_CONF_DIR@
CC = @CC@
CFLAGS = @CFLAGS@
LDFLAGS = @LDFLAGS@
DEFS = @DEFS@
-DEFS2 = $(DEFS) -DDEFAULT_PATH_PREFIX='"@HACKDIR@"'
+INTL_DEFS = -DLOCALEDIR=\"$(localedir)\"
+SUBP_DEFS = $(DEFS) -DDEFAULT_PATH_PREFIX='"@HACKDIR@"'
+GTK_DEFS = $(DEFS) -DDEFAULT_ICONDIR='"$(GLADE_DATADIR)"'
+CONF_DEFS = -DHACK_CONFIGURATION_PATH='"$(HACK_CONF_DIR)"'
+
LIBS = @LIBS@
+INTL_LIBS = @INTLLIBS@
+JPEG_LIBS = @JPEG_LIBS@
PERL = @PERL@
DEPEND = @DEPEND@
X_PRE_LIBS = @X_PRE_LIBS@
X_EXTRA_LIBS = @X_EXTRA_LIBS@
XMU_LIBS = @XMU_LIBS@
+XPM_LIBS = @XPM_LIBS@
# Note:
#
MOTIF_SRCS = demo-Xm.c demo-Xm-widgets.c
MOTIF_OBJS = demo-Xm.o demo-Xm-widgets.o
-GTK_SRCS = demo-Gtk.c demo-Gtk-widgets.c
-GTK_OBJS = demo-Gtk.o demo-Gtk-widgets.o
+GTK_SRCS = demo-Gtk.c demo-Gtk-conf.c \
+ demo-Gtk-widgets.c demo-Gtk-support.c
+GTK_EXTRA_OBJS = demo-Gtk-widgets.o demo-Gtk-support.o
+GTK_OBJS = demo-Gtk.o demo-Gtk-conf.o @GTK_EXTRA_OBJS@
PWENT_SRCS = passwd-pwent.c
PWENT_OBJS = passwd-pwent.o
MOTIF_LIBS = @MOTIF_LIBS@ @XPM_LIBS@ $(XMU_LIBS)
GTK_LIBS = @GTK_LIBS@ $(XMU_LIBS)
+XML_LIBS = @XML_LIBS@
XDPMS_LIBS = @XDPMS_LIBS@
GL_OBJS = @SAVER_GL_OBJS@
GL_LIBS = @SAVER_GL_LIBS@
-LOGO = $(UTILS_SRC)/logo-50.xpm
+ICON_SRC = $(UTILS_SRC)/images
+LOGO = $(ICON_SRC)/logo-50.xpm
+GTK_ICONS = $(ICON_SRC)/screensaver-*.xpm
+
DEMO_UTIL_SRCS = $(UTILS_SRC)/resources.c $(UTILS_SRC)/usleep.c \
$(UTILS_SRC)/visual.c
DEMO_UTIL_OBJS = $(UTILS_BIN)/resources.o $(UTILS_BIN)/usleep.o \
$(UTILS_BIN)/colors.o $(UTILS_BIN)/grabscreen.o \
$(UTILS_BIN)/logo.o prefs.o $(XMU_OBJS)
-SAVER_SRCS_1 = xscreensaver.c windows.c timers.c subprocs.c \
+SAVER_SRCS_1 = xscreensaver.c windows.c timers.c subprocs.c exec.c \
xset.c splash.c setuid.c stderr.c
-SAVER_OBJS_1 = xscreensaver.o windows.o timers.o subprocs.o \
+SAVER_OBJS_1 = xscreensaver.o windows.o timers.o subprocs.o exec.o \
xset.o splash.o setuid.o stderr.o
SAVER_SRCS = $(SAVER_SRCS_1) prefs.c dpms.c $(LOCK_SRCS) \
DEMO_SRCS_1 = prefs.c dpms.c $(XMU_SRCS)
DEMO_OBJS_1 = prefs.o dpms.o $(XMU_OBJS)
-DEMO_SRCS = prefs.c dpms.c remote.c $(DEMO_UTIL_SRCS)
-DEMO_OBJS = prefs.o dpms.o remote.o $(DEMO_UTIL_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)
SAVER_LIBS = $(LIBS) $(X_LIBS) $(XMU_LIBS) @SAVER_LIBS@ \
$(XDPMS_LIBS) $(GL_LIBS) $(X_PRE_LIBS) \
CMD_LIBS = $(LIBS) $(X_LIBS) \
$(X_PRE_LIBS) -lX11 -lXext $(X_EXTRA_LIBS)
-GETIMG_LIBS = $(LIBS) $(X_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 \
SCRIPTS = xscreensaver-getimage-file xscreensaver-getimage-video
HDRS = XScreenSaver_ad.h xscreensaver.h prefs.h remote.h \
- demo-Gtk-widgets.h demo-Gtk-stubs.h
+ demo-Gtk-widgets.h demo-Gtk-stubs.h demo-Gtk-support.h \
+ demo-Gtk-conf.h
MEN = xscreensaver.man xscreensaver-demo.man \
xscreensaver-command.man \
xscreensaver-getimage.man \
xscreensaver-getimage-file.man \
xscreensaver-getimage-video.man
EXTRAS = README Makefile.in XScreenSaver.ad.in xscreensaver.pam \
- xscreensaver.kss xscreensaver-demo.glade \
+ 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 \
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
munge-scripts: $(SCRIPTS)
@tmp=/tmp/mf.$$$$ ; \
perl="${PERL}" ; \
+ rm -f $$tmp ; \
for program in $(SCRIPTS); do \
echo "adjusting location of perl in $$program..." ; \
sed "s@^\(#!\)\(/[^ ]*/perl[^ ]*\)\(.*\)\$$@\1$$perl\3@" \
else \
cat $$tmp > ./$$program ; \
fi ; \
- done
+ done ; \
+ rm -f $$tmp
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:
@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:
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
install-gnome:: screensaver-properties.desktop
- @lost1="" ;\
- lost2="" ;\
+ @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) $(srcdir)/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) $(srcdir)/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 \
- lost1="$(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 \
+ $(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) $(srcdir)/screensaver-properties.desktop \
- $(GNOME_PANELDIR)/screensaver-properties.desktop ;\
- if $(INSTALL_DATA) $(srcdir)/screensaver-properties.desktop \
- $(install_prefix)$(GNOME_PANELDIR)/screensaver-properties.desktop ;\
+ 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;\
then true ;\
else \
- lost2="$(install_prefix)$(GNOME_PANELDIR)" ;\
+ lost="$$lost $(install_prefix)$(GNOME_PANELDIR)" ;\
fi ;\
\
- if [ "$$lost1" != "" -o "$$lost2" != "" ]; then \
+ if [ "$$lost" != "" ]; then \
e=echo ; \
$$e "" ;\
$$e " ####################################################################";\
- $$e " Warning: unable to install screensaver-properties.desktop into" ;\
- plurality="this file" ;\
- if [ "$$lost1" != "" -a "$$lost2" != "" ]; then \
- $$e " $$lost1/ or into" ;\
- $$e " $$lost2/." ;\
- plurality="these files" ;\
- elif [ "$$lost1" != "" ]; then \
- $$e " $$lost1/." ;\
- else \
- $$e " $$lost2/." ;\
- fi ;\
- $$e " Without $$plurality," 'the "Screen Saver" section of the' ;\
- $$e " Gnome Control Center (gnomecc) will not work properly." ;\
+ $$e " Warning: unable to install screensaver-properties.desktop into:" ;\
+ set - $$lost ;\
+ for f in $$@ ; do echo " $$f/" ; done ;\
+ $$e ' This means the "Screen Saver" section of the Gnome' ;\
+ $$e " Control Center (gnomecc) may not work properly." ;\
$$e " ####################################################################";\
$$e "" ;\
exit 1 ; \
$(INSTALL_DIRS) "$(install_prefix)$(GNOME_BINDIR)" ;\
fi ;\
program=screensaver-properties-capplet ;\
- echo $(INSTALL_SCRIPT) $$program \
+ echo $(INSTALL_SCRIPT) $(srcdir)/$$program \
$(install_prefix)$(GNOME_BINDIR)/$$program ;\
- if $(INSTALL_SCRIPT) $$program \
+ if $(INSTALL_SCRIPT) $(srcdir)/$$program \
$(install_prefix)$(GNOME_BINDIR)/$$program ;\
then true ;\
else \
fi ; \
fi
+# xscreensaver.xpm
install-gnome:: $(LOGO)
- @if [ "$(GNOME_DATADIR)" != "" ]; then \
- if [ ! -d "$(install_prefix)$(GNOME_ICONDIR)" ]; then \
- echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_ICONDIR)" ;\
- $(INSTALL_DIRS) "$(install_prefix)$(GNOME_ICONDIR)" ;\
+ @if [ "$(GLADE_DATADIR)" != "" ]; then \
+ if [ ! -d "$(install_prefix)$(GLADE_DATADIR)" ]; then \
+ echo $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)" ;\
+ $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)" ;\
fi ;\
target=xscreensaver.xpm ;\
echo $(INSTALL_DATA) $(LOGO) \
- $(install_prefix)$(GNOME_ICONDIR)/$$target ;\
+ $(install_prefix)$(GLADE_DATADIR)/$$target ;\
$(INSTALL_DATA) $(LOGO) \
- $(install_prefix)$(GNOME_ICONDIR)/$$target ;\
+ $(install_prefix)$(GLADE_DATADIR)/$$target ;\
fi
+# ../utils/images/screensaver-*.xpm
+install-gnome::
+ @if [ "$(GLADE_DATADIR)" != "" ]; then \
+ if [ ! -d "$(install_prefix)$(GLADE_DATADIR)" ]; then \
+ echo $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)" ;\
+ $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)" ;\
+ fi ;\
+ for target in $(GTK_ICONS) ; do \
+ dest=`echo $$target | sed 's@^.*/@@'` ;\
+ echo $(INSTALL_DATA) $$target \
+ $(install_prefix)$(GLADE_DATADIR)/$$dest ;\
+ $(INSTALL_DATA) $$target \
+ $(install_prefix)$(GLADE_DATADIR)/$$dest ;\
+ done ;\
+ fi
+
+# xscreensaver-demo.glade2
+install-gnome:: xscreensaver-demo.glade2
+ @if [ "$(GLADE_DATADIR)" != "" ]; then \
+ if [ ! -d "$(install_prefix)$(GLADE_DATADIR)" ]; then \
+ echo $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)" ;\
+ $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)" ;\
+ fi ;\
+ target=xscreensaver-demo.glade2 ;\
+ echo $(INSTALL_DATA) $(srcdir)/$$target \
+ $(install_prefix)$(GLADE_DATADIR)/$$target ;\
+ if $(INSTALL_DATA) $(srcdir)/$$target \
+ $(install_prefix)$(GLADE_DATADIR)/$$target ;\
+ then true ;\
+ else \
+ e=echo ; \
+ $$e "" ;\
+ $$e " ####################################################################";\
+ $$e " Warning: unable to install $$target into" ;\
+ $$e " $(install_prefix)$(GLADE_DATADIR)/." ;\
+ $$e " Without this file, xscreensaver-demo will not" ;\
+ $$e " be able to run properly." ;\
+ $$e " ####################################################################";\
+ $$e "" ;\
+ exit 1 ; \
+ fi ; \
+ fi
+
+
+# screensaver-properties.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
uninstall-gnome::
@if [ "$(GNOME_DATADIR)" != "" ]; then \
program=screensaver-properties-capplet ;\
rm -f $(install_prefix)$(bindir)/$$program ;\
fi
+# xscreensaver.xpm
uninstall-gnome::
- @if [ "$(GNOME_DATADIR)" != "" ]; then \
+ @if [ "$(GLADE_DATADIR)" != "" ]; then \
target=xscreensaver.xpm ;\
- echo rm -f $(install_prefix)$(GNOME_ICONDIR)/$$target ;\
- rm -f $(install_prefix)$(GNOME_ICONDIR)/$$target ;\
+ echo rm -f $(install_prefix)$(GLADE_DATADIR)/$$target ;\
+ rm -f $(install_prefix)$(GLADE_DATADIR)/$$target ;\
fi
+# xscreensaver.xpm
+uninstall-gnome::
+ @if [ "$(GLADE_DATADIR)" != "" ]; then \
+ for target in $(GTK_ICONS) ; do \
+ dest=`echo $$target | sed 's@^.*/@@'` ;\
+ echo rm -f $(install_prefix)$(GLADE_DATADIR)/$$dest ;\
+ rm -f $(install_prefix)$(GLADE_DATADIR)/$$dest ;\
+ done ;\
+ fi
+
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 ; \
-rm -f *.o a.out core $(EXES) $(EXES2) $(TEST_EXES) XScreenSaver_ad.h
distclean: clean
- -rm -f Makefile XScreenSaver.ad TAGS *~ "#"*
+ -rm -f Makefile XScreenSaver.ad TAGS *~ "#"* screensaver-properties.desktop
# Adds all current dependencies to Makefile
depend: XScreenSaver_ad.h
# close. This excludes dependencies on files in /usr/include, etc. It tries
# to include only dependencies on files which are themselves a part of this
# package.
-distdepend: update_ad_version update_man_version XScreenSaver_ad.h
+distdepend: check_men update_ad_version update_man_version XScreenSaver_ad.h
@echo updating dependencies in `pwd`/Makefile.in... ; \
$(DEPEND) -w 0 -f - \
-s '# DO NOT DELETE: updated by make distdepend' $(DEPEND_FLAGS) -- \
- $(INCLUDES) $(DEFS) $(DEPEND_DEFINES) $(CFLAGS) $(X_CFLAGS) -- \
+ $(INCLUDES) -I$(ICON_SRC) $(DEFS) $(DEPEND_DEFINES) \
+ $(CFLAGS) $(X_CFLAGS) -- \
$(SAVER_SRCS_1) $(MOTIF_SRCS) $(GTK_SRCS) $(GETIMG_SRCS_1) \
$(PWENT_SRCS) $(LOCK_SRCS_1) $(DEMO_SRCS_1) $(CMD_SRCS) \
- $(TEST_SRCS) | \
+ $(TEST_SRCS) 2>/dev/null | \
+ sort -d | \
( \
awk '/^# .*Makefile.in ---/,/^# DO .*distdepend/' < Makefile.in ; \
- sed -e 's@ \./@ @g;s@ /[^ ]*@@g;/^.*:$$/d' \
+ sed -e '/^#.*/d' \
+ -e 's@ \./@ @g;s@ /[^ ]*@@g;/^.*:$$/d' \
-e 's@\.\./utils@$$(UTILS_SRC)@g' \
-e 's@ \([^$$]\)@ $$(srcdir)/\1@g' \
-e 's@$$.*\(XScreenSaver_ad\)@\1@g' \
# Updates the version number in the app-defaults file to be in sync with
# the version number in version.h. This is so people can tell when they
# have a version skew between the app-defaults file and the executable.
+# Also update hacks/config/README in the same way.
update_ad_version::
- @S=XScreenSaver.ad.in ; \
+ @files="XScreenSaver.ad.in ../hacks/config/README" ; \
U=$(UTILS_SRC)/version.h ; \
V=`sed -n 's/.*\([0-9][0-9]*\.[0-9]*\).*/\1/p' < $$U` ; \
D=`date '+%d-%b-%Y'` ; \
- echo -n "Updating version number in $$S to $$V $$D... " ; \
- T=/tmp/xs.$$$$ ; \
- sed -e "s/\(.*version \)[0-9][0-9]*\.[0-9]*\(.*\)/\1$$V\2/" \
- -e "s/\([0-9][0-9]-[A-Z][a-z][a-z]-[0-9][0-9][0-9]*\)/$$D/" \
- < $$S > $$T ; \
- if cmp -s $$S $$T ; then \
- echo "unchanged." ; \
- else \
- cat $$T > $$S ; \
- echo "done." ; \
- fi ; \
+ for S in $$files ; do \
+ echo -n "Updating $$S to $$V $$D... " ; \
+ T=/tmp/xs.$$$$ ; \
+ sed -e "s/\(.*version \)[0-9][0-9]*\.[0-9]*\(.*\)/\1$$V\2/" \
+ -e "s/\([0-9][0-9]-[A-Z][a-z][a-z]-[0-9][0-9][0-9]*\)/$$D/" \
+ < $$S > $$T ; \
+ if cmp -s $$S $$T ; then \
+ echo "unchanged." ; \
+ else \
+ cat $$T > $$S ; \
+ echo "done." ; \
+ fi ; \
+ done ; \
rm $$T
update_man_version::
U=$(UTILS_SRC)/version.h ; \
V=`sed -n 's/.*\([0-9][0-9]*\.[0-9]*\).*/\1/p' < $$U` ; \
V="`date '+%d-%b-%Y'` ($$V)" ; \
- echo -n "Updating footer in $$S to \"$$V\"... " ; \
+ echo -n "Updating $$S to \"$$V\"... " ; \
T=/tmp/xs.$$$$ ; \
sed "s/^\(\.TH[^\"]*\)\"[^\"]*\"\(.*\)/\1\"$$V\"\2/" \
< $$S > $$T ; \
@$(MAKE) XScreenSaver_ad.h 2>&1 >&- /dev/null
@echo $(TARFILES)
+check_men:
+ @badmen="" ; \
+ for exe in $(EXES); do \
+ if ! [ -f $(srcdir)/$$exe.man ]; then \
+ badmen="$$badmen $$exe" ; \
+ fi ; \
+ done ; \
+ if [ -n "$$badmen" ]; then \
+ echo "" ; \
+ echo "Warning: The following programs have no manuals:" ; \
+ echo "" ; \
+ for m in $$badmen ; do \
+ echo " $$m" ; \
+ done ; \
+ echo "" ; \
+ fi
+
# Rules for noticing when the objects from the utils directory are out of
# date with respect to their sources, and going and building them according
.c.o:
$(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $(X_CFLAGS) $<
-# subprocs is the only one that takes an extra -D option.
+# subprocs takes an extra -D option.
subprocs.o: subprocs.c
- $(CC) -c $(INCLUDES) $(DEFS2) $(CFLAGS) $(X_CFLAGS) \
+ $(CC) -c $(INCLUDES) $(SUBP_DEFS) $(CFLAGS) $(X_CFLAGS) \
$(srcdir)/subprocs.c
+# demo-Gtk takes extra -D options, and an extra -I option.
+demo-Gtk.o: demo-Gtk.c
+ $(CC) -c $(INCLUDES) $(SUBP_DEFS) -I$(ICON_SRC) \
+ $(GTK_DEFS) $(INTL_DEFS) $(CFLAGS) $(X_CFLAGS) \
+ $(srcdir)/demo-Gtk.c
+
+# demo-Gtk-conf takes an extra -D option.
+demo-Gtk-conf.o: demo-Gtk-conf.c
+ $(CC) -c $(INCLUDES) $(CONF_DEFS) $(GTK_DEFS) $(CFLAGS) $(X_CFLAGS) \
+ $(srcdir)/demo-Gtk-conf.c
+
# How we build the default app-defaults file into the program.
#
XScreenSaver_ad.h: XScreenSaver.ad
$(SHELL) $(UTILS_SRC)/ad2c XScreenSaver.ad > XScreenSaver_ad.h
-screensaver-properties.desktop: screensaver-properties.desktop.in Makefile
- @echo generating $@... ; \
- sed "s%[@]bindir[@]%${bindir}%g" \
- < ${srcdir}/screensaver-properties.desktop.in \
- > $@
+@INTLTOOL_DESKTOP_RULE@
# The executables linked in this directory.
#
xscreensaver-demo: @PREFERRED_DEMO_PROGRAM@
- cp -p @PREFERRED_DEMO_PROGRAM@ $@
+ cp -p @PREFERRED_DEMO_PROGRAM@@EXEEXT@ $@@EXEEXT@
+# $(INSTALL_PROGRAM) @PREFERRED_DEMO_PROGRAM@ $@
xscreensaver-demo-Xm: $(DEMO_OBJS) $(MOTIF_OBJS)
$(CC) $(LDFLAGS) -o $@ $(DEMO_OBJS) $(MOTIF_OBJS) $(LIBS) $(X_LIBS) \
- $(MOTIF_LIBS) $(X_PRE_LIBS) -lXt -lX11 $(XDPMS_LIBS) -lXext \
- $(X_EXTRA_LIBS)
+ $(MOTIF_LIBS) $(INTL_LIBS) $(X_PRE_LIBS) -lXt -lX11 \
+ $(XDPMS_LIBS) -lXext $(X_EXTRA_LIBS)
xscreensaver-demo-Gtk: $(DEMO_OBJS) $(GTK_OBJS)
$(CC) $(LDFLAGS) -o $@ $(DEMO_OBJS) $(GTK_OBJS) $(LIBS) $(X_LIBS) \
- $(GTK_LIBS) $(X_PRE_LIBS) -lXt -lX11 $(XDPMS_LIBS) -lXext \
- $(X_EXTRA_LIBS)
+ $(GTK_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
$(CC) $(LDFLAGS) -o $@ test-apm.o $(SAVER_LIBS) -lapm
TEST_FADE_OBJS = test-fade.o $(UTILS_SRC)/fade.o $(DEMO_UTIL_OBJS)
-test-fade: test-fade.o
+test-fade: test-fade.o $(UTILS_BIN)/fade.o
$(CC) $(LDFLAGS) -o $@ $(TEST_FADE_OBJS) $(SAVER_LIBS)
##############################################################################
#
# DO NOT DELETE: updated by make distdepend
-# $(srcdir)/DO $(srcdir)/NOT $(srcdir)/DELETE: $(srcdir)/updated $(srcdir)/by $(srcdir)/make $(srcdir)/distdepend
-xscreensaver.o: ../config.h
-xscreensaver.o: $(srcdir)/xscreensaver.h
-xscreensaver.o: $(srcdir)/prefs.h
-xscreensaver.o: XScreenSaver_ad.h
-windows.o: ../config.h
-windows.o: $(srcdir)/xscreensaver.h
-windows.o: $(srcdir)/prefs.h
-timers.o: ../config.h
-timers.o: $(srcdir)/xscreensaver.h
-timers.o: $(srcdir)/prefs.h
-subprocs.o: ../config.h
-subprocs.o: $(srcdir)/xscreensaver.h
-subprocs.o: $(srcdir)/prefs.h
-xset.o: ../config.h
-xset.o: $(srcdir)/xscreensaver.h
-xset.o: $(srcdir)/prefs.h
-splash.o: ../config.h
-splash.o: $(srcdir)/xscreensaver.h
-splash.o: $(srcdir)/prefs.h
-setuid.o: ../config.h
-setuid.o: $(srcdir)/xscreensaver.h
-setuid.o: $(srcdir)/prefs.h
-stderr.o: ../config.h
-stderr.o: $(srcdir)/xscreensaver.h
-stderr.o: $(srcdir)/prefs.h
-demo-Xm.o: ../config.h
-demo-Xm.o: $(srcdir)/prefs.h
-demo-Xm.o: $(srcdir)/remote.h
-demo-Xm.o: XScreenSaver_ad.h
-demo-Xm-widgets.o: ../config.h
+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: $(srcdir)/demo-Gtk-widgets.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
-xscreensaver-getimage.o: ../config.h
-xscreensaver-getimage.o: $(srcdir)/prefs.h
-xscreensaver-getimage.o: XScreenSaver_ad.h
-passwd-pwent.o: ../config.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
+dpms.o: $(srcdir)/xscreensaver.h
+exec.o: ../config.h
lock.o: ../config.h
-lock.o: $(srcdir)/xscreensaver.h
lock.o: $(srcdir)/prefs.h
+lock.o: $(srcdir)/xscreensaver.h
passwd.o: ../config.h
+passwd-pwent.o: ../config.h
prefs.o: ../config.h
prefs.o: $(srcdir)/prefs.h
-dpms.o: ../config.h
-dpms.o: $(srcdir)/xscreensaver.h
-dpms.o: $(srcdir)/prefs.h
remote.o: ../config.h
remote.o: $(srcdir)/remote.h
-xscreensaver-command.o: ../config.h
-xscreensaver-command.o: $(srcdir)/remote.h
+setuid.o: ../config.h
+setuid.o: $(srcdir)/prefs.h
+setuid.o: $(srcdir)/xscreensaver.h
+splash.o: ../config.h
+splash.o: $(srcdir)/prefs.h
+splash.o: $(srcdir)/xscreensaver.h
+stderr.o: ../config.h
+stderr.o: $(srcdir)/prefs.h
+stderr.o: $(srcdir)/xscreensaver.h
+subprocs.o: ../config.h
+subprocs.o: $(srcdir)/prefs.h
+subprocs.o: $(srcdir)/xscreensaver.h
+test-apm.o: ../config.h
+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)/xscreensaver.h
test-passwd.o: $(srcdir)/prefs.h
-test-passwd.o: XScreenSaver_ad.h
+test-passwd.o: $(srcdir)/xscreensaver.h
test-uid.o: ../config.h
test-xdpms.o: ../config.h
-test-grab.o: ../config.h
-test-apm.o: ../config.h
-test-fade.o: ../config.h
-test-fade.o: $(srcdir)/xscreensaver.h
-test-fade.o: $(srcdir)/prefs.h
+timers.o: ../config.h
+timers.o: $(srcdir)/prefs.h
+timers.o: $(srcdir)/xscreensaver.h
+windows.o: ../config.h
+windows.o: $(srcdir)/prefs.h
+windows.o: $(srcdir)/xscreensaver.h
+xscreensaver-command.o: ../config.h
+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: $(srcdir)/xscreensaver.h
+xset.o: ../config.h
+xset.o: $(srcdir)/prefs.h
+xset.o: $(srcdir)/xscreensaver.h