From patchwork Thu Nov 22 00:18:11 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Samuel Martin X-Patchwork-Id: 200910 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from hemlock.osuosl.org (hemlock.osuosl.org [140.211.166.133]) by ozlabs.org (Postfix) with ESMTP id 718C62C0097 for ; Thu, 22 Nov 2012 11:21:52 +1100 (EST) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id C9D5CA01E1; Thu, 22 Nov 2012 00:21:50 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id idHKSk7aA86e; Thu, 22 Nov 2012 00:21:39 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by hemlock.osuosl.org (Postfix) with ESMTP id 306E1A03A3; Thu, 22 Nov 2012 00:20:55 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (whitealder.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 913D88F74A for ; Thu, 22 Nov 2012 00:19:55 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 6A6AD81617 for ; Thu, 22 Nov 2012 00:19:50 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6toX3OoWOv5j for ; Thu, 22 Nov 2012 00:19:37 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-we0-f171.google.com (mail-we0-f171.google.com [74.125.82.171]) by whitealder.osuosl.org (Postfix) with ESMTPS id BF03481BA4 for ; Thu, 22 Nov 2012 00:19:15 +0000 (UTC) Received: by mail-we0-f171.google.com with SMTP id u3so578127wey.16 for ; Wed, 21 Nov 2012 16:19:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references; bh=fOy6LdltV041MZ/TzAGiIvuhMeVDzAYvEciPfI9DpOU=; b=tLgLOoYWLcdZ8k2IMKwvb3nS3qhWSRrdm4mDTA5JjuGT5fkyQjwOSf7iyWRgQ0pzod nZNuZE+GlMN67UeCfj2ngMQL2Ow1WebYu00WOxUi9M5bpmNzcgpoSDrlIYGz0MBppWaU 5FlCX1Ma7uRATGicFD1zTQGPBJCkdIXoPv4ttxh6aL0O6fPULMpP1NMZshQIIcPl/EQT c96BLos1fluviXWXcEYuVk2gc7fZub7VPnlqtn5zPF1RUv2QybCPSZE+M2CzNDpuMJO5 hsmufcMenl7xj8oiz9fgdCgLRuYcUmaULMr1Q09LY9F8C4dcmpTxAFEFq/m1AhCQ/qwo sS7A== Received: by 10.180.101.68 with SMTP id fe4mr26683wib.7.1353543555814; Wed, 21 Nov 2012 16:19:15 -0800 (PST) Received: from localhost.localdomain (ivr94-4-82-229-165-48.fbx.proxad.net. [82.229.165.48]) by mx.google.com with ESMTPS id r10sm1847697wiz.0.2012.11.21.16.19.14 (version=SSLv3 cipher=OTHER); Wed, 21 Nov 2012 16:19:14 -0800 (PST) From: Samuel Martin To: buildroot@busybox.net Date: Thu, 22 Nov 2012 01:18:11 +0100 Message-Id: <1353543503-8952-22-git-send-email-s.martin49@gmail.com> X-Mailer: git-send-email 1.8.0 In-Reply-To: <1353543503-8952-1-git-send-email-s.martin49@gmail.com> References: <1353543503-8952-1-git-send-email-s.martin49@gmail.com> Subject: [Buildroot] [PATCH 21/33] rrdtool: add python binding support X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: buildroot-bounces@busybox.net Signed-off-by: Samuel Martin --- package/rrdtool/Config.in | 8 +++++++ package/rrdtool/rrdtool-fix-python-includes.patch | 29 +++++++++++++++++++++++ package/rrdtool/rrdtool.mk | 19 +++++++++++++-- 3 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 package/rrdtool/rrdtool-fix-python-includes.patch diff --git a/package/rrdtool/Config.in b/package/rrdtool/Config.in index d315b57..ed3f71e 100644 --- a/package/rrdtool/Config.in +++ b/package/rrdtool/Config.in @@ -11,5 +11,13 @@ config BR2_PACKAGE_RRDTOOL http://oss.oetiker.ch/rrdtool/ +if BR2_PACKAGE_RRDTOOL + +config BR2_PACKAGE_RRDTOOL_PYTHON + bool "Python bindings" + depends on BR2_PACKAGE_PYTHON + +endif + comment "rrdtool requires a toolchain with WCHAR support" depends on !BR2_USE_WCHAR diff --git a/package/rrdtool/rrdtool-fix-python-includes.patch b/package/rrdtool/rrdtool-fix-python-includes.patch new file mode 100644 index 0000000..07ff3df --- /dev/null +++ b/package/rrdtool/rrdtool-fix-python-includes.patch @@ -0,0 +1,29 @@ +Allow to override the python include directories. +When cross-compiling python extensions, python headers must be taken from the +staging directory, not the host one. + +This patch avoids to run into some weird, ununderstable error about LONG_BIT +definition, especially when the build and the target machine have different +bitwises. + +Signed-off-by: Samuel Martin + +--- rrdtool-1.2.30.orig/acinclude.m4 2012-11-17 11:33:40.194321803 +0100 ++++ rrdtool-1.2.30/acinclude.m4 2012-11-17 12:18:12.490326127 +0100 +@@ -467,9 +467,13 @@ AC_MSG_CHECKING(for headers required to + dnl deduce PYTHON_INCLUDES + py_prefix=`$PYTHON -c "import sys; print sys.prefix"` + py_exec_prefix=`$PYTHON -c "import sys; print sys.exec_prefix"` +-PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION}" +-if test "$py_prefix" != "$py_exec_prefix"; then +- PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}" ++if test "x$am_cv_python_includes" = "x" ; then ++ PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION}" ++ if test "$py_prefix" != "$py_exec_prefix"; then ++ PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}" ++ fi ++else ++ PYTHON_INCLUDES="-I${am_cv_python_includes}" + fi + AC_SUBST(PYTHON_INCLUDES) + dnl check if the headers exist: diff --git a/package/rrdtool/rrdtool.mk b/package/rrdtool/rrdtool.mk index 7521aba..8799a85 100644 --- a/package/rrdtool/rrdtool.mk +++ b/package/rrdtool/rrdtool.mk @@ -11,8 +11,23 @@ RRDTOOL_AUTORECONF = YES RRDTOOL_INSTALL_STAGING = YES RRDTOOL_CONF_ENV = rd_cv_ieee_works=yes rd_cv_null_realloc=nope \ ac_cv_func_mmap_fixed_mapped=yes -RRDTOOL_CONF_OPT = --disable-perl --disable-python --disable-ruby \ - --disable-tcl --program-transform-name='' +RRDTOOL_CONF_OPT = --program-transform-name='' \ + --disable-perl \ + --disable-ruby \ + --disable-tcl \ + +ifneq ($(BR2_PACKAGE_RRDTOOL_PYTHON),) +RRDTOOL_CONF_OPT += --enable-python +RRDTOOL_CONF_ENV += \ + am_cv_pathless_PYTHON=python \ + ac_cv_path_PYTHON=$(HOST_DIR)/usr/bin/python \ + am_cv_python_platform=linux2 \ + am_cv_python_includes=$(STAGING_DIR)/usr/include/python$(PYTHON_VERSION_MAJOR) +RRDTOOL_DEPENDENCIES += python +else +RRDTOOL_CONF_OPT += --disable-python +endif + RRDTOOL_MAKE = $(MAKE1) define RRDTOOL_REMOVE_EXAMPLES