diff options
author | Glenn Morris <rgm@gnu.org> | 2013-12-12 00:54:21 -0800 |
---|---|---|
committer | Glenn Morris <rgm@gnu.org> | 2013-12-12 00:54:21 -0800 |
commit | 62bd73fa7a8c50504bc6f916b86603ea654fc472 (patch) | |
tree | c0f269198491a68fe4fbedcb9a95ddf11c4ac600 /build-aux | |
parent | 397a32c12ad097314c0948818d5c54b43d9f3d54 (diff) | |
download | emacs-62bd73fa7a8c50504bc6f916b86603ea654fc472.tar.gz |
Stop keeping info/dir in the repository.
* build-aux/dir_top: Move here from admin/.
* build-aux/make-info-dir: New script.
* Makefile.in (bootstrap-clean): Delete info/.
(info-dir, ${srcdir}/info/dir): New rules.
(info): Also make info-dir.
(check-info): Rename from check-info-dir.
Instead of info/dir entries, check @dircategory in info/*.info.
* make-dist: Use `info' rule rather than `info-real'.
No more info/COPYING (not even the right license for info/ files).
* info/: Remove from repository.
* admin/update_autogen (info_dir):
Use dir_top from build-aux/ rather than admin/.
* .bzrignore: Ignore info/ altogether.
* doc/emacs/Makefile.in: Comment.
Diffstat (limited to 'build-aux')
-rw-r--r-- | build-aux/dir_top | 20 | ||||
-rwxr-xr-x | build-aux/make-info-dir | 93 |
2 files changed, 113 insertions, 0 deletions
diff --git a/build-aux/dir_top b/build-aux/dir_top new file mode 100644 index 00000000000..321a39dc35e --- /dev/null +++ b/build-aux/dir_top @@ -0,0 +1,20 @@ +This is the file .../info/dir, which contains the +topmost node of the Info hierarchy, called (dir)Top. +The first time you invoke Info you start off looking at this node. + +File: dir, Node: Top This is the top of the INFO tree + +The Info Directory +****************** + + The Info Directory is the top-level menu of major Info topics. + Type "d" in Info to return to the Info Directory. Type "q" to exit Info. + Type "?" for a list of Info commands, or "h" to visit an Info tutorial. + Type "m" to choose a menu item--for instance, + "mEmacs<Return>" visits the Emacs manual. + In Emacs Info, you can click mouse button 2 on a menu item + or cross reference to follow it to its target. + Each menu line that starts with a * is a topic you can select with "m". + Every third topic has a red * to help pick the right number to type. + +* Menu: diff --git a/build-aux/make-info-dir b/build-aux/make-info-dir new file mode 100755 index 00000000000..61f3b1a243c --- /dev/null +++ b/build-aux/make-info-dir @@ -0,0 +1,93 @@ +#!/bin/sh + +### make-info-dir - create info/dir, for systems without install-info + +## Copyright (C) 2013 Free Software Foundation, Inc. + +## Author: Glenn Morris <rgm@gnu.org> + +## This file is part of GNU Emacs. + +## GNU Emacs is free software: you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation, either version 3 of the License, or +## (at your option) any later version. + +## GNU Emacs is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. + +## You should have received a copy of the GNU General Public License +## along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. + +### Commentary: + +## Generate info/dir, for systems without install-info. +## Expects to be called from top-level Emacs source directory. + +## It only handles the case where info/dir is missing from the +## installation directory. It does not handle info/dir being present +## but missing some entries. + +### Code: + +if test $# -ne 1; then + echo "Specify destination file" + exit 1 +fi + +outfile=$1 + +echo "Creating $outfile..." + +if test -f "$outfile"; then + echo "$outfile already present" + exit 1 +fi + +## Header contains non-printing characters, so this is more +## reliable than using echo. +basefile=build-aux/dir_top + +if test ! -f "$basefile"; then + echo "$basefile not found" + exit 1 +fi + + +cp $basefile $outfile + + +## FIXME inefficient looping. +for topic in "Texinfo documentation system" "Emacs" "GNU Emacs Lisp" \ + "Emacs editing modes" "Emacs network features" "Emacs misc features" \ + "Emacs lisp libraries"; do + + cat - <<EOF >> $outfile + +$topic +EOF + for file in info/*.info; do + + ## FIXME do not ignore w32 if OS is w32. + case $file in + *-xtra.info|*efaq-w32.info) continue ;; + esac + + dircat=`sed -n -e 's/^INFO-DIR-SECTION //p' $file` + + ## TODO warn about unknown topics. + test "$dircat" = "$topic" || continue + + sed -n -e '/^START-INFO-DIR-ENTRY/,/^END-INFO-DIR-ENTRY/ s/^\([^SE]\)/\1/p' \ + $file >> $outfile + + done +done + +echo "Created $outfile" + +exit 0 + +### make-info-dir ends here |