Patchwork Fwd: [PATCH v3] mypaint: new recipe for version 0.9.1

login
register
mail settings
Submitter Christian Charreyre
Date May 2, 2011, 5:38 p.m.
Message ID <4DBEEBFA.9040007@cioinfoindus.fr>
Download mbox | patch
Permalink /patch/3075/
State Superseded
Headers show

Comments

Christian Charreyre - May 2, 2011, 5:38 p.m.
After additional tests, found that there are still mistakes in 
DEPENDS_${PN} line.
I don't know why _${PN} must be removed for the line to be effective.

Post corrected patch in version v4.

-------- Message original --------
Sujet: 	[PATCH v3] mypaint: new recipe for version 0.9.1
Date : 	Mon, 2 May 2011 18:33:48 +0200
De : 	Christian Charreyre <christian.charreyre@cioinfoindus.fr>
Pour : 	openembedded-devel@lists.openembedded.org
Copie à : 	Christian Charreyre <christian.charreyre@cioinfoindus.fr>



Signed-off-by: Christian Charreyre<christian.charreyre@cioinfoindus.fr>
---
  recipes/mypaint/files/scons-adapt.patch |   20 +++++++++++++++++
  recipes/mypaint/mypaint_0.9.1.bb        |   36 +++++++++++++++++++++++++++++++
  2 files changed, 56 insertions(+), 0 deletions(-)
  create mode 100644 recipes/mypaint/files/scons-adapt.patch
  create mode 100644 recipes/mypaint/mypaint_0.9.1.bb

Patch

diff --git a/recipes/mypaint/files/scons-adapt.patch b/recipes/mypaint/files/scons-adapt.patch
new file mode 100644
index 0000000..dcad6db
--- /dev/null
+++ b/recipes/mypaint/files/scons-adapt.patch
@@ -0,0 +1,50 @@ 
+Author: Christian Charreyre<christian.charreyre@cioinfoindus.fr>
+
+Adapt scons to OE
+Index: mypaint-0.9.1/lib/SConscript
+===================================================================
+--- mypaint-0.9.1.orig/lib/SConscript	2011-04-21 11:31:29.000000000 +0200
++++ mypaint-0.9.1/lib/SConscript	2011-04-21 11:35:30.000000000 +0200
+@@ -1,5 +1,11 @@
+ Import('env')
+-import sys
++import sys, os
++env.Replace(SHCXX = os.environ['CXX'])
++env.Replace(SHLINK = os.environ['CXX'])
++env.Replace(LDMODULEFLAGS = os.environ['TARGET_LDFLAGS'])
++env.Append(LDMODULEFLAGS = ['-Wl,--hash-style=gnu'])
++env.Append(LDMODULEFLAGS = ['-shared'])
++env.Replace(PATH = os.environ['PATH'])
+
+ # For the record: I know that scons supports swig. But it doesn't scan for #include in the generated code.
+ #
+Index: mypaint-0.9.1/SConstruct
+===================================================================
+--- mypaint-0.9.1.orig/SConstruct	2011-03-04 15:44:59.000000000 +0100
++++ mypaint-0.9.1/SConstruct	2011-05-02 17:21:17.000000000 +0200
+@@ -11,13 +11,6 @@
+ if sys.platform == "win32":
+     python = 'python' # usually no versioned binaries on Windows
+
+-try:
+-    import numpy
+-except ImportError:
+-    print 'You need to have numpy installed.'
+-    print
+-    raise
+-
+ SConsignFile() # no .scsonsign into $PREFIX please
+
+ if sys.platform == "darwin":
+@@ -40,8 +33,9 @@
+
+ env.Append(CXXFLAGS=' -Wall -Wno-sign-compare -Wno-write-strings')
+
+-# Get the numpy include path (for numpy/arrayobject.h).
+-numpy_path = numpy.get_include()
++# Defines the numpy include path (for numpy/arrayobject.h).
++# This is specefic to OE, to avoid to build python-numpy-native
++numpy_path = os.environ['STAGING_DIR_TARGET']+os.environ['PYTHON_SITEPACKAGES_DIR']+'/numpy/core/include'
+ env.Append(CPPPATH=numpy_path)
+
+
diff --git a/recipes/mypaint/mypaint_0.9.1.bb b/recipes/mypaint/mypaint_0.9.1.bb
new file mode 100644
index 0000000..a7e5077
--- /dev/null
+++ b/recipes/mypaint/mypaint_0.9.1.bb
@@ -0,0 +1,37 @@ 
+DESCRIPTION="fast and easy open-source graphics application for digital painters"
+LICENSE="GPL"
+SECTION = "x11/applications"
+PRIORITY = "optional"
+HOMEPAGE = "http://mypaint.intilinux.com/"
+
+DEPENDS_${PN} = "libglib libpng libpython libstdc++ python-numpy"
+RDEPENDS_${PN} = "python-image python-json"
+
+SRC_URI = "http://download.gna.org/mypaint/${PN}-${PV}.tar.bz2 \
+	file://scons-adapt.patch \
+"
+
+SRC_URI[md5sum] = "6249a16359a438d6dc658f5765b35515"
+SRC_URI[sha256sum] = "407b599f62fb0d6e711fee57d22e64d3aec88825364fb5f7f73b9f0940aa7aed"
+
+inherit distutils scons
+
+do_compile() {
+       STAGING_INCDIR=${STAGING_INCDIR} \
+       STAGING_LIBDIR=${STAGING_LIBDIR} \
+       STAGING_DIR_TARGET=${STAGING_DIR_TARGET} \
+       PYTHON_SITEPACKAGES_DIR=${PYTHON_SITEPACKAGES_DIR} \
+       BUILD_SYS=${BUILD_SYS} \
+       HOST_SYS=${HOST_SYS} \
+       PATH=${PATH} scons_do_compile
+}
+
+do_install() {
+       STAGING_DIR_TARGET=${STAGING_DIR_TARGET} \
+       PYTHON_SITEPACKAGES_DIR=${PYTHON_SITEPACKAGES_DIR} \
+       BUILD_SYS=${BUILD_SYS} \
+       HOST_SYS=${HOST_SYS} \
+       scons_do_install
+}
+
+FILES_${PN} += "${datadir}"