<?xml version="1.0"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at
 
      http://www.apache.org/licenses/LICENSE-2.0
 
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<project default="compile" name="compress">

  <!-- easy way to override properties -->
  <property file="build.properties"/>

  <import file="common/build.xml"/>

  <target name="style-changes"
          description="there are no changes in a 1.0 release">
    <echo file="${dest.dir}/README.html"><![CDATA[<body>
        <h1>Apache Compress Antlib 1.0</h1>
        <p>This is a library of Ant tasks and types that support
        archive and compression formats with the help of <a
        href="http://commons.apache.org/compress/">Apache Commons
        Compress</a>.  For details - including installation
        instructions - see the docs subdirectory of this
        distribution.</p>
      </body>]]>
    </echo>
  </target>

</project>
