diff --git a/Android.common.mk b/Android.common.mk
index d662d6018e4..948561c6b1b 100644
--- a/Android.common.mk
+++ b/Android.common.mk
@@ -42,6 +42,7 @@ LOCAL_CFLAGS += \
-DANDROID_VERSION=0x0$(MESA_ANDROID_MAJOR_VERSION)0$(MESA_ANDROID_MINOR_VERSION)
LOCAL_CFLAGS += \
+ -D__STDC_LIMIT_MACROS \
-DHAVE___BUILTIN_EXPECT \
-DHAVE___BUILTIN_FFS \
-DHAVE___BUILTIN_FFSLL \
@@ -70,7 +71,7 @@ endif
ifeq ($(MESA_ENABLE_LLVM),true)
LOCAL_CFLAGS += \
- -DHAVE_LLVM=0x0305 -DLLVM_VERSION_PATCH=2 \
+ -DHAVE_LLVM=0x0305 -DMESA_LLVM_VERSION_PATCH=2 \
-D__STDC_CONSTANT_MACROS \
-D__STDC_FORMAT_MACROS \
-D__STDC_LIMIT_MACROS
diff --git a/configure.ac b/configure.ac
index 4669a67dc04..fa64dab4e48 100644
--- a/configure.ac
+++ b/configure.ac
@@ -74,7 +74,7 @@ LIBDRM_AMDGPU_REQUIRED=2.4.63
LIBDRM_INTEL_REQUIRED=2.4.61
LIBDRM_NVVIEUX_REQUIRED=2.4.33
LIBDRM_NOUVEAU_REQUIRED=2.4.62
-LIBDRM_FREEDRENO_REQUIRED=2.4.64
+LIBDRM_FREEDRENO_REQUIRED=2.4.65
DRI2PROTO_REQUIRED=2.6
DRI3PROTO_REQUIRED=1.0
PRESENTPROTO_REQUIRED=1.0
@@ -534,15 +534,32 @@ AM_CONDITIONAL(HAVE_COMPAT_SYMLINKS, test "x$HAVE_COMPAT_SYMLINKS" = xyes)
dnl
dnl library names
dnl
+dnl Unfortunately we need to do a few things that libtool can't help us with,
+dnl so we need some knowledge of shared library filenames:
+dnl
+dnl LIB_EXT is the extension used when creating symlinks for alternate
+dnl filenames for a shared library which will be dynamically loaded
+dnl
+dnl IMP_LIB_EXT is the extension used when checking for the presence of a
+dnl the file for a shared library we wish to link with
+dnl
case "$host_os" in
darwin* )
- LIB_EXT='dylib' ;;
+ LIB_EXT='dylib'
+ IMP_LIB_EXT=$LIB_EXT
+ ;;
cygwin* )
- LIB_EXT='dll' ;;
+ LIB_EXT='dll'
+ IMP_LIB_EXT='dll.a'
+ ;;
aix* )
- LIB_EXT='a' ;;
+ LIB_EXT='a'
+ IMP_LIB_EXT=$LIB_EXT
+ ;;
* )
- LIB_EXT='so' ;;
+ LIB_EXT='so'
+ IMP_LIB_EXT=$LIB_EXT
+ ;;
esac
AC_SUBST([LIB_EXT])
@@ -1111,6 +1128,11 @@ AC_MSG_RESULT([$with_sha1])
AC_SUBST(SHA1_LIBS)
AC_SUBST(SHA1_CFLAGS)
+# Enable a define for SHA1
+if test "x$with_sha1" != "x"; then
+ DEFINES="$DEFINES -DHAVE_SHA1"
+fi
+
# Allow user to configure out the shader-cache feature
AC_ARG_ENABLE([shader-cache],
AS_HELP_STRING([--disable-shader-cache], [Disable binary shader cache]),
@@ -1290,6 +1312,16 @@ AC_SUBST(GLX_TLS, ${GLX_USE_TLS})
AS_IF([test "x$GLX_USE_TLS" = xyes -a "x$ax_pthread_ok" = xyes],
[DEFINES="${DEFINES} -DGLX_USE_TLS"])
+dnl Read-only text section on x86 hardened platforms
+AC_ARG_ENABLE([glx-read-only-text],
+ [AS_HELP_STRING([--enable-glx-read-only-text],
+ [Disable writable .text section on x86 (decreases performance) @<:@default=disabled@:>@])],
+ [enable_glx_read_only_text="$enableval"],
+ [enable_glx_read_only_text=no])
+if test "x$enable_glx_read_only_text" = xyes; then
+ DEFINES="$DEFINES -DGLX_X86_READONLY_TEXT"
+fi
+
dnl
dnl More DRI setup
dnl
@@ -2058,7 +2090,7 @@ radeon_llvm_check() {
if test "x$enable_gallium_llvm" != "xyes"; then
AC_MSG_ERROR([--enable-gallium-llvm is required when building $1])
fi
- llvm_check_version_for "3" "4" "2" $1
+ llvm_check_version_for "3" "5" "0" $1
if test true && $LLVM_CONFIG --targets-built | grep -iqvw $amdgpu_llvm_target_name ; then
AC_MSG_ERROR([LLVM $amdgpu_llvm_target_name not enabled in your LLVM build.])
fi
@@ -2146,11 +2178,8 @@ if test -n "$with_gallium_drivers"; then
gallium_require_drm "vc4"
gallium_require_drm_loader
- case "$host_cpu" in
- i?86 | x86_64 | amd64)
- USE_VC4_SIMULATOR=yes
- ;;
- esac
+ PKG_CHECK_MODULES([SIMPENROSE], [simpenrose],
+ [USE_VC4_SIMULATOR=yes], [USE_VC4_SIMULATOR=no])
;;
*)
AC_MSG_ERROR([Unknown Gallium driver: $driver])
@@ -2170,10 +2199,14 @@ if test "x$MESA_LLVM" != x0; then
LLVM_LIBS="`$LLVM_CONFIG --libs ${LLVM_COMPONENTS}`"
+ dnl llvm-config may not give the right answer when llvm is a built as a
+ dnl single shared library, so we must work the library name out for
+ dnl ourselves.
+ dnl (See https://llvm.org/bugs/show_bug.cgi?id=6823)
if test "x$enable_llvm_shared_libs" = xyes; then
dnl We can't use $LLVM_VERSION because it has 'svn' stripped out,
LLVM_SO_NAME=LLVM-`$LLVM_CONFIG --version`
- AS_IF([test -f "$LLVM_LIBDIR/lib$LLVM_SO_NAME.so"], [llvm_have_one_so=yes])
+ AS_IF([test -f "$LLVM_LIBDIR/lib$LLVM_SO_NAME.$IMP_LIB_EXT"], [llvm_have_one_so=yes])
if test "x$llvm_have_one_so" = xyes; then
dnl LLVM was built using auto*, so there is only one shared object.
@@ -2181,7 +2214,7 @@ if test "x$MESA_LLVM" != x0; then
else
dnl If LLVM was built with CMake, there will be one shared object per
dnl component.
- AS_IF([test ! -f "$LLVM_LIBDIR/libLLVMTarget.so"],
+ AS_IF([test ! -f "$LLVM_LIBDIR/libLLVMTarget.$IMP_LIB_EXT"],
[AC_MSG_ERROR([Could not find llvm shared libraries:
Please make sure you have built llvm with the --enable-shared option
and that your llvm libraries are installed in $LLVM_LIBDIR
diff --git a/docs/GL3.txt b/docs/GL3.txt
index 561f20421db..e020deb3b6c 100644
--- a/docs/GL3.txt
+++ b/docs/GL3.txt
@@ -109,14 +109,14 @@ GL 4.0, GLSL 4.00 --- all DONE: nvc0, radeonsi
- Enhanced per-sample shading DONE (r600)
- Interpolation functions DONE (r600)
- New overload resolution rules DONE
- GL_ARB_gpu_shader_fp64 DONE (llvmpipe, softpipe)
+ GL_ARB_gpu_shader_fp64 DONE (r600, llvmpipe, softpipe)
GL_ARB_sample_shading DONE (i965, nv50, r600)
GL_ARB_shader_subroutine DONE (i965, nv50, r600, llvmpipe, softpipe)
GL_ARB_tessellation_shader DONE ()
GL_ARB_texture_buffer_object_rgb32 DONE (i965, r600, llvmpipe, softpipe)
GL_ARB_texture_cube_map_array DONE (i965, nv50, r600, llvmpipe, softpipe)
GL_ARB_texture_gather DONE (i965, nv50, r600, llvmpipe, softpipe)
- GL_ARB_texture_query_lod DONE (i965, nv50, r600)
+ GL_ARB_texture_query_lod DONE (i965, nv50, r600, softpipe)
GL_ARB_transform_feedback2 DONE (i965, nv50, r600, llvmpipe, softpipe)
GL_ARB_transform_feedback3 DONE (i965, nv50, r600, llvmpipe, softpipe)
@@ -127,7 +127,7 @@ GL 4.1, GLSL 4.10 --- all DONE: nvc0, radeonsi
GL_ARB_get_program_binary DONE (0 binary formats)
GL_ARB_separate_shader_objects DONE (all drivers)
GL_ARB_shader_precision DONE (all drivers that support GLSL 4.10)
- GL_ARB_vertex_attrib_64bit DONE (llvmpipe, softpipe)
+ GL_ARB_vertex_attrib_64bit DONE (r600, llvmpipe, softpipe)
GL_ARB_viewport_array DONE (i965, nv50, r600, llvmpipe)
@@ -164,7 +164,7 @@ GL 4.3, GLSL 4.30:
GL_ARB_program_interface_query DONE (all drivers)
GL_ARB_robust_buffer_access_behavior not started
GL_ARB_shader_image_size DONE (i965)
- GL_ARB_shader_storage_buffer_object in progress (Iago Toral, Samuel Iglesias)
+ GL_ARB_shader_storage_buffer_object DONE (i965)
GL_ARB_stencil_texturing DONE (i965/gen8+, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
GL_ARB_texture_buffer_range DONE (nv50, nvc0, i965, r600, radeonsi, llvmpipe)
GL_ARB_texture_query_levels DONE (all drivers that support GLSL 1.30)
@@ -194,8 +194,8 @@ GL 4.5, GLSL 4.50:
GL_ARB_derivative_control DONE (i965, nv50, nvc0, r600, radeonsi)
GL_ARB_direct_state_access DONE (all drivers)
GL_ARB_get_texture_sub_image DONE (all drivers)
- GL_ARB_shader_texture_image_samples not started
- GL_ARB_texture_barrier DONE (nv50, nvc0, r600, radeonsi)
+ GL_ARB_shader_texture_image_samples DONE (i965, nv50, nvc0, r600, radeonsi)
+ GL_ARB_texture_barrier DONE (i965, nv50, nvc0, r600, radeonsi)
GL_KHR_context_flush_control DONE (all - but needs GLX/EGL extension to be useful)
GL_KHR_robust_buffer_access_behavior not started
GL_KHR_robustness 90% done (the ARB variant)
@@ -212,7 +212,7 @@ GLES3.1, GLSL ES 3.1
GL_ARB_shader_atomic_counters DONE (i965)
GL_ARB_shader_image_load_store DONE (i965)
GL_ARB_shader_image_size DONE (i965)
- GL_ARB_shader_storage_buffer_object in progress (Iago Toral, Samuel Iglesias)
+ GL_ARB_shader_storage_buffer_object DONE (i965)
GL_ARB_shading_language_packing DONE (all drivers)
GL_ARB_separate_shader_objects DONE (all drivers)
GL_ARB_stencil_texturing DONE (i965/gen8+, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
@@ -223,10 +223,35 @@ GLES3.1, GLSL ES 3.1
GS5 Packing/bitfield/conversion functions DONE (i965, nvc0, r600, radeonsi)
GL_EXT_shader_integer_mix DONE (all drivers that support GLSL)
- Additional functions not covered above:
- glMemoryBarrierByRegion
- glGetTexLevelParameter[fi]v - needs updates to restrict to GLES enums
- glGetBooleani_v - needs updates to restrict to GLES enums
+ Additional functionality not covered above:
+ glMemoryBarrierByRegion DONE
+ glGetTexLevelParameter[fi]v - needs updates DONE
+ glGetBooleani_v - restrict to GLES enums
+ gl_HelperInvocation support
+
+GLES3.2, GLSL ES 3.2
+ GL_EXT_color_buffer_float DONE (all drivers)
+ GL_KHR_blend_equation_advanced not started
+ GL_KHR_debug DONE (all drivers)
+ GL_KHR_robustness 90% done (the ARB variant)
+ GL_KHR_texture_compression_astc_ldr DONE (i965/gen9+)
+ GL_OES_copy_image not started (based on GL_ARB_copy_image, which is done for some drivers)
+ GL_OES_draw_buffers_indexed not started
+ GL_OES_draw_elements_base_vertex not started (based on GL_ARB_draw_elements_base_vertex, which is done for all drivers)
+ GL_OES_geometry_shader not started (based on GL_ARB_geometry_shader4, which is done for all drivers)
+ GL_OES_gpu_shader5 not started (based on parts of GL_ARB_gpu_shader5, which is done for some drivers)
+ GL_OES_primitive_bounding box not started
+ GL_OES_sample_shading not started (based on parts of GL_ARB_sample_shading, which is done for some drivers)
+ GL_OES_sample_variables not started (based on parts of GL_ARB_sample_shading, which is done for some drivers)
+ GL_OES_shader_image_atomic not started (based on parts of GL_ARB_shader_image_load_store, which is done for some drivers)
+ GL_OES_shader_io_blocks not started (based on parts of GLSL 1.50, which is done)
+ GL_OES_shader_multisample_interpolation not started (based on parts of GL_ARB_gpu_shader5, which is done)
+ GL_OES_tessellation_shader not started (based on GL_ARB_tessellation_shader, which is done for some drivers)
+ GL_OES_texture_border_clamp not started (based on GL_ARB_texture_border_clamp, which is done)
+ GL_OES_texture_buffer not started (based on GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_range, and GL_ARB_texture_buffer_object_rgb32 that are all done)
+ GL_OES_texture_cube_map_array not started (based on GL_ARB_texture_cube_map_array, which is done for all drivers)
+ GL_OES_texture_stencil8 not started (based on GL_ARB_texture_stencil8, which is done for some drivers)
+ GL_OES_texture_storage_multisample_2d_array DONE (all drivers that support GL_ARB_texture_multisample)
More info about these features and the work involved can be found at
http://dri.freedesktop.org/wiki/MissingFunctionality
diff --git a/docs/autoconf.html b/docs/autoconf.html
index 2ef8c63dbee..5c29e5ee2c6 100644
--- a/docs/autoconf.html
+++ b/docs/autoconf.html
@@ -87,6 +87,13 @@ created in a lib64 directory at the top of the Mesa source
tree.
+
--sysconfdir=DIR
+
This option specifies the directory where the configuration
+files will be installed. The default is ${prefix}/etc.
+Currently there's only one config file provided when dri drivers are
+enabled - it's drirc.
+
+
--enable-static, --disable-shared
By default, Mesa
will build shared libraries. Either of these options will force static
@@ -217,7 +224,7 @@ GLX.
--with-expat=DIR
DEPRECATED, use PKG_CONFIG_PATH instead.
The DRI-enabled libGL uses expat to
-parse the DRI configuration files in /etc/drirc and
+parse the DRI configuration files in ${sysconfdir}/drirc and
~/.drirc. This option allows a specific expat installation
to be used. For example, --with-expat=/usr/local will
search for expat headers and libraries in /usr/local/include
diff --git a/docs/envvars.html b/docs/envvars.html
index c0d5a51b482..bdfe9991a6c 100644
--- a/docs/envvars.html
+++ b/docs/envvars.html
@@ -153,6 +153,7 @@ See the Xlib software driver page for details.
no16 - suppress generation of 16-wide fragment shaders. useful for debugging broken shaders
blorp - emit messages about the blorp operations (blits & clears)
nodualobj - suppress generation of dual-object geometry shader code
+
optimizer - dump shader assembly to files at each optimization pass and iteration that make progress
+Mesa 11.0.2 is released.
+This is a bug-fix release.
+
+
+
September 26, 2015
+
+Mesa 11.0.1 is released.
+This is a bug-fix release.
+
+
+
September 20, 2015
+
+Mesa 10.6.8 is released.
+This is a bug-fix release.
+
+
+
September 12, 2015
+
+Mesa 11.0.0 is released. This is a new
+development release. See the release notes for more information about
+the release.
+
+
+
September 10, 2015
+
+Mesa 10.6.7 is released.
+This is a bug-fix release.
+
+
+
September 4, 2015
+
+Mesa 10.6.6 is released.
+This is a bug-fix release.
+
+
+
August 22, 2015
Mesa 10.6.5 is released.
This is a bug-fix release.
-
August 11 2015
+
August 11, 2015
Mesa 10.6.4 is released.
This is a bug-fix release.
-
July 26 2015
+
July 26, 2015
Mesa 10.6.3 is released.
This is a bug-fix release.
-
July 11 2015
+
July 11, 2015
Mesa 10.6.2 is released.
This is a bug-fix release.
diff --git a/docs/relnotes.html b/docs/relnotes.html
index 2cc4701d3ff..948d3f790b8 100644
--- a/docs/relnotes.html
+++ b/docs/relnotes.html
@@ -21,6 +21,12 @@ The release notes summarize what's new or changed in each Mesa release.
+Mesa 10.6.6 is a bug fix release which fixes bugs found since the 10.6.5 release.
+
+
+Mesa 10.6.6 implements the OpenGL 3.3 API, but the version reported by
+glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
+glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
+Some drivers don't support all the features required in OpenGL 3.3. OpenGL
+3.3 is only available if requested at context creation
+because compatibility contexts are not supported.
+
+Mesa 10.6.7 is a bug fix release which fixes bugs found since the 10.6.6 release.
+
+
+Mesa 10.6.7 implements the OpenGL 3.3 API, but the version reported by
+glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
+glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
+Some drivers don't support all the features required in OpenGL 3.3. OpenGL
+3.3 is only available if requested at context creation
+because compatibility contexts are not supported.
+
+Mesa 10.6.8 is a bug fix release which fixes bugs found since the 10.6.7 release.
+
+
+Mesa 10.6.8 implements the OpenGL 3.3 API, but the version reported by
+glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
+glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
+Some drivers don't support all the features required in OpenGL 3.3. OpenGL
+3.3 is only available if requested at context creation
+because compatibility contexts are not supported.
+
Removed the EGL loader from the Linux SCons build.
+
+
+
The Mesa 3D Graphics Library
+
+
+
+
+
+
Mesa 11.0.1 Release Notes / September 26, 2015
+
+
+Mesa 11.0.1 is a bug fix release which fixes bugs found since the 11.0.0 release.
+
+
+Mesa 11.0.1 implements the OpenGL 4.1 API, but the version reported by
+glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
+glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
+Some drivers don't support all the features required in OpenGL 4.1. OpenGL
+4.1 is only available if requested at context creation
+because compatibility contexts are not supported.
+