genksyms: adjust the output format to modpost
authorMasahiro Yamada <masahiroy@kernel.org>
Fri, 13 May 2022 11:39:24 +0000 (20:39 +0900)
committerMasahiro Yamada <masahiroy@kernel.org>
Tue, 24 May 2022 07:33:20 +0000 (16:33 +0900)
Make genksyms output symbol versions in the format modpost expects,
so the 'sed' is unneeded.

This commit makes *.symversions completely unneeded.

I will keep *.symversions in .gitignore and 'make clean' for a while.
Otherwise, 'git status' might be surprising.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nicolas Schier <nicolas@fjasle.eu>
Tested-by: Nathan Chancellor <nathan@kernel.org>
Tested-by: Sedat Dilek <sedat.dilek@gmail.com> # LLVM-14 (x86-64)
scripts/Makefile.build
scripts/genksyms/genksyms.c

index dff9220135c4ecb9e5e376843b48510525cf7123..461998a2ad2bbfc7508e40eda6f0f57d2a70a2e5 100644 (file)
@@ -165,16 +165,10 @@ ifdef CONFIG_MODVERSIONS
 # o modpost will extract versions from that file and create *.c files that will
 #   be compiled and linked to the kernel and/or modules.
 
-genksyms_format := __crc_\(.*\) = \(.*\);
-
 gen_symversions =                                                              \
        if $(NM) $@ 2>/dev/null | grep -q __ksymtab; then                       \
                $(call cmd_gensymtypes_$(1),$(KBUILD_SYMTYPES),$(@:.o=.symtypes)) \
-                   > $@.symversions;                                           \
-               sed -n 's/$(genksyms_format)/$(pound)SYMVER \1 \2/p' $@.symversions \
                        >> $(dot-target).cmd;                                   \
-       else                                                                    \
-               rm -f $@.symversions;                                           \
        fi
 
 cmd_gen_symversions_c =        $(call gen_symversions,c)
index 67b23cc0df0f975144254da6dc15dfc078e15e0e..f5dfdb9d80e9d5bb66f7e5e0f5b5cb4aac069d9b 100644 (file)
@@ -680,7 +680,7 @@ void export_symbol(const char *name)
                if (flag_dump_defs)
                        fputs(">\n", debugfile);
 
-               printf("__crc_%s = 0x%08lx;\n", name, crc);
+               printf("#SYMVER %s 0x%08lx\n", name, crc);
        }
 }