Rename optional shell build target to extras
ober
d44463ed0c1c406b874c9faa3fa41b3aa3e3f76d
--- a/Makefile +++ b/Makefile @@ -19,7 +19,7 @@ JERBUILD ?= $(shell if [ -x ./jerbuild ]; then echo ./jerbuild; \ JH = $(shell "$(JERBUILD)" --jerboa-home 2>/dev/null) # Optional builds are selected by features.conf or JSH_FEATURES. This repo is -# only entered through jerboa-shell's explicit `make options` path; the normal +# only entered through jerboa-shell's explicit `make extras` path; the normal # jerboa-shell build remains the bare shell. JSH_FEATURES_CONF ?= features.conf export JSH_FEATURES @@ -29,7 +29,7 @@ JSH_CROSS_FEATURES ?= $(JSH_FEATURES) JSH_HARDENED_FEATURES ?= all JSH_HARDENED_NATIVE_FEATURES ?= $(JSH_NATIVE_NO_SQLITE_FEATURES) JSH_OUTPUT ?= jsh-macos -OPTIONS_OUTPUT ?= $(CURDIR)/jsh-options +EXTRAS_OUTPUT ?= $(CURDIR)/jsh-extras # Vendored project dependencies. The Jerboa stdlib comes from $(JH)/lib. VENDOR ?= $(CURDIR)/vendor COREUTILS ?= $(VENDOR)/jerboa-coreutils/lib @@ -76,7 +76,7 @@ JSH := $(if $(HOST_TERMUX),./jsh-android,$(if $(filter Darwin,$(HOST_OS)) # Linux binary under alpine on a non-Linux host). NOT used by any build target. PODMAN ?= podman -.PHONY: ensure-jerboa-tools ensure-jerboa-shell ensure-jsqlite stage-jsqlite ffi jerboa compile run clean test test-security-regressions test-security-policy build binary all options configure features features-all features-minimal show-features jsh jsh-compile jsh-run jsh-binary jsh-jerbuild \ +.PHONY: ensure-jerboa-tools ensure-jerboa-shell ensure-jsqlite stage-jsqlite ffi jerboa compile run clean test test-security-regressions test-security-policy build binary all extras configure features features-all features-minimal show-features jsh jsh-compile jsh-run jsh-binary jsh-jerbuild \ musl test-binary test-mux test-mux-screen \ gen-embed embed-crypto gen-certs verify-harden help check-platforms install-hooks \ jsh-macos jsh-macos-minimal jsh-macos-full macos \ @@ -134,13 +134,13 @@ stage-jsqlite: ensure-jsqlite -o -name '*.ta6le' -o -name '*.ta6fb' \ -o -name '*.tarm64osx' -o -name '*.tx86_64osx' \) -delete 2>/dev/null || true -options: configure +extras: configure @echo "=== Fetching dependencies for the selected jerboa-shell extras ===" @$(MAKE) vendor-deps @echo "=== Building jerboa-shell with selected extras ===" @$(MAKE) binary - @cp -f "$(JSH)" "$(OPTIONS_OUTPUT)" - @echo "=== Optional shell ready: $(OPTIONS_OUTPUT) ===" + @cp -f "$(JSH)" "$(EXTRAS_OUTPUT)" + @echo "=== Extras shell ready: $(EXTRAS_OUTPUT) ===" configure features: @tools/select-features.sh --write "$(JSH_FEATURES_CONF)" @@ -1005,7 +1005,7 @@ help: @echo " make ensure-jerboa-tools Use local tools or authenticate a signed release into .jerboa/bin" @echo " make check-vendor-staged-libs-fresh Verify staged vendor .sls files match .ss sources" @echo " make gen-embed Regenerate embedded file data" - @echo " make options Select extras, fetch dependencies, and build" + @echo " make extras Select extras, fetch dependencies, and build" @echo " Hardened builds also use all jsh features" @echo " JERBOA_NATIVE_FEATURES='tls crypto' make linux-amd64 Native Rust engines; sqlite remains forbidden" @echo "" --- a/README.md +++ b/README.md @@ -7,11 +7,11 @@ and `make jsh` builds in jerboa-shell do not fetch or enable this repository. From a jerboa-shell checkout, run: ```sh -make options +make extras ``` That command fetches this repository, opens an interactive feature menu, fetches -the external Jerboa package set, and builds the enhanced shell as `jsh-options` +the external Jerboa package set, and builds the enhanced shell as `jsh-extras` in the jerboa-shell checkout. Use Space to toggle an item, `a` for all, `n` for none, and Enter to save the selection and build. --- a/tools/select-features.sh +++ b/tools/select-features.sh @@ -186,7 +186,7 @@ write_config() { { echo ";; features.conf -- generated by tools/select-features.sh" - echo ";; Re-run make options to change this selection." + echo ";; Re-run make extras to change this selection." if [ "$count" -eq 0 ]; then echo "(features)" else