From 296304822a4ac7d7f7be576f8b3c83e0900dffee Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sat, 26 Apr 2025 03:45:23 +0100 Subject: [PATCH] npth: update to version 1.8 Noteworthy changes in version 1.8 (2024-11-12) [C3/A3/R0] ---------------------------------------------- * Fix npth_cond_signal and npth_cond_broadcast on Windows. [T7386] * New function npth_get_version. New macros NPTH_VERSION and NPTH_VERSION_NUMBER. * Fix INSERT_EXPOSE_RWLOCK_API for musl C library. [T5664] * Add fallback implementation for POSIX semaphore API on macOS. [T7057] * Return a run-time error if npth_rwlock_timedrdlock is not supported. [T7109] Release-info: https://dev.gnupg.org/T7387 Noteworthy changes in version 1.7 (2024-02-23) [C2/A2/R0] ---------------------------------------------- * The npth-config command is not installed by default, because it is now replaced by use of pkg-config/gpgrt-config with npth.pc. Supply --enable-install-npth-config configure option, if needed. * Support for legacy systems w/o pthread_rwlock_t support. [T4306] * New functions npth_poll and npth_ppoll for Unix. [T5748] * Fixes to improve support for 64 bit Windows. * Fix declaration conflict using newer mingw versions. [T5889] * Fix build problems on Solaris 11. [T4491] * Fix detecting of the pthread library. [rPTH6629a4b801] * Clean up handling of unsafe semaphores on AIX. [T6947] * Link without -flat_namespace to support macOS 11. [T5610] Release-info: https://dev.gnupg.org/T7010 OpenWrt package maintainer note: * NPTH's buildsystem now requires the REAL_GNU_TARGET_NAME (ie. with the libc being the suffix, eg. '*-musl' or '*-gnu') to be passed to `configure`, override CONFIGURE_ARGS to do so. * Switch to use pkg-config. Signed-off-by: Daniel Golle --- libs/npth/Makefile | 33 +++++++++++++++++++++++++-------- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/libs/npth/Makefile b/libs/npth/Makefile index a7c25470b1..14618d4f35 100644 --- a/libs/npth/Makefile +++ b/libs/npth/Makefile @@ -1,12 +1,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=npth -PKG_VERSION:=1.6 +PKG_VERSION:=1.8 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://gnupg.org/ftp/gcrypt/$(PKG_NAME) -PKG_HASH:=1393abd9adcf0762d34798dc34fdcf4d0d22a8410721e76f1e3afcd1daa4e2d1 +PKG_HASH:=8bd24b4f23a3065d6e5b26e98aba9ce783ea4fd781069c1b35d149694e90ca3e PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=LGPL-2.1-or-later @@ -30,15 +30,32 @@ define Package/libnpth/description nPth is a library to provide the GNU Pth API and thus a non-preemptive threads implementation. endef +CONFIGURE_ARGS = \ + --target=$(REAL_GNU_TARGET_NAME) \ + --host=$(REAL_GNU_TARGET_NAME) \ + --build=$(GNU_HOST_NAME) \ + --disable-dependency-tracking \ + --program-prefix="" \ + --program-suffix="" \ + --prefix=$(CONFIGURE_PREFIX) \ + --exec-prefix=$(CONFIGURE_PREFIX) \ + --bindir=$(CONFIGURE_PREFIX)/bin \ + --sbindir=$(CONFIGURE_PREFIX)/sbin \ + --libexecdir=$(CONFIGURE_PREFIX)/lib \ + --sysconfdir=/etc \ + --datadir=$(CONFIGURE_PREFIX)/share \ + --localstatedir=/var \ + --mandir=$(CONFIGURE_PREFIX)/man \ + --infodir=$(CONFIGURE_PREFIX)/info + define Build/InstallDev - $(INSTALL_DIR) $(2)/bin $(1)/usr/bin - $(INSTALL_BIN) \ - $(PKG_INSTALL_DIR)/usr/bin/npth-config \ - $(2)/bin/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(INSTALL_DATA) \ + $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/npth.pc \ + $(1)/usr/lib/pkgconfig $(SED) \ 's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' \ - $(2)/bin/npth-config - ln -sf $(STAGING_DIR)/host/bin/npth-config $(1)/usr/bin/npth-config + $(1)/usr/lib/pkgconfig/npth.pc \ $(INSTALL_DIR) $(1)/usr/include $(INSTALL_DATA) \