1XEN_ROOT = $(CURDIR)/../.. 2include $(XEN_ROOT)/tools/Rules.mk 3 4.PHONY: all 5all: build 6 7PY_CFLAGS = $(CFLAGS) $(PY_NOOPT_CFLAGS) 8PY_LDFLAGS = $(SHLIB_LDFLAGS) $(APPEND_LDFLAGS) 9INSTALL_LOG = build/installed_files.txt 10 11setup.py = CC="$(CC)" CFLAGS="$(PY_CFLAGS)" LDSHARED="$(CC)" LDFLAGS="$(PY_LDFLAGS)" \ 12 SHLIB_libxenctrl="$(SHLIB_libxenctrl)" \ 13 SHLIB_libxenguest="$(SHLIB_libxenguest)" \ 14 SHLIB_libxenstore="$(SHLIB_libxenstore)" \ 15 $(PYTHON) setup.py 16 17.PHONY: build 18build: 19 $(setup.py) build 20 21.PHONY: install 22install: 23 $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN) 24 $(setup.py) install --record $(INSTALL_LOG) $(PYTHON_PREFIX_ARG) \ 25 --root="$(DESTDIR)" --force 26 $(INSTALL_PYTHON_PROG) scripts/convert-legacy-stream $(DESTDIR)$(LIBEXEC_BIN) 27 $(INSTALL_PYTHON_PROG) scripts/verify-stream-v2 $(DESTDIR)$(LIBEXEC_BIN) 28 29.PHONY: uninstall 30uninstall: 31 rm -f $(DESTDIR)$(LIBEXEC_BIN)/verify-stream-v2 32 rm -f $(DESTDIR)$(LIBEXEC_BIN)/convert-legacy-stream 33 if [ -e $(INSTALL_LOG) ]; then \ 34 cat $(INSTALL_LOG) | xargs -i rm -f $(DESTDIR)/{}; \ 35 fi 36 37.PHONY: test 38test: 39 LD_LIBRARY_PATH=$$(readlink -f ../libs/ctrl):$$(readlink -f ../xenstore) $(PYTHON) -m unittest discover -v 40 41.PHONY: clean 42clean: 43 find . \( -name "*.py[ocd]" -o -name "*~" -o -name "_*.[hc]" \) -delete 44 rm -rf build/ 45 rm -f $(DEPS_RM) 46 47.PHONY: distclean 48distclean: clean 49 50-include $(DEPS_INCLUDE) 51