Remove osmesa

It's redundant with EGL surfaceless and it doesn't have much use.

It's also available from the amber branch, so distros should get it from
there if they want to continue packaging it.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33836>
This commit is contained in:
Marek Olšák
2025-03-02 07:25:54 -05:00
committed by Marge Bot
parent e8e4022dde
commit 027ccd963b
22 changed files with 3 additions and 3597 deletions
-2
View File
@@ -167,8 +167,6 @@ Basically you'll want the following:
the OpenGL extensions header
``/usr/include/GL/glxext.h``
the OpenGL GLX extensions header
``/usr/include/GL/osmesa.h``
the Mesa off-screen rendering header
``/usr/lib/libGL.so``
a symlink to ``libGL.so.1``
``/usr/lib/libGL.so.1``
-1
View File
@@ -66,7 +66,6 @@ Linux, FreeBSD, and other operating systems.
egl
opengles
envvars
osmesa
debugging
perf
gpu-perf-tracing
+1 -5
View File
@@ -217,12 +217,8 @@ this:
lrwxrwxrwx 1 brian users 10 Mar 26 07:53 libGL.so -> libGL.so.1*
lrwxrwxrwx 1 brian users 19 Mar 26 07:53 libGL.so.1 -> libGL.so.1.5.060100*
-rwxr-xr-x 1 brian users 3375861 Mar 26 07:53 libGL.so.1.5.060100*
lrwxrwxrwx 1 brian users 14 Mar 26 07:53 libOSMesa.so -> libOSMesa.so.6*
lrwxrwxrwx 1 brian users 23 Mar 26 07:53 libOSMesa.so.6 -> libOSMesa.so.6.1.060100*
-rwxr-xr-x 1 brian users 23871 Mar 26 07:53 libOSMesa.so.6.1.060100*
**libGL** is the main OpenGL library (i.e. Mesa), while **libOSMesa** is
the OSMesa (Off-Screen) interface library.
**libGL** is the main OpenGL library (i.e. Mesa).
If you built the DRI hardware drivers, you'll also see the DRI drivers:
-3
View File
@@ -15,7 +15,4 @@ Mesa's default builds with the Apple GLX uses Mesa as a front for the
hardware-accelerated system OpenGL framework, to provide hardware acceleration
to X11 applications on macOS running via XQuartz.
Mesa's software rasterizers also work on macOS. To build, set the build options
``-Dosmesa=true -Dglx=xlib``.
Mesa's Gallium drivers can be used on macOS by using the ``-Dgallium-drivers=<drivers>`` build option. Do not use with the previous software rasterizers options, instead add ``swrast`` to the ``<drivers>`` list. Only software renderers and drivers that forward to other APIs can work, any linux hardware drivers will not work. For details on each driver's macOS support see their specific documentation.
-43
View File
@@ -1,43 +0,0 @@
Off-screen Rendering
====================
Mesa's off-screen interface is used for rendering into user-allocated
memory without any sort of window system or operating system
dependencies. That is, the GL_FRONT colorbuffer is actually a buffer in
main memory, rather than a window on your display.
The OSMesa API provides three basic functions for making off-screen
renderings: OSMesaCreateContext(), OSMesaMakeCurrent(), and
OSMesaDestroyContext(). See the Mesa/include/GL/osmesa.h header for more
information about the API functions.
The OSMesa interface may be used with the gallium software renderers:
#. LLVMpipe - this is the high-performance Gallium LLVM driver
#. Softpipe - this is the reference Gallium software driver
There are several examples of OSMesa in the mesa/demos repository.
Building OSMesa
---------------
Configure and build Mesa with something like:
.. code-block:: sh
meson setup builddir -Dosmesa=true -Dgallium-drivers=swrast -Dvulkan-drivers=[] -Dprefix=$PWD/builddir/install
meson install -C builddir
Make sure you have LLVM installed first if you want to use the LLVMpipe
driver.
When the build is complete you should find:
::
$PWD/builddir/install/lib/libOSMesa.so
Set your LD_LIBRARY_PATH to point to $PWD/builddir/install to use the
libraries
When you link your application, link with -lOSMesa
-1
View File
@@ -139,7 +139,6 @@ each directory.
- **hgl** - Haiku OpenGL
- **lavapipe** - Vulkan frontend, software Vulkan rasterizer using LLVMpipe.
- **nine** - D3D9 frontend, see targets/d3dadapter9
- **osmesa** - Off-screen OpenGL rendering library
- **va** - VA-API frontend
- **vdpau** - VDPAU frontend
- **wgl** - Windows WGL frontend