From dc55e7eb518e1c0d81d1ed1cb9b0f0ae6f75a454 Mon Sep 17 00:00:00 2001 From: Bernd Kuhls Date: Sat, 18 Jan 2025 22:40:52 +0100 Subject: [PATCH] package/utfcpp: new package Needed for taglib 2.x: https://github.com/taglib/taglib/commit/6ed0ca28db0d12a75572c0f5dcefdc5ebb34cc21 Upstream discourages the use of CMakeList.txt to install the package: https://github.com/nemtrif/utfcpp/commit/4965d378fb141a21c8afa7c283a8af4725e6a57e Signed-off-by: Bernd Kuhls Signed-off-by: Thomas Petazzoni --- DEVELOPERS | 1 + package/Config.in | 1 + package/utfcpp/Config.in | 10 ++++++++++ package/utfcpp/utfcpp.hash | 3 +++ package/utfcpp/utfcpp.mk | 23 +++++++++++++++++++++++ 5 files changed, 38 insertions(+) create mode 100644 package/utfcpp/Config.in create mode 100644 package/utfcpp/utfcpp.hash create mode 100644 package/utfcpp/utfcpp.mk diff --git a/DEVELOPERS b/DEVELOPERS index d48b4c5500..0c9f2126a4 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -509,6 +509,7 @@ F: package/tor/ F: package/transmission/ F: package/tvheadend/ F: package/unixodbc/ +F: package/utfcpp/ F: package/vlc/ F: package/wget/ F: package/wireless-regdb/ diff --git a/package/Config.in b/package/Config.in index a4a8bd394f..b76d37e4a0 100644 --- a/package/Config.in +++ b/package/Config.in @@ -2364,6 +2364,7 @@ menu "Text and terminal handling" source "package/tclap/Config.in" source "package/termcolor/Config.in" source "package/utf8proc/Config.in" + source "package/utfcpp/Config.in" endmenu endmenu diff --git a/package/utfcpp/Config.in b/package/utfcpp/Config.in new file mode 100644 index 0000000000..19e1f21688 --- /dev/null +++ b/package/utfcpp/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_UTFCPP + bool "utfcpp" + depends on BR2_INSTALL_LIBSTDCPP + help + UTF-8 with C++ in a Portable Way + + https://github.com/nemtrif/utfcpp + +comment "taglib needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/utfcpp/utfcpp.hash b/package/utfcpp/utfcpp.hash new file mode 100644 index 0000000000..65b3ad2a88 --- /dev/null +++ b/package/utfcpp/utfcpp.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 6920a6a5d6a04b9a89b2a89af7132f8acefd46e0c2a7b190350539e9213816c0 utfcpp-4.0.6.tar.gz +sha256 c9bff75738922193e67fa726fa225535870d2aa1059f91452c411736284ad566 LICENSE diff --git a/package/utfcpp/utfcpp.mk b/package/utfcpp/utfcpp.mk new file mode 100644 index 0000000000..3a4613841e --- /dev/null +++ b/package/utfcpp/utfcpp.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# taglib +# +################################################################################ + +UTFCPP_VERSION = 4.0.6 +UTFCPP_SITE = $(call github,nemtrif,utfcpp,v$(UTFCPP_VERSION)) +UTFCPP_LICENSE = BSL-1.0 +UTFCPP_LICENSE_FILES = LICENSE + +# utfcpp is a header-only library, it only makes sense +# to have it installed into the staging directory. +UTFCPP_INSTALL_STAGING = YES +UTFCPP_INSTALL_TARGET = NO + +define UTFCPP_INSTALL_STAGING_CMDS + mkdir -p $(STAGING_DIR)/usr/include/utf8/ + $(INSTALL) -m 0644 $(@D)/source/utf8.h $(STAGING_DIR)/usr/include/utf8.h + $(INSTALL) -m 0644 $(@D)/source/utf8/* $(STAGING_DIR)/usr/include/utf8/ +endef + +$(eval $(generic-package))