# Contributor: Stuart Cardall # Maintainer: Stuart Cardall pkgname=openvswitch pkgver=2.9.2 pkgrel=0 pkgdesc="A production quality, multilayer virtual switch" url="http://openvswitch.org/" arch="all" license="Apache-2.0" depends="" options="!check" # FIXME: no point in running tests if we ignore result depends_dev="libressl-dev" makedepends="$depends_dev perl linux-headers bash libcap-ng-dev python2 py2-six python3-dev py3-six py-twisted" subpackages="$pkgname-doc $pkgname-dbg $pkgname-dev $pkgname-bash-completion:bashcomp:noarch $pkgname-test:_test py2-$pkgname:_py2:noarch py3-$pkgname:_py3:noarch $pkgname-ovn:_ovn " source="http://openvswitch.org/releases/$pkgname-$pkgver.tar.gz ovsdb-server.initd ovsdb-server.confd ovs-vswitchd.initd ovs-vswitchd.confd ovs-modules.initd musl-if_packet.patch ifupdown-alpine.patch readme.debian.patch " builddir="$srcdir/$pkgname-$pkgver" build() { cd "$builddir" ./configure --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --localstatedir=/var \ --enable-ndebug \ --enable-libcapng \ PYTHON=/usr/bin/python2 make } check() { cd "$builddir" make check || true } package() { cd "$builddir" make DESTDIR="$pkgdir" install local _py2site=$(python2 -c "import site; print(site.getsitepackages()[0])") local _py3site=$(python3 -c "import site; print(site.getsitepackages()[0])") mkdir -p "$pkgdir/$_py2site" "$pkgdir/$_py3site" cp -a "$pkgdir"/usr/share/openvswitch/python/* "$pkgdir/$_py2site"/ cp -a "$pkgdir"/usr/share/openvswitch/python/ovs "$pkgdir/$_py3site"/ rm -rf "$pkgdir"/usr/share/openvswitch/python rm -f "$pkgdir"/usr/lib/*.a install -Dm755 "$srcdir"/ovsdb-server.initd \ "$pkgdir"/etc/init.d/ovsdb-server install -Dm755 "$srcdir"/ovs-vswitchd.initd \ "$pkgdir"/etc/init.d/ovs-vswitchd install -Dm755 "$srcdir"/ovs-modules.initd \ "$pkgdir"/etc/init.d/ovs-modules install -Dm644 "$srcdir"/ovsdb-server.confd \ "$pkgdir"/etc/conf.d/ovsdb-server install -Dm644 "$srcdir"/ovs-vswitchd.confd \ "$pkgdir"/etc/conf.d/ovs-vswitchd install -d "$pkgdir"/etc/network/if-pre-up.d \ "$pkgdir"/etc/network/if-post-down.d install -m755 debian/ifupdown.sh \ "$pkgdir"/etc/network/if-pre-up.d/openvswitch ln -s ../if-pre-up.d/openvswitch \ "$pkgdir"/etc/network/if-post-down.d/openvswitch mkdir -p "$pkgdir"/usr/share/doc/openvswitch install -m644 debian/openvswitch-switch.README.Debian \ "$pkgdir"/usr/share/doc/openvswitch/README.alpine } _mv_files() { local i for i in "$@"; do case $i in */*) mkdir -p "$subpkgdir"/${i%/*};; *) mkdir -p "$subpkgdir";; esac mv "$pkgdir"/$i "$subpkgdir"/$i done } bashcomp() { pkgdesc="Bash completions for $pkgname" depends="" install_if="$pkgname=$pkgver-r$pkgrel bash-completion" mkdir -p "$subpkgdir"/usr/share/bash-completion/completions/$pkgname mv "$builddir"/utilities/*-bashcomp.bash \ "$subpkgdir"/usr/share/bash-completion/completions/$pkgname/ } _test() { pkgdesc="Open vSwitch testing utilities" depends="py2-$pkgname=$pkgver-r$pkgrel py2-twisted" cd "$pkgdir" local _py2site=$(python2 -c "import site; print(site.getsitepackages()[0])") _mv_files \ usr/bin/ovs-l3ping \ usr/bin/ovs-pcap \ usr/bin/ovs-tcpdump \ usr/bin/ovs-tcpundump \ usr/bin/ovs-test \ usr/bin/ovs-testcontroller \ usr/bin/ovs-vlan-test \ ${_py2site#/}/ovstest } _py2() { pkgdesc="Python modules for Open vSwitch" depends="py2-six" cd "$pkgdir" _mv_files usr/lib/python2* } _py3() { pkgdesc="Python modules for Open vSwitch" depends="py3-six" cd "$pkgdir" _mv_files usr/lib/python3* } _ovn() { pkgdesc="Open Virtual Network support for openvswitch" cd "$pkgdir" _mv_files \ usr/share/openvswitch/bugtool-plugins/network-status/ovn.xml \ usr/share/openvswitch/scripts/ovn-bugtool-sbctl-show \ usr/share/openvswitch/scripts/ovn-ctl \ usr/share/openvswitch/scripts/ovn-bugtool-nbctl-show \ usr/share/openvswitch/scripts/ovn-bugtool-sbctl-lflow-list \ usr/share/openvswitch/scripts/ovndb-servers.ocf \ usr/share/openvswitch/ovn-sb.ovsschema \ usr/share/openvswitch/ovn-nb.ovsschema \ usr/bin/ovn-sbctl \ usr/bin/ovn-northd \ usr/bin/ovn-trace \ usr/bin/ovn-detrace \ usr/bin/ovn-nbctl \ usr/bin/ovn-controller-vtep \ usr/bin/ovn-controller \ usr/bin/ovn-docker-underlay-driver \ usr/bin/ovn-docker-overlay-driver } sha512sums="6122651fcdeb64793ae7cdd379f55f87ff1f989d6cb5ab67ad83125c566508b474e1875f024d2f2fc2159b90baf383d5e792cbf515a96266126f0f05511ceb0d openvswitch-2.9.2.tar.gz 097d4721a78fff749c534910d98543778474406bd61b469b88a0d981a2a380556444437ec44278cead6d8688c45a38b2acbf1551acb9ab38d048f413728e3b88 ovsdb-server.initd b1588d076bbfc7ef2dd46fce8e46186f40cbbc4667697f7ac13ddc68e34568fdab315fde47838de7f6d32916853190336cfe3735f672ad7cb624ae14dbff55a5 ovsdb-server.confd 4bff37f8bed32d5327b4b0433984ab8ffdce77f618034aa6ffd1ad4a7caa00703ea2bef312876dce5aafa4c17fe06dddd75e5c05c10e13bf8f5c3805a0654a96 ovs-vswitchd.initd 346aea099f51707d2b4fc9fdc8c1502582723fb4e00c4d5d1624b0378c94dfb76674fa95e2af894f36169df52109dbe441ee6a45aa744584d9e4c74d15a46c1d ovs-vswitchd.confd 1e08aa5ac6ce55b97256478b9243c8a4c92a42a97fc70ea0439c832b12a775af28a127224ae6c4ce01642dde65f76c610a44105912338bf443d8ea390c2d9ccf ovs-modules.initd c5f137bce28bf80c1e5a6ca18722dae9a5ecff03d20bf92642270951bbbb499e5fb05a08163442720e866d135fcd7426b88add0b42ed240d5f0c068aa9fcd9da musl-if_packet.patch eca5b19954e6df7dc17c582e22e4b27533710d077039a54a2ba291ae7d3a2706872f5bcad8795ca58e06ca7e45a9b8c4c51e99aedbabd0e87623972ebcdca230 ifupdown-alpine.patch 2874bc7b4552c21d21e06f73c63ac5cf72d7db5252b51a0ac17b58e8cd536453c15e494c59b432aacba03be5cc309a4074ccdac11420a1613c22aa3fe07def7f readme.debian.patch"