Annotation of capa/capa51/GUITools/webpage.c, revision 1.2
1.2 ! albertel 1: /* webpage start up program
! 2: Copyright (C) 1992-2000 Michigan State University
! 3:
! 4: The CAPA system is free software; you can redistribute it and/or
! 5: modify it under the terms of the GNU Library General Public License as
! 6: published by the Free Software Foundation; either version 2 of the
! 7: License, or (at your option) any later version.
! 8:
! 9: The CAPA system is distributed in the hope that it will be useful,
! 10: but WITHOUT ANY WARRANTY; without even the implied warranty of
! 11: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
! 12: Library General Public License for more details.
! 13:
! 14: You should have received a copy of the GNU Library General Public
! 15: License along with the CAPA system; see the file COPYING. If not,
! 16: write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
! 17: Boston, MA 02111-1307, USA.
! 18:
! 19: As a special exception, you have permission to link this program
! 20: with the TtH/TtM library and distribute executables, as long as you
! 21: follow the requirements of the GNU GPL in regard to all of the
! 22: software in the executable aside from TtH/TtM.
! 23: */
! 24:
1.1 albertel 25: /*
1.2 ! albertel 26: * webpage.c
! 27: * Guy Albertelli II 1999
1.1 albertel 28: */
29: #include <stdio.h>
30: #include <tcl.h>
31: #include <stdlib.h>
32: #include <Capa/capaCommon.h>
33: #include <unistd.h>
34: #include <webpage.h>
35: #include "common.h"
36:
37: extern Tcl_Interp *gInterp;
38:
39: int Webpage_Init(Tcl_Interp *interp);
40: int main(int argc, char**argv)
41: {
42: char * rDisplay,*q,filename[BUFFER_SIZE],buffer[BUFFER_SIZE];
43: int found=1;
44:
45: if (argc >1) {
46: if (!strcmp(argv[1],"-emailcapaid")) { emailcapaid(argc,argv);return 0;}
47: if (!strcmp(argv[1],"-getid")) { getid(argc,argv);return 0;}
48: }
49:
50: gInterp=Tcl_CreateInterp();
51: if (gInterp ==NULL)
52: {
53: fprintf(stderr,"Couldn't get a new Tcl Interp\n");
54: return -1;
55: }
56:
57: q = Tcl_Merge(argc-1, argv+1);
58: Tcl_SetVar(gInterp, "argv", q, TCL_GLOBAL_ONLY);
59: ckfree(q);
60: sprintf(buffer, "%d", argc-1);
61: Tcl_SetVar(gInterp, "argc", buffer, TCL_GLOBAL_ONLY);
62: Tcl_SetVar(gInterp, "argv0", argv[0],TCL_GLOBAL_ONLY);
63: Tcl_SetVar(gInterp, "tcl_interactive","0", TCL_GLOBAL_ONLY);
64:
65: if (Tcl_Init(gInterp) == TCL_ERROR)
66: {
67: fprintf(stderr,"Tcl_Init error\n");
68: fprintf(stderr,"%d\n",TCL_ERROR);
69: fprintf(stderr,"%s\n",gInterp->result);
70: return -4;
71: }
72:
73: Webpage_Init(gInterp);
74:
75: sprintf(filename,"./webpage.tcl");
76: if( capa_access(filename, F_OK) == -1 ) {
77: found=0;
78: }
79:
80: if( found ) {
81: if (Tcl_EvalFile(gInterp, filename) != TCL_OK)
82: {
83: fprintf(stderr,"%s\n",gInterp->result);
84: return -6;
85: }
86: while(Tcl_DoOneEvent(TCL_ALL_EVENTS));
87: } else {
88: fprintf(stderr,"Unable to find webpage.tcl\n");
89: exit(-7);
90: }
91: return 0;
92: }
93:
94:
95:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>