mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-03 18:00:10 +01:00
remove carriage return chars
This commit is contained in:
parent
94a6ec8f0c
commit
b14dcea418
12 changed files with 5459 additions and 5459 deletions
|
|
@ -1,81 +1,81 @@
|
|||
#ifndef __glutf90_h__
|
||||
#define __glutf90_h__
|
||||
|
||||
/* Copyright (c) Mark J. Kilgard & Willam F. Mitchell, 1998. */
|
||||
|
||||
/* This program is freely distributable without licensing fees
|
||||
and is provided without guarantee or warrantee expressed or
|
||||
implied. This program is -not- in the public domain. */
|
||||
|
||||
/* This header provides the binding interface for William Mitchell's
|
||||
f90gl Fortran 90 GLUT binding. Other GLUT language bindings
|
||||
can and should use this interace. */
|
||||
|
||||
/* I appreciate the guidance from William Mitchell
|
||||
(mitchell@cam.nist.gov) in developing this friend interface
|
||||
for use by the f90gl package. See ../../README.fortran */
|
||||
|
||||
#include <GL/glut.h>
|
||||
|
||||
/* Which callback enumerants for the __glutSetFCB/__glutGetFCB routines. */
|
||||
/* NOTE These values are part of a binary interface for the f90gl Fortran
|
||||
90 binding and so must NOT changes (additions are allowed). */
|
||||
|
||||
/* GLUTwindow callbacks. */
|
||||
#define GLUT_FCB_DISPLAY 0 /* GLUTdisplayFCB */
|
||||
#define GLUT_FCB_RESHAPE 1 /* GLUTreshapeFCB */
|
||||
#define GLUT_FCB_MOUSE 2 /* GLUTmouseFCB */
|
||||
#define GLUT_FCB_MOTION 3 /* GLUTmotionFCB */
|
||||
#define GLUT_FCB_PASSIVE 4 /* GLUTpassiveFCB */
|
||||
#define GLUT_FCB_ENTRY 5 /* GLUTentryFCB */
|
||||
#define GLUT_FCB_KEYBOARD 6 /* GLUTkeyboardFCB */
|
||||
#define GLUT_FCB_KEYBOARD_UP 7 /* GLUTkeyboardFCB */
|
||||
#define GLUT_FCB_WINDOW_STATUS 8 /* GLUTwindowStatusFCB */
|
||||
#define GLUT_FCB_VISIBILITY 9 /* GLUTvisibilityFCB */
|
||||
#define GLUT_FCB_SPECIAL 10 /* GLUTspecialFCB */
|
||||
#define GLUT_FCB_SPECIAL_UP 11 /* GLUTspecialFCB */
|
||||
#define GLUT_FCB_BUTTON_BOX 12 /* GLUTbuttonBoxFCB */
|
||||
#define GLUT_FCB_DIALS 13 /* GLUTdialsFCB */
|
||||
#define GLUT_FCB_SPACE_MOTION 14 /* GLUTspaceMotionFCB */
|
||||
#define GLUT_FCB_SPACE_ROTATE 15 /* GLUTspaceRotateFCB */
|
||||
#define GLUT_FCB_SPACE_BUTTON 16 /* GLUTspaceButtonFCB */
|
||||
#define GLUT_FCB_TABLET_MOTION 17 /* GLUTtabletMotionFCB */
|
||||
#define GLUT_FCB_TABLET_BUTTON 18 /* GLUTtabletButtonFCB */
|
||||
#define GLUT_FCB_JOYSTICK 19 /* GLUTjoystickFCB */
|
||||
/* Non-GLUTwindow callbacks. */
|
||||
#define GLUT_FCB_OVERLAY_DISPLAY 100 /* GLUTdisplayFCB */
|
||||
#define GLUT_FCB_SELECT 101 /* GLUTselectFCB */
|
||||
#define GLUT_FCB_TIMER 102 /* GLUTtimerFCB */
|
||||
|
||||
/* GLUT Fortran callback function types. */
|
||||
typedef void (GLUTCALLBACK *GLUTdisplayFCB) (void);
|
||||
typedef void (GLUTCALLBACK *GLUTreshapeFCB) (int *, int *);
|
||||
/* NOTE the pressed key is int, not unsigned char for Fortran! */
|
||||
typedef void (GLUTCALLBACK *GLUTkeyboardFCB) (int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTmouseFCB) (int *, int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTmotionFCB) (int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTpassiveFCB) (int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTentryFCB) (int *);
|
||||
typedef void (GLUTCALLBACK *GLUTwindowStatusFCB) (int *);
|
||||
typedef void (GLUTCALLBACK *GLUTvisibilityFCB) (int *);
|
||||
typedef void (GLUTCALLBACK *GLUTspecialFCB) (int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTbuttonBoxFCB) (int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTdialsFCB) (int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTspaceMotionFCB) (int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTspaceRotateFCB) (int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTspaceButtonFCB) (int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTtabletMotionFCB) (int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTtabletButtonFCB) (int *, int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTjoystickFCB) (unsigned int *buttonMask, int *x, int *y, int *z);
|
||||
|
||||
typedef void (GLUTCALLBACK *GLUTselectFCB) (int *);
|
||||
typedef void (GLUTCALLBACK *GLUTtimerFCB) (int *);
|
||||
typedef void (GLUTCALLBACK *GLUTmenuStateFCB) (int *); /* DEPRICATED. */
|
||||
typedef void (GLUTCALLBACK *GLUTmenuStatusFCB) (int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTidleFCB) (void);
|
||||
|
||||
/* Functions that set and return Fortran callback functions. */
|
||||
GLUTAPI void* APIENTRY __glutGetFCB(int which);
|
||||
GLUTAPI void APIENTRY __glutSetFCB(int which, void *func);
|
||||
|
||||
#endif /* __glutf90_h__ */
|
||||
#ifndef __glutf90_h__
|
||||
#define __glutf90_h__
|
||||
|
||||
/* Copyright (c) Mark J. Kilgard & Willam F. Mitchell, 1998. */
|
||||
|
||||
/* This program is freely distributable without licensing fees
|
||||
and is provided without guarantee or warrantee expressed or
|
||||
implied. This program is -not- in the public domain. */
|
||||
|
||||
/* This header provides the binding interface for William Mitchell's
|
||||
f90gl Fortran 90 GLUT binding. Other GLUT language bindings
|
||||
can and should use this interace. */
|
||||
|
||||
/* I appreciate the guidance from William Mitchell
|
||||
(mitchell@cam.nist.gov) in developing this friend interface
|
||||
for use by the f90gl package. See ../../README.fortran */
|
||||
|
||||
#include <GL/glut.h>
|
||||
|
||||
/* Which callback enumerants for the __glutSetFCB/__glutGetFCB routines. */
|
||||
/* NOTE These values are part of a binary interface for the f90gl Fortran
|
||||
90 binding and so must NOT changes (additions are allowed). */
|
||||
|
||||
/* GLUTwindow callbacks. */
|
||||
#define GLUT_FCB_DISPLAY 0 /* GLUTdisplayFCB */
|
||||
#define GLUT_FCB_RESHAPE 1 /* GLUTreshapeFCB */
|
||||
#define GLUT_FCB_MOUSE 2 /* GLUTmouseFCB */
|
||||
#define GLUT_FCB_MOTION 3 /* GLUTmotionFCB */
|
||||
#define GLUT_FCB_PASSIVE 4 /* GLUTpassiveFCB */
|
||||
#define GLUT_FCB_ENTRY 5 /* GLUTentryFCB */
|
||||
#define GLUT_FCB_KEYBOARD 6 /* GLUTkeyboardFCB */
|
||||
#define GLUT_FCB_KEYBOARD_UP 7 /* GLUTkeyboardFCB */
|
||||
#define GLUT_FCB_WINDOW_STATUS 8 /* GLUTwindowStatusFCB */
|
||||
#define GLUT_FCB_VISIBILITY 9 /* GLUTvisibilityFCB */
|
||||
#define GLUT_FCB_SPECIAL 10 /* GLUTspecialFCB */
|
||||
#define GLUT_FCB_SPECIAL_UP 11 /* GLUTspecialFCB */
|
||||
#define GLUT_FCB_BUTTON_BOX 12 /* GLUTbuttonBoxFCB */
|
||||
#define GLUT_FCB_DIALS 13 /* GLUTdialsFCB */
|
||||
#define GLUT_FCB_SPACE_MOTION 14 /* GLUTspaceMotionFCB */
|
||||
#define GLUT_FCB_SPACE_ROTATE 15 /* GLUTspaceRotateFCB */
|
||||
#define GLUT_FCB_SPACE_BUTTON 16 /* GLUTspaceButtonFCB */
|
||||
#define GLUT_FCB_TABLET_MOTION 17 /* GLUTtabletMotionFCB */
|
||||
#define GLUT_FCB_TABLET_BUTTON 18 /* GLUTtabletButtonFCB */
|
||||
#define GLUT_FCB_JOYSTICK 19 /* GLUTjoystickFCB */
|
||||
/* Non-GLUTwindow callbacks. */
|
||||
#define GLUT_FCB_OVERLAY_DISPLAY 100 /* GLUTdisplayFCB */
|
||||
#define GLUT_FCB_SELECT 101 /* GLUTselectFCB */
|
||||
#define GLUT_FCB_TIMER 102 /* GLUTtimerFCB */
|
||||
|
||||
/* GLUT Fortran callback function types. */
|
||||
typedef void (GLUTCALLBACK *GLUTdisplayFCB) (void);
|
||||
typedef void (GLUTCALLBACK *GLUTreshapeFCB) (int *, int *);
|
||||
/* NOTE the pressed key is int, not unsigned char for Fortran! */
|
||||
typedef void (GLUTCALLBACK *GLUTkeyboardFCB) (int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTmouseFCB) (int *, int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTmotionFCB) (int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTpassiveFCB) (int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTentryFCB) (int *);
|
||||
typedef void (GLUTCALLBACK *GLUTwindowStatusFCB) (int *);
|
||||
typedef void (GLUTCALLBACK *GLUTvisibilityFCB) (int *);
|
||||
typedef void (GLUTCALLBACK *GLUTspecialFCB) (int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTbuttonBoxFCB) (int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTdialsFCB) (int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTspaceMotionFCB) (int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTspaceRotateFCB) (int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTspaceButtonFCB) (int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTtabletMotionFCB) (int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTtabletButtonFCB) (int *, int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTjoystickFCB) (unsigned int *buttonMask, int *x, int *y, int *z);
|
||||
|
||||
typedef void (GLUTCALLBACK *GLUTselectFCB) (int *);
|
||||
typedef void (GLUTCALLBACK *GLUTtimerFCB) (int *);
|
||||
typedef void (GLUTCALLBACK *GLUTmenuStateFCB) (int *); /* DEPRICATED. */
|
||||
typedef void (GLUTCALLBACK *GLUTmenuStatusFCB) (int *, int *, int *);
|
||||
typedef void (GLUTCALLBACK *GLUTidleFCB) (void);
|
||||
|
||||
/* Functions that set and return Fortran callback functions. */
|
||||
GLUTAPI void* APIENTRY __glutGetFCB(int which);
|
||||
GLUTAPI void APIENTRY __glutSetFCB(int which, void *func);
|
||||
|
||||
#endif /* __glutf90_h__ */
|
||||
|
|
|
|||
|
|
@ -1,86 +1,86 @@
|
|||
# $Id: Makefile.win,v 1.1 2001/09/14 22:19:18 brianp Exp $
|
||||
|
||||
# Mesa 3-D graphics library
|
||||
# Version: 3.5
|
||||
# Copyright (C) 1995-2001 Brian Paul
|
||||
|
||||
# Makefile for GLUT-based demo programs for Windows
|
||||
|
||||
!include <win32.mak>
|
||||
|
||||
##### MACROS #####
|
||||
|
||||
TOP = ..
|
||||
INCDIR = ..\include
|
||||
LIBDIR = ..\lib
|
||||
|
||||
PROGS = anisotropic \
|
||||
bounce \
|
||||
clearspd \
|
||||
cubemap \
|
||||
drawpix \
|
||||
fire \
|
||||
gamma \
|
||||
gears \
|
||||
geartrain \
|
||||
glinfo \
|
||||
gloss \
|
||||
gltestperf \
|
||||
glutfx \
|
||||
isosurf \
|
||||
ipers \
|
||||
lodbias \
|
||||
morph3d \
|
||||
multiarb \
|
||||
occlude \
|
||||
osdemo \
|
||||
paltex \
|
||||
pixeltex \
|
||||
pointblast \
|
||||
ray \
|
||||
readpix \
|
||||
reflect \
|
||||
renormal \
|
||||
shadowtex \
|
||||
spectex \
|
||||
stex3d \
|
||||
teapot \
|
||||
terrain \
|
||||
tessdemo \
|
||||
texcyl \
|
||||
texdown \
|
||||
texenv \
|
||||
texobj \
|
||||
trispd \
|
||||
tunnel \
|
||||
tunnel2 \
|
||||
winpos
|
||||
|
||||
SRCS =
|
||||
OSMESASRCS = osdemo.c
|
||||
|
||||
!include "../mesawin32.mak"
|
||||
|
||||
##### TARGETS #####
|
||||
|
||||
clean::
|
||||
|
||||
realclean::
|
||||
|
||||
targets: readtex.c readtex.h $(PROGS)
|
||||
|
||||
# remove comments when we get non-osmesa pgm working
|
||||
#$(EXES) : $*.obj $(DEPLIBS)
|
||||
# echo $@
|
||||
# $(link) -out:$@ $** $(LIBS)
|
||||
|
||||
$(OSMESAEXES) : $*.obj $(DEPLIBS)
|
||||
echo $@
|
||||
$(link) -out:$@ $** $(LIBS) $(EXTRALIBS)
|
||||
|
||||
readtex.c:
|
||||
@copy ../util/readtex.c .
|
||||
|
||||
readtex.h:
|
||||
@copy ../util/readtex.c .
|
||||
|
||||
# $Id: Makefile.win,v 1.2 2001/09/18 16:39:38 kschultz Exp $
|
||||
|
||||
# Mesa 3-D graphics library
|
||||
# Version: 3.5
|
||||
# Copyright (C) 1995-2001 Brian Paul
|
||||
|
||||
# Makefile for GLUT-based demo programs for Windows
|
||||
|
||||
!include <win32.mak>
|
||||
|
||||
##### MACROS #####
|
||||
|
||||
TOP = ..
|
||||
INCDIR = ..\include
|
||||
LIBDIR = ..\lib
|
||||
|
||||
PROGS = anisotropic \
|
||||
bounce \
|
||||
clearspd \
|
||||
cubemap \
|
||||
drawpix \
|
||||
fire \
|
||||
gamma \
|
||||
gears \
|
||||
geartrain \
|
||||
glinfo \
|
||||
gloss \
|
||||
gltestperf \
|
||||
glutfx \
|
||||
isosurf \
|
||||
ipers \
|
||||
lodbias \
|
||||
morph3d \
|
||||
multiarb \
|
||||
occlude \
|
||||
osdemo \
|
||||
paltex \
|
||||
pixeltex \
|
||||
pointblast \
|
||||
ray \
|
||||
readpix \
|
||||
reflect \
|
||||
renormal \
|
||||
shadowtex \
|
||||
spectex \
|
||||
stex3d \
|
||||
teapot \
|
||||
terrain \
|
||||
tessdemo \
|
||||
texcyl \
|
||||
texdown \
|
||||
texenv \
|
||||
texobj \
|
||||
trispd \
|
||||
tunnel \
|
||||
tunnel2 \
|
||||
winpos
|
||||
|
||||
SRCS =
|
||||
OSMESASRCS = osdemo.c
|
||||
|
||||
!include "../mesawin32.mak"
|
||||
|
||||
##### TARGETS #####
|
||||
|
||||
clean::
|
||||
|
||||
realclean::
|
||||
|
||||
targets: readtex.c readtex.h $(PROGS)
|
||||
|
||||
# remove comments when we get non-osmesa pgm working
|
||||
#$(EXES) : $*.obj $(DEPLIBS)
|
||||
# echo $@
|
||||
# $(link) -out:$@ $** $(LIBS)
|
||||
|
||||
$(OSMESAEXES) : $*.obj $(DEPLIBS)
|
||||
echo $@
|
||||
$(link) -out:$@ $** $(LIBS) $(EXTRALIBS)
|
||||
|
||||
readtex.c:
|
||||
@copy ../util/readtex.c .
|
||||
|
||||
readtex.h:
|
||||
@copy ../util/readtex.c .
|
||||
|
||||
|
|
|
|||
|
|
@ -1,156 +1,156 @@
|
|||
# Makefile for Win32
|
||||
|
||||
#
|
||||
# Sept 12, 2001
|
||||
# Note: The nurbs code is not being built at this time.
|
||||
# If you want to work on it, uncomment the definitions
|
||||
# noted below to try to compile the sources.
|
||||
# There are numerous problems, some of which may be solved
|
||||
# by setting some #defines.
|
||||
#
|
||||
|
||||
!include <win32.mak>
|
||||
|
||||
.SUFFIXES : .cc
|
||||
|
||||
TOP = ..
|
||||
|
||||
GLU_SRCS_CC = \
|
||||
libnurbs\interface\bezierEval.cc \
|
||||
libnurbs\interface\bezierPatch.cc \
|
||||
libnurbs\interface\bezierPatchMesh.cc \
|
||||
libnurbs\interface\glcurveval.cc \
|
||||
libnurbs\interface\glinterface.cc \
|
||||
libnurbs\interface\glrenderer.cc \
|
||||
libnurbs\interface\glsurfeval.cc \
|
||||
libnurbs\interface\incurveeval.cc \
|
||||
libnurbs\interface\insurfeval.cc \
|
||||
libnurbs\internals\arc.cc \
|
||||
libnurbs\internals\arcsorter.cc \
|
||||
libnurbs\internals\arctess.cc \
|
||||
libnurbs\internals\backend.cc \
|
||||
libnurbs\internals\basiccrveval.cc \
|
||||
libnurbs\internals\basicsurfeval.cc \
|
||||
libnurbs\internals\bin.cc \
|
||||
libnurbs\internals\bufpool.cc \
|
||||
libnurbs\internals\cachingeval.cc \
|
||||
libnurbs\internals\ccw.cc \
|
||||
libnurbs\internals\coveandtiler.cc \
|
||||
libnurbs\internals\curve.cc \
|
||||
libnurbs\internals\curvelist.cc \
|
||||
libnurbs\internals\curvesub.cc \
|
||||
libnurbs\internals\dataTransform.cc \
|
||||
libnurbs\internals\displaylist.cc \
|
||||
libnurbs\internals\flist.cc \
|
||||
libnurbs\internals\flistsorter.cc \
|
||||
libnurbs\internals\hull.cc \
|
||||
libnurbs\internals\intersect.cc \
|
||||
libnurbs\internals\knotvector.cc \
|
||||
libnurbs\internals\mapdesc.cc \
|
||||
libnurbs\internals\mapdescv.cc \
|
||||
libnurbs\internals\maplist.cc \
|
||||
libnurbs\internals\mesher.cc \
|
||||
libnurbs\internals\monoTriangulationBackend.cc \
|
||||
libnurbs\internals\monotonizer.cc \
|
||||
libnurbs\internals\mycode.cc \
|
||||
libnurbs\internals\nurbsinterfac.cc \
|
||||
libnurbs\internals\nurbstess.cc \
|
||||
libnurbs\internals\patch.cc \
|
||||
libnurbs\internals\patchlist.cc \
|
||||
libnurbs\internals\quilt.cc \
|
||||
libnurbs\internals\reader.cc \
|
||||
libnurbs\internals\renderhints.cc \
|
||||
libnurbs\internals\slicer.cc \
|
||||
libnurbs\internals\sorter.cc \
|
||||
libnurbs\internals\splitarcs.cc \
|
||||
libnurbs\internals\subdivider.cc \
|
||||
libnurbs\internals\tobezier.cc \
|
||||
libnurbs\internals\trimline.cc \
|
||||
libnurbs\internals\trimregion.cc \
|
||||
libnurbs\internals\trimvertpool.cc \
|
||||
libnurbs\internals\uarray.cc \
|
||||
libnurbs\internals\varray.cc \
|
||||
libnurbs\nurbtess\directedLine.cc \
|
||||
libnurbs\nurbtess\gridWrap.cc \
|
||||
libnurbs\nurbtess\monoChain.cc \
|
||||
libnurbs\nurbtess\monoPolyPart.cc \
|
||||
libnurbs\nurbtess\monoTriangulation.cc \
|
||||
libnurbs\nurbtess\partitionX.cc \
|
||||
libnurbs\nurbtess\partitionY.cc \
|
||||
libnurbs\nurbtess\polyDBG.cc \
|
||||
libnurbs\nurbtess\polyUtil.cc \
|
||||
libnurbs\nurbtess\primitiveStream.cc \
|
||||
libnurbs\nurbtess\quicksort.cc \
|
||||
libnurbs\nurbtess\rectBlock.cc \
|
||||
libnurbs\nurbtess\sampleComp.cc \
|
||||
libnurbs\nurbtess\sampleCompBot.cc \
|
||||
libnurbs\nurbtess\sampleCompRight.cc \
|
||||
libnurbs\nurbtess\sampleCompTop.cc \
|
||||
libnurbs\nurbtess\sampleMonoPoly.cc \
|
||||
libnurbs\nurbtess\sampledLine.cc \
|
||||
libnurbs\nurbtess\searchTree.cc
|
||||
|
||||
GLU_SRCS = \
|
||||
libtess\dict.c \
|
||||
libtess\geom.c \
|
||||
libtess\memalloc.c \
|
||||
libtess\mesh.c \
|
||||
libtess\normal.c \
|
||||
libtess\priorityq.c \
|
||||
libtess\render.c \
|
||||
libtess\sweep.c \
|
||||
libtess\tess.c \
|
||||
libtess\tessmono.c \
|
||||
libutil\error.c \
|
||||
libutil\glue.c \
|
||||
libutil\mipmap.c \
|
||||
libutil\project.c \
|
||||
libutil\quad.c \
|
||||
libutil\registry.c
|
||||
|
||||
SRCS = $(GLU_SRCS)
|
||||
|
||||
GLUDLL = glu32.dll
|
||||
|
||||
all : gludll install
|
||||
|
||||
!include "$(TOP)/mesawin32.mak"
|
||||
|
||||
gludll : $(GLUDLL)
|
||||
|
||||
CFLAGS = $(cvarsdll) $(CFLAGS) -D_OPENGL32_ -Iinclude -DBUILD_GL32
|
||||
LFLAGS = $(dlllflags) $(LFLAGS)
|
||||
|
||||
OBJS = $(GLU_SRCS:.c=.obj)
|
||||
LIBS = ../lib/opengl32.lib winmm.lib $(guilibsdll)
|
||||
|
||||
# Uncomment these definitions to try to compile the NURBS code.
|
||||
#OBJS = $(GLU_SRCS_CC:.cc=.obj) $(GLU_SRCS:.c=.obj)
|
||||
#NURBSINC = -Ilibnurbs\interface -Ilibnurbs\internals -Ilibnurbs\nurbtess
|
||||
#CFLAGS = $(CFLAGS) $(NURBSINC)
|
||||
|
||||
$(GLUDLL) : $(OBJS) glu.def
|
||||
$(link) $(LFLAGS) -out:$(GLUDLL) -def:glu.def $(OBJS) $(LIBS)
|
||||
|
||||
install : $(GLUDLL)
|
||||
@echo "copying Mesa GLU dynamic link library to system directory..."
|
||||
-copy $(GLUDLL) $(TOP)\lib
|
||||
@echo "copying Mesa GLU import library to library directory..."
|
||||
-copy $(GLU) $(TOP)\lib
|
||||
|
||||
clean ::
|
||||
@del /f libtess\*.obj libutil\*.obj
|
||||
@del /f libnurbs\interface\*.obj libnurbs\internals\*.obj
|
||||
@del /f libnurbs\nurbtess\*.obj
|
||||
|
||||
# override default inference rule with one that writes the object to
|
||||
# the correct subdir.
|
||||
|
||||
.c.obj :
|
||||
$(cc) $(CFLAGS) -I. $< /Fo$*.obj
|
||||
|
||||
# /TP is needed for C++ files because MS compiler
|
||||
# does not recognize .cc as a C++ file.
|
||||
|
||||
.cc.obj :
|
||||
$(cc) $(CFLAGS) -I. $< /TP /Fo$*.obj
|
||||
# Makefile for Win32
|
||||
|
||||
#
|
||||
# Sept 12, 2001
|
||||
# Note: The nurbs code is not being built at this time.
|
||||
# If you want to work on it, uncomment the definitions
|
||||
# noted below to try to compile the sources.
|
||||
# There are numerous problems, some of which may be solved
|
||||
# by setting some #defines.
|
||||
#
|
||||
|
||||
!include <win32.mak>
|
||||
|
||||
.SUFFIXES : .cc
|
||||
|
||||
TOP = ..
|
||||
|
||||
GLU_SRCS_CC = \
|
||||
libnurbs\interface\bezierEval.cc \
|
||||
libnurbs\interface\bezierPatch.cc \
|
||||
libnurbs\interface\bezierPatchMesh.cc \
|
||||
libnurbs\interface\glcurveval.cc \
|
||||
libnurbs\interface\glinterface.cc \
|
||||
libnurbs\interface\glrenderer.cc \
|
||||
libnurbs\interface\glsurfeval.cc \
|
||||
libnurbs\interface\incurveeval.cc \
|
||||
libnurbs\interface\insurfeval.cc \
|
||||
libnurbs\internals\arc.cc \
|
||||
libnurbs\internals\arcsorter.cc \
|
||||
libnurbs\internals\arctess.cc \
|
||||
libnurbs\internals\backend.cc \
|
||||
libnurbs\internals\basiccrveval.cc \
|
||||
libnurbs\internals\basicsurfeval.cc \
|
||||
libnurbs\internals\bin.cc \
|
||||
libnurbs\internals\bufpool.cc \
|
||||
libnurbs\internals\cachingeval.cc \
|
||||
libnurbs\internals\ccw.cc \
|
||||
libnurbs\internals\coveandtiler.cc \
|
||||
libnurbs\internals\curve.cc \
|
||||
libnurbs\internals\curvelist.cc \
|
||||
libnurbs\internals\curvesub.cc \
|
||||
libnurbs\internals\dataTransform.cc \
|
||||
libnurbs\internals\displaylist.cc \
|
||||
libnurbs\internals\flist.cc \
|
||||
libnurbs\internals\flistsorter.cc \
|
||||
libnurbs\internals\hull.cc \
|
||||
libnurbs\internals\intersect.cc \
|
||||
libnurbs\internals\knotvector.cc \
|
||||
libnurbs\internals\mapdesc.cc \
|
||||
libnurbs\internals\mapdescv.cc \
|
||||
libnurbs\internals\maplist.cc \
|
||||
libnurbs\internals\mesher.cc \
|
||||
libnurbs\internals\monoTriangulationBackend.cc \
|
||||
libnurbs\internals\monotonizer.cc \
|
||||
libnurbs\internals\mycode.cc \
|
||||
libnurbs\internals\nurbsinterfac.cc \
|
||||
libnurbs\internals\nurbstess.cc \
|
||||
libnurbs\internals\patch.cc \
|
||||
libnurbs\internals\patchlist.cc \
|
||||
libnurbs\internals\quilt.cc \
|
||||
libnurbs\internals\reader.cc \
|
||||
libnurbs\internals\renderhints.cc \
|
||||
libnurbs\internals\slicer.cc \
|
||||
libnurbs\internals\sorter.cc \
|
||||
libnurbs\internals\splitarcs.cc \
|
||||
libnurbs\internals\subdivider.cc \
|
||||
libnurbs\internals\tobezier.cc \
|
||||
libnurbs\internals\trimline.cc \
|
||||
libnurbs\internals\trimregion.cc \
|
||||
libnurbs\internals\trimvertpool.cc \
|
||||
libnurbs\internals\uarray.cc \
|
||||
libnurbs\internals\varray.cc \
|
||||
libnurbs\nurbtess\directedLine.cc \
|
||||
libnurbs\nurbtess\gridWrap.cc \
|
||||
libnurbs\nurbtess\monoChain.cc \
|
||||
libnurbs\nurbtess\monoPolyPart.cc \
|
||||
libnurbs\nurbtess\monoTriangulation.cc \
|
||||
libnurbs\nurbtess\partitionX.cc \
|
||||
libnurbs\nurbtess\partitionY.cc \
|
||||
libnurbs\nurbtess\polyDBG.cc \
|
||||
libnurbs\nurbtess\polyUtil.cc \
|
||||
libnurbs\nurbtess\primitiveStream.cc \
|
||||
libnurbs\nurbtess\quicksort.cc \
|
||||
libnurbs\nurbtess\rectBlock.cc \
|
||||
libnurbs\nurbtess\sampleComp.cc \
|
||||
libnurbs\nurbtess\sampleCompBot.cc \
|
||||
libnurbs\nurbtess\sampleCompRight.cc \
|
||||
libnurbs\nurbtess\sampleCompTop.cc \
|
||||
libnurbs\nurbtess\sampleMonoPoly.cc \
|
||||
libnurbs\nurbtess\sampledLine.cc \
|
||||
libnurbs\nurbtess\searchTree.cc
|
||||
|
||||
GLU_SRCS = \
|
||||
libtess\dict.c \
|
||||
libtess\geom.c \
|
||||
libtess\memalloc.c \
|
||||
libtess\mesh.c \
|
||||
libtess\normal.c \
|
||||
libtess\priorityq.c \
|
||||
libtess\render.c \
|
||||
libtess\sweep.c \
|
||||
libtess\tess.c \
|
||||
libtess\tessmono.c \
|
||||
libutil\error.c \
|
||||
libutil\glue.c \
|
||||
libutil\mipmap.c \
|
||||
libutil\project.c \
|
||||
libutil\quad.c \
|
||||
libutil\registry.c
|
||||
|
||||
SRCS = $(GLU_SRCS)
|
||||
|
||||
GLUDLL = glu32.dll
|
||||
|
||||
all : gludll install
|
||||
|
||||
!include "$(TOP)/mesawin32.mak"
|
||||
|
||||
gludll : $(GLUDLL)
|
||||
|
||||
CFLAGS = $(cvarsdll) $(CFLAGS) -D_OPENGL32_ -Iinclude -DBUILD_GL32
|
||||
LFLAGS = $(dlllflags) $(LFLAGS)
|
||||
|
||||
OBJS = $(GLU_SRCS:.c=.obj)
|
||||
LIBS = ../lib/opengl32.lib winmm.lib $(guilibsdll)
|
||||
|
||||
# Uncomment these definitions to try to compile the NURBS code.
|
||||
#OBJS = $(GLU_SRCS_CC:.cc=.obj) $(GLU_SRCS:.c=.obj)
|
||||
#NURBSINC = -Ilibnurbs\interface -Ilibnurbs\internals -Ilibnurbs\nurbtess
|
||||
#CFLAGS = $(CFLAGS) $(NURBSINC)
|
||||
|
||||
$(GLUDLL) : $(OBJS) glu.def
|
||||
$(link) $(LFLAGS) -out:$(GLUDLL) -def:glu.def $(OBJS) $(LIBS)
|
||||
|
||||
install : $(GLUDLL)
|
||||
@echo "copying Mesa GLU dynamic link library to system directory..."
|
||||
-copy $(GLUDLL) $(TOP)\lib
|
||||
@echo "copying Mesa GLU import library to library directory..."
|
||||
-copy $(GLU) $(TOP)\lib
|
||||
|
||||
clean ::
|
||||
@del /f libtess\*.obj libutil\*.obj
|
||||
@del /f libnurbs\interface\*.obj libnurbs\internals\*.obj
|
||||
@del /f libnurbs\nurbtess\*.obj
|
||||
|
||||
# override default inference rule with one that writes the object to
|
||||
# the correct subdir.
|
||||
|
||||
.c.obj :
|
||||
$(cc) $(CFLAGS) -I. $< /Fo$*.obj
|
||||
|
||||
# /TP is needed for C++ files because MS compiler
|
||||
# does not recognize .cc as a C++ file.
|
||||
|
||||
.cc.obj :
|
||||
$(cc) $(CFLAGS) -I. $< /TP /Fo$*.obj
|
||||
|
|
|
|||
|
|
@ -1,381 +1,381 @@
|
|||
/*
|
||||
** License Applicability. Except to the extent portions of this file are
|
||||
** made subject to an alternative license as permitted in the SGI Free
|
||||
** Software License B, Version 1.1 (the "License"), the contents of this
|
||||
** file are subject only to the provisions of the License. You may not use
|
||||
** this file except in compliance with the License. You may obtain a copy
|
||||
** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
|
||||
** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
|
||||
**
|
||||
** http://oss.sgi.com/projects/FreeB
|
||||
**
|
||||
** Note that, as provided in the License, the Software is distributed on an
|
||||
** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
|
||||
** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
|
||||
** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
|
||||
** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
|
||||
**
|
||||
** Original Code. The Original Code is: OpenGL Sample Implementation,
|
||||
** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
|
||||
** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
|
||||
** Copyright in any portions created by third parties is as indicated
|
||||
** elsewhere herein. All Rights Reserved.
|
||||
**
|
||||
** Additional Notice Provisions: The application programming interfaces
|
||||
** established by SGI in conjunction with the Original Code are The
|
||||
** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released
|
||||
** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version
|
||||
** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X
|
||||
** Window System(R) (Version 1.3), released October 19, 1998. This software
|
||||
** was created using the OpenGL(R) version 1.2.1 Sample Implementation
|
||||
** published by SGI, but has not been independently verified as being
|
||||
** compliant with the OpenGL(R) version 1.2.1 Specification.
|
||||
**
|
||||
** $Date: 2001/09/14 22:19:19 $ $Revision: 1.3 $
|
||||
** $Header: /home/krh/git/sync/mesa-cvs-repo/Mesa/src/glu/sgi/libutil/project.c,v 1.3 2001/09/14 22:19:19 brianp Exp $
|
||||
*/
|
||||
|
||||
#include "gluos.h"
|
||||
#include <math.h>
|
||||
#include <GL/gl.h>
|
||||
#include <GL/glu.h>
|
||||
#include "gluint.h"
|
||||
|
||||
/*
|
||||
** Make m an identity matrix
|
||||
*/
|
||||
static void __gluMakeIdentityd(GLdouble m[16])
|
||||
{
|
||||
m[0+4*0] = 1; m[0+4*1] = 0; m[0+4*2] = 0; m[0+4*3] = 0;
|
||||
m[1+4*0] = 0; m[1+4*1] = 1; m[1+4*2] = 0; m[1+4*3] = 0;
|
||||
m[2+4*0] = 0; m[2+4*1] = 0; m[2+4*2] = 1; m[2+4*3] = 0;
|
||||
m[3+4*0] = 0; m[3+4*1] = 0; m[3+4*2] = 0; m[3+4*3] = 1;
|
||||
}
|
||||
|
||||
static void __gluMakeIdentityf(GLfloat m[16])
|
||||
{
|
||||
m[0+4*0] = 1; m[0+4*1] = 0; m[0+4*2] = 0; m[0+4*3] = 0;
|
||||
m[1+4*0] = 0; m[1+4*1] = 1; m[1+4*2] = 0; m[1+4*3] = 0;
|
||||
m[2+4*0] = 0; m[2+4*1] = 0; m[2+4*2] = 1; m[2+4*3] = 0;
|
||||
m[3+4*0] = 0; m[3+4*1] = 0; m[3+4*2] = 0; m[3+4*3] = 1;
|
||||
}
|
||||
|
||||
void GLAPIENTRY
|
||||
gluOrtho2D(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top)
|
||||
{
|
||||
glOrtho(left, right, bottom, top, -1, 1);
|
||||
}
|
||||
|
||||
#define __glPi 3.14159265358979323846
|
||||
|
||||
void GLAPIENTRY
|
||||
gluPerspective(GLdouble fovy, GLdouble aspect, GLdouble zNear, GLdouble zFar)
|
||||
{
|
||||
GLdouble m[4][4];
|
||||
double sine, cotangent, deltaZ;
|
||||
double radians = fovy / 2 * __glPi / 180;
|
||||
|
||||
deltaZ = zFar - zNear;
|
||||
sine = sin(radians);
|
||||
if ((deltaZ == 0) || (sine == 0) || (aspect == 0)) {
|
||||
return;
|
||||
}
|
||||
cotangent = COS(radians) / sine;
|
||||
|
||||
__gluMakeIdentityd(&m[0][0]);
|
||||
m[0][0] = cotangent / aspect;
|
||||
m[1][1] = cotangent;
|
||||
m[2][2] = -(zFar + zNear) / deltaZ;
|
||||
m[2][3] = -1;
|
||||
m[3][2] = -2 * zNear * zFar / deltaZ;
|
||||
m[3][3] = 0;
|
||||
glMultMatrixd(&m[0][0]);
|
||||
}
|
||||
|
||||
static void normalize(float v[3])
|
||||
{
|
||||
float r;
|
||||
|
||||
r = sqrt( v[0]*v[0] + v[1]*v[1] + v[2]*v[2] );
|
||||
if (r == 0.0) return;
|
||||
|
||||
v[0] /= r;
|
||||
v[1] /= r;
|
||||
v[2] /= r;
|
||||
}
|
||||
|
||||
static void cross(float v1[3], float v2[3], float result[3])
|
||||
{
|
||||
result[0] = v1[1]*v2[2] - v1[2]*v2[1];
|
||||
result[1] = v1[2]*v2[0] - v1[0]*v2[2];
|
||||
result[2] = v1[0]*v2[1] - v1[1]*v2[0];
|
||||
}
|
||||
|
||||
void GLAPIENTRY
|
||||
gluLookAt(GLdouble eyex, GLdouble eyey, GLdouble eyez, GLdouble centerx,
|
||||
GLdouble centery, GLdouble centerz, GLdouble upx, GLdouble upy,
|
||||
GLdouble upz)
|
||||
{
|
||||
int i;
|
||||
float forward[3], side[3], up[3];
|
||||
GLfloat m[4][4];
|
||||
|
||||
forward[0] = centerx - eyex;
|
||||
forward[1] = centery - eyey;
|
||||
forward[2] = centerz - eyez;
|
||||
|
||||
up[0] = upx;
|
||||
up[1] = upy;
|
||||
up[2] = upz;
|
||||
|
||||
normalize(forward);
|
||||
|
||||
/* Side = forward x up */
|
||||
cross(forward, up, side);
|
||||
normalize(side);
|
||||
|
||||
/* Recompute up as: up = side x forward */
|
||||
cross(side, forward, up);
|
||||
|
||||
__gluMakeIdentityf(&m[0][0]);
|
||||
m[0][0] = side[0];
|
||||
m[1][0] = side[1];
|
||||
m[2][0] = side[2];
|
||||
|
||||
m[0][1] = up[0];
|
||||
m[1][1] = up[1];
|
||||
m[2][1] = up[2];
|
||||
|
||||
m[0][2] = -forward[0];
|
||||
m[1][2] = -forward[1];
|
||||
m[2][2] = -forward[2];
|
||||
|
||||
glMultMatrixf(&m[0][0]);
|
||||
glTranslated(-eyex, -eyey, -eyez);
|
||||
}
|
||||
|
||||
static void __gluMultMatrixVecd(const GLdouble matrix[16], const GLdouble in[4],
|
||||
GLdouble out[4])
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i=0; i<4; i++) {
|
||||
out[i] =
|
||||
in[0] * matrix[0*4+i] +
|
||||
in[1] * matrix[1*4+i] +
|
||||
in[2] * matrix[2*4+i] +
|
||||
in[3] * matrix[3*4+i];
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
** inverse = invert(src)
|
||||
*/
|
||||
static int __gluInvertMatrixd(const GLdouble src[16], GLdouble inverse[16])
|
||||
{
|
||||
int i, j, k, swap;
|
||||
double t;
|
||||
GLdouble temp[4][4];
|
||||
|
||||
for (i=0; i<4; i++) {
|
||||
for (j=0; j<4; j++) {
|
||||
temp[i][j] = src[i*4+j];
|
||||
}
|
||||
}
|
||||
__gluMakeIdentityd(inverse);
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
/*
|
||||
** Look for largest element in column
|
||||
*/
|
||||
swap = i;
|
||||
for (j = i + 1; j < 4; j++) {
|
||||
if (fabs(temp[j][i]) > fabs(temp[i][i])) {
|
||||
swap = j;
|
||||
}
|
||||
}
|
||||
|
||||
if (swap != i) {
|
||||
/*
|
||||
** Swap rows.
|
||||
*/
|
||||
for (k = 0; k < 4; k++) {
|
||||
t = temp[i][k];
|
||||
temp[i][k] = temp[swap][k];
|
||||
temp[swap][k] = t;
|
||||
|
||||
t = inverse[i*4+k];
|
||||
inverse[i*4+k] = inverse[swap*4+k];
|
||||
inverse[swap*4+k] = t;
|
||||
}
|
||||
}
|
||||
|
||||
if (temp[i][i] == 0) {
|
||||
/*
|
||||
** No non-zero pivot. The matrix is singular, which shouldn't
|
||||
** happen. This means the user gave us a bad matrix.
|
||||
*/
|
||||
return GL_FALSE;
|
||||
}
|
||||
|
||||
t = temp[i][i];
|
||||
for (k = 0; k < 4; k++) {
|
||||
temp[i][k] /= t;
|
||||
inverse[i*4+k] /= t;
|
||||
}
|
||||
for (j = 0; j < 4; j++) {
|
||||
if (j != i) {
|
||||
t = temp[j][i];
|
||||
for (k = 0; k < 4; k++) {
|
||||
temp[j][k] -= temp[i][k]*t;
|
||||
inverse[j*4+k] -= inverse[i*4+k]*t;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return GL_TRUE;
|
||||
}
|
||||
|
||||
static void __gluMultMatricesd(const GLdouble a[16], const GLdouble b[16],
|
||||
GLdouble r[16])
|
||||
{
|
||||
int i, j;
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
for (j = 0; j < 4; j++) {
|
||||
r[i*4+j] =
|
||||
a[i*4+0]*b[0*4+j] +
|
||||
a[i*4+1]*b[1*4+j] +
|
||||
a[i*4+2]*b[2*4+j] +
|
||||
a[i*4+3]*b[3*4+j];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
GLint GLAPIENTRY
|
||||
gluProject(GLdouble objx, GLdouble objy, GLdouble objz,
|
||||
const GLdouble modelMatrix[16],
|
||||
const GLdouble projMatrix[16],
|
||||
const GLint viewport[4],
|
||||
GLdouble *winx, GLdouble *winy, GLdouble *winz)
|
||||
{
|
||||
double in[4];
|
||||
double out[4];
|
||||
|
||||
in[0]=objx;
|
||||
in[1]=objy;
|
||||
in[2]=objz;
|
||||
in[3]=1.0;
|
||||
__gluMultMatrixVecd(modelMatrix, in, out);
|
||||
__gluMultMatrixVecd(projMatrix, out, in);
|
||||
if (in[3] == 0.0) return(GL_FALSE);
|
||||
in[0] /= in[3];
|
||||
in[1] /= in[3];
|
||||
in[2] /= in[3];
|
||||
/* Map x, y and z to range 0-1 */
|
||||
in[0] = in[0] * 0.5 + 0.5;
|
||||
in[1] = in[1] * 0.5 + 0.5;
|
||||
in[2] = in[2] * 0.5 + 0.5;
|
||||
|
||||
/* Map x,y to viewport */
|
||||
in[0] = in[0] * viewport[2] + viewport[0];
|
||||
in[1] = in[1] * viewport[3] + viewport[1];
|
||||
|
||||
*winx=in[0];
|
||||
*winy=in[1];
|
||||
*winz=in[2];
|
||||
return(GL_TRUE);
|
||||
}
|
||||
|
||||
GLint GLAPIENTRY
|
||||
gluUnProject(GLdouble winx, GLdouble winy, GLdouble winz,
|
||||
const GLdouble modelMatrix[16],
|
||||
const GLdouble projMatrix[16],
|
||||
const GLint viewport[4],
|
||||
GLdouble *objx, GLdouble *objy, GLdouble *objz)
|
||||
{
|
||||
double finalMatrix[16];
|
||||
double in[4];
|
||||
double out[4];
|
||||
|
||||
__gluMultMatricesd(modelMatrix, projMatrix, finalMatrix);
|
||||
if (!__gluInvertMatrixd(finalMatrix, finalMatrix)) return(GL_FALSE);
|
||||
|
||||
in[0]=winx;
|
||||
in[1]=winy;
|
||||
in[2]=winz;
|
||||
in[3]=1.0;
|
||||
|
||||
/* Map x and y from window coordinates */
|
||||
in[0] = (in[0] - viewport[0]) / viewport[2];
|
||||
in[1] = (in[1] - viewport[1]) / viewport[3];
|
||||
|
||||
/* Map to range -1 to 1 */
|
||||
in[0] = in[0] * 2 - 1;
|
||||
in[1] = in[1] * 2 - 1;
|
||||
in[2] = in[2] * 2 - 1;
|
||||
|
||||
__gluMultMatrixVecd(finalMatrix, in, out);
|
||||
if (out[3] == 0.0) return(GL_FALSE);
|
||||
out[0] /= out[3];
|
||||
out[1] /= out[3];
|
||||
out[2] /= out[3];
|
||||
*objx = out[0];
|
||||
*objy = out[1];
|
||||
*objz = out[2];
|
||||
return(GL_TRUE);
|
||||
}
|
||||
|
||||
GLint GLAPIENTRY
|
||||
gluUnProject4(GLdouble winx, GLdouble winy, GLdouble winz, GLdouble clipw,
|
||||
const GLdouble modelMatrix[16],
|
||||
const GLdouble projMatrix[16],
|
||||
const GLint viewport[4],
|
||||
GLclampd nearVal, GLclampd farVal,
|
||||
GLdouble *objx, GLdouble *objy, GLdouble *objz,
|
||||
GLdouble *objw)
|
||||
{
|
||||
double finalMatrix[16];
|
||||
double in[4];
|
||||
double out[4];
|
||||
|
||||
__gluMultMatricesd(modelMatrix, projMatrix, finalMatrix);
|
||||
if (!__gluInvertMatrixd(finalMatrix, finalMatrix)) return(GL_FALSE);
|
||||
|
||||
in[0]=winx;
|
||||
in[1]=winy;
|
||||
in[2]=winz;
|
||||
in[3]=clipw;
|
||||
|
||||
/* Map x and y from window coordinates */
|
||||
in[0] = (in[0] - viewport[0]) / viewport[2];
|
||||
in[1] = (in[1] - viewport[1]) / viewport[3];
|
||||
in[2] = (in[2] - nearVal) / (farVal - nearVal);
|
||||
|
||||
/* Map to range -1 to 1 */
|
||||
in[0] = in[0] * 2 - 1;
|
||||
in[1] = in[1] * 2 - 1;
|
||||
in[2] = in[2] * 2 - 1;
|
||||
|
||||
__gluMultMatrixVecd(finalMatrix, in, out);
|
||||
if (out[3] == 0.0) return(GL_FALSE);
|
||||
*objx = out[0];
|
||||
*objy = out[1];
|
||||
*objz = out[2];
|
||||
*objw = out[3];
|
||||
return(GL_TRUE);
|
||||
}
|
||||
|
||||
void GLAPIENTRY
|
||||
gluPickMatrix(GLdouble x, GLdouble y, GLdouble deltax, GLdouble deltay,
|
||||
GLint viewport[4])
|
||||
{
|
||||
if (deltax <= 0 || deltay <= 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* Translate and scale the picked region to the entire window */
|
||||
glTranslatef((viewport[2] - 2 * (x - viewport[0])) / deltax,
|
||||
(viewport[3] - 2 * (y - viewport[1])) / deltay, 0);
|
||||
glScalef(viewport[2] / deltax, viewport[3] / deltay, 1.0);
|
||||
}
|
||||
/*
|
||||
** License Applicability. Except to the extent portions of this file are
|
||||
** made subject to an alternative license as permitted in the SGI Free
|
||||
** Software License B, Version 1.1 (the "License"), the contents of this
|
||||
** file are subject only to the provisions of the License. You may not use
|
||||
** this file except in compliance with the License. You may obtain a copy
|
||||
** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
|
||||
** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
|
||||
**
|
||||
** http://oss.sgi.com/projects/FreeB
|
||||
**
|
||||
** Note that, as provided in the License, the Software is distributed on an
|
||||
** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
|
||||
** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
|
||||
** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
|
||||
** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
|
||||
**
|
||||
** Original Code. The Original Code is: OpenGL Sample Implementation,
|
||||
** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
|
||||
** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
|
||||
** Copyright in any portions created by third parties is as indicated
|
||||
** elsewhere herein. All Rights Reserved.
|
||||
**
|
||||
** Additional Notice Provisions: The application programming interfaces
|
||||
** established by SGI in conjunction with the Original Code are The
|
||||
** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released
|
||||
** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version
|
||||
** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X
|
||||
** Window System(R) (Version 1.3), released October 19, 1998. This software
|
||||
** was created using the OpenGL(R) version 1.2.1 Sample Implementation
|
||||
** published by SGI, but has not been independently verified as being
|
||||
** compliant with the OpenGL(R) version 1.2.1 Specification.
|
||||
**
|
||||
** $Date: 2001/09/18 16:39:38 $ $Revision: 1.4 $
|
||||
** $Header: /home/krh/git/sync/mesa-cvs-repo/Mesa/src/glu/sgi/libutil/project.c,v 1.4 2001/09/18 16:39:38 kschultz Exp $
|
||||
*/
|
||||
|
||||
#include "gluos.h"
|
||||
#include <math.h>
|
||||
#include <GL/gl.h>
|
||||
#include <GL/glu.h>
|
||||
#include "gluint.h"
|
||||
|
||||
/*
|
||||
** Make m an identity matrix
|
||||
*/
|
||||
static void __gluMakeIdentityd(GLdouble m[16])
|
||||
{
|
||||
m[0+4*0] = 1; m[0+4*1] = 0; m[0+4*2] = 0; m[0+4*3] = 0;
|
||||
m[1+4*0] = 0; m[1+4*1] = 1; m[1+4*2] = 0; m[1+4*3] = 0;
|
||||
m[2+4*0] = 0; m[2+4*1] = 0; m[2+4*2] = 1; m[2+4*3] = 0;
|
||||
m[3+4*0] = 0; m[3+4*1] = 0; m[3+4*2] = 0; m[3+4*3] = 1;
|
||||
}
|
||||
|
||||
static void __gluMakeIdentityf(GLfloat m[16])
|
||||
{
|
||||
m[0+4*0] = 1; m[0+4*1] = 0; m[0+4*2] = 0; m[0+4*3] = 0;
|
||||
m[1+4*0] = 0; m[1+4*1] = 1; m[1+4*2] = 0; m[1+4*3] = 0;
|
||||
m[2+4*0] = 0; m[2+4*1] = 0; m[2+4*2] = 1; m[2+4*3] = 0;
|
||||
m[3+4*0] = 0; m[3+4*1] = 0; m[3+4*2] = 0; m[3+4*3] = 1;
|
||||
}
|
||||
|
||||
void GLAPIENTRY
|
||||
gluOrtho2D(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top)
|
||||
{
|
||||
glOrtho(left, right, bottom, top, -1, 1);
|
||||
}
|
||||
|
||||
#define __glPi 3.14159265358979323846
|
||||
|
||||
void GLAPIENTRY
|
||||
gluPerspective(GLdouble fovy, GLdouble aspect, GLdouble zNear, GLdouble zFar)
|
||||
{
|
||||
GLdouble m[4][4];
|
||||
double sine, cotangent, deltaZ;
|
||||
double radians = fovy / 2 * __glPi / 180;
|
||||
|
||||
deltaZ = zFar - zNear;
|
||||
sine = sin(radians);
|
||||
if ((deltaZ == 0) || (sine == 0) || (aspect == 0)) {
|
||||
return;
|
||||
}
|
||||
cotangent = COS(radians) / sine;
|
||||
|
||||
__gluMakeIdentityd(&m[0][0]);
|
||||
m[0][0] = cotangent / aspect;
|
||||
m[1][1] = cotangent;
|
||||
m[2][2] = -(zFar + zNear) / deltaZ;
|
||||
m[2][3] = -1;
|
||||
m[3][2] = -2 * zNear * zFar / deltaZ;
|
||||
m[3][3] = 0;
|
||||
glMultMatrixd(&m[0][0]);
|
||||
}
|
||||
|
||||
static void normalize(float v[3])
|
||||
{
|
||||
float r;
|
||||
|
||||
r = sqrt( v[0]*v[0] + v[1]*v[1] + v[2]*v[2] );
|
||||
if (r == 0.0) return;
|
||||
|
||||
v[0] /= r;
|
||||
v[1] /= r;
|
||||
v[2] /= r;
|
||||
}
|
||||
|
||||
static void cross(float v1[3], float v2[3], float result[3])
|
||||
{
|
||||
result[0] = v1[1]*v2[2] - v1[2]*v2[1];
|
||||
result[1] = v1[2]*v2[0] - v1[0]*v2[2];
|
||||
result[2] = v1[0]*v2[1] - v1[1]*v2[0];
|
||||
}
|
||||
|
||||
void GLAPIENTRY
|
||||
gluLookAt(GLdouble eyex, GLdouble eyey, GLdouble eyez, GLdouble centerx,
|
||||
GLdouble centery, GLdouble centerz, GLdouble upx, GLdouble upy,
|
||||
GLdouble upz)
|
||||
{
|
||||
int i;
|
||||
float forward[3], side[3], up[3];
|
||||
GLfloat m[4][4];
|
||||
|
||||
forward[0] = centerx - eyex;
|
||||
forward[1] = centery - eyey;
|
||||
forward[2] = centerz - eyez;
|
||||
|
||||
up[0] = upx;
|
||||
up[1] = upy;
|
||||
up[2] = upz;
|
||||
|
||||
normalize(forward);
|
||||
|
||||
/* Side = forward x up */
|
||||
cross(forward, up, side);
|
||||
normalize(side);
|
||||
|
||||
/* Recompute up as: up = side x forward */
|
||||
cross(side, forward, up);
|
||||
|
||||
__gluMakeIdentityf(&m[0][0]);
|
||||
m[0][0] = side[0];
|
||||
m[1][0] = side[1];
|
||||
m[2][0] = side[2];
|
||||
|
||||
m[0][1] = up[0];
|
||||
m[1][1] = up[1];
|
||||
m[2][1] = up[2];
|
||||
|
||||
m[0][2] = -forward[0];
|
||||
m[1][2] = -forward[1];
|
||||
m[2][2] = -forward[2];
|
||||
|
||||
glMultMatrixf(&m[0][0]);
|
||||
glTranslated(-eyex, -eyey, -eyez);
|
||||
}
|
||||
|
||||
static void __gluMultMatrixVecd(const GLdouble matrix[16], const GLdouble in[4],
|
||||
GLdouble out[4])
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i=0; i<4; i++) {
|
||||
out[i] =
|
||||
in[0] * matrix[0*4+i] +
|
||||
in[1] * matrix[1*4+i] +
|
||||
in[2] * matrix[2*4+i] +
|
||||
in[3] * matrix[3*4+i];
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
** inverse = invert(src)
|
||||
*/
|
||||
static int __gluInvertMatrixd(const GLdouble src[16], GLdouble inverse[16])
|
||||
{
|
||||
int i, j, k, swap;
|
||||
double t;
|
||||
GLdouble temp[4][4];
|
||||
|
||||
for (i=0; i<4; i++) {
|
||||
for (j=0; j<4; j++) {
|
||||
temp[i][j] = src[i*4+j];
|
||||
}
|
||||
}
|
||||
__gluMakeIdentityd(inverse);
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
/*
|
||||
** Look for largest element in column
|
||||
*/
|
||||
swap = i;
|
||||
for (j = i + 1; j < 4; j++) {
|
||||
if (fabs(temp[j][i]) > fabs(temp[i][i])) {
|
||||
swap = j;
|
||||
}
|
||||
}
|
||||
|
||||
if (swap != i) {
|
||||
/*
|
||||
** Swap rows.
|
||||
*/
|
||||
for (k = 0; k < 4; k++) {
|
||||
t = temp[i][k];
|
||||
temp[i][k] = temp[swap][k];
|
||||
temp[swap][k] = t;
|
||||
|
||||
t = inverse[i*4+k];
|
||||
inverse[i*4+k] = inverse[swap*4+k];
|
||||
inverse[swap*4+k] = t;
|
||||
}
|
||||
}
|
||||
|
||||
if (temp[i][i] == 0) {
|
||||
/*
|
||||
** No non-zero pivot. The matrix is singular, which shouldn't
|
||||
** happen. This means the user gave us a bad matrix.
|
||||
*/
|
||||
return GL_FALSE;
|
||||
}
|
||||
|
||||
t = temp[i][i];
|
||||
for (k = 0; k < 4; k++) {
|
||||
temp[i][k] /= t;
|
||||
inverse[i*4+k] /= t;
|
||||
}
|
||||
for (j = 0; j < 4; j++) {
|
||||
if (j != i) {
|
||||
t = temp[j][i];
|
||||
for (k = 0; k < 4; k++) {
|
||||
temp[j][k] -= temp[i][k]*t;
|
||||
inverse[j*4+k] -= inverse[i*4+k]*t;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return GL_TRUE;
|
||||
}
|
||||
|
||||
static void __gluMultMatricesd(const GLdouble a[16], const GLdouble b[16],
|
||||
GLdouble r[16])
|
||||
{
|
||||
int i, j;
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
for (j = 0; j < 4; j++) {
|
||||
r[i*4+j] =
|
||||
a[i*4+0]*b[0*4+j] +
|
||||
a[i*4+1]*b[1*4+j] +
|
||||
a[i*4+2]*b[2*4+j] +
|
||||
a[i*4+3]*b[3*4+j];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
GLint GLAPIENTRY
|
||||
gluProject(GLdouble objx, GLdouble objy, GLdouble objz,
|
||||
const GLdouble modelMatrix[16],
|
||||
const GLdouble projMatrix[16],
|
||||
const GLint viewport[4],
|
||||
GLdouble *winx, GLdouble *winy, GLdouble *winz)
|
||||
{
|
||||
double in[4];
|
||||
double out[4];
|
||||
|
||||
in[0]=objx;
|
||||
in[1]=objy;
|
||||
in[2]=objz;
|
||||
in[3]=1.0;
|
||||
__gluMultMatrixVecd(modelMatrix, in, out);
|
||||
__gluMultMatrixVecd(projMatrix, out, in);
|
||||
if (in[3] == 0.0) return(GL_FALSE);
|
||||
in[0] /= in[3];
|
||||
in[1] /= in[3];
|
||||
in[2] /= in[3];
|
||||
/* Map x, y and z to range 0-1 */
|
||||
in[0] = in[0] * 0.5 + 0.5;
|
||||
in[1] = in[1] * 0.5 + 0.5;
|
||||
in[2] = in[2] * 0.5 + 0.5;
|
||||
|
||||
/* Map x,y to viewport */
|
||||
in[0] = in[0] * viewport[2] + viewport[0];
|
||||
in[1] = in[1] * viewport[3] + viewport[1];
|
||||
|
||||
*winx=in[0];
|
||||
*winy=in[1];
|
||||
*winz=in[2];
|
||||
return(GL_TRUE);
|
||||
}
|
||||
|
||||
GLint GLAPIENTRY
|
||||
gluUnProject(GLdouble winx, GLdouble winy, GLdouble winz,
|
||||
const GLdouble modelMatrix[16],
|
||||
const GLdouble projMatrix[16],
|
||||
const GLint viewport[4],
|
||||
GLdouble *objx, GLdouble *objy, GLdouble *objz)
|
||||
{
|
||||
double finalMatrix[16];
|
||||
double in[4];
|
||||
double out[4];
|
||||
|
||||
__gluMultMatricesd(modelMatrix, projMatrix, finalMatrix);
|
||||
if (!__gluInvertMatrixd(finalMatrix, finalMatrix)) return(GL_FALSE);
|
||||
|
||||
in[0]=winx;
|
||||
in[1]=winy;
|
||||
in[2]=winz;
|
||||
in[3]=1.0;
|
||||
|
||||
/* Map x and y from window coordinates */
|
||||
in[0] = (in[0] - viewport[0]) / viewport[2];
|
||||
in[1] = (in[1] - viewport[1]) / viewport[3];
|
||||
|
||||
/* Map to range -1 to 1 */
|
||||
in[0] = in[0] * 2 - 1;
|
||||
in[1] = in[1] * 2 - 1;
|
||||
in[2] = in[2] * 2 - 1;
|
||||
|
||||
__gluMultMatrixVecd(finalMatrix, in, out);
|
||||
if (out[3] == 0.0) return(GL_FALSE);
|
||||
out[0] /= out[3];
|
||||
out[1] /= out[3];
|
||||
out[2] /= out[3];
|
||||
*objx = out[0];
|
||||
*objy = out[1];
|
||||
*objz = out[2];
|
||||
return(GL_TRUE);
|
||||
}
|
||||
|
||||
GLint GLAPIENTRY
|
||||
gluUnProject4(GLdouble winx, GLdouble winy, GLdouble winz, GLdouble clipw,
|
||||
const GLdouble modelMatrix[16],
|
||||
const GLdouble projMatrix[16],
|
||||
const GLint viewport[4],
|
||||
GLclampd nearVal, GLclampd farVal,
|
||||
GLdouble *objx, GLdouble *objy, GLdouble *objz,
|
||||
GLdouble *objw)
|
||||
{
|
||||
double finalMatrix[16];
|
||||
double in[4];
|
||||
double out[4];
|
||||
|
||||
__gluMultMatricesd(modelMatrix, projMatrix, finalMatrix);
|
||||
if (!__gluInvertMatrixd(finalMatrix, finalMatrix)) return(GL_FALSE);
|
||||
|
||||
in[0]=winx;
|
||||
in[1]=winy;
|
||||
in[2]=winz;
|
||||
in[3]=clipw;
|
||||
|
||||
/* Map x and y from window coordinates */
|
||||
in[0] = (in[0] - viewport[0]) / viewport[2];
|
||||
in[1] = (in[1] - viewport[1]) / viewport[3];
|
||||
in[2] = (in[2] - nearVal) / (farVal - nearVal);
|
||||
|
||||
/* Map to range -1 to 1 */
|
||||
in[0] = in[0] * 2 - 1;
|
||||
in[1] = in[1] * 2 - 1;
|
||||
in[2] = in[2] * 2 - 1;
|
||||
|
||||
__gluMultMatrixVecd(finalMatrix, in, out);
|
||||
if (out[3] == 0.0) return(GL_FALSE);
|
||||
*objx = out[0];
|
||||
*objy = out[1];
|
||||
*objz = out[2];
|
||||
*objw = out[3];
|
||||
return(GL_TRUE);
|
||||
}
|
||||
|
||||
void GLAPIENTRY
|
||||
gluPickMatrix(GLdouble x, GLdouble y, GLdouble deltax, GLdouble deltay,
|
||||
GLint viewport[4])
|
||||
{
|
||||
if (deltax <= 0 || deltay <= 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* Translate and scale the picked region to the entire window */
|
||||
glTranslatef((viewport[2] - 2 * (x - viewport[0])) / deltax,
|
||||
(viewport[3] - 2 * (y - viewport[1])) / deltay, 0);
|
||||
glScalef(viewport[2] / deltax, viewport[3] / deltay, 1.0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,100 +1,100 @@
|
|||
# Makefile for Win32
|
||||
|
||||
!include <win32.mak>
|
||||
|
||||
TOP = ..
|
||||
|
||||
# NOTE: glut_menu.c and glut_glxext.c are NOT compiled into Win32 GLUT
|
||||
|
||||
SRCS = glut_8x13.c glut_9x15.c glut_bitmap.c glut_bwidth.c glut_cindex.c glut_cmap.c glut_cursor.c glut_dials.c glut_dstr.c glut_event.c glut_ext.c glut_fbc.c glut_fullscrn.c glut_gamemode.c glut_get.c glut_hel10.c glut_hel12.c glut_hel18.c glut_init.c glut_input.c glut_joy.c glut_key.c glut_keyctrl.c glut_keyup.c glut_mesa.c glut_modifier.c glut_mroman.c glut_overlay.c glut_roman.c glut_shapes.c glut_space.c glut_stroke.c glut_swap.c glut_swidth.c glut_tablet.c glut_teapot.c glut_tr10.c glut_tr24.c glut_util.c glut_vidresize.c glut_warp.c glut_win.c glut_winmisc.c win32_glx.c win32_menu.c win32_util.c win32_winproc.c win32_x11.c
|
||||
|
||||
all : glutdll
|
||||
|
||||
!include "$(TOP)/mesawin32.mak"
|
||||
|
||||
glutdll : $(GLUTDLL)
|
||||
|
||||
!IFDEF NODEBUG
|
||||
OPTIMIZE_CFLAGS = -DNDEBUG
|
||||
!ENDIF
|
||||
|
||||
CFLAGS = $(cvarsdll) $(CFLAGS) $(OPTIMIZE_CFLAGS) -DMESA -DBUILD_GL32
|
||||
LFLAGS = $(dlllflags) $(LFLAGS)
|
||||
|
||||
OBJS = $(SRCS:.c=.obj)
|
||||
MS_LIBS = $(MS_OPENGL) $(MS_GLU) winmm.lib $(guilibsdll)
|
||||
MS_LIBS = ../lib/opengl32.lib ../lib/glu32.lib winmm.lib $(guilibsdll)
|
||||
SGI_LIBS = $(SGI_OPENGL) $(SGI_GLU) winmm.lib $(guilibsdll)
|
||||
|
||||
glut32.dll : $(OBJS) glut.def
|
||||
$(link) $(LFLAGS) -out:glut32.dll -def:glut.def $(OBJS) $(MS_LIBS)
|
||||
@echo "copying GLUT dynamic link library to lib directory..."
|
||||
-copy $(GLUTDLL) ..\lib
|
||||
@echo "copying GLUT import library to lib directory..."
|
||||
-copy $(GLUTLIB) ..\lib
|
||||
|
||||
glut.dll : $(OBJS) glut.def
|
||||
$(link) $(LFLAGS) -out:glut.dll -def:glut.def $(OBJS) $(SGI_LIBS)
|
||||
|
||||
install : $(GLUTDLL)
|
||||
@echo "copying GLUT dynamic link library to system directory..."
|
||||
-copy $(GLUTDLL) $(DLLINSTALL)
|
||||
@echo "copying GLUT header file to include directory..."
|
||||
-copy ..\include\GL\glut.h $(INCLUDEINSTALL)
|
||||
@echo "copying GLUT import library to library directory..."
|
||||
-copy $(GLUTLIB) $(LIBINSTALL)
|
||||
|
||||
.c.obj :
|
||||
$(cc) $(CFLAGS) -I . $*.c
|
||||
|
||||
# explicit object dependencies for all source files
|
||||
|
||||
win32_glx.obj: win32_glx.c win32_glx.h
|
||||
win32_x11.obj: win32_x11.c win32_x11.h
|
||||
win32_menu.obj: win32_menu.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h
|
||||
win32_util.obj: win32_util.c glutint.h ..\include\GL\glutf90.h
|
||||
win32_winproc.obj: win32_winproc.c glutint.h ..\include\GL\glutf90.h
|
||||
|
||||
glut_mroman.obj: glut_mroman.c glutstroke.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_roman.obj: glut_roman.c glutstroke.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_hel12.obj: glut_hel12.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_8x13.obj: glut_8x13.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_hel18.obj: glut_hel18.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_9x15.obj: glut_9x15.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_tr10.obj: glut_tr10.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_hel10.obj: glut_hel10.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_tr24.obj: glut_tr24.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
|
||||
glut_bitmap.obj: glut_bitmap.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_bwidth.obj: glut_bwidth.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_cindex.obj: glut_cindex.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_cmap.obj: glut_cmap.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_cursor.obj: glut_cursor.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_dials.obj: glut_dials.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_dstr.obj: glut_dstr.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_event.obj: glut_event.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_ext.obj: glut_ext.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_fullscrn.obj: glut_fullscrn.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_gamemode.obj: glut_gamemode.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_get.obj: glut_get.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_init.obj: glut_init.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_input.obj: glut_input.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_joy.obj: glut_joy.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_key.obj: glut_key.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_keyctrl.obj: glut_keyctrl.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_keyup.obj: glut_keyup.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_mesa.obj: glut_mesa.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_modifier.obj: glut_modifier.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_overlay.obj: glut_overlay.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_shapes.obj: glut_shapes.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_space.obj: glut_space.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_swap.obj: glut_swap.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_swidth.obj: glut_swidth.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_tablet.obj: glut_tablet.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_teapot.obj: glut_teapot.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_util.obj: glut_util.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_vidresize.obj: glut_vidresize.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_warp.obj: glut_warp.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_win.obj: glut_win.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h
|
||||
glut_winmisc.obj: glut_winmisc.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
|
||||
# Makefile for Win32
|
||||
|
||||
!include <win32.mak>
|
||||
|
||||
TOP = ..
|
||||
|
||||
# NOTE: glut_menu.c and glut_glxext.c are NOT compiled into Win32 GLUT
|
||||
|
||||
SRCS = glut_8x13.c glut_9x15.c glut_bitmap.c glut_bwidth.c glut_cindex.c glut_cmap.c glut_cursor.c glut_dials.c glut_dstr.c glut_event.c glut_ext.c glut_fbc.c glut_fullscrn.c glut_gamemode.c glut_get.c glut_hel10.c glut_hel12.c glut_hel18.c glut_init.c glut_input.c glut_joy.c glut_key.c glut_keyctrl.c glut_keyup.c glut_mesa.c glut_modifier.c glut_mroman.c glut_overlay.c glut_roman.c glut_shapes.c glut_space.c glut_stroke.c glut_swap.c glut_swidth.c glut_tablet.c glut_teapot.c glut_tr10.c glut_tr24.c glut_util.c glut_vidresize.c glut_warp.c glut_win.c glut_winmisc.c win32_glx.c win32_menu.c win32_util.c win32_winproc.c win32_x11.c
|
||||
|
||||
all : glutdll
|
||||
|
||||
!include "$(TOP)/mesawin32.mak"
|
||||
|
||||
glutdll : $(GLUTDLL)
|
||||
|
||||
!IFDEF NODEBUG
|
||||
OPTIMIZE_CFLAGS = -DNDEBUG
|
||||
!ENDIF
|
||||
|
||||
CFLAGS = $(cvarsdll) $(CFLAGS) $(OPTIMIZE_CFLAGS) -DMESA -DBUILD_GL32
|
||||
LFLAGS = $(dlllflags) $(LFLAGS)
|
||||
|
||||
OBJS = $(SRCS:.c=.obj)
|
||||
MS_LIBS = $(MS_OPENGL) $(MS_GLU) winmm.lib $(guilibsdll)
|
||||
MS_LIBS = ../lib/opengl32.lib ../lib/glu32.lib winmm.lib $(guilibsdll)
|
||||
SGI_LIBS = $(SGI_OPENGL) $(SGI_GLU) winmm.lib $(guilibsdll)
|
||||
|
||||
glut32.dll : $(OBJS) glut.def
|
||||
$(link) $(LFLAGS) -out:glut32.dll -def:glut.def $(OBJS) $(MS_LIBS)
|
||||
@echo "copying GLUT dynamic link library to lib directory..."
|
||||
-copy $(GLUTDLL) ..\lib
|
||||
@echo "copying GLUT import library to lib directory..."
|
||||
-copy $(GLUTLIB) ..\lib
|
||||
|
||||
glut.dll : $(OBJS) glut.def
|
||||
$(link) $(LFLAGS) -out:glut.dll -def:glut.def $(OBJS) $(SGI_LIBS)
|
||||
|
||||
install : $(GLUTDLL)
|
||||
@echo "copying GLUT dynamic link library to system directory..."
|
||||
-copy $(GLUTDLL) $(DLLINSTALL)
|
||||
@echo "copying GLUT header file to include directory..."
|
||||
-copy ..\include\GL\glut.h $(INCLUDEINSTALL)
|
||||
@echo "copying GLUT import library to library directory..."
|
||||
-copy $(GLUTLIB) $(LIBINSTALL)
|
||||
|
||||
.c.obj :
|
||||
$(cc) $(CFLAGS) -I . $*.c
|
||||
|
||||
# explicit object dependencies for all source files
|
||||
|
||||
win32_glx.obj: win32_glx.c win32_glx.h
|
||||
win32_x11.obj: win32_x11.c win32_x11.h
|
||||
win32_menu.obj: win32_menu.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h
|
||||
win32_util.obj: win32_util.c glutint.h ..\include\GL\glutf90.h
|
||||
win32_winproc.obj: win32_winproc.c glutint.h ..\include\GL\glutf90.h
|
||||
|
||||
glut_mroman.obj: glut_mroman.c glutstroke.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_roman.obj: glut_roman.c glutstroke.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_hel12.obj: glut_hel12.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_8x13.obj: glut_8x13.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_hel18.obj: glut_hel18.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_9x15.obj: glut_9x15.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_tr10.obj: glut_tr10.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_hel10.obj: glut_hel10.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
glut_tr24.obj: glut_tr24.c glutbitmap.h glutint.h ..\include\GL\glutf90.h
|
||||
|
||||
glut_bitmap.obj: glut_bitmap.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_bwidth.obj: glut_bwidth.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_cindex.obj: glut_cindex.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_cmap.obj: glut_cmap.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_cursor.obj: glut_cursor.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_dials.obj: glut_dials.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_dstr.obj: glut_dstr.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_event.obj: glut_event.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_ext.obj: glut_ext.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_fullscrn.obj: glut_fullscrn.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_gamemode.obj: glut_gamemode.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_get.obj: glut_get.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_init.obj: glut_init.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_input.obj: glut_input.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_joy.obj: glut_joy.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_key.obj: glut_key.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_keyctrl.obj: glut_keyctrl.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_keyup.obj: glut_keyup.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_mesa.obj: glut_mesa.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_modifier.obj: glut_modifier.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_overlay.obj: glut_overlay.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_shapes.obj: glut_shapes.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_space.obj: glut_space.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_swap.obj: glut_swap.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_swidth.obj: glut_swidth.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_tablet.obj: glut_tablet.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_teapot.obj: glut_teapot.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_util.obj: glut_util.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_vidresize.obj: glut_vidresize.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_warp.obj: glut_warp.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
glut_win.obj: glut_win.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h
|
||||
glut_winmisc.obj: glut_winmisc.c glutint.h ..\include\GL\glutf90.h ..\include\GL\glut.h glutwin32.h win32_glx.h win32_x11.h
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
DESCRIPTION 'OpenGL Utility Toolkit for Win32'
|
||||
|
||||
VERSION 3.7
|
||||
|
||||
|
||||
VERSION 3.7
|
||||
|
||||
EXPORTS
|
||||
|
||||
|
||||
glutAddMenuEntry
|
||||
glutAddSubMenu
|
||||
glutAttachMenu
|
||||
|
|
@ -123,4 +123,4 @@ EXPORTS
|
|||
glutWireTorus
|
||||
; __glutSetFCB
|
||||
; __glutGetFCB
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,326 +1,326 @@
|
|||
#ifndef __win32_x11_h__
|
||||
#define __win32_x11_h__
|
||||
|
||||
/* Copyright (c) Nate Robins, 1997. */
|
||||
|
||||
/* This program is freely distributable without licensing fees
|
||||
and is provided without guarantee or warrantee expressed or
|
||||
implied. This program is -not- in the public domain. */
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <windows.h>
|
||||
|
||||
/* These definitions are missing from windows.h */
|
||||
WINGDIAPI int WINAPI wglChoosePixelFormat(HDC, PIXELFORMATDESCRIPTOR *);
|
||||
WINGDIAPI int WINAPI wglDescribePixelFormat(HDC, int, UINT, LPPIXELFORMATDESCRIPTOR);
|
||||
WINGDIAPI int WINAPI wglGetPixelFormat(HDC);
|
||||
WINGDIAPI BOOL WINAPI wglSetPixelFormat(HDC, int, PIXELFORMATDESCRIPTOR *);
|
||||
WINGDIAPI BOOL WINAPI wglSwapBuffers(HDC);
|
||||
|
||||
/* Type definitions (conversions) */
|
||||
typedef int Visual; /* Win32 equivalent of X11 type */
|
||||
typedef HWND Window;
|
||||
typedef HPALETTE Colormap;
|
||||
typedef PIXELFORMATDESCRIPTOR XVisualInfo;
|
||||
typedef BOOL Bool;
|
||||
typedef MSG XEvent;
|
||||
typedef HDC Display;
|
||||
typedef HCURSOR Cursor;
|
||||
|
||||
typedef int Atom; /* dummies */
|
||||
typedef int XDevice;
|
||||
typedef int Status;
|
||||
|
||||
#define True TRUE /* Win32 equivalents of X11 booleans */
|
||||
#define False FALSE
|
||||
|
||||
#define None 0L /* universal null resource or null atom */
|
||||
|
||||
/* Input Event Masks. Used as event-mask window attribute and as arguments
|
||||
to Grab requests. Not to be confused with event names. */
|
||||
|
||||
#define NoEventMask 0L
|
||||
#define KeyPressMask (1L<<0)
|
||||
#define KeyReleaseMask (1L<<1)
|
||||
#define ButtonPressMask (1L<<2)
|
||||
#define ButtonReleaseMask (1L<<3)
|
||||
#define EnterWindowMask (1L<<4)
|
||||
#define LeaveWindowMask (1L<<5)
|
||||
#define PointerMotionMask (1L<<6)
|
||||
#define PointerMotionHintMask (1L<<7)
|
||||
#define Button1MotionMask (1L<<8)
|
||||
#define Button2MotionMask (1L<<9)
|
||||
#define Button3MotionMask (1L<<10)
|
||||
#define Button4MotionMask (1L<<11)
|
||||
#define Button5MotionMask (1L<<12)
|
||||
#define ButtonMotionMask (1L<<13)
|
||||
#define KeymapStateMask (1L<<14)
|
||||
#define ExposureMask (1L<<15)
|
||||
#define VisibilityChangeMask (1L<<16)
|
||||
#define StructureNotifyMask (1L<<17)
|
||||
#define ResizeRedirectMask (1L<<18)
|
||||
#define SubstructureNotifyMask (1L<<19)
|
||||
#define SubstructureRedirectMask (1L<<20)
|
||||
#define FocusChangeMask (1L<<21)
|
||||
#define PropertyChangeMask (1L<<22)
|
||||
#define ColormapChangeMask (1L<<23)
|
||||
#define OwnerGrabButtonMask (1L<<24)
|
||||
|
||||
/* Key masks. Used as modifiers to GrabButton and GrabKey, results of
|
||||
QueryPointer, state in various key-, mouse-, and button-related
|
||||
events. */
|
||||
|
||||
#define ShiftMask (1<<0)
|
||||
#define LockMask (1<<1)
|
||||
#define ControlMask (1<<2)
|
||||
#define Mod1Mask (1<<3)
|
||||
#define Mod2Mask (1<<4)
|
||||
#define Mod3Mask (1<<5)
|
||||
#define Mod4Mask (1<<6)
|
||||
#define Mod5Mask (1<<7)
|
||||
|
||||
/* Window classes used by CreateWindow */
|
||||
/* Note that CopyFromParent is already defined as 0 above */
|
||||
|
||||
#define InputOutput 1
|
||||
#define InputOnly 2
|
||||
|
||||
/* Window attributes for CreateWindow and ChangeWindowAttributes */
|
||||
|
||||
#define CWBackPixmap (1L<<0)
|
||||
#define CWBackPixel (1L<<1)
|
||||
#define CWBorderPixmap (1L<<2)
|
||||
#define CWBorderPixel (1L<<3)
|
||||
#define CWBitGravity (1L<<4)
|
||||
#define CWWinGravity (1L<<5)
|
||||
#define CWBackingStore (1L<<6)
|
||||
#define CWBackingPlanes (1L<<7)
|
||||
#define CWBackingPixel (1L<<8)
|
||||
#define CWOverrideRedirect (1L<<9)
|
||||
#define CWSaveUnder (1L<<10)
|
||||
#define CWEventMask (1L<<11)
|
||||
#define CWDontPropagate (1L<<12)
|
||||
#define CWColormap (1L<<13)
|
||||
#define CWCursor (1L<<14)
|
||||
|
||||
/* ConfigureWindow structure */
|
||||
|
||||
#define CWX (1<<0)
|
||||
#define CWY (1<<1)
|
||||
#define CWWidth (1<<2)
|
||||
#define CWHeight (1<<3)
|
||||
#define CWBorderWidth (1<<4)
|
||||
#define CWSibling (1<<5)
|
||||
#define CWStackMode (1<<6)
|
||||
|
||||
|
||||
/* Used in GetWindowAttributes reply */
|
||||
|
||||
#define IsUnmapped 0
|
||||
#define IsUnviewable 1
|
||||
#define IsViewable 2
|
||||
|
||||
/* Window stacking method (in configureWindow) */
|
||||
|
||||
#define Above 0
|
||||
#define Below 1
|
||||
#define TopIf 2
|
||||
#define BottomIf 3
|
||||
#define Opposite 4
|
||||
|
||||
/* For CreateColormap */
|
||||
|
||||
#define AllocNone 0 /* create map with no entries */
|
||||
#define AllocAll 1 /* allocate entire map writeable */
|
||||
|
||||
|
||||
/* Flags used in StoreNamedColor, StoreColors */
|
||||
|
||||
#define DoRed (1<<0)
|
||||
#define DoGreen (1<<1)
|
||||
#define DoBlue (1<<2)
|
||||
|
||||
/*
|
||||
* Bitmask returned by XParseGeometry(). Each bit tells if the corresponding
|
||||
* value (x, y, width, height) was found in the parsed string.
|
||||
*/
|
||||
#define NoValue 0x0000
|
||||
#define XValue 0x0001
|
||||
#define YValue 0x0002
|
||||
#define WidthValue 0x0004
|
||||
#define HeightValue 0x0008
|
||||
#define AllValues 0x000F
|
||||
#define XNegative 0x0010
|
||||
#define YNegative 0x0020
|
||||
|
||||
/* flags argument in size hints */
|
||||
#define USPosition (1L << 0) /* user specified x, y */
|
||||
#define USSize (1L << 1) /* user specified width, height */
|
||||
|
||||
/* definitions for initial window state */
|
||||
#define WithdrawnState 0 /* for windows that are not mapped */
|
||||
#define NormalState 1 /* most applications want to start this way */
|
||||
#define IconicState 3 /* application wants to start as an icon */
|
||||
#define GameModeState 4 /* Win32 GLUT only (not in Xlib!). */
|
||||
|
||||
/* Type definitions */
|
||||
|
||||
typedef struct {
|
||||
unsigned int background_pixmap; /* background pixmap */
|
||||
unsigned long background_pixel; /* background pixel */
|
||||
unsigned long border_pixel; /* border pixel value */
|
||||
long event_mask; /* set of events that should be saved */
|
||||
long do_not_propagate_mask; /* set of events that should not propagate */
|
||||
Bool override_redirect; /* boolean value for override-redirect */
|
||||
Colormap colormap; /* color map to be associated with window */
|
||||
} XSetWindowAttributes;
|
||||
|
||||
typedef struct {
|
||||
unsigned long pixel;
|
||||
unsigned short red, green, blue;
|
||||
char flags; /* do_red, do_green, do_blue */
|
||||
} XColor;
|
||||
|
||||
typedef struct {
|
||||
unsigned char *value; /* same as Property routines */
|
||||
Atom encoding; /* prop type */
|
||||
int format; /* prop data format: 8, 16, or 32 */
|
||||
unsigned long nitems; /* number of data items in value */
|
||||
} XTextProperty;
|
||||
|
||||
typedef struct {
|
||||
long flags; /* marks which fields in this structure are defined */
|
||||
int x, y; /* obsolete for new window mgrs, but clients */
|
||||
int width, height; /* should set so old wm's don't mess up */
|
||||
} XSizeHints;
|
||||
|
||||
/* Functions emulated by macros. */
|
||||
|
||||
#define XFreeColormap(display, colormap) \
|
||||
DeleteObject(colormap)
|
||||
|
||||
#define XCreateFontCursor(display, shape) \
|
||||
LoadCursor(NULL, shape)
|
||||
|
||||
#define XDefineCursor(display, window, cursor) \
|
||||
SetCursor(cursor)
|
||||
|
||||
#define XFlush(display) \
|
||||
/* Nothing. */
|
||||
|
||||
#define DisplayWidth(display, screen) \
|
||||
GetSystemMetrics(SM_CXSCREEN)
|
||||
|
||||
#define DisplayHeight(display, screen) \
|
||||
GetSystemMetrics(SM_CYSCREEN)
|
||||
|
||||
#define XMapWindow(display, window) \
|
||||
ShowWindow(window, SW_SHOWNORMAL)
|
||||
|
||||
#define XUnmapWindow(display, window) \
|
||||
ShowWindow(window, SW_HIDE)
|
||||
|
||||
#define XIconifyWindow(display, window, screen) \
|
||||
ShowWindow(window, SW_MINIMIZE)
|
||||
|
||||
#define XWithdrawWindow(display, window, screen) \
|
||||
ShowWindow(window, SW_HIDE)
|
||||
|
||||
#define XLowerWindow(display, window) \
|
||||
SetWindowPos(window, HWND_BOTTOM, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE)
|
||||
|
||||
#define XSetWMName(display, window, tp) \
|
||||
SetWindowText(window, (tp)->value)
|
||||
|
||||
/* There really isn't a way to set the icon name separate from the
|
||||
windows name in Win32, so, just set the windows name. */
|
||||
#define XSetWMIconName(display, window, tp) \
|
||||
XSetWMName(display, window, tp)
|
||||
|
||||
#define XDestroyWindow(display, window) \
|
||||
DestroyWindow(window)
|
||||
|
||||
/* Anything that needs to be freed was allocated with malloc in our
|
||||
fake X windows library for Win32, so free it with plain old
|
||||
free(). */
|
||||
#define XFree(data) \
|
||||
free(data)
|
||||
|
||||
/* Nothing to be done for this...the pointer is always 'ungrabbed'
|
||||
in Win32. */
|
||||
#define XUngrabPointer(display, time) \
|
||||
/* Nothing. */
|
||||
|
||||
/* Function prototypes. */
|
||||
|
||||
extern XVisualInfo* XGetVisualInfo(
|
||||
Display* display,
|
||||
long mask,
|
||||
XVisualInfo* ttemplate, /* Avoid class with C++ keyword. */
|
||||
int*nitems);
|
||||
|
||||
extern Colormap XCreateColormap(
|
||||
Display* display,
|
||||
Window root,
|
||||
Visual* visual,
|
||||
int alloc);
|
||||
|
||||
extern void XAllocColorCells(
|
||||
Display* display,
|
||||
Colormap colormap,
|
||||
Bool contig,
|
||||
unsigned long plane_masks_return[],
|
||||
unsigned int nplanes,
|
||||
unsigned long pixels_return[],
|
||||
unsigned int npixels);
|
||||
|
||||
extern void XStoreColor(
|
||||
Display* display,
|
||||
Colormap colormap,
|
||||
XColor* color);
|
||||
|
||||
extern void XSetWindowColormap(
|
||||
Display* display,
|
||||
Window window,
|
||||
Colormap colormap);
|
||||
|
||||
extern Bool XTranslateCoordinates(
|
||||
Display *display,
|
||||
Window src, Window dst,
|
||||
int src_x, int src_y,
|
||||
int* dest_x_return, int* dest_y_return,
|
||||
Window* child_return);
|
||||
|
||||
extern Status XGetGeometry(
|
||||
Display* display,
|
||||
Window window,
|
||||
Window* root_return,
|
||||
int* x_return, int* y_return,
|
||||
unsigned int* width_return, unsigned int* height_return,
|
||||
unsigned int *border_width_return,
|
||||
unsigned int* depth_return);
|
||||
|
||||
extern int DisplayWidthMM(
|
||||
Display* display,
|
||||
int screen);
|
||||
|
||||
extern int DisplayHeightMM(
|
||||
Display* display,
|
||||
int screen);
|
||||
|
||||
extern void XWarpPointer(
|
||||
Display* display,
|
||||
Window src, Window dst,
|
||||
int src_x, int src_y,
|
||||
int src_width, int src_height,
|
||||
int dst_x, int dst_y);
|
||||
|
||||
extern int XParseGeometry(
|
||||
char* string,
|
||||
int* x, int* y,
|
||||
unsigned int* width, unsigned int* height);
|
||||
|
||||
extern int XPending(
|
||||
Display* display);
|
||||
|
||||
#endif /* __win32_x11_h__ */
|
||||
#ifndef __win32_x11_h__
|
||||
#define __win32_x11_h__
|
||||
|
||||
/* Copyright (c) Nate Robins, 1997. */
|
||||
|
||||
/* This program is freely distributable without licensing fees
|
||||
and is provided without guarantee or warrantee expressed or
|
||||
implied. This program is -not- in the public domain. */
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <windows.h>
|
||||
|
||||
/* These definitions are missing from windows.h */
|
||||
WINGDIAPI int WINAPI wglChoosePixelFormat(HDC, PIXELFORMATDESCRIPTOR *);
|
||||
WINGDIAPI int WINAPI wglDescribePixelFormat(HDC, int, UINT, LPPIXELFORMATDESCRIPTOR);
|
||||
WINGDIAPI int WINAPI wglGetPixelFormat(HDC);
|
||||
WINGDIAPI BOOL WINAPI wglSetPixelFormat(HDC, int, PIXELFORMATDESCRIPTOR *);
|
||||
WINGDIAPI BOOL WINAPI wglSwapBuffers(HDC);
|
||||
|
||||
/* Type definitions (conversions) */
|
||||
typedef int Visual; /* Win32 equivalent of X11 type */
|
||||
typedef HWND Window;
|
||||
typedef HPALETTE Colormap;
|
||||
typedef PIXELFORMATDESCRIPTOR XVisualInfo;
|
||||
typedef BOOL Bool;
|
||||
typedef MSG XEvent;
|
||||
typedef HDC Display;
|
||||
typedef HCURSOR Cursor;
|
||||
|
||||
typedef int Atom; /* dummies */
|
||||
typedef int XDevice;
|
||||
typedef int Status;
|
||||
|
||||
#define True TRUE /* Win32 equivalents of X11 booleans */
|
||||
#define False FALSE
|
||||
|
||||
#define None 0L /* universal null resource or null atom */
|
||||
|
||||
/* Input Event Masks. Used as event-mask window attribute and as arguments
|
||||
to Grab requests. Not to be confused with event names. */
|
||||
|
||||
#define NoEventMask 0L
|
||||
#define KeyPressMask (1L<<0)
|
||||
#define KeyReleaseMask (1L<<1)
|
||||
#define ButtonPressMask (1L<<2)
|
||||
#define ButtonReleaseMask (1L<<3)
|
||||
#define EnterWindowMask (1L<<4)
|
||||
#define LeaveWindowMask (1L<<5)
|
||||
#define PointerMotionMask (1L<<6)
|
||||
#define PointerMotionHintMask (1L<<7)
|
||||
#define Button1MotionMask (1L<<8)
|
||||
#define Button2MotionMask (1L<<9)
|
||||
#define Button3MotionMask (1L<<10)
|
||||
#define Button4MotionMask (1L<<11)
|
||||
#define Button5MotionMask (1L<<12)
|
||||
#define ButtonMotionMask (1L<<13)
|
||||
#define KeymapStateMask (1L<<14)
|
||||
#define ExposureMask (1L<<15)
|
||||
#define VisibilityChangeMask (1L<<16)
|
||||
#define StructureNotifyMask (1L<<17)
|
||||
#define ResizeRedirectMask (1L<<18)
|
||||
#define SubstructureNotifyMask (1L<<19)
|
||||
#define SubstructureRedirectMask (1L<<20)
|
||||
#define FocusChangeMask (1L<<21)
|
||||
#define PropertyChangeMask (1L<<22)
|
||||
#define ColormapChangeMask (1L<<23)
|
||||
#define OwnerGrabButtonMask (1L<<24)
|
||||
|
||||
/* Key masks. Used as modifiers to GrabButton and GrabKey, results of
|
||||
QueryPointer, state in various key-, mouse-, and button-related
|
||||
events. */
|
||||
|
||||
#define ShiftMask (1<<0)
|
||||
#define LockMask (1<<1)
|
||||
#define ControlMask (1<<2)
|
||||
#define Mod1Mask (1<<3)
|
||||
#define Mod2Mask (1<<4)
|
||||
#define Mod3Mask (1<<5)
|
||||
#define Mod4Mask (1<<6)
|
||||
#define Mod5Mask (1<<7)
|
||||
|
||||
/* Window classes used by CreateWindow */
|
||||
/* Note that CopyFromParent is already defined as 0 above */
|
||||
|
||||
#define InputOutput 1
|
||||
#define InputOnly 2
|
||||
|
||||
/* Window attributes for CreateWindow and ChangeWindowAttributes */
|
||||
|
||||
#define CWBackPixmap (1L<<0)
|
||||
#define CWBackPixel (1L<<1)
|
||||
#define CWBorderPixmap (1L<<2)
|
||||
#define CWBorderPixel (1L<<3)
|
||||
#define CWBitGravity (1L<<4)
|
||||
#define CWWinGravity (1L<<5)
|
||||
#define CWBackingStore (1L<<6)
|
||||
#define CWBackingPlanes (1L<<7)
|
||||
#define CWBackingPixel (1L<<8)
|
||||
#define CWOverrideRedirect (1L<<9)
|
||||
#define CWSaveUnder (1L<<10)
|
||||
#define CWEventMask (1L<<11)
|
||||
#define CWDontPropagate (1L<<12)
|
||||
#define CWColormap (1L<<13)
|
||||
#define CWCursor (1L<<14)
|
||||
|
||||
/* ConfigureWindow structure */
|
||||
|
||||
#define CWX (1<<0)
|
||||
#define CWY (1<<1)
|
||||
#define CWWidth (1<<2)
|
||||
#define CWHeight (1<<3)
|
||||
#define CWBorderWidth (1<<4)
|
||||
#define CWSibling (1<<5)
|
||||
#define CWStackMode (1<<6)
|
||||
|
||||
|
||||
/* Used in GetWindowAttributes reply */
|
||||
|
||||
#define IsUnmapped 0
|
||||
#define IsUnviewable 1
|
||||
#define IsViewable 2
|
||||
|
||||
/* Window stacking method (in configureWindow) */
|
||||
|
||||
#define Above 0
|
||||
#define Below 1
|
||||
#define TopIf 2
|
||||
#define BottomIf 3
|
||||
#define Opposite 4
|
||||
|
||||
/* For CreateColormap */
|
||||
|
||||
#define AllocNone 0 /* create map with no entries */
|
||||
#define AllocAll 1 /* allocate entire map writeable */
|
||||
|
||||
|
||||
/* Flags used in StoreNamedColor, StoreColors */
|
||||
|
||||
#define DoRed (1<<0)
|
||||
#define DoGreen (1<<1)
|
||||
#define DoBlue (1<<2)
|
||||
|
||||
/*
|
||||
* Bitmask returned by XParseGeometry(). Each bit tells if the corresponding
|
||||
* value (x, y, width, height) was found in the parsed string.
|
||||
*/
|
||||
#define NoValue 0x0000
|
||||
#define XValue 0x0001
|
||||
#define YValue 0x0002
|
||||
#define WidthValue 0x0004
|
||||
#define HeightValue 0x0008
|
||||
#define AllValues 0x000F
|
||||
#define XNegative 0x0010
|
||||
#define YNegative 0x0020
|
||||
|
||||
/* flags argument in size hints */
|
||||
#define USPosition (1L << 0) /* user specified x, y */
|
||||
#define USSize (1L << 1) /* user specified width, height */
|
||||
|
||||
/* definitions for initial window state */
|
||||
#define WithdrawnState 0 /* for windows that are not mapped */
|
||||
#define NormalState 1 /* most applications want to start this way */
|
||||
#define IconicState 3 /* application wants to start as an icon */
|
||||
#define GameModeState 4 /* Win32 GLUT only (not in Xlib!). */
|
||||
|
||||
/* Type definitions */
|
||||
|
||||
typedef struct {
|
||||
unsigned int background_pixmap; /* background pixmap */
|
||||
unsigned long background_pixel; /* background pixel */
|
||||
unsigned long border_pixel; /* border pixel value */
|
||||
long event_mask; /* set of events that should be saved */
|
||||
long do_not_propagate_mask; /* set of events that should not propagate */
|
||||
Bool override_redirect; /* boolean value for override-redirect */
|
||||
Colormap colormap; /* color map to be associated with window */
|
||||
} XSetWindowAttributes;
|
||||
|
||||
typedef struct {
|
||||
unsigned long pixel;
|
||||
unsigned short red, green, blue;
|
||||
char flags; /* do_red, do_green, do_blue */
|
||||
} XColor;
|
||||
|
||||
typedef struct {
|
||||
unsigned char *value; /* same as Property routines */
|
||||
Atom encoding; /* prop type */
|
||||
int format; /* prop data format: 8, 16, or 32 */
|
||||
unsigned long nitems; /* number of data items in value */
|
||||
} XTextProperty;
|
||||
|
||||
typedef struct {
|
||||
long flags; /* marks which fields in this structure are defined */
|
||||
int x, y; /* obsolete for new window mgrs, but clients */
|
||||
int width, height; /* should set so old wm's don't mess up */
|
||||
} XSizeHints;
|
||||
|
||||
/* Functions emulated by macros. */
|
||||
|
||||
#define XFreeColormap(display, colormap) \
|
||||
DeleteObject(colormap)
|
||||
|
||||
#define XCreateFontCursor(display, shape) \
|
||||
LoadCursor(NULL, shape)
|
||||
|
||||
#define XDefineCursor(display, window, cursor) \
|
||||
SetCursor(cursor)
|
||||
|
||||
#define XFlush(display) \
|
||||
/* Nothing. */
|
||||
|
||||
#define DisplayWidth(display, screen) \
|
||||
GetSystemMetrics(SM_CXSCREEN)
|
||||
|
||||
#define DisplayHeight(display, screen) \
|
||||
GetSystemMetrics(SM_CYSCREEN)
|
||||
|
||||
#define XMapWindow(display, window) \
|
||||
ShowWindow(window, SW_SHOWNORMAL)
|
||||
|
||||
#define XUnmapWindow(display, window) \
|
||||
ShowWindow(window, SW_HIDE)
|
||||
|
||||
#define XIconifyWindow(display, window, screen) \
|
||||
ShowWindow(window, SW_MINIMIZE)
|
||||
|
||||
#define XWithdrawWindow(display, window, screen) \
|
||||
ShowWindow(window, SW_HIDE)
|
||||
|
||||
#define XLowerWindow(display, window) \
|
||||
SetWindowPos(window, HWND_BOTTOM, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE)
|
||||
|
||||
#define XSetWMName(display, window, tp) \
|
||||
SetWindowText(window, (tp)->value)
|
||||
|
||||
/* There really isn't a way to set the icon name separate from the
|
||||
windows name in Win32, so, just set the windows name. */
|
||||
#define XSetWMIconName(display, window, tp) \
|
||||
XSetWMName(display, window, tp)
|
||||
|
||||
#define XDestroyWindow(display, window) \
|
||||
DestroyWindow(window)
|
||||
|
||||
/* Anything that needs to be freed was allocated with malloc in our
|
||||
fake X windows library for Win32, so free it with plain old
|
||||
free(). */
|
||||
#define XFree(data) \
|
||||
free(data)
|
||||
|
||||
/* Nothing to be done for this...the pointer is always 'ungrabbed'
|
||||
in Win32. */
|
||||
#define XUngrabPointer(display, time) \
|
||||
/* Nothing. */
|
||||
|
||||
/* Function prototypes. */
|
||||
|
||||
extern XVisualInfo* XGetVisualInfo(
|
||||
Display* display,
|
||||
long mask,
|
||||
XVisualInfo* ttemplate, /* Avoid class with C++ keyword. */
|
||||
int*nitems);
|
||||
|
||||
extern Colormap XCreateColormap(
|
||||
Display* display,
|
||||
Window root,
|
||||
Visual* visual,
|
||||
int alloc);
|
||||
|
||||
extern void XAllocColorCells(
|
||||
Display* display,
|
||||
Colormap colormap,
|
||||
Bool contig,
|
||||
unsigned long plane_masks_return[],
|
||||
unsigned int nplanes,
|
||||
unsigned long pixels_return[],
|
||||
unsigned int npixels);
|
||||
|
||||
extern void XStoreColor(
|
||||
Display* display,
|
||||
Colormap colormap,
|
||||
XColor* color);
|
||||
|
||||
extern void XSetWindowColormap(
|
||||
Display* display,
|
||||
Window window,
|
||||
Colormap colormap);
|
||||
|
||||
extern Bool XTranslateCoordinates(
|
||||
Display *display,
|
||||
Window src, Window dst,
|
||||
int src_x, int src_y,
|
||||
int* dest_x_return, int* dest_y_return,
|
||||
Window* child_return);
|
||||
|
||||
extern Status XGetGeometry(
|
||||
Display* display,
|
||||
Window window,
|
||||
Window* root_return,
|
||||
int* x_return, int* y_return,
|
||||
unsigned int* width_return, unsigned int* height_return,
|
||||
unsigned int *border_width_return,
|
||||
unsigned int* depth_return);
|
||||
|
||||
extern int DisplayWidthMM(
|
||||
Display* display,
|
||||
int screen);
|
||||
|
||||
extern int DisplayHeightMM(
|
||||
Display* display,
|
||||
int screen);
|
||||
|
||||
extern void XWarpPointer(
|
||||
Display* display,
|
||||
Window src, Window dst,
|
||||
int src_x, int src_y,
|
||||
int src_width, int src_height,
|
||||
int dst_x, int dst_y);
|
||||
|
||||
extern int XParseGeometry(
|
||||
char* string,
|
||||
int* x, int* y,
|
||||
unsigned int* width, unsigned int* height);
|
||||
|
||||
extern int XPending(
|
||||
Display* display);
|
||||
|
||||
#endif /* __win32_x11_h__ */
|
||||
|
|
|
|||
|
|
@ -1,37 +1,37 @@
|
|||
# Makefile for Win32
|
||||
|
||||
!include <win32.mak>
|
||||
|
||||
TOP = ..\..
|
||||
|
||||
OSMESA_SRCS = osmesa.c
|
||||
OSMESA_OBJS = osmesa.obj
|
||||
OSMESALIB = OSmesa.lib
|
||||
|
||||
ASM_SRCS =
|
||||
CORE_SRCS = $(OSMESA_SRCS)
|
||||
DRIVER_SRCS =
|
||||
|
||||
SRCS = $(OSMESA_SRCS)
|
||||
|
||||
all : osmesalib install
|
||||
|
||||
!include "$(TOP)/mesawin32.mak"
|
||||
|
||||
osmesalib : $(OSMESALIB)
|
||||
|
||||
CFLAGS = $(cvarsdll) $(CFLAGS) -D_OPENGL32_ -I$(TOP)/src
|
||||
LFLAGS = /LIB
|
||||
|
||||
OBJS = $(ASM_SRCS:.S=.obj) $(CORE_SRCS:.c=.obj) $(DRIVER_SRCS:.c=.obj)
|
||||
LIBS = $(TOP)/lib/OpenGL32.lib $(TOP)/src/opengl32.exp
|
||||
|
||||
$(OSMESALIB) : $(OBJS)
|
||||
$(link) $(LFLAGS) -out:$(OSMESALIB) $(OBJS) $(LIBS)
|
||||
|
||||
install : $(OSMESALIB)
|
||||
@echo "copying OSMesa library to library directory..."
|
||||
-copy $(OSMESALIB) $(TOP)\lib
|
||||
|
||||
clean ::
|
||||
@del /f osmesa.obj
|
||||
# Makefile for Win32
|
||||
|
||||
!include <win32.mak>
|
||||
|
||||
TOP = ..\..
|
||||
|
||||
OSMESA_SRCS = osmesa.c
|
||||
OSMESA_OBJS = osmesa.obj
|
||||
OSMESALIB = OSmesa.lib
|
||||
|
||||
ASM_SRCS =
|
||||
CORE_SRCS = $(OSMESA_SRCS)
|
||||
DRIVER_SRCS =
|
||||
|
||||
SRCS = $(OSMESA_SRCS)
|
||||
|
||||
all : osmesalib install
|
||||
|
||||
!include "$(TOP)/mesawin32.mak"
|
||||
|
||||
osmesalib : $(OSMESALIB)
|
||||
|
||||
CFLAGS = $(cvarsdll) $(CFLAGS) -D_OPENGL32_ -I$(TOP)/src
|
||||
LFLAGS = /LIB
|
||||
|
||||
OBJS = $(ASM_SRCS:.S=.obj) $(CORE_SRCS:.c=.obj) $(DRIVER_SRCS:.c=.obj)
|
||||
LIBS = $(TOP)/lib/OpenGL32.lib $(TOP)/src/opengl32.exp
|
||||
|
||||
$(OSMESALIB) : $(OBJS)
|
||||
$(link) $(LFLAGS) -out:$(OSMESALIB) $(OBJS) $(LIBS)
|
||||
|
||||
install : $(OSMESALIB)
|
||||
@echo "copying OSMesa library to library directory..."
|
||||
-copy $(OSMESALIB) $(TOP)\lib
|
||||
|
||||
clean ::
|
||||
@del /f osmesa.obj
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,198 +1,198 @@
|
|||
# Makefile for Win32
|
||||
#
|
||||
# NOTE: the install target may overwrite important files in the system dir
|
||||
# Sept 12, 2001
|
||||
# Windows driver not working. OSMesa driver works.
|
||||
#
|
||||
|
||||
!include <win32.mak>
|
||||
|
||||
TOP = ..
|
||||
SUBDIRS = osmesa.dir
|
||||
|
||||
CORE_SRCS = \
|
||||
tnl\t_array_api.c \
|
||||
tnl\t_array_import.c \
|
||||
tnl\t_context.c \
|
||||
tnl\t_eval_api.c \
|
||||
tnl\t_imm_alloc.c \
|
||||
tnl\t_imm_api.c \
|
||||
tnl\t_imm_debug.c \
|
||||
tnl\t_imm_dlist.c \
|
||||
tnl\t_imm_elt.c \
|
||||
tnl\t_imm_eval.c \
|
||||
tnl\t_imm_exec.c \
|
||||
tnl\t_imm_fixup.c \
|
||||
tnl\t_pipeline.c \
|
||||
tnl\t_vb_fog.c \
|
||||
tnl\t_vb_light.c \
|
||||
tnl\t_vb_normals.c \
|
||||
tnl\t_vb_points.c \
|
||||
tnl\t_vb_render.c \
|
||||
tnl\t_vb_texgen.c \
|
||||
tnl\t_vb_texmat.c \
|
||||
tnl\t_vb_vertex.c \
|
||||
swrast_setup\ss_context.c \
|
||||
swrast_setup\ss_triangle.c \
|
||||
swrast_setup\ss_vb.c \
|
||||
api_loopback.c \
|
||||
api_noop.c \
|
||||
api_validate.c \
|
||||
accum.c \
|
||||
attrib.c \
|
||||
blend.c \
|
||||
buffers.c \
|
||||
clip.c \
|
||||
colortab.c \
|
||||
config.c \
|
||||
context.c \
|
||||
convolve.c \
|
||||
debug.c \
|
||||
depth.c \
|
||||
dispatch.c \
|
||||
dlist.c \
|
||||
drawpix.c \
|
||||
enable.c \
|
||||
enums.c \
|
||||
eval.c \
|
||||
extensions.c \
|
||||
feedback.c \
|
||||
fog.c \
|
||||
get.c \
|
||||
glapi.c \
|
||||
glthread.c \
|
||||
hash.c \
|
||||
highpc.c \
|
||||
hint.c \
|
||||
histogram.c \
|
||||
image.c \
|
||||
imports.c \
|
||||
light.c \
|
||||
lines.c \
|
||||
lowpc.c \
|
||||
matrix.c \
|
||||
mem.c \
|
||||
mmath.c \
|
||||
pixel.c \
|
||||
points.c \
|
||||
polygon.c \
|
||||
rastpos.c \
|
||||
state.c \
|
||||
stencil.c \
|
||||
teximage.c \
|
||||
texformat.c \
|
||||
texobj.c \
|
||||
texstate.c \
|
||||
texstore.c \
|
||||
texutil.c \
|
||||
varray.c \
|
||||
vtxfmt.c \
|
||||
# X86\x86.c \
|
||||
# X86\common_x86.c \
|
||||
# X86\3dnow.c \
|
||||
# X86\sse.c \
|
||||
math\m_debug_norm.c \
|
||||
math\m_debug_vertex.c \
|
||||
math\m_debug_xform.c \
|
||||
math\m_eval.c \
|
||||
math\m_matrix.c \
|
||||
math\m_translate.c \
|
||||
math\m_vector.c \
|
||||
math\m_vertices.c \
|
||||
math\m_xform.c \
|
||||
array_cache\ac_context.c \
|
||||
array_cache\ac_import.c \
|
||||
swrast\s_aaline.c \
|
||||
swrast\s_aatriangle.c \
|
||||
swrast\s_accum.c \
|
||||
swrast\s_alpha.c \
|
||||
swrast\s_alphabuf.c \
|
||||
swrast\s_bitmap.c \
|
||||
swrast\s_blend.c \
|
||||
swrast\s_buffers.c \
|
||||
swrast\s_copypix.c \
|
||||
swrast\s_context.c \
|
||||
swrast\s_depth.c \
|
||||
swrast\s_drawpix.c \
|
||||
swrast\s_feedback.c \
|
||||
swrast\s_fog.c \
|
||||
swrast\s_histogram.c \
|
||||
swrast\s_imaging.c \
|
||||
swrast\s_lines.c \
|
||||
swrast\s_logic.c \
|
||||
swrast\s_masking.c \
|
||||
swrast\s_pb.c \
|
||||
swrast\s_pixeltex.c \
|
||||
swrast\s_points.c \
|
||||
swrast\s_readpix.c \
|
||||
swrast\s_scissor.c \
|
||||
swrast\s_span.c \
|
||||
swrast\s_stencil.c \
|
||||
swrast\s_texstore.c \
|
||||
swrast\s_texture.c \
|
||||
swrast\s_triangle.c \
|
||||
swrast\s_zoom.c
|
||||
|
||||
DRIVER_SRCS = \
|
||||
Trace\tr_context.c \
|
||||
Trace\tr_control.c \
|
||||
Trace\tr_error.c \
|
||||
Trace\tr_support.c \
|
||||
Trace\tr_wrapper.c \
|
||||
Trace\tr_write.c \
|
||||
Windows\wgl.c \
|
||||
Windows\wmesa.c
|
||||
|
||||
ASM_SRCS =
|
||||
|
||||
SRCS = $(CORE_SRCS) $(DRIVER_SRCS)
|
||||
|
||||
all : mesadll $(SUBDIRS)
|
||||
|
||||
!include "$(TOP)/mesawin32.mak"
|
||||
|
||||
mesadll : $(MESADLL)
|
||||
|
||||
CFLAGS = $(cvarsdll) $(CFLAGS) -D_OPENGL32_ -DBUILD_GL32 -DNO_PARALLEL -DNO_STEREO
|
||||
LFLAGS = $(dlllflags) $(LFLAGS)
|
||||
|
||||
OBJS = $(ASM_SRCS:.S=.obj) $(CORE_SRCS:.c=.obj) $(DRIVER_SRCS:.c=.obj)
|
||||
LIBS = $(GLU) winmm.lib $(guilibsdll)
|
||||
|
||||
$(MESADLL) : $(OBJS) mesa.def
|
||||
$(link) $(LFLAGS) -out:$(MESADLL) -def:mesa.def $(OBJS) $(LIBS)
|
||||
@echo "copying Mesa dynamic link library to lib directory..."
|
||||
-copy $(MESADLL) ..\lib
|
||||
@echo "copying Mesa import library to lib directory..."
|
||||
-copy $(MESALIB) ..\lib
|
||||
|
||||
$(SUBDIRS) :
|
||||
@echo.
|
||||
@echo Making in $* directory
|
||||
@cd $*
|
||||
@nmake -f Makefile.win -nologo
|
||||
@cd ..
|
||||
|
||||
install : $(MESADLL)
|
||||
@echo "copying Mesa dynamic link library to system directory..."
|
||||
-copy $(MESADLL) $(DLLINSTALL)
|
||||
@echo "copying Mesa header files to include directory..."
|
||||
-copy ..\..\include\GL\gl.h $(INCLUDEINSTALL)
|
||||
-copy ..\..\include\GL\glext.h $(INCLUDEINSTALL)
|
||||
@echo "copying Mesa import library to library directory..."
|
||||
-copy $(MESALIB) $(LIBINSTALL)
|
||||
|
||||
clean ::
|
||||
@del /f tnl\*.obj
|
||||
@del /f swrast_setup\*.obj
|
||||
@del /f math\*.obj
|
||||
@del /f array_cache\*.obj
|
||||
@del /f swrast\*.obj
|
||||
@del /f Trace\*.obj
|
||||
@del /f osmesa\*.obj
|
||||
@del /f Windows\*.obj
|
||||
|
||||
# override default inference rule with one that writes the object to
|
||||
# the correct subdir
|
||||
.c.obj :
|
||||
$(cc) $(CFLAGS) -I. $< /Fo$*.obj
|
||||
# Makefile for Win32
|
||||
#
|
||||
# NOTE: the install target may overwrite important files in the system dir
|
||||
# Sept 12, 2001
|
||||
# Windows driver not working. OSMesa driver works.
|
||||
#
|
||||
|
||||
!include <win32.mak>
|
||||
|
||||
TOP = ..
|
||||
SUBDIRS = osmesa.dir
|
||||
|
||||
CORE_SRCS = \
|
||||
tnl\t_array_api.c \
|
||||
tnl\t_array_import.c \
|
||||
tnl\t_context.c \
|
||||
tnl\t_eval_api.c \
|
||||
tnl\t_imm_alloc.c \
|
||||
tnl\t_imm_api.c \
|
||||
tnl\t_imm_debug.c \
|
||||
tnl\t_imm_dlist.c \
|
||||
tnl\t_imm_elt.c \
|
||||
tnl\t_imm_eval.c \
|
||||
tnl\t_imm_exec.c \
|
||||
tnl\t_imm_fixup.c \
|
||||
tnl\t_pipeline.c \
|
||||
tnl\t_vb_fog.c \
|
||||
tnl\t_vb_light.c \
|
||||
tnl\t_vb_normals.c \
|
||||
tnl\t_vb_points.c \
|
||||
tnl\t_vb_render.c \
|
||||
tnl\t_vb_texgen.c \
|
||||
tnl\t_vb_texmat.c \
|
||||
tnl\t_vb_vertex.c \
|
||||
swrast_setup\ss_context.c \
|
||||
swrast_setup\ss_triangle.c \
|
||||
swrast_setup\ss_vb.c \
|
||||
api_loopback.c \
|
||||
api_noop.c \
|
||||
api_validate.c \
|
||||
accum.c \
|
||||
attrib.c \
|
||||
blend.c \
|
||||
buffers.c \
|
||||
clip.c \
|
||||
colortab.c \
|
||||
config.c \
|
||||
context.c \
|
||||
convolve.c \
|
||||
debug.c \
|
||||
depth.c \
|
||||
dispatch.c \
|
||||
dlist.c \
|
||||
drawpix.c \
|
||||
enable.c \
|
||||
enums.c \
|
||||
eval.c \
|
||||
extensions.c \
|
||||
feedback.c \
|
||||
fog.c \
|
||||
get.c \
|
||||
glapi.c \
|
||||
glthread.c \
|
||||
hash.c \
|
||||
highpc.c \
|
||||
hint.c \
|
||||
histogram.c \
|
||||
image.c \
|
||||
imports.c \
|
||||
light.c \
|
||||
lines.c \
|
||||
lowpc.c \
|
||||
matrix.c \
|
||||
mem.c \
|
||||
mmath.c \
|
||||
pixel.c \
|
||||
points.c \
|
||||
polygon.c \
|
||||
rastpos.c \
|
||||
state.c \
|
||||
stencil.c \
|
||||
teximage.c \
|
||||
texformat.c \
|
||||
texobj.c \
|
||||
texstate.c \
|
||||
texstore.c \
|
||||
texutil.c \
|
||||
varray.c \
|
||||
vtxfmt.c \
|
||||
# X86\x86.c \
|
||||
# X86\common_x86.c \
|
||||
# X86\3dnow.c \
|
||||
# X86\sse.c \
|
||||
math\m_debug_norm.c \
|
||||
math\m_debug_vertex.c \
|
||||
math\m_debug_xform.c \
|
||||
math\m_eval.c \
|
||||
math\m_matrix.c \
|
||||
math\m_translate.c \
|
||||
math\m_vector.c \
|
||||
math\m_vertices.c \
|
||||
math\m_xform.c \
|
||||
array_cache\ac_context.c \
|
||||
array_cache\ac_import.c \
|
||||
swrast\s_aaline.c \
|
||||
swrast\s_aatriangle.c \
|
||||
swrast\s_accum.c \
|
||||
swrast\s_alpha.c \
|
||||
swrast\s_alphabuf.c \
|
||||
swrast\s_bitmap.c \
|
||||
swrast\s_blend.c \
|
||||
swrast\s_buffers.c \
|
||||
swrast\s_copypix.c \
|
||||
swrast\s_context.c \
|
||||
swrast\s_depth.c \
|
||||
swrast\s_drawpix.c \
|
||||
swrast\s_feedback.c \
|
||||
swrast\s_fog.c \
|
||||
swrast\s_histogram.c \
|
||||
swrast\s_imaging.c \
|
||||
swrast\s_lines.c \
|
||||
swrast\s_logic.c \
|
||||
swrast\s_masking.c \
|
||||
swrast\s_pb.c \
|
||||
swrast\s_pixeltex.c \
|
||||
swrast\s_points.c \
|
||||
swrast\s_readpix.c \
|
||||
swrast\s_scissor.c \
|
||||
swrast\s_span.c \
|
||||
swrast\s_stencil.c \
|
||||
swrast\s_texstore.c \
|
||||
swrast\s_texture.c \
|
||||
swrast\s_triangle.c \
|
||||
swrast\s_zoom.c
|
||||
|
||||
DRIVER_SRCS = \
|
||||
Trace\tr_context.c \
|
||||
Trace\tr_control.c \
|
||||
Trace\tr_error.c \
|
||||
Trace\tr_support.c \
|
||||
Trace\tr_wrapper.c \
|
||||
Trace\tr_write.c \
|
||||
Windows\wgl.c \
|
||||
Windows\wmesa.c
|
||||
|
||||
ASM_SRCS =
|
||||
|
||||
SRCS = $(CORE_SRCS) $(DRIVER_SRCS)
|
||||
|
||||
all : mesadll $(SUBDIRS)
|
||||
|
||||
!include "$(TOP)/mesawin32.mak"
|
||||
|
||||
mesadll : $(MESADLL)
|
||||
|
||||
CFLAGS = $(cvarsdll) $(CFLAGS) -D_OPENGL32_ -DBUILD_GL32 -DNO_PARALLEL -DNO_STEREO
|
||||
LFLAGS = $(dlllflags) $(LFLAGS)
|
||||
|
||||
OBJS = $(ASM_SRCS:.S=.obj) $(CORE_SRCS:.c=.obj) $(DRIVER_SRCS:.c=.obj)
|
||||
LIBS = $(GLU) winmm.lib $(guilibsdll)
|
||||
|
||||
$(MESADLL) : $(OBJS) mesa.def
|
||||
$(link) $(LFLAGS) -out:$(MESADLL) -def:mesa.def $(OBJS) $(LIBS)
|
||||
@echo "copying Mesa dynamic link library to lib directory..."
|
||||
-copy $(MESADLL) ..\lib
|
||||
@echo "copying Mesa import library to lib directory..."
|
||||
-copy $(MESALIB) ..\lib
|
||||
|
||||
$(SUBDIRS) :
|
||||
@echo.
|
||||
@echo Making in $* directory
|
||||
@cd $*
|
||||
@nmake -f Makefile.win -nologo
|
||||
@cd ..
|
||||
|
||||
install : $(MESADLL)
|
||||
@echo "copying Mesa dynamic link library to system directory..."
|
||||
-copy $(MESADLL) $(DLLINSTALL)
|
||||
@echo "copying Mesa header files to include directory..."
|
||||
-copy ..\..\include\GL\gl.h $(INCLUDEINSTALL)
|
||||
-copy ..\..\include\GL\glext.h $(INCLUDEINSTALL)
|
||||
@echo "copying Mesa import library to library directory..."
|
||||
-copy $(MESALIB) $(LIBINSTALL)
|
||||
|
||||
clean ::
|
||||
@del /f tnl\*.obj
|
||||
@del /f swrast_setup\*.obj
|
||||
@del /f math\*.obj
|
||||
@del /f array_cache\*.obj
|
||||
@del /f swrast\*.obj
|
||||
@del /f Trace\*.obj
|
||||
@del /f osmesa\*.obj
|
||||
@del /f Windows\*.obj
|
||||
|
||||
# override default inference rule with one that writes the object to
|
||||
# the correct subdir
|
||||
.c.obj :
|
||||
$(cc) $(CFLAGS) -I. $< /Fo$*.obj
|
||||
|
|
|
|||
|
|
@ -1,473 +1,473 @@
|
|||
DESCRIPTION 'Mesa (OpenGL work-alike) for Win32'
|
||||
VERSION 3.5
|
||||
|
||||
EXPORTS
|
||||
glAccum
|
||||
glAlphaFunc
|
||||
glAreTexturesResident
|
||||
glAreTexturesResidentEXT
|
||||
glArrayElement
|
||||
glArrayElementEXT
|
||||
glBegin
|
||||
glBindTexture
|
||||
glBindTextureEXT
|
||||
glBitmap
|
||||
glBlendColorEXT
|
||||
glBlendEquationEXT
|
||||
glBlendFunc
|
||||
glCallList
|
||||
glCallLists
|
||||
glClear
|
||||
glClearAccum
|
||||
glClearColor
|
||||
glClearDepth
|
||||
glClearIndex
|
||||
glClearStencil
|
||||
glClipPlane
|
||||
glColor3b
|
||||
glColor3bv
|
||||
glColor3d
|
||||
glColor3dv
|
||||
glColor3f
|
||||
glColor3fv
|
||||
glColor3i
|
||||
glColor3iv
|
||||
glColor3s
|
||||
glColor3sv
|
||||
glColor3ub
|
||||
glColor3ubv
|
||||
glColor3ui
|
||||
glColor3uiv
|
||||
glColor3us
|
||||
glColor3usv
|
||||
glColor4b
|
||||
glColor4bv
|
||||
glColor4d
|
||||
glColor4dv
|
||||
glColor4f
|
||||
glColor4fv
|
||||
glColor4i
|
||||
glColor4iv
|
||||
glColor4s
|
||||
glColor4sv
|
||||
glColor4ub
|
||||
glColor4ubv
|
||||
glColor4ui
|
||||
glColor4uiv
|
||||
glColor4us
|
||||
glColor4usv
|
||||
glColorMask
|
||||
glColorMaterial
|
||||
glColorPointer
|
||||
glColorPointerEXT
|
||||
glColorSubTableEXT
|
||||
glColorTableEXT
|
||||
glCopyPixels
|
||||
glCopyTexImage1D
|
||||
glCopyTexImage2D
|
||||
glCopyTexSubImage1D
|
||||
glCopyTexSubImage2D
|
||||
glCopyTexSubImage3DEXT
|
||||
glCullFace
|
||||
glDeleteLists
|
||||
glDeleteTextures
|
||||
glDeleteTexturesEXT
|
||||
glDepthFunc
|
||||
glDepthMask
|
||||
glDepthRange
|
||||
glDisable
|
||||
glDisableClientState
|
||||
glDrawArrays
|
||||
glDrawArraysEXT
|
||||
glDrawBuffer
|
||||
glDrawElements
|
||||
glDrawPixels
|
||||
glEdgeFlag
|
||||
glEdgeFlagPointer
|
||||
glEdgeFlagPointerEXT
|
||||
glEdgeFlagv
|
||||
glEnable
|
||||
glEnableClientState
|
||||
glEnd
|
||||
glEndList
|
||||
glEvalCoord1d
|
||||
glEvalCoord1dv
|
||||
glEvalCoord1f
|
||||
glEvalCoord1fv
|
||||
glEvalCoord2d
|
||||
glEvalCoord2dv
|
||||
glEvalCoord2f
|
||||
glEvalCoord2fv
|
||||
glEvalMesh1
|
||||
glEvalMesh2
|
||||
glEvalPoint1
|
||||
glEvalPoint2
|
||||
glFeedbackBuffer
|
||||
glFinish
|
||||
glFlush
|
||||
glFogf
|
||||
glFogfv
|
||||
glFogi
|
||||
glFogiv
|
||||
glFrontFace
|
||||
glFrustum
|
||||
glGenLists
|
||||
glGenTextures
|
||||
glGenTexturesEXT
|
||||
glGetBooleanv
|
||||
glGetClipPlane
|
||||
glGetColorTableEXT
|
||||
glGetColorTableParameterfvEXT
|
||||
glGetColorTableParameterivEXT
|
||||
glGetDoublev
|
||||
glGetError
|
||||
glGetFloatv
|
||||
glGetIntegerv
|
||||
glGetLightfv
|
||||
glGetLightiv
|
||||
glGetMapdv
|
||||
glGetMapfv
|
||||
glGetMapiv
|
||||
glGetMaterialfv
|
||||
glGetMaterialiv
|
||||
glGetPixelMapfv
|
||||
glGetPixelMapuiv
|
||||
glGetPixelMapusv
|
||||
glGetPointerv
|
||||
glGetPointervEXT
|
||||
glGetPolygonStipple
|
||||
glGetString
|
||||
glGetTexEnvfv
|
||||
glGetTexEnviv
|
||||
glGetTexGendv
|
||||
glGetTexGenfv
|
||||
glGetTexGeniv
|
||||
glGetTexImage
|
||||
glGetTexLevelParameterfv
|
||||
glGetTexLevelParameteriv
|
||||
glGetTexParameterfv
|
||||
glGetTexParameteriv
|
||||
glHint
|
||||
glIndexd
|
||||
glIndexdv
|
||||
glIndexf
|
||||
glIndexfv
|
||||
glIndexi
|
||||
glIndexiv
|
||||
glIndexMask
|
||||
glIndexPointer
|
||||
glIndexPointerEXT
|
||||
glIndexs
|
||||
glIndexsv
|
||||
glIndexub
|
||||
glIndexubv
|
||||
glInitNames
|
||||
glInterleavedArrays
|
||||
glIsEnabled
|
||||
glIsList
|
||||
glIsTexture
|
||||
glIsTextureEXT
|
||||
glLightf
|
||||
glLightfv
|
||||
glLighti
|
||||
glLightiv
|
||||
glLightModelf
|
||||
glLightModelfv
|
||||
glLightModeli
|
||||
glLightModeliv
|
||||
glLineStipple
|
||||
glLineWidth
|
||||
glListBase
|
||||
glLoadIdentity
|
||||
glLoadMatrixd
|
||||
glLoadMatrixf
|
||||
glLoadName
|
||||
glLogicOp
|
||||
glMap1d
|
||||
glMap1f
|
||||
glMap2d
|
||||
glMap2f
|
||||
glMapGrid1d
|
||||
glMapGrid1f
|
||||
glMapGrid2d
|
||||
glMapGrid2f
|
||||
glMaterialf
|
||||
glMaterialfv
|
||||
glMateriali
|
||||
glMaterialiv
|
||||
glMatrixMode
|
||||
glMultMatrixd
|
||||
glMultMatrixf
|
||||
glNewList
|
||||
glNormal3b
|
||||
glNormal3bv
|
||||
glNormal3d
|
||||
glNormal3dv
|
||||
glNormal3f
|
||||
glNormal3fv
|
||||
glNormal3i
|
||||
glNormal3iv
|
||||
glNormal3s
|
||||
glNormal3sv
|
||||
glNormalPointer
|
||||
glNormalPointerEXT
|
||||
glOrtho
|
||||
glPassThrough
|
||||
glPixelMapfv
|
||||
glPixelMapuiv
|
||||
glPixelMapusv
|
||||
glPixelStoref
|
||||
glPixelStorei
|
||||
glPixelTransferf
|
||||
glPixelTransferi
|
||||
glPixelZoom
|
||||
glPointParameterfEXT
|
||||
glPointParameterfvEXT
|
||||
glPointSize
|
||||
glPolygonMode
|
||||
glPolygonOffset
|
||||
glPolygonOffsetEXT
|
||||
glPolygonStipple
|
||||
glPopAttrib
|
||||
glPopClientAttrib
|
||||
glPopMatrix
|
||||
glPopName
|
||||
glPrioritizeTextures
|
||||
glPrioritizeTexturesEXT
|
||||
glPushAttrib
|
||||
glPushClientAttrib
|
||||
glPushMatrix
|
||||
glPushName
|
||||
glRasterPos2d
|
||||
glRasterPos2dv
|
||||
glRasterPos2f
|
||||
glRasterPos2fv
|
||||
glRasterPos2i
|
||||
glRasterPos2iv
|
||||
glRasterPos2s
|
||||
glRasterPos2sv
|
||||
glRasterPos3d
|
||||
glRasterPos3dv
|
||||
glRasterPos3f
|
||||
glRasterPos3fv
|
||||
glRasterPos3i
|
||||
glRasterPos3iv
|
||||
glRasterPos3s
|
||||
glRasterPos3sv
|
||||
glRasterPos4d
|
||||
glRasterPos4dv
|
||||
glRasterPos4f
|
||||
glRasterPos4fv
|
||||
glRasterPos4i
|
||||
glRasterPos4iv
|
||||
glRasterPos4s
|
||||
glRasterPos4sv
|
||||
glReadBuffer
|
||||
glReadPixels
|
||||
glRectd
|
||||
glRectdv
|
||||
glRectf
|
||||
glRectfv
|
||||
glRecti
|
||||
glRectiv
|
||||
glRects
|
||||
glRectsv
|
||||
glRenderMode
|
||||
glResizeBuffersMESA
|
||||
glRotated
|
||||
glRotatef
|
||||
glScaled
|
||||
glScalef
|
||||
glScissor
|
||||
glSelectBuffer
|
||||
glShadeModel
|
||||
glStencilFunc
|
||||
glStencilMask
|
||||
glStencilOp
|
||||
glTexCoord1d
|
||||
glTexCoord1dv
|
||||
glTexCoord1f
|
||||
glTexCoord1fv
|
||||
glTexCoord1i
|
||||
glTexCoord1iv
|
||||
glTexCoord1s
|
||||
glTexCoord1sv
|
||||
glTexCoord2d
|
||||
glTexCoord2dv
|
||||
glTexCoord2f
|
||||
glTexCoord2fv
|
||||
glTexCoord2i
|
||||
glTexCoord2iv
|
||||
glTexCoord2s
|
||||
glTexCoord2sv
|
||||
glTexCoord3d
|
||||
glTexCoord3dv
|
||||
glTexCoord3f
|
||||
glTexCoord3fv
|
||||
glTexCoord3i
|
||||
glTexCoord3iv
|
||||
glTexCoord3s
|
||||
glTexCoord3sv
|
||||
glTexCoord4d
|
||||
glTexCoord4dv
|
||||
glTexCoord4f
|
||||
glTexCoord4fv
|
||||
glTexCoord4i
|
||||
glTexCoord4iv
|
||||
glTexCoord4s
|
||||
glTexCoord4sv
|
||||
glTexCoordPointer
|
||||
glTexCoordPointerEXT
|
||||
glTexEnvf
|
||||
glTexEnvfv
|
||||
glTexEnvi
|
||||
glTexEnviv
|
||||
glTexGend
|
||||
glTexGendv
|
||||
glTexGenf
|
||||
glTexGenfv
|
||||
glTexGeni
|
||||
glTexGeniv
|
||||
glTexImage1D
|
||||
glTexImage2D
|
||||
glTexImage3DEXT
|
||||
glTexParameterf
|
||||
glTexParameterfv
|
||||
glTexParameteri
|
||||
glTexParameteriv
|
||||
glTexSubImage1D
|
||||
glTexSubImage2D
|
||||
glTexSubImage3DEXT
|
||||
glTranslated
|
||||
glTranslatef
|
||||
glVertex2d
|
||||
glVertex2dv
|
||||
glVertex2f
|
||||
glVertex2fv
|
||||
glVertex2i
|
||||
glVertex2iv
|
||||
glVertex2s
|
||||
glVertex2sv
|
||||
glVertex3d
|
||||
glVertex3dv
|
||||
glVertex3f
|
||||
glVertex3fv
|
||||
glVertex3i
|
||||
glVertex3iv
|
||||
glVertex3s
|
||||
glVertex3sv
|
||||
glVertex4d
|
||||
glVertex4dv
|
||||
glVertex4f
|
||||
glVertex4fv
|
||||
glVertex4i
|
||||
glVertex4iv
|
||||
glVertex4s
|
||||
glVertex4sv
|
||||
glVertexPointer
|
||||
glVertexPointerEXT
|
||||
glViewport
|
||||
glWindowPos2dMESA
|
||||
glWindowPos2dvMESA
|
||||
glWindowPos2fMESA
|
||||
glWindowPos2fvMESA
|
||||
glWindowPos2iMESA
|
||||
glWindowPos2ivMESA
|
||||
glWindowPos2sMESA
|
||||
glWindowPos2svMESA
|
||||
glWindowPos3dMESA
|
||||
glWindowPos3dvMESA
|
||||
glWindowPos3fMESA
|
||||
glWindowPos3fvMESA
|
||||
glWindowPos3iMESA
|
||||
glWindowPos3ivMESA
|
||||
glWindowPos3sMESA
|
||||
glWindowPos3svMESA
|
||||
glWindowPos4dMESA
|
||||
glWindowPos4dvMESA
|
||||
glWindowPos4fMESA
|
||||
glWindowPos4fvMESA
|
||||
glWindowPos4iMESA
|
||||
glWindowPos4ivMESA
|
||||
glWindowPos4sMESA
|
||||
glWindowPos4svMESA
|
||||
_swsetup_Wakeup
|
||||
_swsetup_CreateContext
|
||||
_tnl_CreateContext
|
||||
_ac_CreateContext
|
||||
_swrast_CreateContext
|
||||
_mesa_free_context_data
|
||||
_mesa_create_framebuffer
|
||||
_mesa_enable_1_3_extensions
|
||||
_mesa_enable_sw_extensions
|
||||
_mesa_destroy_visual
|
||||
_mesa_initialize_context
|
||||
_mesa_create_visual
|
||||
_mesa_destroy_framebuffer
|
||||
_swrast_DestroyContext
|
||||
_ac_DestroyContext
|
||||
_tnl_DestroyContext
|
||||
_swsetup_DestroyContext
|
||||
_mesa_Viewport
|
||||
_mesa_make_current
|
||||
_mesa_get_current_context
|
||||
_mesa_error
|
||||
_swrast_choose_triangle
|
||||
_mesa_zbuffer_address
|
||||
_swrast_choose_line
|
||||
_tnl_InvalidateState
|
||||
_ac_InvalidateState
|
||||
_swsetup_InvalidateState
|
||||
_swrast_InvalidateState
|
||||
_tnl_run_pipeline
|
||||
_swrast_CopyConvolutionFilter2D
|
||||
_swrast_CopyConvolutionFilter1D
|
||||
_swrast_CopyColorSubTable
|
||||
_swrast_CopyColorTable
|
||||
_swrast_copy_texsubimage3d
|
||||
_swrast_copy_texsubimage2d
|
||||
_swrast_copy_texsubimage1d
|
||||
_swrast_copy_teximage2d
|
||||
_swrast_copy_teximage1d
|
||||
_mesa_test_proxy_teximage
|
||||
_mesa_store_texsubimage3d
|
||||
_mesa_store_texsubimage2d
|
||||
_mesa_store_texsubimage1d
|
||||
_mesa_store_teximage3d
|
||||
_mesa_store_teximage2d
|
||||
_mesa_store_teximage1d
|
||||
_mesa_choose_tex_format
|
||||
_mesa_base_compressed_texformat
|
||||
_mesa_compressed_texture_size
|
||||
_mesa_get_compressed_teximage
|
||||
_swrast_ReadPixels
|
||||
_swrast_DrawPixels
|
||||
_swrast_CopyPixels
|
||||
_swrast_Bitmap
|
||||
_swrast_Accum
|
||||
_swrast_alloc_buffers
|
||||
_swrast_GetDeviceDriverReference
|
||||
_swrast_Clear
|
||||
wglCopyContext
|
||||
wglCreateContext
|
||||
wglDeleteContext
|
||||
wglCreateLayerContext
|
||||
wglGetCurrentContext
|
||||
wglGetCurrentDC
|
||||
wglMakeCurrent
|
||||
wglShareLists
|
||||
wglUseFontBitmapsA
|
||||
wglUseFontBitmapsW
|
||||
wglUseFontOutlinesA
|
||||
wglUseFontOutlinesW
|
||||
wglDescribeLayerPlane
|
||||
wglSetLayerPaletteEntries
|
||||
wglGetLayerPaletteEntries
|
||||
wglRealizeLayerPalette
|
||||
wglSwapLayerBuffers
|
||||
wglChoosePixelFormat
|
||||
wglDescribePixelFormat
|
||||
wglGetProcAddress
|
||||
wglGetPixelFormat
|
||||
wglSetPixelFormat
|
||||
wglSwapBuffers
|
||||
DESCRIPTION 'Mesa (OpenGL work-alike) for Win32'
|
||||
VERSION 3.5
|
||||
|
||||
EXPORTS
|
||||
glAccum
|
||||
glAlphaFunc
|
||||
glAreTexturesResident
|
||||
glAreTexturesResidentEXT
|
||||
glArrayElement
|
||||
glArrayElementEXT
|
||||
glBegin
|
||||
glBindTexture
|
||||
glBindTextureEXT
|
||||
glBitmap
|
||||
glBlendColorEXT
|
||||
glBlendEquationEXT
|
||||
glBlendFunc
|
||||
glCallList
|
||||
glCallLists
|
||||
glClear
|
||||
glClearAccum
|
||||
glClearColor
|
||||
glClearDepth
|
||||
glClearIndex
|
||||
glClearStencil
|
||||
glClipPlane
|
||||
glColor3b
|
||||
glColor3bv
|
||||
glColor3d
|
||||
glColor3dv
|
||||
glColor3f
|
||||
glColor3fv
|
||||
glColor3i
|
||||
glColor3iv
|
||||
glColor3s
|
||||
glColor3sv
|
||||
glColor3ub
|
||||
glColor3ubv
|
||||
glColor3ui
|
||||
glColor3uiv
|
||||
glColor3us
|
||||
glColor3usv
|
||||
glColor4b
|
||||
glColor4bv
|
||||
glColor4d
|
||||
glColor4dv
|
||||
glColor4f
|
||||
glColor4fv
|
||||
glColor4i
|
||||
glColor4iv
|
||||
glColor4s
|
||||
glColor4sv
|
||||
glColor4ub
|
||||
glColor4ubv
|
||||
glColor4ui
|
||||
glColor4uiv
|
||||
glColor4us
|
||||
glColor4usv
|
||||
glColorMask
|
||||
glColorMaterial
|
||||
glColorPointer
|
||||
glColorPointerEXT
|
||||
glColorSubTableEXT
|
||||
glColorTableEXT
|
||||
glCopyPixels
|
||||
glCopyTexImage1D
|
||||
glCopyTexImage2D
|
||||
glCopyTexSubImage1D
|
||||
glCopyTexSubImage2D
|
||||
glCopyTexSubImage3DEXT
|
||||
glCullFace
|
||||
glDeleteLists
|
||||
glDeleteTextures
|
||||
glDeleteTexturesEXT
|
||||
glDepthFunc
|
||||
glDepthMask
|
||||
glDepthRange
|
||||
glDisable
|
||||
glDisableClientState
|
||||
glDrawArrays
|
||||
glDrawArraysEXT
|
||||
glDrawBuffer
|
||||
glDrawElements
|
||||
glDrawPixels
|
||||
glEdgeFlag
|
||||
glEdgeFlagPointer
|
||||
glEdgeFlagPointerEXT
|
||||
glEdgeFlagv
|
||||
glEnable
|
||||
glEnableClientState
|
||||
glEnd
|
||||
glEndList
|
||||
glEvalCoord1d
|
||||
glEvalCoord1dv
|
||||
glEvalCoord1f
|
||||
glEvalCoord1fv
|
||||
glEvalCoord2d
|
||||
glEvalCoord2dv
|
||||
glEvalCoord2f
|
||||
glEvalCoord2fv
|
||||
glEvalMesh1
|
||||
glEvalMesh2
|
||||
glEvalPoint1
|
||||
glEvalPoint2
|
||||
glFeedbackBuffer
|
||||
glFinish
|
||||
glFlush
|
||||
glFogf
|
||||
glFogfv
|
||||
glFogi
|
||||
glFogiv
|
||||
glFrontFace
|
||||
glFrustum
|
||||
glGenLists
|
||||
glGenTextures
|
||||
glGenTexturesEXT
|
||||
glGetBooleanv
|
||||
glGetClipPlane
|
||||
glGetColorTableEXT
|
||||
glGetColorTableParameterfvEXT
|
||||
glGetColorTableParameterivEXT
|
||||
glGetDoublev
|
||||
glGetError
|
||||
glGetFloatv
|
||||
glGetIntegerv
|
||||
glGetLightfv
|
||||
glGetLightiv
|
||||
glGetMapdv
|
||||
glGetMapfv
|
||||
glGetMapiv
|
||||
glGetMaterialfv
|
||||
glGetMaterialiv
|
||||
glGetPixelMapfv
|
||||
glGetPixelMapuiv
|
||||
glGetPixelMapusv
|
||||
glGetPointerv
|
||||
glGetPointervEXT
|
||||
glGetPolygonStipple
|
||||
glGetString
|
||||
glGetTexEnvfv
|
||||
glGetTexEnviv
|
||||
glGetTexGendv
|
||||
glGetTexGenfv
|
||||
glGetTexGeniv
|
||||
glGetTexImage
|
||||
glGetTexLevelParameterfv
|
||||
glGetTexLevelParameteriv
|
||||
glGetTexParameterfv
|
||||
glGetTexParameteriv
|
||||
glHint
|
||||
glIndexd
|
||||
glIndexdv
|
||||
glIndexf
|
||||
glIndexfv
|
||||
glIndexi
|
||||
glIndexiv
|
||||
glIndexMask
|
||||
glIndexPointer
|
||||
glIndexPointerEXT
|
||||
glIndexs
|
||||
glIndexsv
|
||||
glIndexub
|
||||
glIndexubv
|
||||
glInitNames
|
||||
glInterleavedArrays
|
||||
glIsEnabled
|
||||
glIsList
|
||||
glIsTexture
|
||||
glIsTextureEXT
|
||||
glLightf
|
||||
glLightfv
|
||||
glLighti
|
||||
glLightiv
|
||||
glLightModelf
|
||||
glLightModelfv
|
||||
glLightModeli
|
||||
glLightModeliv
|
||||
glLineStipple
|
||||
glLineWidth
|
||||
glListBase
|
||||
glLoadIdentity
|
||||
glLoadMatrixd
|
||||
glLoadMatrixf
|
||||
glLoadName
|
||||
glLogicOp
|
||||
glMap1d
|
||||
glMap1f
|
||||
glMap2d
|
||||
glMap2f
|
||||
glMapGrid1d
|
||||
glMapGrid1f
|
||||
glMapGrid2d
|
||||
glMapGrid2f
|
||||
glMaterialf
|
||||
glMaterialfv
|
||||
glMateriali
|
||||
glMaterialiv
|
||||
glMatrixMode
|
||||
glMultMatrixd
|
||||
glMultMatrixf
|
||||
glNewList
|
||||
glNormal3b
|
||||
glNormal3bv
|
||||
glNormal3d
|
||||
glNormal3dv
|
||||
glNormal3f
|
||||
glNormal3fv
|
||||
glNormal3i
|
||||
glNormal3iv
|
||||
glNormal3s
|
||||
glNormal3sv
|
||||
glNormalPointer
|
||||
glNormalPointerEXT
|
||||
glOrtho
|
||||
glPassThrough
|
||||
glPixelMapfv
|
||||
glPixelMapuiv
|
||||
glPixelMapusv
|
||||
glPixelStoref
|
||||
glPixelStorei
|
||||
glPixelTransferf
|
||||
glPixelTransferi
|
||||
glPixelZoom
|
||||
glPointParameterfEXT
|
||||
glPointParameterfvEXT
|
||||
glPointSize
|
||||
glPolygonMode
|
||||
glPolygonOffset
|
||||
glPolygonOffsetEXT
|
||||
glPolygonStipple
|
||||
glPopAttrib
|
||||
glPopClientAttrib
|
||||
glPopMatrix
|
||||
glPopName
|
||||
glPrioritizeTextures
|
||||
glPrioritizeTexturesEXT
|
||||
glPushAttrib
|
||||
glPushClientAttrib
|
||||
glPushMatrix
|
||||
glPushName
|
||||
glRasterPos2d
|
||||
glRasterPos2dv
|
||||
glRasterPos2f
|
||||
glRasterPos2fv
|
||||
glRasterPos2i
|
||||
glRasterPos2iv
|
||||
glRasterPos2s
|
||||
glRasterPos2sv
|
||||
glRasterPos3d
|
||||
glRasterPos3dv
|
||||
glRasterPos3f
|
||||
glRasterPos3fv
|
||||
glRasterPos3i
|
||||
glRasterPos3iv
|
||||
glRasterPos3s
|
||||
glRasterPos3sv
|
||||
glRasterPos4d
|
||||
glRasterPos4dv
|
||||
glRasterPos4f
|
||||
glRasterPos4fv
|
||||
glRasterPos4i
|
||||
glRasterPos4iv
|
||||
glRasterPos4s
|
||||
glRasterPos4sv
|
||||
glReadBuffer
|
||||
glReadPixels
|
||||
glRectd
|
||||
glRectdv
|
||||
glRectf
|
||||
glRectfv
|
||||
glRecti
|
||||
glRectiv
|
||||
glRects
|
||||
glRectsv
|
||||
glRenderMode
|
||||
glResizeBuffersMESA
|
||||
glRotated
|
||||
glRotatef
|
||||
glScaled
|
||||
glScalef
|
||||
glScissor
|
||||
glSelectBuffer
|
||||
glShadeModel
|
||||
glStencilFunc
|
||||
glStencilMask
|
||||
glStencilOp
|
||||
glTexCoord1d
|
||||
glTexCoord1dv
|
||||
glTexCoord1f
|
||||
glTexCoord1fv
|
||||
glTexCoord1i
|
||||
glTexCoord1iv
|
||||
glTexCoord1s
|
||||
glTexCoord1sv
|
||||
glTexCoord2d
|
||||
glTexCoord2dv
|
||||
glTexCoord2f
|
||||
glTexCoord2fv
|
||||
glTexCoord2i
|
||||
glTexCoord2iv
|
||||
glTexCoord2s
|
||||
glTexCoord2sv
|
||||
glTexCoord3d
|
||||
glTexCoord3dv
|
||||
glTexCoord3f
|
||||
glTexCoord3fv
|
||||
glTexCoord3i
|
||||
glTexCoord3iv
|
||||
glTexCoord3s
|
||||
glTexCoord3sv
|
||||
glTexCoord4d
|
||||
glTexCoord4dv
|
||||
glTexCoord4f
|
||||
glTexCoord4fv
|
||||
glTexCoord4i
|
||||
glTexCoord4iv
|
||||
glTexCoord4s
|
||||
glTexCoord4sv
|
||||
glTexCoordPointer
|
||||
glTexCoordPointerEXT
|
||||
glTexEnvf
|
||||
glTexEnvfv
|
||||
glTexEnvi
|
||||
glTexEnviv
|
||||
glTexGend
|
||||
glTexGendv
|
||||
glTexGenf
|
||||
glTexGenfv
|
||||
glTexGeni
|
||||
glTexGeniv
|
||||
glTexImage1D
|
||||
glTexImage2D
|
||||
glTexImage3DEXT
|
||||
glTexParameterf
|
||||
glTexParameterfv
|
||||
glTexParameteri
|
||||
glTexParameteriv
|
||||
glTexSubImage1D
|
||||
glTexSubImage2D
|
||||
glTexSubImage3DEXT
|
||||
glTranslated
|
||||
glTranslatef
|
||||
glVertex2d
|
||||
glVertex2dv
|
||||
glVertex2f
|
||||
glVertex2fv
|
||||
glVertex2i
|
||||
glVertex2iv
|
||||
glVertex2s
|
||||
glVertex2sv
|
||||
glVertex3d
|
||||
glVertex3dv
|
||||
glVertex3f
|
||||
glVertex3fv
|
||||
glVertex3i
|
||||
glVertex3iv
|
||||
glVertex3s
|
||||
glVertex3sv
|
||||
glVertex4d
|
||||
glVertex4dv
|
||||
glVertex4f
|
||||
glVertex4fv
|
||||
glVertex4i
|
||||
glVertex4iv
|
||||
glVertex4s
|
||||
glVertex4sv
|
||||
glVertexPointer
|
||||
glVertexPointerEXT
|
||||
glViewport
|
||||
glWindowPos2dMESA
|
||||
glWindowPos2dvMESA
|
||||
glWindowPos2fMESA
|
||||
glWindowPos2fvMESA
|
||||
glWindowPos2iMESA
|
||||
glWindowPos2ivMESA
|
||||
glWindowPos2sMESA
|
||||
glWindowPos2svMESA
|
||||
glWindowPos3dMESA
|
||||
glWindowPos3dvMESA
|
||||
glWindowPos3fMESA
|
||||
glWindowPos3fvMESA
|
||||
glWindowPos3iMESA
|
||||
glWindowPos3ivMESA
|
||||
glWindowPos3sMESA
|
||||
glWindowPos3svMESA
|
||||
glWindowPos4dMESA
|
||||
glWindowPos4dvMESA
|
||||
glWindowPos4fMESA
|
||||
glWindowPos4fvMESA
|
||||
glWindowPos4iMESA
|
||||
glWindowPos4ivMESA
|
||||
glWindowPos4sMESA
|
||||
glWindowPos4svMESA
|
||||
_swsetup_Wakeup
|
||||
_swsetup_CreateContext
|
||||
_tnl_CreateContext
|
||||
_ac_CreateContext
|
||||
_swrast_CreateContext
|
||||
_mesa_free_context_data
|
||||
_mesa_create_framebuffer
|
||||
_mesa_enable_1_3_extensions
|
||||
_mesa_enable_sw_extensions
|
||||
_mesa_destroy_visual
|
||||
_mesa_initialize_context
|
||||
_mesa_create_visual
|
||||
_mesa_destroy_framebuffer
|
||||
_swrast_DestroyContext
|
||||
_ac_DestroyContext
|
||||
_tnl_DestroyContext
|
||||
_swsetup_DestroyContext
|
||||
_mesa_Viewport
|
||||
_mesa_make_current
|
||||
_mesa_get_current_context
|
||||
_mesa_error
|
||||
_swrast_choose_triangle
|
||||
_mesa_zbuffer_address
|
||||
_swrast_choose_line
|
||||
_tnl_InvalidateState
|
||||
_ac_InvalidateState
|
||||
_swsetup_InvalidateState
|
||||
_swrast_InvalidateState
|
||||
_tnl_run_pipeline
|
||||
_swrast_CopyConvolutionFilter2D
|
||||
_swrast_CopyConvolutionFilter1D
|
||||
_swrast_CopyColorSubTable
|
||||
_swrast_CopyColorTable
|
||||
_swrast_copy_texsubimage3d
|
||||
_swrast_copy_texsubimage2d
|
||||
_swrast_copy_texsubimage1d
|
||||
_swrast_copy_teximage2d
|
||||
_swrast_copy_teximage1d
|
||||
_mesa_test_proxy_teximage
|
||||
_mesa_store_texsubimage3d
|
||||
_mesa_store_texsubimage2d
|
||||
_mesa_store_texsubimage1d
|
||||
_mesa_store_teximage3d
|
||||
_mesa_store_teximage2d
|
||||
_mesa_store_teximage1d
|
||||
_mesa_choose_tex_format
|
||||
_mesa_base_compressed_texformat
|
||||
_mesa_compressed_texture_size
|
||||
_mesa_get_compressed_teximage
|
||||
_swrast_ReadPixels
|
||||
_swrast_DrawPixels
|
||||
_swrast_CopyPixels
|
||||
_swrast_Bitmap
|
||||
_swrast_Accum
|
||||
_swrast_alloc_buffers
|
||||
_swrast_GetDeviceDriverReference
|
||||
_swrast_Clear
|
||||
wglCopyContext
|
||||
wglCreateContext
|
||||
wglDeleteContext
|
||||
wglCreateLayerContext
|
||||
wglGetCurrentContext
|
||||
wglGetCurrentDC
|
||||
wglMakeCurrent
|
||||
wglShareLists
|
||||
wglUseFontBitmapsA
|
||||
wglUseFontBitmapsW
|
||||
wglUseFontOutlinesA
|
||||
wglUseFontOutlinesW
|
||||
wglDescribeLayerPlane
|
||||
wglSetLayerPaletteEntries
|
||||
wglGetLayerPaletteEntries
|
||||
wglRealizeLayerPalette
|
||||
wglSwapLayerBuffers
|
||||
wglChoosePixelFormat
|
||||
wglDescribePixelFormat
|
||||
wglGetProcAddress
|
||||
wglGetPixelFormat
|
||||
wglSetPixelFormat
|
||||
wglSwapBuffers
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue