aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2025-08-23 21:52:59 -0400
committerBruce Hill <bruce@bruce-hill.com>2025-08-23 21:52:59 -0400
commit583dc27b3481f939895adf7cfabd0ecf39b396b6 (patch)
tree2aff2af143ac73e914a4539b933abcc5422ccef1
parentbd8b2306d2792794f48d4c88f1eb06cae411a9db (diff)
Installer fixv0.3
-rw-r--r--Makefile56
1 files changed, 24 insertions, 32 deletions
diff --git a/Makefile b/Makefile
index 39e1cb89..6a6d8897 100644
--- a/Makefile
+++ b/Makefile
@@ -204,44 +204,36 @@ install-files: build/bin/$(EXE_FILE) build/lib/$(LIB_FILE) build/lib/$(AR_FILE)
printf "\n\033[1mexport PATH=\"$(PREFIX):\$$PATH\"\033[m\n\n" >&2; \
exit 1; \
fi
- install-stuff() { \
- mkdir -p -m 755 "$(PREFIX)/man/man1" "$(PREFIX)/man/man3" "$(PREFIX)/bin" "$(PREFIX)/include/tomo_$(TOMO_VERSION)" "$(PREFIX)/lib"; \
- cp src/stdlib/*.h "$(PREFIX)/include/tomo_$(TOMO_VERSION)/"; \
- cp build/lib/$(LIB_FILE) build/lib/$(AR_FILE) "$(PREFIX)/lib/"; \
- rm -f "$(PREFIX)/bin/$(EXE_FILE)"; \
- cp build/bin/$(EXE_FILE) "$(PREFIX)/bin/"; \
- cp man/man1/* "$(PREFIX)/man/man1/"; \
- cp man/man3/* "$(PREFIX)/man/man3/"; \
- sh link_versions.sh; \
- }; \
- if [ -w '$(PREFIX)' ]; then \
- install-stuff; \
- else \
- $(SUDO) -u "$(OWNER)" install-stuff; \
- fi
+ if ! [ -w "$(PREFIX)" ]; then \
+ $(SUDO) -u $(OWNER) $(MAKE) install-files; \
+ exit 0; \
+ fi; \
+ mkdir -p -m 755 "$(PREFIX)/man/man1" "$(PREFIX)/man/man3" "$(PREFIX)/bin" "$(PREFIX)/include/tomo_$(TOMO_VERSION)" "$(PREFIX)/lib"; \
+ cp src/stdlib/*.h "$(PREFIX)/include/tomo_$(TOMO_VERSION)/"; \
+ cp build/lib/$(LIB_FILE) build/lib/$(AR_FILE) "$(PREFIX)/lib/"; \
+ rm -f "$(PREFIX)/bin/$(EXE_FILE)"; \
+ cp build/bin/$(EXE_FILE) "$(PREFIX)/bin/"; \
+ cp man/man1/* "$(PREFIX)/man/man1/"; \
+ cp man/man3/* "$(PREFIX)/man/man3/"; \
+ sh link_versions.sh
install-libs: build/bin/$(EXE_FILE) check-utilities
- install-libs() { \
- ./local-tomo -qIL lib/patterns lib/json lib/time lib/commands lib/shell lib/random lib/base64 lib/pthreads lib/uuid lib/core; \
- }; \
- if [ -w '$(PREFIX)' ]; then \
- install-libs; \
- else \
- install-libs; \
- fi
+ if ! [ -w "$(PREFIX)" ]; then \
+ $(SUDO) -u $(OWNER) $(MAKE) install-libs; \
+ exit 0; \
+ fi; \
+ ./local-tomo -qIL lib/patterns lib/json lib/time lib/commands lib/shell lib/random lib/base64 lib/pthreads lib/uuid lib/core
install: install-files install-libs
uninstall:
- uninstall-stuff() { \
- rm -rvf "$(PREFIX)/bin/tomo" "$(PREFIX)/bin/tomo"[0-9]* "$(PREFIX)/bin/tomo_v"* "$(PREFIX)/include/tomo_v"* "$(PREFIX)/lib/libtomo_v*" "$(PREFIX)/share/tomo_$(TOMO_VERSION)"; \
- sh link_versions.sh; \
- }; \
- if [ -w '$(PREFIX)' ]; then \
- uninstall-stuff; \
- else \
- $(SUDO) -u "$(OWNER)" uninstall-stuff; \
- fi
+ if ! [ -w "$(PREFIX)" ]; then \
+ $(SUDO) -u $(OWNER) $(MAKE) uninstall; \
+ exit 0; \
+ fi; \
+ rm -rvf "$(PREFIX)/bin/tomo" "$(PREFIX)/bin/tomo"[0-9]* "$(PREFIX)/bin/tomo_v"* "$(PREFIX)/include/tomo_v"* \
+ "$(PREFIX)/lib/libtomo_v*" "$(PREFIX)/share/tomo_$(TOMO_VERSION)"; \
+ sh link_versions.sh
endif