diff mbox series

pm: cpupower: Makefile: Fix cross compilation

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

Commit Message

Florian Fainelli Nov. 21, 2024, 4:43 a.m. UTC
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(-)

Comments

Shuah Khan Nov. 22, 2024, 3:25 p.m. UTC | #1
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
Florian Fainelli Nov. 22, 2024, 4:11 p.m. UTC | #2
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 mbox series

Patch

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