offlate/Makefile

Makefile

1
# Minimal makefile for Sphinx documentation
2
#
3
4
# You can set these variables from the command line.
5
SPHINXOPTS    =
6
SPHINXBUILD   = python3 -msphinx
7
SPHINXPROJ    = transmon
8
SOURCEDIR     = doc
9
BUILDDIR      = _build
10
11
# Put it first so that "make" without argument is like "make help".
12
help:
13
	@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14
15
.PHONY: help Makefile
16
17
# Catch-all target: route all unknown targets to Sphinx using the new
18
# "make mode" option.  $(O) is meant as a shortcut for $(SPHINXOPTS).
19
%: Makefile
20
	@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
21
22
upload:
23
	rm -rf dist
24
	python3 setup.py sdist
25
	gpg --detach-sign -a dist/*.tar.gz
26
	twine upload dist/*
27
28
test-upload:
29
	rm -rf dist
30
	python3 setup.py sdist
31
	gpg --detach-sign -a dist/*.tar.gz
32
	twine upload -r pypitest dist/*
33
34
update-data:
35
	python3 extractdata.py
36
37
fonts: offlate/ui/data/whitespace.ttf
38
39
offlate/ui/data/whitespace.ttf: offlate/ui/data/whitespace.sfd
40
	fontforge -lang=ff -script fontforge_whitespace
41
42
LANGS=en fr
43
44
update-langs:
45
	for l in $(LANGS); do \
46
		pylupdate5 offlate/ui/*.py -ts offlate/locales/offlate_$${l}.ts ;\
47
		lrelease offlate/locales/offlate_$${l}.ts ;\
48
	done
49
50
create-bundle-linux: update-langs
51
	pyinstaller run.py --add-data offlate/ui/data:offlate/ui/data \
52
	  --add-data offlate/data:offlate/data \
53
	  --add-data offlate/locales:offlate/locales \
54
	  --windowed -n offlate
55
	patchelf --set-rpath . dist/run/run
56
	cd dist/run; for f in *.so *.so.*; do patchelf --set-rpath . $$f; done
57
	mkdir -p dist/bin
58
	printf "#!/bin/sh\ncd \$$(dirname \$$0)/../run; exec ./run" > dist/bin/offlate
59
	chmod +x dist/bin/offlate
60
61
bundle-linux: create-bundle-linux
62
	tar cf dist/offlate-bin.tar -C dist/ run bin
63
	gzip dist/offlate-bin.tar
64
65
bundle-windows: update-langs
66
	pyinstaller run.py --add-data offlate\data;offlate\data \
67
	  --add-data offlate\ui\data;offlate\ui\data \
68
	  --add-data offlate\locales;offlate\locales \
69
	  --windowed \
70
	  --hidden-import _cffi_backend
71