aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwisberg <wisberg>2002-12-16 16:51:08 +0000
committerwisberg <wisberg>2002-12-16 16:51:08 +0000
commit3cde920c3f7eb8241bf569007e25225d80b43c0f (patch)
tree6a5133977e3ba75cb043bc1e74a7680d6167bb37
downloadaspectj-3cde920c3f7eb8241bf569007e25225d80b43c0f.tar.gz
aspectj-3cde920c3f7eb8241bf569007e25225d80b43c0f.zip
initial version
-rw-r--r--bridge/.classpath9
-rw-r--r--bridge/.cvsignore4
-rw-r--r--bridge/.project18
-rw-r--r--build/.classpath9
-rw-r--r--build/.project17
-rw-r--r--build/build-properties.xml148
-rw-r--r--build/build.xml264
-rw-r--r--build/readme-build-module.html59
-rw-r--r--lib/.classpath5
-rw-r--r--lib/.project17
-rw-r--r--lib/readme-lib-module.html44
-rw-r--r--runtime/.classpath8
-rw-r--r--runtime/.cvsignore3
-rw-r--r--runtime/.project17
-rw-r--r--util/.classpath8
-rw-r--r--util/.cvsignore2
-rw-r--r--util/.project17
17 files changed, 649 insertions, 0 deletions
diff --git a/bridge/.classpath b/bridge/.classpath
new file mode 100644
index 000000000..3a4b63b89
--- /dev/null
+++ b/bridge/.classpath
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="testsrc"/>
+ <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
+ <classpathentry kind="lib" path="/lib/junit/junit.jar" sourcepath="/lib/junit/junit-src.jar"/>
+ <classpathentry kind="src" path="/util"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/bridge/.cvsignore b/bridge/.cvsignore
new file mode 100644
index 000000000..614655da9
--- /dev/null
+++ b/bridge/.cvsignore
@@ -0,0 +1,4 @@
+bin
+ant.properties
+bridge.mf.txt
+
diff --git a/bridge/.project b/bridge/.project
new file mode 100644
index 000000000..91c755134
--- /dev/null
+++ b/bridge/.project
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>bridge</name>
+ <comment></comment>
+ <projects>
+ <project>util</project>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/build/.classpath b/build/.classpath
new file mode 100644
index 000000000..a52393fc3
--- /dev/null
+++ b/build/.classpath
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="testsrc"/>
+ <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
+ <classpathentry kind="lib" path="/lib/ant/lib/ant.jar"/>
+ <classpathentry kind="lib" path="/lib/junit/junit.jar"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/build/.project b/build/.project
new file mode 100644
index 000000000..1f143eab5
--- /dev/null
+++ b/build/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>build</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/build/build-properties.xml b/build/build-properties.xml
new file mode 100644
index 000000000..71628de10
--- /dev/null
+++ b/build/build-properties.xml
@@ -0,0 +1,148 @@
+<!-- -*- Mode: SGML; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -->
+<!-- ========================================================================= -->
+<!-- Copyright (c) 2002 Palo Alto Research Center, Incorporated (PARC). -->
+<!-- All rights reserved. -->
+<!-- This program and the accompanying materials are made available -->
+<!-- under the terms of the Common Public License v1.0 -->
+<!-- which accompanies this distribution and is available at -->
+<!-- http://www.eclipse.org/legal/cpl-v10.html -->
+<!-- -->
+<!-- Contributors: -->
+<!-- Xerox/PARC initial implementation -->
+<!-- ========================================================================= -->
+
+<!-- include as common entity for module build scripts -->
+<!-- should only need to edit version properties -->
+
+ <target name="init-properties"
+ unless="aspectj.modules.build.dir">
+
+ <!-- change version manually -->
+ <property name="build.version" value="1.1b2"/>
+ <property name="build.version.base" value="1.1"/>
+ <property name="build.version.long" value="1.1beta2"/>
+ <property name="build.version.short" value="1.1b2"/>
+
+ <!-- formats comply with SimpleDateFormat -->
+ <property name="build.time.format" value="MM/dd/yy 'at' hh:mm:ss z"/>
+ <property name="build.date.format" value="EEEE MMM d, yyyy"/>
+ <tstamp>
+ <format property="build.date"
+ pattern="${build.date.format}"
+ timezone="PST"/>
+ <format property="build.time"
+ pattern="${build.time.format}"
+ timezone="PST"/>
+ </tstamp>
+
+ <property name="copyright.allRights.from1998"
+ value="Copyright (c) 1998-2001 Xerox Corporation, 2002 Palo Alto Research Center, Incorporated. All rights reserved." />
+ <!-- XXX interim hack -->
+ <property name="aspectj.home.url" value="http://aspectj.org" />
+
+ <!-- callers define basedir as dir of build file? -->
+ <property name="aspectj.modules.dir"
+ location="${basedir}/.."/>
+
+ <!-- aj... names are generated, can be mutated/cleaned -->
+ <property name="aj.results.dir"
+ location="${aspectj.modules.dir}/aj-build-results"/>
+ <!-- these names are known to BuildModule.java and common to all -->
+ <property name="aj.build.dir"
+ location="${aspectj.modules.dir}/aj-build"/>
+ <property name="aj.temp.dir"
+ location="${aj.build.dir}/temp"/>
+ <property name="aj.jar.dir"
+ location="${aj.build.dir}/jars"/>
+ <property name="aj.dist.dir"
+ location="${aj.build.dir}/dist"/>
+ <property name="aj.webDeploy.dir"
+ location="${aj.build.dir}/webDeploy"/>
+
+ <!-- aspectj... names are sources, not to be mutated -->
+ <property name="aspectj.modules.lib.dir"
+ location="${aspectj.modules.dir}/lib"/>
+ <property name="aspectj.modules.build.dir"
+ location="${aspectj.modules.dir}/build"/>
+ <property name="aspectj.modules.docs.dir"
+ location="${aspectj.modules.dir}/docs"/>
+ <property name="aspectj.modules.tests.dir"
+ location="${aspectj.modules.dir}/tests"/>
+ <!-- BuildModule.java assumes products are here -->
+ <property name="aspectj.products.dir"
+ location="${aspectj.modules.build.dir}/products"/>
+ <property name="aspectj.modules.tests.dir"
+ location="${aspectj.modules.dir}/tests"/>
+ <property name="aspectj.build.jar"
+ location="${aspectj.modules.lib.dir}/build/build.jar"/>
+ <available file="${aspectj.build.jar}"
+ property="aspectj.build.jar.available"
+ value="${aspectj.build.jar}"/>
+ </target>
+
+ <target name="init-taskdefs"
+ depends="init-properties"
+ unless="init-taskdefs.done" >
+ <fail unless="aspectj.build.jar.available"
+ message="unable to find aspectj.build.jar: ${aspectj.build.jar}"/>
+ <taskdef resource="org/aspectj/internal/tools/ant/taskdefs/taskdefs.properties"
+ classpath="${aspectj.build.jar}"/>
+ <property name="init-taskdefs.done" value="done"/>
+ </target>
+
+ <target name="init-directories"
+ depends="init-properties"
+ unless="init-directories.done" >
+ <mkdir dir="${aj.results.dir}" />
+ <mkdir dir="${aj.build.dir}" />
+ <mkdir dir="${aj.temp.dir}" />
+ <mkdir dir="${aj.jar.dir}" />
+ <mkdir dir="${aj.dist.dir}" />
+ <property name="init-directories.done" value="done"/>
+ </target>
+
+ <target name="init-filters"
+ depends="init-properties"
+ unless="init-filters.done" >
+ <!-- change version manually -->
+ <!-- see also org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/messages.properties -->
+ <filter token="build.version" value="${build.version}"/>
+ <filter token="build.version.base" value="${build.version.base}"/>
+ <filter token="build.version.long" value="${build.version.long}"/>
+ <filter token="build.version.short" value="${build.version.short}"/>
+
+ <filter token="build.time.format" value="${build.time.format}"/>
+ <filter token="build.date.format" value="${build.date.format}"/>
+ <filter token="build.date" value="${build.date}"/>
+ <filter token="build.time" value="${build.time}"/>
+ <filter token="copyright.allRights.from1998"
+ value="${copyright.allRights.from1998}" />
+ <property name="init-filters.done" value="done"/>
+ </target>
+
+ <target name="clean-directories"
+ depends="init-directories"
+ unless="clean-directories.done" >
+ <property name="clean-directories.done" value="done"/>
+ <delete quiet="on" dir="${aj.build.dir}" /> <!-- warning if not deleted? -->
+ <antcall target="init-directories"/>
+ <!-- aj.results.dir is not cleaned -->
+ </target>
+
+ <target name="echo-properties" depends="init-properties">
+ <echo>
+ Build Properties
+
+ build.date = ${build.date}
+ build.time = ${build.time}
+ build.version = ${build.version}
+ build.version.long = ${build.version.long}
+ build.version.short = ${build.version.short}
+ aspectj.modules.dir = ${aspectj.modules.dir}
+ aj.build.dir = ${aj.build.dir}
+ aj.results.dir = ${aj.results.dir}
+ release.build = ${release.build}
+ ant.home = ${ant.home}
+ java.home = ${java.home}
+</echo>
+ </target>
diff --git a/build/build.xml b/build/build.xml
new file mode 100644
index 000000000..0382c4428
--- /dev/null
+++ b/build/build.xml
@@ -0,0 +1,264 @@
+<!-- -*- Mode: SGML; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -->
+
+<!-- ========================================================================= -->
+<!-- Copyright (c) 2002 Palo Alto Research Center, Incorporated (PARC). -->
+<!-- All rights reserved. -->
+<!-- This program and the accompanying materials are made available -->
+<!-- under the terms of the Common Public License v1.0 -->
+<!-- which accompanies this distribution and is available at -->
+<!-- http://www.eclipse.org/legal/cpl-v10.html -->
+<!-- -->
+<!-- Contributors: -->
+<!-- Xerox/PARC initial implementation -->
+<!-- ========================================================================= -->
+
+<!DOCTYPE project [
+<!ENTITY build-properties SYSTEM "file:build-properties.xml">
+]>
+<project name="build" default="all" basedir=".">
+
+ <target name="all" depends="aspectj"/>
+ <target name="rebuild" depends="clean,all"/>
+ <target name="clean" depends="clean-directories"/>
+
+
+ <!-- ===================================================================== -->
+ <!-- Init -->
+ <!-- ===================================================================== -->
+ <!-- use this file to force prop values -->
+ <property file="${basedir}/local.properties"/>
+
+ &build-properties;
+
+ <target name="init" depends="init-properties,init-directories">
+ <property name="build.config" value="verbose"/>
+ <property name="aj.installer.jar"
+ location="${aj.dist.dir}/aspectj-${build.version.short}.jar"/>
+
+ <available property="ant.lib.aspectjtools"
+ file="${ant.home}/lib/aspectjtools.jar"
+ value="Expect classpath errors from ${ant.home}/lib/aspectjtools.jar"/>
+
+ <available property="ant.lib.aspectjrt"
+ file="${ant.home}/lib/aspectjrt.jar"
+ value="Expect classpath errors from ${ant.home}/lib/aspectjrt.jar"/>
+
+ <available property="testing.drivers.all.available"
+ file="${aj.jar.dir}/testing-drivers-all.jar"
+ value="${aj.jar.dir}/testing-drivers-all.jar"/>
+
+ </target>
+
+ <target name="init-version" depends="init,init-filters"
+ unless="init.version.done" if="release.build" > <!-- unless=version.uptodate -->
+ <antcall target="init-filters"/>
+ <copy file="${aspectj.modules.dir}/build/lib/BridgeVersion.java.txt"
+ tofile="${aspectj.modules.dir}/bridge/src/org/aspectj/bridge/Version.java"
+ overwrite="yes" filtering="yes"/>
+ <property name="init.version.done" value="done"/>
+ <!-- consider checking this in? -->
+ </target>
+
+
+ <!-- ===================================================================== -->
+ <!-- Misc setup and warnings -->
+ <!-- ===================================================================== -->
+ <target name="warn.ant.lib.aspectjrt" if="ant.lib.aspectjrt">
+ <echo message="----- WARNING: ${ant.lib.aspectjrt}" />
+ </target>
+
+ <target name="warn.ant.lib.aspectjtools" if="ant.lib.aspectjtools">
+ <echo message="----- WARNING: ${ant.lib.aspectjtools}" />
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- test targets -->
+ <!-- ===================================================================== -->
+
+ <target name="quicklook" >
+ <antcall target="clean"/>
+ <!-- todo: compile modules without test sources -->
+ <!-- todo: junit tests (compile with test sources) -->
+ <antcall target="aspectj"/>
+ <antcall target="ajcTests"/>
+ <!-- todo: product install and tests -->
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- tree targets -->
+ <!-- ===================================================================== -->
+ <target name="update.tree" depends="init"
+ description="update tree">
+ <fail unless="CVSROOT"
+ message="required: {ant} -DCVSROOT=... ..."/>
+ <cvs cvsRoot="${CVSROOT}"
+ dest="${aspectj.modules.dir}"
+ quiet="on"
+ failonerror="on"
+ command="update -dP" />
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- antcall targets -->
+ <!-- ===================================================================== -->
+
+ <target name="build-product" depends="init,init-taskdefs,init-version"
+ description="build $${product.name}">
+ <ajbuild jarDir="${aj.jar.dir}"
+ baseDir="${aspectj.modules.dir}"
+ distDir="${aj.dist.dir}"
+ productDir="${aspectj.modules.dir}/build/products/${product.name}"
+ trimTesting="true"
+ buildConfig="${build.config}"
+ version="${build.version.long}"
+ verbose="true"
+ failonerror="true"/>
+ </target>
+
+ <target name="build-module" depends="init,init-taskdefs,init-version">
+ <ajbuild jarDir="${aj.jar.dir}"
+ baseDir="${aspectj.modules.dir}"
+ distDir="${aj.dist.dir}"
+ module="${module.name}"
+ trimTesting="true"
+ buildConfig="${build.config}"
+ version="${build.version.long}"
+ verbose="true"
+ failonerror="true"/>
+ </target>
+
+
+ <target name="build-module-all" depends="init,init-taskdefs,init-version">
+ <ajbuild module="${module.name}"
+ baseDir="${aspectj.modules.dir}"
+ distDir="${aj.dist.dir}"
+ jarDir="${aj.jar.dir}"
+ trimTesting="true"
+ buildConfig="${build.config}"
+ version="${build.version.long}"
+ verbose="true"
+ assembleall="true"
+ failonerror="true"/>
+ </target>
+
+
+ <target name="create-installer" depends="init,init-taskdefs,init-filters"
+ description="create ${installer.file} from ${staging.dir} using ${htmlSrc.dir} and ${simpleClassName}">
+ <!-- init-filters: filter on copy used by ajinstaller taskdef -->
+
+ <delete quiet="on" file="${installer.file}"/>
+ <ajinstaller zipfile="${installer.file}"
+ installerclassjar="${aspectj.build.jar}"
+ basedir="${staging.dir}"
+ mainclass="$$installer$$.org.aspectj.${simpleClassName}"
+ htmlSrc="${htmlSrc.dir}"
+ resourcesSrc="${aspectj.modules.build.dir}/installer-resources"/>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- custom targets -->
+ <!-- ===================================================================== -->
+ <target name="build-testing-drivers" depends="init-taskdefs,init"
+ unless="testing.drivers.all.available">
+ <ajbuild module="testing-drivers"
+ baseDir="${aspectj.modules.dir}"
+ jarDir="${aj.jar.dir}"
+ trimTesting="false"
+ buildConfig="${build.config}"
+ version="${build.version.long}"
+ verbose="true"
+ assembleall="true"
+ failonerror="true"/>
+ </target>
+
+ <target name="ajcTests" depends="init,build-testing-drivers">
+ <java fork="true" jar="${aj.jar.dir}/testing-drivers-all.jar"
+ dir="${aspectj.modules.tests.dir}"
+ output="${aj.results.dir}/ajcTests.out.txt">
+ <arg value="-traceTestsMin"/>
+ <arg value="-logFail"/>
+ <arg value="-hideStreams"/>
+ <arg value="-loud"/>
+ <arg value="-ajctestSkipKeywords=purejava,knownLimitations"/>
+ <arg value="ajcTests.xml"/>
+ </java>
+ <echo message="find result in ${aj.results.dir}/ajcTests.out.txt"/>
+ </target>
+
+ <target name="aspectj" depends="init,aspectjtools-dist,docs-dist"
+ description="create installer from local distributions">
+ <property name="installer.staging.dir"
+ location="${aj.temp.dir}/installer-staging"/>
+ <mkdir dir="${installer.staging.dir}"/>
+ <delete dir="${installer.staging.dir}"/>
+ <mkdir dir="${installer.staging.dir}"/>
+ <copy todir="${installer.staging.dir}">
+ <fileset dir="${aj.dist.dir}/tools"/>
+ <fileset dir="${aj.dist.dir}/docs"/>
+ </copy>
+
+ <antcall target="create-installer">
+ <param name="installer.file"
+ location="${aj.installer.jar}"/>
+ <param name="staging.dir"
+ location="${installer.staging.dir}"/>
+ <param name="htmlSrc.dir"
+ location="${aspectj.modules.build.dir}/products/aspectj/install"/>
+ <param name="simpleClassName" value="ToolsInstaller"/>
+ </antcall>
+ <delete dir="${installer.staging.dir}"/>
+ </target>
+
+ <target name="docs-dist" depends="init">
+ <ant dir="${aspectj.modules.dir}/docs"
+ antfile="build.xml"
+ target="local-dist"
+ inheritAll="false"/> <!-- true? -->
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- boilerplate antcalls -->
+ <!-- ===================================================================== -->
+
+ <!-- for any-[module|product], define [module|product].name -->
+ <target name="any-module" depends="init">
+ <antcall target="build-module">
+ <param name="module.name" value="${module.name}"/>
+ </antcall>
+ </target>
+
+ <target name="any-product" depends="init">
+ <antcall target="build-product">
+ <param name="product.name" value="${product.name}"/>
+ </antcall>
+ </target>
+
+ <!-- literal targets -->
+ <target name="eajc" depends="init">
+ <antcall target="build-module-all">
+ <param name="module.name" value="org.aspectj.ajdt.core"/>
+ </antcall>
+ <echo message="use org.aspectj.ajdt.core-all.jar for eajc.jar"/>
+ </target>
+
+ <target name="ajbrowser-all">
+ <antcall target="build-module-all">
+ <param name="module.name" value="ajbrowser"/>
+ </antcall>
+ </target>
+
+ <target name="build">
+ <antcall target="build-module">
+ <param name="module.name" value="build"/>
+ </antcall>
+ </target>
+
+ <target name="aspectjtools-dist" depends="init"
+ description="build local distribution">
+ <antcall target="build-product">
+ <param name="product.name" value="tools"/>
+ </antcall>
+ </target>
+
+</project>
+
diff --git a/build/readme-build-module.html b/build/readme-build-module.html
new file mode 100644
index 000000000..e826af47a
--- /dev/null
+++ b/build/readme-build-module.html
@@ -0,0 +1,59 @@
+<html>
+<title>AspectJ build</title>
+<body>
+<h1>AspectJ build</h1>
+
+This build module contains taskdefs and resources for doing builds
+and checking source licenses.
+
+To do a build, use Ant to run
+<a href="build.xml">build.xml</a>
+from this directory.
+
+<p>
+The
+<a href="src/org/aspectj/internal/tools/ant/taskdefs/BuildModule.java">
+ BuildModule</a>
+taskdef implements an integrated module or product build.
+<u>Module builds</u> are based on the Eclipse .classpath file, and can produce
+a jar with the module classes, with two variations: (a) include only
+the module classes, or assemble the jar complete with all antecedent
+modules and libraries; and (b) compile the module(s) without any
+testing source or libraries. If there is a file {moduleName}.mf.txt
+in the module directory, it will be used as the manifest for the
+module jar file.
+
+<u>Product builds</u> are defined by introspection of a
+<a href="products">products</a> subdirectory like
+<a href="products/tools">products/tools</a> for the AspectJ tools installer.
+
+These have an <code>install</code> directory for installer resources
+and a <code>dist</code> directory containing all files belonging in
+the distribution, including 0-length placeholders for the module build
+results.
+
+<p>
+Top-level temporary build directories are prefixed "aj-",
+so you can safely destroy any such directory or ignore it
+in CVS or the Eclipse package explorer. By default the build script
+puts them at the same level as other modules.
+<p>
+<u>Updating this module</u>:
+
+Because the BuildModule taskdef extracts dependencies from the Eclipse
+.classpath file, there is no need to update build scripts when
+adding or removing modules or changing their dependencies, so long
+as they are all in the base modules directory (usually the base of
+the eclipse workspace.
+All required libraries are checked into the <code>lib</code> module.
+
+<p>The BuildModule taskdef makes some assumptions about the naming,
+position, and contents of module directories and files.
+Understand those (documented in
+<a href="src/org/aspectj/internal/tools/ant/taskdefs/BuildModule.java">
+ BuildModule.java</a>) before using non-standard module directories.
+
+<hr>
+
+</body>
+</html>
diff --git a/lib/.classpath b/lib/.classpath
new file mode 100644
index 000000000..988a4cb47
--- /dev/null
+++ b/lib/.classpath
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
+ <classpathentry kind="output" path=""/>
+</classpath>
diff --git a/lib/.project b/lib/.project
new file mode 100644
index 000000000..106aa246d
--- /dev/null
+++ b/lib/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>lib</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/lib/readme-lib-module.html b/lib/readme-lib-module.html
new file mode 100644
index 000000000..33ce54651
--- /dev/null
+++ b/lib/readme-lib-module.html
@@ -0,0 +1,44 @@
+<html>
+<title>AspectJ library module</title>
+<body>
+<h2>AspectJ library module</h2>
+
+This module primarily contains binary libraries from open-source projects,
+some of which are subject to licenses other than the Common Public License (CPL).
+Those not subject to CPL are not distributed in source or binary form with
+AspectJ (except for Apache's BCEL), but are used in the development of AspectJ.
+This module also contains some bootstrap libraries and test sources.
+
+<ul>
+ <li><a href="ant">ant</a>:
+ Ant 1.5.1 from
+ <a ="http:jakarta.apache.org/ant">http:jakarta.apache.org/ant</a>.
+ This contains a modified Ant script that works with our quicklook
+ and puts the optional tasks on the classpath by default.
+ Ant is available under the Apache Software License.
+ </li>
+ <li><a href="bcel">bcel</a>:
+ The Bytecode Engineering Library from
+ <a ="http:jakarta.apache.org/bcel">http:jakarta.apache.org/bcel</a>,
+ available under the Apache Software License.
+ </li>
+ <li><a href="build">build</a>: bootstrap libraries for the build process.
+ </li>
+ <li><a href="eclipse2.0">eclipse2.0</a>:
+ The AspectJ compiler is a patch to the Eclipse 2.0 compiler.
+ These are the non-compiler binaries. For the eclipse compiler
+ and patched, see the org.eclipse.jdt.core module.
+ This is available under the CPL.
+ </li>
+ <li><a href="junit">junit</a>:
+ JUnit 3.7 test libraries, available from
+ <a ="http:junit.org">junit.org</a> and under the CPL.
+ </li>
+ <li><a href="test">test</a>: bootstrap libraries for the test process.
+ These could be replaced with build products, to avoid the checked-in
+ versions being out of date, but these build products change rarely
+ (and almost never in binary-incompatible ways).
+ </li>
+</ul>
+</body>
+</html> \ No newline at end of file
diff --git a/runtime/.classpath b/runtime/.classpath
new file mode 100644
index 000000000..5e7014daf
--- /dev/null
+++ b/runtime/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="testsrc"/>
+ <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
+ <classpathentry kind="lib" path="/lib/junit/junit.jar" sourcepath="/lib/junit/junit-src.jar"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/runtime/.cvsignore b/runtime/.cvsignore
new file mode 100644
index 000000000..ee1d501c3
--- /dev/null
+++ b/runtime/.cvsignore
@@ -0,0 +1,3 @@
+bin
+ant.properties
+runtime.mf.txt
diff --git a/runtime/.project b/runtime/.project
new file mode 100644
index 000000000..91c0089c8
--- /dev/null
+++ b/runtime/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>runtime</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/util/.classpath b/util/.classpath
new file mode 100644
index 000000000..5e7014daf
--- /dev/null
+++ b/util/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="testsrc"/>
+ <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
+ <classpathentry kind="lib" path="/lib/junit/junit.jar" sourcepath="/lib/junit/junit-src.jar"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/util/.cvsignore b/util/.cvsignore
new file mode 100644
index 000000000..fe99505dc
--- /dev/null
+++ b/util/.cvsignore
@@ -0,0 +1,2 @@
+bin
+
diff --git a/util/.project b/util/.project
new file mode 100644
index 000000000..ee97704dd
--- /dev/null
+++ b/util/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>util</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>