<?xml version="1.0"?>
<!-- BUILD.XML complex backuptozip 1.4 build that copies files to website for upload. -->
<!-- Build with ANT zippost jet -->
<!-- Compile and jar backuptozip using ANT -->
<!-- Invoke with [ant clean] to erase class files and start over. -->
<!-- Invoke with [ant compile] to just compile. -->
<!-- Invoke with [ant javadoc] to generate javadoc. -->
<!-- Invoke with [ant jar] to compile and create jar files. -->
<!-- Invoke with [ant postjar] to post jars to the mindprod website. -->
<!-- Invoke with [ant jet] to create JET executables. -->
<!-- Invoke with [ant zip] to create source code zip files. -->
<!-- Invoke with [ant postzip] to post zip file to the mindprod website. -->
<!-- For details of ANT use, see http://mindprod.com/jgloss/ant.html -->

<!-- D E F I N I T I O N S -->
<!-- ANT.project.dir is com/mindprod/backuptozip -->
<!-- basedir is E:/ -->
<project name="backuptozip" basedir="E:/" default="jar">

<!-- extensions for zip. Case sensitive! -->
<property name="distributed.exts" value="**/*.au,**/*.asm,**/*.bat,**/*.btm,**/*.c,**/*.class,**/*.cpp,**/*.css,**/*.csv,**/*.dll,**/*.gif,**/*.h,**/*.hpp,**/*.htm,**/*.html,**/*.ico,**/*.ION,**/*.ion,**/*.jar,**/*.java,**/*.jnlp,**/*.jpg,**/*.look,**/*.png,**/*.properties,**/*.ser,**/*.sln,**/*.txt,**/*.use,**/*.vcxproj,**/*.xml" />

<!-- dirs we to exclude from zip. Case sensitive! -->
<property name="nondistributed" value="**/jetpdb/**,**/Debug/**,**/Release/**" />

<!-- C L E A N -->
<target name="clean">
<echo message="    :::    backuptozip    :::    deleting files to force regeneration." />
  <delete>
    <fileset dir="com/mindprod/backuptozip" includes="**/*.class" />
    <fileset dir="com/mindprod/backuptozip" includes="**/*.jar" />
    <!-- leave Jet *.exe. Old versions are still useful during the build. -->
    <fileset dir="com/mindprod/backuptozip" includes="backuptozip14.zip" />
  </delete>
</target>

<!-- C O M P I L E -->
<target name="compile">
<echo message="    :::    backuptozip    :::    compiling Java tree with target=1.6" />
  <javac source="1.6" target="1.6" srcdir="com/mindprod/backuptozip" sourcepath="${basedir}" classpath="${basedir}" debug="on" includeAntRuntime="false">
    <compilerarg value="-Xlint:unchecked" />
    <compilerarg value="-Xlint:fallthrough" />
    <compilerarg value="-Xlint:deprecation" />
  </javac>
</target>

<!-- J A V A H -->
<target name="javah" depends="compile">
  <!-- there is no jni -->
</target>

