bin-caddy/Makefile
GregoryDosh 0b7caa6c55
Some checks failed
Build Caddy / Build Caddy (push) Has been cancelled
Initial Dosh LLC Config 🌈🐻
2025-11-24 13:09:08 -06:00

64 lines
2.3 KiB
Makefile

# SPDX-License-Identifier: AGPL-3.0-or-later
# SPDX-FileCopyrightText: 2025 Dosh LLC
# avoid noisy directory messages
MAKEFLAGS += --no-print-directory
.PHONY: build
build:
@go get
@go mod verify
@echo "Building linux/amd64"
GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -o release/caddy-linux-amd64
sha256sum release/caddy-linux-amd64 | cut -f1 -d " " > release/caddy-linux-amd64.sha256
@echo "Building linux/arm64"
GOOS=linux GOARCH=arm64 CGO_ENABLED=0 go build -o release/caddy-linux-arm64
sha256sum release/caddy-linux-arm64 | cut -f1 -d " " > release/caddy-linux-arm64.sha256
@echo "Building freebsd/amd64"
GOOS=freebsd GOARCH=amd64 CGO_ENABLED=0 go build -o release/caddy-freebsd-amd64
sha256sum release/caddy-freebsd-amd64 | cut -f1 -d " " > release/caddy-freebsd-amd64.sha256
@echo "Building freebsd/arm64"
GOOS=freebsd GOARCH=arm64 CGO_ENABLED=0 go build -o release/caddy-freebsd-arm64
sha256sum release/caddy-freebsd-arm64 | cut -f1 -d " " > release/caddy-freebsd-arm64.sha256
@echo "Building openbsd/amd64"
GOOS=openbsd GOARCH=amd64 CGO_ENABLED=0 go build -o release/caddy-openbsd-amd64
sha256sum release/caddy-openbsd-amd64 | cut -f1 -d " " > release/caddy-openbsd-amd64.sha256
@echo "Building openbsd/arm64"
GOOS=openbsd GOARCH=arm64 CGO_ENABLED=0 go build -o release/caddy-openbsd-arm64
sha256sum release/caddy-openbsd-arm64 | cut -f1 -d " " > release/caddy-openbsd-arm64.sha256
.PHONY: vet
vet:
# REUSE-IgnoreStart
@echo "// SPDX-FileCopyrightText: NONE" | tee release/build.log
@echo "//" | tee -a release/build.log
@echo "// SPDX-License-Identifier: CC0-1.0" | tee -a release/build.log
# REUSE-IgnoreEnd
@echo
@echo "Starting at `date`" | tee -a release/build.log
@echo
@echo # Syft Scan Format... | tee -a release/build.log
@syft scan -o json ./ >> release/syft.json | tee -a release/build.log
@echo
@echo # Grype Vulnerability Scanning... | tee -a release/build.log
@grype --fail-on high -o table sbom:release/syft.json | tee -a release/build.log
@echo
@echo # REUSE License Checking... | tee -a release/build.log
@reuse lint | tee -a release/build.log
.PHONY: clean
clean:
@rm -f ./release/caddy-*-amd64
@rm -f ./release/caddy-*-amd64.sha256
@rm -f ./release/caddy-*-arm64
@rm -f ./release/caddy-*-arm64.sha256
@rm -f ./release/*.log