Friday, November 23, 2018

Re: boost diff

On Wed, Nov 21, 2018 at 01:19:27PM +0100, Otto Moerbeek wrote:

> Hi,
>
> I am playing with boost contexts which is configured out by the current port.
> I am able to make execution_context and fcontext work on amd64. The first
> using a simple test program and the second using a non-trival program.
>
> The only actual change in boost itself is to use a mmap(...
> MMAP_STACK ...) for stack allocation. So I like to enable the
> disabled parts. They are not extensivly tested and some other parts
> might need a patch too (there are several classes creating stacks).
>
> At the moment I just like to know if I am taking the right approach
> port-wise. So, any comments or advise?

Total silence.... remember I'm a total ports newbie, I really could
use some guidance here. Is this the right approach for a port having
arch specific features and plist?

-Otto


>
> -Otto
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/devel/boost/Makefile,v
> retrieving revision 1.75
> diff -u -p -r1.75 Makefile
> --- Makefile 11 Sep 2018 19:26:14 -0000 1.75
> +++ Makefile 21 Nov 2018 12:17:35 -0000
> @@ -7,7 +7,7 @@ COMMENT= free peer-reviewed portable C++
> VERSION= 1.66.0
> DISTNAME= boost_${VERSION:S/./_/g}
> PKGNAME= boost-${VERSION}
> -REVISION= 0
> +REVISION= 2
> CATEGORIES= devel
> MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=boost/}
> EXTRACT_SUFX= .tar.bz2
> @@ -45,11 +45,7 @@ BOOST_LIBS= boost_atomic-mt \
> boost_unit_test_framework-mt boost_unit_test_framework \
> boost_wserialization-mt boost_wserialization \
> boost_wave-mt \
> - boost_type_erasure-mt boost_type_erasure \
> -
> -.for _lib in ${BOOST_LIBS}
> -SHARED_LIBS+= ${_lib} ${SO_VERSION}
> -.endfor
> + boost_type_erasure-mt boost_type_erasure
>
> HOMEPAGE= http://www.boost.org/
>
> @@ -63,6 +59,12 @@ WANTLIB += ${COMPILER_LIBCXX} bz2 c icud
>
> COMPILER= base-clang ports-gcc
>
> +.if ${MACHINE_ARCH} == "amd64"
> +PKG_ARGS+=-Damd64=1
> +.else
> +PKG_ARGS+=-Damd64=0
> +.endif
> +
> MODULES= lang/python
> MODPY_RUNDEP= No
>
> @@ -102,7 +104,24 @@ BOOTSTRAP= --with-bjam=${WRKSRC}/bjam \
> # 'context' and 'coroutine' use MD bits and miss support for Alpha,
> # PA-RISC, SPARC and SuperH. The author does not care
> # about adding support for Alpha and PA-RISC.
> +
> +.if ${MACHINE_ARCH} == "amd64"
> +BOOST_LIBS+= boost_context-mt \
> + boost_coroutine boost_coroutine-mt \
> + boost_fiber-mt \
> + boost_stacktrace_basic \
> + boost_stacktrace_basic-mt \
> + boost_stacktrace_addr2line \
> + boost_stacktrace_addr2line-mt \
> + boost_stacktrace_noop \
> + boost_stacktrace_noop-mt
> +.else
> BOOTSTRAP+= --without-libraries=context,coroutine,fiber,stacktrace
> +.endif
> +
> +.for _lib in ${BOOST_LIBS}
> +SHARED_LIBS+= ${_lib} ${SO_VERSION}
> +.endfor
>
> PY2_BOOTSTRAP= --with-python=${LOCALBASE}/bin/python${MODPY_DEFAULT_VERSION_2} \
> --with-python-version=${MODPY_DEFAULT_VERSION_2} \
> Index: patches/patch-boost_context_fixedsize_stack_hpp
> ===================================================================
> RCS file: patches/patch-boost_context_fixedsize_stack_hpp
> diff -N patches/patch-boost_context_fixedsize_stack_hpp
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-boost_context_fixedsize_stack_hpp 21 Nov 2018 12:17:35 -0000
> @@ -0,0 +1,34 @@
> +$OpenBSD$
> +
> +Index: boost/context/fixedsize_stack.hpp
> +--- boost/context/fixedsize_stack.hpp.orig
> ++++ boost/context/fixedsize_stack.hpp
> +@@ -26,6 +26,8 @@
> + # include BOOST_ABI_PREFIX
> +

No comments:

Post a Comment