<?xml version="1.0"?>
<!--

    Copyright (c) 2017, 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

-->

<project name="jdbc_connector" basedir="." default="build">
  <property name="pkg.dir" value="com/sun/gjc/util"/>

  <target name="clean">
    <ant antfile="build.xml" dir="${gjc.home}/bin" target="clean"/>
  </target>

  <target name="compile">
    <ant antfile="build.xml" dir="${gjc.home}/bin" target="compile"/>
  </target>

  <target name="package">
    <mkdir dir="${dist.dir}/${pkg.dir}"/>
      <jar jarfile="${dist.dir}/${pkg.dir}/util.jar" basedir="${class.dir}"
        includes="${pkg.dir}/**/*"/>
  </target>

  <target name="compile13" depends="compile"/>
  <target name="compile14" depends="compile"/>

  <target name="package13" depends="package"/>
  <target name="package14" depends="package"/>

  <target name="build13" depends="compile13, package13"/>
  <target name="build14" depends="compile14, package14"/>

  <target name="build" depends="build13, build14"/>

</project>
