From: Jason Gerecke <jason.gere...@wacom.com>

The kernel tries to sign files as part of 'make modules_install', so we
might as well go along with the flow and let it handle things. Some users
get confused by the error messages that it produces when signing fails
(e.g. because there is no key), so we short-circuit its signing command
when signing is not possible.

Signed-off-by: Jason Gerecke <jason.gere...@wacom.com>
---
 3.17/Makefile.in | 19 +++++++++++++------
 3.7/Makefile.in  | 19 +++++++++++++------
 4.5/Makefile.in  | 19 +++++++++++++------
 3 files changed, 39 insertions(+), 18 deletions(-)

diff --git a/3.17/Makefile.in b/3.17/Makefile.in
index 7077d8c..b25b2a1 100644
--- a/3.17/Makefile.in
+++ b/3.17/Makefile.in
@@ -33,6 +33,15 @@ MODSIGN_HASHALGO := @MODSIGN_HASHALGO@
 MODSIGN_PRIVFILE := @MODSIGN_PRIVFILE@
 MODSIGN_CERTFILE := @MODSIGN_CERTFILE@
 
+MODSIGN_COMMAND :=
+ifneq ($(strip $(MODSIGN_HASHALGO)),)
+ifneq ($(strip $(MODSIGN_PRIVFILE)),)
+ifneq ($(strip $(MODSIGN_CERTFILE)),)
+MODSIGN_COMMAND := "$(WCM_KERNEL_DIR)/scripts/sign-file" "$(MODSIGN_HASHALGO)" 
"$(MODSIGN_PRIVFILE)" "$(MODSIGN_CERTFILE)"
+endif
+endif
+endif
+
 all:
        @echo '    Building input-wacom drivers for $(WCM_KERNEL_VER) kernel.'
        $(MAKE) -C $(WCM_KERNEL_DIR) M=$(PWD)
@@ -41,13 +50,11 @@ clean:
        $(MAKE) -C $(WCM_KERNEL_DIR) M=$(PWD) clean
 
 signature: all
-       if test -n "$(MODSIGN_HASHALGO)" -a -n "$(MODSIGN_PRIVFILE)" -a -n 
"$(MODSIGN_CERTFILE)"; then \
-           $(WCM_KERNEL_DIR)/scripts/sign-file "$(MODSIGN_HASHALGO)" 
"$(MODSIGN_PRIVFILE)" "$(MODSIGN_CERTFILE)" wacom.ko; \
-           $(WCM_KERNEL_DIR)/scripts/sign-file "$(MODSIGN_HASHALGO)" 
"$(MODSIGN_PRIVFILE)" "$(MODSIGN_CERTFILE)" wacom_w8001.ko; \
-       fi
+       $(MODSIGN_COMMAND) wacom.ko
+       $(MODSIGN_COMMAND) wacom_w8001.ko
 
-install modules_install: signature
-       $(MAKE) -C $(WCM_KERNEL_DIR) M=$(PWD) modules_install
+install modules_install:
+       $(MAKE) -C $(WCM_KERNEL_DIR) M=$(PWD) modules_install 
mod_sign_cmd='$(MODSIGN_COMMAND)'
        mkdir -p /etc/depmod.d
        echo "override wacom * extra" > /etc/depmod.d/input-wacom.conf
        PATH="$(PATH):/bin:/sbin" depmod -a $(MODUTS)
diff --git a/3.7/Makefile.in b/3.7/Makefile.in
index 7b3290a..a623d6d 100644
--- a/3.7/Makefile.in
+++ b/3.7/Makefile.in
@@ -25,6 +25,15 @@ MODSIGN_HASHALGO := @MODSIGN_HASHALGO@
 MODSIGN_PRIVFILE := @MODSIGN_PRIVFILE@
 MODSIGN_CERTFILE := @MODSIGN_CERTFILE@
 
+MODSIGN_COMMAND :=
+ifneq ($(strip $(MODSIGN_HASHALGO)),)
+ifneq ($(strip $(MODSIGN_PRIVFILE)),)
+ifneq ($(strip $(MODSIGN_CERTFILE)),)
+MODSIGN_COMMAND := "$(WCM_KERNEL_DIR)/scripts/sign-file" "$(MODSIGN_HASHALGO)" 
"$(MODSIGN_PRIVFILE)" "$(MODSIGN_CERTFILE)"
+endif
+endif
+endif
+
 all:
        @echo '    Building input-wacom drivers for $(WCM_VERSION_VER) kernel.'
        $(MAKE) -C $(WCM_KERNEL_DIR) M=$(PWD)
