<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>Target.i3/m3 look up to date.<br>Is your host toolset very old?<br><br>https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-sys/m3middle/src/Target.i3<br><br>Revision <b>1.59</b>: <a href="https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/%7Echeckout%7E/cm3/m3-sys/m3middle/src/Target.i3?rev=1.59;content-type=text%2Fplain" class="download-link">download</a> - view: <a href="https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-sys/m3middle/src/Target.i3?rev=1.59;content-type=text%2Fplain" class="display-link">text</a>, <a href="https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-sys/m3middle/src/Target.i3?rev=1.59;content-type=text%2Fx-cvsweb-markup" class="display-link">markup</a>, <a href="https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-sys/m3middle/src/Target.i3?annotate=1.59">annotated</a> - <a href="https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-sys/m3middle/src/Target.i3?r1=1.59#rev1.59">select for diffs</a><br>
<i>Sat Jun 19 06:56:32 2010 </i> (3 years, 3 months ago) by <i>jkrell</i><br>
Branches: <a href="https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-sys/m3middle/src/Target.i3?only_with_tag=MAIN">MAIN</a><br>
Diff to: previous 1.58: <a href="https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-sys/m3middle/src/Target.i3.diff?r1=1.58;r2=1.59">preferred</a>, <a href="https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-sys/m3middle/src/Target.i3.diff?r1=1.58;r2=1.59;f=u">unified</a><br>
Changes since revision 1.58: +2 -0 lines<br>
<pre class="log">add ARMEL_LINUX with correct jmbuf size/align
guessing about alignment
"ARM" is an older ABI
"ARME" is the usual modern ABI
L for little endian
<br>scripts/update.py ?<br><br></pre> - Jay<br><br><br><br><div><hr id="stopSpelling">From: jay.krell@cornell.edu<br>To: mika@async.caltech.edu<br>Date: Mon, 14 Oct 2013 17:08:22 +0000<br>CC: m3devel@elegosoft.com<br>Subject: Re: [M3devel] building CM3 on a Raspberry Pi?<br><br>

<style><!--
.ExternalClass .ecxhmmessage P {
padding:0px;
}

.ExternalClass body.ecxhmmessage {
font-size:12pt;
font-family:Calibri;
}

--></style>
<div dir="ltr"><pre> > Fatal Error: unrecognized target machine: TARGET = ARMEL_LINUX<br><br><br>Darn. That suggests I didn't get as far as..<br>update m3-sys/m3middle/src/Target.i3 and Target.m3.<br><br><br> The three facts needed are: <br>   endian -- it is somewhat automatic, e.g. I386_anything is little endian  <br>   word size -- will default to 32 unless "64" is in the name  <br>   jmpbuf size -- an overestimate is ok, or use <a href="https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/scripts/config/jmpbuf.c" target="_blank">https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/scripts/config/jmpbuf.c</a> <br>     This is particularly high on the list of things to fix/remove. <br><br><br>You might get a few similar errors around the tree.<br>Historically there were target lists in a few places,<br>but I have reduced them significantly, i.e. switching on kernel<br>and processor instead of kernel/processor cross product.<br><br><br>The main other piece of code that changes for almost every<br>target is getting the instruction counter out of a context_t<br>for faults (except NetBSD which abstracts it).<br>See <a href="https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-libs/m3core/src/runtime/POSIX/RTSignalC.c" target="_blank">https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-libs/m3core/src/runtime/POSIX/RTSignalC.c</a><br>But it looks like I already handled Linux/arm.<br><br><br>  <br> - Jay<br></pre><br><br><div><hr id="ecxstopSpelling">From: jay.krell@cornell.edu<br>To: mika@async.caltech.edu<br>CC: m3devel@elegosoft.com<br>Subject: RE: [M3devel] building CM3 on a Raspberry Pi?<br>Date: Mon, 14 Oct 2013 16:59:21 +0000<br><br>

<style><!--
.ExternalClass .ecxhmmessage P {
padding:0px;
}

.ExternalClass body.ecxhmmessage {
font-size:12pt;
font-family:Calibri;
}


