nashorn/make/build-nasgen.xml
author jlaskey
Fri, 21 Dec 2012 16:36:24 -0400
changeset 16147 e63b63819133
child 16151 97c1e756ae1e
permissions -rw-r--r--
8005403: Open-source Nashorn Reviewed-by: attila, hannesw, lagergren, sundar Contributed-by: james.laskey@oracle.com, akhil.arora@oracle.com, andreas.woess@jku.at, attila.szegedi@oracle.com, hannes.wallnoefer@oracle.com, henry.jen@oracle.com, marcus.lagergren@oracle.com, pavel.semenov@oracle.com, pavel.stepanov@oracle.com, petr.hejl@oracle.com, petr.pisl@oracle.com, sundararajan.athijegannathan@oracle.com

<?xml version="1.0" encoding="UTF-8"?>
<!--
 Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
 This code is free software; you can redistribute it and/or modify it
 under the terms of the GNU General Public License version 2 only, as
 published by the Free Software Foundation.
 
 This code is distributed in the hope that it will be useful, but WITHOUT
 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 version 2 for more details (a copy is included in the LICENSE file that
 accompanied this code).
 
 You should have received a copy of the GNU General Public License version
 2 along with this work; if not, write to the Free Software Foundation,
 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 
 Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 or visit www.oracle.com if you need additional information or have any
 questions.
-->
<project name="build-nasgen" default="run-nasgen" basedir="..">
    <description>Builds and runs nasgen.</description>
    <import file="build.xml"/>

    <target name="build-nasgen" depends="compile-asm">
        <ant inheritAll="false" dir="${basedir}/buildtools/nasgen"
            antfile="build.xml" target="jar"/>
    </target>

    <target name="run-nasgen" depends="build-nasgen">
        <java classname="${nasgen.tool}" fork="true" failonerror="true">
            <classpath>
                <pathelement location="${basedir}/jcov2/lib/jcov_j2se_rt.jar"/>
                <pathelement location="${basedir}/buildtools/nasgen/dist/nasgen.jar"/>
                <pathelement path="${basedir}/build/classes"/>
            </classpath>
            <arg value="${basedir}/build/classes"/>
            <arg value="jdk.nashorn.internal.objects"/>
            <arg value="${basedir}/build/classes"/>
        </java>

        <move todir="${basedir}/build/classes/jdk/nashorn/internal/objects">
            <fileset dir="${basedir}/build/classes/jdk/nashorn/internal/objects"/>
            <mapper type="glob" from="*.class" to="*.clazz"/>
        </move>
    </target>

    <target name="run-nasgen-eclipse">
        <mkdir dir="${basedir}/build/eclipse/.nasgentmp"/>

        <java classname="jdk.nashorn.internal.tools.nasgen.Main" fork="true" failonerror="true">
            <classpath>
                <pathelement location="${basedir}/buildtools/nasgen/dist/nasgen.jar"/>
                <pathelement path="${basedir}/build/eclipse"/>
            </classpath>
            <arg value="${basedir}/build/eclipse"/>
            <arg value="jdk.nashorn.internal.objects"/>
            <arg value="${basedir}/build/eclipse/.nasgentmp"/>
        </java>

        <move todir="${basedir}/build/eclipse/jdk/nashorn/internal/objects">
            <fileset dir="${basedir}/build/eclipse/.nasgentmp/jdk/nashorn/internal/objects">
                <include name="*.class"/>
            </fileset>
            <mapper type="glob" from="*.class" to="*.clazz"/>
        </move>

        <delete includeemptydirs="true"><fileset dir="${basedir}/build/eclipse/.nasgentmp" includes="**"/></delete>

        <copy todir="${basedir}/build/eclipse/jdk/nashorn/internal/objects" preservelastmodified="true">
            <fileset dir="${basedir}/build/eclipse/jdk/nashorn/internal/objects">
                <include name="**/*.class"/>
            </fileset>
            <mapper type="glob" from="*.class" to="*.clazz"/>
        </copy>
    </target>

    <target name="clean-nasgen">
        <ant inheritAll="false" dir="${basedir}/buildtools/nasgen"
            antfile="build.xml" target="clean"/>
    </target>

</project>