From b6904df9960e1cf57c3943c6391cc333a8f51446 Mon Sep 17 00:00:00 2001 From: "Sridhar K. N. Rao" Date: Sat, 1 Oct 2022 19:22:15 +0530 Subject: SYSTEMS: Adds build support to new OS versions. Fedora: 36 Ubuntu: 22.04 Signed-off-by: Sridhar K. N. Rao Change-Id: Ieb353ef9f45e6932e8cf65d93e72b096ff08cca9 --- systems/fedora/36/build_base_machine.sh | 78 +++++++++++++++++++++++++ systems/fedora/36/prepare_python_env.sh | 30 ++++++++++ systems/ubuntu/22.04/build_base_machine.sh | 94 ++++++++++++++++++++++++++++++ systems/ubuntu/22.04/prepare_python_env.sh | 29 +++++++++ 4 files changed, 231 insertions(+) create mode 100755 systems/fedora/36/build_base_machine.sh create mode 100755 systems/fedora/36/prepare_python_env.sh create mode 100755 systems/ubuntu/22.04/build_base_machine.sh create mode 100755 systems/ubuntu/22.04/prepare_python_env.sh diff --git a/systems/fedora/36/build_base_machine.sh b/systems/fedora/36/build_base_machine.sh new file mode 100755 index 00000000..f3a27644 --- /dev/null +++ b/systems/fedora/36/build_base_machine.sh @@ -0,0 +1,78 @@ +#!/bin/bash +# +# Build a base machine for Fedora 26 +# +# Copyright 2017 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. + +dnf -y install $(echo " +# Make and Compilers +make +automake +gcc +gcc-c++ +libxml2 +glibc +glib2-devel +kernel-devel +fuse-libs +fuse +fuse-devel +kernel-modules-extra +pixman-devel +openssl-devel +redhat-rpm-config +elfutils-libelf-devel +meson +ninja-build + +# tools +curl +autoconf +libtool +libpcap-devel +libnet +vim +wget +git +pciutils +cifs-utils +socat +sysstat +sshpass + +# install python packages +python3-virtualenv +python3-setuptools +python3-pip +python3-dbus +python3-devel +python3-tkinter +systemd-python3 +python3-libs +python3-libreport +python3-abrt +python3-abrt-addon +python3-pyelftools + +# libs +numactl +numactl-devel + +# install git-review tool +git-review +" | grep -v ^#) + +# Create hugepage dirs +mkdir -p /dev/hugepages diff --git a/systems/fedora/36/prepare_python_env.sh b/systems/fedora/36/prepare_python_env.sh new file mode 100755 index 00000000..becfd5ca --- /dev/null +++ b/systems/fedora/36/prepare_python_env.sh @@ -0,0 +1,30 @@ +#!/bin/bash +# +# Prepare Python environment for vsperf execution on Fedora 26 systems. +# +# Copyright 2017 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 "$VSPERFENV_DIR" --python /usr/bin/python3 +source "$VSPERFENV_DIR"/bin/activate +pip install -U pip +pip install -r ../requirements.txt +pip install six) diff --git a/systems/ubuntu/22.04/build_base_machine.sh b/systems/ubuntu/22.04/build_base_machine.sh new file mode 100755 index 00000000..ab30c347 --- /dev/null +++ b/systems/ubuntu/22.04/build_base_machine.sh @@ -0,0 +1,94 @@ +#!/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 +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 +sysstat +sshpass + +# Java runtime environment: Required for Ixia TclClient +default-jre + +# install python packages +python3-pip +python3-setuptools +python3-dbus +python3-dev +python3-tk +python3-venv +libpython3.8 +python3-reportlab + +# libs +libnuma1 +libnuma-dev + +# 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 diff --git a/systems/ubuntu/22.04/prepare_python_env.sh b/systems/ubuntu/22.04/prepare_python_env.sh new file mode 100755 index 00000000..c44a3bdd --- /dev/null +++ b/systems/ubuntu/22.04/prepare_python_env.sh @@ -0,0 +1,29 @@ +#!/bin/bash +# +# Prepare Python environment for vsperf execution on Ubuntu 14.04 systems +# +# Copyright 2015-2017 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 "$VSPERFENV_DIR" --python /usr/bin/python3 +source "$VSPERFENV_DIR"/bin/activate +pip install -U pip +pip install -r ../requirements.txt) -- cgit 1.2.3-korg