2 * Imakefile file for xscreensaver, Copyright (c) 1993-1996 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_MIT_SAVER_EXTENSION
26 # define MIT_SAVER_DEF -DHAVE_MIT_SAVER_EXTENSION
28 # define MIT_SAVER_DEF
31 #ifdef HAVE_SGI_SAVER_EXTENSION
32 # define SGI_SAVER_DEF -DHAVE_SGI_SAVER_EXTENSION
34 # define SGI_SAVER_DEF
38 # define LOCKING_DEF -DNO_LOCKING
44 # define SETUID_DEF -DNO_SETUID
50 # define SHADOW_DEF -DHAVE_SHADOW
56 # define MOTIF_DEF -DNO_MOTIF
63 # define MOTIF_SRC $(DBOX_SRCS) $(UTILS)/xroger.c
64 # define MOTIF_OBJ $(DBOX_OBJS) $(UTILS)/xroger.o
65 # define MOTIF_LIB $(MOTIFLDOPTIONS) $(MOTIFLIBS)
66 # define MOTIF_INC $(MOTIFINCLUDES)
70 INCLUDES = -I$(UTILS) MOTIF_INC
71 DEFINES = SETUID_DEF XIDLE_DEF MIT_SAVER_DEF SGI_SAVER_DEF MOTIF_DEF LOCKING_DEF SHADOW_DEF R5ISMS
72 SAVERLIBS = $(XMULIB) $(XTOOLLIB) $(EXTENSIONLIB) $(XLIB)
74 UTIL_SRCS = $(UTILS)/resources.c $(UTILS)/fade.c $(UTILS)/visual.c $(UTILS)/usleep.c $(UTILS)/yarandom.c
75 UTIL_OBJS = $(UTILS)/resources.o $(UTILS)/fade.o $(UTILS)/visual.o $(UTILS)/usleep.o $(UTILS)/yarandom.o
76 DBOX_SRCS = dialogs.c demo.c
77 DBOX_OBJS = dialogs.o demo.o
80 SAVERSRCS = xscreensaver.c timers.c subprocs.c windows.c stderr.c
81 SAVEROBJS = xscreensaver.o timers.o subprocs.o windows.o stderr.o
82 SRCS1 = $(SAVERSRCS) MOTIF_SRC $(LOCK_SRCS) $(UTIL_SRCS)
83 OBJS1 = $(SAVEROBJS) MOTIF_OBJ $(LOCK_OBJS) $(UTIL_OBJS)
84 COMMSRCS = xscreensaver-command.c
85 COMMOBJS = xscreensaver-command.o
88 MEN = xscreensaver.man xscreensaver-command.man
89 TARFILES = README Imakefile $(SAVERSRCS) $(DBOX_SRCS) $(LOCK_SRCS) \
90 $(COMMSRCS) xscreensaver.h XScreenSaver.ad dialogs.xd \
93 #if defined(HPArchitecture) && !defined(NO_LOCKING)
94 EXTRA_LIBRARIES = -lXhp11 /* for XHPDisableReset() */
97 #if defined(NetBSDArchitecture) && !defined(NO_LOCKING)
98 EXTRA_LIBRARIES = -lcrypt
101 #if defined(i386ScoArchitecture)
102 EXTRA_LIBRARIES = -lintl -lprot -lx -lcrypt_i
105 all:: xscreensaver xscreensaver-command
110 PROGRAMS = xscreensaver xscreensaver-command
112 #ifdef INSTALL_SETUID
113 #undef InstallProgram
114 #define InstallProgram(p,d) InstallProgramWithFlags(p,d,$(INSTUIDFLAGS))
117 ComplexProgramTarget_1(xscreensaver,MOTIF_LIB $(SAVERLIBS), $(HP_NULL_STR))
119 #ifdef INSTALL_SETUID
120 #undef InstallProgram
121 #define InstallProgram(p,d) InstallProgramWithFlags(p,d,$(HP_NULL_STR))
124 ComplexProgramTarget_2(xscreensaver-command,$(COMMLIBS),$(HP_NULL_STR))
126 InstallAppDefaults(XScreenSaver)
128 xscreensaver.o: XScreenSaver.ad.h $(UTILS)/version.h
129 xscreensaver-command.o: $(UTILS)/version.h
131 demo.o: $(UTILS)/version.h
132 lock.o: $(UTILS)/version.h
134 /* build this before calling makedepend */
135 depend:: XScreenSaver.ad.h
137 XScreenSaver.ad.h: XScreenSaver.ad
138 $(UTILS)/ad2c XScreenSaver.ad > XScreenSaver.ad.h
141 $(RM) XScreenSaver.ad.h
144 #if defined(SparcArchitecture) || defined(SGIArchitecture)
153 # undef PurifyProgramTarget
154 # define PurifyProgramTarget(program,deplist,linklist) @@\
155 program.pure: deplist @@\
156 RemoveTargetProgram($@) @@\
157 $(CCENVSETUP) $(PURIFY) $(PURIFYOPTIONS) $(CC) \
158 -o $@ $(LDOPTIONS) linklist $(EXTRA_LOAD_FLAGS)
160 PurifyProgramTarget(xscreensaver,$(OBJS1),$(OBJS1) MOTIF_LIB $(SAVERLIBS))