kbuild: simplify use of genksyms
authorSam Ravnborg <sam@ravnborg.org>
Fri, 19 Dec 2008 20:38:09 +0000 (21:38 +0100)
committerSam Ravnborg <sam@ravnborg.org>
Fri, 19 Dec 2008 21:00:58 +0000 (22:00 +0100)
Avoid duplicating long list of options in two places

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
scripts/Makefile.build

index d21f0eac2e523d2d19a56a0cca0a9244ba212a7a..c1da14b9f59de00d20da8dfae8b36a392ddf6f80 100644 (file)
@@ -151,17 +151,17 @@ cmd_cc_i_c       = $(CPP) $(c_flags)   -o $@ $<
 $(obj)/%.i: $(src)/%.c FORCE
        $(call if_changed_dep,cc_i_c)
 
+cmd_gensymtypes =                                                           \
+    $(CPP) -D__GENKSYMS__ $(c_flags) $< |                                   \
+    $(GENKSYMS) -T $@ -a $(ARCH)                                            \
+     $(if $(KBUILD_PRESERVE),-p)                                            \
+     $(if $(1),-r $(firstword $(wildcard $(@:.symtypes=.symref) /dev/null)))
+
 quiet_cmd_cc_symtypes_c = SYM $(quiet_modtag) $@
-cmd_cc_symtypes_c         = \
-               set -e;                                                 \
-               $(CPP) -D__GENKSYMS__ $(c_flags) $<                     \
-               | $(GENKSYMS) -T $@                                     \
-                             -r $(firstword $(wildcard                 \
-                                    $(@:.symtypes=.symref) /dev/null)) \
-                             $(if $(KBUILD_PRESERVE),-p)               \
-                             -a $(ARCH)                                \
-                 >/dev/null;                                           \
-               test -s $@ || rm -f $@
+cmd_cc_symtypes_c =                                                         \
+    set -e;                                                                 \
+    $(call cmd_gensymtypes, true) >/dev/null;                               \
+    test -s $@ || rm -f $@
 
 $(obj)/%.symtypes : $(src)/%.c FORCE
        $(call cmd,cc_symtypes_c)
@@ -191,14 +191,8 @@ else
 cmd_cc_o_c = $(CC) $(c_flags) -c -o $(@D)/.tmp_$(@F) $<
 cmd_modversions =                                                      \
        if $(OBJDUMP) -h $(@D)/.tmp_$(@F) | grep -q __ksymtab; then     \
-               $(CPP) -D__GENKSYMS__ $(c_flags) $<                     \
-               | $(GENKSYMS) $(if $(KBUILD_SYMTYPES),                  \
-                                  -T $(@:.o=.symtypes))                \
-                             -r $(firstword $(wildcard                 \
-                                    $(@:.o=.symref) /dev/null))        \
-                             $(if $(KBUILD_PRESERVE),-p)               \
-                             -a $(ARCH)                                \
-               > $(@D)/.tmp_$(@F:.o=.ver);                             \
+               $(call cmd_gensymtypes, $(KBUILD_SYMTYPES))             \
+                   > $(@D)/.tmp_$(@F:.o=.ver);                         \
                                                                        \
                $(LD) $(LDFLAGS) -r -o $@ $(@D)/.tmp_$(@F)              \
                        -T $(@D)/.tmp_$(@F:.o=.ver);                    \