diff --git a/autotools/gpgme-src/gpgme-1.9.0-20170801.diff b/autotools/gpgme-src/gpgme-1.9.0-20170801.diff index 899abbcf..64ffdbff 100644 --- a/autotools/gpgme-src/gpgme-1.9.0-20170801.diff +++ b/autotools/gpgme-src/gpgme-1.9.0-20170801.diff @@ -1,21 +1,33 @@ -diff -Nrub -x '*~' -x '*\.rej' -x '*\.orig' -x'*\.o' gpgme-1.9.0.orig/Makefile.in gpgme-1.9.0/Makefile.in +diff -Nrub -x '*~' -x '*.rej' -x gpgme-1.9.0.orig -x'*.o' gpgme-1.9.0.orig/Makefile.in gpgme-1.9.0/Makefile.in --- gpgme-1.9.0.orig/Makefile.in 2017-03-28 16:25:45.000000000 +0200 -+++ gpgme-1.9.0/Makefile.in 2017-08-01 22:20:04.885861700 +0200 ++++ gpgme-1.9.0/Makefile.in 2018-01-30 14:56:16.000000000 +0100 @@ -189,7 +189,7 @@ ETAGS = etags CTAGS = ctags CSCOPE = cscope -DIST_SUBDIRS = src tests doc lang +DIST_SUBDIRS = src tests lang DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -434,7 +434,7 @@ @RUN_GPG_TESTS_FALSE@tests = @RUN_GPG_TESTS_TRUE@tests = tests -SUBDIRS = src ${tests} doc lang +SUBDIRS = src ${tests} lang gen_start_date = 2011-12-01T00:00:00 all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive +diff -Nrub -x '*~' -x '*.rej' -x gpgme-1.9.0.orig -x'*.o' gpgme-1.9.0.orig/lang/cpp/src/GpgmeppConfig.cmake.in.in gpgme-1.9.0/lang/cpp/src/GpgmeppConfig.cmake.in.in +--- gpgme-1.9.0.orig/lang/cpp/src/GpgmeppConfig.cmake.in.in 2017-03-09 09:01:10.000000000 +0100 ++++ gpgme-1.9.0/lang/cpp/src/GpgmeppConfig.cmake.in.in 2018-01-30 15:16:24.000000000 +0100 +@@ -63,7 +63,7 @@ + + set_target_properties(Gpgmepp PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "@resolved_includedir@/gpgme++;@resolved_includedir@" +- INTERFACE_LINK_LIBRARIES "pthread;@resolved_libdir@/libgpgme.so;@LIBASSUAN_LIBS@" ++ INTERFACE_LINK_LIBRARIES "pthread;@resolved_libdir@/libgpgme@libsuffix@;@LIBASSUAN_LIBS@" + IMPORTED_LOCATION "@resolved_libdir@/libgpgmepp@libsuffix@" + ) + diff --git a/autotools/gpgme-src/gpgme-src.py b/autotools/gpgme-src/gpgme-src.py index 7d096285..b71fde50 100644 --- a/autotools/gpgme-src/gpgme-src.py +++ b/autotools/gpgme-src/gpgme-src.py @@ -1,32 +1,62 @@ import info +import CraftCore class subinfo(info.infoclass): def setTargets( self ): for ver in ["1.9.0"]: self.targets[ver] = f"ftp://ftp.gnupg.org/gcrypt/gpgme/gpgme-{ver}.tar.bz2" self.targetInstSrc[ver] = f"gpgme-{ver}" self.targetDigests["1.9.0"] = (["1b29fedb8bfad775e70eafac5b0590621683b2d9869db994568e6401f4034ceb"], CraftHash.HashAlgorithm.SHA256) self.patchToApply["1.9.0"] = [("gpgme-1.9.0-20170801.diff", 1)] self.description = "GnuPG cryptography support library (runtime)" self.defaultTarget = "1.9.0" def setDependencies( self ): self.buildDependencies["dev-util/msys"] = "default" self.runtimeDependencies["virtual/base"] = "default" self.runtimeDependencies["autotools/gpg-error-src"] = "default" self.runtimeDependencies["autotools/assuan2-src"] = "default" from Package.AutoToolsPackageBase import * class Package(AutoToolsPackageBase): def __init__( self, **args ): AutoToolsPackageBase.__init__( self ) - self.subinfo.options.configure.args = "--enable-languages=no" + if OsUtils.isWin(): + self.subinfo.options.configure.args = "--enable-languages=no" + elif OsUtils.isMac(): + # The configure script does not honnor the env var is PKG_CONFIG is not installed / env var not set + # This is problematic especially on macOS, let manually fill the env var to make configure happy finding Qt + PKG_CONFIG = "echo" + # Gpgme rely on pkg-config to discover Qt, but pkg config files are not shipped / generated... + # So we need to help it to discover Qt + _, QT_BINS = CraftCore.cache.getCommandOutput("qmake", "-query QT_INSTALL_BINS") + _, QT_LIBS = CraftCore.cache.getCommandOutput("qmake", "-query QT_INSTALL_LIBS") + if QT_BINS: + QT_BINS = QT_BINS.strip(); + if QT_LIBS: + QT_LIBS = QT_LIBS.strip(); + print(f"QT_BINS: {QT_BINS}") + print(f"QT_LIBS: {QT_LIBS}") + MOC = f"{QT_BINS}/moc" + GPGME_QT_CFLAGS = f"-F{QT_LIBS} -I{QT_LIBS}/QtCore.framework/Headers -DQT_NO_DEBUG -DQT_CORE_LIB" + GPGME_QT_LIBS = f"-F{QT_LIBS} -framework QtCore" + GPGME_QTTEST_CFLAGS = f"-F{QT_LIBS} -I{QT_LIBS}/QtTest.framework/Headers -DQT_NO_DEBUG -DQT_TEST_LIB" + GPGME_QTTEST_LIBS = f"-F{QT_LIBS} -framework QtTest" + self.subinfo.options.configure.args = (f"PKG_CONFIG='{PKG_CONFIG}'" + f" MOC='{MOC}'" + f" GPGME_QT_CFLAGS='{GPGME_QT_CFLAGS}'" + f" GPGME_QT_LIBS='{GPGME_QT_LIBS}'" + f" GPGME_QTTEST_CFLAGS='{GPGME_QTTEST_CFLAGS}'" + f" GPGME_QTTEST_LIBS='{GPGME_QTTEST_LIBS}'" + " --enable-languages=cpp,qt") + else: + self.subinfo.options.configure.args = "--enable-languages=cpp,qt" def install(self): if not AutoToolsPackageBase.install(self): return False return self.copyToMsvcImportLib()