build-nasgen.xml revision 1643:133ea8746b37
1<?xml version="1.0" encoding="UTF-8"?>
2<!--
3 Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
4 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 
6 This code is free software; you can redistribute it and/or modify it
7 under the terms of the GNU General Public License version 2 only, as
8 published by the Free Software Foundation.
9 
10 This code is distributed in the hope that it will be useful, but WITHOUT
11 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
13 version 2 for more details (a copy is included in the LICENSE file that
14 accompanied this code).
15 
16 You should have received a copy of the GNU General Public License version
17 2 along with this work; if not, write to the Free Software Foundation,
18 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
19 
20 Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
21 or visit www.oracle.com if you need additional information or have any
22 questions.
23-->
24<project name="build-nasgen" default="run-nasgen" basedir="..">
25    <description>Builds and runs nasgen.</description>
26    <import file="build.xml"/>
27
28    <target name="build-nasgen" depends="prepare">
29        <ant inheritAll="false" dir="${basedir}/buildtools/nasgen"
30            antfile="build.xml" target="jar"/>
31    </target>
32
33    <target name="run-nasgen" depends="build-nasgen">
34        <java classname="${nasgen.tool}" fork="true" failonerror="true">
35            <classpath>
36                <pathelement location="${basedir}/jcov2/lib/jcov_j2se_rt.jar"/>
37                <pathelement location="${basedir}/buildtools/nasgen/dist/nasgen.jar"/>
38            </classpath>
39            <jvmarg value="-XaddExports:${nasgen.module.imports}"/>
40            <arg value="${nashorn.module.classes.dir}"/>
41            <arg value="jdk.nashorn.internal.objects"/>
42            <arg value="${nashorn.module.classes.dir}"/>
43        </java>
44    </target>
45
46    <target name="run-nasgen-eclipse">
47        <mkdir dir="${basedir}/build/eclipse/.nasgentmp"/>
48
49        <java classname="jdk.nashorn.internal.tools.nasgen.Main" fork="true" failonerror="true">
50            <classpath>
51                <pathelement location="${basedir}/buildtools/nasgen/dist/nasgen.jar"/>
52            </classpath>
53            <jvmarg value="-Xbootclasspath/p:${basedir}/build/eclipse"/>
54            <arg value="${basedir}/build/eclipse"/>
55            <arg value="jdk.nashorn.internal.objects"/>
56            <arg value="${basedir}/build/eclipse/.nasgentmp"/>
57        </java>
58
59        <move todir="${basedir}/build/eclipse/jdk/nashorn/internal/objects">
60            <fileset dir="${basedir}/build/eclipse/.nasgentmp/jdk/nashorn/internal/objects">
61                <include name="*.class"/>
62            </fileset>
63        </move>
64
65        <delete includeemptydirs="true"><fileset dir="${basedir}/build/eclipse/.nasgentmp" includes="**"/></delete>
66
67        <copy todir="${basedir}/build/eclipse/jdk/nashorn/internal/objects" preservelastmodified="true">
68            <fileset dir="${basedir}/build/eclipse/jdk/nashorn/internal/objects">
69                <include name="**/*.class"/>
70            </fileset>
71        </copy>
72    </target>
73
74    <target name="clean-nasgen">
75        <ant inheritAll="false" dir="${basedir}/buildtools/nasgen"
76            antfile="build.xml" target="clean"/>
77    </target>
78
79</project>
80