linux-qubasis

linux oasis port as a qubes template

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

commit a9548704a5a3cf661bb50700f7ab29c1c7dff11a
parent 034038a3e50cdc35314d0a8766a1ff53607e5320
Author: Jul <jul@9o.is>
Date:   Tue, 18 Nov 2025 03:38:27 -0500

create reusable files function

Diffstat:
Mpkg/gen.sh | 2+-
Mpkg/genfn.sh | 60++++++++++++++++++++++++------------------------------------
2 files changed, 25 insertions(+), 37 deletions(-)

diff --git a/pkg/gen.sh b/pkg/gen.sh @@ -68,7 +68,7 @@ bind description 'EXTRACT $in' rule patch 'git -C $srcdir am -3 --keep-non-patch --no-gpg-sign --whitespace=nowarn ../../../$in >/dev/null && touch $out' bind description 'PATCH $in' -rule files 'sh ./pkg/gen-files.sh $outdir $files >$out' +rule gen_files 'sh ./pkg/gen-files.sh $outdir $files >$out' bind description 'GEN $out' bind generator 1 diff --git a/pkg/genfn.sh b/pkg/genfn.sh @@ -31,7 +31,7 @@ fini_pkg() { fi if [ "$FILE" ]; then - files files '|' ./pkg/gen-files.sh $GEN_FILES + gen_files files '|' ./pkg/gen-files.sh $GEN_FILES bind files $FILE fi } @@ -186,53 +186,42 @@ compile() { } share() { - _prefix=$datdir - _src_prefix=$srcdir + files --prefix $datdir $* - while [ $# -gt 0 ]; do - case "$1" in - --prefix) - _prefix=$datdir/$2 - shift 2 - ;; - --src-prefix) - _src_prefix=$srcdir/$2 - shift 2 - ;; - *) - break - ;; - esac + for _out in $_files; do + _out=${_out#*/} + file reg 0644 '\$$datadir'/$_out $outdir/share/$_out done +} - prefix _srcs $_src_prefix $* +include() { + files --prefix $hdrdir $* - for _src in $_srcs; do - case $_src in - $_prefix/*) _out=$_src;; - $srcdir/*|$outdir/*|$dir/*) - prefix _out $_prefix ${_src##*/} - copy $_out $_src - ;; - *) error share cannot handle $_src;; - esac + for _out in $_files; do + HDRS="$HDRS $_out" _out=${_out#*/} - file reg 0644 '\$$datadir'/$_out $outdir/share/$_out + file reg 0644 '\$$includedir'/$_out $outdir/include/$_out done } -include() { - _prefix=$hdrdir +files() { + _prefix=$outdir _src_prefix=$srcdir while [ $# -gt 0 ]; do case "$1" in --prefix) - _prefix=$hdrdir/$2 + case $2 in + \$*) _prefix=$2;; + *) _prefix=$_prefix/$2;; + esac shift 2 ;; --src-prefix) - _src_prefix=$srcdir/$2 + case $2 in + \$*) _src_prefix=$2;; + *) _src_prefix=$_src_prefix/$2;; + esac shift 2 ;; *) @@ -242,6 +231,7 @@ include() { done prefix _srcs $_src_prefix $* + _files= for _src in $_srcs; do case $_src in @@ -250,11 +240,9 @@ include() { prefix _out $_prefix ${_src##*/} copy $_out $_src ;; - *) error include cannot handle $_src;; + *) error files cannot handle $_src;; esac - HDRS="$HDRS $_out" - _out=${_out#*/} - file reg 0644 '\$$includedir'/$_out $outdir/include/$_out + _files="$_files $_out" done }