I am porting an ibus library that needs Python >= 3.2 the Python 3 GObject bindings IBus >= 1.4.1 (note that its GObject-Introspection bindings must be enabled)
I've done this to my makefile: PORTNAME= ibus-cangjie PORTVERSION= 2.4 DISTVERSIONPREFIX= v CATEGORIES= chinese MAINTAINER= he...@blubee.me COMMENT= Sophisticated software synthesizer LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING RUN_DEPENDS= ${PREFIX}/lib/python3.6/site-packages/cangjie/_core.so:chinese/pycangjie \ py3?-gobject3>=0:devel/py3-gobject3 LIB_DEPENDS= libibus-1.0.so:textproc/ibus USES= autoreconf gmake \ libtool pkgconfig \ python:2.7,build # USE_GNOME= glib20 gtk30 pygobject3 introspection:run #====#this fails because cairo requires <= py2.7 USE_GNOME= introspection GNU_CONFIGURE= yes USE_LDCONFIG= yes USE_GITHUB= yes GH_ACCOUNT= Cangjians GH_PROJECT= ibus-cangjie .include <bsd.port.pre.mk> pre-configure: @(cd ${WRKSRC} && ./autogen.sh) .include <bsd.port.post.mk> This project doesn't build with python > 2.7 because ibus will fail, so I added the run dependency but I don't know what to add to get the introspection, if I add USE_GNOME that pulls in cairo, which then fails because cairo needs python 2.7 or below. pycangjie makefile looks like this: BUILD_DEPENDS= cython3>0:lang/cython3 LIB_DEPENDS= libcangjie.so:chinese/libcangjie USES= autoreconf gmake \ libtool pkgconfig \ localbase python:3.6 \ sqlite BINARY_ALIAS= cython=cython-3.6 GNU_CONFIGURE= yes USE_LDCONFIG= yes USE_GITHUB= yes GH_ACCOUNT= Cangjians GH_PROJECT= pycangjie .include <bsd.port.pre.mk> pre-configure: @(cd ${WRKSRC} && ./autogen.sh) # post-build: post-install: (cd ${STAGEDIR}${PREFIX} \ && ${PYTHON_CMD} ${PYTHON_LIBDIR}/*.py \ -d ${PREFIX} -f ${PYTHONPREFIX_SITELIBDIR:S;${PREFIX}/;;}) @(${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/${ PYTHON_VERSION}/site-packages/cangjie/*.so) .include <bsd.port.post.mk> I get this compilation error below checking for python3 platform... freebsd12 checking for python3 script directory... ${prefix}/lib/python3.6/site- packages checking for python3 extension module directory... ${exec_prefix}/lib/python3.6/site-packages checking the cangjie Python module... yes checking for pkg-config... /usr/local/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for IBus... yes checking for IBus component dir... /usr/local/share/ibus/component checking the IBus introspection-based bindings... no configure: error: Please install the IBus introspection-based bindings *** Error code 1 I've been trying to get this to work from ports for the past two days and nothing that i've tried seems to work, especially since building and running requires 2 versions of python. how can I setup the introspection-based bindings? On Tue, Nov 7, 2017 at 3:30 AM, Mathieu Arnold <m...@freebsd.org> wrote: > Le 06/11/2017 à 19:53, blubee blubeeme a écrit : > > When trying to build a port and including py3-gobject3 either through: > > USE_GNOME= py3gobject3 > > or > > RUN_DEPENDS= py3-gobject3:devel/py3-gobject3 > > > > the build will fail because py3-gobject3 needs cairo but cairo cannot > build > > with python > 2.7 > > > > Is this a bug in the port or am I doing something wrong? > > As it all works fine for everybody else, I'm sure you must be doing > something wrong. graphics/cairo does not need python, py3-gobject3 > depends on py3-cairo which builds fine with Python 3. > > Please, provide logs of what you are doing, and where it fails, > otherwise, nobody can try to figure out what you are doing wrong. > > -- > Mathieu Arnold > > > _______________________________________________ freebsd-ports@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"