X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=tools%2Fvnf_build.sh;h=d1bb898f7c6eb197b9ef2533afbbd745bea24e2a;hb=ab615dd91dcb355615b1f1f7266d878b70b35b4d;hp=22a534ff7fa078d04cf0428ba8a4ca44071e5b10;hpb=810d9587d80c4ec48d1e9b675dbb84819293cd6c;p=samplevnf.git diff --git a/tools/vnf_build.sh b/tools/vnf_build.sh index 22a534ff..d1bb898f 100755 --- a/tools/vnf_build.sh +++ b/tools/vnf_build.sh @@ -25,6 +25,7 @@ HUGEPGSZ=`cat /proc/meminfo | grep Hugepagesize | cut -d : -f 2 | tr -d ' '` MODPROBE="/sbin/modprobe" INSMOD="/sbin/insmod" DPDK_DOWNLOAD="Not initialized" +CIVETWEB_DOWNLOAD="Not initialized" DPDK_DIR=$VNF_CORE/dpdk DPDK_RTE_VER="17.02" @@ -134,6 +135,8 @@ step_2() FUNC[4]="install_dpdk" TEXT[5]="Setup hugepages" FUNC[5]="setup_hugepages" + TEXT[6]="Download and Build civetweb" + FUNC[6]="download_civetweb_zip" } get_agreement_download() { @@ -176,7 +179,7 @@ install_libs() sudo apt-get update sudo apt-get -y install build-essential linux-headers-$(uname -r) git unzip libpcap0.8-dev gcc \ make libc6 libc6-dev g++-multilib libzmq3-dev libcurl4-openssl-dev net-tools wget gcc unzip \ - libpcap-dev libncurses-dev libedit-dev pciutils liblua5.2-dev libncursesw5-dev + libpcap-dev libncurses-dev libedit-dev pciutils liblua5.2-dev libncursesw5-dev libjson-c-dev libssl-dev touch .download } @@ -197,6 +200,20 @@ download_dpdk_zip() mv $VNF_CORE/dpdk-$DPDK_RTE_VER $VNF_CORE/dpdk } +download_civetweb_zip() +{ + echo "Download CIVETWEB zip" + CIVETWEB_DOWNLOAD="https://sourceforge.net/projects/civetweb/files/1.9/CivetWeb_V1.9.zip" + if [ ! -e ${CIVETWEB_DOWNLOAD##*/} ] ; then + wget ${CIVETWEB_DOWNLOAD} + fi + unzip -o ${CIVETWEB_DOWNLOAD##*/} + mv $VNF_CORE/civetweb-master $VNF_CORE/civetweb + pushd $VNF_CORE/civetweb + make lib + popd +} + install_dpdk() { echo "Build DPDK" @@ -220,7 +237,7 @@ install_dpdk() patch -p1 < $VNF_CORE/patches/dpdk_custom_patch/set-log-level-to-info.patch fi - make -j install T=$RTE_TARGET + make -j16 install T=$RTE_TARGET if [ $? -ne 0 ] ; then echo "Failed to build dpdk, please check the errors." return @@ -234,6 +251,11 @@ install_dpdk() echo "igb_uio" | sudo tee -a /etc/modules sudo depmod fi + if [ -d "dpdk/usertools/" ]; then + cp usertools/dpdk-devbind.py /usr/sbin/dpdk-devbind + else + cp tools/dpdk_nic_bind.py /usr/sbin/dpdk-devbind + fi popd } @@ -309,6 +331,9 @@ non_interactive() echo "Download dpdk for VNF build..." download_dpdk_zip + echo "Download civetweb for VNF build..." + download_civetweb_zip + echo "Build dpdk..." install_dpdk