diff mbox series

kbuild: move modkern_{c,a}flags to Makefile.lib from Makefile.build

Message ID 20190819085843.3554-1-yamada.masahiro@socionext.com
State Accepted
Commit eb27ea5ce7f367b185953cc9bc6e606004cfd8c4
Headers show
Series kbuild: move modkern_{c,a}flags to Makefile.lib from Makefile.build | expand

Commit Message

Masahiro Yamada Aug. 19, 2019, 8:58 a.m. UTC
Makefile.lib is included by Makefile.modfinal as well as Makefile.build.

Move modkern_cflags to Makefile.lib in order to simplify cmd_cc_o_c
in Makefile.modfinal. Move modkern_cflags as well for consistency.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

---

 scripts/Makefile.build    | 13 -------------
 scripts/Makefile.lib      | 12 ++++++++++++
 scripts/Makefile.modfinal |  6 +++---
 3 files changed, 15 insertions(+), 16 deletions(-)

-- 
2.17.1

Comments

Masahiro Yamada Aug. 28, 2019, 4:44 p.m. UTC | #1
On Mon, Aug 19, 2019 at 5:59 PM Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
>

> Makefile.lib is included by Makefile.modfinal as well as Makefile.build.

>

> Move modkern_cflags to Makefile.lib in order to simplify cmd_cc_o_c

> in Makefile.modfinal. Move modkern_cflags as well for consistency.

>

> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

> ---


Applied to linux-kbuild.

>

>  scripts/Makefile.build    | 13 -------------

>  scripts/Makefile.lib      | 12 ++++++++++++

>  scripts/Makefile.modfinal |  6 +++---

>  3 files changed, 15 insertions(+), 16 deletions(-)

>

> diff --git a/scripts/Makefile.build b/scripts/Makefile.build

> index 10adf3b558de..b46e608f9931 100644

> --- a/scripts/Makefile.build

> +++ b/scripts/Makefile.build

> @@ -92,15 +92,6 @@ endif

>  # Compile C sources (.c)

>  # ---------------------------------------------------------------------------

>

> -# Default is built-in, unless we know otherwise

> -part-of-module = $(if $(filter $(basename $@).o, $(real-obj-m)),y)

> -

> -modkern_cflags =                                          \

> -       $(if $(part-of-module),                           \

> -               $(KBUILD_CFLAGS_MODULE) $(CFLAGS_MODULE), \

> -               $(KBUILD_CFLAGS_KERNEL) $(CFLAGS_KERNEL))

> -quiet_modtag = $(if $(part-of-module),[M],   )

> -

>  quiet_cmd_cc_s_c = CC $(quiet_modtag)  $@

>        cmd_cc_s_c = $(CC) $(filter-out $(DEBUG_CFLAGS), $(c_flags)) $(DISABLE_LTO) -fverbose-asm -S -o $@ $<

>

> @@ -304,10 +295,6 @@ $(obj)/%.h.s: $(src)/%.h FORCE

>  # Compile assembler sources (.S)

>  # ---------------------------------------------------------------------------

>

> -modkern_aflags = $(if $(part-of-module),                               \

> -                       $(KBUILD_AFLAGS_MODULE) $(AFLAGS_MODULE),       \

> -                       $(KBUILD_AFLAGS_KERNEL) $(AFLAGS_KERNEL))

> -

>  # .S file exports must have their C prototypes defined in asm/asm-prototypes.h

>  # or a file that it includes, in order to get versioned symbols. We build a

>  # dummy C file that includes asm-prototypes and the EXPORT_SYMBOL lines from

> diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib

> index 264611972c4a..888e5c830646 100644

> --- a/scripts/Makefile.lib

> +++ b/scripts/Makefile.lib

> @@ -159,6 +159,18 @@ _cpp_flags += -I $(srctree)/$(src) -I $(objtree)/$(obj)

>  endif

>  endif

>

> +part-of-module = $(if $(filter $(basename $@).o, $(real-obj-m)),y)

> +quiet_modtag = $(if $(part-of-module),[M],   )

> +

> +modkern_cflags =                                          \

> +       $(if $(part-of-module),                           \

> +               $(KBUILD_CFLAGS_MODULE) $(CFLAGS_MODULE), \

> +               $(KBUILD_CFLAGS_KERNEL) $(CFLAGS_KERNEL))

> +

> +modkern_aflags = $(if $(part-of-module),                               \

> +                       $(KBUILD_AFLAGS_MODULE) $(AFLAGS_MODULE),       \

> +                       $(KBUILD_AFLAGS_KERNEL) $(AFLAGS_KERNEL))

> +

>  c_flags        = -Wp,-MD,$(depfile) $(NOSTDINC_FLAGS) $(LINUXINCLUDE)     \

>                  -include $(srctree)/include/linux/compiler_types.h       \

>                  $(_c_flags) $(modkern_cflags)                           \

> diff --git a/scripts/Makefile.modfinal b/scripts/Makefile.modfinal

> index 2e49d536a9b3..059dbcf5ae77 100644

