#!/bin/bash qemu_src_dir=qemu workspace=/root rpmbuild_dir=$workspace/rpmbuild artifact_rpms=$rpmbuild_dir/RPMS artifact_dir=$artifact_rpms/x86_64 scripts_dir=ci/build_rpm output_dir="$1" VERSION=`grep -m 1 "VERSION" ${qemu_src_dir}/config-host.mak | cut -d= -f2-` usage () { echo "usage: ${0} output_dir" exit 1 } if [[ -z "$@" ]]; then usage fi if [ ! -d ${output_dir} -o ! -w ${output_dir} ] ; then echo "${0}: Output directory '${output_dir}' does not exist or cannot \ be written" exit 1 fi if [ ! -d ${qemu_src_dir} ] ; then echo "${0}: Directory '${qemu_src_dir}' does not exist, run this script \ from the root of kvmfornfv source tree" exit 1 fi echo echo "Build" echo qemu_rpm_build() { cp -r ${qemu_src_dir} ${qemu_src_dir}-$VERSION tar -zcvf ${qemu_src_dir}-$VERSION.tar.gz ${qemu_src_dir}-$VERSION mv ${qemu_src_dir}-$VERSION.tar.gz ${rpmbuild_dir}/SOURCES/ #create a spec file for rpm creation. (cd ${scripts_dir}; ./mkspec $VERSION > qemu.spec) cp ${scripts_dir}/qemu.spec ${rpmbuild_dir}/SPECS/ #build the qemu rpm with spec file developed rpmbuild -ba ${rpmbuild_dir}/SPECS/qemu.spec if [ ${?} -ne 0 ] ; then echo "${0}: qemu build failed" exit 1 fi rm -rf ${qemu_src_dir}-$VERSION rm -rf ${rpmbuild_dir}/SOURCES/${qemu_src_dir}-$VERSION.tar.gz } if [ ! -d ${rpmbuild_dir} ] ; then mkdir -p ${rpmbuild_dir}/{BUILD,RPMS,SOURCES,SPECS,SRPMS} fi qemu_rpm_build latest_qemu_build=`ls -rt $artifact_dir | grep qemu-2.6* | tail -1` cp $artifact_dir/$latest_qemu_build build_output