--></style>
<div dir="ltr"><pre> > Fatal Error: unrecognized backend mode: C<br><br><br>Make sure you ./update.py your main toolset first.<br>Also, while the C backend was working a year ago, for quite<br>a while I did not change the builder to know about it directly.<br>I was going via m3cgcat.<br>So you need to be fairly current, or else modify the<br>config files a different way, and have it be slower.<br><br><br> - Jay<br></pre><br><br><div>> To: jay.krell@cornell.edu<br>> CC: m3devel@elegosoft.com<br>> Subject: Re: [M3devel] building CM3 on a Raspberry Pi?<br>> Date: Mon, 14 Oct 2013 09:40:08 -0700<br>> From: mika@async.caltech.edu<br>> <br>> Jay writes:<br>> >./../gcc-4.7/libiberty/stack-limit.c:52: error: `u_quad_t' undeclared (first=<br>> > use in this function)if [ x"" !=3D x ]; then \<br>> ><br>> ><br>> >Maybe I removed too much. I.e. libquadmath. That should be easy to fix and/o=<br>> >r switch to C backend.<br>> ><br>> ><br>> >I forgot: besides switching the config file: add the parameter "c" to boot1.=<br>> >py.<br>> ><br>> ><br>> <br>> If I put in config-no-install/ARMEL_LINUX<br>> <br>> M3_BACKEND_MODE="C"<br>> <br>> and run<br>> <br>> ./boot1.py c ARMEL_LINUX<br>> <br>> the following happens:<br>> <br>> ...<br>> rm -f /nfs/site/home/mnystroe/work/cm3/bin/cm3.cfg<br>> rm -f /nfs/site/home/mnystroe/work/cm3/bin/cm3cfg.common<br>> rm -f /nfs/site/home/mnystroe/work/cm3/bin/gnuld.common<br>> cp -Pv /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-sys/cminstall/src/config-no-install/cm3.cfg /nfs/site/home/mnystroe/work/cm3/bin/cm3.cfg<br>> == package /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-win/import-libs ==<br>> <br>>  +++ /nfs/site/home/mnystroe/work/cm3/bin/cm3    -build -override -DROOT=/nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3 -boot -keep -DM3CC_TARGET=ARMEL_LINUX +++<br>> --- building in ARMEL_LINUX ---<br>> <br>>  ==> /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-win/import-libs done<br>> <br>> == package /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-libs/m3core ==<br>> <br>>  +++ /nfs/site/home/mnystroe/work/cm3/bin/cm3    -build -override -DROOT=/nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3 -boot -keep -DM3CC_TARGET=ARMEL_LINUX +++<br>> --- building in ARMEL_LINUX ---<br>> <br>> <br>> Fatal Error: unrecognized backend mode: C<br>> <br>>  *** execution of [<function _BuildLocalFunction at 0x2aaaab5728c0>] failed ***<br>> <br>> <br>> But if I remove M3_BACKEND_MODE from ARMEL_LINUX and run the same command, the following:<br>> <br>> ...<br>> rm -f /nfs/site/home/mnystroe/work/cm3/bin/cm3cfg.common<br>> rm -f /nfs/site/home/mnystroe/work/cm3/bin/gnuld.common<br>> cp -Pv /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-sys/cminstall/src/config-no-install/cm3.cfg /nfs/site/home/mnystroe/work/cm3/bin/cm3.cfg<br>> == package /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-win/import-libs ==<br>> <br>>  +++ /nfs/site/home/mnystroe/work/cm3/bin/cm3    -build -override -DROOT=/nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3 -boot -keep -DM3CC_TARGET=ARMEL_LINUX +++<br>> --- building in ARMEL_LINUX ---<br>> <br>>  ==> /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-win/import-libs done<br>> <br>> == package /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-libs/m3core ==<br>> <br>>  +++ /nfs/site/home/mnystroe/work/cm3/bin/cm3    -build -override -DROOT=/nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3 -boot -keep -DM3CC_TARGET=ARMEL_LINUX +++<br>> --- building in ARMEL_LINUX ---<br>> <br>> <br>> Fatal Error: unrecognized target machine: TARGET = ARMEL_LINUX<br>> <br>>  *** execution of [<function _BuildLocalFunction at 0x2aaaab5728c0>] failed ***<br>> <br>> <br></div>                                     </div></div>                                        </div></div>                                        </div></body>
</html>