get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/105008/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 105008,
    "url": "http://patchwork.dpdk.org/api/patches/105008/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/1638912263-7054-10-git-send-email-jizh@linux.microsoft.com/",
    "project": {
        "id": 1,
        "url": "http://patchwork.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<1638912263-7054-10-git-send-email-jizh@linux.microsoft.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1638912263-7054-10-git-send-email-jizh@linux.microsoft.com",
    "date": "2021-12-07T21:24:21",
    "name": "[v12,09/11] app/test: add test stubs for not supported ones",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "b10fd20e6c183a9c57930993bb9de065c467445a",
    "submitter": {
        "id": 1934,
        "url": "http://patchwork.dpdk.org/api/people/1934/?format=api",
        "name": "Jie Zhou",
        "email": "jizh@linux.microsoft.com"
    },
    "delegate": null,
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/1638912263-7054-10-git-send-email-jizh@linux.microsoft.com/mbox/",
    "series": [
        {
            "id": 20888,
            "url": "http://patchwork.dpdk.org/api/series/20888/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=20888",
            "date": "2021-12-07T21:24:13",
            "name": "app/test: enable subset of tests on Windows",
            "version": 12,
            "mbox": "http://patchwork.dpdk.org/series/20888/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/105008/comments/",
    "check": "warning",
    "checks": "http://patchwork.dpdk.org/api/patches/105008/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 72E75A00C3;\n\tTue,  7 Dec 2021 22:25:21 +0100 (CET)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 785F24275A;\n\tTue,  7 Dec 2021 22:24:40 +0100 (CET)",
            "from linux.microsoft.com (linux.microsoft.com [13.77.154.182])\n by mails.dpdk.org (Postfix) with ESMTP id A5F3C4114A\n for <dev@dpdk.org>; Tue,  7 Dec 2021 22:24:29 +0100 (CET)",
            "from\n linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net\n (linux.microsoft.com [13.77.154.182])\n by linux.microsoft.com (Postfix) with ESMTPSA id 6D10E20B718C;\n Tue,  7 Dec 2021 13:24:28 -0800 (PST)"
        ],
        "DKIM-Filter": "OpenDKIM Filter v2.11.0 linux.microsoft.com 6D10E20B718C",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com;\n s=default; t=1638912268;\n bh=NXnPHqv2q6c8IGtVa88NLxVNh4NxQhY3HJObuVx11vI=;\n h=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n b=HTKym+SfPWqaEPdh1Y0C/HrnkK1XbZQLikir8TbXUqjRoXorpSvA91aG08QH3Tozz\n 3GzZf/ym5F40fBTeDAiTY8qQ9PbRzZ9p5ZQsacl8tjTcvK537UtY7UQLeSm6yYMghw\n s/QIB1wP1eM6lCOfnByRsyMaFDtO9kzAkKhd8/jA=",
        "From": "Jie Zhou <jizh@linux.microsoft.com>",
        "To": "dev@dpdk.org",
        "Cc": "dmitry.kozliuk@gmail.com, bruce.richardson@intel.com,\n roretzla@microsoft.com, navasile@linux.microsoft.com,\n dmitrym@microsoft.com, pallavi.kadam@intel.com, talshn@nvidia.com,\n thomas@monjalon.net, aconole@redhat.com",
        "Subject": "[PATCH v12 09/11] app/test: add test stubs for not supported ones",
        "Date": "Tue,  7 Dec 2021 13:24:21 -0800",
        "Message-Id": "<1638912263-7054-10-git-send-email-jizh@linux.microsoft.com>",
        "X-Mailer": "git-send-email 1.8.3.1",
        "In-Reply-To": "<1638912263-7054-1-git-send-email-jizh@linux.microsoft.com>",
        "References": "<1638490007-9939-1-git-send-email-jizh@linux.microsoft.com>\n <1638912263-7054-1-git-send-email-jizh@linux.microsoft.com>",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org"
    },
    "content": "Add test stubs for tests which are not yet supported for Windows:\n- The libraries the tests depend on are not enabled on Windows yet\n- The tests can compile but with issue still under investigation\n    * test_func_reentrancy:\n      Windows EAL has no protection against repeated calls.\n    * test_lcores:\n      Execution enters an infinite loops, requires investigation.\n    * test_rcu_qsbr_perf:\n      Execution hangs on Windows, requires investigation.\n\nSigned-off-by: Jie Zhou <jizh@linux.microsoft.com>\nSigned-off-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>\n\n---\n app/test/test_acl.c                      | 12 ++++\n app/test/test_bpf.c                      | 15 +++-\n app/test/test_cryptodev.c                |  4 ++\n app/test/test_cryptodev_asym.c           |  4 ++\n app/test/test_cryptodev_blockcipher.c    |  4 ++\n app/test/test_cryptodev_security_ipsec.c |  4 ++\n app/test/test_cryptodev_security_pdcp.c  |  4 ++\n app/test/test_debug.c                    | 17 ++++-\n app/test/test_distributor.c              | 13 ++++\n app/test/test_distributor_perf.c         | 13 ++++\n app/test/test_eal_flags.c                | 90 ++++++++++++++++++++++++\n app/test/test_eal_fs.c                   | 12 ++++\n app/test/test_efd.c                      | 15 +++-\n app/test/test_efd_perf.c                 | 16 ++++-\n app/test/test_event_crypto_adapter.c     | 15 +++-\n app/test/test_event_eth_rx_adapter.c     | 25 ++++++-\n app/test/test_event_eth_tx_adapter.c     | 12 ++++\n app/test/test_event_ring.c               | 16 ++++-\n app/test/test_event_timer_adapter.c      | 16 ++++-\n app/test/test_eventdev.c                 | 20 +++++-\n app/test/test_external_mem.c             | 18 ++++-\n app/test/test_fib.c                      | 22 +++++-\n app/test/test_fib6.c                     | 24 ++++++-\n app/test/test_fib6_perf.c                | 16 ++++-\n app/test/test_fib_perf.c                 | 15 +++-\n app/test/test_flow_classify.c            | 13 ++++\n app/test/test_func_reentrancy.c          | 12 ++++\n app/test/test_graph.c                    | 18 ++++-\n app/test/test_graph_perf.c               | 16 ++++-\n app/test/test_hash_perf.c                | 12 ++++\n app/test/test_ipfrag.c                   | 16 ++++-\n app/test/test_ipsec.c                    | 15 +++-\n app/test/test_ipsec_perf.c               | 15 +++-\n app/test/test_ipsec_sad.c                | 14 +++-\n app/test/test_kni.c                      | 10 +--\n app/test/test_lcores.c                   | 12 ++++\n app/test/test_lpm.c                      | 14 +++-\n app/test/test_lpm6.c                     | 14 +++-\n app/test/test_lpm6_perf.c                | 14 +++-\n app/test/test_lpm_perf.c                 | 13 +++-\n app/test/test_malloc.c                   | 20 ++++--\n app/test/test_mbuf.c                     | 15 +++-\n app/test/test_member.c                   | 16 ++++-\n app/test/test_member_perf.c              | 16 ++++-\n app/test/test_memcpy_perf.c              |  5 +-\n app/test/test_mp_secondary.c             | 12 ++++\n app/test/test_pie.c                      | 30 +++++++-\n app/test/test_rawdev.c                   | 17 ++++-\n app/test/test_rcu_qsbr_perf.c            | 12 ++++\n app/test/test_red.c                      | 29 +++++++-\n app/test/test_reorder.c                  | 15 +++-\n app/test/test_rib.c                      | 22 +++++-\n app/test/test_rib6.c                     | 22 +++++-\n app/test/test_sched.c                    | 14 +++-\n app/test/test_security.c                 |  4 +-\n app/test/test_table.c                    | 13 ++++\n app/test/test_table_acl.c                |  3 +\n app/test/test_table_combined.c           |  4 ++\n app/test/test_table_pipeline.c           |  4 ++\n app/test/test_table_ports.c              |  4 ++\n app/test/test_table_tables.c             |  4 ++\n app/test/test_timer_secondary.c          | 13 ++++\n app/test/test_trace.c                    | 32 +++++++--\n 63 files changed, 882 insertions(+), 74 deletions(-)",
    "diff": "diff --git a/app/test/test_acl.c b/app/test/test_acl.c\nindex 5b32347954..7814e25a53 100644\n--- a/app/test/test_acl.c\n+++ b/app/test/test_acl.c\n@@ -11,6 +11,16 @@\n #include <rte_mbuf.h>\n #include <rte_byteorder.h>\n #include <rte_ip.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_acl(void)\n+{\n+\tprintf(\"acl not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n #include <rte_acl.h>\n #include <rte_common.h>\n \n@@ -1741,4 +1751,6 @@ test_acl(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(acl_autotest, test_acl);\ndiff --git a/app/test/test_bpf.c b/app/test/test_bpf.c\nindex 46bcb51f86..055df252ba 100644\n--- a/app/test/test_bpf.c\n+++ b/app/test/test_bpf.c\n@@ -14,11 +14,22 @@\n #include <rte_random.h>\n #include <rte_byteorder.h>\n #include <rte_errno.h>\n+#include \"test.h\"\n+\n+#if !defined(RTE_LIB_BPF)\n+\n+static int\n+test_bpf(void)\n+{\n+\tprintf(\"BPF not supported, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n #include <rte_bpf.h>\n #include <rte_ether.h>\n #include <rte_ip.h>\n \n-#include \"test.h\"\n \n /*\n  * Basic functional tests for librte_bpf.\n@@ -3248,6 +3259,8 @@ test_bpf(void)\n \treturn rc;\n }\n \n+#endif\n+\n REGISTER_TEST_COMMAND(bpf_autotest, test_bpf);\n \n #ifdef RTE_HAS_LIBPCAP\ndiff --git a/app/test/test_cryptodev.c b/app/test/test_cryptodev.c\nindex 10b48cdadb..f83c844e42 100644\n--- a/app/test/test_cryptodev.c\n+++ b/app/test/test_cryptodev.c\n@@ -3,6 +3,8 @@\n  * Copyright 2020 NXP\n  */\n \n+#ifndef RTE_EXEC_ENV_WINDOWS\n+\n #include <time.h>\n \n #include <rte_common.h>\n@@ -15739,3 +15741,5 @@ REGISTER_TEST_COMMAND(cryptodev_nitrox_autotest, test_cryptodev_nitrox);\n REGISTER_TEST_COMMAND(cryptodev_bcmfs_autotest, test_cryptodev_bcmfs);\n REGISTER_TEST_COMMAND(cryptodev_cn9k_autotest, test_cryptodev_cn9k);\n REGISTER_TEST_COMMAND(cryptodev_cn10k_autotest, test_cryptodev_cn10k);\n+\n+#endif /*ifndef RTE_EXEC_ENV_WINDOWS*/\ndiff --git a/app/test/test_cryptodev_asym.c b/app/test/test_cryptodev_asym.c\nindex 9d19a6d6d9..680ced4dbe 100644\n--- a/app/test/test_cryptodev_asym.c\n+++ b/app/test/test_cryptodev_asym.c\n@@ -3,6 +3,8 @@\n  * Copyright (c) 2019 Intel Corporation\n  */\n \n+#ifndef RTE_EXEC_ENV_WINDOWS\n+\n #include <rte_bus_vdev.h>\n #include <rte_common.h>\n #include <rte_hexdump.h>\n@@ -2429,3 +2431,5 @@ REGISTER_TEST_COMMAND(cryptodev_octeontx2_asym_autotest,\n \t\t\t\t\t  test_cryptodev_octeontx2_asym);\n REGISTER_TEST_COMMAND(cryptodev_cn9k_asym_autotest, test_cryptodev_cn9k_asym);\n REGISTER_TEST_COMMAND(cryptodev_cn10k_asym_autotest, test_cryptodev_cn10k_asym);\n+\n+#endif /*ifndef RTE_EXEC_ENV_WINDOWS*/\ndiff --git a/app/test/test_cryptodev_blockcipher.c b/app/test/test_cryptodev_blockcipher.c\nindex 5688a45377..3860433ffd 100644\n--- a/app/test/test_cryptodev_blockcipher.c\n+++ b/app/test/test_cryptodev_blockcipher.c\n@@ -2,6 +2,8 @@\n  * Copyright(c) 2015-2017 Intel Corporation\n  */\n \n+#ifndef RTE_EXEC_ENV_WINDOWS\n+\n #include <rte_common.h>\n #include <rte_hexdump.h>\n #include <rte_mbuf.h>\n@@ -1221,3 +1223,5 @@ free_blockcipher_test_suite(struct unit_test_suite *ts)\n {\n \tfree(ts);\n }\n+\n+#endif /*ifndef RTE_EXEC_ENV_WINDOWS*/\ndiff --git a/app/test/test_cryptodev_security_ipsec.c b/app/test/test_cryptodev_security_ipsec.c\nindex 4708803bd2..a84afae7f5 100644\n--- a/app/test/test_cryptodev_security_ipsec.c\n+++ b/app/test/test_cryptodev_security_ipsec.c\n@@ -2,6 +2,8 @@\n  * Copyright(C) 2021 Marvell.\n  */\n \n+#ifndef RTE_EXEC_ENV_WINDOWS\n+\n #include <rte_common.h>\n #include <rte_cryptodev.h>\n #include <rte_esp.h>\n@@ -672,3 +674,5 @@ test_ipsec_status_check(struct rte_crypto_op *op,\n \n \treturn ret;\n }\n+\n+#endif /*ifndef RTE_EXEC_ENV_WINDOWS*/\ndiff --git a/app/test/test_cryptodev_security_pdcp.c b/app/test/test_cryptodev_security_pdcp.c\nindex a7641bab7a..3409add715 100644\n--- a/app/test/test_cryptodev_security_pdcp.c\n+++ b/app/test/test_cryptodev_security_pdcp.c\n@@ -4,6 +4,8 @@\n  * Copyright 2018-2019 NXP\n  */\n \n+#ifndef RTE_EXEC_ENV_WINDOWS\n+\n #include <time.h>\n \n #include <rte_common.h>\n@@ -587,3 +589,5 @@ test_PDCP_PROTO_uplane_decap_all(void)\n \n \treturn n - i;\n };\n+\n+#endif /*ifndef RTE_EXEC_ENV_WINDOWS*/\ndiff --git a/app/test/test_debug.c b/app/test/test_debug.c\nindex 23b24db177..c4038a4ed1 100644\n--- a/app/test/test_debug.c\n+++ b/app/test/test_debug.c\n@@ -2,8 +2,21 @@\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n \n+#include \"test.h\"\n+\n #include <stdio.h>\n #include <stdint.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_debug(void)\n+{\n+\tprintf(\"debug not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <sys/resource.h>\n #include <sys/time.h>\n #include <sys/wait.h>\n@@ -14,8 +27,6 @@\n #include <rte_eal.h>\n #include <rte_service_component.h>\n \n-#include \"test.h\"\n-\n /*\n  * Debug test\n  * ==========\n@@ -127,4 +138,6 @@ test_debug(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(debug_autotest, test_debug);\ndiff --git a/app/test/test_distributor.c b/app/test/test_distributor.c\nindex 961f326cd5..0ecd5ba232 100644\n--- a/app/test/test_distributor.c\n+++ b/app/test/test_distributor.c\n@@ -11,6 +11,17 @@\n #include <rte_mempool.h>\n #include <rte_mbuf.h>\n #include <rte_mbuf_dyn.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_distributor(void)\n+{\n+\tprintf(\"distributor not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_distributor.h>\n #include <rte_string_fns.h>\n \n@@ -939,4 +950,6 @@ test_distributor(void)\n \treturn -1;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(distributor_autotest, test_distributor);\ndiff --git a/app/test/test_distributor_perf.c b/app/test/test_distributor_perf.c\nindex 92e330f194..650a0317ef 100644\n--- a/app/test/test_distributor_perf.c\n+++ b/app/test/test_distributor_perf.c\n@@ -10,6 +10,17 @@\n #include <rte_cycles.h>\n #include <rte_common.h>\n #include <rte_mbuf.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_distributor_perf(void)\n+{\n+\tprintf(\"distributor perf not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_distributor.h>\n #include <rte_pause.h>\n \n@@ -264,4 +275,6 @@ test_distributor_perf(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(distributor_perf_autotest, test_distributor_perf);\ndiff --git a/app/test/test_eal_flags.c b/app/test/test_eal_flags.c\nindex d7f4c2cd47..5e7e391881 100644\n--- a/app/test/test_eal_flags.c\n+++ b/app/test/test_eal_flags.c\n@@ -9,6 +9,94 @@\n \n #include <string.h>\n #include <stdarg.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_missing_c_flag(void)\n+{\n+\tprintf(\"emissing_c_flag not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_main_lcore_flag(void)\n+{\n+\tprintf(\"main_lcore_flag not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_invalid_n_flag(void)\n+{\n+\tprintf(\"invalid_n_flag not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_no_hpet_flag(void)\n+{\n+\tprintf(\"no_hpet_flag not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_no_huge_flag(void)\n+{\n+\tprintf(\"no_huge_flag not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_allow_flag(void)\n+{\n+\tprintf(\"allow_flag not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_invalid_b_flag(void)\n+{\n+\tprintf(\"invalid_b_flag not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_invalid_vdev_flag(void)\n+{\n+\tprintf(\"invalid_vdev_flag not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_invalid_r_flag(void)\n+{\n+\tprintf(\"invalid_r_flag not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_memory_flags(void)\n+{\n+\tprintf(\"memory_flags not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_file_prefix(void)\n+{\n+\tprintf(\"file_prefix not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_misc_flags(void)\n+{\n+\tprintf(\"misc_flags not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <libgen.h>\n #include <stdlib.h>\n #include <errno.h>\n@@ -1498,6 +1586,8 @@ test_memory_flags(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(eal_flags_c_opt_autotest, test_missing_c_flag);\n REGISTER_TEST_COMMAND(eal_flags_main_opt_autotest, test_main_lcore_flag);\n REGISTER_TEST_COMMAND(eal_flags_n_opt_autotest, test_invalid_n_flag);\ndiff --git a/app/test/test_eal_fs.c b/app/test/test_eal_fs.c\nindex 39ac6961b3..5d24ae3d32 100644\n--- a/app/test/test_eal_fs.c\n+++ b/app/test/test_eal_fs.c\n@@ -10,6 +10,16 @@\n \n #include \"eal_filesystem.h\"\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_eal_fs(void)\n+{\n+\tprintf(\"eal_fs not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n static int\n test_parse_sysfs_value(void)\n {\n@@ -173,4 +183,6 @@ test_eal_fs(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(eal_fs_autotest, test_eal_fs);\ndiff --git a/app/test/test_efd.c b/app/test/test_efd.c\nindex 1b249e0447..f8f356dcd9 100644\n--- a/app/test/test_efd.c\n+++ b/app/test/test_efd.c\n@@ -1,6 +1,17 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2016-2017 Intel Corporation\n  */\n+#include \"test.h\"\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_efd(void)\n+{\n+\tprintf(\"efd not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n \n #include <rte_memcpy.h>\n #include <rte_malloc.h>\n@@ -10,8 +21,6 @@\n #include <rte_debug.h>\n #include <rte_ip.h>\n \n-#include \"test.h\"\n-\n #define EFD_TEST_KEY_LEN 8\n #define TABLE_SIZE (1 << 21)\n #define ITERATIONS 3\n@@ -462,4 +471,6 @@ test_efd(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(efd_autotest, test_efd);\ndiff --git a/app/test/test_efd_perf.c b/app/test/test_efd_perf.c\nindex f3fe3b1736..1bf6bcb0ca 100644\n--- a/app/test/test_efd_perf.c\n+++ b/app/test/test_efd_perf.c\n@@ -2,6 +2,18 @@\n  * Copyright(c) 2016-2017 Intel Corporation\n  */\n \n+#include \"test.h\"\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_efd_perf(void)\n+{\n+\tprintf(\"efd_perf not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <stdio.h>\n #include <inttypes.h>\n \n@@ -13,8 +25,6 @@\n #include <rte_memcpy.h>\n #include <rte_thash.h>\n \n-#include \"test.h\"\n-\n #define NUM_KEYSIZES 10\n #define NUM_SHUFFLES 10\n #define MAX_KEYSIZE 64\n@@ -382,4 +392,6 @@ test_efd_perf(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(efd_perf_autotest, test_efd_perf);\ndiff --git a/app/test/test_event_crypto_adapter.c b/app/test/test_event_crypto_adapter.c\nindex 3d7e9fb93c..8f5fd78723 100644\n--- a/app/test/test_event_crypto_adapter.c\n+++ b/app/test/test_event_crypto_adapter.c\n@@ -3,16 +3,27 @@\n  * All rights reserved.\n  */\n \n+#include \"test.h\"\n #include <string.h>\n #include <rte_common.h>\n #include <rte_mempool.h>\n #include <rte_mbuf.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_event_crypto_adapter(void)\n+{\n+\tprintf(\"event_crypto_adapter not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_cryptodev.h>\n #include <rte_eventdev.h>\n #include <rte_bus_vdev.h>\n #include <rte_service.h>\n #include <rte_event_crypto_adapter.h>\n-#include \"test.h\"\n \n #define PKT_TRACE                  0\n #define NUM                        1\n@@ -1011,5 +1022,7 @@ test_event_crypto_adapter(void)\n \treturn unit_test_suite_runner(&functional_testsuite);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(event_crypto_adapter_autotest,\n \t\ttest_event_crypto_adapter);\ndiff --git a/app/test/test_event_eth_rx_adapter.c b/app/test/test_event_eth_rx_adapter.c\nindex 7cb91b152f..1df24fdce2 100644\n--- a/app/test/test_event_eth_rx_adapter.c\n+++ b/app/test/test_event_eth_rx_adapter.c\n@@ -1,18 +1,37 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2017 Intel Corporation\n  */\n+\n+#include \"test.h\"\n+\n #include <string.h>\n #include <rte_common.h>\n #include <rte_mempool.h>\n #include <rte_mbuf.h>\n #include <rte_ethdev.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_event_eth_rx_adapter_common(void)\n+{\n+\tprintf(\"event_eth_rx_adapter not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_event_eth_rx_intr_adapter_common(void)\n+{\n+\tprintf(\"event_eth_rx_intr_adapter not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_eventdev.h>\n #include <rte_bus_vdev.h>\n \n #include <rte_event_eth_rx_adapter.h>\n \n-#include \"test.h\"\n-\n #define MAX_NUM_RX_QUEUE\t64\n #define NB_MBUFS\t\t(8192 * num_ports * MAX_NUM_RX_QUEUE)\n #define MBUF_CACHE_SIZE\t\t512\n@@ -1027,6 +1046,8 @@ test_event_eth_rx_intr_adapter_common(void)\n \treturn unit_test_suite_runner(&event_eth_rx_intr_tests);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(event_eth_rx_adapter_autotest,\n \t\ttest_event_eth_rx_adapter_common);\n REGISTER_TEST_COMMAND(event_eth_rx_intr_adapter_autotest,\ndiff --git a/app/test/test_event_eth_tx_adapter.c b/app/test/test_event_eth_tx_adapter.c\nindex cfcc784351..c1c9732dd4 100644\n--- a/app/test/test_event_eth_tx_adapter.c\n+++ b/app/test/test_event_eth_tx_adapter.c\n@@ -16,6 +16,16 @@\n \n #include \"test.h\"\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_event_eth_tx_adapter_common(void)\n+{\n+\tprintf(\"event_eth_tx_adapter not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #define MAX_NUM_QUEUE\t\tRTE_PMD_RING_MAX_RX_RINGS\n #define TEST_INST_ID\t\t0\n #define TEST_DEV_ID\t\t0\n@@ -696,5 +706,7 @@ test_event_eth_tx_adapter_common(void)\n \treturn unit_test_suite_runner(&event_eth_tx_tests);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(event_eth_tx_adapter_autotest,\n \t\ttest_event_eth_tx_adapter_common);\ndiff --git a/app/test/test_event_ring.c b/app/test/test_event_ring.c\nindex 70eb9845e1..9c5e28fb81 100644\n--- a/app/test/test_event_ring.c\n+++ b/app/test/test_event_ring.c\n@@ -2,11 +2,21 @@\n  * Copyright(c) 2010-2017 Intel Corporation\n  */\n \n+#include \"test.h\"\n+\n #include <string.h>\n \n-#include <rte_event_ring.h>\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_event_ring(void)\n+{\n+\tprintf(\"event_ring not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n \n-#include \"test.h\"\n+#else\n+\n+#include <rte_event_ring.h>\n \n /*\n  * Event Ring\n@@ -244,4 +254,6 @@ test_event_ring(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(event_ring_autotest, test_event_ring);\ndiff --git a/app/test/test_event_timer_adapter.c b/app/test/test_event_timer_adapter.c\nindex 25bac2d155..6f7145ef76 100644\n--- a/app/test/test_event_timer_adapter.c\n+++ b/app/test/test_event_timer_adapter.c\n@@ -2,6 +2,7 @@\n  * Copyright(c) 2017 Cavium, Inc\n  * Copyright(c) 2017-2018 Intel Corporation.\n  */\n+#include \"test.h\"\n \n #include <math.h>\n \n@@ -10,6 +11,17 @@\n #include <rte_debug.h>\n #include <rte_eal.h>\n #include <rte_ethdev.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_event_timer_adapter_func(void)\n+{\n+\tprintf(\"event_timer_adapter not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_eventdev.h>\n #include <rte_event_timer_adapter.h>\n #include <rte_mempool.h>\n@@ -21,8 +33,6 @@\n #include <rte_service.h>\n #include <stdbool.h>\n \n-#include \"test.h\"\n-\n /* 4K timers corresponds to sw evdev max inflight events */\n #define MAX_TIMERS  (4 * 1024)\n #define BKT_TCK_NSEC\n@@ -1950,4 +1960,6 @@ test_event_timer_adapter_func(void)\n \treturn unit_test_suite_runner(&event_timer_adptr_functional_testsuite);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(event_timer_adapter_test, test_event_timer_adapter_func);\ndiff --git a/app/test/test_eventdev.c b/app/test/test_eventdev.c\nindex 843d9766b0..fee2ecaa22 100644\n--- a/app/test/test_eventdev.c\n+++ b/app/test/test_eventdev.c\n@@ -1,18 +1,28 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2016 Cavium, Inc\n  */\n+#include \"test.h\"\n \n #include <rte_common.h>\n #include <rte_hexdump.h>\n #include <rte_mbuf.h>\n #include <rte_malloc.h>\n #include <rte_memcpy.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_eventdev_common(void)\n+{\n+\tprintf(\"eventdev_common not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_eventdev.h>\n #include <rte_dev.h>\n #include <rte_bus_vdev.h>\n \n-#include \"test.h\"\n-\n #define TEST_DEV_ID   0\n \n static int\n@@ -1048,7 +1058,11 @@ test_eventdev_selftest_cn10k(void)\n \treturn test_eventdev_selftest_impl(\"event_cn10k\", \"\");\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(eventdev_common_autotest, test_eventdev_common);\n+\n+#ifndef RTE_EXEC_ENV_WINDOWS\n REGISTER_TEST_COMMAND(eventdev_selftest_sw, test_eventdev_selftest_sw);\n REGISTER_TEST_COMMAND(eventdev_selftest_octeontx,\n \t\ttest_eventdev_selftest_octeontx);\n@@ -1058,3 +1072,5 @@ REGISTER_TEST_COMMAND(eventdev_selftest_dpaa2, test_eventdev_selftest_dpaa2);\n REGISTER_TEST_COMMAND(eventdev_selftest_dlb2, test_eventdev_selftest_dlb2);\n REGISTER_TEST_COMMAND(eventdev_selftest_cn9k, test_eventdev_selftest_cn9k);\n REGISTER_TEST_COMMAND(eventdev_selftest_cn10k, test_eventdev_selftest_cn10k);\n+\n+#endif /*ifndef RTE_EXEC_ENV_WINDOWS*/\ndiff --git a/app/test/test_external_mem.c b/app/test/test_external_mem.c\nindex 5edf88b9f6..759f4fce6b 100644\n--- a/app/test/test_external_mem.c\n+++ b/app/test/test_external_mem.c\n@@ -2,11 +2,25 @@\n  * Copyright(c) 2018 Intel Corporation\n  */\n \n+#include \"test.h\"\n+\n #include <errno.h>\n #include <stdio.h>\n #include <stdlib.h>\n #include <string.h>\n #include <fcntl.h>\n+\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_external_mem(void)\n+{\n+\tprintf(\"external_mem not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <sys/mman.h>\n #include <sys/wait.h>\n \n@@ -19,8 +33,6 @@\n #include <rte_ring.h>\n #include <rte_string_fns.h>\n \n-#include \"test.h\"\n-\n #define EXTERNAL_MEM_SZ (RTE_PGSIZE_4K << 10) /* 4M of data */\n \n static int\n@@ -574,4 +586,6 @@ test_external_mem(void)\n \treturn ret;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(external_mem_autotest, test_external_mem);\ndiff --git a/app/test/test_fib.c b/app/test/test_fib.c\nindex eb69d6e2fd..50b3fa760c 100644\n--- a/app/test/test_fib.c\n+++ b/app/test/test_fib.c\n@@ -9,10 +9,28 @@\n \n #include <rte_ip.h>\n #include <rte_log.h>\n-#include <rte_fib.h>\n \n #include \"test.h\"\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_fib(void)\n+{\n+\tprintf(\"fib not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_slow_fib(void)\n+{\n+\tprintf(\"slow_fib not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n+#include <rte_fib.h>\n+\n typedef int32_t (*rte_fib_test)(void);\n \n static int32_t test_create_invalid(void);\n@@ -415,5 +433,7 @@ test_slow_fib(void)\n \treturn unit_test_suite_runner(&fib_slow_tests);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(fib_autotest, test_fib);\n REGISTER_TEST_COMMAND(fib_slow_autotest, test_slow_fib);\ndiff --git a/app/test/test_fib6.c b/app/test/test_fib6.c\nindex 15ad09178a..53cca26ff1 100644\n--- a/app/test/test_fib6.c\n+++ b/app/test/test_fib6.c\n@@ -9,11 +9,29 @@\n \n #include <rte_memory.h>\n #include <rte_log.h>\n-#include <rte_rib6.h>\n-#include <rte_fib6.h>\n \n #include \"test.h\"\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_fib6(void)\n+{\n+\tprintf(\"fib not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_slow_fib6(void)\n+{\n+\tprintf(\"slow_fib not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n+#include <rte_rib6.h>\n+#include <rte_fib6.h>\n+\n typedef int32_t (*rte_fib6_test)(void);\n \n static int32_t test_create_invalid(void);\n@@ -424,5 +442,7 @@ test_slow_fib6(void)\n \treturn unit_test_suite_runner(&fib6_slow_tests);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(fib6_autotest, test_fib6);\n REGISTER_TEST_COMMAND(fib6_slow_autotest, test_slow_fib6);\ndiff --git a/app/test/test_fib6_perf.c b/app/test/test_fib6_perf.c\nindex e565799155..21d2b65318 100644\n--- a/app/test/test_fib6_perf.c\n+++ b/app/test/test_fib6_perf.c\n@@ -10,9 +10,21 @@\n #include <rte_cycles.h>\n #include <rte_random.h>\n #include <rte_memory.h>\n-#include <rte_fib6.h>\n \n #include \"test.h\"\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_fib6_perf(void)\n+{\n+\tprintf(\"fib6_perf not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n+#include <rte_fib6.h>\n+\n #include \"test_lpm6_data.h\"\n \n #define TEST_FIB_ASSERT(cond) do {\t\t\t\t\\\n@@ -155,4 +167,6 @@ test_fib6_perf(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(fib6_perf_autotest, test_fib6_perf);\ndiff --git a/app/test/test_fib_perf.c b/app/test/test_fib_perf.c\nindex 86b2f832b8..ec7f20e102 100644\n--- a/app/test/test_fib_perf.c\n+++ b/app/test/test_fib_perf.c\n@@ -12,11 +12,22 @@\n #include <rte_random.h>\n #include <rte_branch_prediction.h>\n #include <rte_ip.h>\n-#include <rte_fib.h>\n \n #include \"test.h\"\n #include \"test_xmmt_ops.h\"\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_fib_perf(void)\n+{\n+\tprintf(\"fib_perf not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n+#include <rte_fib.h>\n+\n #define TEST_FIB_ASSERT(cond) do {\t\t\t\t\\\n \tif (!(cond)) {\t\t\t\t\t\t\\\n \t\tprintf(\"Error at line %d:\\n\", __LINE__);\t\\\n@@ -409,4 +420,6 @@ test_fib_perf(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(fib_perf_autotest, test_fib_perf);\ndiff --git a/app/test/test_flow_classify.c b/app/test/test_flow_classify.c\nindex 4f64be5357..d9893766d1 100644\n--- a/app/test/test_flow_classify.c\n+++ b/app/test/test_flow_classify.c\n@@ -11,6 +11,17 @@\n #include <rte_mbuf.h>\n #include <rte_byteorder.h>\n #include <rte_ip.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_flow_classify(void)\n+{\n+\tprintf(\"flow_classify not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_acl.h>\n #include <rte_common.h>\n #include <rte_table_acl.h>\n@@ -879,4 +890,6 @@ test_flow_classify(void)\n \treturn TEST_SUCCESS;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(flow_classify_autotest, test_flow_classify);\ndiff --git a/app/test/test_func_reentrancy.c b/app/test/test_func_reentrancy.c\nindex ce40c3ce96..2924308dda 100644\n--- a/app/test/test_func_reentrancy.c\n+++ b/app/test/test_func_reentrancy.c\n@@ -40,6 +40,16 @@\n \n #include \"test.h\"\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_func_reentrancy(void)\n+{\n+\tprintf(\"reentrancy not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n typedef int (*case_func_t)(void* arg);\n typedef void (*case_clean_t)(unsigned lcore_id);\n \n@@ -511,4 +521,6 @@ test_func_reentrancy(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(func_reentrancy_autotest, test_func_reentrancy);\ndiff --git a/app/test/test_graph.c b/app/test/test_graph.c\nindex 81bdcb9bea..ce4cdecd34 100644\n--- a/app/test/test_graph.c\n+++ b/app/test/test_graph.c\n@@ -1,6 +1,8 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(C) 2020 Marvell International Ltd.\n  */\n+#include \"test.h\"\n+\n #include <assert.h>\n #include <inttypes.h>\n #include <signal.h>\n@@ -9,14 +11,23 @@\n #include <unistd.h>\n \n #include <rte_errno.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_node_list_dump(void)\n+{\n+\tprintf(\"node_list_dump not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_graph.h>\n #include <rte_graph_worker.h>\n #include <rte_mbuf.h>\n #include <rte_mbuf_dyn.h>\n #include <rte_random.h>\n \n-#include \"test.h\"\n-\n static uint16_t test_node_worker_source(struct rte_graph *graph,\n \t\t\t\t\tstruct rte_node *node, void **objs,\n \t\t\t\t\tuint16_t nb_objs);\n@@ -841,4 +852,7 @@ test_node_list_dump(void)\n \n \treturn TEST_SUCCESS;\n }\n+\n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(node_list_dump, test_node_list_dump);\ndiff --git a/app/test/test_graph_perf.c b/app/test/test_graph_perf.c\nindex 296d99a9d3..a58cde1f22 100644\n--- a/app/test/test_graph_perf.c\n+++ b/app/test/test_graph_perf.c\n@@ -1,6 +1,8 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(C) 2020 Marvell International Ltd.\n  */\n+#include \"test.h\"\n+\n #include <inttypes.h>\n #include <signal.h>\n #include <stdio.h>\n@@ -9,14 +11,22 @@\n #include <rte_common.h>\n #include <rte_cycles.h>\n #include <rte_errno.h>\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_graph_perf_func(void)\n+{\n+\tprintf(\"graph_perf not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_graph.h>\n #include <rte_graph_worker.h>\n #include <rte_lcore.h>\n #include <rte_malloc.h>\n #include <rte_mbuf.h>\n \n-#include \"test.h\"\n-\n #define TEST_GRAPH_PERF_MZ\t     \"graph_perf_data\"\n #define TEST_GRAPH_SRC_NAME\t     \"test_graph_perf_source\"\n #define TEST_GRAPH_SRC_BRST_ONE_NAME \"test_graph_perf_source_one\"\n@@ -1060,4 +1070,6 @@ test_graph_perf_func(void)\n \treturn unit_test_suite_runner(&graph_perf_testsuite);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(graph_perf_autotest, test_graph_perf_func);\ndiff --git a/app/test/test_hash_perf.c b/app/test/test_hash_perf.c\nindex 7e98ec3964..a3e9f43967 100644\n--- a/app/test/test_hash_perf.c\n+++ b/app/test/test_hash_perf.c\n@@ -17,6 +17,16 @@\n \n #include \"test.h\"\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_hash_perf(void)\n+{\n+\tprintf(\"hash_perf not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #define MAX_ENTRIES (1 << 19)\n #define KEYS_TO_ADD (MAX_ENTRIES)\n #define ADD_PERCENT 0.75 /* 75% table utilization */\n@@ -749,4 +759,6 @@ test_hash_perf(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(hash_perf_autotest, test_hash_perf);\ndiff --git a/app/test/test_ipfrag.c b/app/test/test_ipfrag.c\nindex 1ced25a123..52987b6de7 100644\n--- a/app/test/test_ipfrag.c\n+++ b/app/test/test_ipfrag.c\n@@ -1,6 +1,7 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2020 Red Hat, Inc.\n  */\n+#include \"test.h\"\n \n #include <time.h>\n \n@@ -8,13 +9,22 @@\n #include <rte_cycles.h>\n #include <rte_hexdump.h>\n #include <rte_ip.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_ipfrag(void)\n+{\n+\tprintf(\"ipfrag not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_ip_frag.h>\n #include <rte_mbuf.h>\n #include <rte_memcpy.h>\n #include <rte_random.h>\n \n-#include \"test.h\"\n-\n #define NUM_MBUFS 128\n #define BURST 32\n \n@@ -322,4 +332,6 @@ test_ipfrag(void)\n \treturn unit_test_suite_runner(&ipfrag_testsuite);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(ipfrag_autotest, test_ipfrag);\ndiff --git a/app/test/test_ipsec.c b/app/test/test_ipsec.c\nindex bc2a3dbc2e..ed4d166f0d 100644\n--- a/app/test/test_ipsec.c\n+++ b/app/test/test_ipsec.c\n@@ -1,6 +1,7 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2018 Intel Corporation\n  */\n+#include \"test.h\"\n \n #include <time.h>\n \n@@ -13,15 +14,25 @@\n #include <rte_bus_vdev.h>\n #include <rte_ip.h>\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_ipsec(void)\n+{\n+\tprintf(\"ipsec not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_crypto.h>\n #include <rte_cryptodev.h>\n #include <rte_lcore.h>\n+\n #include <rte_ipsec.h>\n #include <rte_random.h>\n #include <rte_esp.h>\n #include <rte_security_driver.h>\n \n-#include \"test.h\"\n #include \"test_cryptodev.h\"\n \n #define VDEV_ARGS_SIZE\t100\n@@ -2536,4 +2547,6 @@ test_ipsec(void)\n \treturn unit_test_suite_runner(&ipsec_testsuite);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(ipsec_autotest, test_ipsec);\ndiff --git a/app/test/test_ipsec_perf.c b/app/test/test_ipsec_perf.c\nindex 92106bf374..5ebb61ce18 100644\n--- a/app/test/test_ipsec_perf.c\n+++ b/app/test/test_ipsec_perf.c\n@@ -1,6 +1,7 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2020 Intel Corporation\n  */\n+#include \"test.h\"\n \n #include <stdio.h>\n #include <rte_ip.h>\n@@ -8,10 +9,20 @@\n #include <rte_ring.h>\n #include <rte_mbuf.h>\n #include <rte_cycles.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_libipsec_perf(void)\n+{\n+\tprintf(\"ipsec_perf not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_ipsec.h>\n #include <rte_random.h>\n \n-#include \"test.h\"\n #include \"test_cryptodev.h\"\n \n #define RING_SIZE\t4096\n@@ -611,4 +622,6 @@ test_libipsec_perf(void)\n \treturn TEST_SUCCESS;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(ipsec_perf_autotest, test_libipsec_perf);\ndiff --git a/app/test/test_ipsec_sad.c b/app/test/test_ipsec_sad.c\nindex 491164689e..07f3ed245b 100644\n--- a/app/test/test_ipsec_sad.c\n+++ b/app/test/test_ipsec_sad.c\n@@ -1,16 +1,26 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n+#include \"test.h\"\n \n #include <stdio.h>\n #include <stdint.h>\n #include <stdlib.h>\n #include <string.h>\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_ipsec_sad(void)\n+{\n+\tprintf(\"ipsec_sad not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_ipsec_sad.h>\n #include <rte_memory.h>\n \n-#include \"test.h\"\n #include \"test_xmmt_ops.h\"\n \n typedef int32_t (*rte_ipsec_sad_test)(void);\n@@ -884,4 +894,6 @@ test_ipsec_sad(void)\n \treturn unit_test_suite_runner(&ipsec_sad_tests);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(ipsec_sad_autotest, test_ipsec_sad);\ndiff --git a/app/test/test_kni.c b/app/test/test_kni.c\nindex 40ab0d5c4c..8f4e92f6ca 100644\n--- a/app/test/test_kni.c\n+++ b/app/test/test_kni.c\n@@ -2,15 +2,12 @@\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n \n+#include \"test.h\"\n+\n #include <stdio.h>\n #include <stdint.h>\n #include <unistd.h>\n #include <string.h>\n-#include <sys/wait.h>\n-#include <dirent.h>\n-\n-#include \"test.h\"\n-\n #if !defined(RTE_EXEC_ENV_LINUX) || !defined(RTE_LIB_KNI)\n \n static int\n@@ -22,6 +19,9 @@ test_kni(void)\n \n #else\n \n+#include <sys/wait.h>\n+#include <dirent.h>\n+\n #include <rte_string_fns.h>\n #include <rte_mempool.h>\n #include <rte_ethdev.h>\ndiff --git a/app/test/test_lcores.c b/app/test/test_lcores.c\nindex 35c47d5372..2277ae597f 100644\n--- a/app/test/test_lcores.c\n+++ b/app/test/test_lcores.c\n@@ -11,6 +11,16 @@\n \n #include \"test.h\"\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_lcores(void)\n+{\n+\tprintf(\"lcore not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n struct thread_context {\n \tenum { INIT, ERROR, DONE } state;\n \tbool lcore_id_any;\n@@ -411,4 +421,6 @@ test_lcores(void)\n \treturn TEST_SUCCESS;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(lcores_autotest, test_lcores);\ndiff --git a/app/test/test_lpm.c b/app/test/test_lpm.c\nindex 37b460af3a..55ae46207a 100644\n--- a/app/test/test_lpm.c\n+++ b/app/test/test_lpm.c\n@@ -1,6 +1,17 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n+#include \"test.h\"\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_lpm(void)\n+{\n+\tprintf(\"lpm not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n \n #include <stdio.h>\n #include <stdint.h>\n@@ -10,7 +21,6 @@\n #include <rte_lpm.h>\n #include <rte_malloc.h>\n \n-#include \"test.h\"\n #include \"test_xmmt_ops.h\"\n \n #define TEST_LPM_ASSERT(cond) do {                                            \\\n@@ -1584,4 +1594,6 @@ test_lpm(void)\n \treturn global_status;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(lpm_autotest, test_lpm);\ndiff --git a/app/test/test_lpm6.c b/app/test/test_lpm6.c\nindex 17221f992a..a4d8eda62d 100644\n--- a/app/test/test_lpm6.c\n+++ b/app/test/test_lpm6.c\n@@ -1,6 +1,7 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n+#include \"test.h\"\n \n #include <stdio.h>\n #include <stdint.h>\n@@ -8,9 +9,18 @@\n #include <string.h>\n \n #include <rte_memory.h>\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_lpm6(void)\n+{\n+\tprintf(\"lpm6 not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_lpm6.h>\n \n-#include \"test.h\"\n #include \"test_lpm6_data.h\"\n \n #define TEST_LPM_ASSERT(cond) do {                                            \\\n@@ -1792,4 +1802,6 @@ test_lpm6(void)\n \treturn global_status;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(lpm6_autotest, test_lpm6);\ndiff --git a/app/test/test_lpm6_perf.c b/app/test/test_lpm6_perf.c\nindex 0b43ad824a..622418ddfe 100644\n--- a/app/test/test_lpm6_perf.c\n+++ b/app/test/test_lpm6_perf.c\n@@ -1,6 +1,17 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n+#include \"test.h\"\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_lpm6_perf(void)\n+{\n+\tprintf(\"lpm6_perf not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n \n #include <stdio.h>\n #include <stdint.h>\n@@ -12,7 +23,6 @@\n #include <rte_memory.h>\n #include <rte_lpm6.h>\n \n-#include \"test.h\"\n #include \"test_lpm6_data.h\"\n \n #define TEST_LPM_ASSERT(cond) do {                                            \\\n@@ -160,4 +170,6 @@ test_lpm6_perf(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(lpm6_perf_autotest, test_lpm6_perf);\ndiff --git a/app/test/test_lpm_perf.c b/app/test/test_lpm_perf.c\nindex 2bed00d064..d49bce5d36 100644\n--- a/app/test/test_lpm_perf.c\n+++ b/app/test/test_lpm_perf.c\n@@ -2,7 +2,17 @@\n  * Copyright(c) 2010-2014 Intel Corporation\n  * Copyright(c) 2020 Arm Limited\n  */\n+#include \"test.h\"\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_lpm_perf(void)\n+{\n+\tprintf(\"lpm_perf not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n \n+#else\n #include <stdio.h>\n #include <stdint.h>\n #include <stdlib.h>\n@@ -15,7 +25,6 @@\n #include <rte_ip.h>\n #include <rte_lpm.h>\n \n-#include \"test.h\"\n #include \"test_xmmt_ops.h\"\n \n struct rte_lpm *lpm;\n@@ -763,4 +772,6 @@ test_lpm_perf(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(lpm_perf_autotest, test_lpm_perf);\ndiff --git a/app/test/test_malloc.c b/app/test/test_malloc.c\nindex 6d9249f831..fe6b83271b 100644\n--- a/app/test/test_malloc.c\n+++ b/app/test/test_malloc.c\n@@ -1,6 +1,7 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2010-2019 Intel Corporation\n  */\n+#include \"test.h\"\n \n #include <stdio.h>\n #include <stdint.h>\n@@ -8,7 +9,9 @@\n #include <stdarg.h>\n #include <errno.h>\n #include <stdlib.h>\n+#ifndef RTE_EXEC_ENV_WINDOWS\n #include <sys/mman.h>\n+#endif\n #include <sys/queue.h>\n #include <unistd.h>\n \n@@ -23,11 +26,8 @@\n #include <rte_random.h>\n #include <rte_string_fns.h>\n \n-#include \"test.h\"\n-\n #define N 10000\n \n-\n static int\n is_mem_on_socket(int32_t socket);\n \n@@ -47,8 +47,8 @@ addr_to_socket(void *addr);\n static int\n is_memory_overlap(void *p1, size_t len1, void *p2, size_t len2)\n {\n-\tunsigned long ptr1 = (unsigned long)p1;\n-\tunsigned long ptr2 = (unsigned long)p2;\n+\tuintptr_t ptr1 = (uintptr_t)p1;\n+\tuintptr_t ptr2 = (uintptr_t)p2;\n \n \tif (ptr2 >= ptr1 && (ptr2 - ptr1) < len1)\n \t\treturn 1;\n@@ -60,7 +60,7 @@ is_memory_overlap(void *p1, size_t len1, void *p2, size_t len2)\n static int\n is_aligned(void *p, int align)\n {\n-\tunsigned long addr = (unsigned long)p;\n+\tuintptr_t addr = (uintptr_t)p;\n \tunsigned mask = align - 1;\n \n \tif (addr & mask)\n@@ -373,6 +373,13 @@ test_multi_alloc_statistics(void)\n \treturn 0;\n }\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_realloc(void)\n+{\n+\treturn TEST_SKIPPED;\n+}\n+#else\n static int\n test_realloc_socket(int socket)\n {\n@@ -670,6 +677,7 @@ test_realloc(void)\n end:\n \treturn ret;\n }\n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n \n static int\n test_random_alloc_free(void *_ __rte_unused)\ndiff --git a/app/test/test_mbuf.c b/app/test/test_mbuf.c\nindex f54d1d7c00..24ca49f73f 100644\n--- a/app/test/test_mbuf.c\n+++ b/app/test/test_mbuf.c\n@@ -1,6 +1,7 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n+#include \"test.h\"\n \n #include <string.h>\n #include <stdarg.h>\n@@ -33,8 +34,6 @@\n #include <rte_tcp.h>\n #include <rte_mbuf_dyn.h>\n \n-#include \"test.h\"\n-\n #define MEMPOOL_CACHE_SIZE      32\n #define MBUF_DATA_SIZE          2048\n #define NB_MBUF                 128\n@@ -1172,6 +1171,16 @@ test_refcnt_mbuf(void)\n #endif\n }\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+\n+static int\n+test_failing_mbuf_sanity_check(struct rte_mempool* pktmbuf_pool)\n+{\n+\tRTE_SET_USED(pktmbuf_pool);\n+\treturn TEST_SKIPPED;\n+}\n+#else\n+\n #include <unistd.h>\n #include <sys/resource.h>\n #include <sys/time.h>\n@@ -1267,6 +1276,8 @@ test_failing_mbuf_sanity_check(struct rte_mempool *pktmbuf_pool)\n \treturn 0;\n }\n \n+#endif /*!defined RTE_EXEC_ENV_WINDOWS*/\n+\n static int\n test_mbuf_linearize(struct rte_mempool *pktmbuf_pool, int pkt_len,\n \t\t    int nb_segs)\ndiff --git a/app/test/test_member.c b/app/test/test_member.c\nindex 40aa4c8627..85f3a126b9 100644\n--- a/app/test/test_member.c\n+++ b/app/test/test_member.c\n@@ -3,17 +3,27 @@\n  */\n \n /* This test is for membership library's simple feature test */\n+#include \"test.h\"\n \n #include <rte_memcpy.h>\n #include <rte_malloc.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_member(void)\n+{\n+\tprintf(\"member not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_member.h>\n #include <rte_byteorder.h>\n #include <rte_random.h>\n #include <rte_debug.h>\n #include <rte_ip.h>\n \n-#include \"test.h\"\n-\n struct rte_member_setsum *setsum_ht;\n struct rte_member_setsum *setsum_cache;\n struct rte_member_setsum *setsum_vbf;\n@@ -712,4 +722,6 @@ test_member(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(member_autotest, test_member);\ndiff --git a/app/test/test_member_perf.c b/app/test/test_member_perf.c\nindex e2840f12d3..1cc9c3e4d8 100644\n--- a/app/test/test_member_perf.c\n+++ b/app/test/test_member_perf.c\n@@ -1,6 +1,7 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2017 Intel Corporation\n  */\n+#include \"test.h\"\n \n #include <stdio.h>\n #include <inttypes.h>\n@@ -11,9 +12,18 @@\n #include <rte_random.h>\n #include <rte_memcpy.h>\n #include <rte_thash.h>\n-#include <rte_member.h>\n \n-#include \"test.h\"\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_member_perf(void)\n+{\n+\tprintf(\"member_perf not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n+#include <rte_member.h>\n \n #define NUM_KEYSIZES 10\n #define NUM_SHUFFLES 10\n@@ -622,4 +632,6 @@ test_member_perf(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(member_perf_autotest, test_member_perf);\ndiff --git a/app/test/test_memcpy_perf.c b/app/test/test_memcpy_perf.c\nindex 0dc88ed39c..488784c870 100644\n--- a/app/test/test_memcpy_perf.c\n+++ b/app/test/test_memcpy_perf.c\n@@ -2,6 +2,8 @@\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n \n+#include \"test.h\"\n+\n #include <stdint.h>\n #include <stdio.h>\n #include <string.h>\n@@ -12,11 +14,8 @@\n #include <rte_os_shim.h>\n #include <rte_random.h>\n #include <rte_malloc.h>\n-\n #include <rte_memcpy.h>\n \n-#include \"test.h\"\n-\n /*\n  * Set this to the maximum buffer size you want to test. If it is 0, then the\n  * values in the buf_sizes[] array below will be used.\ndiff --git a/app/test/test_mp_secondary.c b/app/test/test_mp_secondary.c\nindex 021ca0547f..54b0f72645 100644\n--- a/app/test/test_mp_secondary.c\n+++ b/app/test/test_mp_secondary.c\n@@ -14,6 +14,16 @@\n #include <errno.h>\n #include <string.h>\n #include <unistd.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+int\n+test_mp_secondary(void)\n+{\n+\tprintf(\"mp_secondary not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n #include <sys/wait.h>\n #include <libgen.h>\n #include <dirent.h>\n@@ -211,4 +221,6 @@ test_mp_secondary(void)\n \treturn run_object_creation_tests();\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(multiprocess_autotest, test_mp_secondary);\ndiff --git a/app/test/test_pie.c b/app/test/test_pie.c\nindex 632d4b014d..edd1aa3d86 100644\n--- a/app/test/test_pie.c\n+++ b/app/test/test_pie.c\n@@ -2,6 +2,32 @@\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n \n+#include \"test.h\"\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_pie(void)\n+{\n+\tprintf(\"pie not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_pie_perf(void)\n+{\n+\tprintf(\"pie_perf not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_pie_all(void)\n+{\n+\tprintf(\"pie_all not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <stdlib.h>\n #include <stdio.h>\n #include <string.h>\n@@ -12,8 +38,6 @@\n #include <time.h>\n #include <math.h>\n \n-#include \"test.h\"\n-\n #include <rte_pie.h>\n \n #ifdef __INTEL_COMPILER\n@@ -1060,6 +1084,8 @@ test_pie_all(void)\n \treturn tell_the_result(num_tests, num_pass);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(pie_autotest, test_pie);\n REGISTER_TEST_COMMAND(pie_perf, test_pie_perf);\n REGISTER_TEST_COMMAND(pie_all, test_pie_all);\ndiff --git a/app/test/test_rawdev.c b/app/test/test_rawdev.c\nindex 081fab969b..561b0e0300 100644\n--- a/app/test/test_rawdev.c\n+++ b/app/test/test_rawdev.c\n@@ -1,16 +1,27 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright 2017 NXP\n  */\n+#include \"test.h\"\n+\n #include <rte_common.h>\n #include <rte_mbuf.h>\n #include <rte_malloc.h>\n #include <rte_memcpy.h>\n #include <rte_dev.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_rawdev_selftests(void)\n+{\n+\tprintf(\"rawdev not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include <rte_rawdev.h>\n #include <rte_bus_vdev.h>\n \n-#include \"test.h\"\n-\n static int\n test_rawdev_selftest_impl(const char *pmd, const char *opts)\n {\n@@ -54,4 +65,6 @@ test_rawdev_selftests(void)\n \treturn ret;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(rawdev_autotest, test_rawdev_selftests);\ndiff --git a/app/test/test_rcu_qsbr_perf.c b/app/test/test_rcu_qsbr_perf.c\nindex cf7b158d22..9209fb2658 100644\n--- a/app/test/test_rcu_qsbr_perf.c\n+++ b/app/test/test_rcu_qsbr_perf.c\n@@ -15,6 +15,16 @@\n \n #include \"test.h\"\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_rcu_qsbr_main(void)\n+{\n+\tprintf(\"rcu_qsbr_main not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n /* Check condition and return an error if true. */\n static uint16_t enabled_core_ids[RTE_MAX_LCORE];\n static unsigned int num_cores;\n@@ -687,4 +697,6 @@ test_rcu_qsbr_main(void)\n \treturn -1;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(rcu_qsbr_perf_autotest, test_rcu_qsbr_main);\ndiff --git a/app/test/test_red.c b/app/test/test_red.c\nindex 05936cfee8..524f9c9b6d 100644\n--- a/app/test/test_red.c\n+++ b/app/test/test_red.c\n@@ -1,6 +1,7 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n+#include \"test.h\"\n \n #include <stdlib.h>\n #include <stdio.h>\n@@ -8,12 +9,34 @@\n #include <stdint.h>\n #include <unistd.h>\n #include <inttypes.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_red(void)\n+{\n+\tprintf(\"red not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_red_perf(void)\n+{\n+\tprintf(\"red_perf not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_red_all(void)\n+{\n+\tprintf(\"red_all not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+#else\n+\n #include <sys/time.h>\n #include <time.h>\n #include <math.h>\n \n-#include \"test.h\"\n-\n #include <rte_red.h>\n \n #ifdef __INTEL_COMPILER\n@@ -1851,6 +1874,8 @@ test_red_all(void)\n \treturn tell_the_result(num_tests, num_pass);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(red_autotest, test_red);\n REGISTER_TEST_COMMAND(red_perf, test_red_perf);\n REGISTER_TEST_COMMAND(red_all, test_red_all);\ndiff --git a/app/test/test_reorder.c b/app/test/test_reorder.c\nindex 1c4226da65..c73cbdefe6 100644\n--- a/app/test/test_reorder.c\n+++ b/app/test/test_reorder.c\n@@ -1,6 +1,7 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n+#include \"test.h\"\n \n #include <stdio.h>\n #include <unistd.h>\n@@ -9,12 +10,20 @@\n #include <rte_cycles.h>\n #include <rte_errno.h>\n #include <rte_mbuf.h>\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_reorder(void)\n+{\n+\tprintf(\"reorder not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+#else\n+\n #include <rte_reorder.h>\n #include <rte_lcore.h>\n #include <rte_malloc.h>\n \n-#include \"test.h\"\n-\n #define BURST 32\n #define REORDER_BUFFER_SIZE 16384\n #define NUM_MBUFS (2*REORDER_BUFFER_SIZE)\n@@ -390,4 +399,6 @@ test_reorder(void)\n \treturn unit_test_suite_runner(&reorder_test_suite);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(reorder_autotest, test_reorder);\ndiff --git a/app/test/test_rib.c b/app/test/test_rib.c\nindex 3dc48fe1f2..ad7c79ca78 100644\n--- a/app/test/test_rib.c\n+++ b/app/test/test_rib.c\n@@ -2,15 +2,31 @@\n  * Copyright(c) 2018 Vladimir Medvedkin <medvedkinv@gmail.com>\n  * Copyright(c) 2019 Intel Corporation\n  */\n+#include \"test.h\"\n \n #include <stdio.h>\n #include <stdint.h>\n #include <stdlib.h>\n \n #include <rte_ip.h>\n-#include <rte_rib.h>\n \n-#include \"test.h\"\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_rib(void)\n+{\n+\tprintf(\"rib not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_slow_rib(void)\n+{\n+\tprintf(\"slow_rib not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+#else\n+\n+#include <rte_rib.h>\n \n typedef int32_t (*rte_rib_test)(void);\n \n@@ -363,5 +379,7 @@ test_slow_rib(void)\n \treturn unit_test_suite_runner(&rib_slow_tests);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(rib_autotest, test_rib);\n REGISTER_TEST_COMMAND(rib_slow_autotest, test_slow_rib);\ndiff --git a/app/test/test_rib6.c b/app/test/test_rib6.c\nindex c77df11298..9d0e3cb55e 100644\n--- a/app/test/test_rib6.c\n+++ b/app/test/test_rib6.c\n@@ -3,14 +3,31 @@\n  * Copyright(c) 2019 Intel Corporation\n  */\n \n+#include \"test.h\"\n+\n #include <stdio.h>\n #include <stdint.h>\n #include <stdlib.h>\n \n #include <rte_ip.h>\n-#include <rte_rib6.h>\n \n-#include \"test.h\"\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_rib6(void)\n+{\n+\tprintf(\"rib6 not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_slow_rib6(void)\n+{\n+\tprintf(\"slow_rib6 not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+#else\n+\n+#include <rte_rib6.h>\n \n typedef int32_t (*rte_rib6_test)(void);\n \n@@ -368,5 +385,6 @@ test_slow_rib6(void)\n \treturn unit_test_suite_runner(&rib6_slow_tests);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n REGISTER_TEST_COMMAND(rib6_autotest, test_rib6);\n REGISTER_TEST_COMMAND(rib6_slow_autotest, test_slow_rib6);\ndiff --git a/app/test/test_sched.c b/app/test/test_sched.c\nindex 958b631144..ad3e978ea6 100644\n--- a/app/test/test_sched.c\n+++ b/app/test/test_sched.c\n@@ -14,8 +14,18 @@\n #include <rte_ether.h>\n #include <rte_ip.h>\n #include <rte_byteorder.h>\n-#include <rte_sched.h>\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_sched(void)\n+{\n+\tprintf(\"sched not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n+#include <rte_sched.h>\n \n #define SUBPORT         0\n #define PIPE            1\n@@ -204,4 +214,6 @@ test_sched(void)\n \treturn 0;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(sched_autotest, test_sched);\ndiff --git a/app/test/test_security.c b/app/test/test_security.c\nindex 060cf1ffa8..6c1d8602d2 100644\n--- a/app/test/test_security.c\n+++ b/app/test/test_security.c\n@@ -1,12 +1,14 @@\n /* SPDX-License-Identifier: BSD-3-Clause\n  * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved\n  */\n+#include \"test.h\"\n \n #include <rte_errno.h>\n #include <rte_log.h>\n #include <rte_memory.h>\n #include <rte_mempool.h>\n #include <rte_ether.h>\n+\n #include <rte_security.h>\n #include <rte_security_driver.h>\n \n@@ -20,7 +22,7 @@\n #endif\n \n #include <rte_test.h>\n-#include \"test.h\"\n+\n \n /**\n  * Security\ndiff --git a/app/test/test_table.c b/app/test/test_table.c\nindex 95034148cb..2e18e49ba4 100644\n--- a/app/test/test_table.c\n+++ b/app/test/test_table.c\n@@ -7,6 +7,17 @@\n #include <rte_string_fns.h>\n #include <string.h>\n #include \"test.h\"\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_table(void)\n+{\n+\tprintf(\"table not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include \"test_table.h\"\n #include \"test_table_pipeline.h\"\n #include \"test_table_ports.h\"\n@@ -194,4 +205,6 @@ test_table(void)\n \treturn ret;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(table_autotest, test_table);\ndiff --git a/app/test/test_table_acl.c b/app/test/test_table_acl.c\nindex 0bdf76ab70..83bef0ea57 100644\n--- a/app/test/test_table_acl.c\n+++ b/app/test/test_table_acl.c\n@@ -2,6 +2,7 @@\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n \n+#ifndef RTE_EXEC_ENV_WINDOWS\n #include <rte_ip.h>\n #include <rte_string_fns.h>\n #include <rte_hexdump.h>\n@@ -728,3 +729,5 @@ test_table_acl(void)\n \n \treturn 0;\n }\n+\n+#endif /*ifndef RTE_EXEC_ENV_WINDOWS*/\ndiff --git a/app/test/test_table_combined.c b/app/test/test_table_combined.c\nindex f72b634bff..0abc5e45c5 100644\n--- a/app/test/test_table_combined.c\n+++ b/app/test/test_table_combined.c\n@@ -2,6 +2,8 @@\n  * Copyright(c) 2010-2016 Intel Corporation\n  */\n \n+#ifndef RTE_EXEC_ENV_WINDOWS\n+\n #include <string.h>\n #include \"test_table_combined.h\"\n #include \"test_table.h\"\n@@ -840,3 +842,5 @@ test_table_hash_cuckoo_combined(void)\n \n \treturn 0;\n }\n+\n+#endif /*ifndef RTE_EXEC_ENV_WINDOWS*/\ndiff --git a/app/test/test_table_pipeline.c b/app/test/test_table_pipeline.c\nindex aabf4375db..45dc7682d8 100644\n--- a/app/test/test_table_pipeline.c\n+++ b/app/test/test_table_pipeline.c\n@@ -2,6 +2,8 @@\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n \n+#ifndef RTE_EXEC_ENV_WINDOWS\n+\n #include <string.h>\n #include <rte_pipeline.h>\n #include <rte_log.h>\n@@ -569,3 +571,5 @@ test_table_pipeline(void)\n \n \treturn 0;\n }\n+\n+#endif /*ifndef RTE_EXEC_ENV_WINDOWS*/\ndiff --git a/app/test/test_table_ports.c b/app/test/test_table_ports.c\nindex d921b2e207..f3b5693609 100644\n--- a/app/test/test_table_ports.c\n+++ b/app/test/test_table_ports.c\n@@ -2,6 +2,8 @@\n  * Copyright(c) 2010-2014 Intel Corporation\n  */\n \n+#ifndef RTE_EXEC_ENV_WINDOWS\n+\n #include \"test_table_ports.h\"\n #include \"test_table.h\"\n \n@@ -189,3 +191,5 @@ test_port_ring_writer(void)\n \n \treturn 0;\n }\n+\n+#endif /*ifndef RTE_EXEC_ENV_WINDOWS*/\ndiff --git a/app/test/test_table_tables.c b/app/test/test_table_tables.c\nindex 4ff6ab16aa..2901490e61 100644\n--- a/app/test/test_table_tables.c\n+++ b/app/test/test_table_tables.c\n@@ -2,6 +2,8 @@\n  * Copyright(c) 2010-2016 Intel Corporation\n  */\n \n+#ifndef RTE_EXEC_ENV_WINDOWS\n+\n #include <string.h>\n #include <rte_byteorder.h>\n #include <rte_table_lpm_ipv6.h>\n@@ -1052,3 +1054,5 @@ test_table_hash_cuckoo(void)\n \n \treturn 0;\n }\n+\n+#endif /*ifndef RTE_EXEC_ENV_WINDOWS*/\ndiff --git a/app/test/test_timer_secondary.c b/app/test/test_timer_secondary.c\nindex 5795c97f07..234a7ec425 100644\n--- a/app/test/test_timer_secondary.c\n+++ b/app/test/test_timer_secondary.c\n@@ -15,6 +15,17 @@\n #include <rte_random.h>\n \n #include \"test.h\"\n+\n+#ifdef RTE_EXEC_ENV_WINDOWS\n+int\n+test_timer_secondary(void)\n+{\n+\tprintf(\"timer_secondary not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n #include \"process.h\"\n \n #define NUM_TIMERS\t\t(1 << 20) /* ~1M timers */\n@@ -212,4 +223,6 @@ test_timer_secondary(void)\n \treturn TEST_FAILED;\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n REGISTER_TEST_COMMAND(timer_secondary_autotest, test_timer_secondary);\ndiff --git a/app/test/test_trace.c b/app/test/test_trace.c\nindex 0f9df83c40..e62f9ca10e 100644\n--- a/app/test/test_trace.c\n+++ b/app/test/test_trace.c\n@@ -9,6 +9,30 @@\n #include \"test.h\"\n #include \"test_trace.h\"\n \n+#ifdef RTE_EXEC_ENV_WINDOWS\n+static int\n+test_trace(void)\n+{\n+\tprintf(\"trace not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_trace_dump(void)\n+{\n+\tprintf(\"trace_dump not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+static int\n+test_trace_metadata_dump(void)\n+{\n+\tprintf(\"trace_metadata_dump not supported on Windows, skipping test\\n\");\n+\treturn TEST_SKIPPED;\n+}\n+\n+#else\n+\n static int32_t\n test_trace_point_globbing(void)\n {\n@@ -194,8 +218,6 @@ test_trace(void)\n \treturn unit_test_suite_runner(&trace_tests);\n }\n \n-REGISTER_TEST_COMMAND(trace_autotest, test_trace);\n-\n static int\n test_trace_dump(void)\n {\n@@ -203,12 +225,14 @@ test_trace_dump(void)\n \treturn 0;\n }\n \n-REGISTER_TEST_COMMAND(trace_dump, test_trace_dump);\n-\n static int\n test_trace_metadata_dump(void)\n {\n \treturn rte_trace_metadata_dump(stdout);\n }\n \n+#endif /*ifdef RTE_EXEC_ENV_WINDOWS*/\n+\n+REGISTER_TEST_COMMAND(trace_autotest, test_trace);\n+REGISTER_TEST_COMMAND(trace_dump, test_trace_dump);\n REGISTER_TEST_COMMAND(trace_metadata_dump, test_trace_metadata_dump);\n",
    "prefixes": [
        "v12",
        "09/11"
    ]
}