summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorL. E. Segovia <amy@centricular.com>2024-02-29 22:08:56 -0300
committerTim-Philipp Müller <tim@centricular.com>2024-03-16 15:58:04 +0100
commit60f0c86f1e26174ffe579e6774e2a8fc13f0e8e1 (patch)
tree33574cd1ba1d80b509b65f4fab127d0794dd4f02
parentd1eb2201ffeccda21b4a3eb0edb643b31067f143 (diff)
gst-plugins-rs: Adjust parallel architecture build blocks
It's possible to build gst-plugins-rs with a 32GB box at full parallelism, but for universal builds each architecture must be built one at a time. Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1405>
-rw-r--r--recipes/gst-plugins-rs.recipe9
1 files changed, 8 insertions, 1 deletions
diff --git a/recipes/gst-plugins-rs.recipe b/recipes/gst-plugins-rs.recipe
index f2030fbd..8b0afadf 100644
--- a/recipes/gst-plugins-rs.recipe
+++ b/recipes/gst-plugins-rs.recipe
@@ -2,7 +2,7 @@
from custom import GStreamer
from cerbero.errors import FatalError
from cerbero.utils import messages as m
-from cerbero.utils import shell, determine_num_cargo_jobs
+from cerbero.utils import shell, determine_num_cargo_jobs, determine_total_ram
from pathlib import Path
import re
import shutil
@@ -69,6 +69,13 @@ class Recipe(recipe.Recipe):
if determine_num_cargo_jobs() == 1:
allow_parallel_build = False
allow_universal_parallel_build = False
+ elif determine_total_ram() <= (32 << 30):
+ # gst-plugins-rs peaks at ~17GB per architectural build.
+ # Let's assume that > 32GB is enough, but that can be upped
+ # afterwards. Currently a 32GB box freezes when trying the
+ # universal build, as soon as it reaches the gstrswebrtc and
+ # gstaws crates.
+ allow_universal_parallel_build = False
# Needed for openssl
use_system_libs = True