python-parsley: add python3 variant 5409/head
authorJeffery To <jeffery.to@gmail.com>
Wed, 10 Jan 2018 14:55:28 +0000 (22:55 +0800)
committerJeffery To <jeffery.to@gmail.com>
Wed, 10 Jan 2018 14:55:28 +0000 (22:55 +0800)
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
lang/python/python-parsley/Makefile
lang/python/python-parsley/patches/001-omit-tests.patch [deleted file]
lang/python/python-parsley/patches/001-py3-read-utf8.patch [new file with mode: 0644]
lang/python/python-parsley/patches/002-omit-tests.patch [new file with mode: 0644]

index c9d604b520ac129bfdc260009d4b0eeca770133b..11e231ab0aab7e22b88df2c00d5826b1bee32a30 100644 (file)
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2015 OpenWrt.org
+# Copyright (C) 2015, 2017-2018 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -7,37 +7,67 @@
 
 include $(TOPDIR)/rules.mk
 
-PKG_NAME:=Parsley
+PKG_NAME:=python-parsley
 PKG_VERSION:=1.3
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE:=Parsley-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://pypi.python.org/packages/source/P/Parsley
 PKG_HASH:=9444278d47161d5f2be76a767809a3cbe6db4db822f46a4fd7481d4057208d41
 
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-parsley-$(PKG_VERSION)
+
 PKG_LICENSE:=MIT
 PKG_LICENSE_FILES:=LICENSE
 PKG_MAINTAINER:=Jeffery To <jeffery.to@gmail.com>
 
 include $(INCLUDE_DIR)/package.mk
 $(call include_mk, python-package.mk)
+$(call include_mk, python3-package.mk)
+
+PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE)
+
+define Package/python-parsley/Default
+  SECTION:=lang
+  CATEGORY:=Languages
+  SUBMENU:=Python
+  URL:=http://launchpad.net/parsley
+endef
 
 define Package/python-parsley
-       SECTION:=lang
-       CATEGORY:=Languages
-       SUBMENU:=Python
-       TITLE:=python-parsley
-       URL:=http://launchpad.net/parsley
-       DEPENDS:=+python-light
+$(call Package/python-parsley/Default)
+  TITLE:=python-parsley
+  DEPENDS:=+PACKAGE_python-parsley:python-light
+  VARIANT:=python
+endef
+
+define Package/python3-parsley
+$(call Package/python-parsley/Default)
+  TITLE:=python3-parsley
+  DEPENDS:=+PACKAGE_python3-parsley:python3-light
+  VARIANT:=python3
 endef
 
 define Package/python-parsley/description
 Parsing and pattern matching made easy.
 endef
 
-define Build/Compile
+define Package/python3-parsley/description
+$(call Package/python-parsley/description)
+.
+(Variant for Python3)
+endef
+
+define PyBuild/Compile
        $(call Build/Compile/PyMod,,install --prefix="/usr" --root="$(PKG_INSTALL_DIR)")
 endef
 
+define Py3Build/Compile
+       $(call Build/Compile/Py3Mod,,install --prefix="/usr" --root="$(PKG_INSTALL_DIR)")
+endef
+
 $(eval $(call PyPackage,python-parsley))
 $(eval $(call BuildPackage,python-parsley))
+
+$(eval $(call Py3Package,python3-parsley))
+$(eval $(call BuildPackage,python3-parsley))
diff --git a/lang/python/python-parsley/patches/001-omit-tests.patch b/lang/python/python-parsley/patches/001-omit-tests.patch
deleted file mode 100644 (file)
index 71bd021..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Nur a/setup.py b/setup.py
---- a/setup.py 2015-09-09 10:45:25.000000000 +0800
-+++ b/setup.py 2015-12-01 17:31:03.143409843 +0800
-@@ -14,7 +14,6 @@
-     author_email="washort42@gmail.com",
-     license="MIT License",
-     long_description=open("README").read(),
--    packages=["ometa", "terml", "ometa._generated", "terml._generated",
--              "ometa.test", "terml.test"],
-+    packages=["ometa", "terml", "ometa._generated", "terml._generated"],
-     py_modules=["parsley"]
- )
diff --git a/lang/python/python-parsley/patches/001-py3-read-utf8.patch b/lang/python/python-parsley/patches/001-py3-read-utf8.patch
new file mode 100644 (file)
index 0000000..f3e63dc
--- /dev/null
@@ -0,0 +1,19 @@
+--- a/setup.py
++++ b/setup.py
+@@ -4,6 +4,7 @@
+ Setup script for the Parsley distribution.
+ """
++import io
+ from distutils.core import setup
+ setup(
+     name="Parsley",
+@@ -13,7 +14,7 @@ setup(
+     author="Allen Short",
+     author_email="washort42@gmail.com",
+     license="MIT License",
+-    long_description=open("README").read(),
++    long_description=io.open("README", encoding="utf-8").read(),
+     packages=["ometa", "terml", "ometa._generated", "terml._generated",
+               "ometa.test", "terml.test"],
+     py_modules=["parsley"]
diff --git a/lang/python/python-parsley/patches/002-omit-tests.patch b/lang/python/python-parsley/patches/002-omit-tests.patch
new file mode 100644 (file)
index 0000000..4fe43b8
--- /dev/null
@@ -0,0 +1,11 @@
+--- a/setup.py
++++ b/setup.py
+@@ -15,7 +15,6 @@ setup(
+     author_email="washort42@gmail.com",
+     license="MIT License",
+     long_description=io.open("README", encoding="utf-8").read(),
+-    packages=["ometa", "terml", "ometa._generated", "terml._generated",
+-              "ometa.test", "terml.test"],
++    packages=["ometa", "terml", "ometa._generated", "terml._generated"],
+     py_modules=["parsley"]
+ )