fix: make default target print help instead of building
ober
f899584f2052b879125364decce9d0f38dd61c15
--- a/Makefile +++ b/Makefile @@ -7,7 +7,65 @@ CHEZ_EXT_LIBDIRS = $(CHEZ_EXT_DIR)/chez-https/src:$(CHEZ_EXT_DIR)/chez-ssl/src:$ # Shared object paths for legacy FFI-based chez-* libraries CHEZ_EXT_LDPATH = $(CHEZ_EXT_DIR)/chez-ssl:$(CHEZ_EXT_DIR)/chez-zlib:$(CHEZ_EXT_DIR)/chez-pcre2:$(CHEZ_EXT_DIR)/chez-leveldb:$(CHEZ_EXT_DIR)/chez-epoll:$(CHEZ_EXT_DIR)/chez-inotify:$(CHEZ_EXT_DIR)/chez-crypto:$(CHEZ_EXT_DIR)/chez-sqlite:$(CHEZ_EXT_DIR)/chez-postgresql -.PHONY: build test test-reader test-core test-runtime test-stdlib test-ffi test-modules test-expanded test-features test-wrappers test-phase4a test-phase4b test-phase4c test-phase4d test-phase4e test-phase4f test-phase5 test-phase5e test-phase6 test-phase7 test-phase8 test-functional test-repl test-security test-native test-gaps native clean-native audit-native clean fuzz fuzz-smoke fuzz-deep fuzz-reader-fuzz fuzz-json-fuzz fuzz-http2-fuzz fuzz-websocket-fuzz fuzz-dns-fuzz fuzz-pregexp-fuzz fuzz-csv-fuzz fuzz-base64-fuzz fuzz-hex-fuzz fuzz-uri-fuzz fuzz-format-fuzz fuzz-router-fuzz fuzz-sandbox-fuzz test-rawstring test-regex test-rx test-peg test-regex-all docker-build docker-push +.PHONY: help build test test-reader test-core test-runtime test-stdlib test-ffi test-modules test-expanded test-features test-wrappers test-phase4a test-phase4b test-phase4c test-phase4d test-phase4e test-phase4f test-phase5 test-phase5e test-phase6 test-phase7 test-phase8 test-functional test-repl test-security test-native test-gaps native clean-native audit-native clean fuzz fuzz-smoke fuzz-deep fuzz-reader-fuzz fuzz-json-fuzz fuzz-http2-fuzz fuzz-websocket-fuzz fuzz-dns-fuzz fuzz-pregexp-fuzz fuzz-csv-fuzz fuzz-base64-fuzz fuzz-hex-fuzz fuzz-uri-fuzz fuzz-format-fuzz fuzz-router-fuzz fuzz-sandbox-fuzz test-rawstring test-regex test-rx test-peg test-regex-all docker-build docker-push + +help: + @echo "Usage: make <target>" + @echo "" + @echo "Build:" + @echo " build Compile all Jerboa libraries" + @echo " native Build Rust native library" + @echo " clean Remove compiled .so and .wpo artifacts" + @echo " clean-native Remove Rust build artifacts" + @echo " audit-native Run cargo audit on Rust native library" + @echo "" + @echo "Test (core):" + @echo " test Run core test suite (reader, stdlib, ffi, regex)" + @echo " test-reader Reader tests" + @echo " test-core Core language tests" + @echo " test-runtime Runtime tests" + @echo " test-stdlib Standard library tests" + @echo " test-ffi FFI tests" + @echo " test-modules Module system tests" + @echo " test-expanded Expanded stdlib tests" + @echo " test-regex-all All regex tests (rawstring, regex, rx, peg)" + @echo " test-rawstring Raw string reader tests" + @echo " test-regex Regex tests" + @echo " test-rx Rx pattern tests" + @echo " test-peg PEG grammar tests" + @echo " test-repl REPL tests" + @echo " test-functional Functional tests (I/O, fork, signals)" + @echo " test-gaps Gap coverage tests" + @echo "" + @echo "Test (features):" + @echo " test-features Phase 2 + Phase 3 feature tests" + @echo " test-wrappers FFI wrapper module tests" + @echo " test-security Security tests" + @echo " test-native Rust native library tests" + @echo " test-all All test suites combined" + @echo " test-phase2 Phase 2 feature tests" + @echo " test-phase3 Phase 3 feature tests" + @echo " test-phase4a Phase 4a: Core runtime tests" + @echo " test-phase4b Phase 4b: Type system and safety tests" + @echo " test-phase4c Phase 4c: Systems and performance tests" + @echo " test-phase4d Phase 4d: Developer experience tests" + @echo " test-phase4e Phase 4e: Data and distribution tests" + @echo " test-phase4f Phase 4f: Toolchain and interop tests" + @echo " test-phase5 Phase 5: All sub-phases" + @echo " test-phase5e Phase 5e: Systems and zero-cost tests" + @echo " test-phase6 Phase 6: Real programs tests" + @echo " test-phase7 Phase 7: Gerbil porting features" + @echo " test-phase8 Phase 8: Deep Gerbil compatibility" + @echo "" + @echo "Fuzzing:" + @echo " fuzz Run all fuzz harnesses (default iterations)" + @echo " fuzz-smoke Quick smoke fuzz for CI (~30s)" + @echo " fuzz-deep Long-running deep fuzz (nightly)" + @echo " fuzz-<target> Individual fuzz targets (reader, json, http2, ...)" + @echo "" + @echo "Docker:" + @echo " docker-build Build jerboa21/jerboa base image" + @echo " docker-push Push base image to Docker Hub" build: $(SCHEME) --libdirs $(LIBDIRS) --script support/build.ss