source: trunk/third/xscreensaver/utils/Makefile.in @ 20148

Revision 20148, 9.9 KB checked in by ghudson, 21 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r20147, which included commits to RCS files with non-trunk default branches.
Line 
1# utils/Makefile.in --- xscreensaver, Copyright (c) 1997-2000 Jamie Zawinski.
2# the `../configure' script generates `utils/Makefile' from this file.
3
4
5# The utilities in this directory are used mostly by the demos in ../hacks/.
6# The Makefile in that directory builds executables by simply referencing
7# the .o files in this directory.
8
9
10##############################################################################
11#
12# Some rambling about dynamic libraries follows, ignore it if you don't care
13# (which is almost assuredly the case.)
14#
15#
16# It would probably be sensible to just build a single .a file in this
17# directory, and link the hacks against that (statically.)  I haven't done
18# that for two reasons: first, it works now, and why fix what ain't broke;
19# second, it wouldn't actually improve anything for the end user (it would
20# just make the Makefiles be a little smaller.)
21#
22# People sometimes suggest that the stuff in this directory should be in a
23# dynamic library, and that the hacks should be linked dynamically against
24# it.  I haven't done this for a number of reasons:
25#
26#  *  First, the only thing that would improve would be disk space, in that
27#     the executable files themselves would be smaller.  That's it.  Many other
28#     things would get worse if we used a dynamic library:
29#
30#  *  Complication of installation procedures: suddenly, before any of the
31#     hacks will work, you need to have a dynamic library installed, and
32#     the system configured to use it.  This is, basically, rocket science.
33#     Most people don't know how to do this, it's a huge pain, and on many
34#     systems, it requires root access.
35#
36#  *  Complication of the Makefile: every system builds dynamic libraries
37#     differently.  Every compiler takes different flags.  I don't want to
38#     do the hand-holding for the scores of Unix systems and compilers on
39#     which people try to build this program.
40#
41#  *  Reduction of maintainability: gdb is remarkably bad at dealing with
42#     debug info in dynamic libraries, and when debugging a hack, one would
43#     constantly be fighting the linker and the debugger (or linking
44#     statically when debugging.)
45#
46#  *  Version skew: when things are statically linked, it's perfectly ok to
47#     make incompatible changes to the APIs defined in this directory, so long
48#     as the current version in ../hacks/ is in sync.  Much more care would
49#     need to be taken with such things if dynamic libraries were involved,
50#     to make sure that the major and minor versions of the library changed
51#     at the appropriate time.  This isn't too hard, but it's more work, and
52#     yet another opportunity to screw up.
53#
54#  *  Runtime memory usage goes *up*.  That's right, up!  When a program
55#     links in a dynamic library, the whole library is brought into the
56#     address space, not just the files that are actually used.  Normally,
57#     this is ok, because if several programs are using (for example)
58#     libX11.so, chances are that the savings outweighs the overhead.  But
59#     the nature of xscreensaver is that only one of the hacks ever runs at
60#     a time -- so there would never be a second program using the utils/
61#     dynamic library with which things could be shared.
62#
63#  *  Runtime speed decreases slightly, since dynamic code is marginally
64#     slower.  On modern machines, this probably doesn't make a perceptible
65#     difference, however.
66#
67# So basically, I just don't think using libraries would be a win, and it would
68# definitely cause more of a maintenance and portability headache.  However,
69# if someone else wants to do the work to make it be an option to configure,
70# and verifies that it works on several (more than three) different Unixes,
71# I'd be happy to take the patches.
72#                                                           -- jwz, 30-Jun-98
73#
74##############################################################################
75
76
77@SET_MAKE@
78.SUFFIXES:
79.SUFFIXES: .c .o
80
81srcdir          = @srcdir@
82VPATH           = @srcdir@
83prefix          = @prefix@
84
85CC              = @CC@
86CFLAGS          = @CFLAGS@
87DEFS            = @DEFS@
88
89DEPEND          = @DEPEND@
90DEPEND_FLAGS    = @DEPEND_FLAGS@
91DEPEND_DEFINES  = @DEPEND_DEFINES@
92
93SHELL           = /bin/sh
94INSTALL         = @INSTALL@
95INSTALL_PROGRAM = @INSTALL_PROGRAM@
96INSTALL_DATA    = @INSTALL_DATA@
97INSTALL_DIRS    = @INSTALL_DIRS@
98
99X_CFLAGS        = @X_CFLAGS@
100
101INCLUDES        = -I$(srcdir) -I.. @INCLUDES@
102
103SRCS            = alpha.c colors.c fade.c grabscreen.c grabclient.c hsv.c \
104                  overlay.c resources.c spline.c usleep.c visual.c \
105                  visual-gl.c xmu.c logo.c yarandom.c erase.c \
106                  xshm.c xdbe.c colorbars.c
107OBJS            = alpha.o colors.o fade.o grabscreen.o grabclient.o hsv.o \
108                  overlay.o resources.o spline.o usleep.o visual.o \
109                  visual-gl.o xmu.o logo.o yarandom.o erase.o \
110                  xshm.o xdbe.o colorbars.o
111HDRS            = alpha.h colors.h fade.h grabscreen.h hsv.h resources.h \
112                  spline.h usleep.h utils.h version.h visual.h vroot.h xmu.h \
113                  yarandom.h erase.h xshm.h xdbe.h colorbars.h xscreensaver-intl.h
114STAR            = *
115LOGOS           = images/$(STAR).xpm \
116                  images/$(STAR).png \
117                  images/$(STAR).gif \
118                  images/$(STAR).eps
119EXTRAS          = README Makefile.in ad2c
120VMSFILES        = compile_axp.com compile_decc.com vms-gtod.c vms-gtod.h \
121                  vms-strdup.c
122
123TARFILES        = $(EXTRAS) $(VMSFILES) $(SRCS) $(HDRS) $(LOGOS)
124
125
126default: all
127all: $(OBJS)
128
129install:   install-program   install-man
130uninstall: uninstall-program uninstall-man
131
132install-strip:
133        $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' install
134
135install-program:
136install-man:
137uninstall-program:
138uninstall-man:
139
140clean:
141        -rm -f *.o a.out core
142
143distclean: clean
144        -rm -f Makefile TAGS *~ "#"*
145
146# Adds all current dependencies to Makefile
147depend:
148        $(DEPEND) -s '# DO NOT DELETE: updated by make depend'              \
149        $(DEPEND_FLAGS) --                                                  \
150        $(INCLUDES) $(DEFS) $(DEPEND_DEFINES) $(CFLAGS) $(X_CFLAGS) --      \
151        $(SRCS)
152
153# Adds some dependencies to Makefile.in -- not totally accurate, but pretty
154# close.  This excludes dependencies on files in /usr/include, etc.  It tries
155# to include only dependencies on files which are themselves a part of this
156# package.
157distdepend::
158        @echo updating dependencies in `pwd`/Makefile.in... ;               \
159        $(DEPEND) -w 0 -f -                                                 \
160        -s '# DO NOT DELETE: updated by make distdepend' $(DEPEND_FLAGS) -- \
161        $(INCLUDES) $(DEFS) $(DEPEND_DEFINES) $(CFLAGS) $(X_CFLAGS) --      \
162        $(SRCS) 2>/dev/null |                                               \
163        sort -d |                                                           \
164        (                                                                   \
165          awk '/^# .*Makefile.in ---/,/^# DO .*distdepend/' < Makefile.in ; \
166          sed -e '/^#.*/d'                                                  \
167              -e 's@ \./@ @g;s@ /[^ ]*@@g;/^.*:$$/d'                        \
168              -e 's@ \([^$$]\)@ $$(srcdir)/\1@g'                            \
169              -e 's@ $$(srcdir)/\(.*config.h\)@ \1@g' ;                     \
170          echo ''                                                           \
171        ) > /tmp/distdepend.$$$$ &&                                         \
172        mv Makefile.in Makefile.in.bak &&                                   \
173        mv /tmp/distdepend.$$$$ Makefile.in
174
175TAGS: tags
176tags:
177        find $(srcdir) -name '*.[chly]' -print | xargs etags -a
178
179echo_tarfiles:
180        @echo $(TARFILES)
181
182
183# How we build object files in this directory.
184.c.o:
185        $(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $(X_CFLAGS) $<
186
187
188# Rules for generating the VMS makefiles on Unix, so that it doesn't have to
189# be done by hand...
190#
191VMS_AXP_COMPILE=$$ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H)/INCL=([],[-])
192
193compile_axp.com: Makefile.in
194        @echo generating $@ from $<...  ;                                   \
195        ( ( for c in $(SRCS) vms-*.c ; do                                   \
196              c=`echo $$c | tr a-z A-Z` ;                                   \
197              echo "$(VMS_AXP_COMPILE) $$c" ;                               \
198            done ;                                                          \
199          ) | sort -d ;                                                     \
200          echo '$$ lib/cre utils.olb_axp' ;                                 \
201          echo '$$ lib utils.olb_axp *.obj' ;                               \
202          echo '$$! delete/noconf *.obj;' ;                                 \
203        ) > $@
204
205compile_decc.com: compile_axp.com
206        @echo generating $@ from $<...  ;                                   \
207        sed 's/axp/decc/g' < $< > $@
208
209distdepend:: compile_axp.com compile_decc.com
210
211
212##############################################################################
213#
214# DO NOT DELETE: updated by make distdepend
215
216alpha.o: $(srcdir)/alpha.h
217alpha.o: ../config.h
218alpha.o: $(srcdir)/hsv.h
219alpha.o: $(srcdir)/resources.h
220alpha.o: $(srcdir)/utils.h
221alpha.o: $(srcdir)/visual.h
222alpha.o: $(srcdir)/yarandom.h
223colorbars.o: $(srcdir)/colorbars.h
224colorbars.o: ../config.h
225colorbars.o: $(srcdir)/resources.h
226colorbars.o: $(srcdir)/utils.h
227colors.o: $(srcdir)/colors.h
228colors.o: ../config.h
229colors.o: $(srcdir)/hsv.h
230colors.o: $(srcdir)/utils.h
231colors.o: $(srcdir)/visual.h
232colors.o: $(srcdir)/yarandom.h
233erase.o: ../config.h
234erase.o: $(srcdir)/resources.h
235erase.o: $(srcdir)/usleep.h
236erase.o: $(srcdir)/utils.h
237erase.o: $(srcdir)/yarandom.h
238fade.o: ../config.h
239fade.o: $(srcdir)/fade.h
240fade.o: $(srcdir)/usleep.h
241fade.o: $(srcdir)/utils.h
242fade.o: $(srcdir)/visual.h
243grabclient.o: ../config.h
244grabclient.o: $(srcdir)/grabscreen.h
245grabclient.o: $(srcdir)/resources.h
246grabclient.o: $(srcdir)/utils.h
247grabclient.o: $(srcdir)/vroot.h
248grabscreen.o: $(srcdir)/colors.h
249grabscreen.o: ../config.h
250grabscreen.o: $(srcdir)/grabscreen.h
251grabscreen.o: $(srcdir)/resources.h
252grabscreen.o: $(srcdir)/usleep.h
253grabscreen.o: $(srcdir)/utils.h
254grabscreen.o: $(srcdir)/visual.h
255grabscreen.o: $(srcdir)/vroot.h
256grabscreen.o: $(srcdir)/yarandom.h
257hsv.o: ../config.h
258hsv.o: $(srcdir)/hsv.h
259hsv.o: $(srcdir)/utils.h
260logo.o: ../config.h
261logo.o: $(srcdir)/images/logo-180.xpm
262logo.o: $(srcdir)/images/logo-50.xpm
263logo.o: $(srcdir)/resources.h
264logo.o: $(srcdir)/utils.h
265logo.o: $(srcdir)/visual.h
266overlay.o: ../config.h
267overlay.o: $(srcdir)/utils.h
268overlay.o: $(srcdir)/visual.h
269resources.o: ../config.h
270resources.o: $(srcdir)/resources.h
271resources.o: $(srcdir)/utils.h
272spline.o: ../config.h
273spline.o: $(srcdir)/spline.h
274spline.o: $(srcdir)/utils.h
275usleep.o: ../config.h
276visual-gl.o: ../config.h
277visual-gl.o: $(srcdir)/utils.h
278visual-gl.o: $(srcdir)/visual.h
279visual.o: ../config.h
280visual.o: $(srcdir)/resources.h
281visual.o: $(srcdir)/utils.h
282visual.o: $(srcdir)/visual.h
283xdbe.o: ../config.h
284xdbe.o: $(srcdir)/resources.h
285xdbe.o: $(srcdir)/utils.h
286xdbe.o: $(srcdir)/xdbe.h
287xmu.o: ../config.h
288xshm.o: ../config.h
289xshm.o: $(srcdir)/resources.h
290xshm.o: $(srcdir)/utils.h
291xshm.o: $(srcdir)/xshm.h
292yarandom.o: ../config.h
293yarandom.o: $(srcdir)/yarandom.h
294
Note: See TracBrowser for help on using the repository browser.