summaryrefslogtreecommitdiff
path: root/linux-x86/share/swig/tcl/tclsh.i
diff options
context:
space:
mode:
Diffstat (limited to 'linux-x86/share/swig/tcl/tclsh.i')
-rw-r--r--linux-x86/share/swig/tcl/tclsh.i85
1 files changed, 85 insertions, 0 deletions
diff --git a/linux-x86/share/swig/tcl/tclsh.i b/linux-x86/share/swig/tcl/tclsh.i
new file mode 100644
index 0000000..160ba8d
--- /dev/null
+++ b/linux-x86/share/swig/tcl/tclsh.i
@@ -0,0 +1,85 @@
+/* -----------------------------------------------------------------------------
+ * tclsh.i
+ *
+ * SWIG File for building new tclsh program
+ * ----------------------------------------------------------------------------- */
+
+#ifdef AUTODOC
+%subsection "tclsh.i"
+%text %{
+This module provides the Tcl_AppInit() function needed to build a
+new version of the tclsh executable. This file should not be used
+when using dynamic loading. To make an interface file work with
+both static and dynamic loading, put something like this in your
+interface file :
+
+ #ifdef STATIC
+ %include <tclsh.i>
+ #endif
+%}
+#endif
+
+%{
+
+/* A TCL_AppInit() function that lets you build a new copy
+ * of tclsh.
+ *
+ * The macro SWIG_init contains the name of the initialization
+ * function in the wrapper file.
+ */
+
+#ifndef SWIG_RcFileName
+char *SWIG_RcFileName = "~/.myapprc";
+#endif
+
+
+#ifdef MAC_TCL
+extern int MacintoshInit _ANSI_ARGS_((void));
+#endif
+
+int Tcl_AppInit(Tcl_Interp *interp){
+
+ if (Tcl_Init(interp) == TCL_ERROR)
+ return TCL_ERROR;
+
+ /* Now initialize our functions */
+
+ if (SWIG_init(interp) == TCL_ERROR)
+ return TCL_ERROR;
+#if TCL_MAJOR_VERSION > 7 || TCL_MAJOR_VERSION == 7 && TCL_MINOR_VERSION >= 5
+ Tcl_SetVar(interp, (char *) "tcl_rcFileName",SWIG_RcFileName,TCL_GLOBAL_ONLY);
+#else
+ tcl_RcFileName = SWIG_RcFileName;
+#endif
+#ifdef SWIG_RcRsrcName
+ Tcl_SetVar(interp, (char *) "tcl_rcRsrcName",SWIG_RcRsrcName,TCL_GLOBAL);
+#endif
+
+ return TCL_OK;
+}
+
+#if TCL_MAJOR_VERSION > 7 || TCL_MAJOR_VERSION == 7 && TCL_MINOR_VERSION >= 4
+int main(int argc, char **argv) {
+#ifdef MAC_TCL
+ char *newArgv[2];
+
+ if (MacintoshInit() != TCL_OK) {
+ Tcl_Exit(1);
+ }
+
+ argc = 1;
+ newArgv[0] = "tclsh";
+ newArgv[1] = NULL;
+ argv = newArgv;
+#endif
+
+ Tcl_Main(argc, argv, Tcl_AppInit);
+ return(0);
+
+}
+#else
+extern int main();
+#endif
+
+%}
+