From 896f1c1332650f5370a21c1c507106a87d17fd3d Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Fri, 7 Apr 2017 15:51:33 -0600 Subject: [PATCH] pylibfdt: Use Makefile constructs to implement NO_PYTHON The current mechanism uses a shell construct, but it seems better to use a Makefile approach. Signed-off-by: Simon Glass Suggested-by: Mike Frysinger Signed-off-by: David Gibson --- Makefile | 15 ++++++++++++--- pylibfdt/Makefile.pylibfdt | 7 ------- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/Makefile b/Makefile index 154f5bf..beca4a0 100644 --- a/Makefile +++ b/Makefile @@ -117,10 +117,11 @@ BIN += fdtput SCRIPTS = dtdiff +all: $(BIN) libfdt + # We need both Python and swig to build pylibfdt. .PHONY: maybe_pylibfdt maybe_pylibfdt: FORCE - if [ -n "${NO_PYTHON}" ]; then exit; fi; \ if $(PKG_CONFIG) --cflags python >/dev/null 2>&1; then \ if which swig >/dev/null 2>&1; then \ can_build=yes; \ @@ -132,7 +133,9 @@ maybe_pylibfdt: FORCE echo "## Skipping pylibfdt (install python dev and swig to build)"; \ fi -all: $(BIN) libfdt maybe_pylibfdt +ifeq ($(NO_PYTHON),) +all: maybe_pylibfdt +endif ifneq ($(DEPTARGETS),) @@ -195,7 +198,11 @@ install-includes: $(INSTALL) -d $(DESTDIR)$(INCLUDEDIR) $(INSTALL) -m 644 $(LIBFDT_include) $(DESTDIR)$(INCLUDEDIR) -install: install-bin install-lib install-includes maybe_install_pylibfdt +install: install-bin install-lib install-includes + +ifeq ($(NO_PYTHON),) +install: install_pylibfdt +endif $(VERSION_FILE): Makefile FORCE $(call filechk,version) @@ -267,7 +274,9 @@ TESTS_BIN += convert-dtsv0 TESTS_BIN += fdtput TESTS_BIN += fdtget TESTS_BIN += fdtdump +ifeq ($(NO_PYTHON),) TESTS_PYLIBFDT += maybe_pylibfdt +endif include tests/Makefile.tests diff --git a/pylibfdt/Makefile.pylibfdt b/pylibfdt/Makefile.pylibfdt index 0e8ac5f..4036b1f 100644 --- a/pylibfdt/Makefile.pylibfdt +++ b/pylibfdt/Makefile.pylibfdt @@ -25,11 +25,4 @@ install_pylibfdt: $(WRAP) $(PYMODULE) $(call run_setup, $(PYLIBFDT_srcs) $(WRAP), \ install $(if $(SETUP_PREFIX),--prefix=$(SETUP_PREFIX))) -maybe_install_pylibfdt: - if [ -e $(PYMODULE) ]; then \ - if [ -z "$(NO_PYTHON)" ]; then \ - $(MAKE) install_pylibfdt; \ - fi; \ - fi - PYLIBFDT_cleanfiles = libfdt_wrap.c libfdt.py libfdt.pyc _libfdt.so