| 1 |
– |
/* Copyright (c) 1999 Silicon Graphics, Inc. */ |
| 2 |
– |
|
| 1 |
|
#ifndef lint |
| 2 |
< |
static char SCCSid[] = "$SunId$ SGI"; |
| 2 |
> |
static const char RCSid[] = "$Id$"; |
| 3 |
|
#endif |
| 6 |
– |
|
| 4 |
|
/* |
| 5 |
|
* Executive program for oconv, rpict and pfilt |
| 6 |
|
*/ |
| 7 |
|
|
| 8 |
|
#include "standard.h" |
| 9 |
+ |
|
| 10 |
+ |
#include <ctype.h> |
| 11 |
+ |
|
| 12 |
+ |
#include "platform.h" |
| 13 |
|
#include "view.h" |
| 14 |
|
#include "paths.h" |
| 15 |
|
#include "vars.h" |
| 15 |
– |
#include <ctype.h> |
| 16 |
– |
#include <sys/types.h> |
| 16 |
|
|
| 17 |
|
/* variables (alphabetical by name) */ |
| 18 |
|
#define AMBFILE 0 /* ambient file name */ |
| 80 |
|
char overfile[] = "/dev/null"; |
| 81 |
|
#endif |
| 82 |
|
|
| 83 |
< |
extern time_t fdate(), time(); |
| 83 |
> |
extern time_t time(); |
| 84 |
|
|
| 85 |
|
time_t scenedate; /* date of latest scene or object file */ |
| 86 |
|
time_t octreedate; /* date of octree */ |
| 212 |
|
{ |
| 213 |
|
char thisfile[MAXPATH]; |
| 214 |
|
time_t thisdate, lastdate = 0; |
| 216 |
– |
register char *cp; |
| 215 |
|
|
| 216 |
|
if (fnames == NULL) |
| 217 |
|
return(0); |
| 218 |
< |
while (*fnames) { |
| 219 |
< |
while (isspace(*fnames)) fnames++; |
| 220 |
< |
cp = thisfile; |
| 221 |
< |
while (*fnames && !isspace(*fnames)) |
| 224 |
< |
*cp++ = *fnames++; |
| 225 |
< |
*cp = '\0'; |
| 218 |
> |
while ((fnames = nextword(thisfile, MAXPATH, fnames)) != NULL) { |
| 219 |
> |
if (thisfile[0] == '!' || |
| 220 |
> |
(thisfile[0] == '\\' && thisfile[1] == '!')) |
| 221 |
> |
continue; |
| 222 |
|
if (!(thisdate = fdate(thisfile))) |
| 223 |
|
syserr(thisfile); |
| 224 |
|
if (thisdate > lastdate) |
| 263 |
|
syserr(progname); |
| 264 |
|
sprintf(vval(OCTREE), "%s.oct", radname); |
| 265 |
|
vdef(OCTREE)++; |
| 266 |
+ |
} else if (vval(OCTREE)[0] == '!') { |
| 267 |
+ |
fprintf(stderr, "%s: illegal '%s' specification\n", |
| 268 |
+ |
progname, vnam(OCTREE)); |
| 269 |
+ |
quit(1); |
| 270 |
|
} |
| 271 |
|
octreedate = fdate(vval(OCTREE)); |
| 272 |
|
if (vdef(ILLUM)) { /* illum requires secondary octrees */ |
| 824 |
|
syserr(vval(OPTFILE)); |
| 825 |
|
sprintf(ro, " @%s", vval(OPTFILE)); |
| 826 |
|
} |
| 827 |
< |
#ifdef MSDOS |
| 827 |
> |
#ifdef _WIN32 |
| 828 |
|
else if (n > 50) { |
| 829 |
|
setenv("ROPT", ro+1); |
| 830 |
|
strcpy(ro, " $ROPT"); |
| 843 |
|
} |
| 844 |
|
switch (vscale(QUALITY)) { |
| 845 |
|
case MEDIUM: |
| 846 |
< |
po = addarg(po, "-r 1"); |
| 846 |
> |
po = addarg(po, "-r .6"); |
| 847 |
|
break; |
| 848 |
|
case HIGH: |
| 849 |
|
po = addarg(po, "-m .25"); |
| 980 |
|
if (cp == viewopts) /* append any additional options */ |
| 981 |
|
vs++; /* skip prefixed space if unneeded */ |
| 982 |
|
strcpy(cp, vs); |
| 983 |
< |
#ifdef MSDOS |
| 983 |
> |
#ifdef _WIN32 |
| 984 |
|
if (strlen(viewopts) > 40) { |
| 985 |
|
setenv("VIEW", viewopts); |
| 986 |
|
return("$VIEW"); |
| 1034 |
|
printview(vopts) /* print out selected view */ |
| 1035 |
|
register char *vopts; |
| 1036 |
|
{ |
| 1037 |
– |
extern char *strstr(), *atos(), *getenv(); |
| 1037 |
|
VIEW vwr; |
| 1038 |
|
char buf[128]; |
| 1039 |
|
register char *cp; |
| 1040 |
|
again: |
| 1041 |
|
if (vopts == NULL) |
| 1042 |
|
return(-1); |
| 1043 |
< |
#ifdef MSDOS |
| 1043 |
> |
#ifdef _WIN32 |
| 1044 |
|
if (vopts[0] == '$') { |
| 1045 |
|
vopts = getenv(vopts+1); |
| 1046 |
|
goto again; |
| 1248 |
|
char *fn; |
| 1249 |
|
{ |
| 1250 |
|
if (!silent) |
| 1251 |
< |
#ifdef MSDOS |
| 1251 |
> |
#ifdef _WIN32 |
| 1252 |
|
printf("\tdel %s\n", fn); |
| 1253 |
|
#else |
| 1254 |
|
printf("\trm -f %s\n", fn); |
| 1263 |
|
char *fold, *fnew; |
| 1264 |
|
{ |
| 1265 |
|
if (!silent) |
| 1266 |
< |
#ifdef MSDOS |
| 1266 |
> |
#ifdef _WIN32 |
| 1267 |
|
printf("\trename %s %s\n", fold, fnew); |
| 1268 |
|
#else |
| 1269 |
|
printf("\tmv %s %s\n", fold, fnew); |
| 1274 |
|
} |
| 1275 |
|
|
| 1276 |
|
|
| 1277 |
< |
#ifdef MSDOS |
| 1277 |
> |
#ifdef _WIN32 |
| 1278 |
|
setenv(vname, value) /* set an environment variable */ |
| 1279 |
|
char *vname, *value; |
| 1280 |
|
{ |
| 1311 |
|
} |
| 1312 |
|
|
| 1313 |
|
|
| 1314 |
+ |
void |
| 1315 |
|
quit(ec) /* exit program */ |
| 1316 |
|
int ec; |
| 1317 |
|
{ |