<div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">There's one other thing I wanted to put on our radar.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">While working with Eclipse CDT (and other IDEs), it is becoming apparent that having the build objects appear in the same folders as the source is a bit less than desirable. Most C/C++ projects tend to overcome this by having a separate build folder. We should try try to build to an external directory, e.g. build/<target>, where <target> is a configuration, and "build" is a peer directory of "src". (We presently don't have an src subdirectory, but this is ok.) This would allow us to keep the .o/.obj files out of the project view when inside of an IDE. As I'm sure you know, it also makes for an easier "clean" rule (rm -rf build/<target>). </div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Again, none of what I'm writing is a bug per se. It's just that I'd like to find a way to make it better for different ways of using the source code (or development workflows, as I like to call them).</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">It seems like the current Makefile structure lends itself to doing this change, since you are building up a list of files and then compiling all of them (presumably from the top level). But I might be missing something.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Anyway, I'll discuss this with you tomorrow, among other topics we have on our regular agenda. I can make an issue in our GitHub tracker for this, but I thought it would be good to discuss this first. We do have other priorities, so this is not urgent but one of those things that would put us on par with toolkits like MPICH, Globus, etc.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br>George</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div>George K. Thiruvathukal, PhD<br></div><div style="font-size:12.7272720336914px"><div style="font-size:12.7272720336914px"><i style="font-size:12.7272720336914px">Professor of Computer Science</i><span style="font-size:12.7272720336914px">, Loyola University Chicago</span><br></div><div style="font-size:12.7272720336914px"><span style="font-size:12.7272720336914px"><i>Director</i>, Center for Textual Studies and Digital Humanities</span></div><div style="font-size:12.7272720336914px"><span style="font-size:12.7272720336914px"><i>Guest Faculty</i>, Argonne National Laboratory, Math and Computer Science Division</span></div><div style="font-size:12.7272720336914px"><div style="font-size:12.7272720336914px">Editor in Chief, <a href="http://www.computer.org/portal/web/computingnow/cise" target="_blank">Computing in Science and Engineering</a> (IEEE CS/AIP)<br></div><div><span style="font-size:12.7272720336914px">(w) <a href="http://gkt.tv/" target="_blank">gkt.tv</a> </span><span style="font-size:12.7272720336914px">(v) 773.829.4872</span><br></div><div><span style="font-size:12.7272720336914px"><br></span></div></div></div></div></div></div></div></div>
<br><div class="gmail_quote">On Tue, Nov 4, 2014 at 4:40 PM, Boisvert, Sebastien <span dir="ltr"><<a href="mailto:boisvert@anl.gov" target="_blank">boisvert@anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Great !<br>
<span class=""><br>
> From: George K. Thiruvathukal [<a href="mailto:gkt@cs.luc.edu">gkt@cs.luc.edu</a>]<br>
</span>> Sent: Tuesday, November 04, 2014 4:38 PM<br>
<span class="im HOEnZb">> To: Boisvert, Sebastien<br>
> Cc: <a href="mailto:biosal@lists.cels.anl.gov">biosal@lists.cels.anl.gov</a><br>
> Subject: Re: [BIOSAL] Minimal build of thorium actor applications<br>
><br>
><br>
><br>
><br>
</span><div class="HOEnZb"><div class="h5">> ​Seb,<br>
><br>
><br>
> Just letting you know, everything is working! This is going to be really helpful for me (and, I hope, others).<br>
><br>
><br>
> Best,<br>
> George​<br>
><br>
><br>
><br>
> George K. Thiruvathukal, PhD<br>
><br>
> Professor of Computer Science, Loyola University Chicago<br>
><br>
> Director, Center for Textual Studies and Digital Humanities<br>
> Guest Faculty, Argonne National Laboratory, Math and Computer Science Division<br>
> Editor in Chief, Computing in<br>
>  Science and Engineering (IEEE CS/AIP)<br>
><br>
> (w) <a href="http://gkt.tv" target="_blank">gkt.tv</a> (v)<br>
>  773.829.4872<br>
><br>
><br>
><br>
><br>
><br>
><br>
><br>
> On Tue, Nov 4, 2014 at 3:10 PM, Boisvert, Sebastien<br>
> <<a href="mailto:boisvert@anl.gov">boisvert@anl.gov</a>> wrote:<br>
><br>
> Yes<br>
><br>
> Option list:<br>
> <a href="https://github.com/sebhtml/biosal/blob/master/Documentation/Compilation_Options.md" target="_blank">https://github.com/sebhtml/biosal/blob/master/Documentation/Compilation_Options.md</a><br>
><br>
><br>
> You probably want to use something like this:<br>
><br>
> make -j CONFIG_MPI=n CC=cc<br>
><br>
><br>
><br>
> > From: George K. Thiruvathukal [<a href="mailto:gkt@cs.luc.edu">gkt@cs.luc.edu</a>]<br>
> > Sent: Tuesday, November 04, 2014 2:45 PM<br>
> > To: Boisvert, Sebastien<br>
> > Cc:<br>
> <a href="mailto:biosal@lists.cels.anl.gov">biosal@lists.cels.anl.gov</a><br>
> > Subject: Re: [BIOSAL] Minimal build of thorium actor applications<br>
><br>
> ><br>
> ><br>
> ><br>
> ><br>
> > Hi Seb,<br>
> ><br>
> ><br>
> > This is fantastic news! If I pull from upstream (sebhtml/master), will I pick this up?<br>
> ><br>
> ><br>
> > George<br>
> ><br>
> ><br>
> ><br>
> > George K. Thiruvathukal, PhD<br>
> ><br>
> > Professor of Computer Science, Loyola University Chicago<br>
> ><br>
> > Director, Center for Textual Studies and Digital Humanities<br>
> > Guest Faculty, Argonne National Laboratory, Math and Computer Science Division<br>
> > Editor in Chief, Computing in<br>
> >  Science and Engineering (IEEE CS/AIP)<br>
> ><br>
> > (w)<br>
> <a href="http://gkt.tv" target="_blank">gkt.tv</a> (v)<br>
> >  773.829.4872<br>
> ><br>
> ><br>
> ><br>
> ><br>
> ><br>
> ><br>
> ><br>
> > On Tue, Nov 4, 2014 at 9:37 AM, Boisvert, Sebastien<br>
> > <<a href="mailto:boisvert@anl.gov">boisvert@anl.gov</a>> wrote:<br>
> ><br>
> > Following George's request, I added some options to do minimal builds:<br>
> ><br>
> > "-lrt" is no longer needed, there is a fallback path with gettimeofday.<br>
> ><br>
> > For MPI, I had to add "mock_transport" which only sets the rank to 0 and the size to 1.<br>
> ><br>
> >     The new minimal build only needs libm, libc, and libpthread.<br>
> ><br>
> >     linux-vdso and ld-linux-x86-64 are specific to the Linux operating system<br>
> >     and/or to the architecture. vdso (vsyscall) is used to invoke some system<br>
> >     calls directly from userspace for better performance. ld-linux is used<br>
> >     to load shared libraries.<br>
> ><br>
> >     $ make -j CONFIG_CLOCK_GETTIME=n CONFIG_MPI=n CONFIG_ZLIB=n CC=cc<br>
> >     $ ldd performance/latency_probe/latency_probe<br>
> >             linux-vdso.so.1 =>  (0x00007fffc7bff000)<br>
> >             libm.so.6 => /lib64/libm.so.6 (0x0000003f19a00000)<br>
> >             libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003f1a200000)<br>
> >             libc.so.6 => /lib64/libc.so.6 (0x0000003f19600000)<br>
> >             /lib64/ld-linux-x86-64.so.2 (0x0000003f19200000)<br>
> ><br>
> ><br>
> > That should be easier like this to build on POWER7 or on k1om (or in Eclipse).<br>
> ><br>
> > George:<br>
> ><br>
> > You will need to add the makefile options CONFIG_CLOCK_GETTIME=n CONFIG_MPI=n CONFIG_ZLIB=n CC=cc<br>
> > in Eclipse I think.<br>
> > _______________________________________________<br>
> > BIOSAL mailing list<br>
> ><br>
> <a href="mailto:BIOSAL@lists.cels.anl.gov">BIOSAL@lists.cels.anl.gov</a><br>
> ><br>
> <a href="https://lists.cels.anl.gov/mailman/listinfo/biosal" target="_blank">https://lists.cels.anl.gov/mailman/listinfo/biosal</a><br>
> ><br>
> ><br>
> ><br>
> ><br>
><br>
><br>
><br>
><br>
><br>
</div></div></blockquote></div><br></div>