Message ID | 20241121044353.1753244-1-florian.fainelli@broadcom.com (mailing list archive) |
---|---|
State | Handled Elsewhere |
Delegated to: | Shuah Khan |
Headers | show |
Series | pm: cpupower: Makefile: Fix cross compilation | expand |
On 11/20/24 21:43, Florian Fainelli wrote: > After f79473ed9220 ("pm: cpupower: Makefile: Allow overriding > cross-compiling env params") we would fail to cross compile cpupower in > buildroot which uses the recipe at [1] where only the CROSS variable is > being set. > > The issue here is the use of the lazy evaluation for all variables: CC, > LD, AR, STRIP, RANLIB, rather than just CROSS. > > [1]: > https://git.buildroot.net/buildroot/tree/package/linux-tools/linux-tool-cpupower.mk.in > > Fixes: f79473ed9220 ("pm: cpupower: Makefile: Allow overriding cross-compiling env params") > Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com> > Change-Id: Id98f2c648c82c08044b7281714bc6a8e921629ad > --- > tools/power/cpupower/Makefile | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/tools/power/cpupower/Makefile b/tools/power/cpupower/Makefile > index 175004ce44b2..96bb1e5f3970 100644 > --- a/tools/power/cpupower/Makefile > +++ b/tools/power/cpupower/Makefile > @@ -87,11 +87,11 @@ INSTALL_SCRIPT = ${INSTALL} -m 644 > # to something more interesting, like "arm-linux-". If you want > # to compile vs uClibc, that can be done here as well. > CROSS ?= #/usr/i386-linux-uclibc/usr/bin/i386-uclibc- > -CC ?= $(CROSS)gcc > -LD ?= $(CROSS)gcc > -AR ?= $(CROSS)ar > -STRIP ?= $(CROSS)strip > -RANLIB ?= $(CROSS)ranlib > +CC = $(CROSS)gcc > +LD = $(CROSS)gcc > +AR = $(CROSS)ar > +STRIP = $(CROSS)strip > +RANLIB = $(CROSS)ranlib > HOSTCC = gcc > MKDIR = mkdir > Thank you for the patch. I will apply this once the merge window closes. thanks, -- Shuah
On 11/22/2024 7:25 AM, Shuah Khan wrote: > On 11/20/24 21:43, Florian Fainelli wrote: >> After f79473ed9220 ("pm: cpupower: Makefile: Allow overriding >> cross-compiling env params") we would fail to cross compile cpupower in >> buildroot which uses the recipe at [1] where only the CROSS variable is >> being set. >> >> The issue here is the use of the lazy evaluation for all variables: CC, >> LD, AR, STRIP, RANLIB, rather than just CROSS. >> >> [1]: >> https://git.buildroot.net/buildroot/tree/package/linux-tools/linux- >> tool-cpupower.mk.in >> >> Fixes: f79473ed9220 ("pm: cpupower: Makefile: Allow overriding cross- >> compiling env params") >> Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com> >> Change-Id: Id98f2c648c82c08044b7281714bc6a8e921629ad >> --- >> tools/power/cpupower/Makefile | 10 +++++----- >> 1 file changed, 5 insertions(+), 5 deletions(-) >> >> diff --git a/tools/power/cpupower/Makefile b/tools/power/cpupower/ >> Makefile >> index 175004ce44b2..96bb1e5f3970 100644 >> --- a/tools/power/cpupower/Makefile >> +++ b/tools/power/cpupower/Makefile >> @@ -87,11 +87,11 @@ INSTALL_SCRIPT = ${INSTALL} -m 644 >> # to something more interesting, like "arm-linux-". If you want >> # to compile vs uClibc, that can be done here as well. >> CROSS ?= #/usr/i386-linux-uclibc/usr/bin/i386-uclibc- >> -CC ?= $(CROSS)gcc >> -LD ?= $(CROSS)gcc >> -AR ?= $(CROSS)ar >> -STRIP ?= $(CROSS)strip >> -RANLIB ?= $(CROSS)ranlib >> +CC = $(CROSS)gcc >> +LD = $(CROSS)gcc >> +AR = $(CROSS)ar >> +STRIP = $(CROSS)strip >> +RANLIB = $(CROSS)ranlib >> HOSTCC = gcc >> MKDIR = mkdir > > Thank you for the patch. I will apply this once the merge window > closes. Thanks for taking a look, there is still an on-going discussion with Peng about how to best approach this, the discussion is here: https://lore.kernel.org/all/PAXPR04MB84595BA5BEAE2D21F015036688232@PAXPR04MB8459.eurprd04.prod.outlook.com/ Let's wait until that settles before taking this patch, or Peng's.
diff --git a/tools/power/cpupower/Makefile b/tools/power/cpupower/Makefile index 175004ce44b2..96bb1e5f3970 100644 --- a/tools/power/cpupower/Makefile +++ b/tools/power/cpupower/Makefile @@ -87,11 +87,11 @@ INSTALL_SCRIPT = ${INSTALL} -m 644 # to something more interesting, like "arm-linux-". If you want # to compile vs uClibc, that can be done here as well. CROSS ?= #/usr/i386-linux-uclibc/usr/bin/i386-uclibc- -CC ?= $(CROSS)gcc -LD ?= $(CROSS)gcc -AR ?= $(CROSS)ar -STRIP ?= $(CROSS)strip -RANLIB ?= $(CROSS)ranlib +CC = $(CROSS)gcc +LD = $(CROSS)gcc +AR = $(CROSS)ar +STRIP = $(CROSS)strip +RANLIB = $(CROSS)ranlib HOSTCC = gcc MKDIR = mkdir
After f79473ed9220 ("pm: cpupower: Makefile: Allow overriding cross-compiling env params") we would fail to cross compile cpupower in buildroot which uses the recipe at [1] where only the CROSS variable is being set. The issue here is the use of the lazy evaluation for all variables: CC, LD, AR, STRIP, RANLIB, rather than just CROSS. [1]: https://git.buildroot.net/buildroot/tree/package/linux-tools/linux-tool-cpupower.mk.in Fixes: f79473ed9220 ("pm: cpupower: Makefile: Allow overriding cross-compiling env params") Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com> Change-Id: Id98f2c648c82c08044b7281714bc6a8e921629ad --- tools/power/cpupower/Makefile | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)