From: Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>
To: The development of GRUB 2 <grub-devel@gnu.org>
Subject: Re: [PATCH] Build info documentation
Date: Tue, 22 Sep 2009 09:49:23 +0200 [thread overview]
Message-ID: <4AB88183.5030709@gmail.com> (raw)
In-Reply-To: <20090915052012.GU13423@riva.ucam.org>
Colin Watson wrote:
> 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 <cjwatson@ubuntu.com>
>
> 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.
>
This part has broken external compile because in extern folder "docs"
may not be present
> (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)
> + -@rm -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 @@
> -@set UPDATED 7 Ago 2009
> -@set UPDATED-MONTH Ago 2009
> -@set EDITION 1.97~beta3
> -@set 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
>
>
next prev parent reply other threads:[~2009-09-22 7:49 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-15 5:20 [PATCH] Build info documentation Colin Watson
2009-09-19 21:14 ` Robert Millan
2009-09-22 7:49 ` Vladimir 'phcoder' Serbinenko [this message]
2009-09-23 17:20 ` Colin Watson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4AB88183.5030709@gmail.com \
--to=phcoder@gmail.com \
--cc=grub-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.