Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Aug 2009 11:00:26 +0200
From:      Martin Wilke <miwi@FreeBSD.org>
To:        Mel Flynn <mel.flynn+fbsd.ports@mailing.thruhere.net>
Cc:        kde-freebsd@kde.org, Alexander Churanov <alexanderchuranov@gmail.com>, freebsd-ports@freebsd.org
Subject:   Re: [kde-freebsd] devel/boost: new patch for testing update to 1.39
Message-ID:  <20090804090026.GE3529@bsdcrew.de>
In-Reply-To: <200908031353.56154.mel.flynn%2Bfbsd.ports@mailing.thruhere.net>
References:  <3cb459ed0906290644x86ac44cu48fd8bba52d024f9@mail.gmail.com> <200907300819.44453.mel.flynn%2Bfbsd.ports@mailing.thruhere.net> <3cb459ed0907310529r611cc1b1lb8a5c47b6722f6b6@mail.gmail.com> <200908031353.56154.mel.flynn%2Bfbsd.ports@mailing.thruhere.net>

next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Mon, Aug 03, 2009 at 01:53:55PM -0800, Mel Flynn wrote:
> On Friday 31 July 2009 04:29:06 Alexander Churanov wrote:
> 
> > Now It's clear. Thank you for explanation.
> > The WITH_PYSTE was not in the options framework, that's why I've
> > missed this part of work.
> >
> > I see two possible solutions:
> >
> > 1) Put the WITH_PYSTE variable back.
> > 2) Create a separate port like devel/boost-pyste.
> >
> > The first is easy, however leads to dependeny issues like 'let's
> > verify that  boost-python-libs is installed with PYSTE support'.
> > Provided that Pyste is actually used by someone, this may re-introduce
> > bug ports/123927 (see
> > http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/123927).
> >
> > The second is much more robust, but requires more work. This is also
> > harder because I am not a user of Boost.Pyste. Thus, correctness
> > verification would be expensive.
> 
> I think for the time being PySTE support should be off by default, because it 
> pulls in a second libc and databases/akonadi plus kdeedu[34] use boost-python 
> and because gccxml looks like a dead project.
> 
> I've attached a patch that does exactly this and also fixes WITH_DEBUG 
> building. There's one issue commented in the Makefile that I'm unable to 
> relate to anything I did, but am assuming it's from WITH_DEBUG as well.
> 
> ports/123927 could be solved/prevented by using a WANT_BOOST_PYSTE in 
> dependent ports that rely on boost having PYSTE and using PKGNAMESUFFIX plus 
> pkg_info to verify if boost-python-libs is boost-python-pyste-libs - as a 
> stop-gap.

+1 

> 
> -- 
> Mel

