X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=Makefile.in;h=1fbed4cd05b14762342247ca399ae6079ea2cb35;hb=HEAD;hp=5919cc322db80ca256c080d32528d10438f19071;hpb=6408e7bb4ca7dc01aaf8d2ca6d48f4200cfa7cfe;p=debian%2Fsudo diff --git a/Makefile.in b/Makefile.in index 5919cc3..1fbed4c 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,5 +1,5 @@ # -# Copyright (c) 1996, 1998-2007 Todd C. Miller +# Copyright (c) 2010-2011 Todd C. Miller # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above @@ -14,387 +14,288 @@ # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # -# Sponsored in part by the Defense Advanced Research Projects -# Agency (DARPA) and Air Force Research Laboratory, Air Force -# Materiel Command, USAF, under agreement number F39502-99-1-0512. -# -# @configure_input@ -# -# $Sudo: Makefile.in,v 1.246.2.18 2007/11/02 19:15:16 millert Exp $ -# - -#### Start of system configuration section. #### srcdir = @srcdir@ -authdir = $(srcdir)/auth -top_builddir = . -VPATH = @srcdir@ - -# Compiler & tools to use -CC = @CC@ -LEX = flex -YACC = @YACC@ -NROFF = nroff -LIBTOOL = @LIBTOOL@ - -# Our install program supports extra flags... -INSTALL = $(SHELL) $(srcdir)/install-sh -c - -# Libraries -LIBS = @LIBS@ -NET_LIBS = @NET_LIBS@ -SUDO_LIBS = @SUDO_LIBS@ @AFS_LIBS@ $(LIBS) $(NET_LIBS) - -# C preprocessor flags -CPPFLAGS = -I. -I$(srcdir) @CPPFLAGS@ - -# Usually -O and/or -g -CFLAGS = @CFLAGS@ +devdir = @devdir@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ -# Flags to pass to the link stage -LDFLAGS = @LDFLAGS@ -SUDO_LDFLAGS = @SUDO_LDFLAGS@ $(LDFLAGS) - -# Where to install things... +# Installation paths for package building prefix = @prefix@ exec_prefix = @exec_prefix@ bindir = @bindir@ sbindir = @sbindir@ sysconfdir = @sysconfdir@ -mandir = @mandir@ -noexecdir = @NOEXECDIR@ +libexecdir = @libexecdir@ +includedir = @includedir@ datarootdir = @datarootdir@ - -# Directory in which to install sudo. -sudodir = $(bindir) - -# Directory in which to install visudo -visudodir = $(sbindir) - -# Directory in which to install the sudoers file -sudoersdir = $(sysconfdir) - -# Directory in which to install the man page -mantype = @MANTYPE@ -mansectsu = @mansectsu@ -mansectform = @mansectform@ -mandirsu = $(mandir)/$(mantype)$(mansectsu) -mandirform = $(mandir)/$(mantype)$(mansectform) +localedir = @localedir@ +localstatedir = @localstatedir@ +docdir = @docdir@ +mandir = @mandir@ +timedir = @timedir@ # User and group ids the installed files should be "owned" by install_uid = 0 install_gid = 0 -# User, group, and mode the sudoers file should be "owned" by (configure) +# sudoers owner and mode for package building +sudoersdir = $(sysconfdir) sudoers_uid = @SUDOERS_UID@ sudoers_gid = @SUDOERS_GID@ sudoers_mode = @SUDOERS_MODE@ -# Pass in paths and uid/gid + OS dependent defined -DEFS = @OSDEFS@ -D_PATH_SUDOERS=\"$(sudoersdir)/sudoers\" -D_PATH_SUDOERS_TMP=\"$(sudoersdir)/sudoers.tmp\" -DSUDOERS_UID=$(sudoers_uid) -DSUDOERS_GID=$(sudoers_gid) -DSUDOERS_MODE=$(sudoers_mode) - -#### End of system configuration section. #### - -SHELL = /bin/sh - -PROGS = @PROGS@ - -SRCS = alloc.c alloca.c check.c closefrom.c def_data.c defaults.c env.c err.c \ - fileops.c find_path.c fnmatch.c getcwd.c getprogname.c getspwuid.c \ - gettime.c glob.c goodpath.c interfaces.c ldap.c lex.yy.c lsearch.c \ - logging.c memrchr.c mkstemp.c parse.c parse.lex parse.yacc set_perms.c \ - sigaction.c snprintf.c strcasecmp.c strerror.c strlcat.c strlcpy.c \ - sudo.c sudo_noexec.c sudo.tab.c sudo_edit.c testsudoers.c tgetpass.c \ - utimes.c visudo.c zero_bytes.c $(AUTH_SRCS) - -AUTH_SRCS = auth/afs.c auth/aix_auth.c auth/bsdauth.c auth/dce.c auth/fwtk.c \ - auth/kerb4.c auth/kerb5.c auth/pam.c auth/passwd.c auth/rfc1938.c \ - auth/secureware.c auth/securid.c auth/securid5.c auth/sia.c \ - auth/sudo_auth.c - -HDRS = compat.h def_data.h defaults.h ins_2001.h ins_classic.h ins_csops.h \ - ins_goons.h insults.h interfaces.h logging.h parse.h sudo.h sudo.tab.h \ - version.h auth/sudo_auth.h emul/err.h emul/fnmatch.h emul/search.h \ - emul/utime.h emul/glob.h emul/timespec.h - -AUTH_OBJS = sudo_auth.o @AUTH_OBJS@ - -PARSEOBJS = sudo.tab.o lex.yy.o alloc.o defaults.o - -SUDOBJS = check.o env.o getspwuid.o gettime.o goodpath.o fileops.o find_path.o \ - interfaces.o logging.o parse.o set_perms.o sudo.o sudo_edit.o \ - tgetpass.o zero_bytes.o @SUDO_OBJS@ $(AUTH_OBJS) $(PARSEOBJS) - -VISUDOBJS = visudo.o fileops.o gettime.o goodpath.o find_path.o $(PARSEOBJS) - -TESTOBJS = interfaces.o testsudoers.o $(PARSEOBJS) - -LIBOBJS = @LIBOBJS@ @ALLOCA@ - -VERSION = 1.6.9p8 - -DISTFILES = $(SRCS) $(HDRS) BUGS CHANGES HISTORY INSTALL INSTALL.configure \ - LICENSE Makefile.in PORTING README README.LDAP \ - TROUBLESHOOTING UPGRADE aclocal.m4 acsite.m4 aixcrypt.exp \ - config.guess config.h.in config.sub configure configure.in \ - def_data.in fnmatch.3 indent.pro install-sh ltmain.sh \ - mkdefaults mkinstalldirs pathnames.h.in sample.pam \ - sample.syslog.conf sample.sudoers schema.OpenLDAP \ - schema.iPlanet sudo.cat sudo.man.in sudo.pod sudoers \ - sudoers.cat sudoers.man.in sudoers.pod sudoers2ldif \ - visudo.cat visudo.man.in visudo.pod auth/API - -BINFILES= BUGS CHANGES HISTORY LICENSE README TROUBLESHOOTING \ - UPGRADE install-sh mkinstalldirs sample.syslog.conf sample.sudoers \ - sudo sudo.cat sudo.man sudo.pod sudoers sudoers.cat sudoers.man \ - sudoers.pod visudo visudo.cat visudo.man visudo.pod - -BINSPECIAL= INSTALL.binary Makefile.binary libtool - -SUDODEP = $(srcdir)/sudo.h $(srcdir)/compat.h $(srcdir)/defaults.h \ - $(srcdir)/logging.h config.h def_data.h pathnames.h - -AUTHDEP = $(SUDODEP) $(authdir)/sudo_auth.h - -INSDEP = $(srcdir)/ins_2001.h $(srcdir)/ins_classic.h $(srcdir)/ins_csops.h \ - $(srcdir)/ins_goons.h $(srcdir)/insults.h - -all: $(PROGS) - -.SUFFIXES: .o .c .h .lex .yacc .man .cat .lo - -.c.o: - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $< - -.c.lo: - $(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $< - -.man.cat: - @rm -f $(srcdir)/$@ - $(NROFF) -man $< > $(srcdir)/$@ - -sudo: $(SUDOBJS) $(LIBOBJS) - $(CC) -o $@ $(SUDOBJS) $(LIBOBJS) $(SUDO_LDFLAGS) $(SUDO_LIBS) - -visudo: $(VISUDOBJS) $(LIBOBJS) - $(CC) -o $@ $(VISUDOBJS) $(LIBOBJS) $(LDFLAGS) $(LIBS) $(NET_LIBS) - -testsudoers: $(TESTOBJS) $(LIBOBJS) - $(CC) -o $@ $(TESTOBJS) $(LIBOBJS) $(LDFLAGS) $(LIBS) $(NET_LIBS) - -sudo_noexec.lo: $(srcdir)/sudo_noexec.c - $(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/sudo_noexec.c - -sudo_noexec.la: sudo_noexec.lo - $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ sudo_noexec.lo -avoid-version -rpath $(noexecdir) - -# Uncomment the following if you want "make distclean" to clean the parser -@DEV@PARSESRCS = sudo.tab.h sudo.tab.c lex.yy.c def_data.c def_data.h - -# Uncomment the following if you intend to modify parse.yacc -sudo.tab.c sudo.tab.h: parse.yacc - rm -f sudo.tab.h sudo.tab.c - $(YACC) -d -b sudo $(srcdir)/parse.yacc - -# Uncomment the following if you intend to modify parse.lex -@DEV@lex.yy.c: parse.lex -@DEV@ rm -f lex.yy.c -@DEV@ $(LEX) $(srcdir)/parse.lex - -# Uncomment the following if you intend to modify def_data.in -@DEV@def_data.h def_data.c: def_data.in -@DEV@ perl $(srcdir)/mkdefaults -o def_data $(srcdir)/def_data.in - -# Dependencies (not counting auth functions) -alloc.o: alloc.c $(SUDODEP) -check.o: check.c $(SUDODEP) -closefrom.o: closefrom.c config.h -env.o: env.c $(SUDODEP) -err.o: err.c config.h compat.h emul/err.h -fileops.o: fileops.c $(SUDODEP) -find_path.o: find_path.c $(SUDODEP) -getprogname.o: getprogname.c config.h -getspwuid.o: getspwuid.c $(SUDODEP) -goodpath.o: goodpath.c $(SUDODEP) -logging.o: logging.c $(SUDODEP) -set_perms.o: set_perms.c $(SUDODEP) -tgetpass.o: tgetpass.c $(SUDODEP) -visudo.o: visudo.c $(SUDODEP) version.h -sudo.o: sudo.c $(SUDODEP) interfaces.h version.h -interfaces.o: interfaces.c $(SUDODEP) interfaces.h -testsudoers.o: testsudoers.c $(SUDODEP) parse.h interfaces.h -parse.o: parse.c $(SUDODEP) parse.h interfaces.h -lex.yy.o: lex.yy.c $(SUDODEP) parse.h sudo.tab.h -sudo.tab.o: sudo.tab.c $(SUDODEP) parse.h sudo.tab.c sudo.tab.h -defaults.o: defaults.c $(SUDODEP) def_data.c auth/sudo_auth.h -fnmatch.o: fnmatch.c config.h compat.h emul/fnmatch.h -getcwd.o: getcwd.c config.h compat.h -glob.o: glob.c config.h compat.h emul/glob.h -lsearch.o: lsearch.c config.h compat.h emul/search.h -memrchr.o: memrchr.c config.h compat.h -mkstemp.o: mkstemp.c config.h compat.h -snprintf.o: snprintf.c config.h compat.h -strcasecmp.o: strcasecmp.c config.h -strlcat.o: strlcat.c config.h -strlcpy.o: strlcpy.c config.h -strerror.o: strerror.c config.h -utime.o: utime.c config.h pathnames.h compat.h emul/utime.h -ldap.o: ldap.c $(SUDODEP) parse.h -sudo_edit.o: sudo_edit.c $(SUDODEP) - -# Authentication functions live in "auth" dir and so need extra care -sudo_auth.o: $(authdir)/sudo_auth.c $(AUTHDEP) $(INSDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/sudo_auth.c -afs.o: $(authdir)/afs.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/afs.c -aix_auth.o: $(authdir)/aix_auth.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/aix_auth.c -bsdauth.o: $(authdir)/bsdauth.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/bsdauth.c -dce.o: $(authdir)/dce.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/dce.c -fwtk.o: $(authdir)/fwtk.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/fwtk.c -kerb4.o: $(authdir)/kerb4.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/kerb4.c -kerb5.o: $(authdir)/kerb5.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/kerb5.c -pam.o: $(authdir)/pam.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/pam.c -passwd.o: $(authdir)/passwd.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/passwd.c -rfc1938.o: $(authdir)/rfc1938.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/rfc1938.c -secureware.o: $(authdir)/secureware.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/secureware.c -securid.o: $(authdir)/securid.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/securid.c -securid5.o: $(authdir)/securid5.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/securid5.c -sia.o: $(authdir)/sia.c $(AUTHDEP) - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(authdir)/sia.c - -sudo.man.in: $(srcdir)/sudo.pod - @rm -f $(srcdir)/$@ - ( cd $(srcdir); mansectsu=`echo @MANSECTSU@|tr A-Z a-z`; mansectform=`echo @MANSECTFORM@|tr A-Z a-z`; sed -n -e 1d -e '/^=pod/q' -e 's/^/.\\" /p' sudo.pod > $@; pod2man --quotes=none --date="`date '+%B %e, %Y'`" --section=$$mansectsu --release=$(VERSION) --center="MAINTENANCE COMMANDS" sudo.pod | sed -e "s/(5)/($$mansectform)/" -e "s/(8)/($$mansectsu)/" >> $@ ) - -sudo.man: sudo.man.in - CONFIG_FILES=$@ CONFIG_HEADERS= sh ./config.status - -sudo.cat: sudo.man - -visudo.man.in: $(srcdir)/visudo.pod - @rm -f $(srcdir)/$@ - ( cd $(srcdir); mansectsu=`echo @MANSECTSU@|tr A-Z a-z`; mansectform=`echo @MANSECTFORM@|tr A-Z a-z`; sed -n -e 1d -e '/^=pod/q' -e 's/^/.\\" /p' visudo.pod > $@; pod2man --quotes=none --date="`date '+%B %e, %Y'`" --section=$$mansectsu --release=$(VERSION) --center="MAINTENANCE COMMANDS" visudo.pod | sed -e "s/(5)/($$mansectform)/" -e "s/(8)/($$mansectsu)/" >> $@ ) - -visudo.man: visudo.man.in - CONFIG_FILES=$@ CONFIG_HEADERS= sh ./config.status - -visudo.cat: visudo.man - -sudoers.man.in: $(srcdir)/sudoers.pod - @rm -f $(srcdir)/$@ - ( cd $(srcdir); mansectsu=`echo @MANSECTSU@|tr A-Z a-z`; mansectform=`echo @MANSECTFORM@|tr A-Z a-z`; sed -n -e 1d -e '/^=pod/q' -e 's/^/.\\" /p' sudoers.pod > $@; pod2man --quotes=none --date="`date '+%B %e, %Y'`" --section=$$mansectform --release=$(VERSION) --center="MAINTENANCE COMMANDS" sudoers.pod | sed -e "s/(5)/($$mansectform)/" -e "s/(8)/($$mansectsu)/" >> $@ ) - -sudoers.man:: sudoers.man.in - CONFIG_FILES=$@ CONFIG_HEADERS= sh ./config.status - -sudoers.cat: sudoers.man - -install: install-dirs install-binaries @INSTALL_NOEXEC@ install-sudoers install-man - -install-dirs: - $(SHELL) $(srcdir)/mkinstalldirs $(DESTDIR)$(sudodir) \ - $(DESTDIR)$(visudodir) $(DESTDIR)$(sudoersdir) \ - $(DESTDIR)$(mandirsu) $(DESTDIR)$(mandirform) \ - $(DESTDIR)$(noexecdir) - -install-binaries: $(PROGS) - $(INSTALL) -O $(install_uid) -G $(install_gid) -M 4111 -s sudo $(DESTDIR)$(sudodir)/sudo - rm -f $(DESTDIR)$(sudodir)/sudoedit - ln $(DESTDIR)$(sudodir)/sudo $(DESTDIR)$(sudodir)/sudoedit - - $(INSTALL) -O $(install_uid) -G $(install_gid) -M 0111 -s visudo $(DESTDIR)$(visudodir)/visudo - -install-noexec: sudo_noexec.la - $(LIBTOOL) --mode=install $(INSTALL) sudo_noexec.la $(DESTDIR)$(noexecdir) - -bininst-noexec: sudo_noexec.la - $(LIBTOOL) --mode=install $(INSTALL) sudo_noexec.la $(DESTDIR)$(noexecdir) - -install-sudoers: - test -f $(DESTDIR)$(sudoersdir)/sudoers || \ - $(INSTALL) -O $(sudoers_uid) -G $(sudoers_gid) -M $(sudoers_mode) \ - $(srcdir)/sudoers $(DESTDIR)$(sudoersdir)/sudoers - -install-man: sudo.$(mantype) visudo.$(mantype) sudoers.$(mantype) - $(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 @mansrcdir@/sudo.$(mantype) $(DESTDIR)$(mandirsu)/sudo.$(mansectsu) - @rm -f $(DESTDIR)$(mandirsu)/sudoedit.$(mansectsu) - ln $(DESTDIR)$(mandirsu)/sudo.$(mansectsu) $(DESTDIR)$(mandirsu)/sudoedit.$(mansectsu) - $(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 @mansrcdir@/visudo.$(mantype) $(DESTDIR)$(mandirsu)/visudo.$(mansectsu) - $(INSTALL) -O $(install_uid) -G $(install_gid) -M 0444 @mansrcdir@/sudoers.$(mantype) $(DESTDIR)$(mandirform)/sudoers.$(mansectform) -@MAN_POSTINSTALL@ - -check: - @echo nothing to check - -tags: $(SRCS) - ctags $(SRCS) - -TAGS: $(SRCS) - etags $(SRCS) - -clean: - -rm -f *.o $(PROGS) testsudoers core sudo.core visudo.core \ - testsudoers.core +SUBDIRS = compat common @ZLIB_SRC@ plugins/sudoers src include doc + +SAMPLES = plugins/sample plugins/sample_group plugins/system_group + +VERSION = @PACKAGE_VERSION@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ + +LIBTOOL_DEPS = @LIBTOOL_DEPS@ + +SHELL = @SHELL@ + +INSTALL = $(SHELL) $(top_srcdir)/install-sh -c + +ECHO_N = @ECHO_N@ +ECHO_C = @ECHO_C@ + +# Message catalog support +NLS = @SUDO_NLS@ +POTFILES = src/po/sudo.pot plugins/sudoers/po/sudoers.pot +MSGFMT = msgfmt +MSGMERGE = msgmerge +XGETTEXT = xgettext +XGETTEXT_OPTS = -F -k_ -kN_ --copyright-holder="Todd C. Miller" \ + "--msgid-bugs-address=http://www.sudo.ws/bugs" \ + --package-name=@PACKAGE_NAME@ --package-version=$(VERSION) \ + --flag warning:1:c-format --flag warningx:1:c-format \ + --flag error:2:c-format --flag errorx:2:c-format \ + --flag easprintf:3:c-format --flag lbuf_append:2:c-format \ + --flag lbuf_append_quoted:3:c-format --foreign-user + +all: config.status + for d in $(SUBDIRS) $(SAMPLES); \ + do (cd $$d && exec $(MAKE) $@) && continue; \ + exit $$?; \ + done + +check pre-install: config.status + for d in $(SUBDIRS); \ + do (cd $$d && exec $(MAKE) $@) && continue; \ + exit $$?; \ + done + +install-dirs install-binaries install-includes install-plugin: config.status pre-install + for d in $(SUBDIRS); \ + do (cd $$d && exec $(MAKE) $@) && continue; \ + exit $$?; \ + done + +install-doc: config.status ChangeLog + for d in $(SUBDIRS); \ + do (cd $$d && exec $(MAKE) $@) && continue; \ + exit $$?; \ + done + +install: config.status ChangeLog pre-install install-nls + for d in $(SUBDIRS); \ + do (cd $$d && exec $(MAKE) $@) && continue; \ + exit $$?; \ + done + +uninstall: uninstall-nls + for d in $(SUBDIRS); \ + do (cd $$d && exec $(MAKE) $@) && continue; \ + exit $$?; \ + done + +uninstall-nls: + for pot in $(POTFILES); do \ + domain=`basename $$pot .pot`; \ + rm -f $(DESTDIR)$(localedir)/*/LC_MESSAGES/$$domain.mo; \ + done + +autoconf: + autoconf -I m4 + +siglist.c: + (cd compat && exec $(MAKE) $@) + +depend: siglist.c + @if test "$(srcdir)" != "."; then \ + echo "make depend only supported in the source directory"; \ + exit 1; \ + fi; \ + $(srcdir)/mkdep.pl $(srcdir)/common/Makefile.in \ + $(srcdir)/compat/Makefile.in $(srcdir)/plugins/sample/Makefile.in \ + $(srcdir)/plugins/sample_group/Makefile.in \ + $(srcdir)/plugins/sudoers/Makefile.in \ + $(srcdir)/plugins/system_group/Makefile.in \ + $(srcdir)/src/Makefile.in $(srcdir)/zlib/Makefile.in; \ + ./config.status --file $(srcdir)/common/Makefile \ + --file $(srcdir)/compat/Makefile \ + --file $(srcdir)/plugins/sample/Makefile \ + --file $(srcdir)/plugins/sample_group/Makefile \ + --file $(srcdir)/plugins/sudoers/Makefile \ + --file $(srcdir)/plugins/system_group/Makefile \ + --file $(srcdir)/src/Makefile --file $(srcdir)/zlib/Makefile + +ChangeLog: + if test -d $(srcdir)/.hg && cd $(srcdir); then \ + if hg log --style=changelog -b default > $@.tmp; then \ + mv -f $@.tmp $@; \ + else \ + rm -f $@.tmp; \ + fi; \ + fi + +config.status: + @if [ ! -s config.status ]; then \ + echo "Please run configure first"; \ + exit 1; \ + fi + +libtool: $(LIBTOOL_DEPS) + $(SHELL) ./config.status --recheck + +Makefile: $(srcdir)/Makefile.in + ./config.status --file Makefile + +sync-po: rsync-po compile-po + +rsync-po: + rsync -Lrtvz translationproject.org::tp/latest/sudo/ src/po/ + rsync -Lrtvz translationproject.org::tp/latest/sudoers/ plugins/sudoers/po/ + +update-pot: + @if $(XGETTEXT) --help >/dev/null 2>&1; then \ + cd $(top_srcdir); \ + for pot in $(POTFILES); do \ + echo "Updating $$pot"; \ + domain=`basename $$pot .pot`; \ + case "$$domain" in \ + sudo) cfiles="src/*c common/*c compat/*c";; \ + sudoers) cfiles="plugins/sudoers/*.c plugins/sudoers/auth/*.c";; \ + *) echo unknown domain $$domain; continue;; \ + esac; \ + $(XGETTEXT) $(XGETTEXT_OPTS) -d$$domain $$cfiles -o $$pot.tmp; \ + if diff -I'^.POT-Creation-Date' -I'^.Project-Id-Version' -I'^#' $$pot.tmp $$pot >/dev/null; then \ + rm -f $$pot.tmp; \ + else \ + mv -f $$pot.tmp $$pot; \ + fi; \ + done; \ + fi + +update-po: update-pot + @if $(MSGFMT) --help >/dev/null 2>&1; then \ + cd $(top_srcdir); \ + for pot in $(POTFILES); do \ + podir=`dirname $$pot`; \ + for po in $$podir/*.po; do \ + echo $(ECHO_N) "Updating $$po$(ECHO_C)"; \ + $(MSGMERGE) --update $$po $$pot; \ + $(MSGFMT) --output /dev/null --check-format $$po || exit 1; \ + done; \ + done; \ + fi + +compile-po: + @if $(MSGFMT) --help >/dev/null 2>&1; then \ + cd $(top_srcdir); \ + rm -f Makefile.$$$$; \ + POFILES=""; \ + for pot in $(POTFILES); do \ + podir=`dirname $$pot`; \ + for po in $$podir/*.po; do \ + POFILES="$$POFILES $$po"; \ + done; \ + done; \ + echo "all: `echo $$POFILES | sed 's/\.po/.mo/g'`" >> Makefile.$$$$; \ + echo "" >> Makefile.$$$$; \ + for po in $$POFILES; do \ + mo=`echo $$po | sed 's/po$$/mo/'`; \ + echo "$$mo: $$po" >> Makefile.$$$$; \ + echo " $(MSGFMT) --statistics -c -o $$mo $$po" >> Makefile.$$$$; \ + done; \ + make -f Makefile.$$$$; \ + rm -f Makefile.$$$$; \ + fi + +install-nls: + @if test "$(NLS)" = "enabled"; then \ + cd $(top_srcdir); \ + for pot in $(POTFILES); do \ + podir=`dirname $$pot`; \ + domain=`basename $$pot .pot`; \ + SUDO_LINGUAS=$${LINGUAS-"`echo $$podir/*.mo|sed 's:'$$podir'/\([^ ]*\).mo:\1:g'`"}; \ + echo $(ECHO_N) "Installing $$domain message catalogs:$(ECHO_C)"; \ + for lang in $$SUDO_LINGUAS; do \ + test -s $$podir/$$lang.mo || continue; \ + echo $(ECHO_N) " $$lang$(ECHO_C)"; \ + $(SHELL) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \ + $(INSTALL) -O $(install_uid) -G $(install_gid) -m 0444 $$podir/$$lang.mo $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$$domain.mo; \ + done; \ + echo ""; \ + done; \ + fi + +check-dist: update-pot compile-po + @if [ -d .hg ]; then \ + if hg stat -am | grep '\.[mp]ot*$$'; then \ + echo "Uncommitted message catalog changes" 1>&2; \ + false; \ + fi; \ + fi + +dist: check-dist ChangeLog $(srcdir)/MANIFEST + pax -w -x ustar -s '/^/$(PACKAGE_TARNAME)-$(VERSION)\//' \ + -f ../$(PACKAGE_TARNAME)-$(VERSION).tar \ + `sed 's/[ ].*//' $(srcdir)/MANIFEST` + gzip -9f ../$(PACKAGE_TARNAME)-$(VERSION).tar + ls -l ../$(PACKAGE_TARNAME)-$(VERSION).tar.gz + +package: sudo.pp + DESTDIR=`cd $(top_builddir) && pwd`/destdir; rm -rf $$DESTDIR; \ + $(MAKE) install DESTDIR=$$DESTDIR && \ + $(SHELL) $(srcdir)/pp $(PPFLAGS) \ + --destdir=$$DESTDIR \ + $(srcdir)/sudo.pp \ + bindir=$(bindir) \ + sbindir=$(sbindir) \ + libexecdir=$(libexecdir) \ + includedir=$(includedir) \ + timedir=$(timedir) \ + mandir=$(mandir) \ + localedir=$(localedir) \ + docdir=$(docdir) \ + sysconfdir=$(sysconfdir) \ + sudoersdir=$(sudoersdir) \ + sudoers_uid=$(sudoers_uid) \ + sudoers_gid=$(sudoers_gid) \ + sudoers_mode=$(sudoers_mode) \ + version=$(VERSION) $(PPVARS) + +clean: config.status + for d in $(SUBDIRS) $(SAMPLES); do \ + (cd $$d && exec $(MAKE) $@); \ + done mostlyclean: clean -distclean: clean +distclean: config.status + for d in $(SUBDIRS) $(SAMPLES); do \ + (cd $$d && exec $(MAKE) $@); \ + done -rm -rf Makefile pathnames.h config.h config.status config.cache \ - config.log libtool sudo_noexec.lo .libs $(PARSESRCS) \ - sudo.man sudoers.man visudo.man + config.log libtool stamp-* autom4te.cache + +cleandir: distclean clobber: distclean realclean: distclean - rm -f TAGS tags - -cleandir: realclean - -dist: - rm -f ../sudo-$(VERSION).tar.gz - ( cd .. ; TF="/tmp/sudo.dist$$$$" ; rm -f $$TF ; for i in $(DISTFILES) ; \ - do echo sudo-$(VERSION)/$$i >> $$TF ; done ; \ - tar Ocf sudo-$(VERSION).tar \ - `cat $$TF` && gzip --best sudo-$(VERSION).tar && rm -f $$TF) - ls -l ../sudo-$(VERSION).tar.gz - -bindist: - ( \ - ARCH=`uname -m|sed 's:/:_:g'`+`uname -sr|sed 's/ /_/g'` ; \ - mkdir tmp.$$ARCH ; \ - tdir=tmp.$$ARCH/sudo-$(VERSION) ; \ - mkdir $$tdir ; \ - for i in $(BINFILES) ; do \ - if [ -f $$i ]; then \ - cp $$i $$tdir ; \ - elif [ -f $(srcdir)/$$i ]; then \ - cp $(srcdir)/$$i $$tdir ; \ - else \ - echo cannot find $$i ; \ - exit 1 ; \ - fi ; \ - done ; \ - if [ -f sudo_noexec.la ]; then \ - cp libtool $$tdir ; \ - $(LIBTOOL) --mode=install $(INSTALL) sudo_noexec.la `pwd`/$$tdir ; \ - ln $$tdir/sudo_noexec.la $$tdir/sudo_noexec.lai ; \ - ln -s . $$tdir/.libs ; \ - fi ; \ - cp $(srcdir)/INSTALL.binary $$tdir/INSTALL ; \ - sh ./config.status --file=Makefile.binary && cp Makefile.binary $$tdir/Makefile ; \ - cd tmp.$$ARCH && tar Ocf ../sudo-$(VERSION)-$$ARCH.tar sudo-$(VERSION) && cd .. ; \ - gzip --best sudo-$(VERSION)-$$ARCH.tar ; \ - rm -rf tmp.$$ARCH ; \ - ) + +.PHONY: ChangeLog