On Sat, 24 Mar 2012, Jungho Lee wrote:

>> roystgnr@mycroft:~/libmesh/svn$ METHOD=dbg make echo | grep O2
>> roystgnr@mycroft:~/libmesh/svn$
>
> That's odd to me. Where do the flags come from?

A very good question.  Email me (private email; as you correctly
guessed we don't like enormous posts to the list) your config.log
and Make.common?  My best guess now is that clang isn't recognized by
our m4/compilers.m4 file, it falls through to the "No specific
options" case, and your FLAGS for every METHOD then just get set to
whatever's in the corresponding environment variable at configure
time.

>> I find "./configure && make && METHOD=dbg make" fairly convenient,
>
> This is what I meant. "./configure --enable-debug && make" vs.
> "./configure --disable-debug && make" much like every other package
> I've dealt with.

And then you get either an opt build *or* a debug build; currently we
give you an opt build *and* a debug build.  You can then run "make &&
METHOD=dbg make" in your application directories too, and switch
between myapp-opt and myapp-dbg on the fly, which is pretty convenient
to me.

And much more than "pretty convenient" to others - based on recent
libmesh-devel discussions, if Ben Kirk tries to switch us to automake
without keeping some form of the multiple-simultaneous-build-options
functionality intact, there's going to be violence.  ;-)

But if totally separate builds is what you want, then ironically an
unrecognized compiler ought to make that easy to get: 
"CFLAGS='-O0 -g -pedantic ...' CXXFLAGS=etcetera ./configure" in one
copy of the libMesh root directory, and
"CFLAGS='-O3 ...' CXXFLAGS=etcetera ./configure" in another copy.

>> If clang does need its own special snowflake options too I'd like
>> to figure out what they are so we can add a entry to m4/compiler.m4
>> accordingly.
>
> I would like to know as well but currently have no idea.

Is this clang from the LLVM project?  It looks like there's both
Fedora and Ubuntu packages for that; if I can get either of those
working then I'll see what I can figure out tonight.

In any case, I'd still suggest sending them a bug report if you can
get their compiler to segfault.  Compiler bugs are scary things; say a
prayer to Saint Hopper that this one was a compile-time crash with a
loud error message rather than a runtime-crash from silently corrupted
binary output.
---
Roy

------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to