[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] Build info documentation
From: |
Colin Watson |
Subject: |
[PATCH] Build info documentation |
Date: |
Tue, 15 Sep 2009 06:20:13 +0100 |
User-agent: |
Mutt/1.5.18 (2008-05-17) |
I'm not quite sure I've got everything right here, so please review.
It seemed much simpler to add everything to Makefile.in than to go
through conf/*.rmk for this, as there's no platform-specific work to be
done here.
2009-09-15 Colin Watson <address@hidden>
Build info documentation. Some code borrowed from Automake.
* configure.ac: Check for makeinfo.
* Makefile.in (MAKEINFO, INFOS, info_INFOS): New variables.
(MAINTAINER_CLEANFILES): Add $(INFOS), docs/stamp-vti, and
docs/version.texi.
(MOSTLYCLEANFILES): Add vti.tmp.
(docs/version.texi, docs/stamp-vti): Update automatically.
(docs/grub.info): Build info documentation. Use --force and ignore
errors for now.
(all-local): Add $(INFOS).
(install-local): Install info files.
(uninstall): Uninstall info files.
* docs/version.texi: Remove from revision control. This file is
automatically generated on build now.
* gendistlist.sh: Add `*.info'.
Index: configure.ac
===================================================================
--- configure.ac (revision 2596)
+++ configure.ac (working copy)
@@ -147,6 +147,7 @@ AC_PROG_MAKE_SET
# These are not a "must".
AC_PATH_PROG(RUBY, ruby)
+AC_PATH_PROG(MAKEINFO, makeinfo)
#
# Checks for host programs.
Index: Makefile.in
===================================================================
--- Makefile.in (revision 2596)
+++ Makefile.in (working copy)
@@ -86,6 +86,10 @@ OBJCOPY = @OBJCOPY@
STRIP = @STRIP@
NM = @NM@
RUBY = @RUBY@
+MAKEINFO = @MAKEINFO@
+ifeq (, $(MAKEINFO))
+MAKEINFO = true
+endif
HELP2MAN = @HELP2MAN@
ifeq (, $(HELP2MAN))
HELP2MAN = true
@@ -122,6 +126,7 @@ PKGDATA = $(pkgdata_DATA)
PROGRAMS = $(bin_UTILITIES) $(sbin_UTILITIES)
SCRIPTS = $(bin_SCRIPTS) $(sbin_SCRIPTS) $(grub-mkconfig_SCRIPTS) \
$(lib_SCRIPTS)
+INFOS = $(info_INFOS)
CLEANFILES =
MOSTLYCLEANFILES =
@@ -129,7 +134,7 @@ DISTCLEANFILES = config.status config.cache config
Makefile stamp-h include/grub/cpu include/grub/machine \
gensymlist.sh genkernsyms.sh build_env.mk
MAINTAINER_CLEANFILES = $(srcdir)/configure $(addprefix $(srcdir)/,$(MKFILES))
\
- $(srcdir)/DISTLIST $(srcdir)/config.h.in $(srcdir)/stamp-h.in
+ $(srcdir)/DISTLIST $(srcdir)/config.h.in $(srcdir)/stamp-h.in $(INFOS)
# The default target.
all: all-local
@@ -168,6 +173,27 @@ handler.lst: $(HANDLERFILES)
parttool.lst: $(PARTTOOLFILES)
cat $^ /dev/null | sort | uniq > $@
+info_INFOS += docs/grub.info
+
+MOSTLYCLEANFILES += vti.tmp
+MAINTAINER_CLEANFILES += docs/stamp-vti docs/version.texi
+docs/version.texi: docs/stamp-vti
+docs/stamp-vti: docs/grub.texi
+ (set `$(SHELL) $(srcdir)/docs/mdate-sh $<`; \
+ echo "@set UPDATED $$1 $$2 $$3"; \
+ echo "@set UPDATED-MONTH $$2 $$3"; \
+ echo "@set EDITION $(PACKAGE_VERSION)"; \
+ echo "@set VERSION $(PACKAGE_VERSION)") > vti.tmp
+ @cmp -s vti.tmp $(srcdir)/docs/version.texi \
+ || (echo "Updating $(srcdir)/docs/version.texi"; \
+ cp vti.tmp $(srcdir)/docs/version.texi)
+ address@hidden -f vti.tmp
+ @cp $(srcdir)/docs/version.texi $@
+
+# Use --force until such time as the documentation is cleaned up.
+docs/grub.info: docs/grub.texi docs/version.texi docs/fdl.texi
+ $(MAKEINFO) --no-split --force $< -o $@ || :
+
ifeq (, $(UNIFONT_BDF))
else
@@ -207,7 +233,7 @@ pkglib_BUILDDIR += config.h grub_script.tab.h
include_DATA += $(shell find $(srcdir)/include -name \*.h | sed -e
"s,^$(srcdir)/,,g") \
include/grub/cpu include/grub/machine
-all-local: $(PROGRAMS) $(PKGLIB) $(PKGDATA) $(SCRIPTS) $(MKFILES)
+all-local: $(PROGRAMS) $(PKGLIB) $(PKGDATA) $(SCRIPTS) $(INFOS) $(MKFILES)
install: install-local
@@ -285,6 +311,17 @@ install-local: all
dest="`echo $$file | sed 's,.*/,,'`"; \
$(INSTALL_DATA) $$dir$$file $(DESTDIR)$(libdir)/grub/$$dest; \
done
+ $(SHELL) $(mkinstalldirs) $(DESTDIR)$(infodir)
+ @list='$(info_INFOS)'; \
+ for file in $$list; do \
+ if test -f "$$file"; then dir=; else dir="$(srcdir)/"; fi; \
+ dest="`echo $$file | sed 's,.*/,,'`"; \
+ $(INSTALL_DATA) $$dir$$file $(DESTDIR)$(infodir); \
+ if (install-info --version && \
+ install-info --version 2>&1 | sed 1q | grep -i -v debian)
>/dev/null 2>&1; then \
+ install-info --info-dir="$(DESTDIR)$(infodir)"
"$(DESTDIR)$(infodir)/$$dest" || :; \
+ fi; \
+ done
install-strip:
$(MAKE) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" install
@@ -325,6 +362,19 @@ uninstall:
echo rm -f $(DESTDIR)$(libdir)/$$dest; \
rm -f $(DESTDIR)$(libdir)/grub/$$dest; \
done
+ @list='$(info_INFOS)'; \
+ for file in $$list; do \
+ dest="`echo $$file | sed 's,.*/,,'`"; \
+ if (install-info --version && \
+ install-info --version 2>&1 | sed 1q | grep -i -v debian)
>/dev/null 2>&1; then \
+ if install-info --info-dir="$(DESTDIR)$(infodir)" --remove
"$(DESTDIR)$(infodir)/$$dest"; then \
+ :; \
+ else \
+ test ! -f "$(DESTDIR)$(infodir)/$$dest" || exit 1; \
+ fi; \
+ fi; \
+ rm -f $(DESTDIR)$(infodir)/$$dest; \
+ done
clean: $(CLEAN_IMAGE_TARGETS) $(CLEAN_MODULE_TARGETS) $(CLEAN_UTILITY_TARGETS)
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
Property changes on: docs
___________________________________________________________________
Added: svn:ignore
+ *.info
stamp-vti
version.texi
Index: docs/version.texi
===================================================================
--- docs/version.texi (revision 2596)
+++ docs/version.texi (working copy)
@@ -1,4 +0,0 @@
address@hidden UPDATED 7 Ago 2009
address@hidden UPDATED-MONTH Ago 2009
address@hidden EDITION 1.97~beta3
address@hidden VERSION 1.97~beta3
Index: gendistlist.sh
===================================================================
--- gendistlist.sh (revision 2596)
+++ gendistlist.sh (working copy)
@@ -38,7 +38,8 @@ for dir in $DISTDIRS; do
for d in `find $dir -type d | sed '/\/\.svn$/d;\/\.svn\//d' | sort`; do
find $d -maxdepth 1 -name '*.[chSy]' -o -name '*.mk' -o -name '*.rmk' \
-o -name '*.rb' -o -name '*.in' -o -name '*.tex' -o -name '*.texi' \
- -o -name 'grub.cfg' -o -name 'README' -o -name '*.sc' -o -name
'mdate-sh' \
- -o -name '*.sh' -o -name 'grub-dumpdevtree' -o -name '*.lua' | sort
+ -o -name '*.info' -o -name 'grub.cfg' -o -name 'README' \
+ -o -name '*.sc' -o -name 'mdate-sh' -o -name '*.sh' \
+ -o -name 'grub-dumpdevtree' -o -name '*.lua' | sort
done
done
--
Colin Watson address@hidden
- [PATCH] Build info documentation,
Colin Watson <=