linux-qubasis

linux oasis port as a qubes template

git clone https://9o.is/git/linux-qubasis.git

commit 9b835b69480d03dd96a326d0a3fd613bfb761b71
parent 0a6c6a6b9aeb2b6c88a300cfc8e78283f471b89e
Author: Jul <jul@9o.is>
Date:   Sat,  8 Nov 2025 15:22:48 -0500

remove ninja_buffer_subgen

Diffstat:
Mninja/functions.sh | 92++++++++++++++++++-------------------------------------------------------------
1 file changed, 21 insertions(+), 71 deletions(-)

diff --git a/ninja/functions.sh b/ninja/functions.sh @@ -262,6 +262,17 @@ fetch() { error unknown fetch method $1 ;; esac + + if [ -d "$_ninja_dir"/patch ]; then + _patches= + for _v in "$_ninja_dir"/patch/*.patch; do + _out=$_fetchdir/${_v##*/} + _in=$dir/${_v#"$_ninja_dir"/} + patch $_out $_in '|' $_fetchdir/fetched $_patches + _patches="$_patches $_out" + done + _ninja_save srcs $_patches + fi } subninja() { @@ -286,8 +297,11 @@ subgen() { _prefix="$_ninja_gendir/" fi + printf 'subninja $ninjadir/%s.ninja\n' $1 >> "$_ninja_writepath" + + _ninja_save build $tgtdir/$_prefix$1/build + _ninja_save configure $tgtdir/$_prefix$1/configure _ninja_queue_subgen="$_ninja_queue_subgen $_prefix$1" - _ninja_buffer_subgen="$_ninja_buffer_subgen $1" } maingen() { @@ -370,7 +384,6 @@ _ninja_initglobals() { _ninja_writepath="$_ninja_ninjadir"/$_ninja_file.tmp - _ninja_buffer_subgen= _ninja_buffer_objs= _ninja_template= _ninja_default_target= @@ -504,11 +517,7 @@ _ninja_compile() { done } -_ninja_flush_subninjas() { - for _v in $_ninja_buffer_subgen; do - printf 'subninja $ninjadir/%s.ninja\n' $_v >> "$_ninja_writepath" - done - +_ninja_run_host() { if [ ! ${_ninja_subninja-} ] && command -v host >/dev/null 2>&1; then ( _ninja_subninja=host @@ -533,72 +542,13 @@ _ninja_flush_subninjas() { fi } -_ninja_flush_build() { - if [ ${_ninja_subninja-} ]; then - return - fi - - _subgens= - - for _v in $_ninja_buffer_subgen; do - _subgens="$_subgens \$tgtdir/$_v/build" - done - - case $_ninja_type in - root) - phony build $_subgens - ;; - pkg) - _ninja_save build $_subgens - _ninja_target build _fetch/build - ;; - esac -} - -_ninja_flush_sync() { - _subgens= - - for _v in $_ninja_buffer_subgen; do - case $_v in - pkg/*) _subgens="$_subgens \$tgtdir/$_v/sync" - esac - done - - case $_ninja_type in - root) - phony sync $_subgens - ;; - pkg) - _patches= - _fetchdir=$outdir/_fetch - - if [ -d "$_ninja_dir"/patch ]; then - for _v in "$_ninja_dir"/patch/*.patch; do - _out=$_fetchdir/${_v##*/} - _in=$dir/${_v#"$_ninja_dir"/} - patch $_out $_in '|' $_fetchdir/fetched $_patches - _patches="$_patches $_out" - done - fi - - _ninja_target srcs _fetch/srcs - phony sync $outdir/_fetch/fetched $_patches $_subgens $tgtdir/srcs - ;; - esac -} - _ninja_flush_configure() { if [ ${_ninja_subninja-} ]; then return fi - _subgens= - - for _v in $_ninja_buffer_subgen; do - _subgens="$_subgens \$tgtdir/$_v/configure" - done - - phony configure $ninjadir/$_ninja_file $_subgens + _ninja_save configure $ninjadir/$_ninja_file + _ninja_target configure gen $ninjadir/$_ninja_file '|' $basedir/config.sh $basedir/ninja/functions.sh $dir/gen.sh } @@ -610,11 +560,11 @@ _ninja_flush_default() { } _ninja_flush() { - _ninja_flush_subninjas + _ninja_run_host _ninja_target deps _ninja_target headers - _ninja_flush_sync - _ninja_flush_build + _ninja_target srcs _fetch/srcs + _ninja_target build _fetch/build _ninja_flush_configure _ninja_flush_default }