summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorL. E. Segovia <amy@centricular.com>2024-02-29 22:08:56 -0300
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>2024-03-15 11:51:13 +0000
commit6da80d2e76a93f567ab26a66d7e6c7c708c91b5e (patch)
tree5f493d08d8f0d37be7322237ac5cc67131dcd55e
parent68970f81398268f2bd8c56beba67c6d36c31d6a3 (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/1391>
-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 0cd8672b..1f8eec17 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