From 27e73259399032657fef7c43c33d55715aa95ba0 Mon Sep 17 00:00:00 2001
From: Abdul Halim <abdul.halim@intel.com>
Date: Mon, 16 Nov 2015 17:39:26 +0000
Subject: Adding install scripts for Ubuntu14.04

System build scripts for Ubuntu14.04 are added. DPDK mkdir hugepage
fails to create /dev/hugepages with permission error. Workaround for
that is added so that /dev/hugepages dir is created when OS specific
scripts is run with sudo privilege. Also adding missing packages
kernel-modules-extra, pixman-devel and openssl-devel for Fedora systems.

JIRA: VSPERF-128

Signed-off-by: Abdul Halim <abdul.halim@intel.com>

Change-Id: Ie805c094df4a3f9446b09ea2d7e4dfb2f5324544
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Billy O'Mahony<billy.o.mahony@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Eugene Snider <Eugene.Snider@huawei.com>
Reviewed-by: Gurpreet Singh <gurpreet.singh@spirent.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
---
 systems/Fedora/21/build_base_machine.sh    |  8 ++-
 systems/Fedora/22/build_base_machine.sh    |  8 ++-
 systems/Ubuntu/14.04/build_base_machine.sh | 90 ++++++++++++++++++++++++++++++
 systems/Ubuntu/14.04/prepare_python_env.sh | 29 ++++++++++
 4 files changed, 133 insertions(+), 2 deletions(-)
 create mode 100755 systems/Ubuntu/14.04/build_base_machine.sh
 create mode 100755 systems/Ubuntu/14.04/prepare_python_env.sh

(limited to 'systems')

diff --git a/systems/Fedora/21/build_base_machine.sh b/systems/Fedora/21/build_base_machine.sh
index 77d95779..036f6cc2 100755
--- a/systems/Fedora/21/build_base_machine.sh
+++ b/systems/Fedora/21/build_base_machine.sh
@@ -33,6 +33,9 @@ kernel-devel
 fuse-libs
 fuse
 fuse-devel
+kernel-modules-extra
+pixman-devel
+openssl-devel
 
 # tools
 curl
@@ -63,4 +66,7 @@ abrt-addon-python3
 
 # install git-review tool
 git-review
-" | grep -v ^#)
\ No newline at end of file
+" | grep -v ^#)
+
+# Create hugepage dirs
+mkdir -p /dev/hugepages
\ No newline at end of file
diff --git a/systems/Fedora/22/build_base_machine.sh b/systems/Fedora/22/build_base_machine.sh
index e54540b9..412b8588 100755
--- a/systems/Fedora/22/build_base_machine.sh
+++ b/systems/Fedora/22/build_base_machine.sh
@@ -33,6 +33,9 @@ kernel-devel
 fuse-libs
 fuse
 fuse-devel
+kernel-modules-extra
+pixman-devel
+openssl-devel
 
 # tools
 curl
@@ -63,4 +66,7 @@ abrt-addon-python3
 
 # install git-review tool
 git-review
-" | grep -v ^#)
\ No newline at end of file
+" | grep -v ^#)
+
+# Create hugepage dirs
+mkdir -p /dev/hugepages
\ No newline at end of file
diff --git a/systems/Ubuntu/14.04/build_base_machine.sh b/systems/Ubuntu/14.04/build_base_machine.sh
new file mode 100755
index 00000000..3b4185fc
--- /dev/null
+++ b/systems/Ubuntu/14.04/build_base_machine.sh
@@ -0,0 +1,90 @@
+#!/bin/bash
+#
+# Build a base machine for Ubuntu 14.04
+#
+# Copyright 2015 OPNFV, Intel Corporation.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# Contributors:
+#   Aihua Li, Huawei Technologies.
+#   Martin Klozik, Intel Corporation.
+#   Abdul Halim, Intel Corporation.
+
+apt-get update
+apt-get -y install $(echo "
+# Make and Compilers
+make
+automake
+gcc
+g++
+libc6
+libc6-dev
+libxml2
+fuse
+libfuse2
+libfuse-dev
+libssl1.0.0
+libssl-dev
+libglib2.0-dev
+zlib1g-dev
+
+# Linux Kernel Source
+linux-source
+linux-headers-$(uname -r)
+pkg-config
+
+# tools
+curl
+libcurl4-openssl-dev
+automake
+autoconf
+libtool
+libpcap-dev
+libnet1
+libncurses5-dev
+vim
+wget
+git
+pciutils
+cifs-utils
+socat
+libpixman-1-0
+libpixman-1-dev
+
+# Java runtime environment: Required for Ixia TclClient
+default-jre
+
+# install python packages
+python3
+python-pip
+python3-pip
+python3-setuptools
+python3-dbus
+python3-dev
+python3-tk
+libpython3.4
+python3-reportlab
+
+# install git-review tool
+git-review
+" | grep -v ^#)
+
+# fix: Ixia TclClient installation: cannot find 'libc.s0.6'
+ln -sf $(locate libc.so.6) /lib/libc.so.6
+
+# Install virtualenv
+pip3 install virtualenv
+
+# Create hugepage dirs
+mkdir -p /dev/hugepages
\ No newline at end of file
diff --git a/systems/Ubuntu/14.04/prepare_python_env.sh b/systems/Ubuntu/14.04/prepare_python_env.sh
new file mode 100755
index 00000000..f9c2def8
--- /dev/null
+++ b/systems/Ubuntu/14.04/prepare_python_env.sh
@@ -0,0 +1,29 @@
+#!/bin/bash
+#
+# Prepare Python environment for vsperf execution on Ubuntu 14.04 systems
+#
+# Copyright 2015 OPNFV, Intel Corporation.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+if [ -d "$VSPERFENV_DIR" ] ; then
+    echo "Directory $VSPERFENV_DIR already exists. Skipping python virtualenv creation."
+    exit
+fi
+
+# enable virtual environment in a subshell, so QEMU build can use python 2.7
+
+(virtualenv-3.4 "$VSPERFENV_DIR"
+source "$VSPERFENV_DIR"/bin/activate
+pip install -r ../requirements.txt
+pip install pylint)
\ No newline at end of file
-- 
cgit