aboutsummaryrefslogtreecommitdiff
path: root/Scripts/build-parser.sh
diff options
context:
space:
mode:
authorDavid Czihak <git@dcz.at>2026-05-10 19:21:33 +0200
committerDavid Czihak <git@dcz.at>2026-05-10 19:21:33 +0200
commitb80b9c1f82585677a7c042557576c41b1670d259 (patch)
tree9a741dfd7725205dba35b42bc6d5a6a7e084ced0 /Scripts/build-parser.sh
parent33ea57ddd69f35f3f2db64a1a2d31b410ed7afb2 (diff)
Chore: Move extension bundle into Zig.novaextension/ subdirectory
Separates Nova extension resources from development-only items. Development items (ISSUES.md, vendor/, examples/) remain at the repo root. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'Scripts/build-parser.sh')
-rwxr-xr-xScripts/build-parser.sh53
1 files changed, 0 insertions, 53 deletions
diff --git a/Scripts/build-parser.sh b/Scripts/build-parser.sh
deleted file mode 100755
index 5cd7039..0000000
--- a/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"