From: Michael Grzeschik <m.grzeschik@pengutronix.de>
To: ptxdist@pengutronix.de
Subject: [ptxdist] [PATCH v2] libusbgx: make example and tool selection fine grained
Date: Thu, 6 May 2021 22:26:49 +0200 [thread overview]
Message-ID: <20210506202649.15793-1-m.grzeschik@pengutronix.de> (raw)
In-Reply-To: <20210504213306.4095-1-m.grzeschik@pengutronix.de>
Currently all tools and exampled are unconditionally installed.
This patch changes this by adding a selection for every binary.
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
---
v1 - v2: fixed missing '-' in install_copy entries
rules/libusbgx.in | 85 ++++++++++++++++++++++++++++++++++++++++++++-
rules/libusbgx.make | 53 +++++++++++++++++++++++++++-
2 files changed, 136 insertions(+), 2 deletions(-)
diff --git a/rules/libusbgx.in b/rules/libusbgx.in
index 98776c026..ba1595c2a 100644
--- a/rules/libusbgx.in
+++ b/rules/libusbgx.in
@@ -1,8 +1,91 @@
## SECTION=communication
-config LIBUSBGX
+menuconfig LIBUSBGX
bool
prompt "libusbgx"
help
libusbgx is a C library encapsulating the kernel USB gadget-configfs
userspace API functionality.
+
+if LIBUSBGX
+
+config SHOW_GADGETS
+ bool "install show-gadget tool"
+ help
+ Wether to build the show-gadget tool
+ to list all already installed gadgets in configfs
+
+config SHOW_UDCS
+ bool "install show-udcs tool"
+ help
+ Wether to build the show-udcs tool
+ to list all available udcs
+
+config GADGET_VID_PID_REMOVE
+ bool "install gadget-vid-pid-remove tool"
+ help
+ Wether to build the gadget-vid-pid-remove tool
+ to remove whole configfs gadget setup defined for
+ vid and pid
+
+config GADGET_EXPORT
+ bool "install gadget-export tool"
+ help
+ Wether to build the gadget-export tool
+ to export the configfs configuration to a scheme file
+
+config GADGET_IMPORT
+ bool "install gadget-import tool"
+ help
+ Wether to build the gadget-import tool
+ to import the configfs configuration from a scheme file
+
+config GADGET_ACM_ECM
+ bool "install gadget-acm-ecm example tool"
+ help
+ Wether to build the gadget-acm-ecm example tool
+ to create an configfs gadget setup for an acm-ecm device
+
+config GADGET_UVC
+ bool "install gadget-uvc example tool"
+ help
+ Wether to build the gadget-uvc example tool
+ to create an configfs gadget setup for an uvc device
+
+config GADGET_FFS
+ bool "install gadget-ffs example tool"
+ help
+ Wether to build the gadget-ffs example tool
+ to create an configfs gadget setup for an function-fs device
+
+config GADGET_MS
+ bool "install gadget-ms example tool"
+ help
+ Wether to build the gadget-ms example tool to create an
+ configfs gadget setup for an mass-storage device
+
+config GADGET_MIDI
+ bool "install gadget-midi example tool"
+ help
+ Wether to build the gadget-midi example tool
+ to create an configfs gadget setup for an midi device
+
+config GADGET_HID
+ bool "install gadget-hid example tool"
+ help
+ Wether to build the gadget-hid example tool
+ to create an configfs gadget setup for an hid device
+
+config GADGET_UAC2
+ bool "install gadget-uac2 example tool"
+ help
+ Wether to build the gadget-uac2 example tool
+ to create an configfs gadget setup for an Audio Class device
+
+config GADGET_RNDIS_OS_DESC
+ bool "install gadget-rndis-os-desc example tool"
+ help
+ Wether to build the gadget-rndis-os-desc example tool
+ to create an configfs gadget setup for an rndis ethernet device
+
+endif
diff --git a/rules/libusbgx.make b/rules/libusbgx.make
index 6c8fce429..c723174bf 100644
--- a/rules/libusbgx.make
+++ b/rules/libusbgx.make
@@ -57,7 +57,58 @@ $(STATEDIR)/libusbgx.targetinstall:
@$(call install_fixup, libusbgx, DESCRIPTION, missing)
@$(call install_lib, libusbgx, 0, 0, 0644, libusbgx)
- @$(call install_tree, libusbgx, 0, 0, -, /usr/bin)
+
+ifdef PTXCONF_SHOW_GADGETS
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/show-gadgets)
+endif
+
+ifdef PTXCONF_SHOW_UDCS
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/show-gadgets)
+endif
+
+ifdef PTXCONF_GADGET_VID_PID_REMOVE
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/gadget-vid-pid-remove)
+endif
+
+ifdef PTXCONF_GADGET_IMPORT
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/gadget-import)
+endif
+
+ifdef PTXCONF_GADGET_EXPORT
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/gadget-export)
+endif
+
+ifdef PTXCONF_GADGET_ACM_ECM
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/gadget-acm-ecm)
+endif
+
+ifdef PTXCONF_GADGET_UVC
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/gadget-uvc)
+endif
+
+ifdef PTXCONF_GADGET_FFS
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/gadget-ffs)
+endif
+
+ifdef PTXCONF_GADGET_MS
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/gadget-ms)
+endif
+
+ifdef PTXCONF_GADGET_MIDI
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/gadget-midi)
+endif
+
+ifdef PTXCONF_GADGET_HID
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/gadget-hid)
+endif
+
+ifdef PTXCONF_GADGET_UAC2
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/gadget-uac2)
+endif
+
+ifdef PTXCONF_GADGET_RNDIS_OS_DESC
+ @$(call install_copy, libusbgx, 0, 0, 0755, -, /usr/bin/gadget-rndis-os-desc)
+endif
@$(call install_finish, libusbgx)
--
2.29.2
_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de
next prev parent reply other threads:[~2021-05-06 20:28 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-04 21:33 [ptxdist] [PATCH] " Michael Grzeschik
2021-05-06 20:26 ` Michael Grzeschik [this message]
2021-05-27 6:45 ` [ptxdist] [APPLIED] " Michael Olbrich
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210506202649.15793-1-m.grzeschik@pengutronix.de \
--to=m.grzeschik@pengutronix.de \
--cc=ptxdist@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox