Messages in this thread | | | From | Masahiro Yamada <> | Date | Sat, 24 Sep 2022 23:28:38 +0900 | Subject | Re: [PATCH v4] Makefile.compiler: replace cc-ifversion with compiler-specific macros |
| |
On Sat, Sep 24, 2022 at 4:44 AM Masahiro Yamada <masahiroy@kernel.org> wrote: > > On Tue, Sep 20, 2022 at 2:08 AM Nick Desaulniers > <ndesaulniers@google.com> wrote: > > > > cc-ifversion is GCC specific. Replace it with compiler specific > > variants. Update the users of cc-ifversion to use these new macros. > > > > Link: https://github.com/ClangBuiltLinux/linux/issues/350 > > Link: https://lore.kernel.org/llvm/CAGG=3QWSAUakO42kubrCap8fp-gm1ERJJAYXTnP1iHk_wrH=BQ@mail.gmail.com/ > > Suggested-by: Bill Wendling <morbo@google.com> > > Reviewed-by: Nathan Chancellor <nathan@kernel.org> > > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com> > > --- > > Changes v3 -> v4: > > * Split into its own patch again from series, as per Masahiro. > > * Rebase on top of b0839b281c427e844143dba3893e25c83cdd6c17 and update > > clang -Wformat logic in scripts/Makefile.extrawarn, as per Masahiro. > > > Applied to linux-kbuild. > Thanks. > > > > -- > Best Regards > Masahiro Yamada
I noticed a small flaw now.
$ make mrproper; make /bin/sh: 1: [: -ge: unexpected operator *** *** Configuration file ".config" not found! *** *** Please run some configurator (e.g. "make oldconfig" or *** "make menuconfig" or "make xconfig"). *** Makefile:711: include/config/auto.conf.cmd: No such file or directory make: *** [Makefile:720: .config] Error 1
This fails anyway, but it shows annoying
/bin/sh: 1: [: -ge: unexpected operator
It is emit by this line:
KBUILD_CFLAGS-$(call gcc-min-version, 90100) += -Wno-alloc-size-larger-than
When $(CONFIG_GCC_VERSION) is empty, it becomes invalid shell code:
[ -ge $(1) ] && echo y
Now I just recalled why I wrote the original code like this:
cc-ifversion = $(shell [ $(CONFIG_GCC_VERSION)0 $(1) $(2)000 ] ...
-- Best Regards Masahiro Yamada
| |