<html>#2304: simplify cross compiling Cactus
<table style='border-spacing: 1ex 0pt; '>
<tr><td style='text-align:right'> Reporter:</td><td>Roland Haas</td></tr>
<tr><td style='text-align:right'>   Status:</td><td>new</td></tr>
<tr><td style='text-align:right'>Milestone:</td><td></td></tr>
<tr><td style='text-align:right'>  Version:</td><td></td></tr>
<tr><td style='text-align:right'>     Type:</td><td>enhancement</td></tr>
<tr><td style='text-align:right'> Priority:</td><td>minor</td></tr>
<tr><td style='text-align:right'>Component:</td><td>Cactus</td></tr>
</table>

<p>Cactus can be cross compiled, and this was done regularly in the past (so I am told).</p>
<p>Nowadays cross compiling is less common, but one case where it is useful is for KNL nodes with a SkyLake (or similar) login nodes. Code compiled for the KNL architecture will fail to run on SkyLake (aborts at startup if the Intel compiler is used), making cross compiling interesting.</p>
<p>This pull request:</p>
<p><a data-is-external-link="true" href="https://bitbucket.org/cactuscode/cactus/pull-requests/70/rhaas-cross-compile/diff" rel="nofollow">https://bitbucket.org/cactuscode/cactus/pull-requests/70/rhaas-cross-compile/diff</a></p>
<p>simplifies cross compiling, by pulling in some more modern autoconf macros that let one detect eg type sizes (sizeof) when cross  compiling, as well as trying to read ENDIANESS (which cannot be detected while compiling only) from the “well known” include files.</p>
<p>Together with changes in required ExternalLibraries one can use this to eg cross compile for the KNL compute nodes on Argonne’s theta cluster.</p>
<p>--<br/>
Ticket URL: <a href='https://bitbucket.org/einsteintoolkit/tickets/issues/2304/simplify-cross-compiling-cactus'>https://bitbucket.org/einsteintoolkit/tickets/issues/2304/simplify-cross-compiling-cactus</a></p>
</html>