.SUFFIXES:
.SUFFIXES: .c .o
+GENFILES=configure.sh config.h.in proto.h proto.h-tstamp rsync.1 rsyncd.conf.5
HEADERS=byteorder.h config.h errcode.h proto.h rsync.h ifuncs.h lib/pool_alloc.h
LIBOBJ=lib/wildmatch.o lib/compat.o lib/snprintf.o lib/mdfour.o lib/md5.o \
lib/permstring.o lib/pool_alloc.o lib/sysacls.o lib/sysxattrs.o @LIBOBJS@
$(CC) -I. -I$(srcdir) $(CFLAGS) $(CPPFLAGS) -c $< @CC_SHOBJ_FLAG@
@OBJ_RESTORE@
-all: rsync$(EXEEXT)
+all: conf_stop rsync$(EXEEXT) @MAKE_MAN@
install: all
-mkdir -p ${DESTDIR}${bindir}
t_unsafe$(EXEEXT): $(T_UNSAFE_OBJ)
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(T_UNSAFE_OBJ) $(LIBS)
-gen:
- cd $(srcdir) && $(MAKE) -f prepare-source.mak gen
+gen: conf proto.h man
gensend: gen
- rsync -aivzc configure.sh config.h.in proto.h samba.org:/home/ftp/pub/rsync/generated-files/
+ rsync -aivzc $(GENFILES) samba.org:/home/ftp/pub/rsync/generated-files/
-man:
- cd $(srcdir) && $(MAKE) -f prepare-source.mak man
+conf:
+ cd $(srcdir) && $(MAKE) -f prepare-source.mak conf
-proto:
- cd $(srcdir) && $(MAKE) -f prepare-source.mak proto.h
+conf_stop: configure.sh config.h.in
+
+configure.sh config.h.in: configure.in aclocal.m4
+ autoconf -o configure.sh
+ autoheader && touch config.h.in
+ @echo 'Configure files changed -- perhaps run:'
+ @echo ' ./config.status --recheck; ./config.status'
+ @exit 1
+
+proto: proto.h-tstamp
+
+proto.h: proto.h-tstamp
+ @echo ' ' >/dev/null
+
+proto.h-tstamp: *.c lib/compat.c
+ perl mkproto.pl *.c lib/compat.c
+
+man: rsync.1 rsyncd.conf.5
+
+rsync.1: rsync.yo
+ yodl2man -o rsync.1 rsync.yo
+ -./tweak_manpage rsync.1
+
+rsyncd.conf.5: rsyncd.conf.yo
+ yodl2man -o rsyncd.conf.5 rsyncd.conf.yo
+ -./tweak_manpage rsyncd.conf.5
clean: cleantests
rm -f *~ $(OBJS) $(TLS_OBJ) $(CHECK_PROGS) $(CHECK_OBJS) $(CHECK_SYMLINKS) \
rm -f config.cache config.log
rm -f $(srcdir)/config.cache $(srcdir)/config.log
rm -f shconfig $(srcdir)/shconfig
- rm -f configure.sh config.h.in proto.h rsync.1 rsyncd.conf.5
+ rm -f $(GENFILES)
# this target is really just for my use. It only works on a limited
# range of machines and is used to produce a list of potentially