New upstream version 3.5.99.27

This commit is contained in:
geos_one
2025-08-08 20:00:36 +02:00
commit bc8d10cc33
4267 changed files with 1757978 additions and 0 deletions

View File

@@ -0,0 +1,52 @@
#include <Server.tmpl>
#define NeedAllMesaSrc
#define MesaInXServer
#define MesaBuildDir ../main/
#define MesaACBuildDir ../array_cache/
#define MesaMathBuildDir ../math/
#define MesaSwrastBuildDir ../swrast/
#define MesaSwrastSetupBuildDir ../swrast_setup/
#define MesaTnlBuildDir ../tnl/
#define MesaShaderBuildDir ../shader/
#define MesaGrammarBuildDir ../shader/grammar/
#define MesaSlangBuildDir ../shader/slang/
#define MesaXBuildDir ../X/
#include "../array_cache/Imakefile.inc"
#include "../swrast/Imakefile.inc"
#include "../swrast_setup/Imakefile.inc"
#include "../tnl/Imakefile.inc"
#include "../main/Imakefile.inc"
#include "../math/Imakefile.inc"
#include "../shader/Imakefile.inc"
#include "../shader/grammar/Imakefile.inc"
#include "../shader/slang/Imakefile.inc"
#include "../X/Imakefile.inc"
#include "../Imakefile.inc"
XOBJS = ../X/?*.o
OBJS = $(COREMESAOBJS) $(MOBJS)
DONES = ../main/DONE ../X/DONE ../array_cache/DONE \
../math/DONE ../swrast/DONE ../swrast_setup/DONE \
../tnl/DONE ../shader/DONE ../shader/grammar/DONE \
../shader/slang/DONE
INCLUDES = -I$(INCLUDESRC) -I$(XINCLUDESRC) -I$(EXTINCSRC) \
-I$(MESASRCDIR)/include \
-I$(MESASRCDIR)/src/mesa \
-I$(SERVERSRC)/include
DEFINES = $(GLX_DEFINES)
NormalDepLibraryTarget(GLcore, $(DONES) $(OBJS), $(OBJS) $(XOBJS))
NormalLibraryObjectRule()
InstallDriverSDKLibraryModule(GLcore,$(DRIVERSDKMODULEDIR),extensions)
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif

View File

@@ -0,0 +1,26 @@
#define IHaveSubdirs
SUBDIRS = main math array_cache swrast swrast_setup tnl shader X GLcore $(MODSUBDIR)
#include <Server.tmpl>
#define NeedAllMesaSrc
#define NeedToLinkMesaSrc
#define MesaBuildDir /**/
#include "Imakefile.inc"
INCLUDES = -I$(INCLUDESRC) -I$(XINCLUDESRC) -I$(EXTINCSRC) \
-I$(MESASRCDIR)/include -I$(GLXLIBSRC)/include \
-I$(MESASRCDIR)/src/mesa \
-I$(SERVERSRC)/include
DEFINES = $(GLX_DEFINES)
NormalLibraryObjectRule()
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif
DependTarget()

View File

@@ -0,0 +1,51 @@
MESABUILDDIR = MesaBuildDir
COREMESASRCS = $(COREMESABASESRCS) \
$(MESA_AC_SRCS) \
$(MESA_MATH_SRCS) \
$(MESA_SWRAST_SRCS) \
$(MESA_SWR_SETUP_SRCS) \
$(MESA_TNL_SRCS) \
$(MESA_SHADER_SRCS) \
$(MESA_GRAMMAR_SRCS) \
$(MESA_SLANG_SRCS)
COREMESAOBJS = $(COREMESABASEOBJS) \
$(MESA_AC_OBJS) \
$(MESA_MATH_OBJS) \
$(MESA_SWRAST_OBJS) \
$(MESA_SWR_SETUP_OBJS) \
$(MESA_TNL_OBJS) \
$(MESA_SHADER_OBJS) \
$(MESA_GRAMMAR_OBJS) \
$(MESA_SLANG_OBJS)
COREMESAUOBJS = $(COREMESABASEUOBJS) \
$(MESA_AC_UOBJS) \
$(MESA_MATH_UOBJS) \
$(MESA_SWRAST_UOBJS) \
$(MESA_SWR_SETUP_UOBJS) \
$(MESA_TNL_UOBJS) \
$(MESA_SHADER_UOBJS) \
$(MESA_GRAMMAR_UOBJS) \
$(MESA_SLANG_UOBJS)
COREMESADOBJS = $(COREMESABASEDOBJS) \
$(MESA_AC_DOBJS) \
$(MESA_MATH_DOBJS) \
$(MESA_SWRAST_DOBJS) \
$(MESA_SWR_SETUP_DOBJS) \
$(MESA_TNL_DOBJS) \
$(MESA_SHADER_DOBJS) \
$(MESA_GRAMMAR_DOBJS) \
$(MESA_SLANG_DOBJS)
COREMESAPOBJS = $(COREMESABASEPOBJS) \
$(MESA_AC_POBJS) \
$(MESA_MATH_POBJS) \
$(MESA_SWRAST_POBJS) \
$(MESA_SWR_SETUP_POBJS) \
$(MESA_TNL_POBJS) \
$(MESA_SHADER_POBJS) \
$(MESA_GRAMMAR_POBJS) \
$(MESA_SLANG_POBJS)

View File

@@ -0,0 +1,63 @@
#include <Server.tmpl>
#define NeedAllMesaSrc
#define NeedToLinkMesaSrc
#define MesaXBuildDir /**/
#define MesaInXServer
#include "Imakefile.inc"
LinkSourceFile(compsize.c,$(MESASRCDIR)/src/glx/x11)
DRIVER_SRCS = $(XMESA_SRCS)
DRIVER_OBJS = $(XMESA_OBJS)
COMMON_SRCS = driverfuncs.c
COMMON_OBJS = driverfuncs.o
GLX_SRCS = xf86glx.c xf86glx_util.c compsize.c
GLX_OBJS = xf86glx.o xf86glx_util.o compsize.o
SRCS = $(DRIVER_SRCS) $(GLX_SRCS) $(COMMON_SRCS)
OBJS = $(DRIVER_OBJS) $(GLX_OBJS) $(COMMON_OBJS)
INCLUDES = -I$(SERVERSRC)/GL/mesa/X -I$(XINCLUDESRC) \
-I$(EXTINCSRC) \
-I$(MESASRCDIR)/src/mesa \
-I$(MESASRCDIR)/src/mesa/main \
-I$(MESASRCDIR)/src/mesa/glapi \
-I$(MESASRCDIR)/src/mesa/shader \
-I$(MESASRCDIR)/src -I$(MESASRCDIR)/src/mesa/drivers/x11 \
-I$(MESASRCDIR)/include \
-I$(LIBSRC)/GL/glx -I$(LIBSRC)/GL/include \
-I$(SERVERSRC)/include -I$(SERVERSRC)/GL/include \
-I$(SERVERSRC)/GL/glx \
-I$(XF86OSSRC) \
-I$(DRMSRCDIR)/shared-core \
`pkg-config --cflags-only-I pixman-1`
DEFINES = $(GLX_DEFINES) $(GLXSRV_DEFINES) -DNXAGENT_SERVER /*-DUSE_X86_ASM*/ /*-DUSE_SPARC_ASM*/
NormalLibraryObjectRule()
SubdirLibraryRule($(OBJS))
NormalLintTarget($(SRCS))
DependTarget()
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif
#ifndef MesaDrvSrcDir
#define MesaDrvSrcDir $(MESASRCDIR)/src/mesa/drivers/dri
#endif
MESADRVSRCDIR = MesaDrvSrcDir
LinkSourceFile(driverfuncs.c, $(MESADRVSRCDIR)/../common)
LinkSourceFile(driverfuncs.h, $(MESADRVSRCDIR)/../common)

View File

@@ -0,0 +1,98 @@
MESAXBUILDDIR = MesaXBuildDir
#ifndef MesaInXServer
XMESA_GLX_SRCS = $(MESAXBUILDDIR)fakeglx.c \
$(MESAXBUILDDIR)glxapi.c \
$(MESAXBUILDDIR)realglx.c \
$(MESAXBUILDDIR)xfonts.c
#endif
XMESA_SRCS = $(XMESA_GLX_SRCS) \
$(MESAXBUILDDIR)xm_api.c \
$(MESAXBUILDDIR)xm_buffer.c \
$(MESAXBUILDDIR)xm_dd.c \
$(MESAXBUILDDIR)xm_line.c \
$(MESAXBUILDDIR)xm_span.c \
$(MESAXBUILDDIR)xm_tri.c
#ifdef NeedToLinkMesaSrc
#ifndef MesaInXServer
LinkSourceFile(fakeglx.c, $(MESASRCDIR)/src/mesa/drivers/x11)
LinkSourceFile(glxapi.c, $(MESASRCDIR)/src/mesa/drivers/x11)
LinkSourceFile(glxapi.h, $(MESASRCDIR)/src/mesa/drivers/x11)
LinkSourceFile(realglx.c, $(MESASRCDIR)/src/mesa/drivers/x11)
LinkSourceFile(xfonts.c, $(MESASRCDIR)/src/mesa/drivers/x11)
#endif
LinkSourceFile(xm_api.c, $(MESASRCDIR)/src/mesa/drivers/x11)
LinkSourceFile(xm_buffer.c, $(MESASRCDIR)/src/mesa/drivers/x11)
LinkSourceFile(xm_dd.c, $(MESASRCDIR)/src/mesa/drivers/x11)
LinkSourceFile(xm_line.c, $(MESASRCDIR)/src/mesa/drivers/x11)
LinkSourceFile(xm_span.c, $(MESASRCDIR)/src/mesa/drivers/x11)
LinkSourceFile(xm_tri.c, $(MESASRCDIR)/src/mesa/drivers/x11)
#endif
#ifndef MesaInXServer
XMESA_GLX_OBJS = $(MESAXBUILDDIR)fakeglx.o \
$(MESAXBUILDDIR)glxapi.o \
$(MESAXBUILDDIR)realglx.o \
$(MESAXBUILDDIR)xfonts.o
#endif
XMESA_OBJS = $(XMESA_GLX_OBJS) \
$(MESAXBUILDDIR)xm_api.o \
$(MESAXBUILDDIR)xm_buffer.o \
$(MESAXBUILDDIR)xm_dd.o \
$(MESAXBUILDDIR)xm_line.o \
$(MESAXBUILDDIR)xm_span.o \
$(MESAXBUILDDIR)xm_tri.o
#if defined(DoSharedLib) && DoSharedLib
#ifndef MesaInXServer
XMESA_GLX_UOBJS = $(MESAXBUILDDIR)unshared/fakeglx.o \
$(MESAXBUILDDIR)unshared/glxapi.o \
$(MESAXBUILDDIR)unshared/realglx.o \
$(MESAXBUILDDIR)unshared/xfonts.o
#endif
XMESA_UOBJS = $(XMESA_GLX_UOBJS) \
$(MESAXBUILDDIR)unshared/xm_api.o \
$(MESAXBUILDDIR)unshared/xm_buffer.o \
$(MESAXBUILDDIR)unshared/xm_dd.o \
$(MESAXBUILDDIR)unshared/xm_line.o \
$(MESAXBUILDDIR)unshared/xm_span.o \
$(MESAXBUILDDIR)unshared/xm_tri.o
#else
XMESA_GLX_UOBJS = $(XMESA_GLX_OBJS)
XMESA_UOBJS = $(XMESA_OBJS)
#endif
#ifndef MesaInXServer
XMESA_GLX_DOBJS = $(MESAXBUILDDIR)debugger/fakeglx.o \
$(MESAXBUILDDIR)debugger/glxapi.o \
$(MESAXBUILDDIR)debugger/realglx.o \
$(MESAXBUILDDIR)debugger/xfonts.o
#endif
XMESA_DOBJS = $(XMESA_GLX_DOBJS) \
$(MESAXBUILDDIR)debugger/xm_api.o \
$(MESAXBUILDDIR)debugger/xm_buffer.o \
$(MESAXBUILDDIR)debugger/xm_dd.o \
$(MESAXBUILDDIR)debugger/xm_line.o \
$(MESAXBUILDDIR)debugger/xm_span.o \
$(MESAXBUILDDIR)debugger/xm_tri.o
#ifndef MesaInXServer
XMESA_GLX_POBJS = $(MESAXBUILDDIR)profiled/fakeglx.o \
$(MESAXBUILDDIR)profiled/glxapi.o \
$(MESAXBUILDDIR)profiled/realglx.o \
$(MESAXBUILDDIR)profiled/xfonts.o
#endif
XMESA_POBJS = $(XMESA_GLX_POBJS) \
$(MESAXBUILDDIR)profiled/xm_api.o \
$(MESAXBUILDDIR)profiled/xm_buffer.o \
$(MESAXBUILDDIR)profiled/xm_dd.o \
$(MESAXBUILDDIR)profiled/xm_line.o \
$(MESAXBUILDDIR)profiled/xm_span.o \
$(MESAXBUILDDIR)profiled/xm_tri.o

View File

