#!/bin/bash # # Simplistic RPM creation logic. See q.spec.template for actual spec # # Version number should be provided as input in the command line # # requires: # * installation of ronn # * installation of rpmbuild # # Output rpm is generated inside build/rpm/RPMS/noarch/ # if [ $# -ne 1 ]; then echo 'create-rpm ' exit 1 fi command -v ronn &>/dev/null || { echo >&2 "ronn needs to be installed."; exit 1; } command -v rpmbuild &>/dev/null || { echo >&2 "rpmbuild needs to be installed."; exit 1; } base_folder=$(dirname $0) pushd ${base_folder} VERSION=$1 REAL_PACKAGE_NAME=q RPM_PACKAGE_NAME=q MAN_PAGE_SRC=${RPM_PACKAGE_NAME}.manpage.1.ronn rm -rf build/ mkdir -p build/rpm TAR_NAME=${RPM_PACKAGE_NAME}-${VERSION}.tar.gz ronn ${REAL_PACKAGE_NAME}.manpage.1.ronn rm ${REAL_PACKAGE_NAME}.1.html cat ${RPM_PACKAGE_NAME}.spec.template | sed "s/VERSION_PLACEHOLDER/$1/" > ${RPM_PACKAGE_NAME}.spec tar --create --transform s,^,${RPM_PACKAGE_NAME}-$1/, --exclude ${RPM_PACKAGE_NAME}.spec.template -f ${TAR_NAME} * rpmbuild --define "_topdir `pwd`/build/rpm" -ta ${TAR_NAME} rm ${RPM_PACKAGE_NAME}.spec rm ${TAR_NAME} rm ${REAL_PACKAGE_NAME}.1 popd