<!-- G A T H E R -->
<target name="gather" depends="compile">
<echo message="    :::    backuptozip    :::    gathering files to build jar/zip." />
  <!-- prepare backuptozip.use precis from two pieces -->
    <concat destfile="com/mindprod/backuptozip/backuptozip.use" fixlastline="yes">
      <filelist dir="com/mindprod/backuptozip" files="version.txt,use.txt,versionhistory.txt" />
    </concat>

  <!-- test if manual in HTML for jar/zip exists to be copied. -->
    <available property="has.manualtopackagedir" file="E:/mindprod/application/backuptozip.manual.html" />
    <antcall target="copy.manualtopackagedir" />

  <!-- test if 16x16 icon for jar/zip exists to be copied. -->
    <available property="has.icon16topackagedir" file="E:/mindprod/image/icon16/backuptozip.png" />
    <antcall target="copy.icon16topackagedir" />

  <!-- test if 32x32 icon for jar/zip exists to be copied. -->
    <available property="has.icon32topackagedir" file="E:/mindprod/image/icon32/backuptozip.png" />
    <antcall target="copy.icon32topackagedir" />

  <!-- test if 32x32 gif icon for jar/zip exists to be copied. -->
    <available property="has.icon32giftopackagedir" file="E:/mindprod/image/icon32/backuptozip.gif" />
    <antcall target="copy.icon32giftopackagedir" />

  <!-- test if 32x32 gif icon for jar/zip exists to be copied. -->
    <available property="has.icon32giftojardir" file="E:/mindprod/image/icon32/backuptozip.gif" />
    <antcall target="copy.icon32giftojardir" />

  <!-- test if Windows ico icon for jar/zip exists to be copied. -->
    <available property="has.icotopackagedir" file="E:/mindprod/image/ico/backuptozip.ico" />
    <antcall target="copy.icotopackagedir" />

  <!-- test if approx 48x48 icon for jar/zip exists to be copied. -->
    <available property="has.icon48topackagedir" file="E:/mindprod/image/icon48/backuptozip.png" />
    <antcall target="copy.icon48topackagedir" />

  <!-- test if approx 64x64 icon for jar/zip exists to be copied. -->
    <available property="has.icon64topackagedir" file="E:/mindprod/image/icon64/backuptozip.png" />
    <antcall target="copy.icon64topackagedir" />

  <!-- test if 64x64 gif icon for jar/zip exists to be copied. -->
    <available property="has.icon64giftopackagedir" file="E:/mindprod/image/icon64/backuptozip.gif" />
    <antcall target="copy.icon64giftopackagedir" />

  <!-- test if 64x64 gif icon for jar/zip exists to be copied. -->
    <available property="has.icon64giftojardir" file="E:/mindprod/image/icon64/backuptozip.gif" />
    <antcall target="copy.icon64giftojardir" />

  <!-- test if approx 128x128 icon for jar/zip exists to be copied. -->
    <available property="has.icon128topackagedir" file="E:/mindprod/image/icon128/backuptozip.png" />
    <antcall target="copy.icon128topackagedir" />

  <!-- test if ASP PAD XML for jar/zip exists to be copied. -->
    <available property="has.padtopackagedir" file="E:/mindprod/pad/backuptozip.xml" />
    <antcall target="copy.padtopackagedir" />

  <!-- test if HTML to run for jar/zip exists to be copied. -->
    <available property="has.runhtmltopackagedir" file="E:/mindprod/application/backuptozip.html" />
    <antcall target="copy.runhtmltopackagedir" />

  <!-- test if screenshot for jar/zip exists to be copied. -->
    <available property="has.screenshottopackagedir" file="E:/mindprod/image/screenshot/backuptozip.png" />
    <antcall target="copy.screenshottopackagedir" />

  <!-- test if splash gif for jar/zip exists to be copied. -->
    <available property="has.splashtopackagedir" file="E:/mindprod/image/splash/backuptozip.gif" />
    <antcall target="copy.splashtopackagedir" />

  <!-- test if splash gif for jar/zip exists to be copied. -->
    <available property="has.splashtojardir" file="E:/mindprod/image/splash/backuptozip.gif" />
    <antcall target="copy.splashtojardir" />
