From 0110dac18872ffe5f0426e0a44e69707951ea84e Mon Sep 17 00:00:00 2001 From: anand Date: Thu, 20 Feb 2014 11:36:42 +0530 Subject: [PATCH 1/4] Initial commit to support DKMS. Packaging for ubuntu --- common/debian/Makefile | 1 + .../debian/changelog.in | 6 + .../contrail-vrouter-src-dkms/debian/compat | 1 + .../contrail-vrouter-src-dkms/debian/control | 14 ++ .../debian/copyright | 5 + .../debian/postinst.in | 12 ++ .../contrail-vrouter-src-dkms/debian/prerm.in | 16 ++ .../contrail-vrouter-src-dkms/debian/rules | 146 ++++++++++++++++++ 8 files changed, 201 insertions(+) create mode 100644 common/debian/contrail-vrouter-src-dkms/debian/changelog.in create mode 100644 common/debian/contrail-vrouter-src-dkms/debian/compat create mode 100644 common/debian/contrail-vrouter-src-dkms/debian/control create mode 100644 common/debian/contrail-vrouter-src-dkms/debian/copyright create mode 100644 common/debian/contrail-vrouter-src-dkms/debian/postinst.in create mode 100644 common/debian/contrail-vrouter-src-dkms/debian/prerm.in create mode 100755 common/debian/contrail-vrouter-src-dkms/debian/rules diff --git a/common/debian/Makefile b/common/debian/Makefile index 7e846dd57..50365456b 100644 --- a/common/debian/Makefile +++ b/common/debian/Makefile @@ -12,6 +12,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..4c9a9bb17 --- /dev/null +++ b/common/debian/contrail-vrouter-src-dkms/debian/changelog.in @@ -0,0 +1,6 @@ +contrail-vrouter-src-dkms (BUILDTAG) rrugge; urgency=low + + [rrugge ] + * debian/changelog: changelog + + -- rrugge Mon, 11 Nov 2013 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..8f8fbba83 --- /dev/null +++ b/common/debian/contrail-vrouter-src-dkms/debian/control @@ -0,0 +1,14 @@ +Source: contrail-vrouter-src-dkms +Maintainer: rrugge +Section: misc +Priority: optional +Standards-Version: 1.0 +Build-Depends: + +Package: contrail-vrouter-src-dkms +Architecture: all +Maintainer: rrugge +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..3becf571b --- /dev/null +++ b/common/debian/contrail-vrouter-src-dkms/debian/copyright @@ -0,0 +1,5 @@ +Name: contrail-vrouter-src-dkms +Maintainer: rrugge +License: Commercial +Files: * + Copyright (c) 2013 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..f1c4afc31 --- /dev/null +++ b/common/debian/contrail-vrouter-src-dkms/debian/rules @@ -0,0 +1,146 @@ +#!/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 + +BUILDTAG = +ifdef TAG +BUILDTAG = $(TAG) +else +BUILDTAG = $(BUILDTIME) +endif + +export SB_TOP := $(shell pwd | sed -re "s/(.*)\/tools\/packaging\/(.*)/\1/") + +export BUILDTIME := $(shell date -u +%y%m%d%H%M) +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/ + +export _target_srcroot := /usr/src/vrouter-$(BUILDTAG)/ + +export _packagedir := $(buildroot)/$(_target_srcroot) +export _package_builddir := $(buildroot)/$(_target_builddir) + +export _arch := x86_64 +export BUILDTIME := $(shell date -u +%y%m%d%H%M) + +%: + 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 + + + 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 From 4a359c055ae887a785707e851baa331f6b129056 Mon Sep 17 00:00:00 2001 From: Anand H Krishnan Date: Fri, 21 Feb 2014 02:03:36 -0800 Subject: [PATCH 2/4] - RPM spec file for vrouter dkms package --- common/rpm/Makefile | 6 +- common/rpm/contrail-vrouter-src-dkms.spec | 266 ++++++++++++++++++++++ 2 files changed, 271 insertions(+), 1 deletion(-) create mode 100644 common/rpm/contrail-vrouter-src-dkms.spec diff --git a/common/rpm/Makefile b/common/rpm/Makefile index 93c48b785..04a05d877 100644 --- a/common/rpm/Makefile +++ b/common/rpm/Makefile @@ -94,6 +94,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) @@ -206,7 +210,7 @@ contrail-database: $(PREP) 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..d29f55418 --- /dev/null +++ b/common/rpm/contrail-vrouter-src-dkms.spec @@ -0,0 +1,266 @@ +# 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 + +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 + From 3dbc871dcb43b3b7200127cd1aaff0dcdc3aacc1 Mon Sep 17 00:00:00 2001 From: anandhk-juniper Date: Wed, 2 Apr 2014 14:45:12 +0530 Subject: [PATCH 3/4] Mark the AUTOINSTALL flag so that the module gets built as part of system upgrade --- .../contrail-vrouter-src-dkms/debian/rules | 21 ++++++++----------- common/rpm/contrail-vrouter-src-dkms.spec | 1 + 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/common/debian/contrail-vrouter-src-dkms/debian/rules b/common/debian/contrail-vrouter-src-dkms/debian/rules index f1c4afc31..77b4e66ed 100755 --- a/common/debian/contrail-vrouter-src-dkms/debian/rules +++ b/common/debian/contrail-vrouter-src-dkms/debian/rules @@ -9,6 +9,13 @@ # 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) @@ -16,22 +23,11 @@ else BUILDTAG = $(BUILDTIME) endif -export SB_TOP := $(shell pwd | sed -re "s/(.*)\/tools\/packaging\/(.*)/\1/") - -export BUILDTIME := $(shell date -u +%y%m%d%H%M) -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/ - export _target_srcroot := /usr/src/vrouter-$(BUILDTAG)/ - export _packagedir := $(buildroot)/$(_target_srcroot) export _package_builddir := $(buildroot)/$(_target_builddir) - export _arch := x86_64 -export BUILDTIME := $(shell date -u +%y%m%d%H%M) + %: dh $@ --tmpdir=${buildroot} --destdir=${SB_TOP}/build/debian @@ -58,6 +54,7 @@ override_dh_auto_install: 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 diff --git a/common/rpm/contrail-vrouter-src-dkms.spec b/common/rpm/contrail-vrouter-src-dkms.spec index d29f55418..09d73cc63 100644 --- a/common/rpm/contrail-vrouter-src-dkms.spec +++ b/common/rpm/contrail-vrouter-src-dkms.spec @@ -64,6 +64,7 @@ echo "DEST_MODULE_LOCATION[0]=\"/extra/net/vrouter\"" >> %{buildroot}%{_srcdir}/ 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 From 412abdf0fe412f39dd739bf1f194777a235f1e5e Mon Sep 17 00:00:00 2001 From: anandhk-juniper Date: Fri, 11 Apr 2014 10:37:26 +0530 Subject: [PATCH 4/4] review comments - update the maintainer and copyright labels --- common/debian/contrail-vrouter-src-dkms/debian/changelog.in | 6 +++--- common/debian/contrail-vrouter-src-dkms/debian/control | 4 ++-- common/debian/contrail-vrouter-src-dkms/debian/copyright | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/common/debian/contrail-vrouter-src-dkms/debian/changelog.in b/common/debian/contrail-vrouter-src-dkms/debian/changelog.in index 4c9a9bb17..b0dfd1f20 100644 --- a/common/debian/contrail-vrouter-src-dkms/debian/changelog.in +++ b/common/debian/contrail-vrouter-src-dkms/debian/changelog.in @@ -1,6 +1,6 @@ -contrail-vrouter-src-dkms (BUILDTAG) rrugge; urgency=low +contrail-vrouter-src-dkms (BUILDTAG) anandhk; urgency=low - [rrugge ] + [anandhk ] * debian/changelog: changelog - -- rrugge Mon, 11 Nov 2013 8:00:11 +0800 + -- anandhk Fri, 11 April 2014 8:00:11 +0800 diff --git a/common/debian/contrail-vrouter-src-dkms/debian/control b/common/debian/contrail-vrouter-src-dkms/debian/control index 8f8fbba83..590c52ddb 100644 --- a/common/debian/contrail-vrouter-src-dkms/debian/control +++ b/common/debian/contrail-vrouter-src-dkms/debian/control @@ -1,5 +1,5 @@ Source: contrail-vrouter-src-dkms -Maintainer: rrugge +Maintainer: anandhk Section: misc Priority: optional Standards-Version: 1.0 @@ -7,7 +7,7 @@ Build-Depends: Package: contrail-vrouter-src-dkms Architecture: all -Maintainer: rrugge +Maintainer: anandhk Depends: dkms Section: contrail-vrouter-src-dkms Priority: extra diff --git a/common/debian/contrail-vrouter-src-dkms/debian/copyright b/common/debian/contrail-vrouter-src-dkms/debian/copyright index 3becf571b..e4f9f21db 100644 --- a/common/debian/contrail-vrouter-src-dkms/debian/copyright +++ b/common/debian/contrail-vrouter-src-dkms/debian/copyright @@ -1,5 +1,5 @@ Name: contrail-vrouter-src-dkms -Maintainer: rrugge +Maintainer: anandhk License: Commercial Files: * - Copyright (c) 2013 Juniper Networks, Inc. All rights reserved. + Copyright (c) 2014 Juniper Networks, Inc. All rights reserved.