> --- Makefile.orig	2009-07-28 03:44:50.000000000 -0800
> +++ Makefile	2009-08-03 00:55:34.000000000 -0800
> @@ -25,9 +25,23 @@
>  		PYTHON_INCLUDES="${PYTHON_INCLUDEDIR}"\
>  		PYTHON_LIB_PATH="${PYTHON_LIBDIR}"
>  
> -RUN_DEPENDS+=	${PREFIX}/lib/libboost_thread.so.${BOOST_SHARED_LIB_VER}:${PORTSDIR}/devel/boost-libs
> -RUN_DEPENDS+=	gccxml:${PORTSDIR}/devel/gccxml \
> -		${PYTHON_SITELIBDIR}/elementtree/ElementTree.py:${PORTSDIR}/devel/py-elementtree
> +RUN_DEPENDS+=	${LOCALBASE}/lib/libboost_thread.so.${BOOST_SHARED_LIB_VER}:${PORTSDIR}/devel/boost-libs
> +RUN_DEPENDS+=	${PYTHON_SITELIBDIR}/elementtree/ElementTree.py:${PORTSDIR}/devel/py-elementtree
> +.if defined(WITH_PYSTE)
> +RUN_DEPENDS+=	gccxml:${PORTSDIR}/devel/gccxml
> +PLIST_SUB+=	PYSTE=
> +.else
> +PLIST_SUB+=	PYSTE="@comment "
> +.endif
> +
> +.if defined(WITH_DEBUG)
> +BOOST_BUILD=	debug
> +# No idea how this gets enabled, but I'm getting it
> +OPTIM_SPEED=	optimization-speed/
> +.else
> +OPTIM_SPEED=	/
> +BOOST_BUILD=	release
> +.endif
>  
>  BUILD_DEPENDS+=	${BJAM}:${PORTSDIR}/devel/boost-jam
>  BUILD_DEPENDS+=	${PYTHON_SITELIBDIR}/elementtree/ElementTree.py:${PORTSDIR}/devel/py-elementtree
> @@ -39,12 +53,13 @@
>  
>  post-patch: customize-boost-build
>  
> -
> +.if defined(WITH_PYSTE)
>  post-configure:
>  # Configure pyste, the Boost.Python code generator
>  	@cd ${BUILD_WRKSRC}/libs/python/pyste/install && \
>  	${SETENV} ${MAKE_ENV} ${PYTHON_CMD} ${PYSETUP} \
>  		config ${PYDISTUTILS_CONFIGUREARGS}
> +.endif
>  
>  do-build:
>  # build the library
> @@ -52,19 +67,20 @@
>  		${SETENV} ${MAKE_ENV} ${BJAM} ${BJAM_OPTIONS} --prefix=${PREFIX}\
>  		--toolset=${BOOST_TOOLS} --with-python
>  
> +.if defined(WITH_PYSTE)
>  # Build pyste, the Boost.Python code generator
>  	cd ${BUILD_WRKSRC}/libs/python/pyste/install && \
>  	${SETENV} ${MAKE_ENV} ${PYTHON_CMD} ${PYSETUP} \
>  		build ${PYDISTUTILS_BUILDARGS}
> -
> +.endif
>  # Remove non-python headers
>  	cd ${WRKSRC} && \
>  	${FIND} boost -not -path '*python*' -delete
>  
>  do-install:
>  # Install libraries
> -	${INSTALL_DATA} ${WRKSRC}/bin.v2/libs/python/build/gcc-4.2.1/release/link-static/threading-multi/libboost_python.a ${PREFIX}/lib
> -	${INSTALL_DATA} ${WRKSRC}/bin.v2/libs/python/build/gcc-4.2.1/release/threading-multi/libboost_python.so.${PORTVERSION} ${PREFIX}/lib/libboost_python.so.${BOOST_SHARED_LIB_VER}
> +	${INSTALL_DATA} ${WRKSRC}/bin.v2/libs/python/build/gcc-4.2.1/${BOOST_BUILD}/link-static/${OPTIM_SPEED}threading-multi/libboost_python.a ${PREFIX}/lib
> +	${INSTALL_DATA} ${WRKSRC}/bin.v2/libs/python/build/gcc-4.2.1/${BOOST_BUILD}/${OPTIM_SPEED}threading-multi/libboost_python.so.${PORTVERSION} ${PREFIX}/lib/libboost_python.so.${BOOST_SHARED_LIB_VER}
>  
>  # Create symlink for shared library
>  	cd ${PREFIX}/lib/ && \
> @@ -79,10 +95,12 @@
>  	${FIND} boost -type f -a \! -name "*.orig"\
>  		-exec ${INSTALL_DATA} \{\} ${PREFIX}/include/\{\} \;
>  
> +.if defined(WITH_PYSTE)
>  # Install pyste, the Boost.Python code generator
>  	cd ${WRKSRC}/libs/python/pyste/install && \
>  	${SETENV} ${MAKE_ENV} ${PYTHON_CMD} ${PYSETUP} \
>  		install ${PYDISTUTILS_INSTALLARGS}
> +.endif
>  
>  post-install:
>  # display pkg-message
> --- pkg-plist.orig	2009-07-28 03:44:50.000000000 -0800
> +++ pkg-plist	2009-08-02 12:29:56.000000000 -0800
> @@ -1,4 +1,4 @@
> -bin/pyste.py
> +%%PYSTE%%bin/pyste.py
>  include/boost/python.hpp
>  include/boost/python/arg_from_python.hpp
>  include/boost/python/args.hpp
> @@ -213,71 +213,71 @@
>  lib/libboost_python.a
>  lib/libboost_python.so
>  lib/libboost_python.so.%%BOOST_SHARED_LIB_VER%%
> -%%PYTHON_SITELIBDIR%%/Pyste-0.9.10-py%%PYTHON_VERSION%%.egg-info
> -%%PYTHON_SITELIBDIR%%/Pyste/ClassExporter.py
> -%%PYTHON_SITELIBDIR%%/Pyste/ClassExporter.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/ClassExporter.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/CodeExporter.py
> -%%PYTHON_SITELIBDIR%%/Pyste/CodeExporter.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/CodeExporter.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/CppParser.py
> -%%PYTHON_SITELIBDIR%%/Pyste/CppParser.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/CppParser.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/EnumExporter.py
> -%%PYTHON_SITELIBDIR%%/Pyste/EnumExporter.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/EnumExporter.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/Exporter.py
> -%%PYTHON_SITELIBDIR%%/Pyste/Exporter.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/Exporter.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/FunctionExporter.py
> -%%PYTHON_SITELIBDIR%%/Pyste/FunctionExporter.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/FunctionExporter.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/GCCXMLParser.py
> -%%PYTHON_SITELIBDIR%%/Pyste/GCCXMLParser.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/GCCXMLParser.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/HeaderExporter.py
> -%%PYTHON_SITELIBDIR%%/Pyste/HeaderExporter.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/HeaderExporter.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/MultipleCodeUnit.py
> -%%PYTHON_SITELIBDIR%%/Pyste/MultipleCodeUnit.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/MultipleCodeUnit.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/SingleCodeUnit.py
> -%%PYTHON_SITELIBDIR%%/Pyste/SingleCodeUnit.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/SingleCodeUnit.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/SmartFile.py
> -%%PYTHON_SITELIBDIR%%/Pyste/SmartFile.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/SmartFile.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/VarExporter.py
> -%%PYTHON_SITELIBDIR%%/Pyste/VarExporter.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/VarExporter.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/__init__.py
> -%%PYTHON_SITELIBDIR%%/Pyste/__init__.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/__init__.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/declarations.py
> -%%PYTHON_SITELIBDIR%%/Pyste/declarations.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/declarations.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/exporters.py
> -%%PYTHON_SITELIBDIR%%/Pyste/exporters.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/exporters.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/exporterutils.py
> -%%PYTHON_SITELIBDIR%%/Pyste/exporterutils.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/exporterutils.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/infos.py
> -%%PYTHON_SITELIBDIR%%/Pyste/infos.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/infos.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/policies.py
> -%%PYTHON_SITELIBDIR%%/Pyste/policies.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/policies.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/pyste.py
> -%%PYTHON_SITELIBDIR%%/Pyste/pyste.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/pyste.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/settings.py
> -%%PYTHON_SITELIBDIR%%/Pyste/settings.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/settings.pyo
> -%%PYTHON_SITELIBDIR%%/Pyste/utils.py
> -%%PYTHON_SITELIBDIR%%/Pyste/utils.pyc
> -%%PYTHON_SITELIBDIR%%/Pyste/utils.pyo
> -@dirrm %%PYTHON_SITELIBDIR%%/Pyste
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste-0.9.10-py%%PYTHON_VERSION%%.egg-info
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/ClassExporter.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/ClassExporter.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/ClassExporter.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/CodeExporter.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/CodeExporter.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/CodeExporter.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/CppParser.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/CppParser.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/CppParser.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/EnumExporter.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/EnumExporter.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/EnumExporter.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/Exporter.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/Exporter.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/Exporter.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/FunctionExporter.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/FunctionExporter.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/FunctionExporter.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/GCCXMLParser.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/GCCXMLParser.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/GCCXMLParser.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/HeaderExporter.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/HeaderExporter.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/HeaderExporter.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/MultipleCodeUnit.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/MultipleCodeUnit.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/MultipleCodeUnit.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/SingleCodeUnit.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/SingleCodeUnit.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/SingleCodeUnit.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/SmartFile.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/SmartFile.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/SmartFile.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/VarExporter.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/VarExporter.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/VarExporter.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/__init__.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/__init__.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/__init__.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/declarations.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/declarations.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/declarations.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/exporters.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/exporters.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/exporters.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/exporterutils.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/exporterutils.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/exporterutils.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/infos.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/infos.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/infos.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/policies.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/policies.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/policies.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/pyste.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/pyste.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/pyste.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/settings.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/settings.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/settings.pyo
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/utils.py
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/utils.pyc
> +%%PYSTE%%%%PYTHON_SITELIBDIR%%/Pyste/utils.pyo
> +%%PYSTE%%@dirrm %%PYTHON_SITELIBDIR%%/Pyste
>  @dirrm include/boost/python/suite/indexing/detail
>  @dirrm include/boost/python/suite/indexing
>  @dirrm include/boost/python/suite

> _______________________________________________
> kde-freebsd mailing list
> kde-freebsd@kde.org
> https://mail.kde.org/mailman/listinfo/kde-freebsd
> See also http://freebsd.kde.org/ for latest information


- -- 

+-----------------------+-------------------------------+
|  PGP    : 0xB1E6FCE9  |  Jabber : miwi(at)BSDCrew.de  |
|  Skype  : splash_111  |  Mail   : miwi(at)FreeBSD.org |
+-----------------------+-------------------------------+
|	Mess with the Best, Die like the Rest!		|
+-----------------------+-------------------------------+
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.11 (FreeBSD)

iEYEARECAAYFAkp3+KoACgkQdLJIhLHm/OmVBACfWBIyDHh0hOxn9pfpWTbzzrLf
XjsAn1r2hPtZfmPBlZfNh5w9UejDpcBR
=s5AE
-----END PGP SIGNATURE-----



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090804090026.GE3529>