Markus Armbruster | 3b8593e | 2019-05-28 10:23:07 +0200 | [diff] [blame] | 1 | # -*- Mode: makefile -*- |
Fam Zheng | e45eaef | 2017-08-10 16:50:25 +0800 | [diff] [blame] | 2 | |
| 3 | .PHONY: check-help |
| 4 | check-help: |
| 5 | @echo "Regression testing targets:" |
| 6 | @echo |
Cleber Rosa | 54f96b4 | 2018-11-09 10:07:10 -0500 | [diff] [blame] | 7 | @echo " $(MAKE) check Run unit, qapi-schema, qtest and decodetree" |
| 8 | @echo |
Philippe Mathieu-Daudé | b98a3ba | 2017-11-21 06:55:10 -0300 | [diff] [blame] | 9 | @echo " $(MAKE) check-qtest-TARGET Run qtest tests for given target" |
| 10 | @echo " $(MAKE) check-qtest Run qtest tests" |
| 11 | @echo " $(MAKE) check-unit Run qobject tests" |
| 12 | @echo " $(MAKE) check-speed Run qobject speed tests" |
| 13 | @echo " $(MAKE) check-qapi-schema Run QAPI schema tests" |
| 14 | @echo " $(MAKE) check-block Run block tests" |
Alex Bennée | 8ba0a82 | 2018-04-06 22:08:36 +0100 | [diff] [blame] | 15 | @echo " $(MAKE) check-tcg Run TCG tests" |
Alex Bennée | 7617010 | 2019-01-07 17:25:44 +0000 | [diff] [blame] | 16 | @echo " $(MAKE) check-softfloat Run FPU emulation tests" |
Cleber Rosa | a56931e | 2018-10-18 11:31:33 -0400 | [diff] [blame] | 17 | @echo " $(MAKE) check-acceptance Run all acceptance (functional) tests" |
Cleber Rosa | 54f96b4 | 2018-11-09 10:07:10 -0500 | [diff] [blame] | 18 | @echo |
Wainer dos Santos Moschetta | c3088cd | 2019-12-11 15:44:27 -0500 | [diff] [blame] | 19 | @echo " $(MAKE) check-report.tap Generates an aggregated TAP test report" |
Cleber Rosa | 2131372 | 2018-10-18 11:31:32 -0400 | [diff] [blame] | 20 | @echo " $(MAKE) check-venv Creates a Python venv for tests" |
Cleber Rosa | 54f96b4 | 2018-11-09 10:07:10 -0500 | [diff] [blame] | 21 | @echo " $(MAKE) check-clean Clean the tests and related data" |
Fam Zheng | e45eaef | 2017-08-10 16:50:25 +0800 | [diff] [blame] | 22 | @echo |
Fam Zheng | e45eaef | 2017-08-10 16:50:25 +0800 | [diff] [blame] | 23 | @echo |
| 24 | @echo "The variable SPEED can be set to control the gtester speed setting." |
Philippe Mathieu-Daudé | b98a3ba | 2017-11-21 06:55:10 -0300 | [diff] [blame] | 25 | @echo "Default options are -k and (for $(MAKE) V=1) --verbose; they can be" |
Fam Zheng | e45eaef | 2017-08-10 16:50:25 +0800 | [diff] [blame] | 26 | @echo "changed with variable GTESTER_OPTIONS." |
| 27 | |
| 28 | ifneq ($(wildcard config-host.mak),) |
Kevin Wolf | 8959449 | 2012-03-08 12:29:00 +0100 | [diff] [blame] | 29 | export SRC_PATH |
| 30 | |
Markus Armbruster | fb0bc83 | 2018-02-26 13:48:58 -0600 | [diff] [blame] | 31 | # TODO don't duplicate $(SRC_PATH)/Makefile's qapi-py here |
Markus Armbruster | e6c42b9 | 2019-10-18 09:43:44 +0200 | [diff] [blame] | 32 | qapi-py = $(SRC_PATH)/scripts/qapi/__init__.py \ |
| 33 | $(SRC_PATH)/scripts/qapi/commands.py \ |
Markus Armbruster | fb0bc83 | 2018-02-26 13:48:58 -0600 | [diff] [blame] | 34 | $(SRC_PATH)/scripts/qapi/common.py \ |
| 35 | $(SRC_PATH)/scripts/qapi/doc.py \ |
Markus Armbruster | e6c42b9 | 2019-10-18 09:43:44 +0200 | [diff] [blame] | 36 | $(SRC_PATH)/scripts/qapi/error.py \ |
| 37 | $(SRC_PATH)/scripts/qapi/events.py \ |
| 38 | $(SRC_PATH)/scripts/qapi/expr.py \ |
| 39 | $(SRC_PATH)/scripts/qapi/gen.py \ |
| 40 | $(SRC_PATH)/scripts/qapi/introspect.py \ |
| 41 | $(SRC_PATH)/scripts/qapi/parser.py \ |
| 42 | $(SRC_PATH)/scripts/qapi/schema.py \ |
| 43 | $(SRC_PATH)/scripts/qapi/source.py \ |
| 44 | $(SRC_PATH)/scripts/qapi/types.py \ |
| 45 | $(SRC_PATH)/scripts/qapi/visit.py \ |
Markus Armbruster | fb0bc83 | 2018-02-26 13:48:58 -0600 | [diff] [blame] | 46 | $(SRC_PATH)/scripts/qapi-gen.py |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 47 | |
Peter Maydell | 3687d53 | 2014-01-23 16:22:59 +0000 | [diff] [blame] | 48 | # Get the list of all supported sysemu targets |
| 49 | SYSEMU_TARGET_LIST := $(subst -softmmu.mak,,$(notdir \ |
| 50 | $(wildcard $(SRC_PATH)/default-configs/*-softmmu.mak))) |
| 51 | |
Eric Blake | 7a6c377 | 2018-10-11 09:47:51 -0500 | [diff] [blame] | 52 | check-unit-y += tests/check-qdict$(EXESUF) |
Markus Armbruster | 992159c | 2018-09-26 14:23:09 +0200 | [diff] [blame] | 53 | check-unit-y += tests/check-block-qdict$(EXESUF) |
Laurent Vivier | 29de280 | 2019-04-01 16:12:22 +0200 | [diff] [blame] | 54 | check-unit-$(CONFIG_SOFTMMU) += tests/test-char$(EXESUF) |
Marc-André Lureau | 01b2ffc | 2017-06-07 20:35:58 +0400 | [diff] [blame] | 55 | check-unit-y += tests/check-qnum$(EXESUF) |
Paolo Bonzini | b93b63f | 2012-03-28 15:42:01 +0200 | [diff] [blame] | 56 | check-unit-y += tests/check-qstring$(EXESUF) |
| 57 | check-unit-y += tests/check-qlist$(EXESUF) |
Eric Blake | 7d7a337 | 2016-04-28 15:45:21 -0600 | [diff] [blame] | 58 | check-unit-y += tests/check-qnull$(EXESUF) |
Max Reitz | 1b76e83 | 2017-11-14 19:01:28 +0100 | [diff] [blame] | 59 | check-unit-y += tests/check-qobject$(EXESUF) |
Paolo Bonzini | b93b63f | 2012-03-28 15:42:01 +0200 | [diff] [blame] | 60 | check-unit-y += tests/check-qjson$(EXESUF) |
Marc-André Lureau | 382176b | 2017-08-25 12:59:09 +0200 | [diff] [blame] | 61 | check-unit-y += tests/check-qlit$(EXESUF) |
Daniel P. Berrange | b3db211 | 2016-09-30 15:45:27 +0100 | [diff] [blame] | 62 | check-unit-y += tests/test-qobject-output-visitor$(EXESUF) |
Eric Blake | a15fcc3 | 2016-06-09 10:48:44 -0600 | [diff] [blame] | 63 | check-unit-y += tests/test-clone-visitor$(EXESUF) |
Daniel P. Berrange | b3db211 | 2016-09-30 15:45:27 +0100 | [diff] [blame] | 64 | check-unit-y += tests/test-qobject-input-visitor$(EXESUF) |
Markus Armbruster | 834a3f3 | 2018-02-11 10:35:56 +0100 | [diff] [blame] | 65 | check-unit-y += tests/test-qmp-cmds$(EXESUF) |
Paolo Bonzini | b93b63f | 2012-03-28 15:42:01 +0200 | [diff] [blame] | 66 | check-unit-y += tests/test-string-input-visitor$(EXESUF) |
| 67 | check-unit-y += tests/test-string-output-visitor$(EXESUF) |
Wenchao Xia | f6dadb0 | 2014-06-18 08:43:29 +0200 | [diff] [blame] | 68 | check-unit-y += tests/test-qmp-event$(EXESUF) |
Laszlo Ersek | 3953e3a | 2013-08-20 00:35:40 +0200 | [diff] [blame] | 69 | check-unit-y += tests/test-opts-visitor$(EXESUF) |
Laurent Vivier | 29de280 | 2019-04-01 16:12:22 +0200 | [diff] [blame] | 70 | check-unit-$(CONFIG_BLOCK) += tests/test-coroutine$(EXESUF) |
Michael Roth | 2d49610 | 2012-02-21 21:05:07 -0600 | [diff] [blame] | 71 | check-unit-y += tests/test-visitor-serialization$(EXESUF) |
Michael Tokarev | 2278a69 | 2012-06-07 20:08:19 +0400 | [diff] [blame] | 72 | check-unit-y += tests/test-iov$(EXESUF) |
Peter Xu | ad37f24 | 2019-06-03 14:50:49 +0800 | [diff] [blame] | 73 | check-unit-y += tests/test-bitmap$(EXESUF) |
Laurent Vivier | 29de280 | 2019-04-01 16:12:22 +0200 | [diff] [blame] | 74 | check-unit-$(CONFIG_BLOCK) += tests/test-aio$(EXESUF) |
| 75 | check-unit-$(CONFIG_BLOCK) += tests/test-aio-multithread$(EXESUF) |
| 76 | check-unit-$(CONFIG_BLOCK) += tests/test-throttle$(EXESUF) |
| 77 | check-unit-$(CONFIG_BLOCK) += tests/test-thread-pool$(EXESUF) |
| 78 | check-unit-$(CONFIG_BLOCK) += tests/test-hbitmap$(EXESUF) |
| 79 | check-unit-$(CONFIG_BLOCK) += tests/test-bdrv-drain$(EXESUF) |
| 80 | check-unit-$(CONFIG_BLOCK) += tests/test-bdrv-graph-mod$(EXESUF) |
| 81 | check-unit-$(CONFIG_BLOCK) += tests/test-blockjob$(EXESUF) |
| 82 | check-unit-$(CONFIG_BLOCK) += tests/test-blockjob-txn$(EXESUF) |
| 83 | check-unit-$(CONFIG_BLOCK) += tests/test-block-backend$(EXESUF) |
| 84 | check-unit-$(CONFIG_BLOCK) += tests/test-block-iothread$(EXESUF) |
| 85 | check-unit-$(CONFIG_BLOCK) += tests/test-image-locking$(EXESUF) |
Eduardo Habkost | 247c9de | 2013-01-23 15:58:27 -0200 | [diff] [blame] | 86 | check-unit-y += tests/test-x86-cpuid$(EXESUF) |
| 87 | # all code tested by test-x86-cpuid is inside topology.h |
Dr. David Alan Gilbert | 60fe637 | 2014-12-12 11:13:38 +0000 | [diff] [blame] | 88 | ifeq ($(CONFIG_SOFTMMU),y) |
Orit Wasserman | 21e3cd2 | 2013-01-31 09:12:16 +0200 | [diff] [blame] | 89 | check-unit-y += tests/test-xbzrle$(EXESUF) |
Dr. David Alan Gilbert | 60fe637 | 2014-12-12 11:13:38 +0000 | [diff] [blame] | 90 | check-unit-$(CONFIG_POSIX) += tests/test-vmstate$(EXESUF) |
| 91 | endif |
Eduardo Habkost | e3f9fe2 | 2013-02-04 16:27:45 -0200 | [diff] [blame] | 92 | check-unit-y += tests/test-cutils$(EXESUF) |
Jose Ricardo Ziviani | f539fbe | 2017-01-10 00:10:09 -0200 | [diff] [blame] | 93 | check-unit-y += tests/test-shift128$(EXESUF) |
Richard Henderson | f4c0f98 | 2013-02-16 12:47:01 -0800 | [diff] [blame] | 94 | check-unit-y += tests/test-mul64$(EXESUF) |
Paolo Bonzini | 6046c62 | 2013-06-20 16:19:32 +0200 | [diff] [blame] | 95 | check-unit-y += tests/test-int128$(EXESUF) |
| 96 | # all code tested by test-int128 is inside int128.h |
Paolo Bonzini | 8fda74a | 2013-06-21 09:09:34 +0200 | [diff] [blame] | 97 | check-unit-y += tests/rcutorture$(EXESUF) |
Mike Day | 341774f | 2013-08-27 11:38:45 -0400 | [diff] [blame] | 98 | check-unit-y += tests/test-rcu-list$(EXESUF) |
Emilio G. Cota | 90487e4 | 2018-08-19 05:13:32 -0400 | [diff] [blame] | 99 | check-unit-y += tests/test-rcu-simpleq$(EXESUF) |
Emilio G. Cota | dbf8862 | 2018-08-19 05:13:33 -0400 | [diff] [blame] | 100 | check-unit-y += tests/test-rcu-tailq$(EXESUF) |
Emilio G. Cota | ff9249b | 2016-06-08 14:55:27 -0400 | [diff] [blame] | 101 | check-unit-y += tests/test-qdist$(EXESUF) |
Emilio G. Cota | 1a95404 | 2016-06-08 14:55:29 -0400 | [diff] [blame] | 102 | check-unit-y += tests/test-qht$(EXESUF) |
Alex Bennée | a36270a | 2019-01-14 14:54:38 +0000 | [diff] [blame] | 103 | check-unit-y += tests/test-qht-par$(EXESUF) |
Peter Maydell | 3464700 | 2013-06-28 12:40:32 +0100 | [diff] [blame] | 104 | check-unit-y += tests/test-bitops$(EXESUF) |
Alex Bennée | c3f8962 | 2016-12-09 14:36:00 +0000 | [diff] [blame] | 105 | check-unit-y += tests/test-bitcnt$(EXESUF) |
Marc-André Lureau | 692fbdf | 2018-07-30 17:36:39 +0200 | [diff] [blame] | 106 | check-unit-y += tests/test-qdev-global-props$(EXESUF) |
Igor Mammedov | 14389db | 2013-12-20 22:14:40 +0100 | [diff] [blame] | 107 | check-unit-y += tests/check-qom-interface$(EXESUF) |
Daniel P. Berrange | a31bdae | 2015-05-13 17:14:06 +0100 | [diff] [blame] | 108 | check-unit-y += tests/check-qom-proplist$(EXESUF) |
Leandro Dorileo | 4ba6fab | 2014-05-19 18:53:55 -0300 | [diff] [blame] | 109 | check-unit-y += tests/test-qemu-opts$(EXESUF) |
Markus Armbruster | d454dbe | 2017-02-28 22:26:49 +0100 | [diff] [blame] | 110 | check-unit-y += tests/test-keyval$(EXESUF) |
Laurent Vivier | 29de280 | 2019-04-01 16:12:22 +0200 | [diff] [blame] | 111 | check-unit-$(CONFIG_BLOCK) += tests/test-write-threshold$(EXESUF) |
| 112 | check-unit-$(CONFIG_BLOCK) += tests/test-crypto-hash$(EXESUF) |
| 113 | check-speed-$(CONFIG_BLOCK) += tests/benchmark-crypto-hash$(EXESUF) |
| 114 | check-unit-$(CONFIG_BLOCK) += tests/test-crypto-hmac$(EXESUF) |
| 115 | check-speed-$(CONFIG_BLOCK) += tests/benchmark-crypto-hmac$(EXESUF) |
| 116 | check-unit-$(CONFIG_BLOCK) += tests/test-crypto-cipher$(EXESUF) |
| 117 | check-speed-$(CONFIG_BLOCK) += tests/benchmark-crypto-cipher$(EXESUF) |
| 118 | check-unit-$(CONFIG_BLOCK) += tests/test-crypto-secret$(EXESUF) |
| 119 | check-unit-$(call land,$(CONFIG_BLOCK),$(CONFIG_GNUTLS)) += tests/test-crypto-tlscredsx509$(EXESUF) |
| 120 | check-unit-$(call land,$(CONFIG_BLOCK),$(CONFIG_GNUTLS)) += tests/test-crypto-tlssession$(EXESUF) |
Yang Hongyang | fb91f30 | 2016-04-19 15:39:13 +0800 | [diff] [blame] | 121 | ifneq (,$(findstring qemu-ga,$(TOOLS))) |
Philippe Mathieu-Daudé | a9d2e3f | 2019-01-29 09:38:07 +0100 | [diff] [blame] | 122 | check-unit-$(call land,$(CONFIG_LINUX),$(CONFIG_VIRTIO_SERIAL)) += tests/test-qga$(EXESUF) |
Yang Hongyang | fb91f30 | 2016-04-19 15:39:13 +0800 | [diff] [blame] | 123 | endif |
Alberto Garcia | bd797fc | 2015-10-28 17:33:01 +0200 | [diff] [blame] | 124 | check-unit-y += tests/test-timed-average$(EXESUF) |
Daniel P. Berrangé | 90e33df | 2018-06-08 17:24:57 +0100 | [diff] [blame] | 125 | check-unit-$(CONFIG_INOTIFY1) += tests/test-util-filemonitor$(EXESUF) |
Daniel P. Berrange | 58dc31f | 2017-12-21 12:55:20 +0000 | [diff] [blame] | 126 | check-unit-y += tests/test-util-sockets$(EXESUF) |
Laurent Vivier | 29de280 | 2019-04-01 16:12:22 +0200 | [diff] [blame] | 127 | check-unit-$(CONFIG_BLOCK) += tests/test-authz-simple$(EXESUF) |
| 128 | check-unit-$(CONFIG_BLOCK) += tests/test-authz-list$(EXESUF) |
| 129 | check-unit-$(CONFIG_BLOCK) += tests/test-authz-listfile$(EXESUF) |
| 130 | check-unit-$(call land,$(CONFIG_BLOCK),$(CONFIG_AUTH_PAM)) += tests/test-authz-pam$(EXESUF) |
| 131 | check-unit-$(CONFIG_BLOCK) += tests/test-io-task$(EXESUF) |
| 132 | check-unit-$(CONFIG_BLOCK) += tests/test-io-channel-socket$(EXESUF) |
| 133 | check-unit-$(CONFIG_BLOCK) += tests/test-io-channel-file$(EXESUF) |
| 134 | check-unit-$(call land,$(CONFIG_BLOCK),$(CONFIG_GNUTLS)) += tests/test-io-channel-tls$(EXESUF) |
| 135 | check-unit-$(CONFIG_BLOCK) += tests/test-io-channel-command$(EXESUF) |
| 136 | check-unit-$(CONFIG_BLOCK) += tests/test-io-channel-buffer$(EXESUF) |
Daniel P. Berrange | 89bc0b6 | 2015-11-23 15:24:50 +0000 | [diff] [blame] | 137 | check-unit-y += tests/test-base64$(EXESUF) |
Laurent Vivier | 29de280 | 2019-04-01 16:12:22 +0200 | [diff] [blame] | 138 | check-unit-$(call land,$(CONFIG_BLOCK),$(if $(CONFIG_NETTLE),y,$(CONFIG_GCRYPT))) += tests/test-crypto-pbkdf$(EXESUF) |
| 139 | check-unit-$(CONFIG_BLOCK) += tests/test-crypto-ivgen$(EXESUF) |
| 140 | check-unit-$(CONFIG_BLOCK) += tests/test-crypto-afsplit$(EXESUF) |
Daniel P. Berrangé | 4e89ed1 | 2019-10-30 15:17:40 +0000 | [diff] [blame] | 141 | check-unit-$(call land,$(CONFIG_BLOCK),$(CONFIG_QEMU_PRIVATE_XTS)) += tests/test-crypto-xts$(EXESUF) |
Laurent Vivier | 29de280 | 2019-04-01 16:12:22 +0200 | [diff] [blame] | 142 | check-unit-$(CONFIG_BLOCK) += tests/test-crypto-block$(EXESUF) |
Alex Bennée | 3514552 | 2016-03-15 14:30:20 +0000 | [diff] [blame] | 143 | check-unit-y += tests/test-logging$(EXESUF) |
Laurent Vivier | 29de280 | 2019-04-01 16:12:22 +0200 | [diff] [blame] | 144 | check-unit-$(call land,$(CONFIG_BLOCK),$(CONFIG_REPLICATION)) += tests/test-replication$(EXESUF) |
Richard Henderson | efad668 | 2016-08-29 11:46:16 -0700 | [diff] [blame] | 145 | check-unit-y += tests/test-bufferiszero$(EXESUF) |
Fam Zheng | c739cdd | 2016-09-21 12:27:24 +0800 | [diff] [blame] | 146 | check-unit-y += tests/test-uuid$(EXESUF) |
Paolo Bonzini | 24b9462 | 2016-10-17 19:22:17 +0100 | [diff] [blame] | 147 | check-unit-y += tests/ptimer-test$(EXESUF) |
Markus Armbruster | 6c873d1 | 2017-02-28 22:27:03 +0100 | [diff] [blame] | 148 | check-unit-y += tests/test-qapi-util$(EXESUF) |
Anthony Liguori | ad65aa8 | 2012-01-10 13:10:51 -0600 | [diff] [blame] | 149 | |
Thomas Huth | bdd95e4 | 2019-07-12 17:39:33 +0200 | [diff] [blame] | 150 | check-block-$(call land,$(CONFIG_POSIX),$(CONFIG_SOFTMMU)) += tests/check-block.sh |
Anthony Liguori | dbfe06c | 2012-01-10 13:10:43 -0600 | [diff] [blame] | 151 | |
Eric Blake | 4653430 | 2016-02-17 23:48:17 -0700 | [diff] [blame] | 152 | qapi-schema += alternate-any.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 153 | qapi-schema += alternate-array.json |
| 154 | qapi-schema += alternate-base.json |
Markus Armbruster | ef91ab0 | 2019-09-14 17:34:52 +0200 | [diff] [blame] | 155 | qapi-schema += alternate-branch-if-invalid.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 156 | qapi-schema += alternate-clash.json |
| 157 | qapi-schema += alternate-conflict-dict.json |
Markus Armbruster | c064477 | 2017-05-22 18:42:15 +0200 | [diff] [blame] | 158 | qapi-schema += alternate-conflict-enum-bool.json |
| 159 | qapi-schema += alternate-conflict-enum-int.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 160 | qapi-schema += alternate-conflict-string.json |
Eduardo Habkost | fda72ab | 2017-07-17 15:09:26 -0300 | [diff] [blame] | 161 | qapi-schema += alternate-conflict-bool-string.json |
| 162 | qapi-schema += alternate-conflict-num-string.json |
Eric Blake | 8d25dd1 | 2015-09-29 16:21:05 -0600 | [diff] [blame] | 163 | qapi-schema += alternate-empty.json |
Marc-André Lureau | 87adbbf | 2018-12-13 16:37:14 +0400 | [diff] [blame] | 164 | qapi-schema += alternate-invalid-dict.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 165 | qapi-schema += alternate-nested.json |
| 166 | qapi-schema += alternate-unknown.json |
| 167 | qapi-schema += args-alternate.json |
| 168 | qapi-schema += args-any.json |
| 169 | qapi-schema += args-array-empty.json |
| 170 | qapi-schema += args-array-unknown.json |
Eric Blake | c818408 | 2016-07-13 21:50:20 -0600 | [diff] [blame] | 171 | qapi-schema += args-bad-boxed.json |
| 172 | qapi-schema += args-boxed-anon.json |
Eric Blake | c818408 | 2016-07-13 21:50:20 -0600 | [diff] [blame] | 173 | qapi-schema += args-boxed-string.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 174 | qapi-schema += args-int.json |
| 175 | qapi-schema += args-invalid.json |
| 176 | qapi-schema += args-member-array-bad.json |
Eric Blake | 893e1f2 | 2015-12-01 22:20:57 -0700 | [diff] [blame] | 177 | qapi-schema += args-member-case.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 178 | qapi-schema += args-member-unknown.json |
Eric Blake | d220fbc | 2015-09-29 16:21:03 -0600 | [diff] [blame] | 179 | qapi-schema += args-name-clash.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 180 | qapi-schema += args-union.json |
| 181 | qapi-schema += args-unknown.json |
| 182 | qapi-schema += bad-base.json |
| 183 | qapi-schema += bad-data.json |
| 184 | qapi-schema += bad-ident.json |
Marc-André Lureau | 967c885 | 2018-07-03 17:56:35 +0200 | [diff] [blame] | 185 | qapi-schema += bad-if.json |
| 186 | qapi-schema += bad-if-empty.json |
| 187 | qapi-schema += bad-if-empty-list.json |
| 188 | qapi-schema += bad-if-list.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 189 | qapi-schema += bad-type-bool.json |
| 190 | qapi-schema += bad-type-dict.json |
| 191 | qapi-schema += bad-type-int.json |
Eric Blake | bac5429 | 2015-12-01 22:20:59 -0700 | [diff] [blame] | 192 | qapi-schema += base-cycle-direct.json |
| 193 | qapi-schema += base-cycle-indirect.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 194 | qapi-schema += command-int.json |
| 195 | qapi-schema += comments.json |
Markus Armbruster | f641d06 | 2017-03-15 13:57:25 +0100 | [diff] [blame] | 196 | qapi-schema += doc-bad-alternate-member.json |
Markus Armbruster | 717cfcf | 2019-10-24 13:02:20 +0200 | [diff] [blame] | 197 | qapi-schema += doc-bad-boxed-command-arg.json |
Markus Armbruster | bdc001c | 2017-03-15 13:57:24 +0100 | [diff] [blame] | 198 | qapi-schema += doc-bad-command-arg.json |
Markus Armbruster | f035b47 | 2019-10-24 13:02:19 +0200 | [diff] [blame] | 199 | qapi-schema += doc-bad-enum-member.json |
Markus Armbruster | 717cfcf | 2019-10-24 13:02:20 +0200 | [diff] [blame] | 200 | qapi-schema += doc-bad-event-arg.json |
Markus Armbruster | f035b47 | 2019-10-24 13:02:19 +0200 | [diff] [blame] | 201 | qapi-schema += doc-bad-feature.json |
Markus Armbruster | cfa438f | 2017-10-02 16:13:35 +0200 | [diff] [blame] | 202 | qapi-schema += doc-bad-section.json |
Marc-André Lureau | 3313b61 | 2017-01-13 15:41:29 +0100 | [diff] [blame] | 203 | qapi-schema += doc-bad-symbol.json |
Markus Armbruster | f641d06 | 2017-03-15 13:57:25 +0100 | [diff] [blame] | 204 | qapi-schema += doc-bad-union-member.json |
Markus Armbruster | 2028be8 | 2017-03-15 13:57:19 +0100 | [diff] [blame] | 205 | qapi-schema += doc-before-include.json |
| 206 | qapi-schema += doc-before-pragma.json |
Marc-André Lureau | 3313b61 | 2017-01-13 15:41:29 +0100 | [diff] [blame] | 207 | qapi-schema += doc-duplicated-arg.json |
| 208 | qapi-schema += doc-duplicated-return.json |
| 209 | qapi-schema += doc-duplicated-since.json |
| 210 | qapi-schema += doc-empty-arg.json |
| 211 | qapi-schema += doc-empty-section.json |
| 212 | qapi-schema += doc-empty-symbol.json |
Markus Armbruster | 80d1f2e | 2017-03-20 14:11:54 +0100 | [diff] [blame] | 213 | qapi-schema += doc-good.json |
Marc-André Lureau | 3313b61 | 2017-01-13 15:41:29 +0100 | [diff] [blame] | 214 | qapi-schema += doc-interleaved-section.json |
| 215 | qapi-schema += doc-invalid-end.json |
| 216 | qapi-schema += doc-invalid-end2.json |
| 217 | qapi-schema += doc-invalid-return.json |
| 218 | qapi-schema += doc-invalid-section.json |
| 219 | qapi-schema += doc-invalid-start.json |
| 220 | qapi-schema += doc-missing-colon.json |
| 221 | qapi-schema += doc-missing-expr.json |
| 222 | qapi-schema += doc-missing-space.json |
Markus Armbruster | cfa438f | 2017-10-02 16:13:35 +0200 | [diff] [blame] | 223 | qapi-schema += doc-missing.json |
Markus Armbruster | 2028be8 | 2017-03-15 13:57:19 +0100 | [diff] [blame] | 224 | qapi-schema += doc-no-symbol.json |
Markus Armbruster | f035b47 | 2019-10-24 13:02:19 +0200 | [diff] [blame] | 225 | qapi-schema += doc-undoc-feature.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 226 | qapi-schema += double-type.json |
| 227 | qapi-schema += duplicate-key.json |
| 228 | qapi-schema += empty.json |
Marc-André Lureau | ea738b2 | 2018-12-13 16:37:08 +0400 | [diff] [blame] | 229 | qapi-schema += enum-bad-member.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 230 | qapi-schema += enum-bad-name.json |
| 231 | qapi-schema += enum-bad-prefix.json |
| 232 | qapi-schema += enum-clash-member.json |
Marc-André Lureau | ea738b2 | 2018-12-13 16:37:08 +0400 | [diff] [blame] | 233 | qapi-schema += enum-dict-member-unknown.json |
Marc-André Lureau | 6cc32b0 | 2018-12-13 16:37:11 +0400 | [diff] [blame] | 234 | qapi-schema += enum-if-invalid.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 235 | qapi-schema += enum-int-member.json |
Eric Blake | 893e1f2 | 2015-12-01 22:20:57 -0700 | [diff] [blame] | 236 | qapi-schema += enum-member-case.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 237 | qapi-schema += enum-missing-data.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 238 | qapi-schema += enum-wrong-data.json |
Eric Blake | c818408 | 2016-07-13 21:50:20 -0600 | [diff] [blame] | 239 | qapi-schema += event-boxed-empty.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 240 | qapi-schema += event-case.json |
Marc-André Lureau | 87adbbf | 2018-12-13 16:37:14 +0400 | [diff] [blame] | 241 | qapi-schema += event-member-invalid-dict.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 242 | qapi-schema += event-nest-struct.json |
Kevin Wolf | a00af40 | 2019-06-06 17:37:59 +0200 | [diff] [blame] | 243 | qapi-schema += features-bad-type.json |
| 244 | qapi-schema += features-duplicate-name.json |
Markus Armbruster | ef91ab0 | 2019-09-14 17:34:52 +0200 | [diff] [blame] | 245 | qapi-schema += features-if-invalid.json |
Kevin Wolf | a00af40 | 2019-06-06 17:37:59 +0200 | [diff] [blame] | 246 | qapi-schema += features-missing-name.json |
| 247 | qapi-schema += features-name-bad-type.json |
| 248 | qapi-schema += features-no-list.json |
| 249 | qapi-schema += features-unknown-key.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 250 | qapi-schema += flat-union-array-branch.json |
| 251 | qapi-schema += flat-union-bad-base.json |
| 252 | qapi-schema += flat-union-bad-discriminator.json |
| 253 | qapi-schema += flat-union-base-any.json |
| 254 | qapi-schema += flat-union-base-union.json |
Eric Blake | d220fbc | 2015-09-29 16:21:03 -0600 | [diff] [blame] | 255 | qapi-schema += flat-union-clash-member.json |
Markus Armbruster | cd346bd | 2019-09-14 17:34:50 +0200 | [diff] [blame] | 256 | qapi-schema += flat-union-discriminator-bad-name.json |
Eric Blake | 8d25dd1 | 2015-09-29 16:21:05 -0600 | [diff] [blame] | 257 | qapi-schema += flat-union-empty.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 258 | qapi-schema += flat-union-inline.json |
Marc-André Lureau | 87adbbf | 2018-12-13 16:37:14 +0400 | [diff] [blame] | 259 | qapi-schema += flat-union-inline-invalid-dict.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 260 | qapi-schema += flat-union-int-branch.json |
| 261 | qapi-schema += flat-union-invalid-branch-key.json |
| 262 | qapi-schema += flat-union-invalid-discriminator.json |
Marc-André Lureau | ccadd6b | 2018-12-13 16:37:15 +0400 | [diff] [blame] | 263 | qapi-schema += flat-union-invalid-if-discriminator.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 264 | qapi-schema += flat-union-no-base.json |
| 265 | qapi-schema += flat-union-optional-discriminator.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 266 | qapi-schema += flat-union-string-discriminator.json |
| 267 | qapi-schema += funny-char.json |
Markus Armbruster | 4d42815 | 2019-09-14 17:34:53 +0200 | [diff] [blame] | 268 | qapi-schema += funny-word.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 269 | qapi-schema += ident-with-escape.json |
| 270 | qapi-schema += include-before-err.json |
| 271 | qapi-schema += include-cycle.json |
Markus Armbruster | bc52d03 | 2017-03-15 13:56:51 +0100 | [diff] [blame] | 272 | qapi-schema += include-extra-junk.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 273 | qapi-schema += include-nested-err.json |
| 274 | qapi-schema += include-no-file.json |
| 275 | qapi-schema += include-non-file.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 276 | qapi-schema += include-repetition.json |
| 277 | qapi-schema += include-self-cycle.json |
| 278 | qapi-schema += include-simple.json |
| 279 | qapi-schema += indented-expr.json |
| 280 | qapi-schema += leading-comma-list.json |
| 281 | qapi-schema += leading-comma-object.json |
| 282 | qapi-schema += missing-colon.json |
| 283 | qapi-schema += missing-comma-list.json |
| 284 | qapi-schema += missing-comma-object.json |
| 285 | qapi-schema += missing-type.json |
| 286 | qapi-schema += nested-struct-data.json |
Marc-André Lureau | 87adbbf | 2018-12-13 16:37:14 +0400 | [diff] [blame] | 287 | qapi-schema += nested-struct-data-invalid-dict.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 288 | qapi-schema += non-objects.json |
Peter Xu | 1a1b11d | 2018-03-26 14:38:59 +0800 | [diff] [blame] | 289 | qapi-schema += oob-test.json |
Igor Mammedov | 7b13f2c | 2018-05-11 19:15:59 +0200 | [diff] [blame] | 290 | qapi-schema += allow-preconfig-test.json |
Markus Armbruster | bc52d03 | 2017-03-15 13:56:51 +0100 | [diff] [blame] | 291 | qapi-schema += pragma-doc-required-crap.json |
| 292 | qapi-schema += pragma-extra-junk.json |
Markus Armbruster | 2cfbae3 | 2017-03-15 13:56:55 +0100 | [diff] [blame] | 293 | qapi-schema += pragma-name-case-whitelist-crap.json |
Markus Armbruster | bc52d03 | 2017-03-15 13:56:51 +0100 | [diff] [blame] | 294 | qapi-schema += pragma-non-dict.json |
Markus Armbruster | 137cf6a | 2019-09-14 17:34:48 +0200 | [diff] [blame] | 295 | qapi-schema += pragma-unknown.json |
Markus Armbruster | 1554a8f | 2017-03-15 13:56:54 +0100 | [diff] [blame] | 296 | qapi-schema += pragma-returns-whitelist-crap.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 297 | qapi-schema += qapi-schema-test.json |
| 298 | qapi-schema += quoted-structural-chars.json |
| 299 | qapi-schema += redefined-builtin.json |
| 300 | qapi-schema += redefined-command.json |
| 301 | qapi-schema += redefined-event.json |
| 302 | qapi-schema += redefined-type.json |
Eric Blake | 1976708 | 2015-10-26 16:34:40 -0600 | [diff] [blame] | 303 | qapi-schema += reserved-command-q.json |
Eric Blake | 59a92fe | 2015-11-18 01:52:56 -0700 | [diff] [blame] | 304 | qapi-schema += reserved-enum-q.json |
Eric Blake | 1976708 | 2015-10-26 16:34:40 -0600 | [diff] [blame] | 305 | qapi-schema += reserved-member-has.json |
| 306 | qapi-schema += reserved-member-q.json |
Eric Blake | 5e59baf | 2015-10-26 16:35:02 -0600 | [diff] [blame] | 307 | qapi-schema += reserved-member-u.json |
Eric Blake | 59a92fe | 2015-11-18 01:52:56 -0700 | [diff] [blame] | 308 | qapi-schema += reserved-member-underscore.json |
Eric Blake | 1976708 | 2015-10-26 16:34:40 -0600 | [diff] [blame] | 309 | qapi-schema += reserved-type-kind.json |
| 310 | qapi-schema += reserved-type-list.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 311 | qapi-schema += returns-alternate.json |
| 312 | qapi-schema += returns-array-bad.json |
| 313 | qapi-schema += returns-dict.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 314 | qapi-schema += returns-unknown.json |
| 315 | qapi-schema += returns-whitelist.json |
Markus Armbruster | 56a8caf | 2019-09-13 22:13:39 +0200 | [diff] [blame] | 316 | qapi-schema += string-code-point-31.json |
| 317 | qapi-schema += string-code-point-127.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 318 | qapi-schema += struct-base-clash-deep.json |
| 319 | qapi-schema += struct-base-clash.json |
| 320 | qapi-schema += struct-data-invalid.json |
Markus Armbruster | ef91ab0 | 2019-09-14 17:34:52 +0200 | [diff] [blame] | 321 | qapi-schema += struct-member-if-invalid.json |
Marc-André Lureau | 87adbbf | 2018-12-13 16:37:14 +0400 | [diff] [blame] | 322 | qapi-schema += struct-member-invalid-dict.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 323 | qapi-schema += struct-member-invalid.json |
| 324 | qapi-schema += trailing-comma-list.json |
| 325 | qapi-schema += trailing-comma-object.json |
| 326 | qapi-schema += type-bypass-bad-gen.json |
| 327 | qapi-schema += unclosed-list.json |
| 328 | qapi-schema += unclosed-object.json |
| 329 | qapi-schema += unclosed-string.json |
Markus Armbruster | 707fb2d | 2017-03-15 13:56:57 +0100 | [diff] [blame] | 330 | qapi-schema += union-base-empty.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 331 | qapi-schema += union-base-no-discriminator.json |
Eric Blake | 893e1f2 | 2015-12-01 22:20:57 -0700 | [diff] [blame] | 332 | qapi-schema += union-branch-case.json |
Markus Armbruster | ef91ab0 | 2019-09-14 17:34:52 +0200 | [diff] [blame] | 333 | qapi-schema += union-branch-if-invalid.json |
Marc-André Lureau | 87adbbf | 2018-12-13 16:37:14 +0400 | [diff] [blame] | 334 | qapi-schema += union-branch-invalid-dict.json |
Eric Blake | d220fbc | 2015-09-29 16:21:03 -0600 | [diff] [blame] | 335 | qapi-schema += union-clash-branches.json |
Eric Blake | 8d25dd1 | 2015-09-29 16:21:05 -0600 | [diff] [blame] | 336 | qapi-schema += union-empty.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 337 | qapi-schema += union-invalid-base.json |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 338 | qapi-schema += union-optional-branch.json |
| 339 | qapi-schema += union-unknown.json |
| 340 | qapi-schema += unknown-escape.json |
| 341 | qapi-schema += unknown-expr-key.json |
Marc-André Lureau | 3313b61 | 2017-01-13 15:41:29 +0100 | [diff] [blame] | 342 | |
| 343 | |
Eric Blake | 1ffe818 | 2015-09-29 16:20:59 -0600 | [diff] [blame] | 344 | check-qapi-schema-y := $(addprefix tests/qapi-schema/, $(qapi-schema)) |
Markus Armbruster | 9862657 | 2013-07-27 17:41:53 +0200 | [diff] [blame] | 345 | |
Laurent Vivier | 3dff199 | 2019-04-01 16:12:19 +0200 | [diff] [blame] | 346 | generated-files-y += tests/test-qapi-types.h |
| 347 | generated-files-y += tests/include/test-qapi-types-sub-module.h |
| 348 | generated-files-y += tests/test-qapi-types-sub-sub-module.h |
| 349 | generated-files-y += tests/test-qapi-visit.h |
| 350 | generated-files-y += tests/include/test-qapi-visit-sub-module.h |
| 351 | generated-files-y += tests/test-qapi-visit-sub-sub-module.h |
| 352 | generated-files-y += tests/test-qapi-commands.h |
Markus Armbruster | 00ca24f | 2019-11-20 19:25:48 +0100 | [diff] [blame] | 353 | generated-files-y += tests/test-qapi-init-commands.h |
Laurent Vivier | 3dff199 | 2019-04-01 16:12:19 +0200 | [diff] [blame] | 354 | generated-files-y += tests/include/test-qapi-commands-sub-module.h |
| 355 | generated-files-y += tests/test-qapi-commands-sub-sub-module.h |
Markus Armbruster | 0cc0e26 | 2019-11-20 19:25:47 +0100 | [diff] [blame] | 356 | generated-files-y += tests/test-qapi-emit-events.h |
Laurent Vivier | 3dff199 | 2019-04-01 16:12:19 +0200 | [diff] [blame] | 357 | generated-files-y += tests/test-qapi-events.h |
| 358 | generated-files-y += tests/include/test-qapi-events-sub-module.h |
| 359 | generated-files-y += tests/test-qapi-events-sub-sub-module.h |
| 360 | generated-files-y += tests/test-qapi-introspect.h |
Anthony Liguori | dbfe06c | 2012-01-10 13:10:43 -0600 | [diff] [blame] | 361 | |
Thomas Huth | 1e8a1fa | 2019-09-09 12:04:01 +0200 | [diff] [blame] | 362 | QEMU_CFLAGS += -I$(SRC_PATH)/tests -I$(SRC_PATH)/tests/qtest |
Paolo Bonzini | b93b63f | 2012-03-28 15:42:01 +0200 | [diff] [blame] | 363 | |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 364 | |
| 365 | # Deps that are common to various different sets of tests below |
Paolo Bonzini | ebedb37 | 2017-09-19 16:20:31 +0200 | [diff] [blame] | 366 | test-util-obj-y = libqemuutil.a |
Daniel P. Berrange | 0c7012e | 2015-09-02 11:18:16 +0100 | [diff] [blame] | 367 | test-qom-obj-y = $(qom-obj-y) $(test-util-obj-y) |
Markus Armbruster | 709395f | 2019-03-01 16:40:48 +0100 | [diff] [blame] | 368 | test-qapi-obj-y = tests/test-qapi-types.o \ |
| 369 | tests/include/test-qapi-types-sub-module.o \ |
| 370 | tests/test-qapi-types-sub-sub-module.o \ |
| 371 | tests/test-qapi-visit.o \ |
| 372 | tests/include/test-qapi-visit-sub-module.o \ |
| 373 | tests/test-qapi-visit-sub-sub-module.o \ |
Markus Armbruster | a952910 | 2018-12-18 19:22:21 +0100 | [diff] [blame] | 374 | tests/test-qapi-introspect.o \ |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 375 | $(test-qom-obj-y) |
Laurent Vivier | 29de280 | 2019-04-01 16:12:22 +0200 | [diff] [blame] | 376 | benchmark-crypto-obj-$(CONFIG_BLOCK) = $(authz-obj-y) $(crypto-obj-y) $(test-qom-obj-y) |
| 377 | test-crypto-obj-$(CONFIG_BLOCK) = $(authz-obj-y) $(crypto-obj-y) $(test-qom-obj-y) |
| 378 | test-io-obj-$(CONFIG_BLOCK) = $(io-obj-y) $(test-crypto-obj-y) |
| 379 | test-authz-obj-$(CONFIG_BLOCK) = $(test-qom-obj-y) $(authz-obj-y) |
| 380 | test-block-obj-$(CONFIG_BLOCK) = $(block-obj-y) $(test-io-obj-y) tests/iothread.o |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 381 | |
Marc-André Lureau | 01b2ffc | 2017-06-07 20:35:58 +0400 | [diff] [blame] | 382 | tests/check-qnum$(EXESUF): tests/check-qnum.o $(test-util-obj-y) |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 383 | tests/check-qstring$(EXESUF): tests/check-qstring.o $(test-util-obj-y) |
| 384 | tests/check-qdict$(EXESUF): tests/check-qdict.o $(test-util-obj-y) |
Markus Armbruster | 0bcc8e5 | 2018-06-14 21:14:29 +0200 | [diff] [blame] | 385 | tests/check-block-qdict$(EXESUF): tests/check-block-qdict.o $(test-util-obj-y) |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 386 | tests/check-qlist$(EXESUF): tests/check-qlist.o $(test-util-obj-y) |
Eric Blake | 7d7a337 | 2016-04-28 15:45:21 -0600 | [diff] [blame] | 387 | tests/check-qnull$(EXESUF): tests/check-qnull.o $(test-util-obj-y) |
Max Reitz | 1b76e83 | 2017-11-14 19:01:28 +0100 | [diff] [blame] | 388 | tests/check-qobject$(EXESUF): tests/check-qobject.o $(test-util-obj-y) |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 389 | tests/check-qjson$(EXESUF): tests/check-qjson.o $(test-util-obj-y) |
Marc-André Lureau | 382176b | 2017-08-25 12:59:09 +0200 | [diff] [blame] | 390 | tests/check-qlit$(EXESUF): tests/check-qlit.o $(test-util-obj-y) |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 391 | tests/check-qom-interface$(EXESUF): tests/check-qom-interface.o $(test-qom-obj-y) |
| 392 | tests/check-qom-proplist$(EXESUF): tests/check-qom-proplist.o $(test-qom-obj-y) |
Marc-André Lureau | ea3af47 | 2016-10-22 12:53:00 +0300 | [diff] [blame] | 393 | |
Thomas Huth | 3db9f6a | 2019-09-06 17:17:24 +0200 | [diff] [blame] | 394 | tests/test-char$(EXESUF): tests/test-char.o $(test-util-obj-y) $(test-io-obj-y) $(chardev-obj-y) tests/socket-helpers.o |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 395 | tests/test-coroutine$(EXESUF): tests/test-coroutine.o $(test-block-obj-y) |
| 396 | tests/test-aio$(EXESUF): tests/test-aio.o $(test-block-obj-y) |
Paolo Bonzini | 0c330a7 | 2017-02-13 14:52:19 +0100 | [diff] [blame] | 397 | tests/test-aio-multithread$(EXESUF): tests/test-aio-multithread.o $(test-block-obj-y) |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 398 | tests/test-throttle$(EXESUF): tests/test-throttle.o $(test-block-obj-y) |
Kevin Wolf | 881cfd1 | 2017-12-05 14:05:02 +0100 | [diff] [blame] | 399 | tests/test-bdrv-drain$(EXESUF): tests/test-bdrv-drain.o $(test-block-obj-y) $(test-util-obj-y) |
Vladimir Sementsov-Ogievskiy | 2dbfadf | 2019-02-23 22:20:41 +0300 | [diff] [blame] | 400 | tests/test-bdrv-graph-mod$(EXESUF): tests/test-bdrv-graph-mod.o $(test-block-obj-y) $(test-util-obj-y) |
Alberto Garcia | 9ef8112 | 2016-07-29 17:31:41 +0300 | [diff] [blame] | 401 | tests/test-blockjob$(EXESUF): tests/test-blockjob.o $(test-block-obj-y) $(test-util-obj-y) |
Stefan Hajnoczi | 6c6f312 | 2015-11-05 18:13:20 -0500 | [diff] [blame] | 402 | tests/test-blockjob-txn$(EXESUF): tests/test-blockjob-txn.o $(test-block-obj-y) $(test-util-obj-y) |
Kevin Wolf | ad0df3e | 2018-02-16 16:50:14 +0000 | [diff] [blame] | 403 | tests/test-block-backend$(EXESUF): tests/test-block-backend.o $(test-block-obj-y) $(test-util-obj-y) |
Kevin Wolf | 4720cbe | 2019-01-07 13:02:48 +0100 | [diff] [blame] | 404 | tests/test-block-iothread$(EXESUF): tests/test-block-iothread.o $(test-block-obj-y) $(test-util-obj-y) |
Fam Zheng | aef96d7 | 2018-10-11 15:21:35 +0800 | [diff] [blame] | 405 | tests/test-image-locking$(EXESUF): tests/test-image-locking.o $(test-block-obj-y) $(test-util-obj-y) |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 406 | tests/test-thread-pool$(EXESUF): tests/test-thread-pool.o $(test-block-obj-y) |
| 407 | tests/test-iov$(EXESUF): tests/test-iov.o $(test-util-obj-y) |
Vladimir Sementsov-Ogievskiy | a3b5253 | 2017-06-28 15:05:25 +0300 | [diff] [blame] | 408 | tests/test-hbitmap$(EXESUF): tests/test-hbitmap.o $(test-util-obj-y) $(test-crypto-obj-y) |
Peter Xu | ad37f24 | 2019-06-03 14:50:49 +0800 | [diff] [blame] | 409 | tests/test-bitmap$(EXESUF): tests/test-bitmap.o $(test-util-obj-y) |
Eduardo Habkost | 247c9de | 2013-01-23 15:58:27 -0200 | [diff] [blame] | 410 | tests/test-x86-cpuid$(EXESUF): tests/test-x86-cpuid.o |
Juan Quintela | aa3544c | 2017-04-20 12:37:23 +0200 | [diff] [blame] | 411 | tests/test-xbzrle$(EXESUF): tests/test-xbzrle.o migration/xbzrle.o migration/page_cache.o $(test-util-obj-y) |
Alistair Francis | 05cb8ed | 2017-08-18 11:47:35 -0700 | [diff] [blame] | 412 | tests/test-cutils$(EXESUF): tests/test-cutils.o util/cutils.o $(test-util-obj-y) |
Paolo Bonzini | 6046c62 | 2013-06-20 16:19:32 +0200 | [diff] [blame] | 413 | tests/test-int128$(EXESUF): tests/test-int128.o |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 414 | tests/rcutorture$(EXESUF): tests/rcutorture.o $(test-util-obj-y) |
| 415 | tests/test-rcu-list$(EXESUF): tests/test-rcu-list.o $(test-util-obj-y) |
Emilio G. Cota | 90487e4 | 2018-08-19 05:13:32 -0400 | [diff] [blame] | 416 | tests/test-rcu-simpleq$(EXESUF): tests/test-rcu-simpleq.o $(test-util-obj-y) |
Emilio G. Cota | dbf8862 | 2018-08-19 05:13:33 -0400 | [diff] [blame] | 417 | tests/test-rcu-tailq$(EXESUF): tests/test-rcu-tailq.o $(test-util-obj-y) |
Emilio G. Cota | ff9249b | 2016-06-08 14:55:27 -0400 | [diff] [blame] | 418 | tests/test-qdist$(EXESUF): tests/test-qdist.o $(test-util-obj-y) |
Emilio G. Cota | 1a95404 | 2016-06-08 14:55:29 -0400 | [diff] [blame] | 419 | tests/test-qht$(EXESUF): tests/test-qht.o $(test-util-obj-y) |
Emilio G. Cota | 896a9ee | 2016-06-08 14:55:31 -0400 | [diff] [blame] | 420 | tests/test-qht-par$(EXESUF): tests/test-qht-par.o tests/qht-bench$(EXESUF) $(test-util-obj-y) |
Emilio G. Cota | 515864a | 2016-06-08 14:55:30 -0400 | [diff] [blame] | 421 | tests/qht-bench$(EXESUF): tests/qht-bench.o $(test-util-obj-y) |
Richard Henderson | efad668 | 2016-08-29 11:46:16 -0700 | [diff] [blame] | 422 | tests/test-bufferiszero$(EXESUF): tests/test-bufferiszero.o $(test-util-obj-y) |
Emilio G. Cota | 070e3ed | 2016-06-27 15:02:05 -0400 | [diff] [blame] | 423 | tests/atomic_add-bench$(EXESUF): tests/atomic_add-bench.o $(test-util-obj-y) |
Emilio G. Cota | 82fdfcb | 2018-09-10 19:27:43 -0400 | [diff] [blame] | 424 | tests/atomic64-bench$(EXESUF): tests/atomic64-bench.o $(test-util-obj-y) |
Paolo Bonzini | 8fda74a | 2013-06-21 09:09:34 +0200 | [diff] [blame] | 425 | |
Emilio G. Cota | 3ac1f81 | 2018-03-08 21:09:40 -0500 | [diff] [blame] | 426 | tests/fp/%: |
| 427 | $(MAKE) -C $(dir $@) $(notdir $@) |
| 428 | |
Eduardo Habkost | 747b0cb | 2013-07-10 17:08:40 -0300 | [diff] [blame] | 429 | tests/test-qdev-global-props$(EXESUF): tests/test-qdev-global-props.o \ |
Igor Mammedov | 5e95494 | 2014-02-05 16:36:52 +0100 | [diff] [blame] | 430 | hw/core/qdev.o hw/core/qdev-properties.o hw/core/hotplug.o\ |
Andreas Färber | a62c891 | 2015-07-13 19:35:41 +0200 | [diff] [blame] | 431 | hw/core/bus.o \ |
Damien Hedde | c11256a | 2020-01-30 16:02:04 +0000 | [diff] [blame] | 432 | hw/core/resettable.o \ |
Eduardo Habkost | 747b0cb | 2013-07-10 17:08:40 -0300 | [diff] [blame] | 433 | hw/core/irq.o \ |
Paolo Bonzini | 6b1566c | 2014-03-17 13:40:23 +1100 | [diff] [blame] | 434 | hw/core/fw-path-provider.o \ |
Paolo Bonzini | 2f7b92a | 2016-10-24 11:19:49 +0200 | [diff] [blame] | 435 | hw/core/reset.o \ |
Marc-André Lureau | 107b596 | 2019-08-28 16:00:19 +0400 | [diff] [blame] | 436 | hw/core/vmstate-if.o \ |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 437 | $(test-qapi-obj-y) |
Eduardo Habkost | 2668b4b | 2013-11-28 12:01:18 -0200 | [diff] [blame] | 438 | tests/test-vmstate$(EXESUF): tests/test-vmstate.o \ |
Juan Quintela | 576d1ab | 2017-04-20 13:41:20 +0200 | [diff] [blame] | 439 | migration/vmstate.o migration/vmstate-types.o migration/qemu-file.o \ |
Daniel P. Berrange | 8925839 | 2016-04-27 11:05:08 +0100 | [diff] [blame] | 440 | migration/qemu-file-channel.o migration/qjson.o \ |
| 441 | $(test-io-obj-y) |
Paolo Bonzini | c2b38b2 | 2017-02-13 14:52:18 +0100 | [diff] [blame] | 442 | tests/test-timed-average$(EXESUF): tests/test-timed-average.o $(test-util-obj-y) |
Paolo Bonzini | ebedb37 | 2017-09-19 16:20:31 +0200 | [diff] [blame] | 443 | tests/test-base64$(EXESUF): tests/test-base64.o $(test-util-obj-y) |
Paolo Bonzini | 9ee24e9 | 2017-09-19 16:18:42 +0200 | [diff] [blame] | 444 | tests/ptimer-test$(EXESUF): tests/ptimer-test.o tests/ptimer-test-stubs.o hw/core/ptimer.o |
Thomas Huth | 10ae5b3 | 2019-09-09 14:00:55 +0200 | [diff] [blame] | 445 | tests/test-qemu-opts$(EXESUF): tests/test-qemu-opts.o $(test-util-obj-y) |
| 446 | tests/test-keyval$(EXESUF): tests/test-keyval.o $(test-util-obj-y) $(test-qapi-obj-y) |
| 447 | tests/test-write-threshold$(EXESUF): tests/test-write-threshold.o $(test-block-obj-y) |
| 448 | tests/test-uuid$(EXESUF): tests/test-uuid.o $(test-util-obj-y) |
| 449 | tests/test-qapi-util$(EXESUF): tests/test-qapi-util.o $(test-util-obj-y) |
Paolo Bonzini | b93b63f | 2012-03-28 15:42:01 +0200 | [diff] [blame] | 450 | |
Alex Bennée | 3514552 | 2016-03-15 14:30:20 +0000 | [diff] [blame] | 451 | tests/test-logging$(EXESUF): tests/test-logging.o $(test-util-obj-y) |
| 452 | |
Changlong Xie | b311046 | 2016-07-27 15:01:51 +0800 | [diff] [blame] | 453 | tests/test-replication$(EXESUF): tests/test-replication.o $(test-util-obj-y) \ |
| 454 | $(test-block-obj-y) |
| 455 | |
Markus Armbruster | fb0bc83 | 2018-02-26 13:48:58 -0600 | [diff] [blame] | 456 | tests/test-qapi-types.c tests/test-qapi-types.h \ |
Markus Armbruster | 709395f | 2019-03-01 16:40:48 +0100 | [diff] [blame] | 457 | tests/include/test-qapi-types-sub-module.c \ |
| 458 | tests/include/test-qapi-types-sub-module.h \ |
| 459 | tests/test-qapi-types-sub-sub-module.c \ |
| 460 | tests/test-qapi-types-sub-sub-module.h \ |
Markus Armbruster | fb0bc83 | 2018-02-26 13:48:58 -0600 | [diff] [blame] | 461 | tests/test-qapi-visit.c tests/test-qapi-visit.h \ |
Markus Armbruster | 709395f | 2019-03-01 16:40:48 +0100 | [diff] [blame] | 462 | tests/include/test-qapi-visit-sub-module.c \ |
| 463 | tests/include/test-qapi-visit-sub-module.h \ |
| 464 | tests/test-qapi-visit-sub-sub-module.c \ |
| 465 | tests/test-qapi-visit-sub-sub-module.h \ |
Markus Armbruster | eb815e2 | 2018-02-11 10:36:05 +0100 | [diff] [blame] | 466 | tests/test-qapi-commands.h tests/test-qapi-commands.c \ |
Markus Armbruster | 709395f | 2019-03-01 16:40:48 +0100 | [diff] [blame] | 467 | tests/include/test-qapi-commands-sub-module.h \ |
| 468 | tests/include/test-qapi-commands-sub-module.c \ |
| 469 | tests/test-qapi-commands-sub-sub-module.h \ |
| 470 | tests/test-qapi-commands-sub-sub-module.c \ |
Markus Armbruster | 0cc0e26 | 2019-11-20 19:25:47 +0100 | [diff] [blame] | 471 | tests/test-qapi-emit-events.c tests/test-qapi-emit-events.h \ |
Markus Armbruster | eb815e2 | 2018-02-11 10:36:05 +0100 | [diff] [blame] | 472 | tests/test-qapi-events.c tests/test-qapi-events.h \ |
Markus Armbruster | 00ca24f | 2019-11-20 19:25:48 +0100 | [diff] [blame] | 473 | tests/test-qapi-init-commands.c \ |
| 474 | tests/test-qapi-init-commands.h \ |
Markus Armbruster | 709395f | 2019-03-01 16:40:48 +0100 | [diff] [blame] | 475 | tests/include/test-qapi-events-sub-module.c \ |
| 476 | tests/include/test-qapi-events-sub-module.h \ |
| 477 | tests/test-qapi-events-sub-sub-module.c \ |
| 478 | tests/test-qapi-events-sub-sub-module.h \ |
Markus Armbruster | eb815e2 | 2018-02-11 10:36:05 +0100 | [diff] [blame] | 479 | tests/test-qapi-introspect.c tests/test-qapi-introspect.h: \ |
Markus Armbruster | fb0bc83 | 2018-02-26 13:48:58 -0600 | [diff] [blame] | 480 | tests/test-qapi-gen-timestamp ; |
Markus Armbruster | 709395f | 2019-03-01 16:40:48 +0100 | [diff] [blame] | 481 | tests/test-qapi-gen-timestamp: \ |
| 482 | $(SRC_PATH)/tests/qapi-schema/qapi-schema-test.json \ |
| 483 | $(SRC_PATH)/tests/qapi-schema/include/sub-module.json \ |
| 484 | $(SRC_PATH)/tests/qapi-schema/sub-sub-module.json \ |
| 485 | $(qapi-py) |
Matthias Maier | 0d6b93d | 2018-06-18 19:59:58 +0200 | [diff] [blame] | 486 | $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-gen.py \ |
Markus Armbruster | fb0bc83 | 2018-02-26 13:48:58 -0600 | [diff] [blame] | 487 | -o tests -p "test-" $<, \ |
| 488 | "GEN","$(@:%-timestamp=%)") |
Markus Armbruster | f3d4aa5 | 2019-10-18 09:43:39 +0200 | [diff] [blame] | 489 | @rm -f tests/test-qapi-doc.texi |
Markus Armbruster | fb0bc83 | 2018-02-26 13:48:58 -0600 | [diff] [blame] | 490 | @>$@ |
Anthony Liguori | dbfe06c | 2012-01-10 13:10:43 -0600 | [diff] [blame] | 491 | |
Markus Armbruster | fb0bc83 | 2018-02-26 13:48:58 -0600 | [diff] [blame] | 492 | tests/qapi-schema/doc-good.test.texi: $(SRC_PATH)/tests/qapi-schema/doc-good.json $(qapi-py) |
Matthias Maier | 0d6b93d | 2018-06-18 19:59:58 +0200 | [diff] [blame] | 493 | $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-gen.py \ |
Markus Armbruster | fb0bc83 | 2018-02-26 13:48:58 -0600 | [diff] [blame] | 494 | -o tests/qapi-schema -p "doc-good-" $<, \ |
| 495 | "GEN","$@") |
| 496 | @mv tests/qapi-schema/doc-good-qapi-doc.texi $@ |
| 497 | @rm -f tests/qapi-schema/doc-good-qapi-*.[ch] tests/qapi-schema/doc-good-qmp-*.[ch] |
Markus Armbruster | 80d1f2e | 2017-03-20 14:11:54 +0100 | [diff] [blame] | 498 | |
Thomas Huth | 1e8a1fa | 2019-09-09 12:04:01 +0200 | [diff] [blame] | 499 | tests/qtest/dbus-vmstate1.h tests/qtest/dbus-vmstate1.c: tests/qtest/dbus-vmstate1-gen-timestamp ; |
| 500 | tests/qtest/dbus-vmstate1-gen-timestamp: $(SRC_PATH)/tests/qtest/dbus-vmstate1.xml |
Marc-André Lureau | 586ca6b | 2019-09-27 12:39:08 +0400 | [diff] [blame] | 501 | $(call quiet-command,$(GDBUS_CODEGEN) $< \ |
Thomas Huth | 1e8a1fa | 2019-09-09 12:04:01 +0200 | [diff] [blame] | 502 | --interface-prefix org.qemu --generate-c-code tests/qtest/dbus-vmstate1, \ |
Marc-André Lureau | 586ca6b | 2019-09-27 12:39:08 +0400 | [diff] [blame] | 503 | "GEN","$(@:%-timestamp=%)") |
| 504 | @>$@ |
| 505 | |
Thomas Huth | 1e8a1fa | 2019-09-09 12:04:01 +0200 | [diff] [blame] | 506 | tests/qtest/dbus-vmstate-test.o-cflags := -DSRCDIR="$(SRC_PATH)" |
| 507 | tests/qtest/dbus-vmstate1.o-cflags := $(GIO_CFLAGS) |
| 508 | tests/qtest/dbus-vmstate1.o-libs := $(GIO_LIBS) |
Marc-André Lureau | 586ca6b | 2019-09-27 12:39:08 +0400 | [diff] [blame] | 509 | |
Thomas Huth | 1e8a1fa | 2019-09-09 12:04:01 +0200 | [diff] [blame] | 510 | tests/qtest/dbus-vmstate-test.o: tests/qtest/dbus-vmstate1.h |
Marc-André Lureau | 586ca6b | 2019-09-27 12:39:08 +0400 | [diff] [blame] | 511 | |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 512 | tests/test-string-output-visitor$(EXESUF): tests/test-string-output-visitor.o $(test-qapi-obj-y) |
| 513 | tests/test-string-input-visitor$(EXESUF): tests/test-string-input-visitor.o $(test-qapi-obj-y) |
Markus Armbruster | 0cc0e26 | 2019-11-20 19:25:47 +0100 | [diff] [blame] | 514 | tests/test-qmp-event$(EXESUF): tests/test-qmp-event.o $(test-qapi-obj-y) tests/test-qapi-emit-events.o tests/test-qapi-events.o |
Daniel P. Berrange | b3db211 | 2016-09-30 15:45:27 +0100 | [diff] [blame] | 515 | tests/test-qobject-output-visitor$(EXESUF): tests/test-qobject-output-visitor.o $(test-qapi-obj-y) |
Eric Blake | a15fcc3 | 2016-06-09 10:48:44 -0600 | [diff] [blame] | 516 | tests/test-clone-visitor$(EXESUF): tests/test-clone-visitor.o $(test-qapi-obj-y) |
Daniel P. Berrange | b3db211 | 2016-09-30 15:45:27 +0100 | [diff] [blame] | 517 | tests/test-qobject-input-visitor$(EXESUF): tests/test-qobject-input-visitor.o $(test-qapi-obj-y) |
Markus Armbruster | 00ca24f | 2019-11-20 19:25:48 +0100 | [diff] [blame] | 518 | tests/test-qmp-cmds$(EXESUF): tests/test-qmp-cmds.o tests/test-qapi-commands.o tests/test-qapi-init-commands.o $(test-qapi-obj-y) |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 519 | tests/test-visitor-serialization$(EXESUF): tests/test-visitor-serialization.o $(test-qapi-obj-y) |
| 520 | tests/test-opts-visitor$(EXESUF): tests/test-opts-visitor.o $(test-qapi-obj-y) |
Paolo Bonzini | 2d7799f | 2012-02-09 11:21:03 +0100 | [diff] [blame] | 521 | |
Jose Ricardo Ziviani | f539fbe | 2017-01-10 00:10:09 -0200 | [diff] [blame] | 522 | tests/test-shift128$(EXESUF): tests/test-shift128.o $(test-util-obj-y) |
Daniel P. Berrange | b124533 | 2015-09-02 11:35:52 +0100 | [diff] [blame] | 523 | tests/test-mul64$(EXESUF): tests/test-mul64.o $(test-util-obj-y) |
| 524 | tests/test-bitops$(EXESUF): tests/test-bitops.o $(test-util-obj-y) |
Alex Bennée | c3f8962 | 2016-12-09 14:36:00 +0000 | [diff] [blame] | 525 | tests/test-bitcnt$(EXESUF): tests/test-bitcnt.o $(test-util-obj-y) |
Daniel P. Berrange | fb37726 | 2015-09-02 10:57:27 +0100 | [diff] [blame] | 526 | tests/test-crypto-hash$(EXESUF): tests/test-crypto-hash.o $(test-crypto-obj-y) |
Longpeng(Mike) | 0128cd2 | 2017-07-14 14:04:10 -0400 | [diff] [blame] | 527 | tests/benchmark-crypto-hash$(EXESUF): tests/benchmark-crypto-hash.o $(test-crypto-obj-y) |
Longpeng(Mike) | 4fd460b | 2016-12-13 18:43:00 +0800 | [diff] [blame] | 528 | tests/test-crypto-hmac$(EXESUF): tests/test-crypto-hmac.o $(test-crypto-obj-y) |
Longpeng(Mike) | c7a9af4 | 2017-07-14 14:04:11 -0400 | [diff] [blame] | 529 | tests/benchmark-crypto-hmac$(EXESUF): tests/benchmark-crypto-hmac.o $(test-crypto-obj-y) |
Daniel P. Berrange | fb37726 | 2015-09-02 10:57:27 +0100 | [diff] [blame] | 530 | tests/test-crypto-cipher$(EXESUF): tests/test-crypto-cipher.o $(test-crypto-obj-y) |
Longpeng(Mike) | 1efd9d5 | 2017-07-14 14:04:09 -0400 | [diff] [blame] | 531 | tests/benchmark-crypto-cipher$(EXESUF): tests/benchmark-crypto-cipher.o $(test-crypto-obj-y) |
Daniel P. Berrange | ac1d887 | 2015-10-14 09:58:38 +0100 | [diff] [blame] | 532 | tests/test-crypto-secret$(EXESUF): tests/test-crypto-secret.o $(test-crypto-obj-y) |
Daniel P. Berrange | 84f7f18 | 2016-02-11 14:00:17 +0000 | [diff] [blame] | 533 | tests/test-crypto-xts$(EXESUF): tests/test-crypto-xts.o $(test-crypto-obj-y) |
Daniel P. Berrange | 9024603 | 2015-09-21 17:25:34 +0100 | [diff] [blame] | 534 | |
| 535 | tests/crypto-tls-x509-helpers.o-cflags := $(TASN1_CFLAGS) |
| 536 | tests/crypto-tls-x509-helpers.o-libs := $(TASN1_LIBS) |
| 537 | tests/pkix_asn1_tab.o-cflags := $(TASN1_CFLAGS) |
| 538 | |
| 539 | tests/test-crypto-tlscredsx509.o-cflags := $(TASN1_CFLAGS) |
Daniel P. Berrange | 9a2fd43 | 2015-04-13 14:01:39 +0100 | [diff] [blame] | 540 | tests/test-crypto-tlscredsx509$(EXESUF): tests/test-crypto-tlscredsx509.o \ |
| 541 | tests/crypto-tls-x509-helpers.o tests/pkix_asn1_tab.o $(test-crypto-obj-y) |
Daniel P. Berrange | 9024603 | 2015-09-21 17:25:34 +0100 | [diff] [blame] | 542 | |
| 543 | tests/test-crypto-tlssession.o-cflags := $(TASN1_CFLAGS) |
Daniel P. Berrange | d321e1e | 2015-03-02 17:23:31 +0000 | [diff] [blame] | 544 | tests/test-crypto-tlssession$(EXESUF): tests/test-crypto-tlssession.o \ |
Richard W.M. Jones | e1a6dc9 | 2018-07-03 09:03:03 +0100 | [diff] [blame] | 545 | tests/crypto-tls-x509-helpers.o tests/pkix_asn1_tab.o \ |
| 546 | tests/crypto-tls-psk-helpers.o \ |
| 547 | $(test-crypto-obj-y) |
Daniel P. Berrangé | 90e33df | 2018-06-08 17:24:57 +0100 | [diff] [blame] | 548 | tests/test-util-filemonitor$(EXESUF): tests/test-util-filemonitor.o \ |
| 549 | $(test-util-obj-y) |
Daniel P. Berrange | 58dc31f | 2017-12-21 12:55:20 +0000 | [diff] [blame] | 550 | tests/test-util-sockets$(EXESUF): tests/test-util-sockets.o \ |
| 551 | tests/socket-helpers.o $(test-util-obj-y) |
Daniel P. Berrangé | fb5c4eb | 2018-05-02 15:40:33 +0100 | [diff] [blame] | 552 | tests/test-authz-simple$(EXESUF): tests/test-authz-simple.o $(test-authz-obj-y) |
Daniel P. Berrange | c8c9988 | 2015-10-21 14:54:59 +0100 | [diff] [blame] | 553 | tests/test-authz-list$(EXESUF): tests/test-authz-list.o $(test-authz-obj-y) |
Daniel P. Berrangé | 55d8698 | 2018-05-11 12:19:59 +0100 | [diff] [blame] | 554 | tests/test-authz-listfile$(EXESUF): tests/test-authz-listfile.o $(test-authz-obj-y) |
Daniel P. Berrange | 8953caf | 2016-07-27 14:13:56 +0100 | [diff] [blame] | 555 | tests/test-authz-pam$(EXESUF): tests/test-authz-pam.o $(test-authz-obj-y) |
Daniel P. Berrange | b02db2d | 2015-03-18 17:25:45 +0000 | [diff] [blame] | 556 | tests/test-io-task$(EXESUF): tests/test-io-task.o $(test-io-obj-y) |
Daniel P. Berrange | 559607e | 2015-02-27 16:19:33 +0000 | [diff] [blame] | 557 | tests/test-io-channel-socket$(EXESUF): tests/test-io-channel-socket.o \ |
Daniel P. Berrange | 9b589ff | 2017-12-22 11:45:24 +0000 | [diff] [blame] | 558 | tests/io-channel-helpers.o tests/socket-helpers.o $(test-io-obj-y) |
Daniel P. Berrange | d6e4886 | 2015-02-27 18:25:25 +0000 | [diff] [blame] | 559 | tests/test-io-channel-file$(EXESUF): tests/test-io-channel-file.o \ |
| 560 | tests/io-channel-helpers.o $(test-io-obj-y) |
Daniel P. Berrange | ed8ee42 | 2015-03-02 18:13:13 +0000 | [diff] [blame] | 561 | tests/test-io-channel-tls$(EXESUF): tests/test-io-channel-tls.o \ |
| 562 | tests/crypto-tls-x509-helpers.o tests/pkix_asn1_tab.o \ |
| 563 | tests/io-channel-helpers.o $(test-io-obj-y) |
Daniel P. Berrange | 195e14d | 2015-08-27 16:25:30 +0100 | [diff] [blame] | 564 | tests/test-io-channel-command$(EXESUF): tests/test-io-channel-command.o \ |
| 565 | tests/io-channel-helpers.o $(test-io-obj-y) |
Daniel P. Berrange | d98e4eb | 2015-09-15 17:27:33 +0100 | [diff] [blame] | 566 | tests/test-io-channel-buffer$(EXESUF): tests/test-io-channel-buffer.o \ |
| 567 | tests/io-channel-helpers.o $(test-io-obj-y) |
Daniel P. Berrange | 37788f2 | 2015-10-14 13:14:04 +0100 | [diff] [blame] | 568 | tests/test-crypto-pbkdf$(EXESUF): tests/test-crypto-pbkdf.o $(test-crypto-obj-y) |
Daniel P. Berrange | cb73089 | 2015-10-15 12:35:28 +0100 | [diff] [blame] | 569 | tests/test-crypto-ivgen$(EXESUF): tests/test-crypto-ivgen.o $(test-crypto-obj-y) |
Daniel P. Berrange | 5a95e0f | 2015-10-23 16:14:25 +0100 | [diff] [blame] | 570 | tests/test-crypto-afsplit$(EXESUF): tests/test-crypto-afsplit.o $(test-crypto-obj-y) |
Daniel P. Berrange | 7d96901 | 2015-10-24 11:44:13 +0100 | [diff] [blame] | 571 | tests/test-crypto-block$(EXESUF): tests/test-crypto-block.o $(test-crypto-obj-y) |
Richard Henderson | f4c0f98 | 2013-02-16 12:47:01 -0800 | [diff] [blame] | 572 | |
Daniel P. Berrange | 409437e | 2016-07-20 14:23:13 +0100 | [diff] [blame] | 573 | tests/migration/stress$(EXESUF): tests/migration/stress.o |
Peter Maydell | 0bdb12c | 2016-10-04 17:27:21 +0100 | [diff] [blame] | 574 | $(call quiet-command, $(LINKPROG) -static -O3 $(PTHREAD_LIB) -o $@ $< ,"LINK","$(TARGET_DIR)$@") |
Daniel P. Berrange | 409437e | 2016-07-20 14:23:13 +0100 | [diff] [blame] | 575 | |
| 576 | INITRD_WORK_DIR=tests/migration/initrd |
| 577 | |
| 578 | tests/migration/initrd-stress.img: tests/migration/stress$(EXESUF) |
| 579 | mkdir -p $(INITRD_WORK_DIR) |
| 580 | cp $< $(INITRD_WORK_DIR)/init |
| 581 | (cd $(INITRD_WORK_DIR) && (find | cpio --quiet -o -H newc | gzip -9)) > $@ |
| 582 | rm $(INITRD_WORK_DIR)/init |
| 583 | rmdir $(INITRD_WORK_DIR) |
| 584 | |
Thomas Huth | 833884f | 2019-09-09 14:41:27 +0200 | [diff] [blame] | 585 | include $(SRC_PATH)/tests/qtest/Makefile.include |
Anthony Liguori | 49ee359 | 2012-03-28 15:42:05 +0200 | [diff] [blame] | 586 | |
Philippe Mathieu-Daudé | 4be7507 | 2017-09-11 18:01:29 -0300 | [diff] [blame] | 587 | tests/test-qga$(EXESUF): qemu-ga$(EXESUF) |
| 588 | tests/test-qga$(EXESUF): tests/test-qga.o $(qtest-obj-y) |
Dr. David Alan Gilbert | 4eb3872 | 2020-01-17 12:26:48 +0000 | [diff] [blame] | 589 | tests/vhost-user-bridge$(EXESUF): tests/vhost-user-bridge.o $(test-util-obj-y) libvhost-user.a |
Marc-André Lureau | 62c39b3 | 2015-10-02 14:58:18 +0200 | [diff] [blame] | 590 | |
Paolo Bonzini | b93b63f | 2012-03-28 15:42:01 +0200 | [diff] [blame] | 591 | SPEED = quick |
Anthony Liguori | dbfe06c | 2012-01-10 13:10:43 -0600 | [diff] [blame] | 592 | |
Paolo Bonzini | b93b63f | 2012-03-28 15:42:01 +0200 | [diff] [blame] | 593 | # gtester tests, possibly with verbose output |
Paolo Bonzini | 9df4331 | 2018-11-29 18:45:31 +0100 | [diff] [blame] | 594 | # do_test_tap runs all tests, even if some of them fail, while do_test_human |
| 595 | # stops at the first failure unless -k is given on the command line |
| 596 | |
| 597 | define do_test_human_k |
| 598 | $(quiet-@)rc=0; $(foreach COMMAND, $1, \ |
| 599 | $(call quiet-command-run, \ |
| 600 | export MALLOC_PERTURB_=$${MALLOC_PERTURB_:-$$(( $${RANDOM:-0} % 255 + 1))} $2; \ |
| 601 | $(COMMAND) -m=$(SPEED) -k --tap < /dev/null \ |
| 602 | | ./scripts/tap-driver.pl --test-name="$(notdir $(COMMAND))" $(if $(V),, --show-failures-only) \ |
| 603 | || rc=$$?;, "TEST", "$@: $(COMMAND)")) exit $$rc |
| 604 | endef |
| 605 | define do_test_human_no_k |
| 606 | $(foreach COMMAND, $1, \ |
| 607 | $(call quiet-command, \ |
| 608 | MALLOC_PERTURB_=$${MALLOC_PERTURB_:-$$(( $${RANDOM:-0} % 255 + 1))} $2 \ |
| 609 | $(COMMAND) -m=$(SPEED) -k --tap < /dev/null \ |
| 610 | | ./scripts/tap-driver.pl --test-name="$(notdir $(COMMAND))" $(if $(V),, --show-failures-only), \ |
| 611 | "TEST", "$@: $(COMMAND)") |
| 612 | ) |
| 613 | endef |
| 614 | do_test_human = \ |
| 615 | $(if $(findstring k, $(MAKEFLAGS)), $(do_test_human_k), $(do_test_human_no_k)) |
| 616 | |
| 617 | define do_test_tap |
| 618 | $(call quiet-command, \ |
| 619 | { export MALLOC_PERTURB_=$${MALLOC_PERTURB_:-$$(( $${RANDOM:-0} % 255 + 1))} $2; \ |
| 620 | $(foreach COMMAND, $1, \ |
| 621 | $(COMMAND) -m=$(SPEED) -k --tap < /dev/null \ |
| 622 | | sed "s/^[a-z][a-z]* [0-9]* /&$(notdir $(COMMAND)) /" || true; ) } \ |
| 623 | | ./scripts/tap-merge.pl | tee "$@" \ |
| 624 | | ./scripts/tap-driver.pl $(if $(V),, --show-failures-only), \ |
| 625 | "TAP","$@") |
| 626 | endef |
Anthony Liguori | dbfe06c | 2012-01-10 13:10:43 -0600 | [diff] [blame] | 627 | |
Anthony Liguori | 49ee359 | 2012-03-28 15:42:05 +0200 | [diff] [blame] | 628 | .PHONY: $(patsubst %, check-qtest-%, $(QTEST_TARGETS)) |
Markus Armbruster | 3b8593e | 2019-05-28 10:23:07 +0200 | [diff] [blame] | 629 | $(patsubst %, check-qtest-%, $(QTEST_TARGETS)): check-qtest-%: %-softmmu/all $(check-qtest-y) |
Thomas Huth | 1e8a1fa | 2019-09-09 12:04:01 +0200 | [diff] [blame] | 630 | $(call do_test_human,$(check-qtest-$*-y:%=tests/qtest/%$(EXESUF)) $(check-qtest-generic-y:%=tests/qtest/%$(EXESUF)), \ |
Paolo Bonzini | 9df4331 | 2018-11-29 18:45:31 +0100 | [diff] [blame] | 631 | QTEST_QEMU_BINARY=$*-softmmu/qemu-system-$* \ |
| 632 | QTEST_QEMU_IMG=qemu-img$(EXESUF)) |
Anthony Liguori | 49ee359 | 2012-03-28 15:42:05 +0200 | [diff] [blame] | 633 | |
Paolo Bonzini | 9df4331 | 2018-11-29 18:45:31 +0100 | [diff] [blame] | 634 | check-unit: $(check-unit-y) |
| 635 | $(call do_test_human, $^) |
Anthony Liguori | dbfe06c | 2012-01-10 13:10:43 -0600 | [diff] [blame] | 636 | |
Paolo Bonzini | 9df4331 | 2018-11-29 18:45:31 +0100 | [diff] [blame] | 637 | check-speed: $(check-speed-y) |
| 638 | $(call do_test_human, $^) |
Paolo Bonzini | b93b63f | 2012-03-28 15:42:01 +0200 | [diff] [blame] | 639 | |
Paolo Bonzini | 9df4331 | 2018-11-29 18:45:31 +0100 | [diff] [blame] | 640 | # gtester tests with TAP output |
Anthony Liguori | 49ee359 | 2012-03-28 15:42:05 +0200 | [diff] [blame] | 641 | |
Markus Armbruster | 3b8593e | 2019-05-28 10:23:07 +0200 | [diff] [blame] | 642 | $(patsubst %, check-report-qtest-%.tap, $(QTEST_TARGETS)): check-report-qtest-%.tap: %-softmmu/all $(check-qtest-y) |
Thomas Huth | 1e8a1fa | 2019-09-09 12:04:01 +0200 | [diff] [blame] | 643 | $(call do_test_tap, $(check-qtest-$*-y:%=tests/qtest/%$(EXESUF)) $(check-qtest-generic-y:%=tests/qtest/%$(EXESUF)), \ |
Paolo Bonzini | 9df4331 | 2018-11-29 18:45:31 +0100 | [diff] [blame] | 644 | QTEST_QEMU_BINARY=$*-softmmu/qemu-system-$* \ |
| 645 | QTEST_QEMU_IMG=qemu-img$(EXESUF)) |
| 646 | |
| 647 | check-report-unit.tap: $(check-unit-y) |
| 648 | $(call do_test_tap,$^) |
Paolo Bonzini | b93b63f | 2012-03-28 15:42:01 +0200 | [diff] [blame] | 649 | |
| 650 | # Reports and overall runs |
| 651 | |
Paolo Bonzini | 9df4331 | 2018-11-29 18:45:31 +0100 | [diff] [blame] | 652 | check-report.tap: $(patsubst %,check-report-qtest-%.tap, $(QTEST_TARGETS)) check-report-unit.tap |
Markus Armbruster | 77b748a | 2019-06-04 10:00:10 +0200 | [diff] [blame] | 653 | $(call quiet-command, cat $^ | scripts/tap-merge.pl >$@,"GEN","$@") |
Kevin Wolf | 8959449 | 2012-03-08 12:29:00 +0100 | [diff] [blame] | 654 | |
Alex Bennée | 2cade3d | 2019-01-07 17:22:19 +0000 | [diff] [blame] | 655 | # FPU Emulation tests (aka softfloat) |
| 656 | # |
| 657 | # As we still have some places that need fixing the rules are a little |
| 658 | # more complex than they need to be and have to override some of the |
| 659 | # generic Makefile expansions. Once we are cleanly passing all |
| 660 | # the tests we can simplify the make syntax. |
| 661 | |
| 662 | FP_TEST_BIN=$(BUILD_DIR)/tests/fp/fp-test |
| 663 | |
| 664 | # the build dir is created by configure |
| 665 | .PHONY: $(FP_TEST_BIN) |
Alex Bennée | 3618e3a | 2020-01-07 17:55:52 +0000 | [diff] [blame] | 666 | $(FP_TEST_BIN): config-host.h $(test-util-obj-y) |
Alex Bennée | 2cade3d | 2019-01-07 17:22:19 +0000 | [diff] [blame] | 667 | $(call quiet-command, \ |
| 668 | $(MAKE) $(SUBDIR_MAKEFLAGS) -C $(dir $@) V="$(V)" $(notdir $@), \ |
| 669 | "BUILD", "$(notdir $@)") |
| 670 | |
| 671 | # The full test suite can take a bit of time, default to a quick run |
Alex Bennée | 4f575c0 | 2019-02-20 15:03:29 +0000 | [diff] [blame] | 672 | # "-l 2 -r all" can take more than a day for some operations and is best |
| 673 | # run manually |
Alex Bennée | bf30e86 | 2019-02-24 15:11:01 +0000 | [diff] [blame] | 674 | FP_TL=-l 1 -r all |
Alex Bennée | 2cade3d | 2019-01-07 17:22:19 +0000 | [diff] [blame] | 675 | |
Alex Bennée | bf30e86 | 2019-02-24 15:11:01 +0000 | [diff] [blame] | 676 | # $1 = tests, $2 = description, $3 = test flags |
Alex Bennée | 2cade3d | 2019-01-07 17:22:19 +0000 | [diff] [blame] | 677 | test-softfloat = $(call quiet-command, \ |
| 678 | cd $(BUILD_DIR)/tests/fp && \ |
Alex Bennée | bf30e86 | 2019-02-24 15:11:01 +0000 | [diff] [blame] | 679 | ./fp-test -s $(if $3,$3,$(FP_TL)) $1 > $2.out 2>&1 || \ |
Alex Bennée | 2cade3d | 2019-01-07 17:22:19 +0000 | [diff] [blame] | 680 | (cat $2.out && exit 1;), \ |
| 681 | "FLOAT TEST", $2) |
| 682 | |
| 683 | # Conversion Routines: |
| 684 | # FIXME: i32_to_extF80 (broken), i64_to_extF80 (broken) |
Alex Bennée | dc3f8a9 | 2019-02-06 15:25:20 +0000 | [diff] [blame] | 685 | # ui32_to_f128 (not implemented), extF80_roundToInt (broken) |
Alex Bennée | 2cade3d | 2019-01-07 17:22:19 +0000 | [diff] [blame] | 686 | # |
| 687 | check-softfloat-conv: $(FP_TEST_BIN) |
| 688 | $(call test-softfloat, \ |
| 689 | i32_to_f16 i64_to_f16 \ |
| 690 | i32_to_f32 i64_to_f32 \ |
| 691 | i32_to_f64 i64_to_f64 \ |
| 692 | i32_to_f128 i64_to_f128, int-to-float) |
| 693 | $(call test-softfloat, \ |
| 694 | ui32_to_f16 ui64_to_f16 \ |
| 695 | ui32_to_f32 ui64_to_f32 \ |
| 696 | ui32_to_f64 ui64_to_f64 \ |
| 697 | ui64_to_f128, uint-to-float) |
| 698 | $(call test-softfloat, \ |
| 699 | f16_to_i32 f16_to_i32_r_minMag \ |
| 700 | f32_to_i32 f32_to_i32_r_minMag \ |
| 701 | f64_to_i32 f64_to_i32_r_minMag \ |
| 702 | extF80_to_i32 extF80_to_i32_r_minMag \ |
| 703 | f128_to_i32 f128_to_i32_r_minMag \ |
| 704 | f16_to_i64 f16_to_i64_r_minMag \ |
| 705 | f32_to_i64 f32_to_i64_r_minMag \ |
| 706 | f64_to_i64 f64_to_i64_r_minMag \ |
| 707 | extF80_to_i64 extF80_to_i64_r_minMag \ |
| 708 | f128_to_i64 f128_to_i64_r_minMag, \ |
| 709 | float-to-int) |
| 710 | $(call test-softfloat, \ |
| 711 | f16_to_ui32 f16_to_ui32_r_minMag \ |
| 712 | f32_to_ui32 f32_to_ui32_r_minMag \ |
| 713 | f64_to_ui32 f64_to_ui32_r_minMag \ |
Alex Bennée | dc3f8a9 | 2019-02-06 15:25:20 +0000 | [diff] [blame] | 714 | f128_to_ui32 f128_to_ui32_r_minMag \ |
Alex Bennée | 2cade3d | 2019-01-07 17:22:19 +0000 | [diff] [blame] | 715 | f16_to_ui64 f16_to_ui64_r_minMag \ |
| 716 | f32_to_ui64 f32_to_ui64_r_minMag \ |
Alex Bennée | dc3f8a9 | 2019-02-06 15:25:20 +0000 | [diff] [blame] | 717 | f64_to_ui64 f64_to_ui64_r_minMag \ |
| 718 | f128_to_ui64 f128_to_ui64_r_minMag, \ |
Alex Bennée | 2cade3d | 2019-01-07 17:22:19 +0000 | [diff] [blame] | 719 | float-to-uint) |
| 720 | $(call test-softfloat, \ |
| 721 | f16_roundToInt f32_roundToInt \ |
| 722 | f64_roundToInt f128_roundToInt, \ |
| 723 | round-to-integer) |
| 724 | |
| 725 | # Generic rule for all float operations |
| 726 | # |
| 727 | # Some patterns are overidden due to broken or missing tests. |
| 728 | # Hopefully these can be removed over time. |
| 729 | |
| 730 | check-softfloat-%: $(FP_TEST_BIN) |
| 731 | $(call test-softfloat, f16_$* f32_$* f64_$* extF80_$* f128_$*, $*) |
| 732 | |
| 733 | # Float Compare routines |
| 734 | SF_COMPARE_OPS=eq eq_signaling le le_quiet lt_quiet |
| 735 | SF_COMPARE_RULES=$(patsubst %,check-softfloat-%, $(SF_COMPARE_OPS)) |
| 736 | |
| 737 | # FIXME: extF80_le_quiet (broken) |
| 738 | check-softfloat-le_quiet: $(FP_TEST_BIN) |
| 739 | $(call test-softfloat, \ |
| 740 | f16_le_quiet f32_le_quiet f64_le_quiet \ |
| 741 | f128_le_quiet, \ |
| 742 | le_quiet) |
| 743 | |
| 744 | # FIXME: extF80_lt_quiet (broken) |
| 745 | check-softfloat-lt_quiet: $(FP_TEST_BIN) |
| 746 | $(call test-softfloat, \ |
| 747 | f16_lt_quiet f32_lt_quiet f64_lt_quiet \ |
| 748 | f128_lt_quiet, \ |
| 749 | lt_quiet) |
| 750 | |
| 751 | .PHONY: check-softfloat-compare |
| 752 | check-softfloat-compare: $(SF_COMPARE_RULES) |
| 753 | |
| 754 | # Math Operations |
| 755 | |
| 756 | # FIXME: extF80_mulAdd (missing) |
| 757 | check-softfloat-mulAdd: $(FP_TEST_BIN) |
| 758 | $(call test-softfloat, \ |
| 759 | f16_mulAdd f32_mulAdd f64_mulAdd f128_mulAdd, \ |
Alex Bennée | bf30e86 | 2019-02-24 15:11:01 +0000 | [diff] [blame] | 760 | mulAdd,-l 1) |
Alex Bennée | 2cade3d | 2019-01-07 17:22:19 +0000 | [diff] [blame] | 761 | |
| 762 | # FIXME: extF80_rem (broken) |
| 763 | check-softfloat-rem: $(FP_TEST_BIN) |
| 764 | $(call test-softfloat, \ |
| 765 | f16_rem f32_rem f64_rem f128_rem, \ |
| 766 | rem) |
| 767 | |
| 768 | SF_MATH_OPS=add sub mul mulAdd div rem sqrt |
| 769 | SF_MATH_RULES=$(patsubst %,check-softfloat-%, $(SF_MATH_OPS)) |
| 770 | |
| 771 | .PHONY: check-softfloat-ops |
| 772 | check-softfloat-ops: $(SF_MATH_RULES) |
| 773 | |
Alex Bennée | 7617010 | 2019-01-07 17:25:44 +0000 | [diff] [blame] | 774 | # Finally a generic rule to test all of softfoat. If TCG isnt't |
| 775 | # enabled we define a null operation which skips the tests. |
| 776 | |
| 777 | .PHONY: check-softfloat |
| 778 | ifeq ($(CONFIG_TCG),y) |
| 779 | check-softfloat: check-softfloat-conv check-softfloat-compare check-softfloat-ops |
| 780 | else |
| 781 | check-softfloat: |
| 782 | $(call quiet-command, /bin/true, "FLOAT TEST", \ |
| 783 | "SKIPPED for non-TCG builds") |
| 784 | endif |
| 785 | |
Alex Bennée | 3089e74 | 2019-05-17 17:09:48 +0100 | [diff] [blame] | 786 | # Plugins |
| 787 | ifeq ($(CONFIG_PLUGIN),y) |
| 788 | .PHONY: plugins |
| 789 | plugins: |
| 790 | $(call quiet-command,\ |
| 791 | $(MAKE) $(SUBDIR_MAKEFLAGS) -C tests/plugin V="$(V)", \ |
| 792 | "BUILD", "plugins") |
| 793 | endif |
| 794 | |
Alex Bennée | 8ba0a82 | 2018-04-06 22:08:36 +0100 | [diff] [blame] | 795 | # Per guest TCG tests |
| 796 | |
Alex Bennée | e24e66f | 2018-11-29 22:21:50 +0000 | [diff] [blame] | 797 | BUILD_TCG_TARGET_RULES=$(patsubst %,build-tcg-tests-%, $(TARGET_DIRS)) |
| 798 | CLEAN_TCG_TARGET_RULES=$(patsubst %,clean-tcg-tests-%, $(TARGET_DIRS)) |
| 799 | RUN_TCG_TARGET_RULES=$(patsubst %,run-tcg-tests-%, $(TARGET_DIRS)) |
Alex Bennée | 8ba0a82 | 2018-04-06 22:08:36 +0100 | [diff] [blame] | 800 | |
Alex Bennée | 1a7fab9 | 2018-06-08 12:12:46 +0100 | [diff] [blame] | 801 | # Probe for the Docker Builds needed for each build |
Alex Bennée | 2b1f35b | 2018-07-04 07:30:11 +0100 | [diff] [blame] | 802 | $(foreach PROBE_TARGET,$(TARGET_DIRS), \ |
Paolo Bonzini | fc76c56 | 2019-08-07 16:35:22 +0200 | [diff] [blame] | 803 | $(eval -include $(SRC_PATH)/tests/tcg/Makefile.prereqs)) |
Alex Bennée | 1a7fab9 | 2018-06-08 12:12:46 +0100 | [diff] [blame] | 804 | |
Alex Bennée | 3089e74 | 2019-05-17 17:09:48 +0100 | [diff] [blame] | 805 | build-tcg-tests-%: $(if $(CONFIG_PLUGIN),plugins) |
Paolo Bonzini | fc76c56 | 2019-08-07 16:35:22 +0200 | [diff] [blame] | 806 | $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) \ |
| 807 | -f $(SRC_PATH)/tests/tcg/Makefile.qemu \ |
| 808 | SRC_PATH=$(SRC_PATH) \ |
Paolo Bonzini | 2038f8c | 2019-08-07 16:35:23 +0200 | [diff] [blame] | 809 | V="$(V)" TARGET="$*" guest-tests, \ |
Alex Bennée | cff5477 | 2018-06-15 19:20:55 +0100 | [diff] [blame] | 810 | "BUILD", "TCG tests for $*") |
Alex Bennée | 8ba0a82 | 2018-04-06 22:08:36 +0100 | [diff] [blame] | 811 | |
Paolo Bonzini | fc76c56 | 2019-08-07 16:35:22 +0200 | [diff] [blame] | 812 | run-tcg-tests-%: build-tcg-tests-% %/all |
| 813 | $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) \ |
| 814 | -f $(SRC_PATH)/tests/tcg/Makefile.qemu \ |
| 815 | SRC_PATH=$(SRC_PATH) SPEED="$(SPEED)" \ |
Paolo Bonzini | 2038f8c | 2019-08-07 16:35:23 +0200 | [diff] [blame] | 816 | V="$(V)" TARGET="$*" run-guest-tests, \ |
Alex Bennée | cff5477 | 2018-06-15 19:20:55 +0100 | [diff] [blame] | 817 | "RUN", "TCG tests for $*") |
Alex Bennée | 8ba0a82 | 2018-04-06 22:08:36 +0100 | [diff] [blame] | 818 | |
| 819 | clean-tcg-tests-%: |
Paolo Bonzini | fc76c56 | 2019-08-07 16:35:22 +0200 | [diff] [blame] | 820 | $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) \ |
| 821 | -f $(SRC_PATH)/tests/tcg/Makefile.qemu \ |
Paolo Bonzini | 2038f8c | 2019-08-07 16:35:23 +0200 | [diff] [blame] | 822 | SRC_PATH=$(SRC_PATH) TARGET="$*" clean-guest-tests, \ |
Alex Bennée | dda60da | 2019-09-10 13:09:31 +0100 | [diff] [blame] | 823 | "CLEAN", "TCG tests for $*") |
Alex Bennée | 8ba0a82 | 2018-04-06 22:08:36 +0100 | [diff] [blame] | 824 | |
| 825 | .PHONY: build-tcg |
| 826 | build-tcg: $(BUILD_TCG_TARGET_RULES) |
| 827 | |
| 828 | .PHONY: check-tcg |
Alex Bennée | df2bb38 | 2019-02-28 10:15:29 +0000 | [diff] [blame] | 829 | check-tcg: $(RUN_TCG_TARGET_RULES) |
Alex Bennée | 8ba0a82 | 2018-04-06 22:08:36 +0100 | [diff] [blame] | 830 | |
| 831 | .PHONY: clean-tcg |
| 832 | clean-tcg: $(CLEAN_TCG_TARGET_RULES) |
Kevin Wolf | b8c6f29 | 2012-03-09 13:37:40 +0100 | [diff] [blame] | 833 | |
Paolo Bonzini | b93b63f | 2012-03-28 15:42:01 +0200 | [diff] [blame] | 834 | # Other tests |
Kevin Wolf | b8c6f29 | 2012-03-09 13:37:40 +0100 | [diff] [blame] | 835 | |
Laurent Vivier | 206d1b9 | 2018-06-05 18:09:58 +0200 | [diff] [blame] | 836 | QEMU_IOTESTS_HELPERS-$(call land,$(CONFIG_SOFTMMU),$(CONFIG_LINUX)) = tests/qemu-iotests/socket_scm_helper$(EXESUF) |
Wenchao Xia | 22ee5a5 | 2013-09-26 08:42:55 +0800 | [diff] [blame] | 837 | |
Thomas Huth | bdd95e4 | 2019-07-12 17:39:33 +0200 | [diff] [blame] | 838 | .PHONY: check-tests/check-block.sh |
| 839 | check-tests/check-block.sh: tests/check-block.sh qemu-img$(EXESUF) \ |
| 840 | qemu-io$(EXESUF) qemu-nbd$(EXESUF) $(QEMU_IOTESTS_HELPERS-y) \ |
| 841 | $(patsubst %,%/all,$(filter %-softmmu,$(TARGET_DIRS))) |
Thomas Huth | 3fb643c | 2019-09-06 13:35:34 +0200 | [diff] [blame] | 842 | @$< |
Kevin Wolf | b8c6f29 | 2012-03-09 13:37:40 +0100 | [diff] [blame] | 843 | |
Markus Armbruster | f01338c | 2019-10-18 09:43:42 +0200 | [diff] [blame] | 844 | .PHONY: check-tests/qapi-schema/frontend |
| 845 | check-tests/qapi-schema/frontend: $(addprefix $(SRC_PATH)/, $(check-qapi-schema-y)) |
Lluís Vilanova | 0a60774 | 2014-05-02 15:52:24 +0200 | [diff] [blame] | 846 | $(call quiet-command, PYTHONPATH=$(SRC_PATH)/scripts \ |
Markus Armbruster | f01338c | 2019-10-18 09:43:42 +0200 | [diff] [blame] | 847 | PYTHONIOENCODING=utf-8 $(PYTHON) $(SRC_PATH)/tests/qapi-schema/test-qapi.py $^, \ |
| 848 | TEST, check-qapi-schema) |
Markus Armbruster | 9862657 | 2013-07-27 17:41:53 +0200 | [diff] [blame] | 849 | |
Markus Armbruster | 80d1f2e | 2017-03-20 14:11:54 +0100 | [diff] [blame] | 850 | .PHONY: check-tests/qapi-schema/doc-good.texi |
| 851 | check-tests/qapi-schema/doc-good.texi: tests/qapi-schema/doc-good.test.texi |
Eric Blake | 02e3092 | 2018-03-15 07:51:16 -0500 | [diff] [blame] | 852 | @diff -u $(SRC_PATH)/tests/qapi-schema/doc-good.texi $< |
Markus Armbruster | 80d1f2e | 2017-03-20 14:11:54 +0100 | [diff] [blame] | 853 | |
Richard Henderson | 568ae7e | 2017-12-07 12:44:09 -0800 | [diff] [blame] | 854 | .PHONY: check-decodetree |
| 855 | check-decodetree: |
| 856 | $(call quiet-command, \ |
| 857 | cd $(SRC_PATH)/tests/decode && \ |
| 858 | ./check.sh "$(PYTHON)" "$(SRC_PATH)/scripts/decodetree.py", \ |
| 859 | TEST, decodetree.py) |
| 860 | |
Cleber Rosa | 2131372 | 2018-10-18 11:31:32 -0400 | [diff] [blame] | 861 | # Python venv for running tests |
| 862 | |
Cleber Rosa | a56931e | 2018-10-18 11:31:33 -0400 | [diff] [blame] | 863 | .PHONY: check-venv check-acceptance |
Cleber Rosa | 2131372 | 2018-10-18 11:31:32 -0400 | [diff] [blame] | 864 | |
| 865 | TESTS_VENV_DIR=$(BUILD_DIR)/tests/venv |
| 866 | TESTS_VENV_REQ=$(SRC_PATH)/tests/requirements.txt |
Cleber Rosa | a56931e | 2018-10-18 11:31:33 -0400 | [diff] [blame] | 867 | TESTS_RESULTS_DIR=$(BUILD_DIR)/tests/results |
| 868 | # Controls the output generated by Avocado when running tests. |
| 869 | # Any number of command separated loggers are accepted. For more |
| 870 | # information please refer to "avocado --help". |
Cleber Rosa | 59692a1 | 2019-03-12 13:18:05 -0400 | [diff] [blame] | 871 | AVOCADO_SHOW=app |
Cleber Rosa | b194713 | 2019-03-12 13:18:09 -0400 | [diff] [blame] | 872 | AVOCADO_TAGS=$(patsubst %-softmmu,-t arch:%, $(filter %-softmmu,$(TARGET_DIRS))) |
Cleber Rosa | 2131372 | 2018-10-18 11:31:32 -0400 | [diff] [blame] | 873 | |
Cleber Rosa | 2131372 | 2018-10-18 11:31:32 -0400 | [diff] [blame] | 874 | $(TESTS_VENV_DIR): $(TESTS_VENV_REQ) |
| 875 | $(call quiet-command, \ |
| 876 | $(PYTHON) -m venv --system-site-packages $@, \ |
| 877 | VENV, $@) |
| 878 | $(call quiet-command, \ |
| 879 | $(TESTS_VENV_DIR)/bin/python -m pip -q install -r $(TESTS_VENV_REQ), \ |
| 880 | PIP, $(TESTS_VENV_REQ)) |
| 881 | $(call quiet-command, touch $@) |
Cleber Rosa | 2131372 | 2018-10-18 11:31:32 -0400 | [diff] [blame] | 882 | |
Cleber Rosa | a56931e | 2018-10-18 11:31:33 -0400 | [diff] [blame] | 883 | $(TESTS_RESULTS_DIR): |
| 884 | $(call quiet-command, mkdir -p $@, \ |
| 885 | MKDIR, $@) |
| 886 | |
Cleber Rosa | 2131372 | 2018-10-18 11:31:32 -0400 | [diff] [blame] | 887 | check-venv: $(TESTS_VENV_DIR) |
| 888 | |
Cleber Rosa | a56931e | 2018-10-18 11:31:33 -0400 | [diff] [blame] | 889 | check-acceptance: check-venv $(TESTS_RESULTS_DIR) |
| 890 | $(call quiet-command, \ |
| 891 | $(TESTS_VENV_DIR)/bin/python -m avocado \ |
| 892 | --show=$(AVOCADO_SHOW) run --job-results-dir=$(TESTS_RESULTS_DIR) \ |
Cleber Rosa | b194713 | 2019-03-12 13:18:09 -0400 | [diff] [blame] | 893 | --filter-by-tags-include-empty --filter-by-tags-include-empty-key \ |
| 894 | $(AVOCADO_TAGS) \ |
Cleber Rosa | 2d320ad | 2019-11-04 10:13:19 -0500 | [diff] [blame] | 895 | --failfast=on tests/acceptance, \ |
Cleber Rosa | a56931e | 2018-10-18 11:31:33 -0400 | [diff] [blame] | 896 | "AVOCADO", "tests/acceptance") |
| 897 | |
Paolo Bonzini | b93b63f | 2012-03-28 15:42:01 +0200 | [diff] [blame] | 898 | # Consolidated targets |
| 899 | |
Markus Armbruster | 3e20c81 | 2019-03-19 08:21:04 +0100 | [diff] [blame] | 900 | .PHONY: check-block check-qapi-schema check-qtest check-unit check check-clean |
Markus Armbruster | f01338c | 2019-10-18 09:43:42 +0200 | [diff] [blame] | 901 | check-qapi-schema: check-tests/qapi-schema/frontend check-tests/qapi-schema/doc-good.texi |
Anthony Liguori | 49ee359 | 2012-03-28 15:42:05 +0200 | [diff] [blame] | 902 | check-qtest: $(patsubst %,check-qtest-%, $(QTEST_TARGETS)) |
Marc-André Lureau | ee6fe05 | 2019-09-03 12:30:48 +0400 | [diff] [blame] | 903 | ifeq ($(CONFIG_TOOLS),y) |
Paolo Bonzini | b93b63f | 2012-03-28 15:42:01 +0200 | [diff] [blame] | 904 | check-block: $(patsubst %,check-%, $(check-block-y)) |
Marc-André Lureau | ee6fe05 | 2019-09-03 12:30:48 +0400 | [diff] [blame] | 905 | endif |
Thomas Huth | bdd95e4 | 2019-07-12 17:39:33 +0200 | [diff] [blame] | 906 | check: check-block check-qapi-schema check-unit check-softfloat check-qtest check-decodetree |
Wenchao Xia | 2cdfb12 | 2013-09-26 08:42:56 +0800 | [diff] [blame] | 907 | check-clean: |
Thomas Huth | 1e8a1fa | 2019-09-09 12:04:01 +0200 | [diff] [blame] | 908 | rm -rf $(check-unit-y) tests/*.o tests/*/*.o $(QEMU_IOTESTS_HELPERS-y) |
| 909 | rm -rf $(sort $(foreach target,$(SYSEMU_TARGET_LIST), $(check-qtest-$(target)-y:%=tests/qtest/%$(EXESUF))) $(check-qtest-generic-y:%=tests/qtest/%$(EXESUF))) |
Markus Armbruster | fb0bc83 | 2018-02-26 13:48:58 -0600 | [diff] [blame] | 910 | rm -f tests/test-qapi-gen-timestamp |
Thomas Huth | 1e8a1fa | 2019-09-09 12:04:01 +0200 | [diff] [blame] | 911 | rm -f tests/qtest/dbus-vmstate1-gen-timestamp |
Cleber Rosa | a56931e | 2018-10-18 11:31:33 -0400 | [diff] [blame] | 912 | rm -rf $(TESTS_VENV_DIR) $(TESTS_RESULTS_DIR) |
Wenchao Xia | 2cdfb12 | 2013-09-26 08:42:56 +0800 | [diff] [blame] | 913 | |
| 914 | clean: check-clean |
Eduardo Habkost | 14117c7 | 2012-07-18 14:22:27 -0300 | [diff] [blame] | 915 | |
Wenchao Xia | 22ee5a5 | 2013-09-26 08:42:55 +0800 | [diff] [blame] | 916 | # Build the help program automatically |
| 917 | |
| 918 | all: $(QEMU_IOTESTS_HELPERS-y) |
| 919 | |
Eduardo Habkost | 14117c7 | 2012-07-18 14:22:27 -0300 | [diff] [blame] | 920 | -include $(wildcard tests/*.d) |
Thomas Huth | 1e8a1fa | 2019-09-09 12:04:01 +0200 | [diff] [blame] | 921 | -include $(wildcard tests/qtest/*.d) |
Thomas Huth | ab00cf4 | 2020-01-27 14:44:35 +0100 | [diff] [blame] | 922 | -include $(wildcard tests/qtest/libqos/*.d) |
Fam Zheng | e45eaef | 2017-08-10 16:50:25 +0800 | [diff] [blame] | 923 | |
| 924 | endif |