Changeset 12430


Ignore:
Timestamp:
02/08/10 07:46:58 (13 years ago)
Author:
Mark Evenson
Message:

Lisp compilation no longer writes build to temporary file.

The way to not confuse ABCL under Windows that pathnames starting in a
drive letter are not Lisp packages is solved by using the
'inputstring' attribute to the <java> task.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/build.xml

    r12419 r12430  
    221221    <path id="abcl.lisp.output.path"
    222222          location="${build.classes.dir}/org/armedbear/lisp/"/>
     223    <pathconvert dirsep="/" property="abcl.lisp.output" refid="abcl.lisp.output.path"/>
    223224   
    224225    <target name="abcl.compile.lisp"
    225226      depends="abcl.copy.lisp,abcl.compile.java,abcl.fasls.uptodate"
    226227      unless="abcl.fasls.uptodate.p">
    227 
    228       <!-- The following shenanigans are necessary to get something
    229            that ABCL under Windows can parse as a pathname with the
    230            drive syntax not being interpreted as a Lisp package
    231            namespace, and with backslash characters not starting
    232            escape sequences.  -->
    233       <tempfile property="abcl.compile.lisp.tmp" suffix=".lisp"/>
    234 
    235       <echo file="${abcl.compile.lisp.tmp}">
    236       (compile-system :zip nil :quit t
    237           :output-path "${toString:abcl.lisp.output.path}${file.separator}")
    238       </echo>
    239 
    240       <tempfile property="abcl.compile.lisp.tmp.2"  suffix=".lisp"/>
    241      
    242       <copy file="${abcl.compile.lisp.tmp}"
    243             tofile="${abcl.compile.lisp.tmp.2}">
    244    <filterchain>
    245       <replacestring from="\" to="/"/>
    246    </filterchain>
    247       </copy>
    248 
    249       <java classpath="${build.classes.dir}"
     228      <java classpath="${build.classes.dir}"
    250229      fork="true"
    251230      failonerror="true"
     231      inputstring="(compile-system :zip nil :quit t :output-path &quot;${abcl.lisp.output}/&quot;)'"
    252232      classname="org.armedbear.lisp.Main">
    253233        <jvmarg value="-Dabcl.home=${abcl.home.dir}${file.separator}"/>
    254234  <arg value="--noinit"/>
    255   <arg value="--load"/>
    256   <arg value="${abcl.compile.lisp.tmp.2}"/>
    257235      </java>
    258             <delete file="${abcl.compile.lisp.tmp}"/>
    259       <delete file="${abcl.compile.lisp.tmp.2}"/>
    260236    </target>
    261237
     
    723699      <echo>Finished recording test output in ${abcl.test.log.file}.</echo>
    724700    </target>
    725 
     701   
    726702    <target name="abcl.release"
    727703            depends="abcl.binary.tar,abcl.source.tar,abcl.binary.zip,abcl.source.zip">
Note: See TracChangeset for help on using the changeset viewer.