</target>

  <!-- copy manual in HTML for jar/zip now that we know it exists. -->
    <target name="copy.manualtopackagedir" if="has.manualtopackagedir">
      <copy file="E:/mindprod/application/backuptozip.manual.html" todir="com/mindprod/backuptozip" failonerror="false" overwrite="true" />
      <copy file="E:/mindprod/mindprod.css" todir="com/mindprod/backuptozip" failonerror="false" overwrite="true" />
      <copy file="E:/mindprod/jdisplay.css" todir="com/mindprod/backuptozip" failonerror="false" overwrite="true" />
    </target>

  <!-- copy 16x16 icon for jar/zip now that we know it exists. -->
    <target name="copy.icon16topackagedir" if="has.icon16topackagedir">
      <copy file="E:/mindprod/image/icon16/backuptozip.png" tofile="com/mindprod/backuptozip/backuptozip.icon16.png" failonerror="false" overwrite="true" />
    </target>

  <!-- copy 32x32 icon for jar/zip now that we know it exists. -->
    <target name="copy.icon32topackagedir" if="has.icon32topackagedir">
      <copy file="E:/mindprod/image/icon32/backuptozip.png" tofile="com/mindprod/backuptozip/backuptozip.icon32.png" failonerror="false" overwrite="true" />
    </target>

  <!-- copy 32x32 gif icon for jar/zip now that we know it exists. -->
    <target name="copy.icon32giftopackagedir" if="has.icon32giftopackagedir">
      <copy file="E:/mindprod/image/icon32/backuptozip.gif" tofile="com/mindprod/backuptozip/backuptozipicon32.gif" failonerror="false" overwrite="true" />
    </target>

  <!-- copy 32x32 gif icon for jar/zip now that we know it exists. -->
    <target name="copy.icon32giftojardir" if="has.icon32giftojardir">
      <copy file="E:/mindprod/image/icon32/backuptozip.gif" tofile="E:/mindprod/application/backuptozipicon32.gif" failonerror="false" overwrite="true" />
    </target>

  <!-- copy Windows ico icon for jar/zip now that we know it exists. -->
    <target name="copy.icotopackagedir" if="has.icotopackagedir">
      <copy file="E:/mindprod/image/ico/backuptozip.ico" tofile="com/mindprod/backuptozip/backuptozip.ico" failonerror="false" overwrite="true" />
    </target>

  <!-- copy approx 48x48 icon for jar/zip now that we know it exists. -->
    <target name="copy.icon48topackagedir" if="has.icon48topackagedir">
      <copy file="E:/mindprod/image/icon48/backuptozip.png" tofile="com/mindprod/backuptozip/backuptozip.icon48.png" failonerror="false" overwrite="true" />
    </target>

  <!-- copy approx 64x64 icon for jar/zip now that we know it exists. -->
    <target name="copy.icon64topackagedir" if="has.icon64topackagedir">
      <copy file="E:/mindprod/image/icon64/backuptozip.png" tofile="com/mindprod/backuptozip/backuptozip.icon64.png" failonerror="false" overwrite="true" />
    </target>

  <!-- copy 64x64 gif icon for jar/zip now that we know it exists. -->
    <target name="copy.icon64giftopackagedir" if="has.icon64giftopackagedir">
      <copy file="E:/mindprod/image/icon64/backuptozip.gif" tofile="com/mindprod/backuptozip/backuptozipicon64.gif" failonerror="false" overwrite="true" />
    </target>

  <!-- copy 64x64 gif icon for jar/zip now that we know it exists. -->
    <target name="copy.icon64giftojardir" if="has.icon64giftojardir">
      <copy file="E:/mindprod/image/icon64/backuptozip.gif" tofile="E:/mindprod/application/backuptozipicon64.gif" failonerror="false" overwrite="true" />
    </target>

  <!-- copy approx 128x128 icon for jar/zip now that we know it exists. -->
    <target name="copy.icon128topackagedir" if="has.icon128topackagedir">
      <copy file="E:/mindprod/image/icon128/backuptozip.png" tofile="com/mindprod/backuptozip/backuptozip.icon128.png" failonerror="false" overwrite="true" />
    </target>

  <!-- copy ASP PAD XML for jar/zip now that we know it exists. -->
    <target name="copy.padtopackagedir" if="has.padtopackagedir">
      <copy file="E:/mindprod/pad/backuptozip.xml" todir="com/mindprod/backuptozip" failonerror="false" overwrite="true" />
    </target>

  <!-- copy HTML to run for jar/zip now that we know it exists. -->
    <target name="copy.runhtmltopackagedir" if="has.runhtmltopackagedir">
      <copy file="E:/mindprod/application/backuptozip.html" todir="com/mindprod/backuptozip" failonerror="false" overwrite="true" />
      <copy file="E:/mindprod/mindprod.css" todir="com/mindprod/backuptozip" failonerror="false" overwrite="true" />
      <copy file="E:/mindprod/jdisplay.css" todir="com/mindprod/backuptozip" failonerror="false" overwrite="true" />
    </target>

  <!-- copy screenshot for jar/zip now that we know it exists. -->
    <target name="copy.screenshottopackagedir" if="has.screenshottopackagedir">
      <copy file="E:/mindprod/image/screenshot/backuptozip.png" tofile="com/mindprod/backuptozip/backuptozip.screenshot.png" failonerror="false" overwrite="true" />
    </target>

  <!-- copy splash gif for jar/zip now that we know it exists. -->
    <target name="copy.splashtopackagedir" if="has.splashtopackagedir">
      <copy file="E:/mindprod/image/splash/backuptozip.gif" tofile="com/mindprod/backuptozip/backuptozipsplash.gif" failonerror="false" overwrite="true" />
    </target>

  <!-- copy splash gif for jar/zip now that we know it exists. -->
    <target name="copy.splashtojardir" if="has.splashtojardir">
      <copy file="E:/mindprod/image/splash/backuptozip.gif" tofile="E:/mindprod/application/backuptozipsplash.gif" failonerror="false" overwrite="true" />
    </target>

<!-- J A R -->
<!-- Make apache-ant-1.8.2\lib\GenJar.jar known to ANT -->
<!-- See http://mindprod.com/jgloss/genjar.html for details -->
<taskdef resource="genjar.properties" />

<target name="jar" depends="gather">
<echo message="    :::    backuptozip    :::    genjar finding dependencies and creating jar." />
  <genjar jarfile="com/mindprod/backuptozip/backuptozip.jar">
    <!-- include main class and all its dependencies -->
    <class name="com.mindprod.backuptozip.BackupToZip" />
    <!-- Extra classes and properties to include in backuptozip.jar -->
    <!-- We include the entire truezip-6.8.1.jar, even resource properties. -->
    <!-- Unfortunately classfilter exclude has no effect on library -->
    <!-- Configure with location of truezip-6.8.1.jar -->
    <library jar="E:/env/extprop/truezip-6.8.1.jar" />

    <class name="de.schlichtherle.awt.EventDispatchTimeoutException" />
    <class name="de.schlichtherle.io.AbstractArchiveDetector" />
    <class name="de.schlichtherle.io.archive.Archive" />
    <class name="de.schlichtherle.io.archive.spi.AbstractArchiveDriver" />
    <class name="de.schlichtherle.io.archive.spi.AbstractArchiveDriver$InconsistentCharsetSupportError" />
    <class name="de.schlichtherle.io.archive.spi.AbstractArchiveDriver$ThreadLocalEncoder" />
    <class name="de.schlichtherle.io.archive.spi.ArchiveDriver" />
    <class name="de.schlichtherle.io.archive.spi.ArchiveEntry" />
    <class name="de.schlichtherle.io.archive.spi.InputArchive" />
    <class name="de.schlichtherle.io.archive.spi.MultiplexedOutputArchive" />
    <class name="de.schlichtherle.io.archive.spi.MultiplexedOutputArchive$EntryOutputStream" />
    <class name="de.schlichtherle.io.archive.spi.MultiplexedOutputArchive$TempEntryOutputStream" />
    <class name="de.schlichtherle.io.archive.spi.OutputArchive" />
    <class name="de.schlichtherle.io.archive.spi.OutputArchiveBusyException" />
    <class name="de.schlichtherle.io.archive.spi.RfsEntry" />
    <class name="de.schlichtherle.io.archive.spi.TransientIOException" />
    <class name="de.schlichtherle.io.archive.zip.ZipDriver" />
    <class name="de.schlichtherle.io.archive.zip.ZipEntry" />
    <class name="de.schlichtherle.io.archive.zip.ZipInputArchive" />
    <class name="de.schlichtherle.io.archive.zip.ZipOutputArchive" />
    <class name="de.schlichtherle.io.archive.zip.ZipOutputArchive$Crc32OutputStream" />
    <class name="de.schlichtherle.io.archive.zip.ZipOutputArchive$EntryOutputStream" />
    <class name="de.schlichtherle.io.archive.zip.ZipOutputArchive$TempEntryOutputStream" />
    <class name="de.schlichtherle.io.ArchiveBusyException" />
    <class name="de.schlichtherle.io.ArchiveBusyWarningException" />
    <class name="de.schlichtherle.io.ArchiveController" />
    <class name="de.schlichtherle.io.ArchiveController$ArchiveEntryFalsePositiveException" />
    <class name="de.schlichtherle.io.ArchiveController$ArchiveEntryNotFoundException" />
    <class name="de.schlichtherle.io.ArchiveController$ArchiveFileNotFoundException" />
    <class name="de.schlichtherle.io.ArchiveController$DirectoryArchiveEntryFalsePositiveException" />
    <class name="de.schlichtherle.io.ArchiveController$FalsePositiveException" />
    <class name="de.schlichtherle.io.ArchiveController$FileArchiveEntryFalsePositiveException" />
    <class name="de.schlichtherle.io.ArchiveController$RfsEntryFalsePositiveException" />
    <class name="de.schlichtherle.io.ArchiveControllers" />
    <class name="de.schlichtherle.io.ArchiveControllers$1" />
    <class name="de.schlichtherle.io.ArchiveControllers$ControllerEnumeration" />
    <class name="de.schlichtherle.io.ArchiveControllers$ShutdownHook" />
    <class name="de.schlichtherle.io.ArchiveDetector" />
    <class name="de.schlichtherle.io.ArchiveDriverRegistry" />
    <class name="de.schlichtherle.io.ArchiveDriverRegistry$IllegalArchiveDriverException" />
    <class name="de.schlichtherle.io.ArchiveEntryMetaData" />
    <class name="de.schlichtherle.io.ArchiveEntryMetaData$1" />
    <class name="de.schlichtherle.io.ArchiveEntryStreamClosedException" />
    <class name="de.schlichtherle.io.ArchiveException" />
    <class name="de.schlichtherle.io.ArchiveFileSystem" />
    <class name="de.schlichtherle.io.ArchiveFileSystem$AbstractDelta" />
    <class name="de.schlichtherle.io.ArchiveFileSystem$AbstractDelta$Element" />
    <class name="de.schlichtherle.io.ArchiveFileSystem$ArchiveFileSystemException" />
    <class name="de.schlichtherle.io.ArchiveFileSystem$ArchiveReadOnlyException" />
    <class name="de.schlichtherle.io.ArchiveFileSystem$Delta" />
    <class name="de.schlichtherle.io.ArchiveFileSystem$LinkDelta" />
    <class name="de.schlichtherle.io.ArchiveFileSystemController" />
    <class name="de.schlichtherle.io.ArchiveFileSystemController$AutoMounter" />
    <class name="de.schlichtherle.io.ArchiveFileSystemController$FalsePositiveFileSystem" />
    <class name="de.schlichtherle.io.ArchiveFileSystemController$MountedFileSystem" />
    <class name="de.schlichtherle.io.ArchiveFileSystemController$ResetFileSystem" />
    <class name="de.schlichtherle.io.ArchiveFileSystemController$ResetFileSystem$1Mounter" />
    <class name="de.schlichtherle.io.ArchiveInputBusyException" />
    <class name="de.schlichtherle.io.ArchiveInputBusyWarningException" />
    <class name="de.schlichtherle.io.ArchiveOutputBusyException" />
    <class name="de.schlichtherle.io.ArchiveOutputBusyWarningException" />
    <class name="de.schlichtherle.io.ArchiveStatistics" />
    <class name="de.schlichtherle.io.ArchiveWarningException" />
    <class name="de.schlichtherle.io.ChainableIOException" />
    <class name="de.schlichtherle.io.ContainsFileException" />
    <class name="de.schlichtherle.io.CountingOutputStream" />
    <class name="de.schlichtherle.io.CountingReadOnlyFile" />
    <class name="de.schlichtherle.io.DefaultArchiveDetector" />
    <class name="de.schlichtherle.io.Entry" />
    <class name="de.schlichtherle.io.Executor" />
    <class name="de.schlichtherle.io.File" />
    <class name="de.schlichtherle.io.FileBusyException" />
    <class name="de.schlichtherle.io.FileFactory" />
    <class name="de.schlichtherle.io.FileInputStream" />
    <class name="de.schlichtherle.io.FileOutputStream" />
    <class name="de.schlichtherle.io.Files" />
    <class name="de.schlichtherle.io.Files$1IOStreamCreator" />
    <class name="de.schlichtherle.io.Files$1OStreamCreator" />
    <class name="de.schlichtherle.io.Files$CopyLock" />
    <class name="de.schlichtherle.io.GlobalArchiveDriverRegistry" />
    <class name="de.schlichtherle.io.InputArchiveMetaData" />
    <class name="de.schlichtherle.io.InputArchiveMetaData$EntryInputStream" />
    <class name="de.schlichtherle.io.InputIOException" />
    <class name="de.schlichtherle.io.IORunnable" />
    <class name="de.schlichtherle.io.JSE5Executor" />
    <class name="de.schlichtherle.io.JSE5Executor$1ThreadFactory" />
    <class name="de.schlichtherle.io.JSE5Executor$JSE5Task" />
    <class name="de.schlichtherle.io.OutputArchiveMetaData" />
    <class name="de.schlichtherle.io.OutputArchiveMetaData$EntryOutputStream" />
    <class name="de.schlichtherle.io.ReadWriteLock" />
    <class name="de.schlichtherle.io.ReentrantLock" />
    <class name="de.schlichtherle.io.ReentrantReadWriteLock" />
    <class name="de.schlichtherle.io.ReentrantReadWriteLock$AbstractLock" />
    <class name="de.schlichtherle.io.ReentrantReadWriteLock$ReadLock" />
    <class name="de.schlichtherle.io.ReentrantReadWriteLock$WriteLock" />
    <class name="de.schlichtherle.io.rof.AbstractReadOnlyFile" />
    <class name="de.schlichtherle.io.rof.BufferedReadOnlyFile" />
    <class name="de.schlichtherle.io.rof.FilterReadOnlyFile" />
    <class name="de.schlichtherle.io.rof.ReadOnlyFile" />
    <class name="de.schlichtherle.io.rof.SimpleReadOnlyFile" />
    <class name="de.schlichtherle.io.Streams" />
    <class name="de.schlichtherle.io.Streams$1Reader" />
    <class name="de.schlichtherle.io.Streams$Buffer" />
    <class name="de.schlichtherle.io.Task" />
    <class name="de.schlichtherle.io.UpdatingArchiveController" />
    <class name="de.schlichtherle.io.util.LEDataOutputStream" />
    <class name="de.schlichtherle.io.util.Paths" />
    <class name="de.schlichtherle.io.util.SuffixSet" />
    <class name="de.schlichtherle.io.util.SynchronizedInputStream" />
    <class name="de.schlichtherle.io.util.SynchronizedOutputStream" />
    <class name="de.schlichtherle.io.util.Temps" />
    <class name="de.schlichtherle.key.AbstractKeyProvider" />
    <class name="de.schlichtherle.key.AesKeyProvider" />
    <class name="de.schlichtherle.key.KeyManager" />
    <class name="de.schlichtherle.key.KeyManager$KeyProviderCommand" />
    <class name="de.schlichtherle.key.KeyPromptingCancelledException" />
    <class name="de.schlichtherle.key.KeyPromptingDisabledException" />
    <class name="de.schlichtherle.key.KeyPromptingInterruptedException" />
    <class name="de.schlichtherle.key.KeyPromptingTimeoutException" />
    <class name="de.schlichtherle.key.KeyProvider" />
    <class name="de.schlichtherle.key.passwd.swing.AesKeyStrengthPanel" />
    <class name="de.schlichtherle.key.passwd.swing.PromptingAesKeyProviderUI" />
    <class name="de.schlichtherle.key.passwd.swing.PromptingKeyManager" />
    <class name="de.schlichtherle.key.passwd.swing.PromptingKeyProviderUI" />
    <class name="de.schlichtherle.key.passwd.swing.PromptingKeyProviderUI$2" />
    <class name="de.schlichtherle.key.passwd.swing.PromptingKeyProviderUI$3" />
    <class name="de.schlichtherle.key.passwd.swing.PromptingKeyProviderUI$BooleanRunnable" />
    <class name="de.schlichtherle.key.PromptingAesKeyProvider" />
    <class name="de.schlichtherle.key.PromptingKeyManager" />
    <class name="de.schlichtherle.key.PromptingKeyProvider" />
    <class name="de.schlichtherle.key.PromptingKeyProviderUI" />
    <class name="de.schlichtherle.key.UnknownKeyException" />
    <class name="de.schlichtherle.swing.EnhancedPanel" />
    <class name="de.schlichtherle.util.CanonicalStringSet" />
    <class name="de.schlichtherle.util.CanonicalStringSet$CanonicalStringIterator" />
    <class name="de.schlichtherle.util.CanonicalStringSet$StringIterator" />
    <class name="de.schlichtherle.util.ClassLoaders" />
    <class name="de.schlichtherle.util.JointEnumeration" />
    <class name="de.schlichtherle.util.regex.ThreadLocalMatcher" />
    <class name="de.schlichtherle.util.ThreadLocalCounter" />
    <class name="de.schlichtherle.util.ThreadLocalCounter$Holder" />
    <class name="de.schlichtherle.util.zip.BasicZipFile" />
    <class name="de.schlichtherle.util.zip.BasicZipFile$AccountedInputStream" />
    <class name="de.schlichtherle.util.zip.BasicZipFile$CheckedInputStream" />
    <class name="de.schlichtherle.util.zip.BasicZipFile$IntervalInputStream" />
    <class name="de.schlichtherle.util.zip.BasicZipFile$IrregularOffsetMapper" />
    <class name="de.schlichtherle.util.zip.BasicZipFile$OffsetMapper" />
    <class name="de.schlichtherle.util.zip.BasicZipFile$PooledInflaterInputStream" />
    <class name="de.schlichtherle.util.zip.BasicZipFile$RawCheckedInputStream" />
    <class name="de.schlichtherle.util.zip.BasicZipOutputStream" />
    <class name="de.schlichtherle.util.zip.BasicZipOutputStream$ZipDeflater" />
    <class name="de.schlichtherle.util.zip.CRC32Exception" />
    <class name="de.schlichtherle.util.zip.DateTimeConverter" />
    <class name="de.schlichtherle.util.zip.DateTimeConverter$1" />
    <class name="de.schlichtherle.util.zip.DateTimeConverter$2" />
    <class name="de.schlichtherle.util.zip.DateTimeConverter$3" />
    <class name="de.schlichtherle.util.zip.DefaultExtraField" />
    <class name="de.schlichtherle.util.zip.ExtraField" />
    <class name="de.schlichtherle.util.zip.LittleEndian" />
    <class name="de.schlichtherle.util.zip.UByte" />
    <class name="de.schlichtherle.util.zip.UInt" />
    <class name="de.schlichtherle.util.zip.ULong" />
    <class name="de.schlichtherle.util.zip.UShort" />
    <class name="de.schlichtherle.util.zip.ZIP" />
    <class name="de.schlichtherle.util.zip.ZipEntry" />
    <!-- define the manifest -->
    <manifest>
      <attribute name="Main-Class" value="com.mindprod.backuptozip.BackupToZip" />
    </manifest>
  </genjar>

  <!-- J A R C H E C K -->
  <exec executable="jarcheck.exe" dir="com/mindprod/backuptozip" output="nul:" logError="true" failonerror="true">
    <arg value="backuptozip.jar" />
    <arg value="1.1" />
    <arg value="1.6" />
  </exec>
  <!-- J A R L O O K -->
  <exec executable="jarlook.exe" dir="com/mindprod/backuptozip" output="com/mindprod/backuptozip/backuptozip.look">
    <arg value="backuptozip.jar" />
  </exec>
