#!/usr/bin/make -f export DH_VERBOSE=1 # can also set this on each debian/rules command line export LC_ALL=C.UTF-8 JSUSING:=fonts-font-awesome libjs-mathjax node-ajv node-d3-format node-requirejs node-jquery node-jquery-ui node-backbone node-es6-promise node-semver node-underscore BUILTUSING:=$(foreach jspkg, $(JSUSING), $(shell dpkg-query -f '$${source:Package} (= $${source:Version}), ' -W $(jspkg))) PYVERS=$(shell python3 -c 'import sysconfig;print (sysconfig.get_python_version())') PYPATH=$(CURDIR)/debian/python3-ipywidgets/usr/lib/python$(PYVERS)/dist-packages PYTHON_MODS=ipywidgets widgetsnbextension NODE_MODS=base base-manager controls html-manager output # schema JSDEPS=@jupyterlab jquery @lumino @types underscore lodash postcss minipass source-map-js #CMD=ln -sf CMD=cp -r %: dh $@ --with nodejs,python3,sphinxdoc --buildsystem=pybuild --buildsystem=nodejs override_dh_auto_clean: dh_auto_clean --buildsystem nodejs for i in $(PYTHON_MODS) ; do dh_auto_clean --buildsystem=pybuild -- --dir python/$$i ; rm -rf python/$$i/$$i.egg-info ; done override_dh_auto_configure: # mv debian/missing-sources/* . dh_auto_configure --buildsystem nodejs for i in $(PYTHON_MODS) ; do dh_auto_configure --buildsystem=pybuild -- --dir python/$$i ; done cp -r /usr/share/javascript/mathjax packages/controls/node_modules/ # partial libraries without package.json break pkg-js-tools machinery # ln -s ../../@jupyterlab jupyter-js-widgets/node_modules/@jupyterlab # d/nodejs/component_links doesn't work if the component name includes @ # ln -s ../../../@types/underscore jupyter-js-widgets/node_modules/@types/underscore override_dh_auto_build: for i in $(PYTHON_MODS) ; do dh_auto_build --buildsystem=pybuild -- --dir python/$$i ; done dh_auto_build --buildsystem nodejs XXXoverride_dh_sphinxdoc: for i in $(PYTHON_MODS) ; do dh_auto_install --buildsystem=pybuild -- --dir python/$$i ; done dh_install PYTHONPATH=$(PYPATH) python3 -m sphinx -N -bhtml docs/source debian/python-ipywidgets-doc/usr/share/doc/python-ipywidgets-doc/html ln -s /usr/share/javascript/requirejs/require.min.js debian/python-ipywidgets-doc/usr/share/doc/python-ipywidgets-doc/html/_static #ln -s /usr/share/nodejs/@jupyter-widgets/html-manager/dist/embed-amd.js debian/python-ipywidgets-doc/usr/share/doc/python-ipywidgets-doc/html/_static mkdir -p debian/python-ipywidgets-doc/usr/share/doc/python-ipywidgets-doc/html//nodejs/@jupyter-widgets/html-manager/dist touch debian/python-ipywidgets-doc/usr/share/doc/python-ipywidgets-doc/html//nodejs/@jupyter-widgets/html-manager/dist/embed-amd.js dh_sphinxdoc override_dh_auto_install: dh_auto_install --buildsystem nodejs for i in $(PYTHON_MODS) ; do dh_auto_install --buildsystem=pybuild -- --dir python/$$i ; done #set -e; for i in debian/tmp/usr/lib/*/dist-packages/widgetsnbextension/static; do \ # rm -rf $$i && ln -sfT /usr/share/jupyter/nbextensions/jupyter-js-widgets $$i; \ #done dh_install override_dh_auto_test: #for i in $(PYTHON_MODS) ; do dh_auto_install --buildsystem=pybuild -- --dir python/$$i ; done #dh_install cd python/ipywidgets ; PYTHONPATH=$(PYPATH) pytest --cov=ipywidgets ipywidgets # || true override_dh_gencontrol: echo "js:Built-Using=$(BUILTUSING)" >> debian/jupyter-nbextension-jupyter-js-widgets.substvars dh_gencontrol