Download Makefile from Snapkitty/sovereign-ide: direct link, hf CLI and curl.
- Browser
- Download file 2.59 kB
-
https://huggingface.co/Snapkitty/sovereign-ide/resolve/main/Makefile
- Command line
-
hf download hf://Snapkitty/sovereign-ide/Makefile
-
curl -L -o Makefile https://huggingface.co/Snapkitty/sovereign-ide/resolve/main/Makefile
2.59 kB
| #====================================================================== | |
| # SOVEREIGN-IDE β 16-Layer Fortran 2018 IDE | |
| # Build: make all | wasm | debug | run | clean | |
| #====================================================================== | |
| FC = gfortran | |
| FFLAGS = -O3 -march=native -std=f2018 -fopenmp | |
| FFLAGS_DEBUG = -g -O0 -Wall -Wextra -fcheck=all -fbacktrace -std=f2018 | |
| LDFLAGS = -fopenmp | |
| BUILD_DIR = build | |
| LIB_DIR = lib | |
| OBJ_DIR = $(BUILD_DIR)/obj | |
| LIB_NAME = libsovereign_ide | |
| STATIC_LIB = $(LIB_DIR)/$(LIB_NAME).a | |
| # ββ Sources in strict dependency order (layer 0 first, layer 15 last) ββ | |
| SOURCES = \ | |
| layer-0-runtime/runtime.f90 \ | |
| layer-1-platform/platform.f90 \ | |
| layer-2-gui/gui.f90 \ | |
| layer-3-text-buffer/text_buffer.f90 \ | |
| layer-4-parser/parser.f90 \ | |
| layer-5-syntax/syntax.f90 \ | |
| layer-6-semantic/semantic.f90 \ | |
| layer-7-refactoring/refactoring.f90 \ | |
| layer-8-search/search.f90 \ | |
| layer-9-terminal/terminal.f90 \ | |
| layer-10-vcs/vcs.f90 \ | |
| layer-11-build/build_system.f90 \ | |
| layer-12-lsp/lsp_client.f90 \ | |
| layer-13-dap/dap_client.f90 \ | |
| layer-14-extensions/extension_host.f90 \ | |
| layer-15-shell/shell.f90 | |
| OBJECTS = $(patsubst %.f90,$(OBJ_DIR)/%.o,$(notdir $(SOURCES))) | |
| all: directories $(STATIC_LIB) | |
| directories: | |
| @mkdir -p $(OBJ_DIR) $(LIB_DIR) | |
| $(STATIC_LIB): $(OBJECTS) | |
| @echo "[AR] $@" | |
| ar rcs $@ $^ | |
| # Pattern rule β compile any layer's .f90 | |
| $(OBJ_DIR)/%.o: layer-*/%.f90 | |
| @echo "[FC] $<" | |
| $(FC) $(FFLAGS) -J$(OBJ_DIR) -c $< -o $@ | |
| # ββ WASM target (requires wasm-pack + Rust bridge) βββββββββββββββββββββ | |
| wasm: | |
| @echo "[WASM] sovereign-ide β browser" | |
| @echo "TODO: Rust bridge wrapping Fortran modules via C ABI" | |
| # ββ Debug build ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| debug: FFLAGS = $(FFLAGS_DEBUG) | |
| debug: clean all | |
| # ββ Run ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| run: all | |
| @echo "[RUN] Sovereign IDE" | |
| @echo "TODO: link + execute shell module" | |
| clean: | |
| rm -rf $(BUILD_DIR) $(LIB_DIR) | |
| info: | |
| @echo "SOVEREIGN-IDE" | |
| @echo "=============" | |
| @echo "Layers: 16" | |
| @echo "Sources: $(words $(SOURCES))" | |
| @echo "Target: $(STATIC_LIB)" | |
| @echo "" | |
| @echo "Targets: all wasm debug run clean info" | |