</target>

<!-- P O S T J A R -->
<target name="postjar" depends="jar">
  <!-- nothing to do -->
</target>

<!-- P R E J E T -->
<target name="prejet">
<echo message="    :::    backuptozip    :::    avoid regenerating Jet executable if already done." />
  <uptodate property="jet.uptodate" srcfile="com/mindprod/backuptozip/backuptozip.jar" targetfile="com/mindprod/backuptozip/backuptozip.exe" />
</target>

<!-- J E T -->
<!-- Requires Excelsior JET native Java compiler jc.exe on the path -->
<!-- See http://mindprod.com/jgloss/jet.html for details -->
<target name="jet" depends="prejet" unless="jet.uptodate">
<echo message="    :::    backuptozip    :::    jet compiling." />
  <exec executable="jc.exe" dir="com/mindprod/backuptozip">
    <arg value="-DECOR=" />
    <arg value="backuptozip.jar" />
  </exec>
  <!-- copy exe to E:/sys -->
  <copy file="com/mindprod/backuptozip/backuptozip.exe" todir="E:/sys" />
</target>

<!-- P R E J A V A D O C . -->
<target name="prejavadoc">
<echo message="    :::    backuptozip    :::    avoid regenerating Javadoc if already done." />
  <uptodate property="javadoc.uptodate" targetfile="com/mindprod/backuptozip/javadoc/index.html">
    <srcfiles dir="com/mindprod/backuptozip" includes="**/*.java" />
  </uptodate>
