mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Bastian Stender <bst@pengutronix.de>
To: ptxdist@pengutronix.de
Cc: Robin van der Gracht <robin@protonic.nl>
Subject: [ptxdist] [PATCH 1/3] python3-shiboken: new package
Date: Wed, 31 Jan 2018 12:16:43 +0100	[thread overview]
Message-ID: <20180131111645.19171-1-bst@pengutronix.de> (raw)

From: Robin van der Gracht <robin@protonic.nl>

The patches directory patches/shiboken-1.2.2 is ready and compile-time
tested with python2 and python3. Because we could not really test
shiboken 1.2.2 (python2), we did not do a version bump for it.

Signed-off-by: Robin van der Gracht <robin@protonic.nl>
---
 ...-specifying-the-preferred-Python2-version.patch | 19 +++++
 ...-specifying-the-preferred-Python3-version.patch | 47 +++++++++++
 patches/shiboken-1.2.2/series                      |  5 ++
 rules/python3-shiboken.in                          | 13 ++++
 rules/python3-shiboken.make                        | 90 ++++++++++++++++++++++
 5 files changed, 174 insertions(+)
 create mode 100644 patches/shiboken-1.2.2/0001-cmake-allow-specifying-the-preferred-Python2-version.patch
 create mode 100644 patches/shiboken-1.2.2/0002-cmake-allow-specifying-the-preferred-Python3-version.patch
 create mode 100644 patches/shiboken-1.2.2/series
 create mode 100644 rules/python3-shiboken.in
 create mode 100644 rules/python3-shiboken.make

