[The PATCH_PROGRAM stuff looks problematic (patch might move between build-time and run-time). The @bindir@ stuff looks good. Most of the rest I don't have a particularly strong opinion on. Some of it should probably be the subject of more thought/consideration before adding new features. -kingdon] To: bug-cvs@gnu.org Subject: [Patches (again): Fix up Makefiles and configure] Date: Mon, 13 Apr 98 18:16:05 -0700 From: Wilfredo Sanchez Makefile patches. See ChangeLog's. The primary change is to use @bindir@ and company, which requires autoconf 2.10. Given that most user don't need to generate configure, that shouldn't be a problem. Also added an html: target to generate html info from texinfo source (not enabled in install:) using texi2html. Added a check for patch's location. -Fred wsanchez@apple.com diff -u -r cvs.Cyclic/ChangeLog cvs.build/ChangeLog --- cvs.Cyclic/ChangeLog Mon Apr 6 22:02:57 1998 +++ cvs.build/ChangeLog Mon Apr 13 17:44:57 1998 @@ -14,6 +14,17 @@ * TODO (190): Remove "failed to check out" from commit.c from lists of error messages suppressed by -q; it no longer is. +Wed Feb 11 23:32:45 PST 1998 Wilfredo Sanchez + + * INSTALL: Add Apple Rhapsody to platforms list. + + * Makefile.in: Change bindir, etc. to get values from configure + (eg. @bindir@) instead of figure it out inthe Makefile. + + * configure.in: Change autoconf prereq to 2.10. + + * configure.in: Add path check for patch. + 4 Feb 1998 Jim Kingdon * cvsnt.mak: The usual "because Visual C++ feels like it" diff -u -r cvs.Cyclic/INSTALL cvs.build/INSTALL --- cvs.Cyclic/INSTALL Mon Apr 6 22:02:52 1998 +++ cvs.build/INSTALL Mon Apr 13 17:47:53 1998 @@ -132,6 +132,8 @@ BSDI 2.0 (1.4.93) (footnote 5) FreeBSD 2.1.5-stable (1.8.87) NextSTEP 3.3 (1.7) + OpenStep 4.2 (1.8.1) + Apple Rhapsody 5.1 (1.9.26) SCO Unix 3.2.4.2, gcc 2.7.2 (1.8.87) (footnote 4) SCO OpenServer 5 (1.8.86) Sequent Dynix/PTX 4.1.4 (1.9.20 or so + patches) @@ -162,6 +164,7 @@ SGI running Irix-6.2 (1.9.8) Siemens-Nixdorf RM600 running SINIX-Y (1.6) PowerPC or RS/6000: + Apple Rhapsody 5.1 (1.9.26) IBM RS/6000 running AIX 3.1 using gcc and cc (1.6.86) IBM RS/6000 running AIX 3.2.5 (1.8) IBM RS/6000 running AIX 4.1 using gcc and cc (about 1.4A2) (footnote 1) diff -u -r cvs.Cyclic/Makefile.in cvs.build/Makefile.in --- cvs.Cyclic/Makefile.in Mon Apr 6 22:03:03 1998 +++ cvs.build/Makefile.in Mon Apr 13 17:48:43 1998 @@ -50,16 +50,16 @@ exec_prefix = @exec_prefix@ # Where to install the executables. -bindir = $(exec_prefix)/bin +bindir = @bindir@ # Where to put the system-wide .cvsrc file -libdir = $(prefix)/lib +libdir = @libdir@ # Where to put the Info files -infodir = $(prefix)/info +infodir = @infodir@ # Where to put the manual pages. -mandir = $(prefix)/man +mandir = @mandir@ #### End of system configuration section. #### @@ -104,7 +104,7 @@ # Set default target. all: -.PHONY: all install uninstall installdirs +.PHONY: all install install-strip uninstall installdirs all install uninstall installdirs: config.h Makefile all-local @for subdir in $(SUBDIRS); do \ echo "making $@ in $$subdir"; \ @@ -113,13 +113,16 @@ installdirs: installdirs-local -install: all install-local install-info +install: all install-local install-info #install-html + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' install .PHONY: all-local all-local: -.PHONY: info dvi clean-info install-info -info dvi clean-info install-info: +.PHONY: info dvi clean-info install-info install-html +info dvi clean-info install-info install-html: cd doc && $(MAKE) $(FLAGS_TO_PASS) $@ || exit 1 .PHONY: install-local diff -u -r cvs.Cyclic/configure.in cvs.build/configure.in --- cvs.Cyclic/configure.in Mon Apr 6 22:03:00 1998 +++ cvs.build/configure.in Mon Apr 13 17:45:45 1998 @@ -1,17 +1,10 @@ dnl configure.in for cvs AC_INIT(src/cvs.h) dnl -AC_PREREQ(2.4)dnl Required Autoconf version. +AC_PREREQ(2.10)dnl Required Autoconf version. dnl Do not use autoconf 2.12; it produces a configure script which produces dnl a "internal 2K buffer" error on HPUX when run with /bin/sh. dnl autoconf 2.10 seems like a good choice. -dnl -dnl It is possible that we should just change the above required version -dnl to 2.10; it seems like everyone is using 2.10 anyway, and there is -dnl at least some sentiment that we should be using a version which has -dnl --bindir (and correspondingly, using @bindir@ and friends in our -dnl Makefile.in files. Rumor has it that autoconf 2.7 -dnl introduced --bindir but the point is that 2.10 has it. AC_CONFIG_HEADER(config.h src/options.h) AC_PROG_CC @@ -40,6 +33,9 @@ AC_PATH_PROG(perl_path, perl, no) AC_PATH_PROG(csh_path, csh, no) + +AC_PATH_PROG(patch, patch, patch) +AC_DEFINE_UNQUOTED(PATCH_PROGRAM, "${patch}") AC_SYS_INTERPRETER if test X"$ac_cv_sys_interpreter" != X"yes" ; then diff -u -r cvs.Cyclic/doc/ChangeLog cvs.build/doc/ChangeLog --- cvs.Cyclic/doc/ChangeLog Mon Apr 6 22:04:41 1998 +++ cvs.build/doc/ChangeLog Mon Apr 13 17:46:28 1998 @@ -16,6 +16,12 @@ * cvs.texinfo (user-defined logging): Add taginfo example. +Wed Feb 11 23:32:45 PST 1998 Wilfredo Sanchez + + * Makefile.in: Set infodir to get value from configure (@infodir@). + + * Makefile.in: Add html target using texi2html. + 1998-02-04 Tim Pierce * cvs.texinfo (config): PreservePermissions variable. diff -u -r cvs.Cyclic/doc/Makefile.in cvs.build/doc/Makefile.in --- cvs.Cyclic/doc/Makefile.in Wed Nov 19 18:51:47 1997 +++ cvs.build/doc/Makefile.in Mon Apr 13 17:47:26 1998 @@ -21,7 +21,10 @@ prefix = @prefix@ exec_prefix = @exec_prefix@ -infodir = $(prefix)/info +infodir = @infodir@ +htmldir = $(prefix)/share/html/cvs + +TEXI2HTML = texi2html INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -68,6 +71,8 @@ info: cvs.info cvsclient.info +html: cvs.html cvsclient.html + cvs.info: cvs.texinfo CVSvn.texi if [ ! -f ./CVSvn.texi ]; then \ ln -s $(srcdir)/CVSvn.texi . || \ @@ -82,6 +87,12 @@ cp $(srcdir)/CVSvn.texi . ; else true; fi $(MAKEINFO) $(srcdir)/cvsclient.texi -o cvsclient.info +cvs.html: cvs.texinfo + $(TEXI2HTML) -menu -number -split_node cvs.texinfo + +cvsclient.html: cvsclient.texi + $(TEXI2HTML) -menu -number -split_node cvsclient.texi + # Version of the protocol suitable for emailing cvsclient.txt: cvsclient.texi CVSvn.texi if [ ! -f ./CVSvn.texi ]; then \ @@ -96,10 +107,18 @@ # in the build dir. # (Note: don't solve this problem with "cd"; INSTALL_DATA might be a # relative path to install-sh). -install-info: info installdirs +install-info: info + $(SHELL) $(top_srcdir)/mkinstalldirs $(infodir) if test -f cvs.info ; then docdir=.; else docdir=$(srcdir);fi; \ for i in $$docdir/*.info* ; do \ $(INSTALL_DATA) $$i $(infodir)/`basename $$i` ; \ + done + +install-html: html + $(SHELL) $(top_srcdir)/mkinstalldirs $(htmldir) + if test -f cvs_1.html ; then docdir=.; else docdir=$(srcdir);fi; \ + for i in $$docdir/*.html ; do \ + $(INSTALL_DATA) $$i $(htmldir)/`basename $$i` ; \ done installdirs: diff -u -r cvs.Cyclic/src/ChangeLog cvs.build/src/ChangeLog --- cvs.Cyclic/src/ChangeLog Mon Apr 6 22:03:28 1998 +++ cvs.build/src/ChangeLog Mon Apr 13 17:50:41 1998 @@ -364,6 +364,14 @@ * server.c (cvs_output_binary): Use OPEN_BINARY not _O_BINARY. +Wed Feb 11 23:32:45 PST 1998 Wilfredo Sanchez + + * Makefile.in: Change bindir, etc. to get values from configure + (eg. @bindir@) instead of figure it out inthe Makefile. + + * Makefile.in: Change $(INSTALL) to $(INSTALL_PROGRAM) in install: + target to get proper mode bits. + Mon Feb 9 18:34:39 1998 Jim Kingdon Tweaks to Ian's checkin: diff -u -r cvs.Cyclic/src/Makefile.in cvs.build/src/Makefile.in --- cvs.Cyclic/src/Makefile.in Mon Apr 6 22:03:26 1998 +++ cvs.build/src/Makefile.in Mon Apr 13 17:51:00 1998 @@ -22,13 +22,13 @@ exec_prefix = @exec_prefix@ # Where to install the executables. -bindir = $(exec_prefix)/bin +bindir = @bindir@ # Where to put the system-wide .cvsrc file -libdir = $(prefix)/lib +libdir = @libdir@ # Where to put the manual pages. -mandir = $(prefix)/man +mandir = @mandir # Use cp if you don't have install. INSTALL = @INSTALL@ @@ -88,7 +88,7 @@ install: installdirs @for prog in $(PROGS); do \ echo Installing $$prog in $(bindir); \ - $(INSTALL) $$prog $(bindir)/$$prog ; \ + $(INSTALL_PROGRAM) $$prog $(bindir)/$$prog ; \ done installdirs: diff -u -r cvs.Cyclic/zlib/ChangeLog cvs.build/zlib/ChangeLog --- cvs.Cyclic/zlib/ChangeLog Wed Sep 3 14:14:39 1997 +++ cvs.build/zlib/ChangeLog Mon Apr 13 17:49:30 1998 @@ -1,3 +1,8 @@ +Wed Feb 11 23:32:45 PST 1998 Wilfredo Sanchez + + * Makefile.in: Change bindir, etc. to get values from configure + (eg. @bindir@) instead of figure it out inthe Makefile. + Tue Mar 18 13:05:37 1997 Jim Meyering * Makefile.in (DISTFILES): Change glob pattern so that it doesn't diff -u -r cvs.Cyclic/zlib/Makefile.in cvs.build/zlib/Makefile.in --- cvs.Cyclic/zlib/Makefile.in Wed Sep 3 14:14:44 1997 +++ cvs.build/zlib/Makefile.in Mon Apr 13 17:49:41 1998 @@ -35,7 +35,7 @@ TAR=tar prefix=@prefix@ -exec_prefix = $(prefix) +exec_prefix = @exec_prefix@ OBJS = adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o \ zutil.o inflate.o infblock.o inftrees.o infcodes.o infutil.o inffast.o