Committing in .

Modified Files:
 	Mesa/src-glut/glut_event.c Mesa/src-glut/glut_get.c
 	Mesa/src-glut/glut_init.c Mesa/src-glut/glutint.h

 Patch for compilation on very old VMS (version 6.2 and earlier)

----------------------------------------------------------------------
This commit is contained in:
Jouk Jansen 2001-02-09 12:19:17 +00:00
parent 9db3f95ace
commit 18ce0f1254
4 changed files with 57 additions and 20 deletions

View file

@ -64,18 +64,18 @@
# endif
#endif /* !_WIN32 */
#include "glutint.h"
#if defined(__vms) && ( __VMS_VER < 70000000 )
#include <ssdef.h>
#include <psldef.h>
extern int SYS$CLREF(int efn);
extern int SYS$SETIMR(unsigned int efn, struct timeval *timeout, void *ast,
extern int SYS$SETIMR(unsigned int efn, struct timeval6 *timeout, void *ast,
unsigned int request_id, unsigned int flags);
extern int SYS$WFLOR(unsigned int efn, unsigned int mask);
extern int SYS$CANTIM(unsigned int request_id, unsigned int mode);
#endif /* __vms, VMs 6.2 or earlier */
#include "glutint.h"
static GLUTtimer *freeTimerList = NULL;
GLUTidleCB __glutIdleFunc = NULL;
@ -114,8 +114,12 @@ glutTimerFunc(unsigned int interval, GLUTtimerCB timerFunc, int value)
{
GLUTtimer *timer, *other;
GLUTtimer **prevptr;
struct timeval now;
#ifdef OLD_VMS
struct timeval6 now;
#else
struct timeval now;
#endif
if (!timerFunc)
return;
@ -156,8 +160,12 @@ glutTimerFunc(unsigned int interval, GLUTtimerCB timerFunc, int value)
void
handleTimeouts(void)
{
struct timeval now;
GLUTtimer *timer;
#ifdef OLD_VMS
struct timeval6 now;
#else
struct timeval now;
#endif
GLUTtimer *timer;
/* Assumption is that __glutTimerList is already determined
to be non-NULL. */
@ -839,7 +847,7 @@ static void
waitForSomething(void)
{
#if defined(__vms) && ( __VMS_VER < 70000000 )
static struct timeval zerotime =
static struct timeval6 zerotime =
{0};
unsigned int timer_efn;
#define timer_id 'glut' /* random :-) number */
@ -851,7 +859,11 @@ waitForSomething(void)
fd_set fds;
#endif
#endif
struct timeval now, timeout, waittime;
#ifdef OLD_VMS
struct timeval6 now, timeout, waittime;
#else
struct timeval now, timeout, waittime;
#endif
#if !defined(_WIN32)
int rc;
#endif

View file

@ -186,9 +186,13 @@ glutGet(GLenum param)
}
case GLUT_ELAPSED_TIME:
{
struct timeval elapsed, beginning, now;
#ifdef OLD_VMS
struct timeval6 elapsed, beginning, now;
#else
struct timeval elapsed, beginning, now;
#endif
__glutInitTime(&beginning);
__glutInitTime(&beginning);
GETTIMEOFDAY(&now);
TIMEDELTA(elapsed, now, beginning);
/* Return elapsed milliseconds. */

View file

@ -154,11 +154,19 @@ __glutOpenXConnection(char *display)
#endif /* _WIN32 */
void
__glutInitTime(struct timeval *beginning)
#ifdef OLD_VMS
__glutInitTime(struct timeval6 *beginning)
#else
__glutInitTime(struct timeval *beginning)
#endif
{
static int beenhere = 0;
static struct timeval genesis;
#ifdef OLD_VMS
static struct timeval6 genesis;
#else
static struct timeval genesis;
#endif
if (!beenhere) {
GETTIMEOFDAY(&genesis);
beenhere = 1;
@ -183,8 +191,12 @@ glutInit(int *argcp, char **argv)
{
char *display = NULL;
char *str, *geometry = NULL;
struct timeval unused;
int i;
#ifdef OLD_VMS
struct timeval6 unused;
#else
struct timeval unused;
#endif
int i;
if (__glutDisplay) {
__glutWarning("glutInit being called a second time.");

View file

@ -69,10 +69,11 @@
#ifdef __vms
#if ( __VMS_VER < 70000000 )
struct timeval {
#define OLD_VMS
struct timeval6 {
__int64 val;
};
extern int sys$gettim(struct timeval *);
extern int sys$gettim(struct timeval6 *);
#else
#include <time.h>
#endif
@ -530,8 +531,12 @@ struct _GLUTmenuItem {
typedef struct _GLUTtimer GLUTtimer;
struct _GLUTtimer {
GLUTtimer *next; /* list of timers */
struct timeval timeout; /* time to be called */
GLUTtimerCB func; /* timer (value) */
#ifdef OLD_VMS
struct timeval6 timeout; /* time to be called */
#else
struct timeval timeout; /* time to be called */
#endif
GLUTtimerCB func; /* timer (value) */
int value; /* return value */
#ifdef SUPPORT_FORTRAN
GLUTtimerFCB ffunc; /* Fortran timer */
@ -713,7 +718,11 @@ extern void __glutOpenXConnection(char *display);
#else
extern void __glutOpenWin32Connection(char *display);
#endif
#if OLD_VMS
extern void __glutInitTime(struct timeval6 *beginning);
#else
extern void __glutInitTime(struct timeval *beginning);
#endif
/* private routines for glut_menu.c (or win32_menu.c) */
#if defined(_WIN32)