changeset 7196:c49e5940a04f

* MODULES.html.sh (Support for building libraries and executables): Add elisp-comp. * build-aux/elisp-comp: New file. * modules/elisp-comp: New file. * config/srclist.txt: Add elisp-comp.
author Paul Eggert <eggert@cs.ucla.edu>
date Thu, 24 Aug 2006 20:15:12 +0000
parents e4a459055e78
children 523e20b6fe32
files ChangeLog MODULES.html.sh build-aux/elisp-comp config/ChangeLog config/srclist.txt modules/elisp-comp
diffstat 6 files changed, 122 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+	* MODULES.html.sh (Support for building libraries and executables):
+	Add elisp-comp.
+	* build-aux/elisp-comp: New file.
+	* modules/elisp-comp: New file.
+
 2006-08-24  Bruno Haible <bruno@clisp.org>
 
 	* gnulib-tool (func_create_testdir): Use non-default values of
--- a/MODULES.html.sh
+++ b/MODULES.html.sh
@@ -2100,6 +2100,7 @@
 
   func_begin_table
   func_module dummy
+  func_module elisp-comp
   func_module ldd
   func_module lib-ignore
   func_end_table
new file mode 100755
--- /dev/null
+++ b/build-aux/elisp-comp
@@ -0,0 +1,89 @@
+#!/bin/sh
+# Copyright (C) 1995, 2000, 2003, 2004, 2005  Free Software Foundation, Inc.
+
+scriptversion=2005-05-14.22
+
+# Franc,ois Pinard <pinard@iro.umontreal.ca>, 1995.
+#
+# This program 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 2, or (at your option)
+# any later version.
+#
+# This program 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 this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# This file is maintained in Automake, please report
+# bugs to <bug-automake@gnu.org> or send patches to
+# <automake-patches@gnu.org>.
+
+case $1 in
+  '')
+     echo "$0: No files.  Try \`$0 --help' for more information." 1>&2
+     exit 1;
+     ;;
+  -h | --h*)
+    cat <<\EOF
+Usage: elisp-comp [--help] [--version] FILES...
+
+This script byte-compiles all `.el' files listed as FILES using GNU
+Emacs, and put the resulting `.elc' files into the current directory,
+so disregarding the original directories used in `.el' arguments.
+
+This script manages in such a way that all Emacs LISP files to
+be compiled are made visible between themselves, in the event
+they require or load-library one another.
+
+Report bugs to <bug-automake@gnu.org>.
+EOF
+    exit $?
+    ;;
+  -v | --v*)
+    echo "elisp-comp $scriptversion"
+    exit $?
+    ;;
+esac
+
+if test -z "$EMACS" || test "$EMACS" = "t"; then
+  # Value of "t" means we are running in a shell under Emacs.
+  # Just assume Emacs is called "emacs".
+  EMACS=emacs
+fi
+
+tempdir=elc.$$
+
+# Cleanup the temporary directory on exit.
+trap 'ret=$?; rm -rf "$tempdir" && exit $ret' 0
+trap '(exit $?); exit' 1 2 13 15
+
+mkdir $tempdir
+cp "$@" $tempdir
+
+(
+  cd $tempdir
+  echo "(setq load-path (cons nil load-path))" > script
+  $EMACS -batch -q -l script -f batch-byte-compile *.el || exit $?
+  mv *.elc ..
+) || exit $?
+
+(exit 0); exit 0
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
--- a/config/ChangeLog
+++ b/config/ChangeLog
@@ -1,3 +1,7 @@
+2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+	* srclist.txt: Add elisp-comp.
+
 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
 
 	* srclist.txt: Remove gnupload, since coreutils now syncs from
--- a/config/srclist.txt
+++ b/config/srclist.txt
@@ -1,4 +1,4 @@
-# $Id: srclist.txt,v 1.135 2006-08-22 19:38:57 eggert Exp $
+# $Id: srclist.txt,v 1.136 2006-08-24 20:15:12 eggert Exp $
 # Files for which we are not the source.  See ./srclistvars.sh for the
 # variable definitions.
 
@@ -6,6 +6,7 @@
 $GNUCONFIG/config.sub		build-aux
 #
 $AUTOMAKE/lib/depcomp		build-aux
+$AUTOMAKE/lib/elisp-comp	build-aux
 $AUTOMAKE/lib/install-sh	build-aux
 $AUTOMAKE/lib/mdate-sh		build-aux
 $AUTOMAKE/lib/missing		build-aux
new file mode 100644
--- /dev/null
+++ b/modules/elisp-comp
@@ -0,0 +1,19 @@
+Description:
+Compile Emacs Lisp files.
+
+Files:
+build-aux/elisp-comp
+
+Depends-on:
+
+configure.ac:
+
+Makefile.am:
+
+Include:
+
+License:
+GPLed build tool
+
+Maintainer:
+Alexandre Duret-Lutz