head 1.1; branch 1.1.1; access; symbols netbsd-11-0-RC6:1.1.1.1 netbsd-11-0-RC5:1.1.1.1 netbsd-11-0-RC4:1.1.1.1 netbsd-11-0-RC3:1.1.1.1 netbsd-11-0-RC2:1.1.1.1 netbsd-11-0-RC1:1.1.1.1 netbsd-11:1.1.1.1.0.4 netbsd-11-base:1.1.1.1 netbsd-10-1-RELEASE:1.1.1.1 netbsd-10-0-RELEASE:1.1.1.1 netbsd-10-0-RC6:1.1.1.1 netbsd-10-0-RC5:1.1.1.1 netbsd-10-0-RC4:1.1.1.1 netbsd-10-0-RC3:1.1.1.1 netbsd-10-0-RC2:1.1.1.1 netbsd-10-0-RC1:1.1.1.1 netbsd-10:1.1.1.1.0.2 netbsd-10-base:1.1.1.1 mesa-21-3-7:1.1.1.1 xorg:1.1.1; locks; strict; comment @# @; 1.1 date 2022.05.09.01.23.23; author mrg; state Exp; branches 1.1.1.1; next ; commitid UEBs6hNk81DdQjDD; 1.1.1.1 date 2022.05.09.01.23.23; author mrg; state Exp; branches; next ; commitid UEBs6hNk81DdQjDD; desc @@ 1.1 log @Initial revision @ text @Development Notes ================= Adding Extensions ----------------- To add a new GL extension to Mesa you have to do at least the following. - If ``glext.h`` doesn't define the extension, edit ``include/GL/gl.h`` and add code like this: .. code-block:: c #ifndef GL_EXT_the_extension_name #define GL_EXT_the_extension_name 1 /* declare the new enum tokens */ /* prototype the new functions */ /* TYPEDEFS for the new functions */ #endif - In the ``src/mapi/glapi/gen/`` directory, add the new extension functions and enums to the ``gl_API.xml`` file. Then, a bunch of source files must be regenerated by executing the corresponding Python scripts. - Add a new entry to the ``gl_extensions`` struct in ``mtypes.h`` if the extension requires driver capabilities not already exposed by another extension. - Add a new entry to the ``src/mesa/main/extensions_table.h`` file. - From this point, the best way to proceed is to find another extension, similar to the new one, that's already implemented in Mesa and use it as an example. - If the new extension adds new GL state, the functions in ``get.c``, ``enable.c`` and ``attrib.c`` will most likely require new code. - To determine if the new extension is active in the current context, use the auto-generated ``_mesa_has_##name_str()`` function defined in ``src/mesa/main/extensions.h``. - The dispatch tests ``check_table.cpp`` and ``dispatch_sanity.cpp`` should be updated with details about the new extensions functions. These tests are run using ``meson test``. @ 1.1.1.1 log @initial import of mesa 21.3.7 main changes since 19.1.7 include: - more support for Vulkan functions - better supported for newer radeonsi (both amdgpu and radeon backends) - various bug fixes in many drivers - many fixes and enhancements for intel drivers - some fixes for nvidia - OpenGL 4.6 for some drivers (intel, radeonsi) - intel Tigerlake and Rocketlake support - Vulkan 1.2 for some drivers - OpenGL 4.5, GLES 3.2, and more on llvmpipe - working Panfrost and Midgard drivers - fix warnings in radeonsi vs newer llvm @ text @@