+##########
+# depending on the value of USE_TWINE, we either do the upload with setup.py itself,
+# or with the help of twine which apparently is the only way that mario could find out on his setup
+define upload_pypi
+$(if $(USE_TWINE),./setup.py sdist && twine upload dist/* -r $(1),./setup.py sdist upload -r $(1))
+endef
+