Fixes to syborg-graphicswrapper.vcproj
These changes allow syborg-graphicswrapper to link against the hostthreadadapter and khronosapiwrapper libraries built by the graphics.simulator component.
The .vcproj file uses relative paths, which requires that the following three packages are laid out as follows:
os/
graphics
adapt/
graphics.simulator
qemu
/* SGI module -- random SGI-specific things */
#include "Python.h"
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
static PyObject *
sgi_nap(PyObject *self, PyObject *args)
{
long ticks;
if (!PyArg_ParseTuple(args, "l:nap", &ticks))
return NULL;
Py_BEGIN_ALLOW_THREADS
sginap(ticks);
Py_END_ALLOW_THREADS
Py_INCREF(Py_None);
return Py_None;
}
extern char *_getpty(int *, int, mode_t, int);
static PyObject *
sgi__getpty(PyObject *self, PyObject *args)
{
int oflag;
int mode;
int nofork;
char *name;
int fildes;
if (!PyArg_ParseTuple(args, "iii:_getpty", &oflag, &mode, &nofork))
return NULL;
errno = 0;
name = _getpty(&fildes, oflag, (mode_t)mode, nofork);
if (name == NULL) {
PyErr_SetFromErrno(PyExc_IOError);
return NULL;
}
return Py_BuildValue("(si)", name, fildes);
}
static PyMethodDef sgi_methods[] = {
{"nap", sgi_nap, METH_VARARGS},
{"_getpty", sgi__getpty, METH_VARARGS},
{NULL, NULL} /* sentinel */
};
void
initsgi(void)
{
Py_InitModule("sgi", sgi_methods);
}