Makefile.in (install-strip) problem & 2.5.2 build error

Peter Breitenlohner peb at mppmu.mpg.de
Sun Jan 27 03:40:36 EST 2002


Hi,

1. "make install-strip" (in rsync-2.5.x) tries to strip the manpages and
thus fails; attached is a patch fixing the Makefile logic (and
also adding DESTDIR -- convenient for package-building or test-installing).

2. I just fetched rsync-2.5.2 but the build (on i686-linux) badly fails.
The complete log from configure and make is attached.

regards
Peter Breitenlohner <peb at mppmu.mpg.de>
-------------- next part --------------
diff -ur rsync-2.5.1.orig/Makefile.in rsync-2.5.1/Makefile.in
--- rsync-2.5.1.orig/Makefile.in	Thu Jan  3 08:09:27 2002
+++ rsync-2.5.1/Makefile.in	Sat Jan 26 17:16:10 2002
@@ -51,15 +51,15 @@
 man: rsync.1 rsyncd.conf.5
 
 install: all
-	-mkdir -p ${bindir}
-	${INSTALLCMD} -m 755 rsync ${bindir}
-	-mkdir -p ${mandir}/man1
-	-mkdir -p ${mandir}/man5
-	${INSTALLCMD} -m 644 $(srcdir)/rsync.1 ${mandir}/man1
-	${INSTALLCMD} -m 644 $(srcdir)/rsyncd.conf.5 ${mandir}/man5
+	-mkdir -p $(DESTDIR)${bindir}
+	${INSTALLCMD} ${STRIP} -m 755 rsync $(DESTDIR)${bindir}
+	-mkdir -p $(DESTDIR)${mandir}/man1
+	-mkdir -p $(DESTDIR)${mandir}/man5
+	${INSTALLCMD} -m 644 $(srcdir)/rsync.1 $(DESTDIR)${mandir}/man1
+	${INSTALLCMD} -m 644 $(srcdir)/rsyncd.conf.5 $(DESTDIR)${mandir}/man5
 
 install-strip:
-	$(MAKE) INSTALLCMD='$(INSTALLCMD) -s' install
+	$(MAKE) STRIP='-s' install
 
 rsync: $(OBJS)
 	@echo "Please ignore warnings below about mktemp -- it is used in a safe way"
-------------- next part --------------
========================================
CFLAGS=-O2 ../rsync-2.5.2/configure
configure: Configuring rsync 2.5.2
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for executable suffix... 
checking for object suffix... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking how to run the C preprocessor... gcc -E
checking for a BSD compatible install... /home/pcl321/peb/bin/install -c
checking for gcc option to accept ANSI C... none needed
checking whether to include debugging symbols... yes
checking for remsh... 0
checking for broken largefile support... yes
checking ipv6 stack type... linux-glibc
checking for library containing getaddrinfo... none required
checking whether byte ordering is bigendian... no
checking for dirent.h that defines DIR... yes
checking for opendir in -ldir... no
checking whether time.h and sys/time.h may both be included... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking for sys/fcntl.h... yes
checking for sys/select.h... yes
checking for fcntl.h... yes
checking for sys/time.h... yes
checking for sys/unistd.h... yes
checking for unistd.h... yes
checking for utime.h... yes
checking for grp.h... yes
checking for compat.h... no
checking for sys/param.h... yes
checking for ctype.h... yes
checking for sys/wait.h... (cached) yes
checking for sys/ioctl.h... yes
checking for sys/filio.h... no
checking for string.h... yes
checking for stdlib.h... yes
checking for sys/socket.h... yes
checking for sys/mode.h... no
checking for glob.h... yes
checking for alloca.h... yes
checking for mcheck.h... yes
checking for sys/sysctl.h... yes
checking for arpa/inet.h... yes
checking for arpa/nameser.h... yes
checking for netdb.h... yes
checking for malloc.h... yes
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... (cached) yes
checking for int... yes
checking size of int... 4
checking for long... yes
checking size of long... 4
checking for short... yes
checking size of short... 2
checking for inline... inline
checking return type of signal handlers... void
checking for uid_t in sys/types.h... yes
checking for mode_t... yes
checking for off_t... yes
checking for size_t... yes
checking for pid_t... yes
checking type of array argument to getgroups... gid_t
checking for struct stat.st_rdev... yes
checking for ino_t... yes
checking for socklen_t... yes
checking for errno in errno.h... yes
checking for connect... yes
checking for inet_ntop in -lresolv... yes
checking for inet_ntop... yes
checking for inet_pton... yes
checking for getaddrinfo... yes
checking for getnameinfo... yes
checking for struct sockaddr.sa_len... no
checking struct sockaddr_storage... yes
checking for strcasecmp... yes
checking whether utime accepts a null argument... yes
checking for waitpid... yes
checking for wait4... yes
checking for getcwd... yes
checking for strdup... yes
checking for strerror... yes
checking for chown... yes
checking for chmod... yes
checking for mknod... yes
checking for fchmod... yes
checking for fstat... yes
checking for strchr... yes
checking for readlink... yes
checking for link... yes
checking for utime... yes
checking for utimes... yes
checking for strftime... yes
checking for memmove... yes
checking for lchown... yes
checking for vsnprintf... yes
checking for snprintf... yes
checking for asprintf... yes
checking for setsid... yes
checking for glob... yes
checking for strpbrk... yes
checking for strlcat... no
checking for strlcpy... no
checking for mtrace... yes
checking for mallinfo... yes
checking for working socketpair... yes
checking for working fnmatch... yes
checking for poptGetContext in -lpopt... yes
checking whether to use included libpopt... no
checking for long long... yes
checking for off64_t... yes
checking for short ino_t... no
checking for unsigned char... no
checking for broken readdir... no
checking for utimbuf... yes
checking if gettimeofday takes tz argument... yes
checking for C99 vsnprintf... yes
checking for secure mkstemp... yes
checking for broken inet_ntoa... no
checking for broken inet_aton... no
checking whether -c -o works... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating lib/dummy
config.status: creating zlib/dummy
config.status: creating popt/dummy
config.status: creating shconfig
config.status: creating config.h

    rsync 2.5.2 configuration successful

