Commit 47ee30d3 authored by Michal Berger's avatar Michal Berger Committed by Tomasz Zawadzki
Browse files

rpmbuild: Add routine for generating a standalone rpm .spec



Signed-off-by: default avatarMichal Berger <michalx.berger@intel.com>
Change-Id: Ib8e139b928fd3e8cea67ebdc3ff1e464f51598bc
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/8389


Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
Reviewed-by: default avatarPawel Piatek <pawelx.piatek@intel.com>
Reviewed-by: default avatarKarol Latecki <karol.latecki@intel.com>
Reviewed-by: default avatar <tomasz.rochumski@intel.com>
parent f6ab6c09
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -32,6 +32,9 @@ function build_rpms() (
	}

	build_rpm() {
		# Separate run to see the final .spec in use
		GEN_SPEC=yes BUILDDIR=$builddir MAKEFLAGS="$MAKEFLAGS" SPDK_VERSION="$version" DEPS=no "$rootdir/rpmbuild/rpm.sh" "$@"
		# Actual build
		BUILDDIR=$builddir MAKEFLAGS="$MAKEFLAGS" SPDK_VERSION="$version" DEPS=no "$rootdir/rpmbuild/rpm.sh" "$@"
		install_uninstall_rpms
	}
+13 −3
Original line number Diff line number Diff line
@@ -65,8 +65,9 @@ get_version() {
	echo "${version%%-*}"
}

build_rpm() (
	local macros=() dir
build_macros() {
	local -g macros=()
	local dir

	macros+=(-D "configure ${configure:-"%{nil}"}")
	macros+=(-D "make $make")
@@ -113,9 +114,13 @@ build_rpm() (
		macros+=(-D "build_requirements 1")
		macros+=(-D "build_requirements_list $build_requirements")
	fi
}

	cd "$rootdir"
gen_spec() {
	rpmspec "${macros[@]}" -P "$spec"
}

build_rpm() (
	fedora_python_sys_path_workaround

	# Despite building in-place, rpmbuild still looks under source dir as defined
@@ -139,4 +144,9 @@ version=${SPDK_VERSION:-$(get_version)}
rpmbuild_dir=${BUILDDIR:-"$HOME/rpmbuild"}
spec=$specdir/spdk.spec

build_macros
if [[ -n $GEN_SPEC ]]; then
	gen_spec
	exit 0
fi
build_rpm