X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Flibraries%2Fbash%2Fqemu_build.sh;h=e151947543bfb7381f30062c51fb7c49ededf1bc;hp=449cce664fe62b03b32a87981d3eae964933593b;hb=cee993932735cf79621e66ded755e7ef2a6e03ca;hpb=5d5db63262e5c141e5eb435c65154cee214887af diff --git a/resources/libraries/bash/qemu_build.sh b/resources/libraries/bash/qemu_build.sh index 449cce664f..e151947543 100644 --- a/resources/libraries/bash/qemu_build.sh +++ b/resources/libraries/bash/qemu_build.sh @@ -12,27 +12,57 @@ # See the License for the specific language governing permissions and # limitations under the License. +QEMU_VERSION="qemu-2.2.1" + +QEMU_DOWNLOAD_REPO="http://wiki.qemu-project.org/download/" +QEMU_DOWNLOAD_PACKAGE="${QEMU_VERSION}.tar.bz2" +QEMU_PACKAGE_URL="${QEMU_DOWNLOAD_REPO}${QEMU_DOWNLOAD_PACKAGE}" +QEMU_INSTALL_DIR="/opt/qemu" + +if test "$(id -u)" -ne 0 +then + echo "Please use root or sudo to be able to install into: ${QEMU_INSTALL_DIR}" + exit 1 +fi + +WORKING_DIR=$(mktemp -d) +test $? -eq 0 || exit 1 + +cleanup () { + rm -r ${WORKING_DIR} +} + +trap cleanup EXIT + +if [[ "$@" == "--force" ]] +then + rm -rf ${QEMU_INSTALL_DIR} +else + test -d ${QEMU_INSTALL_DIR} && echo "Qemu already installed: ${QEMU_INSTALL_DIR}" && exit 0 +fi + echo echo Downloading QEMU source echo -sudo rm -rf /tmp/qemu-2.2.1 -cd /tmp -wget -q http://wiki.qemu-project.org/download/qemu-2.2.1.tar.bz2 || exit +wget -P ${WORKING_DIR} -q ${QEMU_PACKAGE_URL} || exit +test $? -eq 0 || exit 1 echo echo Extracting QEMU echo -tar xjf qemu-2.2.1.tar.bz2 || exit -rm qemu-2.2.1.tar.bz2 +tar --strip-components 1 -xjf ${WORKING_DIR}/${QEMU_DOWNLOAD_PACKAGE} -C ${WORKING_DIR} || exit +test $? -eq 0 || exit 1 echo echo Building QEMU echo -cd qemu-2.2.1 +cd ${WORKING_DIR} +mkdir ${QEMU_INSTALL_DIR} mkdir build cd build -../configure --target-list=x86_64-softmmu || exit -make -j`nproc` || exit +../configure --target-list=x86_64-softmmu --prefix=${QEMU_INSTALL_DIR} || exit +make -j`nproc` || exit 1 +make install || exit 1 echo echo QEMU ready