Hi, I sent a version this patch several months ago to the -users list. Any final comment here? Would someone consider doing a commit of this? I use it to build pkgsrc with graphical fun on headless servers, using osmesa as viable software rasterizer for X11 sessions over ssh. Alrighty then, Thomas -- Dr. Thomas Orgis Universität Hamburg RRZ / Basis-Infrastruktur / HPC Schlüterstr. 70 20146 Hamburg Tel.: 040/42838 8826 Fax: 040/428 38 6270
Index: graphics/MesaLib/Makefile =================================================================== RCS file: /cvsroot/pkgsrc/graphics/MesaLib/Makefile,v retrieving revision 1.139 diff -u -r1.139 Makefile --- graphics/MesaLib/Makefile 3 Sep 2017 08:53:09 -0000 1.139 +++ graphics/MesaLib/Makefile 5 Oct 2017 12:57:06 -0000 @@ -45,10 +45,14 @@ SUBST_FILES.wrapper-bug= src/gbm/Makefile.in SUBST_FILES.wrapper-bug+= src/glx/Makefile.in SUBST_FILES.wrapper-bug+= src/mapi/Makefile.in +SUBST_FILES.wrapper-bug+= src/mesa/Makefile.in SUBST_FILES.wrapper-bug+= src/mesa/drivers/x11/Makefile.in +SUBST_FILES.wrapper-bug+= src/mesa/drivers/osmesa/Makefile.in +SUBST_FILES.wrapper-bug+= src/gallium/targets/libgl-xlib/Makefile.in SUBST_SED.wrapper-bug= -e 's,shared-glapi/libglapi.la,shared-glapi/libglapi_tmp_rename.la,g' SUBST_SED.wrapper-bug+= -e 's,libglapi.la,libglapi_impl.la,g' SUBST_SED.wrapper-bug+= -e 's,libglapi_tmp_rename.la,libglapi.la,g' +SUBST_SED.wrapper-bug+= -e 's,^\(LTCPPASCOMPILE = $$(LIBTOOL)\) \($$(AM_V_lt)\),\1 --tag=CC \2,' # Replace /etc/drirc with ${PREFIX}/etc/drirc SUBST_CLASSES+= drirc @@ -112,4 +116,5 @@ .include "../../x11/libX11/buildlink3.mk" .include "../../x11/libXext/buildlink3.mk" .include "../../x11/libxcb/buildlink3.mk" +.include "../../x11/glproto/buildlink3.mk" .include "../../mk/bsd.pkg.mk" Index: graphics/MesaLib/PLIST =================================================================== RCS file: /cvsroot/pkgsrc/graphics/MesaLib/PLIST,v retrieving revision 1.35 diff -u -r1.35 PLIST --- graphics/MesaLib/PLIST 24 Feb 2017 13:48:33 -0000 1.35 +++ graphics/MesaLib/PLIST 5 Oct 2017 12:57:06 -0000 @@ -81,3 +81,7 @@ ${PLIST.vdpau}lib/vdpau/libvdpau_radeonsi.so.1.0.0 ${PLIST.vaapi}lib/dri/gallium_drv_video.la ${PLIST.vaapi}lib/dri/gallium_drv_video.so +${PLIST.osmesa}lib/pkgconfig/osmesa.pc +${PLIST.osmesa}lib/libOSMesa.la +@comment For some reason, it is not part of the libGL.la anymore?! +${PLIST.osmesa}lib/libGL.so.1.6.0 Index: graphics/MesaLib/options.mk =================================================================== RCS file: /cvsroot/pkgsrc/graphics/MesaLib/options.mk,v retrieving revision 1.57 diff -u -r1.57 options.mk --- graphics/MesaLib/options.mk 1 Jul 2017 12:48:10 -0000 1.57 +++ graphics/MesaLib/options.mk 5 Oct 2017 12:57:06 -0000 @@ -1,7 +1,7 @@ # $NetBSD: options.mk,v 1.57 2017/07/01 12:48:10 maya Exp $ PKG_OPTIONS_VAR= PKG_OPTIONS.MesaLib -PKG_SUPPORTED_OPTIONS= llvm dri +PKG_SUPPORTED_OPTIONS= llvm dri osmesa PKG_SUGGESTED_OPTIONS= # The LLVM option enables JIT accelerated software rendering and @@ -21,6 +21,7 @@ .include "../../mk/bsd.options.mk" +PLIST_VARS+= osmesa # gallium PLIST_VARS+= freedreno ilo i915 i965 nouveau r300 r600 radeonsi \ swrast svga vc4 virgl @@ -29,6 +30,24 @@ # other features PLIST_VARS+= gbm vaapi vdpau wayland xatracker +GALLIUM_DRIVERS= # +.if ${OPSYS} != "Darwin" +GALLIUM_DRIVERS+= swrast +.endif + + +# OSMesa wants swrast,llvmpipe,softpipe; hoping for swrast at least. +# I would like a non-DRI build with llvmpipe. Can I have that with pkgsrc? +# Or swr, even? +# I am getting linking/dependency trouble with glapi; is this due to pkgsrc hackery? +# Does disabling shared glapi help? +.if !empty(PKG_OPTIONS:Mosmesa) +PLIST.osmesa= yes +CONFIGURE_ARGS+= --enable-osmesa +.else +CONFIGURE_ARGS+= --disable-osmesa +.endif + .if !empty(PKG_OPTIONS:Mdri) CONFIGURE_ARGS+= --enable-dri @@ -67,15 +86,13 @@ .include "../../graphics/MesaLib/dri.mk" DRI_DRIVERS= # -GALLIUM_DRIVERS= # # Software rasterizer +# It is all DRI?! The DRI-less gallium swrast (softpipe) does not have those +# PLIST files. +PLIST.swrast= yes PLIST.swrast_dri= yes DRI_DRIVERS+= swrast -.if ${OPSYS} != "Darwin" -PLIST.swrast= yes -GALLIUM_DRIVERS+= swrast -.endif # x86 only drivers .if (${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64") && ${OPSYS} != "Darwin" @@ -149,7 +166,6 @@ CONFIGURE_ARGS+= --with-egl-platforms=x11,drm .endif -CONFIGURE_ARGS+= --with-gallium-drivers=${GALLIUM_DRIVERS:ts,} CONFIGURE_ARGS+= --with-dri-drivers=${DRI_DRIVERS:ts,} .if !empty(PKG_OPTIONS:Mllvm) @@ -187,7 +203,6 @@ CONFIGURE_ARGS+= --disable-r600-llvm-compiler .endif # llvm .else # !dri -CONFIGURE_ARGS+= --with-gallium-drivers= CONFIGURE_ARGS+= --with-dri-drivers= CONFIGURE_ARGS+= --disable-dri CONFIGURE_ARGS+= --disable-dri3 @@ -198,5 +213,10 @@ CONFIGURE_ARGS+= --enable-xlib-glx .if !empty(PKG_OPTIONS:Mllvm) PKG_FAIL_REASON+= "The llvm PKG_OPTION must also be disabled when dri is disabled" +.else +# There is non-DRI llvm use that should be explicitly disabled. +CONFIGURE_ARGS+= --disable-gallium-llvm .endif .endif + +CONFIGURE_ARGS+= --with-gallium-drivers=${GALLIUM_DRIVERS:ts,}
Attachment:
smime.p7s
Description: S/MIME cryptographic signature