graphics/py3-cairo cannot find Python.h, but Python.h is present
tech-lists
tech-lists at zyxst.net
Sat Nov 26 16:41:21 UTC 2016
On 26/11/2016 13:59, Kubilay Kocak wrote:
> On 26/11/2016 9:11 PM, tech-lists wrote:
>> On 26/11/2016 03:48, Kubilay Kocak wrote:
>>> Include path ^^ has a double '/storage/storage/' prefix:
>>>
>>> '-I/storage/storage/usr/local/include/python3.5m'
>>>
>>> What's causing it is the question. It could be that something is not
>>> PREFIX-safe.
>>
>> Interesting. Is this something I can fix myself in the Makefile?
>
> Difficult to answer that question without knowing what/where the cause
> is. Off the top of my head, some avenues to investigate:
>
> - /etc/make.conf (or any other config sourced into the port build)
> - the graphics/py3-cairo port
> - Any USES=foo framework components that py3-cairo uses
> - waf configuration for py3-cairo
> - python3.5-config results
> - if python3.5-config results contain the incorrect path, then the
> lang/python35 port or Mk/Uses/python.mk looking for things that may be
> PREFIX-unsafe.
>
> Which raises the question, what variable(s) is/are being overridden to
> get things happening in /storage in your environment? A full
> environment variable list while building the port would be good.
Hi,
/storage is a zpool.
/usr/local is a symlink of /storage/usr/local
OK, here is the output from env:
# env
TERM=xterm-256color
BLOCKSIZE=K
MAIL=/var/mail/root
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin
SHELL=/bin/csh
HOME=/root
USER=root
HOSTTYPE=FreeBSD
VENDOR=amd
OSTYPE=FreeBSD
MACHTYPE=x86_64
SHLVL=1
PWD=/usr/ports/graphics/py3-cairo
LOGNAME=root
GROUP=wheel
HOST=pumpkin.growveg.org
EDITOR=vi
PAGER=more
Here is /etc/make.conf:
MALLOC_PRODUCTION=yes
MAKE_JOBS_NUMBER=18
WITH_MANCOMPRESS=YES
WITHOUT_DEBUG=YES
DEFAULT_VERSIONS+= ssl=libressl
OPTIMIZED_CFLAGS=YES
BUILD_OPTIMIZED=YES
NO_SENDMAIL=true
python3-config:
# python3.5-config --prefix
/storage/usr/local
#
I don't know what waf is or how it works. It's referenced in the
makefile, as is reference to USES=
Here's the makefile:
# Created by: Michael Johnson <ahze at FreeBSD.org>
# $FreeBSD: head/graphics/py3-cairo/Makefile 401900 2015-11-18 22:13:53Z
rm $
# $MCom: ports/graphics/py-cairo/Makefile,v 1.28 2010/11/15
14:12:13 kwm Exp $
PORTNAME= cairo
PORTVERSION= 1.10.0
PORTREVISION= 3
CATEGORIES= graphics python
MASTER_SITES= http://cairographics.org/releases/
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
DISTNAME= py${PORTNAME}-${PORTVERSION}
MAINTAINER= gnome at FreeBSD.org
COMMENT= Python 3 bindings for Cairo
USES= pkgconfig python:3 shebangfix tar:bzip2 waf
USE_GNOME= cairo
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
SHEBANG_FILES= examples/*.py examples/*/*.py test/*.py
.include <bsd.port.pre.mk>
.if ${PYTHON_REL} < 3500
PYOEXTENSION= pyo
.else
PYOEXTENSION= opt-1.pyc
.endif
PLIST_SUB+= PYTVER=${PYTHON_VER:S/.//} \
PYOEXTENSION=${PYOEXTENSION}
post-patch:
@${REINPLACE_CMD} -e 's|python %s|${PYTHON_CMD} %s|g' \
${WRKSRC}/test/examples_test.py
pre-configure:
# Run waf configure twice, once to extract waflib and patch and then
actual configure
@cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ${CONFIGURE_CMD} || :
@cd ${WRKSRC}/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/ && \
${PATCH} -p1 <
${FILESDIR}/pycairo-1.10.0-waf-py3_4.patch && \
${PATCH} -p1 < ${FILESDIR}/pycairo-1.10.0-waf-py3_5.patch
post-install:
@${RM} ${STAGEDIR}${PYTHON_SITELIBDIR}/cairo/__init__.py[co]
@cd ${STAGEDIR}${PREFIX} && ${PYTHON_CMD}
${PYTHON_LIBDIR}/compileall.py \
-d ${PYTHONPREFIX_SITELIBDIR} -f
${PYTHONPREFIX_SITELIBDIR:S;${PREFIX}/;;}
@cd ${STAGEDIR}${PREFIX} && ${PYTHON_CMD} -O
${PYTHON_LIBDIR}/compileall.py \
-d ${PYTHONPREFIX_SITELIBDIR} -f
${PYTHONPREFIX_SITELIBDIR:S;${PREFIX}/;;}
@${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/cairo/_cairo.so
.include <bsd.port.post.mk>
many thanks,
--
J.
More information about the freebsd-ports
mailing list