public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Samuli Suominen (ssuominen)" <ssuominen@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] gentoo-x86 commit in app-pda/libimobiledevice/files: libimobiledevice-1.1.4-cython.patch
Date: Sat, 19 May 2012 08:18:40 +0000 (UTC)	[thread overview]
Message-ID: <20120519081840.325942004C@flycatcher.gentoo.org> (raw)

ssuominen    12/05/19 08:18:40

  Added:                libimobiledevice-1.1.4-cython.patch
  Log:
  Fix compability with dev-python/cython >= 0.16 wrt #414063
  
  (Portage version: 2.2.0_alpha107/cvs/Linux x86_64)

Revision  Changes    Path
1.1                  app-pda/libimobiledevice/files/libimobiledevice-1.1.4-cython.patch

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-pda/libimobiledevice/files/libimobiledevice-1.1.4-cython.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-pda/libimobiledevice/files/libimobiledevice-1.1.4-cython.patch?rev=1.1&content-type=text/plain

Index: libimobiledevice-1.1.4-cython.patch
===================================================================
http://bugs.gentoo.org/414063

http://cgit.sukimashita.com/libimobiledevice.git/commit/?id=70dfe8ad1766990386f1db04bbe5a4826bcde4e5
http://cgit.sukimashita.com/libimobiledevice.git/commit/?id=84235e0834e57551028329723f4510e1dbe7bc11
http://cgit.sukimashita.com/libimobiledevice.git/commit/?id=849ea066426b8f5f6e6d1aea9804e095edca3b49

--- configure.ac
+++ configure.ac
@@ -83,10 +83,20 @@
             CYTHON=false
 fi
 if [test "x$CYTHON" != "xfalse"]; then
-            CYTHON_SUB=cython
+            AC_MSG_CHECKING([for libplist Cython bindings])
             CYTHON_PLIST_INCLUDE_DIR=$($PKG_CONFIG --variable=includedir libplist)/plist/cython
-            AC_SUBST([CYTHON_PLIST_INCLUDE_DIR])
-            cython_python_bindings=yes
+            if [test ! -d "$CYTHON_PLIST_INCLUDE_DIR"]; then
+                CYTHON=false
+                CYTHON_SUB=
+                cython_python_bindings=no
+                AC_MSG_RESULT([no])
+                AC_MSG_WARN([cannot find libplist Cython bindings. You should install your distribution specific libplist Cython bindings package.])
+            else
+                AC_SUBST([CYTHON_PLIST_INCLUDE_DIR])
+                AC_MSG_RESULT([$CYTHON_PLIST_INCLUDE_DIR])
+                CYTHON_SUB=cython
+                cython_python_bindings=yes
+            fi
 else
             CYTHON_SUB=
             cython_python_bindings=no
--- cython/afc.pxi
+++ cython/afc.pxi
@@ -162,7 +162,7 @@
             err = afc_client_free(self._c_client)
             self.handle_error(err)
 
-    cdef inline BaseError _error(self, int16_t ret):
+    cdef BaseError _error(self, int16_t ret):
         return AfcError(ret)
 
     cpdef list get_device_info(self):
--- cython/imobiledevice.pxd
+++ cython/imobiledevice.pxd
@@ -51,8 +51,8 @@
 cdef class PropertyListService(BaseService):
     cpdef send(self, plist.Node node)
     cpdef object receive(self)
-    cdef inline int16_t _send(self, plist.plist_t node)
-    cdef inline int16_t _receive(self, plist.plist_t* c_node)
+    cdef int16_t _send(self, plist.plist_t node)
+    cdef int16_t _receive(self, plist.plist_t* c_node)
 
 cdef extern from "libimobiledevice/lockdown.h":
     cdef struct lockdownd_client_private:
--- cython/imobiledevice.pyx
+++ cython/imobiledevice.pyx
@@ -25,9 +25,8 @@
             return 0
         cdef BaseError err = self._error(ret)
         raise err
-        return -1
 
-    cdef inline BaseError _error(self, int16_t ret): pass
+    cdef BaseError _error(self, int16_t ret): pass
 
 cdef extern from "libimobiledevice/libimobiledevice.h":
     ctypedef enum idevice_error_t:
@@ -211,10 +210,10 @@
                 plist.plist_free(c_node)
             raise
 
-    cdef inline int16_t _send(self, plist.plist_t node):
+    cdef int16_t _send(self, plist.plist_t node):
         raise NotImplementedError("send is not implemented")
 
-    cdef inline int16_t _receive(self, plist.plist_t* c_node):
+    cdef int16_t _receive(self, plist.plist_t* c_node):
         raise NotImplementedError("receive is not implemented")
 
 cdef class DeviceLinkService(PropertyListService):
--- cython/mobilesync.pxi
+++ cython/mobilesync.pxi
@@ -149,10 +149,10 @@
                 plist.plist_free(remapping)
             raise
     
-    cdef inline int16_t _send(self, plist.plist_t node):
+    cdef int16_t _send(self, plist.plist_t node):
         return mobilesync_send(self._c_client, node)
 
-    cdef inline int16_t _receive(self, plist.plist_t* node):
+    cdef int16_t _receive(self, plist.plist_t* node):
         return mobilesync_receive(self._c_client, node)
 
     cdef inline BaseError _error(self, int16_t ret):
--- m4/ac_pkg_cython.m4
+++ m4/ac_pkg_cython.m4
@@ -6,8 +6,11 @@
                 CYTHON=false
         elif test -n "$1" ; then
                 AC_MSG_CHECKING([for Cython version])
-                [cython_version=`$CYTHON --version 2>&1 | grep 'Cython version' | sed 's/.*\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*/\1/g'`]
+                [cython_version=`$CYTHON --version 2>&1 | sed 's/Cython version \(.*\)$/\1/g'`]
                 AC_MSG_RESULT([$cython_version])
+
+                # Setup extra version string for parsing
+                [cython_version_stripped=`echo $cython_version | sed 's/\([0-9]\+\)\.\([0-9]\+\)[^\.]*\(\.\([0-9]\+\)\)\?.*/0\1.0\2.0\4/g'`]
                 if test -n "$cython_version" ; then
                         # Calculate the required version number components
                         [required=$1]
@@ -25,8 +28,9 @@
                         if test -z "$required_patch" ; then
                                 [required_patch=0]
                         fi
+
                         # Calculate the available version number components
-                        [available=$cython_version]
+                        [available=$cython_version_stripped]
                         [available_major=`echo $available | sed 's/[^0-9].*//'`]
                         if test -z "$available_major" ; then
                                 [available_major=0]
@@ -41,6 +45,7 @@
                         if test -z "$available_patch" ; then
                                 [available_patch=0]
                         fi
+
                         if test $available_major -gt $required_major || \
                                 ( test $available_major -eq $required_major && \
                                       test $available_minor -gt $required_minor ) || \






             reply	other threads:[~2012-05-19  8:18 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-19  8:18 Samuli Suominen (ssuominen) [this message]
  -- strict thread matches above, loose matches on Subject: below --
2013-05-11 22:00 [gentoo-commits] gentoo-x86 commit in app-pda/libimobiledevice/files: libimobiledevice-1.1.4-cython.patch Samuli Suominen (ssuominen)

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=20120519081840.325942004C@flycatcher.gentoo.org \
    --to=ssuominen@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /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