summaryrefslogtreecommitdiff
path: root/include/standard.h
diff options
context:
space:
mode:
authorIgor Pashev <pashev.igor@gmail.com>2012-12-31 05:04:42 +0400
committerIgor Pashev <pashev.igor@gmail.com>2012-12-31 05:04:42 +0400
commit71dc8760ff4de5f365330d1bc571d934deb54af9 (patch)
tree7346d42a282562a3937d82307012b5857d642ce6 /include/standard.h
downloadcdrkit-71dc8760ff4de5f365330d1bc571d934deb54af9.tar.gz
Imported Upstream version 1.1.11upstream/1.1.11upstream
Diffstat (limited to 'include/standard.h')
-rw-r--r--include/standard.h165
1 files changed, 165 insertions, 0 deletions
diff --git a/include/standard.h b/include/standard.h
new file mode 100644
index 0000000..d884973
--- /dev/null
+++ b/include/standard.h
@@ -0,0 +1,165 @@
+/*
+ * This file has been modified for the cdrkit suite.
+ *
+ * The behaviour and appearence of the program code below can differ to a major
+ * extent from the version distributed by the original author(s).
+ *
+ * For details, see Changelog file distributed with the cdrkit package. If you
+ * received this file from another source then ask the distributing person for
+ * a log of modifications.
+ *
+ */
+
+/* @(#)standard.h 1.31 03/08/23 Copyright 1985 J. Schilling */
+/*
+ * standard definitions
+ *
+ * This file should be included past:
+ *
+ * mconfig.h / config.h
+ * stdio.h
+ * stdlib.h (better use stdxlib.h)
+ * unistd.h (better use unixstd.h) needed LARGEFILE support
+ *
+ * If you need stdio.h, you must include it before standard.h
+ *
+ * Copyright (c) 1985 J. Schilling
+ */
+/*
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2
+ * as published by the Free Software Foundation.
+ *
+ * This program 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
+ * this program; see the file COPYING. If not, write to the Free Software
+ * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#ifndef _STANDARD_H
+#define _STANDARD_H
+
+#ifndef _MCONFIG_H
+#include <mconfig.h>
+#endif
+#ifndef _PROTOTYP_H
+#include <prototyp.h>
+#endif
+
+#ifdef M68000
+# ifndef tos
+# define JOS 1
+# endif
+#endif
+
+/*
+ * fundamental constants
+ */
+#ifndef NULL
+# define NULL 0
+#endif
+#ifndef TRUE
+# define TRUE 1
+# define FALSE 0
+#endif
+
+/*
+ * Program exit codes
+ */
+#define EX_BAD (-1)
+
+/*
+ * standard storage class definitions
+ */
+#define GLOBAL extern
+#define IMPORT extern
+#define EXPORT
+#define INTERN static
+#define LOCAL static
+#define FAST register
+
+#ifndef PROTOTYPES
+# ifndef const
+# define const
+# endif
+# ifndef signed
+# define signed
+# endif
+# ifndef volatile
+# define volatile
+# endif
+#endif /* PROTOTYPES */
+
+/*
+ * standard type definitions
+ *
+ * The hidden Schily BOOL definition is used in case we need to deal
+ * with other BOOL defines on systems we like to port to.
+ */
+typedef int __SBOOL;
+typedef int BOOL;
+#ifdef JOS
+# ifndef __GNUC__
+# define NO_VOID
+# endif
+#endif
+#ifdef NO_VOID
+ typedef int VOID;
+# ifndef lint
+ typedef int void;
+# endif
+#else
+ typedef void VOID;
+#endif
+
+#if defined(_INCL_SYS_TYPES_H) || defined(off_t)
+# ifndef FOUND_OFF_T
+# define FOUND_OFF_T
+# endif
+#endif
+#if defined(_INCL_SYS_TYPES_H) || defined(size_t)
+# ifndef FOUND_SIZE_T
+# define FOUND_SIZE_T
+# endif
+#endif
+
+#ifdef __never_def__
+/*
+ * It turns out that we cannot use the folloginw definition because there are
+ * some platforms that do not behave application friendly. These are mainly
+ * BSD-4.4 based systems (which #undef a definition when size_t is available.
+ * We actually removed this code because of a problem with QNX Neutrino.
+ * For this reason, it is important not to include <sys/types.h> directly but
+ * via the Schily SING include files so we know whether it has been included
+ * before we come here.
+ */
+#if defined(_SIZE_T) || defined(_T_SIZE_) || defined(_T_SIZE) || \
+ defined(__SIZE_T) || defined(_SIZE_T_) || \
+ defined(_GCC_SIZE_T) || defined(_SIZET_) || \
+ defined(__sys_stdtypes_h) || defined(___int_size_t_h) || defined(size_t)
+
+#ifndef FOUND_SIZE_T
+# define FOUND_SIZE_T /* We already included a size_t definition */
+#endif
+#endif
+#endif /* __never_def__ */
+
+#if defined(_JOS) || defined(JOS)
+# ifndef _SCHILY_H
+# include <schily.h>
+# endif
+
+# ifndef _JOS_DEFS_H
+# include <jos_defs.h>
+# endif
+
+# ifndef _JOS_IO_H
+# include <jos_io.h>
+# endif
+#endif
+
+#endif /* _STANDARD_H */