%global debug_package %{nil} %global rpm_version %(rpm --version | awk '{print $3}') %bcond check 0 Name: rpmtool Version: 0.11.0 Release: %autorelease Summary: A CLI for RPM packages License: GPL-2.0-only URL: https://src00.lsme.ca/devops/rpmtool Source0: %{name}-v%{version}.tar.gz ExclusiveArch: x86_64 aarch64 BuildRequires: git BuildRequires: gcc BuildRequires: golang >= 1.26.0 BuildRequires: rpm BuildRequires: rpm-devel Requires: dnf-plugins-core Requires: rpm Requires: rpm-libs Requires: rpm-build Requires: rpm-build-libs Requires: rpm-sign Requires: rpm-sign-libs Requires: sequoia-sq %description %{summary}. %prep %autosetup -n %{name} go mod vendor %global rpmtool_cgo_flags %{nil} %if %{lua:print(rpm.vercmp(rpm.expand("%{rpm_version}"), "4.20.0") < 0 and 1 or 0)} %global rpmtool_cgo_flags -DRPMTOOL_DISABLE_RPMBUILD_MKBUILDDIR -DRPMTOOL_DISABLE_RPMSPEC_NOFINALIZE -DRPMTOOL_ENABLE_BUILDROOTDIR %if %{lua:print(rpm.vercmp(rpm.expand("%{rpm_version}"), "4.18.0") < 0 and 1 or 0)} %global rpmtool_cgo_flags %{rpmtool_cgo_flags} -DRPMTOOL_DISABLE_RPMBUILD_CONF %endif %endif %build export CGO_CFLAGS="${CGO_CFLAGS:+$CGO_CFLAGS }%{rpmtool_cgo_flags}" GOFLAGS='-buildmode=pie -mod=vendor -trimpath' \ go build -ldflags "-X github.com/ps-gill/rpmtool/cmd.Version=%{version}" -o rpmtool . %install install --mode=0755 -D rpmtool %{buildroot}%{_bindir}/rpmtool mkdir --parents %{buildroot}%{_datadir}/bash-completion/completions ./rpmtool completion bash > %{buildroot}%{_datadir}/bash-completion/completions/rpmtool.bash %if %{with check} %check export CGO_CFLAGS="${CGO_CFLAGS:+$CGO_CFLAGS }%{rpmtool_cgo_flags}" GOFLAGS='-mod=vendor -trimpath' \ go test ./... %endif %files %doc README.md %license LICENSE %{_bindir}/rpmtool %{_datadir}/bash-completion/completions/rpmtool.bash %changelog %autochangelog