Files
Daniel Golle 2dad1a7514 gpgme: update to 2.0.1
Major version update from 1.24.2 to 2.0.1.

Major change: the C++ bindings (libgpgmepp), Qt bindings, and
Python bindings have been split off into separate packages
upstream. The libgpgmepp subpackage is dropped here too; consumers
that need C++ bindings will have to be ported once gpgme++ is
packaged separately.

Changes from 1.24.x -> 2.0.x:
 * New gpgme_op_random_bytes / gpgme_op_random_value functions
   to get cryptographically strong random data from gpg.
 * New decrypt flag to skip actual decryption so that
   information about recipients can be retrieved.
 * New flag for key generation to mark a (sub)key as group owned.
 * gpgme_signers_add: when key was retrieved with fingerprint!'!'
   suffix, the requested subkey is used for signing.
 * timestamp/expires fields changed from signed long to unsigned
   long for better 32bit time_t support.
 * Removed long-deprecated gpgme_attr_t enums and functions.
 * Removed never-implemented GPGME_EXPORT_MODE_NOUID flag.
 * Removed entire trustlist feature.

2.0.1:
 * Adjust for changes to the posix test(1) command.
 * Extend internal gpgsm_assuan_simple_command to consume diag
   output (fixes possible lockup).

Drop --enable-languages=cpp from configure args (no longer
supported), Build/InstallDev no longer copies the C++ headers,
cmake bits or libgpgmepp shared library, and remove the
libgpgmepp Package definition.

Link: https://dev.gnupg.org/source/gpgme/browse/master/NEWS
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2026-05-12 16:20:43 +01:00

92 lines
2.4 KiB
Makefile

include $(TOPDIR)/rules.mk
PKG_NAME:=gpgme
PKG_VERSION:=2.0.1
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://gnupg.org/ftp/gcrypt/$(PKG_NAME)
PKG_HASH:=821ab0695c842eab51752a81980c92b0410c7eadd04103f791d5d2a526784966
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=LGPL-2.1-or-later
PKG_LICENSE_FILES:=COPYING
PKG_CPE_ID:=cpe:/a:gnu:gpgme
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define Package/libgpgme
SECTION:=libs
CATEGORY:=Libraries
TITLE:=GnuPG Made Easy (GPGME) library
URL:=https://gnupg.org/software/gpgme/index.html
DEPENDS:=+libassuan +libgpg-error
endef
define Package/libgpgme/description
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
easier for applications. It provides a High-Level Crypto API for
encryption, decryption, signing, signature verification and key
management. Currently it uses GnuPG's OpenPGP backend as the default,
but the API isn't restricted to this engine. We have, in fact, already
developed a backend for CMS (S/MIME).
endef
CONFIGURE_ARGS += \
--with-libassuan-prefix="$(STAGING_DIR)/usr/" \
--with-gpg-error-prefix="$(STAGING_DIR)/usr/" \
--disable-gpgconf-test \
--disable-gpg-test \
--disable-gpgsm-test \
--disable-g13-test \
--enable-languages=""
ifneq ($(CONFIG_USE_MUSL),)
TARGET_CFLAGS += -D_LARGEFILE64_SOURCE
endif
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/usr/include/gpgme.h \
$(1)/usr/include/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) \
$(PKG_INSTALL_DIR)/usr/lib/libgpgme.{la,so*} \
$(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/share/aclocal
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/usr/share/aclocal/gpgme.m4 \
$(1)/usr/share/aclocal/
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/usr/lib/pkgconfig/gpgme.pc \
$(1)/usr/lib/pkgconfig
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/usr/lib/pkgconfig/gpgme-glib.pc \
$(1)/usr/lib/pkgconfig
$(INSTALL_DIR) $(2)/bin $(1)/usr/bin
$(INSTALL_BIN) \
$(PKG_INSTALL_DIR)/usr/bin/gpgme-config \
$(2)/bin/
$(SED) \
's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' \
$(2)/bin/gpgme-config
$(LN) -sf $(STAGING_DIR)/host/bin/gpgme-config $(1)/usr/bin/gpgme-config
endef
define Package/libgpgme/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libgpgme.so.* $(1)/usr/lib/
endef
$(eval $(call BuildPackage,libgpgme))