http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46410
--- Comment #3 from joseph at codesourcery dot com <joseph at codesourcery dot com> 2010-11-10 13:13:06 UTC --- Yes, these options were ignored in general; the driver would have translated -- to -f, but the linker specs don't pass down -f options, and now -- is only translated to -f if a corresponding -f option actually exists. If the packages actually want these options to go to the linker, they should use -Wl, to pass them. > biosdevname:gcc: error: unrecognized option '-all-static' > dconf:gcc: error: unrecognized option '-avoid-version' These would have previously been allowed by %{a*} specs because the long-ago removal of support for the old -a profiling options had some bits missing that I caught. As those were compiler specs, this just meant that the options were quietly ignored (any option accepted by a spec is accepted) rather than being passed to the linker. > ecj-bootstrap:gcj: error: unrecognized option '-s-bc-abi' This option is meant to be valid - in java/lang.opt and in libgcj.spec. If it's being rejected perhaps there's something wrong with your libgcj.spec? It's nothing new that an option needs to be in a spec for the driver to accept it.