jpayne@69: /* jpayne@69: * tclPort.h -- jpayne@69: * jpayne@69: * This header file handles porting issues that occur because jpayne@69: * of differences between systems. It reads in platform specific jpayne@69: * portability files. jpayne@69: * jpayne@69: * Copyright (c) 1994-1995 Sun Microsystems, Inc. jpayne@69: * jpayne@69: * See the file "license.terms" for information on usage and redistribution jpayne@69: * of this file, and for a DISCLAIMER OF ALL WARRANTIES. jpayne@69: */ jpayne@69: jpayne@69: #ifndef _TCLPORT jpayne@69: #define _TCLPORT jpayne@69: jpayne@69: #ifdef HAVE_TCL_CONFIG_H jpayne@69: #include "tclConfig.h" jpayne@69: #endif jpayne@69: #if defined(_WIN32) jpayne@69: # include "tclWinPort.h" jpayne@69: #else jpayne@69: # include "tclUnixPort.h" jpayne@69: #endif jpayne@69: #include "tcl.h" jpayne@69: jpayne@69: #if !defined(LLONG_MIN) jpayne@69: # ifdef TCL_WIDE_INT_IS_LONG jpayne@69: # define LLONG_MIN LONG_MIN jpayne@69: # else jpayne@69: # ifdef LLONG_BIT jpayne@69: # define LLONG_MIN ((Tcl_WideInt)(Tcl_LongAsWide(1)<<(LLONG_BIT-1))) jpayne@69: # else jpayne@69: /* Assume we're on a system with a 64-bit 'long long' type */ jpayne@69: # define LLONG_MIN ((Tcl_WideInt)(Tcl_LongAsWide(1)<<63)) jpayne@69: # endif jpayne@69: # endif jpayne@69: /* Assume that if LLONG_MIN is undefined, then so is LLONG_MAX */ jpayne@69: # define LLONG_MAX (~LLONG_MIN) jpayne@69: #endif jpayne@69: jpayne@69: #define UWIDE_MAX ((Tcl_WideUInt)-1) jpayne@69: #define WIDE_MAX ((Tcl_WideInt)(UWIDE_MAX >> 1)) jpayne@69: #define WIDE_MIN ((Tcl_WideInt)((Tcl_WideUInt)WIDE_MAX+1)) jpayne@69: jpayne@69: #endif /* _TCLPORT */