X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/9a933bc2ce8aae17f30925412e2cc0d14178d0cd..75fb17b891da5568773ee741ca5266edebe268c2:/Makefile.in diff --git a/Makefile.in b/Makefile.in index 3df63a99..e1249360 100644 --- a/Makefile.in +++ b/Makefile.in @@ -9,6 +9,8 @@ mandir=@mandir@ LIBS=@LIBS@ CC=@CC@ CFLAGS=@CFLAGS@ +CPPFLAGS=@CPPFLAGS@ +EXEEXT=@EXEEXT@ LDFLAGS=@LDFLAGS@ INSTALLCMD=@INSTALL@ @@ -41,21 +43,30 @@ OBJS=$(OBJS1) $(OBJS2) $(OBJS3) $(DAEMON_OBJ) $(LIBOBJ) $(ZLIBOBJ) @BUILD_POPT@ TLS_OBJ = tls.o syscall.o lib/permstring.o # Programs we must have to run the test cases -CHECK_PROGS = rsync tls getgroups trimslash t_unsafe +RSYNC_EXE=rsync$(EXEEXT) +TLS_EXE=tls$(EXEEXT) +GETGROUPS_EXE=getgroups$(EXEEXT) +TRIMSLASH_EXE=trimslash$(EXEEXT) +T_UNSAFE_EXE=t_unsafe$(EXEEXT) +CHECK_PROGS=$(RSYNC_EXE) $(TLS_EXE) $(GETGROUPS_EXE) \ + $(TRIMSLASH_EXE) $(T_UNSAFE_EXE) + +# Objects for CHECK_PROGS to clean +CHECK_OBJS=getgroups.o t_stub.o t_unsafe.o trimslash.o # note that the -I. is needed to handle config.h when using VPATH .c.o: @OBJ_SAVE@ - $(CC) -I. -I$(srcdir) $(CFLAGS) -c $< @CC_SHOBJ_FLAG@ + $(CC) -I. -I$(srcdir) $(CFLAGS) $(CPPFLAGS) -c $< @CC_SHOBJ_FLAG@ @OBJ_RESTORE@ -all: rsync +all: $(RSYNC_EXE) man: rsync.1 rsyncd.conf.5 install: all -mkdir -p ${DESTDIR}${bindir} - ${INSTALLCMD} ${STRIP} -m 755 rsync ${DESTDIR}${bindir} + ${INSTALLCMD} ${STRIP} -m 755 $(RSYNC_EXE) ${DESTDIR}${bindir} -mkdir -p ${DESTDIR}${mandir}/man1 -mkdir -p ${DESTDIR}${mandir}/man5 ${INSTALLMAN} -m 644 $(srcdir)/rsync.1 ${DESTDIR}${mandir}/man1 @@ -64,24 +75,24 @@ install: all install-strip: $(MAKE) STRIP='-s' install -rsync: $(OBJS) +$(RSYNC_EXE): $(OBJS) @echo "Please ignore warnings below about mktemp -- it is used in a safe way" - $(CC) $(CFLAGS) $(LDFLAGS) -o rsync $(OBJS) $(LIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(LIBS) $(OBJS): config.h -tls: $(TLS_OBJ) +$(TLS_EXE): $(TLS_OBJ) $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TLS_OBJ) $(LIBS) -getgroups: getgroups.o +$(GETGROUPS_EXE): getgroups.o $(CC) $(CFLAGS) $(LDFLAGS) -o $@ getgroups.o $(LIBS) TRIMSLASH_OBJ = trimslash.o syscall.o -trimslash: $(TRIMSLASH_OBJ) +$(TRIMSLASH_EXE): $(TRIMSLASH_OBJ) $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TRIMSLASH_OBJ) $(LIBS) T_UNSAFE_OBJ = t_unsafe.o syscall.o util.o t_stub.o lib/compat.o lib/snprintf.o -t_unsafe: $(T_UNSAFE_OBJ) +$(T_UNSAFE_EXE): $(T_UNSAFE_OBJ) $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(T_UNSAFE_OBJ) $(LIBS) # I don't like these rules because CVS can skew the timestamps and @@ -106,7 +117,7 @@ proto: cat $(srcdir)/*.c $(srcdir)/lib/compat.c | awk -f $(srcdir)/mkproto.awk > $(srcdir)/proto.h clean: cleantests - rm -f *~ $(OBJS) rsync $(TLS_OBJ) $(CHECK_PROGS) + rm -f *~ $(OBJS) $(TLS_OBJ) $(CHECK_PROGS) $(CHECK_OBJS) cleantests: rm -rf ./testtmp* @@ -151,14 +162,14 @@ test: check # might lose in the future where POSIX diverges from old sh. check: all $(CHECK_PROGS) - POSIXLY_CORRECT=1 TOOLDIR=`pwd` rsync_bin=`pwd`/rsync srcdir="$(srcdir)" $(srcdir)/runtests.sh + POSIXLY_CORRECT=1 TOOLDIR=`pwd` rsync_bin=`pwd`/$(RSYNC_EXE) srcdir="$(srcdir)" $(srcdir)/runtests.sh # This does *not* depend on building or installing: you can use it to # check a version installed from a binary or some other source tree, # if you want. installcheck: $(CHECK_PROGS) - POSIXLY_CORRECT=1 TOOLDIR=`pwd` rsync_bin="$(bindir)/rsync" srcdir="$(srcdir)" $(srcdir)/runtests.sh + POSIXLY_CORRECT=1 TOOLDIR=`pwd` rsync_bin="$(bindir)/$(RSYNC_EXE)" srcdir="$(srcdir)" $(srcdir)/runtests.sh # TODO: Add 'dist' target; need to know which files will be included