Re: [PATCH] pm: cpupower: Makefile: Fix cross compilation

From: Florian Fainelli
Date: Fri Nov 22 2024 - 11:12:19 EST




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@xxxxxxxxxxxx>
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@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/

Let's wait until that settles before taking this patch, or Peng's.
--
Florian