<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE project [
<!--

    Copyright (c) 2018 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->

<!ENTITY commonSetup SYSTEM "file:./../../../config/properties.xml">
<!ENTITY commonBuild SYSTEM "file:./../../../config/common.xml">
<!ENTITY testproperties SYSTEM "file:./build.properties">
]>

<project name="showArgsGUI" default="usage" basedir=".">


    &commonSetup;
    &commonBuild;
    &testproperties;

    <import file="../appclient.xml"/>

    <target name="build.ear">
        <echo>There is no EAR in this test.</echo>
    </target>

    <target name="deploy.ear"/>
    <target name="undeploy.ear"/>

    <target name="build" depends="compile">
        <mkdir dir="${assemble.dir}"/>

        <property name="appclient.jar.path" value="${assemble.dir}/${clientname}.jar"/>

        <!-- Build the app client. -->
        <antcall target="package-appclientjar-common">
            <param name="appclientjar.files" value="${build.classes.dir}"/>
            <param name="appclientjar.classes" value="**/client/*.class **/reporter/*.class"/>
            <param name="appclient.jar" value="${appclient.jar.path}"/>
        </antcall>

        <!-- add the images -->
        <jar jarfile="${appclient.jar.path}" basedir="."
             update="true" includes="**/*.jpg **/*.gif"/>

        <!-- Build the library jar. -->
        <jar jarfile="${lib.jar.file}"
            basedir="${build.classes.dir}"
            update="true" includes ="**/lib/*.class"
            />
    </target>



    <target name="run" depends="init-common">
        <echo>Testing stand-alone client...</echo>
        <antcall target="test.standalone.client"/>
    </target>


    <target name="usage">
        <antcall target="usage-common"/>
    </target>

</project>
