* [install info (using perl) 1/2] Add support for an info version of the user manual
@ 2007-08-06 10:22 David Kastrup
2007-08-07 10:02 ` [install info (using perl) 2/2] INSTALL: explain info installation and dependencies David Kastrup
2007-08-08 22:59 ` [install info (using perl) 1/2] Add support for an info version of the user manual Junio C Hamano
0 siblings, 2 replies; 10+ messages in thread
From: David Kastrup @ 2007-08-06 10:22 UTC (permalink / raw)
To: git
These patches use docbook2x in order to create an info version of the
git user manual. No existing Makefile targets (including "all") are
touched, so you need to explicitly say
make info
sudo make install-info
to get git.info created and installed. If the info target directory
does not already contain a "dir" file, no directory entry is created.
This facilitates $(DESTDIR)-based installations. The same could be
achieved with
sudo make INSTALL_INFO=: install-info
explicitly.
perl is used for patching up sub-par file and directory information in
the Texinfo file. It would be cleaner to place the respective info
straight into user-manual.txt or the conversion configurations, but I
find myself unable to find out how to do this with Asciidoc/Texinfo.
Signed-off-by: David Kastrup <dak@gnu.org>
---
Documentation/Makefile | 27 +++++++++++++++++++++++++++
Makefile | 6 ++++++
2 files changed, 33 insertions(+), 0 deletions(-)
diff --git a/Documentation/Makefile b/Documentation/Makefile
index 91a437d..71b7056 100644
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -44,6 +44,11 @@ INSTALL?=install
RM ?= rm -f
DOC_REF = origin/man
+infodir?=$(prefix)/share/info
+MAKEINFO=makeinfo
+INSTALL_INFO=install-info
+DOCBOOK2X_TEXI=docbook2x-texi
+
-include ../config.mak.autogen
-include ../config.mak
@@ -67,6 +72,8 @@ man1: $(DOC_MAN1)
man5: $(DOC_MAN5)
man7: $(DOC_MAN7)
+info: git.info
+
install: man
$(INSTALL) -d -m755 $(DESTDIR)$(man1dir)
$(INSTALL) -d -m755 $(DESTDIR)$(man5dir)
@@ -75,6 +82,14 @@ install: man
$(INSTALL) -m644 $(DOC_MAN5) $(DESTDIR)$(man5dir)
$(INSTALL) -m644 $(DOC_MAN7) $(DESTDIR)$(man7dir)
+install-info: info
+ $(INSTALL) -d -m755 $(DESTDIR)$(infodir)
+ $(INSTALL) -m644 git.info $(DESTDIR)$(infodir)
+ if test -r $(DESTDIR)$(infodir)/dir; then \
+ $(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) git.info ;\
+ else \
+ echo "No directory found in $(DESTDIR)$(infodir)" >&2 ; \
+ fi
../GIT-VERSION-FILE: .FORCE-GIT-VERSION-FILE
$(MAKE) -C ../ GIT-VERSION-FILE
@@ -139,6 +154,18 @@ XSLTOPTS = --xinclude --stringparam html.stylesheet docbook-xsl.css
user-manual.html: user-manual.xml
xsltproc $(XSLTOPTS) -o $@ $(XSLT) $<
+git.info: user-manual.xml
+ $(RM) $@ $*.texi
+ $(DOCBOOK2X_TEXI) user-manual.xml --to-stdout | \
+ perl -ne 'if (/^\@setfilename/) {$$_="\@setfilename git.info\
+"} elsif (/^\@direntry/) {print "\@dircategory Development\
+\@direntry\
+* Git: (git). A fast distributed revision control system\
+\@end direntry\
+"} print unless (/^\@direntry/ .. /^\@end direntry/)' > $*.texi
+ $(MAKEINFO) --no-split $*.texi
+ $(RM) $*.texi
+
howto-index.txt: howto-index.sh $(wildcard howto/*.txt)
$(RM) $@+ $@
sh ./howto-index.sh $(wildcard howto/*.txt) >$@+
diff --git a/Makefile b/Makefile
index 2f3b9b2..b685c7e 100644
--- a/Makefile
+++ b/Makefile
@@ -913,6 +913,9 @@ perl/Makefile: perl/Git.pm perl/Makefile.PL GIT-CFLAGS
doc:
$(MAKE) -C Documentation all
+info:
+ $(MAKE) -C Documentation info
+
TAGS:
$(RM) TAGS
$(FIND) . -name '*.[hcS]' -print | xargs etags -a
@@ -1005,6 +1008,9 @@ endif
install-doc:
$(MAKE) -C Documentation install
+install-info:
+ $(MAKE) -C Documentation install-info
+
quick-install-doc:
$(MAKE) -C Documentation quick-install
--
1.5.3.rc4.21.ga63eb
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [install info (using perl) 1/2] Add support for an info version of the user manual
@ 2007-08-06 10:22 David Kastrup
2007-08-07 10:49 ` David Kastrup
0 siblings, 1 reply; 10+ messages in thread
From: David Kastrup @ 2007-08-06 10:22 UTC (permalink / raw)
To: git
These patches use docbook2x in order to create an info version of the
git user manual. No existing Makefile targets (including "all") are
touched, so you need to explicitly say
make info
sudo make install-info
to get git.info created and installed. If the info target directory
does not already contain a "dir" file, no directory entry is created.
This facilitates $(DESTDIR)-based installations. The same could be
achieved with
sudo make INSTALL_INFO=: install-info
explicitly.
perl is used for patching up sub-par file and directory information in
the Texinfo file. It would be cleaner to place the respective info
straight into user-manual.txt or the conversion configurations, but I
find myself unable to find out how to do this with Asciidoc/Texinfo.
Signed-off-by: David Kastrup <dak@gnu.org>
---
COMMIT_EDITMSG | 57 ++++++++++++++++++++++++++++++++++++++++++++++++
Documentation/Makefile | 27 ++++++++++++++++++++++
Makefile | 6 +++++
3 files changed, 90 insertions(+), 0 deletions(-)
create mode 100644 COMMIT_EDITMSG
diff --git a/COMMIT_EDITMSG b/COMMIT_EDITMSG
new file mode 100644
index 0000000..1718ad5
--- /dev/null
+++ b/COMMIT_EDITMSG
@@ -0,0 +1,57 @@
+Add support for an info version of the user manual
+
+These patches use docbook2x in order to create an info version of the
+git user manual. No existing Makefile targets (including "all") are
+touched, so you need to explicitly say
+
+make info
+sudo make install-info
+
+to get git.info created and installed. If the info target directory
+does not already contain a "dir" file, no directory entry is created.
+This facilitates $(DESTDIR)-based installations. The same could be
+achieved with
+
+sudo make INSTALL_INFO=: install-info
+
+explicitly.
+
+perl is used for patching up sub-par file and directory information in
+the Texinfo file. It would be cleaner to place the respective info
+straight into user-manual.txt or the conversion configurations, but I
+find myself unable to find out how to do this with Asciidoc/Texinfo.
+
+# Please enter the commit message for your changes.
+# (Comment lines starting with '#' will not be included)
+# On branch master
+# Changes to be committed:
+# (use "git reset HEAD^1 <file>..." to unstage)
+#
+# modified: Documentation/Makefile
+# modified: Makefile
+#
+# Untracked files:
+# (use "git add <file>..." to include in what will be committed)
+#
+# 0001-Add-support-for-an-info-version-of-the-user-manual.patch
+# 0001-Documentation-git-commit.txt-correct-bad-list-forma.patch
+# 0001-Introduce-ediff-option-for-mergetool.patch
+# 0002-Documentation-Makefile-remove-cmd-list.made-before.patch
+# Documentation/git.info
+# Documentation/git.texi
+# TAGS
+# contrib/emacs/0010-vc-git-previous-version-vc-git-next-version.patch
+# contrib/emacs/0011-contrib-emacs-vc-git.el-a-few-more-tentative-change.patch
+# contrib/emacs/0012-contrib-emacs-vc-git.el-further-improvements.patch
+# contrib/emacs/ChangeLog
+# contrib/emacs/ChangeLog~
+# contrib/emacs/Makefile.orig
+# contrib/emacs/vc-git.el.BACKUP.17026
+# contrib/emacs/vc-git.el.BASE.17026
+# contrib/emacs/vc-git.el.LOCAL.17026
+# contrib/emacs/vc-git.el.REMOTE.17026
+# contrib/emacs/vc-git.el.rej
+# contrib/emacs/vc-git.el.rej~
+# contrib/emacs/vc-git.el~
+# svn-commit.tmp~
+# texput.log
diff --git a/Documentation/Makefile b/Documentation/Makefile
index 91a437d..71b7056 100644
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -44,6 +44,11 @@ INSTALL?=install
RM ?= rm -f
DOC_REF = origin/man
+infodir?=$(prefix)/share/info
+MAKEINFO=makeinfo
+INSTALL_INFO=install-info
+DOCBOOK2X_TEXI=docbook2x-texi
+
-include ../config.mak.autogen
-include ../config.mak
@@ -67,6 +72,8 @@ man1: $(DOC_MAN1)
man5: $(DOC_MAN5)
man7: $(DOC_MAN7)
+info: git.info
+
install: man
$(INSTALL) -d -m755 $(DESTDIR)$(man1dir)
$(INSTALL) -d -m755 $(DESTDIR)$(man5dir)
@@ -75,6 +82,14 @@ install: man
$(INSTALL) -m644 $(DOC_MAN5) $(DESTDIR)$(man5dir)
$(INSTALL) -m644 $(DOC_MAN7) $(DESTDIR)$(man7dir)
+install-info: info
+ $(INSTALL) -d -m755 $(DESTDIR)$(infodir)
+ $(INSTALL) -m644 git.info $(DESTDIR)$(infodir)
+ if test -r $(DESTDIR)$(infodir)/dir; then \
+ $(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) git.info ;\
+ else \
+ echo "No directory found in $(DESTDIR)$(infodir)" >&2 ; \
+ fi
../GIT-VERSION-FILE: .FORCE-GIT-VERSION-FILE
$(MAKE) -C ../ GIT-VERSION-FILE
@@ -139,6 +154,18 @@ XSLTOPTS = --xinclude --stringparam html.stylesheet docbook-xsl.css
user-manual.html: user-manual.xml
xsltproc $(XSLTOPTS) -o $@ $(XSLT) $<
+git.info: user-manual.xml
+ $(RM) $@ $*.texi
+ $(DOCBOOK2X_TEXI) user-manual.xml --to-stdout | \
+ perl -ne 'if (/^\@setfilename/) {$$_="\@setfilename git.info\
+"} elsif (/^\@direntry/) {print "\@dircategory Development\
+\@direntry\
+* Git: (git). A fast distributed revision control system\
+\@end direntry\
+"} print unless (/^\@direntry/ .. /^\@end direntry/)' > $*.texi
+ $(MAKEINFO) --no-split $*.texi
+ $(RM) $*.texi
+
howto-index.txt: howto-index.sh $(wildcard howto/*.txt)
$(RM) $@+ $@
sh ./howto-index.sh $(wildcard howto/*.txt) >$@+
diff --git a/Makefile b/Makefile
index 2f3b9b2..b685c7e 100644
--- a/Makefile
+++ b/Makefile
@@ -913,6 +913,9 @@ perl/Makefile: perl/Git.pm perl/Makefile.PL GIT-CFLAGS
doc:
$(MAKE) -C Documentation all
+info:
+ $(MAKE) -C Documentation info
+
TAGS:
$(RM) TAGS
$(FIND) . -name '*.[hcS]' -print | xargs etags -a
@@ -1005,6 +1008,9 @@ endif
install-doc:
$(MAKE) -C Documentation install
+install-info:
+ $(MAKE) -C Documentation install-info
+
quick-install-doc:
$(MAKE) -C Documentation quick-install
--
1.5.3.rc4.21.ga63eb
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [install info (using perl) 2/2] INSTALL: explain info installation and dependencies.
2007-08-06 10:22 [install info (using perl) 1/2] Add support for an info version of the user manual David Kastrup
@ 2007-08-07 10:02 ` David Kastrup
2007-08-08 22:59 ` [install info (using perl) 1/2] Add support for an info version of the user manual Junio C Hamano
1 sibling, 0 replies; 10+ messages in thread
From: David Kastrup @ 2007-08-07 10:02 UTC (permalink / raw)
To: git
Signed-off-by: David Kastrup <dak@gnu.org>
---
INSTALL | 14 +++++++++-----
1 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/INSTALL b/INSTALL
index c62b12c..289b046 100644
--- a/INSTALL
+++ b/INSTALL
@@ -5,8 +5,8 @@ Normally you can just do "make" followed by "make install", and that
will install the git programs in your own ~/bin/ directory. If you want
to do a global install, you can do
- $ make prefix=/usr all doc ;# as yourself
- # make prefix=/usr install install-doc ;# as root
+ $ make prefix=/usr all doc info ;# as yourself
+ # make prefix=/usr install install-doc install-info ;# as root
(or prefix=/usr/local, of course). Just like any program suite
that uses $prefix, the built results have some paths encoded,
@@ -91,9 +91,13 @@ Issues of note:
- To build and install documentation suite, you need to have
the asciidoc/xmlto toolchain. Because not many people are
inclined to install the tools, the default build target
- ("make all") does _not_ build them. The documentation is
- written for AsciiDoc 7, but "make ASCIIDOC8=YesPlease doc"
- will let you format with AsciiDoc 8.
+ ("make all") does _not_ build them.
+
+ Building and installing the info file additionally requires
+ makeinfo and docbook2X. Version 0.8.3 is known to work.
+
+ The documentation is written for AsciiDoc 7, but "make
+ ASCIIDOC8=YesPlease doc" will let you format with AsciiDoc 8.
Alternatively, pre-formatted documentation are available in
"html" and "man" branches of the git repository itself. For
--
1.5.3.rc4.21.ga63eb
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [install info (using perl) 1/2] Add support for an info version of the user manual
2007-08-06 10:22 David Kastrup
@ 2007-08-07 10:49 ` David Kastrup
0 siblings, 0 replies; 10+ messages in thread
From: David Kastrup @ 2007-08-07 10:49 UTC (permalink / raw)
To: git
David Kastrup <dak@gnu.org> writes:
> COMMIT_EDITMSG | 57 ++++++++++++++++++++++++++++++++++++++++++++++++
> Documentation/Makefile | 27 ++++++++++++++++++++++
> Makefile | 6 +++++
> 3 files changed, 90 insertions(+), 0 deletions(-)
I hate life. Fixing this.
--
David Kastrup
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [install info (using perl) 1/2] Add support for an info version of the user manual
2007-08-06 10:22 [install info (using perl) 1/2] Add support for an info version of the user manual David Kastrup
2007-08-07 10:02 ` [install info (using perl) 2/2] INSTALL: explain info installation and dependencies David Kastrup
@ 2007-08-08 22:59 ` Junio C Hamano
2007-08-08 23:05 ` Junio C Hamano
2007-08-08 23:25 ` David Kastrup
1 sibling, 2 replies; 10+ messages in thread
From: Junio C Hamano @ 2007-08-08 22:59 UTC (permalink / raw)
To: David Kastrup; +Cc: git
David Kastrup <dak@gnu.org> writes:
> @@ -139,6 +154,18 @@ XSLTOPTS = --xinclude --stringparam html.stylesheet docbook-xsl.css
> user-manual.html: user-manual.xml
> xsltproc $(XSLTOPTS) -o $@ $(XSLT) $<
>
> +git.info: user-manual.xml
> + $(RM) $@ $*.texi
> + $(DOCBOOK2X_TEXI) user-manual.xml --to-stdout | \
> + perl -ne 'if (/^\@setfilename/) {$$_="\@setfilename git.info\
> +"} elsif (/^\@direntry/) {print "\@dircategory Development\
> +\@direntry\
> +* Git: (git). A fast distributed revision control system\
> +\@end direntry\
> +"} print unless (/^\@direntry/ .. /^\@end direntry/)' > $*.texi
> + $(MAKEINFO) --no-split $*.texi
> + $(RM) $*.texi
> +
This part worries me.
Historically (as you probably know, having suffered a lot more
than me with this issue), multi-line command script in Makefile
was hugely unportable. Some "make" implementations stripped
backslash linefeed at the end, some other implementations
stripped only backslash, yet some other kept both backslash and
linefeed. It was a mess.
Admittably we are already quite dependent on GNU make, so this
is probably not a huge deal, but I have a vague recollection
that even GNU make itself changed its behaviour over time with
respect to this exact area, and I had to adjust a few Makefiles
to accomodate both old and new GNU make.
The standard workaround is of course to have this perl script
part as a separate, "Documentation/fixup-texi.perl" script and
invoke it from the Makefile.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [install info (using perl) 1/2] Add support for an info version of the user manual
2007-08-08 22:59 ` [install info (using perl) 1/2] Add support for an info version of the user manual Junio C Hamano
@ 2007-08-08 23:05 ` Junio C Hamano
2007-08-08 23:18 ` Junio C Hamano
2007-08-08 23:27 ` David Kastrup
2007-08-08 23:25 ` David Kastrup
1 sibling, 2 replies; 10+ messages in thread
From: Junio C Hamano @ 2007-08-08 23:05 UTC (permalink / raw)
To: David Kastrup; +Cc: git
Junio C Hamano <gitster@pobox.com> writes:
> David Kastrup <dak@gnu.org> writes:
>
>> @@ -139,6 +154,18 @@ XSLTOPTS = --xinclude --stringparam html.stylesheet docbook-xsl.css
>> user-manual.html: user-manual.xml
>> xsltproc $(XSLTOPTS) -o $@ $(XSLT) $<
>>
>> +git.info: user-manual.xml
>> + $(RM) $@ $*.texi
>> + $(DOCBOOK2X_TEXI) user-manual.xml --to-stdout | \
>> + perl -ne 'if (/^\@setfilename/) {$$_="\@setfilename git.info\
>> +"} elsif (/^\@direntry/) {print "\@dircategory Development\
>> +\@direntry\
>> +* Git: (git). A fast distributed revision control system\
>> +\@end direntry\
>> +"} print unless (/^\@direntry/ .. /^\@end direntry/)' > $*.texi
>> + $(MAKEINFO) --no-split $*.texi
>> + $(RM) $*.texi
>> +
>
> This part worries me.
Aside from possible portability issue of multi-line script,
there is another slight problem I am not sure if it is worth
fixing. If you do not have docbook2x-texi installed, nobody
notices that resulting $*.texi was a garbage and an almost empty
git.info is generated.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [install info (using perl) 1/2] Add support for an info version of the user manual
2007-08-08 23:05 ` Junio C Hamano
@ 2007-08-08 23:18 ` Junio C Hamano
2007-08-08 23:46 ` David Kastrup
2007-08-08 23:27 ` David Kastrup
1 sibling, 1 reply; 10+ messages in thread
From: Junio C Hamano @ 2007-08-08 23:18 UTC (permalink / raw)
To: David Kastrup; +Cc: git
Junio C Hamano <gitster@pobox.com> writes:
>> This part worries me.
>
> Aside from possible portability issue of multi-line script,
> there is another slight problem I am not sure if it is worth
> fixing. If you do not have docbook2x-texi installed, nobody
> notices that resulting $*.texi was a garbage and an almost empty
> git.info is generated.
How about doing something like this instead?
---
Documentation/Makefile | 13 ++++---------
Documentation/fix-texi.perl | 15 +++++++++++++++
2 files changed, 19 insertions(+), 9 deletions(-)
create mode 100755 Documentation/fix-texi.perl
diff --git a/Documentation/Makefile b/Documentation/Makefile
index 56d12aa..8c33729 100644
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -154,16 +154,11 @@ user-manual.html: user-manual.xml
xsltproc $(XSLTOPTS) -o $@ $(XSLT) $<
git.info: user-manual.xml
- $(RM) $@ $*.texi
- $(DOCBOOK2X_TEXI) user-manual.xml --to-stdout | \
- perl -ne 'if (/^\@setfilename/) {$$_="\@setfilename git.info\
-"} elsif (/^\@direntry/) {print "\@dircategory Development\
-\@direntry\
-* Git: (git). A fast distributed revision control system\
-\@end direntry\
-"} print unless (/^\@direntry/ .. /^\@end direntry/)' > $*.texi
+ $(RM) $@ $*.texi $*.texi+
+ $(DOCBOOK2X_TEXI) user-manual.xml --to-stdout >$*.texi+
+ perl fix-texi.perl <$*.texi+ >$*.texi
$(MAKEINFO) --no-split $*.texi
- $(RM) $*.texi
+ $(RM) $*.texi $*.texi+
howto-index.txt: howto-index.sh $(wildcard howto/*.txt)
$(RM) $@+ $@
diff --git a/Documentation/fix-texi.perl b/Documentation/fix-texi.perl
new file mode 100755
index 0000000..ff7d78f
--- /dev/null
+++ b/Documentation/fix-texi.perl
@@ -0,0 +1,15 @@
+#!/usr/bin/perl -w
+
+while (<>) {
+ if (/^\@setfilename/) {
+ $_ = "\@setfilename git.info\n";
+ } elsif (/^\@direntry/) {
+ print '@dircategory Development
+@direntry
+* Git: (git). A fast distributed revision control system
+@end direntry
+'; }
+ unless (/^\@direntry/../^\@end direntry/) {
+ print;
+ }
+}
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [install info (using perl) 1/2] Add support for an info version of the user manual
2007-08-08 22:59 ` [install info (using perl) 1/2] Add support for an info version of the user manual Junio C Hamano
2007-08-08 23:05 ` Junio C Hamano
@ 2007-08-08 23:25 ` David Kastrup
1 sibling, 0 replies; 10+ messages in thread
From: David Kastrup @ 2007-08-08 23:25 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git
Junio C Hamano <gitster@pobox.com> writes:
> David Kastrup <dak@gnu.org> writes:
>
>> +git.info: user-manual.xml
>> + $(RM) $@ $*.texi
>> + $(DOCBOOK2X_TEXI) user-manual.xml --to-stdout | \
>> + perl -ne 'if (/^\@setfilename/) {$$_="\@setfilename git.info\
>> +"} elsif (/^\@direntry/) {print "\@dircategory Development\
>> +\@direntry\
>> +* Git: (git). A fast distributed revision control system\
>> +\@end direntry\
>> +"} print unless (/^\@direntry/ .. /^\@end direntry/)' > $*.texi
>> + $(MAKEINFO) --no-split $*.texi
>> + $(RM) $*.texi
>> +
>
> This part worries me.
>
> Historically (as you probably know, having suffered a lot more
> than me with this issue), multi-line command script in Makefile
> was hugely unportable. Some "make" implementations stripped
> backslash linefeed at the end, some other implementations
> stripped only backslash, yet some other kept both backslash and
> linefeed. It was a mess.
>
> Admittably we are already quite dependent on GNU make,
Yes, definitely. That's why I did it that way in the first place. It
is probably not inconceivable, however, that even then some
combination of make port and perl port to Windows would get into a
tizzy.
> so this is probably not a huge deal, but I have a vague recollection
> that even GNU make itself changed its behaviour over time with
> respect to this exact area, and I had to adjust a few Makefiles to
> accomodate both old and new GNU make.
I have to admit that I did not know in advance how this would work out
and adapted the code to the behavior.
> The standard workaround is of course to have this perl script
> part as a separate, "Documentation/fixup-texi.perl" script and
> invoke it from the Makefile.
I can code this as a single overlong line reasonably easy. And it is
not actually necessary to do the @setfilename replacement: one can
just specify an override of the output file name. That shortens the
Perl script. I'll have to see whether I can get rid of it completely,
but the documentation for docbook2X is really bad (and the author did
not respond to Email yet). And googling on the net showed that I am
not the only one who fixed up after docbook2X manually.
Don't expect a new patch in this area soon: I am messing with other
stuff right now and it does not make sense reworking this again when I
am not sure yet whether I can throw it out altogether.
--
David Kastrup, Kriemhildstr. 15, 44793 Bochum
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [install info (using perl) 1/2] Add support for an info version of the user manual
2007-08-08 23:05 ` Junio C Hamano
2007-08-08 23:18 ` Junio C Hamano
@ 2007-08-08 23:27 ` David Kastrup
1 sibling, 0 replies; 10+ messages in thread
From: David Kastrup @ 2007-08-08 23:27 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git
Junio C Hamano <gitster@pobox.com> writes:
> Junio C Hamano <gitster@pobox.com> writes:
>
>> David Kastrup <dak@gnu.org> writes:
>>
>>> @@ -139,6 +154,18 @@ XSLTOPTS = --xinclude --stringparam html.stylesheet docbook-xsl.css
>>> user-manual.html: user-manual.xml
>>> xsltproc $(XSLTOPTS) -o $@ $(XSLT) $<
>>>
>>> +git.info: user-manual.xml
>>> + $(RM) $@ $*.texi
>>> + $(DOCBOOK2X_TEXI) user-manual.xml --to-stdout | \
>>> + perl -ne 'if (/^\@setfilename/) {$$_="\@setfilename git.info\
[...]
> Aside from possible portability issue of multi-line script, there is
> another slight problem I am not sure if it is worth fixing. If you
> do not have docbook2x-texi installed, nobody notices that resulting
> $*.texi was a garbage and an almost empty git.info is generated.
Good catch.
--
David Kastrup, Kriemhildstr. 15, 44793 Bochum
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [install info (using perl) 1/2] Add support for an info version of the user manual
2007-08-08 23:18 ` Junio C Hamano
@ 2007-08-08 23:46 ` David Kastrup
0 siblings, 0 replies; 10+ messages in thread
From: David Kastrup @ 2007-08-08 23:46 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git
Junio C Hamano <gitster@pobox.com> writes:
> Junio C Hamano <gitster@pobox.com> writes:
>
> How about doing something like this instead?
>
> ---
>
> Documentation/Makefile | 13 ++++---------
> Documentation/fix-texi.perl | 15 +++++++++++++++
> 2 files changed, 19 insertions(+), 9 deletions(-)
> create mode 100755 Documentation/fix-texi.perl
>
> diff --git a/Documentation/Makefile b/Documentation/Makefile
> index 56d12aa..8c33729 100644
> --- a/Documentation/Makefile
> +++ b/Documentation/Makefile
> new file mode 100755
> index 0000000..ff7d78f
> --- /dev/null
> +++ b/Documentation/fix-texi.perl
[...]
It makes Perl look like a programming language instead of line noise.
But putting it into a file with .perl extension will make users
recognize it nevertheless. So
Acked-by: David Kastrup <dak@gnu.org>
I can fold this patch in and repost (probably not too many people have
applied the previous patches and would require a good fast forward
path, so one would probably not need a 3-commit version built on top
of the existing patches), or you may do so at your discretion.
Thanks, looks much nicer. I still hope to rationalize Perl away
altogether at some point of time, but...
--
David Kastrup, Kriemhildstr. 15, 44793 Bochum
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2007-08-08 23:46 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-08-06 10:22 [install info (using perl) 1/2] Add support for an info version of the user manual David Kastrup
2007-08-07 10:02 ` [install info (using perl) 2/2] INSTALL: explain info installation and dependencies David Kastrup
2007-08-08 22:59 ` [install info (using perl) 1/2] Add support for an info version of the user manual Junio C Hamano
2007-08-08 23:05 ` Junio C Hamano
2007-08-08 23:18 ` Junio C Hamano
2007-08-08 23:46 ` David Kastrup
2007-08-08 23:27 ` David Kastrup
2007-08-08 23:25 ` David Kastrup
-- strict thread matches above, loose matches on Subject: below --
2007-08-06 10:22 David Kastrup
2007-08-07 10:49 ` David Kastrup
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox