#!/usr/bin/make -f JSBASE:=/usr/share/javascript COMP:=notebook/static/components JSUSING:=underscore backbone jed jquery jquery-ui bootstrap bootstrap-tour moment codemirror jquery-typeahead term.js requirejs requirejs-text BUILTUSING:=$(foreach jspkg, $(JSUSING), $(shell dpkg-query -f '$${source:Package} (= $${source:Version}), ' -W libjs-$(jspkg))) export PYBUILD_AFTER_INSTALL=rm -rf '{destdir}/{install_dir}/notebook/static/components' ; cp -r notebook/static/components '{destdir}/{install_dir}/notebook/static/' ; rm -rf '{destdir}/{install_dir}/notebook/tests' export LC_ALL=C.UTF-8 export HOME=$(CURDIR)/debian/tmp-home export XDG_RUNTIME_DIR=$(HOME)/runtime export PYBUILD_TEST_ARGS=--exclude-dir notebook/tests/selenium %: dh $@ --with=python2,python3,sphinxdoc --buildsystem=pybuild override_dh_auto_configure: #backbone mkdir -p $(COMP)/backbone ln -s $(JSBASE)/backbone/backbone.min.js $(COMP)/backbone/backbone-min.js #bootstrap mkdir -p $(COMP)/bootstrap ln -s $(JSBASE)/bootstrap $(COMP)/bootstrap/dist ln -s $(JSBASE)/bootstrap/less $(COMP)/bootstrap/ #bootstrap-tour mkdir -p $(COMP)/bootstrap-tour/build/js mkdir -p $(COMP)/bootstrap-tour/build/css ln -s $(JSBASE)/bootstrap-tour/bootstrap-tour.min.js $(COMP)/bootstrap-tour/build/js/ ln -s $(JSBASE)/bootstrap-tour/bootstrap-tour.min.css $(COMP)/bootstrap-tour/build/css/ #codemirror ln -s $(JSBASE)/codemirror $(COMP)/ #es6-promise mkdir -p $(COMP)/es6-promise ln -s $(JSBASE)/es6-promise/es6-promise.min.js $(COMP)/es6-promise/promise.min.js ln -s $(JSBASE)/es6-promise/es6-promise.js $(COMP)/es6-promise/promise.js ln -s $(JSBASE)/es6-promise/es6-promise.min.js $(COMP)/es6-promise/es6-promise.min.js ln -s $(JSBASE)/es6-promise/es6-promise.js $(COMP)/es6-promise/es6-promise.js #jed ln -s $(JSBASE)/jed $(COMP)/ #jquery ln -s $(JSBASE)/jquery $(COMP)/ #jquery-typeahead mkdir -p $(COMP)/jquery-typeahead ln -s $(JSBASE)/jquery-typeahead $(COMP)/jquery-typeahead/dist #jquery-ui mkdir -p $(COMP)/jquery-ui/themes/smoothness ln -s $(JSBASE)/jquery-ui/jquery-ui.min.js $(COMP)/jquery-ui/ ln -s $(JSBASE)/jquery-ui/themes/base/jquery-ui.min.css $(COMP)/jquery-ui/themes/smoothness/ ln -s $(JSBASE)/jquery-ui/themes/base/images $(COMP)/jquery-ui/themes/smoothness/ #marked mkdir -p $(COMP)/marked/lib ln -s $(JSBASE)/marked/marked.js $(COMP)/marked/lib/ #mathjax ln -s $(JSBASE)/mathjax $(COMP)/MathJax #moment mkdir -p $(COMP)/moment/min ln -s $(JSBASE)/moment/moment.js $(COMP)/moment/ ln -s $(JSBASE)/moment/moment-with-locales.js $(COMP)/moment/ ln -s $(JSBASE)/moment/moment-with-locales.min.js $(COMP)/moment/min/moment-with-locales.js #requirejs ln -s $(JSBASE)/requirejs $(COMP)/ #requirejs-plugins cp -r debian/missing-sources/requirejs-plugins $(COMP)/ #requirejs-text mkdir -p $(COMP)/requirejs-text ln -s $(JSBASE)/requirejs/text.js $(COMP)/requirejs-text/ #xterm.js #mkdir -p $(COMP)/xterm.js $(COMP)/xterm.js-css $(COMP)/xterm.js-fit #ln -s $(JSBASE)/xterm/xterm.js $(COMP)/xterm.js/index.js #ln -s $(JSBASE)/xterm/xterm.css $(COMP)/xterm.js-css/index.css #ln -s $(JSBASE)/xterm/addons/fit/fit.js $(COMP)/xterm.js-fit/index.js mkdir -p $(COMP)/term.js ln -s $(JSBASE)/term.js/term.js $(COMP)/term.js/term.js #text-encoding mkdir -p $(COMP)/text-encoding/lib ln -s $(JSBASE)/text-encoding/encoding.js $(COMP)/text-encoding/lib/ #underscore mkdir -p $(COMP)/underscore ln -s $(JSBASE)/underscore/underscore.min.js $(COMP)/underscore/underscore-min.js #font-awesome ln -s /usr/share/fonts-font-awesome $(COMP)/font-awesome #google-caja mkdir -p $(COMP)/google-caja cat debian/missing-sources/css-defs.js \ debian/missing-sources/csslexer.js \ debian/missing-sources/uri.js \ debian/missing-sources/sanitizecss.js \ debian/missing-sources/cssparser.js \ debian/missing-sources/html4-defs.js \ debian/missing-sources/html-sanitizer.js \ > debian/missing-sources/html-css-sanitizer-bundle.js uglifyjs -o $(COMP)/google-caja/html-css-sanitizer-minified.js \ debian/missing-sources/html-css-sanitizer-bundle.js #preact (empty shim, fixme) mkdir -p $(COMP)/preact mkdir -p $(COMP)/preact-compat mkdir -p $(COMP)/proptypes cp debian/shim.js $(COMP)/preact/index.js cp debian/shim.js $(COMP)/preact-compat/index.js cp debian/shim.js $(COMP)/proptypes/index.js sed -i $(COMP)/preact/index.js -e 's/#MODNAME#/preact/g' sed -i $(COMP)/preact-compat/index.js -e 's/#MODNAME#/preactCompat/g' sed -i $(COMP)/proptypes/index.js -e 's/#MODNAME#/PropTypes/g' dh_auto_configure override_dh_auto_build: dh_auto_build ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES))) PYTHONPATH=. http_proxy='127.0.0.9' python3 -m sphinx -N -bhtml docs/source/ build/html endif override_dh_auto_clean: dh_auto_clean $(RM) notebook/static/*/js/main.*.js $(RM) notebook/static/*/js/main.*.js.map MAINTSCRIPTS = debian/python3-notebook.postinst debian/python3-notebook.postrm \ debian/python-notebook.postinst debian/python-notebook.postrm NBSECTIONS = $(shell PYTHONPATH=$$PWD python -c "from notebook import nbextensions; \ print(' '.join(nbextensions.NBCONFIG_SECTIONS))") mk_maintscript = \ sed -e 's/SELF/$(1)/g' -e 's/OTHER/$(2)/g' -e 's/NBSECTIONS/$(NBSECTIONS)/g' "$<" > "$@" debian/python3-notebook.%: debian/pythonX-notebook.%.in $(call mk_maintscript,python3,python) debian/python-notebook.%: debian/pythonX-notebook.%.in $(call mk_maintscript,python,python3) override_dh_auto_install: $(MAINTSCRIPTS) dh_auto_install override_dh_gencontrol: echo "js:Built-Using=$(BUILTUSING)" >> debian/python-notebook.substvars echo "js:Built-Using=$(BUILTUSING)" >> debian/python3-notebook.substvars dh_gencontrol override_dh_auto_test: mkdir -p $(XDG_RUNTIME_DIR) # send2trash deletion tests fail if the temporary notebook files # are on a different block device to the implicit trash directory in HOME TMPDIR=$(XDG_RUNTIME_DIR) dh_auto_test override_dh_installchangelogs: dh_installchangelogs -k docs/source/changelog.rst