diff --git a/Include/pymactoolbox.h b/Include/pymactoolbox.h
index cb65862..a1e2a6f 100644
--- a/Include/pymactoolbox.h
+++ b/Include/pymactoolbox.h
@@ -15,6 +15,8 @@
 */
 char *PyMac_getscript(void);				/* Get the default encoding for our 8bit character set */
 char *PyMac_StrError(int);					/* strerror with mac errors */
+extern PyObject *PyMac_OSErrException;		/* Exception for OSErr */
+PyObject *PyMac_GetOSErrException(void);	/* Initialize & return it */
 PyObject *PyErr_Mac(PyObject *, int);		/* Exception with a mac error */
 PyObject *PyMac_Error(OSErr);				/* Uses PyMac_GetOSErrException */
 extern OSErr PyMac_GetFullPathname(FSSpec *, char *, int); /* convert fsspec->path */
diff --git a/Mac/Include/macglue.h b/Mac/Include/macglue.h
deleted file mode 100644
index 7fd5154..0000000
--- a/Mac/Include/macglue.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/***********************************************************
-Copyright 1991-1997 by Stichting Mathematisch Centrum, Amsterdam,
-The Netherlands.
-
-                        All Rights Reserved
-
-Permission to use, copy, modify, and distribute this software and its 
-documentation for any purpose and without fee is hereby granted, 
-provided that the above copyright notice appear in all copies and that
-both that copyright notice and this permission notice appear in 
-supporting documentation, and that the names of Stichting Mathematisch
-Centrum or CWI not be used in advertising or publicity pertaining to
-distribution of the software without specific, written prior permission.
-
-STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO
-THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
-FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE
-FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
-OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-
-******************************************************************/
-#ifndef Py_MACGLUE_H
-#define Py_MACGLUE_H
-#include <Carbon/Carbon.h>
-
-#include "pymactoolbox.h"
-
-#ifdef __cplusplus
-	extern "C" {
-#endif
-
-extern PyObject *PyMac_OSErrException;		/* Exception for OSErr */
-PyObject *PyMac_GetOSErrException(void);	/* Initialize & return it */
-#ifdef __cplusplus
-	}
-#endif
-#endif