@@ -0,0 +1,950 @@
/**************************************************************************
Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sub license, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice (including the
next paragraph) shall be included in all copies or substantial portions
of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
**************************************************************************/
/*
* Authors:
* Kevin E. Martin <kevin@precisioninsight.com>
* Brian E. Paul <brian@precisioninsight.com>
*
*/
#ifdef HAVE_DIX_CONFIG_H
#include <dix-config.h>
#endif
#include <regionstr.h>
#include <resource.h>
#include <GL/gl.h>
#include <GL/glxint.h>
#include <GL/glxtokens.h>
#include <scrnintstr.h>
#include <config.h>
#include <glxserver.h>
#include <glxscreens.h>
#include <glxdrawable.h>
#include <glxcontext.h>
#include <glxext.h>
#include <glxutil.h>
#include "xf86glxint.h"
#include "context.h"
#include "xmesaP.h"
#include "context.h"
/*
* This define is for the glcore.h header file.
* If you add it here, then make sure you also add it in
* ../../../glx/Imakefile.
*/
#if 0
#define DEBUG
#include <GL/internal/glcore.h>
#undef DEBUG
#else
#include <GL/internal/glcore.h>
#endif
#include "glcontextmodes.h"
#ifdef NXAGENT_SERVER
#include "../main/WSDrawBuffer.h"
#endif
/*
* This structure is statically allocated in the __glXScreens[]
* structure. This struct is not used anywhere other than in
* __glXScreenInit to initialize each of the active screens
* (__glXActiveScreens[]). Several of the fields must be initialized by
* the screenProbe routine before they are copied to the active screens
* struct. In particular, the contextCreate, pGlxVisual, numVisuals,
* and numUsableVisuals fields must be initialized.
*/
static __GLXscreenInfo __glDDXScreenInfo = {
__MESA_screenProbe, /* Must be generic and handle all screens */
__MESA_createContext, /* Substitute screen's createContext routine */
__MESA_createBuffer, /* Substitute screen's createBuffer routine */
NULL, /* Set up modes in probe */
NULL, /* Set up pVisualPriv in probe */
0, /* Set up numVisuals in probe */
0, /* Set up numUsableVisuals in probe */
NULL, /* GLextensions is overwritten by __glXScreenInit */
"Vendor String", /* GLXvendor is overwritten by __glXScreenInit */
"Version String", /* GLXversion is overwritten by __glXScreenInit */
"Extensions String", /* GLXextensions is overwritten by __glXScreenInit */
NULL /* WrappedPositionWindow is overwritten */
};
#ifdef NXAGENT_SERVER
WSDrawBufferPtr pWSDrawBuffer = NULL;
void AddWSDrawBuffer(GLframebuffer *mesa_buffer)
{
WSDrawBufferPtr prevWSDB;
WSDrawBufferPtr newWSDB;
WSDrawBufferPtr p;
prevWSDB = NULL;
newWSDB = NULL;
p = pWSDrawBuffer;
while (p != NULL) {
prevWSDB = p;
if (prevWSDB -> DrawBuffer == mesa_buffer) {
return;
}
p = p -> next;
}
newWSDB = malloc(sizeof(WSDrawBufferRec));
newWSDB -> DrawBuffer = mesa_buffer;
newWSDB -> next = NULL;
if (pWSDrawBuffer == NULL)
pWSDrawBuffer = newWSDB;
else
prevWSDB -> next = newWSDB;
}
#endif
void *__glXglDDXScreenInfo(void) {
return &__glDDXScreenInfo;
}
static __GLXextensionInfo __glDDXExtensionInfo = {
GL_CORE_MESA,
__MESA_resetExtension,
__MESA_initVisuals,
__MESA_setVisualConfigs
};
void *__glXglDDXExtensionInfo(void) {
return &__glDDXExtensionInfo;
}
static __MESA_screen MESAScreens[MAXSCREENS];
static __GLcontext *MESA_CC = NULL;
static int numConfigs = 0;
static __GLXvisualConfig *visualConfigs = NULL;
static void **visualPrivates = NULL;
static int count_bits(unsigned int n)
{
int bits = 0;
while (n > 0) {
if (n & 1) bits++;
n >>= 1;
}
return bits;
}
static XMesaVisual find_mesa_visual(int screen, VisualID vid)
{
__MESA_screen * const pMScr = &MESAScreens[screen];
const __GLcontextModes *modes;
unsigned i = 0;
for ( modes = pMScr->modes ; modes != NULL ; modes = modes->next ) {
if ( modes->visualID == vid ) {
break;
}
i++;
}
return (modes != NULL) ? pMScr->xm_vis[i] : NULL;
}
/*
* In the case the driver defines no GLX visuals we'll use these.
* Note that for TrueColor and DirectColor visuals, bufferSize is the
* sum of redSize, greenSize, blueSize and alphaSize, which may be larger
* than the nplanes/rootDepth of the server's X11 visuals
*/
#define NUM_FALLBACK_CONFIGS 5
static __GLXvisualConfig FallbackConfigs[NUM_FALLBACK_CONFIGS] = {
/* [0] = RGB, double buffered, Z */
{
-1, /* vid */
-1, /* class */
True, /* rgba */
-1, -1, -1, 0, /* rgba sizes */
-1, -1, -1, 0, /* rgba masks */
0, 0, 0, 0, /* rgba accum sizes */
True, /* doubleBuffer */
False, /* stereo */
-1, /* bufferSize */
16, /* depthSize */
0, /* stencilSize */
0, /* auxBuffers */
0, /* level */
GLX_NONE, /* visualRating */
GLX_NONE, /* transparentPixel */
0, 0, 0, 0, /* transparent rgba color (floats scaled to ints) */
0 /* transparentIndex */
},
/* [1] = RGB, double buffered, Z, stencil, accum */
{
-1, /* vid */
-1, /* class */
True, /* rgba */
-1, -1, -1, 0, /* rgba sizes */
-1, -1, -1, 0, /* rgba masks */
16, 16, 16, 0, /* rgba accum sizes */
True, /* doubleBuffer */
False, /* stereo */
-1, /* bufferSize */
16, /* depthSize */
8, /* stencilSize */
0, /* auxBuffers */
0, /* level */
GLX_NONE, /* visualRating */
GLX_NONE, /* transparentPixel */
0, 0, 0, 0, /* transparent rgba color (floats scaled to ints) */
0 /* transparentIndex */
},
/* [2] = RGB+Alpha, double buffered, Z, stencil, accum */
{
-1, /* vid */
-1, /* class */
True, /* rgba */
-1, -1, -1, 8, /* rgba sizes */
-1, -1, -1, -1, /* rgba masks */
16, 16, 16, 16, /* rgba accum sizes */
True, /* doubleBuffer */
False, /* stereo */
-1, /* bufferSize */
16, /* depthSize */
8, /* stencilSize */
0, /* auxBuffers */
0, /* level */
GLX_NONE, /* visualRating */
GLX_NONE, /* transparentPixel */
0, 0, 0, 0, /* transparent rgba color (floats scaled to ints) */
0 /* transparentIndex */
},
/* [3] = RGB+Alpha, single buffered, Z, stencil, accum */
{
-1, /* vid */
-1, /* class */
True, /* rgba */
-1, -1, -1, 8, /* rgba sizes */
-1, -1, -1, -1, /* rgba masks */
16, 16, 16, 16, /* rgba accum sizes */
False, /* doubleBuffer */
False, /* stereo */
-1, /* bufferSize */
16, /* depthSize */
8, /* stencilSize */
0, /* auxBuffers */
0, /* level */
GLX_NONE, /* visualRating */
GLX_NONE, /* transparentPixel */
0, 0, 0, 0, /* transparent rgba color (floats scaled to ints) */
0 /* transparentIndex */
},
/* [4] = CI, double buffered, Z */
{
-1, /* vid */
-1, /* class */
False, /* rgba? (false = color index) */
-1, -1, -1, 0, /* rgba sizes */
-1, -1, -1, 0, /* rgba masks */
0, 0, 0, 0, /* rgba accum sizes */
True, /* doubleBuffer */
False, /* stereo */
-1, /* bufferSize */
16, /* depthSize */
0, /* stencilSize */
0, /* auxBuffers */
0, /* level */
GLX_NONE, /* visualRating */
GLX_NONE, /* transparentPixel */
0, 0, 0, 0, /* transparent rgba color (floats scaled to ints) */
0 /* transparentIndex */
},
};
static Bool init_visuals(int *nvisualp, VisualPtr *visualp,
VisualID *defaultVisp,
int ndepth, DepthPtr pdepth,
int rootDepth)
{
int numRGBconfigs;
int numCIconfigs;
int numVisuals = *nvisualp;
int numNewVisuals;
int numNewConfigs;
VisualPtr pVisual = *visualp;
VisualPtr pVisualNew = NULL;
VisualID *orig_vid = NULL;
__GLcontextModes *modes;
__GLXvisualConfig *pNewVisualConfigs = NULL;
void **glXVisualPriv;
void **pNewVisualPriv;
int found_default;
int i, j, k;
if (numConfigs > 0)
numNewConfigs = numConfigs;
else
numNewConfigs = NUM_FALLBACK_CONFIGS;
/* Alloc space for the list of new GLX visuals */
pNewVisualConfigs = (__GLXvisualConfig *)
malloc(numNewConfigs * sizeof(__GLXvisualConfig));
if (!pNewVisualConfigs) {
return FALSE;
}
/* Alloc space for the list of new GLX visual privates */
pNewVisualPriv = (void **) malloc(numNewConfigs * sizeof(void *));
if (!pNewVisualPriv) {
free(pNewVisualConfigs);
return FALSE;
}
/*
** If SetVisualConfigs was not called, then use default GLX
** visual configs.
*/
if (numConfigs == 0) {
memcpy(pNewVisualConfigs, FallbackConfigs,
NUM_FALLBACK_CONFIGS * sizeof(__GLXvisualConfig));
memset(pNewVisualPriv, 0, NUM_FALLBACK_CONFIGS * sizeof(void *));
}
else {
/* copy driver's visual config info */
for (i = 0; i < numConfigs; i++) {
pNewVisualConfigs[i] = visualConfigs[i];
pNewVisualPriv[i] = visualPrivates[i];
}
}
/* Count the number of RGB and CI visual configs */
numRGBconfigs = 0;
numCIconfigs = 0;
for (i = 0; i < numNewConfigs; i++) {
if (pNewVisualConfigs[i].rgba)
numRGBconfigs++;
else
numCIconfigs++;
}
/* Count the total number of visuals to compute */
numNewVisuals = 0;
for (i = 0; i < numVisuals; i++) {
numNewVisuals +=
(pVisual[i].class == TrueColor || pVisual[i].class == DirectColor)
? numRGBconfigs : numCIconfigs;
}
/* Reset variables for use with the next screen/driver's visual configs */
visualConfigs = NULL;
numConfigs = 0;
/* Alloc temp space for the list of orig VisualIDs for each new visual */
orig_vid = (VisualID *)malloc(numNewVisuals * sizeof(VisualID));
if (!orig_vid) {
free(pNewVisualPriv);
free(pNewVisualConfigs);
return FALSE;
}
/* Alloc space for the list of glXVisuals */
modes = _gl_context_modes_create(numNewVisuals, sizeof(__GLcontextModes));
if (modes == NULL) {
free(orig_vid);
free(pNewVisualPriv);
free(pNewVisualConfigs);
return FALSE;
}
/* Alloc space for the list of glXVisualPrivates */
glXVisualPriv = (void **)malloc(numNewVisuals * sizeof(void *));
if (!glXVisualPriv) {
_gl_context_modes_destroy( modes );
free(orig_vid);
free(pNewVisualPriv);
free(pNewVisualConfigs);
return FALSE;
}
/* Alloc space for the new list of the X server's visuals */
pVisualNew = (VisualPtr)malloc(numNewVisuals * sizeof(VisualRec));
if (!pVisualNew) {
free(glXVisualPriv);
_gl_context_modes_destroy( modes );
free(orig_vid);
free(pNewVisualPriv);
free(pNewVisualConfigs);
return FALSE;
}
/* Initialize the new visuals */
found_default = FALSE;
MESAScreens[screenInfo.numScreens-1].modes = modes;
for (i = j = 0; i < numVisuals; i++) {
int is_rgb = (pVisual[i].class == TrueColor ||
pVisual[i].class == DirectColor);
for (k = 0; k < numNewConfigs; k++) {
if (pNewVisualConfigs[k].rgba != is_rgb)
continue;
assert( modes != NULL );
/* Initialize the new visual */
pVisualNew[j] = pVisual[i];
pVisualNew[j].vid = FakeClientID(0);
/* Check for the default visual */
if (!found_default && pVisual[i].vid == *defaultVisp) {
*defaultVisp = pVisualNew[j].vid;
found_default = TRUE;
}
/* Save the old VisualID */
orig_vid[j] = pVisual[i].vid;
/* Initialize the glXVisual */
_gl_copy_visual_to_context_mode( modes, & pNewVisualConfigs[k] );
modes->visualID = pVisualNew[j].vid;
/*
* If the class is -1, then assume the X visual information
* is identical to what GLX needs, and take them from the X
* visual. NOTE: if class != -1, then all other fields MUST
* be initialized.
*/
if (modes->visualType == GLX_NONE) {
modes->visualType = _gl_convert_from_x_visual_type( pVisual[i].class );
modes->redBits = count_bits(pVisual[i].redMask);
modes->greenBits = count_bits(pVisual[i].greenMask);
modes->blueBits = count_bits(pVisual[i].blueMask);
modes->alphaBits = modes->alphaBits;
modes->redMask = pVisual[i].redMask;
modes->greenMask = pVisual[i].greenMask;
modes->blueMask = pVisual[i].blueMask;
modes->alphaMask = modes->alphaMask;
modes->rgbBits = (is_rgb)
? (modes->redBits + modes->greenBits +
modes->blueBits + modes->alphaBits)
: rootDepth;
}
/* Save the device-dependent private for this visual */
glXVisualPriv[j] = pNewVisualPriv[k];
j++;
modes = modes->next;
}
}
assert(j <= numNewVisuals);
/* Save the GLX visuals in the screen structure */
MESAScreens[screenInfo.numScreens-1].num_vis = numNewVisuals;
MESAScreens[screenInfo.numScreens-1].private = glXVisualPriv;
/* Set up depth's VisualIDs */
for (i = 0; i < ndepth; i++) {
int numVids = 0;
VisualID *pVids = NULL;
int k, n = 0;
/* Count the new number of VisualIDs at this depth */
for (j = 0; j < pdepth[i].numVids; j++)
for (k = 0; k < numNewVisuals; k++)
if (pdepth[i].vids[j] == orig_vid[k])
numVids++;
/* Allocate a new list of VisualIDs for this depth */
pVids = (VisualID *)malloc(numVids * sizeof(VisualID));
/* Initialize the new list of VisualIDs for this depth */
for (j = 0; j < pdepth[i].numVids; j++)
for (k = 0; k < numNewVisuals; k++)
if (pdepth[i].vids[j] == orig_vid[k])
pVids[n++] = pVisualNew[k].vid;
/* Update this depth's list of VisualIDs */
free(pdepth[i].vids);
pdepth[i].vids = pVids;
pdepth[i].numVids = numVids;
}
/* Update the X server's visuals */
*nvisualp = numNewVisuals;
*visualp = pVisualNew;
/* Free the old list of the X server's visuals */
free(pVisual);
/* Clean up temporary allocations */
free(orig_vid);
free(pNewVisualPriv);
free(pNewVisualConfigs);
/* Free the private list created by DDX HW driver */
if (visualPrivates)
free(visualPrivates);
visualPrivates = NULL;
return TRUE;
}
void __MESA_setVisualConfigs(int nconfigs, __GLXvisualConfig *configs,
void **privates)
{
numConfigs = nconfigs;
visualConfigs = configs;
visualPrivates = privates;
}
Bool __MESA_initVisuals(VisualPtr *visualp, DepthPtr *depthp,
int *nvisualp, int *ndepthp, int *rootDepthp,
VisualID *defaultVisp, unsigned long sizes,
int bitsPerRGB)
{
/*
* Setup the visuals supported by this particular screen.
*/
return init_visuals(nvisualp, visualp, defaultVisp,
*ndepthp, *depthp, *rootDepthp);
}
static void fixup_visuals(int screen)
{
ScreenPtr pScreen = screenInfo.screens[screen];
__MESA_screen *pMScr = &MESAScreens[screen];
int j;
__GLcontextModes *modes;
for ( modes = pMScr->modes ; modes != NULL ; modes = modes->next ) {
const int vis_class = _gl_convert_to_x_visual_type( modes->visualType );
const int nplanes = (modes->rgbBits - modes->alphaBits);
const VisualPtr pVis = pScreen->visuals;
/* Find a visual that matches the GLX visual's class and size */
for (j = 0; j < pScreen->numVisuals; j++) {
if (pVis[j].class == vis_class &&
pVis[j].nplanes == nplanes) {
/* Fixup the masks */
modes->redMask = pVis[j].redMask;
modes->greenMask = pVis[j].greenMask;
modes->blueMask = pVis[j].blueMask;
/* Recalc the sizes */
modes->redBits = count_bits(modes->redMask);
modes->greenBits = count_bits(modes->greenMask);
modes->blueBits = count_bits(modes->blueMask);
}
}
}
}
static void init_screen_visuals(int screen)
{
ScreenPtr pScreen = screenInfo.screens[screen];
__GLcontextModes *modes;
XMesaVisual *pXMesaVisual;
int *used;
int i, j;
/* Alloc space for the list of XMesa visuals */
pXMesaVisual = (XMesaVisual *)malloc(MESAScreens[screen].num_vis *
sizeof(XMesaVisual));
memset(pXMesaVisual, 0,
MESAScreens[screen].num_vis * sizeof(XMesaVisual));
/* FIXME: Change 'used' to be a array of bits (rather than of ints),
* FIXME: create a stack array of 8 or 16 bytes. If 'numVisuals' is less
* FIXME: than 64 or 128 the stack array can be used instead of calling
* FIXME: malloc / free. If nothing else, convert 'used' to
* FIXME: array of bytes instead of ints!
*/
used = (int *)malloc(pScreen->numVisuals * sizeof(int));
memset(used, 0, pScreen->numVisuals * sizeof(int));
i = 0;
for ( modes = MESAScreens[screen].modes
; modes != NULL
; modes = modes->next ) {
const int vis_class = _gl_convert_to_x_visual_type( modes->visualType );
const int nplanes = (modes->rgbBits - modes->alphaBits);
const VisualPtr pVis = pScreen->visuals;
for (j = 0; j < pScreen->numVisuals; j++) {
if (pVis[j].class == vis_class &&
pVis[j].nplanes == nplanes &&
pVis[j].redMask == modes->redMask &&
pVis[j].greenMask == modes->greenMask &&
pVis[j].blueMask == modes->blueMask &&
!used[j]) {
/* Create the XMesa visual */
pXMesaVisual[i] =
XMesaCreateVisual(pScreen,
pVis,
modes->rgbMode,
(modes->alphaBits > 0),
modes->doubleBufferMode,
modes->stereoMode,
GL_TRUE, /* ximage_flag */
modes->depthBits,
modes->stencilBits,
modes->accumRedBits,
modes->accumGreenBits,
modes->accumBlueBits,
modes->accumAlphaBits,
modes->samples,
modes->level,
modes->visualRating);
/* Set the VisualID */
modes->visualID = pVis[j].vid;
/* Mark this visual used */
used[j] = 1;
break;
}
}
if ( j == pScreen->numVisuals ) {
ErrorF("No matching visual for __GLcontextMode with "
"visual class = %d (%d), nplanes = %u\n",
vis_class,
modes->visualType,
(modes->rgbBits - modes->alphaBits) );
}
else if ( modes->visualID == -1 ) {
FatalError( "Matching visual found, but visualID still -1!\n" );
}
i++;
}
free(used);
MESAScreens[screen].xm_vis = pXMesaVisual;
}
Bool __MESA_screenProbe(int screen)
{
/*
* Set up the current screen's visuals.
*/
__glDDXScreenInfo.modes = MESAScreens[screen].modes;
__glDDXScreenInfo.pVisualPriv = MESAScreens[screen].private;
__glDDXScreenInfo.numVisuals =
__glDDXScreenInfo.numUsableVisuals = MESAScreens[screen].num_vis;
/*
* Set the current screen's createContext routine. This could be
* wrapped by a DDX GLX context creation routine.
*/
__glDDXScreenInfo.createContext = __MESA_createContext;
/*
* The ordering of the rgb compenents might have been changed by the
* driver after mi initialized them.
*/
fixup_visuals(screen);
/*
* Find the GLX visuals that are supported by this screen and create
* XMesa's visuals.
*/
init_screen_visuals(screen);
return TRUE;
}
extern void __MESA_resetExtension(void)
{
int i, j;
XMesaReset();
for (i = 0; i < screenInfo.numScreens; i++) {
for (j = 0; j < MESAScreens[i].num_vis; j++) {
if (MESAScreens[i].xm_vis[j]) {
XMesaDestroyVisual(MESAScreens[i].xm_vis[j]);
MESAScreens[i].xm_vis[j] = NULL;
}
}
_gl_context_modes_destroy( MESAScreens[i].modes );
MESAScreens[i].modes = NULL;
free(MESAScreens[i].private);
MESAScreens[i].private = NULL;
free(MESAScreens[i].xm_vis);
MESAScreens[i].xm_vis = NULL;
MESAScreens[i].num_vis = 0;
}
__glDDXScreenInfo.modes = NULL;
MESA_CC = NULL;
}
void __MESA_createBuffer(__GLXdrawablePrivate *glxPriv)
{
DrawablePtr pDraw = glxPriv->pDraw;
XMesaVisual xm_vis = find_mesa_visual(pDraw->pScreen->myNum,
glxPriv->modes->visualID);
__GLdrawablePrivate *glPriv = &glxPriv->glPriv;
__MESA_buffer buf;
if (xm_vis == NULL) {
ErrorF("find_mesa_visual returned NULL for visualID = 0x%04x\n",
glxPriv->modes->visualID);
}
buf = (__MESA_buffer)malloc(sizeof(struct __MESA_bufferRec));
/* Create Mesa's buffers */
if (glxPriv->type == DRAWABLE_WINDOW) {
buf->xm_buf = (void *)XMesaCreateWindowBuffer(xm_vis,
(WindowPtr)pDraw);
} else {
buf->xm_buf = (void *)XMesaCreatePixmapBuffer(xm_vis,
(PixmapPtr)pDraw, 0);
}
/* Wrap the front buffer's resize routine */
buf->fbresize = glPriv->frontBuffer.resize;
glPriv->frontBuffer.resize = __MESA_resizeBuffers;
/* Wrap the swap buffers routine */
buf->fbswap = glxPriv->swapBuffers;
glxPriv->swapBuffers = __MESA_swapBuffers;
/* Save Mesa's private buffer structure */
glPriv->private = (void *)buf;
glPriv->freePrivate = __MESA_destroyBuffer;
}
GLboolean __MESA_resizeBuffers(__GLdrawableBuffer *buffer,
GLint x, GLint y,
GLuint width, GLuint height,
__GLdrawablePrivate *glPriv,
GLuint bufferMask)
{
__MESA_buffer buf = (__MESA_buffer)glPriv->private;
if (buf->xm_buf)
XMesaResizeBuffers(buf->xm_buf);
return (*buf->fbresize)(buffer, x, y, width, height, glPriv, bufferMask);
}
GLboolean __MESA_swapBuffers(__GLXdrawablePrivate *glxPriv)
{
__MESA_buffer buf = (__MESA_buffer)glxPriv->glPriv.private;
/*
** Do not call the wrapped swap buffers routine since Mesa has
** already done the swap.
*/
XMesaSwapBuffers(buf->xm_buf);
return GL_TRUE;
}
void __MESA_destroyBuffer(__GLdrawablePrivate *glPriv)
{
__MESA_buffer buf = (__MESA_buffer)glPriv->private;
__GLXdrawablePrivate *glxPriv = (__GLXdrawablePrivate *)glPriv->other;
#ifdef NXAGENT_SERVER
AddWSDrawBuffer(& (buf -> xm_buf -> mesa_buffer) );
#endif
/* Destroy Mesa's buffers */
if (buf->xm_buf)
XMesaDestroyBuffer(buf->xm_buf);
/* Unwrap these routines */
glxPriv->swapBuffers = buf->fbswap;
glPriv->frontBuffer.resize = buf->fbresize;
free(glPriv->private);
glPriv->private = NULL;
}
__GLinterface *__MESA_createContext(__GLimports *imports,
__GLcontextModes *modes,
__GLinterface *shareGC)
{
__GLcontext *gl_ctx = NULL;
__GLcontext *m_share = NULL;
__GLXcontext *glxc = (__GLXcontext *)imports->other;
XMesaVisual xm_vis;
if (shareGC)
m_share = (__GLcontext *)shareGC;
xm_vis = find_mesa_visual(glxc->pScreen->myNum, glxc->modes->visualID);
if (xm_vis) {
XMesaContext xmshare = m_share ? m_share->DriverCtx : 0;
XMesaContext xmctx = XMesaCreateContext(xm_vis, xmshare);
gl_ctx = xmctx ? &xmctx->mesa : 0;
}
else {
ErrorF("find_mesa_visual returned NULL for visualID = 0x%04x\n",
glxc->modes->visualID);
}
if (!gl_ctx)
return NULL;
gl_ctx->imports = *imports;
gl_ctx->exports.destroyContext = __MESA_destroyContext;
gl_ctx->exports.loseCurrent = __MESA_loseCurrent;
gl_ctx->exports.makeCurrent = __MESA_makeCurrent;
gl_ctx->exports.shareContext = __MESA_shareContext;
gl_ctx->exports.copyContext = __MESA_copyContext;
gl_ctx->exports.forceCurrent = __MESA_forceCurrent;
gl_ctx->exports.notifyResize = __MESA_notifyResize;
gl_ctx->exports.notifyDestroy = __MESA_notifyDestroy;
gl_ctx->exports.notifySwapBuffers = __MESA_notifySwapBuffers;
gl_ctx->exports.dispatchExec = __MESA_dispatchExec;
gl_ctx->exports.beginDispatchOverride = __MESA_beginDispatchOverride;
gl_ctx->exports.endDispatchOverride = __MESA_endDispatchOverride;
return (__GLinterface *)gl_ctx;
}
GLboolean __MESA_destroyContext(__GLcontext *gc)
{
XMesaContext xmesa = (XMesaContext) gc->DriverCtx;
XMesaDestroyContext( xmesa );
return GL_TRUE;
}
GLboolean __MESA_loseCurrent(__GLcontext *gc)
{
XMesaContext xmesa = (XMesaContext) gc->DriverCtx;
MESA_CC = NULL;
__glXLastContext = NULL;
return XMesaLoseCurrent(xmesa);
}
GLboolean __MESA_makeCurrent(__GLcontext *gc)
{
__GLdrawablePrivate *drawPriv = gc->imports.getDrawablePrivate( gc );
__MESA_buffer drawBuf = (__MESA_buffer)drawPriv->private;
__GLdrawablePrivate *readPriv = gc->imports.getReadablePrivate( gc );
__MESA_buffer readBuf = (__MESA_buffer)readPriv->private;
XMesaContext xmesa = (XMesaContext) gc->DriverCtx;
MESA_CC = gc;
return XMesaMakeCurrent2(xmesa, drawBuf->xm_buf, readBuf->xm_buf);
}
GLboolean __MESA_shareContext(__GLcontext *gc, __GLcontext *gcShare)
{
/* NOT_DONE */
/* XXX I don't see where/how this could ever be called */
ErrorF("__MESA_shareContext\n");
return GL_FALSE;
}
GLboolean __MESA_copyContext(__GLcontext *dst, const __GLcontext *src,
GLuint mask)
{
XMesaContext xm_dst = (XMesaContext) dst->DriverCtx;
const XMesaContext xm_src = (const XMesaContext) src->DriverCtx;
_mesa_copy_context(&xm_src->mesa, &xm_dst->mesa, mask);
return GL_TRUE;
}
GLboolean __MESA_forceCurrent(__GLcontext *gc)
{
XMesaContext xmesa = (XMesaContext) gc->DriverCtx;
MESA_CC = gc;
return XMesaForceCurrent(xmesa);
}
GLboolean __MESA_notifyResize(__GLcontext *gc)
{
/* NOT_DONE */
ErrorF("__MESA_notifyResize\n");
return GL_FALSE;
}
void __MESA_notifyDestroy(__GLcontext *gc)
{
/* NOT_DONE */
ErrorF("__MESA_notifyDestroy\n");
return;
}
void __MESA_notifySwapBuffers(__GLcontext *gc)
{
_mesa_notifySwapBuffers(gc);
}
struct __GLdispatchStateRec *__MESA_dispatchExec(__GLcontext *gc)
{
/* NOT_DONE */
ErrorF("__MESA_dispatchExec\n");
return NULL;
}
void __MESA_beginDispatchOverride(__GLcontext *gc)
{
/* NOT_DONE */
ErrorF("__MESA_beginDispatchOverride\n");
return;
}
void __MESA_endDispatchOverride(__GLcontext *gc)
{
/* NOT_DONE */
ErrorF("__MESA_endDispatchOverride\n");
return;
}
/*
* Server-side GLX uses these functions which are normally defined
* in the OpenGL SI.
*/
GLuint __glFloorLog2(GLuint val)
{
int c = 0;
while (val > 1) {
c++;
val >>= 1;
}
return c;
}

