Debugging ABCL compilation support; upgrade to JUnit-4.8.1.

Netbeans uses compiled directories before source.

Setting the property 'abcl.compile.lisp.skip' will skip the
compilation of the Lisp files which can be useful to debug under
Netbeans when debugging fundamental parts of ABCL.

Started to document useful Ant-based build knobs in
'build.properties.in'.

Added PathnameTest and StreamTest to Java unit tests.

Start documenting properties that affect the Ant build in
'build.properties.in'.
parent eb3c6ac0
# build.properties
# $Id: build.properties,v 1.23 2007-03-03 19:19:11 piso Exp $
# Contents show up in JAR Manifest in the Implementation-Source attribute
#version.src=[abcl]
# If set, ABCL attempts to perform incremental compilation
#abcl.build.incremental=true
# Skip the compilation of Lisp sources (for debugging)
#abcl.compile.lisp.skip=true
......@@ -76,6 +76,7 @@ For help on the automatic tests available, use the Ant target 'help.test'.
<patternset id="abcl.source.lisp.dist">
<include name="org/armedbear/lisp/boot.lisp"/>
<include name="org/armedbear/lisp/scripting/lisp/*.lisp" if="abcl.jsr-223.p"/>
<include name="**/*.lisp" if="abcl.compile.lisp.skip"/>
</patternset>
<patternset id="abcl.objects">
......@@ -269,7 +270,7 @@ For help on the automatic tests available, use the Ant target 'help.test'.
value="${src.dir}/org/armedbear/lisp/"/>
<property name="abcl.version.path"
value="${build.classes.dir}/org/armedbear/lisp/version"/>
<target name="abcl.stamp.version" depends="abcl.compile">
<target name="abcl.stamp.version" depends="abcl.compile" unless="abcl.compile.lisp.skip">
<!-- Determine which ABCL version we have just built by parsing
the output of LISP-IMPLEMENTATION-VERSION. -->
<!-- TODO As an optimization, we could possibly compare the timestamp
......@@ -607,14 +608,15 @@ ${basedir}/../cl-bench
<patternset id="abcl.test.source.java">
<!-- For now, we list tests explicitly, because we have to
enumerate them later to the JUnit test runner. -->
<include name="org/armedbear/lisp/FastStringBufferTest.java"/>
<include name="org/armedbear/lisp/*.java"/>
</patternset>
<property name="junit-4.5.path"
value="${abcl.ext.dir}/junit-4.5.jar"/>
<property name="junit.path"
value="${abcl.ext.dir}/junit-4.8.1.jar"/>
<path id="abcl.test.compile.classpath">
<pathelement location="${junit-4.5.path}"/>
<pathelement location="${junit.path}"/>
<pathelement location="${build.classes.dir}"/>
</path>
......@@ -623,18 +625,19 @@ ${basedir}/../cl-bench
<target name="abcl.ext.p">
<!--XXX generalize over enumeration of all contributions to
abcl.ext if we get more of them. -->
<available file="${junit-4.5.path}" property="abcl.ext.p"/>
<available file="${junit.path}" property="abcl.ext.p"/>
</target>
<target name="abcl.ext" depends="abcl.ext.p" unless="abcl.ext.p">
<mkdir dir="${abcl.ext.dir}"/>
<get src="http://downloads.sourceforge.net/junit/junit-4.5.jar?modtime=1218209625"
usetimestamp="true"
dest="${junit-4.5.path}"/>
<get
src="http://cloud.github.com/downloads/KentBeck/junit/junit-4.8.1.jar"
usetimestamp="true"
dest="${junit.path}"/>
</target>
<target name="abcl.test.compile"
depends="abcl.test.pre-compile,abcl.compile">
depends="abcl.test.pre-compile">
<mkdir dir="${abcl.test.classes.dir}"/>
<javac destdir="${abcl.test.classes.dir}"
classpathref="abcl.test.compile.classpath"
......@@ -658,6 +661,8 @@ ${basedir}/../cl-bench
classpathref="abcl.test.run.classpath"
classname="org.junit.runner.JUnitCore">
<arg value="org.armedbear.lisp.FastStringBufferTest"/>
<arg value="org.armedbear.lisp.PathnameTest"/>
<arg value="org.armedbear.lisp.StreamTest"/>
</java>
</target>
......
......@@ -18,6 +18,7 @@ debug.test.classpath=\
dist.dir=dist
dist.jar=${dist.dir}/abcl.jar
dist.javadoc.dir=${dist.dir}/javadoc
endorsed.classpath=
excludes=
file.reference.abcl-src=src
includes=org/armedbear/lisp/**/*.java,org/armedbear/lisp/**/*.lisp
......@@ -55,15 +56,15 @@ manifest.file=manifest.mf
meta.inf.dir=${src.dir}/META-INF
platform.active=default_platform
run.classpath=\
${javac.classpath}:\
${build.classes.dir}
${build.classes.dir}:\
${javac.classpath}
# Space-separated list of JVM arguments used when running the project
# (you may also define separate properties like run-sys-prop.name=value instead of -Dname=value
# or test-sys-prop.name=value to set system properties for unit tests):
run.jvmargs=
run.test.classpath=\
${javac.test.classpath}:\
${build.test.classes.dir}
${build.test.classes.dir}:\
${javac.test.classpath}
source.encoding=UTF-8
src.dir=${file.reference.abcl-src}
src.doc.dir=doc
......
......@@ -6,8 +6,12 @@
probably fail otherwise. -->
<import file="nbproject/build-impl.xml"/>
<target name="-post-compile">
<antcall target="abcl.compile.lisp"/>
<target name="-pre-compile" if="abcl.compile.lisp.skip">
<antcall target="abcl.copy.lisp"/>
</target>
<target name="-post-compile" unless="abcl.compile.lisp.skip">
<antcall target="abcl.compile.lisp" />
</target>
</project>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment