<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Jul 26, 2010, at 6:48 AM, Aron Ahmadia wrote:</div><br class="Apple-interchange-newline"><br></div><div> Aron,</div><div><br></div><div> We are violently opposed to using <span class="Apple-style-span" style="color: rgb(84, 0, 0); ">environment variables to set configure options. It is a terrible interface because it is way too easy for people to screw up, they set some environmental variables in their .login files and then forget they set them and we waste hours trying to debug what has gone wrong. We consider the autoconf people to be numbskills for introducing them.</span></div><div><span class="Apple-style-span" style="color: rgb(84, 0, 0); "><br></span></div><div><span class="Apple-style-span" style="color: rgb(84, 0, 0); "> I want Satish to add code to ./config/configure.py to check for any environmental variables that are set and tell the user to unset them before calling ./configure and to remove all uses of them by BuildSystem. For some reason they still exist in places in BuildSystem and Satish hasn't added code to reject them. I guess some people like the hassle of ill-defined user interfaces.</span></div><div><span class="Apple-style-span" style="color: rgb(84, 0, 0); "><br></span></div><div><span class="Apple-style-span" style="color: rgb(84, 0, 0); "> Matt and Satish, can we finally fix this for once and for all?</span></div><div><span class="Apple-style-span" style="color: rgb(84, 0, 0); "><br></span></div><div><span class="Apple-style-span" style="color: rgb(84, 0, 0); "> Barry</span></div><div><span class="Apple-style-span" style="color: rgb(84, 0, 0); "><br></span></div><div><font class="Apple-style-span" color="#540000"><br></font></div><div><font class="Apple-style-span" color="#540000"><br></font><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"> A<br></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">On Mon, Jul 26, 2010 at 11:42 AM, Aron Ahmadia <<br></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><a href="mailto:aron.ahmadia@kaust.edu.sa">aron.ahmadia@kaust.edu.sa</a>> wrote:<br></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">Hey Matt,<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">It seems to me that when I tell PETSc how to compile/link, it should<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">listen. More specifically, if I have set the environment variables CC,<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">CFLAGS, CXX, CXXFLAGS, LDFLAGS, and FC, and I haven't re-specified them in<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">configure, they should be respected.<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">Instead, it goes digging around for an MPI compiler (oh really<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">BuildSystem, you know which compiler I want better than I do?) and throws<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">away my entire environment. So I have to hamfist around it like this:<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">./petsc-shaheen-process.py --with-hdf5=1 --with-parmetis=1<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">--prefix=/opt/share/ksl/petsc/3.1.3/ppc450d -CC=$CC -CXX=$CXX -FC=$FC<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">--CFLAGS=$CFLAGS --CXXFLAGS=$CXXFLAGS --FFLAGs=$FFLAGS --LDFLAGS=$LDFLAGS<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">It still warns me that it's using environment variables, even when I<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">have to shove them down its throat.<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">I can also take a crack at fixing this myself, unless there's some<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">flag for doing this I might be missing.<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">A<br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">--<br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">What most experimenters take for granted before they begin their<br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">experiments is infinitely more interesting than any results to which their<br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">experiments lead.<br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">-- Norbert Wiener<br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><br></blockquote><br><div dir="ltr">Also, you can see from the configure log that BuildSystem is blatantly disregarding the compiler preferences I pass in on the command line.<div><br></div><div>A<br><br><div class="gmail_quote">On Mon, Jul 26, 2010 at 12:27 PM, Aron Ahmadia <span dir="ltr"><<a href="mailto:aron.ahmadia@kaust.edu.sa">aron.ahmadia@kaust.edu.sa</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div dir="ltr">This is the blas-lapack not being detected:<div><br></div><div><div>aron@fen1:~/process/installs/builddir_ppc64/petsc-3.1-p3.bgp> printenv LDFLAGS</div>
<div> -L/opt/share/ksl/zlib/1.2.5/ppc450d/lib -R/opt/share/ksl/zlib/1.2.5/ppc450d/lib -lz -lz -L/opt/share/ksl/hdf5/1.8.5/ppc450d/lib -lhdf5_fortran -lhdf5 -lhdf5hl_fortran -lhdf5_hl -L/opt/share/ksl/parmetis/3.1.1/ppc450d/lib -lparmetis -lmetis -L/opt/share/ksl/blas/pdc/ppc450d/lib -lblas -L/opt/share/ksl/blas/pdc/ppc450d/lib -lblas -L/opt/share/ksl/lapack/pdc/ppc450d/lib -llapack</div>
<div><br></div><div><div>./petsc-shaheen-process.py --with-hdf5=1 --with-parmetis=1 --prefix=/opt/share/ksl/petsc/3.1.3/ppc450d -CC=$CC -CXX=$CXX -FC=$FC --CFLAGS=$CFLAGS --CXXFLAGS=$CXXFLAGS --FFLAGs=$FFLAGS --LDFLAGS=$LDFLAGS --with-hdf5-dir=/opt/share/ksl/hdf5/1.8.5/ppc450d/ --with-parmetis-dir=/opt/share/ksl/parmetis/3.1.1/ppc450d/</div>
</div><div><br></div><font color="#888888"><div>A</div></font><div><div></div><div class="h5"><br><div class="gmail_quote">On Mon, Jul 26, 2010 at 12:18 PM, Aron Ahmadia <span dir="ltr"><<a href="mailto:aron.ahmadia@kaust.edu.sa" target="_blank">aron.ahmadia@kaust.edu.sa</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">can I pass in a list of directories for buildsystem to put on the path when I specify hdf5-dir? For whatever reason buildsystem is keeping the libraries I specified in ldflags but throwing away my search paths...<div>
<br></div><div><font color="#888888">A</font><div><div></div><div><br><br><div class="gmail_quote">On Mon, Jul 26, 2010 at 12:17 PM, Aron Ahmadia <span dir="ltr"><<a href="mailto:aron.ahmadia@kaust.edu.sa" target="_blank">aron.ahmadia@kaust.edu.sa</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">I'll send you the configure log. It's not doing that. Now I can't get it to detect HDF5 with z-lib compression because it throws away my LDFLAGS when it tries to build hdf5 which requires libz to be on the library path.<div>
<br></div><div><font color="#888888">A</font><div><div></div><div><br><br><div class="gmail_quote">On Mon, Jul 26, 2010 at 12:08 PM, Matthew Knepley <span dir="ltr"><<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>On Mon, Jul 26, 2010 at 6:50 PM, Aron Ahmadia <span dir="ltr"><<a href="mailto:aron.ahmadia@kaust.edu.sa" target="_blank">aron.ahmadia@kaust.edu.sa</a>></span> wrote:<br></div><div class="gmail_quote">
<div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">Also, it doesn't check to see if the blas/lapack are already available through the user's environment, it immediately starts popping on random libraries...</div></blockquote><div><br></div></div><div>
I do not understand what you mean by "available through the user env". It definitely checks for BLAS/LAPACK</div>
<div>with no args first (other than -lblas -llapack).</div><div><br></div><div> Matt</div><div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div><font color="#888888">A</font><div><div></div><div><br><br><div class="gmail_quote">
On Mon, Jul 26, 2010 at 11:42 AM, Aron Ahmadia <span dir="ltr"><<a href="mailto:aron.ahmadia@kaust.edu.sa" target="_blank">aron.ahmadia@kaust.edu.sa</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div>Hey Matt,</div><div><br></div>It seems to me that when I tell PETSc how to compile/link, it should listen. More specifically, if I have set the environment variables CC, CFLAGS, CXX, CXXFLAGS, LDFLAGS, and FC, and I haven't re-specified them in configure, they should be respected.<div>
<br></div><div>Instead, it goes digging around for an MPI compiler (oh really BuildSystem, you know which compiler I want better than I do?) and throws away my entire environment. So I have to hamfist around it like this:</div>
<div><br></div><div><div>./petsc-shaheen-process.py --with-hdf5=1 --with-parmetis=1 --prefix=/opt/share/ksl/petsc/3.1.3/ppc450d -CC=$CC -CXX=$CXX -FC=$FC --CFLAGS=$CFLAGS --CXXFLAGS=$CXXFLAGS --FFLAGs=$FFLAGS --LDFLAGS=$LDFLAGS</div>
</div><div><br></div><div>It still warns me that it's using environment variables, even when I have to shove them down its throat.</div><div><br></div><div>I can also take a crack at fixing this myself, unless there's some flag for doing this I might be missing.</div>
<div><br></div><div>A</div></div>
</blockquote></div><br></div></div></div></div>
</blockquote></div></div><br><br clear="all"><div><div></div><div><br>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
-- Norbert Wiener<br>
</div></div></blockquote></div><br></div></div></div></div>
</blockquote></div><br></div></div></div></div>
</blockquote></div><br></div></div></div></div>
</blockquote></div><br></div></div>
</blockquote></div><br></body></html>