aboutsummaryrefslogtreecommitdiff
path: root/Zig.novaextension/Scripts/build-parser.sh
diff options
context:
space:
mode:
Diffstat (limited to 'Zig.novaextension/Scripts/build-parser.sh')
-rwxr-xr-xZig.novaextension/Scripts/build-parser.sh53
1 files changed, 0 insertions, 53 deletions
diff --git a/Zig.novaextension/Scripts/build-parser.sh b/Zig.novaextension/Scripts/build-parser.sh
deleted file mode 100755
index 5cd7039..0000000
--- a/Zig.novaextension/Scripts/build-parser.sh
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/sh
-#
-# build-parser.sh — Compile the Nova-compatible tree-sitter-zig parser.
-#
-# Purpose:
-# Build vendor/tree-sitter-zig/src/parser.c into a universal macOS dylib
-# that Nova loads via its private SyntaxKit framework.
-#
-# What it does:
-# - clang -dynamiclib for arm64 + x86_64
-# - links against Nova’s SyntaxKit framework (from /Applications/Nova.app)
-# - sets rpath @loader_path/../Frameworks so the dylib finds SyntaxKit
-# when Nova loads it from the bundled extension
-# - ad-hoc codesigns the dylib (Gatekeeper requirement)
-# - writes the result to Syntaxes/libtree-sitter-zig.dylib
-#
-# Usage:
-# ./Scripts/build-parser.sh
-#
-# Environment overrides:
-# NOVA_APP Path to Nova.app (default: /Applications/Nova.app)
-# SDKROOT macOS SDK path (default: `xcrun --show-sdk-path`)
-#
-# Requirements:
-# macOS, Xcode Command Line Tools (clang + xcrun), Nova installed.
-
-set -eu
-
-ROOT="$(CDPATH='' cd -- "$(dirname -- "$0")/.." && pwd)"
-VENDOR_DIR="$ROOT/vendor/tree-sitter-zig"
-BUILD_DIR="$ROOT/build"
-OUTPUT="$ROOT/Syntaxes/libtree-sitter-zig.dylib"
-NOVA_APP="${NOVA_APP:-/Applications/Nova.app}"
-SDKROOT="${SDKROOT:-$(xcrun --show-sdk-path)}"
-
-mkdir -p "$BUILD_DIR"
-
-clang \
- -dynamiclib \
- -O2 \
- -fPIC \
- -arch arm64 \
- -arch x86_64 \
- -isysroot "$SDKROOT" \
- -I"$VENDOR_DIR/src" \
- -F"$NOVA_APP/Contents/Frameworks" \
- -framework SyntaxKit \
- -Wl,-rpath,@loader_path/../Frameworks \
- -o "$BUILD_DIR/libtree-sitter-zig.dylib" \
- "$VENDOR_DIR/src/parser.c"
-
-codesign --force --sign - "$BUILD_DIR/libtree-sitter-zig.dylib"
-cp "$BUILD_DIR/libtree-sitter-zig.dylib" "$OUTPUT"