summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Messer <jmesser@microsoft.com>2018-03-19 17:32:36 -0700
committerJason Messer <jmesser@microsoft.com>2018-03-19 17:32:36 -0700
commitc9a839698bbcdc1bf097819cc0025beb47995575 (patch)
tree98c60c67d9b3051af8ac17f92f0983e9bfe206c3
parent697198c3bb572f32376f2635641ce7fdd970d289 (diff)
downloaddpdk-draft-windows-c9a839698bbcdc1bf097819cc0025beb47995575.zip
dpdk-draft-windows-c9a839698bbcdc1bf097819cc0025beb47995575.tar.gz
dpdk-draft-windows-c9a839698bbcdc1bf097819cc0025beb47995575.tar.xz
Added new core libraries for Windows
-rw-r--r--drivers/bus/pci/windows/pci.c65
-rw-r--r--drivers/mempool/dpaa/rte_mempool_dpaa_version.map1
-rw-r--r--drivers/net/i40e/base/virtchnl.h2
-rw-r--r--drivers/net/i40e/i40e_rxtx.c5
-rw-r--r--drivers/net/i40e/rte_pmd_i40e.c2
-rw-r--r--lib/librte_acl/acl_run_avx2.h19
-rw-r--r--lib/librte_acl/acl_run_sse.h21
-rw-r--r--lib/librte_acl/acl_vect.h88
-rw-r--r--lib/librte_acl/rte_acl.c2
-rw-r--r--lib/librte_cfgfile/rte_cfgfile.c15
-rw-r--r--lib/librte_cryptodev/rte_cryptodev.h5
-rw-r--r--lib/librte_eal/common/arch/x86/rte_cpuflags.c9
-rw-r--r--lib/librte_eal/common/eal_common_log.c4
-rw-r--r--lib/librte_eal/common/eal_common_memzone.c5
-rw-r--r--lib/librte_eal/common/eal_common_options.c5
-rw-r--r--lib/librte_eal/common/include/rte_common.h12
-rw-r--r--lib/librte_eal/common/malloc_elem.c5
-rw-r--r--lib/librte_eal/common/malloc_heap.c5
-rw-r--r--lib/librte_eal/common/rte_malloc.c5
-rw-r--r--lib/librte_eal/windows/eal/eal.c10
-rw-r--r--lib/librte_eal/windows/eal/eal_memory.c2
-rw-r--r--lib/librte_eal/windows/eal/linux-emu/fork.c116
-rw-r--r--lib/librte_eal/windows/eal/linux-emu/setenv.c55
-rw-r--r--lib/librte_eal/windows/eal/linux-emu/termios.c11
-rw-r--r--lib/librte_eal/windows/eal/linux-emu/unistd.c5
-rw-r--r--lib/librte_eal/windows/include_override/netinet/in.h23
-rw-r--r--lib/librte_eal/windows/include_override/netinet/ip.h0
-rw-r--r--lib/librte_eal/windows/include_override/netinet/ip6.h0
-rw-r--r--lib/librte_eal/windows/include_override/x86intrin.h1
-rw-r--r--lib/librte_eal/windows/netuio/netuio.inf8
-rw-r--r--lib/librte_eal/windows/netuio/netuio.rcbin4772 -> 4772 bytes
-rw-r--r--lib/librte_eal/windows/netuio/netuio_dev.c28
-rw-r--r--lib/librte_eal/windows/netuio/netuio_dev.h27
-rw-r--r--lib/librte_eal/windows/netuio/netuio_drv.c28
-rw-r--r--lib/librte_eal/windows/netuio/netuio_drv.h28
-rw-r--r--lib/librte_eal/windows/netuio/netuio_interface.h35
-rw-r--r--lib/librte_eal/windows/netuio/netuio_queue.c28
-rw-r--r--lib/librte_eal/windows/netuio/netuio_queue.h28
-rw-r--r--lib/librte_eal/windows/rte_override/rte_common.h10
-rw-r--r--lib/librte_eal/windows/rte_override/rte_config.h278
-rw-r--r--lib/librte_eal/windows/rte_override/rte_pci.h5
-rw-r--r--lib/librte_eal/windows/rte_override/rte_spinlock.h5
-rw-r--r--lib/librte_eal/windows/rte_override/rte_wincompat.h64
-rw-r--r--lib/librte_eal/windows/rte_override/rte_windows.h326
-rw-r--r--lib/librte_efd/rte_efd.c8
-rw-r--r--lib/librte_ether/rte_ethdev_core.h6
-rw-r--r--lib/librte_ether/rte_mtr.c4
-rw-r--r--lib/librte_eventdev/rte_eventdev_pmd.h4
-rw-r--r--lib/librte_hash/rte_fbk_hash.c2
-rw-r--r--lib/librte_hash/rte_hash_crc.h3
-rw-r--r--lib/librte_ip_frag/ip_frag_common.h4
-rw-r--r--lib/librte_lpm/rte_lpm.c20
-rw-r--r--lib/librte_lpm/rte_lpm6.c4
-rw-r--r--lib/librte_mbuf/rte_mbuf.c5
-rw-r--r--lib/librte_member/rte_member.c4
-rw-r--r--lib/librte_mempool/rte_mempool.h5
-rw-r--r--lib/librte_pipeline/rte_pipeline.c4
-rw-r--r--lib/librte_port/rte_port_source_sink.c8
-rw-r--r--lib/librte_ring/rte_ring.c4
-rw-r--r--lib/librte_sched/rte_sched.c11
-rw-r--r--lib/librte_table/rte_table_acl.c3
-rw-r--r--mk/exec-env/windows/DpdkApp.props45
-rw-r--r--mk/exec-env/windows/DpdkRteLib.props11
-rw-r--r--mk/exec-env/windows/dpdk.sln212
-rw-r--r--mk/exec-env/windows/librte_acl/librte_acl.vcxproj105
-rw-r--r--mk/exec-env/windows/librte_acl/librte_acl.vcxproj.filters63
-rw-r--r--mk/exec-env/windows/librte_acl/librte_acl.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_bitratestats/librte_bitratestats.vcxproj93
-rw-r--r--mk/exec-env/windows/librte_bitratestats/librte_bitratestats.vcxproj.filters27
-rw-r--r--mk/exec-env/windows/librte_bitratestats/librte_bitratestats.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_bus_pci/librte_bus_pci.vcxproj6
-rw-r--r--mk/exec-env/windows/librte_cfgfile/librte_cfgfile.vcxproj93
-rw-r--r--mk/exec-env/windows/librte_cfgfile/librte_cfgfile.vcxproj.filters27
-rw-r--r--mk/exec-env/windows/librte_cfgfile/librte_cfgfile.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_cryptodev/librte_cryptodev.vcxproj97
-rw-r--r--mk/exec-env/windows/librte_cryptodev/librte_cryptodev.vcxproj.filters39
-rw-r--r--mk/exec-env/windows/librte_cryptodev/librte_cryptodev.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_eal/librte_eal.vcxproj7
-rw-r--r--mk/exec-env/windows/librte_eal/librte_eal.vcxproj.filters17
-rw-r--r--mk/exec-env/windows/librte_efd/librte_efd.vcxproj94
-rw-r--r--mk/exec-env/windows/librte_efd/librte_efd.vcxproj.filters30
-rw-r--r--mk/exec-env/windows/librte_efd/librte_efd.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_ether/librte_ether.vcxproj7
-rw-r--r--mk/exec-env/windows/librte_ether/librte_ether.vcxproj.filters21
-rw-r--r--mk/exec-env/windows/librte_eventdev/librte_eventdev.vcxproj99
-rw-r--r--mk/exec-env/windows/librte_eventdev/librte_eventdev.vcxproj.filters45
-rw-r--r--mk/exec-env/windows/librte_eventdev/librte_eventdev.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_flowclassify/librte_flowclassify.vcxproj95
-rw-r--r--mk/exec-env/windows/librte_flowclassify/librte_flowclassify.vcxproj.filters33
-rw-r--r--mk/exec-env/windows/librte_flowclassify/librte_flowclassify.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_gro/librte_gro.vcxproj97
-rw-r--r--mk/exec-env/windows/librte_gro/librte_gro.vcxproj.filters39
-rw-r--r--mk/exec-env/windows/librte_gro/librte_gro.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_gso/librte_gso.vcxproj103
-rw-r--r--mk/exec-env/windows/librte_gso/librte_gso.vcxproj.filters45
-rw-r--r--mk/exec-env/windows/librte_gso/librte_gso.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_hash/librte_hash.vcxproj3
-rw-r--r--mk/exec-env/windows/librte_hash/librte_hash.vcxproj.filters9
-rw-r--r--mk/exec-env/windows/librte_ipfrag/librte_ipfrag.vcxproj99
-rw-r--r--mk/exec-env/windows/librte_ipfrag/librte_ipfrag.vcxproj.filters45
-rw-r--r--mk/exec-env/windows/librte_ipfrag/librte_ipfrag.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_latencystats/librte_latencystats.vcxproj93
-rw-r--r--mk/exec-env/windows/librte_latencystats/librte_latencystats.vcxproj.filters27
-rw-r--r--mk/exec-env/windows/librte_latencystats/librte_latencystats.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_lpm/librte_lpm.vcxproj2
-rw-r--r--mk/exec-env/windows/librte_lpm/librte_lpm.vcxproj.filters6
-rw-r--r--mk/exec-env/windows/librte_mbuf/librte_mbuf.vcxproj2
-rw-r--r--mk/exec-env/windows/librte_mbuf/librte_mbuf.vcxproj.filters6
-rw-r--r--mk/exec-env/windows/librte_member/librte_member.vcxproj98
-rw-r--r--mk/exec-env/windows/librte_member/librte_member.vcxproj.filters42
-rw-r--r--mk/exec-env/windows/librte_member/librte_member.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_meter/librte_meter.vcxproj93
-rw-r--r--mk/exec-env/windows/librte_meter/librte_meter.vcxproj.filters27
-rw-r--r--mk/exec-env/windows/librte_meter/librte_meter.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_metrics/librte_metrics.vcxproj97
-rw-r--r--mk/exec-env/windows/librte_metrics/librte_metrics.vcxproj.filters27
-rw-r--r--mk/exec-env/windows/librte_metrics/librte_metrics.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_net/librte_net.vcxproj96
-rw-r--r--mk/exec-env/windows/librte_net/librte_net.vcxproj.filters36
-rw-r--r--mk/exec-env/windows/librte_net/librte_net.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_pipeline/librte_pipeline.vcxproj93
-rw-r--r--mk/exec-env/windows/librte_pipeline/librte_pipeline.vcxproj.filters27
-rw-r--r--mk/exec-env/windows/librte_pipeline/librte_pipeline.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_pmd_i40e/librte_pmd_i40e.vcxproj3
-rw-r--r--mk/exec-env/windows/librte_pmd_i40e/librte_pmd_i40e.vcxproj.filters9
-rw-r--r--mk/exec-env/windows/librte_port/librte_port.vcxproj106
-rw-r--r--mk/exec-env/windows/librte_port/librte_port.vcxproj.filters66
-rw-r--r--mk/exec-env/windows/librte_port/librte_port.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_reorder/librte_reorder.vcxproj93
-rw-r--r--mk/exec-env/windows/librte_reorder/librte_reorder.vcxproj.filters27
-rw-r--r--mk/exec-env/windows/librte_reorder/librte_reorder.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_ring/librte_ring.vcxproj1
-rw-r--r--mk/exec-env/windows/librte_ring/librte_ring.vcxproj.filters3
-rw-r--r--mk/exec-env/windows/librte_sched/librte_sched.vcxproj98
-rw-r--r--mk/exec-env/windows/librte_sched/librte_sched.vcxproj.filters42
-rw-r--r--mk/exec-env/windows/librte_sched/librte_sched.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_security/librte_security.vcxproj94
-rw-r--r--mk/exec-env/windows/librte_security/librte_security.vcxproj.filters30
-rw-r--r--mk/exec-env/windows/librte_security/librte_security.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_table/librte_table.vcxproj111
-rw-r--r--mk/exec-env/windows/librte_table/librte_table.vcxproj.filters81
-rw-r--r--mk/exec-env/windows/librte_table/librte_table.vcxproj.user4
-rw-r--r--mk/exec-env/windows/librte_timer/librte_timer.vcxproj93
-rw-r--r--mk/exec-env/windows/librte_timer/librte_timer.vcxproj.filters27
-rw-r--r--mk/exec-env/windows/librte_timer/librte_timer.vcxproj.user4
-rw-r--r--mk/exec-env/windows/netuio/netuio.vcxproj4
146 files changed, 4591 insertions, 358 deletions
diff --git a/drivers/bus/pci/windows/pci.c b/drivers/bus/pci/windows/pci.c
index d5dca62..d7d112e 100644
--- a/drivers/bus/pci/windows/pci.c
+++ b/drivers/bus/pci/windows/pci.c
@@ -37,6 +37,7 @@
#include <SetupAPI.h>
#include <devguid.h>
+#include <winioctl.h>
#include <rte_string_fns.h>
#include <rte_eal_memconfig.h>
@@ -177,8 +178,8 @@ int send_ioctl(HANDLE f, DWORD ioctl,
DWORD dwError = ERROR_SUCCESS;
bResult = DeviceIoControl(f, ioctl, input_buf, input_buf_size,
- output_buf, output_buf_size,
- &results_sz, NULL);
+ output_buf, output_buf_size,
+ &results_sz, NULL);
if (!bResult) {
dwError = GetLastError();
@@ -276,15 +277,55 @@ int get_device_resource_info(HDEVINFO hDevInfo, PSP_DEVINFO_DATA pDeviceInfoData
/* Open the driver */
TCHAR device_name[MAX_DEVICENAME_SZ];
+ HANDLE f = INVALID_HANDLE_VALUE;
+ PSP_DEVICE_INTERFACE_DETAIL_DATA dev_interface_detail = NULL;
+ DWORD dwError = 0;
+
+ /* Obtain the netUIO driver interface (if available) for this device */
+ DWORD required_size = 0;
+ TCHAR dev_instance_id[MAX_DEVICENAME_SZ];
+
+ /* Retrieve the device instance ID */
+ SetupDiGetDeviceInstanceId(hDevInfo, pDeviceInfoData,
+ dev_instance_id, sizeof(dev_instance_id), &required_size);
+ //_tprintf(_T("Device_instance_id=%s\n"), device_instance_id);
+
+ /* Obtain the device information set */
+ HDEVINFO hd = SetupDiGetClassDevs(&GUID_DEVINTERFACE_netUIO, dev_instance_id,
+ NULL, DIGCF_PRESENT | DIGCF_DEVICEINTERFACE);
+ if (hd == INVALID_HANDLE_VALUE)
+ goto end;
- /* Construct the driver name using B:D:F */
- _stprintf_s(device_name, NETUIO_DEVICENAME_SZ, _T("\\\\.\\%s_%04d%02d%02d"),
- NETUIO_DRIVER_NAME, dev->addr.bus, dev->addr.devid, dev->addr.function);
- //_tprintf(_T("Devicename=%s\n"), device_name);
+ SP_DEVICE_INTERFACE_DATA dev_interface_data = { 0 };
+ dev_interface_data.cbSize = sizeof(SP_DEVICE_INTERFACE_DATA);
- HANDLE f = CreateFile(device_name, GENERIC_READ | GENERIC_WRITE,
- FILE_SHARE_READ | FILE_SHARE_WRITE,
- NULL, OPEN_EXISTING, 0, NULL);
+ /* Enumerate the netUIO interfaces for this device information set */
+ /* If it fails, it implies that the netUIO interface is not available for this device */
+ if (!SetupDiEnumDeviceInterfaces(hd, 0, &GUID_DEVINTERFACE_netUIO, 0, &dev_interface_data)) {
+ dwError = GetLastError();
+ goto end;
+ }
+
+ required_size = 0;
+ if (!SetupDiGetDeviceInterfaceDetail(hd, &dev_interface_data, NULL, 0, &required_size, NULL)) {
+ dwError = GetLastError();
+ if (dwError != ERROR_INSUFFICIENT_BUFFER) /* ERROR_INSUFFICIENT_BUFFER is expected */
+ goto end;
+ }
+
+ dev_interface_detail = malloc(required_size);
+ dev_interface_detail->cbSize = sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA);
+
+ if (!SetupDiGetDeviceInterfaceDetail(hd, &dev_interface_data,
+ dev_interface_detail, required_size, NULL, NULL)) {
+ dwError = GetLastError();
+ goto end;
+ }
+
+ f = CreateFile(dev_interface_detail->DevicePath,
+ GENERIC_READ | GENERIC_WRITE,
+ FILE_SHARE_READ | FILE_SHARE_WRITE,
+ NULL, OPEN_EXISTING, 0, NULL);
if (f == INVALID_HANDLE_VALUE) {
//RTE_LOG(DEBUG, EAL, "Unable to open driver file \"%s\".\n", device_name);
@@ -318,6 +359,12 @@ end:
if (f != INVALID_HANDLE_VALUE)
CloseHandle(f);
+ if (dev_interface_detail)
+ free(dev_interface_detail);
+
+ if (hd != INVALID_HANDLE_VALUE)
+ SetupDiDestroyDeviceInfoList(hd);
+
return ret;
}
diff --git a/drivers/mempool/dpaa/rte_mempool_dpaa_version.map b/drivers/mempool/dpaa/rte_mempool_dpaa_version.map
index d05f274..cc635c7 100644
--- a/drivers/mempool/dpaa/rte_mempool_dpaa_version.map
+++ b/drivers/mempool/dpaa/rte_mempool_dpaa_version.map
@@ -2,6 +2,7 @@ DPDK_17.11 {
global:
rte_dpaa_bpid_info;
+ rte_dpaa_pool_table;
local: *;
};
diff --git a/drivers/net/i40e/base/virtchnl.h b/drivers/net/i40e/base/virtchnl.h
index ae4c00c..16c9d06 100644
--- a/drivers/net/i40e/base/virtchnl.h
+++ b/drivers/net/i40e/base/virtchnl.h
@@ -512,10 +512,10 @@ VIRTCHNL_CHECK_STRUCT_LEN(6, virtchnl_rss_key);
struct virtchnl_rss_lut {
u16 vsi_id;
u16 lut_entries;
+ u8 lut[1]; /* RSS lookup table */
#ifdef _WIN64
u8 reserved; /* For Windows packing */
#endif
- u8 lut[1]; /* RSS lookup table */
};
VIRTCHNL_CHECK_STRUCT_LEN(6, virtchnl_rss_lut);
diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c
index 1217e5a..be5c698 100644
--- a/drivers/net/i40e/i40e_rxtx.c
+++ b/drivers/net/i40e/i40e_rxtx.c
@@ -23,6 +23,9 @@
#include <rte_udp.h>
#include <rte_ip.h>
#include <rte_net.h>
+#ifdef _WIN64
+#include <rte_cpuflags.h>
+#endif
#include "i40e_logs.h"
#include "base/i40e_prototype.h"
@@ -3020,6 +3023,7 @@ i40e_set_default_pctype_table(struct rte_eth_dev *dev)
}
}
+#ifndef _WIN64
/* Stubs needed for linkage when CONFIG_RTE_I40E_INC_VECTOR is set to 'n' */
int __attribute__((weak))
i40e_rx_vec_dev_conf_condition_check(struct rte_eth_dev __rte_unused *dev)
@@ -3094,3 +3098,4 @@ i40e_xmit_pkts_vec_avx2(void __rte_unused * tx_queue,
{
return 0;
}
+#endif
diff --git a/drivers/net/i40e/rte_pmd_i40e.c b/drivers/net/i40e/rte_pmd_i40e.c
index e7b736e..cda2e94 100644
--- a/drivers/net/i40e/rte_pmd_i40e.c
+++ b/drivers/net/i40e/rte_pmd_i40e.c
@@ -2864,7 +2864,7 @@ i40e_flush_queue_region_all_conf(struct rte_eth_dev *dev,
PMD_DRV_LOG(INFO, "Failed to flush dcb.");
pf->flags &= ~I40E_FLAG_DCB;
}
-#endif
+#endif
i40e_init_queue_region_conf(dev);
}
return 0;
diff --git a/lib/librte_acl/acl_run_avx2.h b/lib/librte_acl/acl_run_avx2.h
index d06d2e8..6bc1303 100644
--- a/lib/librte_acl/acl_run_avx2.h
+++ b/lib/librte_acl/acl_run_avx2.h
@@ -66,9 +66,15 @@ transition8(ymm_t next_input, const uint64_t *trans, ymm_t *tr_lo, ymm_t *tr_hi)
tr = (const int32_t *)(uintptr_t)trans;
/* Calculate the address (array index) for all 8 transitions. */
+#ifndef _WIN64
ACL_TR_CALC_ADDR(mm256, 256, addr, ymm_index_mask.y, next_input,
ymm_shuffle_input.y, ymm_ones_16.y, ymm_range_base.y,
*tr_lo, *tr_hi);
+#else
+ ACL_TR_CALC_ADDR_m256(mm256, 256, addr, ymm_index_mask.y, next_input,
+ ymm_shuffle_input.y, ymm_ones_16.y, ymm_range_base.y,
+ *tr_lo, *tr_hi);
+#endif
/* load lower 32 bits of 8 transactions at once. */
*tr_lo = _mm256_i32gather_epi32(tr, addr, sizeof(trans[0]));
@@ -123,7 +129,11 @@ acl_process_matches_avx2x8(const struct rte_acl_ctx *ctx,
t1 = _mm256_set_epi64x(tr[7], tr[6], tr[3], tr[2]);
/* For each transition: put low 32 into tr_lo and high 32 into tr_hi */
+#ifndef _WIN64
ACL_TR_HILO(mm256, __m256, t0, t1, lo, hi);
+#else
+ ACL_TR_HILO_256(mm256, __m256, t0, t1, lo, hi);
+#endif
/* Keep transitions wth NOMATCH intact. */
*tr_lo = _mm256_blendv_epi8(*tr_lo, lo, matches);
@@ -181,15 +191,22 @@ search_avx2x16(const struct rte_acl_ctx *ctx, const uint8_t **data,
t1 = _mm256_set_epi64x(index_array[7], index_array[6],
index_array[3], index_array[2]);
+#ifndef _WIN64
ACL_TR_HILO(mm256, __m256, t0, t1, tr_lo[0], tr_hi[0]);
+#else
+ ACL_TR_HILO_256(mm256, __m256, t0, t1, tr_lo[0], tr_hi[0]);
+#endif
t0 = _mm256_set_epi64x(index_array[13], index_array[12],
index_array[9], index_array[8]);
t1 = _mm256_set_epi64x(index_array[15], index_array[14],
index_array[11], index_array[10]);
+#ifndef _WIN64
ACL_TR_HILO(mm256, __m256, t0, t1, tr_lo[1], tr_hi[1]);
-
+#else
+ ACL_TR_HILO_256(mm256, __m256, t0, t1, tr_lo[1], tr_hi[1]);
+#endif
/* Check for any matches. */
acl_match_check_avx2x8(ctx, parms, &flows, 0, &tr_lo[0], &tr_hi[0],
ymm_match_mask.y);
diff --git a/lib/librte_acl/acl_run_sse.h b/lib/librte_acl/acl_run_sse.h
index 93286a2..077c005 100644
--- a/lib/librte_acl/acl_run_sse.h
+++ b/lib/librte_acl/acl_run_sse.h
@@ -128,18 +128,28 @@ acl_match_check_x4(int slot, const struct rte_acl_ctx *ctx, struct parms *parms,
xmm_t temp;
/* put low 32 bits of each transition into one register */
+#ifndef _WIN64
temp = (xmm_t)_mm_shuffle_ps((__m128)*indices1, (__m128)*indices2,
0x88);
- /* test for match node */
+#else
+ temp = _mm_castps_si128(_mm_shuffle_ps(_mm_castsi128_ps(*indices1),
+ _mm_castsi128_ps(*indices2), 0x88));
+#endif
+ /* test for match node */
temp = _mm_and_si128(match_mask, temp);
while (!_mm_testz_si128(temp, temp)) {
acl_process_matches(indices1, slot, ctx, parms, flows);
acl_process_matches(indices2, slot + 2, ctx, parms, flows);
+#ifndef _WIN64
temp = (xmm_t)_mm_shuffle_ps((__m128)*indices1,
(__m128)*indices2,
0x88);
+#else
+ temp = _mm_castps_si128(_mm_shuffle_ps(_mm_castsi128_ps(*indices1),
+ _mm_castsi128_ps(*indices2), 0x88));
+#endif
temp = _mm_and_si128(match_mask, temp);
}
}
@@ -154,6 +164,7 @@ transition4(xmm_t next_input, const uint64_t *trans,
xmm_t addr, tr_lo, tr_hi;
uint64_t trans0, trans2;
+#ifndef _WIN64
/* Shuffle low 32 into tr_lo and high 32 into tr_hi */
ACL_TR_HILO(mm, __m128, *indices1, *indices2, tr_lo, tr_hi);
@@ -161,7 +172,15 @@ transition4(xmm_t next_input, const uint64_t *trans,
ACL_TR_CALC_ADDR(mm, 128, addr, xmm_index_mask.x, next_input,
xmm_shuffle_input.x, xmm_ones_16.x, xmm_range_base.x,
tr_lo, tr_hi);
+#else
+ /* Shuffle low 32 into tr_lo and high 32 into tr_hi */
+ ACL_TR_HILO_m128(mm, __m128, *indices1, *indices2, tr_lo, tr_hi);
+ /* Calculate the address (array index) for all 4 transitions. */
+ ACL_TR_CALC_ADDR_m128(mm, 128, addr, xmm_index_mask.x, next_input,
+ xmm_shuffle_input.x, xmm_ones_16.x, xmm_range_base.x,
+ tr_lo, tr_hi);
+#endif
/* Gather 64 bit transitions and pack back into 2 registers. */
trans0 = trans[_mm_cvtsi128_si32(addr)];
diff --git a/lib/librte_acl/acl_vect.h b/lib/librte_acl/acl_vect.h
index 194fca9..c71544d 100644
--- a/lib/librte_acl/acl_vect.h
+++ b/lib/librte_acl/acl_vect.h
@@ -22,11 +22,22 @@ extern "C" {
* lo - contains low 32 bits of given N transitions.
* hi - contains high 32 bits of given N transitions.
*/
+#ifndef _WIN64
#define ACL_TR_HILO(P, TC, tr0, tr1, lo, hi) do { \
lo = (typeof(lo))_##P##_shuffle_ps((TC)(tr0), (TC)(tr1), 0x88); \
hi = (typeof(hi))_##P##_shuffle_ps((TC)(tr0), (TC)(tr1), 0xdd); \
} while (0)
+#else
+#define ACL_TR_HILO_m128(P, TC, tr0, tr1, lo, hi) do { \
+ lo = _mm_castps_si128(_ ## P ## _shuffle_ps(_mm_castsi128_ps(tr0), _mm_castsi128_ps(tr1), 0x88)); \
+ hi = _mm_castps_si128(_ ## P ## _shuffle_ps(_mm_castsi128_ps(tr0), _mm_castsi128_ps(tr1), 0xdd)); \
+} while (0)
+#define ACL_TR_HILO_256(P, TC, tr0, tr1, lo, hi) do { \
+ lo = _mm256_castps_si256(_ ## P ## _shuffle_ps(_mm256_castsi256_ps(tr0), _mm256_castsi256_ps(tr1), 0x88)); \
+ hi = _mm256_castps_si256(_ ## P ## _shuffle_ps(_mm256_castsi256_ps(tr0), _mm256_castsi256_ps(tr1), 0xdd)); \
+} while (0)
+#endif
/*
* Calculate the address of the next transition for
@@ -41,6 +52,7 @@ extern "C" {
* input byte.
* Single nodes are processed in the same ways as quad range nodes.
*/
+#ifndef _WIN64
#define ACL_TR_CALC_ADDR(P, S, \
addr, index_mask, next_input, shuffle_input, \
ones_16, range_base, tr_lo, tr_hi) do { \
@@ -78,7 +90,83 @@ extern "C" {
/* calculate address for next transitions. */ \
addr = _##P##_add_epi32(addr, t); \
} while (0)
+#else
+#define ACL_TR_CALC_ADDR_m128(P, S, \
+ addr, index_mask, next_input, shuffle_input, \
+ ones_16, range_base, tr_lo, tr_hi) do { \
+ \
+ xmm_t in, node_type, r, t; \
+ xmm_t dfa_msk, dfa_ofs, quad_ofs; \
+ \
+ t = _##P##_xor_si##S(index_mask, index_mask); \
+ in = _##P##_shuffle_epi8(next_input, shuffle_input); \
+ \
+ /* Calc node type and node addr */ \
+ node_type = _##P##_andnot_si##S(index_mask, tr_lo); \
+ addr = _##P##_and_si##S(index_mask, tr_lo); \
+ \
+ /* mask for DFA type(0) nodes */ \
+ dfa_msk = _##P##_cmpeq_epi32(node_type, t); \
+ \
+ /* DFA calculations. */ \
+ r = _##P##_srli_epi32(in, 30); \
+ r = _##P##_add_epi8(r, range_base); \
+ t = _##P##_srli_epi32(in, 24); \
+ r = _##P##_shuffle_epi8(tr_hi, r); \
+ \
+ dfa_ofs = _##P##_sub_epi32(t, r); \
+ \
+ /* QUAD/SINGLE caluclations. */ \
+ t = _##P##_cmpgt_epi8(in, tr_hi); \
+ t = _##P##_sign_epi8(t, t); \
+ t = _##P##_maddubs_epi16(t, t); \
+ quad_ofs = _##P##_madd_epi16(t, ones_16); \
+ \
+ /* blend DFA and QUAD/SINGLE. */ \
+ t = _##P##_blendv_epi8(quad_ofs, dfa_ofs, dfa_msk); \
+ \
+ /* calculate address for next transitions. */ \
+ addr = _##P##_add_epi32(addr, t); \
+} while (0)
+#define ACL_TR_CALC_ADDR_m256(P, S, \
+ addr, index_mask, next_input, shuffle_input, \
+ ones_16, range_base, tr_lo, tr_hi) do { \
+ \
+ ymm_t in, node_type, r, t; \
+ ymm_t dfa_msk, dfa_ofs, quad_ofs; \
+ \
+ t = _##P##_xor_si##S(index_mask, index_mask); \
+ in = _##P##_shuffle_epi8(next_input, shuffle_input); \
+ \
+ /* Calc node type and node addr */ \
+ node_type = _##P##_andnot_si##S(index_mask, tr_lo); \
+ addr = _##P##_and_si##S(index_mask, tr_lo); \
+ \
+ /* mask for DFA type(0) nodes */ \
+ dfa_msk = _##P##_cmpeq_epi32(node_type, t); \
+ \
+ /* DFA calculations. */ \
+ r = _##P##_srli_epi32(in, 30); \
+ r = _##P##_add_epi8(r, range_base); \
+ t = _##P##_srli_epi32(in, 24); \
+ r = _##P##_shuffle_epi8(tr_hi, r); \
+ \
+ dfa_ofs = _##P##_sub_epi32(t, r); \
+ \
+ /* QUAD/SINGLE caluclations. */ \
+ t = _##P##_cmpgt_epi8(in, tr_hi); \
+ t = _##P##_sign_epi8(t, t); \
+ t = _##P##_maddubs_epi16(t, t); \
+ quad_ofs = _##P##_madd_epi16(t, ones_16); \
+ \
+ /* blend DFA and QUAD/SINGLE. */ \
+ t = _##P##_blendv_epi8(quad_ofs, dfa_ofs, dfa_msk); \
+ \
+ /* calculate address for next transitions. */ \
+ addr = _##P##_add_epi32(addr, t); \
+} while (0)
+#endif
#ifdef __cplusplus
}
diff --git a/lib/librte_acl/rte_acl.c b/lib/librte_acl/rte_acl.c
index 2f1243c..9eeda3c 100644
--- a/lib/librte_acl/rte_acl.c
+++ b/lib/librte_acl/rte_acl.c
@@ -16,6 +16,7 @@ EAL_REGISTER_TAILQ(rte_acl_tailq)
* If the compiler doesn't support AVX2 instructions,
* then the dummy one would be used instead for AVX2 classify method.
*/
+#ifndef _WIN64
int __attribute__ ((weak))
rte_acl_classify_avx2(__rte_unused const struct rte_acl_ctx *ctx,
__rte_unused const uint8_t **data,
@@ -35,6 +36,7 @@ rte_acl_classify_sse(__rte_unused const struct rte_acl_ctx *ctx,
{
return -ENOTSUP;
}
+#endif
int __attribute__ ((weak))
rte_acl_classify_neon(__rte_unused const struct rte_acl_ctx *ctx,
diff --git a/lib/librte_cfgfile/rte_cfgfile.c b/lib/librte_cfgfile/rte_cfgfile.c
index 7d8c941..e3660c2 100644
--- a/lib/librte_cfgfile/rte_cfgfile.c
+++ b/lib/librte_cfgfile/rte_cfgfile.c
@@ -167,7 +167,14 @@ rte_cfgfile_load_with_params(const char *filename, int flags,
if (rte_cfgfile_check_params(params))
return NULL;
+#ifndef _WIN64
FILE *f = fopen(filename, "r");
+#else
+ FILE *f;
+ errno_t err = fopen_s(&f, filename, "r");
+ if (err != 0)
+ return NULL;
+#endif
if (f == NULL)
return NULL;
@@ -408,8 +415,14 @@ int rte_cfgfile_save(struct rte_cfgfile *cfg, const char *filename)
if ((cfg == NULL) || (filename == NULL))
return -EINVAL;
+#ifndef _WIN64
FILE *f = fopen(filename, "w");
-
+#else
+ FILE *f;
+ errno_t err = fopen_s(&f, filename, "w");
+ if (err != 0)
+ return -EINVAL;
+#endif
if (f == NULL)
return -EINVAL;
diff --git a/lib/librte_cryptodev/rte_cryptodev.h b/lib/librte_cryptodev/rte_cryptodev.h
index c8fa689..3699496 100644
--- a/lib/librte_cryptodev/rte_cryptodev.h
+++ b/lib/librte_cryptodev/rte_cryptodev.h
@@ -55,6 +55,10 @@ extern const char **rte_cyptodev_names;
/* Logging Macros */
+#ifdef _WIN64
+#define CDEV_LOG_ERR(f, ...) RTE_LOG(ERR, CRYPTODEV, "%s() line %u: " f "\n", __func__, __LINE__, __VA_ARGS__)
+#define CDEV_LOG_INFO(f, ...) RTE_LOG(INFO, CRYPTODEV, f, __VA_ARGS__)
+#else
#define CDEV_LOG_ERR(...) \
RTE_LOG(ERR, CRYPTODEV, \
RTE_FMT("%s() line %u: " RTE_FMT_HEAD(__VA_ARGS__,) "\n", \
@@ -64,6 +68,7 @@ extern const char **rte_cyptodev_names;
RTE_LOG(INFO, CRYPTODEV, \
RTE_FMT(RTE_FMT_HEAD(__VA_ARGS__,) "\n", \
RTE_FMT_TAIL(__VA_ARGS__,)))
+#endif
#ifdef RTE_LIBRTE_CRYPTODEV_DEBUG
#define CDEV_LOG_DEBUG(...) \
diff --git a/lib/librte_eal/common/arch/x86/rte_cpuflags.c b/lib/librte_eal/common/arch/x86/rte_cpuflags.c
index 5e57597..47234c7 100644
--- a/lib/librte_eal/common/arch/x86/rte_cpuflags.c
+++ b/lib/librte_eal/common/arch/x86/rte_cpuflags.c
@@ -11,7 +11,14 @@
#include <cpuid.h>
#endif
-#include "rte_cpuid.h"
+enum cpu_register_t {
+ RTE_REG_EAX = 0,
+ RTE_REG_EBX,
+ RTE_REG_ECX,
+ RTE_REG_EDX,
+};
+
+typedef uint32_t cpuid_registers_t[4];
/**
* Struct to hold a processor feature entry
diff --git a/lib/librte_eal/common/eal_common_log.c b/lib/librte_eal/common/eal_common_log.c
index a55be86..2ecf870 100644
--- a/lib/librte_eal/common/eal_common_log.c
+++ b/lib/librte_eal/common/eal_common_log.c
@@ -226,12 +226,8 @@ static const struct logtype logtype_strings[] = {
{RTE_LOGTYPE_USER8, "user8"}
};
-<<<<<<< HEAD
#ifndef _WIN64
/* Logging should be first initialzer (before drivers and bus) */
-=======
-/* Logging should be first initializer (before drivers and bus) */
->>>>>>> 8bc5baf69cc21199dd26946de1b83dcd264c259e
RTE_INIT_PRIO(rte_log_init, 101);
static
#endif
diff --git a/lib/librte_eal/common/eal_common_memzone.c b/lib/librte_eal/common/eal_common_memzone.c
index acc794a..1ab3ade 100644
--- a/lib/librte_eal/common/eal_common_memzone.c
+++ b/lib/librte_eal/common/eal_common_memzone.c
@@ -11,11 +11,6 @@
#include <errno.h>
#include <sys/queue.h>
-#ifdef _WIN64
-#undef typeof
-#define typeof(x) size_t
-#include <rte_common.h>
-#endif
#include <rte_log.h>
#include <rte_memory.h>
#include <rte_memzone.h>
diff --git a/lib/librte_eal/common/eal_common_options.c b/lib/librte_eal/common/eal_common_options.c
index d6f78a2..c1d3343 100644
--- a/lib/librte_eal/common/eal_common_options.c
+++ b/lib/librte_eal/common/eal_common_options.c
@@ -18,11 +18,6 @@
#include <sys/stat.h>
#include <dirent.h>
-#ifdef _WIN64
-#undef typeof
-#define typeof(x) unsigned
-#include <rte_common.h>
-#endif
#include <rte_eal.h>
#include <rte_log.h>
#include <rte_lcore.h>
diff --git a/lib/librte_eal/common/include/rte_common.h b/lib/librte_eal/common/include/rte_common.h
index 780f860..f09c294 100644
--- a/lib/librte_eal/common/include/rte_common.h
+++ b/lib/librte_eal/common/include/rte_common.h
@@ -89,9 +89,14 @@ typedef uint16_t unaligned_uint16_t;
* @param func
* Constructor function.
*/
+#ifndef _WIN64
#define RTE_INIT(func) \
static void __attribute__((constructor, used)) func(void)
-
+#else
+/* Re-define this without the __attribute__ and static declarator */
+#define RTE_INIT(func) \
+void func(void)
+#endif
/**
* Run function before main() with high priority.
*
@@ -101,8 +106,13 @@ static void __attribute__((constructor, used)) func(void)
* Priority number must be above 100.
* Lowest number is the first to run.
*/
+#ifndef _WIN64
#define RTE_INIT_PRIO(func, prio) \
static void __attribute__((constructor(prio), used)) func(void)
+#else
+/* Re-define this the same as RTE_INIT */
+#define RTE_INIT_PRIO(func, prio) RTE_INIT(func)
+#endif
/**
* Force a function to be inlined
diff --git a/lib/librte_eal/common/malloc_elem.c b/lib/librte_eal/common/malloc_elem.c
index 460a6eb..0cadc8a 100644
--- a/lib/librte_eal/common/malloc_elem.c
+++ b/lib/librte_eal/common/malloc_elem.c
@@ -13,11 +13,6 @@
#include <rte_per_lcore.h>
#include <rte_lcore.h>
#include <rte_debug.h>
-
-#ifdef _WIN64
-#undef typeof
-#define typeof(x) uintptr_t
-#endif
#include <rte_common.h>
#include <rte_spinlock.h>
diff --git a/lib/librte_eal/common/malloc_heap.c b/lib/librte_eal/common/malloc_heap.c
index a8b188d..19d1a15 100644
--- a/lib/librte_eal/common/malloc_heap.c
+++ b/lib/librte_eal/common/malloc_heap.c
@@ -15,11 +15,6 @@
#include <rte_launch.h>
#include <rte_per_lcore.h>
#include <rte_lcore.h>
-
-#ifdef _WIN64
-#undef typeof
-#define typeof(x) uintptr_t
-#endif
#include <rte_common.h>
#include <rte_string_fns.h>
#include <rte_spinlock.h>
diff --git a/lib/librte_eal/common/rte_malloc.c b/lib/librte_eal/common/rte_malloc.c
index c368694..e0e0d0b 100644
--- a/lib/librte_eal/common/rte_malloc.c
+++ b/lib/librte_eal/common/rte_malloc.c
@@ -17,11 +17,6 @@
#include <rte_launch.h>
#include <rte_per_lcore.h>
#include <rte_lcore.h>
-
-#ifdef _WIN64
-#undef typeof
-#define typeof(x) uintptr_t
-#endif
#include <rte_common.h>
#include <rte_spinlock.h>
diff --git a/lib/librte_eal/windows/eal/eal.c b/lib/librte_eal/windows/eal/eal.c
index 24665b3..8b9d01a 100644
--- a/lib/librte_eal/windows/eal/eal.c
+++ b/lib/librte_eal/windows/eal/eal.c
@@ -111,7 +111,6 @@ extern void pciinitfn_net_i40e(void);
/* these are more constructor-like function, that we'll need to call at the start */
extern void rte_timer_init(void);
extern void rte_log_init(void);
-extern void rte_log_init(void);
extern void i40e_init_log(void);
/* Return a pointer to the configuration structure */
@@ -123,9 +122,9 @@ rte_eal_get_configuration(void)
/* Return mbuf pool ops name */
const char *
-rte_eal_mbuf_default_mempool_ops(void)
+rte_eal_mbuf_user_pool_ops(void)
{
- return internal_config.mbuf_pool_ops_name;
+ return internal_config.user_mbuf_pool_ops_name;
}
enum rte_iova_mode
@@ -504,6 +503,9 @@ rte_eal_init(int argc, char **argv)
static rte_atomic32_t run_once = RTE_ATOMIC32_INIT(0);
char cpuset[RTE_CPU_AFFINITY_STR_LEN];
+// /* constructor replacement */
+// extern void eal_common_timer_init(void);
+
/* Register and initialize all the buses we'll be using */
/* This has to be done at the very start! */
eal_register_and_init_buses();
@@ -520,7 +522,7 @@ rte_eal_init(int argc, char **argv)
/* We need to do this before any other eal init calls */
eal_register_and_init_pmd();
- rte_timer_init(); /* Use the built-in timer delay function */
+ rte_timer_init(); /* Initialize timer function */
if (!rte_atomic32_test_and_set(&run_once))
return -1;
diff --git a/lib/librte_eal/windows/eal/eal_memory.c b/lib/librte_eal/windows/eal/eal_memory.c
index eecccbe..a68eee1 100644
--- a/lib/librte_eal/windows/eal/eal_memory.c
+++ b/lib/librte_eal/windows/eal/eal_memory.c
@@ -51,7 +51,7 @@
* Get physical address of any mapped virtual address in the current process.
*/
phys_addr_t
-rte_mem_virt2phy(const void *virtaddr)
+rte_mem_virt2iova(const void *virtaddr)
{
/* This function is only used by rte_mempool_virt2phy() when hugepages are disabled. */
/* Get pointer to global configuration and calculate physical address offset */
diff --git a/lib/librte_eal/windows/eal/linux-emu/fork.c b/lib/librte_eal/windows/eal/linux-emu/fork.c
new file mode 100644
index 0000000..75f8aff
--- /dev/null
+++ b/lib/librte_eal/windows/eal/linux-emu/fork.c
@@ -0,0 +1,116 @@
+/*
+* fork.c
+* Experimental fork() on Windows. Requires NT 6 subsystem or
+* newer.
+*
+* Copyright (c) 2012 William Pitcock <nenolod@dereferenced.org>
+*
+* Permission to use, copy, modify, and/or distribute this software for any
+* purpose with or without fee is hereby granted, provided that the above
+* copyright notice and this permission notice appear in all copies.
+*
+* This software is provided 'as is' and without any warranty, express or
+* implied. In no event shall the authors be liable for any damages arising
+* from the use of this software.
+*/
+
+//#define _WIN32_WINNT 0x0600
+#define WIN32_LEAN_AND_MEAN
+#include <windows.h>
+#include <winnt.h>
+#include <winternl.h>
+#include <stdio.h>
+#include <errno.h>
+#include <assert.h>
+#include <process.h>
+
+typedef struct _CLIENT_ID {
+ PVOID UniqueProcess;
+ PVOID UniqueThread;
+} CLIENT_ID, *PCLIENT_ID;
+
+typedef struct _SECTION_IMAGE_INFORMATION {
+ PVOID EntryPoint;
+ ULONG StackZeroBits;
+ ULONG StackReserved;
+ ULONG StackCommit;
+ ULONG ImageSubsystem;
+ WORD SubSystemVersionLow;
+ WORD SubSystemVersionHigh;
+ ULONG Unknown1;
+ ULONG ImageCharacteristics;
+ ULONG ImageMachineType;
+ ULONG Unknown2[3];
+} SECTION_IMAGE_INFORMATION, *PSECTION_IMAGE_INFORMATION;
+
+typedef struct _RTL_USER_PROCESS_INFORMATION {
+ ULONG Size;
+ HANDLE Process;
+ HANDLE Thread;
+ CLIENT_ID ClientId;
+ SECTION_IMAGE_INFORMATION ImageInformation;
+} RTL_USER_PROCESS_INFORMATION, *PRTL_USER_PROCESS_INFORMATION;
+
+#define RTL_CLONE_PROCESS_FLAGS_CREATE_SUSPENDED 0x00000001
+#define RTL_CLONE_PROCESS_FLAGS_INHERIT_HANDLES 0x00000002
+#define RTL_CLONE_PROCESS_FLAGS_NO_SYNCHRONIZE 0x00000004
+
+#define RTL_CLONE_PARENT 0
+#define RTL_CLONE_CHILD 297
+
+typedef DWORD pid_t;
+
+typedef NTSTATUS(*RtlCloneUserProcess_f)(ULONG ProcessFlags,
+ PSECURITY_DESCRIPTOR ProcessSecurityDescriptor /* optional */,
+ PSECURITY_DESCRIPTOR ThreadSecurityDescriptor /* optional */,
+ HANDLE DebugPort /* optional */,
+ PRTL_USER_PROCESS_INFORMATION ProcessInformation);
+
+pid_t fork(void)
+{
+ HMODULE mod;
+ RtlCloneUserProcess_f clone_p;
+ RTL_USER_PROCESS_INFORMATION process_info;
+ NTSTATUS result;
+
+ mod = GetModuleHandle((LPCWSTR)"ntdll.dll");
+ if (!mod)
+ return -ENOSYS;
+
+ clone_p = (RtlCloneUserProcess_f)GetProcAddress(mod, "RtlCloneUserProcess");
+ if (clone_p == NULL)
+ return -ENOSYS;
+
+ /* lets do this */
+ result = clone_p(RTL_CLONE_PROCESS_FLAGS_CREATE_SUSPENDED | RTL_CLONE_PROCESS_FLAGS_INHERIT_HANDLES, NULL, NULL, NULL, &process_info);
+
+ if (result == RTL_CLONE_PARENT)
+ {
+ HANDLE me, hp, ht, hcp = 0;
+ DWORD pi, ti, mi;
+ me = GetCurrentProcess();
+ pi = (DWORD)process_info.ClientId.UniqueProcess;
+ ti = (DWORD)process_info.ClientId.UniqueThread;
+
+ hp = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pi);
+ ht = OpenThread(THREAD_ALL_ACCESS, FALSE, ti);
+ assert(hp);
+ assert(ht);
+
+ ResumeThread(ht);
+ CloseHandle(ht);
+ CloseHandle(hp);
+ return (pid_t)pi;
+ }
+ else if (result == RTL_CLONE_CHILD)
+ {
+ /* fix stdio */
+ AllocConsole();
+ return 0;
+ }
+ else
+ return -1;
+
+ /* NOTREACHED */
+ return -1;
+}
diff --git a/lib/librte_eal/windows/eal/linux-emu/setenv.c b/lib/librte_eal/windows/eal/linux-emu/setenv.c
new file mode 100644
index 0000000..371058b
--- /dev/null
+++ b/lib/librte_eal/windows/eal/linux-emu/setenv.c
@@ -0,0 +1,55 @@
+/*-
+* BSD LICENSE
+*
+* Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+* All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+*
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above copyright
+* notice, this list of conditions and the following disclaimer in
+* the documentation and/or other materials provided with the
+* distribution.
+* * Neither the name of Intel Corporation nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+#include <stdlib.h>
+
+int setenv(const char *name, const char *value, int overwrite)
+{
+ char * curenv;
+ size_t len;
+
+ // Does the environment variable already exist?
+ errno_t err = _dupenv_s(&curenv, &len, name);
+
+ // Free the allocated memory - it is okay to call free(NULL)
+ free(curenv);
+
+ if (err || overwrite)
+ {
+ char newval[128];
+ sprintf_s(newval, sizeof(newval), "%s=%s", name, value);
+ return _putenv(newval);
+ }
+
+ return 0;
+} \ No newline at end of file
diff --git a/lib/librte_eal/windows/eal/linux-emu/termios.c b/lib/librte_eal/windows/eal/linux-emu/termios.c
new file mode 100644
index 0000000..d81a26f
--- /dev/null
+++ b/lib/librte_eal/windows/eal/linux-emu/termios.c
@@ -0,0 +1,11 @@
+#include <sys/_termios.h>
+
+int tcgetattr(int fd, struct termios *t)
+{
+ return 0;
+}
+
+int tcsetattr(int fd, int opt, struct termios *t)
+{
+ return 0;
+} \ No newline at end of file
diff --git a/lib/librte_eal/windows/eal/linux-emu/unistd.c b/lib/librte_eal/windows/eal/linux-emu/unistd.c
index 989a960..aa71f7e 100644
--- a/lib/librte_eal/windows/eal/linux-emu/unistd.c
+++ b/lib/librte_eal/windows/eal/linux-emu/unistd.c
@@ -43,3 +43,8 @@ int getpagesize(void)
return si.dwPageSize;
}
+int getdtablesize(void)
+{
+ // Return OPEN_MAX (256)
+ return 256;
+} \ No newline at end of file
diff --git a/lib/librte_eal/windows/include_override/netinet/in.h b/lib/librte_eal/windows/include_override/netinet/in.h
index 841a6bc..5d4f411 100644
--- a/lib/librte_eal/windows/include_override/netinet/in.h
+++ b/lib/librte_eal/windows/include_override/netinet/in.h
@@ -9,17 +9,17 @@ struct in6_addr {
uint8_t __u6_addr8[16];
uint16_t __u6_addr16[8];
uint32_t __u6_addr32[4];
- } __u6_addr; /* 128-bit IP6 address */
+ } __u6_addr; /* 128-bit IP6 address */
};
#define INET6_ADDRSTRLEN 46
#ifndef _IN_ADDR_T_DECLARED
-typedef uint32_t in_addr_t;
+typedef uint32_t in_addr_t;
#define _IN_ADDR_T_DECLARED
#endif
-#define _STRUCT_IN_ADDR_DECLARED
+// #define _STRUCT_IN_ADDR_DECLARED
/* Internet address (a structure for historical reasons). */
#ifndef _STRUCT_IN_ADDR_DECLARED
struct in_addr {
@@ -28,4 +28,21 @@ struct in_addr {
#define _STRUCT_IN_ADDR_DECLARED
#endif
+#define AF_INET 0
+
+#define IPPROTO_IP 0
+#define IPPROTO_HOPOPTS 0
+#define IPPROTO_IPV4 4 /* IPv4 encapsulation */
+#define IPPROTO_IPIP IPPROTO_IPV4 /* for compatibility */
+#define IPPROTO_TCP 6
+#define IPPROTO_UDP 17
+#define IPPROTO_IPV6 41 /* IP6 header */
+#define IPPROTO_ROUTING 43 /* IP6 routing header */
+#define IPPROTO_FRAGMENT 44 /* IP6 fragmentation header */
+#define IPPROTO_GRE 47 /* General Routing Encap. */
+#define IPPROTO_ESP 50 /* IP6 Encap Sec. Payload */
+#define IPPROTO_AH 51 /* IP6 Auth Header */
+#define IPPROTO_DSTOPTS 60 /* IP6 destination option */
+
+
#endif
diff --git a/lib/librte_eal/windows/include_override/netinet/ip.h b/lib/librte_eal/windows/include_override/netinet/ip.h
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/lib/librte_eal/windows/include_override/netinet/ip.h
diff --git a/lib/librte_eal/windows/include_override/netinet/ip6.h b/lib/librte_eal/windows/include_override/netinet/ip6.h
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/lib/librte_eal/windows/include_override/netinet/ip6.h
diff --git a/lib/librte_eal/windows/include_override/x86intrin.h b/lib/librte_eal/windows/include_override/x86intrin.h
new file mode 100644
index 0000000..336aa0b
--- /dev/null
+++ b/lib/librte_eal/windows/include_override/x86intrin.h
@@ -0,0 +1 @@
+#include <intrin.h> \ No newline at end of file
diff --git a/lib/librte_eal/windows/netuio/netuio.inf b/lib/librte_eal/windows/netuio/netuio.inf
index 6233265..0453b37 100644
--- a/lib/librte_eal/windows/netuio/netuio.inf
+++ b/lib/librte_eal/windows/netuio/netuio.inf
@@ -1,7 +1,7 @@
;
; BSD LICENSE
;
-; Copyright(c) 2010-2017 Intel Corporation. All rights reserved.
+; Copyright(c) 2010-2018 Intel Corporation. All rights reserved.
; All rights reserved.
;
; Redistribution and use in source and binary forms, with or without
@@ -51,7 +51,10 @@ DriverVer=
[Standard.NT$ARCH$]
%F1583.netuio.Description%=netuio_Device, PCI\VEN_8086&DEV_1583
+%F158A.netuio.Description%=netuio_Device, PCI\VEN_8086&DEV_158A ; I40E_DEV_ID_25G_B
+%F158B.netuio.Description%=netuio_Device, PCI\VEN_8086&DEV_158B ; I40E_DEV_ID_25G_SFP28
%F37D0.netuio.Description%=netuio_Device, PCI\VEN_8086&DEV_37D0
+%F153B.netuio.Description%=netuio_Device, PCI\VEN_8086&DEV_153B
[netuio_Device.NT]
CopyFiles=Drivers_Dir
@@ -107,6 +110,9 @@ ManufacturerName="Intel"
ClassName = "Intel(R) DPDK netUIO Driver"
DiskName = "DPDK netUIO Installation Disk"
F1583.netuio.Description = "DPDK netUIO for Intel(R) Ethernet Converged Network Adapter XL710-Q2"
+F158A.netuio.Description = "DPDK netUIO for Intel(R) Ethernet Network Adapter XXV710 for 25GbE backplane"
+F158B.netuio.Description = "DPDK netUIO for Intel(R) Ethernet Network Adapter XXV710-DA1"
F37D0.netuio.Description = "DPDK netUIO for Intel(R) Ethernet Connection X722"
+F153B.netuio.Description = "DPDK netUIO for Intel(R) Ethernet Connection I217-V"
netuio.DeviceDesc = "netuio Device"
netuio.SVCDESC = "netuio Service"
diff --git a/lib/librte_eal/windows/netuio/netuio.rc b/lib/librte_eal/windows/netuio/netuio.rc
index ec8bf47..4b0b176 100644
--- a/lib/librte_eal/windows/netuio/netuio.rc
+++ b/lib/librte_eal/windows/netuio/netuio.rc
Binary files differ
diff --git a/lib/librte_eal/windows/netuio/netuio_dev.c b/lib/librte_eal/windows/netuio/netuio_dev.c
index 37971a9..10ff5f9 100644
--- a/lib/librte_eal/windows/netuio/netuio_dev.c
+++ b/lib/librte_eal/windows/netuio/netuio_dev.c
@@ -1,36 +1,10 @@
/*-
-* BSD LICENSE
*
* Copyright(c) 2017 Intel Corporation. All rights reserved.
-* All rights reserved.
*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in
-* the documentation and/or other materials provided with the
-* distribution.
-* * Neither the name of Intel Corporation nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+
#include <stdio.h>
#include "netuio_drv.h"
diff --git a/lib/librte_eal/windows/netuio/netuio_dev.h b/lib/librte_eal/windows/netuio/netuio_dev.h
index 843f476..a19a4fb 100644
--- a/lib/librte_eal/windows/netuio/netuio_dev.h
+++ b/lib/librte_eal/windows/netuio/netuio_dev.h
@@ -1,34 +1,7 @@
/*-
-* BSD LICENSE
*
* Copyright(c) 2017 Intel Corporation. All rights reserved.
-* All rights reserved.
*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in
-* the documentation and/or other materials provided with the
-* distribution.
-* * Neither the name of Intel Corporation nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef NETUIO_DEV_H
diff --git a/lib/librte_eal/windows/netuio/netuio_drv.c b/lib/librte_eal/windows/netuio/netuio_drv.c
index 2f2d558..d45a9ec 100644
--- a/lib/librte_eal/windows/netuio/netuio_drv.c
+++ b/lib/librte_eal/windows/netuio/netuio_drv.c
@@ -1,36 +1,10 @@
/*-
-* BSD LICENSE
*
* Copyright(c) 2017 Intel Corporation. All rights reserved.
-* All rights reserved.
*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in
-* the documentation and/or other materials provided with the
-* distribution.
-* * Neither the name of Intel Corporation nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+
#include "netuio_drv.h"
#ifdef ALLOC_PRAGMA
diff --git a/lib/librte_eal/windows/netuio/netuio_drv.h b/lib/librte_eal/windows/netuio/netuio_drv.h
index 1b34b32..39d7f30 100644
--- a/lib/librte_eal/windows/netuio/netuio_drv.h
+++ b/lib/librte_eal/windows/netuio/netuio_drv.h
@@ -1,36 +1,10 @@
/*-
-* BSD LICENSE
*
* Copyright(c) 2017 Intel Corporation. All rights reserved.
-* All rights reserved.
*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in
-* the documentation and/or other materials provided with the
-* distribution.
-* * Neither the name of Intel Corporation nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+
#ifndef NETUIO_DRV_H
#define NETUIO_DRV_H
diff --git a/lib/librte_eal/windows/netuio/netuio_interface.h b/lib/librte_eal/windows/netuio/netuio_interface.h
index b07cf3e..b86bf5d 100644
--- a/lib/librte_eal/windows/netuio/netuio_interface.h
+++ b/lib/librte_eal/windows/netuio/netuio_interface.h
@@ -1,39 +1,17 @@
/*-
-* BSD LICENSE
*
* Copyright(c) 2017 Intel Corporation. All rights reserved.
-* All rights reserved.
*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in
-* the documentation and/or other materials provided with the
-* distribution.
-* * Neither the name of Intel Corporation nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+
#ifndef NETUIO_INTERFACE_H
#define NETUIO_INTERFACE_H
+// All structures in this file are packed on an 8B boundary.
+#pragma pack(push)
+#pragma pack(8)
+
// Define an Interface Guid so that any app can find the device and talk to it.
DEFINE_GUID (GUID_DEVINTERFACE_netUIO, 0x08336f60,0x0679,0x4c6c,0x85,0xd2,0xae,0x7c,0xed,0x65,0xff,0xf7); // {08336f60-0679-4c6c-85d2-ae7ced65fff7}
@@ -70,6 +48,8 @@ struct dpdk_private_info
struct mem_region hw;
struct mem_region ms;
struct dev_addr dev_addr;
+ struct mem_region bar1;
+// struct mem_region bar2;
UINT16 dev_id;
UINT16 sub_dev_id;
USHORT dev_numa_node;
@@ -84,5 +64,6 @@ struct dpdk_pci_config_io
enum pci_io op;
};
+#pragma pack(pop)
#endif // NETUIO_INTERFACE_H
diff --git a/lib/librte_eal/windows/netuio/netuio_queue.c b/lib/librte_eal/windows/netuio/netuio_queue.c
index f02458b..9e8b5ca 100644
--- a/lib/librte_eal/windows/netuio/netuio_queue.c
+++ b/lib/librte_eal/windows/netuio/netuio_queue.c
@@ -1,36 +1,10 @@
/*-
-* BSD LICENSE
*
* Copyright(c) 2017 Intel Corporation. All rights reserved.
-* All rights reserved.
*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in
-* the documentation and/or other materials provided with the
-* distribution.
-* * Neither the name of Intel Corporation nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+
#include "netuio_drv.h"
#ifdef ALLOC_PRAGMA
diff --git a/lib/librte_eal/windows/netuio/netuio_queue.h b/lib/librte_eal/windows/netuio/netuio_queue.h
index c605411..6a03065 100644
--- a/lib/librte_eal/windows/netuio/netuio_queue.h
+++ b/lib/librte_eal/windows/netuio/netuio_queue.h
@@ -1,36 +1,10 @@
/*-
-* BSD LICENSE
*
* Copyright(c) 2017 Intel Corporation. All rights reserved.
-* All rights reserved.
*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in
-* the documentation and/or other materials provided with the
-* distribution.
-* * Neither the name of Intel Corporation nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+
#ifndef NETUIO_QUEUE_H
#define NETUIO_QUEUE_H
diff --git a/lib/librte_eal/windows/rte_override/rte_common.h b/lib/librte_eal/windows/rte_override/rte_common.h
index ec74b80..a24962a 100644
--- a/lib/librte_eal/windows/rte_override/rte_common.h
+++ b/lib/librte_eal/windows/rte_override/rte_common.h
@@ -38,15 +38,11 @@
#error
#endif
-/* rte_common.h needs typeof to be defined */
-
-#define typeof(x) (uintptr_t)
-
#ifdef DPDKWIN_NO_WARNINGS
#pragma warning (disable : 42)
#endif
-#include "rte_wincompat.h"
+#include <rte_wincompat.h>
#include "../common/include/rte_common.h"
@@ -54,8 +50,6 @@
#pragma warning (enable : 42)
#endif
-#undef typeof // since we'll need to redefine it for other use cases
-
#ifdef container_of
/* undefine the existing definition, so that we can use the Windows-compliant version */
#undef container_of
@@ -66,7 +60,7 @@
/* Override RTE_MIN() / RTE_MAX() as defined, since the one in rte_common uses typeof....TODO: Diagnose this later */
#undef RTE_MIN
-#define RTE_MIN(a, b) min(a, b)
+#define RTE_MIN(a, b) (((a) < (b)) ? (a) : (b))
#undef RTE_MAX
#define RTE_MAX(a, b) max(a, b)
diff --git a/lib/librte_eal/windows/rte_override/rte_config.h b/lib/librte_eal/windows/rte_override/rte_config.h
index f783980..054dc7f 100644
--- a/lib/librte_eal/windows/rte_override/rte_config.h
+++ b/lib/librte_eal/windows/rte_override/rte_config.h
@@ -43,11 +43,12 @@
#undef RTE_LIBC_NEWLIB_BIN
#undef RTE_LIBC_NETINCS
#undef RTE_LIBGLOSS
+
#define RTE_LIBRTE_EAL 1
-#define RTE_MAX_LCORE 32
+#define RTE_MAX_LCORE 128
#define RTE_MAX_NUMA_NODES 8
-#define RTE_MAX_MEMSEG 32
-#define RTE_MAX_MEMZONE 512
+#define RTE_MAX_MEMSEG 256
+#define RTE_MAX_MEMZONE 2560
#define RTE_MAX_TAILQ 32
#define RTE_LOG_LEVEL 8
#define RTE_LOG_HISTORY 256
@@ -57,11 +58,27 @@
#undef RTE_EAL_UNBIND_PORTS
#define RTE_LIBRTE_EAL_LINUXAPP 1
#undef RTE_LIBRTE_EAL_BAREMETAL
+#define RTE_ENABLE_AVX 1
+#undef RTE_ENABLE_AVX512
+#undef RTE_LIBRTE_EAL_VMWARE_TSC_MAP_SUPPORT
+#define RTE_LIBRTE_PCI 1
+#define RTE_LIBRTE_KVARGS 1
#define RTE_LIBRTE_ETHER 1
#undef RTE_LIBRTE_ETHDEV_DEBUG
#define RTE_MAX_ETHPORTS 32
+#define RTE_MAX_QUEUES_PER_PORT 1024
#undef RTE_LIBRTE_IEEE1588
#define RTE_ETHDEV_QUEUE_STAT_CNTRS 16
+#define RTE_ETHDEV_RXTX_CALLBACKS 1
+#undef RTE_ETHDEV_PROFILE_ITT_WASTED_RX_ITERATIONS
+#undef RTE_ETHDEV_TX_PREPARE_NOOP
+#define RTE_LIBRTE_PCI_BUS 1
+#undef RTE_LIBRTE_ENA_PMD
+#undef RTE_LIBRTE_ENA_DEBUG_RX
+#undef RTE_LIBRTE_ENA_DEBUG_TX
+#undef RTE_LIBRTE_ENA_DEBUG_TX_FREE
+#undef RTE_LIBRTE_ENA_DEBUG_DRIVER
+#undef RTE_LIBRTE_ENA_COM_DEBUG
#define RTE_LIBRTE_EM_PMD 1
#define RTE_LIBRTE_IGB_PMD 1
#undef RTE_LIBRTE_E1000_DEBUG_INIT
@@ -77,57 +94,260 @@
#undef RTE_LIBRTE_IXGBE_DEBUG_TX_FREE
#undef RTE_LIBRTE_IXGBE_DEBUG_DRIVER
#undef RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC
+#define RTE_IXGBE_INC_VECTOR 1
+#undef RTE_LIBRTE_IXGBE_BYPASS
+#define RTE_LIBRTE_I40E_PMD 1
+#undef RTE_LIBRTE_I40E_DEBUG_RX
+#undef RTE_LIBRTE_I40E_DEBUG_TX
+#undef RTE_LIBRTE_I40E_DEBUG_TX_FREE
+#define RTE_LIBRTE_I40E_RX_ALLOW_BULK_ALLOC 1
+#define RTE_LIBRTE_I40E_INC_VECTOR 1
+#undef RTE_LIBRTE_I40E_16BYTE_RX_DESC
+#define RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF 64
+#define RTE_LIBRTE_I40E_QUEUE_NUM_PER_VF 4
+#define RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM 4
+#define RTE_LIBRTE_I40E_ITR_INTERVAL -1
+#undef RTE_LIBRTE_FM10K_PMD
+#undef RTE_LIBRTE_FM10K_DEBUG_INIT
+#undef RTE_LIBRTE_FM10K_DEBUG_RX
+#undef RTE_LIBRTE_FM10K_DEBUG_TX
+#undef RTE_LIBRTE_FM10K_DEBUG_TX_FREE
+#undef RTE_LIBRTE_FM10K_DEBUG_DRIVER
+#define RTE_LIBRTE_FM10K_RX_OLFLAGS_ENABLE 1
+#define RTE_LIBRTE_FM10K_INC_VECTOR 1
+#undef RTE_LIBRTE_MLX4_PMD
+#undef RTE_LIBRTE_MLX4_DEBUG
+#undef RTE_LIBRTE_MLX4_DEBUG_BROKEN_VERBS
+#define RTE_LIBRTE_MLX4_TX_MP_CACHE 8
+#undef RTE_LIBRTE_MLX5_PMD
+#undef RTE_LIBRTE_MLX5_DEBUG
+#define RTE_LIBRTE_MLX5_TX_MP_CACHE 8
+#undef RTE_LIBRTE_BNX2X_PMD
+#undef RTE_LIBRTE_BNX2X_DEBUG
+#undef RTE_LIBRTE_BNX2X_DEBUG_INIT
+#undef RTE_LIBRTE_BNX2X_DEBUG_RX
+#undef RTE_LIBRTE_BNX2X_DEBUG_TX
+#undef RTE_LIBRTE_BNX2X_MF_SUPPORT
+#undef RTE_LIBRTE_BNX2X_DEBUG_PERIODIC
+#undef RTE_LIBRTE_CXGBE_PMD
+#undef RTE_LIBRTE_CXGBE_DEBUG
+#undef RTE_LIBRTE_CXGBE_DEBUG_REG
+#undef RTE_LIBRTE_CXGBE_DEBUG_MBOX
+#undef RTE_LIBRTE_CXGBE_DEBUG_TX
+#undef RTE_LIBRTE_CXGBE_DEBUG_RX
+#undef RTE_LIBRTE_CXGBE_TPUT
+#undef RTE_LIBRTE_ENIC_PMD
+#undef RTE_LIBRTE_ENIC_DEBUG
+#undef RTE_LIBRTE_ENIC_DEBUG_FLOW
+#undef RTE_LIBRTE_NFP_PMD
+#undef RTE_LIBRTE_NFP_DEBUG
+#undef RTE_LIBRTE_MRVL_PMD
+#undef RTE_LIBRTE_BNXT_PMD
+#undef RTE_LIBRTE_SFC_EFX_PMD
+#undef RTE_LIBRTE_SFC_EFX_DEBUG
+#define RTE_LIBRTE_PMD_SOFTNIC 1
+#undef RTE_LIBRTE_PMD_SZEDATA2
+#define RTE_LIBRTE_PMD_SZEDATA2_AS 0
+#undef RTE_LIBRTE_THUNDERX_NICVF_PMD
+#undef RTE_LIBRTE_THUNDERX_NICVF_DEBUG_INIT
+#undef RTE_LIBRTE_THUNDERX_NICVF_DEBUG_RX
+#undef RTE_LIBRTE_THUNDERX_NICVF_DEBUG_TX
+#undef RTE_LIBRTE_THUNDERX_NICVF_DEBUG_DRIVER
+#undef RTE_LIBRTE_THUNDERX_NICVF_DEBUG_MBOX
+#undef RTE_LIBRTE_LIO_PMD
+#undef RTE_LIBRTE_LIO_DEBUG_DRIVER
+#undef RTE_LIBRTE_LIO_DEBUG_INIT
+#undef RTE_LIBRTE_LIO_DEBUG_RX
+#undef RTE_LIBRTE_LIO_DEBUG_TX
+#undef RTE_LIBRTE_LIO_DEBUG_MBOX
+#undef RTE_LIBRTE_LIO_DEBUG_REGS
+#undef RTE_LIBRTE_DPAA_BUS
+#undef RTE_LIBRTE_DPAA_MEMPOOL
+#undef RTE_LIBRTE_DPAA_PMD
+#undef RTE_LIBRTE_OCTEONTX_PMD
+#undef RTE_LIBRTE_OCTEONTX_DEBUG_INIT
+#undef RTE_LIBRTE_OCTEONTX_DEBUG_RX
+#undef RTE_LIBRTE_OCTEONTX_DEBUG_TX
+#undef RTE_LIBRTE_OCTEONTX_DEBUG_DRIVER
+#undef RTE_LIBRTE_OCTEONTX_DEBUG_MBOX
+#undef RTE_LIBRTE_FSLMC_BUS
+#undef RTE_LIBRTE_DPAA2_MEMPOOL
+#undef RTE_LIBRTE_DPAA2_USE_PHYS_IOVA
+#undef RTE_LIBRTE_DPAA2_PMD
+#undef RTE_LIBRTE_DPAA2_DEBUG_INIT
+#undef RTE_LIBRTE_DPAA2_DEBUG_DRIVER
+#undef RTE_LIBRTE_DPAA2_DEBUG_RX
+#undef RTE_LIBRTE_DPAA2_DEBUG_TX
+#undef RTE_LIBRTE_DPAA2_DEBUG_TX_FREE
+#undef RTE_LIBRTE_VIRTIO_PMD
+#undef RTE_LIBRTE_VIRTIO_DEBUG_INIT
+#undef RTE_LIBRTE_VIRTIO_DEBUG_RX
+#undef RTE_LIBRTE_VIRTIO_DEBUG_TX
+#undef RTE_LIBRTE_VIRTIO_DEBUG_DRIVER
+#undef RTE_LIBRTE_VIRTIO_DEBUG_DUMP
+#undef RTE_VIRTIO_USER
+#undef RTE_LIBRTE_VMXNET3_PMD
+#undef RTE_LIBRTE_VMXNET3_DEBUG_INIT
+#undef RTE_LIBRTE_VMXNET3_DEBUG_RX
+#undef RTE_LIBRTE_VMXNET3_DEBUG_TX
+#undef RTE_LIBRTE_VMXNET3_DEBUG_TX_FREE
+#undef RTE_LIBRTE_VMXNET3_DEBUG_DRIVER
+#define RTE_LIBRTE_PMD_RING 1
+#define RTE_PMD_RING_MAX_RX_RINGS 16
+#define RTE_PMD_RING_MAX_TX_RINGS 16
+#define RTE_LIBRTE_PMD_PCAP 1
+#undef RTE_LIBRTE_PMD_BOND
+#undef RTE_LIBRTE_BOND_DEBUG_ALB
+#undef RTE_LIBRTE_BOND_DEBUG_ALB_L1
+#undef RTE_LIBRTE_QEDE_PMD
+#undef RTE_LIBRTE_QEDE_DEBUG_INIT
+#undef RTE_LIBRTE_QEDE_DEBUG_INFO
+#undef RTE_LIBRTE_QEDE_DEBUG_DRIVER
+#undef RTE_LIBRTE_QEDE_DEBUG_TX
+#undef RTE_LIBRTE_QEDE_DEBUG_RX
+#define RTE_LIBRTE_QEDE_FW ""
+#undef RTE_LIBRTE_PMD_AF_PACKET
+#undef RTE_LIBRTE_ARK_PMD
+#undef RTE_LIBRTE_ARK_PAD_TX
+#undef RTE_LIBRTE_ARK_DEBUG_RX
+#undef RTE_LIBRTE_ARK_DEBUG_TX
+#undef RTE_LIBRTE_ARK_DEBUG_STATS
+#undef RTE_LIBRTE_ARK_DEBUG_TRACE
+#undef RTE_LIBRTE_AVP_PMD
+#undef RTE_LIBRTE_AVP_DEBUG_RX
+#undef RTE_LIBRTE_AVP_DEBUG_TX
+#undef RTE_LIBRTE_AVP_DEBUG_DRIVER
+#undef RTE_LIBRTE_AVP_DEBUG_BUFFERS
+#undef RTE_LIBRTE_PMD_TAP
+#undef RTE_LIBRTE_PMD_NULL
+#undef RTE_LIBRTE_PMD_FAILSAFE
#define RTE_PMD_PACKET_PREFETCH 1
+#define RTE_LIBRTE_CRYPTODEV 1
+#undef RTE_LIBRTE_CRYPTODEV_DEBUG
+#define RTE_CRYPTO_MAX_DEVS 64
+#define RTE_CRYPTODEV_NAME_LEN 64
+#undef RTE_LIBRTE_PMD_ARMV8_CRYPTO
+#undef RTE_LIBRTE_PMD_ARMV8_CRYPTO_DEBUG
+#undef RTE_LIBRTE_PMD_DPAA2_SEC
+#undef RTE_LIBRTE_DPAA2_SEC_DEBUG_INIT
+#undef RTE_LIBRTE_DPAA2_SEC_DEBUG_DRIVER
+#undef RTE_LIBRTE_DPAA2_SEC_DEBUG_RX
+#undef RTE_LIBRTE_PMD_DPAA_SEC
+#undef RTE_LIBRTE_DPAA_SEC_DEBUG_INIT
+#undef RTE_LIBRTE_DPAA_SEC_DEBUG_DRIVER
+#undef RTE_LIBRTE_DPAA_SEC_DEBUG_RX
+#undef RTE_LIBRTE_PMD_QAT
+#undef RTE_LIBRTE_PMD_QAT_DEBUG_INIT
+#undef RTE_LIBRTE_PMD_QAT_DEBUG_TX
+#undef RTE_LIBRTE_PMD_QAT_DEBUG_RX
+#undef RTE_LIBRTE_PMD_QAT_DEBUG_DRIVER
+#define RTE_QAT_PMD_MAX_NB_SESSIONS 2048
+#undef RTE_LIBRTE_PMD_AESNI_MB
+#undef RTE_LIBRTE_PMD_AESNI_MB_DEBUG
+#undef RTE_LIBRTE_PMD_OPENSSL
+#undef RTE_LIBRTE_PMD_OPENSSL_DEBUG
+#undef RTE_LIBRTE_PMD_AESNI_GCM
+#undef RTE_LIBRTE_PMD_AESNI_GCM_DEBUG
+#undef RTE_LIBRTE_PMD_SNOW3G
+#undef RTE_LIBRTE_PMD_SNOW3G_DEBUG
+#undef RTE_LIBRTE_PMD_KASUMI
+#undef RTE_LIBRTE_PMD_KASUMI_DEBUG
+#undef RTE_LIBRTE_PMD_ZUC
+#undef RTE_LIBRTE_PMD_ZUC_DEBUG
+#undef RTE_LIBRTE_PMD_CRYPTO_SCHEDULER
+#undef RTE_LIBRTE_PMD_CRYPTO_SCHEDULER_DEBUG
+#undef RTE_LIBRTE_PMD_NULL_CRYPTO
+#undef RTE_LIBRTE_PMD_MRVL_CRYPTO
+#undef RTE_LIBRTE_PMD_MRVL_CRYPTO_DEBUG
+#define RTE_LIBRTE_SECURITY 1
+#define RTE_LIBRTE_EVENTDEV 1
+#undef RTE_LIBRTE_EVENTDEV_DEBUG
+#define RTE_EVENT_MAX_DEVS 16
+#define RTE_EVENT_MAX_QUEUES_PER_DEV 64
+#define RTE_LIBRTE_PMD_SKELETON_EVENTDEV 1
+#undef RTE_LIBRTE_PMD_SKELETON_EVENTDEV_DEBUG
+#define RTE_LIBRTE_PMD_SW_EVENTDEV 1
+#undef RTE_LIBRTE_PMD_SW_EVENTDEV_DEBUG
+#undef RTE_LIBRTE_PMD_OCTEONTX_SSOVF
+#undef RTE_LIBRTE_PMD_OCTEONTX_SSOVF_DEBUG
#define RTE_LIBRTE_RING 1
#undef RTE_LIBRTE_RING_DEBUG
#define RTE_LIBRTE_MEMPOOL 1
#define RTE_MEMPOOL_CACHE_MAX_SIZE 512
#undef RTE_LIBRTE_MEMPOOL_DEBUG
+#define RTE_DRIVER_MEMPOOL_RING 1
+#define RTE_DRIVER_MEMPOOL_STACK 1
+#undef RTE_LIBRTE_OCTEONTX_MEMPOOL
+#undef RTE_LIBRTE_OCTEONTX_MEMPOOL_DEBUG
#define RTE_LIBRTE_MBUF 1
#undef RTE_LIBRTE_MBUF_DEBUG
+#define RTE_MBUF_DEFAULT_MEMPOOL_OPS "ring_mp_mc"
#undef RTE_MBUF_SCATTER_GATHER 1
#undef RTE_MBUF_REFCNT_ATOMIC 1
#define RTE_PKTMBUF_HEADROOM 128
#define RTE_LIBRTE_TIMER 1
#undef RTE_LIBRTE_TIMER_DEBUG
-#define RTE_LIBRTE_MALLOC 1
-#undef RTE_LIBRTE_MALLOC_DEBUG
-#define RTE_MALLOC_MEMZONE_SIZE 11M
+#define RTE_LIBRTE_CFGFILE 1
#define RTE_LIBRTE_CMDLINE 1
#undef RTE_LIBRTE_CMDLINE_DEBUG
#define RTE_LIBRTE_HASH 1
#undef RTE_LIBRTE_HASH_DEBUG
-#undef RTE_LIBRTE_HASH_USE_MEMZONE
+#undef RTE_LIBRTE_EFD
+#undef RTE_LIBRTE_MEMBER
+#define RTE_LIBRTE_JOBSTATS 1
+#define RTE_LIBRTE_METRICS 1
+#define RTE_LIBRTE_BITRATE 1
+#define RTE_LIBRTE_LATENCY_STATS 1
#define RTE_LIBRTE_LPM 1
#undef RTE_LIBRTE_LPM_DEBUG
+#define RTE_LIBRTE_ACL 1
+#undef RTE_LIBRTE_ACL_DEBUG
+#undef RTE_LIBRTE_POWER
+#undef RTE_LIBRTE_POWER_DEBUG
+#define RTE_MAX_LCORE_FREQS 64
#define RTE_LIBRTE_NET 1
-#undef RTE_INSECURE_FUNCTION_WARNING
+#define RTE_LIBRTE_IP_FRAG 1
+#undef CONFIG_RTE_LIBRTE_IP_FRAG_DEBUG
+#define RTE_LIBRTE_IP_FRAG_MAX_FRAG 4
+#undef RTE_LIBRTE_IP_FRAG_TBL_STAT
+#define RTE_LIBRTE_GRO 1
+#define RTE_LIBRTE_GSO 1
+#define RTE_LIBRTE_METER 1
+#define RTE_LIBRTE_FLOW_CLASSIFY 1
+#define RTE_LIBRTE_SCHED 1
+#undef CONFIG_RTE_SCHED_DEBUG
+#undef CONFIG_RTE_SCHED_RED
+#undef RTE_SCHED_COLLECT_STATS
+#undef RTE_SCHED_SUBPORT_TC_OV
+#define RTE_SCHED_PORT_N_GRINDERS 8
+#undef RTE_SCHED_VECTOR
+#define RTE_LIBRTE_DISTRIBUTOR 1
+#define RTE_LIBRTE_REORDER 1
+#define RTE_LIBRTE_PORT 1
+#undef RTE_PORT_STATS_COLLECT
+#undef RTE_PORT_PCAP
+#define RTE_LIBRTE_TABLE 1
+#undef RTE_TABLE_STATS_COLLECT
+#define RTE_LIBRTE_PIPELINE 1
+#undef RTE_PIPELINE_STATS_COLLECT
+#undef RTE_LIBRTE_KNI
+#undef RTE_LIBRTE_PMD_KNI
+#undef RTE_KNI_KMOD
+#undef RTE_KNI_KMOD_ETHTOOL
+#undef RTE_KNI_PREEMPT_DEFAULT
+#undef RTE_LIBRTE_PDUMP
+#undef RTE_LIBRTE_VHOST
+#undef RTE_LIBRTE_VHOST_NUMA
+#undef RTE_LIBRTE_VHOST_DEBUG
+#undef RTE_LIBRTE_PMD_VHOST
#define RTE_APP_TEST 1
+#undef RTE_APP_TEST_RESOURCE_TAR
#define RTE_APP_CHKINCS 1
#define RTE_TEST_PMD 1
#undef RTE_TEST_PMD_RECORD_CORE_CYCLES
#undef RTE_TEST_PMD_RECORD_BURST_STATS
-//#define RTE_WINDOWS_ENABLE_RAWSOCK 1
-//#define RTE_WINDOWS_RAWSOCK_NUM 1
-//#undef RTE_WINDOWS_ENABLE_FAKE_IXGBE
-#undef RTE_WINDOWS_ENABLE_PCAP_FILE
-#define RTE_WINDOWS_ENABLE_PCAP_NET 1
-#undef RTE_WINDOWS_ENABLE_FAKE_NIC
-#define RTE_PMD_RING_MAX_RX_RINGS 8
-#define RTE_PMD_RING_MAX_TX_RINGS 8
+#define RTE_APP_CRYPTO_PERF 1
+#define RTE_APP_EVENTDEV 1
#define RTE_EAL_PMD_PATH ""
-#define RTE_SCHED_PORT_N_GRINDERS 8
#define RTE_CACHE_LINE_SIZE 64
#define RTE_CACHE_LINE_MIN_SIZE 64
-#define RTE_CRYPTO_MAX_DEVS 16
-#define RTE_MAX_QUEUES_PER_PORT 128
-
-/* rte_mbuf definitions from config */
-#define RTE_MBUF_DEFAULT_MEMPOOL_OPS ("ring_mp_mc")
-
-/* i40e definitions from config */
-#define RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF 64
-#define RTE_LIBRTE_I40E_QUEUE_NUM_PER_VF 4
-#define RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM 4
-#define RTE_LIBRTE_I40E_ITR_INTERVAL (-1)
-
diff --git a/lib/librte_eal/windows/rte_override/rte_pci.h b/lib/librte_eal/windows/rte_override/rte_pci.h
index 3647f03..c8ffd1b 100644
--- a/lib/librte_eal/windows/rte_override/rte_pci.h
+++ b/lib/librte_eal/windows/rte_override/rte_pci.h
@@ -33,10 +33,5 @@
#pragma once
-#undef typeof
-
-#define typeof(x) uint8_t
-
#include "..\..\..\librte_pci\rte_pci.h"
-#undef typeof
diff --git a/lib/librte_eal/windows/rte_override/rte_spinlock.h b/lib/librte_eal/windows/rte_override/rte_spinlock.h
index 7f1ef08..dac5b76 100644
--- a/lib/librte_eal/windows/rte_override/rte_spinlock.h
+++ b/lib/librte_eal/windows/rte_override/rte_spinlock.h
@@ -121,7 +121,10 @@ static inline int rte_spinlock_is_locked(rte_spinlock_t *sl)
* @return
* 1 if the hardware transactional memory is supported; 0 otherwise.
*/
-static inline int rte_tm_supported(void);
+static inline int rte_tm_supported(void)
+{
+ return 0;
+}
/**
* Try to execute critical section in a hardware memory transaction,
diff --git a/lib/librte_eal/windows/rte_override/rte_wincompat.h b/lib/librte_eal/windows/rte_override/rte_wincompat.h
index 6b4b53b..b38390b 100644
--- a/lib/librte_eal/windows/rte_override/rte_wincompat.h
+++ b/lib/librte_eal/windows/rte_override/rte_wincompat.h
@@ -56,10 +56,6 @@
#define EDQUOT 0xFE
#endif
-/* C++ only */
-#ifdef __cplusplus
-#endif
-
#ifdef __cplusplus
extern "C" {
#endif
@@ -162,10 +158,30 @@ static __forceinline int __builtin_clzll(unsigned long long x)
static __forceinline uint32_t __builtin_bswap32(uint32_t val)
{
- return ((val & 0x000000ff) << 24) |
- ((val & 0x0000ff00) << 8) |
- ((val & 0x00ff0000) >> 8) |
- ((val & 0xff000000) >> 24);
+ return (uint32_t)_byteswap_ulong((unsigned long)val);
+}
+
+static __forceinline uint64_t __builtin_bswap64(uint64_t val)
+{
+ return (uint64_t) _byteswap_uint64((unsigned long long)val);
+}
+
+typedef int useconds_t;
+static void usleep(useconds_t us)
+{
+ LARGE_INTEGER cntr, start, current;
+ useconds_t curr_time;
+
+ QueryPerformanceFrequency(&cntr);
+ QueryPerformanceCounter(&start);
+
+ do {
+ QueryPerformanceCounter(&current);
+
+ // Compute current time.
+ curr_time = ((current.QuadPart - start.QuadPart) / (float)cntr.QuadPart * 1000 * 1000);
+ } while (curr_time < us);
+
}
static inline int getuid (void)
@@ -200,6 +216,7 @@ static inline char* strtok_r(char *str, const char *delim, char **nextp)
#define pipe(i) _pipe(i, 8192, _O_BINARY)
+#define siglongjmp(a, err) /* NO-OP */
#define strncasecmp(s1,s2,count) _strnicmp(s1,s2,count)
@@ -209,6 +226,7 @@ static inline char* strtok_r(char *str, const char *delim, char **nextp)
#define strerror(errnum) WinSafeStrError(errnum)
#define strsep(str,sep) WinStrSep(str,sep)
#define strdup(str) _strdup(str)
+#define strcat(dest,src) strcat_s(dest,sizeof(dest),src)
static inline char* WinSafeStrError(int errnum)
@@ -251,7 +269,7 @@ static inline char* WinStrSep(char** ppString, char* pSeparator)
#define pthread_self() ((pthread_t)GetCurrentThreadId())
#define pthread_setaffinity_np(thread,size,cpuset) WinSetThreadAffinityMask(thread, cpuset)
#define pthread_getaffinity_np(thread,size,cpuset) WinGetThreadAffinityMask(thread, cpuset)
-#define pthread_create(threadID, threadattr, threadfunc, args) WinCreateThreadOverride(threadID, threadattr, threadfunc, args);
+#define pthread_create(threadID, threadattr, threadfunc, args) WinCreateThreadOverride(threadID, threadattr, threadfunc, args)
static inline int WinSetThreadAffinityMask(void* threadID, unsigned long *cpuset)
{
@@ -272,6 +290,11 @@ static inline int WinCreateThreadOverride(void* threadID, void* threadattr, void
{
HANDLE hThread;
hThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)threadfunc, args, 0, (LPDWORD)threadID);
+ if (hThread)
+ {
+ SetPriorityClass(GetCurrentProcess(), REALTIME_PRIORITY_CLASS);
+ SetThreadPriority(hThread, THREAD_PRIORITY_TIME_CRITICAL);
+ }
return ((hThread != NULL) ? 0: E_FAIL);
}
@@ -279,6 +302,29 @@ static inline int WinCreateThreadOverride(void* threadID, void* threadattr, void
#define IPPROTO_NONE 59 /* No next header for IPv6 */
#define IPPROTO_SCTP 132 /* Stream Control Transmission Protocol */
+/* signal definitions - defined in signal.h */
+#define SIGUSR1 30
+#define SIGUSR2 31
+
+typedef int pid_t;
+
+/* Definitions for access() */
+#define F_OK 0 /* Check for existence */
+#define W_OK 2 /* Write permission */
+#define R_OK 4 /* Read permission */
+#define X_OK 8 /* DO NOT USE */
+
+#ifndef AF_INET6
+#define AF_INET6 28
+#endif
+
+/* stdlib extensions that aren't defined in windows */
+int setenv(const char *name, const char *value, int overwrite);
+pid_t fork(void);
+
+//#include <rte_gcc_builtins.h>
+
+
#ifdef __cplusplus
}
#endif
diff --git a/lib/librte_eal/windows/rte_override/rte_windows.h b/lib/librte_eal/windows/rte_override/rte_windows.h
index 38b25b9..924fe03 100644
--- a/lib/librte_eal/windows/rte_override/rte_windows.h
+++ b/lib/librte_eal/windows/rte_override/rte_windows.h
@@ -48,10 +48,36 @@ extern "C" {
#define _WINDOWS
#endif
-
-#include "windows.h"
-/* Undefine this, the Windows definition clashes with the one we have */
-#undef s_addr
+// If we define WIN32_LEAN_AND_MEAN, winsock isn't included by default. We can then include it in specific header files as we need later.
+#define WIN32_LEAN_AND_MEAN
+
+#include <windows.h>
+
+// This isn't a complete replacement for typeof in GCC. For example, it doesn't work in cases where you have typeof(x) _val = 0. However,
+// it does allow us to remove some of the windows specific changes that need to be put into a lot of files to allow compilation.
+#define typeof(x) _Generic((x), \
+ void * : void *, \
+ char : char, \
+ unsigned char : unsigned char \
+ char * : char *, \
+ unsigned char * : unsigned char *, \
+ short : short, \
+ unsigned short : unsigned short, \
+ short * : short *, \
+ unsigned short * : unsigned short *, \
+ int : int, \
+ int * : int *, \
+ unsigned int : unsigned int \
+ unsigned int * : unsigned int *, \
+ long : long, \
+ long * : long *, \
+ unsigned long : unsigned long, \
+ unsigned long * : unsigned long *, \
+ long long : long long, \
+ unsigned long long : unsigned long long, \
+ unsigned long long * : unsigned long long *, \
+ default : void \
+)
/*
* Globally driven over-rides.
@@ -62,9 +88,7 @@ extern "C" {
#define NORETURN __declspec(noreturn)
#define ATTR_UNUSED
-
-//#define INLINE _inline
-//#define inline __inline
+#define __AVX__ 1
#define E_RTE_NO_TAILQ (-1)
@@ -126,6 +150,7 @@ void businitfn_ ##nm(void) \
#define rte_lpm6_lookup rte_lpm6_lookup_v1705
#define rte_lpm6_lookup_bulk_func rte_lpm6_lookup_bulk_func_v1705
#define rte_lpm6_is_rule_present rte_lpm6_is_rule_present_v1705
+#define rte_lpm_find_existing rte_lpm_find_existing_v1604
#define rte_distributor_request_pkt rte_distributor_request_pkt_v1705
#define rte_distributor_poll_pkt rte_distributor_poll_pkt_v1705
@@ -185,10 +210,6 @@ void businitfn_ ##nm(void) \
/* rte_pci.h must be included before we define typeof() to be nothing */
//#include "./rte_pci.h"
-/* MSVC doesn't have a typeof */
-//#define typeof(c)
-//#define __typeof__(c)
-
#define __attribute__(x)
@@ -215,9 +236,290 @@ typedef jmp_buf sigjmp_buf;
/* function prototypes for those used exclusively by Windows */
void eal_create_cpu_map();
+#define uint uint32_t
+
+#define RTE_APP_TEST_RESOURCE_TAR 1
+
+#if 0
+/* rte_config.h defines all the libraries that we have to include. For all the libraries that are enabled,
+generate a comment that will include it */
+#ifdef _RTE_WIN_DPDK_APP
+
+#ifdef RTE_LIBRTE_EAL
+#pragma comment (lib, "librte_eal.lib")
+#endif
+#ifdef RTE_LIBRTE_PCI
+#pragma comment (lib, "librte_pci.lib")
+#endif
+#ifdef RTE_LIBRTE_ETHER
+#pragma comment (lib, "librte_ether.lib")
+#endif
+#ifdef RTE_LIBRTE_KVARGS
+#pragma comment (lib, "librte_kvargs.lib")
+#endif
+#ifdef RTE_LIBRTE_IEEE1588
+#pragma comment (lib, "librte_ieee1588.lib")
+#endif
+#ifdef RTE_LIBRTE_PCI_BUS
+#pragma comment (lib, "librte_bus_pci.lib")
+#endif
+#ifdef RTE_LIBRTE_EM_PMD || RTE_LIBRTE_IGB_PMD
+#pragma comment (lib, "librte_pmd_e1000.lib")
+#endif
+#ifdef RTE_LIBRTE_IXGBE_PMD
+#pragma comment (lib, "librte_pmd_ixgbe.lib")
+#endif
+#ifdef RTE_LIBRTE_I40E_PMD
+#pragma comment (lib, "librte_pmd_i40e.lib")
+#endif
+#ifdef RTE_LIBRTE_FM10K_PMD
+#pragma comment (lib, "librte_pmd_fm10k.lib")
+#endif
+#ifdef RTE_LIBRTE_MLX4_PMD
+#pragma comment (lib, "librte_pmd_mlx4.lib")
+#endif
+#ifdef RTE_LIBRTE_MLX5_PMD
+#pragma comment (lib, "librte_pmd_mlx5.lib")
+#endif
+#ifdef RTE_LIBRTE_BNX2X_PMD
+#pragma comment (lib, "librte_pmd_bnx2x.lib")
+#endif
+#ifdef RTE_LIBRTE_CXGBE_PMD
+#pragma comment (lib, "librte_pmd_cxgbe.lib")
+#endif
+#ifdef RTE_LIBRTE_ENIC_PMD
+#pragma comment (lib, "librte_pmd_enic.lib")
+#endif
+#ifdef RTE_LIBRTE_NFP_PMD
+#pragma comment (lib, "librte_pmd_nfp.lib")
+#endif
+#ifdef RTE_LIBRTE_SFC_EFX_PMD
+#pragma comment (lib, "librte_pmd_sfc_efx.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_SOFTNIC
+//#pragma comment (lib, "librte_pmd_softnic.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_SZEDATA2
+#pragma comment (lib, "librte_pmd_szedata2.lib")
+#endif
+#ifdef RTE_LIBRTE_THUNDERX_NICVF_PMD
+#pragma comment (lib, "librte_pmd_thunderx_nicvf.lib")
+#endif
+#ifdef RTE_LIBRTE_LIO_PMD
+#pragma comment (lib, "librte_pmd_lio.lib")
+#endif
+#ifdef RTE_LIBRTE_DPAA_BUS
+#pragma comment (lib, "librte_dpaa_bus.lib")
+#endif
+#ifdef RTE_LIBRTE_DPAA_PMD
+#pragma comment (lib, "librte_pmd_dpaa.lib")
+#endif
+#ifdef RTE_LIBRTE_OCTEONTX_PMD
+#pragma comment (lib, "librte_pmd_octeontx.lib")
+#endif
+#ifdef RTE_LIBRTE_FSLMC_BUS
+#pragma comment (lib, "librte_fslmc_bus.lib")
+#endif
+#ifdef RTE_LIBRTE_DPAA2_PMD
+#pragma comment (lib, "librte_pmd_dpaa2.lib")
+#endif
+#ifdef RTE_LIBRTE_VIRTIO_PMD
+#pragma comment (lib, "librte_pmd_virtio.lib")
+#endif
+#ifdef RTE_VIRTIO_USER
+#pragma comment (lib, "librte_virtio_user.lib")
+#endif
+#ifdef RTE_LIBRTE_VMXNET3_PMD
+#pragma comment (lib, "librte_pmd_vmxnet3.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_RING
+//#pragma comment (lib, "librte_pmd_ring.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_BOND
+#pragma comment (lib, "librte_pmd_bond.lib")
+#endif
+#ifdef RTE_LIBRTE_QEDE_PMD
+#pragma comment (lib, "librte_pmd_qede.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_AF_PACKET
+#pragma comment (lib, "librte_pmd_af_packet.lib")
+#endif
+#ifdef RTE_LIBRTE_ARK_PMD
+#pragma comment (lib, "librte_pmd_ark.lib")
+#endif
+#ifdef RTE_LIBRTE_AVP_PMD
+#pragma comment (lib, "librte_pmd_avp.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_TAP
+#pragma comment (lib, "librte_pmd_tap.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_NULL
+#pragma comment (lib, "librte_pmd_null.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_FAILSAFE
+#pragma comment (lib, "librte_pmd_failsafe.lib")
+#endif
+#ifdef RTE_LIBRTE_CRYPTODEV
+#pragma comment (lib, "librte_cryptodev.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_ARMV8_CRYPTO
+#pragma comment (lib, "librte_pmd_armv8_crypto.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_DPAA2_SEC
+#pragma comment (lib, "librte_pmd_dpaa2_sec.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_QAT
+#pragma comment (lib, "librte_pmd_qat.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_AESNI_MB
+#pragma comment (lib, "librte_pmd_aesni_mb.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_OPENSSL
+#pragma comment (lib, "librte_pmd_openssl.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_AESNI_GCM
+#pragma comment (lib, "librte_pmd_aesni_gcm.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_SNOW3G
+#pragma comment (lib, "librte_pmd_snow3g.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_KASUMI
+#pragma comment (lib, "librte_pmd_kasumi.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_ZUC
+#pragma comment (lib, "librte_pmd_zuc.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_CRYPTO_SCHEDULER
+#pragma comment (lib, "librte_pmd_crypto_scheduler.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_NULL_CRYPTO
+#pragma comment (lib, "librte_pmd_null_crypto.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_MRVL_CRYPTO
+#pragma comment (lib, "librte_pmd_mrvl_crypto.lib")
+#endif
+#ifdef RTE_LIBRTE_SECURITY
+#pragma comment (lib, "librte_security.lib")
+#endif
+#ifdef RTE_LIBRTE_EVENTDEV
+#pragma comment (lib, "librte_eventdev.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_SKELETON_EVENTDEV
+//#pragma comment (lib, "librte_pmd_skeleton_eventdev.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_SW_EVENTDEV
+//#pragma comment (lib, "librte_pmd_sw_eventdev.lib")
+#endif
+#ifdef RTE_LIBRTE_RING
+#pragma comment (lib, "librte_ring.lib")
+#endif
+#ifdef RTE_LIBRTE_MEMPOOL
+#pragma comment (lib, "librte_mempool.lib")
+#pragma comment (lib, "librte_mempool_ring.lib")
+#endif
+#ifdef RTE_LIBRTE_MBUF
+#pragma comment (lib, "librte_mbuf.lib")
+#endif
+#ifdef RTE_LIBRTE_TIMER
+#pragma comment (lib, "librte_timer.lib")
+#endif
+#ifdef RTE_LIBRTE_CFGFILE
+#pragma comment (lib, "librte_cfgfile.lib")
+#endif
+#ifdef RTE_LIBRTE_CMDLINE
+#pragma comment (lib, "librte_cmdline.lib")
+#endif
+#ifdef RTE_LIBRTE_HASH
+#pragma comment (lib, "librte_hash.lib")
+#endif
+#ifdef RTE_LIBRTE_EFD
+#pragma comment (lib, "librte_efd.lib")
+#endif
+#ifdef RTE_LIBRTE_EFD
+#pragma comment (lib, "librte_efd.lib")
+#endif
+#ifdef RTE_LIBRTE_MEMBER
+#pragma comment (lib, "librte_member.lib")
+#endif
+#ifdef RTE_LIBRTE_JOBSTATS
+//#pragma comment (lib, "librte_jobstats.lib")
+#endif
+#ifdef RTE_LIBRTE_METRICS
+#pragma comment (lib, "librte_metrics.lib")
+#endif
+#ifdef RTE_LIBRTE_BITRATE
+#pragma comment (lib, "librte_bitratestats.lib")
+#endif
+#ifdef RTE_LIBRTE_LATENCY_STATS
+#pragma comment (lib, "librte_latencystats.lib")
+#endif
+#ifdef RTE_LIBRTE_LPM
+#pragma comment (lib, "librte_lpm.lib")
+#endif
+#ifdef RTE_LIBRTE_ACL
+#pragma comment (lib, "librte_acl.lib")
+#endif
+#ifdef RTE_LIBRTE_POWER
+#pragma comment (lib, "librte_power.lib")
+#endif
+#ifdef RTE_LIBRTE_NET
+#pragma comment (lib, "librte_net.lib")
+#endif
+#ifdef RTE_LIBRTE_IP_FRAG
+#pragma comment (lib, "librte_ipfrag.lib")
+#endif
+#ifdef RTE_LIBRTE_GRO
+#pragma comment (lib, "librte_gro.lib")
+#endif
+#ifdef RTE_LIBRTE_GSO
+#pragma comment (lib, "librte_gso.lib")
+#endif
+#ifdef RTE_LIBRTE_METER
+#pragma comment (lib, "librte_meter.lib")
+#endif
+#ifdef RTE_LIBRTE_FLOW_CLASSIFY
+#pragma comment (lib, "librte_flowclassify.lib")
+#endif
+#ifdef RTE_LIBRTE_SCHED
+#pragma comment (lib, "librte_sched.lib")
+#endif
+#ifdef RTE_LIBRTE_DISTRIBUTOR
+#pragma comment (lib, "librte_distributor.lib")
+#endif
+#ifdef RTE_LIBRTE_REORDER
+#pragma comment (lib, "librte_reorder.lib")
+#endif
+#ifdef RTE_LIBRTE_PORT
+#pragma comment (lib, "librte_port.lib")
+#endif
+#ifdef RTE_LIBRTE_TABLE
+#pragma comment (lib, "librte_table.lib")
+#endif
+#ifdef RTE_LIBRTE_PIPELINE
+#pragma comment (lib, "librte_pipeline.lib")
+#endif
+#ifdef RTE_LIBRTE_KNI
+#pragma comment (lib, "librte_kni.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_KNI
+#pragma comment (lib, "librte_pmd_kni.lib")
+#endif
+#ifdef RTE_LIBRTE_PDUMP
+#pragma comment (lib, "librte_pdump.lib")
+#endif
+#ifdef RTE_LIBRTE_VHOST
+#pragma comment (lib, "librte_vhost.lib")
+#endif
+#ifdef RTE_LIBRTE_PMD_VHOST
+#pragma comment (lib, "librte_pmd_vhost.lib")
+#endif
+
+
+#endif /* _RTE_WIN_DPDK_APP */
+#endif
#ifdef __cplusplus
}
#endif
-#endif /* _RTE_WIN_H_ */
+#endif /* _RTE_WINDOWS_H_ */
diff --git a/lib/librte_efd/rte_efd.c b/lib/librte_efd/rte_efd.c
index a780e2f..e15ff04 100644
--- a/lib/librte_efd/rte_efd.c
+++ b/lib/librte_efd/rte_efd.c
@@ -558,7 +558,7 @@ rte_efd_create(const char *name, uint32_t max_num_rules, uint32_t key_len,
}
/* Create a new EFD table management structure */
- table = rte_zmalloc_socket(NULL,
+ table = (struct rte_efd_table *) rte_zmalloc_socket(NULL,
sizeof(struct rte_efd_table),
RTE_CACHE_LINE_SIZE,
offline_cpu_socket);
@@ -580,7 +580,7 @@ rte_efd_create(const char *name, uint32_t max_num_rules, uint32_t key_len,
table->key_len = key_len;
/* key_array */
- key_array = rte_zmalloc_socket(NULL,
+ key_array = (uint8_t *) rte_zmalloc_socket(NULL,
table->max_num_rules * table->key_len,
RTE_CACHE_LINE_SIZE,
offline_cpu_socket);
@@ -616,7 +616,7 @@ rte_efd_create(const char *name, uint32_t max_num_rules, uint32_t key_len,
* as a continuous block
*/
table->chunks[socket_id] =
- rte_zmalloc_socket(
+ (struct efd_online_chunk *) rte_zmalloc_socket(
NULL,
online_table_size,
RTE_CACHE_LINE_SIZE,
@@ -666,7 +666,7 @@ rte_efd_create(const char *name, uint32_t max_num_rules, uint32_t key_len,
*/
offline_table_size = num_chunks * sizeof(struct efd_offline_chunk_rules);
table->offline_chunks =
- rte_zmalloc_socket(NULL,
+ (struct efd_offline_chunk_rules *) rte_zmalloc_socket(NULL,
offline_table_size,
RTE_CACHE_LINE_SIZE,
offline_cpu_socket);
diff --git a/lib/librte_ether/rte_ethdev_core.h b/lib/librte_ether/rte_ethdev_core.h
index e5681e4..7452763 100644
--- a/lib/librte_ether/rte_ethdev_core.h
+++ b/lib/librte_ether/rte_ethdev_core.h
@@ -523,6 +523,9 @@ struct rte_eth_rxtx_callback {
* memory. This split allows the function pointer and driver data to be per-
* process, while the actual configuration data for the device is shared.
*/
+#ifdef _WIN64
+RTE_CACHE_ALIGN
+#endif
struct rte_eth_dev {
eth_rx_burst_t rx_pkt_burst; /**< Pointer to PMD receive function. */
eth_tx_burst_t tx_pkt_burst; /**< Pointer to PMD transmit function. */
@@ -557,6 +560,9 @@ struct rte_eth_dev_owner;
* This structure is safe to place in shared memory to be common among different
* processes in a multi-process configuration.
*/
+#ifdef _WIN64
+RTE_CACHE_ALIGN
+#endif
struct rte_eth_dev_data {
char name[RTE_ETH_NAME_MAX_LEN]; /**< Unique identifier name */
diff --git a/lib/librte_ether/rte_mtr.c b/lib/librte_ether/rte_mtr.c
index 1046cb5..a7a7129 100644
--- a/lib/librte_ether/rte_mtr.c
+++ b/lib/librte_ether/rte_mtr.c
@@ -40,6 +40,7 @@ rte_mtr_ops_get(uint16_t port_id, struct rte_mtr_error *error)
return ops;
}
+#ifndef _WIN64
#define RTE_MTR_FUNC(port_id, func) \
({ \
const struct rte_mtr_ops *ops = \
@@ -56,6 +57,9 @@ rte_mtr_ops_get(uint16_t port_id, struct rte_mtr_error *error)
\
ops->func; \
})
+#else
+#define RTE_MTR_FUNC(port_id, func) ((rte_mtr_ops_get(port_id, error)->func))
+#endif
/* MTR capabilities get */
int __rte_experimental
diff --git a/lib/librte_eventdev/rte_eventdev_pmd.h b/lib/librte_eventdev/rte_eventdev_pmd.h
index 31343b5..5f1e498 100644
--- a/lib/librte_eventdev/rte_eventdev_pmd.h
+++ b/lib/librte_eventdev/rte_eventdev_pmd.h
@@ -28,10 +28,14 @@ extern "C" {
#include "rte_eventdev.h"
/* Logging Macros */
+#ifdef _WIN64
+#define RTE_EDEV_LOG_ERR(f, ...) RTE_LOG(ERR, EVENTDEV, "%s() line %u: " f "\n", __func__, __LINE__, __VA_ARGS__)
+#else
#define RTE_EDEV_LOG_ERR(...) \
RTE_LOG(ERR, EVENTDEV, \
RTE_FMT("%s() line %u: " RTE_FMT_HEAD(__VA_ARGS__,) "\n", \
__func__, __LINE__, RTE_FMT_TAIL(__VA_ARGS__,)))
+#endif
#ifdef RTE_LIBRTE_EVENTDEV_DEBUG
#define RTE_EDEV_LOG_DEBUG(...) \
diff --git a/lib/librte_hash/rte_fbk_hash.c b/lib/librte_hash/rte_fbk_hash.c
index c9b470d..a04d8ab 100644
--- a/lib/librte_hash/rte_fbk_hash.c
+++ b/lib/librte_hash/rte_fbk_hash.c
@@ -124,7 +124,7 @@ rte_fbk_hash_create(const struct rte_fbk_hash_params *params)
}
/* Allocate memory for table. */
- ht = rte_zmalloc_socket(hash_name, mem_size,
+ ht = (struct rte_fbk_hash_table *)rte_zmalloc_socket(hash_name, mem_size,
0, params->socket_id);
if (ht == NULL) {
RTE_LOG(ERR, HASH, "Failed to allocate fbk hash table\n");
diff --git a/lib/librte_hash/rte_hash_crc.h b/lib/librte_hash/rte_hash_crc.h
index 479f84b..8d2d596 100644
--- a/lib/librte_hash/rte_hash_crc.h
+++ b/lib/librte_hash/rte_hash_crc.h
@@ -452,6 +452,9 @@ rte_hash_crc_set_alg(uint8_t alg)
}
/* Setting the best available algorithm */
+#ifdef _WIN64
+inline
+#endif
RTE_INIT(rte_hash_crc_init_alg)
{
rte_hash_crc_set_alg(CRC32_SSE42_x64);
diff --git a/lib/librte_ip_frag/ip_frag_common.h b/lib/librte_ip_frag/ip_frag_common.h
index 197acf8..9c2ff69 100644
--- a/lib/librte_ip_frag/ip_frag_common.h
+++ b/lib/librte_ip_frag/ip_frag_common.h
@@ -11,7 +11,11 @@
#ifdef RTE_LIBRTE_IP_FRAG_DEBUG
#define IP_FRAG_LOG(lvl, fmt, args...) RTE_LOG(lvl, USER1, fmt, ##args)
#else
+#ifndef _WIN64
#define IP_FRAG_LOG(lvl, fmt, args...) do {} while(0)
+#else
+#define IP_FRAG_LOG(lvl, fmt, ...) do {} while(0)
+#endif
#endif /* IP_FRAG_DEBUG */
#define IPV4_KEYLEN 1
diff --git a/lib/librte_lpm/rte_lpm.c b/lib/librte_lpm/rte_lpm.c
index d00b13d..9060394 100644
--- a/lib/librte_lpm/rte_lpm.c
+++ b/lib/librte_lpm/rte_lpm.c
@@ -99,7 +99,7 @@ rte_lpm_find_existing_v20(const char *name)
rte_rwlock_read_lock(RTE_EAL_TAILQ_RWLOCK);
TAILQ_FOREACH(te, lpm_list, next) {
- l = te->data;
+ l = (struct rte_lpm_v20 *) te->data;
if (strncmp(name, l->name, RTE_LPM_NAMESIZE) == 0)
break;
}
@@ -125,7 +125,7 @@ rte_lpm_find_existing_v1604(const char *name)
rte_rwlock_read_lock(RTE_EAL_TAILQ_RWLOCK);
TAILQ_FOREACH(te, lpm_list, next) {
- l = te->data;
+ l = (struct rte_lpm *) te->data;
if (strncmp(name, l->name, RTE_LPM_NAMESIZE) == 0)
break;
}
@@ -174,7 +174,7 @@ rte_lpm_create_v20(const char *name, int socket_id, int max_rules,
/* guarantee there's no existing */
TAILQ_FOREACH(te, lpm_list, next) {
- lpm = te->data;
+ lpm = (struct rte_lpm_v20 *) te->data;
if (strncmp(name, lpm->name, RTE_LPM_NAMESIZE) == 0)
break;
}
@@ -194,7 +194,7 @@ rte_lpm_create_v20(const char *name, int socket_id, int max_rules,
}
/* Allocate memory to store the LPM data structures. */
- lpm = rte_zmalloc_socket(mem_name, mem_size,
+ lpm = (struct rte_lpm_v20 *)rte_zmalloc_socket(mem_name, mem_size,
RTE_CACHE_LINE_SIZE, socket_id);
if (lpm == NULL) {
RTE_LOG(ERR, LPM, "LPM memory allocation failed\n");
@@ -207,7 +207,7 @@ rte_lpm_create_v20(const char *name, int socket_id, int max_rules,
lpm->max_rules = max_rules;
snprintf(lpm->name, sizeof(lpm->name), "%s", name);
- te->data = lpm;
+ te->data = (void *) lpm;
TAILQ_INSERT_TAIL(lpm_list, te, next);
@@ -251,7 +251,7 @@ rte_lpm_create_v1604(const char *name, int socket_id,
/* guarantee there's no existing */
TAILQ_FOREACH(te, lpm_list, next) {
- lpm = te->data;
+ lpm = (struct rte_lpm *) te->data;
if (strncmp(name, lpm->name, RTE_LPM_NAMESIZE) == 0)
break;
}
@@ -271,7 +271,7 @@ rte_lpm_create_v1604(const char *name, int socket_id,
}
/* Allocate memory to store the LPM data structures. */
- lpm = rte_zmalloc_socket(mem_name, mem_size,
+ lpm = (struct rte_lpm *)rte_zmalloc_socket(mem_name, mem_size,
RTE_CACHE_LINE_SIZE, socket_id);
if (lpm == NULL) {
RTE_LOG(ERR, LPM, "LPM memory allocation failed\n");
@@ -280,7 +280,7 @@ rte_lpm_create_v1604(const char *name, int socket_id,
goto exit;
}
- lpm->rules_tbl = rte_zmalloc_socket(NULL,
+ lpm->rules_tbl = (struct rte_lpm_rule *)rte_zmalloc_socket(NULL,
(size_t)rules_size, RTE_CACHE_LINE_SIZE, socket_id);
if (lpm->rules_tbl == NULL) {
@@ -292,7 +292,7 @@ rte_lpm_create_v1604(const char *name, int socket_id,
goto exit;
}
- lpm->tbl8 = rte_zmalloc_socket(NULL,
+ lpm->tbl8 = (struct rte_lpm_tbl_entry *)rte_zmalloc_socket(NULL,
(size_t)tbl8s_size, RTE_CACHE_LINE_SIZE, socket_id);
if (lpm->tbl8 == NULL) {
@@ -310,7 +310,7 @@ rte_lpm_create_v1604(const char *name, int socket_id,
lpm->number_tbl8s = config->number_tbl8s;
snprintf(lpm->name, sizeof(lpm->name), "%s", name);
- te->data = lpm;
+ te->data = (void *) lpm;
TAILQ_INSERT_TAIL(lpm_list, te, next);
diff --git a/lib/librte_lpm/rte_lpm6.c b/lib/librte_lpm/rte_lpm6.c
index cc70e64..f1ef4b6 100644
--- a/lib/librte_lpm/rte_lpm6.c
+++ b/lib/librte_lpm/rte_lpm6.c
@@ -173,7 +173,7 @@ rte_lpm6_create(const char *name, int socket_id,
}
/* Allocate memory to store the LPM data structures. */
- lpm = rte_zmalloc_socket(mem_name, (size_t)mem_size,
+ lpm = (struct rte_lpm6 *)rte_zmalloc_socket(mem_name, (size_t)mem_size,
RTE_CACHE_LINE_SIZE, socket_id);
if (lpm == NULL) {
@@ -183,7 +183,7 @@ rte_lpm6_create(const char *name, int socket_id,
goto exit;
}
- lpm->rules_tbl = rte_zmalloc_socket(NULL,
+ lpm->rules_tbl = (struct rte_lpm6_rule *)rte_zmalloc_socket(NULL,
(size_t)rules_size, RTE_CACHE_LINE_SIZE, socket_id);
if (lpm->rules_tbl == NULL) {
diff --git a/lib/librte_mbuf/rte_mbuf.c b/lib/librte_mbuf/rte_mbuf.c
index 38cfcb9..091d388 100644
--- a/lib/librte_mbuf/rte_mbuf.c
+++ b/lib/librte_mbuf/rte_mbuf.c
@@ -15,11 +15,6 @@
#include <rte_compat.h>
#include <rte_debug.h>
-
-#ifdef _WIN64
-#undef typeof
-#define typeof(x) uint16_t
-#endif
#include <rte_common.h>
#include <rte_log.h>
#include <rte_memory.h>
diff --git a/lib/librte_member/rte_member.c b/lib/librte_member/rte_member.c
index e147dd1..cd1ae9c 100644
--- a/lib/librte_member/rte_member.c
+++ b/lib/librte_member/rte_member.c
@@ -107,7 +107,7 @@ rte_member_create(const struct rte_member_parameters *params)
rte_rwlock_write_lock(RTE_EAL_TAILQ_RWLOCK);
TAILQ_FOREACH(te, member_list, next) {
- setsum = te->data;
+ setsum = (struct rte_member_setsum *) te->data;
if (strncmp(params->name, setsum->name,
RTE_MEMBER_NAMESIZE) == 0)
break;
@@ -125,7 +125,7 @@ rte_member_create(const struct rte_member_parameters *params)
}
/* Create a new setsum structure */
- setsum = rte_zmalloc_socket(params->name,
+ setsum = (struct rte_member_setsum *) rte_zmalloc_socket(params->name,
sizeof(struct rte_member_setsum), RTE_CACHE_LINE_SIZE,
params->socket_id);
if (setsum == NULL) {
diff --git a/lib/librte_mempool/rte_mempool.h b/lib/librte_mempool/rte_mempool.h
index 62d874f..6c6da3f 100644
--- a/lib/librte_mempool/rte_mempool.h
+++ b/lib/librte_mempool/rte_mempool.h
@@ -76,11 +76,6 @@ struct rte_mempool_debug_stats {
} __rte_cache_aligned;
#endif
-#ifdef _WIN64
-#undef typeof
-#define typeof(x) uintptr_t
-#endif
-
/**
* A structure that stores a per-core object cache.
*/
diff --git a/lib/librte_pipeline/rte_pipeline.c b/lib/librte_pipeline/rte_pipeline.c
index 0cb8b80..b17f547 100644
--- a/lib/librte_pipeline/rte_pipeline.c
+++ b/lib/librte_pipeline/rte_pipeline.c
@@ -347,7 +347,11 @@ rte_pipeline_table_create(struct rte_pipeline *p,
/* Allocate space for the default table entry */
entry_size = sizeof(struct rte_pipeline_table_entry) +
params->action_data_size;
+#ifndef _WIN64
default_entry = rte_zmalloc_socket(
+#else
+ default_entry = (struct rte_pipeline_table_entry *) rte_zmalloc_socket(
+#endif
"PIPELINE", entry_size, RTE_CACHE_LINE_SIZE, p->socket_id);
if (default_entry == NULL) {
RTE_LOG(ERR, PIPELINE,
diff --git a/lib/librte_port/rte_port_source_sink.c b/lib/librte_port/rte_port_source_sink.c
index 54045f9..a8c6248 100644
--- a/lib/librte_port/rte_port_source_sink.c
+++ b/lib/librte_port/rte_port_source_sink.c
@@ -180,6 +180,9 @@ error_exit:
#else /* RTE_PORT_PCAP */
+#ifdef _WIN64
+#define PCAP_SOURCE_LOAD(port, file_name, n_bytes, socket_id) (file_name ? -1 : 0)
+#else
#define PCAP_SOURCE_LOAD(port, file_name, n_bytes, socket_id) \
({ \
int _ret = 0; \
@@ -192,6 +195,7 @@ error_exit:
\
_ret; \
})
+#endif
#endif /* RTE_PORT_PCAP */
@@ -436,6 +440,9 @@ do { \
#else
+#ifdef _WIN64
+#define PCAP_SINK_OPEN(port, file_name, max_n_pkts) (file_name ? -1 : 0)
+#else
#define PCAP_SINK_OPEN(port, file_name, max_n_pkts) \
({ \
int _ret = 0; \
@@ -448,6 +455,7 @@ do { \
\
_ret; \
})
+#endif
#define PCAP_SINK_WRITE_PKT(port, mbuf) {}
diff --git a/lib/librte_ring/rte_ring.c b/lib/librte_ring/rte_ring.c
index 581f717..d215ace 100644
--- a/lib/librte_ring/rte_ring.c
+++ b/lib/librte_ring/rte_ring.c
@@ -15,10 +15,6 @@
#include <errno.h>
#include <sys/queue.h>
-#ifdef _WIN64
-#undef typeof
-#define typeof(x) ssize_t
-#endif
#include <rte_common.h>
#include <rte_log.h>
#include <rte_memory.h>
diff --git a/lib/librte_sched/rte_sched.c b/lib/librte_sched/rte_sched.c
index 634486c..9ab6eea 100644
--- a/lib/librte_sched/rte_sched.c
+++ b/lib/librte_sched/rte_sched.c
@@ -135,6 +135,7 @@ enum grinder_state {
* each packet, typically written by the classification stage and read
* by scheduler enqueue.
*/
+#ifndef _WIN64
struct rte_sched_port_hierarchy {
uint16_t queue:2; /**< Queue ID (0 .. 3) */
uint16_t traffic_class:2; /**< Traffic class ID (0 .. 3)*/
@@ -143,6 +144,16 @@ struct rte_sched_port_hierarchy {
uint16_t subport; /**< Subport ID */
uint32_t pipe; /**< Pipe ID */
};
+#else
+struct rte_sched_port_hierarchy {
+ uint8_t queue : 2; /**< Queue ID (0 .. 3) */
+ uint8_t traffic_class : 2; /**< Traffic class ID (0 .. 3)*/
+ uint8_t color : 2; /**< Color */
+ uint8_t unused;
+ uint16_t subport; /**< Subport ID */
+ uint32_t pipe; /**< Pipe ID */
+};
+#endif
struct rte_sched_grinder {
/* Pipe cache */
diff --git a/lib/librte_table/rte_table_acl.c b/lib/librte_table/rte_table_acl.c
index 73d3910..84c92a0 100644
--- a/lib/librte_table/rte_table_acl.c
+++ b/lib/librte_table/rte_table_acl.c
@@ -28,6 +28,9 @@
#endif
+#ifdef _WIN64
+RTE_CACHE_ALIGN
+#endif
struct rte_table_acl {
struct rte_table_stats stats;
diff --git a/mk/exec-env/windows/DpdkApp.props b/mk/exec-env/windows/DpdkApp.props
new file mode 100644
index 0000000..c6f870a
--- /dev/null
+++ b/mk/exec-env/windows/DpdkApp.props
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ImportGroup Label="PropertySheets" />
+ <PropertyGroup Label="UserMacros">
+ <RTE_SDK>$(SolutionDir)..\..\..</RTE_SDK>
+ </PropertyGroup>
+ <PropertyGroup>
+ <OutDir>$(RTE_SDK)\$(Platform)\$(Configuration)\$(MSBuildProjectName)\</OutDir>
+ <IntDir>$(RTE_SDK)\mk\exec-env\windows\$(Platform)\$(Configuration)\$(MSBuildProjectName)\</IntDir>
+ </PropertyGroup>
+ <ItemDefinitionGroup>
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ </ClCompile>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup>
+ <ClCompile>
+ <PrecompiledHeaderFile />
+ </ClCompile>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup>
+ <ClCompile>
+ <PrecompiledHeaderOutputFile />
+ <AdditionalIncludeDirectories>$(RTE_SDK)\lib\librte_eal\windows\include_override;$(RTE_SDK)\lib\librte_eal\windows\rte_override;$(RTE_SDK)\lib\librte_eal\common;$(RTE_SDK)\lib\librte_eal\common\include;$(RTE_SDK)\lib\librte_acl;$(RTE_SDK)\lib\librte_cmdline;$(RTE_SDK)\lib\librte_distributor;$(RTE_SDK)\lib\librte_ether;$(RTE_SDK)\lib\librte_hash;$(RTE_SDK)\lib\librte_ip_frag;$(RTE_SDK)\lib\librte_kvargs;$(RTE_SDK)\lib\librte_lpm;$(RTE_SDK)\lib\librte_malloc;$(RTE_SDK)\lib\librte_mempool;$(RTE_SDK)\lib\librte_mbuf;$(RTE_SDK)\lib\librte_meter;$(RTE_SDK)\lib\librte_net;$(RTE_SDK)\lib\librte_pipeline;$(RTE_SDK)\lib\librte_port;$(RTE_SDK)\lib\librte_reorder;$(RTE_SDK)\lib\librte_ring;$(RTE_SDK)\lib\librte_sched;$(RTE_SDK)\lib\librte_table;$(RTE_SDK)\lib\librte_timer;$(RTE_SDK)\lib\librte_vhost;$(RTE_SDK)\lib\librte_compat;$(RTE_SDK)\drivers\bus\pci;$(RTE_SDK)\lib\librte_gro;$(RTE_SDK)\drivers\net\ixgbe;$(RTE_SDK)\lib\librte_gso</AdditionalIncludeDirectories>
+ <ForcedIncludeFiles>$(RTE_SDK)\lib\librte_eal\windows\rte_override\rte_windows.h</ForcedIncludeFiles>
+ <CLanguageStandard>gnu11</CLanguageStandard>
+ <PrecompiledHeaderCompileAs>
+ </PrecompiledHeaderCompileAs>
+ <PrecompiledHeaderOutputFileDirectory />
+ <CompileAs>Default</CompileAs>
+ <C99Support>
+ </C99Support>
+ <StructMemberAlignment>1Byte</StructMemberAlignment>
+ <AdditionalOptions>/Qstd=c11 %(AdditionalOptions)</AdditionalOptions>
+ </ClCompile>
+ <Link>
+ <AdditionalDependencies>setupapi.lib;dbghelp.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_bus_pci\librte_bus_pci.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_pci\librte_pci.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_eal\librte_eal.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_ether\librte_ether.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_mempool\librte_mempool.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_mempool_ring\librte_mempool_ring.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_mbuf\librte_mbuf.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_ring\librte_ring.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_hash\librte_hash.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_distributor\librte_distributor.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_lpm\librte_lpm.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_cmdline\librte_cmdline.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_kvargs\librte_kvargs.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_pmd_i40e\librte_pmd_i40e.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_pmd_e1000\librte_pmd_e1000.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_timer\librte_timer.lib;$(RTE_SDK)\$(Platform)\$(Configuration)\librte_pmd_ixgbe\librte_pmd_ixgbe.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <BuildMacro Include="RTE_SDK">
+ <Value>$(RTE_SDK)</Value>
+ </BuildMacro>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/DpdkRteLib.props b/mk/exec-env/windows/DpdkRteLib.props
index 393bfa9..7973c7a 100644
--- a/mk/exec-env/windows/DpdkRteLib.props
+++ b/mk/exec-env/windows/DpdkRteLib.props
@@ -8,6 +8,9 @@
<OutDir>$(RTE_SDK)\$(Platform)\$(Configuration)\$(MSBuildProjectName)\</OutDir>
<IntDir>$(RTE_SDK)\mk\exec-env\windows\$(Platform)\$(Configuration)\$(MSBuildProjectName)\</IntDir>
</PropertyGroup>
+ <PropertyGroup Label="Globals">
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<PrecompiledHeader>NotUsing</PrecompiledHeader>
@@ -21,14 +24,18 @@
<ItemDefinitionGroup>
<ClCompile>
<PrecompiledHeaderOutputFile />
- <AdditionalIncludeDirectories>$(RTE_SDK)\lib\librte_eal\windows\include_override;$(RTE_SDK)\lib\librte_eal\windows\rte_override;$(RTE_SDK)\lib\librte_eal\common;$(RTE_SDK)\lib\librte_eal\common\include;$(RTE_SDK)\lib\librte_acl;$(RTE_SDK)\lib\librte_cmdline;$(RTE_SDK)\lib\librte_distributor;$(RTE_SDK)\lib\librte_ether;$(RTE_SDK)\lib\librte_hash;$(RTE_SDK)\lib\librte_ip_frag;$(RTE_SDK)\lib\librte_kvargs;$(RTE_SDK)\lib\librte_lpm;$(RTE_SDK)\lib\librte_malloc;$(RTE_SDK)\lib\librte_mempool;$(RTE_SDK)\lib\librte_mbuf;$(RTE_SDK)\lib\librte_meter;$(RTE_SDK)\lib\librte_net;$(RTE_SDK)\lib\librte_pipeline;$(RTE_SDK)\lib\librte_port;$(RTE_SDK)\lib\librte_reorder;$(RTE_SDK)\lib\librte_ring;$(RTE_SDK)\lib\librte_sched;$(RTE_SDK)\lib\librte_table;$(RTE_SDK)\lib\librte_timer;$(RTE_SDK)\lib\librte_vhost;$(RTE_SDK)\lib\librte_compat;$(RTE_SDK)\drivers\bus\pci</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(RTE_SDK)\lib\librte_eal\windows\include_override;$(RTE_SDK)\lib\librte_eal\windows\rte_override;$(RTE_SDK)\lib\librte_eal\common;$(RTE_SDK)\lib\librte_eal\common\include;$(RTE_SDK)\lib\librte_acl;$(RTE_SDK)\lib\librte_cmdline;$(RTE_SDK)\lib\librte_distributor;$(RTE_SDK)\lib\librte_ether;$(RTE_SDK)\lib\librte_hash;$(RTE_SDK)\lib\librte_ip_frag;$(RTE_SDK)\lib\librte_kvargs;$(RTE_SDK)\lib\librte_lpm;$(RTE_SDK)\lib\librte_malloc;$(RTE_SDK)\lib\librte_mempool;$(RTE_SDK)\lib\librte_mbuf;$(RTE_SDK)\lib\librte_meter;$(RTE_SDK)\lib\librte_net;$(RTE_SDK)\lib\librte_pipeline;$(RTE_SDK)\lib\librte_port;$(RTE_SDK)\lib\librte_reorder;$(RTE_SDK)\lib\librte_ring;$(RTE_SDK)\lib\librte_sched;$(RTE_SDK)\lib\librte_table;$(RTE_SDK)\lib\librte_timer;$(RTE_SDK)\lib\librte_vhost;$(RTE_SDK)\lib\librte_compat;$(RTE_SDK)\drivers\bus\pci;$(RTE_SDK)\lib\librte_security;$(RTE_SDK)\lib\librte_bitratestats;$(RTE_SDK)\lib\librte_metrics;$(RTE_SDK)\lib\librte_efd;$(RTE_SDK)\lib\librte_cryptodev;$(RTE_SDK)\lib\librte_flow_classify</AdditionalIncludeDirectories>
<ForcedIncludeFiles>$(RTE_SDK)\lib\librte_eal\windows\rte_override\rte_windows.h</ForcedIncludeFiles>
<CLanguageStandard>gnu11</CLanguageStandard>
<PrecompiledHeaderCompileAs>
</PrecompiledHeaderCompileAs>
<PrecompiledHeaderOutputFileDirectory />
<CompileAs>Default</CompileAs>
- <C99Support>true</C99Support>
+ <C99Support>
+ </C99Support>
+ <StructMemberAlignment>1Byte</StructMemberAlignment>
+ <AdditionalOptions>/Qstd=c11 %(AdditionalOptions)</AdditionalOptions>
+ <WarningLevel>Level3</WarningLevel>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
diff --git a/mk/exec-env/windows/dpdk.sln b/mk/exec-env/windows/dpdk.sln
index 604b08d..b744419 100644
--- a/mk/exec-env/windows/dpdk.sln
+++ b/mk/exec-env/windows/dpdk.sln
@@ -1,7 +1,7 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
-VisualStudioVersion = 15.0.27004.2006
+VisualStudioVersion = 15.0.27130.2010
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_mempool", "librte_mempool\librte_mempool.vcxproj", "{EEDD0F26-9B2E-460E-9D8F-C3F3C0B999B7}"
ProjectSection(ProjectDependencies) = postProject
@@ -83,76 +83,286 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_bus_pci", "librte_bu
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_pci", "librte_pci\librte_pci.vcxproj", "{07671615-33E8-4B1D-8E1D-BE009D3448D3}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_timer", "librte_timer\librte_timer.vcxproj", "{B66DCE2E-0E2A-48A7-853B-DF1D90400935}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_cryptodev", "librte_cryptodev\librte_cryptodev.vcxproj", "{90990494-5D98-4230-B7C8-E486E534BFE3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_bitratestats", "librte_bitratestats\librte_bitratestats.vcxproj", "{D211C8A6-5EEB-412C-817D-231983B100E0}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_metrics", "librte_metrics\librte_metrics.vcxproj", "{4630B413-F62D-41FC-B149-117E5A3294DA}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_gro", "librte_gro\librte_gro.vcxproj", "{BA3884E9-D3B3-4486-9C1E-20962538F72B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_gso", "librte_gso\librte_gso.vcxproj", "{0A52C239-B43F-4A88-94EA-FD7A63C7DB28}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_reorder", "librte_reorder\librte_reorder.vcxproj", "{9696E989-C867-436D-B619-12BA1BBEA4E0}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_sched", "librte_sched\librte_sched.vcxproj", "{6B238285-8FEC-425E-9F30-B3E2D9A0EA4B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_net", "librte_net\librte_net.vcxproj", "{6CD555F0-108B-4B17-9E6B-668270B383FB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_acl", "librte_acl\librte_acl.vcxproj", "{6353E0FE-F213-4639-B74F-2C1E8F369DC3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_table", "librte_table\librte_table.vcxproj", "{6D9EA859-41AD-4465-B386-5D84A6DF53B6}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_port", "librte_port\librte_port.vcxproj", "{D70E097F-07B6-4841-94AF-570BE1671F0C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_pipeline", "librte_pipeline\librte_pipeline.vcxproj", "{DE3F48D3-43F0-4412-8D38-E13677FD0FFC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_cfgfile", "librte_cfgfile\librte_cfgfile.vcxproj", "{F19E8ED3-581B-41E5-9EC2-48F58F4BC9B8}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_efd", "librte_efd\librte_efd.vcxproj", "{0505DE80-97CC-4B69-BCA1-8AAD5365C070}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_member", "librte_member\librte_member.vcxproj", "{92F2835C-2094-473E-9FEF-E03D51993211}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_eventdev", "librte_eventdev\librte_eventdev.vcxproj", "{0DFCAEB8-38D4-4AB4-895D-F6891D0B123C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_security", "librte_security\librte_security.vcxproj", "{8BFAD01C-E51C-45AF-9C8A-8D13763185EC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_ipfrag", "librte_ipfrag\librte_ipfrag.vcxproj", "{C804DFF0-7A44-44FA-8E7E-87F80A30B833}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_latencystats", "librte_latencystats\librte_latencystats.vcxproj", "{D312B4B8-B775-4209-BDB8-21B7D3D70269}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_flowclassify", "librte_flowclassify\librte_flowclassify.vcxproj", "{D050187B-D1B5-43D5-9EEA-14A2B57C3E81}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "librte_meter", "librte_meter\librte_meter.vcxproj", "{81F6BD5A-DD07-4AC0-9999-9B2031CD400A}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
Release|x64 = Release|x64
+ Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{EEDD0F26-9B2E-460E-9D8F-C3F3C0B999B7}.Debug|x64.ActiveCfg = Debug|x64
{EEDD0F26-9B2E-460E-9D8F-C3F3C0B999B7}.Debug|x64.Build.0 = Debug|x64
+ {EEDD0F26-9B2E-460E-9D8F-C3F3C0B999B7}.Debug|x86.ActiveCfg = Debug|x64
{EEDD0F26-9B2E-460E-9D8F-C3F3C0B999B7}.Release|x64.ActiveCfg = Release|x64
{EEDD0F26-9B2E-460E-9D8F-C3F3C0B999B7}.Release|x64.Build.0 = Release|x64
+ {EEDD0F26-9B2E-460E-9D8F-C3F3C0B999B7}.Release|x86.ActiveCfg = Release|x64
{0746F0FF-F42C-4ABA-BDE1-F3FD65A81DB8}.Debug|x64.ActiveCfg = Debug|x64
{0746F0FF-F42C-4ABA-BDE1-F3FD65A81DB8}.Debug|x64.Build.0 = Debug|x64
+ {0746F0FF-F42C-4ABA-BDE1-F3FD65A81DB8}.Debug|x86.ActiveCfg = Debug|x64
{0746F0FF-F42C-4ABA-BDE1-F3FD65A81DB8}.Release|x64.ActiveCfg = Release|x64
{0746F0FF-F42C-4ABA-BDE1-F3FD65A81DB8}.Release|x64.Build.0 = Release|x64
+ {0746F0FF-F42C-4ABA-BDE1-F3FD65A81DB8}.Release|x86.ActiveCfg = Release|x64
{32FDBB89-3F26-45BB-972A-BED470AD166B}.Debug|x64.ActiveCfg = Debug|x64
{32FDBB89-3F26-45BB-972A-BED470AD166B}.Debug|x64.Build.0 = Debug|x64
+ {32FDBB89-3F26-45BB-972A-BED470AD166B}.Debug|x86.ActiveCfg = Debug|x64
{32FDBB89-3F26-45BB-972A-BED470AD166B}.Release|x64.ActiveCfg = Release|x64
{32FDBB89-3F26-45BB-972A-BED470AD166B}.Release|x64.Build.0 = Release|x64
+ {32FDBB89-3F26-45BB-972A-BED470AD166B}.Release|x86.ActiveCfg = Release|x64
{B2906C80-2E62-4ADE-9295-E4F98BE946B4}.Debug|x64.ActiveCfg = Debug|x64
{B2906C80-2E62-4ADE-9295-E4F98BE946B4}.Debug|x64.Build.0 = Debug|x64
+ {B2906C80-2E62-4ADE-9295-E4F98BE946B4}.Debug|x86.ActiveCfg = Debug|x64
{B2906C80-2E62-4ADE-9295-E4F98BE946B4}.Release|x64.ActiveCfg = Release|x64
{B2906C80-2E62-4ADE-9295-E4F98BE946B4}.Release|x64.Build.0 = Release|x64
+ {B2906C80-2E62-4ADE-9295-E4F98BE946B4}.Release|x86.ActiveCfg = Release|x64
{7E0025BB-72B3-4906-B0DE-4B45A1E22B0A}.Debug|x64.ActiveCfg = Debug|x64
{7E0025BB-72B3-4906-B0DE-4B45A1E22B0A}.Debug|x64.Build.0 = Debug|x64
+ {7E0025BB-72B3-4906-B0DE-4B45A1E22B0A}.Debug|x86.ActiveCfg = Debug|x64
{7E0025BB-72B3-4906-B0DE-4B45A1E22B0A}.Release|x64.ActiveCfg = Release|x64
{7E0025BB-72B3-4906-B0DE-4B45A1E22B0A}.Release|x64.Build.0 = Release|x64
+ {7E0025BB-72B3-4906-B0DE-4B45A1E22B0A}.Release|x86.ActiveCfg = Release|x64
{7380DC42-DE9A-4BA3-B153-FC0156DA20B7}.Debug|x64.ActiveCfg = Debug|x64
{7380DC42-DE9A-4BA3-B153-FC0156DA20B7}.Debug|x64.Build.0 = Debug|x64
+ {7380DC42-DE9A-4BA3-B153-FC0156DA20B7}.Debug|x86.ActiveCfg = Debug|x64
{7380DC42-DE9A-4BA3-B153-FC0156DA20B7}.Release|x64.ActiveCfg = Release|x64
{7380DC42-DE9A-4BA3-B153-FC0156DA20B7}.Release|x64.Build.0 = Release|x64
+ {7380DC42-DE9A-4BA3-B153-FC0156DA20B7}.Release|x86.ActiveCfg = Release|x64
{C6145F57-70FE-485D-BF16-F0C88632B6E2}.Debug|x64.ActiveCfg = Debug|x64
{C6145F57-70FE-485D-BF16-F0C88632B6E2}.Debug|x64.Build.0 = Debug|x64
+ {C6145F57-70FE-485D-BF16-F0C88632B6E2}.Debug|x86.ActiveCfg = Debug|x64
{C6145F57-70FE-485D-BF16-F0C88632B6E2}.Release|x64.ActiveCfg = Release|x64
{C6145F57-70FE-485D-BF16-F0C88632B6E2}.Release|x64.Build.0 = Release|x64
+ {C6145F57-70FE-485D-BF16-F0C88632B6E2}.Release|x86.ActiveCfg = Release|x64
{E92C8771-D35F-4636-BE19-C6C197B1573C}.Debug|x64.ActiveCfg = Debug|x64
{E92C8771-D35F-4636-BE19-C6C197B1573C}.Debug|x64.Build.0 = Debug|x64
+ {E92C8771-D35F-4636-BE19-C6C197B1573C}.Debug|x86.ActiveCfg = Debug|x64
{E92C8771-D35F-4636-BE19-C6C197B1573C}.Release|x64.ActiveCfg = Release|x64
{E92C8771-D35F-4636-BE19-C6C197B1573C}.Release|x64.Build.0 = Release|x64
+ {E92C8771-D35F-4636-BE19-C6C197B1573C}.Release|x86.ActiveCfg = Release|x64
{88279B01-E662-494D-B805-83BAFDE4A246}.Debug|x64.ActiveCfg = Debug|x64
{88279B01-E662-494D-B805-83BAFDE4A246}.Debug|x64.Build.0 = Debug|x64
+ {88279B01-E662-494D-B805-83BAFDE4A246}.Debug|x86.ActiveCfg = Debug|x64
{88279B01-E662-494D-B805-83BAFDE4A246}.Release|x64.ActiveCfg = Release|x64
{88279B01-E662-494D-B805-83BAFDE4A246}.Release|x64.Build.0 = Release|x64
+ {88279B01-E662-494D-B805-83BAFDE4A246}.Release|x86.ActiveCfg = Release|x64
{1307B35A-728B-4250-88FE-5CBFC3B2F847}.Debug|x64.ActiveCfg = Debug|x64
{1307B35A-728B-4250-88FE-5CBFC3B2F847}.Debug|x64.Build.0 = Debug|x64
+ {1307B35A-728B-4250-88FE-5CBFC3B2F847}.Debug|x86.ActiveCfg = Debug|x64
{1307B35A-728B-4250-88FE-5CBFC3B2F847}.Release|x64.ActiveCfg = Release|x64
{1307B35A-728B-4250-88FE-5CBFC3B2F847}.Release|x64.Build.0 = Release|x64
+ {1307B35A-728B-4250-88FE-5CBFC3B2F847}.Release|x86.ActiveCfg = Release|x64
{B9BB1F7A-40A3-4EC7-A888-8CAFE2C11D29}.Debug|x64.ActiveCfg = Debug|x64
{B9BB1F7A-40A3-4EC7-A888-8CAFE2C11D29}.Debug|x64.Build.0 = Debug|x64
+ {B9BB1F7A-40A3-4EC7-A888-8CAFE2C11D29}.Debug|x86.ActiveCfg = Debug|x64
{B9BB1F7A-40A3-4EC7-A888-8CAFE2C11D29}.Release|x64.ActiveCfg = Release|x64
{B9BB1F7A-40A3-4EC7-A888-8CAFE2C11D29}.Release|x64.Build.0 = Release|x64
+ {B9BB1F7A-40A3-4EC7-A888-8CAFE2C11D29}.Release|x86.ActiveCfg = Release|x64
{BDCB60AC-C588-4EF8-9797-CF6D42C54A27}.Debug|x64.ActiveCfg = Debug|x64
{BDCB60AC-C588-4EF8-9797-CF6D42C54A27}.Debug|x64.Build.0 = Debug|x64
+ {BDCB60AC-C588-4EF8-9797-CF6D42C54A27}.Debug|x86.ActiveCfg = Debug|x64
{BDCB60AC-C588-4EF8-9797-CF6D42C54A27}.Release|x64.ActiveCfg = Release|x64
{BDCB60AC-C588-4EF8-9797-CF6D42C54A27}.Release|x64.Build.0 = Release|x64
+ {BDCB60AC-C588-4EF8-9797-CF6D42C54A27}.Release|x86.ActiveCfg = Release|x64
{F74A831C-CD22-4D19-BE6F-A318D0376EFA}.Debug|x64.ActiveCfg = Debug|x64
{F74A831C-CD22-4D19-BE6F-A318D0376EFA}.Debug|x64.Build.0 = Debug|x64
+ {F74A831C-CD22-4D19-BE6F-A318D0376EFA}.Debug|x86.ActiveCfg = Debug|x64
{F74A831C-CD22-4D19-BE6F-A318D0376EFA}.Release|x64.ActiveCfg = Release|x64
{F74A831C-CD22-4D19-BE6F-A318D0376EFA}.Release|x64.Build.0 = Release|x64
+ {F74A831C-CD22-4D19-BE6F-A318D0376EFA}.Release|x86.ActiveCfg = Release|x64
{60499A5F-031F-41E1-86DE-425A27AE9680}.Debug|x64.ActiveCfg = Debug|x64
{60499A5F-031F-41E1-86DE-425A27AE9680}.Debug|x64.Build.0 = Debug|x64
+ {60499A5F-031F-41E1-86DE-425A27AE9680}.Debug|x86.ActiveCfg = Debug|x64
{60499A5F-031F-41E1-86DE-425A27AE9680}.Release|x64.ActiveCfg = Release|x64
{60499A5F-031F-41E1-86DE-425A27AE9680}.Release|x64.Build.0 = Release|x64
+ {60499A5F-031F-41E1-86DE-425A27AE9680}.Release|x86.ActiveCfg = Release|x64
{16411548-CE6A-4D3F-9AA7-EE20A5D4B6FE}.Debug|x64.ActiveCfg = Debug|x64
{16411548-CE6A-4D3F-9AA7-EE20A5D4B6FE}.Debug|x64.Build.0 = Debug|x64
+ {16411548-CE6A-4D3F-9AA7-EE20A5D4B6FE}.Debug|x86.ActiveCfg = Debug|x64
{16411548-CE6A-4D3F-9AA7-EE20A5D4B6FE}.Release|x64.ActiveCfg = Release|x64
{16411548-CE6A-4D3F-9AA7-EE20A5D4B6FE}.Release|x64.Build.0 = Release|x64
+ {16411548-CE6A-4D3F-9AA7-EE20A5D4B6FE}.Release|x86.ActiveCfg = Release|x64
{07671615-33E8-4B1D-8E1D-BE009D3448D3}.Debug|x64.ActiveCfg = Debug|x64
{07671615-33E8-4B1D-8E1D-BE009D3448D3}.Debug|x64.Build.0 = Debug|x64
+ {07671615-33E8-4B1D-8E1D-BE009D3448D3}.Debug|x86.ActiveCfg = Debug|x64
{07671615-33E8-4B1D-8E1D-BE009D3448D3}.Release|x64.ActiveCfg = Release|x64
{07671615-33E8-4B1D-8E1D-BE009D3448D3}.Release|x64.Build.0 = Release|x64
+ {07671615-33E8-4B1D-8E1D-BE009D3448D3}.Release|x86.ActiveCfg = Release|x64
+ {B66DCE2E-0E2A-48A7-853B-DF1D90400935}.Debug|x64.ActiveCfg = Debug|x64
+ {B66DCE2E-0E2A-48A7-853B-DF1D90400935}.Debug|x64.Build.0 = Debug|x64
+ {B66DCE2E-0E2A-48A7-853B-DF1D90400935}.Debug|x86.ActiveCfg = Debug|x64
+ {B66DCE2E-0E2A-48A7-853B-DF1D90400935}.Release|x64.ActiveCfg = Release|x64
+ {B66DCE2E-0E2A-48A7-853B-DF1D90400935}.Release|x64.Build.0 = Release|x64
+ {B66DCE2E-0E2A-48A7-853B-DF1D90400935}.Release|x86.ActiveCfg = Release|x64
+ {90990494-5D98-4230-B7C8-E486E534BFE3}.Debug|x64.ActiveCfg = Debug|x64
+ {90990494-5D98-4230-B7C8-E486E534BFE3}.Debug|x64.Build.0 = Debug|x64
+ {90990494-5D98-4230-B7C8-E486E534BFE3}.Debug|x86.ActiveCfg = Debug|x64
+ {90990494-5D98-4230-B7C8-E486E534BFE3}.Release|x64.ActiveCfg = Release|x64
+ {90990494-5D98-4230-B7C8-E486E534BFE3}.Release|x64.Build.0 = Release|x64
+ {90990494-5D98-4230-B7C8-E486E534BFE3}.Release|x86.ActiveCfg = Release|x64
+ {D211C8A6-5EEB-412C-817D-231983B100E0}.Debug|x64.ActiveCfg = Debug|x64
+ {D211C8A6-5EEB-412C-817D-231983B100E0}.Debug|x64.Build.0 = Debug|x64
+ {D211C8A6-5EEB-412C-817D-231983B100E0}.Debug|x86.ActiveCfg = Debug|x64
+ {D211C8A6-5EEB-412C-817D-231983B100E0}.Release|x64.ActiveCfg = Release|x64
+ {D211C8A6-5EEB-412C-817D-231983B100E0}.Release|x64.Build.0 = Release|x64
+ {D211C8A6-5EEB-412C-817D-231983B100E0}.Release|x86.ActiveCfg = Release|x64
+ {4630B413-F62D-41FC-B149-117E5A3294DA}.Debug|x64.ActiveCfg = Debug|x64
+ {4630B413-F62D-41FC-B149-117E5A3294DA}.Debug|x64.Build.0 = Debug|x64
+ {4630B413-F62D-41FC-B149-117E5A3294DA}.Debug|x86.ActiveCfg = Debug|x64
+ {4630B413-F62D-41FC-B149-117E5A3294DA}.Release|x64.ActiveCfg = Release|x64
+ {4630B413-F62D-41FC-B149-117E5A3294DA}.Release|x64.Build.0 = Release|x64
+ {4630B413-F62D-41FC-B149-117E5A3294DA}.Release|x86.ActiveCfg = Release|x64
+ {BA3884E9-D3B3-4486-9C1E-20962538F72B}.Debug|x64.ActiveCfg = Debug|x64
+ {BA3884E9-D3B3-4486-9C1E-20962538F72B}.Debug|x64.Build.0 = Debug|x64
+ {BA3884E9-D3B3-4486-9C1E-20962538F72B}.Debug|x86.ActiveCfg = Debug|x64
+ {BA3884E9-D3B3-4486-9C1E-20962538F72B}.Release|x64.ActiveCfg = Release|x64
+ {BA3884E9-D3B3-4486-9C1E-20962538F72B}.Release|x64.Build.0 = Release|x64
+ {BA3884E9-D3B3-4486-9C1E-20962538F72B}.Release|x86.ActiveCfg = Release|x64
+ {0A52C239-B43F-4A88-94EA-FD7A63C7DB28}.Debug|x64.ActiveCfg = Debug|x64
+ {0A52C239-B43F-4A88-94EA-FD7A63C7DB28}.Debug|x64.Build.0 = Debug|x64
+ {0A52C239-B43F-4A88-94EA-FD7A63C7DB28}.Debug|x86.ActiveCfg = Debug|x64
+ {0A52C239-B43F-4A88-94EA-FD7A63C7DB28}.Release|x64.ActiveCfg = Release|x64
+ {0A52C239-B43F-4A88-94EA-FD7A63C7DB28}.Release|x64.Build.0 = Release|x64
+ {0A52C239-B43F-4A88-94EA-FD7A63C7DB28}.Release|x86.ActiveCfg = Release|x64
+ {9696E989-C867-436D-B619-12BA1BBEA4E0}.Debug|x64.ActiveCfg = Debug|x64
+ {9696E989-C867-436D-B619-12BA1BBEA4E0}.Debug|x64.Build.0 = Debug|x64
+ {9696E989-C867-436D-B619-12BA1BBEA4E0}.Debug|x86.ActiveCfg = Debug|x64
+ {9696E989-C867-436D-B619-12BA1BBEA4E0}.Release|x64.ActiveCfg = Release|x64
+ {9696E989-C867-436D-B619-12BA1BBEA4E0}.Release|x64.Build.0 = Release|x64
+ {9696E989-C867-436D-B619-12BA1BBEA4E0}.Release|x86.ActiveCfg = Release|x64
+ {6B238285-8FEC-425E-9F30-B3E2D9A0EA4B}.Debug|x64.ActiveCfg = Debug|x64
+ {6B238285-8FEC-425E-9F30-B3E2D9A0EA4B}.Debug|x64.Build.0 = Debug|x64
+ {6B238285-8FEC-425E-9F30-B3E2D9A0EA4B}.Debug|x86.ActiveCfg = Debug|x64
+ {6B238285-8FEC-425E-9F30-B3E2D9A0EA4B}.Release|x64.ActiveCfg = Release|x64
+ {6B238285-8FEC-425E-9F30-B3E2D9A0EA4B}.Release|x64.Build.0 = Release|x64
+ {6B238285-8FEC-425E-9F30-B3E2D9A0EA4B}.Release|x86.ActiveCfg = Release|x64
+ {6CD555F0-108B-4B17-9E6B-668270B383FB}.Debug|x64.ActiveCfg = Debug|x64
+ {6CD555F0-108B-4B17-9E6B-668270B383FB}.Debug|x64.Build.0 = Debug|x64
+ {6CD555F0-108B-4B17-9E6B-668270B383FB}.Debug|x86.ActiveCfg = Debug|x64
+ {6CD555F0-108B-4B17-9E6B-668270B383FB}.Release|x64.ActiveCfg = Release|x64
+ {6CD555F0-108B-4B17-9E6B-668270B383FB}.Release|x64.Build.0 = Release|x64
+ {6CD555F0-108B-4B17-9E6B-668270B383FB}.Release|x86.ActiveCfg = Release|x64
+ {6353E0FE-F213-4639-B74F-2C1E8F369DC3}.Debug|x64.ActiveCfg = Debug|x64
+ {6353E0FE-F213-4639-B74F-2C1E8F369DC3}.Debug|x64.Build.0 = Debug|x64
+ {6353E0FE-F213-4639-B74F-2C1E8F369DC3}.Debug|x86.ActiveCfg = Debug|x64
+ {6353E0FE-F213-4639-B74F-2C1E8F369DC3}.Release|x64.ActiveCfg = Release|x64
+ {6353E0FE-F213-4639-B74F-2C1E8F369DC3}.Release|x64.Build.0 = Release|x64
+ {6353E0FE-F213-4639-B74F-2C1E8F369DC3}.Release|x86.ActiveCfg = Release|x64
+ {6D9EA859-41AD-4465-B386-5D84A6DF53B6}.Debug|x64.ActiveCfg = Debug|x64
+ {6D9EA859-41AD-4465-B386-5D84A6DF53B6}.Debug|x64.Build.0 = Debug|x64
+ {6D9EA859-41AD-4465-B386-5D84A6DF53B6}.Debug|x86.ActiveCfg = Debug|x64
+ {6D9EA859-41AD-4465-B386-5D84A6DF53B6}.Release|x64.ActiveCfg = Release|x64
+ {6D9EA859-41AD-4465-B386-5D84A6DF53B6}.Release|x64.Build.0 = Release|x64
+ {6D9EA859-41AD-4465-B386-5D84A6DF53B6}.Release|x86.ActiveCfg = Release|x64
+ {D70E097F-07B6-4841-94AF-570BE1671F0C}.Debug|x64.ActiveCfg = Debug|x64
+ {D70E097F-07B6-4841-94AF-570BE1671F0C}.Debug|x64.Build.0 = Debug|x64
+ {D70E097F-07B6-4841-94AF-570BE1671F0C}.Debug|x86.ActiveCfg = Debug|x64
+ {D70E097F-07B6-4841-94AF-570BE1671F0C}.Release|x64.ActiveCfg = Release|x64
+ {D70E097F-07B6-4841-94AF-570BE1671F0C}.Release|x64.Build.0 = Release|x64
+ {D70E097F-07B6-4841-94AF-570BE1671F0C}.Release|x86.ActiveCfg = Release|x64
+ {DE3F48D3-43F0-4412-8D38-E13677FD0FFC}.Debug|x64.ActiveCfg = Debug|x64
+ {DE3F48D3-43F0-4412-8D38-E13677FD0FFC}.Debug|x64.Build.0 = Debug|x64
+ {DE3F48D3-43F0-4412-8D38-E13677FD0FFC}.Debug|x86.ActiveCfg = Debug|x64
+ {DE3F48D3-43F0-4412-8D38-E13677FD0FFC}.Release|x64.ActiveCfg = Release|x64
+ {DE3F48D3-43F0-4412-8D38-E13677FD0FFC}.Release|x64.Build.0 = Release|x64
+ {DE3F48D3-43F0-4412-8D38-E13677FD0FFC}.Release|x86.ActiveCfg = Release|x64
+ {F19E8ED3-581B-41E5-9EC2-48F58F4BC9B8}.Debug|x64.ActiveCfg = Debug|x64
+ {F19E8ED3-581B-41E5-9EC2-48F58F4BC9B8}.Debug|x64.Build.0 = Debug|x64
+ {F19E8ED3-581B-41E5-9EC2-48F58F4BC9B8}.Debug|x86.ActiveCfg = Debug|x64
+ {F19E8ED3-581B-41E5-9EC2-48F58F4BC9B8}.Release|x64.ActiveCfg = Release|x64
+ {F19E8ED3-581B-41E5-9EC2-48F58F4BC9B8}.Release|x64.Build.0 = Release|x64
+ {F19E8ED3-581B-41E5-9EC2-48F58F4BC9B8}.Release|x86.ActiveCfg = Release|x64
+ {0505DE80-97CC-4B69-BCA1-8AAD5365C070}.Debug|x64.ActiveCfg = Debug|x64
+ {0505DE80-97CC-4B69-BCA1-8AAD5365C070}.Debug|x64.Build.0 = Debug|x64
+ {0505DE80-97CC-4B69-BCA1-8AAD5365C070}.Debug|x86.ActiveCfg = Debug|x64
+ {0505DE80-97CC-4B69-BCA1-8AAD5365C070}.Release|x64.ActiveCfg = Release|x64
+ {0505DE80-97CC-4B69-BCA1-8AAD5365C070}.Release|x64.Build.0 = Release|x64
+ {0505DE80-97CC-4B69-BCA1-8AAD5365C070}.Release|x86.ActiveCfg = Release|x64
+ {92F2835C-2094-473E-9FEF-E03D51993211}.Debug|x64.ActiveCfg = Debug|x64
+ {92F2835C-2094-473E-9FEF-E03D51993211}.Debug|x64.Build.0 = Debug|x64
+ {92F2835C-2094-473E-9FEF-E03D51993211}.Debug|x86.ActiveCfg = Debug|x64
+ {92F2835C-2094-473E-9FEF-E03D51993211}.Release|x64.ActiveCfg = Release|x64
+ {92F2835C-2094-473E-9FEF-E03D51993211}.Release|x64.Build.0 = Release|x64
+ {92F2835C-2094-473E-9FEF-E03D51993211}.Release|x86.ActiveCfg = Release|x64
+ {0DFCAEB8-38D4-4AB4-895D-F6891D0B123C}.Debug|x64.ActiveCfg = Debug|x64
+ {0DFCAEB8-38D4-4AB4-895D-F6891D0B123C}.Debug|x64.Build.0 = Debug|x64
+ {0DFCAEB8-38D4-4AB4-895D-F6891D0B123C}.Debug|x86.ActiveCfg = Debug|x64
+ {0DFCAEB8-38D4-4AB4-895D-F6891D0B123C}.Release|x64.ActiveCfg = Release|x64
+ {0DFCAEB8-38D4-4AB4-895D-F6891D0B123C}.Release|x64.Build.0 = Release|x64
+ {0DFCAEB8-38D4-4AB4-895D-F6891D0B123C}.Release|x86.ActiveCfg = Release|x64
+ {8BFAD01C-E51C-45AF-9C8A-8D13763185EC}.Debug|x64.ActiveCfg = Debug|x64
+ {8BFAD01C-E51C-45AF-9C8A-8D13763185EC}.Debug|x64.Build.0 = Debug|x64
+ {8BFAD01C-E51C-45AF-9C8A-8D13763185EC}.Debug|x86.ActiveCfg = Debug|x64
+ {8BFAD01C-E51C-45AF-9C8A-8D13763185EC}.Release|x64.ActiveCfg = Release|x64
+ {8BFAD01C-E51C-45AF-9C8A-8D13763185EC}.Release|x64.Build.0 = Release|x64
+ {8BFAD01C-E51C-45AF-9C8A-8D13763185EC}.Release|x86.ActiveCfg = Release|x64
+ {C804DFF0-7A44-44FA-8E7E-87F80A30B833}.Debug|x64.ActiveCfg = Debug|x64
+ {C804DFF0-7A44-44FA-8E7E-87F80A30B833}.Debug|x64.Build.0 = Debug|x64
+ {C804DFF0-7A44-44FA-8E7E-87F80A30B833}.Debug|x86.ActiveCfg = Debug|x64
+ {C804DFF0-7A44-44FA-8E7E-87F80A30B833}.Release|x64.ActiveCfg = Release|x64
+ {C804DFF0-7A44-44FA-8E7E-87F80A30B833}.Release|x64.Build.0 = Release|x64
+ {C804DFF0-7A44-44FA-8E7E-87F80A30B833}.Release|x86.ActiveCfg = Release|x64
+ {D312B4B8-B775-4209-BDB8-21B7D3D70269}.Debug|x64.ActiveCfg = Debug|x64
+ {D312B4B8-B775-4209-BDB8-21B7D3D70269}.Debug|x64.Build.0 = Debug|x64
+ {D312B4B8-B775-4209-BDB8-21B7D3D70269}.Debug|x86.ActiveCfg = Debug|x64
+ {D312B4B8-B775-4209-BDB8-21B7D3D70269}.Release|x64.ActiveCfg = Release|x64
+ {D312B4B8-B775-4209-BDB8-21B7D3D70269}.Release|x64.Build.0 = Release|x64
+ {D312B4B8-B775-4209-BDB8-21B7D3D70269}.Release|x86.ActiveCfg = Release|x64
+ {D050187B-D1B5-43D5-9EEA-14A2B57C3E81}.Debug|x64.ActiveCfg = Debug|x64
+ {D050187B-D1B5-43D5-9EEA-14A2B57C3E81}.Debug|x64.Build.0 = Debug|x64
+ {D050187B-D1B5-43D5-9EEA-14A2B57C3E81}.Debug|x86.ActiveCfg = Debug|x64
+ {D050187B-D1B5-43D5-9EEA-14A2B57C3E81}.Release|x64.ActiveCfg = Release|x64
+ {D050187B-D1B5-43D5-9EEA-14A2B57C3E81}.Release|x64.Build.0 = Release|x64
+ {D050187B-D1B5-43D5-9EEA-14A2B57C3E81}.Release|x86.ActiveCfg = Release|x64
+ {81F6BD5A-DD07-4AC0-9999-9B2031CD400A}.Debug|x64.ActiveCfg = Debug|x64
+ {81F6BD5A-DD07-4AC0-9999-9B2031CD400A}.Debug|x64.Build.0 = Debug|x64
+ {81F6BD5A-DD07-4AC0-9999-9B2031CD400A}.Debug|x86.ActiveCfg = Debug|x64
+ {81F6BD5A-DD07-4AC0-9999-9B2031CD400A}.Release|x64.ActiveCfg = Release|x64
+ {81F6BD5A-DD07-4AC0-9999-9B2031CD400A}.Release|x64.Build.0 = Release|x64
+ {81F6BD5A-DD07-4AC0-9999-9B2031CD400A}.Release|x86.ActiveCfg = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/mk/exec-env/windows/librte_acl/librte_acl.vcxproj b/mk/exec-env/windows/librte_acl/librte_acl.vcxproj
new file mode 100644
index 0000000..495323d
--- /dev/null
+++ b/mk/exec-env/windows/librte_acl/librte_acl.vcxproj
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_acl\acl_bld.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_acl\acl_gen.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_acl\acl_run_avx2.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_acl\acl_run_scalar.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_acl\acl_run_sse.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_acl\rte_acl.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_acl\tb_mem.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_acl\acl_run.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_acl\acl_run_avx2.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_acl\acl_run_sse.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_acl\acl_vect.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_acl\rte_acl.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_acl\rte_acl_osdep.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_acl\tb_mem.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{6353E0FE-F213-4639-B74F-2C1E8F369DC3}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librteacl</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_acl/librte_acl.vcxproj.filters b/mk/exec-env/windows/librte_acl/librte_acl.vcxproj.filters
new file mode 100644
index 0000000..2dbcf84
--- /dev/null
+++ b/mk/exec-env/windows/librte_acl/librte_acl.vcxproj.filters
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_acl\acl_bld.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_acl\acl_gen.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_acl\acl_run_avx2.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_acl\acl_run_scalar.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_acl\acl_run_sse.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_acl\rte_acl.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_acl\tb_mem.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_acl\acl_run.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_acl\acl_run_avx2.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_acl\acl_run_sse.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_acl\acl_vect.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_acl\rte_acl.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_acl\rte_acl_osdep.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_acl\tb_mem.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_acl/librte_acl.vcxproj.user b/mk/exec-env/windows/librte_acl/librte_acl.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_acl/librte_acl.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_bitratestats/librte_bitratestats.vcxproj b/mk/exec-env/windows/librte_bitratestats/librte_bitratestats.vcxproj
new file mode 100644
index 0000000..e810700
--- /dev/null
+++ b/mk/exec-env/windows/librte_bitratestats/librte_bitratestats.vcxproj
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_bitratestats\rte_bitrate.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_bitratestats\rte_bitrate.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{D211C8A6-5EEB-412C-817D-231983B100E0}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtebitratestats</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_bitratestats/librte_bitratestats.vcxproj.filters b/mk/exec-env/windows/librte_bitratestats/librte_bitratestats.vcxproj.filters
new file mode 100644
index 0000000..481027c
--- /dev/null
+++ b/mk/exec-env/windows/librte_bitratestats/librte_bitratestats.vcxproj.filters
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_bitratestats\rte_bitrate.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_bitratestats\rte_bitrate.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_bitratestats/librte_bitratestats.vcxproj.user b/mk/exec-env/windows/librte_bitratestats/librte_bitratestats.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_bitratestats/librte_bitratestats.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_bus_pci/librte_bus_pci.vcxproj b/mk/exec-env/windows/librte_bus_pci/librte_bus_pci.vcxproj
index d80368a..cdc1575 100644
--- a/mk/exec-env/windows/librte_bus_pci/librte_bus_pci.vcxproj
+++ b/mk/exec-env/windows/librte_bus_pci/librte_bus_pci.vcxproj
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|x64">
@@ -77,7 +77,7 @@
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
- <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;_LIB;INITGUID;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StructMemberAlignment>1Byte</StructMemberAlignment>
</ClCompile>
<Link>
@@ -94,7 +94,7 @@
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<SDLCheck>true</SDLCheck>
- <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_LIB;INITGUID;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StructMemberAlignment>1Byte</StructMemberAlignment>
</ClCompile>
<Link>
diff --git a/mk/exec-env/windows/librte_cfgfile/librte_cfgfile.vcxproj b/mk/exec-env/windows/librte_cfgfile/librte_cfgfile.vcxproj
new file mode 100644
index 0000000..60e1ef6
--- /dev/null
+++ b/mk/exec-env/windows/librte_cfgfile/librte_cfgfile.vcxproj
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_cfgfile\rte_cfgfile.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_cfgfile\rte_cfgfile.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{F19E8ED3-581B-41E5-9EC2-48F58F4BC9B8}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtecfgfile</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_cfgfile/librte_cfgfile.vcxproj.filters b/mk/exec-env/windows/librte_cfgfile/librte_cfgfile.vcxproj.filters
new file mode 100644
index 0000000..0b72f07
--- /dev/null
+++ b/mk/exec-env/windows/librte_cfgfile/librte_cfgfile.vcxproj.filters
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_cfgfile\rte_cfgfile.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_cfgfile\rte_cfgfile.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_cfgfile/librte_cfgfile.vcxproj.user b/mk/exec-env/windows/librte_cfgfile/librte_cfgfile.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_cfgfile/librte_cfgfile.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_cryptodev/librte_cryptodev.vcxproj b/mk/exec-env/windows/librte_cryptodev/librte_cryptodev.vcxproj
new file mode 100644
index 0000000..7a26db4
--- /dev/null
+++ b/mk/exec-env/windows/librte_cryptodev/librte_cryptodev.vcxproj
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_cryptodev\rte_cryptodev.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_cryptodev\rte_cryptodev_pmd.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_cryptodev\rte_crypto.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_cryptodev\rte_cryptodev.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_cryptodev\rte_cryptodev_pmd.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_cryptodev\rte_crypto_sym.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{90990494-5D98-4230-B7C8-E486E534BFE3}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtecryptodev</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_cryptodev/librte_cryptodev.vcxproj.filters b/mk/exec-env/windows/librte_cryptodev/librte_cryptodev.vcxproj.filters
new file mode 100644
index 0000000..96dfdfe
--- /dev/null
+++ b/mk/exec-env/windows/librte_cryptodev/librte_cryptodev.vcxproj.filters
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_cryptodev\rte_cryptodev.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_cryptodev\rte_cryptodev_pmd.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_cryptodev\rte_cryptodev_pmd.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_cryptodev\rte_crypto.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_cryptodev\rte_crypto_sym.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_cryptodev\rte_cryptodev.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_cryptodev/librte_cryptodev.vcxproj.user b/mk/exec-env/windows/librte_cryptodev/librte_cryptodev.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_cryptodev/librte_cryptodev.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_eal/librte_eal.vcxproj b/mk/exec-env/windows/librte_eal/librte_eal.vcxproj
index 612b5a2..bb09fc0 100644
--- a/mk/exec-env/windows/librte_eal/librte_eal.vcxproj
+++ b/mk/exec-env/windows/librte_eal/librte_eal.vcxproj
@@ -92,6 +92,7 @@
<ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_devargs.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_errno.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_hexdump.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_hypervisor.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_launch.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_lcore.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_log.c" />
@@ -102,10 +103,11 @@
<ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_tailqs.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_thread.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_timer.c" />
- <ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_vdev.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\common\malloc_elem.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\common\malloc_heap.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_eal\common\rte_keepalive.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\common\rte_malloc.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_eal\common\rte_reciprocal.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\eal.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\eal_alarm.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\eal_debug.c" />
@@ -116,10 +118,13 @@
<ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\eal_memory.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\eal_thread.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\eal_timer.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\linux-emu\fork.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\linux-emu\getopt.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\linux-emu\lrand48.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\linux-emu\mman.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\linux-emu\setenv.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\linux-emu\srand48.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\linux-emu\termios.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\linux-emu\unistd.c" />
<ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\linux-emu\_rand48.c" />
</ItemGroup>
diff --git a/mk/exec-env/windows/librte_eal/librte_eal.vcxproj.filters b/mk/exec-env/windows/librte_eal/librte_eal.vcxproj.filters
index 8538243..7997216 100644
--- a/mk/exec-env/windows/librte_eal/librte_eal.vcxproj.filters
+++ b/mk/exec-env/windows/librte_eal/librte_eal.vcxproj.filters
@@ -126,7 +126,22 @@
<ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_bus.c">
<Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_vdev.c">
+ <ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\linux-emu\fork.c">
+ <Filter>Source Files\windows override</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\linux-emu\setenv.c">
+ <Filter>Source Files\windows override</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_eal\windows\eal\linux-emu\termios.c">
+ <Filter>Source Files\windows override</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_eal\common\eal_common_hypervisor.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_eal\common\rte_keepalive.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_eal\common\rte_reciprocal.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
diff --git a/mk/exec-env/windows/librte_efd/librte_efd.vcxproj b/mk/exec-env/windows/librte_efd/librte_efd.vcxproj
new file mode 100644
index 0000000..da24e34
--- /dev/null
+++ b/mk/exec-env/windows/librte_efd/librte_efd.vcxproj
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_efd\rte_efd.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_efd\rte_efd.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_efd\rte_efd_x86.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{0505DE80-97CC-4B69-BCA1-8AAD5365C070}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librteefd</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_efd/librte_efd.vcxproj.filters b/mk/exec-env/windows/librte_efd/librte_efd.vcxproj.filters
new file mode 100644
index 0000000..14f2732
--- /dev/null
+++ b/mk/exec-env/windows/librte_efd/librte_efd.vcxproj.filters
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_efd\rte_efd.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_efd\rte_efd.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_efd\rte_efd_x86.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_efd/librte_efd.vcxproj.user b/mk/exec-env/windows/librte_efd/librte_efd.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_efd/librte_efd.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_ether/librte_ether.vcxproj b/mk/exec-env/windows/librte_ether/librte_ether.vcxproj
index 2af2fc8..285d63c 100644
--- a/mk/exec-env/windows/librte_ether/librte_ether.vcxproj
+++ b/mk/exec-env/windows/librte_ether/librte_ether.vcxproj
@@ -17,6 +17,7 @@
<ClCompile Include="..\..\..\..\lib\librte_ether\ethdev_profile.c" />
<ClCompile Include="..\..\..\..\lib\librte_ether\rte_ethdev.c" />
<ClCompile Include="..\..\..\..\lib\librte_ether\rte_flow.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_ether\rte_mtr.c" />
<ClCompile Include="..\..\..\..\lib\librte_ether\rte_tm.c" />
</ItemGroup>
<ItemGroup>
@@ -49,13 +50,19 @@
<ClInclude Include="..\..\..\..\lib\librte_eal\windows\rte_override\rte_per_lcore.h" />
<ClInclude Include="..\..\..\..\lib\librte_eal\windows\rte_override\rte_spinlock.h" />
<ClInclude Include="..\..\..\..\lib\librte_ether\ethdev_profile.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_ether\rte_dev_info.h" />
<ClInclude Include="..\..\..\..\lib\librte_ether\rte_ethdev.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_ether\rte_ethdev_core.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_ether\rte_ethdev_driver.h" />
<ClInclude Include="..\..\..\..\lib\librte_ether\rte_ethdev_pci.h" />
<ClInclude Include="..\..\..\..\lib\librte_ether\rte_ether.h" />
<ClInclude Include="..\..\..\..\lib\librte_ether\rte_eth_ctrl.h" />
<ClInclude Include="..\..\..\..\lib\librte_ether\rte_flow.h" />
<ClInclude Include="..\..\..\..\lib\librte_ether\rte_flow_driver.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_ether\rte_mtr.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_ether\rte_mtr_driver.h" />
<ClInclude Include="..\..\..\..\lib\librte_ether\rte_tm.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_ether\rte_tm_driver.h" />
<ClInclude Include="..\..\..\..\lib\librte_mbuf\rte_mbuf.h" />
<ClInclude Include="..\..\..\..\lib\librte_mempool\rte_mempool.h" />
<ClInclude Include="..\..\..\..\lib\librte_ring\rte_ring.h" />
diff --git a/mk/exec-env/windows/librte_ether/librte_ether.vcxproj.filters b/mk/exec-env/windows/librte_ether/librte_ether.vcxproj.filters
index ac3c0ea..19c70ea 100644
--- a/mk/exec-env/windows/librte_ether/librte_ether.vcxproj.filters
+++ b/mk/exec-env/windows/librte_ether/librte_ether.vcxproj.filters
@@ -42,6 +42,9 @@
<ClCompile Include="..\..\..\..\lib\librte_ether\ethdev_profile.c">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_ether\rte_mtr.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\lib\librte_eal\common\include\arch\x86\rte_byteorder.h">
@@ -161,5 +164,23 @@
<ClInclude Include="..\..\..\..\lib\librte_ether\rte_eth_ctrl.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_ether\rte_mtr.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_ether\rte_mtr_driver.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_ether\rte_tm_driver.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_ether\rte_dev_info.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_ether\rte_ethdev_core.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_ether\rte_ethdev_driver.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_eventdev/librte_eventdev.vcxproj b/mk/exec-env/windows/librte_eventdev/librte_eventdev.vcxproj
new file mode 100644
index 0000000..3cc7b40
--- /dev/null
+++ b/mk/exec-env/windows/librte_eventdev/librte_eventdev.vcxproj
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_eventdev\rte_eventdev.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_eventdev\rte_event_eth_rx_adapter.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_eventdev\rte_event_ring.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_eventdev\rte_eventdev.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_eventdev\rte_eventdev_pmd.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_eventdev\rte_eventdev_pmd_pci.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_eventdev\rte_event_eth_rx_adapter.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_eventdev\rte_event_ring.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{0DFCAEB8-38D4-4AB4-895D-F6891D0B123C}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librteeventdev</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_eventdev/librte_eventdev.vcxproj.filters b/mk/exec-env/windows/librte_eventdev/librte_eventdev.vcxproj.filters
new file mode 100644
index 0000000..f662b75
--- /dev/null
+++ b/mk/exec-env/windows/librte_eventdev/librte_eventdev.vcxproj.filters
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_eventdev\rte_event_eth_rx_adapter.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_eventdev\rte_event_ring.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_eventdev\rte_eventdev.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_eventdev\rte_event_eth_rx_adapter.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_eventdev\rte_event_ring.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_eventdev\rte_eventdev.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_eventdev\rte_eventdev_pmd.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_eventdev\rte_eventdev_pmd_pci.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_eventdev/librte_eventdev.vcxproj.user b/mk/exec-env/windows/librte_eventdev/librte_eventdev.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_eventdev/librte_eventdev.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_flowclassify/librte_flowclassify.vcxproj b/mk/exec-env/windows/librte_flowclassify/librte_flowclassify.vcxproj
new file mode 100644
index 0000000..e6f3777
--- /dev/null
+++ b/mk/exec-env/windows/librte_flowclassify/librte_flowclassify.vcxproj
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_flow_classify\rte_flow_classify.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_flow_classify\rte_flow_classify_parse.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_flow_classify\rte_flow_classify.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_flow_classify\rte_flow_classify_parse.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{D050187B-D1B5-43D5-9EEA-14A2B57C3E81}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librteflowclassify</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_flowclassify/librte_flowclassify.vcxproj.filters b/mk/exec-env/windows/librte_flowclassify/librte_flowclassify.vcxproj.filters
new file mode 100644
index 0000000..697b508
--- /dev/null
+++ b/mk/exec-env/windows/librte_flowclassify/librte_flowclassify.vcxproj.filters
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_flow_classify\rte_flow_classify.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_flow_classify\rte_flow_classify_parse.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_flow_classify\rte_flow_classify.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_flow_classify\rte_flow_classify_parse.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_flowclassify/librte_flowclassify.vcxproj.user b/mk/exec-env/windows/librte_flowclassify/librte_flowclassify.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_flowclassify/librte_flowclassify.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_gro/librte_gro.vcxproj b/mk/exec-env/windows/librte_gro/librte_gro.vcxproj
new file mode 100644
index 0000000..acefc9f
--- /dev/null
+++ b/mk/exec-env/windows/librte_gro/librte_gro.vcxproj
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_gro\gro_tcp4.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_gro\gro_vxlan_tcp4.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_gro\rte_gro.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_gro\gro_tcp4.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_gro\gro_vxlan_tcp4.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_gro\rte_gro.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{BA3884E9-D3B3-4486-9C1E-20962538F72B}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtegro</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_gro/librte_gro.vcxproj.filters b/mk/exec-env/windows/librte_gro/librte_gro.vcxproj.filters
new file mode 100644
index 0000000..89d0803
--- /dev/null
+++ b/mk/exec-env/windows/librte_gro/librte_gro.vcxproj.filters
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_gro\gro_tcp4.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_gro\rte_gro.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_gro\gro_vxlan_tcp4.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_gro\gro_vxlan_tcp4.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_gro\rte_gro.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_gro\gro_tcp4.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_gro/librte_gro.vcxproj.user b/mk/exec-env/windows/librte_gro/librte_gro.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_gro/librte_gro.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_gso/librte_gso.vcxproj b/mk/exec-env/windows/librte_gso/librte_gso.vcxproj
new file mode 100644
index 0000000..d7c9014
--- /dev/null
+++ b/mk/exec-env/windows/librte_gso/librte_gso.vcxproj
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_gso\gso_common.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_gso\gso_tcp4.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_gso\gso_tunnel_tcp4.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_gso\rte_gso.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_gso\gso_common.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_gso\gso_tcp4.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_gso\gso_tunnel_tcp4.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_gso\rte_gso.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{0A52C239-B43F-4A88-94EA-FD7A63C7DB28}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtegso</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ <PrecompiledHeaderFile />
+ <PrecompiledHeaderOutputFile />
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ <PrecompiledHeaderFile />
+ <PrecompiledHeaderOutputFile />
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_gso/librte_gso.vcxproj.filters b/mk/exec-env/windows/librte_gso/librte_gso.vcxproj.filters
new file mode 100644
index 0000000..7aa6d65
--- /dev/null
+++ b/mk/exec-env/windows/librte_gso/librte_gso.vcxproj.filters
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_gso\gso_common.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_gso\gso_tcp4.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_gso\gso_tunnel_tcp4.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_gso\rte_gso.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_gso\gso_tunnel_tcp4.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_gso\rte_gso.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_gso\gso_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_gso\gso_tcp4.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_gso/librte_gso.vcxproj.user b/mk/exec-env/windows/librte_gso/librte_gso.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_gso/librte_gso.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_hash/librte_hash.vcxproj b/mk/exec-env/windows/librte_hash/librte_hash.vcxproj
index 7de75f4..90cc9b4 100644
--- a/mk/exec-env/windows/librte_hash/librte_hash.vcxproj
+++ b/mk/exec-env/windows/librte_hash/librte_hash.vcxproj
@@ -21,10 +21,13 @@
<ClInclude Include="..\..\..\..\lib\librte_eal\windows\rte_override\rte_byteorder.h" />
<ClInclude Include="..\..\..\..\lib\librte_eal\windows\rte_override\rte_rtm.h" />
<ClInclude Include="..\..\..\..\lib\librte_hash\rte_cmp_x86.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_hash\rte_cuckoo_hash.h" />
<ClInclude Include="..\..\..\..\lib\librte_hash\rte_cuckoo_hash_x86.h" />
<ClInclude Include="..\..\..\..\lib\librte_hash\rte_fbk_hash.h" />
<ClInclude Include="..\..\..\..\lib\librte_hash\rte_hash.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_hash\rte_hash_crc.h" />
<ClInclude Include="..\..\..\..\lib\librte_hash\rte_jhash.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_hash\rte_thash.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{32FDBB89-3F26-45BB-972A-BED470AD166B}</ProjectGuid>
diff --git a/mk/exec-env/windows/librte_hash/librte_hash.vcxproj.filters b/mk/exec-env/windows/librte_hash/librte_hash.vcxproj.filters
index d5df131..8d13366 100644
--- a/mk/exec-env/windows/librte_hash/librte_hash.vcxproj.filters
+++ b/mk/exec-env/windows/librte_hash/librte_hash.vcxproj.filters
@@ -56,5 +56,14 @@
<ClInclude Include="..\..\..\..\lib\librte_eal\common\include\arch\x86\rte_rtm.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_hash\rte_cuckoo_hash.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_hash\rte_hash_crc.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_hash\rte_thash.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_ipfrag/librte_ipfrag.vcxproj b/mk/exec-env/windows/librte_ipfrag/librte_ipfrag.vcxproj
new file mode 100644
index 0000000..bc2475e
--- /dev/null
+++ b/mk/exec-env/windows/librte_ipfrag/librte_ipfrag.vcxproj
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_ip_frag\ip_frag_internal.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_ip_frag\rte_ipv4_fragmentation.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_ip_frag\rte_ipv4_reassembly.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_ip_frag\rte_ipv6_fragmentation.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_ip_frag\rte_ipv6_reassembly.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_ip_frag\rte_ip_frag_common.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_ip_frag\ip_frag_common.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_ip_frag\rte_ip_frag.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{C804DFF0-7A44-44FA-8E7E-87F80A30B833}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librteipfrag</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_ipfrag/librte_ipfrag.vcxproj.filters b/mk/exec-env/windows/librte_ipfrag/librte_ipfrag.vcxproj.filters
new file mode 100644
index 0000000..7a4dfcc
--- /dev/null
+++ b/mk/exec-env/windows/librte_ipfrag/librte_ipfrag.vcxproj.filters
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_ip_frag\ip_frag_internal.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_ip_frag\rte_ip_frag_common.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_ip_frag\rte_ipv4_fragmentation.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_ip_frag\rte_ipv4_reassembly.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_ip_frag\rte_ipv6_fragmentation.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_ip_frag\rte_ipv6_reassembly.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_ip_frag\rte_ip_frag.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_ip_frag\ip_frag_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_ipfrag/librte_ipfrag.vcxproj.user b/mk/exec-env/windows/librte_ipfrag/librte_ipfrag.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_ipfrag/librte_ipfrag.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_latencystats/librte_latencystats.vcxproj b/mk/exec-env/windows/librte_latencystats/librte_latencystats.vcxproj
new file mode 100644
index 0000000..adc0d15
--- /dev/null
+++ b/mk/exec-env/windows/librte_latencystats/librte_latencystats.vcxproj
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_latencystats\rte_latencystats.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_latencystats\rte_latencystats.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{D312B4B8-B775-4209-BDB8-21B7D3D70269}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtelatencystats</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_latencystats/librte_latencystats.vcxproj.filters b/mk/exec-env/windows/librte_latencystats/librte_latencystats.vcxproj.filters
new file mode 100644
index 0000000..95f630f
--- /dev/null
+++ b/mk/exec-env/windows/librte_latencystats/librte_latencystats.vcxproj.filters
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_latencystats\rte_latencystats.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_latencystats\rte_latencystats.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_latencystats/librte_latencystats.vcxproj.user b/mk/exec-env/windows/librte_latencystats/librte_latencystats.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_latencystats/librte_latencystats.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_lpm/librte_lpm.vcxproj b/mk/exec-env/windows/librte_lpm/librte_lpm.vcxproj
index 22200a1..3d6f544 100644
--- a/mk/exec-env/windows/librte_lpm/librte_lpm.vcxproj
+++ b/mk/exec-env/windows/librte_lpm/librte_lpm.vcxproj
@@ -26,8 +26,6 @@
<ClInclude Include="..\..\..\..\lib\librte_eal\windows\rte_override\rte_vect.h" />
<ClInclude Include="..\..\..\..\lib\librte_lpm\rte_lpm.h" />
<ClInclude Include="..\..\..\..\lib\librte_lpm\rte_lpm6.h" />
- <ClInclude Include="..\..\..\..\lib\librte_lpm\rte_lpm_altivec.h" />
- <ClInclude Include="..\..\..\..\lib\librte_lpm\rte_lpm_neon.h" />
<ClInclude Include="..\..\..\..\lib\librte_lpm\rte_lpm_sse.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
diff --git a/mk/exec-env/windows/librte_lpm/librte_lpm.vcxproj.filters b/mk/exec-env/windows/librte_lpm/librte_lpm.vcxproj.filters
index e1b3dc6..d12199b 100644
--- a/mk/exec-env/windows/librte_lpm/librte_lpm.vcxproj.filters
+++ b/mk/exec-env/windows/librte_lpm/librte_lpm.vcxproj.filters
@@ -62,11 +62,5 @@
<ClInclude Include="..\..\..\..\lib\librte_lpm\rte_lpm_sse.h">
<Filter>Header Files</Filter>
</ClInclude>
- <ClInclude Include="..\..\..\..\lib\librte_lpm\rte_lpm_neon.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="..\..\..\..\lib\librte_lpm\rte_lpm_altivec.h">
- <Filter>Header Files</Filter>
- </ClInclude>
</ItemGroup>
</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_mbuf/librte_mbuf.vcxproj b/mk/exec-env/windows/librte_mbuf/librte_mbuf.vcxproj
index ec32ac4..1702b79 100644
--- a/mk/exec-env/windows/librte_mbuf/librte_mbuf.vcxproj
+++ b/mk/exec-env/windows/librte_mbuf/librte_mbuf.vcxproj
@@ -12,6 +12,7 @@
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\..\..\lib\librte_mbuf\rte_mbuf.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_mbuf\rte_mbuf_pool_ops.c" />
<ClCompile Include="..\..\..\..\lib\librte_mbuf\rte_mbuf_ptype.c" />
</ItemGroup>
<ItemGroup>
@@ -33,6 +34,7 @@
<ClInclude Include="..\..\..\..\lib\librte_eal\windows\rte_override\rte_per_lcore.h" />
<ClInclude Include="..\..\..\..\lib\librte_eal\windows\rte_override\rte_prefetch.h" />
<ClInclude Include="..\..\..\..\lib\librte_mbuf\rte_mbuf.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_mbuf\rte_mbuf_pool_ops.h" />
<ClInclude Include="..\..\..\..\lib\librte_mbuf\rte_mbuf_ptype.h" />
<ClInclude Include="..\..\..\..\lib\librte_mempool\rte_mempool.h" />
<ClInclude Include="..\..\..\..\lib\librte_ring\rte_ring.h" />
diff --git a/mk/exec-env/windows/librte_mbuf/librte_mbuf.vcxproj.filters b/mk/exec-env/windows/librte_mbuf/librte_mbuf.vcxproj.filters
index 2a31569..a6c8a15 100644
--- a/mk/exec-env/windows/librte_mbuf/librte_mbuf.vcxproj.filters
+++ b/mk/exec-env/windows/librte_mbuf/librte_mbuf.vcxproj.filters
@@ -24,6 +24,9 @@
<ClCompile Include="..\..\..\..\lib\librte_mbuf\rte_mbuf_ptype.c">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_mbuf\rte_mbuf_pool_ops.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\lib\librte_mbuf\rte_mbuf.h">
@@ -89,5 +92,8 @@
<ClInclude Include="..\..\..\..\lib\librte_mbuf\rte_mbuf_ptype.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_mbuf\rte_mbuf_pool_ops.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_member/librte_member.vcxproj b/mk/exec-env/windows/librte_member/librte_member.vcxproj
new file mode 100644
index 0000000..5ba4757
--- /dev/null
+++ b/mk/exec-env/windows/librte_member/librte_member.vcxproj
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_member\rte_member.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_member\rte_member_ht.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_member\rte_member_vbf.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_member\rte_member.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_member\rte_member_ht.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_member\rte_member_vbf.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_member\rte_member_x86.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{92F2835C-2094-473E-9FEF-E03D51993211}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtemember</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_member/librte_member.vcxproj.filters b/mk/exec-env/windows/librte_member/librte_member.vcxproj.filters
new file mode 100644
index 0000000..9b876f4
--- /dev/null
+++ b/mk/exec-env/windows/librte_member/librte_member.vcxproj.filters
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_member\rte_member.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_member\rte_member_ht.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_member\rte_member_vbf.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_member\rte_member.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_member\rte_member_ht.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_member\rte_member_vbf.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_member\rte_member_x86.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_member/librte_member.vcxproj.user b/mk/exec-env/windows/librte_member/librte_member.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_member/librte_member.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_meter/librte_meter.vcxproj b/mk/exec-env/windows/librte_meter/librte_meter.vcxproj
new file mode 100644
index 0000000..96085b1
--- /dev/null
+++ b/mk/exec-env/windows/librte_meter/librte_meter.vcxproj
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_meter\rte_meter.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_meter\rte_meter.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{81F6BD5A-DD07-4AC0-9999-9B2031CD400A}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtemeter</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_meter/librte_meter.vcxproj.filters b/mk/exec-env/windows/librte_meter/librte_meter.vcxproj.filters
new file mode 100644
index 0000000..a78e326
--- /dev/null
+++ b/mk/exec-env/windows/librte_meter/librte_meter.vcxproj.filters
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_meter\rte_meter.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_meter\rte_meter.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_meter/librte_meter.vcxproj.user b/mk/exec-env/windows/librte_meter/librte_meter.vcxproj.user
new file mode 100644
index 0000000..abe8dd8
--- /dev/null
+++ b/mk/exec-env/windows/librte_meter/librte_meter.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_metrics/librte_metrics.vcxproj b/mk/exec-env/windows/librte_metrics/librte_metrics.vcxproj
new file mode 100644
index 0000000..becf55c
--- /dev/null
+++ b/mk/exec-env/windows/librte_metrics/librte_metrics.vcxproj
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_metrics\rte_metrics.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_metrics\rte_metrics.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{4630B413-F62D-41FC-B149-117E5A3294DA}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtemetrics</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ <PrecompiledHeaderFile />
+ <PrecompiledHeaderOutputFile />
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ <PrecompiledHeaderFile />
+ <PrecompiledHeaderOutputFile />
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_metrics/librte_metrics.vcxproj.filters b/mk/exec-env/windows/librte_metrics/librte_metrics.vcxproj.filters
new file mode 100644
index 0000000..f9875ab
--- /dev/null
+++ b/mk/exec-env/windows/librte_metrics/librte_metrics.vcxproj.filters
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_metrics\rte_metrics.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_metrics\rte_metrics.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_metrics/librte_metrics.vcxproj.user b/mk/exec-env/windows/librte_metrics/librte_metrics.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_metrics/librte_metrics.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_net/librte_net.vcxproj b/mk/exec-env/windows/librte_net/librte_net.vcxproj
new file mode 100644
index 0000000..46bd8a9
--- /dev/null
+++ b/mk/exec-env/windows/librte_net/librte_net.vcxproj
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_net\rte_net.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_net\rte_net_crc.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_net\net_crc_sse.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_net\rte_net.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_net\rte_net_crc.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{6CD555F0-108B-4B17-9E6B-668270B383FB}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtenet</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_net/librte_net.vcxproj.filters b/mk/exec-env/windows/librte_net/librte_net.vcxproj.filters
new file mode 100644
index 0000000..c6bc8a7
--- /dev/null
+++ b/mk/exec-env/windows/librte_net/librte_net.vcxproj.filters
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_net\rte_net.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_net\rte_net_crc.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_net\rte_net.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_net\rte_net_crc.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_net\net_crc_sse.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_net/librte_net.vcxproj.user b/mk/exec-env/windows/librte_net/librte_net.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_net/librte_net.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_pipeline/librte_pipeline.vcxproj b/mk/exec-env/windows/librte_pipeline/librte_pipeline.vcxproj
new file mode 100644
index 0000000..2cadcb0
--- /dev/null
+++ b/mk/exec-env/windows/librte_pipeline/librte_pipeline.vcxproj
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_pipeline\rte_pipeline.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_pipeline\rte_pipeline.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{DE3F48D3-43F0-4412-8D38-E13677FD0FFC}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtepipeline</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_pipeline/librte_pipeline.vcxproj.filters b/mk/exec-env/windows/librte_pipeline/librte_pipeline.vcxproj.filters
new file mode 100644
index 0000000..575782c
--- /dev/null
+++ b/mk/exec-env/windows/librte_pipeline/librte_pipeline.vcxproj.filters
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_pipeline\rte_pipeline.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_pipeline\rte_pipeline.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_pipeline/librte_pipeline.vcxproj.user b/mk/exec-env/windows/librte_pipeline/librte_pipeline.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_pipeline/librte_pipeline.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_pmd_i40e/librte_pmd_i40e.vcxproj b/mk/exec-env/windows/librte_pmd_i40e/librte_pmd_i40e.vcxproj
index a04738b..ae3f12d 100644
--- a/mk/exec-env/windows/librte_pmd_i40e/librte_pmd_i40e.vcxproj
+++ b/mk/exec-env/windows/librte_pmd_i40e/librte_pmd_i40e.vcxproj
@@ -23,6 +23,8 @@
<ClCompile Include="..\..\..\..\drivers\net\i40e\i40e_flow.c" />
<ClCompile Include="..\..\..\..\drivers\net\i40e\i40e_pf.c" />
<ClCompile Include="..\..\..\..\drivers\net\i40e\i40e_rxtx.c" />
+ <ClCompile Include="..\..\..\..\drivers\net\i40e\i40e_rxtx_vec_avx2.c" />
+ <ClCompile Include="..\..\..\..\drivers\net\i40e\i40e_rxtx_vec_sse.c" />
<ClCompile Include="..\..\..\..\drivers\net\i40e\i40e_tm.c" />
<ClCompile Include="..\..\..\..\drivers\net\i40e\rte_pmd_i40e.c" />
</ItemGroup>
@@ -46,6 +48,7 @@
<ClInclude Include="..\..\..\..\drivers\net\i40e\i40e_pf.h" />
<ClInclude Include="..\..\..\..\drivers\net\i40e\i40e_regs.h" />
<ClInclude Include="..\..\..\..\drivers\net\i40e\i40e_rxtx.h" />
+ <ClInclude Include="..\..\..\..\drivers\net\i40e\i40e_rxtx_vec_common.h" />
<ClInclude Include="..\..\..\..\drivers\net\i40e\rte_pmd_i40e.h" />
<ClInclude Include="..\..\..\..\lib\librte_eal\common\include\generic\rte_byteorder.h" />
<ClInclude Include="..\..\..\..\lib\librte_eal\common\include\generic\rte_cycles.h" />
diff --git a/mk/exec-env/windows/librte_pmd_i40e/librte_pmd_i40e.vcxproj.filters b/mk/exec-env/windows/librte_pmd_i40e/librte_pmd_i40e.vcxproj.filters
index 6da16d4..72425d7 100644
--- a/mk/exec-env/windows/librte_pmd_i40e/librte_pmd_i40e.vcxproj.filters
+++ b/mk/exec-env/windows/librte_pmd_i40e/librte_pmd_i40e.vcxproj.filters
@@ -63,6 +63,12 @@
<ClCompile Include="..\..\..\..\drivers\net\i40e\base\i40e_dcb.c">
<Filter>Source Files\base</Filter>
</ClCompile>
+ <ClCompile Include="..\..\..\..\drivers\net\i40e\i40e_rxtx_vec_sse.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\drivers\net\i40e\i40e_rxtx_vec_avx2.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\drivers\net\i40e\i40e_rxtx.h">
@@ -182,5 +188,8 @@
<ClInclude Include="..\..\..\..\drivers\net\i40e\base\virtchnl.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\..\..\..\drivers\net\i40e\i40e_rxtx_vec_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_port/librte_port.vcxproj b/mk/exec-env/windows/librte_port/librte_port.vcxproj
new file mode 100644
index 0000000..acaa83a
--- /dev/null
+++ b/mk/exec-env/windows/librte_port/librte_port.vcxproj
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_ethdev.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_fd.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_frag.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_ras.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_ring.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_sched.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_source_sink.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_ethdev.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_fd.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_frag.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_ras.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_ring.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_sched.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_source_sink.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{D70E097F-07B6-4841-94AF-570BE1671F0C}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librteport</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_port/librte_port.vcxproj.filters b/mk/exec-env/windows/librte_port/librte_port.vcxproj.filters
new file mode 100644
index 0000000..a37008b
--- /dev/null
+++ b/mk/exec-env/windows/librte_port/librte_port.vcxproj.filters
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_ethdev.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_fd.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_frag.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_ras.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_ring.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_sched.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_port\rte_port_source_sink.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_ring.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_sched.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_source_sink.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_ethdev.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_fd.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_frag.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_port\rte_port_ras.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_port/librte_port.vcxproj.user b/mk/exec-env/windows/librte_port/librte_port.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_port/librte_port.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_reorder/librte_reorder.vcxproj b/mk/exec-env/windows/librte_reorder/librte_reorder.vcxproj
new file mode 100644
index 0000000..4a29e0b
--- /dev/null
+++ b/mk/exec-env/windows/librte_reorder/librte_reorder.vcxproj
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_reorder\rte_reorder.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_reorder\rte_reorder.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{9696E989-C867-436D-B619-12BA1BBEA4E0}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtereorder</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_reorder/librte_reorder.vcxproj.filters b/mk/exec-env/windows/librte_reorder/librte_reorder.vcxproj.filters
new file mode 100644
index 0000000..288ad6e
--- /dev/null
+++ b/mk/exec-env/windows/librte_reorder/librte_reorder.vcxproj.filters
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_reorder\rte_reorder.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_reorder\rte_reorder.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_reorder/librte_reorder.vcxproj.user b/mk/exec-env/windows/librte_reorder/librte_reorder.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_reorder/librte_reorder.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_ring/librte_ring.vcxproj b/mk/exec-env/windows/librte_ring/librte_ring.vcxproj
index 5d109da..dd9dd73 100644
--- a/mk/exec-env/windows/librte_ring/librte_ring.vcxproj
+++ b/mk/exec-env/windows/librte_ring/librte_ring.vcxproj
@@ -23,6 +23,7 @@
<ClInclude Include="..\..\..\..\lib\librte_eal\windows\rte_override\rte_lcore.h" />
<ClInclude Include="..\..\..\..\lib\librte_eal\windows\rte_override\rte_memory.h" />
<ClInclude Include="..\..\..\..\lib\librte_ring\rte_ring.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_ring\rte_ring_generic.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{0746F0FF-F42C-4ABA-BDE1-F3FD65A81DB8}</ProjectGuid>
diff --git a/mk/exec-env/windows/librte_ring/librte_ring.vcxproj.filters b/mk/exec-env/windows/librte_ring/librte_ring.vcxproj.filters
index e0ad776..50e8ed7 100644
--- a/mk/exec-env/windows/librte_ring/librte_ring.vcxproj.filters
+++ b/mk/exec-env/windows/librte_ring/librte_ring.vcxproj.filters
@@ -50,5 +50,8 @@
<ClInclude Include="..\..\..\..\lib\librte_eal\windows\rte_override\rte_lcore.h">
<Filter>Header Files\windows override</Filter>
</ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_ring\rte_ring_generic.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_sched/librte_sched.vcxproj b/mk/exec-env/windows/librte_sched/librte_sched.vcxproj
new file mode 100644
index 0000000..5e571ab
--- /dev/null
+++ b/mk/exec-env/windows/librte_sched/librte_sched.vcxproj
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_sched\rte_approx.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_sched\rte_red.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_sched\rte_sched.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_sched\rte_approx.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_sched\rte_red.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_sched\rte_sched.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_sched\rte_sched_common.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{6B238285-8FEC-425E-9F30-B3E2D9A0EA4B}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtesched</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_sched/librte_sched.vcxproj.filters b/mk/exec-env/windows/librte_sched/librte_sched.vcxproj.filters
new file mode 100644
index 0000000..246a84d
--- /dev/null
+++ b/mk/exec-env/windows/librte_sched/librte_sched.vcxproj.filters
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_sched\rte_approx.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_sched\rte_red.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_sched\rte_sched.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_sched\rte_sched.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_sched\rte_sched_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_sched\rte_approx.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_sched\rte_red.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_sched/librte_sched.vcxproj.user b/mk/exec-env/windows/librte_sched/librte_sched.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_sched/librte_sched.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_security/librte_security.vcxproj b/mk/exec-env/windows/librte_security/librte_security.vcxproj
new file mode 100644
index 0000000..eb419db
--- /dev/null
+++ b/mk/exec-env/windows/librte_security/librte_security.vcxproj
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_security\rte_security.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_security\rte_security.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_security\rte_security_driver.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{8BFAD01C-E51C-45AF-9C8A-8D13763185EC}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtesecurity</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_security/librte_security.vcxproj.filters b/mk/exec-env/windows/librte_security/librte_security.vcxproj.filters
new file mode 100644
index 0000000..4319a39
--- /dev/null
+++ b/mk/exec-env/windows/librte_security/librte_security.vcxproj.filters
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_security\rte_security.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_security\rte_security.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_security\rte_security_driver.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_security/librte_security.vcxproj.user b/mk/exec-env/windows/librte_security/librte_security.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_security/librte_security.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_table/librte_table.vcxproj b/mk/exec-env/windows/librte_table/librte_table.vcxproj
new file mode 100644
index 0000000..1daa413
--- /dev/null
+++ b/mk/exec-env/windows/librte_table/librte_table.vcxproj
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{6D9EA859-41AD-4465-B386-5D84A6DF53B6}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtetable</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_lru.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_lru_x86.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table_acl.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table_array.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table_hash.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table_lpm.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table_lpm_ipv6.h" />
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table_stub.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_acl.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_array.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_hash_cuckoo.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_hash_ext.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_hash_key16.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_hash_key32.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_hash_key8.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_hash_lru.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_lpm.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_lpm_ipv6.c" />
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_stub.c" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_table/librte_table.vcxproj.filters b/mk/exec-env/windows/librte_table/librte_table.vcxproj.filters
new file mode 100644
index 0000000..cc1e13a
--- /dev/null
+++ b/mk/exec-env/windows/librte_table/librte_table.vcxproj.filters
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table_lpm.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table_lpm_ipv6.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table_stub.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_lru.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_lru_x86.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table_acl.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table_array.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\..\..\lib\librte_table\rte_table_hash.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_acl.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_array.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_hash_cuckoo.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_hash_ext.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_hash_key8.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_hash_key16.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_hash_key32.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_hash_lru.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_lpm.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_lpm_ipv6.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\..\lib\librte_table\rte_table_stub.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_table/librte_table.vcxproj.user b/mk/exec-env/windows/librte_table/librte_table.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_table/librte_table.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_timer/librte_timer.vcxproj b/mk/exec-env/windows/librte_timer/librte_timer.vcxproj
new file mode 100644
index 0000000..2f3b337
--- /dev/null
+++ b/mk/exec-env/windows/librte_timer/librte_timer.vcxproj
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_timer\rte_timer.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_timer\rte_timer.h" />
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{B66DCE2E-0E2A-48A7-853B-DF1D90400935}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>librtetimer</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>Intel C++ Compiler 18.0</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="..\DpdkRteLib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_timer/librte_timer.vcxproj.filters b/mk/exec-env/windows/librte_timer/librte_timer.vcxproj.filters
new file mode 100644
index 0000000..a1ffa0e
--- /dev/null
+++ b/mk/exec-env/windows/librte_timer/librte_timer.vcxproj.filters
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\..\..\lib\librte_timer\rte_timer.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\..\lib\librte_timer\rte_timer.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/librte_timer/librte_timer.vcxproj.user b/mk/exec-env/windows/librte_timer/librte_timer.vcxproj.user
new file mode 100644
index 0000000..be25078
--- /dev/null
+++ b/mk/exec-env/windows/librte_timer/librte_timer.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup />
+</Project> \ No newline at end of file
diff --git a/mk/exec-env/windows/netuio/netuio.vcxproj b/mk/exec-env/windows/netuio/netuio.vcxproj
index 251b8eb..9e769b5 100644
--- a/mk/exec-env/windows/netuio/netuio.vcxproj
+++ b/mk/exec-env/windows/netuio/netuio.vcxproj
@@ -66,7 +66,7 @@
<WppMinimalRebuildFromTracking>false</WppMinimalRebuildFromTracking>
</ClCompile>
<Inf>
- <TimeStamp>0.6.0.2</TimeStamp>
+ <TimeStamp>0.6.0.5</TimeStamp>
</Inf>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
@@ -78,7 +78,7 @@
<WppMinimalRebuildFromTracking>false</WppMinimalRebuildFromTracking>
</ClCompile>
<Inf>
- <TimeStamp>0.6.0.2</TimeStamp>
+ <TimeStamp>0.6.0.5</TimeStamp>
</Inf>
</ItemDefinitionGroup>
<ItemGroup>