mirror of
https://github.com/boostorg/python.git
synced 2026-01-22 17:32:55 +00:00
161 lines
4.6 KiB
Makefile
161 lines
4.6 KiB
Makefile
# Usage:
|
|
#
|
|
# Create a new empty directory anywhere (preferably not in the boost tree).
|
|
# Copy this Makefile to that new directory and rename it to "Makefile"
|
|
# Adjust the pathnames below.
|
|
#
|
|
# make softlinks Create softlinks to source code and tests
|
|
# make Compile all sources
|
|
# make test Run doctest tests
|
|
# make clean Remove all object files
|
|
# make unlink Remove softlinks
|
|
#
|
|
# Revision history:
|
|
# 12 Apr 01 new macro ROOT to simplify configuration (R.W. Grosse-Kunstleve)
|
|
# Initial version: R.W. Grosse-Kunstleve
|
|
|
|
ROOT=$(HOME)
|
|
BOOST=$(ROOT)/boost
|
|
|
|
PYEXE=PYTHONPATH=. /usr/bin/python
|
|
PYINC=-I/usr/include/python1.5
|
|
#PYEXE=/usr/local/Python-1.5.2/bin/python
|
|
#PYINC=-I/usr/local/Python-1.5.2/include/python1.5
|
|
#PYEXE=/usr/local/Python-2.0/bin/python
|
|
#PYINC=-I/usr/local/Python-2.0/include/python2.0
|
|
|
|
STDOPTS=-ftemplate-depth-21 -fPIC
|
|
WARNOPTS=
|
|
OPTOPTS=-g
|
|
|
|
CPP=g++
|
|
CPPOPTS=$(STLPORTINC) $(STLPORTOPTS) -I$(BOOST) $(PYINC) \
|
|
$(STDOPTS) $(WARNOPTS) $(OPTOPTS)
|
|
MAKEDEP=-M
|
|
|
|
LD=$(CPP)
|
|
LDOPTS=-shared
|
|
|
|
OBJ=classes.o conversions.o extension_class.o functions.o \
|
|
init_function.o module_builder.o \
|
|
objects.o types.o cross_module.o
|
|
DEPOBJ=$(OBJ) \
|
|
comprehensive.o \
|
|
abstract.o \
|
|
getting_started1.o getting_started2.o \
|
|
simple_vector.o \
|
|
do_it_yourself_converters.o \
|
|
pickle1.o pickle2.o pickle3.o \
|
|
noncopyable_export.o noncopyable_import.o \
|
|
ivect.o dvect.o
|
|
|
|
.SUFFIXES: .o .cpp
|
|
|
|
all: libboost_python.a \
|
|
boost_python_test.so \
|
|
abstract.so \
|
|
getting_started1.so getting_started2.so \
|
|
simple_vector.so \
|
|
do_it_yourself_converters.so \
|
|
pickle1.so pickle2.so pickle3.so \
|
|
noncopyable_export.so noncopyable_import.so \
|
|
ivect.so dvect.so
|
|
|
|
libboost_python.a: $(OBJ)
|
|
rm -f libboost_python.a
|
|
ar r libboost_python.a $(OBJ)
|
|
|
|
boost_python_test.so: $(OBJ) comprehensive.o
|
|
$(LD) $(LDOPTS) $(OBJ) comprehensive.o -o boost_python_test.so -lm
|
|
|
|
abstract.so: $(OBJ) abstract.o
|
|
$(LD) $(LDOPTS) $(OBJ) abstract.o -o abstract.so
|
|
|
|
getting_started1.so: $(OBJ) getting_started1.o
|
|
$(LD) $(LDOPTS) $(OBJ) getting_started1.o -o getting_started1.so
|
|
|
|
getting_started2.so: $(OBJ) getting_started2.o
|
|
$(LD) $(LDOPTS) $(OBJ) getting_started2.o -o getting_started2.so
|
|
|
|
simple_vector.so: $(OBJ) simple_vector.o
|
|
$(LD) $(LDOPTS) $(OBJ) simple_vector.o -o simple_vector.so
|
|
|
|
do_it_yourself_converters.so: $(OBJ) do_it_yourself_converters.o
|
|
$(LD) $(LDOPTS) $(OBJ) do_it_yourself_converters.o -o do_it_yourself_converters.so
|
|
|
|
pickle1.so: $(OBJ) pickle1.o
|
|
$(LD) $(LDOPTS) $(OBJ) pickle1.o -o pickle1.so
|
|
|
|
pickle2.so: $(OBJ) pickle2.o
|
|
$(LD) $(LDOPTS) $(OBJ) pickle2.o -o pickle2.so
|
|
|
|
pickle3.so: $(OBJ) pickle3.o
|
|
$(LD) $(LDOPTS) $(OBJ) pickle3.o -o pickle3.so
|
|
|
|
noncopyable_export.so: $(OBJ) noncopyable_export.o
|
|
$(LD) $(LDOPTS) $(OBJ) $(HIDDEN) \
|
|
noncopyable_export.o -o noncopyable_export.so
|
|
|
|
noncopyable_import.so: $(OBJ) noncopyable_import.o
|
|
$(LD) $(LDOPTS) $(OBJ) $(HIDDEN) \
|
|
noncopyable_import.o -o noncopyable_import.so
|
|
|
|
ivect.so: $(OBJ) ivect.o
|
|
$(LD) $(LDOPTS) $(OBJ) $(HIDDEN) ivect.o -o ivect.so
|
|
|
|
dvect.so: $(OBJ) dvect.o
|
|
$(LD) $(LDOPTS) $(OBJ) $(HIDDEN) dvect.o -o dvect.so
|
|
|
|
.cpp.o:
|
|
$(CPP) $(CPPOPTS) -c $*.cpp
|
|
|
|
test:
|
|
$(PYEXE) comprehensive.py
|
|
$(PYEXE) test_abstract.py
|
|
$(PYEXE) test_getting_started1.py
|
|
$(PYEXE) test_getting_started2.py
|
|
$(PYEXE) test_simple_vector.py
|
|
$(PYEXE) test_do_it_yourself_converters.py
|
|
$(PYEXE) test_pickle1.py
|
|
$(PYEXE) test_pickle2.py
|
|
$(PYEXE) test_pickle3.py
|
|
$(PYEXE) test_cross_module.py
|
|
|
|
clean:
|
|
rm -f $(OBJ) libboost_python.a libboost_python.a.input
|
|
rm -f comprehensive.o boost_python_test.so
|
|
rm -f abstract.o abstract.so
|
|
rm -f getting_started1.o getting_started1.so
|
|
rm -f getting_started2.o getting_started2.so
|
|
rm -f simple_vector.o simple_vector.so
|
|
rm -f do_it_yourself_converters.o do_it_yourself_converters.so
|
|
rm -f pickle1.o pickle1.so
|
|
rm -f pickle2.o pickle2.so
|
|
rm -f pickle3.o pickle3.so
|
|
rm -f noncopyable_export.o noncopyable_export.so
|
|
rm -f noncopyable_import.o noncopyable_import.so
|
|
rm -f ivect.o ivect.so
|
|
rm -f dvect.o dvect.so
|
|
rm -f so_locations *.pyc
|
|
|
|
softlinks:
|
|
$(PYEXE) $(BOOST)/libs/python/build/filemgr.py $(BOOST) softlinks
|
|
|
|
unlink:
|
|
$(PYEXE) $(BOOST)/libs/python/build/filemgr.py $(BOOST) unlink
|
|
|
|
cp:
|
|
$(PYEXE) $(BOOST)/libs/python/build/filemgr.py $(BOOST) cp
|
|
|
|
rm:
|
|
$(PYEXE) $(BOOST)/libs/python/build/filemgr.py $(BOOST) rm
|
|
|
|
depend:
|
|
@ cat Makefile.nodepend; \
|
|
for obj in $(DEPOBJ); \
|
|
do \
|
|
bn=`echo "$$obj" | cut -d. -f1`; \
|
|
$(CPP) $(CPPOPTS) $(MAKEDEP) "$$bn".cpp; \
|
|
done
|
|
|