[Buildroot] [PATCH 1/6] package/libsigc2: new package

Lang Daniel d.lang at abatec.at
Fri Feb 24 08:42:34 UTC 2023


This is the version of libsigc needed for gtkmm3.

Signed-off-by: Daniel Lang <d.lang at abatec.at>
---
 DEVELOPERS                     |  1 +
 package/Config.in              |  1 +
 package/libsigc/Config.in      |  2 +-
 package/libsigc2/Config.in     | 17 +++++++++++++++++
 package/libsigc2/libsigc2.hash |  5 +++++
 package/libsigc2/libsigc2.mk   | 19 +++++++++++++++++++
 6 files changed, 44 insertions(+), 1 deletion(-)
 create mode 100644 package/libsigc2/Config.in
 create mode 100644 package/libsigc2/libsigc2.hash
 create mode 100644 package/libsigc2/libsigc2.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 6256576e02..e6fa139bd5 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -642,6 +642,7 @@ F:	package/dacapo/
 N:	Daniel Lang <d.lang at abatec.at>
 F:	package/dbus-cxx/
 F:	package/libsigc/
+F:	package/libsigc2/
 F:	package/paho-mqtt-cpp/
 
 N:	Damien Lanson <damien at kal-host.com>
diff --git a/package/Config.in b/package/Config.in
index 6c5238a9b0..18327ef3d3 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -2096,6 +2096,7 @@ menu "Other"
 	source "package/libseccomp/Config.in"
 	source "package/libshdata/Config.in"
 	source "package/libsigc/Config.in"
+	source "package/libsigc2/Config.in"
 	source "package/libsigsegv/Config.in"
 	source "package/libsolv/Config.in"
 	source "package/libspatialindex/Config.in"
diff --git a/package/libsigc/Config.in b/package/libsigc/Config.in
index 428774a3ab..4bea596579 100644
--- a/package/libsigc/Config.in
+++ b/package/libsigc/Config.in
@@ -1,5 +1,5 @@
 config BR2_PACKAGE_LIBSIGC
-	bool "libsigc++"
+	bool "libsigc++ (latest)"
 	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 # C++17
 	depends on BR2_INSTALL_LIBSTDCPP
 	help
diff --git a/package/libsigc2/Config.in b/package/libsigc2/Config.in
new file mode 100644
index 0000000000..e302e27af0
--- /dev/null
+++ b/package/libsigc2/Config.in
@@ -0,0 +1,17 @@
+config BR2_PACKAGE_LIBSIGC2
+	bool "libsigc++ (2.x.x)"
+	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11
+	depends on BR2_INSTALL_LIBSTDCPP
+	help
+	  libsigc++ implements a typesafe callback system for standard
+	  C++. It allows you to define signals and to connect those
+	  signals to any callback function, either global or a member
+	  function, regardless of whether it is static or virtual.
+
+	  This is the last version before the API and ABI change
+	  introduced in 3.0.0 which requires C++17.
+
+	  https://libsigcplusplus.github.io/libsigcplusplus/
+
+comment "libsigc++ (2.x.x) needs a toolchain w/ C++, gcc >= 4.9"
+	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
diff --git a/package/libsigc2/libsigc2.hash b/package/libsigc2/libsigc2.hash
new file mode 100644
index 0000000000..4811213568
--- /dev/null
+++ b/package/libsigc2/libsigc2.hash
@@ -0,0 +1,5 @@
+# From https://download.gnome.org/sources/libsigc++/2.12/libsigc++-2.12.0.sha256sum
+sha256  1c466d2e64b34f9b118976eb21b138c37ed124d0f61497df2a90ce6c3d9fa3b5  libsigc++-2.12.0.tar.xz
+
+# Locally calculated
+sha256  5bbcbb737e60fe9deba08ecbd00920cfcc3403ba2e534c64fdeea49d6bb87509  COPYING
diff --git a/package/libsigc2/libsigc2.mk b/package/libsigc2/libsigc2.mk
new file mode 100644
index 0000000000..845d03ba85
--- /dev/null
+++ b/package/libsigc2/libsigc2.mk
@@ -0,0 +1,19 @@
+################################################################################
+#
+# libsigc2
+#
+################################################################################
+
+LIBSIGC2_VERSION_MAJOR = 2.12
+LIBSIGC2_VERSION = $(LIBSIGC2_VERSION_MAJOR).0
+LIBSIGC2_SOURCE = libsigc++-$(LIBSIGC2_VERSION).tar.xz
+LIBSIGC2_SITE = https://download.gnome.org/sources/libsigc++/$(LIBSIGC2_VERSION_MAJOR)
+LIBSIGC2_INSTALL_STAGING = YES
+LIBSIGC2_LICENSE = LGPL-2.1+
+LIBSIGC2_LICENSE_FILES = COPYING
+LIBSIGC2_CONF_OPTS = \
+	-Dbuild-examples=false \
+	-Dbuild-tests=false \
+	-Dvalidation=false
+
+$(eval $(meson-package))
-- 
2.25.1



More information about the buildroot mailing list