View File

@@ -0,0 +1,151 @@
/**************************************************************************
Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sub license, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice (including the
next paragraph) shall be included in all copies or substantial portions
of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
**************************************************************************/
/*
* Authors:
* Kevin E. Martin <kevin@precisioninsight.com>
* Brian Paul <brian@precisioninsight.com>
*/
#ifdef HAVE_DIX_CONFIG_H
#include <dix-config.h>
#endif
#include <stdlib.h>
#include <gcstruct.h>
#include "pixmapstr.h"
#include "xf86glx_util.h"
#include <nx-X11/Xmd.h>
#ifdef ROUNDUP
#undef ROUNDUP
#endif
#define ROUNDUP(nbytes, pad) ((((nbytes) + ((pad)-1)) / (pad)) * ((pad)>>3))
XMesaImage *XMesaCreateImage(int bitsPerPixel, int width, int height, char *data)
{
XMesaImage *image;
image = (XMesaImage *)malloc(sizeof(XMesaImage));
if (image) {
image->width = width;
image->height = height;
image->data = data;
/* Always pad to 32 bits */
image->bytes_per_line = ROUNDUP((bitsPerPixel * width), 32);
image->bits_per_pixel = bitsPerPixel;
}
return image;
}
void XMesaDestroyImage(XMesaImage *image)
{
if (image->data)
free(image->data);
free(image);
}
unsigned long XMesaGetPixel(XMesaImage *image, int x, int y)
{
CARD8 *row = (CARD8 *)(image->data + y*image->bytes_per_line);
CARD8 *i8;
CARD16 *i16;
CARD32 *i32;
switch (image->bits_per_pixel) {
case 8:
i8 = (CARD8 *)row;
return i8[x];
break;
case 15:
case 16:
i16 = (CARD16 *)row;
return i16[x];
break;
case 24: /* WARNING: architecture specific code */
i8 = (CARD8 *)row;
return (((CARD32)i8[x*3]) |
(((CARD32)i8[x*3+1])<<8) |
(((CARD32)i8[x*3+2])<<16));
break;
case 32:
i32 = (CARD32 *)row;
return i32[x];
break;
}
return 0;
}
#ifndef XMESA_USE_PUTPIXEL_MACRO
void XMesaPutPixel(XMesaImage *image, int x, int y, unsigned long pixel)
{
CARD8 *row = (CARD8 *)(image->data + y*image->bytes_per_line);
CARD8 *i8;
CARD16 *i16;
CARD32 *i32;
switch (image->bits_per_pixel) {
case 8:
i8 = (CARD8 *)row;
i8[x] = (CARD8)pixel;
break;
case 15:
case 16:
i16 = (CARD16 *)row;
i16[x] = (CARD16)pixel;
break;
case 24: /* WARNING: architecture specific code */
i8 = (CARD8 *)__row;
i8[x*3] = (CARD8)(p);
i8[x*3+1] = (CARD8)(p>>8);
i8[x*3+2] = (CARD8)(p>>16);
case 32:
i32 = (CARD32 *)row;
i32[x] = (CARD32)pixel;
break;
}
}
#endif
void XMesaPutImageHelper(ScreenPtr display,
DrawablePtr d, GCPtr gc,
XMesaImage *image,
int src_x, int src_y,
int dest_x, int dest_y,
unsigned int width, unsigned int height)
{
/* NOT_DONE: Verify that the following works for all depths */
char *src = (image->data +
src_y * image->bytes_per_line +
((src_x * image->bits_per_pixel) >> 3));
ValidateGC(d, gc);
(*gc->ops->PutImage)(d, gc, d->depth, dest_x, dest_y, width, height,
0, ZPixmap, src);
}

View File

@@ -0,0 +1,105 @@
/**************************************************************************
Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sub license, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice (including the
next paragraph) shall be included in all copies or substantial portions
of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
**************************************************************************/
/*
* Authors:
* Kevin E. Martin <kevin@precisioninsight.com>
* Brian Paul <brian@precisioninsight.com>
*/
#ifdef HAVE_DIX_CONFIG_H
#include <dix-config.h>
#endif
#ifndef _XF86GLX_UTIL_H_
#define _XF86GLX_UTIL_H_
#ifdef __CYGWIN__
#undef WIN32
#undef _WIN32
#endif
#include <screenint.h>
#include <pixmap.h>
#include <gc.h>
#include "GL/xmesa.h"
#define XMESA_USE_PUTPIXEL_MACRO
struct _XMesaImageRec {
int width, height;
char *data;
int bytes_per_line; /* Padded to 32 bits */
int bits_per_pixel;
};
extern XMesaImage *XMesaCreateImage(int bitsPerPixel, int width, int height,
char *data);
extern void XMesaDestroyImage(XMesaImage *image);
extern unsigned long XMesaGetPixel(XMesaImage *image, int x, int y);
#ifdef XMESA_USE_PUTPIXEL_MACRO
#define XMesaPutPixel(__i,__x,__y,__p) \
{ \
CARD8 *__row = (CARD8 *)(__i->data + __y*__i->bytes_per_line); \
CARD8 *__i8; \
CARD16 *__i16; \
CARD32 *__i32; \
switch (__i->bits_per_pixel) { \
case 8: \
__i8 = (CARD8 *)__row; \
__i8[__x] = (CARD8)__p; \
break; \
case 15: \
case 16: \
__i16 = (CARD16 *)__row; \
__i16[__x] = (CARD16)__p; \
break; \
case 24: /* WARNING: architecture specific code */ \
__i8 = (CARD8 *)__row; \
__i8[__x*3] = (CARD8)(__p); \
__i8[__x*3+1] = (CARD8)(__p>>8); \
__i8[__x*3+2] = (CARD8)(__p>>16); \
break; \
case 32: \
__i32 = (CARD32 *)__row; \
__i32[__x] = (CARD32)__p; \
break; \
} \
}
#else
extern void XMesaPutPixel(XMesaImage *image, int x, int y,
unsigned long pixel);
#endif
extern void XMesaPutImageHelper(ScreenPtr display,
DrawablePtr d, GCPtr gc,
XMesaImage *image,
int src_x, int src_y,
int dest_x, int dest_y,
unsigned int width, unsigned int height);
#endif /* _XF86GLX_UTIL_H_ */

View File

@@ -0,0 +1,101 @@
/**************************************************************************
Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sub license, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice (including the
next paragraph) shall be included in all copies or substantial portions
of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
**************************************************************************/
/*
* Authors:
* Kevin E. Martin <kevin@precisioninsight.com>
*
*/
#ifdef HAVE_DIX_CONFIG_H
#include <dix-config.h>
#endif
#ifndef _XF86GLXINT_H_
#define _XF86GLXINT_H_
#include <miscstruct.h>
#include <GL/gl.h>
#include <GL/xmesa.h>
typedef struct __MESA_screenRec __MESA_screen;
struct __MESA_screenRec {
int num_vis;
__GLcontextModes *modes;
XMesaVisual *xm_vis;
void **private;
};
typedef struct __MESA_bufferRec *__MESA_buffer;
struct __MESA_bufferRec {
XMesaBuffer xm_buf;
GLboolean (*fbresize)(__GLdrawableBuffer *buf,
GLint x, GLint y, GLuint width, GLuint height,
__GLdrawablePrivate *glPriv, GLuint bufferMask);
GLboolean (*fbswap)(__GLXdrawablePrivate *glxPriv);
};
extern void __MESA_setVisualConfigs(int nconfigs, __GLXvisualConfig *configs,
void **privates);
extern Bool __MESA_initVisuals(VisualPtr *visualp, DepthPtr *depthp,
int *nvisualp, int *ndepthp, int *rootDepthp,
VisualID *defaultVisp, unsigned long sizes,
int bitsPerRGB);
extern Bool __MESA_screenProbe(int screen);
extern void __MESA_resetExtension(void);
extern void __MESA_createBuffer(__GLXdrawablePrivate *glxPriv);
extern GLboolean __MESA_resizeBuffers(__GLdrawableBuffer *buf,
GLint x, GLint y,
GLuint width, GLuint height,
__GLdrawablePrivate *glPriv,
GLuint bufferMask);
extern GLboolean __MESA_swapBuffers(__GLXdrawablePrivate *glxPriv);
extern void __MESA_destroyBuffer(__GLdrawablePrivate *glPriv);
extern __GLinterface *__MESA_createContext(__GLimports *imports,
__GLcontextModes *modes,
__GLinterface *shareGC);
extern GLboolean __MESA_destroyContext(__GLcontext *gc);
extern GLboolean __MESA_loseCurrent(__GLcontext *gc);
extern GLboolean __MESA_makeCurrent(__GLcontext *gc);
extern GLboolean __MESA_shareContext(__GLcontext *gc, __GLcontext *gcShare);
extern GLboolean __MESA_copyContext(__GLcontext *dst, const __GLcontext *src,
GLuint mask);
extern GLboolean __MESA_forceCurrent(__GLcontext *gc);
extern GLboolean __MESA_notifyResize(__GLcontext *gc);
extern void __MESA_notifyDestroy(__GLcontext *gc);
extern void __MESA_notifySwapBuffers(__GLcontext *gc);
extern struct __GLdispatchStateRec *__MESA_dispatchExec(__GLcontext *gc);
extern void __MESA_beginDispatchOverride(__GLcontext *gc);
extern void __MESA_endDispatchOverride(__GLcontext *gc);
extern GLuint __glFloorLog2(GLuint val);
#endif /* _XF86GLXINT_H_ */

View File

@@ -0,0 +1,36 @@
#include <Server.tmpl>
#define NeedAllMesaSrc
#define NeedToLinkMesaSrc
#define MesaACBuildDir /**/
#include "Imakefile.inc"
SRCS = $(MESA_AC_SRCS)
OBJS = $(MESA_AC_OBJS)
INCLUDES = -I$(MESASRCDIR)/src/mesa \
-I$(MESASRCDIR)/src/mesa/array_cache \
-I$(MESASRCDIR)/src/mesa/math \
-I$(MESASRCDIR)/src/mesa/main \
-I$(MESASRCDIR)/src/mesa/glapi \
-I$(MESASRCDIR)/include \
-I$(SERVERSRC)/include -I$(XINCLUDESRC) \
-I$(SERVERSRC)/GL/include -I$(SERVERSRC)/GL/glx \
-I$(LIBSRC)/GL/include \
-I$(XF86SRC) -I$(INCLUDESRC)
DEFINES = $(GLX_DEFINES) /*-DUSE_X86_ASM*/ /*-DUSE_SPARC_ASM*/
NormalLibraryObjectRule()
SubdirLibraryRule($(OBJS))
NormalLintTarget($(SRCS))
DependTarget()
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif

View File

@@ -0,0 +1,28 @@
MESAACBUILDDIR = MesaACBuildDir
MESA_AC_SRCS = $(MESAACBUILDDIR)ac_context.c \
$(MESAACBUILDDIR)ac_import.c
#ifdef NeedToLinkMesaSrc
LinkSourceFile(acache.h, $(MESASRCDIR)/src/mesa/array_cache)
LinkSourceFile(ac_context.c, $(MESASRCDIR)/src/mesa/array_cache)
LinkSourceFile(ac_context.h, $(MESASRCDIR)/src/mesa/array_cache)
LinkSourceFile(ac_import.c, $(MESASRCDIR)/src/mesa/array_cache)
#endif
MESA_AC_OBJS = $(MESAACBUILDDIR)ac_context.o \
$(MESAACBUILDDIR)ac_import.o
#if defined(DoSharedLib) && DoSharedLib
MESA_AC_UOBJS = $(MESAACBUILDDIR)unshared/ac_context.o \
$(MESAACBUILDDIR)unshared/ac_import.o
#else
MESA_AC_UOBJS = $(MESA_AC_OBJS)
#endif
MESA_AC_DOBJS = $(MESAACBUILDDIR)debugger/ac_context.o \
$(MESAACBUILDDIR)debugger/ac_import.o
MESA_AC_POBJS = $(MESAACBUILDDIR)profiled/ac_context.o \
$(MESAACBUILDDIR)profiled/ac_import.o

View File

@@ -0,0 +1,40 @@
/* Large PIC tables needed for Solaris/SPARC builds */
#if defined(SunArchitecture) && defined(SparcArchitecture) && defined(LargePositionIndependentCFlags)
PICFLAGS = LargePositionIndependentCFlags
#endif
#include <Server.tmpl>
#define NeedAllMesaSrc
#define NeedToLinkMesaSrc
#define MesaBuildDir /**/
#include "Imakefile.inc"
SRCS = $(COREMESABASESRCS)
OBJS = $(COREMESABASEOBJS)
INCLUDES = -I$(MESASRCDIR)/src/mesa \
-I$(MESASRCDIR)/src/mesa/main \
-I$(MESASRCDIR)/src/mesa/shader \
-I$(MESASRCDIR)/src/mesa/glapi \
-I$(MESASRCDIR)/include \
-I$(SERVERSRC)/include -I$(XINCLUDESRC) \
-I$(SERVERSRC)/GL/include -I$(SERVERSRC)/GL/glx \
-I$(LIBSRC)/GL/include \
-I$(XF86SRC) -I$(INCLUDESRC)
DEFINES = $(GLX_DEFINES) -DNXAGENT_SERVER /*-DUSE_X86_ASM*/ /*-DUSE_SPARC_ASM*/
NormalLibraryObjectRule()
SubdirLibraryRule($(OBJS))
NormalLintTarget($(SRCS))
DependTarget()
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif

View File

@@ -0,0 +1,481 @@
/* gcc on ppc64 defines this, causes macro recursion with pixel below */
#undef pixel
MESABUILDDIR = MesaBuildDir
#ifdef NeedAllMesaSrc
DISPATCHSRCS = $(MESABUILDDIR)dispatch.c
GLAPISRCS = $(MESABUILDDIR)glapi.c
GLTHREADSRCS = $(MESABUILDDIR)glthread.c
#endif
MESA_CORE_INCLUDES = -I$(MESASRCDIR)/src/array_cache \
-I$(MESASRCDIR)/src/math -I$(MESASRCDIR)/src/shader \
-I$(MESASRCDIR)/src/swrast -I$(MESASRCDIR)/src/swrast_setup \
-I$(MESASRCDIR)/src/tnl -I$(MESASRCDIR)/src/tnl_dd
COREMESABASESRCS = \
$(MESABUILDDIR)api_arrayelt.c \
$(MESABUILDDIR)api_loopback.c \
$(MESABUILDDIR)api_noop.c \
$(MESABUILDDIR)api_validate.c \
$(MESABUILDDIR)accum.c \
$(MESABUILDDIR)attrib.c \
$(MESABUILDDIR)blend.c \
$(MESABUILDDIR)bufferobj.c \
$(MESABUILDDIR)buffers.c \
$(MESABUILDDIR)clip.c \
$(MESABUILDDIR)colortab.c \
$(MESABUILDDIR)context.c \
$(MESABUILDDIR)convolve.c \
$(MESABUILDDIR)debug.c \
$(MESABUILDDIR)depth.c \
$(MESABUILDDIR)dlist.c \
$(MESABUILDDIR)drawpix.c \
$(MESABUILDDIR)enable.c \
$(MESABUILDDIR)enums.c \
$(MESABUILDDIR)eval.c \
$(MESABUILDDIR)execmem.c \
$(MESABUILDDIR)extensions.c \
$(MESABUILDDIR)feedback.c \
$(MESABUILDDIR)fbobject.c \
$(MESABUILDDIR)fog.c \
$(MESABUILDDIR)framebuffer.c \
$(MESABUILDDIR)get.c \
$(MESABUILDDIR)getstring.c \
$(MESABUILDDIR)hash.c \
$(MESABUILDDIR)hint.c \
$(MESABUILDDIR)histogram.c \
$(MESABUILDDIR)image.c \
$(MESABUILDDIR)imports.c \
$(MESABUILDDIR)light.c \
$(MESABUILDDIR)lines.c \
$(MESABUILDDIR)matrix.c \
$(MESABUILDDIR)mm.c \
$(MESABUILDDIR)occlude.c \
$(MESABUILDDIR)pixel.c \
$(MESABUILDDIR)points.c \
$(MESABUILDDIR)polygon.c \
$(MESABUILDDIR)rastpos.c \
$(MESABUILDDIR)renderbuffer.c \
$(MESABUILDDIR)state.c \
$(MESABUILDDIR)stencil.c \
$(MESABUILDDIR)texcompress.c \
$(MESABUILDDIR)texcompress_fxt1.c \
$(MESABUILDDIR)texcompress_s3tc.c \
$(MESABUILDDIR)texenvprogram.c \
$(MESABUILDDIR)texformat.c \
$(MESABUILDDIR)teximage.c \
$(MESABUILDDIR)texobj.c \
$(MESABUILDDIR)texrender.c \
$(MESABUILDDIR)texstate.c \
$(MESABUILDDIR)texstore.c \
$(MESABUILDDIR)varray.c \
$(MESABUILDDIR)vtxfmt.c
#ifdef NeedToLinkMesaSrc
LinkSourceFile(api_arrayelt.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(api_arrayelt.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(api_eval.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(api_loopback.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(api_loopback.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(api_noop.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(api_noop.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(api_validate.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(api_validate.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(accum.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(accum.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(attrib.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(attrib.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(blend.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(blend.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(bufferobj.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(bufferobj.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(buffers.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(buffers.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(clip.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(clip.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(colormac.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(colortab.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(colortab.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(config.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(context.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(context.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(convolve.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(convolve.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(dd.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(debug.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(debug.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(depth.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(depth.h, $(MESASRCDIR)/src/mesa/main)
#ifdef NeedAllMesaSrc
LinkSourceFile(dispatch.c, $(MESASRCDIR)/src/mesa/main)
#endif
LinkSourceFile(dlist.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(dlist.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(drawpix.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(drawpix.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(enable.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(enable.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(enums.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(enums.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(eval.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(eval.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(execmem.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(extensions.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(extensions.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(fbobject.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(fbobject.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(feedback.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(feedback.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(fog.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(fog.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(framebuffer.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(framebuffer.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(get.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(get.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(getstring.c, $(MESASRCDIR)/src/mesa/main)
#ifdef NeedAllMesaSrc
LinkSourceFile(glapi.c, $(MESASRCDIR)/src/mesa/glapi)
LinkSourceFile(glthread.c, $(MESASRCDIR)/src/mesa/glapi)
#endif
LinkSourceFile(glheader.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(hash.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(hash.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(hint.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(hint.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(histogram.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(histogram.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(image.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(image.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(imports.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(imports.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(light.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(light.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(lines.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(lines.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(macros.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(matrix.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(matrix.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(mm.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(mm.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(mtypes.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(occlude.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(occlude.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(pixel.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(pixel.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(points.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(points.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(polygon.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(polygon.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(rastpos.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(rastpos.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(renderbuffer.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(renderbuffer.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(simple_list.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(state.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(state.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(stencil.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(stencil.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texcompress.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texcompress_fxt1.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texcompress_s3tc.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texcompress.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texenvprogram.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texenvprogram.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texformat.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texformat.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texformat_tmp.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(teximage.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(teximage.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texobj.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texobj.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texrender.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texrender.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texstate.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texstate.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texstore.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(texstore.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(varray.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(varray.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(version.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(vtxfmt.c, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(vtxfmt.h, $(MESASRCDIR)/src/mesa/main)
LinkSourceFile(vtxfmt_tmp.h, $(MESASRCDIR)/src/mesa/main)
#endif
#ifdef NeedAllMesaSrc
DISPATCHOBJS = $(MESABUILDDIR)dispatch.o
GLAPIOBJS = $(MESABUILDDIR)glapi.o
GLTHREADOBJS = $(MESABUILDDIR)glthread.o
#endif
COREMESABASEOBJS = \
$(DISPATCHOBJS) \
$(GLAPIOBJS) \
$(GLTHREADOBJS) \
$(MESABUILDDIR)api_arrayelt.o \
$(MESABUILDDIR)api_loopback.o \
$(MESABUILDDIR)api_noop.o \
$(MESABUILDDIR)api_validate.o \
$(MESABUILDDIR)accum.o \
$(MESABUILDDIR)attrib.o \
$(MESABUILDDIR)blend.o \
$(MESABUILDDIR)bufferobj.o \
$(MESABUILDDIR)buffers.o \
$(MESABUILDDIR)clip.o \
$(MESABUILDDIR)colortab.o \
$(MESABUILDDIR)context.o \
$(MESABUILDDIR)convolve.o \
$(MESABUILDDIR)debug.o \
$(MESABUILDDIR)depth.o \
$(MESABUILDDIR)dlist.o \
$(MESABUILDDIR)drawpix.o \
$(MESABUILDDIR)enable.o \
$(MESABUILDDIR)enums.o \
$(MESABUILDDIR)eval.o \
$(MESABUILDDIR)execmem.o \
$(MESABUILDDIR)extensions.o \
$(MESABUILDDIR)fbobject.o \
$(MESABUILDDIR)feedback.o \
$(MESABUILDDIR)fog.o \
$(MESABUILDDIR)framebuffer.o \
$(MESABUILDDIR)get.o \
$(MESABUILDDIR)getstring.o \
$(MESABUILDDIR)hash.o \
$(MESABUILDDIR)hint.o \
$(MESABUILDDIR)histogram.o \
$(MESABUILDDIR)image.o \
$(MESABUILDDIR)imports.o \
$(MESABUILDDIR)light.o \
$(MESABUILDDIR)lines.o \
$(MESABUILDDIR)matrix.o \
$(MESABUILDDIR)mm.o \
$(MESABUILDDIR)occlude.o \
$(MESABUILDDIR)pixel.o \
$(MESABUILDDIR)points.o \
$(MESABUILDDIR)polygon.o \
$(MESABUILDDIR)rastpos.o \
$(MESABUILDDIR)renderbuffer.o \
$(MESABUILDDIR)state.o \
$(MESABUILDDIR)stencil.o \
$(MESABUILDDIR)texcompress.o \
$(MESABUILDDIR)texcompress_fxt1.o \
$(MESABUILDDIR)texcompress_s3tc.o \
$(MESABUILDDIR)texenvprogram.o \
$(MESABUILDDIR)texformat.o \
$(MESABUILDDIR)teximage.o \
$(MESABUILDDIR)texrender.o \
$(MESABUILDDIR)texobj.o \
$(MESABUILDDIR)texstate.o \
$(MESABUILDDIR)texstore.o \
$(MESABUILDDIR)varray.o \
$(MESABUILDDIR)vtxfmt.o
#ifdef NeedAllMesaSrc
DISPATCHUOBJS = $(MESABUILDDIR)unshared/dispatch.o
GLAPIUOBJS = $(MESABUILDDIR)unshared/glapi.o
GLTHREADUOBJS = $(MESABUILDDIR)unshared/glthread.o
#endif
#if defined(DoSharedLib) && DoSharedLib
COREMESABASEUOBJS = \
$(DISPATCHUOBJS) \
$(GLAPIUOBJS) \
$(GLTHREADUOBJS) \
$(MESABUILDDIR)unshared/api_arrayelt.o \
$(MESABUILDDIR)unshared/api_loopback.o \
$(MESABUILDDIR)unshared/api_noop.o \
$(MESABUILDDIR)unshared/api_validate.o \
$(MESABUILDDIR)unshared/accum.o \
$(MESABUILDDIR)unshared/attrib.o \
$(MESABUILDDIR)unshared/blend.o \
$(MESABUILDDIR)unshared/bufferobj.o \
$(MESABUILDDIR)unshared/buffers.o \
$(MESABUILDDIR)unshared/clip.o \
$(MESABUILDDIR)unshared/colortab.o \
$(MESABUILDDIR)unshared/context.o \
$(MESABUILDDIR)unshared/convolve.o \
$(MESABUILDDIR)unshared/debug.o \
$(MESABUILDDIR)unshared/depth.o \
$(MESABUILDDIR)unshared/dlist.o \
$(MESABUILDDIR)unshared/drawpix.o \
$(MESABUILDDIR)unshared/enable.o \
$(MESABUILDDIR)unshared/enums.o \
$(MESABUILDDIR)unshared/eval.o \
$(MESABUILDDIR)unshared/execmem.o \
$(MESABUILDDIR)unshared/extensions.o \
$(MESABUILDDIR)unshared/fbobject.o \
$(MESABUILDDIR)unshared/feedback.o \
$(MESABUILDDIR)unshared/fog.o \
$(MESABUILDDIR)unshared/framebuffer.o \
$(MESABUILDDIR)unshared/get.o \
$(MESABUILDDIR)unshared/getstring.o \
$(MESABUILDDIR)unshared/hash.o \
$(MESABUILDDIR)unshared/hint.o \
$(MESABUILDDIR)unshared/histogram.o \
$(MESABUILDDIR)unshared/image.o \
$(MESABUILDDIR)unshared/imports.o \
$(MESABUILDDIR)unshared/light.o \
$(MESABUILDDIR)unshared/lines.o \
$(MESABUILDDIR)unshared/matrix.o \
$(MESABUILDDIR)unshared/mm.o \
$(MESABUILDDIR)unshared/occlude.o \
$(MESABUILDDIR)unshared/pixel.o \
$(MESABUILDDIR)unshared/points.o \
$(MESABUILDDIR)unshared/polygon.o \
$(MESABUILDDIR)unshared/rastpos.o \
$(MESABUILDDIR)unshared/renderbuffer.o \
$(MESABUILDDIR)unshared/state.o \
$(MESABUILDDIR)unshared/stencil.o \
$(MESABUILDDIR)unshared/texcompress.o \
$(MESABUILDDIR)unshared/texcompress_fxt1.o \
$(MESABUILDDIR)unshared/texcompress_s3tc.o \
$(MESABUILDDIR)unshared/texenvprogram.o \
$(MESABUILDDIR)unshared/texformat.o \
$(MESABUILDDIR)unshared/teximage.o \
$(MESABUILDDIR)unshared/texobj.o \
$(MESABUILDDIR)unshared/texrender.o \
$(MESABUILDDIR)unshared/texstate.o \
$(MESABUILDDIR)unshared/texstore.o \
$(MESABUILDDIR)unshared/varray.o \
$(MESABUILDDIR)unshared/vtxfmt.o
#else
COREMESABASEUOBJS = $(COREMESABASEOBJS)
#endif
#ifdef NeedAllMesaSrc
DISPATCHDOBJS = $(MESABUILDDIR)debugger/dispatch.o
GLAPIDOBJS = $(MESABUILDDIR)debugger/glapi.o
GLTHREADDOBJS = $(MESABUILDDIR)debugger/glthread.o
#endif
COREMESABASEDOBJS = \
$(DISPATCHDOBJS) \
$(GLAPIDOBJS) \
$(GLTHREADDOBJS) \
$(MESABUILDDIR)debugger/api_arrayelt.o \
$(MESABUILDDIR)debugger/api_loopback.o \
$(MESABUILDDIR)debugger/api_noop.o \
$(MESABUILDDIR)debugger/api_validate.o \
$(MESABUILDDIR)debugger/accum.o \
$(MESABUILDDIR)debugger/attrib.o \
$(MESABUILDDIR)debugger/blend.o \
$(MESABUILDDIR)debugger/bufferobj.o \
$(MESABUILDDIR)debugger/buffers.o \
$(MESABUILDDIR)debugger/clip.o \
$(MESABUILDDIR)debugger/colortab.o \
$(MESABUILDDIR)debugger/context.o \
$(MESABUILDDIR)debugger/convolve.o \
$(MESABUILDDIR)debugger/debug.o \
$(MESABUILDDIR)debugger/depth.o \
$(MESABUILDDIR)debugger/dlist.o \
$(MESABUILDDIR)debugger/drawpix.o \
$(MESABUILDDIR)debugger/enable.o \
$(MESABUILDDIR)debugger/enums.o \
$(MESABUILDDIR)debugger/eval.o \
$(MESABUILDDIR)debugger/execmem.o \
$(MESABUILDDIR)debugger/extensions.o \
$(MESABUILDDIR)debugger/fbobject.o \
$(MESABUILDDIR)debugger/feedback.o \
$(MESABUILDDIR)debugger/fog.o \
$(MESABUILDDIR)debugger/framebuffer.o \
$(MESABUILDDIR)debugger/get.o \
$(MESABUILDDIR)debugger/getstring.o \
$(MESABUILDDIR)debugger/hash.o \
$(MESABUILDDIR)debugger/hint.o \
$(MESABUILDDIR)debugger/histogram.o \
$(MESABUILDDIR)debugger/image.o \
$(MESABUILDDIR)debugger/imports.o \
$(MESABUILDDIR)debugger/light.o \
$(MESABUILDDIR)debugger/lines.o \
$(MESABUILDDIR)debugger/matrix.o \
$(MESABUILDDIR)debugger/mm.o \
$(MESABUILDDIR)debugger/occlude.o \
$(MESABUILDDIR)debugger/pixel.o \
$(MESABUILDDIR)debugger/points.o \
$(MESABUILDDIR)debugger/polygon.o \
$(MESABUILDDIR)debugger/rastpos.o \
$(MESABUILDDIR)debugger/renderbuffer.o \
$(MESABUILDDIR)debugger/state.o \
$(MESABUILDDIR)debugger/stencil.o \
$(MESABUILDDIR)debugger/texcompress.o \
$(MESABUILDDIR)debugger/texcompress_fxt1.o \
$(MESABUILDDIR)debugger/texcompress_s3tc.o \
$(MESABUILDDIR)debugger/texenvprogram.o \
$(MESABUILDDIR)debugger/texformat.o \
$(MESABUILDDIR)debugger/teximage.o \
$(MESABUILDDIR)debugger/texobj.o \
$(MESABUILDDIR)debugger/texrender.o \
$(MESABUILDDIR)debugger/texstate.o \
$(MESABUILDDIR)debugger/texstore.o \
$(MESABUILDDIR)debugger/varray.o \
$(MESABUILDDIR)debugger/vtxfmt.o
#ifdef NeedAllMesaSrc
DISPATCHPOBJS = $(MESABUILDDIR)profiled/dispatch.o
GLAPIPOBJS = $(MESABUILDDIR)profiled/glapi.o
GLTHREADPOBJS = $(MESABUILDDIR)profiled/glthread.o
#endif
COREMESABASEPOBJS = \
$(DISPATCHPOBJS) \
$(GLAPIPOBJS) \
$(GLTHREADPOBJS) \
$(MESABUILDDIR)profiled/api_arrayelt.o \
$(MESABUILDDIR)profiled/api_loopback.o \
$(MESABUILDDIR)profiled/api_noop.o \
$(MESABUILDDIR)profiled/api_validate.o \
$(MESABUILDDIR)profiled/accum.o \
$(MESABUILDDIR)profiled/attrib.o \
$(MESABUILDDIR)profiled/blend.o \
$(MESABUILDDIR)profiled/bufferobj.o \
$(MESABUILDDIR)profiled/buffers.o \
$(MESABUILDDIR)profiled/clip.o \
$(MESABUILDDIR)profiled/colortab.o \
$(MESABUILDDIR)profiled/context.o \
$(MESABUILDDIR)profiled/convolve.o \
$(MESABUILDDIR)profiled/debug.o \
$(MESABUILDDIR)profiled/depth.o \
$(MESABUILDDIR)profiled/dlist.o \
$(MESABUILDDIR)profiled/drawpix.o \
$(MESABUILDDIR)profiled/enable.o \
$(MESABUILDDIR)profiled/enums.o \
$(MESABUILDDIR)profiled/eval.o \
$(MESABUILDDIR)profiled/execmem.o \
$(MESABUILDDIR)profiled/extensions.o \
$(MESABUILDDIR)profiled/fbobject.o \
$(MESABUILDDIR)profiled/feedback.o \
$(MESABUILDDIR)profiled/fog.o \
$(MESABUILDDIR)profiled/framebuffer.o \
$(MESABUILDDIR)profiled/get.o \
$(MESABUILDDIR)profiled/getstring.o \
$(MESABUILDDIR)profiled/hash.o \
$(MESABUILDDIR)profiled/hint.o \
$(MESABUILDDIR)profiled/histogram.o \
$(MESABUILDDIR)profiled/image.o \
$(MESABUILDDIR)profiled/imports.o \
$(MESABUILDDIR)profiled/light.o \
$(MESABUILDDIR)profiled/lines.o \
$(MESABUILDDIR)profiled/matrix.o \
$(MESABUILDDIR)profiled/mm.o \
$(MESABUILDDIR)profiled/occlude.o \
$(MESABUILDDIR)profiled/pixel.o \
$(MESABUILDDIR)profiled/points.o \
$(MESABUILDDIR)profiled/polygon.o \
$(MESABUILDDIR)profiled/rastpos.o \
$(MESABUILDDIR)profiled/renderbuffer.o \
$(MESABUILDDIR)profiled/state.o \
$(MESABUILDDIR)profiled/stencil.o \
$(MESABUILDDIR)profiled/texcompress.o \
$(MESABUILDDIR)profiled/texcompress_fxt1.o \
$(MESABUILDDIR)profiled/texcompress_s3tc.o \
$(MESABUILDDIR)profiled/texenvprogram.o \
$(MESABUILDDIR)profiled/texformat.o \
$(MESABUILDDIR)profiled/teximage.o \
$(MESABUILDDIR)profiled/texobj.o \
$(MESABUILDDIR)profiled/texrender.o \
$(MESABUILDDIR)profiled/texstate.o \
$(MESABUILDDIR)profiled/texstore.o \
$(MESABUILDDIR)profiled/varray.o \
$(MESABUILDDIR)profiled/vtxfmt.o

View File

@@ -0,0 +1,27 @@
/**************************************************************************/
/* */
/* Copyright (c) 2001, 2011 NoMachine (http://www.nomachine.com) */
/* Copyright (c) 2008-2017 Oleksandr Shneyder <o.shneyder@phoca-gmbh.de> */
/* Copyright (c) 2011-2022 Mike Gabriel <mike.gabriel@das-netzwerkteam.de>*/
/* Copyright (c) 2014-2019 Mihai Moldovan <ionic@ionic.de> */
/* Copyright (c) 2014-2022 Ulrich Sibiller <uli42@gmx.de> */
/* Copyright (c) 2015-2016 Qindel Group (http://www.qindel.com) */
/* */
/* NXAGENT, NX protocol compression and NX extensions to this software */
/* are copyright of the aforementioned persons and companies. */
/* */
/* Redistribution and use of the present software is allowed according */
/* to terms specified in the file LICENSE which comes in the source */
/* distribution. */
/* */
/* All rights reserved. */
/* */
/**************************************************************************/
typedef struct _WSDrawBufferRec {
GLframebuffer *DrawBuffer;
struct _WSDrawBufferRec *next;
} WSDrawBufferRec, *WSDrawBufferPtr;
WSDrawBufferPtr pWSDrawBuffer;

View File

@@ -0,0 +1,35 @@
#include <Server.tmpl>
#define NeedAllMesaSrc
#define NeedToLinkMesaSrc
#define MesaMathBuildDir /**/
#include "Imakefile.inc"
SRCS = $(MESA_MATH_SRCS)
OBJS = $(MESA_MATH_OBJS)
INCLUDES = -I$(MESASRCDIR)/src/mesa \
-I$(MESASRCDIR)/src/mesa/math \
-I$(MESASRCDIR)/src/mesa/main \
-I$(MESASRCDIR)/src/mesa/glapi \
-I$(MESASRCDIR)/include \
-I$(SERVERSRC)/include -I$(XINCLUDESRC) \
-I$(SERVERSRC)/GL/include -I$(SERVERSRC)/GL/glx \
-I$(LIBSRC)/GL/include \
-I$(XF86SRC) -I$(INCLUDESRC)
DEFINES = $(GLX_DEFINES) /*-DUSE_X86_ASM*/ /*-DUSE_SPARC_ASM*/
NormalLibraryObjectRule()
SubdirLibraryRule($(OBJS))
NormalLintTarget($(SRCS))
DependTarget()
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif

View File

@@ -0,0 +1,76 @@
MESAMATHBUILDDIR = MesaMathBuildDir
MESA_MATH_SRCS = $(MESAMATHBUILDDIR)m_debug_clip.c \
$(MESAMATHBUILDDIR)m_debug_norm.c \
$(MESAMATHBUILDDIR)m_debug_xform.c \
$(MESAMATHBUILDDIR)m_eval.c \
$(MESAMATHBUILDDIR)m_matrix.c \
$(MESAMATHBUILDDIR)m_translate.c \
$(MESAMATHBUILDDIR)m_vector.c \
$(MESAMATHBUILDDIR)m_xform.c
#ifdef NeedToLinkMesaSrc
LinkSourceFile(mathmod.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_clip_tmp.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_copy_tmp.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_debug_clip.c, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_debug.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_debug_util.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_debug_norm.c, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_debug_xform.c, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_dotprod_tmp.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_eval.c, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_eval.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_matrix.c, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_matrix.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_norm_tmp.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_translate.c, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_translate.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_trans_tmp.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_vector.c, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_vector.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_xform.c, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_xform.h, $(MESASRCDIR)/src/mesa/math)
LinkSourceFile(m_xform_tmp.h, $(MESASRCDIR)/src/mesa/math)
#endif
MESA_MATH_OBJS = $(MESAMATHBUILDDIR)m_debug_clip.o \
$(MESAMATHBUILDDIR)m_debug_norm.o \
$(MESAMATHBUILDDIR)m_debug_xform.o \
$(MESAMATHBUILDDIR)m_eval.o \
$(MESAMATHBUILDDIR)m_matrix.o \
$(MESAMATHBUILDDIR)m_translate.o \
$(MESAMATHBUILDDIR)m_vector.o \
$(MESAMATHBUILDDIR)m_xform.o
#if defined(DoSharedLib) && DoSharedLib
MESA_MATH_UOBJS = $(MESAMATHBUILDDIR)unshared/m_debug_clip.o \
$(MESAMATHBUILDDIR)unshared/m_debug_norm.o \
$(MESAMATHBUILDDIR)unshared/m_debug_xform.o \
$(MESAMATHBUILDDIR)unshared/m_eval.o \
$(MESAMATHBUILDDIR)unshared/m_matrix.o \
$(MESAMATHBUILDDIR)unshared/m_translate.o \
$(MESAMATHBUILDDIR)unshared/m_vector.o \
$(MESAMATHBUILDDIR)unshared/m_xform.o
#else
MATH_MESA_UOBJS = $(MESA_MATH_OBJS)
#endif
MESA_MATH_DOBJS = $(MESAMATHBUILDDIR)debugger/m_debug_clip.o \
$(MESAMATHBUILDDIR)debugger/m_debug_norm.o \
$(MESAMATHBUILDDIR)debugger/m_debug_xform.o \
$(MESAMATHBUILDDIR)debugger/m_eval.o \
$(MESAMATHBUILDDIR)debugger/m_matrix.o \
$(MESAMATHBUILDDIR)debugger/m_translate.o \
$(MESAMATHBUILDDIR)debugger/m_vector.o \
$(MESAMATHBUILDDIR)debugger/m_xform.o
MESA_MATH_POBJS = $(MESAMATHBUILDDIR)profiled/m_debug_clip.o \
$(MESAMATHBUILDDIR)profiled/m_debug_norm.o \
$(MESAMATHBUILDDIR)profiled/m_debug_xform.o \
$(MESAMATHBUILDDIR)profiled/m_eval.o \
$(MESAMATHBUILDDIR)profiled/m_matrix.o \
$(MESAMATHBUILDDIR)profiled/m_translate.o \
$(MESAMATHBUILDDIR)profiled/m_vector.o \
$(MESAMATHBUILDDIR)profiled/m_xform.o

View File

@@ -0,0 +1,40 @@
#define IHaveSubdirs
SUBDIRS = grammar slang
#include <Server.tmpl>
#define NeedAllMesaSrc
#define NeedToLinkMesaSrc
#define MesaShaderBuildDir /**/
#include "Imakefile.inc"
SRCS = $(MESA_SHADER_SRCS)
OBJS = $(MESA_SHADER_OBJS)
INCLUDES = -I$(MESASRCDIR)/src/mesa \
-I$(MESASRCDIR)/src/mesa/shader \
-I$(MESASRCDIR)/src/mesa/shader/grammar \
-I$(MESASRCDIR)/src/mesa/shader/slang \
-I$(MESASRCDIR)/src/mesa/main \
-I$(MESASRCDIR)/src/mesa/glapi \
-I$(MESASRCDIR)/include \
-I$(SERVERSRC)/include -I$(XINCLUDESRC) \
-I$(SERVERSRC)/GL/include -I$(SERVERSRC)/GL/glx \
-I$(LIBSRC)/GL/include \
-I$(XF86SRC) -I$(INCLUDESRC)
DEFINES = $(GLX_DEFINES) /*-DUSE_X86_ASM*/ /*-DUSE_SPARC_ASM*/
NormalLibraryObjectRule()
SubdirLibraryRule($(OBJS))
NormalLintTarget($(SRCS))
DependTarget()
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif

View File

@@ -0,0 +1,100 @@
MESASHADERBUILDDIR = MesaShaderBuildDir
MESA_SHADER_SRCS = $(MESASHADERBUILDDIR)arbprogparse.c \
$(MESASHADERBUILDDIR)arbprogram.c \
$(MESASHADERBUILDDIR)arbfragparse.c \
$(MESASHADERBUILDDIR)arbvertparse.c \
$(MESASHADERBUILDDIR)atifragshader.c \
$(MESASHADERBUILDDIR)nvprogram.c \
$(MESASHADERBUILDDIR)nvfragparse.c \
$(MESASHADERBUILDDIR)nvvertexec.c \
$(MESASHADERBUILDDIR)nvvertparse.c \
$(MESASHADERBUILDDIR)program.c \
$(MESASHADERBUILDDIR)shaderobjects.c \
$(MESASHADERBUILDDIR)shaderobjects_3dlabs.c
#ifdef NeedToLinkMesaSrc
LinkSourceFile(arbprogparse.c, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(arbprogram.c, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(arbfragparse.c, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(arbvertparse.c, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(arbfragparse.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(arbprogparse.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(arbprogram.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(arbprogram_syn.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(arbvertparse.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(atifragshader.c, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(atifragshader.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(nvfragparse.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(nvfragprog.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(nvprogram.c, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(nvprogram.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(nvfragparse.c, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(nvvertexec.c, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(nvvertexec.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(nvvertparse.c, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(nvvertparse.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(nvvertprog.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(program.c, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(program.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(shaderobjects.c, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(shaderobjects.h, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(shaderobjects_3dlabs.c, $(MESASRCDIR)/src/mesa/shader)
LinkSourceFile(shaderobjects_3dlabs.h, $(MESASRCDIR)/src/mesa/shader)
#endif
MESA_SHADER_OBJS = $(MESASHADERBUILDDIR)arbprogparse.o \
$(MESASHADERBUILDDIR)arbprogram.o \
$(MESASHADERBUILDDIR)arbfragparse.o \
$(MESASHADERBUILDDIR)arbvertparse.o \
$(MESASHADERBUILDDIR)atifragshader.o \
$(MESASHADERBUILDDIR)nvprogram.o \
$(MESASHADERBUILDDIR)nvfragparse.o \
$(MESASHADERBUILDDIR)nvvertexec.o \
$(MESASHADERBUILDDIR)nvvertparse.o \
$(MESASHADERBUILDDIR)program.o \
$(MESASHADERBUILDDIR)shaderobjects.o \
$(MESASHADERBUILDDIR)shaderobjects_3dlabs.o
#if defined(DoSharedLib) && DoSharedLib
MESA_SHADER_UOBJS = $(MESASHADERBUILDDIR)unshared/arbprogparse.o \
$(MESASHADERBUILDDIR)unshared/arbprogram.o \
$(MESASHADERBUILDDIR)unshared/arbfragparse.o \
$(MESASHADERBUILDDIR)unshared/arbvertparse.o \
$(MESASHADERBUILDDIR)unshared/atifragshader.o \
$(MESASHADERBUILDDIR)unshared/nvprogram.o \
$(MESASHADERBUILDDIR)unshared/nvfragparse.o \
$(MESASHADERBUILDDIR)unshared/nvvertexec.o \
$(MESASHADERBUILDDIR)unshared/nvvertparse.o \
$(MESASHADERBUILDDIR)unshared/program.o \
$(MESASHADERBUILDDIR)unshared/shaderobjects.o \
$(MESASHADERBUILDDIR)unshared/shaderobjects_3dlabs.o
#else
MESA_SHADER_UOBJS = $(MESA_SHADER_OBJS)
#endif
MESA_SHADER_DOBJS = $(MESASHADERBUILDDIR)debugger/arbprogparse.o \
$(MESASHADERBUILDDIR)debugger/arbprogram.o \
$(MESASHADERBUILDDIR)debugger/arbfragparse.o \
$(MESASHADERBUILDDIR)debugger/arbvertparse.o \
$(MESASHADERBUILDDIR)debugger/atifragshader.o \
$(MESASHADERBUILDDIR)debugger/nvprogram.o \
$(MESASHADERBUILDDIR)debugger/nvfragparse.o \
$(MESASHADERBUILDDIR)debugger/nvvertexec.o \
$(MESASHADERBUILDDIR)debugger/nvvertparse.o \
$(MESASHADERBUILDDIR)debugger/program.o \
$(MESASHADERBUILDDIR)debugger/shaderobjects.o \
$(MESASHADERBUILDDIR)debugger/shaderobjects_3dlabs.o
MESA_SHADER_POBJS = $(MESASHADERBUILDDIR)profiled/arbprogparse.o \
$(MESASHADERBUILDDIR)profiled/arbprogram.o \
$(MESASHADERBUILDDIR)profiled/arbfragparse.o \
$(MESASHADERBUILDDIR)profiled/arbvertparse.o \
$(MESASHADERBUILDDIR)profiled/atifragshader.o \
$(MESASHADERBUILDDIR)profiled/nvprogram.o \
$(MESASHADERBUILDDIR)profiled/nvfragparse.o \
$(MESASHADERBUILDDIR)profiled/nvvertexec.o \
$(MESASHADERBUILDDIR)profiled/nvvertparse.o \
$(MESASHADERBUILDDIR)profiled/program.o \
$(MESASHADERBUILDDIR)profiled/shaderobjects.o \
$(MESASHADERBUILDDIR)profiled/shaderobjects_3dlabs.o

View File

@@ -0,0 +1,37 @@
#include <Server.tmpl>
#define NeedAllMesaSrc
#define NeedToLinkMesaSrc
#define MesaGrammarBuildDir /**/
#include "Imakefile.inc"
SRCS = $(MESA_GRAMMAR_SRCS)
OBJS = $(MESA_GRAMMAR_OBJS)
INCLUDES = -I$(MESASRCDIR)/src/mesa \
-I$(MESASRCDIR)/src/mesa/shader \
-I$(MESASRCDIR)/src/mesa/shader/grammar \
-I$(MESASRCDIR)/src/mesa/main \
-I$(MESASRCDIR)/src/mesa/glapi \
-I$(MESASRCDIR)/include \
-I$(SERVERSRC)/include -I$(XINCLUDESRC) \
-I$(SERVERSRC)/GL/include -I$(SERVERSRC)/GL/glx \
-I$(LIBSRC)/GL/include \
-I$(XF86SRC) -I$(INCLUDESRC)
DEFINES = $(GLX_DEFINES) /*-DUSE_X86_ASM*/ /*-DUSE_SPARC_ASM*/
NormalLibraryObjectRule()
SubdirLibraryRule($(OBJS))
NormalLintTarget($(SRCS))
DependTarget()
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif

View File

@@ -0,0 +1,23 @@
MESAGRAMMARBUILDDIR=MesaGrammarBuildDir
MESA_GRAMMAR_SRCS = $(MESAGRAMMARBUILDDIR)grammar_mesa.c
#ifdef NeedToLinkMesaSrc
LinkSourceFile(grammar.c, $(MESASRCDIR)/src/mesa/shader/grammar)
LinkSourceFile(grammar.h, $(MESASRCDIR)/src/mesa/shader/grammar)
LinkSourceFile(grammar_syn.h, $(MESASRCDIR)/src/mesa/shader/grammar)
LinkSourceFile(grammar_mesa.c, $(MESASRCDIR)/src/mesa/shader/grammar)
LinkSourceFile(grammar_mesa.h, $(MESASRCDIR)/src/mesa/shader/grammar)
#endif
MESA_GRAMMAR_OBJS = $(MESAGRAMMARBUILDDIR)grammar_mesa.o
#if defined(DoSharedLib) && DoSharedLib
MESA_GRAMMAR_UOBJS = $(MESAGRAMMARBUILDDIR)unshared/grammar_mesa.o
#else
MESA_GRAMMAR_UOBJS = $(MESA_GRAMMAR_OBJS)
#endif
MESA_GRAMMAR_DOBJS = $(MESAGRAMMARBUILDDIR)debugger/grammar_mesa.o
MESA_GRAMMAR_POBJS = $(MESAGRAMMARBUILDDIR)profiled/grammar_mesa.o

View File

@@ -0,0 +1,40 @@
#define IHaveSubdirs
SUBDIRS = library
#include <Server.tmpl>
#define NeedAllMesaSrc
#define NeedToLinkMesaSrc
#define MesaSlangBuildDir /**/
#include "Imakefile.inc"
SRCS = $(MESA_SLANG_SRCS)
OBJS = $(MESA_SLANG_OBJS)
INCLUDES = -I$(MESASRCDIR)/src/mesa \
-I$(MESASRCDIR)/src/mesa/shader \
-I$(MESASRCDIR)/src/mesa/shader/grammar \
-I$(MESASRCDIR)/src/mesa/main \
-I$(MESASRCDIR)/src/mesa/glapi \
-I$(MESASRCDIR)/include \
-I$(SERVERSRC)/include -I$(XINCLUDESRC) \
-I$(SERVERSRC)/GL/include -I$(SERVERSRC)/GL/glx \
-I$(LIBSRC)/GL/include \
-I$(XF86SRC) -I$(INCLUDESRC)
DEFINES = $(GLX_DEFINES) /*-DUSE_X86_ASM*/ /*-DUSE_SPARC_ASM*/
NormalLibraryObjectRule()
SubdirLibraryRule($(OBJS))
NormalLintTarget($(SRCS))
DependTarget()
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif

View File

@@ -0,0 +1,84 @@
MESASLANGBUILDDIR=MesaSlangBuildDir
MESA_SLANG_SRCS = $(MESASLANGBUILDDIR)slang_assemble_assignment.c \
$(MESASLANGBUILDDIR)slang_assemble.c \
$(MESASLANGBUILDDIR)slang_assemble_conditional.c \
$(MESASLANGBUILDDIR)slang_assemble_constructor.c \
$(MESASLANGBUILDDIR)slang_assemble_typeinfo.c \
$(MESASLANGBUILDDIR)slang_compile.c \
$(MESASLANGBUILDDIR)slang_execute.c \
$(MESASLANGBUILDDIR)slang_preprocess.c \
$(MESASLANGBUILDDIR)slang_storage.c \
$(MESASLANGBUILDDIR)slang_utility.c
#ifdef NeedToLinkMesaSrc
LinkSourceFile(slang_assemble_assignment.c, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_assemble_assignment.h, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_assemble.c, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_assemble.h, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_assemble_conditional.c, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_assemble_conditional.h, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_assemble_constructor.c, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_assemble_constructor.h, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_assemble_typeinfo.c, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_assemble_typeinfo.h, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_compile.c, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_compile.h, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_execute.c, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_execute.h, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_preprocess.c, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_preprocess.h, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_storage.c, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_storage.h, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_utility.c, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(slang_utility.h, $(MESASRCDIR)/src/mesa/shader/slang)
LinkSourceFile(traverse_wrap.h, $(MESASRCDIR)/src/mesa/shader/slang)
#endif
MESA_SLANG_OBJS = $(MESASLANGBUILDDIR)slang_assemble_assignment.o \
$(MESASLANGBUILDDIR)slang_assemble.o \
$(MESASLANGBUILDDIR)slang_assemble_conditional.o \
$(MESASLANGBUILDDIR)slang_assemble_constructor.o \
$(MESASLANGBUILDDIR)slang_assemble_typeinfo.o \
$(MESASLANGBUILDDIR)slang_compile.o \
$(MESASLANGBUILDDIR)slang_execute.o \
$(MESASLANGBUILDDIR)slang_preprocess.o \
$(MESASLANGBUILDDIR)slang_storage.o \
$(MESASLANGBUILDDIR)slang_utility.o
#if defined(DoSharedLib) && DoSharedLib
MESA_SLANG_UOBJS = $(MESASLANGBUILDDIR)unshared/slang_assemble_assignment.o \
$(MESASLANGBUILDDIR)unshared/slang_assemble.o \
$(MESASLANGBUILDDIR)unshared/slang_assemble_conditional.o \
$(MESASLANGBUILDDIR)unshared/slang_assemble_constructor.o \
$(MESASLANGBUILDDIR)unshared/slang_assemble_typeinfo.o \
$(MESASLANGBUILDDIR)unshared/slang_compile.o \
$(MESASLANGBUILDDIR)unshared/slang_execute.o \
$(MESASLANGBUILDDIR)unshared/slang_preprocess.o \
$(MESASLANGBUILDDIR)unshared/slang_storage.o \
$(MESASLANGBUILDDIR)unshared/slang_utility.o
#else
MESA_SLANG_UOBJS = $(MESA_SLANG_OBJS)
#endif
MESA_SLANG_DOBJS = $(MESASLANGBUILDDIR)debugger/slang_assemble_assignment.o \
$(MESASLANGBUILDDIR)debugger/slang_assemble.o \
$(MESASLANGBUILDDIR)debugger/slang_assemble_conditional.o \
$(MESASLANGBUILDDIR)debugger/slang_assemble_constructor.o \
$(MESASLANGBUILDDIR)debugger/slang_assemble_typeinfo.o \
$(MESASLANGBUILDDIR)debugger/slang_compile.o \
$(MESASLANGBUILDDIR)debugger/slang_execute.o \
$(MESASLANGBUILDDIR)debugger/slang_preprocess.o \
$(MESASLANGBUILDDIR)debugger/slang_storage.o \
$(MESASLANGBUILDDIR)debugger/slang_utility.o
MESA_SLANG_POBJS = $(MESASLANGBUILDDIR)profiled/slang_assemble_assignment.o \
$(MESASLANGBUILDDIR)profiled/slang_assemble.o \
$(MESASLANGBUILDDIR)profiled/slang_assemble_conditional.o \
$(MESASLANGBUILDDIR)profiled/slang_assemble_constructor.o \
$(MESASLANGBUILDDIR)profiled/slang_assemble_typeinfo.o \
$(MESASLANGBUILDDIR)profiled/slang_compile.o \
$(MESASLANGBUILDDIR)profiled/slang_execute.o \
$(MESASLANGBUILDDIR)profiled/slang_preprocess.o \
$(MESASLANGBUILDDIR)profiled/slang_storage.o \
$(MESASLANGBUILDDIR)profiled/slang_utility.o

View File

@@ -0,0 +1,30 @@
#include <Server.tmpl>
#define NeedAllMesaSrc
#define NeedToLinkMesaSrc
#define MesaLibraryBuildDir /**/
#include "Imakefile.inc"
INCLUDES = -I$(MESASRCDIR)/src/mesa \
-I$(MESASRCDIR)/src/mesa/shader \
-I$(MESASRCDIR)/src/mesa/shader/grammar \
-I$(MESASRCDIR)/src/mesa/main \
-I$(MESASRCDIR)/src/mesa/glapi \
-I$(MESASRCDIR)/include \
-I$(SERVERSRC)/include -I$(XINCLUDESRC) \
-I$(SERVERSRC)/GL/include -I$(SERVERSRC)/GL/glx \
-I$(LIBSRC)/GL/include \
-I$(XF86SRC) -I$(INCLUDESRC)
DEFINES = $(GLX_DEFINES) /*-DUSE_X86_ASM*/ /*-DUSE_SPARC_ASM*/
NormalLibraryObjectRule()
DependTarget()
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif

View File

@@ -0,0 +1,12 @@
#ifdef NeedToLinkMesaSrc
LinkSourceFile(slang_common_builtin_gc_bin.h, $(MESASRCDIR)/src/mesa/shader/slang/library)
LinkSourceFile(slang_common_builtin_gc.h, $(MESASRCDIR)/src/mesa/shader/slang/library)
LinkSourceFile(slang_core_gc_bin.h, $(MESASRCDIR)/src/mesa/shader/slang/library)
LinkSourceFile(slang_core_gc.h, $(MESASRCDIR)/src/mesa/shader/slang/library)
LinkSourceFile(slang_fragment_builtin_gc_bin.h, $(MESASRCDIR)/src/mesa/shader/slang/library)
LinkSourceFile(slang_fragment_builtin_gc.h, $(MESASRCDIR)/src/mesa/shader/slang/library)
LinkSourceFile(slang_shader_syn.h, $(MESASRCDIR)/src/mesa/shader/slang/library)
LinkSourceFile(slang_version_syn.h, $(MESASRCDIR)/src/mesa/shader/slang/library)
LinkSourceFile(slang_vertex_builtin_gc_bin.h, $(MESASRCDIR)/src/mesa/shader/slang/library)
LinkSourceFile(slang_vertex_builtin_gc.h, $(MESASRCDIR)/src/mesa/shader/slang/library)
#endif

View File

@@ -0,0 +1,42 @@
/* Large PIC tables needed for Solaris/SPARC builds */
#if defined(SunArchitecture) && defined(SparcArchitecture) && defined(LargePositionIndependentCFlags)
PICFLAGS = LargePositionIndependentCFlags
#endif
#include <Server.tmpl>
#define NeedAllMesaSrc
#define NeedToLinkMesaSrc
#define MesaSwrastBuildDir /**/
#include "Imakefile.inc"
SRCS = $(MESA_SWRAST_SRCS)
OBJS = $(MESA_SWRAST_OBJS)
INCLUDES = -I$(MESASRCDIR)/src/mesa \
-I$(MESASRCDIR)/src/mesa/main \
-I$(MESASRCDIR)/src/mesa/glapi \
-I$(MESASRCDIR)/src/mesa/swrast \
-I$(MESASRCDIR)/src/mesa/swrast_setup \
-I$(MESASRCDIR)/src/mesa/shader \
-I$(MESASRCDIR)/include \
-I$(SERVERSRC)/include -I$(XINCLUDESRC) \
-I$(SERVERSRC)/GL/include -I$(SERVERSRC)/GL/glx \
-I$(LIBSRC)/GL/include \
-I$(XF86SRC) -I$(INCLUDESRC)
DEFINES = $(GLX_DEFINES) /*-DUSE_X86_ASM*/ /*-DUSE_SPARC_ASM*/
NormalLibraryObjectRule()
SubdirLibraryRule($(OBJS))
NormalLintTarget($(SRCS))
DependTarget()
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif

View File

@@ -0,0 +1,212 @@
MESASWRASTBUILDDIR = MesaSwrastBuildDir
MESA_SWRAST_SRCS = $(MESASWRASTBUILDDIR)s_aaline.c \
$(MESASWRASTBUILDDIR)s_aatriangle.c \
$(MESASWRASTBUILDDIR)s_accum.c \
$(MESASWRASTBUILDDIR)s_alpha.c \
$(MESASWRASTBUILDDIR)s_atifragshader.c \
$(MESASWRASTBUILDDIR)s_bitmap.c \
$(MESASWRASTBUILDDIR)s_blend.c \
$(MESASWRASTBUILDDIR)s_buffers.c \
$(MESASWRASTBUILDDIR)s_context.c \
$(MESASWRASTBUILDDIR)s_copypix.c \
$(MESASWRASTBUILDDIR)s_depth.c \
$(MESASWRASTBUILDDIR)s_drawpix.c \
$(MESASWRASTBUILDDIR)s_feedback.c \
$(MESASWRASTBUILDDIR)s_fog.c \
$(MESASWRASTBUILDDIR)s_imaging.c \
$(MESASWRASTBUILDDIR)s_lines.c \
$(MESASWRASTBUILDDIR)s_logic.c \
$(MESASWRASTBUILDDIR)s_masking.c \
$(MESASWRASTBUILDDIR)s_nvfragprog.c \
$(MESASWRASTBUILDDIR)s_pixeltex.c \
$(MESASWRASTBUILDDIR)s_points.c \
$(MESASWRASTBUILDDIR)s_readpix.c \
$(MESASWRASTBUILDDIR)s_span.c \
$(MESASWRASTBUILDDIR)s_stencil.c \
$(MESASWRASTBUILDDIR)s_texstore.c \
$(MESASWRASTBUILDDIR)s_texture.c \
$(MESASWRASTBUILDDIR)s_triangle.c \
$(MESASWRASTBUILDDIR)s_zoom.c
#ifdef NeedToLinkMesaSrc
LinkSourceFile(s_aaline.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_aaline.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_aalinetemp.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_aatriangle.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_aatriangle.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_aatritemp.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_accum.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_accum.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_alpha.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_alpha.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_atifragshader.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_atifragshader.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_bitmap.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_blend.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_blend.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_buffers.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_context.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_context.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_copypix.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_depth.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_depth.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_drawpix.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_drawpix.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_feedback.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_feedback.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_fog.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_fog.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_imaging.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_lines.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_lines.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_linetemp.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_logic.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_logic.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_masking.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_masking.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_nvfragprog.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_nvfragprog.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_pixeltex.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_pixeltex.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_points.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_points.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_pointtemp.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_readpix.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_span.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_span.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_spantemp.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_stencil.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_stencil.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_texstore.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_texture.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_texture.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_triangle.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_triangle.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_trispan.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_tritemp.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_zoom.c, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(s_zoom.h, $(MESASRCDIR)/src/mesa/swrast)
LinkSourceFile(swrast.h, $(MESASRCDIR)/src/mesa/swrast)
#endif
MESA_SWRAST_OBJS = $(MESASWRASTBUILDDIR)s_aaline.o \
$(MESASWRASTBUILDDIR)s_aatriangle.o \
$(MESASWRASTBUILDDIR)s_accum.o \
$(MESASWRASTBUILDDIR)s_alpha.o \
$(MESASWRASTBUILDDIR)s_atifragshader.o \
$(MESASWRASTBUILDDIR)s_bitmap.o \
$(MESASWRASTBUILDDIR)s_blend.o \
$(MESASWRASTBUILDDIR)s_buffers.o \
$(MESASWRASTBUILDDIR)s_context.o \
$(MESASWRASTBUILDDIR)s_copypix.o \
$(MESASWRASTBUILDDIR)s_depth.o \
$(MESASWRASTBUILDDIR)s_drawpix.o \
$(MESASWRASTBUILDDIR)s_feedback.o \
$(MESASWRASTBUILDDIR)s_fog.o \
$(MESASWRASTBUILDDIR)s_imaging.o \
$(MESASWRASTBUILDDIR)s_lines.o \
$(MESASWRASTBUILDDIR)s_logic.o \
$(MESASWRASTBUILDDIR)s_masking.o \
$(MESASWRASTBUILDDIR)s_nvfragprog.o \
$(MESASWRASTBUILDDIR)s_pixeltex.o \
$(MESASWRASTBUILDDIR)s_points.o \
$(MESASWRASTBUILDDIR)s_readpix.o \
$(MESASWRASTBUILDDIR)s_span.o \
$(MESASWRASTBUILDDIR)s_stencil.o \
$(MESASWRASTBUILDDIR)s_texstore.o \
$(MESASWRASTBUILDDIR)s_texture.o \
$(MESASWRASTBUILDDIR)s_triangle.o \
$(MESASWRASTBUILDDIR)s_zoom.o
#if defined(DoSharedLib) && DoSharedLib
MESA_SWRAST_UOBJS = $(MESASWRASTBUILDDIR)unshared/s_aaline.o \
$(MESASWRASTBUILDDIR)unshared/s_aatriangle.o \
$(MESASWRASTBUILDDIR)unshared/s_accum.o \
$(MESASWRASTBUILDDIR)unshared/s_alpha.o \
$(MESASWRASTBUILDDIR)unshared/s_atifragshader.o \
$(MESASWRASTBUILDDIR)unshared/s_bitmap.o \
$(MESASWRASTBUILDDIR)unshared/s_blend.o \
$(MESASWRASTBUILDDIR)unshared/s_buffers.o \
$(MESASWRASTBUILDDIR)unshared/s_context.o \
$(MESASWRASTBUILDDIR)unshared/s_copypix.o \
$(MESASWRASTBUILDDIR)unshared/s_depth.o \
$(MESASWRASTBUILDDIR)unshared/s_drawpix.o \
$(MESASWRASTBUILDDIR)unshared/s_feedback.o \
$(MESASWRASTBUILDDIR)unshared/s_fog.o \
$(MESASWRASTBUILDDIR)unshared/s_imaging.o \
$(MESASWRASTBUILDDIR)unshared/s_lines.o \
$(MESASWRASTBUILDDIR)unshared/s_logic.o \
$(MESASWRASTBUILDDIR)unshared/s_masking.o \
$(MESASWRASTBUILDDIR)unshared/s_nvfragprog.o \
$(MESASWRASTBUILDDIR)unshared/s_pixeltex.o \
$(MESASWRASTBUILDDIR)unshared/s_points.o \
$(MESASWRASTBUILDDIR)unshared/s_readpix.o \
$(MESASWRASTBUILDDIR)unshared/s_span.o \
$(MESASWRASTBUILDDIR)unshared/s_stencil.o \
$(MESASWRASTBUILDDIR)unshared/s_texstore.o \
$(MESASWRASTBUILDDIR)unshared/s_texture.o \
$(MESASWRASTBUILDDIR)unshared/s_triangle.o \
$(MESASWRASTBUILDDIR)unshared/s_zoom.o
#else
MESA_SWRAST_UOBJS = $(MESA_SWRAST_OBJS)
#endif
MESA_SWRAST_DOBJS = $(MESASWRASTBUILDDIR)debugger/s_aaline.o \
$(MESASWRASTBUILDDIR)debugger/s_aatriangle.o \
$(MESASWRASTBUILDDIR)debugger/s_accum.o \
$(MESASWRASTBUILDDIR)debugger/s_alpha.o \
$(MESASWRASTBUILDDIR)debugger/s_atifragshader.o \
$(MESASWRASTBUILDDIR)debugger/s_bitmap.o \
$(MESASWRASTBUILDDIR)debugger/s_blend.o \
$(MESASWRASTBUILDDIR)debugger/s_buffers.o \
$(MESASWRASTBUILDDIR)debugger/s_context.o \
$(MESASWRASTBUILDDIR)debugger/s_copypix.o \
$(MESASWRASTBUILDDIR)debugger/s_depth.o \
$(MESASWRASTBUILDDIR)debugger/s_drawpix.o \
$(MESASWRASTBUILDDIR)debugger/s_feedback.o \
$(MESASWRASTBUILDDIR)debugger/s_fog.o \
$(MESASWRASTBUILDDIR)debugger/s_imaging.o \
$(MESASWRASTBUILDDIR)debugger/s_lines.o \
$(MESASWRASTBUILDDIR)debugger/s_logic.o \
$(MESASWRASTBUILDDIR)debugger/s_masking.o \
$(MESASWRASTBUILDDIR)debugger/s_nvfragprog.o \
$(MESASWRASTBUILDDIR)debugger/s_pixeltex.o \
$(MESASWRASTBUILDDIR)debugger/s_points.o \
$(MESASWRASTBUILDDIR)debugger/s_readpix.o \
$(MESASWRASTBUILDDIR)debugger/s_span.o \
$(MESASWRASTBUILDDIR)debugger/s_stencil.o \
$(MESASWRASTBUILDDIR)debugger/s_texstore.o \
$(MESASWRASTBUILDDIR)debugger/s_texture.o \
$(MESASWRASTBUILDDIR)debugger/s_triangle.o \
$(MESASWRASTBUILDDIR)debugger/s_zoom.o
MESA_SWRAST_POBJS = $(MESASWRASTBUILDDIR)profiled/s_aaline.o \
$(MESASWRASTBUILDDIR)profiled/s_aatriangle.o \
$(MESASWRASTBUILDDIR)profiled/s_accum.o \
$(MESASWRASTBUILDDIR)profiled/s_alpha.o \
$(MESASWRASTBUILDDIR)profiled/s_atifragshader.o \
$(MESASWRASTBUILDDIR)profiled/s_bitmap.o \
$(MESASWRASTBUILDDIR)profiled/s_blend.o \
$(MESASWRASTBUILDDIR)profiled/s_buffers.o \
$(MESASWRASTBUILDDIR)profiled/s_context.o \
$(MESASWRASTBUILDDIR)profiled/s_copypix.o \
$(MESASWRASTBUILDDIR)profiled/s_depth.o \
$(MESASWRASTBUILDDIR)profiled/s_drawpix.o \
$(MESASWRASTBUILDDIR)profiled/s_feedback.o \
$(MESASWRASTBUILDDIR)profiled/s_fog.o \
$(MESASWRASTBUILDDIR)profiled/s_imaging.o \
$(MESASWRASTBUILDDIR)profiled/s_lines.o \
$(MESASWRASTBUILDDIR)profiled/s_logic.o \
$(MESASWRASTBUILDDIR)profiled/s_masking.o \
$(MESASWRASTBUILDDIR)profiled/s_nvfragprog.o \
$(MESASWRASTBUILDDIR)profiled/s_pixeltex.o \
$(MESASWRASTBUILDDIR)profiled/s_points.o \
$(MESASWRASTBUILDDIR)profiled/s_readpix.o \
$(MESASWRASTBUILDDIR)profiled/s_span.o \
$(MESASWRASTBUILDDIR)profiled/s_stencil.o \
$(MESASWRASTBUILDDIR)profiled/s_texstore.o \
$(MESASWRASTBUILDDIR)profiled/s_texture.o \
$(MESASWRASTBUILDDIR)profiled/s_triangle.o \
$(MESASWRASTBUILDDIR)profiled/s_zoom.o

View File

@@ -0,0 +1,34 @@
#include <Server.tmpl>
#define NeedAllMesaSrc
#define NeedToLinkMesaSrc
#define MesaSwrastSetupBuildDir /**/
#include "Imakefile.inc"
SRCS = $(MESA_SWR_SETUP_SRCS)
OBJS = $(MESA_SWR_SETUP_OBJS)
INCLUDES = -I$(MESASRCDIR)/src/mesa \
-I$(MESASRCDIR)/src/mesa/main \
-I$(MESASRCDIR)/src/mesa/glapi \
-I$(MESASRCDIR)/src/mesa/swrast_setup \
-I$(MESASRCDIR)/include \
-I$(SERVERSRC)/include -I$(XINCLUDESRC) \
-I$(SERVERSRC)/GL/include -I$(SERVERSRC)/GL/glx \
-I$(LIBSRC)/GL/include \
-I$(XF86SRC) -I$(INCLUDESRC)
DEFINES = $(GLX_DEFINES) /*-DUSE_X86_ASM*/ /*-DUSE_SPARC_ASM*/
NormalLibraryObjectRule()
SubdirLibraryRule($(OBJS))
NormalLintTarget($(SRCS))
DependTarget()
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif

View File

@@ -0,0 +1,30 @@
MESASWRSETUPDIR = MesaSwrastSetupBuildDir
MESA_SWR_SETUP_SRCS = $(MESASWRSETUPDIR)ss_context.c \
$(MESASWRSETUPDIR)ss_triangle.c
#ifdef NeedToLinkMesaSrc
LinkSourceFile(ss_context.c, $(MESASRCDIR)/src/mesa/swrast_setup)
LinkSourceFile(ss_context.h, $(MESASRCDIR)/src/mesa/swrast_setup)
LinkSourceFile(ss_triangle.c, $(MESASRCDIR)/src/mesa/swrast_setup)
LinkSourceFile(ss_triangle.h, $(MESASRCDIR)/src/mesa/swrast_setup)
LinkSourceFile(ss_tritmp.h, $(MESASRCDIR)/src/mesa/swrast_setup)
LinkSourceFile(swrast_setup.h, $(MESASRCDIR)/src/mesa/swrast_setup)
#endif
MESA_SWR_SETUP_OBJS = $(MESASWRSETUPDIR)ss_context.o \
$(MESASWRSETUPDIR)ss_triangle.o
#if defined(DoSharedLib) && DoSharedLib
MESA_SWR_SETUP_UOBJS = $(MESASWRSETUPDIR)unshared/ss_context.o \
$(MESASWRSETUPDIR)unshared/ss_triangle.o
#else
MESA_SWR_SETUP_UOBJS = $(MESA_SWR_SETUP_OBJS)
#endif
MESA_SWR_SETUP_DOBJS = $(MESASWRSETUPDIR)debugger/ss_context.o \
$(MESASWRSETUPDIR)debugger/ss_triangle.o
MESA_SWR_SETUP_POBJS = $(MESASWRSETUPDIR)profiled/ss_context.o \
$(MESASWRSETUPDIR)profiled/ss_triangle.o

View File

@@ -0,0 +1,45 @@
/* Large PIC tables needed for Solaris/SPARC builds */
#if defined(SunArchitecture) && defined(SparcArchitecture) && defined(LargePositionIndependentCFlags)
PICFLAGS = LargePositionIndependentCFlags
#endif
#include <Server.tmpl>
#define NeedAllMesaSrc
#define NeedToLinkMesaSrc
#define MesaTnlBuildDir /**/
#include "Imakefile.inc"
SRCS = $(MESA_TNL_SRCS)
OBJS = $(MESA_TNL_OBJS)
INCLUDES = -I$(MESASRCDIR)/src/mesa \
-I$(MESASRCDIR)/src/mesa/array_cache \
-I$(MESASRCDIR)/src/mesa/math \
-I$(MESASRCDIR)/src/mesa/main \
-I$(MESASRCDIR)/src/mesa/glapi \
-I$(MESASRCDIR)/src/mesa/shader \
-I$(MESASRCDIR)/src/mesa/tnl \
-I$(MESASRCDIR)/include \
-I$(SERVERSRC)/include -I$(XINCLUDESRC) \
-I$(SERVERSRC)/GL/include -I$(SERVERSRC)/GL/glx \
-I$(LIBSRC)/GL/include \
-I$(XF86SRC) -I$(INCLUDESRC)
DEFINES = $(GLX_DEFINES) /*-DUSE_X86_ASM*/ /*-DUSE_SPARC_ASM*/
NormalLibraryObjectRule()
SubdirLibraryRule($(OBJS))
NormalLintTarget($(SRCS))
DependTarget()
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif

View File

@@ -0,0 +1,219 @@
MESATNLBUILDDIR = MesaTnlBuildDir
MESA_TNL_SRCS = $(MESATNLBUILDDIR)t_array_api.c \
$(MESATNLBUILDDIR)t_array_import.c \
$(MESATNLBUILDDIR)t_context.c \
$(MESATNLBUILDDIR)t_pipeline.c \
$(MESATNLBUILDDIR)t_save_api.c \
$(MESATNLBUILDDIR)t_save_loopback.c \
$(MESATNLBUILDDIR)t_save_playback.c \
$(MESATNLBUILDDIR)t_vb_arbprogram.c \
$(MESATNLBUILDDIR)t_vb_arbprogram_sse.c \
$(MESATNLBUILDDIR)t_vb_fog.c \
$(MESATNLBUILDDIR)t_vb_cull.c \
$(MESATNLBUILDDIR)t_vb_light.c \
$(MESATNLBUILDDIR)t_vb_normals.c \
$(MESATNLBUILDDIR)t_vb_points.c \
$(MESATNLBUILDDIR)t_vb_program.c \
$(MESATNLBUILDDIR)t_vb_render.c \
$(MESATNLBUILDDIR)t_vb_texgen.c \
$(MESATNLBUILDDIR)t_vb_texmat.c \
$(MESATNLBUILDDIR)t_vb_vertex.c \
$(MESATNLBUILDDIR)t_vertex.c \
$(MESATNLBUILDDIR)t_vertex_generic.c \
$(MESATNLBUILDDIR)t_vertex_sse.c \
$(MESATNLBUILDDIR)t_vp_build.c \
$(MESATNLBUILDDIR)t_vtx_api.c \
$(MESATNLBUILDDIR)t_vtx_eval.c \
$(MESATNLBUILDDIR)t_vtx_exec.c \
$(MESATNLBUILDDIR)t_vtx_generic.c
#if defined(i386Architecture) && MesaUseX86Asm
MESA_TNL_SRCS += MesaTnlAsmSrcs $(MESATNLBUILDDIR)t_vtx_x86.c \
$(MESATNLBUILDDIR)t_vtx_x86_gcc.S
#endif
#ifdef NeedToLinkMesaSrc
LinkSourceFile(t_array_api.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_array_api.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_array_import.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_array_import.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_context.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_context.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(tnl.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_pipeline.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_pipeline.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_save_api.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_save_api.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_save_loopback.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_save_playback.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_arbprogram.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_arbprogram.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_arbprogram_sse.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_cliptmp.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_fog.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_cull.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_light.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_lighttmp.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_normals.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_points.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_program.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_render.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_rendertmp.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_texgen.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_texmat.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vb_vertex.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vertex.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vertex.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vertex_generic.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vertex_sse.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vp_build.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vp_build.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vtx_api.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vtx_api.h, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vtx_eval.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vtx_exec.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vtx_generic.c, $(MESASRCDIR)/src/mesa/tnl)
#if defined(i386Architecture) && MesaUseX86Asm
LinkSourceFile(t_vtx_x86.c, $(MESASRCDIR)/src/mesa/tnl)
LinkSourceFile(t_vtx_x86_gcc.S, $(MESASRCDIR)/src/mesa/tnl)
#endif
#endif
MESA_TNL_OBJS = $(MESATNLBUILDDIR)t_array_api.o \
$(MESATNLBUILDDIR)t_array_import.o \
$(MESATNLBUILDDIR)t_context.o \
$(MESATNLBUILDDIR)t_pipeline.o \
$(MESATNLBUILDDIR)t_save_api.o \
$(MESATNLBUILDDIR)t_save_loopback.o \
$(MESATNLBUILDDIR)t_save_playback.o \
$(MESATNLBUILDDIR)t_vb_arbprogram.o \
$(MESATNLBUILDDIR)t_vb_arbprogram_sse.o \
$(MESATNLBUILDDIR)t_vb_fog.o \
$(MESATNLBUILDDIR)t_vb_cull.o \
$(MESATNLBUILDDIR)t_vb_light.o \
$(MESATNLBUILDDIR)t_vb_normals.o \
$(MESATNLBUILDDIR)t_vb_points.o \
$(MESATNLBUILDDIR)t_vb_program.o \
$(MESATNLBUILDDIR)t_vb_render.o \
$(MESATNLBUILDDIR)t_vb_texgen.o \
$(MESATNLBUILDDIR)t_vb_texmat.o \
$(MESATNLBUILDDIR)t_vb_vertex.o \
$(MESATNLBUILDDIR)t_vertex.o \
$(MESATNLBUILDDIR)t_vertex_generic.o \
$(MESATNLBUILDDIR)t_vertex_sse.o \
$(MESATNLBUILDDIR)t_vp_build.o \
$(MESATNLBUILDDIR)t_vtx_api.o \
$(MESATNLBUILDDIR)t_vtx_eval.o \
$(MESATNLBUILDDIR)t_vtx_exec.o \
$(MESATNLBUILDDIR)t_vtx_generic.o
#if defined(i386Architecture) && MesaUseX86Asm
MESA_TNL_OBJS += $(MESATNLBUILDDIR)t_vtx_x86.o \
$(MESATNLBUILDDIR)t_vtx_x86_gcc.o
#endif
#if defined(DoSharedLib) && DoSharedLib
MESA_TNL_UOBJS = $(MESATNLBUILDDIR)unshared/t_array_api.o \
$(MESATNLBUILDDIR)unshared/t_array_import.o \
$(MESATNLBUILDDIR)unshared/t_context.o \
$(MESATNLBUILDDIR)unshared/t_pipeline.o \
$(MESATNLBUILDDIR)unshared/t_save_api.o \
$(MESATNLBUILDDIR)unshared/t_save_loopback.o \
$(MESATNLBUILDDIR)unshared/t_save_playback.o \
$(MESATNLBUILDDIR)unshared/t_vb_arbprogram.o \
$(MESATNLBUILDDIR)unshared/t_vb_arbprogram_sse.o \
$(MESATNLBUILDDIR)unshared/t_vb_fog.o \
$(MESATNLBUILDDIR)unshared/t_vb_cull.o \
$(MESATNLBUILDDIR)unshared/t_vb_light.o \
$(MESATNLBUILDDIR)unshared/t_vb_normals.o \
$(MESATNLBUILDDIR)unshared/t_vb_points.o \
$(MESATNLBUILDDIR)unshared/t_vb_program.o \
$(MESATNLBUILDDIR)unshared/t_vb_render.o \
$(MESATNLBUILDDIR)unshared/t_vb_texgen.o \
$(MESATNLBUILDDIR)unshared/t_vb_texmat.o \
$(MESATNLBUILDDIR)unshared/t_vb_vertex.o \
$(MESATNLBUILDDIR)unshared/t_vertex.o \
$(MESATNLBUILDDIR)unshared/t_vertex_generic.o \
$(MESATNLBUILDDIR)unshared/t_vertex_sse.o \
$(MESATNLBUILDDIR)unshared/t_vp_build.o \
$(MESATNLBUILDDIR)unshared/t_vtx_api.o \
$(MESATNLBUILDDIR)unshared/t_vtx_eval.o \
$(MESATNLBUILDDIR)unshared/t_vtx_exec.o \
$(MESATNLBUILDDIR)unshared/t_vtx_generic.o
#if defined(i386Architecture) && MesaUseX86Asm
MESA_TNL_UOBJS += $(MESATNLBUILDDIR)unshared/t_vtx_x86.o \
$(MESATNLBUILDDIR)t_vtx_x86_gcc.o
#endif
#else
MESA_TNL_UOBJS = $(MESA_TNL_OBJS)
#endif
MESA_TNL_DOBJS = $(MESATNLBUILDDIR)debugger/t_array_api.o \
$(MESATNLBUILDDIR)debugger/t_array_import.o \
$(MESATNLBUILDDIR)debugger/t_context.o \
$(MESATNLBUILDDIR)debugger/t_pipeline.o \
$(MESATNLBUILDDIR)debugger/t_save_api.o \
$(MESATNLBUILDDIR)debugger/t_save_loopback.o \
$(MESATNLBUILDDIR)debugger/t_save_playback.o \
$(MESATNLBUILDDIR)debugger/t_vb_arbprogram.o \
$(MESATNLBUILDDIR)debugger/t_vb_arbprogram_sse.o \
$(MESATNLBUILDDIR)debugger/t_vb_fog.o \
$(MESATNLBUILDDIR)debugger/t_vb_cull.o \
$(MESATNLBUILDDIR)debugger/t_vb_light.o \
$(MESATNLBUILDDIR)debugger/t_vb_normals.o \
$(MESATNLBUILDDIR)debugger/t_vb_points.o \
$(MESATNLBUILDDIR)debugger/t_vb_program.o \
$(MESATNLBUILDDIR)debugger/t_vb_render.o \
$(MESATNLBUILDDIR)debugger/t_vb_texgen.o \
$(MESATNLBUILDDIR)debugger/t_vb_texmat.o \
$(MESATNLBUILDDIR)debugger/t_vb_vertex.o \
$(MESATNLBUILDDIR)debugger/t_vertex.o \
$(MESATNLBUILDDIR)debugger/t_vertex_generic.o \
$(MESATNLBUILDDIR)debugger/t_vertex_sse.o \
$(MESATNLBUILDDIR)debugger/t_vp_build.o \
$(MESATNLBUILDDIR)debugger/t_vtx_api.o \
$(MESATNLBUILDDIR)debugger/t_vtx_eval.o \
$(MESATNLBUILDDIR)debugger/t_vtx_exec.o \
$(MESATNLBUILDDIR)debugger/t_vtx_generic.o
#if defined(i386Architecture) && MesaUseX86Asm
MESA_TNL_DOBJS += $(MESATNLBUILDDIR)debugger/t_vtx_x86.o \
$(MESATNLBUILDDIR)debugger/t_vtx_x86_gcc.o
#endif
MESA_TNL_POBJS = $(MESATNLBUILDDIR)profiled/t_array_api.o \
$(MESATNLBUILDDIR)profiled/t_array_import.o \
$(MESATNLBUILDDIR)profiled/t_context.o \
$(MESATNLBUILDDIR)profiled/t_pipeline.o \
$(MESATNLBUILDDIR)profiled/t_save_api.o \
$(MESATNLBUILDDIR)profiled/t_save_loopback.o \
$(MESATNLBUILDDIR)profiled/t_save_playback.o \
$(MESATNLBUILDDIR)profiled/t_vb_arbprogram.o \
$(MESATNLBUILDDIR)profiled/t_vb_arbprogram_sse.o \
$(MESATNLBUILDDIR)profiled/t_vb_fog.o \
$(MESATNLBUILDDIR)profiled/t_vb_cull.o \
$(MESATNLBUILDDIR)profiled/t_vb_light.o \
$(MESATNLBUILDDIR)profiled/t_vb_normals.o \
$(MESATNLBUILDDIR)profiled/t_vb_points.o \
$(MESATNLBUILDDIR)profiled/t_vb_program.o \
$(MESATNLBUILDDIR)profiled/t_vb_render.o \
$(MESATNLBUILDDIR)profiled/t_vb_texgen.o \
$(MESATNLBUILDDIR)profiled/t_vb_texmat.o \
$(MESATNLBUILDDIR)profiled/t_vb_vertex.o \
$(MESATNLBUILDDIR)profiled/t_vertex.o \
$(MESATNLBUILDDIR)profiled/t_vertex_generic.o \
$(MESATNLBUILDDIR)profiled/t_vertex_sse.o \
$(MESATNLBUILDDIR)profiled/t_vp_build.o \
$(MESATNLBUILDDIR)profiled/t_vtx_api.o \
$(MESATNLBUILDDIR)profiled/t_vtx_eval.o \
$(MESATNLBUILDDIR)profiled/t_vtx_exec.o \
$(MESATNLBUILDDIR)profiled/t_vtx_generic.o
#if defined(i386Architecture) && MesaUseX86Asm
MESA_TNL_POBJS += $(MESATNLBUILDDIR)profiled/t_vtx_x86.o \
$(MESATNLBUILDDIR)profiled/t_vtx_x86_gcc.o
#endif