Properly deinitialize directory cursors on closedir
[emacs.git] / admin / grammars / Makefile.in
blob5904c07dfcd76cc4e661f9b3235e081f1787853a
1 ### @configure_input@
3 ## Copyright (C) 2013-2024 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 <https://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 -include ${top_builddir}/src/verbose.mk
33 # Prevent any settings in the user environment causing problems.
34 unexport EMACSDATA EMACSDOC EMACSLOADPATH EMACSPATH
36 EMACS = ${top_builddir}/src/emacs
37 emacs = "${EMACS}" -batch --no-site-file --no-site-lisp \
38 --eval '(setq load-prefer-newer t)'
40 make_bovine = ${emacs} -l semantic/bovine/grammar -f bovine-batch-make-parser
41 make_wisent = ${emacs} -l semantic/wisent/grammar -f wisent-batch-make-parser
43 cedetdir = ${top_srcdir}/lisp/cedet
44 bovinedir = ${cedetdir}/semantic/bovine
45 wisentdir = ${cedetdir}/semantic/wisent
47 grammar_bovine = ${bovinedir}/grammar.el
48 grammar_wisent = ${wisentdir}/grammar.el
50 BOVINE = \
51 ${bovinedir}/c-by.el \
52 ${bovinedir}/make-by.el \
53 ${bovinedir}/scm-by.el
55 WISENT = \
56 ${cedetdir}/semantic/grammar-wy.el \
57 ${wisentdir}/javat-wy.el \
58 ${wisentdir}/js-wy.el \
59 ${wisentdir}/python-wy.el \
60 ${cedetdir}/srecode/srt-wy.el
62 ALL = ${BOVINE} ${WISENT}
64 .PHONY: all bovine wisent
66 all: ${ALL}
68 bovine: ${BOVINE}
70 wisent: ${WISENT}
72 ## c-by.el, make-by.el.
73 ${bovinedir}/%-by.el: ${srcdir}/%.by ${grammar_bovine}
74 $(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
75 $(AM_V_at)${make_bovine} -o "$@" $<
77 ${bovinedir}/scm-by.el: ${srcdir}/scheme.by ${grammar_bovine}
78 $(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
79 $(AM_V_at)${make_bovine} -o "$@" $<
81 ## grammar-wy.el
82 ${cedetdir}/semantic/%-wy.el: ${srcdir}/%.wy ${grammar_wisent}
83 $(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
84 $(AM_V_at)${make_wisent} -o "$@" $<
86 ## js-wy.el, python-wy.el
87 ${wisentdir}/%-wy.el: ${srcdir}/%.wy ${grammar_wisent}
88 $(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
89 $(AM_V_at)${make_wisent} -o "$@" $<
91 ${wisentdir}/javat-wy.el: ${srcdir}/java-tags.wy ${grammar_wisent}
92 $(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
93 $(AM_V_at)${make_wisent} -o "$@" $<
95 ${cedetdir}/srecode/srt-wy.el: ${srcdir}/srecode-template.wy ${grammar_wisent}
96 $(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
97 $(AM_V_at)${make_wisent} -o "$@" $<
99 .PHONY: distclean bootstrap-clean maintainer-clean gen-clean
101 distclean:
102 rm -f Makefile
104 ## IMO this should run gen-clean.
105 bootstrap-clean:
107 gen-clean:
108 rm -f ${ALL}
110 maintainer-clean: gen-clean distclean
114 # Makefile.in ends here