On Wed, 28 Nov 2012, Kirk, Benjamin (JSC-EG311) wrote: > Yeah, but with a --prefix you can put a pure opt somewhere and a > gprof, oprofile, vtune, and whatever else comes along somewhere > else. To me anyway this is much preferable to maintaining multiple > method rules and targets.
Our entire oprofile support required just: 2 compiler.m4 lines to pick appropriate flags in gcc and intel cases. 8 Make.common.in lines to accept both METHOD="oprof" and "oprofile" 5 Make.common.in lines to add appropriate flags, That's about the level of effort (even before amortizing over 5 years) that would be required just to double-check the oprofile website to make sure you got the right flags before passing in libmesh_CXXFLAGS and libmesh_CFLAGS manually for a single configure. Adding such features via automake didn't become an order of magnitude harder, did it? It looked as if ever since you added contrib/Make.common things have been pretty clean in branch too. > opt,dbg, and devel are materially different not so much because of > the compiler flags (important, but doesn't change the fundamental > nature of the code being compiled) but rather the CPPFLAGS - > -DNDEBUG, -DDEBUG, <> respectively. Making users set their own CXXFLAGS and CFLAGS, but not their own CPPFLAGS, seems a bit arbitrary. > Aside - my understanding is the only cost to "-g" is file size, Any idea whether this affects cache use? On most systems I don't care whether every binary is dragging around megabytes of debug information, and I don't care whether ld.so (or whatever) has some extra startup time sorting through that, but it would be nice to be sure that the debugging symbols don't get into (and force anything else out of) cache when code pages are loaded. > and there are 'make install-strip' targets for that for those who > care - it will strip the symbols at install time. That's why the > default CXXFLAGS unless you do something special become '-g -O2'. I'd forgotten about "make install-strip" - nice! Do you know if there's any simple automake support for separated debug-info files? http://sourceware.org/gdb/onlinedocs/gdb/Separate-Debug-Files.html --- Roy ------------------------------------------------------------------------------ Keep yourself connected to Go Parallel: INSIGHTS What's next for parallel hardware, programming and related areas? Interviews and blogs by thought leaders keep you ahead of the curve. http://goparallel.sourceforge.net _______________________________________________ Libmesh-devel mailing list Libmesh-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libmesh-devel