On Thu, Mar 4, 2010 at 8:54 AM, Will Coleda <[email protected]> wrote: > On Thu, Mar 4, 2010 at 2:58 AM, François Perrad > <[email protected]> wrote: >> 2010/3/4 Will Coleda <[email protected]>: >>> >>> This branch: >>> - is warnings clean on GCC. (but probably nothing else) >>> - removes tools/build/cc_flags.pl - all compilation is now done via >>> straight makefile rules (and now the actual compiler command is >>> visible, where it was hidden in trunk.) >>> - eliminates a bunch of unused static functions, variables and other >>> warnings (instead of skipping them as we used to.) >>> - creates a @foo::bar@ syntax for makefile substitution - if foo::bar >>> is present, it's used, otherwise we fall back to foo. >>> - eliminates "replace_slashes" in the makefile. (and uses @slash@ in >>> the few cases where it is necessary, i.e. command paths.) >>> - kills the legacy INVERSE_CONDITIONED_LINE syntax. >>> - makes compilers/imcc/Rules.mak a generated file so we can use the >>> makefile.in syntax. >>> - eliminates most of config's auto:cgoto - these are now just part of >>> the makefile. >>> - updates config's init::optimize to put the optimize flags in >>> @optimize@, with file-specific overrides, and update all invocations >>> of CC to use this config var. >>> - update config's auto::warnings to keep track of per-file warnings >>> overrides in a hopefully easy to use data structure that should allow >>> for additions other than the current gcc/g++ variants; don't expose as >>> much of our decision making process here in config vars as we used to. >>> break out warnings into @ccwarn@ instead of adding them to CFLAGS. >>> generate file specific overrides (and use them in the makefiles). >>> - move g++ vs. gcc check out of auto::warnings into auto::gcc >>> - fix test file used to see if warnings are valid to be warnings clean >>> - some valid warnings were not being picked up because of this. >>> >>> >>> Needs testing on sun's CC and amd64, and windows. >>> >> >> FAIL with mingw (gcc 3.4.5) >> >> gcc -I./include -I./include/pmc -DWIN32 -DHASATTRIBUTE_CONST >> -DHASATTRIBUTE_DEPRECATED -DHASATTRIBUTE_MALLOC >> -DHASATTRIBUTE_NONNULL -DHASATTRIBUTE_NORETURN -DHASATTRIBUTE_PURE >> -DHASATTRIBUTE_UNUSED -DHASATTRIBUTE_WARN_UNUSED_RESULT >> -DDISABLE_GC_DEBUG=1 -DNDEBUG -DHAS_GETTEXT -I >> C:\icu-4.2.1\icu\include -DHAVE_COMPUTED_GOTO -s -O2 >> -falign-functions=16 -fvisibility=hidden -Isrc/string -o >> src/string/api.o -c src/string/api.c >> cc1.exe: error: unrecognized command line option "-fvisibility=hidden" >> make: *** [src/string/api.o] Error 1 >> >> C:\fperrad\Parrot\rm_cflags>gcc -v >> Reading specs from C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/specs >> Configured with: ../gcc-3.4.5-20060117-3/configure --with-gcc >> --with-gnu-ld --with-gnu-as --host=mingw32 --target=mingw32 >> --prefix=/mingw --enable-threads --disable-nls >> --enable-languages=c,c++,f77,ada,objc,java --disable-win32-registry >> --disable-shared --enable-sjlj-exceptions --enable-libgcj >> --disable-java-awt --without-x --enable-java-gc=boehm >> --disable-libgcj-debug --enable-interpreter >> --enable-hash-synchronization --enable-libstdcxx-debug >> Thread model: win32 >> gcc version 3.4.5 (mingw-vista special r3) >> >> François >> >> >>> -- >>> Will "Coke" Coleda >>> _______________________________________________ >>> http://lists.parrot.org/mailman/listinfo/parrot-dev >>> >>> >> > > That parameter is probed for in config/auto/warnings.pm - that module > didn't recognize your compiler's complaint that it wasn't a supported > option, so it included it. I just made that check marginally smarter, > so the probe should now realize it's not a supported option and let > you get further. > > Thanks for the report. >
There was a pretty big bug in the probing logic. Fixed now. (Worked for andy because he's on the "not-gcc" path, but since you are using a gcc variant, you caught it. Thanks. =-) Can you confirm it's ok for you now? -- Will "Coke" Coleda _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
