/[gentoo-x86]/eclass/elisp-common.eclass
Gentoo

Diff of /eclass/elisp-common.eclass

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.42 Revision 1.43
1# Copyright 1999-2008 Gentoo Foundation 1# Copyright 1999-2008 Gentoo Foundation
2# Distributed under the terms of the GNU General Public License v2 2# Distributed under the terms of the GNU General Public License v2
3# $Header: /var/cvsroot/gentoo-x86/eclass/elisp-common.eclass,v 1.42 2008/08/10 16:54:22 ulm Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/elisp-common.eclass,v 1.43 2008/08/27 06:53:41 ulm Exp $
4# 4#
5# Copyright 2002-2004 Matthew Kennedy <mkennedy@gentoo.org> 5# Copyright 2002-2004 Matthew Kennedy <mkennedy@gentoo.org>
6# Copyright 2003 Jeremy Maitin-Shepard <jbms@attbi.com> 6# Copyright 2003 Jeremy Maitin-Shepard <jbms@attbi.com>
7# Copyright 2004-2005 Mamoru Komachi <usata@gentoo.org> 7# Copyright 2004-2005 Mamoru Komachi <usata@gentoo.org>
8# Copyright 2007-2008 Christian Faulhammer <opfer@gentoo.org> 8# Copyright 2007-2008 Christian Faulhammer <opfer@gentoo.org>
31# 31#
32# .SS 32# .SS
33# src_compile() usage: 33# src_compile() usage:
34# 34#
35# An elisp file is compiled by the elisp-compile() function defined here and 35# An elisp file is compiled by the elisp-compile() function defined here and
36# simply takes the source files as arguments. 36# simply takes the source files as arguments. The case of interdependent
37# elisp files is also supported, since the current directory is added to the
38# load-path which makes sure that all files are loadable.
37# 39#
38# elisp-compile *.el || die "elisp-compile failed" 40# elisp-compile *.el || die "elisp-compile failed"
39# 41#
40# In the case of interdependent elisp files, you can use the elisp-comp() 42# Formerly, function elisp-comp() was used for compilation of interdependent
41# function which makes sure all files are loadable. 43# elisp files. This usage is considered as obsolete.
42#
43# elisp-comp *.el || die "elisp-comp failed"
44# 44#
45# Function elisp-make-autoload-file() can be used to generate a file with 45# Function elisp-make-autoload-file() can be used to generate a file with
46# autoload definitions for the lisp functions. It takes the output file name 46# autoload definitions for the lisp functions. It takes the output file name
47# (default: "${PN}-autoloads.el") and a list of directories (default: working 47# (default: "${PN}-autoloads.el") and a list of directories (default: working
48# directory) as its arguments. Use of this function requires that the elisp 48# directory) as its arguments. Use of this function requires that the elisp
49# source files contain magic ";;;###autoload" comments. See the Emacs Lisp 49# source files contain magic ";;;###autoload" comments. See the Emacs Lisp
50# Reference Manual (node "Autoload") for a detailed explanation. 50# Reference Manual (node "Autoload") for a detailed explanation.
51# 51#
52# .SS 52# .SS
53# src_install() usage: 53# src_install() usage:
54# 54#
138# @ECLASS-VARIABLE: SITEFILE 138# @ECLASS-VARIABLE: SITEFILE
139# @DESCRIPTION: 139# @DESCRIPTION:
140# Name of package's site-init file. 140# Name of package's site-init file.
141SITEFILE=50${PN}-gentoo.el 141SITEFILE=50${PN}-gentoo.el
142 142
143# @ECLASS-VARIABLE: EMACS
144# @DESCRIPTION:
145# Path of Emacs executable.
143EMACS=/usr/bin/emacs 146EMACS=/usr/bin/emacs
147
148# @ECLASS-VARIABLE: EMACSFLAGS
149# @DESCRIPTION:
150# Flags for executing Emacs in batch mode.
144# The following works for Emacs versions 18-23, don't change it. 151# These work for Emacs versions 18-23, so don't change them.
145EMACSFLAGS="-batch -q --no-site-file" 152EMACSFLAGS="-batch -q --no-site-file"
153
154# @ECLASS-VARIABLE: BYTECOMPFLAGS
155# @DESCRIPTION:
156# Emacs flags used for byte-compilation in elisp-compile().
157BYTECOMPFLAGS="-L ."
146 158
147# @FUNCTION: elisp-compile 159# @FUNCTION: elisp-compile
148# @USAGE: <list of elisp files> 160# @USAGE: <list of elisp files>
149# @DESCRIPTION: 161# @DESCRIPTION:
150# Byte-compile Emacs Lisp files. 162# Byte-compile Emacs Lisp files.
163#
164# This function uses GNU Emacs to byte-compile all ".el" specified by its
165# arguments. The resulting byte-code (".elc") files are placed in the same
166# directory as their corresponding source file.
167#
168# The current directory is added to the load-path. This will ensure that
169# interdependent Emacs Lisp files are visible between themselves, in case
170# they require or load one another.
151 171
152elisp-compile() { 172elisp-compile() {
153 ebegin "Compiling GNU Emacs Elisp files" 173 ebegin "Compiling GNU Emacs Elisp files"
154 ${EMACS} ${EMACSFLAGS} -f batch-byte-compile "$@" 174 ${EMACS} ${EMACSFLAGS} ${BYTECOMPFLAGS} -f batch-byte-compile "$@"
155 eend $? "batch-byte-compile failed" 175 eend $? "batch-byte-compile failed"
156} 176}
157 177
158# @FUNCTION: elisp-comp 178# @FUNCTION: elisp-comp
159# @USAGE: <list of elisp files> 179# @USAGE: <list of elisp files>

Legend:
Removed from v.1.42  
changed lines
  Added in v.1.43

  ViewVC Help
Powered by ViewVC 1.1.20