1 # driver/Makefile.in --- xscreensaver, Copyright (c) 1997 Jamie Zawinski.
2 # the `../configure' script generates `driver/Makefile' from this file.
13 exec_prefix = @exec_prefix@
16 man1dir = $(mandir)/man1
26 DEPEND_FLAGS = @DEPEND_FLAGS@
27 DEPEND_DEFINES = @DEPEND_DEFINES@
31 SUID_FLAGS = -o root -m 4755
32 INSTALL_PROGRAM = @INSTALL_PROGRAM@
33 INSTALL_SETUID = @INSTALL_SETUID@
34 INSTALL_DATA = @INSTALL_DATA@
38 X_PRE_LIBS = @X_PRE_LIBS@
39 X_EXTRA_LIBS = @X_EXTRA_LIBS@
41 XLIBS = $(X_PRE_LIBS) -lX11 -lXext $(X_EXTRA_LIBS)
43 AD_DIR = @APPDEFAULTS@
45 UTILS_SRC = $(srcdir)/../utils
48 INCLUDES = -I. -I$(srcdir) -I$(UTILS_SRC) -I.. @INCLUDES@
50 PASSWD_LIBS = @PASSWD_LIBS@
51 MOTIF_SRCS = dialogs-Xm.c
52 MOTIF_OBJS = dialogs-Xm.o
54 ATHENA_SRCS = dialogs-Xaw.c
55 ATHENA_OBJS = dialogs-Xaw.o
60 KERBEROS_SRCS = kpasswd.c
61 KERBEROS_OBJS = kpasswd.o
66 DIALOG_SRCS = @DIALOG_SRCS@
67 DIALOG_OBJS = @DIALOG_OBJS@
68 PASSWD_SRCS = @PASSWD_SRCS@
69 PASSWD_OBJS = @PASSWD_OBJS@
70 LOCK_SRCS = @LOCK_SRCS@
71 LOCK_OBJS = @LOCK_OBJS@
73 UTIL_SRCS = $(UTILS_SRC)/fade.c $(UTILS_SRC)/overlay.c \
74 $(UTILS_SRC)/resources.c $(UTILS_SRC)/usleep.c \
75 $(UTILS_SRC)/visual.c $(UTILS_SRC)/xroger.c \
76 $(UTILS_SRC)/spline.c \
77 $(UTILS_SRC)/yarandom.c @XMU_SRCS@
78 UTIL_OBJS = $(UTILS_BIN)/fade.o $(UTILS_BIN)/overlay.o \
79 $(UTILS_BIN)/resources.o $(UTILS_BIN)/usleep.o \
80 $(UTILS_BIN)/visual.o $(UTILS_BIN)/xroger.o \
81 $(UTILS_BIN)/spline.o \
82 $(UTILS_BIN)/yarandom.o @XMU_OBJS@
84 SAVER_SRCS_1 = demo.c stderr.c subprocs.c timers.c windows.c \
86 SAVER_OBJS_1 = demo.o stderr.o subprocs.o timers.o windows.o \
89 SAVER_SRCS = $(SAVER_SRCS_1) $(DIALOG_SRCS) $(LOCK_SRCS) $(UTIL_SRCS)
90 SAVER_OBJS = $(SAVER_OBJS_1) $(DIALOG_OBJS) $(LOCK_OBJS) $(UTIL_OBJS)
91 SAVER_LIBS = $(X_LIBS) @SAVER_LIBS@ -lXt $(XLIBS) $(PASSWD_LIBS) $(LIBS)
93 CMD_SRCS = xscreensaver-command.c
94 CMD_OBJS = xscreensaver-command.o
95 CMD_LIBS = $(X_LIBS) $(XLIBS) $(LIBS)
97 EXES = xscreensaver xscreensaver-command
99 HDRS = XScreenSaver_ad.h xscreensaver.h
100 MEN = xscreensaver.man xscreensaver-command.man
101 EXTRAS = README Makefile.in XScreenSaver.ad.in dialogs.xd .gdbinit
102 VMSFILES = compile_axp.com compile_decc.com link_axp.com link_decc.com \
103 vms-getpwnam.c vms-pwd.h vms-hpwd.c vms-validate.c \
104 vms_axp.opt vms_axp_12.opt vms_decc.opt vms_decc_12.opt
106 TARFILES = $(EXTRAS) $(VMSFILES) $(SAVER_SRCS_1) \
107 $(MOTIF_SRCS) $(ATHENA_SRCS) $(PWENT_SRCS) $(KERBEROS_SRCS) \
108 $(LOCK_SRCS_1) $(CMD_SRCS) $(HDRS) $(MEN)
113 install: install-program install-ad install-man
114 uninstall: uninstall-program uninstall-ad uninstall-man
117 $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' \
118 INSTALL_SETUID='$(INSTALL_SETUID) -s' \
122 @inst="$(INSTALL_PROGRAM)" ; \
123 if [ @NEED_SETUID@ = yes ]; then \
125 if [ "$$me" = root ]; then \
126 inst="$(INSTALL_SETUID)" ; \
130 $$e " Warning: xscreensaver has been compiled with support for shadow" ;\
131 $$e " passwords. If your system actually uses shadow passwords," ;\
132 $$e " then xscreensaver must be installed as a setuid root" ;\
133 $$e " program in order for locking to work. To do this, you" ;\
134 $$e " must run 'make install' as 'root', not as '$$me'." ;\
136 $$e " For now, xscreensaver will be installed non-setuid, which" ;\
137 $$e " means that locking might not work." ;\
141 echo $$inst xscreensaver $(bindir)/xscreensaver ; \
142 $$inst xscreensaver $(bindir)/xscreensaver
143 $(INSTALL_PROGRAM) xscreensaver-command $(bindir)/xscreensaver-command
146 $(INSTALL_DATA) XScreenSaver.ad $(AD_DIR)/XScreenSaver
150 for man in $$men; do \
151 instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ; \
152 echo $(INSTALL_DATA) $(srcdir)/$$man $(man1dir)/$$instname ; \
153 $(INSTALL_DATA) $(srcdir)/$$man $(man1dir)/$$instname ; \
157 @for program in $(EXES); do \
158 echo rm -f $(bindir)/$$program ; \
159 rm -f $(bindir)/$$program ; \
163 rm -f $(AD_DIR)/XScreenSaver
167 for man in $$men; do \
168 instname=`echo $$man | sed 's/\.man$$/\.$(mansuffix)/'` ; \
169 echo rm -f $(man1dir)/$$instname ; \
170 rm -f $(man1dir)/$$instname ; \
174 -rm -f *.o a.out core $(EXES) XScreenSaver_ad.h
177 -rm -f Makefile XScreenSaver.ad *~ "#"*
179 # Adds all current dependencies to Makefile
180 depend: XScreenSaver_ad.h
181 $(DEPEND) -s '# DO NOT DELETE: updated by make depend' \
183 $(INCLUDES) $(DEFS) $(DEPEND_DEFINES) $(CFLAGS) $(X_CFLAGS) -- \
184 $(SAVER_SRCS_1) $(CMD_SRCS)
186 # Adds some dependencies to Makefile.in -- not totally accurate, but pretty
187 # close. This excludes dependencies on files in /usr/include, etc. It tries
188 # to include only dependencies on files which are themselves a part of this
190 distdepend: update_ad_version update_man_version XScreenSaver_ad.h
191 @echo updating dependencies in `pwd`/Makefile.in... ; \
192 $(DEPEND) -w 0 -f - \
193 -s '# DO NOT DELETE: updated by make distdepend' $(DEPEND_FLAGS) -- \
194 $(INCLUDES) $(DEFS) $(DEPEND_DEFINES) $(CFLAGS) $(X_CFLAGS) -- \
195 $(SAVER_SRCS_1) $(CMD_SRCS) | \
197 awk '/^# .*Makefile.in ---/,/^# DO .*distdepend/' < Makefile.in ; \
198 sed -e 's@ \./@ @g;s@ /[^ ]*@@g;/^.*:$$/d' \
199 -e 's@\.\./utils@$$(UTILS_SRC)@g' \
200 -e 's@ \([^$$]\)@ $$(srcdir)/\1@g' \
201 -e 's@$$.*\(XScreenSaver_ad\)@\1@g' \
202 -e 's@ $$(srcdir)/\(.*config\.h\)@ \1@g' ; \
204 ) > /tmp/distdepend.$$$$ && \
205 mv Makefile.in Makefile.in.bak && \
206 mv /tmp/distdepend.$$$$ Makefile.in
208 # Updates the version number in the app-defaults file to be in sync with
209 # the version number in version.h. This is so people can tell when they
210 # have a version skew between the app-defaults file and the executable.
212 @S=XScreenSaver.ad.in ; \
213 U=$(UTILS_SRC)/version.h ; \
214 V=`sed -n 's/.*\([0-9][0-9]*\.[0-9]*\).*/\1/p' < $$U` ; \
215 D=`date '+%d-%b-%y'` ; \
216 echo -n "Updating version number in $$S to $$V $$D... " ; \
218 sed -e "s/\(.*version \)[0-9][0-9]*\.[0-9]*\(.*\)/\1$$V\2/" \
219 -e "s/\([0-9][0-9]-[A-Z][a-z][a-z]-[0-9][0-9]\)/$$D/" \
221 if cmp -s $$S $$T ; then \
222 echo "unchanged." ; \
230 @for S in $(MEN); do \
231 U=$(UTILS_SRC)/version.h ; \
232 V=`sed -n 's/.*\([0-9][0-9]*\.[0-9]*\).*/\1/p' < $$U` ; \
233 V="`date '+%d-%b-%y'` ($$V)" ; \
234 echo -n "Updating footer in $$S to \"$$V\"... " ; \
236 sed "s/^\(\.TH[^\"]*\)\"[^\"]*\"\(.*\)/\1\"$$V\"\2/" \
238 if cmp -s $$S $$T ; then \
239 echo "unchanged." ; \
249 find $(srcdir) -name '*.[chly]' -print | xargs etags -a
252 @$(MAKE) XScreenSaver_ad.h 2>&1 >&- /dev/null
256 # Rules for noticing when the objects from the utils directory are out of
257 # date with respect to their sources, and going and building them according
258 # to the rules in their own Makefile...
260 $(UTILS_BIN)/fade.o: $(UTILS_SRC)/fade.c
261 $(UTILS_BIN)/overlay.o: $(UTILS_SRC)/overlay.c
262 $(UTILS_BIN)/resources.o: $(UTILS_SRC)/resources.c
263 $(UTILS_BIN)/usleep.o: $(UTILS_SRC)/usleep.c
264 $(UTILS_BIN)/visual.o: $(UTILS_SRC)/visual.c
265 $(UTILS_BIN)/xmu.o: $(UTILS_SRC)/xmu.c
266 $(UTILS_BIN)/xroger.o: $(UTILS_SRC)/xroger.c
267 $(UTILS_BIN)/spline.o: $(UTILS_SRC)/spline.c
268 $(UTILS_BIN)/yarandom.o: $(UTILS_SRC)/yarandom.c
272 $(MAKE) $(@F) CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
274 # How we build object files in this directory.
276 $(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $(X_CFLAGS) $<
279 # How we build the default app-defaults file into the program.
281 XScreenSaver_ad.h: XScreenSaver.ad
282 $(SHELL) $(UTILS_SRC)/ad2c XScreenSaver.ad > XScreenSaver_ad.h
284 # The executables linked in this directory.
286 xscreensaver: $(SAVER_OBJS)
287 $(CC) $(LDFLAGS) -o $@ $(SAVER_OBJS) $(SAVER_LIBS)
289 xscreensaver-command: $(CMD_OBJS)
290 $(CC) $(LDFLAGS) -o $@ $(CMD_OBJS) $(CMD_LIBS)
293 ##############################################################################
295 # DO NOT DELETE: updated by make distdepend
298 demo.o: $(srcdir)/xscreensaver.h
299 demo.o: $(UTILS_SRC)/resources.h
300 stderr.o: ../config.h
301 stderr.o: $(srcdir)/xscreensaver.h
302 stderr.o: $(UTILS_SRC)/resources.h
303 stderr.o: $(UTILS_SRC)/visual.h
304 subprocs.o: ../config.h
305 subprocs.o: $(srcdir)/xscreensaver.h
306 subprocs.o: $(UTILS_SRC)/yarandom.h
307 timers.o: ../config.h
308 timers.o: $(srcdir)/xscreensaver.h
309 windows.o: ../config.h
310 windows.o: $(srcdir)/xscreensaver.h
311 windows.o: $(UTILS_SRC)/visual.h
312 windows.o: $(UTILS_SRC)/fade.h
313 xscreensaver.o: ../config.h
314 xscreensaver.o: $(srcdir)/xscreensaver.h
315 xscreensaver.o: $(UTILS_SRC)/version.h
316 xscreensaver.o: $(UTILS_SRC)/yarandom.h
317 xscreensaver.o: $(UTILS_SRC)/resources.h
318 xscreensaver.o: $(UTILS_SRC)/visual.h
319 xscreensaver.o: XScreenSaver_ad.h
321 xset.o: $(srcdir)/xscreensaver.h
322 xscreensaver-command.o: ../config.h
323 xscreensaver-command.o: $(UTILS_SRC)/version.h