summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLadislav Michl <ladis@linux-mips.org>2016-01-22 17:27:58 +0100
committerMichael Olbrich <m.olbrich@pengutronix.de>2016-02-01 14:39:05 +0100
commit21846861e26591406b5603164b9aec49f7d2370c (patch)
treeb1150ab22024bdf7b131472c21765b799f3376d4
parent3569b2cb3f40cbd998d029e96c3257130562cc5a (diff)
downloadptxdist-21846861e26591406b5603164b9aec49f7d2370c.tar.gz
ptxdist-21846861e26591406b5603164b9aec49f7d2370c.tar.xz
usb_modeswitch: udev helper
Install also udev helper and systemd service file Signed-off-by: Ladislav Michl <ladis@linux-mips.org> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r--rules/usb-modeswitch.in19
-rw-r--r--rules/usb-modeswitch.make24
2 files changed, 41 insertions, 2 deletions
diff --git a/rules/usb-modeswitch.in b/rules/usb-modeswitch.in
index aaefd8658..4a172ae71 100644
--- a/rules/usb-modeswitch.in
+++ b/rules/usb-modeswitch.in
@@ -1,11 +1,26 @@
## SECTION=shell_and_console
-config USB_MODESWITCH
+menuconfig USB_MODESWITCH
tristate
- prompt "usb-modeswitch"
+ prompt "usb-modeswitch "
select LIBUSB
+ select TCL if (USB_MODESWITCH_UDEV_HELPER || USB_MODESWITCH_SYSTEMD_UNIT) && RUNTIME
help
USB_ModeSwitch is (surprise!) a mode switching tool
for controlling 'multi-mode' USB devices.
+if USB_MODESWITCH
+
+config USB_MODESWITCH_UDEV_HELPER
+ bool "install udev helper"
+ default y
+ depends on UDEV
+
+config USB_MODESWITCH_SYSTEMD_UNIT
+ bool "install systemd unit file"
+ default y
+ depends on SYSTEMD
+
+endif
+
# vim: set sw=8 ts=8 noet ft=kconfig:
diff --git a/rules/usb-modeswitch.make b/rules/usb-modeswitch.make
index 4ebf0e8e3..95149a3b9 100644
--- a/rules/usb-modeswitch.make
+++ b/rules/usb-modeswitch.make
@@ -37,6 +37,18 @@ USB_MODESWITCH_MAKE_ENV := $(CROSS_ENV)
USB_MODESWITCH_MAKE_OPT := $(CROSS_ENV_PROGS)
# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/usb-modeswitch.install:
+ @$(call targetinfo)
+ @$(call world/install, USB_MODESWITCH)
+ @mkdir -p $(USB_MODESWITCH_PKGDIR)/lib/systemd/system
+ @install -m 0644 $(USB_MODESWITCH_DIR)/usb_modeswitch@.service \
+ $(USB_MODESWITCH_PKGDIR)/lib/systemd/system/usb_modeswitch@.service
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
# Target-Install
# ----------------------------------------------------------------------------
@@ -51,6 +63,18 @@ $(STATEDIR)/usb-modeswitch.targetinstall:
@$(call install_copy, usb-modeswitch, 0, 0, 0755, -, \
/usr/sbin/usb_modeswitch)
+ifneq ($(PTXCONF_USB_MODESWITCH_UDEV_HELPER)$(PTXCONF_USB_MODESWITCH_SYSTEMD_UNIT),)
+ @$(call install_copy, usb-modeswitch, 0, 0, 0755, -, \
+ /usr/sbin/usb_modeswitch_dispatcher)
+endif
+ifdef PTXCONF_USB_MODESWITCH_UDEV_HELPER
+ @$(call install_copy, usb-modeswitch, 0, 0, 0755, -, \
+ /lib/udev/usb_modeswitch)
+endif
+ifdef PTXCONF_USB_MODESWITCH_SYSTEMD_UNIT
+ @$(call install_copy, usb-modeswitch, 0, 0, 0644, -, \
+ /lib/systemd/system/usb_modeswitch@.service)
+endif
@$(call install_finish, usb-modeswitch)