From 0fbc36d215ee70334e75dd21f9e1b54c502b2a25 Mon Sep 17 00:00:00 2001 From: Michel Alexandre Salim Date: Sat, 24 Jul 2021 14:58:08 -0700 Subject: [PATCH] Add macros.build-constraints Keep the misc macros in alphabetical order Signed-off-by: Michel Alexandre Salim --- macros.build-constraints | 10 ++++++++++ redhat-rpm-config.spec | 20 +++++++++++++------- 2 files changed, 23 insertions(+), 7 deletions(-) create mode 100644 macros.build-constraints diff --git a/macros.build-constraints b/macros.build-constraints new file mode 100644 index 0000000..1343cd8 --- /dev/null +++ b/macros.build-constraints @@ -0,0 +1,10 @@ +# Macros to constrain resource use during the build process + +# m: memory limit in MBs per core; default is 1024 +%limit_build(m:) \ + _mem_per_process="%{-m:%{-m*}}%{!-m:1024}" \ + _max_mem=$(awk '/MemTotal/ { print $2 }' /proc/meminfo) \ + _max_jobs="$(($_max_mem / ($_mem_per_process * 1024)))" \ + _cur_max_jobs="%{_smp_build_ncpus}" \ + test "${_cur_max_jobs}" -gt "${_max_jobs}" && _cur_max_jobs="${_max_jobs}" && echo "Warning: Reducing build parallelism to -j${_max_jobs} because of memory limits" \ + %global _smp_build_ncpus "${_cur_max_jobs}" diff --git a/redhat-rpm-config.spec b/redhat-rpm-config.spec index 06ca97c..9161063 100644 --- a/redhat-rpm-config.spec +++ b/redhat-rpm-config.spec @@ -7,7 +7,7 @@ Summary: Red Hat specific rpm configuration files Name: redhat-rpm-config Version: 176 -Release: 1%{?dist} +Release: 2%{?dist} # No version specified. License: GPL+ URL: https://src.fedoraproject.org/rpms/redhat-rpm-config @@ -36,12 +36,13 @@ Source104: macros.ldc-srpm Source105: macros.valgrind-srpm # Other misc macros -Source150: macros.dwz -Source151: macros.kmp -Source152: macros.vpath +Source150: macros.build-constraints +Source151: macros.dwz +Source152: macros.fedora-misc Source153: macros.forge -Source154: macros.ldconfig -Source155: macros.fedora-misc +Source154: macros.kmp +Source155: macros.ldconfig +Source156: macros.vpath # Build policy scripts # this comes from https://github.com/rpm-software-management/rpm/pull/344 @@ -189,11 +190,12 @@ install -p -m 644 -t %{buildroot}%{_rpmluadir}/fedora/srpm forge.lua %{rrcdir}/brp-ldconfig %{_fileattrsdir}/*.attr %{_rpmconfigdir}/macros.d/macros.*-srpm +%{_rpmconfigdir}/macros.d/macros.build-constraints %{_rpmconfigdir}/macros.d/macros.dwz +%{_rpmconfigdir}/macros.d/macros.fedora-misc %{_rpmconfigdir}/macros.d/macros.forge %{_rpmconfigdir}/macros.d/macros.ldconfig %{_rpmconfigdir}/macros.d/macros.vpath -%{_rpmconfigdir}/macros.d/macros.fedora-misc %dir %{_rpmluadir}/fedora %dir %{_rpmluadir}/fedora/srpm %dir %{_rpmluadir}/fedora/rpm @@ -214,6 +216,10 @@ install -p -m 644 -t %{buildroot}%{_rpmluadir}/fedora/srpm forge.lua %{_rpmconfigdir}/macros.d/macros.kmp %changelog +* Sat Jul 24 2021 Michel Alexandre Salim - 176-2 +- Add macros.build-constraints +- Keep the misc macros in alphabetical order + * Thu Apr 29 2021 Stephen Coady - 176-1 - Add Requires: rpmautospec-rpm-macros