modules-$(CONFIG_GPG) += gpg # we install gpgv 1.4, which is an older version that has fewer # dependencies. This may need to be revisted later. gpg_version := 1.4.21 gpg_dir := gnupg-$(gpg_version) gpg_tar := gnupg-$(gpg_version).tar.bz2 gpg_url := https://www.gnupg.org/ftp/gcrypt/gnupg/$(gpg_tar) gpg_hash := 6b47a3100c857dcab3c60e6152e56a997f2c7862c1b8b2b25adf3884a1ae2276 # For reproducibility reasons we have to override the exec_prefix # and datarootdir on the configure line so that the Makefiles will # be generated with the correct paths, but then re-write them when # we use the install target so that they will be copied to the correct # location. # # Force a different host/build setting so that it detects a cross compile. # Otherwise it wil try to run tests. # gpg_configure := \ CFLAGS="-Os" \ $(CROSS_TOOLS) \ ./configure \ --build $(MUSL_ARCH)-elf-linux \ --host $(MUSL_ARCH)-linux-musl \ --prefix "/" \ --disable-asm \ --disable-bzip2 \ --disable-dns-cert \ --disable-dns-srv \ --disable-exec \ --disable-finger \ --disable-hkp \ --disable-keyserver-helpers \ --disable-ldap \ --disable-photo-viewers \ --disable-regex \ --enable-card-support \ --with-libusb="$(INSTALL)" \ # Run one build to generate the executables with the pre-defined # exec_prefix and datarootdir, then a second make to install the binaries # into our actual target location gpg_target := $(MAKE_JOBS) \ && $(MAKE) -C $(build)/$(gpg_dir) \ DESTDIR="$(INSTALL)" \ install gpg_output := g10/gpg gpg_depends := libusb-compat $(musl_dep)