Refactor build process and streamline executable handling

This commit is contained in:
netkas 2024-12-27 15:27:57 -05:00
parent 015f13bf12
commit 9e97a6d414
4 changed files with 134 additions and 180 deletions

View file

@ -1,20 +1,33 @@
# Variables
CONFIG ?= release
DEFAULT_CONFIGURATION ?= release
LOG_LEVEL = debug
OUTDIR = build/$(CONFIG)
PACKAGE = $(OUTDIR)/net.nosial.configlib.ncc
# Default Target
all: build
all: release debug release-executable debug-executable release_executable debug_executable
# Build Steps
build:
ncc build --config=$(CONFIG) --log-level $(LOG_LEVEL)
release:
ncc build --config=release --log-level $(LOG_LEVEL)
debug:
ncc build --config=debug --log-level $(LOG_LEVEL)
release-executable:
ncc build --config=release-executable --log-level $(LOG_LEVEL)
debug-executable:
ncc build --config=debug-executable --log-level $(LOG_LEVEL)
release_executable:
ncc build --config=release_executable --log-level $(LOG_LEVEL)
debug_executable:
ncc build --config=debug_executable --log-level $(LOG_LEVEL)
install: build
ncc package install --package=$(PACKAGE) --skip-dependencies --build-source --reinstall -y --log-level $(LOG_LEVEL)
install: release
ncc package install --package=build/release/net.nosial.configlib.ncc --skip-dependencies --build-source --reinstall -y --log-level $(LOG_LEVEL)
test: release
[ -f phpunit.xml ] || { echo "phpunit.xml not found"; exit 1; }
phpunit
clean:
rm -rf build
.PHONY: all build install clean
.PHONY: all install test clean release debug release-executable debug-executable release_executable debug_executable