From nobody Sun Oct 5 17:23:30 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1542322705725841.1655613466373; Thu, 15 Nov 2018 14:58:25 -0800 (PST) Received: from localhost ([::1]:41242 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gNQae-0000yJ-F8 for importer@patchew.org; Thu, 15 Nov 2018 17:58:24 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52045) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gNQTX-0003xQ-Mp for qemu-devel@nongnu.org; Thu, 15 Nov 2018 17:51:05 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gNQTU-0002ku-FQ for qemu-devel@nongnu.org; Thu, 15 Nov 2018 17:51:03 -0500 Received: from mx1.redhat.com ([209.132.183.28]:54072) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gNQTU-0002kW-7n; Thu, 15 Nov 2018 17:51:00 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 6D7C43082B63; Thu, 15 Nov 2018 22:50:59 +0000 (UTC) Received: from red.redhat.com (ovpn-123-32.rdu2.redhat.com [10.10.123.32]) by smtp.corp.redhat.com (Postfix) with ESMTP id B2CC261B9F; Thu, 15 Nov 2018 22:50:57 +0000 (UTC) From: Eric Blake To: qemu-devel@nongnu.org Date: Thu, 15 Nov 2018 16:50:52 -0600 Message-Id: <20181115225052.1322639-1-eblake@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.45]); Thu, 15 Nov 2018 22:50:59 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2] qapi: Reduce Makefile boilerplate X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: qemu-trivial@nongnu.org, pbonzini@redhat.com, armbru@redhat.com, xiezhide@huawei.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Adding a new qapi module requires some rather tedious repetition to wire it into Makefile and Makefile.objs. Add some indirection by taking advantage of GNU Make string processing to expand a list of module names into all the required artifacts, so that future additions of a new module need only touch the list of module names. The list has to live in Makefile.objs, due to the way that unnest-vars slirps in that file without remembering any definition of $(QAPI_MODULES) from Makefile. Signed-off-by: Eric Blake Reviewed-by: Daniel P. Berrang=C3=A9 Reviewed-by: Markus Armbruster --- v2: also condense Makefile.objs, prefer $(FOO:%=3Da%b) over %(patsubst %,a%b,$(foo)) --- Makefile | 192 ++++++-------------------------------------------- Makefile.objs | 75 ++------------------ 2 files changed, 30 insertions(+), 237 deletions(-) diff --git a/Makefile b/Makefile index f2947186a4c..c8b9efdad4b 100644 --- a/Makefile +++ b/Makefile @@ -88,82 +88,26 @@ endif include $(SRC_PATH)/rules.mak GENERATED_FILES =3D qemu-version.h config-host.h qemu-options.def -GENERATED_FILES +=3D qapi/qapi-builtin-types.h qapi/qapi-builtin-types.c -GENERATED_FILES +=3D qapi/qapi-types.h qapi/qapi-types.c -GENERATED_FILES +=3D qapi/qapi-types-block-core.h qapi/qapi-types-block-co= re.c -GENERATED_FILES +=3D qapi/qapi-types-block.h qapi/qapi-types-block.c -GENERATED_FILES +=3D qapi/qapi-types-char.h qapi/qapi-types-char.c -GENERATED_FILES +=3D qapi/qapi-types-common.h qapi/qapi-types-common.c -GENERATED_FILES +=3D qapi/qapi-types-crypto.h qapi/qapi-types-crypto.c -GENERATED_FILES +=3D qapi/qapi-types-introspect.h qapi/qapi-types-introspe= ct.c -GENERATED_FILES +=3D qapi/qapi-types-job.h qapi/qapi-types-job.c -GENERATED_FILES +=3D qapi/qapi-types-migration.h qapi/qapi-types-migration= .c -GENERATED_FILES +=3D qapi/qapi-types-misc.h qapi/qapi-types-misc.c -GENERATED_FILES +=3D qapi/qapi-types-net.h qapi/qapi-types-net.c -GENERATED_FILES +=3D qapi/qapi-types-rocker.h qapi/qapi-types-rocker.c -GENERATED_FILES +=3D qapi/qapi-types-run-state.h qapi/qapi-types-run-state= .c -GENERATED_FILES +=3D qapi/qapi-types-sockets.h qapi/qapi-types-sockets.c -GENERATED_FILES +=3D qapi/qapi-types-tpm.h qapi/qapi-types-tpm.c -GENERATED_FILES +=3D qapi/qapi-types-trace.h qapi/qapi-types-trace.c -GENERATED_FILES +=3D qapi/qapi-types-transaction.h qapi/qapi-types-transac= tion.c -GENERATED_FILES +=3D qapi/qapi-types-ui.h qapi/qapi-types-ui.c -GENERATED_FILES +=3D qapi/qapi-builtin-visit.h qapi/qapi-builtin-visit.c -GENERATED_FILES +=3D qapi/qapi-visit.h qapi/qapi-visit.c -GENERATED_FILES +=3D qapi/qapi-visit-block-core.h qapi/qapi-visit-block-co= re.c -GENERATED_FILES +=3D qapi/qapi-visit-block.h qapi/qapi-visit-block.c -GENERATED_FILES +=3D qapi/qapi-visit-char.h qapi/qapi-visit-char.c -GENERATED_FILES +=3D qapi/qapi-visit-common.h qapi/qapi-visit-common.c -GENERATED_FILES +=3D qapi/qapi-visit-crypto.h qapi/qapi-visit-crypto.c -GENERATED_FILES +=3D qapi/qapi-visit-introspect.h qapi/qapi-visit-introspe= ct.c -GENERATED_FILES +=3D qapi/qapi-visit-job.h qapi/qapi-visit-job.c -GENERATED_FILES +=3D qapi/qapi-visit-migration.h qapi/qapi-visit-migration= .c -GENERATED_FILES +=3D qapi/qapi-visit-misc.h qapi/qapi-visit-misc.c -GENERATED_FILES +=3D qapi/qapi-visit-net.h qapi/qapi-visit-net.c -GENERATED_FILES +=3D qapi/qapi-visit-rocker.h qapi/qapi-visit-rocker.c -GENERATED_FILES +=3D qapi/qapi-visit-run-state.h qapi/qapi-visit-run-state= .c -GENERATED_FILES +=3D qapi/qapi-visit-sockets.h qapi/qapi-visit-sockets.c -GENERATED_FILES +=3D qapi/qapi-visit-tpm.h qapi/qapi-visit-tpm.c -GENERATED_FILES +=3D qapi/qapi-visit-trace.h qapi/qapi-visit-trace.c -GENERATED_FILES +=3D qapi/qapi-visit-transaction.h qapi/qapi-visit-transac= tion.c -GENERATED_FILES +=3D qapi/qapi-visit-ui.h qapi/qapi-visit-ui.c -GENERATED_FILES +=3D qapi/qapi-commands.h qapi/qapi-commands.c -GENERATED_FILES +=3D qapi/qapi-commands-block-core.h qapi/qapi-commands-bl= ock-core.c -GENERATED_FILES +=3D qapi/qapi-commands-block.h qapi/qapi-commands-block.c -GENERATED_FILES +=3D qapi/qapi-commands-char.h qapi/qapi-commands-char.c -GENERATED_FILES +=3D qapi/qapi-commands-common.h qapi/qapi-commands-common= .c -GENERATED_FILES +=3D qapi/qapi-commands-crypto.h qapi/qapi-commands-crypto= .c -GENERATED_FILES +=3D qapi/qapi-commands-introspect.h qapi/qapi-commands-in= trospect.c -GENERATED_FILES +=3D qapi/qapi-commands-job.h qapi/qapi-commands-job.c -GENERATED_FILES +=3D qapi/qapi-commands-migration.h qapi/qapi-commands-mig= ration.c -GENERATED_FILES +=3D qapi/qapi-commands-misc.h qapi/qapi-commands-misc.c -GENERATED_FILES +=3D qapi/qapi-commands-net.h qapi/qapi-commands-net.c -GENERATED_FILES +=3D qapi/qapi-commands-rocker.h qapi/qapi-commands-rocker= .c -GENERATED_FILES +=3D qapi/qapi-commands-run-state.h qapi/qapi-commands-run= -state.c -GENERATED_FILES +=3D qapi/qapi-commands-sockets.h qapi/qapi-commands-socke= ts.c -GENERATED_FILES +=3D qapi/qapi-commands-tpm.h qapi/qapi-commands-tpm.c -GENERATED_FILES +=3D qapi/qapi-commands-trace.h qapi/qapi-commands-trace.c -GENERATED_FILES +=3D qapi/qapi-commands-transaction.h qapi/qapi-commands-t= ransaction.c -GENERATED_FILES +=3D qapi/qapi-commands-ui.h qapi/qapi-commands-ui.c -GENERATED_FILES +=3D qapi/qapi-events.h qapi/qapi-events.c -GENERATED_FILES +=3D qapi/qapi-events-block-core.h qapi/qapi-events-block-= core.c -GENERATED_FILES +=3D qapi/qapi-events-block.h qapi/qapi-events-block.c -GENERATED_FILES +=3D qapi/qapi-events-char.h qapi/qapi-events-char.c -GENERATED_FILES +=3D qapi/qapi-events-common.h qapi/qapi-events-common.c -GENERATED_FILES +=3D qapi/qapi-events-crypto.h qapi/qapi-events-crypto.c -GENERATED_FILES +=3D qapi/qapi-events-introspect.h qapi/qapi-events-intros= pect.c -GENERATED_FILES +=3D qapi/qapi-events-job.h qapi/qapi-events-job.c -GENERATED_FILES +=3D qapi/qapi-events-migration.h qapi/qapi-events-migrati= on.c -GENERATED_FILES +=3D qapi/qapi-events-misc.h qapi/qapi-events-misc.c -GENERATED_FILES +=3D qapi/qapi-events-net.h qapi/qapi-events-net.c -GENERATED_FILES +=3D qapi/qapi-events-rocker.h qapi/qapi-events-rocker.c -GENERATED_FILES +=3D qapi/qapi-events-run-state.h qapi/qapi-events-run-sta= te.c -GENERATED_FILES +=3D qapi/qapi-events-sockets.h qapi/qapi-events-sockets.c -GENERATED_FILES +=3D qapi/qapi-events-tpm.h qapi/qapi-events-tpm.c -GENERATED_FILES +=3D qapi/qapi-events-trace.h qapi/qapi-events-trace.c -GENERATED_FILES +=3D qapi/qapi-events-transaction.h qapi/qapi-events-trans= action.c -GENERATED_FILES +=3D qapi/qapi-events-ui.h qapi/qapi-events-ui.c -GENERATED_FILES +=3D qapi/qapi-introspect.c qapi/qapi-introspect.h -GENERATED_FILES +=3D qapi/qapi-doc.texi + +#see Makefile.objs for the definition of QAPI_MODULES +GENERATED_QAPI_FILES =3D qapi/qapi-builtin-types.h qapi/qapi-builtin-types= .c +GENERATED_QAPI_FILES +=3D qapi/qapi-types.h qapi/qapi-types.c +GENERATED_QAPI_FILES +=3D $(QAPI_MODULES:%=3Dqapi/qapi-types-%.h) +GENERATED_QAPI_FILES +=3D $(QAPI_MODULES:%=3Dqapi/qapi-types-%.c) +GENERATED_QAPI_FILES +=3D qapi/qapi-builtin-visit.h qapi/qapi-builtin-visi= t.c +GENERATED_QAPI_FILES +=3D qapi/qapi-visit.h qapi/qapi-visit.c +GENERATED_QAPI_FILES +=3D $(QAPI_MODULES:%=3Dqapi/qapi-visit-%.h) +GENERATED_QAPI_FILES +=3D $(QAPI_MODULES:%=3Dqapi/qapi-visit-%.c) +GENERATED_QAPI_FILES +=3D qapi/qapi-commands.h qapi/qapi-commands.c +GENERATED_QAPI_FILES +=3D $(QAPI_MODULES:%=3Dqapi/qapi-commands-%.h) +GENERATED_QAPI_FILES +=3D $(QAPI_MODULES:%=3Dqapi/qapi-commands-%.c) +GENERATED_QAPI_FILES +=3D qapi/qapi-events.h qapi/qapi-events.c +GENERATED_QAPI_FILES +=3D $(QAPI_MODULES:%=3Dqapi/qapi-events-%.h) +GENERATED_QAPI_FILES +=3D $(QAPI_MODULES:%=3Dqapi/qapi-events-%.c) +GENERATED_QAPI_FILES +=3D qapi/qapi-introspect.c qapi/qapi-introspect.h +GENERATED_QAPI_FILES +=3D qapi/qapi-doc.texi + +GENERATED_FILES +=3D $(GENERATED_QAPI_FILES) GENERATED_FILES +=3D trace/generated-tcg-tracers.h @@ -583,100 +527,10 @@ qga/qapi-generated/qapi-gen-timestamp: $(SRC_PATH)/q= ga/qapi-schema.json $(qapi-p "GEN","$(@:%-timestamp=3D%)") @>$@ -qapi-modules =3D $(SRC_PATH)/qapi/qapi-schema.json $(SRC_PATH)/qapi/common= .json \ - $(SRC_PATH)/qapi/block.json $(SRC_PATH)/qapi/block-core.jso= n \ - $(SRC_PATH)/qapi/char.json \ - $(SRC_PATH)/qapi/crypto.json \ - $(SRC_PATH)/qapi/introspect.json \ - $(SRC_PATH)/qapi/job.json \ - $(SRC_PATH)/qapi/migration.json \ - $(SRC_PATH)/qapi/misc.json \ - $(SRC_PATH)/qapi/net.json \ - $(SRC_PATH)/qapi/rocker.json \ - $(SRC_PATH)/qapi/run-state.json \ - $(SRC_PATH)/qapi/sockets.json \ - $(SRC_PATH)/qapi/tpm.json \ - $(SRC_PATH)/qapi/trace.json \ - $(SRC_PATH)/qapi/transaction.json \ - $(SRC_PATH)/qapi/ui.json +qapi-modules =3D $(SRC_PATH)/qapi/qapi-schema.json \ + $(QAPI_MODULES:%=3D$(SRC_PATH)/qapi/%.json) -qapi/qapi-builtin-types.c qapi/qapi-builtin-types.h \ -qapi/qapi-types.c qapi/qapi-types.h \ -qapi/qapi-types-block-core.c qapi/qapi-types-block-core.h \ -qapi/qapi-types-block.c qapi/qapi-types-block.h \ -qapi/qapi-types-char.c qapi/qapi-types-char.h \ -qapi/qapi-types-common.c qapi/qapi-types-common.h \ -qapi/qapi-types-crypto.c qapi/qapi-types-crypto.h \ -qapi/qapi-types-introspect.c qapi/qapi-types-introspect.h \ -qapi/qapi-types-job.c qapi/qapi-types-job.h \ -qapi/qapi-types-migration.c qapi/qapi-types-migration.h \ -qapi/qapi-types-misc.c qapi/qapi-types-misc.h \ -qapi/qapi-types-net.c qapi/qapi-types-net.h \ -qapi/qapi-types-rocker.c qapi/qapi-types-rocker.h \ -qapi/qapi-types-run-state.c qapi/qapi-types-run-state.h \ -qapi/qapi-types-sockets.c qapi/qapi-types-sockets.h \ -qapi/qapi-types-tpm.c qapi/qapi-types-tpm.h \ -qapi/qapi-types-trace.c qapi/qapi-types-trace.h \ -qapi/qapi-types-transaction.c qapi/qapi-types-transaction.h \ -qapi/qapi-types-ui.c qapi/qapi-types-ui.h \ -qapi/qapi-builtin-visit.c qapi/qapi-builtin-visit.h \ -qapi/qapi-visit.c qapi/qapi-visit.h \ -qapi/qapi-visit-block-core.c qapi/qapi-visit-block-core.h \ -qapi/qapi-visit-block.c qapi/qapi-visit-block.h \ -qapi/qapi-visit-char.c qapi/qapi-visit-char.h \ -qapi/qapi-visit-common.c qapi/qapi-visit-common.h \ -qapi/qapi-visit-crypto.c qapi/qapi-visit-crypto.h \ -qapi/qapi-visit-introspect.c qapi/qapi-visit-introspect.h \ -qapi/qapi-visit-job.c qapi/qapi-visit-job.h \ -qapi/qapi-visit-migration.c qapi/qapi-visit-migration.h \ -qapi/qapi-visit-misc.c qapi/qapi-visit-misc.h \ -qapi/qapi-visit-net.c qapi/qapi-visit-net.h \ -qapi/qapi-visit-rocker.c qapi/qapi-visit-rocker.h \ -qapi/qapi-visit-run-state.c qapi/qapi-visit-run-state.h \ -qapi/qapi-visit-sockets.c qapi/qapi-visit-sockets.h \ -qapi/qapi-visit-tpm.c qapi/qapi-visit-tpm.h \ -qapi/qapi-visit-trace.c qapi/qapi-visit-trace.h \ -qapi/qapi-visit-transaction.c qapi/qapi-visit-transaction.h \ -qapi/qapi-visit-ui.c qapi/qapi-visit-ui.h \ -qapi/qapi-commands.h qapi/qapi-commands.c \ -qapi/qapi-commands-block-core.c qapi/qapi-commands-block-core.h \ -qapi/qapi-commands-block.c qapi/qapi-commands-block.h \ -qapi/qapi-commands-char.c qapi/qapi-commands-char.h \ -qapi/qapi-commands-common.c qapi/qapi-commands-common.h \ -qapi/qapi-commands-crypto.c qapi/qapi-commands-crypto.h \ -qapi/qapi-commands-introspect.c qapi/qapi-commands-introspect.h \ -qapi/qapi-commands-job.c qapi/qapi-commands-job.h \ -qapi/qapi-commands-migration.c qapi/qapi-commands-migration.h \ -qapi/qapi-commands-misc.c qapi/qapi-commands-misc.h \ -qapi/qapi-commands-net.c qapi/qapi-commands-net.h \ -qapi/qapi-commands-rocker.c qapi/qapi-commands-rocker.h \ -qapi/qapi-commands-run-state.c qapi/qapi-commands-run-state.h \ -qapi/qapi-commands-sockets.c qapi/qapi-commands-sockets.h \ -qapi/qapi-commands-tpm.c qapi/qapi-commands-tpm.h \ -qapi/qapi-commands-trace.c qapi/qapi-commands-trace.h \ -qapi/qapi-commands-transaction.c qapi/qapi-commands-transaction.h \ -qapi/qapi-commands-ui.c qapi/qapi-commands-ui.h \ -qapi/qapi-events.c qapi/qapi-events.h \ -qapi/qapi-events-block-core.c qapi/qapi-events-block-core.h \ -qapi/qapi-events-block.c qapi/qapi-events-block.h \ -qapi/qapi-events-char.c qapi/qapi-events-char.h \ -qapi/qapi-events-common.c qapi/qapi-events-common.h \ -qapi/qapi-events-crypto.c qapi/qapi-events-crypto.h \ -qapi/qapi-events-introspect.c qapi/qapi-events-introspect.h \ -qapi/qapi-events-job.c qapi/qapi-events-job.h \ -qapi/qapi-events-migration.c qapi/qapi-events-migration.h \ -qapi/qapi-events-misc.c qapi/qapi-events-misc.h \ -qapi/qapi-events-net.c qapi/qapi-events-net.h \ -qapi/qapi-events-rocker.c qapi/qapi-events-rocker.h \ -qapi/qapi-events-run-state.c qapi/qapi-events-run-state.h \ -qapi/qapi-events-sockets.c qapi/qapi-events-sockets.h \ -qapi/qapi-events-tpm.c qapi/qapi-events-tpm.h \ -qapi/qapi-events-trace.c qapi/qapi-events-trace.h \ -qapi/qapi-events-transaction.c qapi/qapi-events-transaction.h \ -qapi/qapi-events-ui.c qapi/qapi-events-ui.h \ -qapi/qapi-introspect.h qapi/qapi-introspect.c \ -qapi/qapi-doc.texi: \ -qapi-gen-timestamp ; +$(GENERATED_QAPI_FILES): qapi-gen-timestamp ; qapi-gen-timestamp: $(qapi-modules) $(qapi-py) $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-gen.py \ -o "qapi" -b $<, \ diff --git a/Makefile.objs b/Makefile.objs index 1e1ff387d79..56af0347d37 100644 --- a/Makefile.objs +++ b/Makefile.objs @@ -1,63 +1,18 @@ +QAPI_MODULES =3D block-core block char common crypto introspect job migrat= ion +QAPI_MODULES +=3D misc net rocker run-state sockets tpm trace transaction = ui + ####################################################################### # Common libraries for tools and emulators stub-obj-y =3D stubs/ crypto/ util-obj-y =3D util/ qobject/ qapi/ util-obj-y +=3D qapi/qapi-builtin-types.o util-obj-y +=3D qapi/qapi-types.o -util-obj-y +=3D qapi/qapi-types-block-core.o -util-obj-y +=3D qapi/qapi-types-block.o -util-obj-y +=3D qapi/qapi-types-char.o -util-obj-y +=3D qapi/qapi-types-common.o -util-obj-y +=3D qapi/qapi-types-crypto.o -util-obj-y +=3D qapi/qapi-types-introspect.o -util-obj-y +=3D qapi/qapi-types-job.o -util-obj-y +=3D qapi/qapi-types-migration.o -util-obj-y +=3D qapi/qapi-types-misc.o -util-obj-y +=3D qapi/qapi-types-net.o -util-obj-y +=3D qapi/qapi-types-rocker.o -util-obj-y +=3D qapi/qapi-types-run-state.o -util-obj-y +=3D qapi/qapi-types-sockets.o -util-obj-y +=3D qapi/qapi-types-tpm.o -util-obj-y +=3D qapi/qapi-types-trace.o -util-obj-y +=3D qapi/qapi-types-transaction.o -util-obj-y +=3D qapi/qapi-types-ui.o +util-obj-y +=3D $(QAPI_MODULES:%=3Dqapi/qapi-types-%.o) util-obj-y +=3D qapi/qapi-builtin-visit.o util-obj-y +=3D qapi/qapi-visit.o -util-obj-y +=3D qapi/qapi-visit-block-core.o -util-obj-y +=3D qapi/qapi-visit-block.o -util-obj-y +=3D qapi/qapi-visit-char.o -util-obj-y +=3D qapi/qapi-visit-common.o -util-obj-y +=3D qapi/qapi-visit-crypto.o -util-obj-y +=3D qapi/qapi-visit-introspect.o -util-obj-y +=3D qapi/qapi-visit-job.o -util-obj-y +=3D qapi/qapi-visit-migration.o -util-obj-y +=3D qapi/qapi-visit-misc.o -util-obj-y +=3D qapi/qapi-visit-net.o -util-obj-y +=3D qapi/qapi-visit-rocker.o -util-obj-y +=3D qapi/qapi-visit-run-state.o -util-obj-y +=3D qapi/qapi-visit-sockets.o -util-obj-y +=3D qapi/qapi-visit-tpm.o -util-obj-y +=3D qapi/qapi-visit-trace.o -util-obj-y +=3D qapi/qapi-visit-transaction.o -util-obj-y +=3D qapi/qapi-visit-ui.o +util-obj-y +=3D $(QAPI_MODULES:%=3Dqapi/qapi-visit-%.o) util-obj-y +=3D qapi/qapi-events.o -util-obj-y +=3D qapi/qapi-events-block-core.o -util-obj-y +=3D qapi/qapi-events-block.o -util-obj-y +=3D qapi/qapi-events-char.o -util-obj-y +=3D qapi/qapi-events-common.o -util-obj-y +=3D qapi/qapi-events-crypto.o -util-obj-y +=3D qapi/qapi-events-introspect.o -util-obj-y +=3D qapi/qapi-events-job.o -util-obj-y +=3D qapi/qapi-events-migration.o -util-obj-y +=3D qapi/qapi-events-misc.o -util-obj-y +=3D qapi/qapi-events-net.o -util-obj-y +=3D qapi/qapi-events-rocker.o -util-obj-y +=3D qapi/qapi-events-run-state.o -util-obj-y +=3D qapi/qapi-events-sockets.o -util-obj-y +=3D qapi/qapi-events-tpm.o -util-obj-y +=3D qapi/qapi-events-trace.o -util-obj-y +=3D qapi/qapi-events-transaction.o -util-obj-y +=3D qapi/qapi-events-ui.o +util-obj-y +=3D $(QAPI_MODULES:%=3Dqapi/qapi-events-%.o) util-obj-y +=3D qapi/qapi-introspect.o chardev-obj-y =3D chardev/ @@ -138,23 +93,7 @@ common-obj-$(CONFIG_FDT) +=3D device_tree.o # qapi common-obj-y +=3D qapi/qapi-commands.o -common-obj-y +=3D qapi/qapi-commands-block-core.o -common-obj-y +=3D qapi/qapi-commands-block.o -common-obj-y +=3D qapi/qapi-commands-char.o -common-obj-y +=3D qapi/qapi-commands-common.o -common-obj-y +=3D qapi/qapi-commands-crypto.o -common-obj-y +=3D qapi/qapi-commands-introspect.o -common-obj-y +=3D qapi/qapi-commands-job.o -common-obj-y +=3D qapi/qapi-commands-migration.o -common-obj-y +=3D qapi/qapi-commands-misc.o -common-obj-y +=3D qapi/qapi-commands-net.o -common-obj-y +=3D qapi/qapi-commands-rocker.o -common-obj-y +=3D qapi/qapi-commands-run-state.o -common-obj-y +=3D qapi/qapi-commands-sockets.o -common-obj-y +=3D qapi/qapi-commands-tpm.o -common-obj-y +=3D qapi/qapi-commands-trace.o -common-obj-y +=3D qapi/qapi-commands-transaction.o -common-obj-y +=3D qapi/qapi-commands-ui.o +common-obj-y +=3D $(QAPI_MODULES:%=3Dqapi/qapi-commands-%.o) common-obj-y +=3D qapi/qapi-introspect.o common-obj-y +=3D qmp.o hmp.o endif --=20 2.17.2