From patchwork Mon Sep 3 18:08:57 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joseph Kogut X-Patchwork-Id: 965621 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.133; helo=hemlock.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="IvtsEj7k"; dkim-atps=neutral Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4243St5m7Sz9rvt for ; Tue, 4 Sep 2018 07:46:38 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id A022F87ED7; Mon, 3 Sep 2018 18:09:10 +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 2ffcLKeBObZX; Mon, 3 Sep 2018 18:09:08 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by hemlock.osuosl.org (Postfix) with ESMTP id 8FDA787ED0; Mon, 3 Sep 2018 18:09:08 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id 0729C1C0485 for ; Mon, 3 Sep 2018 18:09:07 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id 049C1244F8 for ; Mon, 3 Sep 2018 18:09:07 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Afaty3-tAQsr for ; Mon, 3 Sep 2018 18:09:06 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-pf1-f174.google.com (mail-pf1-f174.google.com [209.85.210.174]) by silver.osuosl.org (Postfix) with ESMTPS id 4683F24442 for ; Mon, 3 Sep 2018 18:09:06 +0000 (UTC) Received: by mail-pf1-f174.google.com with SMTP id h79-v6so478407pfk.8 for ; Mon, 03 Sep 2018 11:09:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=KnnYtnnpuUkBYmdjSWN/9EEU4SnKmrZyQVjkOODFRHE=; b=IvtsEj7kHL+c62f2yHK4YNGdwTGMJTWvaYizo7R9Qu+L20xuUTQ5EzzSihX56fctio 0E3al3oMytbEwL4uep6bRa9YwCCHj2pW812GhhTR4UTTOqAMpbaDqsRrihXVxmVD2+Qb d5sowqgpcLNnN4EvZXMyAPtzUzwxWLt4agVpox6S1NL3bdO9yhU0EHB10tC3ZQl6cItF gmktCDzUFlZYsszqbjYxg1I5qoJRMrF7iNscizrps/XbrxXN1N+Nb4epBrhdXaeGH3D3 9WPzLht3KJj3e3QraSDkBG2eXwA3age+R3yGa7W84gVxWOCgl71graALxWYzufNJ/arb hkNQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=KnnYtnnpuUkBYmdjSWN/9EEU4SnKmrZyQVjkOODFRHE=; b=OwWriJ2yRLOANYreFxswmjrtvpJ3dUK/7oDI54yvcKNDCPv1i5cSHki6d1B9nNNN6C W89my6HfECHEIEptsXwpw0/h4WvI0IBU8s9K1BpZAxBySCeAW1ua6Nz881k7LXNBL76r 1FZtjMQDcw5Vgn5qIhgiA2CnGh06faraKlf85KT1xzmAVa1QNp+hTs00pTX6syIB2klp dNjieIyEn/yHFdb+Q7+wVvnM6Z+POFz/p0Px5cb0iLgb0L0Mv14TruzS6gsgxKoeHSaV by1bwizC376RW2JStn21btPKRp0PD9HUig6OFTcdGRwjUYEtnDcfHcqbUnAfCckpdAuB u4aQ== X-Gm-Message-State: APzg51DWZdOwc0l3hbb7rxgLDKcBKyJDwZC+rE21OLMICqdMBptPG1QZ mTWJA3iQRw/7c5QLCzBcKXDDsNhy X-Google-Smtp-Source: ANB0VdYFgGn6SiMaCs6qIUlVIS/TLOvju01HHDxyDa9/UDQp7Ytia0j9vKC68IgfLt8cdlmPBNdB+g== X-Received: by 2002:a62:cdcf:: with SMTP id o198-v6mr10385796pfg.12.1535998145395; Mon, 03 Sep 2018 11:09:05 -0700 (PDT) Received: from localhost.localdomain ([162.251.69.147]) by smtp.gmail.com with ESMTPSA id n74-v6sm3928342pfi.161.2018.09.03.11.09.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 03 Sep 2018 11:09:04 -0700 (PDT) From: Joseph Kogut To: buildroot@buildroot.org Date: Mon, 3 Sep 2018 11:08:57 -0700 Message-Id: <20180903180857.29717-1-joseph.kogut@gmail.com> X-Mailer: git-send-email 2.18.0 Subject: [Buildroot] [PATCH v5 1/1] python-kivy: new package X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Joseph Kogut MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Signed-off-by: Joseph Kogut --- Changes v4 -> v5: - Explicitly disable unavailable optional features - Fix DEVELOPERS Changes v3 -> v4: - Remove dependency on glibc (tested on aarch64 w/ musl and X11 window provider, sdl2 still segfaults) - Fix dependency on xlib_libX11 and xlib_libXrender Changes v2 -> v3: - Bump version to 1.10.1 - Remove upstreamed patch to remove getconf dependency - Split config comments for OpenGL and glibc deps - check-packages fixes Changes v1 -> v2: - Remove unnecessary build dependencies (suggested by Yegor) - Require toolchain w/ glibc, as Kivy builds with others, but seems to segfault with (at least) musl. --- DEVELOPERS | 1 + package/Config.in | 1 + package/python-kivy/Config.in | 16 ++++++++ package/python-kivy/python-kivy.hash | 4 ++ package/python-kivy/python-kivy.mk | 56 ++++++++++++++++++++++++++++ 5 files changed, 78 insertions(+) create mode 100644 package/python-kivy/Config.in create mode 100644 package/python-kivy/python-kivy.hash create mode 100644 package/python-kivy/python-kivy.mk diff --git a/DEVELOPERS b/DEVELOPERS index bd8095bd20..44e6089820 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -1097,6 +1097,7 @@ F: package/gconf/ F: package/libnss/ F: package/llvm/ F: package/python-cython/ +F: package/python-kivy/ F: package/python-raven/ F: package/python-schedule/ F: package/python-websockets/ diff --git a/package/Config.in b/package/Config.in index 66f303ec58..1f873bf3b0 100644 --- a/package/Config.in +++ b/package/Config.in @@ -859,6 +859,7 @@ menu "External python modules" source "package/python-jsonschema/Config.in" source "package/python-json-schema-validator/Config.in" source "package/python-keyring/Config.in" + source "package/python-kivy/Config.in" source "package/python-libconfig/Config.in" source "package/python-libusb1/Config.in" source "package/python-lmdb/Config.in" diff --git a/package/python-kivy/Config.in b/package/python-kivy/Config.in new file mode 100644 index 0000000000..e4b89a74c1 --- /dev/null +++ b/package/python-kivy/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_PYTHON_KIVY + bool "python-kivy" + depends on BR2_PACKAGE_HAS_LIBGL + select BR2_PACKAGE_HOST_PYTHON_CYTHON + select BR2_PACKAGE_LIBPNG # runtime + select BR2_PACKAGE_MTDEV # runtime + select BR2_PACKAGE_PYTHON_DOCUTILS # runtime + select BR2_PACKAGE_PYTHON_PYGMENTS # runtime + help + A software library for rapid development of + hardware-accelerated multitouch applications. + + http://kivy.org + +comment "python-kivy needs an OpenGL provider" + depends on !BR2_PACKAGE_HAS_LIBGL diff --git a/package/python-kivy/python-kivy.hash b/package/python-kivy/python-kivy.hash new file mode 100644 index 0000000000..8949bc643f --- /dev/null +++ b/package/python-kivy/python-kivy.hash @@ -0,0 +1,4 @@ +# sha256 locally computed +sha256 794e45cc7bcc7882f7cd95f1673bc6701f3215a20a54c915cac0c5e46a449b4c python-kivy-1.10.1.tar.gz +# License file, locally calculated +sha256 282b3d8735ef6cbdcf8cc480947d50e0aea4ad1cc931d41f3f6a6bc23956f2d6 LICENSE diff --git a/package/python-kivy/python-kivy.mk b/package/python-kivy/python-kivy.mk new file mode 100644 index 0000000000..ecd404b7a1 --- /dev/null +++ b/package/python-kivy/python-kivy.mk @@ -0,0 +1,56 @@ +################################################################################ +# +# python-kivy +# +################################################################################ + +PYTHON_KIVY_VERSION = 1.10.1 +PYTHON_KIVY_SITE = $(call github,kivy,kivy,$(PYTHON_KIVY_VERSION)) +PYTHON_KIVY_SETUP_TYPE = distutils +PYTHON_KIVY_LICENSE = MIT +PYTHON_KIVY_LICENSE_FILES = LICENSE +PYTHON_KIVY_DEPENDENCIES = host-python-cython libgl + +ifeq ($(BR2_PACKAGE_GSTREAMER),y) +PYTHON_KIVY_DEPENDENCIES += gstreamer +PYTHON_KIVY_ENV += USE_GSTREAMER=1 +else +PYTHON_KIVY_ENV += USE_GSTREAMER=0 +endif + +ifeq ($(BR2_PACKAGE_HAS_LIBEGL),y) +PYTHON_KIVY_DEPENDENCIES += libegl +PYTHON_KIVY_ENV += USE_EGL=1 +else +PYTHON_KIVY_ENV += USE_EGL=0 +endif + +ifeq ($(BR2_PACKAGE_SDL2)$(BR2_PACKAGE_SDL2_X11)$(BR2_PACKAGE_SDL2_IMAGE)$(BR2_PACKAGE_SDL2_MIXER)$(BR2_PACKAGE_SDL2_TTF),yyyyy) +PYTHON_KIVY_DEPENDENCIES += sdl2 sdl2_image sdl2_mixer sdl2_ttf +PYTHON_KIVY_ENV += USE_SDL2=1 +PYTHON_KIVY_ENV += KIVY_SDL2_PATH=$(STAGING_DIR)/usr/include/SDL2 +else +PYTHON_KIVY_ENV += USE_SDL2=0 +endif + +ifeq ($(BR2_PACKAGE_WAYLAND),y) +PYTHON_KIVY_DEPENDENCIES += wayland +PYTHON_KIVY_ENV += USE_WAYLAND=1 +else +PYTHON_KIVY_ENV += USE_WAYLAND=0 +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBX11)$(BR2_PACKAGE_XLIB_LIBXRENDER),yy) +PYTHON_KIVY_DEPENDENCIES += xlib_libX11 xlib_libXrender +PYTHON_KIVY_ENV += USE_X11=1 +else +PYTHON_KIVY_ENV += USE_X11=0 +endif + +define PYTHON_KIVY_REMOVE_EXAMPLES + rm -rf $(TARGET_DIR)/usr/share/kivy-examples +endef + +PYTHON_KIVY_POST_INSTALL_TARGET_HOOKS += PYTHON_KIVY_REMOVE_EXAMPLES + +$(eval $(python-package))