Index | Thread | Search

From:
Stuart Henderson <stu@spacehopper.org>
Subject:
Re: amnesia-tdd, crack-attack, manaplus vs libcxx update
To:
Theo Buehler <tb@theobuehler.org>
Cc:
ports@openbsd.org, namn@openbsd.org, mattieu@brimbelle.org, bcallah@openbsd.org
Date:
Tue, 2 Jan 2024 12:17:26 +0000

Download raw body.

Thread
On 2024/01/02 11:13, Theo Buehler wrote:
> The following games will no longer build once robert updates libcxx and
> friends because they use std::unary_function or std::binary_function,
> which were deprecated in C++11 and removed in C++17.
> 
> An ugly workaround is to re-enable these to fix the build as in the diff
> below. Another ugly workaround is to switch to a build with C++ <= 14.
> 
> Please check if upstream has fixed this already and do either one of
> 1. update the port
> 2. backport the fix
> 3. remove the annotations in the affected functions and test
> 4. if you don't like the below, figure out a better fix.
> 
> Thanks

I think these should append rather than override CXXFLAGS?

> Index: games/amnesia-tdd/Makefile
> ===================================================================
> RCS file: /cvs/ports/games/amnesia-tdd/Makefile,v
> diff -u -p -r1.7 Makefile
> --- games/amnesia-tdd/Makefile	30 Apr 2023 19:05:02 -0000	1.7
> +++ games/amnesia-tdd/Makefile	28 Dec 2023 05:27:24 -0000
> @@ -39,6 +39,8 @@ LIB_DEPENDS =	audio/libogg \
>  CONFIGURE_ARGS =	-DSYSTEMWIDE_RESOURCES=ON \
>  			-DSYSTEMWIDE_RESOURCES_LOCATION="${PREFIX}/share/amnesia-tdd"
>  
> +CONFIGURE_ENV +=	CXXFLAGS=-D_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION

CONFIGURE_ENV +=	CXXFLAGS="${CXXFLAGS} -D_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION"

> +
>  WRKSRC =	${WRKDIST}/amnesia/src
>  
>  post-install:
> Index: games/crack-attack/Makefile
> ===================================================================
> RCS file: /cvs/ports/games/crack-attack/Makefile,v
> diff -u -p -r1.30 Makefile
> --- games/crack-attack/Makefile	26 Sep 2023 09:41:33 -0000	1.30
> +++ games/crack-attack/Makefile	28 Dec 2023 02:03:58 -0000
> @@ -30,6 +30,8 @@ CONFIGURE_STYLE=gnu
>  CONFIGURE_ENV=	CPPFLAGS="-I${X11BASE}/include -I${LOCALBASE}/include" \
>  		LDFLAGS="-L${LOCALBASE}/lib"
>  
> +CXXFLAGS +=	-D_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION

ok already

> +
>  post-install:
>  	${INSTALL_DATA_DIR} ${PREFIX}/share/applications ${PREFIX}/share/pixmaps
>  	cd ${WRKSRC}/data; \
> Index: games/manaplus/Makefile
> ===================================================================
> RCS file: /cvs/ports/games/manaplus/Makefile,v
> diff -u -p -r1.106 Makefile
> --- games/manaplus/Makefile	26 Sep 2023 09:41:38 -0000	1.106
> +++ games/manaplus/Makefile	28 Dec 2023 00:12:24 -0000
> @@ -41,6 +41,8 @@ CONFIGURE_ARGS =	--without-librt \
>  			--with-sdl2 \
>  			--without-internalsdlgfx
>  
> +CXXFLAGS =	-D_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION

CXXFLAGS +=	-D_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION

> +
>  FAKE_FLAGS +=	desktopdir=${PREFIX}/share/applications/
>  
>  AUTOCONF_VERSION =	2.69
>