2 * Imakefile file for xscreensaver, Copyright (c) 1993-1995 Jamie Zawinski.
4 * You should not need to edit this file; edit ../config.h instead.
10 /* #### If anyone ever finishes the Athena locking code, remove this. */
11 #if defined(NO_MOTIF) && !defined(NO_LOCKING)
16 # undef INSTALL_SETUID
19 #ifdef HAVE_XIDLE_EXTENSION
20 # define XIDLE_DEF -DHAVE_XIDLE_EXTENSION
25 #ifdef HAVE_SAVER_EXTENSION
26 # define SAVER_DEF -DHAVE_SAVER_EXTENSION
32 # define LOCKING_DEF -DNO_LOCKING
38 # define SETUID_DEF -DNO_SETUID
44 # define SHADOW_DEF -DHAVE_SHADOW
50 # define MOTIF_DEF -DNO_MOTIF
57 # define MOTIF_SRC $(DBOX_SRCS) $(UTILS)/xroger.c
58 # define MOTIF_OBJ $(DBOX_OBJS) $(UTILS)/xroger.o
59 # define MOTIF_LIB $(MOTIFLDOPTIONS) $(MOTIFLIBS)
60 # define MOTIF_INC $(MOTIFINCLUDES)
64 INCLUDES = -I$(UTILS) MOTIF_INC
65 DEFINES = SETUID_DEF XIDLE_DEF SAVER_DEF MOTIF_DEF LOCKING_DEF SHADOW_DEF R5ISMS
66 SAVERLIBS = $(XMULIB) $(XTOOLLIB) $(EXTENSIONLIB) $(XLIB) -lm
67 COMMLIBS = $(XLIB) -lm
68 UTIL_SRCS = $(UTILS)/resources.c $(UTILS)/fade.c $(UTILS)/visual.c $(UTILS)/usleep.c $(UTILS)/yarandom.c
69 UTIL_OBJS = $(UTILS)/resources.o $(UTILS)/fade.o $(UTILS)/visual.o $(UTILS)/usleep.o $(UTILS)/yarandom.o
70 DBOX_SRCS = dialogs.c demo.c
71 DBOX_OBJS = dialogs.o demo.o
74 SAVERSRCS = xscreensaver.c timers.c subprocs.c windows.c stderr.c
75 SAVEROBJS = xscreensaver.o timers.o subprocs.o windows.o stderr.o
76 SRCS1 = $(SAVERSRCS) MOTIF_SRC $(LOCK_SRCS) $(UTIL_SRCS)
77 OBJS1 = $(SAVEROBJS) MOTIF_OBJ $(LOCK_OBJS) $(UTIL_OBJS)
78 COMMSRCS = xscreensaver-command.c
79 COMMOBJS = xscreensaver-command.o
82 MEN = xscreensaver.man xscreensaver-command.man
83 TARFILES = README Imakefile $(SAVERSRCS) $(DBOX_SRCS) $(LOCK_SRCS) \
84 $(COMMSRCS) xscreensaver.h XScreenSaver.ad dialogs.xd \
87 #if defined(HPArchitecture) && !defined(NO_LOCKING)
88 EXTRA_LIBRARIES = -lXhp11 /* for XHPDisableReset() */
91 #if defined(i386ScoArchitecture)
92 SCOLIBS = -lintl -lprot -lx -lcrypt_i
95 all:: xscreensaver xscreensaver-command
100 PROGRAMS = xscreensaver xscreensaver-command
102 #ifdef INSTALL_SETUID
103 #undef InstallProgram
104 #define InstallProgram(p,d) InstallProgramWithFlags(p,d,$(INSTUIDFLAGS))
107 ComplexProgramTarget_1(xscreensaver,MOTIF_LIB $(SAVERLIBS),$(SCOLIBS) $(HP_NULL_STR))
109 #ifdef INSTALL_SETUID
110 #undef InstallProgram
111 #define InstallProgram(p,d) InstallProgramWithFlags(p,d,$(HP_NULL_STR))
114 ComplexProgramTarget_2(xscreensaver-command,$(COMMLIBS),$(HP_NULL_STR))
116 InstallAppDefaults(XScreenSaver)
118 xscreensaver.o: XScreenSaver.ad.h $(UTILS)/version.h
119 xscreensaver-command.o: $(UTILS)/version.h
121 demo.o: $(UTILS)/version.h
122 lock.o: $(UTILS)/version.h
124 /* build this before calling makedepend */
125 depend:: XScreenSaver.ad.h
127 XScreenSaver.ad.h: XScreenSaver.ad
128 $(UTILS)/ad2c XScreenSaver.ad > XScreenSaver.ad.h
131 $(RM) XScreenSaver.ad.h
134 #if defined(SparcArchitecture) || defined(SGIArchitecture)
143 # undef PurifyProgramTarget
144 # define PurifyProgramTarget(program,deplist,linklist) @@\
145 program.pure: deplist @@\
146 RemoveTargetProgram($@) @@\
147 $(CCENVSETUP) $(PURIFY) $(PURIFYOPTIONS) $(CC) \
148 -o $@ $(LDOPTIONS) linklist $(EXTRA_LOAD_FLAGS)
150 PurifyProgramTarget(xscreensaver,$(OBJS1),$(OBJS1) MOTIF_LIB $(SAVERLIBS))