From patchwork Sun Nov 29 17:56:33 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Peter Seiderer X-Patchwork-Id: 1407864 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=gmx.net Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.a=rsa-sha256 header.s=badeba3b8450 header.b=E20znxM4; 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 4CkbfG34LKz9s0b for ; Mon, 30 Nov 2020 04:56:51 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id 05947207A1; Sun, 29 Nov 2020 17:56:49 +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 OZwtmu2fHiNR; Sun, 29 Nov 2020 17:56:40 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by silver.osuosl.org (Postfix) with ESMTP id CB17D2079A; Sun, 29 Nov 2020 17:56:40 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id ABCFC1BF3B0 for ; Sun, 29 Nov 2020 17:56:39 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id A57928728D for ; Sun, 29 Nov 2020 17:56:39 +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 oQ3C3GjqAAml for ; Sun, 29 Nov 2020 17:56:37 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mout.gmx.net (mout.gmx.net [212.227.17.22]) by whitealder.osuosl.org (Postfix) with ESMTPS id 55A5387297 for ; Sun, 29 Nov 2020 17:56:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1606672594; bh=waSCwpVVa3BWh7DsFuI8HRSU+uKXNGmyGf3LGfHNiEA=; h=X-UI-Sender-Class:From:To:Subject:Date; b=E20znxM4anA8RgMMtvj+fhACFHgJfyIkLyZEpRr0zAYIWVDJohZuDCLCSvseGMJRm +lWiZdULLoig/LgNymHJoo++cNGioQw1tLm+jDk4gd8dbbNqwQS5RHjNq0qzh24VZy oHlovpRpzJxqozx8trPR24O952k9p55tdR0hnP5k= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from localhost.fritz.box ([62.216.208.120]) by mail.gmx.com (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MMobU-1kSrzS088q-00Ip3t for ; Sun, 29 Nov 2020 18:56:34 +0100 From: Peter Seiderer To: buildroot@busybox.net Date: Sun, 29 Nov 2020 18:56:33 +0100 Message-Id: <20201129175633.388-1-ps.report@gmx.net> X-Mailer: git-send-email 2.29.2 MIME-Version: 1.0 X-Provags-ID: V03:K1:8A/DZAppZkSBHgBVxrJ9bcmIF/QtFDycEr76+CUaa91KC0/k4Ew 7UG7spwf7uQu2RnGPp+ZYRZDxd92S9NB8JuQSrP3DVyfYxoFzsSVeYGCl2cK/fSARbEVr6u KG+RDbF1Bv/uT4m9ybq2afqDukqmA52W2MVJc6xs2sXq992+WhKfWS6o0VyBCoWCvfI+Ra2 ZyfvLLFkaIKbjmUUYvo/w== X-UI-Out-Filterresults: notjunk:1;V03:K0:SqWIqOM0F2U=:SkPmtAhITMCaekk86CQ0YI mJkcbUtdJc/9dMcxAcSQJ6jKv9UXKr8vFPSOVFNuwnbmFST9utcwmWuQyDtanduM0+ZWLiE6W FdGoKtVLugjc9jNnA0Sx78WkN/XiHRmQ9t6A5YTNQdTCu6GISaSopzJpnzZ1Wujmak1VPO9om HDDgiwmriTDiyO6JZoWJPYuByF5cuDr27M7tyzFUt8NVu2QMzRWXzJVJM+wRjtvys8/jJr2OU OHwV8TSHO5yMyXRTKujQue1jOUYXHWnlZVGlM9pO3vpYF1lK/jRXudc65dG4a5Gq6QCeg55F2 s5DkoZJihM8gho0iD25LhlALgqvUZPoIoTJJl+ScGYyDbDbQxmRIAAsQOrQsXeKkcQd9gC7Ia NZwgxOEImfPtgSL1mWO6htuCFZeb88RvkcRhx6oK/nC4sLxF78EoisIfoHLKKvXITWjaUJ/2a WuVqtAxx4knsgf3iqL5pZQ7IDTQeC61o5OajK0rdc+ksSDWToIG3Dak+Ry656Q4Wlx8i6W6/p L7cE54Cko530qyofVmdGfZ9lyISV39oqDLfDriw3qUeR1+Zzf08EjGuciEsq6pQ+oCPFpcDlF czjGD//SntqGoN6i/0z50gbAEh73TrUFyQ38PSh2FSv2U5EfALLlw2LkYApedV5ujs89zNQju 8qFBY8PhkPhdHQ7VEv1C+J96+zn9SSspMVtCY/xk9qEz0poTchhu+Xhy2eWKlvvdNDGU7d30N uFGBTe5XKJGDxXpotaNxHSapvJcNReiwOo9Y5JKVmHu7nNCB0Q0VDW5A//nvmL5seCUQ1MUih 50B5ZqTIHt9Rl7YtLyoTjHdUih00vUe6+nnbsCraQ4/HwsWptjuu1ursFEqYPg5NOw8ix+wUR epAkqwS1cmaWiymTKJCw== Subject: [Buildroot] [PATCH/next v1] package/kmsxx: bump version to 5489056 and convert to meson 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: , Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" - remove 0001-fix-compiler-errors-with-gcc-10.patch (upstream) - remove 0002-added-include-string-to-card.h-to-follow-gcc10-porti.patch (upstream) - convert to meson - add patch to use system fmt instead of git submodule (fixes configure 'ERROR: Include dir ext/fmt/include does not exist.') - add patch to use system pybind11 instead of git submodule (fixes configure 'ERROR: Include dir ext/pybind11/include does not exist.') - add patch to use python only if pykms is enabled (fixes configure 'ERROR: Dependency "pybind11" not found, tried pkgconfig') - add optional libevdev dependency (needed for utils/kmstouch) - update LICENSE file hash (replaced short copyright notice and link to http://mozilla.org/MPL/2.0/ with complete license text) - lift toolchain headers requirement to at least 4.11 (include linux/dma-buf.h) Signed-off-by: Peter Seiderer --- Notes: - needs https://patchwork.ozlabs.org/project/buildroot/patch/20201129093823.10286-1-ps.report@gmx.net/ - tested with: BR2_PACKAGE_FMT=y BR2_PACKAGE_LIBDRM=y BR2_PACKAGE_KMSXX=y BR2_PACKAGE_KMSXX_INSTALL_TESTS=y andes-nds32 [ 1/45]: SKIPPED arm-aarch64 [ 2/45]: OK bootlin-x86-64-glibc [ 3/45]: OK br-aarch64-glibc [ 4/45]: SKIPPED br-arcle-hs38 [ 5/45]: SKIPPED br-arm-basic [ 6/45]: SKIPPED br-arm-cortex-a9-glibc [ 7/45]: OK br-arm-cortex-a9-musl [ 8/45]: OK br-arm-cortex-m4-full [ 9/45]: OK br-arm-full [10/45]: OK br-arm-full-nothread [11/45]: SKIPPED br-arm-full-static [12/45]: SKIPPED br-i386-pentium4-full [13/45]: SKIPPED br-i386-pentium-mmx-musl [14/45]: SKIPPED br-m68k-5208-full [15/45]: OK br-m68k-68040-full [16/45]: OK br-microblazeel-full [17/45]: OK br-mips32r6-el-hf-glibc [18/45]: OK br-mips64-n64-full [19/45]: OK br-mips64r6-el-hf-glibc [20/45]: OK br-mipsel-o32-full [21/45]: OK br-nios2-glibc [22/45]: OK br-openrisc-uclibc [23/45]: OK br-powerpc-603e-basic-cpp [24/45]: FAILED Failure of package fmt, std::wstring related ('error: ‘wstring’ in namespace ‘std’ does not name a type') br-powerpc64le-power8-glibc [25/45]: OK br-powerpc64-power7-glibc [26/45]: OK br-powerpc-e500mc-full [27/45]: OK br-riscv32 [28/45]: FAILED Toolchain related: ^[[7m>>> toolchain-external-bootlin 2020.08-1 Patching^[[27m ^[[7m>>> toolchain-external-bootlin 2020.08-1 Configuring^[[27m f951: Warning: Reading file ‘’ as free form RPC support not available in C library, please disable BR2_TOOLCHAIN_EXTERNAL_INET_RPC br-riscv64 [29/45]: OK br-riscv64-musl [30/45]: OK br-sh4-full [31/45]: OK br-sparc64-glibc [32/45]: OK br-sparc-uclibc [33/45]: OK br-x86-64-core2-full [34/45]: OK br-x86-64-musl [35/45]: OK br-xtensa-full [36/45]: OK linaro-aarch64-be [37/45]: SKIPPED linaro-aarch64 [38/45]: SKIPPED linaro-arm [39/45]: SKIPPED sourcery-arm-armv4t [40/45]: SKIPPED sourcery-arm [41/45]: SKIPPED sourcery-arm-thumb2 [42/45]: SKIPPED sourcery-mips64 [43/45]: SKIPPED sourcery-mips [44/45]: SKIPPED sourcery-nios2 [45/45]: OK - kmsxx-548905611c130ea9d31929a0caf7a198d8bac462/meson.build states project('kms++', 'cpp', default_options : [ 'cpp_std=c++17', ], ) but 'depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8' seems good enough --- ...0001-fix-compiler-errors-with-gcc-10.patch | 35 --------- ...0001-meson-add-use-system-fmt-option.patch | 46 ++++++++++++ ...ring-to-card.h-to-follow-gcc10-porti.patch | 27 ------- ...meson-add-use-system-pybind11-option.patch | 43 +++++++++++ ...ly-build-py-in-case-pykms-is-enabled.patch | 48 ++++++++++++ package/kmsxx/Config.in | 7 +- package/kmsxx/kmsxx.hash | 4 +- package/kmsxx/kmsxx.mk | 74 ++++++++----------- 8 files changed, 172 insertions(+), 112 deletions(-) delete mode 100644 package/kmsxx/0001-fix-compiler-errors-with-gcc-10.patch create mode 100644 package/kmsxx/0001-meson-add-use-system-fmt-option.patch delete mode 100644 package/kmsxx/0002-added-include-string-to-card.h-to-follow-gcc10-porti.patch create mode 100644 package/kmsxx/0002-meson-add-use-system-pybind11-option.patch create mode 100644 package/kmsxx/0003-meson-only-build-py-in-case-pykms-is-enabled.patch diff --git a/package/kmsxx/0001-fix-compiler-errors-with-gcc-10.patch b/package/kmsxx/0001-fix-compiler-errors-with-gcc-10.patch deleted file mode 100644 index 6ec080af97..0000000000 --- a/package/kmsxx/0001-fix-compiler-errors-with-gcc-10.patch +++ /dev/null @@ -1,35 +0,0 @@ -From aa54634ce7cbbfc844de945e73a9f34cdcb9bb12 Mon Sep 17 00:00:00 2001 -From: Peter Trompeter -Date: Fri, 15 May 2020 15:20:47 +0200 -Subject: [PATCH] fix compiler errors with gcc 10 - -[Retrieved from: -https://github.com/tomba/kmsxx/commit/aa54634ce7cbbfc844de945e73a9f34cdcb9bb12] -Signed-off-by: Fabrice Fontaine ---- - kms++/inc/kms++/pixelformats.h | 1 + - kms++util/src/opts.cpp | 1 + - 2 files changed, 2 insertions(+) - -diff --git a/kms++/inc/kms++/pixelformats.h b/kms++/inc/kms++/pixelformats.h -index 784717d..4e73d5d 100644 ---- a/kms++/inc/kms++/pixelformats.h -+++ b/kms++/inc/kms++/pixelformats.h -@@ -2,6 +2,7 @@ - - #include - #include -+#include - - namespace kms - { -diff --git a/kms++util/src/opts.cpp b/kms++util/src/opts.cpp -index afef452..5a14b84 100644 ---- a/kms++util/src/opts.cpp -+++ b/kms++util/src/opts.cpp -@@ -1,4 +1,5 @@ - #include -+#include - - #include - #include diff --git a/package/kmsxx/0001-meson-add-use-system-fmt-option.patch b/package/kmsxx/0001-meson-add-use-system-fmt-option.patch new file mode 100644 index 0000000000..e9d67b1202 --- /dev/null +++ b/package/kmsxx/0001-meson-add-use-system-fmt-option.patch @@ -0,0 +1,46 @@ +From 61db7d5520f50564da8f2c9ac952eadb31f70727 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Sun, 29 Nov 2020 11:13:41 +0100 +Subject: [PATCH] meson: add use-system-fmt option + +[Upstream: https://github.com/tomba/kmsxx/pull/60] +Signed-off-by: Peter Seiderer +--- + meson.build | 10 +++++++--- + meson_options.txt | 2 ++ + 2 files changed, 9 insertions(+), 3 deletions(-) + +diff --git a/meson.build b/meson.build +index 9652009..29080f4 100644 +--- a/meson.build ++++ b/meson.build +@@ -31,9 +31,13 @@ endif + + add_global_link_arguments(link_arguments, language : 'cpp') + +-libfmt_includes = include_directories('ext/fmt/include') +-libfmt_dep = declare_dependency(include_directories : libfmt_includes, +- compile_args : '-DFMT_HEADER_ONLY') ++if get_option('use-system-fmt') ++ libfmt_dep = dependency('fmt') ++else ++ libfmt_includes = include_directories('ext/fmt/include') ++ libfmt_dep = declare_dependency(include_directories : libfmt_includes, ++ compile_args : '-DFMT_HEADER_ONLY') ++endif + + pybind11_includes = include_directories('ext/pybind11/include') + pybind11_dep = declare_dependency(include_directories : pybind11_includes) +diff --git a/meson_options.txt b/meson_options.txt +index cd854ab..48176a8 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -3,3 +3,5 @@ option('pykms', type : 'feature', value : 'auto') + option('omap', type : 'feature', value : 'auto') + option('static-libc', type : 'boolean', value : false) + option('utils', type : 'boolean', value : true) ++ ++option('use-system-fmt', type : 'boolean', value : false) +-- +2.29.2 + diff --git a/package/kmsxx/0002-added-include-string-to-card.h-to-follow-gcc10-porti.patch b/package/kmsxx/0002-added-include-string-to-card.h-to-follow-gcc10-porti.patch deleted file mode 100644 index 3febac40e8..0000000000 --- a/package/kmsxx/0002-added-include-string-to-card.h-to-follow-gcc10-porti.patch +++ /dev/null @@ -1,27 +0,0 @@ -From f7ee1e8c96ffbfc645487e483b928d250a7e79ec Mon Sep 17 00:00:00 2001 -From: Tobias Off -Date: Thu, 8 Oct 2020 22:37:55 +0200 -Subject: [PATCH] added #include to card.h to follow gcc10 porting - guide - -[Upstream: https://github.com/tomba/kmsxx/commit/b53f9d383c9189a897c44cd88a8fc1b871fdc8a2.patch] -Signed-off-by: Peter Seiderer ---- - kms++/inc/kms++/card.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/kms++/inc/kms++/card.h b/kms++/inc/kms++/card.h -index 90ad1f6..f055e27 100644 ---- a/kms++/inc/kms++/card.h -+++ b/kms++/inc/kms++/card.h -@@ -3,6 +3,7 @@ - #include - #include - #include -+#include - - #include "decls.h" - #include "pipeline.h" --- -2.29.2 - diff --git a/package/kmsxx/0002-meson-add-use-system-pybind11-option.patch b/package/kmsxx/0002-meson-add-use-system-pybind11-option.patch new file mode 100644 index 0000000000..be58b65b42 --- /dev/null +++ b/package/kmsxx/0002-meson-add-use-system-pybind11-option.patch @@ -0,0 +1,43 @@ +From 27f15549ce67194e4152c57db2b762b7a443b4c7 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Sun, 29 Nov 2020 11:14:41 +0100 +Subject: [PATCH] meson: add use-system-pybind11 option + +[Upstream: https://github.com/tomba/kmsxx/pull/60] +Signed-off-by: Peter Seiderer +--- + meson.build | 8 ++++++-- + meson_options.txt | 1 + + 2 files changed, 7 insertions(+), 2 deletions(-) + +diff --git a/meson.build b/meson.build +index 29080f4..4b3e7c3 100644 +--- a/meson.build ++++ b/meson.build +@@ -39,8 +39,12 @@ else + compile_args : '-DFMT_HEADER_ONLY') + endif + +-pybind11_includes = include_directories('ext/pybind11/include') +-pybind11_dep = declare_dependency(include_directories : pybind11_includes) ++if get_option('use-system-pybind11') ++ pybind11_dep = dependency('pybind11') ++else ++ pybind11_includes = include_directories('ext/pybind11/include') ++ pybind11_dep = declare_dependency(include_directories : pybind11_includes) ++endif + + libdrmomap_dep = dependency('libdrm_omap', required : get_option('omap')) + +diff --git a/meson_options.txt b/meson_options.txt +index 48176a8..095c6f2 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -5,3 +5,4 @@ option('static-libc', type : 'boolean', value : false) + option('utils', type : 'boolean', value : true) + + option('use-system-fmt', type : 'boolean', value : false) ++option('use-system-pybind11', type : 'boolean', value : false) +-- +2.29.2 + diff --git a/package/kmsxx/0003-meson-only-build-py-in-case-pykms-is-enabled.patch b/package/kmsxx/0003-meson-only-build-py-in-case-pykms-is-enabled.patch new file mode 100644 index 0000000000..a908521381 --- /dev/null +++ b/package/kmsxx/0003-meson-only-build-py-in-case-pykms-is-enabled.patch @@ -0,0 +1,48 @@ +From 0ef36b2e22c2ac0331b3096b7adc69fb08044048 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Sun, 29 Nov 2020 11:37:26 +0100 +Subject: [PATCH] meson: only build py in case pykms is enabled + +[Upstream: https://github.com/tomba/kmsxx/pull/60] +Signed-off-by: Peter Seiderer +--- + meson.build | 16 ++++++++++------ + 1 file changed, 10 insertions(+), 6 deletions(-) + +diff --git a/meson.build b/meson.build +index 4b3e7c3..1810b17 100644 +--- a/meson.build ++++ b/meson.build +@@ -39,11 +39,13 @@ else + compile_args : '-DFMT_HEADER_ONLY') + endif + +-if get_option('use-system-pybind11') +- pybind11_dep = dependency('pybind11') +-else +- pybind11_includes = include_directories('ext/pybind11/include') +- pybind11_dep = declare_dependency(include_directories : pybind11_includes) ++if get_option('pykms').enabled() ++ if get_option('use-system-pybind11') ++ pybind11_dep = dependency('pybind11') ++ else ++ pybind11_includes = include_directories('ext/pybind11/include') ++ pybind11_dep = declare_dependency(include_directories : pybind11_includes) ++ endif + endif + + libdrmomap_dep = dependency('libdrm_omap', required : get_option('omap')) +@@ -55,7 +57,9 @@ if get_option('utils') + subdir('utils') + endif + +-subdir('py') ++if get_option('pykms').enabled() ++ subdir('py') ++endif + + if get_option('kmscube') + subdir('kmscube') +-- +2.29.2 + diff --git a/package/kmsxx/Config.in b/package/kmsxx/Config.in index 1d174c18b1..6e4d1e61a1 100644 --- a/package/kmsxx/Config.in +++ b/package/kmsxx/Config.in @@ -1,9 +1,10 @@ config BR2_PACKAGE_KMSXX bool "kms++" depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 - depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8 + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11 # linux/dma-buf.h depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm + select BR2_PACKAGE_FMT select BR2_PACKAGE_LIBDRM help libkms++ is a C++11 library for kernel mode setting. @@ -21,6 +22,6 @@ config BR2_PACKAGE_KMSXX_INSTALL_TESTS endif -comment "kms++ needs a toolchain w/ threads, C++, gcc >= 4.8, headers >= 3.8" +comment "kms++ needs a toolchain w/ threads, C++, gcc >= 4.8, headers >= 4.11" depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8 + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11 diff --git a/package/kmsxx/kmsxx.hash b/package/kmsxx/kmsxx.hash index b8d06ac478..1eeb1e6a7e 100644 --- a/package/kmsxx/kmsxx.hash +++ b/package/kmsxx/kmsxx.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 28892e50c1d1c83fddff9ec683e3bdbd465f5032d0014ceeab43563b813807e1 kmsxx-cb0786049f960f2bd383617151b01318e02e9ff9.tar.gz -sha256 022b4d51da34a380d74dc24eea8e2c4e1a4c8776a52171f8d9e941cf56daf888 LICENSE +sha256 4a682328b03c28ff1f6cfcafc48d30c3feb5ef98ed07e5dd3bbd9e6a1d4a47cc kmsxx-548905611c130ea9d31929a0caf7a198d8bac462.tar.gz +sha256 fab3dd6bdab226f1c08630b1dd917e11fcb4ec5e1e020e2c16f83a0a13863e85 LICENSE diff --git a/package/kmsxx/kmsxx.mk b/package/kmsxx/kmsxx.mk index 829beb1d68..fd40ff8e73 100644 --- a/package/kmsxx/kmsxx.mk +++ b/package/kmsxx/kmsxx.mk @@ -4,62 +4,46 @@ # ################################################################################ -KMSXX_VERSION = cb0786049f960f2bd383617151b01318e02e9ff9 +KMSXX_VERSION = 548905611c130ea9d31929a0caf7a198d8bac462 KMSXX_SITE = $(call github,tomba,kmsxx,$(KMSXX_VERSION)) KMSXX_LICENSE = MPL-2.0 KMSXX_LICENSE_FILES = LICENSE KMSXX_INSTALL_STAGING = YES -KMSXX_DEPENDENCIES = libdrm host-pkgconf -KMSXX_CONF_OPTS = -DKMSXX_ENABLE_PYTHON=OFF - -KMSXX_CXXFLAGS = $(TARGET_CXXFLAGS) +KMSXX_DEPENDENCIES = fmt libdrm host-pkgconf +KMSXX_CONF_OPTS = \ + -Dkmscube=false \ + -Dpykms=disabled \ + -Domap=disabled \ + -Duse-system-fmt=true \ + -Duse-system-pybind11=true + +ifeq ($(BR2_STATIC_LIBS),y) +KMSXX_CONF_OPTS += -Dstatic-libc=true +else +KMSXX_CONF_OPTS += -Dstatic-libc=false +endif ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y) -KMSXX_CXXFLAGS += -O0 +KMSXX_CXXFLAGS += $(TARGET_CXXFLAGS) -O0 endif -KMSXX_CONF_OPTS += -DCMAKE_CXX_FLAGS="$(KMSXX_CXXFLAGS)" - ifeq ($(BR2_PACKAGE_KMSXX_INSTALL_TESTS),y) -KMSXX_TESTS = \ - fbtest kmsblank kmscapture \ - kmsprint kmstest kmsview wbcap \ - wbm2m - -define KMSXX_INSTALL_TARGET_TESTS - $(foreach t,$(KMSXX_TESTS),\ - $(INSTALL) -D -m 0755 $(@D)/bin/$(t) \ +KMSXX_CONF_OPTS += -Dutils=true +# extra handling for some utils not installed by default +KMSXX_EXTRA_UTILS = kmsview kmscapture omap-wbcap omap-wbm2m +ifeq ($(BR2_PACKAGE_LIBEVDEV),y) +KMSXX_DEPENDENCIES += libevdev +KMSXX_EXTRA_UTILS += kmstouch +endif +define KMSXX_INSTALL_EXTRA_UTILS + $(foreach t,$(KMSXX_EXTRA_UTILS),\ + $(INSTALL) -D -m 0755 $(@D)/build/utils/$(t) \ $(TARGET_DIR)/usr/bin/$(t) ) endef +KMSXX_POST_INSTALL_TARGET_HOOKS += KMSXX_INSTALL_EXTRA_UTILS +else +KMSXX_CONF_OPTS += -Dutils=false endif -KMSXX_LIBS = kms++ kms++util - -define KMSXX_INSTALL_TARGET_CMDS - $(if $(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS), - $(foreach l,$(KMSXX_LIBS),\ - $(INSTALL) -D -m 0755 $(@D)/lib/lib$(l).so \ - $(TARGET_DIR)/usr/lib/lib$(l).so - ) - ) - $(KMSXX_INSTALL_TARGET_TESTS) -endef - -# kmsxx only builds shared or static libraries, so when -# BR2_SHARED_STATIC_LIBS=y, we don't have any static library to -# install -define KMSXX_INSTALL_STAGING_CMDS - $(foreach l,$(KMSXX_LIBS),\ - $(if $(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS), - $(INSTALL) -D -m 0755 $(@D)/lib/lib$(l).so \ - $(STAGING_DIR)/usr/lib/lib$(l).so) - $(if $(BR2_STATIC_LIBS), - $(INSTALL) -D -m 0755 $(@D)/lib/lib$(l).a \ - $(STAGING_DIR)/usr/lib/lib$(l).a) - mkdir -p $(STAGING_DIR)/usr/include/$(l) - cp -dpfr $(@D)/$(l)/inc/$(l)/* $(STAGING_DIR)/usr/include/$(l)/ - ) -endef - -$(eval $(cmake-package)) +$(eval $(meson-package))