mirror of https://github.com/python/cpython.git
Got rid of a few more NeXT ifdefs. The last, I think.
This commit is contained in:
parent
e75bfde7e9
commit
4892f2406f
|
@ -453,8 +453,7 @@ typedef struct fd_set {
|
|||
* Hide GCC attributes from compilers that don't support them.
|
||||
*/
|
||||
#if (!defined(__GNUC__) || __GNUC__ < 2 || \
|
||||
(__GNUC__ == 2 && __GNUC_MINOR__ < 7) || \
|
||||
defined(NEXT) ) && \
|
||||
(__GNUC__ == 2 && __GNUC_MINOR__ < 7) ) && \
|
||||
!defined(RISCOS)
|
||||
#define __attribute__(__x)
|
||||
#endif
|
||||
|
|
|
@ -211,12 +211,6 @@ static void fpe_reset(Sigfunc *handler)
|
|||
#endif
|
||||
PyOS_setsig(SIGFPE, handler);
|
||||
|
||||
/*-- NeXT -----------------------------------------------------------------*/
|
||||
#elif defined(NeXT) && defined(m68k) && defined(__GNUC__)
|
||||
/* NeXT needs explicit csr set to generate SIGFPE */
|
||||
asm("fmovel #0x1400,fpcr"); /* set OVFL and ZD bits */
|
||||
PyOS_setsig(SIGFPE, handler);
|
||||
|
||||
/*-- Microsoft Windows, NT ------------------------------------------------*/
|
||||
#elif defined(_MSC_VER)
|
||||
/* Reference: Visual C++ Books Online 4.2,
|
||||
|
|
|
@ -27,13 +27,7 @@ mkgrent(struct group *p)
|
|||
v = Py_BuildValue("(sslO)",
|
||||
p->gr_name,
|
||||
p->gr_passwd,
|
||||
#if defined(NeXT) && defined(_POSIX_SOURCE) && defined(__LITTLE_ENDIAN__)
|
||||
/* Correct a bug present on Intel machines in NextStep 3.2 and 3.3;
|
||||
for later versions you may have to remove this */
|
||||
(long)p->gr_short_pad, /* ugh-NeXT broke the padding */
|
||||
#else
|
||||
(long)p->gr_gid,
|
||||
#endif
|
||||
w);
|
||||
Py_DECREF(w);
|
||||
return v;
|
||||
|
|
|
@ -118,15 +118,6 @@ extern int lstat(const char *, struct stat *);
|
|||
extern int symlink(const char *, const char *);
|
||||
#endif
|
||||
|
||||
#ifdef NeXT
|
||||
/* NeXT's <unistd.h> and <utime.h> aren't worth much */
|
||||
#undef HAVE_UNISTD_H
|
||||
#undef HAVE_UTIME_H
|
||||
#define HAVE_WAITPID
|
||||
/* #undef HAVE_GETCWD */
|
||||
#define UNION_WAIT /* This should really be checked for by autoconf */
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_UNISTD_H
|
||||
#if defined(PYCC_VACPP)
|
||||
extern int mkdir(char *);
|
||||
|
@ -3323,11 +3314,7 @@ posix_waitpid(PyObject *self, PyObject *args)
|
|||
if (!PyArg_ParseTuple(args, "ii:waitpid", &pid, &options))
|
||||
return NULL;
|
||||
Py_BEGIN_ALLOW_THREADS
|
||||
#ifdef NeXT
|
||||
pid = wait4(pid, &status, options, NULL);
|
||||
#else
|
||||
pid = waitpid(pid, &status, options);
|
||||
#endif
|
||||
Py_END_ALLOW_THREADS
|
||||
if (pid == -1)
|
||||
return posix_error();
|
||||
|
@ -3970,85 +3957,6 @@ posix_ftruncate(PyObject *self, PyObject *args)
|
|||
}
|
||||
#endif
|
||||
|
||||
#ifdef NeXT
|
||||
#define HAVE_PUTENV
|
||||
/* Steve Spicklemire got this putenv from NeXTAnswers */
|
||||
static int
|
||||
putenv(char *newval)
|
||||
{
|
||||
extern char **environ;
|
||||
|
||||
static int firstTime = 1;
|
||||
char **ep;
|
||||
char *cp;
|
||||
int esiz;
|
||||
char *np;
|
||||
|
||||
if (!(np = strchr(newval, '=')))
|
||||
return 1;
|
||||
*np = '\0';
|
||||
|
||||
/* look it up */
|
||||
for (ep=environ ; *ep ; ep++)
|
||||
{
|
||||
/* this should always be true... */
|
||||
if (cp = strchr(*ep, '='))
|
||||
{
|
||||
*cp = '\0';
|
||||
if (!strcmp(*ep, newval))
|
||||
{
|
||||
/* got it! */
|
||||
*cp = '=';
|
||||
break;
|
||||
}
|
||||
*cp = '=';
|
||||
}
|
||||
else
|
||||
{
|
||||
*np = '=';
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
*np = '=';
|
||||
if (*ep)
|
||||
{
|
||||
/* the string was already there:
|
||||
just replace it with the new one */
|
||||
*ep = newval;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* expand environ by one */
|
||||
for (esiz=2, ep=environ ; *ep ; ep++)
|
||||
esiz++;
|
||||
if (firstTime)
|
||||
{
|
||||
char **epp;
|
||||
char **newenv;
|
||||
if (!(newenv = malloc(esiz * sizeof(char *))))
|
||||
return 1;
|
||||
|
||||
for (ep=environ, epp=newenv ; *ep ;)
|
||||
*epp++ = *ep++;
|
||||
*epp++ = newval;
|
||||
*epp = (char *) 0;
|
||||
environ = newenv;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!(environ = realloc(environ, esiz * sizeof(char *))))
|
||||
return 1;
|
||||
environ[esiz - 2] = newval;
|
||||
environ[esiz - 1] = (char *) 0;
|
||||
firstTime = 0;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif /* NeXT */
|
||||
|
||||
|
||||
#ifdef HAVE_PUTENV
|
||||
static char posix_putenv__doc__[] =
|
||||
"putenv(key, value) -> None\n\
|
||||
|
|
|
@ -24,15 +24,8 @@ mkpwent(struct passwd *p)
|
|||
"(ssllsss)",
|
||||
p->pw_name,
|
||||
p->pw_passwd,
|
||||
#if defined(NeXT) && defined(_POSIX_SOURCE) && defined(__LITTLE_ENDIAN__)
|
||||
/* Correct a bug present on Intel machines in NextStep 3.2 and 3.3;
|
||||
for later versions you may have to remove this */
|
||||
(long)p->pw_short_pad1, /* ugh-NeXT broke the padding */
|
||||
(long)p->pw_short_pad2,
|
||||
#else
|
||||
(long)p->pw_uid,
|
||||
(long)p->pw_gid,
|
||||
#endif
|
||||
p->pw_gecos,
|
||||
p->pw_dir,
|
||||
p->pw_shell);
|
||||
|
|
Loading…
Reference in New Issue