Requested by David Shao in PR pkg/50202.
Also as suggested add support for using libdevq for FreeBSD, from Ports.
(Re the PR: I think we should have TLS GLX unconditionally enabled on
platforms that support it, but needs more testing so not commited just yet.)
New features in MesaLib 10.6:
GL_AMD_pinned_memory on r600, radeonsi
GL_ARB_clip_control on i965
GL_ARB_depth_buffer_float on freedreno
GL_ARB_depth_clamp on freedreno
GL_ARB_direct_state_access on all drivers that support GL 2.0+
GL_ARB_draw_indirect, GL_ARB_multi_draw_indirect on r600
GL_ARB_draw_instanced on freedreno
GL_ARB_gpu_shader_fp64 on nvc0, softpipe
GL_ARB_gpu_shader5 on i965/gen8+
GL_ARB_instanced_arrays on freedreno
GL_ARB_pipeline_statistics_query on i965, nv50, nvc0, r600, radeonsi, softpipe
GL_ARB_program_interface_query (all drivers)
GL_ARB_texture_stencil8 on nv50, nvc0, r600, radeonsi, softpipe
GL_ARB_texture_view on llvmpipe, softpipe
GL_ARB_uniform_buffer_object on freedreno
GL_ARB_vertex_attrib_64bit on nvc0, softpipe
GL_ARB_viewport_array, GL_AMD_vertex_shader_viewport_index on i965/gen6
GL_EXT_draw_buffers2 on freedreno
GL_OES_EGL_sync on all drivers
EGL_KHR_fence_sync on i965, freedreno, nv50, nvc0, r600, radeonsi
EGL_KHR_wait_sync on i965, freedreno, nv50, nvc0, r600, radeonsi
EGL_KHR_cl_event2 on freedreno, nv50, nvc0, r600, radeonsi
GL_AMD_performance_monitor on nvc0
Also many bugfixes.
MesaLib-10.5.7 2015-06-07
"The current release includes over a dozen nouveau fixes (mostly targeting
nv30/nv40 era hardware), i965 patches and a crash fix common to all the
gallium dri modules."
MesaLib-10.5.6 2015-05-24
"This time around we have fixes from all over mesa - core mesa, driver
specific patches (i965, nouveau, freedreno), reentrancy improvements
in Clover (OpenCL), GLX and EGL loader patches, and Darwin build fixes."
MesaLib-10.5.5 2015-05-11
"This release includes a selection of i965 and nouveau driver fixes. Everyone
using a gallium driver (r300, r600 and others) is also encouraged to update."
MesaLib-10.5.4 2015-04-24
"This release includes fixes for the mesa state-tracker used by all the
gallium drivers, a drirc workaround for Second Life, plus i965 fixes."
Apologies in advance for any fallout. I have tested this as extensively
as I could in wip but the fact is we were 5 years and 50+ releases behind so
there will undoubtably still be issues.
Users of software rendering should see a nice performance boost with this
package as it now comes with the llvmpipe software rasterizer.
Users who currently enjoy working DRI1 rendering with X11_TYPE=modular should
switch to x11/modular-xorg-server112 now as x11/modular-xorg-server will
from now on only support DRI2 and up.
New features in MesaLib 10.5:
Mesa 10.5.0 implements the OpenGL 3.3 API
GL_ARB_framebuffer_sRGB on freedreno
GL_ARB_texture_rg on freedreno
GL_EXT_packed_float on freedreno
GL_EXT_polygon_offset_clamp on i965, nv50, nvc0, r600, radeonsi, llvmpipe
GL_EXT_texture_shared_exponent on freedreno
GL_EXT_texture_snorm on freedreno
Changes in MesaLib 10.5:
Removed support for GCC versions earlier than 4.2.0.
New features in MesaLib 10.4:
GL_ARB_conditional_render_inverted on nv50
GL_ARB_sample_shading on r600
GL_ARB_texture_view on nv50, nvc0
GL_ARB_clip_control on nv50, nvc0, r300, r600, radeonsi, llvmpipe, softpipe
GL_KHR_context_flush_control on all drivers
Changes in MesaLib 10.4:
The environment variable GALLIUM_MSAA that forced a multisample GLX visual
was removed.
New features in MesaLib 10.3:
GL_ARB_ES3_compatibility on nv50, nvc0, r600, radeonsi, softpipe, llvmpipe
GL_ARB_clear_texture on i965
GL_ARB_compressed_texture_pixel_storage on all drivers
GL_ARB_conditional_render_inverted on i965, nvc0, softpipe, llvmpipe
GL_ARB_derivative_control on i965, nv50, nvc0, r600
GL_ARB_draw_indirect on nvc0, radeonsi
GL_ARB_explicit_uniform_location (all drivers that support GLSL)
GL_ARB_fragment_layer_viewport on nv50, nvc0, llvmpipe, r600
GL_ARB_gpu_shader5 on i965/gen7, nvc0
GL_ARB_multi_draw_indirect on nvc0, radeonsi
GL_ARB_sample_shading on radeonsi
GL_ARB_seamless_cubemap_per_texture on i965, llvmpipe, nvc0, r600, radeonsi,
softpipe
GL_ARB_stencil_texturing on nv50, nvc0, r600, and radeonsi
GL_ARB_texture_barrier on nv50, nvc0, r300, r600, radeonsi
GL_ARB_texture_compression_bptc on i965/gen7+, nvc0, r600/evergreen+, radeonsi
GL_ARB_texture_cube_map_array on radeonsi
GL_ARB_texture_gather on r600, radeonsi
GL_ARB_texture_query_levels on nv50, nvc0, llvmpipe, r600, radeonsi, softpipe
GL_ARB_texture_query_lod on r600, radeonsi
GL_ARB_viewport_array on nvc0
GL_AMD_vertex_shader_viewport_index on i965/gen7+, r600
GL_OES_compressed_ETC1_RGB8_texture on nv30, nv50, nvc0, r300, r600,
radeonsi, softpipe, llvmpipe
GLX_MESA_query_renderer on nv30, nv50, nvc0, r300, r600, radeonsi, softpipe,
llvmpipe
A new software rasterizer driver (kms_swrast_dri.so) that works with DRM
drivers that don't have a full-fledged GEM (such as qxl or simpledrm)
Distribute the Khronos GL/glcorearb.h header file.
Changes in MesaLib 10.3:
Removed support for the GL_ATI_envmap_bumpmap extension
The hacky --enable-32/64-bit is no longer available in configure. To build
32/64 bit mesa refer to the default method recommended by your distribution
New features in MesaLib 10.2:
GL_ARB_buffer_storage on i965, nv30, nv50, nvc0, r300, r600, and radeonsi
GL_ARB_multi_bind on all drivers
GL_ARB_sample_shading on nv50 (GT21x only), nvc0
GL_ARB_separate_shader_objects (desktop OpenGL) and
GL_EXT_separate_shader_objects (OpenGL ES 2.0 and 3.0) on all drivers
GL_ARB_stencil_texturing on i965/gen8+
GL_ARB_texture_cube_map_array on nv50 (GT21x only)
GL_ARB_texture_gather on nv50 (GT21x only), nvc0
GL_ARB_texture_query_lod on nv50 (GT21x only), nvc0
GL_ARB_texture_view on i965/gen7
GL_ARB_vertex_type_10f_11f_11f_rev on nv50, nvc0, radeonsi
GL_ARB_viewport_array on nv50, r600
GL_INTEL_performance_query on i965/gen5+
Changes in MesaLib 10.2:
Renamed --with-llvm-shared-libs to --enable-llvm-shared-libs
Split libxatracker.so into a standalone library which can be used with any
gallium driver.
New features in MesaLib 10.1:
GL_ARB_draw_indirect on i965.
GL_ARB_clear_buffer_object
GL_ARB_viewport_array on i965.
GL_ARB_map_buffer_alignment on all drivers that did not previously support it.
GL_AMD_shader_trinary_minmax.
GL_EXT_framebuffer_blit on r200 and radeon.
Reduced memory usage for display lists.
OpenGL 3.3 support on nv50, nvc0, r600 and radeonsi
Changes in MesaLib 10.1:
Removed support for the GL_MESA_texture_array extension. This extension
enabled the use of texture array with fixed-function and assembly fragment
shaders. No applications are known to use this extension.
New features in MesaLib 10.0:
GL_AMD_seamless_cubemap_per_texture on i965.
GL_ARB_conservative_depth on i965.
GL_ARB_texture_gather on i965.
GL_ARB_texture_query_levels on i965.
GL_ARB_texture_mirror_clamp_to_edge.
GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, and
GL_ARB_transform_feedback_instanced on i965/Gen7 (with appropriate kernel
support).
GL_ARB_sample_shading on i965.
GL_ARB_shader_atomic_counters on i965.
GL_ARB_vertex_attrib_binding
GL_ARB_vertex_type_10f_11f_11f_rev on i965 and r600g
GL_KHR_debug
GLX_MESA_query_renderer
Changes in MesaLib 10.0:
Removed X.Org state tracker (unmaintained and broken)
Removed the video-accel r300 targets
Removed the video-accel softpipe targets
New features in MesaLib 9.2:
GL_ARB_shading_language_420pack in all drivers that support GLSL 1.30.
GL_ARB_texture_buffer_range
GL_ARB_texture_multisample
GL_ARB_texture_storage_multisample
GL_ARB_texture_query_lod
GL_ARB_texture_storage on radeon, r200, and nouveau
GL_EXT_discard_framebuffer in all OpenGL ES (all versions) drivers
GL_EXT_framebuffer_multisample_blit_scaled on i965
Added new freedreno gallium driver
OSMesa interface for gallium llvmpipe/softpipe drivers
Gallium Heads-Up Display (HUD) feature for performance monitoring
Added support for UVD (2.2 and 3.0) video decoding on r600g and radeonsi
through VDPAU (requires Kernel 3.10 or later)
Changes in MesaLib 9.2:
Removed d3d1x state tracker (unused, unmaintained and broken)
Removed GL_EXT_clip_volume_hint because no driver had enabled it since 2007.
Removed GL_MESA_resize_buffers because it was only really implemented by
the (unsupported) GDI driver.
GL_EXT_separate_shader_objects has been removed from all Gallium drivers,
because it disallows a critical GLSL shader optimization.
GL_ARB_separate_shader_objects doesn't have this issue.
i965 Gen6+ requires Kernel 3.6 or later. (92d2f5a)
New features in MesaLib 9.1:
GL_ANGLE_texture_compression_dxt3
GL_ANGLE_texture_compression_dxt5
GL_ARB_ES3_compatibility
GL_ARB_internalformat_query
GL_ARB_map_buffer_alignment
GL_ARB_shading_language_packing
GL_ARB_texture_buffer_object_rgb32
GL_ARB_texture_cube_map_array
GL_EXT_color_buffer_float
GL_OES_depth_texture_cube_map
OpenGL 3.1 core profile support on Radeon HD2000 up to HD6000 series
Multisample anti-aliasing support on Radeon X1000 series
OpenGL ES 3.0 support on Intel HD Graphics 2000, 2500, 3000, and 4000
Changes in MesaLib 9.1:
Removed VAAPI state tracker (unmaintained and broken)
Removed i965's broken hardware implementation of GL_NV_vertex_program
Removed swrast support for GL_NV_vertex_program
Removed swrast support for GL_NV_fragment_program
Removed OpenVMS support (unmaintained and broken)
Removed makedepend build dependency
New features in MesaLib 9:
Added new Gallium3D - nv30 driver
Added new Gallium3D - radeonsi driver
Added OpenCL state tracker Clover
Completed VDPAU state tracker (video decoding support is currently limited
to MPEG1 and MPEG2)
GL_ARB_base_instance
GL_ARB_blend_func_extended
GL_ARB_debug_output
GL_ARB_invalidate_subdata - Currently a "no-op" implementation. This
extension is always enabled in all drivers.
GL_ARB_shader_bit_encoding
GL_ARB_texture_buffer_object
GL_ARB_timer_query
GL_ARB_transform_feedback3
GL_ARB_transform_feedback_instanced
GL_ARB_uniform_buffer_object
GL_EXT_unpack_subimage for ES 2.0
GL_EXT_read_format_bgra for ES 1.1 and 2.0
GL_EXT_texture_rg for ES 2.x
GL_NV_read_buffer for ES 2.0
GLX_ARB_create_context_robustness
EGL_KHR_create_context
EGL_KHR_surfaceless_context - This replaces the
EGL_KHR_surfaceless_{gles1,gles2,opengl} extensions that were never
approved by Khronos.
EGL_EXT_create_context_robustness
Changes in Mesalib 9:
The legacy/static Makefile system (ex: 'make linux-dri') has been removed.
The two supported build methods are now autoconf/automake and SCons.
Removed support for GL_ARB_shadow_ambient extension
Removed Gallium3D - nvfx driver (use nv30 instead)
libGLU has been moved into its own repository
New features in MesaLib 8:
GL_ARB_ES2_compatibility (r300g, r600g)
GL_ARB_depth_buffer_float (r600g)
GL_ARB_vertex_type_2_10_10_10_rev (r600g)
GL_ARB_texture_storage (gallium drivers and swrast)
GL_EXT_packed_float (i965)
GL_EXT_texture_array (r600g, i965)
GL_EXT_texture_shared_exponent (i965)
GL_NV_fog_distance (all gallium drivers, nouveau classic)
GL_NV_primitive_restart (r600g)
GL_OES_EGL_image_external (gallium drivers)
GL_OES_compressed_ETC1_RGB8_texture (softpipe, llvmpipe)
ARB_texture_rgb10_a2ui (softpipe, r600g)
Many updates to the VMware svga Gallium driver
Changes in MesaLib 8:
Removed all DRI drivers that did not support DRI2. Specifically, i810,
mach64, mga, r128, savage, sis, tdfx, and unichrome were removed.
Removed support for BeOS.
Removed the obsolete (and unmaintained) Windows "gldirect" and "ICD" drivers.
Removed the linux-fbdev software driver.
Removed all remnants of paletted texture support. As required by desktop
OpenGL, GL_COLOR_INDEX data can still be uploaded to a color (e.g., RGBA)
texture. However, the data cannot be stored internally as color-index.
Removed support for GL_APPLE_client_storage extension.
Removed the classic Mesa r300 and r600 drivers, which are superseded by the
gallium drivers for this hardware.
Removed the dead Gallium i965, cell and failover drivers, which were either
broken and with nobody in sight to fix the situation or deprecated.
need to link with it but might have included x11/xf86driproto's bl3.mk first,
because we have:
x11/xf86driproto/buildlink3.mk:BUILDLINK_DEPMETHOD.libpciaccess?= build
(This issue appears only on non-x86 because on x86 we get libpciaccess
through libdrm)
Bump PKGREVISION to get the dependency expressed.
* move dri related API_DEPENDS into dri.mk.
* add missing API_DEPENDS.
* only define such API_DEPENDS only not using builtin MesaLib.
Fixes following issues on platforms that builtin one is older than required
version (ex. NetBSD-5).
* build issue of MesaLib
* unwanted dependency on MesaLib from pkgsrc even if builtin one is sufficient.
Patrick Welche) and enable it by default there too; bump libdrm
requirement (from Patrick Welche).
Also enable dri on Linux by default, not only for Linux with modular X.
Bump PKGREVISION.
+ Build the x11 version libGL.so with version numbering major 1 and minor 2,
the same a the glx version of libGL (simplifies PLIST handling).
+ PLIST changes.