|
|
@@ -53,6 +53,7 @@ |
|
|
|
*/ |
|
|
|
package org.apache.ant.builder; |
|
|
|
import java.io.File; |
|
|
|
import java.io.FilenameFilter; |
|
|
|
import java.util.ArrayList; |
|
|
|
|
|
|
|
import java.util.List; |
|
|
@@ -73,6 +74,7 @@ public class Builder { |
|
|
|
/** The zip utilities root */ |
|
|
|
private static final File ZIP_ROOT |
|
|
|
= new File(ANT1_SRC_ROOT, "org/apache/tools/zip"); |
|
|
|
|
|
|
|
/** the taskdefs root */ |
|
|
|
private static final File TASKDEFS_ROOT |
|
|
|
= new File(PACKAGE_ROOT, "taskdefs"); |
|
|
@@ -101,6 +103,20 @@ public class Builder { |
|
|
|
builder.runBuild(args); |
|
|
|
} |
|
|
|
|
|
|
|
private void addJavaFiles(List files, File dir) { |
|
|
|
File[] javaFiles = dir.listFiles(new FilenameFilter() { |
|
|
|
public boolean accept(File dir, String name) { |
|
|
|
return name.endsWith(".java"); |
|
|
|
} |
|
|
|
}); |
|
|
|
|
|
|
|
if (javaFiles != null) { |
|
|
|
for (int i = 0; i < javaFiles.length; ++i) { |
|
|
|
files.add(javaFiles[i]); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* Get the Ant1 files currently required to build a bootstrap build. |
|
|
|
* |
|
|
@@ -109,33 +125,16 @@ public class Builder { |
|
|
|
*/ |
|
|
|
private File[] getAnt1Files() { |
|
|
|
List files = new ArrayList(); |
|
|
|
files.add(new File(TYPES_ROOT, "EnumeratedAttribute.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "Path.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "FileSet.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "PatternSet.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "Reference.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "FilterSet.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "FilterSetCollection.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "Mapper.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "ZipFileSet.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "ZipScanner.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "FilterChain.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "Parameter.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "Parameterizable.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "RegularExpression.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "FileNameMapper.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "FlatFileNameMapper.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "SourceFileScanner.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "IdentityMapper.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "MergingMapper.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "GlobPatternMapper.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "LoaderUtils.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "regexp/Regexp.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "regexp/RegexpMatcher.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "regexp/RegexpFactory.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "regexp/RegexpMatcherFactory.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "Commandline.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "JavaEnvUtils.java")); |
|
|
|
addJavaFiles(files, TASKDEFS_ROOT); |
|
|
|
addJavaFiles(files, new File(TASKDEFS_ROOT, "compilers")); |
|
|
|
addJavaFiles(files, new File(TASKDEFS_ROOT, "condition")); |
|
|
|
addJavaFiles(files, DEPEND_ROOT); |
|
|
|
addJavaFiles(files, new File(DEPEND_ROOT, "constantpool")); |
|
|
|
addJavaFiles(files, TYPES_ROOT); |
|
|
|
addJavaFiles(files, FILTERS_ROOT); |
|
|
|
addJavaFiles(files, UTIL_ROOT); |
|
|
|
addJavaFiles(files, ZIP_ROOT); |
|
|
|
|
|
|
|
files.add(new File(PACKAGE_ROOT, "BuildException.java")); |
|
|
|
files.add(new File(PACKAGE_ROOT, "Location.java")); |
|
|
|
files.add(new File(PACKAGE_ROOT, "AntClassLoader.java")); |
|
|
@@ -146,106 +145,35 @@ public class Builder { |
|
|
|
files.add(new File(PACKAGE_ROOT, "PathTokenizer.java")); |
|
|
|
files.add(new File(PACKAGE_ROOT, "TaskAdapter.java")); |
|
|
|
files.add(new File(PACKAGE_ROOT, "MatchingTask.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "FileUtils.java")); |
|
|
|
files.add(new File(PACKAGE_ROOT, "defaultManifest.mf")); |
|
|
|
|
|
|
|
files.add(new File(TASKDEFS_ROOT, "defaults.properties")); |
|
|
|
files.add(new File(TYPES_ROOT, "defaults.properties")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Property.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Execute.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "ExecuteStreamHandler.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "ExecuteWatchdog.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "ProcessDestroyer.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "PumpStreamHandler.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "StreamPumper.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "LogStreamHandler.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "LogOutputStream.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "condition/Os.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "condition/Contains.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "condition/Condition.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Available.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Mkdir.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Copy.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Echo.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "MatchingTask.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "Depend.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "ClassFile.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "ClassFileUtils.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/ClassCPInfo.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/ConstantPool.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/ConstantPoolEntry.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/Utf8CPInfo.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/ConstantCPInfo.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/MethodRefCPInfo.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, |
|
|
|
"constantpool/InterfaceMethodRefCPInfo.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/FieldRefCPInfo.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/NameAndTypeCPInfo.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/IntegerCPInfo.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/FloatCPInfo.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/LongCPInfo.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/StringCPInfo.java")); |
|
|
|
files.add(new File(DEPEND_ROOT, "constantpool/DoubleCPInfo.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Javac.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "compilers/CompilerAdapter.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, |
|
|
|
"compilers/DefaultCompilerAdapter.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, |
|
|
|
"compilers/CompilerAdapterFactory.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "compilers/Jikes.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "compilers/JavacExternal.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "compilers/Javac12.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "compilers/Javac13.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "compilers/Kjc.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "compilers/Gcj.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "compilers/Jvc.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "compilers/Sj.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Jar.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Zip.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Manifest.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "ManifestException.java")); |
|
|
|
files.add(new File(ZIP_ROOT, "ZipOutputStream.java")); |
|
|
|
files.add(new File(ZIP_ROOT, "ZipOutputStream.java")); |
|
|
|
files.add(new File(ZIP_ROOT, "ZipEntry.java")); |
|
|
|
files.add(new File(ZIP_ROOT, "ZipLong.java")); |
|
|
|
files.add(new File(ZIP_ROOT, "ZipShort.java")); |
|
|
|
files.add(new File(ZIP_ROOT, "ZipExtraField.java")); |
|
|
|
files.add(new File(ZIP_ROOT, "ExtraFieldUtils.java")); |
|
|
|
files.add(new File(ZIP_ROOT, "AsiExtraField.java")); |
|
|
|
files.add(new File(ZIP_ROOT, "UnrecognizedExtraField.java")); |
|
|
|
files.add(new File(ZIP_ROOT, "UnixStat.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "ConditionTask.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "condition/ConditionBase.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Checksum.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "UpToDate.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "condition/Not.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "condition/And.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "condition/Equals.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "condition/Or.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "condition/IsSet.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "condition/Http.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "condition/Socket.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "condition/FilesMatch.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Taskdef.java")); |
|
|
|
files.add(new File(TASKDEFS_ROOT, "Definer.java")); |
|
|
|
|
|
|
|
|
|
|
|
files.add(new File(UTIL_ROOT, "regexp/Regexp.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "regexp/RegexpMatcher.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "regexp/RegexpFactory.java")); |
|
|
|
files.add(new File(UTIL_ROOT, "regexp/RegexpMatcherFactory.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "util/ChainReaderHelper.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "ClassConstants.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "ExpandProperties.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "HeadFilter.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "LineContains.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "LineContainsRegExp.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "PrefixLines.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "ReplaceTokens.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "StripJavaComments.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "StripLineBreaks.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "StripLineComments.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "TabsToSpaces.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "TailFilter.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "BaseFilterReader.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "ChainableReader.java")); |
|
|
|
files.add(new File(TYPES_ROOT, "AntFilterReader.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, "BaseParamFilterReader.java")); |
|
|
|
files.add(new File(FILTERS_ROOT, ".java")); |
|
|
|
|
|
|
|
// these shouyld not be included |
|
|
|
files.remove(new File(TYPES_ROOT, "DataType.java")); |
|
|
|
files.remove(new File(TASKDEFS_ROOT, "Ant.java")); |
|
|
|
files.remove(new File(TASKDEFS_ROOT, "CallTarget.java")); |
|
|
|
files.remove(new File(TASKDEFS_ROOT, "AntStructure.java")); |
|
|
|
files.remove(new File(TASKDEFS_ROOT, "Recorder.java")); |
|
|
|
files.remove(new File(TASKDEFS_ROOT, "RecorderEntry.java")); |
|
|
|
|
|
|
|
// not needed for bootstrap |
|
|
|
files.remove(new File(TASKDEFS_ROOT, "Java.java")); |
|
|
|
files.remove(new File(TASKDEFS_ROOT, "Tar.java")); |
|
|
|
files.remove(new File(TASKDEFS_ROOT, "Untar.java")); |
|
|
|
files.remove(new File(TASKDEFS_ROOT, "BZip2.java")); |
|
|
|
files.remove(new File(TASKDEFS_ROOT, "BUnzip2.java")); |
|
|
|
files.remove(new File(TASKDEFS_ROOT, "Rmic.java")); |
|
|
|
files.remove(new File(TASKDEFS_ROOT, "SendEmail.java")); |
|
|
|
|
|
|
|
|
|
|
|
return (File[])files.toArray(new File[0]); |
|
|
|
} |
|
|
|
|
|
|
|