Re: [PATCH v5 00/31] kconfig: move compiler capability tests to Kconfig

From: Masahiro Yamada
Date: Fri Jun 01 2018 - 06:30:39 EST


2018-06-01 17:31 GMT+09:00 Arnd Bergmann <arnd@xxxxxxxx>:
> On Wed, May 30, 2018 at 2:38 AM, Masahiro Yamada
> <yamada.masahiro@xxxxxxxxxxxxx> wrote:
>> 2018-05-28 21:23 GMT+09:00 Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>:
>>> 2018-05-28 18:21 GMT+09:00 Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>:
>
>>
>> I pushed this series to the for-next branch.
>> Unless a significant problem is reported,
>> I'd like to merge this series in the upcoming MW.
>> At least, I need to keep it in linux-next for a while.
>>
>> Your comments and tags are still appreciated.
>> I will add tags (or replace patches if necessary) later,
>> but I want this series tested in linux-next
>> to expose to more developers' eyes.
>>
>> It passed my local test. O-day bot did not report anything so far.
>
> I found a problem when using ccache, resulting in this output while building
> scripts/kconfig:
>
> $ make V=1 O=obj-tmp/ CC="ccache gcc" defconfig
> make[1]: Entering directory '/git/arm-soc'
> make -C /home/arnd/arm-soc/obj-tmp KBUILD_SRC=/git/arm-soc \
> -f /git/arm-soc/Makefile defconfig
> make[2]: Entering directory '/git/arm-soc/obj-tmp'
> make -f ../scripts/Makefile.build obj=scripts/basic
> gcc -Wp,-MD,scripts/basic/.fixdep.d -Iscripts/basic -Wall
> -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer
> -std=gnu89 -o scripts/basic/fixdep ../scripts/basic/fixdep.c
> rm -f .tmp_quiet_recordmcount
> ln -fsn .. source
> /bin/bash ../scripts/mkmakefile \
> .. . 4 17
> make -f ../scripts/Makefile.build obj=scripts/kconfig defconfig
> gcc -Wp,-MD,scripts/kconfig/.conf.o.d -Iscripts/kconfig -Wall
> -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer
> -std=gnu89 -c -o scripts/kconfig/conf.o ../scripts/kconfig/conf.c
> bison -oscripts/kconfig/zconf.tab.c -t -l ../scripts/kconfig/zconf.y
> flex -oscripts/kconfig/zconf.lex.c -L ../scripts/kconfig/zconf.l
> gcc -Wp,-MD,scripts/kconfig/.zconf.tab.o.d -Iscripts/kconfig -Wall
> -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer
> -std=gnu89 -I../scripts/kconfig -c -o scripts/kconfig/zconf.tab.o
> scripts/kconfig/zconf.tab.c
> gcc -o scripts/kconfig/conf scripts/kconfig/conf.o
> scripts/kconfig/zconf.tab.o
> scripts/kconfig/conf --defconfig=arch/arm/configs/multi_v7_defconfig Kconfig
> ccache: invalid option -- 'r'
> Usage:
> ccache [options]
> ccache compiler [compiler options]
> compiler [compiler options] (via symbolic link)
>
> Options:
> -c, --cleanup delete old files and recalculate size counters
> (normally not needed as this is done automatically)
> -C, --clear clear the cache completely (except configuration)
> -F, --max-files=N set maximum number of files in cache to N (use 0 for
> no limit)
> -M, --max-size=SIZE set maximum size of cache to SIZE (use 0 for no
> limit); available suffixes: k, M, G, T (decimal) and
> Ki, Mi, Gi, Ti (binary); default suffix: G
> -o, --set-config=K=V set configuration key K to value V
> -p, --print-config print current configuration options
> -s, --show-stats show statistics summary
> -z, --zero-stats zero statistics counters
>
> -h, --help print this help text
> -V, --version print version and copyright information
>
> See also <https://ccache.samba.org>.
> #
> # configuration written to .config
> #
> make[2]: Leaving directory '/git/arm-soc/obj-tmp'
> make[1]: Leaving directory '/git/arm-soc'
>
> It appears to just keep going after this output, but clearly something is wrong.
> I bisected it to bde197706614 ("gcc-plugins: test plugin support in Kconfig
> and clean up Makefile").


Thanks for the report!


In the original scripts/Makefile.gcc-plugins,
the parameters to scripts/gcc-plugin.sh were quoted by "..."

I need to keep quoting.
https://patchwork.kernel.org/patch/10442941/

Hmm, too much quoting is messy.
It works though...





--
Best Regards
Masahiro Yamada