@ -1,6 +1,6 @@
#
# Copyright (C) 2013 Julius Schulz-Zander <julius@net.t-labs.tu-berlin.de>
# Copyright (C) 2014 OpenWrt.org
# Copyright (C) 2014-2017 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@ -13,14 +13,14 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME := openvswitch
PKG_RELEASE := 1
PKG_VERSION := 2.7.2
PKG_VERSION := 2.8.1
PKG_LICENSE := Apache-2.0
PKG_LICENSE_FILES := COPYING
PKG_USE_MIPS16 := 0
PKG_SOURCE := $( PKG_NAME) -$( PKG_VERSION) .tar.gz
PKG_SOURCE_URL := http://openvswitch.org/releases/
PKG_HASH := fe36c86ed52f6f7c17b01cdbb7ae37bf521cc5c2e50997b618f3f742485f655b
PKG_HASH := 8d1c439e26d7044f0ec823c7fef1b00b7c6465da0b83a7d0cf3191ed1dc43893
PKG_BUILD_DEPENDS := python/host python-six/host
PKG_CONFIG_DEPENDS := CONFIG_PACKAGE_openvswitch-python
@ -64,6 +64,43 @@ define Package/openvswitch-base/description
to conserve some room and allow more configurability.
e n d e f
d e f i n e P a c k a g e / o p e n v s w i t c h - o v n - b a s e
$( call Package/openvswitch/Default)
TITLE:= Open Virtual Networking ( base)
DEPENDS:= +openvswitch-base
e n d e f
d e f i n e P a c k a g e / o p e n v s w i t c h - o v n - b a s e / d e s c r i p t i o n
Provides the main userspace components required for Open Virtual Networking
over Open vSwitch.
e n d e f
OVN_BIN_TOOLS := ovn-controller ovn-controller-vtep ovn-detrace \
ovn-docker-overlay-driver ovn-docker-underlay-driver \
ovn-nbctl ovn-sbctl ovn-trace
d e f i n e P a c k a g e / o p e n v s w i t c h - o v n
$( call Package/openvswitch/Default)
TITLE:= Open Virtual Networking ( base)
DEPENDS:= +openvswitch-ovn-base $( foreach t,$( OVN_BIN_TOOLS) ,+openvswitch-$( t) )
e n d e f
d e f i n e P a c k a g e / o p e n v s w i t c h - o v n / d e s c r i p t i o n
Provides all the components required for Open Virtual Networking
( including the tools)
e n d e f
d e f i n e P a c k a g e / o p e n v s w i t c h - v t e p
$( call Package/openvswitch/Default)
TITLE:= Open vSwitch VXLAN Tunnel End Point
DEPENDS:= +openvswitch-base
e n d e f
d e f i n e P a c k a g e / o p e n v s w i t c h - v t e p / d e s c r i p t i o n
This schema specifies relations that a VTEP can use to integrate physi‐
cal ports into logical switches maintained by a network virtualization
controller such as NSX.
e n d e f
d e f i n e P a c k a g e / o p e n v s w i t c h - p y t h o n
$( call Package/openvswitch/Default)
TITLE:= Open vSwitch Python Support
@ -74,7 +111,9 @@ define Package/openvswitch-python/description
Provides bindings and libraries for using Python to manipulate/work with Open vSwitch.
e n d e f
OVS_BIN_TOOLS := ovs-appctl ovs-ofctl ovs-dpctl ovs-vsctl ovsdb-client
OVS_BIN_TOOLS := \
ovsdb-client ovs-l3ping ovs-dpctl-top \
ovs-tcpdump ovs-tcpundump ovs-pcap ovs-parse-backtrace
d e f i n e P a c k a g e / o p e n v s w i t c h
$( call Package/openvswitch/Default)
TITLE:= Open vSwitch Userspace Package
@ -83,7 +122,7 @@ endef
d e f i n e P a c k a g e / o p e n v s w i t c h / d e s c r i p t i o n
Provides the main userspace components required for Open vSwitch to function .
Includes also the main OVS utilities ( ovs-appctl, ovs-vsctl, etc) .
Includes also most of OVS utilities .
e n d e f
d e f i n e K e r n e l P a c k a g e / o p e n v s w i t c h
@ -117,26 +156,30 @@ CONFIGURE_ARGS += --enable-shared
TARGET_CFLAGS += -flto -std= gnu99
CONFIGURE_VARS += KARCH = $( LINUX_KARCH)
CONFIGURE_VARS += \
ovs_cv_flake8 = no \
ovs_cv_python3 = no \
KARCH = $( LINUX_KARCH)
MAKE_FLAGS += \
ARCH = " $( LINUX_KARCH) " \
PYTHONPATH = " $( HOST_PYTHONPATH) " \
PYTHON = " $( HOST_PYTHON_BIN) "
d e f i n e O v s B i n U t i l i t y
define Package/openvswitch-$( 1 )
define Package/openvswitch-$( 2 )
$( call Package/openvswitch/Default)
TITLE:= $( 2 )
DEPENDS:= +openvswitch-base
TITLE:= $( 3 )
DEPENDS:= +$( 1) $( 4)
endef
define Package/openvswitch-$( 1 ) /description
$( 2 )
define Package/openvswitch-$( 2 ) /description
$( 3 )
endef
define Package/openvswitch-$( 1 ) /install
define Package/openvswitch-$( 2 ) /install
$( INSTALL_DIR) $$ ( 1) /usr/bin/ ; \
$( INSTALL_BIN) $( PKG_INSTALL_DIR) /usr/bin/$( 1 ) $$ ( 1) /usr/bin/
$( INSTALL_BIN) $( PKG_INSTALL_DIR) /usr/bin/$( 2 ) $$ ( 1) /usr/bin/
endef
e n d e f
@ -153,14 +196,40 @@ define Package/openvswitch-base/install
$( CP) $( PKG_INSTALL_DIR) /usr/lib/libsflow*.so* $( 1) /usr/lib/
$( INSTALL_DIR) $( 1) /usr/bin/
$( INSTALL_BIN) $( PKG_INSTALL_DIR) /usr/bin/ovsdb-tool $( 1) /usr/bin/
$( foreach bin,ovsdb-tool ovs-appctl ovs-ofctl ovs-dpctl ovs-vsctl ovs-pki, \
$( INSTALL_BIN) $( PKG_INSTALL_DIR) /usr/bin/$( bin) $( 1) /usr/bin/ ; )
$( INSTALL_DIR) $( 1) /usr/sbin/
$( INSTALL_BIN) $( PKG_INSTALL_DIR) /usr/sbin/ovs-vswitchd $( 1) /usr/sbin/
$( INSTALL_BIN) $( PKG_INSTALL_DIR) /usr/sbin/ovsdb-server $( 1) /usr/sbin/
$( INSTALL_DIR) $( 1) /usr/share/openvswitch/
$( INSTALL_CONF) $( PKG_INSTALL_DIR) /usr/share/openvswitch/vswitch.ovsschema $( 1) /usr/share/openvswitch/
$( INSTALL_DIR) $( 1) /usr/share/openvswitch/scripts
$( INSTALL_CONF) \
$( PKG_INSTALL_DIR) /usr/share/openvswitch/vswitch.ovsschema \
$( 1) /usr/share/openvswitch/
$( INSTALL_DATA) \
$( PKG_INSTALL_DIR) /usr/share/openvswitch/scripts/ovs-lib \
$( 1) /usr/share/openvswitch/scripts
$( INSTALL_BIN) \
$( PKG_INSTALL_DIR) /usr/share/openvswitch/scripts/ovs-ctl \
$( 1) /usr/share/openvswitch/scripts
e n d e f
d e f i n e P a c k a g e / o p e n v s w i t c h - o v n - b a s e / i n s t a l l
$( INSTALL_DIR) $( 1) /usr/lib/ $( 1) /usr/bin/ $( 1) /usr/share/openvswitch/
$( CP) $( PKG_INSTALL_DIR) /usr/lib/libovn*.so* $( 1) /usr/lib/
$( INSTALL_BIN) $( PKG_INSTALL_DIR) /usr/bin/ovn-northd $( 1) /usr/bin/
$( INSTALL_CONF) $( PKG_INSTALL_DIR) /usr/share/openvswitch/ovn-nb.ovsschema $( 1) /usr/share/openvswitch/
$( INSTALL_CONF) $( PKG_INSTALL_DIR) /usr/share/openvswitch/ovn-sb.ovsschema $( 1) /usr/share/openvswitch/
e n d e f
d e f i n e P a c k a g e / o p e n v s w i t c h - v t e p / i n s t a l l
$( INSTALL_DIR) $( 1) /usr/lib/ $( 1) /usr/bin/ $( 1) /usr/share/openvswitch/
$( INSTALL_BIN) $( PKG_INSTALL_DIR) /usr/bin/vtep-ctl $( 1) /usr/bin/
$( CP) $( PKG_INSTALL_DIR) /usr/lib/libvtep*.so* $( 1) /usr/lib/
$( INSTALL_CONF) $( PKG_INSTALL_DIR) /usr/share/openvswitch/vtep.ovsschema $( 1) /usr/share/openvswitch/
e n d e f
d e f i n e P a c k a g e / o p e n v s w i t c h - p y t h o n / i n s t a l l
@ -168,19 +237,44 @@ define Package/openvswitch-python/install
$( CP) $( PKG_INSTALL_DIR) /usr/share/openvswitch/python/ovs/* $( 1) /usr/lib/python$( PYTHON_VERSION) /ovs
e n d e f
d e f i n e P a c k a g e / o p e n v s w i t c h - o v n / i n s t a l l
:
e n d e f
d e f i n e P a c k a g e / o p e n v s w i t c h / i n s t a l l
:
e n d e f
$( eval $ ( call OvsBinUtility ,ovs -appctl ,Open vSwitch app control utility ) )
$( eval $ ( call OvsBinUtility ,ovs -ofctl ,Open vSwitch OpenFlow control utility ) )
$( eval $ ( call OvsBinUtility ,ovs -dpctl ,Open vSwitch datapath management utility ) )
$( eval $ ( call OvsBinUtility ,ovs -vsctl ,Open vSwitch ovs -vswitchd management utility ) )
$( eval $ ( call OvsBinUtility ,ovsdb -client ,Open vSwitch database JSON -RPC client ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovs -appctl ,Open vSwitch app control utility ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovs -ofctl ,Open vSwitch OpenFlow control utility ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovs -dpctl ,Open vSwitch datapath management utility ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovs -vsctl ,Open vSwitch ovs -vswitchd management utility ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovsdb -client ,Open vSwitch database JSON -RPC client ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovs -l 3ping ,Check network deployment for L 3 tunneling problems ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovs -docker ,Open vSwitch docker tool ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovs -dpctl -top ,Top like behavior for ovs -dpctl dump -flows ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovs -pki ,OpenFlow public key infrastructure management utility ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovs -tcpdump ,Dump traffic from an Open vSwitch port using tcpdump ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovs -tcpundump ,Convert ``tcpdump -xx `` output to hex strings ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovs -pcap ,Print packets from a pcap file as hex ) )
$( eval $ ( call OvsBinUtility ,openvswitch -base ,ovs -parse -backtrace ,parses ovs -appctl backtrace output ) )
$( eval $ ( call OvsBinUtility ,openvswitch -ovn -base ,ovn -controller ,Open Virtual Network local controller ) )
$( eval $ ( call OvsBinUtility ,openvswitch -ovn -base ,ovn -controller -vtep ,Open Virtual Network local controller for vtep enabled physical switches ,+openvswitch -vtep ) )
$( eval $ ( call OvsBinUtility ,openvswitch -ovn -base ,ovn -detrace ,Convert ``ovs -appctl ofproto /trace `` output to combine OVN logical flow information ) )
$( eval $ ( call OvsBinUtility ,openvswitch -ovn -base ,ovn -docker -overlay -driver ,OVN Docker overlay driver utility ) )
$( eval $ ( call OvsBinUtility ,openvswitch -ovn -base ,ovn -docker -underlay -driver ,OVN Docker underlay driver utility ) )
$( eval $ ( call OvsBinUtility ,openvswitch -ovn -base ,ovn -nbctl ,Open Virtual Network northbound db management utility ) )
$( eval $ ( call OvsBinUtility ,openvswitch -ovn -base ,ovn -sbctl ,Utility for querying and configuring OVN_Southbound data ‐base ) )
$( eval $ ( call OvsBinUtility ,openvswitch -ovn -base ,ovn -trace ,Open Virtual Network logical network tracing utility ) )
$( foreach t ,$ ( OVS_BIN_TOOLS ) ,$ ( eval $ ( call BuildPackage ,openvswitch -$ ( t ) ) ) )
$( foreach t ,$ ( OVN_BIN_TOOLS ) ,$ ( eval $ ( call BuildPackage ,openvswitch -$ ( t ) ) ) )
$( eval $ ( call BuildPackage ,openvswitch -base ) )
$( eval $ ( call BuildPackage ,openvswitch -ovn -base ) )
$( eval $ ( call BuildPackage ,openvswitch -ovn ) )
$( eval $ ( call BuildPackage ,openvswitch -vtep ) )
$( eval $ ( call BuildPackage ,openvswitch -python ) )
$( eval $ ( call BuildPackage ,openvswitch ) )
$( eval $ ( call KernelPackage ,openvswitch ) )