build-nasgen.xml revision 230:241904013024
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="compile-asm">
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                <pathelement path="${basedir}/build/classes"/>
39            </classpath>
40            <jvmarg value="-Djava.ext.dirs="/>
41            <arg value="${basedir}/build/classes"/>
42            <arg value="jdk.nashorn.internal.objects"/>
43            <arg value="${basedir}/build/classes"/>
44        </java>
45
46        <move todir="${basedir}/build/classes/jdk/nashorn/internal/objects">
47            <fileset dir="${basedir}/build/classes/jdk/nashorn/internal/objects"/>
48            <mapper type="glob" from="*.class" to="*.clazz"/>
49        </move>
50    </target>
51
52    <target name="run-nasgen-eclipse">
53        <mkdir dir="${basedir}/build/eclipse/.nasgentmp"/>
54
55        <java classname="jdk.nashorn.internal.tools.nasgen.Main" fork="true" failonerror="true">
56            <classpath>
57                <pathelement location="${basedir}/buildtools/nasgen/dist/nasgen.jar"/>
58                <pathelement path="${basedir}/build/eclipse"/>
59            </classpath>
60            <arg value="${basedir}/build/eclipse"/>
61            <arg value="jdk.nashorn.internal.objects"/>
62            <arg value="${basedir}/build/eclipse/.nasgentmp"/>
63        </java>
64
65        <move todir="${basedir}/build/eclipse/jdk/nashorn/internal/objects">
66            <fileset dir="${basedir}/build/eclipse/.nasgentmp/jdk/nashorn/internal/objects">
67                <include name="*.class"/>
68            </fileset>
69            <mapper type="glob" from="*.class" to="*.clazz"/>
70        </move>
71
72        <delete includeemptydirs="true"><fileset dir="${basedir}/build/eclipse/.nasgentmp" includes="**"/></delete>
73
74        <copy todir="${basedir}/build/eclipse/jdk/nashorn/internal/objects" preservelastmodified="true">
75            <fileset dir="${basedir}/build/eclipse/jdk/nashorn/internal/objects">
76                <include name="**/*.class"/>
77            </fileset>
78            <mapper type="glob" from="*.class" to="*.clazz"/>
79        </copy>
80    </target>
81
82    <target name="clean-nasgen">
83        <ant inheritAll="false" dir="${basedir}/buildtools/nasgen"
84            antfile="build.xml" target="clean"/>
85    </target>
86
87</project>
88