On Tue, Jun 27, 2023 at 02:49:45PM -0700, Nam Nguyen wrote:
> Marc Espie writes:
> 
> > I know you're not maintainer, but most of the relevant commits point back
> > to you:
> >
> > retroarch uses some ass-backwards build system  making it prefer system
> > includes to its own includes, with ludicrous breakage.
> >
> > Case in point: explodes with bright colors if libchdr is present.
> 
> Sorry. I should have pinged more for this since I imported libchdr. I'll
> repaste inline my proposal to turn off libchdr in retroarch.
> 
> Nam Nguyen writes:
> 
> > Nam Nguyen writes:
> >
> >> While testing consumers for vulkan ports, I found a build failure. To
> >> reproduce, install emulators/libchdr then build emulators/retroarch,
> >> which fails.
> >
> > ping
> >
> >>
> >> build log:
> >> https://namtsui.com/public/retroarch_chdr.txt
> >>
> >> There is a conflict between the bundled libchdr and emulators/libchdr,
> >> which was newly imported. In this diff, I propose setting HAVE_CHD =
> >> 0. Also, resync WANTLIB to remove z.
> >>
> >> There is minimal downside from my investigation. Retroarch relies on
> >> cores. The only core that uses CHD files is
> >> emulators/libretro-pcsx-rearmed. I will send an update for pcsx-rearmed,
> >> which has a new feature of using libchdr. To test, I was able to load
> >> CHD files through updated pcsx-rearmed even with this retroarch where
> >> CHD is toggled off. I also tested opening CHD files in emulators/flycast
> >> (which links against lchdr) and emulators/mame (viable alternative).
> >>
> >> It was a bit tricky to figure out the file structure as I was unfamiliar
> >> with mame. I found that pcsx chd files are standalone whereas in mame it
> >> needs to be structured like game.zip and game/game.chd. I also learned
> >> that CHD stands for "compressed hunks of data" and is a method of
> >> archiving CDs.
> >>
> >> Feedback and tests are welcome. OK?
> >>
> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/emulators/retroarch/Makefile,v
> retrieving revision 1.25
> diff -u -p -u -p -r1.25 Makefile
> --- Makefile  23 Jun 2022 11:23:19 -0000      1.25
> +++ Makefile  10 May 2023 19:36:17 -0000
> @@ -5,7 +5,7 @@ PKGNAME =             retroarch-${GH_TAGNAME:S/v//}
>  GH_ACCOUNT =         libretro
>  GH_PROJECT =         RetroArch
>  GH_TAGNAME =         v1.10.3
> -REVISION =           0
> +REVISION =           1
>  
>  CATEGORIES =         emulators
>  
> @@ -18,7 +18,7 @@ WANTLIB += ${COMPILER_LIBCXX} EGL GL Qt5
>  WANTLIB += Qt5Network Qt5Widgets SDL2 X11 X11-xcb Xext Xinerama
>  WANTLIB += Xrandr Xv Xxf86vm ass avcodec avformat avutil c crypto
>  WANTLIB += drm fontconfig freetype fribidi gbm m openal ssl swresample
> -WANTLIB += swscale usb-1.0 xcb xkbcommon z
> +WANTLIB += swscale usb-1.0 xcb xkbcommon
>  WANTLIB += mbedcrypto mbedtls mbedx509
>  
>  MODULES =            x11/qt5
> @@ -34,6 +34,7 @@ LIB_DEPENDS =               audio/openal \
>  
>  MAKE_FLAGS =         V=1 \
>                       CXX="${CXX}" \
> +                     HAVE_CHD=0 \
>                       HAVE_OSS=0 \
>                       HAVE_OSS_BSD=0 \
>                       OPTIMIZE_FLAG=

Hi!

This works ok, I got a successful build and things seem to work well.

I never actually used retroarch for MAME things, I have some psx games
but they aren't in CHD.  Everything else I quickly tested seems good.

Tested on recent amd64 snapshot.

Attached another diff with the REVISION bump as there was another bump
for turning off FLAC since you originally posted:
https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/ports/emulators/retroarch/Makefile?rev=1.26&content-type=text/plain

Thanks!
-Ryan


Index: Makefile
===================================================================
RCS file: /cvs/ports/emulators/retroarch/Makefile,v
retrieving revision 1.26
diff -u -p -r1.26 Makefile
--- Makefile    20 May 2023 20:13:12 -0000      1.26
+++ Makefile    29 Jun 2023 22:33:30 -0000
@@ -5,7 +5,7 @@ PKGNAME =               retroarch-${GH_TAGNAME:S/v//}
 GH_ACCOUNT =           libretro
 GH_PROJECT =           RetroArch
 GH_TAGNAME =           v1.10.3
-REVISION =             1
+REVISION =             2
 
 CATEGORIES =           emulators
 
@@ -18,7 +18,7 @@ WANTLIB += ${COMPILER_LIBCXX} EGL GL Qt5
 WANTLIB += Qt5Network Qt5Widgets SDL2 X11 X11-xcb Xext Xinerama
 WANTLIB += Xrandr Xv Xxf86vm ass avcodec avformat avutil c crypto
 WANTLIB += drm fontconfig freetype fribidi gbm m openal ssl swresample
-WANTLIB += swscale usb-1.0 xcb xkbcommon z
+WANTLIB += swscale usb-1.0 xcb xkbcommon
 WANTLIB += mbedcrypto mbedtls mbedx509
 
 MODULES =              x11/qt5
@@ -34,6 +34,7 @@ LIB_DEPENDS =         audio/openal \
 
 MAKE_FLAGS =           V=1 \
                        CXX="${CXX}" \
+                       HAVE_CHD=0 \
                        HAVE_OSS=0 \
                        HAVE_OSS_BSD=0 \
                        OPTIMIZE_FLAG=

Reply via email to