8000 Merge branch 'v1.0.x' of https://github.com/fgb/matplotlib into v1.0.x · matplotlib/matplotlib@fb9a7e5 · GitHub
[go: up one dir, main page]

Skip to content

Commit fb9a7e5

Browse files
committed
Merge branch 'v1.0.x' of https://github.com/fgb/matplotlib into v1.0.x
2 parents e8f73cb + a71414d commit fb9a7e5

File tree

2 files changed

+65
-57
lines changed

2 files changed

+65
-57
lines changed

README.osx

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,29 @@ Build mpl on OSX has proven to be a nightmare because of all the
22
different types of zlib, png and freetype that may be on your system.
33
The recommended and supported way to build is to use the make.osx file
44
in this directory. This script requires you to set a PREFIX
5-
environment variable where you want to the install to go. It will
6-
fetch the dependencies from a remove server and install them into your
5+
environment variable where you want the install to go. It will
6+
fetch the dependencies from a remote server and install them into your
77
PREFIX dir, and then build mpl against them. It should ignore any
88
lib, png or freetype on your system
99

1010
Example usage::
1111

12-
PREFIX=/Users/jdhunter/dev make -f make.osx fetch deps mpl_install
12+
make -f make.osx PREFIX=/Users/jdhunter/dev PYVERSION=2.6 \
13+
fetch deps mpl_install_std
1314

15+
Variables:
16+
PREFIX (required): where to install the dependencies
17+
PYVERSION (optional): which python version to use
18+
(default=python, e.g. PYVERSION=2.6 uses python2.6)
19+
20+
Targets:
21+
22+
clean: remove compiled files
23+
fetch: download dependencies
24+
deps: build all dependencies (zlib, png, freetype)
25+
mpl_build: compile matplotlib
26+
mpl_install: install matplotlib in $PREFIX/lib/pythonX.Y/site-packages
27+
mpl_install_std: install matplotlib in standard site-packages directory
28+
mpl_install_egg: install matplotlib as an egg
29+
mpl_install_develop: set up egg link to working directory (for developers)
30+
binaries: create the dmg file for distribution

make.osx

Lines changed: 45 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,106 +1,97 @@
1+
# -*- makefile -*-
12
# build mpl into a local install dir with
2-
# PREFIX=/Users/jdhunter/dev make -f make.osx fetch deps mpl_install
3+
# make -f make.osx PREFIX=/Users/jdhunter/dev PYVERSION=2.6 fetch deps mpl_install
4+
# (see README.osx for more details)
35

4-
PYVERSION=2.6
56
PYTHON=python${PYVERSION}
67
ZLIBVERSION=1.2.3
78
PNGVERSION=1.2.39
89
FREETYPEVERSION=2.3.11
910
MACOSX_DEPLOYMENT_TARGET=10.6
1011
OSX_SDK_VER=10.6
11-
ARCH_FLAGS="-arch i386-arch x86_64"
12+
ARCH_FLAGS=-arch i386 -arch x86_64
1213

1314
## You shouldn't need to configure past this point
1415

15-
#PKG_CONFIG_PATH="${PREFIX}/lib/pkgconfig"
16-
#CFLAGS="${ARCH_FLAGS} -I${PREFIX}/include -I${PREFIX}/include/freetype2 -isysroot /Developer/SDKs/MacOSX${OSX_SDK_VER}.sdk"
17-
#LDFLAGS="${ARCH_FLAGS} -L${PREFIX}/lib -syslibroot,/Developer/SDKs/MacOSX${OSX_SDK_VER}.sdk"
16+
export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig
17+
export CFLAGS=${ARCH_FLAGS} -I${PREFIX}/include -I${PREFIX}/include/freetype2 -isysroot /Developer/SDKs/MacOSX${OSX_SDK_VER}.sdk
18+
export LDFLAGS=${ARCH_FLAGS} -L${PREFIX}/lib -syslibroot,/Developer/SDKs/MacOSX${OSX_SDK_VER}.sdk
19+
export MACOSX_DEPLOYMENT_TARGET
1820

19-
PKG_CONFIG_PATH="${PREFIX}/lib/pkgconfig"
20-
CFLAGS="-arch i386 -arch x86_64 -I${PREFIX}/include -I${PREFIX}/include/freetype2 -isysroot /Developer/SDKs/MacOSX${OSX_SDK_VER}.sdk"
21-
LDFLAGS="-arch i386 -arch x86_64 -L${PREFIX}/lib -syslibroot,/Developer/SDKs/MacOSX${OSX_SDK_VER}.sdk"
22-
FFLAGS="-arch i386 -arch x86_64"
21+
help:
22+
@echo "Interesting targets: clean, fetch, deps, mpl_build, mpl_install_std"
23+
@echo "See README.osx for details"
2324

2425
clean:
25-
rm -rf zlib-${ZLIBVERSION}.tar.gz libpng-${PNGVERSION}.tar.bz2 \
26+
rm -rf zlib-${ZLIBVERSION}.tar.gz libpng-${PNGVERSION}.tar.gz \
2627
freetype-${FREETYPEVERSION}.tar.bz2 bdist_mpkg-${BDISTMPKGVERSION}.tar.gz \
27-
bdist_mpkg-${BDISTMPKGVERSION} \
28+
bdist_mpkg-${BDISTMPKGVERSION} setupext.pyc \
29+
lib/matplotlib/mpl-data/matplotlib.conf lib/matplotlib/mpl-data/matplotlibrc \
2830
zlib-${ZLIBVERSION} libpng-${PNGVERSION} freetype-${FREETYPEVERSION} \
2931
build
3032

3133

3234

3335
fetch:
34-
${PYTHON} -c 'import urllib; urllib.urlretrieve("http://superb-sea2.dl.sourceforge.net/project/libpng/zlib/${ZLIBVERSION}/zlib-${ZLIBVERSION}.tar.gz", "zlib-${ZLIBVERSION}.tar.gz")' &&\
35-
${PYTHON} -c 'import urllib; urllib.urlretrieve("http://sourceforge.net/projects/libpng/files/libpng-stable/${PNGVERSION}/libpng-${PNGVERSION}.tar.gz/download", "libpng-${PNGVERSION}.tar.gz")' &&\
36+
${PYTHON} -c 'import urllib; urllib.urlretrieve("http://sourceforge.net/projects/libpng/files/zlib/${ZLIBVERSION}/zlib-${ZLIBVERSION}.tar.gz/download", "zlib-${ZLIBVERSION}.tar.gz")' &&\
37+
${PYTHON} -c 'import urllib; urllib.urlretrieve("http://sourceforge.net/projects/libpng/files/libpng12/older-releases/${PNGVERSION}/libpng-${PNGVERSION}.tar.gz/download", "libpng-${PNGVERSION}.tar.gz")' &&\
3638
${PYTHON} -c 'import urllib; urllib.urlretrieve("http://download.savannah.gnu.org/releases/freetype/freetype-${FREETYPEVERSION}.tar.bz2", "freetype-${FREETYPEVERSION}.tar.bz2")'
3739

40+
check-prefix:
41+
@if [ ! -d "$(PREFIX)" ]; then echo Set PREFIX to a directory - see README.osx; exit 1; fi
3842

39-
40-
41-
zlib:
42-
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH} &&\
43+
zlib: check-prefix
4344
rm -rf zlib-${ZLIBVERSION} &&\
4445
tar xvfz zlib-${ZLIBVERSION}.tar.gz &&\
4546
cd zlib-${ZLIBVERSION} &&\
46-
export MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} &&\
47-
export CFLAGS=${CFLAGS} &&\
48-
export LDFLAGS=${LDFLAGS} &&\
4947
./configure --prefix=${PREFIX}&&\
50-
MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} make -j3 install&& \
51-
unset MACOSX_DEPLOYMENT_TARGET
48+
${MAKE} -j3 install
5249

