diff options
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | Makefile.am | 1 | ||||
-rwxr-xr-x | build-aux/extract-odp-netlink-windows-dp-h | 24 | ||||
-rw-r--r-- | datapath-windows/include/automake.mk | 10 | ||||
-rw-r--r-- | datapath-windows/ovsext/precomp.h | 2 |
5 files changed, 38 insertions, 1 deletions
diff --git a/.gitignore b/.gitignore index 22ea3eccc..800352c0c 100644 --- a/.gitignore +++ b/.gitignore @@ -60,3 +60,5 @@ TAGS cscope.* tags _debian +odp-netlink.h +OvsDpInterface.h diff --git a/Makefile.am b/Makefile.am index eddacafd4..eb5810142 100644 --- a/Makefile.am +++ b/Makefile.am @@ -316,3 +316,4 @@ include python/compat/automake.mk include tutorial/automake.mk include vtep/automake.mk include datapath-windows/automake.mk +include datapath-windows/include/automake.mk diff --git a/build-aux/extract-odp-netlink-windows-dp-h b/build-aux/extract-odp-netlink-windows-dp-h new file mode 100755 index 000000000..041d103b1 --- /dev/null +++ b/build-aux/extract-odp-netlink-windows-dp-h @@ -0,0 +1,24 @@ +# This is a "sed" script that transforms <linux/openvswitch.h> into a +# form that is suitable for inclusion within the Open vSwitch tree on +# windows system. The transformed header file can be included by windows +# driver modules. + +# Add a header warning that this is a generated file. +1i\ +/* -*- mode: c; buffer-read-only: t -*- */\ +/* Generated automatically from <linux/openvswitch.h> -- do not modify! */\ +\ +\ + +# Avoid using reserved names in header guards. +s/_LINUX_OPENVSWITCH_H/__OVS_DP_INTERFACE_H_/ + +# and use the appropriate userspace header. +s,<linux/types\.h>,"OvsTypes.h", + +# Add ETH_ADDR_LEN macro to avoid including userspace packet.h +s,#include <linux/if_ether\.h>,\n#ifndef ETH_ADDR_LEN \ +#define ETH_ADDR_LEN 6 \n#endif, + +# Use OVS's own ETH_ADDR_LEN instead of Linux-specific ETH_ALEN. +s/ETH_ALEN/ETH_ADDR_LEN/ diff --git a/datapath-windows/include/automake.mk b/datapath-windows/include/automake.mk new file mode 100644 index 000000000..ac945cbd6 --- /dev/null +++ b/datapath-windows/include/automake.mk @@ -0,0 +1,10 @@ +BUILT_SOURCES += $(srcdir)/datapath-windows/include/OvsDpInterface.h + +$(srcdir)/datapath-windows/include/OvsDpInterface.h: \ + datapath/linux/compat/include/linux/openvswitch.h \ + build-aux/extract-odp-netlink-windows-dp-h + sed -f $(srcdir)/build-aux/extract-odp-netlink-windows-dp-h < $< > $@ + +EXTRA_DIST += $(srcdir)/build-aux/extract-odp-netlink-windows-dp-h + +CLEANFILES += $(srcdir)/datapath-windows/include/OvsDpInterface.h diff --git a/datapath-windows/ovsext/precomp.h b/datapath-windows/ovsext/precomp.h index 45e72de6f..ec4a6217f 100644 --- a/datapath-windows/ovsext/precomp.h +++ b/datapath-windows/ovsext/precomp.h @@ -28,4 +28,4 @@ * Include openvswitch.h from userspace. Changing the location the file from * include/linux is pending discussion. */ -#include "include\linux\openvswitch.h" +#include "..\include\OvsDpInterface.h" |