Re: [tip:x86/kbuild] x86: boot/compressed/vmlinux.lds.S: fix build of bzImage with 64 bit compiler

From: Sam Ravnborg
Date: Thu Apr 30 2009 - 13:59:08 EST


On Thu, Apr 30, 2009 at 09:29:25AM -0700, H. Peter Anvin wrote:
> Sam Ravnborg wrote:
> >>>
> >> I'm wondering if we should build the *.lds.S with -ansi or some other
> >> gcc option which disables ALL non-underscore macros.
> >
> > I did not know that -ansi had this effect.
> > We are only seldomly hitting this issue and I wonder
> > if it could break something in out included headers.
> > Most likely not.
> >
>
> The other thing to recognize is probably that lds files aren't assembly,
> they're something else entirely. Rather than reusing the *.S rules,
> having specific rules for them probably would make sense.

We already have that:
(scripts/Makfile.build)
# Linker scripts preprocessor (.lds.S -> .lds)
# ---------------------------------------------------------------------------
quiet_cmd_cpp_lds_S = LDS $@
cmd_cpp_lds_S = $(CPP) $(cpp_flags) -D__ASSEMBLY__ -o $@ $<

$(obj)/%.lds: $(src)/%.lds.S FORCE
$(call if_changed_dep,cpp_lds_S)


So adding -ansi is trivial and will only hit .lds.S files.

I assume the lds files are named .S is because we shared rules
long time ago.

Sam
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/