python,python3: Add pypi makefile
authorJeffery To <jeffery.to@gmail.com>
Mon, 14 Oct 2019 21:27:20 +0000 (05:27 +0800)
committerJosef Schlehofer <pepe.schlehofer@gmail.com>
Sat, 2 Nov 2019 18:01:21 +0000 (19:01 +0100)
This adds pypi.mk, which can be included in Python packages that
download their sources from PyPI, to auto-fill various PKG_* variables
based on the value of PYPI_NAME.

This makefile should be included after $(TOPDIR)/rules.mk but before
$(INCLUDE_DIR)/package.mk (and $(INCLUDE_DIR)/host-build.mk).

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
(cherry-picked from commit add4c4219109e359f2ade2245fddfe4addc7575f)

lang/python/pypi.mk [new file with mode: 0644]

diff --git a/lang/python/pypi.mk b/lang/python/pypi.mk
new file mode 100644 (file)
index 0000000..9a3da5d
--- /dev/null
@@ -0,0 +1,23 @@
+#
+# Copyright (C) 2019 Jeffery To <jeffery.to@gmail.com>
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+ifndef DUMP
+  ifdef __package_mk
+    $(warning pypi.mk should be included before package.mk)
+  endif
+endif
+
+ifneq ($(strip $(PYPI_NAME)),)
+  PYPI_SOURCE_EXT?=tar.gz
+  PYPI_NAME_FIRST_LETTER?=$(strip $(foreach a,$(chars_lower) $(chars_upper) 0 1 2 3 4 5 6 7 8 9 _ -,$(if $(PYPI_NAME:$a%=),,$a)))
+
+  PKG_SOURCE?=$(PYPI_NAME)-$(PKG_VERSION).$(PYPI_SOURCE_EXT)
+  PKG_SOURCE_URL?=https://files.pythonhosted.org/packages/source/$(PYPI_NAME_FIRST_LETTER)/$(PYPI_NAME)
+
+  PKG_BUILD_DIR:=$(BUILD_DIR)/pypi/$(if $(BUILD_VARIANT),$(PKG_NAME)-$(BUILD_VARIANT)/)$(PYPI_NAME)$(if $(PKG_VERSION),-$(PKG_VERSION))
+  HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/pypi/$(PYPI_NAME)$(if $(PKG_VERSION),-$(PKG_VERSION))
+endif