Remove more copies of Tcl's SunOS shared library hack.

It's worth pointing out that the Tcl project used to
*recommend* that application writers copy this kludge.
These ports work fine with Tcl 8.3, which provided a fake
matherr() even if the OS didn't, but here's what the
Tcl 8.4 changelog has to say:

  2002-05-31 (dead code)[474335,555635] removed all use of matherr() (english)
          *** POTENTIAL INCOMPATIBILITY ***

The following lines can be safely removed from any application that
has them, unless compatibility with SunOS 4.X is desired.

  extern int matherr();
  int *tclDummyMathPtr = (int *) matherr;

The build problems were pointed out by Kris, as usual.  ;-)
This commit is contained in:
David Schultz 2005-02-20 00:29:40 +00:00
parent a96bd042fe
commit 3e878728b6
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=129328
6 changed files with 103 additions and 0 deletions

View File

@ -0,0 +1,17 @@
--- tcl/uutcl.c.orig Sat Feb 19 18:56:55 2005
+++ tcl/uutcl.c Sat Feb 19 18:57:08 2005
@@ -48,14 +48,6 @@
#include <tcl.h>
#endif
-/*
- * The following variable is a special hack that is needed in order for
- * Sun shared libraries to be used for Tcl.
- */
-
-extern int matherr();
-int *tclDummyMathPtr = (int *) matherr;
-
#include <uudeview.h>
#include <uuint.h>
#include <fptools.h>

18
lang/tclX/files/patch-ag Normal file
View File

@ -0,0 +1,18 @@
--- ../tcl/unix/tclXAppInit.c.orig Sat Feb 19 19:05:30 2005
+++ ../tcl/unix/tclXAppInit.c Sat Feb 19 19:05:42 2005
@@ -19,15 +19,6 @@
#include "tclExtend.h"
-/*
- * The following variable is a special hack that insures the tcl
- * version of matherr() is used when linking against shared libraries.
- * Even if matherr is not used on this system, there is a dummy version
- * in libtcl.
- */
-extern int matherr ();
-int (*tclDummyMathPtr)() = matherr;
-
/*-----------------------------------------------------------------------------
* main --

18
lang/tclX/files/patch-ah Normal file
View File

@ -0,0 +1,18 @@
--- ../tk/unix/tkXAppInit.c.orig Sat Feb 19 19:06:15 2005
+++ ../tk/unix/tkXAppInit.c Sat Feb 19 19:06:22 2005
@@ -21,15 +21,6 @@
#include "tclExtend.h"
#include "tk.h"
-/*
- * The following variable is a special hack that insures the tcl
- * version of matherr() is used when linking against shared libraries
- * Even if matherr is not used on this system, there is a dummy version
- * in libtcl.
- */
-extern int matherr ();
-int (*tclDummyMathPtr)() = matherr;
-
/*-----------------------------------------------------------------------------
* main --

View File

@ -0,0 +1,17 @@
--- bindings/Tcl/tclAppInit.c.orig Sat Feb 19 19:14:05 2005
+++ bindings/Tcl/tclAppInit.c Sat Feb 19 19:14:16 2005
@@ -15,14 +15,6 @@
#include "tcl.h"
-/*
- * The following variable is a special hack that is needed in order for
- * Sun shared libraries to be used for Tcl.
- */
-
-extern int matherr();
-int *tclDummyMathPtr = (int *) matherr;
-
EXTERN int Pitcl_Init _ANSI_ARGS_((Tcl_Interp *interp));
#ifdef TCL_TEST

View File

@ -0,0 +1,17 @@
--- bindings/Tcl/tclAppInit.c.orig Sat Feb 19 19:14:05 2005
+++ bindings/Tcl/tclAppInit.c Sat Feb 19 19:14:16 2005
@@ -15,14 +15,6 @@
#include "tcl.h"
-/*
- * The following variable is a special hack that is needed in order for
- * Sun shared libraries to be used for Tcl.
- */
-
-extern int matherr();
-int *tclDummyMathPtr = (int *) matherr;
-
EXTERN int Pitcl_Init _ANSI_ARGS_((Tcl_Interp *interp));
#ifdef TCL_TEST

View File

@ -0,0 +1,16 @@
--- tixAppInit.c.orig Sat Feb 19 18:28:15 2005
+++ tixAppInit.c Sat Feb 19 18:28:23 2005
@@ -22,13 +22,6 @@
#include "itk.h"
#include <tix.h>
-/*
- * The following variable is a special hack that is needed in order for
- * Sun shared libraries to be used for Tcl.
- */
-
-extern int matherr();
-int *tclDummyMathPtr = (int *) matherr;
/*
*----------------------------------------------------------------------