.POSIX: .SUFFIXES: GO ?= go RM ?= rm GOFLAGS ?= PREFIX ?= /usr/local BINDIR ?= bin all: check_go_version sif @echo "โœ… All tasks completed successfully! ๐ŸŽ‰" check_go_version: @echo "๐Ÿ” Checking Go version..." @$(GO) version | grep -q "go1\.23\." || (echo "โŒ Error: Please install the latest version of Go" && exit 1) @echo "โœ… Go version check passed!" sif: check_go_version @echo "๐Ÿ› ๏ธ Building sif..." $(GO) build $(GOFLAGS) ./cmd/sif @echo "โœ… sif built successfully! ๐Ÿš€" clean: @echo "๐Ÿงน Cleaning up..." $(RM) -rf sif @echo "โœจ Cleanup complete!" install: check_go_version @echo "๐Ÿ“ฆ Installing sif..." mkdir -p $(DESTDIR)$(PREFIX)/$(BINDIR) cp -f sif $(DESTDIR)$(PREFIX)/$(BINDIR) @echo "โœ… sif installed successfully! ๐ŸŽŠ" uninstall: @echo "๐Ÿ—‘๏ธ Uninstalling sif..." $(RM) $(DESTDIR)$(PREFIX)/$(BINDIR)/sif @echo "โœ… sif uninstalled successfully!" .PHONY: all check_go_version sif clean install uninstall