Hi porters, I need help with the gpgme update. Special thing here, I need the Qt bindings because kde-applications/gpgmepp is dead and all dependent programs work with gpgme-qt now.
But I always trap into the following link issue: libtool: link: cc -shared -fPIC -DPIC -o .libs/libgpgme.so.20.0 -I/usr/local/include -O2 -pipe -Wall -Wcast-align -Wshadow -Wstrict-prototypes .libs/conversion.o .libs/b64dec.o .libs/get-env.o .libs/parsetlv.o .libs/mbox-util.o .libs/data.o .libs/data-fd.o .libs/data-stream.o .libs/data-mem.o .libs/data-user.o .libs/data-compat.o .libs/data-identify.o .libs/signers.o .libs/sig-notation.o .libs/wait.o .libs/wait-global.o .libs/wait-private.o .libs/wait-user.o .libs/op-support.o .libs/encrypt.o .libs/encrypt-sign.o .libs/decrypt.o .libs/decrypt-verify.o .libs/verify.o .libs/sign.o .libs/passphrase.o .libs/progress.o .libs/key.o .libs/keylist.o .libs/keysign.o .libs/trust-item.o .libs/trustlist.o .libs/tofupolicy.o .libs/import.o .libs/export.o .libs/genkey.o .libs/delete.o .libs/edit.o .libs/getauditlog.o .libs/opassuan.o .libs/passwd.o .libs/spawn.o .libs/assuan-support.o .libs/engine.o .libs/engine-gpg.o .libs/status-table.o .libs/engine-gpgsm.o .libs/engine-assuan.o .libs/engine-gpgconf.o .libs/engine-uiserver.o .libs/engine-g13.o .libs/vfs-mount.o .libs/vfs-create.o .libs/engine-spawn.o .libs/gpgconf.o .libs/queryswdb.o .libs/posix-util.o .libs/posix-io.o .libs/dirinfo.o .libs/debug.o .libs/gpgme.o .libs/version.o .libs/error.o .libs/ath.o -L.libs -lassuan -lgpg-error -lintl -liconv libtool: link: ar cru .libs/libgpgme.a conversion.o b64dec.o get-env.o parsetlv.o mbox-util.o data.o data-fd.o data-stream.o data-mem.o data-user.o data-compat.o data-identify.o signers.o sig-notation.o wait.o wait-global.o wait-private.o wait-user.o op-support.o encrypt.o encrypt-sign.o decrypt.o decrypt-verify.o verify.o sign.o passphrase.o progress.o key.o keylist.o keysign.o trust-item.o trustlist.o tofupolicy.o import.o export.o genkey.o delete.o edit.o getauditlog.o opassuan.o passwd.o spawn.o assuan-support.o engine.o engine-gpg.o status-table.o engine-gpgsm.o engine-assuan.o engine-gpgconf.o engine-uiserver.o engine-g13.o vfs-mount.o vfs-create.o engine-spawn.o gpgconf.o queryswdb.o posix-util.o posix-io.o dirinfo.o debug.o gpgme.o version.o error.o ath.o libtool: link: ranlib .libs/libgpgme.a cc -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include -I/usr/local/include -O2 -pipe -Wall -Wcast-align -Wshadow -Wstrict-prototypes -MT gpgme-tool.o -MD -MP -MF .deps/gpgme-tool.Tpo -c -o gpgme-tool.o gpgme-tool.c mv -f .deps/gpgme-tool.Tpo .deps/gpgme-tool.Po cc -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include -I/usr/local/include -O2 -pipe -Wall -Wcast-align -Wshadow -Wstrict-prototypes -MT argparse.o -MD -MP -MF .deps/argparse.Tpo -c -o argparse.o argparse.c mv -f .deps/argparse.Tpo .deps/argparse.Po c++ gpgme-tool.o argparse.o libgpgme.la -lassuan -L/usr/local/lib -lgpg-error libgpgme.la: file not recognized: File format not recognized c++: error: linker command failed with exit code 1 (use -v to see invocation) Help, Feedback is welcome. Index: Makefile =================================================================== RCS file: /cvs/ports/security/gpgme/Makefile,v retrieving revision 1.38 diff -u -p -u -p -r1.38 Makefile --- Makefile 11 May 2017 00:29:50 -0000 1.38 +++ Makefile 1 Nov 2017 16:48:31 -0000 @@ -1,31 +1,46 @@ # $OpenBSD: Makefile,v 1.38 2017/05/11 00:29:50 espie Exp $ -COMMENT= GnuPG Made Easy +COMMENT-main= GnuPG Made Easy +COMMENT-qt= Qt bindings for GPGme +COMMENT-py2= Python 2 bindings for GPGme +COMMENT-py3= Python 3 bindings for GPGme + +V = 1.9.0 +DISTNAME= gpgme-$V + +PKGNAME-main = ${PKGNAME} +PKGNAME-qt= gpgme-qt-$V +PKGNAME-py2= gpgme-py2-$V +PKGNAME-py3= gpgme-py3-$V -DISTNAME= gpgme-1.6.0 -REVISION= 0 CATEGORIES= security devel SHARED_LIBS += gpgme 20.0 # 25.0 SHARED_LIBS += gpgme-pthread 20.0 # 25.0 -HOMEPAGE= http://www.gnupg.org/gpgme.html +HOMEPAGE= https://www.gnupg.org/related_software/gpgme/ # GPLv2 - LGPLv2.1 PERMIT_PACKAGE_CDROM= Yes -WANTLIB += assuan c gpg-error iconv intl pthread +WANTLIB-main += ${COMPILER_LIBCXX} assuan c gpg-error iconv intl m MASTER_SITES= ${MASTER_SITE_GNUPG:=gpgme/} EXTRACT_SUFX= .tar.bz2 -CONFIGURE_STYLE= gnu +MULTI_PACKAGES = -main -qt -py2 -py3 +PSEUDO_FLAVORS = no_qt no_py2 no_py3 +FLAVOR ?= # not without -pthread -CONFIGURE_ENV += gpgme_cv_tls_works=no +CONFIGURE_ENV += gpgme_cv_tls_works=no +CONFIGURE_ENV += CPPFLAGS="-I${LOCALBASE}/include" \ + LDFLAGS="-L${LOCALBASE}/lib" # Requires gpgsm (gnupg 2.x) during build, but can run with any gnupg. -BUILD_DEPENDS= gnupg->=2:security/gnupg2 +BUILD_DEPENDS= gnupg->=2:security/gnupg2 \ + devel/swig + # gnupg-* is normally the default anyway, but gnupg1 overrides PKGSPEC # so we must be explicit here. RUN_DEPENDS= gnupg-*:security/gnupg @@ -35,8 +50,33 @@ LIB_DEPENDS= devel/gettext \ TEST_DEPENDS += security/gnupg +CONFIGURE_STYLE = gnu + # needed for the regression tests USE_GMAKE= Yes +.include <bsd.port.arch.mk> + +.if ${BUILD_PACKAGES:M-qt} +MODULES += x11/qt5 +USE_QT = "qt" +.endif + +.if ${BUILD_PACKAGES:M-py2} +MODULES += lang/python +USE_PY2 = "python2" +.endif + +.if ${BUILD_PACKAGES:M-py3} +MODULES += lang/python +USE_PY3 = "python3" +.endif + +CONFIGURE_ARGS += --enable-languages="cl cpp ${USE_QT} ${USE_PY2} ${USE_PY3}" + +#post-patch: +# find ${WRKSRC} -name Makefile.in -type f -exec \ +# sed -i -e 's|\.\./\.\./\.\./src/libgpgme.la|-lgpgme|g' \ +# -e 's|\.\./\.\./\.\./src/libgpgmepp.la|-lgpgmepp|g' {} + .include <bsd.port.mk> Index: distinfo =================================================================== RCS file: /cvs/ports/security/gpgme/distinfo,v retrieving revision 1.12 diff -u -p -u -p -r1.12 distinfo --- distinfo 19 Sep 2016 17:13:55 -0000 1.12 +++ distinfo 1 Nov 2017 16:48:31 -0000 @@ -1,2 +1,2 @@ -SHA256 (gpgme-1.6.0.tar.bz2) = sJ3kGXrCgLECCA4J6uxiEdCB7/8ZY794Ic+PT5kWCZ0= -SIZE (gpgme-1.6.0.tar.bz2) = 983573 +SHA256 (gpgme-1.9.0.tar.bz2) = Gyn+24v613XnDq+sWwWQYhaDstmGnbmUVo5kAfQDTOs= +SIZE (gpgme-1.9.0.tar.bz2) = 1344222