The modules_sign target is currently only available for in-tree modules, but it actually works for external modules as well. Move the modules_sign rule to the common part.
Unified · Split
| @@ -1461,20 +1461,6 @@ modules: modules_prepare · 1460 unmodified lines | ||
| 1461 | 1461 | modules_prepare: prepare |
| 1462 | 1462 | $(Q)$(MAKE) $(build)=scripts scripts/module.lds |
| 1463 | 1463 | |
| 1464 | −export modules_sign_only := | |
| 1465 | − | |
| 1466 | −ifeq ($(CONFIG_MODULE_SIG),y) | |
| 1467 | −PHONY += modules_sign | |
| 1468 | −modules_sign: modules_install | |
| 1469 | − @: | |
| 1470 | − | |
| 1471 | −# modules_sign is a subset of modules_install. | |
| 1472 | −# 'make modules_install modules_sign' is equivalent to 'make modules_install'. | |
| 1473 | −ifeq ($(filter modules_install,$(MAKECMDGOALS)),) | |
| 1474 | −modules_sign_only := y | |
| 1475 | −endif | |
| 1476 | −endif | |
| 1477 | − | |
| 1478 | 1464 | endif # CONFIG_MODULES |
| 1479 | 1465 | |
| 1480 | 1466 | ### |
| @@ -1833,10 +1819,24 @@ endif # KBUILD_EXTMOD · 352 unmodified lines | ||
| 1833 | 1819 | # --------------------------------------------------------------------------- |
| 1834 | 1820 | # Modules |
| 1835 | 1821 | |
| 1836 | −PHONY += modules modules_install modules_prepare | |
| 1822 | +PHONY += modules modules_install modules_sign modules_prepare | |
| 1837 | 1823 | |
| 1838 | 1824 | modules_install: |
| 1839 | − $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modinst | |
| 1825 | + $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modinst \ | |
| 1826 | + sign-only=$(if $(filter modules_install,$(MAKECMDGOALS)),,y) | |
| 1827 | + | |
| 1828 | +ifeq ($(CONFIG_MODULE_SIG),y) | |
| 1829 | +# modules_sign is a subset of modules_install. | |
| 1830 | +# 'make modules_install modules_sign' is equivalent to 'make modules_install'. | |
| 1831 | +modules_sign: modules_install | |
| 1832 | + @: | |
| 1833 | +else | |
| 1834 | +modules_sign: | |
| 1835 | + @echo >&2 '***' | |
| 1836 | + @echo >&2 '*** CONFIG_MODULE_SIG is disabled. You cannot sign modules.' | |
| 1837 | + @echo >&2 '***' | |
| 1838 | + @false | |
| 1839 | +endif | |
| 1840 | 1840 | |
| 1841 | 1841 | ifdef CONFIG_MODULES |
| 1842 | 1842 | |
| @@ -11,7 +11,7 @@ include $(srctree)/scripts/Kbuild.include · 10 unmodified lines | ||
| 11 | 11 | |
| 12 | 12 | install-y := |
| 13 | 13 | |
| 14 | −ifeq ($(KBUILD_EXTMOD)$(modules_sign_only),) | |
| 14 | +ifeq ($(KBUILD_EXTMOD)$(sign-only),) | |
| 15 | 15 | |
| 16 | 16 | # remove the old directory and symlink |
| 17 | 17 | $(shell rm -fr $(MODLIB)/kernel $(MODLIB)/build) |
| @@ -104,7 +104,7 @@ quiet_cmd_sign = SIGN $@ · 86 unmodified lines | ||
| 104 | 104 | cmd_sign = scripts/sign-file $(CONFIG_MODULE_SIG_HASH) "$(sig-key)" certs/signing_key.x509 $@ \ |
| 105 | 105 | $(if $(KBUILD_EXTMOD),|| true) |
| 106 | 106 | |
| 107 | −ifeq ($(modules_sign_only),) | |
| 107 | +ifeq ($(sign-only),) | |
| 108 | 108 | |
| 109 | 109 | # During modules_install, modules are signed only when CONFIG_MODULE_SIG_ALL=y. |
| 110 | 110 | ifndef CONFIG_MODULE_SIG_ALL |