Round 357: LLVM ext, Clang ext, GCC ext, Meson ext, CMake ext (20 commands)
ober
e5e8101855cd1fa1ac4b4e083d6e24506610c6d6
--- a/docs/jemacs-vs-emacs.md +++ b/docs/jemacs-vs-emacs.md @@ -4583,6 +4583,31 @@ No remaining Tier 1 gaps. All core editing, completion, and navigation features | ebib-import-file | :orange_circle: | Import file into Ebib | | ebib-push-citation | :orange_circle: | Push Ebib citation to buffer | +### Round 357 — LLVM ext, Clang ext, GCC ext, Meson ext, CMake ext + +| Feature | Status | Notes | +|---|---|---| +| llvm-dis | :orange_circle: | LLVM: disassemble bitcode | +| llvm-as | :orange_circle: | LLVM: assemble IR | +| llvm-link | :orange_circle: | LLVM: link bitcode files | +| llvm-opt | :orange_circle: | LLVM: optimize bitcode | +| clang-ast-dump | :orange_circle: | Clang: dump AST | +| clang-tidy | :orange_circle: | Clang-Tidy: check code | +| clang-check | :orange_circle: | Clang-Check: analyze code | +| clang-query | :orange_circle: | Clang-Query: run matcher | +| gcc-dump | :orange_circle: | GCC: compiler dump | +| gcc-specs | :orange_circle: | GCC: compiler specs | +| gcc-machine | :orange_circle: | GCC: target machine | +| gcc-version | :orange_circle: | GCC: show version | +| meson-setup | :orange_circle: | Meson: setup build | +| meson-compile | :orange_circle: | Meson: compile project | +| meson-test | :orange_circle: | Meson: run tests | +| meson-install | :orange_circle: | Meson: install project | +| cmake-gui | :orange_circle: | CMake: open GUI | +| cmake-cache | :orange_circle: | CMake: show cache | +| cmake-test | :orange_circle: | CMake: run CTest | +| cmake-presets | :orange_circle: | CMake: list presets | + ### Round 356 — Wasm ext, Wasmer ext, Wasmtime ext, WasmEdge ext, Emscripten ext | Feature | Status | Notes | --- a/src/jerboa-emacs/editor-extra-final.ss +++ b/src/jerboa-emacs/editor-extra-final.ss @@ -25857,3 +25857,47 @@ (def (cmd-emscripten-ports app) (let* ((echo (app-state-echo app))) (echo-message! echo "Emscripten: listing available ports"))) + +;;; Round 357 — GCC ext, Meson ext, CMake ext (batch 2) + +(def (cmd-gcc-machine app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "GCC: showing target machine"))) + +(def (cmd-gcc-version app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "GCC: showing version"))) + +(def (cmd-meson-setup app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Meson build directory: " + (lambda (dir) + (echo-message! echo (str "Meson: setting up in " dir)))))) + +(def (cmd-meson-compile app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Meson: compiling project"))) + +(def (cmd-meson-test app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Meson: running tests"))) + +(def (cmd-meson-install app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Meson: installing project"))) + +(def (cmd-cmake-gui app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "CMake: opening GUI configurator"))) + +(def (cmd-cmake-cache app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "CMake: showing cache variables"))) + +(def (cmd-cmake-test app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "CMake: running CTest"))) + +(def (cmd-cmake-presets app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "CMake: listing presets"))) --- a/src/jerboa-emacs/editor-extra-modes.ss +++ b/src/jerboa-emacs/editor-extra-modes.ss @@ -26592,3 +26592,59 @@ (echo-read-string echo "Wasmtime compile module: " (lambda (mod) (echo-message! echo (str "Wasmtime: compiling " mod)))))) + +;;; Round 357 — LLVM ext, Clang ext, GCC ext, Meson ext, CMake ext (batch 1) + +(def (cmd-llvm-dis app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "LLVM disassemble file: " + (lambda (file) + (echo-message! echo (str "LLVM: disassembling " file)))))) + +(def (cmd-llvm-as app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "LLVM assemble file: " + (lambda (file) + (echo-message! echo (str "LLVM: assembling " file)))))) + +(def (cmd-llvm-link app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "LLVM: linking bitcode files"))) + +(def (cmd-llvm-opt app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "LLVM optimize file: " + (lambda (file) + (echo-message! echo (str "LLVM: optimizing " file)))))) + +(def (cmd-clang-ast-dump app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Clang AST dump file: " + (lambda (file) + (echo-message! echo (str "Clang: dumping AST for " file)))))) + +(def (cmd-clang-tidy app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Clang-Tidy file: " + (lambda (file) + (echo-message! echo (str "Clang-Tidy: checking " file)))))) + +(def (cmd-clang-check app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Clang-Check file: " + (lambda (file) + (echo-message! echo (str "Clang-Check: analyzing " file)))))) + +(def (cmd-clang-query app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Clang-Query matcher: " + (lambda (matcher) + (echo-message! echo (str "Clang-Query: running " matcher)))))) + +(def (cmd-gcc-dump app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "GCC: showing compiler dump"))) + +(def (cmd-gcc-specs app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "GCC: showing compiler specs"))) --- a/src/jerboa-emacs/editor-extra-regs2.ss +++ b/src/jerboa-emacs/editor-extra-regs2.ss @@ -8936,4 +8936,26 @@ (register-command! 'emscripten-link cmd-emscripten-link) (register-command! 'emscripten-run cmd-emscripten-run) (register-command! 'emscripten-ports cmd-emscripten-ports) + + ;; Round 357 — LLVM ext, Clang ext, GCC ext, Meson ext, CMake ext + (register-command! 'llvm-dis cmd-llvm-dis) + (register-command! 'llvm-as cmd-llvm-as) + (register-command! 'llvm-link cmd-llvm-link) + (register-command! 'llvm-opt cmd-llvm-opt) + (register-command! 'clang-ast-dump cmd-clang-ast-dump) + (register-command! 'clang-tidy cmd-clang-tidy) + (register-command! 'clang-check cmd-clang-check) + (register-command! 'clang-query cmd-clang-query) + (register-command! 'gcc-dump cmd-gcc-dump) + (register-command! 'gcc-specs cmd-gcc-specs) + (register-command! 'gcc-machine cmd-gcc-machine) + (register-command! 'gcc-version cmd-gcc-version) + (register-command! 'meson-setup cmd-meson-setup) + (register-command! 'meson-compile cmd-meson-compile) + (register-command! 'meson-test cmd-meson-test) + (register-command! 'meson-install cmd-meson-install) + (register-command! 'cmake-gui cmd-cmake-gui) + (register-command! 'cmake-cache cmd-cmake-cache) + (register-command! 'cmake-test cmd-cmake-test) + (register-command! 'cmake-presets cmd-cmake-presets) )