rc=0
========================================
make DESTDIR=/home/pcl321/peb/archive/rsync/rsync-2.5.2-inst-linux-gnulibc2
gcc -I. -I../rsync-2.5.2 -O2 -DHAVE_CONFIG_H -Wall -W -c ../rsync-2.5.2/rsync.c -o rsync.o
In file included from ../rsync-2.5.2/rsync.c:23:
../rsync-2.5.2/rsync.h:339: warning: no semicolon at end of struct or union
../rsync-2.5.2/rsync.h:339: parse error before `inode'
../rsync-2.5.2/rsync.h:341: parse error before `dev'
../rsync-2.5.2/rsync.h:341: warning: type defaults to `int' in declaration of `dev'
../rsync-2.5.2/rsync.h:341: warning: data definition has no type or storage class
../rsync-2.5.2/rsync.h:344: parse error before `rdev'
../rsync-2.5.2/rsync.h:344: warning: type defaults to `int' in declaration of `rdev'
../rsync-2.5.2/rsync.h:344: warning: data definition has no type or storage class
../rsync-2.5.2/rsync.h:347: `basename' redeclared as different kind of symbol
/usr/lib/gcc-lib/ix86-linux-gnulibc2/2.95.3/../../../../ix86-linux-gnulibc2/include/string.h:317: previous declaration of `basename'
../rsync-2.5.2/rsync.h:350: `link' redeclared as different kind of symbol
/usr/lib/gcc-lib/ix86-linux-gnulibc2/2.95.3/../../../../ix86-linux-gnulibc2/include/unistd.h:678: previous declaration of `link'
../rsync-2.5.2/rsync.h:352: parse error before `}'
../rsync-2.5.2/rsync.h: In function `flist_up':
../rsync-2.5.2/rsync.h:420: dereferencing pointer to incomplete type
../rsync-2.5.2/rsync.c: In function `set_perms':
../rsync-2.5.2/rsync.c:165: dereferencing pointer to incomplete type
../rsync-2.5.2/rsync.c:168: dereferencing pointer to incomplete type
../rsync-2.5.2/rsync.c:178: dereferencing pointer to incomplete type
../rsync-2.5.2/rsync.c:179: dereferencing pointer to incomplete type
../rsync-2.5.2/rsync.c:179: dereferencing pointer to incomplete type
../rsync-2.5.2/rsync.c:184: dereferencing pointer to incomplete type
../rsync-2.5.2/rsync.c:188: dereferencing pointer to incomplete type
../rsync-2.5.2/rsync.c:189: dereferencing pointer to incomplete type
../rsync-2.5.2/rsync.c:206: dereferencing pointer to incomplete type
../rsync-2.5.2/rsync.c:208: dereferencing pointer to incomplete type
../rsync-2.5.2/rsync.c:152: warning: `change_uid' might be used uninitialized in this function
../rsync-2.5.2/rsync.c:152: warning: `change_gid' might be used uninitialized in this function
../rsync-2.5.2/rsync.c: In function `finish_transfer':
../rsync-2.5.2/rsync.c:245: dereferencing pointer to incomplete type
make: *** [rsync.o] Error 1
rc=2


More information about the rsync mailing list