@@ -33,13 +42,11 @@ clean:
        $(MAKE) -C $(WCM_KERNEL_DIR) M=$(PWD) clean
 
 signature: all
-       if test -n "$(MODSIGN_HASHALGO)" -a -n "$(MODSIGN_PRIVFILE)" -a -n 
"$(MODSIGN_CERTFILE)"; then \
-           $(WCM_KERNEL_DIR)/scripts/sign-file "$(MODSIGN_HASHALGO)" 
"$(MODSIGN_PRIVFILE)" "$(MODSIGN_CERTFILE)" wacom.ko; \
-           $(WCM_KERNEL_DIR)/scripts/sign-file "$(MODSIGN_HASHALGO)" 
"$(MODSIGN_PRIVFILE)" "$(MODSIGN_CERTFILE)" wacom_w8001.ko; \
-       fi
+       $(MODSIGN_COMMAND) wacom.ko
+       $(MODSIGN_COMMAND) wacom_w8001.ko
 
-install modules_install: signature
-       $(MAKE) -C $(WCM_KERNEL_DIR) M=$(PWD) modules_install
+install modules_install:
+       $(MAKE) -C $(WCM_KERNEL_DIR) M=$(PWD) modules_install 
mod_sign_cmd='$(MODSIGN_COMMAND)'
        mkdir -p /etc/depmod.d
        echo "override wacom * extra" > /etc/depmod.d/input-wacom.conf
        PATH="$(PATH):/bin:/sbin" depmod -a $(MODUTS)
diff --git a/4.5/Makefile.in b/4.5/Makefile.in
index dd89344..987cc40 100644
--- a/4.5/Makefile.in
+++ b/4.5/Makefile.in
@@ -26,6 +26,15 @@ MODSIGN_HASHALGO := @MODSIGN_HASHALGO@
 MODSIGN_PRIVFILE := @MODSIGN_PRIVFILE@
 MODSIGN_CERTFILE := @MODSIGN_CERTFILE@
 
+MODSIGN_COMMAND :=
+ifneq ($(strip $(MODSIGN_HASHALGO)),)
+ifneq ($(strip $(MODSIGN_PRIVFILE)),)
+ifneq ($(strip $(MODSIGN_CERTFILE)),)
+MODSIGN_COMMAND := "$(WCM_KERNEL_DIR)/scripts/sign-file" "$(MODSIGN_HASHALGO)" 
"$(MODSIGN_PRIVFILE)" "$(MODSIGN_CERTFILE)"
+endif
+endif
+endif
+
 all:
        @echo '    Building input-wacom drivers for $(WCM_KERNEL_VER) kernel.'
        $(MAKE) -C $(WCM_KERNEL_DIR) M=$(PWD)
@@ -34,13 +43,11 @@ clean:
        $(MAKE) -C $(WCM_KERNEL_DIR) M=$(PWD) clean
 
 signature: all
-       if test -n "$(MODSIGN_HASHALGO)" -a -n "$(MODSIGN_PRIVFILE)" -a -n 
"$(MODSIGN_CERTFILE)"; then \
-           $(WCM_KERNEL_DIR)/scripts/sign-file "$(MODSIGN_HASHALGO)" 
"$(MODSIGN_PRIVFILE)" "$(MODSIGN_CERTFILE)" wacom.ko; \
-           $(WCM_KERNEL_DIR)/scripts/sign-file "$(MODSIGN_HASHALGO)" 
"$(MODSIGN_PRIVFILE)" "$(MODSIGN_CERTFILE)" wacom_w8001.ko; \
-       fi
+       $(MODSIGN_COMMAND) wacom.ko
+       $(MODSIGN_COMMAND) wacom_w8001.ko
 
-install modules_install: signature
-       $(MAKE) -C $(WCM_KERNEL_DIR) M=$(PWD) modules_install
+install modules_install:
+       $(MAKE) -C $(WCM_KERNEL_DIR) M=$(PWD) modules_install 
mod_sign_cmd='$(MODSIGN_COMMAND)'
        mkdir -p /etc/depmod.d
        echo "override wacom * extra" > /etc/depmod.d/input-wacom.conf
        PATH="$(PATH):/bin:/sbin" depmod -a $(MODUTS)
-- 
2.21.0



_______________________________________________
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

Reply via email to