XEmacs 21.2-b1
[chise/xemacs-chise.git.1] / src / broken-sun.h
diff --git a/src/broken-sun.h b/src/broken-sun.h
new file mode 100644 (file)
index 0000000..2bf0429
--- /dev/null
@@ -0,0 +1,167 @@
+/* This file is part of XEmacs.
+
+XEmacs is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 2, or (at your option) any
+later version.
+
+XEmacs is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+for more details.
+
+You should have received a copy of the GNU General Public License
+along with XEmacs; see the file COPYING.  If not, write to
+the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA.  */
+
+/* Synched up with: Not in FSF. */
+
+/* Authorship:
+
+   JWZ: long ago.
+ */
+
+/* Sun's standard and GCC's header files leave out prototypes for
+   all sorts of functions. */
+
+#ifndef _XEMACS_BROKEN_SUN_H_
+#define _XEMACS_BROKEN_SUN_H_
+
+#ifdef __GNUC__
+#include <stdlib.h>
+#include <stddef.h>
+
+/*********************** stdlib functions *********************/
+
+/* void *      memchr (CONST void *, int, size_t); */
+
+/* int memcmp (CONST void *, CONST void *, size_t); */
+/* void *      memcpy (void *, CONST void *, size_t); */
+/* void *      memmove (void *, CONST void *, size_t);*/
+/* void *      memset (void *, int, int); */
+/* char *      strcat (char *, CONST char *); */
+/* char *      strchr (CONST char *, int); */
+/* int strcmp (CONST char *, CONST char *); */
+int    strcasecmp (char *, char *);
+
+/* Yes, they even left these functions out! */
+int      tolower (int);
+int      toupper (int);
+
+/*********************** stdio functions *********************/
+
+#include <stdio.h> /* else can't declare FILE */
+
+/* FILE        *fopen (CONST char *, CONST char *); */
+/* FILE        *freopen (CONST char *, CONST char *, FILE *); */
+FILE   *tmpfile (void);
+int    fclose (FILE *);
+char   *fgets (char *, int, FILE *);
+int      fgetc (FILE *);
+int      fflush (FILE *);
+int      fprintf (FILE *, CONST char *, ...);
+int      fputc (char, FILE *);
+int      fputs (CONST char *, FILE *);
+size_t   fread (void *, size_t, size_t, FILE *);
+int      fscanf (FILE *, CONST char *, ...);
+int    fgetpos (FILE *, long *);
+int      fseek (FILE *, long, int);
+int    fsetpos (FILE *, CONST long *);
+long     ftell (FILE *);
+size_t   fwrite (CONST void *, size_t, size_t, FILE *);
+char   *gets (char *);
+int    pclose (FILE *);
+void     perror (CONST char *);
+int      printf (CONST char *, ...);
+int      puts (CONST char *);
+int      remove (CONST char *);
+int      rename (CONST char *, CONST char *);
+int      rewind (FILE *);
+int    scanf (CONST char *, ...);
+int    sscanf (CONST char *, CONST char *, ...);
+void   setbuf (FILE *, char *);
+int    setvbuf (FILE *, char *, int, size_t);
+int    ungetc (int, FILE *);
+int    vprintf (CONST char *, void *);
+int    vfprintf (FILE *, CONST char *, void *);
+char   *vsprintf (char *, CONST char *, void *);
+
+/*********************** signal functions *********************/
+
+int    sigblock (int);
+#ifndef sigmask
+int    sigmask (int);
+#endif
+int    sigsetmask (int);
+int    sigpause (int);
+
+/*********************** time functions ***********************/
+
+struct timeval;
+struct timezone;
+
+int    utimes (CONST char *, struct timeval *);
+void   tzset (void);
+time_t time (time_t *);
+int    gettimeofday (struct timeval *, struct timezone *);
+
+/*********************** file-system functions *********************/
+
+struct stat;
+#include </usr/include/sys/types.h>
+
+int    fsync (int);
+int    lstat (CONST char *, struct stat *);
+int    fchmod (int, mode_t);
+char   *mktemp (char *);
+/* int creat (CONST char *, mode_t); better no decl than a conflicting one... */
+int    symlink (CONST char *, CONST char *);
+int    readlink (CONST char *, char *, int);
+void   sync (void);
+int    select (int, fd_set *, fd_set *, fd_set *, struct timeval *);
+char * getwd (char *);
+/* int lseek (int, long, int); better no decl than a conflicting one... */
+int    _filbuf ();
+int    _flsbuf ();
+
+/**************** interprocess communication functions ******************/
+
+int    recv (int, char *, int, int);
+int    socket (int, int, int);
+struct sockaddr;
+int    connect (int, struct sockaddr *, int);
+int    bind (int, struct sockaddr *, int);
+int    listen (int, int);
+int    accept (int, struct sockaddr *, int *);
+int    gethostname (char *, int);
+struct rusage;
+int    wait3 (void *, int, struct rusage *);
+int    nice (int);
+int    killpg (int, int);
+int    system (char *);
+
+
+/*********************** low-level OS functions *********************/
+
+int    ioctl (int, int, ...);
+struct nlist;
+int    nlist (CONST char *, struct nlist *);
+int    munmap (void *, int);
+int    brk (void *);
+void * sbrk (int);
+struct rlimit;
+int    getrlimit (int, struct rlimit *);
+int    getpagesize (void);
+int    shutdown (int, int);
+int    mprotect (void *, int, int);
+
+/*********************** miscellaneous functions *********************/
+
+void   tputs (CONST char *cp, int affcnt, void (*)(int));
+long   random (void);
+int    srandom (int seed);
+
+#endif /* __GNUC__ */
+
+#endif /* _XEMACS_BROKEN_SUN_H_ */