diff --git a/tools/Makefile b/tools/Makefile index 6f6aa644f..60da86655 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -11,7 +11,7 @@ acrnlog: make -C $(T)/acrnlog OUT_DIR=$(OUT_DIR) acrn-manager: - make -C $(T)/acrn-manager OUT_DIR=$(OUT_DIR) + make -C $(T)/acrn-manager OUT_DIR=$(OUT_DIR) RELEASE=$(RELEASE) acrntrace: make -C $(T)/acrntrace OUT_DIR=$(OUT_DIR) diff --git a/tools/acrn-manager/Makefile b/tools/acrn-manager/Makefile index 0657beb84..3de3ac26e 100644 --- a/tools/acrn-manager/Makefile +++ b/tools/acrn-manager/Makefile @@ -1,23 +1,39 @@ OUT_DIR ?= . +CFLAGS := -Wall +CFLAGS += -I../../devicemodel/include +ifeq ($(RELEASE),0) +CFLAGS += -g -DMNGR_DEBUG +endif + +LDFLAGS := -L$(TOOLS_OUT) +LDFLAGS += -lacrn-mngr +LDFLAGS += -lpthread + .PHONY: all -all: $(OUT_DIR)/libacrn-mngr.a $(OUT_DIR)/acrnctl +all: $(OUT_DIR)/libacrn-mngr.a $(OUT_DIR)/acrn_mngr.h $(OUT_DIR)/acrnctl $(OUT_DIR)/libacrn-mngr.a: acrn_mngr.c acrn_mngr.h - $(CC) -c acrn_mngr.c -DMNGR_DEBUG -I../../devicemodel/include -Wall -g -o $(OUT_DIR)/acrn_mngr.o + $(CC) $(CFLAGS) -c acrn_mngr.c -o $(OUT_DIR)/acrn_mngr.o ar -cr $@ $(OUT_DIR)/acrn_mngr.o - cp ./acrn_mngr.h $(OUT_DIR)/ -$(OUT_DIR)/acrnctl: acrnctl.c acrn_mngr.h - $(CC) -o $(OUT_DIR)/acrnctl acrnctl.c acrn_vm_ops.c -I../../devicemodel/include -L$(TOOLS_OUT) -lacrn-mngr -lpthread -Wall -g +ifneq ($(OUT_DIR),.) +$(OUT_DIR)/acrn_mngr.h: + cp ./acrn_mngr.h $(OUT_DIR)/ +endif + +$(OUT_DIR)/acrnctl: acrnctl.c acrn_mngr.h $(OUT_DIR)/libacrn-mngr.a + $(CC) -o $(OUT_DIR)/acrnctl acrnctl.c acrn_vm_ops.c $(CFLAGS) $(LDFLAGS) .PHONY: clean clean: rm -f $(OUT_DIR)/acrnctl rm -f $(OUT_DIR)/acrn_mngr.o rm -f $(OUT_DIR)/libacrn-mngr.a +ifneq ($(OUT_DIR),.) rm -f $(OUT_DIR)/acrn_mngr.h +endif .PHONY: install install: $(OUT_DIR)/acrnctl