diff --git a/patches/shiboken-1.2.2/0001-cmake-allow-specifying-the-preferred-Python2-version.patch b/patches/shiboken-1.2.2/0001-cmake-allow-specifying-the-preferred-Python2-version.patch
new file mode 100644
index 000000000..2a7dd2232
--- /dev/null
+++ b/patches/shiboken-1.2.2/0001-cmake-allow-specifying-the-preferred-Python2-version.patch
@@ -0,0 +1,19 @@
+From: Michael Olbrich <m.olbrich@pengutronix.de>
+Date: Thu, 15 Mar 2012 08:55:26 +0100
+Subject: [PATCH] cmake: allow specifying the preferred Python2 version
+
+Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
+---
+ cmake/Modules/FindPythonInterpWithDebug.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cmake/Modules/FindPythonInterpWithDebug.cmake b/cmake/Modules/FindPythonInterpWithDebug.cmake
+index 7722d956917e..06c5aff02580 100644
+--- a/cmake/Modules/FindPythonInterpWithDebug.cmake
++++ b/cmake/Modules/FindPythonInterpWithDebug.cmake
+@@ -1,4 +1,4 @@
+-find_program(PYTHON_EXECUTABLE NAMES python2.7 python2.6 python2.5)
++find_program(PYTHON_EXECUTABLE NAMES ${Python_PREFERRED_VERSION} python2.7 python2.6 python2.5)
+ 
+ if (NOT PYTHON_EXECUTABLE)
+     find_package(PythonInterp REQUIRED)
diff --git a/patches/shiboken-1.2.2/0002-cmake-allow-specifying-the-preferred-Python3-version.patch b/patches/shiboken-1.2.2/0002-cmake-allow-specifying-the-preferred-Python3-version.patch
new file mode 100644
index 000000000..2d985e42d
--- /dev/null
+++ b/patches/shiboken-1.2.2/0002-cmake-allow-specifying-the-preferred-Python3-version.patch
@@ -0,0 +1,47 @@
+From: Bastian Stender <bst@pengutronix.de>
+Date: Fri, 26 Jan 2018 14:27:23 +0100
+Subject: [PATCH] cmake: allow specifying the preferred Python3 version
+
+Signed-off-by: Bastian Stender <bst@pengutronix.de>
+---
+ cmake/Modules/FindPython3Interp.cmake | 4 ++--
+ cmake/Modules/FindPython3Libs.cmake   | 4 +++-
+ 2 files changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/cmake/Modules/FindPython3Interp.cmake b/cmake/Modules/FindPython3Interp.cmake
+index 373982e210a3..ad38c6697bc8 100644
+--- a/cmake/Modules/FindPython3Interp.cmake
++++ b/cmake/Modules/FindPython3Interp.cmake
+@@ -20,7 +20,7 @@
+ #  License text for the above reference.)
+ 
+ FIND_PROGRAM(PYTHON3_EXECUTABLE
+-  NAMES python3.2mu python3.2m python3.2u python3.2 python3.1 python3.0 python3
++  NAMES ${Python3_PREFERRED_VERSION} python3.2mu python3.2m python3.2u python3.2 python3.1 python3.0 python3
+   PATHS
+   [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\3.2\\InstallPath]
+   [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\3.1\\InstallPath]
+@@ -28,7 +28,7 @@ FIND_PROGRAM(PYTHON3_EXECUTABLE
+   )
+ 
+ FIND_PROGRAM(PYTHON3_DBG_EXECUTABLE
+-  NAMES python3.2dmu python3.2dm python3.2du python3.2d python3.1-dbg python3.0-dbg python3-dbg
++  NAMES ${Python3_PREFERRED_VERSION} python3.2dmu python3.2dm python3.2du python3.2d python3.1-dbg python3.0-dbg python3-dbg
+   PATHS
+   [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\3.2\\InstallPath]
+   [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\3.1\\InstallPath]
+diff --git a/cmake/Modules/FindPython3Libs.cmake b/cmake/Modules/FindPython3Libs.cmake
+index 20a82ba07d59..e1789438a4b9 100644
+--- a/cmake/Modules/FindPython3Libs.cmake
++++ b/cmake/Modules/FindPython3Libs.cmake
+@@ -27,7 +27,9 @@ INCLUDE(CMakeFindFrameworks)
+ # Search for the python framework on Apple.
+ # CMAKE_FIND_FRAMEWORKS(Python)
+ 
+-FOREACH(_CURRENT_VERSION 3.4 3.3 3.2 3.1 3.0)
++STRING(REPLACE "python" "" Python3_PREFERRED_VERSION_NUMBER ${Python3_PREFERRED_VERSION})
++
++FOREACH(_CURRENT_VERSION ${Python3_PREFERRED_VERSION_NUMBER} 3.4 3.3 3.2 3.1 3.0)
+   IF(_CURRENT_VERSION GREATER 3.1)
+       SET(_32FLAGS "m" "u" "mu" "dm" "du" "dmu" "")
+   ELSE()
diff --git a/patches/shiboken-1.2.2/series b/patches/shiboken-1.2.2/series
new file mode 100644
index 000000000..35630db2b
--- /dev/null
+++ b/patches/shiboken-1.2.2/series
@@ -0,0 +1,5 @@
+# generated by git-ptx-patches
+#tag:base --start-number 1
+0001-cmake-allow-specifying-the-preferred-Python2-version.patch
+0002-cmake-allow-specifying-the-preferred-Python3-version.patch
+# 51481bffa6f992fb0f955bd13139b6db  - git-ptx-patches magic
diff --git a/rules/python3-shiboken.in b/rules/python3-shiboken.in
new file mode 100644
index 000000000..ccdcf17fc
--- /dev/null
+++ b/rules/python3-shiboken.in
@@ -0,0 +1,13 @@
+## SECTION=qt
+
+config PYTHON3_SHIBOKEN
+	tristate
+	prompt "python3-shiboken"
+	select HOST_CMAKE
+	select HOST_PYTHON3_SHIBOKEN
+	select LIBXML2
+	select LIBXSLT
+	select PYTHON3
+	select QT4
+	help
+	  Shiboken generates bindings for C++ libraries using CPython source code.
diff --git a/rules/python3-shiboken.make b/rules/python3-shiboken.make
new file mode 100644
index 000000000..ffbbdfba8
--- /dev/null
+++ b/rules/python3-shiboken.make
@@ -0,0 +1,90 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2016 by Robin van der Gracht <robin@protonic.nl>
+#
+# See CREDITS for details about who has contributed to this project.
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_PYTHON3_SHIBOKEN) += python3-shiboken
+
+#
+# Paths and names
+#
+PYTHON3_SHIBOKEN_VERSION	:= 1.2.2
+PYTHON3_SHIBOKEN_MD5		:= 9f5bee9d414ce51be07ff7a20054a48d
+PYTHON3_SHIBOKEN		:= shiboken-$(PYTHON3_SHIBOKEN_VERSION)
+PYTHON3_SHIBOKEN_SUFFIX		:= tar.bz2
+PYTHON3_SHIBOKEN_URL		:= https://download.qt.io/official_releases/pyside/shiboken-$(PYTHON3_SHIBOKEN_VERSION).$(PYTHON3_SHIBOKEN_SUFFIX)
+PYTHON3_SHIBOKEN_SOURCE		:= $(SRCDIR)/$(PYTHON3_SHIBOKEN).$(PYTHON3_SHIBOKEN_SUFFIX)
+PYTHON3_SHIBOKEN_DIR		:= $(BUILDDIR)/$(PYTHON3_SHIBOKEN)
+PYTHON3_SHIBOKEN_LICENSE	:= GPL-2.0
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+#
+# cmake
+#
+PYTHON3_SHIBOKEN_CONF_TOOL		:= cmake
+PYTHON3_SHIBOKEN_CONF_OPT	= \
+	$(CROSS_CMAKE_USR) \
+	-DBUILD_TESTS:BOOL=OFF \
+	-DUSE_PYTHON3:BOOL=ON \
+	-DPython3_PREFERRED_VERSION=python$(PYTHON3_MAJORMINOR)
+
+PYTHON3_SHIBOKEN_MAKE_OPT		:= -C libshiboken
+PYTHON3_SHIBOKEN_INSTALL_OPT	:= -C libshiboken install
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/python3-shiboken.install:
+	@$(call targetinfo)
+	@$(call world/install, PYTHON3_SHIBOKEN)
+	@cd $(PYTHON3_SHIBOKEN_DIR)-build && $(MAKE) -C data install DESTDIR='$(PYTHON3_SHIBOKEN_PKGDIR)'
+	@sed -i -e 's,"$(SYSROOT)/usr,"SYSROOT/usr,g' \
+		-e 's,"$(PTXCONF_SYSROOT_CROSS),"SYSROOT_CROSS,g' \
+		$(PYTHON3_SHIBOKEN_PKGDIR)/usr/lib/cmake/Shiboken-$(PYTHON3_SHIBOKEN_VERSION)/ShibokenConfig.cpython*.cmake
+	@$(call touch)
+
+$(STATEDIR)/python3-shiboken.install.post:
+	@$(call targetinfo)
+	@$(call world/install.post, PYTHON3_SHIBOKEN)
+	@sed -i -e 's,(/usr,($(SYSROOT)/usr,g' \
+		'$(SYSROOT)/usr/lib/cmake/Shiboken-$(PYTHON3_SHIBOKEN_VERSION)/ShibokenConfig.cmake'
+	@sed -i -e 's,"SYSROOT_CROSS,"$(PTXCONF_SYSROOT_CROSS),g' \
+		-e 's,"SYSROOT/usr,"$(SYSROOT)/usr,g' \
+		-e 's,"/usr/bin,"$(PTXCONF_SYSROOT_HOST)/bin,g' \
+		-e 's,"/usr,"$(SYSROOT)/usr,g' \
+		$(SYSROOT)/usr/lib/cmake/Shiboken-$(PYTHON3_SHIBOKEN_VERSION)/ShibokenConfig.cpython*.cmake
+	@$(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/python3-shiboken.targetinstall:
+	@$(call targetinfo)
+
+	@$(call install_init, python3-shiboken)
+	@$(call install_fixup, python3-shiboken, PRIORITY, optional)
+	@$(call install_fixup, python3-shiboken, SECTION, base)
+	@$(call install_fixup, python3-shiboken, AUTHOR, "Robin van der Gracht <robin@protonic.nl>")
+	@$(call install_fixup, python3-shiboken, DESCRIPTION, missing)
+
+	@$(call install_lib, python3-shiboken, 0, 0, 0644, \
+		libshiboken.cpython-*)
+
+	@$(call install_finish, python3-shiboken)
+
+	@$(call touch)
+
+# vim: syntax=make
-- 
2.15.1


_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de

             reply	other threads:[~2018-01-31 11:16 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-31 11:16 Bastian Stender [this message]
2018-01-31 11:16 ` [ptxdist] [PATCH 2/3] host-python3-shiboken: " Bastian Stender
2018-01-31 11:16 ` [ptxdist] [PATCH 3/3] python3-pyside: " Bastian Stender

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180131111645.19171-1-bst@pengutronix.de \
    --to=bst@pengutronix.de \
    --cc=ptxdist@pengutronix.de \
    --cc=robin@protonic.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox