-
Notifications
You must be signed in to change notification settings - Fork 0
/
build-lexer.xml
51 lines (43 loc) · 2.02 KB
/
build-lexer.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?xml version="1.0" encoding="UTF-8"?>
<!--
This build file is used to create the lexer's Java source code.
Whenever you change bash.flex you have to run this build script.
We're using the patched jflex library provided by JetBrains.
Please notice that you COULDN'T use JFlex Ant Task for building
lexer as long as it doesn't support additional arguments parameter
("charat" argument is required in order to build lexers
for IntelliJ IDEA plugins)
Copyright 2011 Valeriy Yatsko <dwr@design.ru>
Copyright 2011 ArtLebedev Studio
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<project name="Parser 3 for IntelliJ IDEA 10" default="jflex">
<property name="lexer.file" value="main/src/ru/artlebedev/idea/plugins/parser/lang/lexer/_ParserLexer.java"/>
<property name="lexer.log" value="jflex.log"/>
<property name="lexer.source" value="main/src/ru/artlebedev/idea/plugins/parser/lang/lexer/ParserLexer.flex"/>
<property name="lexer.skeleton" value="ant/jflex/idea-flex.skeleton"/>
<property name="jflex.jar" value="ant/lib/JFlex.jar"/>
<target name="clean">
<delete file="${lexer.file}~"/>
<delete file="${lexer.file}"/>
<delete file="${lexer.log}"/>
</target>
<target name="jflex"
description="Generate lexer from ParserLexer.flex, using idea flex skeleton and patched JFlex"
depends="clean">
<java jar="${jflex.jar}" output="${lexer.log}" fork="true">
<arg value="--charat"/>
<arg value="-skel"/>
<arg value="${lexer.skeleton}"/>
<arg value="${lexer.source}"/>
</java>
</target>
</project>