1# 2# tools/helpers/Makefile 3# 4 5XEN_ROOT = $(CURDIR)/../.. 6include $(XEN_ROOT)/tools/Rules.mk 7 8TARGETS := xen-init-dom0 9ifeq ($(CONFIG_Linux),y) 10ifeq ($(CONFIG_X86),y) 11TARGETS += init-xenstore-domain 12endif 13ifeq ($(CONFIG_ARM),y) 14TARGETS += init-dom0less 15endif 16endif 17 18XEN_INIT_DOM0_OBJS = xen-init-dom0.o init-dom-json.o 19$(XEN_INIT_DOM0_OBJS): CFLAGS += $(CFLAGS_libxentoollog) 20$(XEN_INIT_DOM0_OBJS): CFLAGS += $(CFLAGS_libxenstore) 21$(XEN_INIT_DOM0_OBJS): CFLAGS += $(CFLAGS_libxenlight) 22$(XEN_INIT_DOM0_OBJS): CFLAGS += $(CFLAGS_libxenctrl) 23xen-init-dom0: LDLIBS += $(call xenlibs-ldlibs,ctrl toollog store light) 24 25INIT_XENSTORE_DOMAIN_OBJS = init-xenstore-domain.o init-dom-json.o 26$(INIT_XENSTORE_DOMAIN_OBJS): CFLAGS += $(CFLAGS_libxentoollog) 27$(INIT_XENSTORE_DOMAIN_OBJS): CFLAGS += $(CFLAGS_libxenguest) 28$(INIT_XENSTORE_DOMAIN_OBJS): CFLAGS += $(CFLAGS_libxenctrl) 29$(INIT_XENSTORE_DOMAIN_OBJS): CFLAGS += $(CFLAGS_libxenstore) 30$(INIT_XENSTORE_DOMAIN_OBJS): CFLAGS += $(CFLAGS_libxenlight) 31$(INIT_XENSTORE_DOMAIN_OBJS): CFLAGS += -include $(XEN_ROOT)/tools/config.h 32init-xenstore-domain: LDLIBS += $(call xenlibs-ldlibs,toollog store ctrl guest light) 33 34INIT_DOM0LESS_OBJS = init-dom0less.o init-dom-json.o 35$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxentoollog) 36$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenstore) 37$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenlight) 38$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenctrl) 39$(INIT_DOM0LESS_OBJS): CFLAGS += $(CFLAGS_libxenevtchn) 40init-dom0less: LDLIBS += $(call xenlibs-ldlibs,ctrl evtchn toollog store light guest foreignmemory) 41 42.PHONY: all 43all: $(TARGETS) 44 45xen-init-dom0: $(XEN_INIT_DOM0_OBJS) 46 $(CC) $(LDFLAGS) -o $@ $(XEN_INIT_DOM0_OBJS) $(LDLIBS) $(APPEND_LDFLAGS) 47 48init-xenstore-domain: $(INIT_XENSTORE_DOMAIN_OBJS) 49 $(CC) $(LDFLAGS) -o $@ $(INIT_XENSTORE_DOMAIN_OBJS) $(LDLIBS) $(APPEND_LDFLAGS) 50 51init-dom0less: $(INIT_DOM0LESS_OBJS) 52 $(CC) $(LDFLAGS) -o $@ $(INIT_DOM0LESS_OBJS) $(LDLIBS) $(APPEND_LDFLAGS) 53 54.PHONY: install 55install: all 56 $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN) 57 for i in $(TARGETS); do $(INSTALL_PROG) $$i $(DESTDIR)$(LIBEXEC_BIN); done 58 59.PHONY: uninstall 60uninstall: 61 for i in $(TARGETS); do rm -f $(DESTDIR)$(LIBEXEC_BIN)/$$i; done 62 63.PHONY: clean 64clean: 65 $(RM) *.o $(TARGETS) $(DEPS_RM) 66 67distclean: clean 68