Re: [PATCH] kbuild: support make dir/file.i for *.S

From: Masahiro Yamada
Date: Sun Dec 13 2015 - 03:18:49 EST


2015-12-13 4:13 GMT+09:00 Brian Gerst <brgerst@xxxxxxxxx>:
> On Thu, Dec 10, 2015 at 11:33 AM, Wang YanQing <udknight@xxxxxxxxx> wrote:
>> This feature could reduce a little time to expand all
>> the macros in *.S for reading.
>>
>> Signed-off-by: Wang YanQing <udknight@xxxxxxxxx>
>> ---
>> Makefile | 2 ++
>> scripts/Makefile.build | 6 ++++++
>> 2 files changed, 8 insertions(+)
>>
>> diff --git a/Makefile b/Makefile
>> index 7558c9c..d7e2060 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -1552,6 +1552,8 @@ endif
>> $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
>> %.s: %.S prepare scripts FORCE
>> $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
>> +%.i: %.S prepare scripts FORCE
>> + $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
>> %.o: %.S prepare scripts FORCE
>> $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
>> %.symtypes: %.c prepare scripts FORCE
>> diff --git a/scripts/Makefile.build b/scripts/Makefile.build
>> index 2c47f9c..2a51d49 100644
>> --- a/scripts/Makefile.build
>> +++ b/scripts/Makefile.build
>> @@ -287,6 +287,12 @@ cmd_as_s_S = $(CPP) $(a_flags) -o $@ $<
>> $(obj)/%.s: $(src)/%.S FORCE
>> $(call if_changed_dep,as_s_S)
>>
>> +quiet_cmd_cc_i_S = CPP $(quiet_modtag) $@
>> +cmd_cc_i_S = $(CPP) $(a_flags) -o $@ $<
>> +
>> +$(obj)/%.i: $(src)/%.S FORCE
>> + $(call if_changed_dep,cc_i_S)
>> +
>> quiet_cmd_as_o_S = AS $(quiet_modtag) $@
>> cmd_as_o_S = $(CC) $(a_flags) -c -o $@ $<
>
> *.s (lower case) is the suffix used for preprocessed assembly files,
> and there is already a rule for that. *.i is for preprocessed C
> files.
>

Right. We already support *.s and it is completely the same as
what this patch adds (except that *.i is now an alias of *.s,
which is also wrong as Brian pointed out.)

quiet_cmd_as_s_S = CPP $(quiet_modtag) $@
cmd_as_s_S = $(CPP) $(a_flags) -o $@ $<

$(obj)/%.s: $(src)/%.S FORCE
$(call if_changed_dep,as_s_S)


--
Best Regards
Masahiro Yamada
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/