[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] x86: conditionalize workaround for build issue with GNU ld 2.37
On Mon, Sep 13, 2021 at 05:10:54PM +0200, Jan Beulich wrote: > On 13.09.2021 16:33, Roger Pau Monné wrote: > > On Mon, Sep 13, 2021 at 04:05:15PM +0200, Jan Beulich wrote: > >> On 13.09.2021 15:37, Roger Pau Monné wrote: > >>>> --- a/xen/arch/x86/Makefile > >>>> +++ b/xen/arch/x86/Makefile > >>>> @@ -92,10 +92,16 @@ efi-$(CONFIG_PV_SHIM_EXCLUSIVE) := > >>>> > >>>> ifneq ($(build_id_linker),) > >>>> notes_phdrs = --notes > >>>> +# Determine whether to engage a workaround for GNU ld 2.37. > >>>> +build-id-ld-good = $(shell echo 'void test(void) {}' \ > >>>> + | $(CC) $(XEN_CFLAGS) -o .check.o -c -x c - > >>>> 2>.check.err \ > >>>> + && $(LD) -T check.lds -o .check.elf .check.o > >>>> 2>>.check.err \ > >>>> + && echo y) > >>> > >>> Do we want to make this a Kconfig option (ie: LD_UNQUOTED_DASH) and > >>> then use is here? > >>> > >>> We already have compiler and assembler checks in x86/Kconfig, so it > >>> would seem more natural to place it there. > >> > >> The question of whether to record tool chain capabilities in .config > >> is still pending. I'm not convinced this is a good idea, Andrew keeps > >> shouting me out for that, and an actual discussion doesn't really > >> happen. Yet unlike back at the time when I first raised my concern, > >> Anthony meanwhile supports me in at least the question (to Andrew) of > >> when such a discussion would have happened: Neither of us is aware, > >> yet Andrew claims it did happen, but so far didn't point out where > >> one could read about what was discussed and decided there. > >> > >> For the few uses we've accumulated I gave (if at all) an ack for > >> things happening under some sort of pressure, with the request that > >> aformentioned discussion would happen subsequently (and, depending on > >> outcome, these would be converted to another approach if need be). I > >> have meanwhile realized that it was a mistake to allow such things in > >> on this basis - the more of them we gain, the more I'm hearing "we've > >> already got some". > > > > I see, that's not an ideal situation from a review PoV, as we don't > > have a clear placement for those and that will just cause confusion > > (and more work since there are potentially two places to check). > > > > What's the benefit of placing the checks in Kconfig instead of the > > Makefiles? > > > > As I understand Kconfig is run only once, while the Makefile could run > > the check multiple times. > > > > The downfall of having them in .config is that .config could suddenly > > change as tools are updated or as it's moved around different systems > > (yet .config already contains specific compiler version information). > > I should have added in the earlier reply: Besides the pros and cons > there is, to me at least, also the abstract question of whether such > information belongs in .config in the first place. To me this file > has always been a record of build-meister decisions only. Quite > different from the output of userland ./configure, where checking > various aspects of the environment is the primary goal. Well, userland ./configure is also used for setting build time options for the tools (we have a bunch of --{disable/enable}-foo), so I think the line is quite fuzzy there also. I think it would be better if we could split Kconfig settings into .config and .tools for example, to clearly differentiate between user-selected options vs environment information, and then it would also be fairly easy to regenerate .tools on every build. Sadly I don't think Kconfig is capable of this in it's current state. Thanks, Roger.
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |