Repository navigation
Expand file tree
/
Copy pathpython-modules.mk
More file actions
97 lines (78 loc) · 3.07 KB
/
Copy pathpython-modules.mk
File metadata and controls
97 lines (78 loc) · 3.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
$(build-python-modules): $(crossenv)
. $(CROSSENV_ACTIVATE) \
&& build-pip install --upgrade pip setuptools wheel Cython numpy Tempita \
&& cross-expose wheel
touch $@
PILLOW_TAR := $(WORKING)/Pillow-5.0.0.tar.gz
PILLOW_EXTRACT := $(call extract,$(PILLOW_TAR))
PILLOW_WHEEL := $(WHEELS)/Pillow-5.0.0-cp36-cp36m-linux_arm.whl
$(PILLOW_TAR): $(build-python-modules)
. $(CROSSENV_ACTIVATE) \
&& cd $(dir $@) \
&& pip download --no-deps Pillow==5.0.0
touch $@
$(PILLOW_WHEEL): $(PILLOW_EXTRACT).extracted $(build-python-modules) | $(WHEELS)
. $(CROSSENV_ACTIVATE) \
&& cd $(PILLOW_EXTRACT) \
&& cross-python setup.py \
build_ext --disable-platform-guessing \
bdist_wheel --dist-dir=$(WHEELS)
$(host-python-wheels): $(PILLOW_WHEEL)
NUMPY_ZIP := $(WORKING)/numpy-1.14.2.zip
NUMPY_EXTRACT := $(call extract,$(NUMPY_ZIP),numpy-1.14.2)
NUMPY_WHEEL := $(WORKING)/wheels/numpy-1.14.2-cp36-cp36m-linux_arm.whl
$(NUMPY_ZIP): $(build-python-modules)
. $(CROSSENV_ACTIVATE) \
&& cd $(dir $@) \
&& pip download --no-deps numpy==1.14.2
touch $@
$(NUMPY_EXTRACT)/site.cfg: $(NUMPY_EXTRACT).extracted
echo '[ALL]' > $@
echo 'libraries = m' >> $@
$(NUMPY_WHEEL): $(NUMPY_EXTRACT).extracted $(NUMPY_EXTRACT)/site.cfg \
$(build-python-modules) | $(WHEELS)
. $(CROSSENV_ACTIVATE) \
&& cd $(NUMPY_EXTRACT) \
&& cross-python setup.py bdist_wheel --dist-dir=$(WHEELS)
$(host-python-wheels): $(NUMPY_WHEEL)
PANDAS_TAR := $(WORKING)/pandas-0.22.0.tar.gz
PANDAS_EXTRACT := $(call extract,$(PANDAS_TAR))
PANDAS_WHEEL := $(WHEELS)/pandas-0.22.0-cp36-cp36m-linux_arm.whl
$(PANDAS_TAR): $(build-python-modules)
. $(CROSSENV_ACTIVATE) \
&& cd $(dir $@) \
&& pip download --no-deps Pandas==0.22.0
touch $@
# Force this after numpy build so that cross-expose doesn't mess
# things up in a parallel build.
$(PANDAS_WHEEL): $(PANDAS_EXTRACT).extracted $(build-python-modules) \
$(NUMPY_WHEEL) | $(WHEELS)
. $(CROSSENV_ACTIVATE) \
&& cd $(PANDAS_EXTRACT) \
&& cross-expose Cython numpy Tempita \
&& cross-python setup.py build_ext --libraries m \
bdist_wheel --dist-dir=$(dir $@) \
&& cross-expose -u Cython numpy Tempita
$(host-python-wheels): $(PANDAS_WHEEL)
MATPLOTLIB_TAR := $(WORKING)/matplotlib-2.2.2.tar.gz
MATPLOTLIB_EXTRACT := $(call extract,$(MATPLOTLIB_TAR))
MATPLOTLIB_WHEEL := $(WHEELS)/matplotlib-2.2.2-cp36-cp36m-linux_arm.whl
$(MATPLOTLIB_TAR): $(build-python-modules)
. $(CROSSENV_ACTIVATE) \
&& cd $(dir $@) \
&& pip download --no-deps matplotlib==2.2.2
touch $@
$(MATPLOTLIB_WHEEL): $(MATPLOTLIB_EXTRACT).extracted $(build-python-modules) \
$(compile-host) $(NUMPY_WHEEL) | $(WHEELS)
. $(CROSSENV_ACTIVATE) \
&& cd $(MATPLOTLIB_EXTRACT) \
&& echo '[directories]' > setup.cfg \
&& echo 'basedirlist = $(CROSS_SYSROOT)/usr,$(INSTALL)' >> setup.cfg \
&& cross-python setup.py build_ext --libraries c++_shared,png \
bdist_wheel --dist-dir=$(dir $@)
$(host-python-wheels): $(MATPLOTLIB_WHEEL)
$(host-python-modules): $(host-python-wheels)
. $(CROSSENV_ACTIVATE) \
&& pip install -I --prefix=$(INSTALL) -f $(WHEELS) \
matplotlib==2.2.2 Pillow==5.0.0 numpy==1.14.2 pandas==0.22.0
touch $@