Browse Source

pylibfdt: Enable installation of Python module

Adjust the setup script to support installation, and call it from the
Makefile if enabled. It will be disabled if we were unable to build the
module (e.g. due to swig being missing), or the NO_PYTHON environment
variable is set.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
main
Simon Glass 8 years ago committed by David Gibson
parent
commit
e91c652af2
  1. 2
      Makefile
  2. 7
      README
  3. 14
      pylibfdt/Makefile.pylibfdt

2
Makefile

@ -195,7 +195,7 @@ install-includes: @@ -195,7 +195,7 @@ install-includes:
$(INSTALL) -d $(DESTDIR)$(INCLUDEDIR)
$(INSTALL) -m 644 $(LIBFDT_include) $(DESTDIR)$(INCLUDEDIR)

install: install-bin install-lib install-includes
install: install-bin install-lib install-includes maybe_install_pylibfdt

$(VERSION_FILE): Makefile FORCE
$(call filechk,version)

7
README

@ -50,6 +50,13 @@ If you add new features, please check code coverage: @@ -50,6 +50,13 @@ If you add new features, please check code coverage:
# Open 'htmlcov/index.html' in your browser


To install the library use:

make install_pylibfdt SETUP_PREFIX=/path/to/install_dir

If SETUP_PREFIX is not provided, the default prefix is used, typically '/usr'
or '/usr/local'. See Python's distutils documentation for details.

To disable building the python library, even if swig and Python are available,
use:


14
pylibfdt/Makefile.pylibfdt

@ -14,4 +14,18 @@ $(WRAP): $(PYLIBFDT_srcdir)/libfdt.swig @@ -14,4 +14,18 @@ $(WRAP): $(PYLIBFDT_srcdir)/libfdt.swig
@$(VECHO) SWIG $@
$(SWIG) -python -o $@ $<

install_pylibfdt: $(WRAP) $(PYMODULE)
$(VECHO) INSTALL-PYLIB; \
SOURCES="$(PYLIBFDT_srcs) $(WRAP)" CPPFLAGS="$(CPPFLAGS)" \
OBJDIR="$(PYLIBFDT_objdir)" \
python $(PYLIBFDT_objdir)/setup.py --quiet 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

Loading…
Cancel
Save