On Windows, EAL contains two sets of functions and macros for POSIX compatibility: <rte_os.h> and a networking shim (socket headers). The latter conflicts with system headers and should not exist. Exposing the former from EAL can break consumer own POSIX compatibility layer and is against standards in general. Hide these symbols from external consumers, while keeping them available for DPDK code.
v5: * Unify series with removing Windows networking shim to eliminate dependency between series and CI failures. * RTE_BUILD_INTERNAL -> rte_os_internal.h (Thomas Monjalon). * Remove release notes: hidden symbols were never part of API. v4: * Instead of creating wrappers and replacing POSIX names in lib/ and drivers/, provide POSIX names only to internal consumers. * Move renaming from librte_cmdline to librte_eal. Dmitry Kozlyuk (5): eal: add sleep API eal/windows: hide asprintf() shim eal: make OS shims internal net: provide IP-related API on any OS net: replace Windows networking shim drivers/bus/pci/private.h | 4 +- drivers/bus/vdev/vdev_private.h | 2 + drivers/common/mlx5/mlx5_common.h | 1 + drivers/net/i40e/i40e_ethdev.c | 1 + drivers/net/i40e/i40e_fdir.c | 1 + drivers/net/mlx5/mlx5.h | 2 +- drivers/net/mlx5/mlx5_flow.c | 4 +- drivers/net/mlx5/mlx5_flow.h | 4 +- drivers/net/mlx5/mlx5_mac.c | 1 - examples/cmdline/commands.c | 5 - examples/cmdline/parse_obj_list.c | 2 - lib/librte_cmdline/cmdline.c | 5 - lib/librte_cmdline/cmdline_os_windows.c | 2 - lib/librte_cmdline/cmdline_parse.c | 2 - lib/librte_cmdline/cmdline_parse_etheraddr.c | 6 -- lib/librte_cmdline/cmdline_parse_ipaddr.c | 6 -- lib/librte_cmdline/cmdline_parse_ipaddr.h | 2 +- lib/librte_cmdline/cmdline_private.h | 1 + lib/librte_cmdline/cmdline_socket.c | 4 - lib/librte_eal/common/eal_common_config.c | 1 - lib/librte_eal/common/eal_common_errno.c | 4 + lib/librte_eal/common/eal_common_options.c | 2 +- lib/librte_eal/common/eal_common_timer.c | 5 +- lib/librte_eal/common/eal_internal_cfg.h | 1 + lib/librte_eal/common/eal_private.h | 11 +++ .../freebsd/include/rte_os_internal.h | 14 +++ lib/librte_eal/include/rte_thread.h | 11 +++ .../linux/include/rte_os_internal.h | 14 +++ lib/librte_eal/rte_eal_exports.def | 2 + lib/librte_eal/unix/rte_thread.c | 10 +- lib/librte_eal/version.map | 3 + lib/librte_eal/windows/eal.c | 30 ++++++ lib/librte_eal/windows/eal_hugepages.c | 1 - lib/librte_eal/windows/eal_lcore.c | 1 - lib/librte_eal/windows/eal_memalloc.c | 1 - lib/librte_eal/windows/eal_thread.c | 9 +- lib/librte_eal/windows/include/arpa/inet.h | 30 ------ lib/librte_eal/windows/include/netinet/in.h | 38 -------- lib/librte_eal/windows/include/netinet/ip.h | 10 -- lib/librte_eal/windows/include/rte_os.h | 92 +------------------ .../windows/include/rte_os_internal.h | 36 ++++++++ lib/librte_eal/windows/include/sys/socket.h | 24 ----- lib/librte_ethdev/ethdev_private.h | 2 + lib/librte_ethdev/rte_ethdev.c | 13 +-- lib/librte_ethdev/rte_ethdev_core.h | 1 - lib/librte_kvargs/rte_kvargs.c | 1 + lib/librte_net/rte_ether.h | 26 ++++-- lib/librte_net/rte_ip.h | 7 ++ lib/librte_net/rte_net.c | 1 + 49 files changed, 202 insertions(+), 254 deletions(-) create mode 100644 lib/librte_eal/freebsd/include/rte_os_internal.h create mode 100644 lib/librte_eal/linux/include/rte_os_internal.h delete mode 100644 lib/librte_eal/windows/include/arpa/inet.h delete mode 100644 lib/librte_eal/windows/include/netinet/in.h delete mode 100644 lib/librte_eal/windows/include/netinet/ip.h create mode 100644 lib/librte_eal/windows/include/rte_os_internal.h delete mode 100644 lib/librte_eal/windows/include/sys/socket.h -- 2.29.2