Fix dependancies and precompile ruby module

This commit is contained in:
2026-01-29 23:21:47 +00:00
parent 78949bc770
commit 86d5b7a021
14 changed files with 643 additions and 218 deletions

38
src/ruby_compile.sh Executable file
View File

@@ -0,0 +1,38 @@
#!/usr/bin/env bash
set -e
SCRIPT_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)"
INPUT="$SCRIPT_DIR/../include/syntax/tokens.def"
TMP="/tmp/__crib_precompiled.rb"
OUTPUT="/tmp/__crib_precompiled.mrb"
echo "module Tokens" >"$TMP"
counter=0
while read -r line; do
if [[ $line =~ ADD\(([^\)]+)\) ]]; then
name="${BASH_REMATCH[1]}"
echo " $name = $counter" >>"$TMP"
counter=$((counter + 1))
fi
done <"$INPUT"
{
echo " freeze"
echo "end"
echo
cat "$SCRIPT_DIR/../include/scripting/libcrib.rb"
} >>"$TMP"
mrbc -o$OUTPUT $TMP
{
echo "#pragma once"
xxd -i $OUTPUT | sed 's/^unsigned char /constexpr unsigned char /' |
sed 's/^unsigned int /constexpr unsigned int /'
} >"$SCRIPT_DIR/../include/scripting/ruby_compiled.h"
rm $TMP
rm $OUTPUT