<?xml version="1.0" encoding="UTF-8"?>
<!--
 Copyright (c) 2010, 2013, 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="prepare">
        <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 location="${dist.dir}/nasgen.jar"/>
                <pathelement path="${build.dir}/classes"/>
            </classpath>
            <jvmarg value="-Xbootclasspath/p:${basedir}/build/classes"/>
            <arg value="${build.dir}/classes"/>
            <arg value="jdk.nashorn.internal.objects"/>
            <arg value="${build.dir}/classes"/>
        </java>
    </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"/>
            </classpath>
            <jvmarg value="-Xbootclasspath/p:${basedir}/build/eclipse"/>
            <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>
        </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>
        </copy>
    </target>

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

</project>
