diff options
author | ghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-02-01 21:30:52 +0000 |
---|---|---|
committer | ghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-02-01 21:30:52 +0000 |
commit | 069631e1799ff25651935125a462edc5d869545a (patch) | |
tree | bd349f655e668c3f79a4ea423341713cac116e61 /gcc/tsystem.h | |
parent | 7e1b4490afc958f43605bc2f38d9947e58409f06 (diff) | |
download | gcc-069631e1799ff25651935125a462edc5d869545a.tar.gz |
* tsystem.h: New file.
* Makefile.in (libgcc2.a, stmp-multilib, crtbegin.o, crtend.o,
s-crtS): Depend on tsystem.h.
* crtstuff.c: Include tsystem.h.
* frame.c: Likewise.
* libgcc2.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31741 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tsystem.h')
-rw-r--r-- | gcc/tsystem.h | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/gcc/tsystem.h b/gcc/tsystem.h new file mode 100644 index 00000000000..244e5c06c2a --- /dev/null +++ b/gcc/tsystem.h @@ -0,0 +1,86 @@ +/* Get common system includes and various definitions and declarations + based on target macros. + Copyright (C) 2000 Free Software Foundation, Inc. + +This file is part of GNU CC. + +GNU CC 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. + +GNU CC 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 GNU CC; see the file COPYING. If not, write to +the Free Software Foundation, 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +#ifndef __GCC_TSYSTEM_H__ +#define __GCC_TSYSTEM_H__ + +/* GCC supplies this header. */ +#include <stddef.h> + +#ifdef inhibit_libc + +#ifndef malloc +extern void *malloc (size_t); +#endif + +#ifndef free +extern void free (void *); +#endif + +#ifndef atexit +extern int atexit (void (*)(void)); +#endif + +#else /* ! inhibit_libc */ +/* We disable this when inhibit_libc, so that gcc can still be built without + needing header files first. */ +/* ??? This is not a good solution, since prototypes may be required in + some cases for correct code. */ + +/* GCC supplies this header. */ +#include <stdarg.h> + +/* All systems have this header. */ +#include <stdio.h> + +/* All systems have this header. */ +#include <sys/types.h> + +/* All systems have this header. */ +#include <errno.h> + +#ifndef errno +extern int errno; +#endif + +#if defined(POSIX) || defined(USG) +#include <string.h> +#endif + +/* GCC (fixproto) guarantees these system headers exist. */ +#include <stdlib.h> +#include <unistd.h> + +/* GCC supplies this header. */ +#include <limits.h> + +#if defined(POSIX) || defined(USG) +#include <time.h> +#endif + +#endif /* inhibit_libc */ + +/* Define a generic NULL if one hasn't already been defined. */ +#ifndef NULL +#define NULL 0 +#endif + +#endif /* __GCC_TSYSTEM_H__ */ |