Sunday, December 12, 2021

Re: [UPDATE] games/yquake2 7.45 -> 8.00

Please put them in LIB_DEPENDS/WANTLIB with the annotation in the comment.
What they're doing is not safe/reliable because it relies on the library
ABI not changing. Adding as a LIB_DEPENDS ensures that yquake is updated
when required due to any incompatible changes to the libraries.

--
Sent from a phone, apologies for poor formatting.

On 12 December 2021 09:49:24 Stefan Hagen <sh+openbsd-ports@codevoid.de> wrote:

> Tom Murphy wrote:
>> On Sun, Dec 12, 2021 at 10:18:27AM +0100, Stefan Hagen wrote:
>> > Hi Tom,
>> >
>> > This update works for me. The execinfo problem has been discussed
>> > before. I'm quoting sthen:
>> >
>> > > Can it be disabled instead? The backtrace functions are a perennial
>> > > problem with ports and bulk builds.
>> > >
>> > > Software often checks for the headers and functions separately but
>> > > don't check with -lexecinfo (because they're often in libc), and uses
>> > > #ifdef HAVE_EXECINFO_H or similar around the #include, and
>> > > #ifdef HAVE_BACKTRACE or similar around function calls.
>> > > (yes this is not very sensible, but we do run into it quite often).
>> >
>> > So I think we should leave it disabled.
>>
>> OK I'll leave the execinfo disabled as it was.
>
> As discussed with you, op@ and sthen@ on irc. The execinfo issue doesn't
> apply anymore since execinfo is in base. (I read it at the time, but
> didn't recall, sorry).
>
> The libs actually can go to RUN_DEP and BUILD_DEP but need to be removed
> from WANTLIB then.
>
> I propose the following patch:
>
> Index: games/yquake2/Makefile
> ===================================================================
> RCS file: /home/cvs/ports/games/yquake2/Makefile,v
> retrieving revision 1.23
> diff -u -p -u -p -r1.23 Makefile
> --- games/yquake2/Makefile 7 Jan 2021 22:20:25 -0000 1.23
> +++ games/yquake2/Makefile 12 Dec 2021 09:48:07 -0000
> @@ -4,7 +4,7 @@ ONLY_FOR_ARCHS= i386 amd64 sparc64
>
> COMMENT= Yamagi Quake II
> N= yquake2
> -V= 7.45
> +V= 8.00
> PKGNAME= ${N}-${V}
> DISTNAME= quake2-${V}
> CATEGORIES= games
> @@ -17,11 +17,15 @@ EXTRACT_SUFX= .tar.xz
> # GPLv2
> PERMIT_PACKAGE= Yes
>
> -WANTLIB += GL SDL2 c curl m openal pthread
> +WANTLIB += GL SDL2 c m
>
> -LIB_DEPENDS= audio/openal \
> - devel/sdl2 \
> +DLOPEN_LIBS= audio/openal \
> net/curl
> +
> +BUILD_DEPENDS= ${DLOPEN_LIBS}
> +RUN_DEPENDS= ${DLOPEN_LIBS}
> +
> +LIB_DEPENDS= devel/sdl2
>
> MAKE_ENV+= VERBOSE=1
> USE_GMAKE= Yes
> Index: games/yquake2/distinfo
> ===================================================================
> RCS file: /home/cvs/ports/games/yquake2/distinfo,v
> retrieving revision 1.10
> diff -u -p -u -p -r1.10 distinfo
> --- games/yquake2/distinfo 7 Jan 2021 22:20:25 -0000 1.10
> +++ games/yquake2/distinfo 11 Dec 2021 19:44:56 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (quake2-7.45.tar.xz) = x1JFZ78apgRfJWGb6m5P2QZihLP7gYY7WB+0T09H/2U=
> -SIZE (quake2-7.45.tar.xz) = 1997816
> +SHA256 (quake2-8.00.tar.xz) = YNjRD8K011uWElGZDk2QM1cZSnMhC8HkKSTt74h9DrI=
> +SIZE (quake2-8.00.tar.xz) = 2086776
> Index: games/yquake2/patches/patch-Makefile
> ===================================================================
> RCS file: games/yquake2/patches/patch-Makefile
> diff -N games/yquake2/patches/patch-Makefile
> --- games/yquake2/patches/patch-Makefile 7 Jan 2021 22:20:26 -0000 1.3
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,17 +0,0 @@
> -$OpenBSD: patch-Makefile,v 1.3 2021/01/07 22:20:26 thfr Exp $
> -
> -Index: Makefile
> ---- Makefile.orig
> -+++ Makefile
> -@@ -452,11 +452,6 @@ release/quake2 : CFLAGS += -DHAVE_EXECINFO
> - release/quake2 : LDFLAGS += -lexecinfo
> - endif
> -
> --ifeq ($(YQ2_OSTYPE), OpenBSD)
> --release/quake2 : CFLAGS += -DHAVE_EXECINFO
> --release/quake2 : LDFLAGS += -lexecinfo
> --endif
> --
> - ifeq ($(YQ2_OSTYPE), Haiku)
> - release/quake2 : CFLAGS += -DHAVE_EXECINFO
> - release/quake2 : LDFLAGS += -lexecinfo

No comments:

Post a Comment