On Sun, 13 Mar 2011 03:57:59 +0100, Colomban wrote:
Hey,
I didn't read all of the thread, so I might be missing something. But still.
PS we are only talking about gcc flags here but I think we only supprt gcc even on Windows, right Enrico?
Nope. We try to support ANSI C and so support any compatible compiler out there. Though, some years ago I tried compiling with MSVCC on Windows and Geany didn't compile out-of-the-box. I don't remember the exact problems but I also didn't care enough. MSVCC is probably not worth to be supported :D. But there are still other compilers like Intel's icc or suncc (is it called suncc? well, the compiler on Solaris).
Actually I check whether the compiler understand each flag, so it would be easy to support any compiler. I only talk about GCC warnings because I only know GCC's flags, but if somebody knows some other, we might add them.
Do you want to integrate these flags into the build system? I don't think this is a good idea. Such flags should be set outside of the build system by the developer/user, not automatically. This is why they are mentioned in HACKING.
We could maybe add a little wrapper script into the scripts/ directory which sets a bunch of compiler options we like, for convenience.
Below is a list of flags I currently use for Geany though I didn't touch this list for months actually.
export CFLAGS="-Wall -O2 -g -pipe -march=athlon64 \ -D_FORTIFY_SOURCE=2 \ -DGEANY_DEBUG \ -DGEANY_DISABLE_DEPRECATED \ -fno-common \ -funit-at-a-time \ -Waggregate-return \ -Wdeclaration-after-statement \ -Wdisabled-optimization \ -Wfloat-equal \ -Wformat=2 \ -Wformat-nonliteral \ -Wformat-security \ -Winit-self \ -Winline \ -Wmissing-field-initializers \ -Wmissing-format-attribute \ -Wmissing-include-dirs \ -Wmissing-noreturn \ -Wmissing-prototypes \ -Wnested-externs \ -Wpointer-arith \ -Wredundant-decls \ -Wshadow \ -Wsign-compare \ "
Regards, Enrico