<?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 path="${basedir}/build/classes"/>
                <pathelement location="${dist.dir}/nasgen.jar"/>
                <pathelement path="${build.dir}/classes"/>
            </classpath>
            <jvmarg value="-Djava.ext.dirs="/>
            <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"/>
                <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>
        </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>
