PYODIDE_ROOT=$(abspath .) include Makefile.envs .PHONY=check FILEPACKAGER=$$EM_DIR/tools/file_packager.py UGLIFYJS=$(PYODIDE_ROOT)/node_modules/.bin/uglifyjs CPYTHONROOT=cpython CPYTHONLIB=$(CPYTHONROOT)/installs/python-$(PYVERSION)/lib/python$(PYMINOR) CC=emcc CXX=em++ all: check \ build/pyodide.asm.js \ build/pyodide.js \ build/console.html \ build/test.data \ build/packages.json \ build/test.html \ build/webworker.js \ build/webworker_dev.js echo -e "\nSUCCESS!" build/pyodide.asm.js: \ src/core/docstring.o \ src/core/error_handling.o \ src/core/hiwire.o \ src/core/js2python.o \ src/core/jsproxy.o \ src/core/keyboard_interrupt.o \ src/core/main.o \ src/core/pyproxy.o \ src/core/python2js_buffer.o \ src/core/python2js.o \ src/pystone.py \ src/_testcapi.py \ src/webbrowser.py \ $(wildcard src/pyodide-py/pyodide/*.py) \ $(CPYTHONLIB) date +"[%F %T] Building pyodide.asm.js..." [ -d build ] || mkdir build $(CXX) -s EXPORT_NAME="'_createPyodideModule'" -o build/pyodide.asm.js $(filter %.o,$^) \ $(MAIN_MODULE_LDFLAGS) -s FORCE_FILESYSTEM=1 \ --preload-file $(CPYTHONLIB)@/lib/python$(PYMINOR) \ --preload-file src/webbrowser.py@/lib/python$(PYMINOR)/webbrowser.py \ --preload-file src/_testcapi.py@/lib/python$(PYMINOR)/_testcapi.py \ --preload-file src/pystone.py@/lib/python$(PYMINOR)/pystone.py \ --preload-file src/pyodide-py/pyodide@/lib/python$(PYMINOR)/site-packages/pyodide \ --preload-file src/pyodide-py/_pyodide@/lib/python$(PYMINOR)/site-packages/_pyodide \ --exclude-file "*__pycache__*" \ --exclude-file "*/test/*" date +"[%F %T] done building pyodide.asm.js." env: env build/pyodide.js: src/pyodide.js cp $< $@ sed -i -e 's#{{ PYODIDE_BASE_URL }}#$(PYODIDE_BASE_URL)#g' $@ build/test.html: src/templates/test.html cp $< $@ build/console.html: src/templates/console.html cp $< $@ sed -i -e 's#{{ PYODIDE_BASE_URL }}#$(PYODIDE_BASE_URL)#g' $@ build/webworker.js: src/webworker.js cp $< $@ sed -i -e 's#{{ PYODIDE_BASE_URL }}#$(PYODIDE_BASE_URL)#g' $@ build/webworker_dev.js: src/webworker.js cp $< $@ sed -i -e 's#{{ PYODIDE_BASE_URL }}#./#g' $@ test: all pytest src emsdk/tests packages/*/test* pyodide_build -v lint: # check for unused imports, the rest is done by black flake8 --select=F401 src tools pyodide_build benchmark conftest.py docs clang-format-6.0 -output-replacements-xml `find src -type f -regex ".*\.\(c\|h\|js\)"` | (! grep '