On Sat, Nov 30, 2024 at 01:56:51AM -0500, Brad Smith wrote: > While updating Alephone I ran into a linking issue with the GL backend. I > disabled the GL backend so at least the core game engine could be updated > when working on updating FFmpeg. > > But circling back to this now. It seems like our Mesa libGL is missing > this function as well as a lot of others. When I compare our Mesa libGL > to Linux and FreeBSD's copies; they have a lot more functions including the > missing function below. They both have exactly the same number of functions, > 3493, compared to our 1655.
They have a layer of indirection and use NVIDIA's libglvnd for libGL. > > ld: error: undefined symbol: glBlitFramebufferEXT Extensions are supposed to be loaded dynamically. Multiple libraries such as libepoxy provide wrappers, perhaps libglvnd is also doing that. > > openbsd-arm64$ objdump -T libGL.so.19.1 | grep glBlitFramebuffer > 00000000000baec8 g DF .text 00000000000000ac glBlitFramebuffer > > brad@freebsd-vmware-amd64:/usr/local/lib $ objdump -T libGL.so.1.7.0 | grep > glBlitFramebuffer > 00000000000623a0 g DF wtext 0000000000000000 > glBlitFramebufferANGLE > 0000000000062380 g DF wtext 0000000000000000 > glBlitFramebuffer > 00000000000623c0 g DF wtext 0000000000000000 > glBlitFramebufferEXT > 00000000000623e0 g DF wtext 0000000000000000 > glBlitFramebufferNV > > > Index: Makefile > =================================================================== > RCS file: /cvs/ports/games/alephone/alephone/Makefile,v > retrieving revision 1.36 > diff -u -p -u -p -r1.36 Makefile > --- Makefile 24 Nov 2024 08:54:58 -0000 1.36 > +++ Makefile 27 Nov 2024 03:30:34 -0000 > @@ -5,6 +5,7 @@ COMMENT = open source game engine based > DATE = 20240822 > DISTNAME = AlephOne-${DATE} > PKGNAME = alephone-1.10 > +REVISION = 0 > CATEGORIES = games x11 > EXTRACT_SUFX = .tar.bz2 > > @@ -19,12 +20,10 @@ PERMIT_PACKAGE = Yes > > SITES = > https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${DATE}/ > > -WANTLIB += ${COMPILER_LIBCXX} SDL2 SDL2_image SDL2_net > +WANTLIB += ${COMPILER_LIBCXX} GL GLU SDL2 SDL2_image SDL2_net > WANTLIB += SDL2_ttf avcodec avformat avutil boost_filesystem boost_system > WANTLIB += c curl m openal png sndfile swresample swscale z zzip > > -# GL GLU > - > # C++17 > COMPILER = base-clang ports-gcc > > @@ -44,8 +43,7 @@ RUN_DEPENDS = devel/desktop-file-utils > > USE_GMAKE = Yes > CONFIGURE_STYLE = gnu > -CONFIGURE_ARGS += --disable-opengl \ > - --without-miniupnpc > +CONFIGURE_ARGS += --without-miniupnpc > CONFIGURE_ENV = CPPFLAGS=-I${LOCALBASE}/include \ > LDFLAGS=-L${LOCALBASE}/lib > >