summaryrefslogtreecommitdiff
path: root/scripts/build/generate-asm-offsets.sh
diff options
context:
space:
mode:
authorRichard Qin <richard.qin.x@gmail.com>2026-07-10 23:20:03 +0800
committerRichard Qin <richard.qin.x@gmail.com>2026-07-10 23:20:03 +0800
commit48ef95c24e9ac3d11200b61af617a01b10b507d1 (patch)
tree57f0e26ab98e795b19839b6eece98ca58a4b702d /scripts/build/generate-asm-offsets.sh
parentb9ff206e6bd3f4d67851263a6f2acb5f575cf3b0 (diff)
downloadlume-48ef95c24e9ac3d11200b61af617a01b10b507d1.tar.gz
lume-48ef95c24e9ac3d11200b61af617a01b10b507d1.tar.xz
build: introduce declarative non-recursive build graph
Diffstat (limited to 'scripts/build/generate-asm-offsets.sh')
-rwxr-xr-xscripts/build/generate-asm-offsets.sh25
1 files changed, 25 insertions, 0 deletions
diff --git a/scripts/build/generate-asm-offsets.sh b/scripts/build/generate-asm-offsets.sh
new file mode 100755
index 0000000..4e90f94
--- /dev/null
+++ b/scripts/build/generate-asm-offsets.sh
@@ -0,0 +1,25 @@
+#!/bin/sh
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+set -eu
+output=$1
+assembly=$2
+sed_script=$3
+source=$4
+tmp="$output.tmp.$$"
+{
+ echo '/* AUTO-GENERATED — DO NOT EDIT */'
+ echo "/* Generated from $source */"
+ echo '#ifndef _LUME_GENERATED_ASM_OFFSETS_H'
+ echo '#define _LUME_GENERATED_ASM_OFFSETS_H'
+ echo
+ sed -n -f "$sed_script" "$assembly"
+ echo
+ echo '#endif /* _LUME_GENERATED_ASM_OFFSETS_H */'
+} > "$tmp"
+if [ -e "$output" ] && cmp -s "$tmp" "$output"; then
+ rm -f "$tmp"
+else
+ mv -f "$tmp" "$output"
+fi
+