From 899c42b017090f8c27e3676970b489f5477c3753 Mon Sep 17 00:00:00 2001 From: Martin Belanger Date: Fri, 28 Feb 2025 11:06:23 -0500 Subject: [PATCH] Makefile: Add new targets and update meson command syntax - For the "install" target, use "--skip-subprojects" so that only nvme-cli (and not the subprojects) get installed. - For the "purge" target, add "meson subprojects purge". - Added "update-subprojects" target - Added "test-strict" target. This is to limit testing to nvme-cli and not all the subprojects. Signed-off-by: Martin Belanger --- Makefile | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 1838a0f43f..eb4283d283 100644 --- a/Makefile +++ b/Makefile @@ -9,6 +9,10 @@ NAME := nvme .DEFAULT_GOAL := ${NAME} BUILD-DIR := .build +.PHONY: update-subprojects +update-subprojects: + meson subprojects update + ${BUILD-DIR}: meson setup $@ @echo "Configuration located in: $@" @@ -28,19 +32,29 @@ endif purge: ifneq ("$(wildcard ${BUILD-DIR})","") rm -rf ${BUILD-DIR} + meson subprojects purge --confirm endif -.PHONY: install dist -install dist: ${BUILD-DIR} - cd ${BUILD-DIR} && meson $@ +.PHONY: install +install: ${NAME} + meson install -C ${BUILD-DIR} --skip-subprojects .PHONY: uninstall uninstall: cd ${BUILD-DIR} && meson --internal uninstall +.PHONY: dist +dist: ${NAME} + meson dist -C ${BUILD-DIR} --formats gztar + .PHONY: test -test: ${BUILD-DIR} - ninja -C ${BUILD-DIR} $@ +test: ${NAME} + meson test -C ${BUILD-DIR} + +# Test strictly nvme-cli (do not run tests on all the subprojects) +.PHONY: test-strict +test-strict: ${NAME} + meson test -C ${BUILD-DIR} --suite nvme-cli .PHONY: rpm rpm: