This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Clean up glibc version numbers in manual


On Thu, 23 Feb 2012, Roland McGrath wrote:

> That seems potentially reasonable on its face.  But I think we first need
> to figure out what to do about EDITION and ISBN and how it all relates to
> the FSF's printed editions.  I haven't talked to anyone there about printed
> manuals since last millenium.  They appear to be selling a two-volume
> version and I have no idea how the volume split works.  I think we should
> figure all that out.  

The cover image on the FSF site is rather small, but I think it says "for 
glibc Versions 2.3.x".

I think it's reasonable to consider that edition numbers are only 
meaningful in the FSF's editions, not versions produced directly from the 
glibc sources on master.

For the GCC manual I put in FSFPRINT conditionals with the idea that FSF 
printed editions could just use @set FSFPRINT to enable the relevant 
changes.  But that may not ever have been used - the changes from the last 
printed edition of the GCC manual didn't get merged back in because the 
GNU Press volunteer doing those changes disappeared without merging them - 
and I don't think it makes sense to add such a thing to glibc without 
evidence it would be used.  Instead it seems best to wait until the FSF 
wants to print a new edition, then work out with them what setup is best 
in glibc to support producing that edition.

> If we can't figure it out very soon, then in the interim we should probably
> adopt your suggestion and also remove or (@comment out) EDITION and ISBN
> and their uses, along with anything else that mentions printed editions.

This patch sets up automatic version generation for the manual.  It
removes the last-updated date, and comments out edition references and
definitions and the ISBN definition (the use of the ISBN was already
commented out).  References to the printed edition other than in the
license notice are also commented out.

I didn't do anything with the support for building tarball
distributions of the manual only, since I think that can reasonably be
considered with other relics of old distribution building support, for
which I've filed bug 13739.  I've also filed bug 13738 for an
inconsistency in the GFDL version that I noticed while preparing this
patch.

2012-02-24  Joseph Myers  <joseph@codesourcery.com>

	* manual/Makefile (libc-texi-generated): New variable.  Include
	version.texi.
	(libc.dvi, libc.pdf, libc.info, libc/index.html): Depend on
	$(libc-texi-generated), not duplicated list of files.
	(version.texi): New rule.
	(realclean): Remove version.texi.
	* manual/libc.texinfo: Comment out uses of edition numbers and
	references to printed manual.  Remove last-updated dates.
	(EDITION): Comment out.
	(ISBN): Likewise.
	(VERSION, UPDATED): Remove.
	(version.texi): Include.

diff --git a/manual/Makefile b/manual/Makefile
index 6959dd2..3e9d033 100644
--- a/manual/Makefile
+++ b/manual/Makefile
@@ -1,5 +1,4 @@
-# Copyright (C) 1992-1999,2000,2001,2002,2003,2004,2006,2011
-#	Free Software Foundation, Inc.
+# Copyright (C) 1992-2012 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 
 # The GNU C Library is free software; you can redistribute it and/or
@@ -76,12 +75,15 @@ chapters.% top-menu.%: libc-texinfo.sh $(texis) Makefile
 			       '$(add-chapters)' \
 			       '$(appendices) $(licenses)'
 
-libc.dvi libc.pdf libc.info: chapters.texi top-menu.texi dir-add.texi \
-			     libm-err.texi
+# Generated files directly included from libc.texinfo.
+libc-texi-generated = chapters.texi top-menu.texi dir-add.texi \
+	libm-err.texi version.texi
+
+libc.dvi libc.pdf libc.info: $(libc-texi-generated)
 libc.dvi libc.pdf: texinfo.tex
 
 html: libc/index.html
-libc/index.html: chapters.texi top-menu.texi dir-add.texi libm-err.texi
+libc/index.html: $(libc-texi-generated)
 	$(MAKEINFO) --html libc.texinfo
 
 # Generate the summary from the Texinfo source files for each chapter.
@@ -110,6 +112,12 @@ stamp-libm-err: libm-err-tab.pl $(wildcard $(foreach dir,$(sysdirs),\
 	$(move-if-change) libm-err-tmp libm-err.texi
 	touch $@
 
+# Generate a file with the version number.
+version.texi: $(common-objpfx)config.make
+	echo "@set VERSION $(version)" > version-tmp
+	$(move-if-change) version-tmp version.texi
+	touch $@
+
 # Generate Texinfo files from the C source for the example programs.
 %.c.texi: examples/%.c
 	sed -e 's,[{}],@&,g'				\
@@ -176,7 +184,7 @@ realclean: distclean
 	-rm -f texis summary.texi stamp-summary *.c.texi dir-add.texi
 	-rm -f $(foreach index,$(indices),libc.$(index) libc.$(index)s)
 	-rm -f libc.log libc.aux libc.toc dir-add.texinfo
-	-rm -f top-menu.texi chapters.texi
+	-rm -f top-menu.texi chapters.texi version.texi
 
 .PHONY: install subdir_install installdirs install-data
 install-data subdir_install: install
diff --git a/manual/libc.texinfo b/manual/libc.texinfo
index 2fc3fb9..7ebfd85 100644
--- a/manual/libc.texinfo
+++ b/manual/libc.texinfo
@@ -18,16 +18,17 @@
 @comment %**end of header (This is for running Texinfo on a region.)
 
 @c sold 0.06/1.09, print run out 21may96
-@set EDITION 0.13
-@set VERSION 2.14
-@set UPDATED 2011-07-19
-@set ISBN 1-882114-55-8
+@c @set EDITION 0.13
+@c @set ISBN 1-882114-55-8
+
+@include version.texi
 
 @copying
 This file documents the GNU C library.
 
-This is Edition @value{EDITION}, last updated @value{UPDATED},
-of @cite{The GNU C Library Reference Manual}, for version @value{VERSION}.
+This is
+@c Edition @value{EDITION} of
+@cite{The GNU C Library Reference Manual}, for version @value{VERSION}.
 
 Copyright @copyright{} 1993--2012 Free Software Foundation, Inc.
 
@@ -57,22 +58,20 @@ supports it in developing GNU and promoting software freedom.''
 @center with
 @center Richard M. Stallman, Roland McGrath, Andrew Oram, and Ulrich Drepper
 @sp 3
-@center Edition @value{EDITION}
-@sp 1
-@center last updated @value{UPDATED}
-@sp 1
+@c @center Edition @value{EDITION}
+@c @sp 1
 @center for version @value{VERSION}
 @page
 @vskip 0pt plus 1filll
 @insertcopying
 
-@sp 2
-Published by the @uref{http://www.fsf.org/, Free Software Foundation} @*
+@c @sp 2
+@c Published by the @uref{http://www.fsf.org/, Free Software Foundation} @*
 @c ISBN @value{ISBN} @*
 
-@sp 2
-Cover art for the Free Software Foundation's printed edition
-by Etienne Suvasa.
+@c @sp 2
+@c Cover art for the Free Software Foundation's printed edition
+@c by Etienne Suvasa.
 
 @end titlepage
 
@@ -82,7 +81,8 @@ by Etienne Suvasa.
 @ifnottex
 @node Top, Introduction, (dir), (dir)
 @top Main Menu
-This is Edition @value{EDITION}, last updated @value{UPDATED}, of
+This is
+@c Edition @value{EDITION} of
 @cite{The GNU C Library Reference Manual}, for Version @value{VERSION}
 of the GNU C Library.
 @end ifnottex


-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]