On 10/12/2019 08.43, Philippe Mathieu-Daudé wrote: > On 12/10/19 8:20 AM, Thomas Huth wrote: >> In our downstream distribution of QEMU, we need more fine-grained >> control on the set of CCID card devices that we want to include. >> So let's introduce some proper Kconfig switches that it is easier >> to disable them without modifying the corresponding Makefile.objs. >> >> Signed-off-by: Thomas Huth <[email protected]> >> --- >> hw/usb/Kconfig | 10 ++++++++++ >> hw/usb/Makefile.objs | 7 +++++-- >> 2 files changed, 15 insertions(+), 2 deletions(-) >> >> diff --git a/hw/usb/Kconfig b/hw/usb/Kconfig >> index 555e09377b..1358847eba 100644 >> --- a/hw/usb/Kconfig >> +++ b/hw/usb/Kconfig >> @@ -96,3 +96,13 @@ config USB_STORAGE_MTP >> bool >> default y >> depends on USB >> + >> +config CCID_PASSTHRU >> + bool >> + default y >> + depends on USB_SMARTCARD >> + >> +config CCID_EMULATED >> + bool >> + default y >> + depends on USB_SMARTCARD >> diff --git a/hw/usb/Makefile.objs b/hw/usb/Makefile.objs >> index 303ac084a0..ebe103fb3d 100644 >> --- a/hw/usb/Makefile.objs >> +++ b/hw/usb/Makefile.objs >> @@ -29,11 +29,14 @@ common-obj-$(CONFIG_USB_BLUETOOTH) += >> dev-bluetooth.o >> ifeq ($(CONFIG_USB_SMARTCARD),y) >> common-obj-y += dev-smartcard-reader.o >> -common-obj-$(CONFIG_SMARTCARD) += smartcard.mo >> -smartcard.mo-objs := ccid-card-passthru.o ccid-card-emulated.o >> +ifeq ($(CONFIG_SMARTCARD),y) > > We don't need the 'ifeq ($(CONFIG_SMARTCARD),y)' ... endif anymore.
I think we do. Both files #include <libcacard.h> thus can only be compiled if CONFIG_SMARTCARD has been set. Don't mix CONFIG_SMARTCARD up with CONFIG_USB_SMARTCARD - these are two different switches! Thomas >> +common-obj-$(call >> lor,$(CONFIG_CCID_PASSTHRU),$(CONFIG_CCID_EMULATED)) += smartcard.mo >> +smartcard.mo-objs := $(call >> lif,$(CONFIG_CCID_PASSTHRU),ccid-card-passthru.o) \ >> + $(call >> lif,$(CONFIG_CCID_EMULATED),ccid-card-emulated.o) >> smartcard.mo-cflags := $(SMARTCARD_CFLAGS) >> smartcard.mo-libs := $(SMARTCARD_LIBS) >> endif >> +endif >> ifeq ($(CONFIG_POSIX),y) >> common-obj-$(CONFIG_USB_STORAGE_MTP) += dev-mtp.o >> >
