lots of bug fixes; the intent of my update was mostly to fix
problems with i915 and r300 dri drivers and to provide the best environment
possible for the xorg server update to the 1.4 branch.
Morever, many of our patches from pkgsrc, i.e. those removed in this commit,
are now included upstream.
Additionally, MesaDemos now builds.
NOTES:
- MesaLib now requires xf86driproto 2.0.4, as earlier versions install
dri_interface.h, which is not correct.
- glu now exports its symbols via libtool's -export-symfile.
The symfile is generated pre-build--see glu/Makefile.
- glxinfo/glxgears do not seem to need to be linked to libpthread, and this
seems to cause problems on NetBSD with the new drm code. If I am wrong
about this, please let me know. The only program that seems to need
libpthread is glthreads in MesaDemos.
Downgraded graphics/MesaLib to 6.4.2nb3
Downgraded graphics/glu to 6.4.2
Downgraded graphics/glut to 6.4.2
Downgraded graphics/glx-utils to 6.4.2
Downgraded graphics/MesaDemos to 6.4.2
Downgraded graphics/Mesa to 6.4.2
Approved byg agc@.
New features:
* Added a bluegene-osmesa build config
Bug fixes:
* Added a few missing OpenGL 2.0 API entrypoints
* Fixed glDrawPixels(GL_STENCIL_INDEX) pixel transfer
* GLSL bug fix: added vec2(vec4) constructor
* GLSL bug fix: .strq and .rgba writemasks didn't always work
* Stencil pixel map didn't always work for glDrawPixels
* Fixed polygon stipple bug in i915 driver
* Binding a zero-sized texture didn't disable texturing
* Queries of GL_INFO_LOG_LENGTH, GL_SHADER_SOURCE_LENGTH didn't include
the terminating zero
* glXChooseFBConfig() in Xlib driver didn't handle GLX_STEREO flag properly
* Fixed a GLSL function call bug
* glPointParameteriv(GL_DISTANCE_ATTENUATION_EXT) didn't work
* glGetAttribLocation() always returned 1
* Fixed a few memory-related bugs in GLU library
Changes 7.0.0:
New features:
* OpenGL 2.0 and 2.1 API support.
Bug fixes:
* Fixed a few fog-related bugs.
* Fixed broken GLSL mix() function.
* Fixed broken GLSL exp() functions.
* Fixed GLSL mod4(vec4, vec4) bug.
* Implemented GLSL asin(), acos(), atan() functions.
* Fixed an R300 driver bug that caused Xorg composite manager to crash
* Fixed R300 vertex program/matrix bug
* GLSL dFdx() and dFdy() work for fragment program inputs now (texcoords)
* Specifying an invalid texture unit as a sampler could lead to a crash
* The GLX protocol request for glXDestroyPBuffer() was incorrect
* ARB vp state.light[n].half value was incorrect
* Fixed a positional light source bug
* Fixed point size attenuation problem
* glPopAttrib didn't restore texture object's LOD bias
* Fixed a TLS / TEXTREL problem
or USE_X11BASE set, but don't include mk/x11.buildlink3.mk directly or
via buildlink3.mks
- introduce BUILDLINK_PREFIX.libXpm as alias for BUILDLINK_PREFIX.xpm
in the !modular case
- fix some cases where the check for libX11 couldn't work at all by using
C++ for compilation without including the proper headers
Verified using a full X11_TYPE=xorg bulk build without additional
breakage. Discussed with salo@, wiz@ and send to packages@ for feedback.
The latter is used by packages that build libraries from the Mesa
sources, while the former is only if the package builds from the Mesa
sources. Modify the various Mesa packages to include the proper
Makefile, and add some documentation to the Makefiles.
As a side effect, this suppresses the "duplicate target" warning in
graphics/glx-utils that was caused by having the same distfile listed
in DISTFILES more than once.
New:
- added OSMesaColorClamp() function/feature
- added wglGetExtensionStringARB() function
Bug fixes:
- fixed some problems when building on Windows
- GLw header files weren't installed by installmesa script (bug 5396)
- GL/glfbdev.h file was missing from tarballs
- fixed TNL initialization bug which could lead to crash (bug 5791)
New:
- Added a fast XOR line drawing function in Xlib driver
- Added support for GL_ARB_texture_mirrored_repeat to savage
driver (supported only on Savage4 hardware).
Changes:
- Mesa now packaged in three parts: Library, Demos and GLUT
Bug fixes:
- GLX_X_RENDERABLE token wasn't accepted by glXChooseFBConfig
- Some files were present multiple times in the 6.3.2 tarballs
- r200_vtxtmp_x86.S file was missing from 6.3.2 tarball (bug 4207)
- glxgears_fbconfig demo didn't work (bug 4237)
- fixed bug when bilinear sampling 2d textures with borders
- glXCreatePbuffer() could segfault instead of returning 0 (bug 4235)
- fixed undefined frexp and rand in X.org libGLcore.a (bug 4242)
- fixed a few problems with proxy color tables (bug 4270)
- fixed precision problem in Z clearing (bug 4395)
- glBitmap, glDraw/CopyPixels mistakenly generated selection hits
- fixed potential segfault caused by reading pixels outside
of renderbuffer bounds
- glGetTexLevelParameter didn't accept GL_TEXTURE_DEPTH_SIZE_ARB
- fixed memory corruption bug involving software alpha buffers
- glReadPixels clipped by window bounds was sometimes broken
- glDraw/CopyPixels of stencil data ignored the stencil write mask
- glReadPixels from a texture bound to a framebuffer object didn't work
- glIsRender/FramebufferEXT weren't totally correct
- fixed a number of point size attenuation/fade bugs
- fixed glFogCoord bug 4729
- GLX encoding for transpose matrix functions was broken
- fixed broken fragment program KIL and SWZ instructions
- fragment programs that wrote result.depth.z didn't work
Changes 6.4.1:
Bug fixes:
- redefining a vertex program string didn't take effect in TNL module
- fixed occasional segfault upon vertex/fragment parsing error
- vertex program LIT instruction didn't handle 0^0=1 correctly
- fragment program fog option didn't work with glDrawPixels, glBitmap
- USE_MGL_NAMESPACE didn't work for x86-64
- OSMesa demos were missing from previous release tarballs
- fixed problem with float->ushort conversion in glClear (bug 4992)
- popping of GL_EYE_PLANE texgen state was broken (bug 4996)
- popping of GL_SPOT_DIRECTION light state was broken (bug 5005)
- fixed occasional triangle color interpolation problem on VMS
- work around invalid free() call (bug 5131)
- fixed BSD X server compilation problem by including stdint.h
Bug fixes:
- don't apply regular fog or color sum when using a fragment program
- glProgramEnvParameter4fARB always generated an error on
GL_FRAGMENT_PROGRAM_ARB (fdo bug 1645)
- glVertexAttrib3svNV and glVertexAttrib3svARB were broken
- fixed width/height mix-up in glSeparableFilter2D()
- fixed regression in glCopyPixels + convolution
- glReadPixels from a clipped front color buffer didn't always work
- glTexImage didn't accept GL_RED/GREEN/BLUE as the format
- Attempting queries/accesses of VBO 0 weren't detected as errors
- paletted textures failed if the palette had fewer that 256 entries
Changes:
- fixed a bunch of compiler warnings found with gcc 3.4
- bug reports should to go bugzilla.freedesktop.org
New:
- enabled GL_ARB_texture_rectangle (same as GL_NV_texture_rectangle)
- updated Doxygen support (Jose Fonseca)
Changes:
- some GGI driver updates (Christoph Egger, bug 1025977)
Bug fixes:
- Omit GL_ARB_texture_non_power_of_two from list of OpenGL 1.5 features
- fixed a few compilation issues on IRIX
- fixed a matrix classification bug (reported by Wes Bethel)
- we weren't reseting the vertex/fragment program error state
before parsing (Dave Reveman)
- adjust texcoords for sampling texture rectangles (Dave Reveman)
- glGet*(GL_MAX_VERTEX_ATTRIBS_ARB) wasn't implemented
- repeated calls to glDeleteTexture(t) could lead to a crash
- fixed potential ref count bugs in VBOs and vertex/fragment programs
- spriteblast demo didn't handle window size changes correctly
- glTexSubImage didn't handle pixels=NULL correctly for PBOs
- fixed color index mode glDrawPixels bug (Karl Schultz)
Changes 6.1:
New:
- Revamped Makefile system
- glXUseRotatedXFont() utility (see xdemos/xuserotfont.c)
- internal driver interface changes related to texture object
allocation, vertex/fragment programs, BlendEquationSeparate, etc.
- option to walk triangle edges with double-precision floats
(Justin Novosad of Discreet) (see config.h file)
- support for AUX buffers in software GLX driver
- updated glext.h to version 24 and glxext.h to version 6
- new MESA_GLX_FORCE_ALPHA and MESA_GLX_DEPTH_BITS env vars
- updated BeOS support (Philippe Houdoin)
Changes:
- fragment fog interpolation is perspective corrected now
- new glTexImage code, much cleaner, may be a bit faster
Bug fixes:
- glArrayElement in display lists didn't handle generic vertex attribs
- glFogCoord didn't always work properly
- ARB_fragment_program fog options didn't work
- frag prog TEX instruction no longer incorrectly divides s,t,r by q
- ARB frag prog TEX and TEXP instructions now use LOD=0
- glTexEnviv in display lists didn't work
- glRasterPos didn't do texgen or apply texture matrix
- GL_DOUBLE-valued vertex arrays were broken in some cases
- fixed texture rectangle edge/border sampling bugs
- sampling an incomplete texture in a fragment program would segfault
- glTexImage was missing a few error checks
- fixed some minor glGetTexParameter glitches
- GL_INTENSITY was mistakenly accepted as a to glTexImage
- fragment program writes to RC/HC register were broken
- fixed a few glitches in GL_HP_occlusion_test extension
- glBeginQueryARB and glEndQueryARB didn't work inside display lists
- vertex program state references were broken
- fixed triangle color interpolation bug on AIX (Shane Blackett)
- fixed a number of minor memory leaks (bug #1002030)
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
New:
- upgraded glext.h to version 22
- new build targets (Dan Schikore)
- new linux-x86-opteron build target (Heath Feather)
Bug fixes:
- glBindProgramARB didn't update all necessary state
- fixed build problems on OpenBSD
- omit CVS directories from tarballs
- glGetTexImage(GL_COLOR_INDEX) was broken
- fixed an infinite loop in t&l module
- silenced some valgrind warnings about using unitialized memory
- fixed some compilation/link glitches on IRIX (Mike Stephens)
- glBindProgram wasn't getting compiled into display lists
- GLX_FBCONFIG_ID wasn't recognized in glXChooseFBConfig() (bug 888079)
- two-sided lighting and vertex program didn't work (bug 887330)
- stores to program parameter registers in vertex state programs
didn't work.
- fixed glOrtho bug found with gcc 3.2.2 (RH9)
- glXCreateWindow() wasn't fully implemented (bug 890894)
- generic vertex attribute arrays didn't work in display lists
- vertex buffer objects' default usage and access fields were wrong
- glDrawArrays with start!=0 was broken
- fragment program PK2H, UP2H, UP4B and UP4UB instructions were broken
- linux-osmesa16-static config didn't work
- fixed a few color index rendering problems (bug 910687)
- glInterleavedArrays didn't respect GL_CLIENT_ACTIVE_TEXTURE
- OSMesa RGB and BGR modes were broken
- glProgramStringARB mistakenly required a null-terminated string
- fragment program XPD instruction was incorrect
- glGetMaterial() didn't work reliably
values that MesaLib/buildlink3.mk converts into a single _MESA_REQD that
is the highest version required. If including the Mesa/buildlink3.mk
file, then require the same version of Mesa as required by glut.
Changes since 5.2:
New:
- full OpenGL 1.5 support
- updated GL/glext.h file to version 21
Changes:
- changed max framebuffer size to 4Kx4K (MAX_WIDTH/HEIGHT in config.h)
Bug fixes:
- fixed bug in UNCLAMPED_FLOAT_TO_UBYTE macro; solves a color
clamping issue
- updated suno5-gcc configs
- glColor3 functions sometimes resulted in undefined alpha values
- fixed FP divide by zero error seen on VMS with xlockmore, others
- fixed vertex/fragment program debug problem (bug 873011)
- building on AIX with gcc works now
- glDeleteProgramsARB failed for ARB fragment programs (bug 876160)
- glDrawRangeElements tried to modify potentially read-only storage
- updated files for building on Windows
Changes since 5.0.2:
New features:
- reorganized directory tree
- GL_ARB_vertex/fragment_program extensions (Michal Krol & Karl Rasche)
- GL_ATI_texture_env_combine3 extension (Ian Romanick)
- GL_SGI_texture_color_table extension (Eric Plante)
- GL_NV_fragment_program extension
- GL_NV_light_max_exponent extension
- GL_EXT_texture_rectangle (identical to GL_NV_texture_rectangle)
- GL_ARB_occlusion_query extension
- GL_ARB_point_sprite extension
- GL_ARB_texture_non_power_of_two extension
- GL_IBM_multimode_draw_arrays extension
- GL_EXT_texture_mirror_clamp extension (Ian Romanick)
- GL_ARB_vertex_buffer_object extension
- new X86 feature detection code (Petr Sebor)
- less memory used for display lists and vertex buffers
- demo of per-pixel lighting with a fragment program (demos/fplight.c)
- new version (18) of glext.h header
- new spriteblast.c demo of GL_ARB_point_sprite
- faster glDrawPixels in X11 driver in some cases (see RELNOTES-5.1)
- faster glCopyPixels in X11 driver in some cases (see RELNOTES-5.1)
Bug fixes:
- really enable OpenGL 1.4 features in DOS driver.
- fixed issues in glDrawPixels and glCopyPixels for very wide images
- glPixelMapf/ui/usv()'s size parameter is GLsizei, not GLint
- fixed some texgen bugs reported by Daniel Borca
- fixed wglMakeCurrent(NULL, NULL) bug (#835861)
- fixed glTexSubImage3D z-offset bug (Cedric Gautier)
- fixed RGBA blend enable bug (Ville Syrjala)
- glAccum is supposed to be a no-op in selection/feedback mode
- fixed texgen bug #597589 (John Popplewell)
Changes:
- dropped API trace feature (src/Trace/)
- documentation overhaul. merged with website content. more html.
- glxgears.c demo updated to use GLX swap rate extensions
- glTexImage1/2/3D now allows width/height/depth = 0
- disable SPARC asm code on Linux (bug 852204)
without a version bump. Changes made, according to the website, for
libtool/autofoo fixes.
Some changes from Ron Roskens:
glut depends upon graphics/glu (otherwise its linked against X11R6 libs)
MesaDemos:
rather than using the pre-built distribution makefiles,
use the automake/configure built makefiles which have
the build dependencies all setup.
This closes PR pkg/23476.
- fixed texgen problem causing texcoord's Q to be zero (stex3d)
- default GL_TEXTURE_COMPARE_MODE_ARB was wrong
- GL_CURRENT_MATRIX_NV query was wrong
- GL_CURRENT_MATRIX_STACK_DEPTH_NV query was off by one
- GL_LIST_MODE query wasn't correct
- GL_FOG_COORDINATE_SOURCE_EXT query wasn't supported
- GL_SECONDARY_COLOR_ARRAY_SIZE_EXT query returned wrong value
- blended, wide lines didn't always work correctly
- glVertexAttrib4svNV w component was always 1
- fixed bug in GL_IBM_rasterpos_clip (missing return)
- GL_DEPTH_TEXTURE_MODE = GL_ALPHA didn't work correctly
- a few Solaris compilation fixes
- fixed glClear() problem for DRI drivers (non-existant stencil, etc)
- fixed int/REAL mixup in GLU NURBS curve evaluator (Eric Cazeaux)
- fixed delete [] bug in SI GLU (bug 721765) (Diego Santa Cruz)
- glFog() didn't clamp fog colors
- fixed bad float/int conversion for GL_TEXTURE_PRIORITY in the
gl[Get]TexParameteri[v] functions
- fixed invalid memory references in glTexGen functions (bug 781602)
- integer-valued color arrays weren't handled correctly
- glDrawPixels(GL_DEPTH_COMPONENT) with glPixelZoom didn't work
- GL_EXT_texture_lod_bias is part of 1.4, overlooked in 5.0.1
- build GLUT with -fexceptions so C++ apps propogate exceptions
While here, fix PR pkg/23003 by moving the version number to version.mk
and including that in the buildlink.
on tech-pkg@ at various times. This means that regardless of what kind of
GL support comes with X11, if a package depends on GL, Mesa 5.0.1 (or higher)
will be installed into ${LOCALBASE}.
Some troubleshooting after the latest patches by Krister Walfridsson.
mostly a bugfix release
other changes:
- updated GL/gl_mangle.h file
- use glPolygonOffset in gloss demo to avoid z-fighting artifacts
- updated winpos and pointblast demos to use ARB extensions
- disable SPARC normal transformation code
At the same time, move Mesa and friends to LOCALBASE rather than X11BASE, so
that they can be installed regardless of XF version. Introduce MESA_REQD variable
that can be set to 5.0, thus allowing systems with XF4 to indicate that the
provided version is not good enough.
All packages using Mesa, MesaLib, glu or glut will get a PKGREVISION bump
over the next few days.
MesaLib is a 3-D graphics library with an API which is very similar to that of
OpenGL*. This package provides examples and demos of Mesa's capabilities,
among them the examples from the ``Red Book'' (_OpenGL Programming Guide_,
published by Addison-Wesley; ISBN 0-201-63274-8).