Skip to content

Commit 1551fb5

Browse files
puredangerstuarthalloway
authored andcommitted
CLJ-1834 Build support for testing with and without direct linking
Signed-off-by: Stuart Halloway <[email protected]>
1 parent f0de6ee commit 1551fb5

File tree

2 files changed

+23
-0
lines changed

2 files changed

+23
-0
lines changed

build.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@
2828
<property name="clojure_jar" location="clojure-${clojure.version.label}.jar"/>
2929
<property name="clojure_noversion_jar" location="clojure.jar"/>
3030

31+
<property name="directlinking" value="true"/>
32+
3133
<target name="init" depends="clean">
3234
<tstamp/>
3335
<mkdir dir="${build}"/>
@@ -88,13 +90,15 @@
8890
<mkdir dir="${test-classes}"/>
8991
<javac srcdir="${jtestsrc}" destdir="${test-classes}" includeJavaRuntime="yes"
9092
debug="true" source="1.6" target="1.6" includeantruntime="no"/>
93+
<echo>Direct linking = ${directlinking}</echo>
9194
<java classname="clojure.lang.Compile"
9295
classpath="${test-classes}:${test}:${build}:${cljsrc}"
9396
failonerror="true"
9497
fork="true">
9598
<sysproperty key="clojure.compile.path" value="${test-classes}"/>
9699
<!--<sysproperty key="clojure.compiler.elide-meta" value="[:doc]"/>-->
97100
<!--<sysproperty key="clojure.compiler.disable-locals-clearing" value="true"/>-->
101+
<sysproperty key="clojure.compiler.direct-linking" value="${directlinking}"/>
98102
<arg value="clojure.test-clojure.protocols.examples"/>
99103
<arg value="clojure.test-clojure.genclass.examples"/>
100104
<arg value="clojure.test-clojure.compilation.load-ns"/>
@@ -109,6 +113,7 @@
109113
<java classname="clojure.main" failonerror="true" fork="true">
110114
<sysproperty key="clojure.test-clojure.exclude-namespaces"
111115
value="#{clojure.test-clojure.compilation.load-ns}"/>
116+
<sysproperty key="clojure.compiler.direct-linking" value="${directlinking}"/>
112117
<classpath>
113118
<pathelement path="${maven.test.classpath}"/>
114119
<path location="${test-classes}"/>
@@ -125,6 +130,7 @@
125130
depends="compile-tests"
126131
unless="maven.test.skip">
127132
<java classname="clojure.main" failonerror="true" fork="true">
133+
<sysproperty key="clojure.compiler.direct-linking" value="${directlinking}"/>
128134
<classpath>
129135
<pathelement path="${maven.test.classpath}"/>
130136
<path location="${test-classes}"/>

pom.xml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,10 @@
3838
<url>[email protected]:clojure/clojure.git</url>
3939
</scm>
4040

41+
<properties>
42+
<directlinking>true</directlinking>
43+
</properties>
44+
4145
<dependencies>
4246
<dependency>
4347
<groupId>org.codehaus.jsr166-mirror</groupId>
@@ -221,6 +225,19 @@
221225
</build>
222226

223227
<profiles>
228+
<!-- Use "mvn -Ptest-direct" or "mvn -Ptest-no-direct" to choose testing with direct linking -->
229+
<profile>
230+
<id>test-direct</id>
231+
<properties>
232+
<directlinking>true</directlinking>
233+
</properties>
234+
</profile>
235+
<profile>
236+
<id>test-no-direct</id>
237+
<properties>
238+
<directlinking>false</directlinking>
239+
</properties>
240+
</profile>
224241
<profile>
225242
<!-- "mvn -Pdistribution package" builds a .zip file -->
226243
<id>distribution</id>

0 commit comments

Comments
 (0)