docs(phase131): SSOT整備 - VM入口/env var/次の入口を1箇所に固定
Phase 131 SSOT 整備完了: 1) VM Box 解決の入口SSOT(phase131-2-box-resolution-map.md) - 📍 入口3行を先頭に追記(handle_new_box/UnifiedRegistry/BoxFactoryRegistry) - NYASH_VM_FAST を bench/profile-only 特例と明記 2) 環境変数のSSOTを1箇所へ(environment-variables.md) - ## LLVM Build Pipeline セクション新設(14変数) - phase87 の Environment Variables セクションを参照リンクに置き換え - 重複表を削除、SSOTドキュメントへの導線確立 3) 次の開発の入口を明確化(CURRENT_TASK.md) - P1(Loop Canonicalizer): 🔶 設計待ち(外部検討中) - P2(JoinIR / Selfhost depth-2): ✅ 実装可能 - 次に触るSSOTを1行で指定: - Loop系: joinir-architecture-overview.md - VM Box系: phase131-2-box-resolution-map.md Impact: - 迷子防止: 各領域のSSOTが1行で分かる - 重複削減: env var 表を environment-variables.md に集約 - 状態明確化: P1/P2 の「設計待ち/実装可能」が一目瞭然 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@ -84,6 +84,50 @@ NYASH_USE_STAGE1_CLI=1 STAGE1_EMIT_MIR_JSON=1 \
|
||||
|
||||
---
|
||||
|
||||
## LLVM Build Pipeline
|
||||
|
||||
`tools/build_llvm.sh` で使用される環境変数。詳細は [`phase87-selfhost-llvm-exe-line.md`](../development/current/main/phase87-selfhost-llvm-exe-line.md) を参照。
|
||||
|
||||
### Control Variables
|
||||
|
||||
| 変数 | デフォルト | 説明 |
|
||||
| --- | --- | --- |
|
||||
| `NYASH_BIN` | `./target/release/hakorune` | hakorune バイナリのパス |
|
||||
| `NYASH_LLVM_COMPILER` | `harness` | コンパイラモード: `harness` または `crate` |
|
||||
| `NYASH_LLVM_FEATURE` | `llvm` | LLVM feature flag (`llvm` または `llvm-inkwell-legacy`) |
|
||||
| `NYASH_LLVM_OBJ_OUT` | `target/aot_objects/<stem>.o` | オブジェクトファイル出力パス |
|
||||
| `NYASH_CLI_VERBOSE` | `0` | 詳細ビルド出力を有効化 |
|
||||
|
||||
### Advanced Control Variables
|
||||
|
||||
| 変数 | デフォルト | 説明 |
|
||||
| --- | --- | --- |
|
||||
| `NYASH_LLVM_SKIP_EMIT` | `0` | オブジェクト生成をスキップ(既存 .o 使用) |
|
||||
| `NYASH_LLVM_ONLY_OBJ` | `0` | オブジェクト生成後に停止(リンクスキップ) |
|
||||
| `NYASH_LLVM_SKIP_NYRT_BUILD` | `0` | Nyash Kernel runtime ビルドをスキップ |
|
||||
| `NYASH_LLVM_MIR_JSON` | (auto) | 事前生成 MIR JSON パス (crate mode) |
|
||||
| `NYASH_LLVM_VALIDATE_JSON` | `0` | MIR JSON スキーマ検証を有効化 (crate mode) |
|
||||
| `NYASH_LLVM_EMIT` | `obj` | 出力タイプ: `obj` または `exe` (crate only) |
|
||||
| `NYASH_LLVM_NYRT` | `crates/nyash_kernel/target/release` | Nyash Kernel runtime パス |
|
||||
| `NYASH_LLVM_LIBS` | (empty) | 追加リンクライブラリ |
|
||||
| `NYASH_LLVM_USE_HARNESS` | (auto) | Python harness 使用を強制 |
|
||||
|
||||
### 使用例
|
||||
|
||||
```bash
|
||||
# 基本ビルド(全デフォルト)
|
||||
tools/build_llvm.sh program.hako -o output
|
||||
|
||||
# 詳細デバッグ
|
||||
NYASH_CLI_VERBOSE=1 tools/build_llvm.sh program.hako -o output
|
||||
|
||||
# Crate mode + JSON検証
|
||||
NYASH_LLVM_COMPILER=crate NYASH_LLVM_VALIDATE_JSON=1 \
|
||||
tools/build_llvm.sh program.hako -o output
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Selfhost compiler / Ny compiler
|
||||
|
||||
| 変数 | デフォルト | 適用経路 | 説明 |
|
||||
|
||||
Reference in New Issue
Block a user