From patchwork Mon Jan 4 18:12:51 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gleb Mazovetskiy X-Patchwork-Id: 1422214 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=busybox.net (client-ip=140.211.166.136; helo=silver.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.a=rsa-sha256 header.s=20161025 header.b=vUHAKlHe; dkim-atps=neutral Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4D8kJS2bycz9sP7 for ; Tue, 5 Jan 2021 05:13:10 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id E5ACF2047A; Mon, 4 Jan 2021 18:13:03 +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 SKzv0GEDOWp6; Mon, 4 Jan 2021 18:13:00 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by silver.osuosl.org (Postfix) with ESMTP id 6723E2041A; Mon, 4 Jan 2021 18:13:00 +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 01E931BF3A7 for ; Mon, 4 Jan 2021 18:12:59 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id E36772041A for ; Mon, 4 Jan 2021 18:12:58 +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 POG4ZKkIwK7h for ; Mon, 4 Jan 2021 18:12:57 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wm1-f44.google.com (mail-wm1-f44.google.com [209.85.128.44]) by silver.osuosl.org (Postfix) with ESMTPS id 8CD8A20419 for ; Mon, 4 Jan 2021 18:12:57 +0000 (UTC) Received: by mail-wm1-f44.google.com with SMTP id y23so129800wmi.1 for ; Mon, 04 Jan 2021 10:12:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=Xa6OnflewqhetC40KzHcp83SLmxYuRaiZLob5KIS4Io=; b=vUHAKlHeN1eqZbQ3E+XpcIrJPkHDHNGemP8Ae4uRlkw6k/87HalmjHrnxA4PwVnK6d dnXuTnTJm+27dFjyLgoPOIklsejUMk3nQ2odZ10A2327JkAIBP09REGhbFFDvh1LGVDM KWhlvhyl6RecKYv4jHqeainhJR+aWerZVpWacSq3b90LBOTXrolS5sHx8X+iBTKBHeUQ ljLSSFmMiTw3xrb3OYdmCUDXgm7JsQbwQR0glEQN1kV/Foj/k44cEbD/YNAf1bcKLfgm KVg51DLQ7u9qWQjUQ48+IAOUgTIynQe2XNNCgV0pSOx9vaoEto7esyF7DvFq0SmQd/Ut CfbA== 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:mime-version :content-transfer-encoding; bh=Xa6OnflewqhetC40KzHcp83SLmxYuRaiZLob5KIS4Io=; b=QSIz8tk8kGxRBXcCdqXzbYNVK8cBCDBY9FOKRVasYoH/Urmf0Z2gYW46OVJfCQXBGb jOcJTiPeSqbKHfkyoTqF9yBj824ZoLWHHbTO3U2joNeFxUzZbhXSs8aBP8UT7OTS4dQI pPIk3mutQD/BATQfA15a168kXvfLxbPUWJMAmpWl1DcOXSokeisA8eBQZQtwccbkKYvT yx6YH1P5lC4hydGeBQ0OIpx9K5JW58q4PCOn3Wp3tVtV1LOqY3E54wu450kZJboiIVcr I5kwJ67/fQ8oYUAq6LAxF2LIURyUsq+MGK/IFtTSJX2gwXVJvVf5ox5hHBUYgeEIrUGF CkPw== X-Gm-Message-State: AOAM532h7Bwb2yvXKt6UFy1JAArDIdadQiEGvuM02rlFfNF39CkfpAEX 8hhH3igcUyUchLXGfPp/QFgMIDlnkpFZYQ== X-Google-Smtp-Source: ABdhPJwxCjjd1ZO05vNfTu3lGnf68CvuHPEpXmFUwdj1nuEptOxzA23sb/EU9VyNzPIEqx6yiO/c0g== X-Received: by 2002:a1c:6a10:: with SMTP id f16mr126327wmc.106.1609783975555; Mon, 04 Jan 2021 10:12:55 -0800 (PST) Received: from localhost (cpc76906-dals22-2-0-cust400.20-2.cable.virginm.net. [81.106.81.145]) by smtp.gmail.com with ESMTPSA id m11sm185295wmi.16.2021.01.04.10.12.53 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Jan 2021 10:12:54 -0800 (PST) From: Gleb Mazovetskiy To: buildroot@buildroot.org Date: Mon, 4 Jan 2021 18:12:51 +0000 Message-Id: <20210104181251.69635-1-glex.spb@gmail.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Subject: [Buildroot] [PATCH v2 1/1] package/solarus: Fix OpenGLES2 build X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gleb Mazovetskiy , Romain Naour Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" 1. Adds a patch that fixes OpenGLES2 build https://gitlab.com/solarus-games/solarus/-/merge_requests/1364 2. Updates Config.in and solarus.mk to support OpenGLES2 Signed-off-by: Gleb Mazovetskiy --- ...0001-Add-a-basic-FindOpenGLES2.cmake.patch | 48 +++++++++++++++++++ package/solarus/Config.in | 2 +- package/solarus/solarus.mk | 9 +++- 3 files changed, 57 insertions(+), 2 deletions(-) create mode 100644 package/solarus/0001-Add-a-basic-FindOpenGLES2.cmake.patch diff --git a/package/solarus/0001-Add-a-basic-FindOpenGLES2.cmake.patch b/package/solarus/0001-Add-a-basic-FindOpenGLES2.cmake.patch new file mode 100644 index 0000000000..59bf9e8cf4 --- /dev/null +++ b/package/solarus/0001-Add-a-basic-FindOpenGLES2.cmake.patch @@ -0,0 +1,48 @@ +From 2bf0e98f17d92fd86ee61be179e3cebe93f75ea7 Mon Sep 17 00:00:00 2001 +From: Gleb Mazovetskiy +Date: Sun, 3 Jan 2021 12:38:13 +0000 +Subject: [PATCH] Add a basic FindOpenGLES2.cmake + +Fixes #1324 +--- + cmake/modules/FindOpenGLES2.cmake | 28 ++++++++++++++++++++++++++++ + 1 file changed, 28 insertions(+) + create mode 100644 cmake/modules/FindOpenGLES2.cmake + +diff --git a/cmake/modules/FindOpenGLES2.cmake b/cmake/modules/FindOpenGLES2.cmake +new file mode 100644 +index 000000000..70fd5e6f0 +--- /dev/null ++++ b/cmake/modules/FindOpenGLES2.cmake +@@ -0,0 +1,28 @@ ++# Try to find OpenGLES2. Once done this will define: ++# OPENGLES2_FOUND ++# OPENGLES2_INCLUDE_DIRS ++# OPENGLES2_LIBRARIES ++# OPENGLES2_DEFINITIONS ++ ++find_package(PkgConfig QUIET) ++ ++pkg_check_modules(PC_OPENGLES2 glesv2) ++ ++if (PC_OPENGLES2_FOUND) ++ set(OPENGLES2_DEFINITIONS ${PC_OPENGLES2_CFLAGS_OTHER}) ++endif () ++ ++find_path(OPENGLES2_INCLUDE_DIRS NAMES GLES2/gl2.h ++ HINTS ${PC_OPENGLES2_INCLUDEDIR} ${PC_OPENGLES2_INCLUDE_DIRS} ++) ++ ++set(OPENGLES2_NAMES ${OPENGLES2_NAMES} glesv2 GLESv2) ++find_library(OPENGLES2_LIBRARIES NAMES ${OPENGLES2_NAMES} ++ HINTS ${PC_OPENGLES2_LIBDIR} ${PC_OPENGLES2_LIBRARY_DIRS} ++) ++ ++include(FindPackageHandleStandardArgs) ++find_package_handle_standard_args(OpenGLES2 REQUIRED_VARS OPENGLES2_INCLUDE_DIRS OPENGLES2_LIBRARIES ++ FOUND_VAR OPENGLES2_FOUND) ++ ++mark_as_advanced(OPENGLES2_INCLUDE_DIRS OPENGLES2_LIBRARIES) +-- +2.27.0 + diff --git a/package/solarus/Config.in b/package/solarus/Config.in index b0f4121f6d..bcfa640890 100644 --- a/package/solarus/Config.in +++ b/package/solarus/Config.in @@ -6,7 +6,7 @@ config BR2_PACKAGE_SOLARUS depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # openal depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # openal depends on !BR2_STATIC_LIBS # SDL2 - depends on BR2_PACKAGE_HAS_LIBGL + depends on BR2_PACKAGE_HAS_LIBGL || BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_GLM select BR2_PACKAGE_LIBMODPLUG select BR2_PACKAGE_LIBOGG diff --git a/package/solarus/solarus.mk b/package/solarus/solarus.mk index 92e849ef02..c759d1c2ea 100644 --- a/package/solarus/solarus.mk +++ b/package/solarus/solarus.mk @@ -16,7 +16,7 @@ SOLARUS_LICENSE_FILES = license.txt # Install libsolarus.so SOLARUS_INSTALL_STAGING = YES -SOLARUS_DEPENDENCIES = glm libgl libmodplug libogg libvorbis openal physfs \ +SOLARUS_DEPENDENCIES = glm libmodplug libogg libvorbis openal physfs \ sdl2 sdl2_image sdl2_ttf # Disable launcher GUI (requires Qt5) @@ -24,6 +24,13 @@ SOLARUS_CONF_OPTS = \ -DSOLARUS_GUI=OFF \ -DSOLARUS_TESTS=OFF +ifeq ($(BR2_PACKAGE_HAS_LIBGL),y) +SOLARUS_DEPENDENCIES += libgl +else +SOLARUS_CONF_OPTS += -DSOLARUS_GL_ES=ON +SOLARUS_DEPENDENCIES += libgles +endif + ifeq ($(BR2_PACKAGE_LUAJIT),y) SOLARUS_CONF_OPTS += -DSOLARUS_USE_LUAJIT=ON SOLARUS_DEPENDENCIES += luajit