mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 02:30:03 +01:00
If you use -MMD -MF then the correct .o filename is written to the .*.d file as the compiler driver arranges everything. This was done in 19010:275abe1c5d24 for the hypervisor. In this patch we do the same elsewhere in the xen-unstable tree, particularly tools/. Specifically: * Change tools/Rules.mk to add -MMD -MF ... to CFLAGS and set DEPS. * Remove -Wp,-MD... from every other Makefile * Remove setting of DEPS from every other Makefile * Ensure that every Makefile says -include $(DEPS) * Ensure that every Makefile's clean target removes $(DEPS) Some Makefiles were already halfway there, but often for a different variable name eg PROG_DEP. The variable name is now standardised in Rules.mk as DEPS. I have done a test build with this change, on Debian etch. Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
58 lines
1.2 KiB
Makefile
58 lines
1.2 KiB
Makefile
XEN_ROOT=../../..
|
|
include $(XEN_ROOT)/tools/Rules.mk
|
|
XEN_LIBXC = $(XEN_ROOT)/tools/libxc
|
|
|
|
LIBXC_ROOT = $(XEN_ROOT)/tools/libxc
|
|
LIBFLASK_ROOT = $(XEN_ROOT)/tools/flask/libflask
|
|
|
|
PROFILE=#-pg
|
|
BASECFLAGS=-Wall -g -Werror
|
|
BASECFLAGS+= $(PROFILE)
|
|
#BASECFLAGS+= -I$(XEN_ROOT)/tools
|
|
BASECFLAGS+= $(CFLAGS_libxenctrl)
|
|
BASECFLAGS+= -I$(LIBFLASK_ROOT)/include
|
|
BASECFLAGS+= -I.
|
|
|
|
CFLAGS += $(BASECFLAGS)
|
|
LDFLAGS += $(PROFILE) -L$(XEN_LIBXC) -L$(LIBFLASK_ROOT)
|
|
TESTDIR = testsuite/tmp
|
|
TESTFLAGS= -DTESTING
|
|
TESTENV = XENSTORED_ROOTDIR=$(TESTDIR) XENSTORED_RUNDIR=$(TESTDIR)
|
|
|
|
CLIENTS := flask-loadpolicy
|
|
CLIENTS_SRCS := $(patsubst flask-%,%.c,$(CLIENTS))
|
|
CLIENTS_OBJS := $(patsubst flask-%,%.o,$(CLIENTS))
|
|
|
|
.PHONY: all
|
|
all: $(CLIENTS)
|
|
|
|
$(CLIENTS): flask-%: %.o
|
|
$(CC) $(CFLAGS) $(LDFLAGS) $< $(LOADLIBES) $(LDLIBS) -L. -lflask $(LDFLAGS_libxenctrl) -o $@
|
|
|
|
$(CLIENTS_OBJS): $(CLIENTS_SRCS)
|
|
$(COMPILE.c) -o $@ $<
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
rm -f *.o *.opic *.so
|
|
rm -f $(CLIENTS)
|
|
$(RM) $(DEPS)
|
|
|
|
.PHONY: print-dir
|
|
print-dir:
|
|
@echo -n tools/flask/loadpolicy:
|
|
|
|
.PHONY: print-end
|
|
print-end:
|
|
@echo
|
|
|
|
.PHONY: install
|
|
install: all
|
|
$(INSTALL_DIR) $(DESTDIR)$(SBINDIR)
|
|
$(INSTALL_PROG) $(CLIENTS) $(DESTDIR)$(SBINDIR)
|
|
|
|
-include $(DEPS)
|
|
|
|
# never delete any intermediate files.
|
|
.SECONDARY:
|