diff --git a/common/debian/Makefile b/common/debian/Makefile index bb4331085..e63ba8627 100644 --- a/common/debian/Makefile +++ b/common/debian/Makefile @@ -21,6 +21,7 @@ PACKAGES = contrail-libs-deb \ contrail-dns-deb \ contrail-vrouter-deb \ contrail-vrouter-init-deb \ + contrail-vrouter-src-dkms-deb \ contrail-config-venv-deb \ contrail-config-deb \ contrail-config-extension-deb \ diff --git a/common/debian/contrail-vrouter-src-dkms/debian/changelog.in b/common/debian/contrail-vrouter-src-dkms/debian/changelog.in new file mode 100644 index 000000000..b0dfd1f20 --- /dev/null +++ b/common/debian/contrail-vrouter-src-dkms/debian/changelog.in @@ -0,0 +1,6 @@ +contrail-vrouter-src-dkms (BUILDTAG) anandhk; urgency=low + + [anandhk ] + * debian/changelog: changelog + + -- anandhk Fri, 11 April 2014 8:00:11 +0800 diff --git a/common/debian/contrail-vrouter-src-dkms/debian/compat b/common/debian/contrail-vrouter-src-dkms/debian/compat new file mode 100644 index 000000000..45a4fb75d --- /dev/null +++ b/common/debian/contrail-vrouter-src-dkms/debian/compat @@ -0,0 +1 @@ +8 diff --git a/common/debian/contrail-vrouter-src-dkms/debian/control b/common/debian/contrail-vrouter-src-dkms/debian/control new file mode 100644 index 000000000..590c52ddb --- /dev/null +++ b/common/debian/contrail-vrouter-src-dkms/debian/control @@ -0,0 +1,14 @@ +Source: contrail-vrouter-src-dkms +Maintainer: anandhk +Section: misc +Priority: optional +Standards-Version: 1.0 +Build-Depends: + +Package: contrail-vrouter-src-dkms +Architecture: all +Maintainer: anandhk +Depends: dkms +Section: contrail-vrouter-src-dkms +Priority: extra +Description: Contrail Openstack vRouter kernel source debian package diff --git a/common/debian/contrail-vrouter-src-dkms/debian/copyright b/common/debian/contrail-vrouter-src-dkms/debian/copyright new file mode 100644 index 000000000..e4f9f21db --- /dev/null +++ b/common/debian/contrail-vrouter-src-dkms/debian/copyright @@ -0,0 +1,5 @@ +Name: contrail-vrouter-src-dkms +Maintainer: anandhk +License: Commercial +Files: * + Copyright (c) 2014 Juniper Networks, Inc. All rights reserved. diff --git a/common/debian/contrail-vrouter-src-dkms/debian/postinst.in b/common/debian/contrail-vrouter-src-dkms/debian/postinst.in new file mode 100644 index 000000000..75c92c9d3 --- /dev/null +++ b/common/debian/contrail-vrouter-src-dkms/debian/postinst.in @@ -0,0 +1,12 @@ +#!/bin/sh +set -e +version="BUILDTAG" + +case "$1" in + configure) + cd /usr/src/vrouter-$version/ + dkms add -m vrouter -v $version + ;; + *) + ;; +esac diff --git a/common/debian/contrail-vrouter-src-dkms/debian/prerm.in b/common/debian/contrail-vrouter-src-dkms/debian/prerm.in new file mode 100644 index 000000000..518727c8d --- /dev/null +++ b/common/debian/contrail-vrouter-src-dkms/debian/prerm.in @@ -0,0 +1,16 @@ +#!/bin/sh + +set -e +version="BUILDTAG" + +case "$1" in + upgrade|remove) + cd /usr/src/vrouter-$version/ + dkms remove -m vrouter -v $version --all + make clean + cd /usr/src + rm -rf vrouter-$version + ;; + *) + ;; +esac diff --git a/common/debian/contrail-vrouter-src-dkms/debian/rules b/common/debian/contrail-vrouter-src-dkms/debian/rules new file mode 100755 index 000000000..77b4e66ed --- /dev/null +++ b/common/debian/contrail-vrouter-src-dkms/debian/rules @@ -0,0 +1,143 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. +# Uncomment this to turn on verbose mode. +# +export DH_VERBOSE=1 + +export BUILDTIME := $(shell date -u +%y%m%d%H%M) +export SB_TOP := $(shell pwd | sed -re "s/(.*)\/tools\/packaging\/(.*)/\1/") +export buildroot := $(SB_TOP)/build/debian/contrail-vrouter-src-dkms +export _srcdir := ${SB_TOP}/vrouter/ +export _sandesh_srcdir := ${SB_TOP}/tools/sandesh/ +export _builddir := $(SB_TOP)/build/debug/vrouter/ + +BUILDTAG = +ifdef TAG +BUILDTAG = $(TAG) +else +BUILDTAG = $(BUILDTIME) +endif + +export _target_srcroot := /usr/src/vrouter-$(BUILDTAG)/ +export _packagedir := $(buildroot)/$(_target_srcroot) +export _package_builddir := $(buildroot)/$(_target_builddir) +export _arch := x86_64 + + +%: + dh $@ --tmpdir=${buildroot} --destdir=${SB_TOP}/build/debian + +override_dh_auto_build: + sed 's,BUILDTAG,$(BUILDTAG),g' debian/changelog.in > debian/changelog + sed 's,BUILDTAG,$(BUILDTAG),g' debian/postinst.in > debian/postinst + sed 's,BUILDTAG,$(BUILDTAG),g' debian/prerm.in > debian/prerm + (cd ${SB_TOP}; scons --target=$(_arch) $(BUILD_ARCH_TARGETS) $(_srcdir)/sandesh) + +override_dh_auto_install: + install -d -m 755 $(_packagedir)/dp-core + install -d -m 755 $(_packagedir)/include + install -d -m 755 $(_packagedir)/linux + install -d -m 755 $(_packagedir)/sandesh + install -d -m 755 $(_packagedir)/sandesh/gen-c/ + install -d -m 755 $(_packagedir)/sandesh/library/c + install -d -m 755 $(_packagedir)/sandesh/library/c/protocol + install -d -m 755 $(_packagedir)/sandesh/library/c/transport + + echo "MAKE[0]=\"'make' -C . KERNELDIR=/lib/modules/\$${kernelver}/build\"" >> $(_packagedir)/dkms.conf + echo "CLEAN[0]=\"'make' -C . KERNELDIR=/lib/modules/\$${kernelver}/build\"" >> $(_packagedir)/dkms.conf + echo "DEST_MODULE_LOCATION[0]=\"/kernel/extra/net/vrouter\"" >> $(_packagedir)/dkms.conf + echo "BUILT_MODULE_NAME[0]=\"vrouter\"" >> $(_packagedir)/dkms.conf + echo "PACKAGE_NAME=vrouter" >> $(_packagedir)/dkms.conf + echo "PACKAGE_VERSION=$(BUILDTAG)" >> $(_packagedir)/dkms.conf + echo "AUTOINSTALL=\"yes\"" >> $(_packagedir)/dkms.conf + + + install -p -m 755 $(_srcdir)/dp-core/SConscript $(_packagedir)/dp-core/SConscript + install -p -m 755 $(_srcdir)/dp-core/vnsw_ip4_mtrie.c $(_packagedir)/dp-core/vnsw_ip4_mtrie.c + install -p -m 755 $(_srcdir)/dp-core/vr_bridge.c $(_packagedir)/dp-core/vr_bridge.c + install -p -m 755 $(_srcdir)/dp-core/vr_btable.c $(_packagedir)/dp-core/vr_btable.c + install -p -m 755 $(_srcdir)/dp-core/vr_datapath.c $(_packagedir)/dp-core/vr_datapath.c + install -p -m 755 $(_srcdir)/dp-core/vr_flow.c $(_packagedir)/dp-core/vr_flow.c + install -p -m 755 $(_srcdir)/dp-core/vr_fragment.c $(_packagedir)/dp-core/vr_fragment.c + install -p -m 755 $(_srcdir)/dp-core/vr_htable.c $(_packagedir)/dp-core/vr_htable.c + install -p -m 755 $(_srcdir)/dp-core/vr_index_table.c $(_packagedir)/dp-core/vr_index_table.c + install -p -m 755 $(_srcdir)/dp-core/vr_interface.c $(_packagedir)/dp-core/vr_interface.c + install -p -m 755 $(_srcdir)/dp-core/vr_mcast.c $(_packagedir)/dp-core/vr_mcast.c + install -p -m 755 $(_srcdir)/dp-core/vr_message.c $(_packagedir)/dp-core/vr_message.c + install -p -m 755 $(_srcdir)/dp-core/vr_mirror.c $(_packagedir)/dp-core/vr_mirror.c + install -p -m 755 $(_srcdir)/dp-core/vr_mpls.c $(_packagedir)/dp-core/vr_mpls.c + install -p -m 755 $(_srcdir)/dp-core/vr_nexthop.c $(_packagedir)/dp-core/vr_nexthop.c + install -p -m 755 $(_srcdir)/dp-core/vrouter.c $(_packagedir)/dp-core/vrouter.c + install -p -m 755 $(_srcdir)/dp-core/vr_packet.c $(_packagedir)/dp-core/vr_packet.c + install -p -m 755 $(_srcdir)/dp-core/vr_proto_ip.c $(_packagedir)/dp-core/vr_proto_ip.c + install -p -m 755 $(_srcdir)/dp-core/vr_queue.c $(_packagedir)/dp-core/vr_queue.c + install -p -m 755 $(_srcdir)/dp-core/vr_response.c $(_packagedir)/dp-core/vr_response.c + install -p -m 755 $(_srcdir)/dp-core/vr_route.c $(_packagedir)/dp-core/vr_route.c + install -p -m 755 $(_srcdir)/dp-core/vr_sandesh.c $(_packagedir)/dp-core/vr_sandesh.c + install -p -m 755 $(_srcdir)/dp-core/vr_stats.c $(_packagedir)/dp-core/vr_stats.c + install -p -m 755 $(_srcdir)/dp-core/vr_vrf_assign.c $(_packagedir)/dp-core/vr_vrf_assign.c + install -p -m 755 $(_srcdir)/dp-core/vr_vxlan.c $(_packagedir)/dp-core/vr_vxlan.c + + install -p -m 755 $(_srcdir)/include/nl_util.h $(_packagedir)/include/nl_util.h + install -p -m 755 $(_srcdir)/include/udp_util.h $(_packagedir)/include/udp_util.h + install -p -m 755 $(_srcdir)/include/ulinux.h $(_packagedir)/include/ulinux.h + install -p -m 755 $(_srcdir)/include/vhost.h $(_packagedir)/include/vhost.h + install -p -m 755 $(_srcdir)/include/vnsw_ip4_mtrie.h $(_packagedir)/include/vnsw_ip4_mtrie.h + install -p -m 755 $(_srcdir)/include/vr_bridge.h $(_packagedir)/include/vr_bridge.h + install -p -m 755 $(_srcdir)/include/vr_btable.h $(_packagedir)/include/vr_btable.h + install -p -m 755 $(_srcdir)/include/vr_compat.h $(_packagedir)/include/vr_compat.h + install -p -m 755 $(_srcdir)/include/vr_defs.h $(_packagedir)/include/vr_defs.h + install -p -m 755 $(_srcdir)/include/vr_flow.h $(_packagedir)/include/vr_flow.h + install -p -m 755 $(_srcdir)/include/vr_fragment.h $(_packagedir)/include/vr_fragment.h + install -p -m 755 $(_srcdir)/include/vr_genetlink.h $(_packagedir)/include/vr_genetlink.h + install -p -m 755 $(_srcdir)/include/vr_hash.h $(_packagedir)/include/vr_hash.h + install -p -m 755 $(_srcdir)/include/vr_htable.h $(_packagedir)/include/vr_htable.h + install -p -m 755 $(_srcdir)/include/vr_index_table.h $(_packagedir)/include/vr_index_table.h + install -p -m 755 $(_srcdir)/include/vr_interface.h $(_packagedir)/include/vr_interface.h + install -p -m 755 $(_srcdir)/include/vr_linux.h $(_packagedir)/include/vr_linux.h + install -p -m 755 $(_srcdir)/include/vr_mcast.h $(_packagedir)/include/vr_mcast.h + install -p -m 755 $(_srcdir)/include/vr_message.h $(_packagedir)/include/vr_message.h + install -p -m 755 $(_srcdir)/include/vr_mirror.h $(_packagedir)/include/vr_mirror.h + install -p -m 755 $(_srcdir)/include/vr_mpls.h $(_packagedir)/include/vr_mpls.h + install -p -m 755 $(_srcdir)/include/vr_nexthop.h $(_packagedir)/include/vr_nexthop.h + install -p -m 755 $(_srcdir)/include/vr_os.h $(_packagedir)/include/vr_os.h + install -p -m 755 $(_srcdir)/include/vrouter.h $(_packagedir)/include/vrouter.h + install -p -m 755 $(_srcdir)/include/vr_packet.h $(_packagedir)/include/vr_packet.h + install -p -m 755 $(_srcdir)/include/vr_proto.h $(_packagedir)/include/vr_proto.h + install -p -m 755 $(_srcdir)/include/vr_queue.h $(_packagedir)/include/vr_queue.h + install -p -m 755 $(_srcdir)/include/vr_response.h $(_packagedir)/include/vr_response.h + install -p -m 755 $(_srcdir)/include/vr_route.h $(_packagedir)/include/vr_route.h + install -p -m 755 $(_srcdir)/include/vr_sandesh.h $(_packagedir)/include/vr_sandesh.h + install -p -m 755 $(_srcdir)/include/vr_vxlan.h $(_packagedir)/include/vr_vxlan.h + + install -p -m 755 $(_srcdir)/linux/vhost_dev.c $(_packagedir)/linux/vhost_dev.c + install -p -m 755 $(_srcdir)/linux/vr_genetlink.c $(_packagedir)/linux/vr_genetlink.c + install -p -m 755 $(_srcdir)/linux/vr_host_interface.c $(_packagedir)/linux/vr_host_interface.c + install -p -m 755 $(_srcdir)/linux/vr_mem.c $(_packagedir)/linux/vr_mem.c + install -p -m 755 $(_srcdir)/linux/vrouter_mod.c $(_packagedir)/linux/vrouter_mod.c + + install -p -m 755 $(_builddir)/sandesh/gen-c/vr_types.c $(_packagedir)/sandesh/gen-c/vr_types.c + install -p -m 755 $(_builddir)/sandesh/gen-c/vr_types.h $(_packagedir)/sandesh/gen-c/vr_types.h + + install -p -m 755 $(_sandesh_srcdir)/library/c/sandesh.c $(_packagedir)/sandesh/library/c/sandesh.c + install -p -m 755 $(_sandesh_srcdir)/library/c/sandesh.h $(_packagedir)/sandesh/library/c/sandesh.h + install -p -m 755 $(_sandesh_srcdir)/library/c/thrift.h $(_packagedir)/sandesh/library/c/thrift.h + + install -p -m 755 $(_sandesh_srcdir)/library/c/protocol/thrift_binary_protocol.c $(_packagedir)/sandesh/library/c/protocol/thrift_binary_protocol.c + install -p -m 755 $(_sandesh_srcdir)/library/c/protocol/thrift_binary_protocol.h $(_packagedir)/sandesh/library/c/protocol/thrift_binary_protocol.h + install -p -m 755 $(_sandesh_srcdir)/library/c/protocol/thrift_protocol.c $(_packagedir)/sandesh/library/c/protocol/thrift_protocol.c + install -p -m 755 $(_sandesh_srcdir)/library/c/protocol/thrift_protocol.h $(_packagedir)/sandesh/library/c/protocol/thrift_protocol.h + + install -p -m 755 $(_sandesh_srcdir)/library/c/transport/thrift_fake_transport.c $(_packagedir)/sandesh/library/c/transport/thrift_fake_transport.c + install -p -m 755 $(_sandesh_srcdir)/library/c/transport/thrift_fake_transport.h $(_packagedir)/sandesh/library/c/transport/thrift_fake_transport.h + install -p -m 755 $(_sandesh_srcdir)/library/c/transport/thrift_memory_buffer.c $(_packagedir)/sandesh/library/c/transport/thrift_memory_buffer.c + install -p -m 755 $(_sandesh_srcdir)/library/c/transport/thrift_memory_buffer.h $(_packagedir)/sandesh/library/c/transport/thrift_memory_buffer.h + install -p -m 755 $(_sandesh_srcdir)/library/c/transport/thrift_transport.c $(_packagedir)/sandesh/library/c/transport/thrift_transport.c + install -p -m 755 $(_sandesh_srcdir)/library/c/transport/thrift_transport.h $(_packagedir)/sandesh/library/c/transport/thrift_transport.h + + install -p -m 755 $(_srcdir)/Makefile $(_packagedir)/Makefile diff --git a/common/rpm/Makefile b/common/rpm/Makefile index 6c2935aa6..dd356b95a 100644 --- a/common/rpm/Makefile +++ b/common/rpm/Makefile @@ -95,6 +95,10 @@ contrail-vrouter: $(PREP) $(LOCAL_PY) @echo making rpm for contrail-vrouter rpmbuild $(RPMBLDOPTS) contrail-vrouter.spec $(G_TAG) $(RPM_PY) +contrail-vrouter-src-dkms: $(PREP) $(LOCAL_PY) + @echo making rpm for contrail-vrouter-src-dkms + rpmbuild $(RPMBLDOPTS) contrail-vrouter-src-dkms.spec $(G_TAG) + contrail-nova-vif: $(PREP) $(LOCAL_PY) @echo making rpm for contrail-nova-vif rpmbuild $(RPMBLDOPTS) contrail-nova-vif.spec $(G_TAG) @@ -212,7 +216,7 @@ contrail-database: $(PREP) $(LOCAL_PY) all: $(PREP) contrail-analytics contrail-api-extension contrail-api-lib contrail-config \ contrail-control contrail-dns contrail-interface-name contrail-libs contrail-vrouter \ contrail-setup contrail-openstack-all contrail-webui contrail-nodejs venv-packages \ - contrail-database contrail-nova-vif + contrail-database contrail-nova-vif contrail-vrouter-src-dkms clean: @echo clean diff --git a/common/rpm/contrail-vrouter-src-dkms.spec b/common/rpm/contrail-vrouter-src-dkms.spec new file mode 100644 index 000000000..09d73cc63 --- /dev/null +++ b/common/rpm/contrail-vrouter-src-dkms.spec @@ -0,0 +1,267 @@ +# view contents of rpm file: rpm -qlp .rpm + + +%if 0%{?_buildTag:1} +%define _relstr %{_buildTag} +%else +%define _relstr %(date -u +%y%m%d%H%M) +%endif + +%if 0%{?_srcVer:1} +%define _verstr %{_srcVer} +%else +%define _verstr 1 +%endif + +%define _srcdir /usr/src/vrouter-%{_relstr} + +%{echo: "Building release %{_relstr}\n"} + +Name: contrail-vrouter-src-dkms +Version: %{_verstr} +Release: %{_relstr}%{?dist} +Summary: Contrail vRouter source DKMS %{?_gitVer} + +Group: Applications/System +License: Commercial +URL: http://www.juniper.net/ +Vendor: Juniper Networks Inc + +Requires: dkms + +%description +Contrail Virtual Router Kernel Module Source DKMS package + +BuildRequires: systemd-units + +%build +pushd %{_builddir}/.. +scons -U --target=%{_target_cpu} vrouter/sandesh +popd + +%prep + +%install + +#Setup directories +rm -rf %{buildroot} +install -d -m 755 %{buildroot}%{_srcdir} +install -d -m 755 %{buildroot}%{_srcdir}/dp-core +install -d -m 755 %{buildroot}%{_srcdir}/include +install -d -m 755 %{buildroot}%{_srcdir}/linux +install -d -m 755 %{buildroot}%{_srcdir}/sandesh +install -d -m 755 %{buildroot}%{_srcdir}/sandesh/gen-c +install -d -m 755 %{buildroot}%{_srcdir}/sandesh/library/ +install -d -m 755 %{buildroot}%{_srcdir}/sandesh/library/c +install -d -m 755 %{buildroot}%{_srcdir}/sandesh/library/c/protocol +install -d -m 755 %{buildroot}%{_srcdir}/sandesh/library/c/transport + +pushd %{_builddir}/.. + +echo "MAKE[0]=\"'make' -C . KERNELDIR=/lib/modules/\${kernelver}/build\"" >> %{buildroot}%{_srcdir}/dkms.conf +echo "CLEAN[0]=\"'make' -C . KERNELDIR=/lib/modules/\${kernelver}/build\"" >> %{buildroot}%{_srcdir}/dkms.conf +echo "DEST_MODULE_LOCATION[0]=\"/extra/net/vrouter\"" >> %{buildroot}%{_srcdir}/dkms.conf +echo "BUILT_MODULE_NAME[0]=\"vrouter\"" >> %{buildroot}%{_srcdir}/dkms.conf +echo "PACKAGE_NAME=vrouter" >> %{buildroot}%{_srcdir}/dkms.conf +echo "PACKAGE_VERSION=%{_relstr}" >> %{buildroot}%{_srcdir}/dkms.conf +echo "AUTOINSTALL=\"yes\"" >> %{buildroot}%{_srcdir}/dkms.conf + +install -D -p -m 755 vrouter/dp-core/vnsw_ip4_mtrie.c %{buildroot}%{_srcdir}/dp-core/vnsw_ip4_mtrie.c +install -D -p -m 755 vrouter/dp-core/vr_bridge.c %{buildroot}%{_srcdir}/dp-core/vr_bridge.c +install -D -p -m 755 vrouter/dp-core/vr_btable.c %{buildroot}%{_srcdir}/dp-core/vr_btable.c +install -D -p -m 755 vrouter/dp-core/vr_datapath.c %{buildroot}%{_srcdir}/dp-core/vr_datapath.c +install -D -p -m 755 vrouter/dp-core/vr_flow.c %{buildroot}%{_srcdir}/dp-core/vr_flow.c +install -D -p -m 755 vrouter/dp-core/vr_fragment.c %{buildroot}%{_srcdir}/dp-core/vr_fragment.c +install -D -p -m 755 vrouter/dp-core/vr_htable.c %{buildroot}%{_srcdir}/dp-core/vr_htable.c +install -D -p -m 755 vrouter/dp-core/vr_index_table.c %{buildroot}%{_srcdir}/dp-core/vr_index_table.c +install -D -p -m 755 vrouter/dp-core/vr_interface.c %{buildroot}%{_srcdir}/dp-core/vr_interface.c +install -D -p -m 755 vrouter/dp-core/vr_mcast.c %{buildroot}%{_srcdir}/dp-core/vr_mcast.c +install -D -p -m 755 vrouter/dp-core/vr_message.c %{buildroot}%{_srcdir}/dp-core/vr_message.c +install -D -p -m 755 vrouter/dp-core/vr_mirror.c %{buildroot}%{_srcdir}/dp-core/vr_mirror.c +install -D -p -m 755 vrouter/dp-core/vr_mpls.c %{buildroot}%{_srcdir}/dp-core/vr_mpls.c +install -D -p -m 755 vrouter/dp-core/vr_nexthop.c %{buildroot}%{_srcdir}/dp-core/vr_nexthop.c +install -D -p -m 755 vrouter/dp-core/vrouter.c %{buildroot}%{_srcdir}/dp-core/vrouter.c +install -D -p -m 755 vrouter/dp-core/vr_packet.c %{buildroot}%{_srcdir}/dp-core/vr_packet.c +install -D -p -m 755 vrouter/dp-core/vr_proto_ip.c %{buildroot}%{_srcdir}/dp-core/vr_proto_ip.c +install -D -p -m 755 vrouter/dp-core/vr_queue.c %{buildroot}%{_srcdir}/dp-core/vr_queue.c +install -D -p -m 755 vrouter/dp-core/vr_response.c %{buildroot}%{_srcdir}/dp-core/vr_response.c +install -D -p -m 755 vrouter/dp-core/vr_route.c %{buildroot}%{_srcdir}/dp-core/vr_route.c +install -D -p -m 755 vrouter/dp-core/vr_sandesh.c %{buildroot}%{_srcdir}/dp-core/vr_sandesh.c +install -D -p -m 755 vrouter/dp-core/vr_stats.c %{buildroot}%{_srcdir}/dp-core/vr_stats.c +install -D -p -m 755 vrouter/dp-core/vr_vrf_assign.c %{buildroot}%{_srcdir}/dp-core/vr_vrf_assign.c +install -D -p -m 755 vrouter/dp-core/vr_vxlan.c %{buildroot}%{_srcdir}/dp-core/vr_vxlan.c + +install -D -p -m 755 vrouter/include/nl_util.h %{buildroot}%{_srcdir}/include/nl_util.h +install -D -p -m 755 vrouter/include/udp_util.h %{buildroot}%{_srcdir}/include/udp_util.h +install -D -p -m 755 vrouter/include/ulinux.h %{buildroot}%{_srcdir}/include/ulinux.h +install -D -p -m 755 vrouter/include/vhost.h %{buildroot}%{_srcdir}/include/vhost.h +install -D -p -m 755 vrouter/include/vnsw_ip4_mtrie.h %{buildroot}%{_srcdir}/include/vnsw_ip4_mtrie.h +install -D -p -m 755 vrouter/include/vr_bridge.h %{buildroot}%{_srcdir}/include/vr_bridge.h +install -D -p -m 755 vrouter/include/vr_btable.h %{buildroot}%{_srcdir}/include/vr_btable.h +install -D -p -m 755 vrouter/include/vr_compat.h %{buildroot}%{_srcdir}/include/vr_compat.h +install -D -p -m 755 vrouter/include/vr_defs.h %{buildroot}%{_srcdir}/include/vr_defs.h +install -D -p -m 755 vrouter/include/vr_flow.h %{buildroot}%{_srcdir}/include/vr_flow.h +install -D -p -m 755 vrouter/include/vr_fragment.h %{buildroot}%{_srcdir}/include/vr_fragment.h +install -D -p -m 755 vrouter/include/vr_genetlink.h %{buildroot}%{_srcdir}/include/vr_genetlink.h +install -D -p -m 755 vrouter/include/vr_hash.h %{buildroot}%{_srcdir}/include/vr_hash.h +install -D -p -m 755 vrouter/include/vr_htable.h %{buildroot}%{_srcdir}/include/vr_htable.h +install -D -p -m 755 vrouter/include/vr_index_table.h %{buildroot}%{_srcdir}/include/vr_index_table.h +install -D -p -m 755 vrouter/include/vr_interface.h %{buildroot}%{_srcdir}/include/vr_interface.h +install -D -p -m 755 vrouter/include/vr_linux.h %{buildroot}%{_srcdir}/include/vr_linux.h +install -D -p -m 755 vrouter/include/vr_mcast.h %{buildroot}%{_srcdir}/include/vr_mcast.h +install -D -p -m 755 vrouter/include/vr_message.h %{buildroot}%{_srcdir}/include/vr_message.h +install -D -p -m 755 vrouter/include/vr_mirror.h %{buildroot}%{_srcdir}/include/vr_mirror.h +install -D -p -m 755 vrouter/include/vr_mpls.h %{buildroot}%{_srcdir}/include/vr_mpls.h +install -D -p -m 755 vrouter/include/vr_nexthop.h %{buildroot}%{_srcdir}/include/vr_nexthop.h +install -D -p -m 755 vrouter/include/vr_os.h %{buildroot}%{_srcdir}/include/vr_os.h +install -D -p -m 755 vrouter/include/vrouter.h %{buildroot}%{_srcdir}/include/vrouter.h +install -D -p -m 755 vrouter/include/vr_packet.h %{buildroot}%{_srcdir}/include/vr_packet.h +install -D -p -m 755 vrouter/include/vr_proto.h %{buildroot}%{_srcdir}/include/vr_proto.h +install -D -p -m 755 vrouter/include/vr_queue.h %{buildroot}%{_srcdir}/include/vr_queue.h +install -D -p -m 755 vrouter/include/vr_response.h %{buildroot}%{_srcdir}/include/vr_response.h +install -D -p -m 755 vrouter/include/vr_route.h %{buildroot}%{_srcdir}/include/vr_route.h +install -D -p -m 755 vrouter/include/vr_sandesh.h %{buildroot}%{_srcdir}/include/vr_sandesh.h +install -D -p -m 755 vrouter/include/vr_vxlan.h %{buildroot}%{_srcdir}/include/vr_vxlan.h + +install -D -p -m 755 vrouter/linux/vhost_dev.c %{buildroot}%{_srcdir}/linux/vhost_dev.c +install -D -p -m 755 vrouter/linux/vr_genetlink.c %{buildroot}%{_srcdir}/linux/vr_genetlink.c +install -D -p -m 755 vrouter/linux/vr_host_interface.c \ + %{buildroot}%{_srcdir}/linux/vr_host_interface.c +install -D -p -m 755 vrouter/linux/vr_mem.c %{buildroot}%{_srcdir}/linux/vr_mem.c +install -D -p -m 755 vrouter/linux/vrouter_mod.c %{buildroot}%{_srcdir}/linux/vrouter_mod.c + +install -D -p -m 755 build/debug/vrouter/sandesh/gen-c/vr_types.c \ + %{buildroot}%{_srcdir}/sandesh/gen-c/vr_types.c +install -D -p -m 755 build/debug/vrouter/sandesh/gen-c/vr_types.h \ + %{buildroot}%{_srcdir}/sandesh/gen-c/vr_types.h + +install -D -p -m 755 tools/sandesh//library/c/sandesh.c \ + %{buildroot}%{_srcdir}/sandesh/library/c/sandesh.c +install -D -p -m 755 tools/sandesh/library/c/sandesh.h \ + %{buildroot}%{_srcdir}/sandesh/library/c/sandesh.h +install -D -p -m 755 tools/sandesh/library/c/thrift.h %{buildroot}%{_srcdir}/sandesh/library/c/thrift.h + +install -D -p -m 755 tools/sandesh/library/c/protocol/thrift_binary_protocol.c \ + %{buildroot}%{_srcdir}/sandesh/library/c/protocol/thrift_binary_protocol.c +install -D -p -m 755 tools/sandesh/library/c/protocol/thrift_binary_protocol.h \ + %{buildroot}%{_srcdir}/sandesh/library/c/protocol/thrift_binary_protocol.h +install -D -p -m 755 tools/sandesh/library/c/protocol/thrift_protocol.c \ + %{buildroot}%{_srcdir}/sandesh/library/c/protocol/thrift_protocol.c +install -D -p -m 755 tools/sandesh/library/c/protocol/thrift_protocol.h \ + %{buildroot}%{_srcdir}/sandesh/library/c/protocol/thrift_protocol.h + +install -D -p -m 755 tools/sandesh/library/c/transport/thrift_fake_transport.c \ + %{buildroot}%{_srcdir}/sandesh/library/c/transport/thrift_fake_transport.c +install -D -p -m 755 tools/sandesh/library/c/transport/thrift_fake_transport.h \ + %{buildroot}%{_srcdir}/sandesh/library/c/transport/thrift_fake_transport.h +install -D -p -m 755 tools/sandesh/library/c/transport/thrift_memory_buffer.c \ + %{buildroot}%{_srcdir}/sandesh/library/c/transport/thrift_memory_buffer.c +install -D -p -m 755 tools/sandesh/library/c/transport/thrift_memory_buffer.h \ + %{buildroot}%{_srcdir}/sandesh/library/c/transport/thrift_memory_buffer.h +install -D -p -m 755 tools/sandesh/library/c/transport/thrift_transport.c \ + %{buildroot}%{_srcdir}/sandesh/library/c/transport/thrift_transport.c +install -D -p -m 755 tools/sandesh/library/c/transport/thrift_transport.h \ + %{buildroot}%{_srcdir}/sandesh/library/c/transport/thrift_transport.h + +install -D -p -m 755 vrouter/Makefile %{buildroot}%{_srcdir}/Makefile + +popd + + +%post +cd /usr/src/vrouter-%{_relstr} +dkms add -m vrouter -v %{_relstr} + +%preun +cd /usr/src/vrouter-%{_relstr} +dkms remove -m vrouter -v %{_relstr} --all +make clean +rm -rf /usr/src/vrouter-%{_relstr} + +%files +%defattr(-,root,root,-) + +%{_srcdir}/dp-core/vnsw_ip4_mtrie.c +%{_srcdir}/dp-core/vr_bridge.c +%{_srcdir}/dp-core/vr_btable.c +%{_srcdir}/dp-core/vr_datapath.c +%{_srcdir}/dp-core/vr_flow.c +%{_srcdir}/dp-core/vr_fragment.c +%{_srcdir}/dp-core/vr_htable.c +%{_srcdir}/dp-core/vr_index_table.c +%{_srcdir}/dp-core/vr_interface.c +%{_srcdir}/dp-core/vr_mcast.c +%{_srcdir}/dp-core/vr_message.c +%{_srcdir}/dp-core/vr_mirror.c +%{_srcdir}/dp-core/vr_mpls.c +%{_srcdir}/dp-core/vr_nexthop.c +%{_srcdir}/dp-core/vrouter.c +%{_srcdir}/dp-core/vr_packet.c +%{_srcdir}/dp-core/vr_proto_ip.c +%{_srcdir}/dp-core/vr_queue.c +%{_srcdir}/dp-core/vr_response.c +%{_srcdir}/dp-core/vr_route.c +%{_srcdir}/dp-core/vr_sandesh.c +%{_srcdir}/dp-core/vr_stats.c +%{_srcdir}/dp-core/vr_vrf_assign.c +%{_srcdir}/dp-core/vr_vxlan.c + +%{_srcdir}/include/nl_util.h +%{_srcdir}/include/udp_util.h +%{_srcdir}/include/ulinux.h +%{_srcdir}/include/vhost.h +%{_srcdir}/include/vnsw_ip4_mtrie.h +%{_srcdir}/include/vr_bridge.h +%{_srcdir}/include/vr_btable.h +%{_srcdir}/include/vr_compat.h +%{_srcdir}/include/vr_defs.h +%{_srcdir}/include/vr_flow.h +%{_srcdir}/include/vr_fragment.h +%{_srcdir}/include/vr_genetlink.h +%{_srcdir}/include/vr_hash.h +%{_srcdir}/include/vr_htable.h +%{_srcdir}/include/vr_index_table.h +%{_srcdir}/include/vr_interface.h +%{_srcdir}/include/vr_linux.h +%{_srcdir}/include/vr_mcast.h +%{_srcdir}/include/vr_message.h +%{_srcdir}/include/vr_mirror.h +%{_srcdir}/include/vr_mpls.h +%{_srcdir}/include/vr_nexthop.h +%{_srcdir}/include/vr_os.h +%{_srcdir}/include/vrouter.h +%{_srcdir}/include/vr_packet.h +%{_srcdir}/include/vr_proto.h +%{_srcdir}/include/vr_queue.h +%{_srcdir}/include/vr_response.h +%{_srcdir}/include/vr_route.h +%{_srcdir}/include/vr_sandesh.h +%{_srcdir}/include/vr_vxlan.h + +%{_srcdir}/linux/vhost_dev.c +%{_srcdir}/linux/vr_genetlink.c +%{_srcdir}/linux/vr_host_interface.c +%{_srcdir}/linux/vr_mem.c +%{_srcdir}/linux/vrouter_mod.c + +%{_srcdir}/sandesh/gen-c/vr_types.c +%{_srcdir}/sandesh/gen-c/vr_types.h +%{_srcdir}/sandesh/library/c/sandesh.c +%{_srcdir}/sandesh/library/c/sandesh.h +%{_srcdir}/sandesh/library/c/thrift.h +%{_srcdir}/sandesh/library/c/protocol/thrift_binary_protocol.c +%{_srcdir}/sandesh/library/c/protocol/thrift_binary_protocol.h +%{_srcdir}/sandesh/library/c/protocol/thrift_protocol.c +%{_srcdir}/sandesh/library/c/protocol/thrift_protocol.h +%{_srcdir}/sandesh/library/c/transport/thrift_fake_transport.c +%{_srcdir}/sandesh/library/c/transport/thrift_fake_transport.h +%{_srcdir}/sandesh/library/c/transport/thrift_memory_buffer.c +%{_srcdir}/sandesh/library/c/transport/thrift_memory_buffer.h +%{_srcdir}/sandesh/library/c/transport/thrift_transport.c +%{_srcdir}/sandesh/library/c/transport/thrift_transport.h + +%{_srcdir}/Makefile +%{_srcdir}/dkms.conf + +%changelog +