From 3cae1d138c53a3fd042de3d2c9d9a07cf0650e0f Mon Sep 17 00:00:00 2001 From: "Daniel M. Pelt" Date: Tue, 24 Feb 2015 12:35:45 +0100 Subject: Added Python interface --- build/linux/Makefile.in | 45 +++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 43 insertions(+), 2 deletions(-) (limited to 'build/linux/Makefile.in') diff --git a/build/linux/Makefile.in b/build/linux/Makefile.in index 685e1e5..fe1ba91 100644 --- a/build/linux/Makefile.in +++ b/build/linux/Makefile.in @@ -1,5 +1,7 @@ cuda=@HAVECUDA@ matlab=@HAVEMATLAB@ +python=@HAVEPYTHON@ + MATLAB_ROOT=@MATLAB_ROOT@ @@ -9,6 +11,10 @@ ifeq ($(matlab),yes) TARGETS+=mex endif +ifeq ($(python),yes) +TARGETS+=py +endif + all: $(TARGETS) prefix=@prefix@ @@ -39,6 +45,14 @@ CXXFLAGS+=-fopenmp LDFLAGS+=-fopenmp endif +ifeq ($(python),yes) +PYCPPFLAGS = ${CPPFLAGS} +PYCPPFLAGS += -I../include +PYLDFLAGS = ${LDFLAGS} +PYLDFLAGS += -L../build/linux/.libs +PYTHON = @PYTHON@ +endif + BOOST_CPPFLAGS= BOOST_LDFLAGS= @@ -53,7 +67,7 @@ LD=@CXX@ SHELL=@SHELL@ ifeq ($(matlab),yes) -MEXFLAGS = -cxx +MEXFLAGS = -cxx MEXLDFLAGS='$$LDFLAGS $(LDFLAGS)' MEXLIBS = -L.libs -lut MEXSUFFIX = @MEXSUFFIX@ @@ -226,6 +240,14 @@ mex: $(MATLAB_MEX) $(MEX) LDFLAGS=$(MEXLDFLAGS) $(MEXFLAGS) $(LIBS) $(MEXLIBS) -lastra -output $* $*.o $(MATLAB_CXX_OBJECTS) endif +ifeq ($(python),yes) +py: libastra.la + cd ../../python; CPPFLAGS="${PYCPPFLAGS}" LDFLAGS="${PYLDFLAGS}" $(PYTHON) builder.py install \ + --install-base=./finalbuild --install-headers=./finalbuild --install-purelib=./finalbuild \ + --install-platlib=./finalbuild --install-scripts=./finalbuild --install-data=./finalbuild +endif + + libastra.la: $(ALL_OBJECTS) ./libtool --mode=link --tag=CXX $(LD) -rpath $(LIBDIR) -o $@ $(LDFLAGS) $(LIBS) $+ @@ -278,6 +300,8 @@ clean: rm -f $(addsuffix /*.d,$(DEPDIRS)) rm -f $(addsuffix /*,$(LIBDIRS)) rm -f $(TEST_OBJECTS) test.bin + rm -fr ../../python/finalbuild/ + rm -fr ../../python/build/ distclean: clean rm -f config.guess config.sub ltmain.sh libtool install-sh @@ -286,7 +310,7 @@ distclean: clean rm -rf autom4te.cache rm -f configure Makefile -install: install-libraries install-matlab +install: install-libraries install-matlab install-python install-libraries: libastra.la ./install-sh -m 755 -d @libdir@ @@ -306,6 +330,23 @@ else install-matlab: endif +ifeq ($(python),yes) +# TODO: This install location doesn't work well for /usr or /usr/local +install-python: py + ./install-sh -m 755 -d @prefix@/python + ./install-sh -m 755 -d @prefix@/python/astra + ./install-sh -m 644 ../../python/finalbuild/astra/*.so @prefix@/python/astra + ./install-sh -m 644 ../../python/finalbuild/astra/*.py @prefix@/python/astra + ./install-sh -m 644 ../../python/finalbuild/*.egg-info @prefix@/python/ + @echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" + @echo "To use ASTRA in Python, add @prefix@/python/ to your PYTHONPATH" + @echo "and @libdir@ to your LD_LIBRARY_PATH." + @echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" +# TODO: docs +else +install-python: +endif + Makefile: Makefile.in config.status CONFIG_HEADERS= CONFIG_LINKS= CONFIG_FILES=$@ $(SHELL) ./config.status -- cgit v1.2.3