</target>

<!-- J A V A D O C -->
<target name="javadoc" depends="prejavadoc" unless="javadoc.uptodate">
<echo message="    :::    backuptozip    :::    generating Javadoc." />
  <!-- prepare javadoc -->
  <javadoc
    author="true"
    destdir="com/mindprod/backuptozip/javadoc"
    packagenames="com.mindprod.backuptozip.*"
    sourcepath="E:/"
    use="true"
    access="package"
    version="true" />
</target>

<!-- Z I P -->
<target name="zip" depends="javadoc,jar">
<echo message="    :::    backuptozip    :::    preparing zip distributable." />
  <!-- Remove references to separate foot files. -->
  <exec executable="prunefoot.exe" failifexecutionfails="false" dir="com/mindprod/backuptozip">
    <arg value="backuptozip.html" />
    <arg value="backuptozip.manual.html" />
  </exec>
  <zip destfile="com/mindprod/backuptozip/backuptozip14.zip" duplicate="preserve" filesonly="true" includes="${distributed.exts}" excludes="${nondistributed}">
    <!-- zipfileset includes all subdirs as well -->
    <zipfileset dir="com/mindprod/backuptozip" prefix="com/mindprod/backuptozip" includes="${distributed.exts}" excludes="${nondistributed}" />
    <!-- Extra classes and properties to include in the Zip -->
    <!-- configure to where you hide your truezip-6.8.1.jar -->
    <zipfileset dir="E:/env/extprop" prefix="com/mindprod/backuptozip" includes="truezip-6.8.1.jar" excludes="${nondistributed}" />
    <zipfileset dir="com/mindprod/commandline" prefix="com/mindprod/commandline" includes="${distributed.exts}" excludes="${nondistributed}" />
    <zipfileset dir="com/mindprod/common18"    prefix="com/mindprod/common18"    includes="${distributed.exts}" excludes="${nondistributed}" />

    <zipfileset dir="com/mindprod/fastcat"     prefix="com/mindprod/fastcat"     includes="${distributed.exts}" excludes="${nondistributed}" />
    <zipfileset dir="com/mindprod/filter"      prefix="com/mindprod/filter"      includes="${distributed.exts}" excludes="${nondistributed}" />
    <zipfileset dir="com/mindprod/hunkio"      prefix="com/mindprod/hunkio"      includes="${distributed.exts}" excludes="${nondistributed}" />
  </zip>

  <!-- Z I P L O O K -->
  <exec executable="jarlook.exe" dir="com/mindprod/backuptozip" output="com/mindprod/backuptozip/zip.look">
    <arg value="backuptozip14.zip" />
  </exec>
</target>

<!-- P O S T Z I P -->
<target name="postzip" depends="zip,postjar">
<echo message="    :::    backuptozip    :::    posting zip to website." />
  <!-- copy precis to website -->
  <copy file="com/mindprod/backuptozip/backuptozip.use" tofile="E:/mindprod/precis/backuptozip.txt" overwrite="true" />
  <!-- copy zip to website -->
  <copy file="com\mindprod\backuptozip/backuptozip14.zip" todir="E:/mindprod/zips" overwrite="true" />
  <!-- delete old zip distributable from project and website -->
  <delete file="com/mindprod/backuptozip/backuptozip13.zip" failonerror="false" />
  <delete file="E:/mindprod/zips/backuptozip13.zip" failonerror="false" />
</target>
</project>