What we can do:
1. Introduce `rte_queue.h` (name can be better) that is env-specific:
1.1. For Linux and FreeBSD it just includes <sys/queue.h>
and renames a few macros that are used in headers to RTE_xxx.
1.2. For Windows it defines the same RTE_xxx macros in a way
compatible with the <sys/queue.h> version used to build DPDK.
2. Add #include <sys/queue.h> in <rte_os_shim.h>:
Linux and FreeBSD will include a system header,
Windows will use the bundled one.
This way application are not exposed to non-RTE symbols,
at the same time RTE_xxx are binary-compatible with what DPDK
implementation expects (and outside of Windows there is no change in fact).
+1
Nick