forked from PyAV-Org/PyAV
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
90 lines (55 loc) · 1.78 KB
/
Makefile
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
LDFLAGS ?= ""
CFLAGS ?= "-O0"
PYAV_PYTHON ?= python
PYTHON := $(PYAV_PYTHON)
.PHONY: default build cythonize clean clean-all info lint test fate-suite test-assets docs
default: build
build:
CFLAGS=$(CFLAGS) LDFLAGS=$(LDFLAGS) $(PYTHON) setup.py build_ext --inplace --debug
cythonize:
$(PYTHON) setup.py cythonize
wheel: build-mingw32
$(PYTHON) setup.py bdist_wheel
build-mingw32:
# before running, set PKG_CONFIG_PATH to the pkgconfig dir of the ffmpeg build.
# set PKG_CONFIG_PATH=D:\dev\3rd\media-autobuild_suite\local32\bin-video\ffmpegSHARED\lib\pkgconfig
CFLAGS=$(CFLAGS) LDFLAGS=$(LDFLAGS) $(PYTHON) setup.py build_ext --inplace -c mingw32
mv *.pyd av
fate-suite:
# Grab ALL of the samples from the ffmpeg site.
rsync -vrltLW rsync://fate-suite.ffmpeg.org/fate-suite/ tests/assets/fate-suite/
lint:
TESTSUITE=flake8 scripts/test
TESTSUITE=isort scripts/test
test:
$(PYTHON) setup.py test
vagrant:
vagrant box list | grep -q precise32 || vagrant box add precise32 http://files.vagrantup.com/precise32.box
vtest:
vagrant ssh -c /vagrant/scripts/vagrant-test
tmp/ffmpeg-git:
@ mkdir -p tmp/ffmpeg-git
git clone --depth=1 git://source.ffmpeg.org/ffmpeg.git tmp/ffmpeg-git
tmp/Doxyfile: tmp/ffmpeg-git
cp tmp/ffmpeg-git/doc/Doxyfile $@
echo "GENERATE_TAGFILE = ../tagfile.xml" >> $@
tmp/tagfile.xml: tmp/Doxyfile
cd tmp/ffmpeg-git; doxygen ../Doxyfile
docs: tmp/tagfile.xml
PYTHONPATH=.. make -C docs html
deploy-docs: docs
./docs/upload docs
clean-build:
- rm -rf build
- find av -name '*.so' -delete
clean-sandbox:
- rm -rf sandbox/201*
- rm sandbox/last
clean-src:
- rm -rf src
clean-docs:
- rm tmp/Doxyfile
- rm tmp/tagfile.xml
- make -C docs clean
clean: clean-build clean-sandbox clean-src
clean-all: clean-build clean-sandbox clean-src clean-docs