53-
png: zlib
54-
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH} &&\
50+
png: check-prefix zlib
5551
rm -rf libpng-${PNGVERSION} &&\
5652
tar xvfz libpng-${PNGVERSION}.tar.gz && \
5753
cd libpng-${PNGVERSION} &&\
58-
export MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} &&\
59-
export CFLAGS=${CFLAGS} &&\
60-
export LDFLAGS=${LDFLAGS} &&\
6154
./configure --disable-dependency-tracking --prefix=${PREFIX} &&\
62-
make -j3 install&&\
63-
cp .libs/libpng.a . &&\
64-
unset MACOSX_DEPLOYMENT_TARGET
55+
${MAKE} -j3 install&&\
56+
cp .libs/libpng.a .
6557

66-
67-
freetype: zlib
68-
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH} &&\
58+
freetype: check-prefix zlib
6959
rm -rf ${FREETYPEVERSION} &&\
7060
tar xvfj freetype-${FREETYPEVERSION}.tar.bz2 &&\
7161
cd freetype-${FREETYPEVERSION} &&\
72-
export MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} &&\
73-
export CFLAGS=${CFLAGS} &&\
74-
export LDFLAGS=${LDFLAGS} &&\
7562
./configure --prefix=${PREFIX} &&\
76-
make -j3 install &&\
77-
cp objs/.libs/libfreetype.a . &&\
78-
unset MACOSX_DEPLOYMENT_TARGET
79-
63+
${MAKE} -j3 install &&\
64+
cp objs/.libs/libfreetype.a .
8065

8166
deps: zlib png freetype
8267
echo 'all done'
8368

84-
mpl_build:
85-
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH} &&\
86-
export MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} &&\
87-
export CFLAGS=${CFLAGS} &&\
88-
export LDFLAGS=${LDFLAGS} &&\
69+
# Various build and install targets
70+
#
71+
# The values of PKG_CONFIG_PATH, MACOSX_DEPLOYMENT_TARGET, CFLAGS,
72+
# LDFLAGS affect the compilation; note that variables are
73+
# automatically put into the environment by make.
74+
75+
mpl_build: check-prefix
8976
${PYTHON} setup.py build
9077

91-
mpl_install:
92-
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH} &&\
93-
export MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} &&\
94-
export CFLAGS=${CFLAGS} &&\
95-
export LDFLAGS=${LDFLAGS} &&\
78+
mpl_install: check-prefix
9679
${PYTHON} setup.py install --prefix=${PREFIX}
9780

81+
mpl_install_std: check-prefix
82+
${PYTHON} setup.py install
83+
84+
mpl_install_egg: check-prefix
85+
${PYTHON} setupegg.py install
86+
87+
mpl_install_develop: check-prefix
88+
${PYTHON} setupegg.py develop
89+
9890

99-
binaries:
91+
binaries: check-prefix
92+
@if [ -z "$(PYVERSION)" ]; then echo Must set PYVERSION; exit 1; fi
10093
unset PKG_CONFIG_PATH &&\
10194
cp release/osx/data/setup.cfg release/osx/data/ReadMe.txt . &&\
102-
export CFLAGS=${CFLAGS} &&\
103-
export LDFLAGS=${LDFLAGS} &&\
10495
rm -f ${PREFIX}/lib/*.dylib &&\
10596
/Library/Frameworks/Python.framework/Versions/${PYVERSION}/bin/bdist_mpkg --readme=ReadMe.txt &&\
10697
hdiutil create -srcdir dist/matplotlib-${MPLVERSION}-py${PYVERSION}-macosx10.5.mpkg dist/matplotlib-${MPLVERSION}-py${PYVERSION}-macosx10.5.dmg &&\

0 commit comments

Comments
 (0)
0