Imported Upstream version 1.7.6p1
[debian/sudo] / Makefile.in
1 #
2 # Copyright (c) 1996, 1998-2005, 2007-2011
3 #       Todd C. Miller <Todd.Miller@courtesan.com>
4 #
5 # Permission to use, copy, modify, and distribute this software for any
6 # purpose with or without fee is hereby granted, provided that the above
7 # copyright notice and this permission notice appear in all copies.
8 #
9 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
17 #
18 # Sponsored in part by the Defense Advanced Research Projects
19 # Agency (DARPA) and Air Force Research Laboratory, Air Force
20 # Materiel Command, USAF, under agreement number F39502-99-1-0512.
21 #
22 # @configure_input@
23 #
24
25 #### Start of system configuration section. ####
26
27 srcdir = @srcdir@
28 devdir = @devdir@
29 authdir = $(srcdir)/auth
30 top_builddir = .
31
32 # Compiler & tools to use
33 CC = @CC@
34 FLEX = @FLEX@
35 YACC = @YACC@
36 NROFF = @NROFFPROG@ -Tascii
37 LIBTOOL = @LIBTOOL@
38 AR=@AR@
39 RANLIB=@RANLIB@
40
41 # Our install program supports extra flags...
42 INSTALL = $(SHELL) $(srcdir)/install-sh -c
43
44 # Libraries
45 LIBS = @LIBS@
46 NET_LIBS = @NET_LIBS@
47 SUDO_LIBS = @SUDO_LIBS@ @AFS_LIBS@ @GETGROUPS_LIB@ $(LIBS) $(NET_LIBS)
48
49 # C preprocessor flags
50 CPPFLAGS = -I. -I$(srcdir) @CPPFLAGS@
51
52 # Usually -O and/or -g
53 CFLAGS = @CFLAGS@
54
55 # Flags to pass to the link stage
56 LDFLAGS = -L. @LDFLAGS@
57 SUDO_LDFLAGS = @SUDO_LDFLAGS@ $(LDFLAGS)
58
59 # Where to install things...
60 prefix = @prefix@
61 exec_prefix = @exec_prefix@
62 bindir = @bindir@
63 sbindir = @sbindir@
64 sysconfdir = @sysconfdir@
65 libexecdir = @libexecdir@
66 datarootdir = @datarootdir@
67 localstatedir = @localstatedir@
68 docdir = @docdir@
69 mandir = @mandir@
70 timedir = @timedir@
71 noexecfile = @NOEXECFILE@
72 noexecdir = @NOEXECDIR@
73
74 # Directory in which to install sudo.
75 sudodir = $(bindir)
76
77 # Directory in which to install visudo
78 visudodir = $(sbindir)
79
80 # Directory in which to install the sudoers file
81 sudoersdir = $(sysconfdir)
82
83 # Directory in which to install the man page
84 mantype = @MANTYPE@
85 mansectsu = @mansectsu@
86 mansectform = @mansectform@
87 mandirsu = $(mandir)/$(mantype)$(mansectsu)
88 mandirform = $(mandir)/$(mantype)$(mansectform)
89
90 # User and group ids the installed files should be "owned" by
91 install_uid = 0
92 install_gid = 0
93
94 # User, group, and mode the sudoers file should be "owned" by (configure)
95 sudoers_uid = @SUDOERS_UID@
96 sudoers_gid = @SUDOERS_GID@
97 sudoers_mode = @SUDOERS_MODE@
98
99 # Pass in paths and uid/gid + OS dependent defined
100 DEFS = @OSDEFS@ -D_PATH_SUDOERS=\"$(sudoersdir)/sudoers\" -DSUDOERS_UID=$(sudoers_uid) -DSUDOERS_GID=$(sudoers_gid) -DSUDOERS_MODE=$(sudoers_mode)
101
102 #### End of system configuration section. ####
103
104 SHELL = @SHELL@
105
106 PROGS = @PROGS@
107
108 SRCS = aix.c alias.c alloc.c audit.c boottime.c bsm_audit.c check.c \
109        closefrom.c def_data.c defaults.c env.c error.c exec.c exec_pty.c \
110        fileops.c find_path.c fnmatch.c get_pty.c getcwd.c getprogname.c \
111        getspwuid.c gettime.c glob.c goodpath.c gram.c gram.y interfaces.c \
112        iolog.c isblank.c lbuf.c ldap.c linux_audit.c list.c logging.c match.c \
113        mksiglist.c mkstemps.c memrchr.c nanosleep.c parse.c parse_args.c \
114        pwutil.c set_perms.c setsid.c sigaction.c snprintf.c strcasecmp.c \
115        strerror.c strlcat.c strlcpy.c strsignal.c sudo.c sudo_noexec.c \
116        sudo_edit.c sudo_nss.c term.c testsudoers.c tgetpass.c toke.c toke.l \
117        toke_util.c tsgetgrpw.c utimes.c vasgroups.c visudo.c zero_bytes.c \
118        redblack.c selinux.c sesh.c sudoreplay.c getdate.c getdate.y getline.c \
119        timestr.c $(AUTH_SRCS)
120
121 AUTH_SRCS = auth/afs.c auth/aix_auth.c auth/bsdauth.c auth/dce.c auth/fwtk.c \
122             auth/kerb4.c auth/kerb5.c auth/pam.c auth/passwd.c auth/rfc1938.c \
123             auth/secureware.c auth/securid.c auth/securid5.c auth/sia.c \
124             auth/sudo_auth.c
125
126 HDRS = alloc.h bsm_audit.h def_data.h defaults.h error.h ins_2001.h \
127        ins_classic.h ins_csops.h ins_goons.h insults.h interfaces.h lbuf.h \
128        linux_audit.h list.h logging.h missing.h mksiglist.h nonunix.h \
129        redblack.h parse.h sudo.h sudo_exec.h sudo_nss.h gram.h toke.h \
130        auth/sudo_auth.h emul/charclass.h emul/fnmatch.h emul/glob.h \
131        emul/timespec.h emul/utime.h
132
133 AUTH_OBJS = sudo_auth.o @AUTH_OBJS@
134
135 COMMON_OBJS = alias.o alloc.o defaults.o error.o gram.o \
136               list.o match.o pwutil.o timestr.o toke.o toke_util.o redblack.o \
137               term.o zero_bytes.o @COMMON_OBJS@
138
139 SUDO_OBJS = $(AUTH_OBJS) @SUDO_OBJS@ audit.o boottime.o check.o env.o \
140             exec.o gettime.o goodpath.o fileops.o find_path.o \
141             interfaces.o lbuf.o logging.o parse.o parse_args.o set_perms.o \
142             sudo.o sudo_edit.o sudo_nss.o tgetpass.o
143
144 VISUDO_OBJS = visudo.o fileops.o gettime.o goodpath.o find_path.o
145
146 REPLAY_OBJS = getdate.o sudoreplay.o
147
148 TEST_OBJS = interfaces.o testsudoers.o tsgetgrpw.o
149
150 LIB_OBJS = @LIBOBJS@
151
152 ZLIB_OBJS = adler32.o compress.o crc32.o deflate.o gzclose.o gzlib.o \
153             gzread.o gzwrite.o infback.o inffast.o inflate.o inftrees.o \
154             trees.o uncompr.o zutil.o
155
156 VERSION = @PACKAGE_VERSION@
157 PACKAGE_TARNAME = @PACKAGE_TARNAME@
158
159 DISTFILES = $(SRCS) $(HDRS) ChangeLog HISTORY INSTALL INSTALL.configure \
160             LICENSE Makefile.in NEWS PORTING README README.LDAP \
161             TROUBLESHOOTING UPGRADE aclocal.m4 aixcrypt.exp config.guess \
162             config.h.in config.sub configure configure.in def_data.in \
163             indent.pro install-sh ltmain.sh m4 mkdefaults mkinstalldirs \
164             mkpkg pathnames.h.in pp sample.pam sample.syslog.conf \
165             sample.sudoers schema.ActiveDirectory schema.OpenLDAP \
166             schema.iPlanet siglist.in sudo.cat sudo.man.in sudo.pod sudo.pp \
167             sudo_usage.h.in sudoers.in sudoers.cat sudoers.man.in sudoers.pod \
168             sudoers.ldap.cat sudoers.ldap.man.in sudoers.ldap.pod \
169             sudoers2ldif sudoreplay.cat sudoreplay.man.in sudoreplay.pod \
170             visudo.cat visudo.man.in visudo.pod auth/API sudo.man.pl \
171             sudoers.man.pl $(ZLIB_FILES)
172
173 ZLIB_FILES = zlib/adler32.c zlib/compress.c zlib/crc32.c zlib/crc32.h \
174              zlib/deflate.c zlib/deflate.h zlib/gzclose.c zlib/gzguts.h \
175              zlib/gzlib.c zlib/gzread.c zlib/gzwrite.c zlib/infback.c \
176              zlib/inffast.c zlib/inffast.h zlib/inffixed.h zlib/inflate.c \
177              zlib/inflate.h zlib/inftrees.c zlib/inftrees.h zlib/trees.c \
178              zlib/trees.h zlib/uncompr.c zlib/zconf.h.in zlib/zlib.h \
179              zlib/zutil.c zlib/zutil.h
180
181 SUDODEP = $(srcdir)/sudo.h $(srcdir)/alloc.h $(srcdir)/defaults.h \
182           $(srcdir)/error.h $(srcdir)/list.h $(srcdir)/logging.h \
183           $(srcdir)/missing.h $(srcdir)/sudo_nss.h $(devdir)/def_data.h \
184           pathnames.h config.h
185
186 AUTHDEP = $(SUDODEP) $(authdir)/sudo_auth.h
187
188 INSDEP = $(srcdir)/ins_2001.h $(srcdir)/ins_classic.h $(srcdir)/ins_csops.h \
189          $(srcdir)/ins_goons.h $(srcdir)/insults.h
190
191 all: $(PROGS)
192
193 .SUFFIXES: .o .c .h .l .y .lo
194
195 .c.o:
196         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $<
197
198 .c.lo:
199         $(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $<
200
201 libsudo.a: $(LIB_OBJS) $(COMMON_OBJS)
202         $(AR) rv $@ $(LIB_OBJS) $(COMMON_OBJS)
203         $(RANLIB) $@
204
205 libz.a: $(ZLIB_OBJS)
206         $(AR) rv $@ $(ZLIB_OBJS)
207         $(RANLIB) $@
208
209 sudo: libsudo.a @ZLIB_DEP@ $(SUDO_OBJS)
210         $(CC) -o $@ $(SUDO_OBJS) $(SUDO_LDFLAGS) -lsudo $(SUDO_LIBS) @ZLIB@
211
212 visudo: libsudo.a $(VISUDO_OBJS)
213         $(CC) -o $@ $(VISUDO_OBJS) $(LDFLAGS) -lsudo $(LIBS) $(NET_LIBS)
214
215 sudoreplay: libsudo.a @ZLIB_DEP@ $(REPLAY_OBJS)
216         $(CC) -o $@ $(REPLAY_OBJS) $(LDFLAGS) -lsudo $(LIBS) @ZLIB@
217
218 testsudoers: $(TEST_OBJS)
219         $(CC) -o $@ $(TEST_OBJS) $(LDFLAGS) -lsudo $(LIBS) $(NET_LIBS)
220
221 sudo_noexec.lo: $(srcdir)/sudo_noexec.c
222         $(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/sudo_noexec.c
223
224 libsudo_noexec.la: sudo_noexec.lo
225         $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ sudo_noexec.lo -avoid-version -rpath $(noexecdir)
226
227 # Uncomment the following if you want "make distclean" to clean the parser
228 @DEV@GENERATED = gram.h gram.c toke.c def_data.c def_data.h getdate
229
230 # Uncomment the lines before -@true if you intend to modify gram.y
231 $(devdir)/gram.c $(devdir)/gram.h: $(srcdir)/gram.y
232 @DEV@   $(YACC) -d $(srcdir)/gram.y
233 @DEV@   echo "#include <config.h>" > $(devdir)/gram.c
234 @DEV@   cat y.tab.c >> $(devdir)/gram.c
235 @DEV@   rm -f y.tab.c
236 @DEV@   mv -f y.tab.h $(devdir)/gram.h
237         -@true
238
239 # Uncomment the lines before -@true if you intend to modify toke.l
240 $(devdir)/toke.c: $(srcdir)/toke.l
241 @DEV@   $(FLEX) $(srcdir)/toke.l
242 @DEV@   echo "#include <config.h>" > $(devdir)/toke.c
243 @DEV@   cat lex.yy.c >> $(devdir)/toke.c
244 @DEV@   rm -f lex.yy.c
245         -@true
246
247 # Uncomment the lines before -@true if you intend to modify getdate.y
248 $(devdir)/getdate.c: $(srcdir)/getdate.y
249 @DEV@   echo "expect 10 shift/reduce conflicts"
250 @DEV@   $(YACC) $(srcdir)/getdate.y
251 @DEV@   echo "#include <config.h>" > $(devdir)/getdate.c
252 @DEV@   cat y.tab.c >> $(devdir)/getdate.c
253 @DEV@   rm -f y.tab.c
254         -@true
255
256 # Uncomment the following if you intend to modify def_data.in
257 @DEV@$(devdir)/def_data.h $(devdir)/def_data.c: $(srcdir)/def_data.in
258 @DEV@   perl $(srcdir)/mkdefaults -o def_data $(srcdir)/def_data.in
259
260 siglist.c: mksiglist
261         ./mksiglist > $@
262
263 mksiglist: $(srcdir)/mksiglist.c $(srcdir)/mksiglist.h $(srcdir)/missing.h config.h
264         $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFS) $(srcdir)/mksiglist.c -o $@
265
266 @DEV@$(srcdir)/mksiglist.h: $(srcdir)/siglist.in
267 @DEV@   awk 'BEGIN {print "/* public domain */\n"} /^    [A-Z]/ {printf("#ifdef SIG%s\n    if (my_sys_siglist[SIG%s] == NULL)\n\tmy_sys_siglist[SIG%s] = \"%s\";\n#endif\n", $$1, $$1, $$1, substr($$0, 13))}' < $(srcdir)/siglist.in > $@
268
269 # Dependencies (not counting auth functions)
270 aix.o: $(srcdir)/aix.c
271         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/aix.c
272 alias.o: $(srcdir)/alias.c $(SUDODEP) $(srcdir)/parse.h $(srcdir)/list.h $(srcdir)/redblack.h
273         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/alias.c
274 alloc.o: $(srcdir)/alloc.c $(SUDODEP)
275         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/alloc.c
276 audit.o: $(srcdir)/audit.c $(SUDODEP) $(srcdir)/bsm_audit.h $(srcdir)/linux_audit.h
277         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/audit.c
278 boottime.o: $(srcdir)/boottime.c config.h
279         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/boottime.c
280 bsm_audit.o: $(srcdir)/bsm_audit.c $(SUDODEP) $(srcdir)/bsm_audit.h
281         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/bsm_audit.c
282 check.o: $(srcdir)/check.c $(SUDODEP)
283         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/check.c
284 closefrom.o: $(srcdir)/closefrom.c config.h
285         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/closefrom.c
286 defaults.o: $(srcdir)/defaults.c $(SUDODEP) $(srcdir)/def_data.c $(authdir)/sudo_auth.h $(devdir)/gram.h
287         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/defaults.c
288 env.o: $(srcdir)/env.c $(SUDODEP)
289         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/env.c
290 error.o: $(srcdir)/error.c $(srcdir)/missing.h $(srcdir)/error.h config.h
291         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/error.c
292 exec.o: $(srcdir)/exec.c $(SUDODEP) $(srcdir)/sudo_exec.h
293         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/exec.c
294 exec_pty.o: $(srcdir)/exec.c $(SUDODEP) $(srcdir)/sudo_exec.h
295         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/exec_pty.c
296 fileops.o: $(srcdir)/fileops.c $(SUDODEP)
297         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/fileops.c
298 find_path.o: $(srcdir)/find_path.c $(SUDODEP)
299         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/find_path.c
300 fnmatch.o: $(srcdir)/fnmatch.c $(srcdir)/emul/fnmatch.h $(srcdir)/missing.h config.h
301         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/fnmatch.c
302 get_pty.o: $(srcdir)/get_pty.c $(SUDODEP)
303         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/get_pty.c
304 getcwd.o: $(srcdir)/getcwd.c $(srcdir)/missing.h config.h
305         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/getcwd.c
306 getdate.o: $(srcdir)/getdate.c $(srcdir)/missing.h config.h
307         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/getdate.c
308 getline.o: $(srcdir)/getline.c config.h
309         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/getline.c
310 getprogname.o: $(srcdir)/getprogname.c config.h
311         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/getprogname.c
312 getspwuid.o: $(srcdir)/getspwuid.c $(SUDODEP)
313         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/getspwuid.c
314 gettime.o: $(srcdir)/gettime.c $(SUDODEP)
315         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/gettime.c
316 glob.o: $(srcdir)/glob.c $(srcdir)/emul/glob.h $(srcdir)/missing.h config.h
317         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/glob.c
318 goodpath.o: $(srcdir)/goodpath.c $(SUDODEP)
319         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/goodpath.c
320 gram.o: $(devdir)/gram.c $(SUDODEP) $(srcdir)/parse.h $(srcdir)/list.h $(devdir)/gram.h
321         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(devdir)/gram.c
322 interfaces.o: $(srcdir)/interfaces.c $(SUDODEP) $(srcdir)/interfaces.h
323         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/interfaces.c
324 iolog.o: $(srcdir)/iolog.c $(SUDODEP)
325         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/iolog.c
326 isblank.o: $(srcdir)/isblank.c $(srcdir)/missing.h config.h
327         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/isblank.c
328 lbuf.o: $(srcdir)/lbuf.c $(SUDODEP)
329         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/lbuf.c
330 ldap.o: $(srcdir)/ldap.c $(SUDODEP) $(srcdir)/parse.h $(srcdir)/list.h
331         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/ldap.c
332 linux_audit.o: $(srcdir)/linux_audit.c $(SUDODEP) $(srcdir)/linux_audit.h
333         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/linux_audit.c
334 list.o: $(srcdir)/list.c $(SUDODEP)
335         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/list.c
336 logging.o: $(srcdir)/logging.c $(SUDODEP)
337         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/logging.c
338 match.o: $(srcdir)/match.c $(SUDODEP) $(srcdir)/parse.h $(srcdir)/list.h $(srcdir)/interfaces.h $(devdir)/gram.h
339         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/match.c
340 memrchr.o: $(srcdir)/memrchr.c $(SUDODEP)
341         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/memrchr.c
342 mkstemps.o: $(srcdir)/mkstemps.c $(SUDODEP)
343         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/mkstemps.c
344 nanosleep.o: $(srcdir)/nanosleep.c $(srcdir)/missing.h config.h
345         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/nanosleep.c
346 parse.o: $(srcdir)/parse.c $(SUDODEP) $(srcdir)/parse.h $(srcdir)/list.h $(devdir)/gram.h
347         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/parse.c
348 parse_args.o: $(srcdir)/parse_args.c $(SUDODEP)
349         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/parse_args.c
350 pwutil.o: $(srcdir)/pwutil.c $(SUDODEP)
351         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/pwutil.c
352 redblack.o: $(srcdir)/redblack.c $(SUDODEP) $(srcdir)/redblack.h
353         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/redblack.c
354 set_perms.o: $(srcdir)/set_perms.c $(SUDODEP)
355         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/set_perms.c
356 setsid.o: $(srcdir)/setsid.c $(srcdir)/missing.h config.h
357         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/setsid.c
358 sigaction.o: $(srcdir)/sigaction.c $(srcdir)/missing.h
359         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/sigaction.c
360 siglist.o: siglist.c $(srcdir)/missing.h config.h
361         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/siglist.c
362 snprintf.o: $(srcdir)/snprintf.c $(srcdir)/missing.h config.h
363         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/snprintf.c
364 strcasecmp.o: $(srcdir)/strcasecmp.c $(srcdir)/missing.h  config.h
365         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/strcasecmp.c
366 strerror.o: $(srcdir)/strerror.c $(srcdir)/missing.h config.h
367         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/strerror.c
368 strlcat.o: $(srcdir)/strlcat.c $(srcdir)/missing.h config.h
369         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/strlcat.c
370 strlcpy.o: $(srcdir)/strlcpy.c $(srcdir)/missing.h config.h
371         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/strlcpy.c
372 strsignal.o: $(srcdir)/strsignal.c $(srcdir)/missing.h config.h
373         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/strsignal.c
374 selinux.o: $(srcdir)/selinux.c $(SUDODEP)
375         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/selinux.c
376 sudo.o: $(srcdir)/sudo.c $(SUDODEP) sudo_usage.h $(srcdir)/interfaces.h
377         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/sudo.c
378 sudoreplay.o: $(srcdir)/sudoreplay.c $(srcdir)/alloc.h $(srcdir)/missing.h $(srcdir)/error.h $(srcdir)/missing.h config.h
379         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/sudoreplay.c
380 sudo_edit.o: $(srcdir)/sudo_edit.c $(SUDODEP)
381         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/sudo_edit.c
382 sudo_noexec.o: $(srcdir)/sudo_noexec.c $(srcdir)/missing.h config.h
383         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/sudo_noexec.c
384 sudo_nss.o: $(srcdir)/sudo_nss.c $(SUDODEP)
385         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/sudo_nss.c
386 term.o: $(srcdir)/term.c $(SUDODEP)
387         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/term.c
388 testsudoers.o: $(srcdir)/testsudoers.c $(SUDODEP) $(srcdir)/parse.h $(srcdir)/list.h $(srcdir)/interfaces.h $(devdir)/gram.h
389         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/testsudoers.c
390 tgetpass.o: $(srcdir)/tgetpass.c $(SUDODEP)
391         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/tgetpass.c
392 timestr.o: $(srcdir)/timestr.c $(srcdir)/missing.h config.h
393         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/timestr.c
394 toke.o: $(devdir)/toke.c $(SUDODEP) $(srcdir)/parse.h $(srcdir)/list.h $(srcdir)/toke.h $(devdir)/gram.h
395         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(devdir)/toke.c
396 toke_util.o: $(srcdir)/toke_util.c $(SUDODEP) $(srcdir)/parse.h $(srcdir)/list.h $(srcdir)/toke.h $(devdir)/gram.h
397         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/toke_util.c
398 tsgetgrpw.o: $(srcdir)/tsgetgrpw.c $(SUDODEP)
399         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/tsgetgrpw.c
400 utimes.o: $(srcdir)/utimes.c $(srcdir)/missing.h $(srcdir)/emul/utime.h config.h
401         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/utimes.c
402 vasgroups.o: $(srcdir)/vasgroups.c $(srcdir)/nonunix.h $(SUDODEP)
403         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/vasgroups.c
404 visudo.o: $(srcdir)/visudo.c $(SUDODEP) $(devdir)/gram.h
405         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/visudo.c
406 zero_bytes.o: $(srcdir)/zero_bytes.c $(srcdir)/missing.h config.h
407         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/zero_bytes.c
408 sudo_auth.o: $(authdir)/sudo_auth.c $(AUTHDEP) $(INSDEP)
409         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/sudo_auth.c
410 afs.o: $(authdir)/afs.c $(AUTHDEP)
411         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/afs.c
412 aix_auth.o: $(authdir)/aix_auth.c $(AUTHDEP)
413         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/aix_auth.c
414 bsdauth.o: $(authdir)/bsdauth.c $(AUTHDEP)
415         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/bsdauth.c
416 dce.o: $(authdir)/dce.c $(AUTHDEP)
417         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/dce.c
418 fwtk.o: $(authdir)/fwtk.c $(AUTHDEP)
419         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/fwtk.c
420 kerb4.o: $(authdir)/kerb4.c $(AUTHDEP)
421         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/kerb4.c
422 kerb5.o: $(authdir)/kerb5.c $(AUTHDEP)
423         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/kerb5.c
424 pam.o: $(authdir)/pam.c $(AUTHDEP)
425         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/pam.c
426 passwd.o: $(authdir)/passwd.c $(AUTHDEP)
427         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/passwd.c
428 rfc1938.o: $(authdir)/rfc1938.c $(AUTHDEP)
429         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/rfc1938.c
430 secureware.o: $(authdir)/secureware.c $(AUTHDEP)
431         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/secureware.c
432 securid.o: $(authdir)/securid.c $(AUTHDEP)
433         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/securid.c
434 securid5.o: $(authdir)/securid5.c $(AUTHDEP)
435         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/securid5.c
436 sia.o: $(authdir)/sia.c $(AUTHDEP)
437         $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/sia.c
438
439 # Zlib dependencies
440 adler32.o: $(srcdir)/zlib/zutil.h $(srcdir)/zlib/zlib.h zlib/zconf.h
441         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/adler32.c
442 compress.o: $(srcdir)/zlib/zlib.h zlib/zconf.h
443         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/compress.c
444 crc32.o: $(srcdir)/zlib/zutil.h $(srcdir)/zlib/zlib.h zlib/zconf.h $(srcdir)/zlib/crc32.h
445         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/crc32.c
446 deflate.o: $(srcdir)/zlib/deflate.h $(srcdir)/zlib/zutil.h $(srcdir)/zlib/zlib.h zlib/zconf.h
447         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/deflate.c
448 gzclose.o: $(srcdir)/zlib/zlib.h zlib/zconf.h $(srcdir)/zlib/gzguts.h
449         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/gzclose.c
450 gzlib.o: $(srcdir)/zlib/zlib.h zlib/zconf.h $(srcdir)/zlib/gzguts.h
451         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/gzlib.c
452 gzread.o: $(srcdir)/zlib/zlib.h zlib/zconf.h $(srcdir)/zlib/gzguts.h
453         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/gzread.c
454 gzwrite.o: $(srcdir)/zlib/zlib.h zlib/zconf.h $(srcdir)/zlib/gzguts.h
455         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/gzwrite.c
456 infback.o: $(srcdir)/zlib/zutil.h $(srcdir)/zlib/zlib.h zlib/zconf.h $(srcdir)/zlib/inftrees.h $(srcdir)/zlib/inflate.h $(srcdir)/zlib/inffast.h $(srcdir)/zlib/inffixed.h
457         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/infback.c
458 inffast.o: $(srcdir)/zlib/zutil.h $(srcdir)/zlib/zlib.h zlib/zconf.h $(srcdir)/zlib/inftrees.h $(srcdir)/zlib/inflate.h $(srcdir)/zlib/inffast.h
459         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/inffast.c
460 inflate.o: $(srcdir)/zlib/zutil.h $(srcdir)/zlib/zlib.h zlib/zconf.h $(srcdir)/zlib/inftrees.h $(srcdir)/zlib/inflate.h $(srcdir)/zlib/inffast.h $(srcdir)/zlib/inffixed.h
461         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/inflate.c
462 inftrees.o: $(srcdir)/zlib/zutil.h $(srcdir)/zlib/zlib.h zlib/zconf.h $(srcdir)/zlib/inftrees.h
463         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/inftrees.c
464 trees.o: $(srcdir)/zlib/deflate.h $(srcdir)/zlib/zutil.h $(srcdir)/zlib/zlib.h zlib/zconf.h $(srcdir)/zlib/trees.h
465         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/trees.c
466 uncompr.o: $(srcdir)/zlib/zlib.h zlib/zconf.h
467         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/uncompr.c
468 zutil.o: $(srcdir)/zlib/zutil.h $(srcdir)/zlib/zlib.h zlib/zconf.h
469         $(CC) -c -I. -I$(srcdir)/zlib $(CFLAGS) $(srcdir)/zlib/zutil.c
470
471 @DEV@varsub: $(srcdir)/configure.in
472 @DEV@   printf 's#@%s@#1#\ns#@%s@#1#\ns#@%s@#1#\ns#@%s@#/etc#g\ns#@%s@#/usr/local#g\ns#@%s@#4#g\ns#@%s@#1m#g\n' SEMAN BAMAN LCMAN sysconfdir prefix mansectform mansectsu > $@; sed -n '/Begin initial values for man page substitution/,/End initial values for man page substitution/{;p;}' $(srcdir)/configure.in | sed -e '/^#/d' -e 's/^/s#@/' -e 's/=[\\"]*/@#/' -e 's/[\\"]*$$/#g/' >> $@
473
474 @DEV@$(srcdir)/sudo.man.in: $(srcdir)/sudo.pod
475 @DEV@   mansectsu=`echo @MANSECTSU@|tr A-Z a-z`; mansectform=`echo @MANSECTFORM@|tr A-Z a-z`; sed -n -e '/^=pod/q' -e 's/^/.\\" /p' $(srcdir)/sudo.pod > $@; pod2man --quotes=none --date="`date '+%B %e, %Y'`" --section=$$mansectsu --release=$(VERSION) --center="MAINTENANCE COMMANDS" $(srcdir)/sudo.pod | sed -e "s/(5)/($$mansectform)/" -e "s/(8)/($$mansectsu)/" | perl -p $(srcdir)/sudo.man.pl >> $@
476
477 sudo.man: $(srcdir)/sudo.man.in
478         $(SHELL) config.status --file=$@
479
480 @DEV@$(srcdir)/sudo.cat: varsub $(srcdir)/sudo.man.in
481 @DEV@   sed -f varsub $(srcdir)/sudo.man.in | $(NROFF) -man > $@
482
483 @DEV@$(srcdir)/visudo.man.in: $(srcdir)/visudo.pod
484 @DEV@   mansectsu=`echo @MANSECTSU@|tr A-Z a-z`; mansectform=`echo @MANSECTFORM@|tr A-Z a-z`; sed -n -e '/^=pod/q' -e 's/^/.\\" /p' $(srcdir)/visudo.pod > $@; pod2man --quotes=none --date="`date '+%B %e, %Y'`" --section=$$mansectsu --release=$(VERSION) --center="MAINTENANCE COMMANDS" $(srcdir)/visudo.pod | sed -e "s/(5)/($$mansectform)/" -e "s/(8)/($$mansectsu)/" -e 's|\\fI\\f\((CW*\)*I@\([^@]*\)\\fI@|\\fI@\2@|g' >> $@
485
486 visudo.man: $(srcdir)/visudo.man.in
487         $(SHELL) config.status --file=$@
488
489 @DEV@$(srcdir)/visudo.cat: varsub $(srcdir)/visudo.man.in
490 @DEV@   sed -f varsub $(srcdir)/visudo.man.in | $(NROFF) -man > $@
491
492 @DEV@$(srcdir)/sudoers.man.in: $(srcdir)/sudoers.pod
493 @DEV@   mansectsu=`echo @MANSECTSU@|tr A-Z a-z`; mansectform=`echo @MANSECTFORM@|tr A-Z a-z`; sed -n -e '/^=pod/q' -e 's/^/.\\" /p' $(srcdir)/sudoers.pod > $@; pod2man --quotes=none --date="`date '+%B %e, %Y'`" --section=$$mansectform --release=$(VERSION) --center="MAINTENANCE COMMANDS" $(srcdir)/sudoers.pod | sed -e "s/(5)/($$mansectform)/" -e "s/(8)/($$mansectsu)/" | perl -p $(srcdir)/sudoers.man.pl >> $@
494
495 sudoers.man: $(srcdir)/sudoers.man.in
496         $(SHELL) config.status --file=$@
497
498 @DEV@$(srcdir)/sudoers.cat: varsub $(srcdir)/sudoers.man.in
499 @DEV@   sed -f varsub $(srcdir)/sudoers.man.in | $(NROFF) -man > $@
500
501 @DEV@$(srcdir)/sudoers.ldap.man.in: $(srcdir)/sudoers.ldap.pod
502 @DEV@   mansectsu=`echo @MANSECTSU@|tr A-Z a-z`; mansectform=`echo @MANSECTFORM@|tr A-Z a-z`; sed -n -e '/^=pod/q' -e 's/^/.\\" /p' $(srcdir)/sudoers.ldap.pod > $@; pod2man --quotes=none --date="`date '+%B %e, %Y'`" --section=$$mansectform --release=$(VERSION) --center="MAINTENANCE COMMANDS" $(srcdir)/sudoers.ldap.pod | sed -e "s/(5)/($$mansectform)/" -e "s/(8)/($$mansectsu)/" -e 's|\\fI\\f\((CW*\)*I@\([^@]*\)\\fI@|\\fI@\2@|g' >> $@
503
504 sudoers.ldap.man: $(srcdir)/sudoers.ldap.man.in
505         $(SHELL) config.status --file=$@
506
507 @DEV@$(srcdir)/sudoers.ldap.cat: varsub $(srcdir)/sudoers.ldap.man.in
508 @DEV@   sed -f varsub $(srcdir)/sudoers.ldap.man.in | $(NROFF) -man > $@
509
510 @DEV@$(srcdir)/sudoreplay.man.in: $(srcdir)/sudoreplay.pod
511 @DEV@   mansectsu=`echo @MANSECTSU@|tr A-Z a-z`; mansectform=`echo @MANSECTFORM@|tr A-Z a-z`; sed -n -e '/^=pod/q' -e 's/^/.\\" /p' $(srcdir)/sudoreplay.pod > $@; pod2man --quotes=none --date="`date '+%B %e, %Y'`" --section=$$mansectsu --release=$(VERSION) --center="MAINTENANCE COMMANDS" $(srcdir)/sudoreplay.pod | sed -e "s/(5)/($$mansectform)/" -e "s/(8)/($$mansectsu)/" -e 's|\\fI\\f\((CW*\)*I@\([^@]*\)\\fI@|\\fI@\2@|g' >> $@
512
513 sudoreplay.man: $(srcdir)/sudoreplay.man.in
514         $(SHELL) config.status --file=$@
515
516 @DEV@$(srcdir)/sudoreplay.cat: varsub $(srcdir)/sudoreplay.man.in
517 @DEV@   sed -f varsub $(srcdir)/sudoreplay.man.in | $(NROFF) -man > $@
518
519 @DEV@HISTORY: $(srcdir)/history.pod
520 @DEV@   pod2text -l -i0 $(srcdir)/history.pod > $@
521 @DEV@
522 @DEV@LICENSE: $(srcdir)/license.pod
523 @DEV@   pod2text -l -i0 $(srcdir)/license.pod | sed '1,2d' > $@
524
525 sudoers: $(srcdir)/sudoers.in
526         (cd $(top_builddir) && $(SHELL) config.status --file=plugins/sudoers/$@)
527
528 # The 1.7 branch started Jan 18, 2010
529 ChangeLog:
530         if test -d $(srcdir)/.hg && cd $(srcdir); then \
531             if hg log --style=changelog -b 1.7 > $@.tmp && hg log --style=changelog -b default --date '<2010-01-18 00:00:00' >> $@.tmp; then \
532                 mv -f $@.tmp $@; \
533             else \
534                 rm -f $@.tmp; \
535             fi; \
536         fi
537
538 pre-install:
539         @if test -r $(DESTDIR)$(sudoersdir)/sudoers; then \
540             echo "Checking existing sudoers file for syntax errors."; \
541             ./visudo -c -f $(DESTDIR)$(sudoersdir)/sudoers; \
542         fi
543
544 install: pre-install install-dirs install-binaries @INSTALL_NOEXEC@ install-sudoers install-doc
545
546 install-dirs:
547         $(SHELL) $(srcdir)/mkinstalldirs $(DESTDIR)$(sudodir) \
548             $(DESTDIR)$(visudodir) $(DESTDIR)$(noexecdir) \
549             $(DESTDIR)$(sudoersdir) $(DESTDIR)$(docdir) \
550             $(DESTDIR)$(mandirsu) $(DESTDIR)$(mandirform)
551         $(SHELL) $(srcdir)/mkinstalldirs -m 0700 $(DESTDIR)$(timedir)
552
553 install-binaries: install-dirs $(PROGS)
554         $(INSTALL) -b~ -O $(install_uid) -G $(install_gid) -M 04111 sudo $(DESTDIR)$(sudodir)/sudo
555         rm -f $(DESTDIR)$(sudodir)/sudoedit
556         ln $(DESTDIR)$(sudodir)/sudo $(DESTDIR)$(sudodir)/sudoedit
557         if [ -f sudoreplay ]; then $(INSTALL) -b~ -O $(install_uid) -G $(install_gid) -M 0111 sudoreplay $(DESTDIR)$(sudodir)/sudoreplay; fi
558         $(INSTALL) -b~ -O $(install_uid) -G $(install_gid) -M 0111 visudo $(DESTDIR)$(visudodir)/visudo
559         if [ -f sesh ]; then $(INSTALL) -b~ -O $(install_uid) -G $(install_gid) -M 0111 sesh $(DESTDIR)$(libexecdir)/sesh; fi
560
561 install-noexec: install-dirs libsudo_noexec.la
562         if [ -f .libs/lib$(noexecfile) ]; then $(INSTALL) -b~ -O $(install_uid) -G $(install_gid) -M 0755 .libs/lib$(noexecfile) $(DESTDIR)$(noexecdir)/$(noexecfile); fi
563
564 install-sudoers: install-dirs
565         $(INSTALL) -d -O $(sudoers_uid) -G $(sudoers_gid) -M 0750 \
566             $(DESTDIR)$(sudoersdir)/sudoers.d
567         test -f $(DESTDIR)$(sudoersdir)/sudoers || \
568             $(INSTALL) -O $(sudoers_uid) -G $(sudoers_gid) -M $(sudoers_mode) \
569                 sudoers $(DESTDIR)$(sudoersdir)/sudoers
570
571 install-doc: install-dirs ChangeLog
572         (cd $(srcdir) && for f in ChangeLog HISTORY LICENSE NEWS README TROUBLESHOOTING UPGRADE sample.*; do $(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 $$f $(DESTDIR)$(docdir); done)
573         @LDAP@(cd $(srcdir) && for f in README.LDAP schema.* sudoers2ldif; do $(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 $$f $(DESTDIR)$(docdir); done)
574         $(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 @mansrcdir@/sudo.$(mantype) $(DESTDIR)$(mandirsu)/sudo.$(mansectsu)
575         @rm -f $(DESTDIR)$(mandirsu)/sudoedit.$(mansectsu)
576         ln $(DESTDIR)$(mandirsu)/sudo.$(mansectsu) $(DESTDIR)$(mandirsu)/sudoedit.$(mansectsu)
577         @REPLAY@$(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 @mansrcdir@/sudoreplay.$(mantype) $(DESTDIR)$(mandirsu)/sudoreplay.$(mansectsu)
578         $(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 @mansrcdir@/visudo.$(mantype) $(DESTDIR)$(mandirsu)/visudo.$(mansectsu)
579         $(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 @mansrcdir@/sudoers.$(mantype) $(DESTDIR)$(mandirform)/sudoers.$(mansectform)
580         @LDAP@$(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 @mansrcdir@/sudoers.ldap.$(mantype) $(DESTDIR)$(mandirform)/sudoers.ldap.$(mansectform)
581 @MAN_POSTINSTALL@
582
583 check:
584         @echo nothing to check
585
586 clean:
587         -rm -f *.a *.o *.lo stamp-* varsub $(PROGS) testsudoers core *.core core.*
588
589 mostlyclean: clean
590
591 distclean: clean
592         -rm -rf Makefile pathnames.h config.h config.status config.cache \
593                 config.log libtool sudoers sudo_noexec.lo .libs $(GENERATED) \
594                 sudo.man sudoers.man sudoers.ldap.man sudoreplay.man \
595                 visudo.man sudo_usage.h Makefile.binary zlib/zconf.h
596
597 clobber: distclean
598
599 realclean: distclean
600         rm -f TAGS tags
601
602 cleandir: realclean
603
604 dist: ChangeLog
605         pax -w -x ustar -s '/^/$(PACKAGE_TARNAME)-$(VERSION)\//' \
606             -f ../$(PACKAGE_TARNAME)-$(VERSION).tar $(DISTFILES)
607         gzip -9f ../$(PACKAGE_TARNAME)-$(VERSION).tar
608         ls -l ../$(PACKAGE_TARNAME)-$(VERSION).tar.gz
609
610 package: sudo.pp
611         DESTDIR=`cd $(top_builddir) && pwd`/destdir; rm -rf $$DESTDIR; \
612         $(MAKE) install DESTDIR=$$DESTDIR && \
613         $(SHELL) $(srcdir)/pp $(PPFLAGS) \
614             --destdir=$$DESTDIR \
615             $(srcdir)/sudo.pp \
616             bindir=$(bindir) \
617             sbindir=$(sbindir) \
618             libexecdir=$(libexecdir) \
619             timedir=$(timedir) \
620             mandir=$(mandir) \
621             docdir=$(docdir) \
622             sysconfdir=$(sysconfdir) \
623             sudoersdir=$(sudoersdir) \
624             sudoers_uid=$(sudoers_uid) \
625             sudoers_gid=$(sudoers_gid) \
626             sudoers_mode=$(sudoers_mode) \
627             version=$(VERSION) $(PPVARS)
628
629 .PHONY: ChangeLog