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 <daniel@makrotopia.org>
This commit is contained in:
Daniel Golle
2025-04-26 03:45:23 +01:00
parent 028a339198
commit 296304822a

View File

@@ -1,12 +1,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=npth PKG_NAME:=npth
PKG_VERSION:=1.6 PKG_VERSION:=1.8
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://gnupg.org/ftp/gcrypt/$(PKG_NAME) PKG_SOURCE_URL:=https://gnupg.org/ftp/gcrypt/$(PKG_NAME)
PKG_HASH:=1393abd9adcf0762d34798dc34fdcf4d0d22a8410721e76f1e3afcd1daa4e2d1 PKG_HASH:=8bd24b4f23a3065d6e5b26e98aba9ce783ea4fd781069c1b35d149694e90ca3e
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org> PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=LGPL-2.1-or-later 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. nPth is a library to provide the GNU Pth API and thus a non-preemptive threads implementation.
endef 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 define Build/InstallDev
$(INSTALL_DIR) $(2)/bin $(1)/usr/bin $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(INSTALL_BIN) \ $(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/usr/bin/npth-config \ $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/npth.pc \
$(2)/bin/ $(1)/usr/lib/pkgconfig
$(SED) \ $(SED) \
's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' \ 's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' \
$(2)/bin/npth-config $(1)/usr/lib/pkgconfig/npth.pc \
ln -sf $(STAGING_DIR)/host/bin/npth-config $(1)/usr/bin/npth-config
$(INSTALL_DIR) $(1)/usr/include $(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DATA) \ $(INSTALL_DATA) \