1 # driver/Makefile.in --- xscreensaver, Copyright (c) 1997-1999 Jamie Zawinski.
2 # the `../configure' script generates `driver/Makefile' from this file.
10 top_srcdir = @top_srcdir@
15 exec_prefix = @exec_prefix@
18 man1dir = $(mandir)/man1
21 localedir = $(datadir)/locale
23 INTLTOOL_MERGE = @INTLTOOL_MERGE@
25 GNOME_DATADIR = @GNOME_DATADIR@
26 GNOME_CCDIR = $(GNOME_DATADIR)/control-center/Desktop
27 GNOME_PANELDIR1 = $(GNOME_DATADIR)/gnome/apps/Settings/Desktop
28 GNOME_PANELDIR2 = $(GNOME_DATADIR)/applications
29 GNOME_PANELDIR = @GNOME_PANELDIR@
30 GLADE_DATADIR = @GLADE_DATADIR@
31 GNOME_BINDIR = $(bindir)
32 HACK_CONF_DIR = @HACK_CONF_DIR@
38 INTL_DEFS = -DLOCALEDIR=\"$(localedir)\"
39 SUBP_DEFS = $(DEFS) -DDEFAULT_PATH_PREFIX='"@HACKDIR@"'
40 GTK_DEFS = $(DEFS) -DDEFAULT_ICONDIR='"$(GLADE_DATADIR)"'
41 CONF_DEFS = -DHACK_CONFIGURATION_PATH='"$(HACK_CONF_DIR)"'
44 INTL_LIBS = @INTLLIBS@
48 DEPEND_FLAGS = @DEPEND_FLAGS@
49 DEPEND_DEFINES = @DEPEND_DEFINES@
53 SUID_FLAGS = -o root -m 4755
54 INSTALL_PROGRAM = @INSTALL_PROGRAM@
55 INSTALL_SCRIPT = @INSTALL_SCRIPT@
56 INSTALL_SETUID = @INSTALL_SETUID@
57 INSTALL_DATA = @INSTALL_DATA@
58 INSTALL_DIRS = @INSTALL_DIRS@
62 X_PRE_LIBS = @X_PRE_LIBS@
63 X_EXTRA_LIBS = @X_EXTRA_LIBS@
69 # X_LIBS would more properly be called X_LDFLAGS (it contains the -L args.)
70 # X_PRE_LIBS contains extra libraries you have to link against on some systems,
71 # and that must come before -lX11. (e.g., -lSM and -lICE.)
72 # X_EXTRA_LIBS contains extra libraries needed by X that aren't a part of X.
73 # (e.g., -lsocket, -lnsl, etc.)
75 # I think (but am not totally sure) that LIBS is also really "LDFLAGS".
77 # SAVER_LIBS is the link line for "xscreensaver", and
78 # CMD_LIBS is the link line for "xscreensaver-command".
79 # GETIMG_LIBS is the link line for "xscreensaver-getimage".
82 AD_DIR = @APPDEFAULTS@
84 PAM_CONF = /etc/pam.conf
86 UTILS_SRC = $(srcdir)/../utils
89 INCLUDES = -I. -I$(srcdir) -I$(UTILS_SRC) -I.. @INCLUDES@
91 MOTIF_SRCS = demo-Xm.c demo-Xm-widgets.c
92 MOTIF_OBJS = demo-Xm.o demo-Xm-widgets.o
94 GTK_SRCS = demo-Gtk.c demo-Gtk-conf.c \
95 demo-Gtk-widgets.c demo-Gtk-support.c
96 GTK_EXTRA_OBJS = demo-Gtk-widgets.o demo-Gtk-support.o
97 GTK_OBJS = demo-Gtk.o demo-Gtk-conf.o @GTK_EXTRA_OBJS@
99 PWENT_SRCS = passwd-pwent.c
100 PWENT_OBJS = passwd-pwent.o
102 KERBEROS_SRCS = passwd-kerberos.c
103 KERBEROS_OBJS = passwd-kerberos.o
105 PAM_SRCS = passwd-pam.c
106 PAM_OBJS = passwd-pam.o
108 LOCK_SRCS_1 = lock.c passwd.c
109 LOCK_OBJS_1 = lock.o passwd.o
110 NOLOCK_SRCS_1 = lock.c
111 NOLOCK_OBJS_1 = lock.o
113 TEST_SRCS = test-passwd.c test-uid.c test-xdpms.c test-grab.c \
114 test-apm.c test-fade.c xdpyinfo.c
115 TEST_EXES = test-passwd test-uid test-xdpms test-grab \
116 test-apm test-fade xdpyinfo
118 MOTIF_LIBS = @MOTIF_LIBS@ @XPM_LIBS@ $(XMU_LIBS)
119 GTK_LIBS = @GTK_LIBS@ $(XMU_LIBS)
120 XML_LIBS = @XML_LIBS@
122 XDPMS_LIBS = @XDPMS_LIBS@
124 PASSWD_SRCS = @PASSWD_SRCS@
125 PASSWD_OBJS = @PASSWD_OBJS@
126 PASSWD_LIBS = @PASSWD_LIBS@
128 LOCK_SRCS = @LOCK_SRCS@
129 LOCK_OBJS = @LOCK_OBJS@
131 XMU_SRCS = @XMU_SRCS@
132 XMU_OBJS = @XMU_OBJS@
134 GL_SRCS = @SAVER_GL_SRCS@
135 GL_OBJS = @SAVER_GL_OBJS@
136 GL_LIBS = @SAVER_GL_LIBS@
138 ICON_SRC = $(UTILS_SRC)/images
139 LOGO = $(ICON_SRC)/logo-50.xpm
140 GTK_ICONS = $(ICON_SRC)/screensaver-*.xpm
142 DEMO_UTIL_SRCS = $(UTILS_SRC)/resources.c $(UTILS_SRC)/usleep.c \
143 $(UTILS_SRC)/visual.c
144 DEMO_UTIL_OBJS = $(UTILS_BIN)/resources.o $(UTILS_BIN)/usleep.o \
145 $(UTILS_BIN)/visual.o
147 SAVER_UTIL_SRCS = $(UTILS_SRC)/fade.c $(UTILS_SRC)/overlay.c \
148 $(UTILS_SRC)/logo.c $(UTILS_SRC)/yarandom.c \
150 SAVER_UTIL_OBJS = $(UTILS_BIN)/fade.o $(UTILS_BIN)/overlay.o \
151 $(UTILS_BIN)/logo.o $(UTILS_BIN)/yarandom.o \
154 GETIMG_SRCS_1 = xscreensaver-getimage.c
155 GETIMG_OBJS_1 = xscreensaver-getimage.o
157 GETIMG_SRCS = $(GETIMG_SRCS_1) \
158 $(UTILS_SRC)/colorbars.o $(UTILS_SRC)/resources.o \
159 $(UTILS_SRC)/yarandom.o $(UTILS_SRC)/visual.o \
160 $(UTILS_SRC)/usleep.o $(UTILS_SRC)/hsv.o \
161 $(UTILS_SRC)/colors.o $(UTILS_SRC)/grabscreen.o \
162 $(UTILS_SRC)/logo.o prefs.o $(XMU_SRCS)
164 GETIMG_OBJS = $(GETIMG_OBJS_1) \
165 $(UTILS_BIN)/colorbars.o $(UTILS_BIN)/resources.o \
166 $(UTILS_BIN)/yarandom.o $(UTILS_BIN)/visual.o \
167 $(UTILS_BIN)/usleep.o $(UTILS_BIN)/hsv.o \
168 $(UTILS_BIN)/colors.o $(UTILS_BIN)/grabscreen.o \
169 $(UTILS_BIN)/logo.o prefs.o $(XMU_OBJS)
171 SAVER_SRCS_1 = xscreensaver.c windows.c timers.c subprocs.c exec.c \
172 xset.c splash.c setuid.c stderr.c
173 SAVER_OBJS_1 = xscreensaver.o windows.o timers.o subprocs.o exec.o \
174 xset.o splash.o setuid.o stderr.o
176 SAVER_SRCS = $(SAVER_SRCS_1) prefs.c dpms.c $(LOCK_SRCS) \
177 $(SAVER_UTIL_SRCS) $(GL_SRCS) $(XMU_SRCS)
178 SAVER_OBJS = $(SAVER_OBJS_1) prefs.o dpms.o $(LOCK_OBJS) \
179 $(SAVER_UTIL_OBJS) $(GL_OBJS) $(XMU_OBJS)
181 CMD_SRCS = remote.c xscreensaver-command.c
182 CMD_OBJS = remote.o xscreensaver-command.o
184 DEMO_SRCS_1 = prefs.c dpms.c $(XMU_SRCS)
185 DEMO_OBJS_1 = prefs.o dpms.o $(XMU_OBJS)
187 DEMO_SRCS = prefs.c dpms.c remote.c exec.c $(DEMO_UTIL_SRCS)
188 DEMO_OBJS = prefs.o dpms.o remote.o exec.o $(DEMO_UTIL_OBJS)
190 SAVER_LIBS = $(LIBS) $(X_LIBS) $(XMU_LIBS) @SAVER_LIBS@ \
191 $(XDPMS_LIBS) $(GL_LIBS) $(X_PRE_LIBS) \
192 -lXt -lX11 -lXext $(X_EXTRA_LIBS) \
195 CMD_LIBS = $(LIBS) $(X_LIBS) \
196 $(X_PRE_LIBS) -lX11 -lXext $(X_EXTRA_LIBS)
198 GETIMG_LIBS = $(LIBS) $(X_LIBS) $(XPM_LIBS) \
199 $(X_PRE_LIBS) -lXt -lX11 $(XMU_LIBS) -lXext $(X_EXTRA_LIBS)
201 EXES = xscreensaver xscreensaver-command xscreensaver-demo \
202 xscreensaver-getimage
203 EXES2 = @ALL_DEMO_PROGRAMS@
204 SCRIPTS = xscreensaver-getimage-file xscreensaver-getimage-video
206 HDRS = XScreenSaver_ad.h xscreensaver.h prefs.h remote.h \
207 demo-Gtk-widgets.h demo-Gtk-stubs.h demo-Gtk-support.h \
209 MEN = xscreensaver.man xscreensaver-demo.man \
210 xscreensaver-command.man \
211 xscreensaver-getimage.man \
212 xscreensaver-getimage-file.man \
213 xscreensaver-getimage-video.man
214 EXTRAS = README Makefile.in XScreenSaver.ad.in xscreensaver.pam \
215 xscreensaver.kss xscreensaver-demo.glade xscreensaver-demo.glade2 \
216 screensaver-properties.desktop.in \
217 screensaver-properties-capplet \
219 VMSFILES = compile_axp.com compile_decc.com link_axp.com link_decc.com \
220 vms-getpwnam.c vms-pwd.h vms-hpwd.c vms-validate.c \
221 vms_axp.opt vms_axp_12.opt vms_decc.opt vms_decc_12.opt
223 TARFILES = $(EXTRAS) $(VMSFILES) $(SAVER_SRCS_1) \
224 $(MOTIF_SRCS) $(GTK_SRCS) $(PWENT_SRCS) \
225 $(KERBEROS_SRCS) $(PAM_SRCS) $(LOCK_SRCS_1) $(DEMO_SRCS_1) \
226 $(CMD_SRCS) $(GETIMG_SRCS_1) $(HDRS) $(SCRIPTS) \
231 all: $(EXES) $(EXES2)
234 install: install-program install-ad install-scripts \
235 install-gnome install-kde install-man @INSTALL_PAM@
236 uninstall: uninstall-program uninstall-ad \
237 uninstall-gnome uninstall-kde uninstall-man
240 $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' \
243 install-program: $(EXES)
244 @if [ ! -d $(install_prefix)$(bindir) ]; then \
245 $(INSTALL_DIRS) $(install_prefix)$(bindir) ; \
247 @inst="$(INSTALL_PROGRAM)" ; \
248 if [ @NEED_SETUID@ = yes ]; then \
249 me=`PATH="$$PATH:/usr/ucb" whoami` ; \
250 if [ "$$me" = root ]; then \
251 inst="$(INSTALL_SETUID)" ; \
255 $$e " ####################################################################";\
256 $$e " Warning: xscreensaver has been compiled with support for shadow" ;\
257 $$e " passwords. If your system actually uses shadow passwords," ;\
258 $$e " then xscreensaver must be installed as a setuid root" ;\
259 $$e " program in order for locking to work. To do this, you" ;\
260 $$e " must run 'make install' as 'root', not as '$$me'." ;\
262 $$e " For now, xscreensaver will be installed non-setuid, which" ;\
263 $$e " means that locking might not work. (Try it and see.)" ;\
264 $$e " ####################################################################";\
268 echo $$inst xscreensaver $(install_prefix)$(bindir)/xscreensaver ; \
269 $$inst xscreensaver $(install_prefix)$(bindir)/xscreensaver
270 @echo $(INSTALL_PROGRAM) xscreensaver-command \
271 $(install_prefix)$(bindir)/xscreensaver-command ; \
272 $(INSTALL_PROGRAM) xscreensaver-command \
273 $(install_prefix)$(bindir)/xscreensaver-command
274 @echo $(INSTALL_PROGRAM) xscreensaver-demo \
275 $(install_prefix)$(bindir)/xscreensaver-demo ; \
276 $(INSTALL_PROGRAM) xscreensaver-demo \
277 $(install_prefix)$(bindir)/xscreensaver-demo
278 @echo $(INSTALL_PROGRAM) xscreensaver-getimage \
279 $(install_prefix)$(bindir)/xscreensaver-getimage ; \
280 $(INSTALL_PROGRAM) xscreensaver-getimage \
281 $(install_prefix)$(bindir)/xscreensaver-getimage
283 install-ad: XScreenSaver.ad
284 @if [ ! -d $(install_prefix)$(AD_DIR) ]; then \
285 $(INSTALL_DIRS) $(install_prefix)$(AD_DIR) ; \
287 @-echo $(INSTALL_DATA) XScreenSaver.ad \
288 $(install_prefix)$(AD_DIR)/XScreenSaver ; \
289 if $(INSTALL_DATA) XScreenSaver.ad \
290 $(install_prefix)$(AD_DIR)/XScreenSaver ; then \
294 if [ -f $(install_prefix)$(AD_DIR)/XScreenSaver ]; then \
296 $$e " ####################################################################";\
297 $$e " Warning: unable to install $(install_prefix)$(AD_DIR)/XScreenSaver" ;\
298 $$e " That file exists, and is unwritable. It is probably from" ;\
299 $$e " an older version of xscreensaver, and could cause things" ;\
300 $$e " to malfunction. Please delete it!" ;\
301 $$e " ####################################################################";\
306 $$e " ####################################################################";\
307 $$e " Warning: unable to install $(install_prefix)$(AD_DIR)/XScreenSaver" ;\
308 $$e " The directory is unwritable. This is probably ok;" ;\
309 $$e " xscreensaver should work without that file." ;\
310 $$e " ####################################################################";\
316 install-scripts: $(SCRIPTS) munge-scripts
317 @for program in $(SCRIPTS); do \
318 if [ -r $$program ] ; then \
321 p=$(srcdir)/$$program ; \
323 echo $(INSTALL_SCRIPT) $$p \
324 $(install_prefix)$(bindir)/$$program ; \
325 $(INSTALL_SCRIPT) $$p \
326 $(install_prefix)$(bindir)/$$program ; \
329 munge-scripts: $(SCRIPTS)
330 @tmp=/tmp/mf.$$$$ ; \
333 for program in $(SCRIPTS); do \
334 echo "adjusting location of perl in $$program..." ; \
335 sed "s@^\(#!\)\(/[^ ]*/perl[^ ]*\)\(.*\)\$$@\1$$perl\3@" \
336 < $(srcdir)/$$program > $$tmp ; \
337 if cmp -s $(srcdir)/$$program $$tmp ; then \
340 cat $$tmp > ./$$program ; \
347 if [ ! -d $(install_prefix)$(man1dir) ]; then \
348 $(INSTALL_DIRS) $(install_prefix)$(man1dir) ; \
350 for man in $$men; do \
351 instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ; \
352 echo $(INSTALL_DATA) $(srcdir)/$$man \
353 $(install_prefix)$(man1dir)/$$instname ; \
354 $(INSTALL_DATA) $(srcdir)/$$man \
355 $(install_prefix)$(man1dir)/$$instname ; \
359 @for program in $(EXES) $(SCRIPTS); do \
360 echo rm -f $(install_prefix)$(bindir)/$$program ; \
361 rm -f $(install_prefix)$(bindir)/$$program ; \
365 rm -f $(install_prefix)$(AD_DIR)/XScreenSaver
369 for man in $$men; do \
370 instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ; \
371 echo rm -f $(install_prefix)$(man1dir)/$$instname ; \
372 rm -f $(install_prefix)$(man1dir)/$$instname ; \
376 @src="$(srcdir)/xscreensaver.pam" ; \
377 dest=`sed -n 's/.*PAM_SERVICE_NAME[ ]*"\([^"]*\)".*$$/\1/p' \
379 dir="$(install_prefix)$(PAM_DIR)" ; \
380 conf="$(PAM_CONF)" ; \
382 if [ -d $$dir ] ; then \
384 if [ -f $$dir/xdm ]; then \
386 elif [ -f $$dir/login ]; then \
390 if [ -z "$$src2" ]; then \
391 echo $(INSTALL_DATA) $$src $$dir/$$dest ; \
392 $(INSTALL_DATA) $$src $$dir/$$dest ; \
394 src="xscreensaver.pam.$$$$" ; \
395 echo "grep '^#%\|^auth' $$src2 > $$src" ; \
396 grep '^#%\|^auth' $$src2 > $$src ; \
397 echo $(INSTALL_DATA) $$src $$dir/$$dest ; \
398 $(INSTALL_DATA) $$src $$dir/$$dest ; \
403 if [ ! -f $$dir/$$dest ]; then \
406 $$e " ####################################################################";\
407 $$e " Warning: xscreensaver has been compiled with support for Pluggable" ;\
408 $$e " Authentication Modules (PAM). However, we were unable to" ;\
409 $$e " install the file $$dir/$$dest. PAM is unlikely" ;\
410 $$e " to work without this file (and old-style password" ;\
411 $$e " authentication will be used instead, which may or may not" ;\
413 $$e " ####################################################################";\
416 elif [ -f $$conf ]; then \
417 if ( grep $$dest $$conf >/dev/null ); then \
422 $$e " ####################################################################";\
423 $$e " Warning: xscreensaver has been compiled with support for Pluggable" ;\
424 $$e " Authentication Modules (PAM). To complete the installation";\
425 $$e " of PAM support, you must add the following line to the file";\
428 $$e " $$dest auth required /usr/lib/security/pam_unix.so.1" ;\
430 $$e " Be careful: if you mess up that file, you could completely" ;\
431 $$e " hose your machine (e.g., \`login' and \`su' won't work, and";\
432 $$e " you'll have to boot single-user to fix it.)" ;\
433 $$e " ####################################################################";\
438 install-gnome:: screensaver-properties.desktop
440 if [ "$(GNOME_DATADIR)" != "" ]; then \
442 if [ ! -d "$(install_prefix)$(GNOME_CCDIR)" ]; then \
443 echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_CCDIR)" ;\
444 $(INSTALL_DIRS) "$(install_prefix)$(GNOME_CCDIR)" ;\
447 echo $(INSTALL_DATA) screensaver-properties.desktop \
448 $(install_prefix)$(GNOME_CCDIR)/screensaver-properties.desktop; \
450 if $(INSTALL_DATA) screensaver-properties.desktop \
451 $(install_prefix)$(GNOME_CCDIR)/screensaver-properties.desktop; \
454 lost="$$lost $(install_prefix)$(GNOME_CCDIR)" ;\
457 if [ ! -d "$(install_prefix)$(GNOME_PANELDIR)" ]; then \
458 echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_PANELDIR)" ;\
459 $(INSTALL_DIRS) "$(install_prefix)$(GNOME_PANELDIR)" ;\
462 echo $(INSTALL_DATA) screensaver-properties.desktop \
463 $(GNOME_PANELDIR)/screensaver-properties.desktop ;\
464 if $(INSTALL_DATA) screensaver-properties.desktop \
465 $(install_prefix)$(GNOME_PANELDIR)/screensaver-properties.desktop ;\
468 lost="$$lost $(install_prefix)$(GNOME_PANELDIR)" ;\
471 if [ "$$lost" != "" ]; then \
474 $$e " ####################################################################";\
475 $$e " Warning: unable to install screensaver-properties.desktop into:" ;\
477 for f in $$@ ; do echo " $$f/" ; done ;\
478 $$e ' This means the "Screen Saver" section of the Gnome' ;\
479 $$e " Control Center (gnomecc) may not work properly." ;\
480 $$e " ####################################################################";\
486 install-gnome:: screensaver-properties-capplet
487 @if [ "$(GNOME_DATADIR)" != "" ]; then \
488 if [ ! -d "$(install_prefix)$(GNOME_BINDIR)" ]; then \
489 echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_BINDIR)" ;\
490 $(INSTALL_DIRS) "$(install_prefix)$(GNOME_BINDIR)" ;\
492 program=screensaver-properties-capplet ;\
493 echo $(INSTALL_SCRIPT) $(srcdir)/$$program \
494 $(install_prefix)$(GNOME_BINDIR)/$$program ;\
495 if $(INSTALL_SCRIPT) $(srcdir)/$$program \
496 $(install_prefix)$(GNOME_BINDIR)/$$program ;\
501 $$e " ####################################################################";\
502 $$e " Warning: unable to install $$program into" ;\
503 $$e " $(install_prefix)$(GNOME_BINDIR)/." ;\
504 $$e " Without this file, the Gnome session manager will not" ;\
505 $$e " launch xscreensaver properly at login time." ;\
506 $$e " ####################################################################";\
513 install-gnome:: $(LOGO)
514 @if [ "$(GLADE_DATADIR)" != "" ]; then \
515 if [ ! -d "$(install_prefix)$(GLADE_DATADIR)" ]; then \
516 echo $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)" ;\
517 $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)" ;\
519 target=xscreensaver.xpm ;\
520 echo $(INSTALL_DATA) $(LOGO) \
521 $(install_prefix)$(GLADE_DATADIR)/$$target ;\
522 $(INSTALL_DATA) $(LOGO) \
523 $(install_prefix)$(GLADE_DATADIR)/$$target ;\
526 # ../utils/images/screensaver-*.xpm
528 @if [ "$(GLADE_DATADIR)" != "" ]; then \
529 if [ ! -d "$(install_prefix)$(GLADE_DATADIR)" ]; then \
530 echo $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)" ;\
531 $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)" ;\
533 for target in $(GTK_ICONS) ; do \
534 dest=`echo $$target | sed 's@^.*/@@'` ;\
535 echo $(INSTALL_DATA) $$target \
536 $(install_prefix)$(GLADE_DATADIR)/$$dest ;\
537 $(INSTALL_DATA) $$target \
538 $(install_prefix)$(GLADE_DATADIR)/$$dest ;\
542 # xscreensaver-demo.glade2
543 install-gnome:: xscreensaver-demo.glade2
544 @if [ "$(GLADE_DATADIR)" != "" ]; then \
545 if [ ! -d "$(install_prefix)$(GLADE_DATADIR)" ]; then \
546 echo $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)" ;\
547 $(INSTALL_DIRS) "$(install_prefix)$(GLADE_DATADIR)" ;\
549 target=xscreensaver-demo.glade2 ;\
550 echo $(INSTALL_DATA) $(srcdir)/$$target \
551 $(install_prefix)$(GLADE_DATADIR)/$$target ;\
552 if $(INSTALL_DATA) $(srcdir)/$$target \
553 $(install_prefix)$(GLADE_DATADIR)/$$target ;\
558 $$e " ####################################################################";\
559 $$e " Warning: unable to install $$target into" ;\
560 $$e " $(install_prefix)$(GLADE_DATADIR)/." ;\
561 $$e " Without this file, xscreensaver-demo will not" ;\
562 $$e " be able to run properly." ;\
563 $$e " ####################################################################";\
570 # screensaver-properties.desktop
572 @if [ "$(GNOME_DATADIR)" != "" ]; then \
573 f=screensaver-properties.desktop ;\
574 echo rm -f $(install_prefix)$(GNOME_CCDIR)/$$f ;\
575 rm -f $(install_prefix)$(GNOME_CCDIR)/$$f ;\
576 echo rm -f $(install_prefix)$(GNOME_PANELDIR)/$$f ;\
577 rm -f $(install_prefix)$(GNOME_PANELDIR)/$$f ;\
580 # screensaver-properties-capplet
582 @if [ "$(GNOME_DATADIR)" != "" ]; then \
583 program=screensaver-properties-capplet ;\
584 echo rm -f $(install_prefix)$(bindir)/$$program ;\
585 rm -f $(install_prefix)$(bindir)/$$program ;\
590 @if [ "$(GLADE_DATADIR)" != "" ]; then \
591 target=xscreensaver.xpm ;\
592 echo rm -f $(install_prefix)$(GLADE_DATADIR)/$$target ;\
593 rm -f $(install_prefix)$(GLADE_DATADIR)/$$target ;\
598 @if [ "$(GLADE_DATADIR)" != "" ]; then \
599 for target in $(GTK_ICONS) ; do \
600 dest=`echo $$target | sed 's@^.*/@@'` ;\
601 echo rm -f $(install_prefix)$(GLADE_DATADIR)/$$dest ;\
602 rm -f $(install_prefix)$(GLADE_DATADIR)/$$dest ;\
607 @src="$(srcdir)/xscreensaver.kss" ; \
608 if [ "$$KDEDIR" != "" ]; then \
609 dir="$(install_prefix)$$KDEDIR/bin" ; \
610 dest="$$dir/xscreensaver.kss" ; \
611 echo $(INSTALL_SCRIPT) $$src $$dest ; \
612 if $(INSTALL_SCRIPT) $$src $$dest ; then \
617 $$e " ####################################################################";\
618 $$e " Warning: unable to install $$dest" ;\
619 if [ ! -d $(install_prefix)$$KDEDIR ]; then \
620 $$e " $(install_prefix)$$KDEDIR (\$$KDEDIR) does not exist." ;\
621 elif [ ! -d $(install_prefix)$$KDEDIR/bin ]; then \
622 $$e " $(install_prefix)$$KDEDIR/bin (\$$KDEDIR/bin) does not exist.";\
623 elif [ -f $$dest ]; then \
624 $$e " That file exists, and is unwritable." ;\
626 $$e " The directory is unwritable." ;\
628 $$e " ####################################################################";\
635 @if [ "$$KDEDIR" != "" ]; then \
636 dest="$(install_prefix)$$KDEDIR/bin/xscreensaver.kss" ; \
637 echo rm -f $$dest ; \
642 -rm -f *.o a.out core $(EXES) $(EXES2) $(TEST_EXES) XScreenSaver_ad.h
645 -rm -f Makefile XScreenSaver.ad TAGS *~ "#"* screensaver-properties.desktop
647 # Adds all current dependencies to Makefile
648 depend: XScreenSaver_ad.h
649 $(DEPEND) -s '# DO NOT DELETE: updated by make depend' \
651 $(INCLUDES) $(DEFS) $(DEPEND_DEFINES) $(CFLAGS) $(X_CFLAGS) -- \
652 $(SAVER_SRCS) $(CMD_SRCS) $(GETIMG_SRCS_1)
654 # Adds some dependencies to Makefile.in -- not totally accurate, but pretty
655 # close. This excludes dependencies on files in /usr/include, etc. It tries
656 # to include only dependencies on files which are themselves a part of this
658 distdepend: check_men update_ad_version update_man_version XScreenSaver_ad.h
659 @echo updating dependencies in `pwd`/Makefile.in... ; \
660 $(DEPEND) -w 0 -f - \
661 -s '# DO NOT DELETE: updated by make distdepend' $(DEPEND_FLAGS) -- \
662 $(INCLUDES) -I$(ICON_SRC) $(DEFS) $(DEPEND_DEFINES) \
663 $(CFLAGS) $(X_CFLAGS) -- \
664 $(SAVER_SRCS_1) $(MOTIF_SRCS) $(GTK_SRCS) $(GETIMG_SRCS_1) \
665 $(PWENT_SRCS) $(LOCK_SRCS_1) $(DEMO_SRCS_1) $(CMD_SRCS) \
666 $(TEST_SRCS) 2>/dev/null | \
669 awk '/^# .*Makefile.in ---/,/^# DO .*distdepend/' < Makefile.in ; \
671 -e 's@ \./@ @g;s@ /[^ ]*@@g;/^.*:$$/d' \
672 -e 's@\.\./utils@$$(UTILS_SRC)@g' \
673 -e 's@ \([^$$]\)@ $$(srcdir)/\1@g' \
674 -e 's@$$.*\(XScreenSaver_ad\)@\1@g' \
675 -e 's@ $$(srcdir)/\(.*config\.h\)@ \1@g' ; \
677 ) > /tmp/distdepend.$$$$ && \
678 mv Makefile.in Makefile.in.bak && \
679 mv /tmp/distdepend.$$$$ Makefile.in
681 # Updates the version number in the app-defaults file to be in sync with
682 # the version number in version.h. This is so people can tell when they
683 # have a version skew between the app-defaults file and the executable.
684 # Also update hacks/config/README in the same way.
686 @files="XScreenSaver.ad.in ../hacks/config/README" ; \
687 U=$(UTILS_SRC)/version.h ; \
688 V=`sed -n 's/.*\([0-9][0-9]*\.[0-9]*\).*/\1/p' < $$U` ; \
689 D=`date '+%d-%b-%Y'` ; \
690 for S in $$files ; do \
691 echo -n "Updating $$S to $$V $$D... " ; \
693 sed -e "s/\(.*version \)[0-9][0-9]*\.[0-9]*\(.*\)/\1$$V\2/" \
694 -e "s/\([0-9][0-9]-[A-Z][a-z][a-z]-[0-9][0-9][0-9]*\)/$$D/" \
696 if cmp -s $$S $$T ; then \
697 echo "unchanged." ; \
706 @for S in $(MEN); do \
707 U=$(UTILS_SRC)/version.h ; \
708 V=`sed -n 's/.*\([0-9][0-9]*\.[0-9]*\).*/\1/p' < $$U` ; \
709 V="`date '+%d-%b-%Y'` ($$V)" ; \
710 echo -n "Updating $$S to \"$$V\"... " ; \
712 sed "s/^\(\.TH[^\"]*\)\"[^\"]*\"\(.*\)/\1\"$$V\"\2/" \
714 if cmp -s $$S $$T ; then \
715 echo "unchanged." ; \
725 find $(srcdir) -name '*.[chly]' -print | xargs etags -a
728 @$(MAKE) XScreenSaver_ad.h 2>&1 >&- /dev/null
733 for exe in $(EXES); do \
734 if ! [ -f $(srcdir)/$$exe.man ]; then \
735 badmen="$$badmen $$exe" ; \
738 if [ -n "$$badmen" ]; then \
740 echo "Warning: The following programs have no manuals:" ; \
742 for m in $$badmen ; do \
749 # Rules for noticing when the objects from the utils directory are out of
750 # date with respect to their sources, and going and building them according
751 # to the rules in their own Makefile...
753 $(UTILS_BIN)/fade.o: $(UTILS_SRC)/fade.c
754 $(UTILS_BIN)/overlay.o: $(UTILS_SRC)/overlay.c
755 $(UTILS_BIN)/resources.o: $(UTILS_SRC)/resources.c
756 $(UTILS_BIN)/usleep.o: $(UTILS_SRC)/usleep.c
757 $(UTILS_BIN)/visual.o: $(UTILS_SRC)/visual.c
758 $(UTILS_BIN)/xmu.o: $(UTILS_SRC)/xmu.c
759 $(UTILS_BIN)/logo.o: $(UTILS_SRC)/logo.c
760 $(UTILS_BIN)/yarandom.o: $(UTILS_SRC)/yarandom.c
761 $(UTILS_BIN)/colorbars.o: $(UTILS_SRC)/colorbars.c
765 $(MAKE) $(@F) CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
767 # How we build object files in this directory.
769 $(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $(X_CFLAGS) $<
771 # subprocs takes an extra -D option.
772 subprocs.o: subprocs.c
773 $(CC) -c $(INCLUDES) $(SUBP_DEFS) $(CFLAGS) $(X_CFLAGS) \
776 # demo-Gtk takes extra -D options, and an extra -I option.
777 demo-Gtk.o: demo-Gtk.c
778 $(CC) -c $(INCLUDES) $(SUBP_DEFS) -I$(ICON_SRC) \
779 $(GTK_DEFS) $(INTL_DEFS) $(CFLAGS) $(X_CFLAGS) \
782 # demo-Gtk-conf takes an extra -D option.
783 demo-Gtk-conf.o: demo-Gtk-conf.c
784 $(CC) -c $(INCLUDES) $(CONF_DEFS) $(GTK_DEFS) $(CFLAGS) $(X_CFLAGS) \
785 $(srcdir)/demo-Gtk-conf.c
788 # How we build the default app-defaults file into the program.
790 XScreenSaver_ad.h: XScreenSaver.ad
791 $(SHELL) $(UTILS_SRC)/ad2c XScreenSaver.ad > XScreenSaver_ad.h
793 @INTLTOOL_DESKTOP_RULE@
795 # The executables linked in this directory.
797 xscreensaver: $(SAVER_OBJS)
798 $(CC) $(LDFLAGS) -o $@ $(SAVER_OBJS) $(SAVER_LIBS)
800 xscreensaver-command: $(CMD_OBJS)
801 $(CC) $(LDFLAGS) -o $@ $(CMD_OBJS) $(CMD_LIBS)
804 xscreensaver-demo: @PREFERRED_DEMO_PROGRAM@
805 cp -p @PREFERRED_DEMO_PROGRAM@@EXEEXT@ $@@EXEEXT@
806 # $(INSTALL_PROGRAM) @PREFERRED_DEMO_PROGRAM@ $@
808 xscreensaver-demo-Xm: $(DEMO_OBJS) $(MOTIF_OBJS)
809 $(CC) $(LDFLAGS) -o $@ $(DEMO_OBJS) $(MOTIF_OBJS) $(LIBS) $(X_LIBS) \
810 $(MOTIF_LIBS) $(INTL_LIBS) $(X_PRE_LIBS) -lXt -lX11 \
811 $(XDPMS_LIBS) -lXext $(X_EXTRA_LIBS)
813 xscreensaver-demo-Gtk: $(DEMO_OBJS) $(GTK_OBJS)
814 $(CC) $(LDFLAGS) -o $@ $(DEMO_OBJS) $(GTK_OBJS) $(LIBS) $(X_LIBS) \
815 $(GTK_LIBS) $(XML_LIBS) $(INTL_LIBS) $(X_PRE_LIBS) -lXt -lX11 \
816 $(XDPMS_LIBS) -lXext $(X_EXTRA_LIBS)
818 xscreensaver-getimage: $(GETIMG_OBJS)
819 $(CC) $(LDFLAGS) -o $@ $(GETIMG_OBJS) $(GETIMG_LIBS) -lm
822 TEST_PASSWD_OBJS = test-passwd.o $(LOCK_OBJS_1) $(PASSWD_OBJS) \
823 subprocs.o setuid.o splash.o prefs.o \
825 test-passwd.o: XScreenSaver_ad.h
827 test-passwd: $(TEST_PASSWD_OBJS) XScreenSaver_ad.h
828 $(CC) $(LDFLAGS) -o $@ $(TEST_PASSWD_OBJS) $(SAVER_LIBS)
831 $(CC) $(LDFLAGS) -o $@ test-uid.o
833 test-xdpms: test-xdpms.o
834 $(CC) $(LDFLAGS) -o $@ test-xdpms.o $(LIBS) $(X_LIBS) $(XDPMS_LIBS) \
835 $(X_PRE_LIBS) -lXt -lX11 -lXext $(X_EXTRA_LIBS)
837 test-grab: test-grab.o
838 $(CC) $(LDFLAGS) -o $@ test-grab.o $(SAVER_LIBS)
841 $(CC) $(LDFLAGS) -o $@ test-apm.o $(SAVER_LIBS) -lapm
843 TEST_FADE_OBJS = test-fade.o $(UTILS_SRC)/fade.o $(DEMO_UTIL_OBJS)
844 test-fade: test-fade.o $(UTILS_BIN)/fade.o
845 $(CC) $(LDFLAGS) -o $@ $(TEST_FADE_OBJS) $(SAVER_LIBS)
848 xdpyinfo.o: xdpyinfo.c
849 $(CC) -c $(INCLUDES) -DHAVE_GLX $(CFLAGS) $(X_CFLAGS) \
853 $(CC) $(LDFLAGS) -o $@ xdpyinfo.o \
854 $(LIBS) $(X_LIBS) @GL_LIBS@ \
855 $(X_PRE_LIBS) -lX11 -lXext $(X_EXTRA_LIBS) -lm
858 ##############################################################################
860 # DO NOT DELETE: updated by make distdepend
862 demo-Gtk-conf.o: ../config.h
863 demo-Gtk-conf.o: $(srcdir)/demo-Gtk-conf.h
864 demo-Gtk.o: XScreenSaver_ad.h
865 demo-Gtk.o: ../config.h
866 demo-Gtk.o: $(srcdir)/demo-Gtk-conf.h
867 demo-Gtk.o: $(srcdir)/demo-Gtk-support.h
868 demo-Gtk.o: $(srcdir)/demo-Gtk-widgets.h
869 demo-Gtk.o: $(srcdir)/prefs.h
870 demo-Gtk.o: $(srcdir)/remote.h
871 demo-Gtk-support.o: ../config.h
872 demo-Gtk-support.o: $(srcdir)/demo-Gtk-support.h
873 demo-Gtk-widgets.o: ../config.h
874 demo-Gtk-widgets.o: $(srcdir)/demo-Gtk-stubs.h
875 demo-Gtk-widgets.o: $(srcdir)/demo-Gtk-support.h
876 demo-Gtk-widgets.o: $(srcdir)/demo-Gtk-widgets.h
877 demo-Xm.o: XScreenSaver_ad.h
878 demo-Xm.o: ../config.h
879 demo-Xm.o: $(srcdir)/prefs.h
880 demo-Xm.o: $(srcdir)/remote.h
881 demo-Xm-widgets.o: ../config.h
883 dpms.o: $(srcdir)/prefs.h
884 dpms.o: $(srcdir)/xscreensaver.h
887 lock.o: $(srcdir)/prefs.h
888 lock.o: $(srcdir)/xscreensaver.h
889 passwd.o: ../config.h
890 passwd-pwent.o: ../config.h
892 prefs.o: $(srcdir)/prefs.h
893 remote.o: ../config.h
894 remote.o: $(srcdir)/remote.h
895 setuid.o: ../config.h
896 setuid.o: $(srcdir)/prefs.h
897 setuid.o: $(srcdir)/xscreensaver.h
898 splash.o: ../config.h
899 splash.o: $(srcdir)/prefs.h
900 splash.o: $(srcdir)/xscreensaver.h
901 stderr.o: ../config.h
902 stderr.o: $(srcdir)/prefs.h
903 stderr.o: $(srcdir)/xscreensaver.h
904 subprocs.o: ../config.h
905 subprocs.o: $(srcdir)/prefs.h
906 subprocs.o: $(srcdir)/xscreensaver.h
907 test-apm.o: ../config.h
908 test-fade.o: ../config.h
909 test-fade.o: $(srcdir)/prefs.h
910 test-fade.o: $(srcdir)/xscreensaver.h
911 test-grab.o: ../config.h
912 test-passwd.o: XScreenSaver_ad.h
913 test-passwd.o: ../config.h
914 test-passwd.o: $(srcdir)/prefs.h
915 test-passwd.o: $(srcdir)/xscreensaver.h
916 test-uid.o: ../config.h
917 test-xdpms.o: ../config.h
918 timers.o: ../config.h
919 timers.o: $(srcdir)/prefs.h
920 timers.o: $(srcdir)/xscreensaver.h
921 windows.o: ../config.h
922 windows.o: $(srcdir)/prefs.h
923 windows.o: $(srcdir)/xscreensaver.h
924 xscreensaver-command.o: ../config.h
925 xscreensaver-command.o: $(srcdir)/remote.h
926 xscreensaver-getimage.o: ../config.h
927 xscreensaver-getimage.o: XScreenSaver_ad.h
928 xscreensaver-getimage.o: $(srcdir)/prefs.h
929 xscreensaver.o: XScreenSaver_ad.h
930 xscreensaver.o: ../config.h
931 xscreensaver.o: $(srcdir)/prefs.h
932 xscreensaver.o: $(srcdir)/xscreensaver.h
934 xset.o: $(srcdir)/prefs.h
935 xset.o: $(srcdir)/xscreensaver.h