0
0
mirror of https://github.com/openwrt/packages.git synced 2025-09-26 22:15:31 +00:00
Files
packages/libs/npth/Makefile
Daniel Golle 296304822a 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>
2025-04-26 16:55:22 +01:00

84 lines
2.1 KiB
Makefile

include $(TOPDIR)/rules.mk
PKG_NAME:=npth
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:=8bd24b4f23a3065d6e5b26e98aba9ce783ea4fd781069c1b35d149694e90ca3e
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=LGPL-2.1-or-later
PKG_LICENSE_FILES:=COPYING.LIB
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define Package/libnpth
SECTION:=libs
CATEGORY:=Libraries
TITLE:=The New GNU Portable Threads Library
URL:=https://gnupg.org/software/npth/index.html
DEPENDS:=+libgpg-error
endef
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) $(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' \
$(1)/usr/lib/pkgconfig/npth.pc \
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/usr/include/npth.h \
$(1)/usr/include/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) \
$(PKG_INSTALL_DIR)/usr/lib/libnpth.{la,so*} \
$(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/share/aclocal
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/usr/share/aclocal/npth.m4 \
$(1)/usr/share/aclocal/
endef
define Package/libnpth/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) \
$(PKG_INSTALL_DIR)/usr/lib/libnpth.so.* \
$(1)/usr/lib/
endef
$(eval $(call BuildPackage,libnpth))