antlr/bild.py

51 lines
1.8 KiB
Python
Raw Normal View History

2014-07-03 03:19:21 +08:00
#!/usr/local/bin/python
2014-07-02 09:18:17 +08:00
import sys
import os
sys.path.append(os.path.abspath("/Users/parrt/github/bild"))
from bilder import *
2014-07-02 12:33:26 +08:00
VERSION = "4.4"
2014-07-02 09:18:17 +08:00
def parsers():
2014-07-03 09:31:38 +08:00
antlr3("tool/src/org/antlr/v4/parse", "gen", package="org.antlr.v4.parse")
antlr3("tool/src/org/antlr/v4/codegen", "gen", package="org.antlr.v4.codegen", args=["-lib","tool/src/org/antlr/v4/parse"])
antlr4("runtime/Java/src/org/antlr/v4/runtime/tree/xpath", "gen", package="org.antlr.v4.runtime.tree.xpath")
2014-07-02 09:18:17 +08:00
def compile():
2014-07-03 09:31:38 +08:00
require(parsers)
cp = uniformpath("out")+os.pathsep+ \
os.path.join(JARCACHE,"antlr-3.5.1-complete.jar")+os.pathsep+ \
"runtime/Java/lib/org.abego.treelayout.core.jar"
args = ["-Xlint", "-Xlint:-serial", "-g"]
javac("runtime/JavaAnnotations/src/", "out", version="1.6", cp=cp, args=args)
javac("runtime/Java/src", "out", version="1.6", cp=cp, args=args)
javac("tool/src", "out", version="1.6", cp=cp, args=args)
javac("gen", "out", version="1.6", cp=cp, args=args)
2014-07-02 09:18:17 +08:00
def mkjar():
2014-07-03 09:31:38 +08:00
require(compile)
copytree(src="tool/resources", dst="out")
manifest = """Version: %s
2014-07-02 12:33:26 +08:00
Main-Class: org.antlr.v4.Tool
2014-07-02 09:18:17 +08:00
""" % VERSION
2014-07-03 09:31:38 +08:00
unjar("runtime/Java/lib/org.abego.treelayout.core.jar", trgdir="out")
unjar(os.path.join(JARCACHE,"antlr-3.5.1-complete.jar"), trgdir="out")
jar("dist/antlr-"+VERSION+"-complete.jar", srcdir="out", manifest=manifest)
2014-07-02 09:18:17 +08:00
def all():
2014-07-03 09:31:38 +08:00
mkjar()
2014-07-02 09:18:17 +08:00
def clean():
2014-07-03 09:31:38 +08:00
rmdir("out")
rmdir("gen")
rmdir("doc")
def mkdoc():
mkdirs("doc/Java")
mkdirs("doc/JavaTool")
javadoc(srcdir="runtime/Java/src", trgdir="doc/Java", packages="org.antlr.v4.runtime")
javadoc(srcdir="tool/src", trgdir="doc/JavaTool", packages="org.antlr.v4")
2014-07-02 09:18:17 +08:00
2014-07-03 03:19:21 +08:00
processargs(globals()) # if you want cmd-line arg processing. Or, just call your target