Re: CONFIG_KPROBES=y build requires gawk

Michal Marek
2009-12-17T11:35:07Z

On 17.12.2009 09:09, Sam Ravnborg wrote:
> On Wed, Dec 16, 2009 at 09:56:46PM -0800, H. Peter Anvin wrote:
>> On 12/16/2009 09:45 PM, Sam Ravnborg wrote:
>>>>
>>>> diff --git a/arch/x86/lib/Makefile b/arch/x86/lib/Makefile
>>>> index 45b20e4..0c46d60 100644
>>>> --- a/arch/x86/lib/Makefile
>>>> +++ b/arch/x86/lib/Makefile
>>>> @@ -5,7 +5,7 @@
>>>> inat_tables_script = $(srctree)/arch/x86/tools/gen-insn-attr-x86.awk
>>>> inat_tables_maps = $(srctree)/arch/x86/lib/x86-opcode-map.txt
>>>> quiet_cmd_inat_tables = GEN $@
>>>> - cmd_inat_tables = $(AWK) -f $(inat_tables_script) $(inat_tables_maps) > $@ || rm -f $@
>>>> + cmd_inat_tables = LC_ALL=C $(AWK) -f $(inat_tables_script) $(inat_tables_maps) > $@ || rm -f $@
>>>
>>> This will result in error messages in english always from awk - no?
>>> Some people will care.
>>>
>>
>> True, we probably don't want to set LC_MESSAGES. Which means:
>>
>> diff --git a/Makefile b/Makefile
>> index 33d4732..357e83b 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -302,6 +302,13 @@ MAKEFLAGS += --include-dir=$(srctree)
>> $(srctree)/scripts/Kbuild.include: ;
>> include $(srctree)/scripts/Kbuild.include
>>
>> +# Avoid funny character set dependencies
>> +LC_ALL=
>> +LC_CTYPE=C
>> +LC_COLLATE=C
>> +LC_NUMERIC=C
>> +export LC_ALL LC_CTYPE LC_COLLATE LC_NUMERIC
>> +
>> # Make variables (CC, etc...)
>>
>> AS = $(CROSS_COMPILE)as
>
> Took a closer look at the patch.
> I think we should move this upwards in the Makefile so it take effect as soon as possible.
> Around the line where we do:
>
> MAKEFLAGS += -rR --no-print-directory

There are only some variable assignments and a sed call in the SUBARCH
definition, but right, to be 100% sure that in the future there won't
appear anything locale-dependent, we should move it upwards.

Michal