> --- a/scripts/Makefile.modfinal

> +++ b/scripts/Makefile.modfinal

> @@ -17,12 +17,12 @@ modules := $(sort $(shell cat $(MODORDER)))

>  __modfinal: $(modules)

>         @:

>

> -# modname is set to make c_flags define KBUILD_MODNAME

> +# modname and part-of-module are set to make c_flags define proper module flags

>  modname = $(notdir $(@:.mod.o=))

> +part-of-module = y

>

>  quiet_cmd_cc_o_c = CC [M]  $@

> -      cmd_cc_o_c = $(CC) $(c_flags) $(KBUILD_CFLAGS_MODULE) $(CFLAGS_MODULE) \

> -                  -c -o $@ $<

> +      cmd_cc_o_c = $(CC) $(c_flags) -c -o $@ $<

>

>  %.mod.o: %.mod.c FORCE

>         $(call if_changed_dep,cc_o_c)

> --

> 2.17.1

>



-- 
Best Regards
Masahiro Yamada
diff mbox series

Patch

diff --git a/scripts/Makefile.build b/scripts/Makefile.build
index 10adf3b558de..b46e608f9931 100644
--- a/scripts/Makefile.build
+++ b/scripts/Makefile.build
@@ -92,15 +92,6 @@  endif
 # Compile C sources (.c)
 # ---------------------------------------------------------------------------
 
-# Default is built-in, unless we know otherwise
-part-of-module = $(if $(filter $(basename $@).o, $(real-obj-m)),y)
-
-modkern_cflags =                                          \
-	$(if $(part-of-module),                           \
-		$(KBUILD_CFLAGS_MODULE) $(CFLAGS_MODULE), \
-		$(KBUILD_CFLAGS_KERNEL) $(CFLAGS_KERNEL))
-quiet_modtag = $(if $(part-of-module),[M],   )
-
 quiet_cmd_cc_s_c = CC $(quiet_modtag)  $@
       cmd_cc_s_c = $(CC) $(filter-out $(DEBUG_CFLAGS), $(c_flags)) $(DISABLE_LTO) -fverbose-asm -S -o $@ $<
 
@@ -304,10 +295,6 @@  $(obj)/%.h.s: $(src)/%.h FORCE
 # Compile assembler sources (.S)
 # ---------------------------------------------------------------------------
 
-modkern_aflags = $(if $(part-of-module),				\
-			$(KBUILD_AFLAGS_MODULE) $(AFLAGS_MODULE),	\
-			$(KBUILD_AFLAGS_KERNEL) $(AFLAGS_KERNEL))
-
 # .S file exports must have their C prototypes defined in asm/asm-prototypes.h
 # or a file that it includes, in order to get versioned symbols. We build a
 # dummy C file that includes asm-prototypes and the EXPORT_SYMBOL lines from
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 264611972c4a..888e5c830646 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -159,6 +159,18 @@  _cpp_flags += -I $(srctree)/$(src) -I $(objtree)/$(obj)
 endif
 endif
 
+part-of-module = $(if $(filter $(basename $@).o, $(real-obj-m)),y)
+quiet_modtag = $(if $(part-of-module),[M],   )
+
+modkern_cflags =                                          \
+	$(if $(part-of-module),                           \
+		$(KBUILD_CFLAGS_MODULE) $(CFLAGS_MODULE), \
+		$(KBUILD_CFLAGS_KERNEL) $(CFLAGS_KERNEL))
+
+modkern_aflags = $(if $(part-of-module),				\
+			$(KBUILD_AFLAGS_MODULE) $(AFLAGS_MODULE),	\
+			$(KBUILD_AFLAGS_KERNEL) $(AFLAGS_KERNEL))
+
 c_flags        = -Wp,-MD,$(depfile) $(NOSTDINC_FLAGS) $(LINUXINCLUDE)     \
 		 -include $(srctree)/include/linux/compiler_types.h       \
 		 $(_c_flags) $(modkern_cflags)                           \
diff --git a/scripts/Makefile.modfinal b/scripts/Makefile.modfinal
index 2e49d536a9b3..059dbcf5ae77 100644
--- a/scripts/Makefile.modfinal
+++ b/scripts/Makefile.modfinal
@@ -17,12 +17,12 @@  modules := $(sort $(shell cat $(MODORDER)))
 __modfinal: $(modules)
 	@:
 
-# modname is set to make c_flags define KBUILD_MODNAME
+# modname and part-of-module are set to make c_flags define proper module flags
 modname = $(notdir $(@:.mod.o=))
+part-of-module = y
 
 quiet_cmd_cc_o_c = CC [M]  $@
-      cmd_cc_o_c = $(CC) $(c_flags) $(KBUILD_CFLAGS_MODULE) $(CFLAGS_MODULE) \
-		   -c -o $@ $<
+      cmd_cc_o_c = $(CC) $(c_flags) -c -o $@ $<
 
 %.mod.o: %.mod.c FORCE
 	$(call if_changed_dep,cc_o_c)