Merge from emacs-24; up to 2014-04-17T02:05:48Z!eggert@cs.ucla.edu
[emacs.git] / admin / grammars / Makefile.in
blobb89df7116a66beacf3610bdc72905af3523d80a9
1 ### @configure_input@
3 ## Copyright (C) 2013-2014 Free Software Foundation, Inc.
5 ## This file is part of GNU Emacs.
7 ## GNU Emacs is free software: you can redistribute it and/or modify
8 ## it under the terms of the GNU General Public License as published by
9 ## the Free Software Foundation, either version 3 of the License, or
10 ## (at your option) any later version.
12 ## GNU Emacs is distributed in the hope that it will be useful,
13 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
14 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ## GNU General Public License for more details.
17 ## You should have received a copy of the GNU General Public License
18 ## along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
20 ### Commentary:
22 ## This directory contains grammar files in Bison and Wisent,
23 ## used to generate the parser data in the lisp/cedet directory.
25 SHELL = @SHELL@
27 srcdir = @srcdir@
28 top_srcdir = @top_srcdir@
29 top_builddir = @top_builddir@
31 # Prevent any settings in the user environment causing problems.
32 unexport EMACSDATA EMACSDOC EMACSPATH
34 EMACS = ${top_builddir}/src/emacs
35 emacs = EMACSLOADPATH= "${EMACS}" -batch --no-site-file --no-site-lisp
37 make_bovine = ${emacs} -l semantic/bovine/grammar -f bovine-batch-make-parser
38 make_wisent = ${emacs} -l semantic/wisent/grammar -f wisent-batch-make-parser
40 cedetdir = ${top_srcdir}/lisp/cedet
41 bovinedir = ${cedetdir}/semantic/bovine
42 wisentdir = ${cedetdir}/semantic/wisent
44 BOVINE = \
45 ${bovinedir}/c-by.el \
46 ${bovinedir}/make-by.el \
47 ${bovinedir}/scm-by.el
49 ## FIXME Should include this one too:
50 ## ${cedetdir}/semantic/grammar-wy.el
51 ## but semantic/grammar.el (which is what we use to generate grammar-wy.el)
52 ## requires it!
53 WISENT = \
54 ${wisentdir}/javat-wy.el \
55 ${wisentdir}/js-wy.el \
56 ${wisentdir}/python-wy.el \
57 ${cedetdir}/srecode/srt-wy.el
59 ALL = ${BOVINE} ${WISENT}
61 .PHONY: all bovine wisent
63 all: ${ALL}
65 bovine: ${BOVINE}
67 wisent: ${WISENT}
70 ${bovinedir}/c-by.el: ${srcdir}/c.by
71 [ ! -f "$@" ] || chmod +w "$@"
72 ${make_bovine} -o "$@" ${srcdir}/c.by
74 ${bovinedir}/make-by.el: ${srcdir}/make.by
75 [ ! -f "$@" ] || chmod +w "$@"
76 ${make_bovine} -o "$@" ${srcdir}/make.by
78 ${bovinedir}/scm-by.el: ${srcdir}/scheme.by
79 [ ! -f "$@" ] || chmod +w "$@"
80 ${make_bovine} -o "$@" ${srcdir}/scheme.by
83 ${cedetdir}/semantic/grammar-wy.el: ${srcdir}/grammar.wy
84 [ ! -f "$@" ] || chmod +w "$@"
85 ${make_wisent} -o "$@" ${srcdir}/grammar.wy
87 ${wisentdir}/javat-wy.el: ${srcdir}/java-tags.wy
88 [ ! -f "$@" ] || chmod +w "$@"
89 ${make_wisent} -o "$@" ${srcdir}/java-tags.wy
91 ${wisentdir}/js-wy.el: ${srcdir}/js.wy
92 [ ! -f "$@" ] || chmod +w "$@"
93 ${make_wisent} -o "$@" ${srcdir}/js.wy
95 ${wisentdir}/python-wy.el: ${srcdir}/python.wy
96 [ ! -f "$@" ] || chmod +w "$@"
97 ${make_wisent} -o "$@" ${srcdir}/python.wy
99 ${cedetdir}/srecode/srt-wy.el: ${srcdir}/srecode-template.wy
100 [ ! -f "$@" ] || chmod +w "$@"
101 ${make_wisent} -o "$@" ${srcdir}/srecode-template.wy
104 .PHONY: distclean bootstrap-clean maintainer-clean extraclean
106 distclean:
107 rm -f Makefile
109 bootstrap-clean maintainer-clean: distclean
111 ## We do not normally delete the generated files, even in bootstrap.
112 ## Creating them does not take long, so we could easily change this.
113 extraclean:
114 rm -f ${ALL}
116 # Makefile.in ends here