Commit 8f50130c authored by Paul Eggert's avatar Paul Eggert

Merge from trunk.

parents 85a83e2e 7b9d523a
2011-12-10 Juanma Barranquero <lekktu@gmail.com>
* update-subdirs: Don't set no-byte-compile twice (bug#10260).
2011-12-10 Jan Djärv <jan.h.d@swipnet.se>
* configure.in (HAVE_ALSA, HAVE_GSETTINGS): Save and restore LIBS
instead of LDFLAGS (Bug#10230).
2011-12-03 Paul Eggert <eggert@cs.ucla.edu>
* INSTALL.BZR: Mention configure -C, --disable-maintainer-mode.
Propagate configure flags to sub-configures.
* Makefile.in (cache_file, MAINTAINER_MODE_FLAG, CONFIGUREFLAGS):
New macros.
(config.status, bootstrap): Use them to propagate configure flags
to sub-configures.
* configure.in (cache_file): AC_SUBST this, for Makefile.in.
2011-12-03 Paul Eggert <eggert@cs.ucla.edu>
* .bzrignore: Add config.cache.
2011-11-27 Jan Djärv <jan.h.d@swipnet.se>
* configure.in: Check for gtk_window_set_has_resize_grip.
2011-11-24 Juanma Barranquero <lekktu@gmail.com>
* configure.in (HAVE_XPM): Fix typo.
2011-11-22 Glenn Morris <rgm@gnu.org>
* configure.in (EMACSDATA, EMACSDOC): If set, print, since they can
have confusing effects on the build. (Bug#6401)
* Makefile.in (install-arch-dep): Tweak previous change.
2011-11-22 Yavor Doganov <yavor@gnu.org>
Do not install arch-dependent files in the app bundle if
--disable-ns-self-contained is requested. (Bug#1335)
* configure.in (exec_prefix, libexecdir): Define relative to
`ns_appbindir' only if configured for a self-contained app.
* Makefile.in (install-arch-dep): Test for the existence of
libexec in the Emacs.app bundle before executing commands.
2011-11-20 Andreas Schwab <schwab@linux-m68k.org>
* configure.in: Remove reference to src/m/ibms390.h.
2011-11-13 Glenn Morris <rgm@gnu.org>
* INSTALL: Tiny updates for disk space used during installation.
......@@ -689,7 +741,7 @@
* autogen/Makefile.in: Add auto-updated generated files.
* autogen.sh: No longer a no-op, now it tests for autotools
and runs them as necessary.
* configure.in: Defaule maintainer-mode to on.
* configure.in: Default maintainer-mode to on.
* aclocal.m4, configure, lib/Makefile.in: Remove files.
2011-03-13 Paul Eggert <eggert@cs.ucla.edu>
......@@ -1414,7 +1466,7 @@
2010-10-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
* configure.in: Remove the BROKEN annotation from gnutls.
* configure.in: Remove the BROKEN annotation from GnuTLS.
2010-10-22 Glenn Morris <rgm@gnu.org>
......@@ -1497,7 +1549,7 @@
2010-09-26 Lars Magne Ingebrigtsen <larsi@gnus.org>
* configure.in (HAVE_GNUTLS): Don't break if we don't have the
gnutls libraries.
GnuTLS libraries.
2010-09-26 Teodor Zlatanov <tzz@lifelogs.com>
......@@ -8128,7 +8180,7 @@
1994-01-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
* configure.in (creating src/Makefile): Put code inside 2nd arg to
AC_OUTPUT as it should be; hopefully noone will again see fit to
AC_OUTPUT as it should be; hopefully no one will again see fit to
gratuitously break this and not make a change log entry.
Optimized sed processing of Makefile.in and cpp output; now
preserves comments previously removed from the cpp input.
......@@ -9711,7 +9763,7 @@
paths.h.in, Makefile.in in src.
* configure: Delete .tmp files before creating them; don't bother
trying to make final targets writeable first, since it won't
trying to make final targets writable first, since it won't
matter to move-if-change.
1992-05-19 Jim Blandy (jimb@pogo.cs.oberlin.edu)
......
......@@ -28,6 +28,10 @@ options you can set):
$ ./configure
If you want later builds to go faster, at the expense of sometimes
doing the wrong thing if you update the build procedure, you can
invoke "./configure -C --disable-maintainer-mode" instead.
Some of the files that are included in the Emacs tarball, such as
byte-compiled Lisp files, are not stored in Bazaar. Therefore, to
build from Bazaar you must run "make bootstrap" instead of just "make":
......
......@@ -66,6 +66,11 @@ CDPATH=
# ==================== Things `configure' Might Edit ====================
MAINTAINER_MODE_FLAG = --disable-maintainer-mode
@MAINT@MAINTAINER_MODE_FLAG = --enable-maintainer-mode
cache_file = @cache_file@
CONFIGURE_FLAGS = --cache-file=$(cache_file) $(MAINTAINER_MODE_FLAG)
CC=@CC@
CFLAGS=@CFLAGS@
LDFLAGS=@LDFLAGS@
......@@ -404,7 +409,7 @@ config.status: ${srcdir}/configure ${srcdir}/lisp/version.el
if [ -x ./config.status ]; then \
./config.status --recheck; \
else \
./configure; \
./configure $(CONFIGURE_FLAGS); \
fi
AUTOCONF_INPUTS = @MAINT@ $(srcdir)/configure.in $(srcdir)/aclocal.m4
......@@ -474,10 +479,10 @@ install-arch-dep: mkdir
if test -d share/emacs ; then dir=share/emacs/*/*; $(MV_DIRS); fi;\
if test -d share/info ; then dir=share/info; $(MV_DIRS) ; fi ; \
rm -fr share ) ; \
( cd ${ns_appbindir}libexec ; dir=emacs/*/*/* ; $(MV_DIRS); \
rm -fr emacs ) ; \
( cd ${ns_appbindir}bin ; rm -f emacs emacs-24* ; \
ln -sf ../libexec/* .) ; \
( cd ${ns_appbindir} ; \
if cd libexec ; then dir=emacs/*/*/* ; $(MV_DIRS); \
rm -fr emacs; if cd ../bin; then rm -f emacs emacs-24*; \
ln -sf ../libexec/* . ; fi ; fi ) ; \
else true ; fi
## FIXME is the emacs-24* bit above really necessary and correct?
......@@ -666,7 +671,7 @@ install-etc: mkdir
### Install LEIM files. Although they are machine-independent, we
### have separate target here instead of including it in
### `install-arch-indep'. People who extracted LEIM files after they
### insalled Emacs itself can install only LEIM files by this target.
### installed Emacs itself can install only LEIM files by this target.
install-leim: leim/Makefile mkdir
cd leim; $(MAKE) install
......@@ -936,7 +941,7 @@ bootstrap: bootstrap-clean FRC
if [ -x ./config.status ]; then \
./config.status; \
else \
./configure --enable-maintainer-mode; \
./configure $(CONFIGURE_FLAGS); \
fi
$(MAKE) $(MFLAGS) info all
......
......@@ -2,7 +2,7 @@ Copyright (C) 2001-2011 Free Software Foundation, Inc.
See the end of the file for license conditions.
This directory tree holds version 24.0.91 of GNU Emacs, the extensible,
This directory tree holds version 24.0.92 of GNU Emacs, the extensible,
customizable, self-documenting real-time display editor.
The file INSTALL in this directory says how to build and install GNU
......
......@@ -48,7 +48,7 @@ SYSTEM_MALLOC Use the system library's malloc.
subprocesses System can use subprocesses (for M-x shell for example). Defined by default, only MSDOS undefines it.
USE_LISP_UNION_TYPE Define it in lisp.h to make Lisp_Object be a union type instead of the default int.
** System specific macros, decribed in detail in src/s/template.h
** System specific macros, described in detail in src/s/template.h
CLASH_DETECTION
COFF
FIRST_PTY_LETTER
......@@ -58,9 +58,6 @@ NARROWPROTO
SEPCHAR
SYSTEM_TYPE
** Machine specific macros, decribed in detail in src/m/template.h
VIRT_ADDR_VARIES
** Misc macros
USER_FULL_NAME If defined, overrides the default pw->pw_gecos for getting at the full user name. Only MSDOS overrides the default.
......
2011-11-26 Andreas Schwab <schwab@linux-m68k.org>
* grammars/bovine-grammar.el (bovine--grammar-newstyle-unquote):
Avoid warning about old-style backquote.
* grammars/wisent-grammar.el (auto-mode-alist): Change `$' to `\''
in regexp.
(wisent-make-parsers): Likewise. Quote `.'.
* grammars/bovine-grammar.el (auto-mode-alist): Change `$' to `\''
in regexp.
(bovine-make-parsers): Likewise. Quote `.'.
2011-11-20 Andreas Schwab <schwab@linux-m68k.org>
* CPP-DEFINES (VIRT_ADDR_VARIES): Remove.
2011-11-16 Juanma Barranquero <lekktu@gmail.com>
* admin.el (manual-dvi): Fix typo.
......@@ -398,7 +415,7 @@
2009-06-24 Kenichi Handa <handa@m17n.org>
* charsets/mapconv: For the UNICODE format files, do reverse sort
* charsets/mapconv: For the Unicode format files, do reverse sort
and don't compact the map. This is to prefer the first one in the
duplicated mappings (e.g. 0x20->U+0020, 0x20->U+00A0).
......@@ -893,11 +910,11 @@
* FOR-RELEASE (NEW FEATURES): Completed work on this item:
Rework how fringe bitmaps are defined and used.
Currently, bitmap usage and bitmap appearence are "mixed-up" in a
Currently, bitmap usage and bitmap appearance are "mixed-up" in a
one-level representation. It would be cleaner to split the
representation into a two-level model where first level maps
bitmap usage to a bitmap name, and second level maps bitmap name to
a bitmap appearence.
a bitmap appearance.
2006-01-27 Chong Yidong <cyd@stupidchicken.com>
......
......@@ -170,10 +170,10 @@ entering.texi cyd
files.texi cyd
fixit.texi
fortran-xtra.texi
frames.texi
frames.texi cyd
glossary.texi
help.texi cyd
indent.texi
indent.texi cyd
killing.texi cyd
kmacro.texi cyd
macos.texi
......@@ -182,6 +182,7 @@ major.texi
mark.texi cyd
mini.texi
misc.texi
modes.texi cyd
msdog.texi
msdog-xtra.texi
mule.texi
......@@ -197,7 +198,7 @@ text.texi
trouble.texi
vc-xtra.texi
vc1-xtra.texi
windows.texi
windows.texi cyd
xresources.texi
** Check the Lisp manual.
......
......@@ -99,6 +99,7 @@ Eli Zaretskii
src/xfaces.c
src/xdisp.c
src/term.c
src/dispnew.c
src/frame.c
src/dired.c
......@@ -108,6 +109,7 @@ Eli Zaretskii
lisp/info.el
lisp/ls-lisp.el
lisp/startup.el
lisp/w32*.el
Stefan Monnier
src/intervals.c
......@@ -148,7 +150,6 @@ src/coding.c
src/composite.c
src/config.in
src/data.c
src/dispnew.c
src/doc.c
src/doprnt.c
src/ecrt0.c
......@@ -214,7 +215,6 @@ src/w32term.c
src/w32xfns.c
src/widget.c
src/window.c
src/xdisp.c
src/xfns.c
src/xmenu.c
src/xrdb.c
......
......@@ -32,7 +32,7 @@
BEGIN {
print ";;; cp51932.el -- translation table for CP51932. -*- no-byte-compile: t -*-";
print ";;; Automatically genrated from CP932-2BYTE.map";
print ";;; Automatically generated from CP932-2BYTE.map";
print "(let ((map";
printf " '(;JISEXT<->UNICODE";
}
......
......@@ -3,17 +3,8 @@ generate the parser data in the lisp/semantic/bovine/ and
lisp/semantic/wisent/ directories. You can run the parser generators
with
emacs -batch --no-site-file -l bovine-grammar.el -f semantic-mode \
-f semantic-grammar-batch-build-packages *.by
emacs -batch --no-site-file -l wisent-grammar.el -f semantic-mode \
-f semantic-grammar-batch-build-packages *.wy
The output files were subsequently edited by hand to fix copyright
headers, variable names (to follow library name conventions), and
feature names. These changes do not alter the code logic, and can be
viewed by diffing to the files in lisp/semantic/bovine/ and
lisp/semantic/wisent/.
emacs -batch -Q -l bovine-grammar.el -f bovine-make-parsers
emacs -batch -Q -l wisent-grammar.el -f wisent-make-parsers
Currently, the parser files in lisp/ are not generated directly from
these grammar files when making Emacs. This state of affairs, and the
......
......@@ -115,7 +115,7 @@ NAME, ALIASCLASS, DEFINITION and ATTRIBUTES."
;; when it is released, but at the moment it might be possible that people
;; are using an older snapshot.
(defvar bovine--grammar-newstyle-unquote
(equal '(, test) (read ",test")))
(equal '(\, test) (read ",test")))
(defun bovine-grammar-expand-form (form quotemode &optional inplace)
"Expand FORM into a new one suitable to the bovine parser.
......@@ -434,7 +434,7 @@ Menu items are appended to the common grammar menu.")
(grammar-setupcode-builder . bovine-grammar-setupcode-builder)
)))
(add-to-list 'auto-mode-alist '("\\.by$" . bovine-grammar-mode))
(add-to-list 'auto-mode-alist '("\\.by\\'" . bovine-grammar-mode))
(defvar-mode-local bovine-grammar-mode semantic-grammar-macros
'(
......@@ -454,4 +454,66 @@ Menu items are appended to the common grammar menu.")
(provide 'semantic/bovine/grammar)
(defun bovine-make-parsers ()
"Generate Emacs' built-in Bovine-based parser files."
(semantic-mode 1)
;; Loop through each .by file in current directory, and run
;; `semantic-grammar-batch-build-one-package' to build the grammar.
(dolist (f (directory-files default-directory nil "\\.by\\'"))
(let ((packagename
(condition-case err
(with-current-buffer (find-file-noselect f)
(semantic-grammar-create-package))
(error (message "%s" (error-message-string err)) nil)))
lang)
(when (and packagename
(string-match "^semantic-\\(.*\\)-by\\.el\\'" packagename))
(setq lang (match-string 1 packagename))
(with-temp-buffer
(insert-file-contents packagename)
(setq buffer-file-name (expand-file-name packagename))
;; Fix copyright header:
(goto-char (point-min))
(re-search-forward "^;; Author:")
(setq copyright-end (match-beginning 0))
(re-search-forward "^;;; Code:\n")
(delete-region copyright-end (match-end 0))
(goto-char copyright-end)
(insert ";; 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:
;;
;; This file was generated from admin/grammars/"
lang ".by.
;;; Code:
\(require 'semantic/lex)
\(eval-when-compile (require 'semantic/bovine))\n")
(goto-char (point-min))
(delete-region (point-min) (line-end-position))
(insert ";;; semantic/bovine/" lang
"-by.el --- Generated parser support file")
(delete-trailing-whitespace)
;; Fix footer:
(goto-char (point-max))
(re-search-backward ".\n;;; Analyzers")
(delete-region (point) (point-max))
(insert "(provide 'semantic/bovine/" lang "-by)\n\n")
(insert ";;; semantic/bovine/" lang "-by.el ends here\n")
(save-buffer))))))
;;; bovine-grammar.el ends here
......@@ -122,7 +122,7 @@
%put DELETE summary "delete <object>;"
;; Despite this, this parser can find templates by ignoring the TEMPLATE
;; keyword, and finding the class/method being templateized.
;; keyword, and finding the class/method being templatized.
%token TEMPLATE "template"
%put TEMPLATE summary "template <class TYPE ...> TYPE_OR_FUNCTION"
......
;;; semantic-grammar.wy -- LALR grammar of Semantic input grammars
;;
;; Copyright (C) 2002-2011 Free Software Foundation, Inc.
;;
;; Author: David Ponce <david@dponce.com>
;; Maintainer: David Ponce <david@dponce.com>
;; Created: 26 Aug 2002
;; Keywords: syntax
;; X-RCS: $Id: semantic-grammar.wy,v 1.16 2005/09/30 20:20:27 zappo Exp $
;; 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/>.
%{
(defvar semantic-grammar-lex-c-char-re)
;; Current parsed nonterminal name.
(defvar semantic-grammar-wy--nterm nil)
;; Index of rule in a nonterminal clause.
(defvar semantic-grammar-wy--rindx nil)
}
%package semantic-grammar-wy
%languagemode wy-mode
;; Main
%start grammar
;; Reparse
%start prologue epilogue declaration nonterminal rule
;; EXPANDFULL
%start put_names put_values use_names
;; Keywords
%type <keyword>
%keyword DEFAULT-PREC "%default-prec"
%keyword NO-DEFAULT-PREC "%no-default-prec"
%keyword KEYWORD "%keyword"
%keyword LANGUAGEMODE "%languagemode"
%keyword LEFT "%left"
%keyword NONASSOC "%nonassoc"
%keyword PACKAGE "%package"
%keyword PREC "%prec"
%keyword PUT "%put"
%keyword QUOTEMODE "%quotemode"
%keyword RIGHT "%right"
%keyword SCOPESTART "%scopestart"
%keyword START "%start"
%keyword TOKEN "%token"
%keyword TYPE "%type"
%keyword USE-MACROS "%use-macros"
;; Literals
%type <string>
%token <string> STRING
%type <symbol> syntax ":?\\(\\sw\\|\\s_\\)+"
%token <symbol> SYMBOL
%token <symbol> PERCENT_PERCENT "\\`%%\\'"
%type <char> syntax semantic-grammar-lex-c-char-re
%token <char> CHARACTER
%type <qlist> matchdatatype sexp syntax "\\s'\\s-*("
%token <qlist> PREFIXED_LIST
%type <sexp> matchdatatype sexp syntax "\\="
%token <sexp> SEXP
;; Don't generate these analyzers which needs special handling code.
%token <code> PROLOGUE "%{...%}"
%token <code> EPILOGUE "%%...EOF"
;; Blocks & Parenthesis
%type <block>
%token <block> PAREN_BLOCK "(LPAREN RPAREN)"
%token <block> BRACE_BLOCK "(LBRACE RBRACE)"
%token <open-paren> LPAREN "("
%token <close-paren> RPAREN ")"
%token <open-paren> LBRACE "{"
%token <close-paren> RBRACE "}"
;; Punctuations
%type <punctuation>
%token <punctuation> COLON ":"
%token <punctuation> SEMI ";"
%token <punctuation> OR "|"
%token <punctuation> LT "<"
%token <punctuation> GT ">"
%%
grammar:
prologue
| epilogue
| declaration
| nonterminal
| PERCENT_PERCENT
;
;;; Prologue/Epilogue
;;
prologue:
PROLOGUE
(CODE-TAG "prologue" nil)
;
epilogue:
EPILOGUE
(CODE-TAG "epilogue" nil)
;
;;; Declarations
;;
declaration:
decl
(eval $1)
;
decl:
default_prec_decl
| no_default_prec_decl
| languagemode_decl
| package_decl
| precedence_decl
| put_decl
| quotemode_decl
| scopestart_decl
| start_decl
| keyword_decl
| token_decl
| type_decl
| use_macros_decl
;
default_prec_decl:
DEFAULT-PREC
`(TAG "default-prec" 'assoc :value '("t"))
;
no_default_prec_decl:
NO-DEFAULT-PREC
`(TAG "default-prec" 'assoc :value '("nil"))
;
languagemode_decl:
LANGUAGEMODE symbols
`(TAG ',(car $2) 'languagemode :rest ',(cdr $2))
;
package_decl:
PACKAGE SYMBOL
`(PACKAGE-TAG ',$2 nil)
;
precedence_decl:
associativity token_type_opt items
`(TAG ',$1 'assoc :type ',$2 :value ',$3)
;
associativity:
LEFT
(progn "left")
| RIGHT
(progn "right")
| NONASSOC
(progn "nonassoc")
;
put_decl:
PUT put_name put_value
`(TAG ',$2 'put :value ',(list $3))
| PUT put_name put_value_list
`(TAG ',$2 'put :value ',$3)
| PUT put_name_list put_value
`(TAG ',(car $2) 'put :rest ',(cdr $2) :value ',(list $3))
| PUT put_name_list put_value_list
`(TAG ',(car $2) 'put :rest ',(cdr $2) :value ',$3)
;
put_name_list:
BRACE_BLOCK
(mapcar 'semantic-tag-name (EXPANDFULL $1 put_names))
;
put_names:
LBRACE
()
| RBRACE
()
| put_name
;; Must return a list of Semantic tags to EXPANDFULL!
(TAG $1 'put-name)
;