Added config file for Tk-python
Removed mwerksglue.c (which was useless anyway)
This commit is contained in:
parent
eb263680bb
commit
5bfdc9281a
|
@ -1,166 +0,0 @@
|
|||
/*
|
||||
** Glue code for MetroWerks CodeWarrior, which misses
|
||||
** unix-like routines for file-access.
|
||||
*/
|
||||
|
||||
#ifdef __MWERKS__
|
||||
#include <Types.h>
|
||||
#include <Files.h>
|
||||
#include <Strings.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <errno.h>
|
||||
|
||||
/* #define DBGMALLOC /**/
|
||||
|
||||
#ifdef DBGMALLOC
|
||||
#define NMALLOC 50000
|
||||
static long m_index;
|
||||
static long m_addrs[NMALLOC];
|
||||
static long m_sizes[NMALLOC];
|
||||
static long m_lastaddr;
|
||||
|
||||
#define SSLOP 2
|
||||
#define SLOP (SSLOP+0)
|
||||
|
||||
void
|
||||
m_abort() {
|
||||
printf("ABORT\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
void *
|
||||
checkrv(ptr, size)
|
||||
void *ptr;
|
||||
int size;
|
||||
{
|
||||
long b = (long)ptr, e = (long)ptr + size+SSLOP;
|
||||
int i;
|
||||
|
||||
if ( m_index >= NMALLOC ) {
|
||||
printf("too many mallocs\n");
|
||||
m_abort();
|
||||
}
|
||||
m_lastaddr = (long)ptr;
|
||||
for(i=0; i<m_index; i++) {
|
||||
if ( m_addrs[i] > 0 && b < m_addrs[i]+m_sizes[i] && e > m_addrs[i] ) {
|
||||
printf("overlapping block with %d\n", i);
|
||||
m_abort();
|
||||
}
|
||||
}
|
||||
m_sizes[m_index] = size;
|
||||
m_addrs[m_index++] = (long)ptr;
|
||||
*(short *)ptr = m_index-1;
|
||||
return (void *)((char *)ptr+SSLOP);
|
||||
|
||||
}
|
||||
|
||||
void *
|
||||
checkfree(ptr)
|
||||
void *ptr;
|
||||
{
|
||||
int i;
|
||||
|
||||
if ( ptr == 0 ) {
|
||||
printf("free null\n");
|
||||
m_abort();
|
||||
}
|
||||
m_lastaddr = (long)ptr;
|
||||
for(i=0; i<m_index; i++) {
|
||||
if ( m_addrs[i] == (long)ptr-SSLOP ) {
|
||||
m_addrs[i] = -m_addrs[i];
|
||||
ptr = (void *)((char *)ptr-SSLOP);
|
||||
if ( *(short *)ptr != i ) {
|
||||
int saved_i = i, saved_ptr = *(short *)ptr;
|
||||
|
||||
printf("Wrong starter value\n");
|
||||
m_abort();
|
||||
}
|
||||
return ptr;
|
||||
}
|
||||
}
|
||||
printf("free unknown\n");
|
||||
m_abort();
|
||||
return 0;
|
||||
}
|
||||
|
||||
void *
|
||||
m_malloc(size)
|
||||
{
|
||||
void *ptr;
|
||||
|
||||
ptr = malloc(size+SLOP);
|
||||
if ( !ptr ) {
|
||||
printf("malloc failure\n");
|
||||
m_abort();
|
||||
}
|
||||
return checkrv(ptr, size);
|
||||
}
|
||||
|
||||
void *
|
||||
m_realloc(optr, size)
|
||||
void *optr;
|
||||
{
|
||||
void *ptr;
|
||||
|
||||
ptr = checkfree(ptr);
|
||||
ptr = realloc(ptr, size+SLOP);
|
||||
if ( !ptr ) {
|
||||
printf("realloc failure\n");
|
||||
m_abort();
|
||||
}
|
||||
return checkrv(ptr, size);
|
||||
}
|
||||
|
||||
void *
|
||||
m_calloc(size, nelem)
|
||||
{
|
||||
void *ptr;
|
||||
|
||||
ptr = calloc(1, nelem*size+SLOP);
|
||||
return checkrv(ptr, nelem*size);
|
||||
}
|
||||
|
||||
void
|
||||
m_free(ptr)
|
||||
void *ptr;
|
||||
{
|
||||
|
||||
ptr = checkfree(ptr);
|
||||
free(ptr);
|
||||
}
|
||||
#endif /* DBGMALLOC */
|
||||
|
||||
#ifdef CW4
|
||||
int
|
||||
fileno(fp)
|
||||
FILE *fp;
|
||||
{
|
||||
if (fp==stdin) return 0;
|
||||
else if (fp==stdout) return 1;
|
||||
else if (fp==stderr) return 2;
|
||||
else return 3;
|
||||
}
|
||||
|
||||
int
|
||||
isatty(fd)
|
||||
int fd;
|
||||
{
|
||||
return (fd >= 0 && fd <= 2);
|
||||
}
|
||||
|
||||
int
|
||||
unlink(old)
|
||||
char *old;
|
||||
{
|
||||
OSErr err;
|
||||
|
||||
if ((err=FSDelete((ConstStr255Param)Pstring(old), 0)) == noErr)
|
||||
return 0;
|
||||
errno= err;
|
||||
return -1;
|
||||
}
|
||||
#endif /* CW4 */
|
||||
|
||||
#endif /* __MWERKS__ */
|
|
@ -0,0 +1,13 @@
|
|||
#define HAVE_CONFIG_H
|
||||
// #define USE_STDWIN
|
||||
// #define USE_MACTCP
|
||||
#define USE_BGEN
|
||||
//#define USE_MACSPEECH
|
||||
// #define USE_IMG
|
||||
//#define USE_MACCTB
|
||||
#define USE_TK
|
||||
#define MAC_TCL
|
||||
#ifdef __powerc
|
||||
#define USE_MAC_DYNAMIC_LOADING
|
||||
#endif
|
||||
#define USE_GUSI
|
Loading…
Reference in New Issue