From 9b078380384f8ecd74857260d911e267c7a788b3 Mon Sep 17 00:00:00 2001 From: Lang Daniel Date: Fri, 24 Feb 2023 08:42:34 +0000 Subject: [PATCH] package/libsigc2: new package This is the version of libsigc needed for gtkmm3. Signed-off-by: Daniel Lang Signed-off-by: Arnout Vandecappelle --- 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 82aeb6fe25..2786b1c050 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -642,6 +642,7 @@ F: package/dacapo/ N: Daniel Lang F: package/dbus-cxx/ F: package/libsigc/ +F: package/libsigc2/ F: package/paho-mqtt-cpp/ N: Damien Lanson diff --git a/package/Config.in b/package/Config.in index 3ace25c665..522a22b76a 100644 --- a/package/Config.in +++ b/package/Config.in @@ -2095,6 +2095,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))