Re: [PATCH 1/1] Makefile: only use compiler flags when supported

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



Hi Markus,

On Wed, 9 Oct 2024 at 14:43, Markus Mayer <mmayer@xxxxxxxxxxxx> wrote:
>
> Hi Simon,
>
> On Tue, 8 Oct 2024 at 18:57, Simon Glass <sjg@xxxxxxxxxxxx> wrote:
> >
> > > diff --git a/Makefile b/Makefile
> > > index f1f0ab368cd3..febdca5742c5 100644
> > > --- a/Makefile
> > > +++ b/Makefile
> > > @@ -3,6 +3,26 @@
> > >  # Device Tree Compiler
> > >  #
> > >
> > > +# try-run and cc-option were stolen from the Linux kernel
> > > +TMPOUT = .tmp_$$$$
> > > +# try-run
> > > +# Usage: option = $(call try-run, $(CC)...-o "$$TMP",option-ok,otherwise)
> > > +# Exit code chooses option. "$$TMP" serves as a temporary file and is
> > > +# automatically cleaned up.
> > > +try-run = $(shell set -e;              \
> > > +       TMP=$(TMPOUT)/tmp;              \
> > > +       mkdir -p $(TMPOUT);             \
> > > +       trap "rm -rf $(TMPOUT)" EXIT;   \
> > > +       if ($(1)) >/dev/null 2>&1;      \
> > > +       then echo "$(2)";               \
> > > +       else echo "$(3)";               \
> > > +       fi)
> > > +
> > > +# cc-option
> > > +# Usage: cflags-y += $(call cc-option,-march=winchip-c6,-march=i586)
> > > +cc-option = $(call try-run, \
> > > +       $(CC) -Werror $(1) -c -x c /dev/null -o "$$TMP",$(1),$(2))
> > > +
> > >  #
> > >  # Version information will be constructed in this order:
> > >  # DTC_VERSION release version as MAJOR.MINOR.PATCH
> > > @@ -18,9 +38,12 @@ CONFIG_LOCALVERSION =
> > >  ASSUME_MASK ?= 0
> > >
> > >  CPPFLAGS = -I libfdt -I . -DFDT_ASSUME_MASK=$(ASSUME_MASK)
> > > +# Warnings where we need to check they are supported
> > > +OPT_WARNINGS = $(call cc-option,-Wsuggest-attribute=format)
> >
> > This is fine, but you should be able to use the existing cc-option in U-Boot
>
> I seem to be missing something... how does U-Boot factor in here?
>
> My use case is to build a standalone version of dtc with clang for
> x86. This dtc is meant to run on the build host. U-Boot sources are
> not involved.

Sorry, I saw this in the middle of a bunch of U-Boot reviews and
didn't notice :-)

Regards,
Simon




[Index of Archives]     [Device Tree]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux