Hi
This time, I've taken my attempts one step further, even into the realms of
python scripting in which I am a major cluebie. Please point out my mistakes.
These fixes all seem to work for me.
Highlights:
* ./Makefile.in
Added install-docs, install-man and install-info targets. This file was
written so that added man pages (in different sections) or added info files
should not require any Makefile.in modificatin (only changes to build.conf
should be necessary to add or remove such files from the install process).
* ./configure.in
Added install-docs to INSTALL_RULES.
* ./gen-make.py
Added code to support the new build.conf sections 'manpages' and
'infopages'. They get added to the MANPAGES and INFOPAGES variables that
the Makefile will use.
* ./build.conf
Added the man pages and info pages in the new sections just added.
And here's the magic:
Index: Makefile.in
===================================================================
--- .svn/text-base/Makefile.in Wed Oct 10 10:13:47 2001
+++ Makefile.in Tue Oct 23 16:41:44 2001
@@ -25,6 +25,9 @@
bindir = @bindir@
fs_bindir=@bindir@
includedir = @includedir@
+mandir = @mandir@
+srcdir = @srcdir@
+infodir = @infodir@
### should search for these...
MAKEINFO = makeinfo
@@ -72,6 +75,7 @@
INSTALL_INCLUDE = $(INSTALL) -m 644
INSTALL_MOD_SHARED = @APXS@ -i -a
INSTALL_MOD_STATIC = $(INSTALL) -m 644
+INSTALL_DATA = $(INSTALL) -m 644
PYTHON = @PYTHON@
@@ -233,3 +237,33 @@
.dvi.pdf:
$(DVIPDF) $< $@
+
+install-docs: install-man install-info
+
+install-man: install-man1
+
+manroot = $(mandir)/man
+install-man1: $(man1pages)
+ @list='$(MANPAGES)'; \
+ for i in $$list; do \
+ if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
+ else file=$$i; fi; \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ $(MKDIR) $(DESTDIR)$(manroot)$$ext
+ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
+ inst=`echo $$inst | sed -e 's/^.*\///'`; \
+ inst=`echo $$inst`.$$ext; \
+ echo "$(INSTALL_DATA) $$file $(DESTDIR)$(manroot)$$ext/$$inst"; \
+ $(INSTALL_DATA) $$file $(DESTDIR)$(manroot)$$ext/$$inst; \
+ done
+
+install-info: $(INFOPAGES)
+ $(MKDIR) $(DESTDIR)$(infodir)
+ @list='$(INFOPAGES)'; \
+ for i in $$list; do \
+ if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
+ else file=$$i; fi; \
+ inst=`echo $$file | sed -e 's/^.*\///'`; \
+ echo "$(INSTALL_DATA) $$file $(DESTDIR)$(infodir)/$$inst"; \
+ $(INSTALL_DATA) $$file $(DESTDIR)$(infodir)/$$inst; \
+ done
Index: build.conf
===================================================================
--- .svn/text-base/build.conf Mon Oct 8 11:33:05 2001
+++ build.conf Tue Oct 23 16:43:58 2001
@@ -12,6 +12,17 @@
# than defining build targets.
#
+[manpages]
+paths = subversion/clients/cmdline/man/svn.1
+
+[infopages]
+paths = doc/user/manual/svn-manual.info
+ doc/user/svn_for_cvs_users/svn_for_cvs_users.info
+ doc/programmer/design/svn-design.info
+ doc/programmer/design/svn-design.info-1
+ doc/programmer/design/svn-design.info-2
+ doc/programmer/design/svn-design.info-3
+
[includes]
paths = subversion/include/*.h
Index: configure.in
===================================================================
--- .svn/text-base/configure.in Thu Oct 11 15:45:04 2001
+++ configure.in Wed Oct 24 10:07:56 2001
@@ -166,11 +166,11 @@
$SVN_FS_WANT_DB_PATCH)
# Only add *_APACHE_RULE if we also have db, since mod_dav_svn depends on it.
-INSTALL_RULES="install-lib install-bin install-include"
+INSTALL_RULES="install-lib install-bin install-include install-docs"
BUILD_RULES="lib bin test"
if test "$svn_lib_berkeley_db" = "yes"; then
BUILD_RULES="lib fs-lib bin fs-bin $BUILD_APACHE_RULE test fs-test"
- INSTALL_RULES="install-lib install-fs-lib install-bin install-fs-bin $INSTALL_APACHE_RULE install-include"
+ INSTALL_RULES="install-lib install-fs-lib install-bin install-fs-bin $INSTALL_APACHE_RULE install-include install-docs"
FS_TEST_DEPS="\$(FS_TEST_DEPS)"
FS_TEST_PROGRAMS="\$(FS_TEST_PROGRAMS)"
fi
Index: gen-make.py
===================================================================
--- .svn/text-base/gen-make.py Mon Oct 8 11:33:05 2001
+++ gen-make.py Tue Oct 23 16:39:29 2001
@@ -241,6 +241,10 @@
errors = errors or s_errors
fs_scripts, fs_errors = _collect_paths(parser.get('fs-test-scripts', 'paths'))
+
+ manpages, manpages_errors = _collect_paths(parser.get('manpages', 'paths'))
+ infopages, infopages_errors = _collect_paths(parser.get('infopages', 'paths'))
+
errors = errors or fs_errors
ofile.write('FS_TEST_DEPS = %s\n\n' % string.join(fs_test_deps + fs_scripts))
@@ -249,6 +253,9 @@
ofile.write('TEST_DEPS = %s\n\n' % string.join(test_deps + scripts))
ofile.write('TEST_PROGRAMS = %s\n\n' % string.join(test_progs + scripts))
+ ofile.write('MANPAGES = %s\n\n' % string.join(manpages))
+ ofile.write('INFOPAGES = %s\n\n' % string.join(infopages))
+
if not skip_depends:
#
# Find all the available headers and what they depend upon. the
@@ -329,6 +336,8 @@
}
_predef_sections = [
+ 'manpages',
+ 'infopages',
'includes',
'static-apache',
'test-scripts',
--
Daniel Stenberg - http://daniel.haxx.se - +46-705-44 31 77
ech`echo xiun|tr nu oc|sed 'sx\([sx]\)\([xoi]\)xo un\2\1 is xg'`ol
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:45 2006