summaryrefslogtreecommitdiffstats
path: root/build
diff options
context:
space:
mode:
authorshuai chen <chenshuai@huawei.com>2016-05-31 01:42:12 +0000
committerGerrit Code Review <gerrit@172.30.200.206>2016-05-31 01:42:12 +0000
commit7bf45894e495eb1da57a1ff8619bf9e69eb9ca14 (patch)
treefb7ef56252af46e79477b1d8737c339c353589e6 /build
parentf79ca6b0696ed332dc83e46ecf7dc76a639edff8 (diff)
parentfee279119bfc51a21ac1ad77474f8ea31bd6fa03 (diff)
Merge "These changes are the initial support for kvmfornfv using compass."
Diffstat (limited to 'build')
-rw-r--r--build/build.conf1
-rw-r--r--build/packages/make_kvmfornfv.sh65
2 files changed, 66 insertions, 0 deletions
diff --git a/build/build.conf b/build/build.conf
index ad2a6b1b..352e70ef 100644
--- a/build/build.conf
+++ b/build/build.conf
@@ -35,6 +35,7 @@ export APP_PACKAGE=${APP_PACKAGE:-$PACKAGE_URL/packages.tar.gz}
export LOADERS=${LOADERS:-$PACKAGE_URL/loaders.tar.gz}
export CIRROS=${CIRROS:-$PACKAGE_URL/cirros-0.3.3-x86_64-disk.img}
export SPECIAL_DEBIAN_PACKAGE=${SPECIAL_DEBIAN_PACKAGE-$PACKAGE_URL/debian-packages.tar.gz}
+export KVMFORNFV=${kvmfornfv:-https://gerrit.opnfv.org/gerrit/p/kvmfornfv.git}
export PIP_CONF="https://bootstrap.pypa.io/ez_setup.py \
diff --git a/build/packages/make_kvmfornfv.sh b/build/packages/make_kvmfornfv.sh
new file mode 100644
index 00000000..3fa6efec
--- /dev/null
+++ b/build/packages/make_kvmfornfv.sh
@@ -0,0 +1,65 @@
+##############################################################################
+# Copyright (c) 2016 Nokia and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+# TODO compile kernel and qemu in docker container
+
+WORK_PATH=$(cd "$(dirname "$0")"/..; pwd)
+CACHE_DIR=$WORK_PATH/work/repo/temp
+DST_DIR=$WORK_PATH/work/repo/packages/kvmfornfv/
+source $WORK_PATH/build/build.conf
+
+function prepare()
+{
+ sudo apt-get install -y libtool libglib2.0-dev autoconf automake
+ mkdir -p $CACHE_DIR
+ mkdir -p $DST_DIR
+
+ if [ git ls-remote $KVMFORNFV ];
+ then
+ git clone $KVMFORNFV $CACHE_DIR/kvmfornfv
+ mkdir -p $CACHE_DIR/kvmfornfv/build/{boot,usr}
+ fi
+}
+
+function make_kernel()
+{
+ cd $CACHE_DIR/kvmfornfv/kernel
+ cp arch/x86/configs/opnfv.config .config
+ make -j8
+ make -j8 modules
+ make INSTALL_PATH=$CACHE_DIR/kvmfornfv/build/boot install
+ make INSTALL_MOD_PATH=$CACHE_DIR/kvmfornfv/build modules_install
+}
+
+function make_qemu()
+{
+ mkdir -p $CACHE_DIR/kvmfornfv/qemu/build
+ cd $CACHE_DIR/kvmfornfv/qemu/build
+ ../configure --prefix=$CACHE_DIR/kvmfornfv/build/usr --enable-system --enable-kvm
+ make -j8
+ make install
+}
+
+function make_kvmfornfv()
+{
+ pushd .
+
+ prepare
+ make_kernel
+ make_qemu
+
+ tar -czf $DST_DIR/kvmfornfv.tar.gz \
+ -C $CACHE_DIR/kvmfornfv/build .
+ cd -
+
+ popd
+}
+
+make_kvmfornfv
+