mescc: Add headers for 8cc.
authorJan Nieuwenhuizen <janneke@gnu.org>
Sun, 18 Jun 2017 14:12:15 +0000 (16:12 +0200)
committerJan Nieuwenhuizen <janneke@gnu.org>
Sun, 18 Jun 2017 14:12:15 +0000 (16:12 +0200)
* mlibc/include/libgen.h: New file.
* mlibc/include/locale.hh: New file.
* mlibc/include/stdbool.h: New file.
* mlibc/include/stdnoreturn.h: New file.
* mlibc/include/time.h: Add time_t.

mlibc/include/libgen.h [new file with mode: 0644]
mlibc/include/locale.h [new file with mode: 0644]
mlibc/include/stdbool.h [new file with mode: 0644]
mlibc/include/stdnoreturn.h [new file with mode: 0644]
mlibc/include/time.h

diff --git a/mlibc/include/libgen.h b/mlibc/include/libgen.h
new file mode 100644 (file)
index 0000000..e5199cc
--- /dev/null
@@ -0,0 +1,33 @@
+/* -*-comment-start: "//";comment-end:""-*-
+ * Mes --- Maxwell Equations of Software
+ * Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
+ *
+ * This file is part of Mes.
+ *
+ * Mes 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 3 of the License, or (at
+ * your option) any later version.
+ *
+ * Mes 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 Mes.  If not, see <http://www.gnu.org/licenses/>.
+ */
+#ifndef __MES_LIBGEN_H
+#define __MES_LIBGEN_H 1
+
+#if __GNUC__ && POSIX
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE
+#endif
+#include_next <libgen.h>
+
+#else // ! (__GNUC__ && POSIX)
+char* dirname (char*);
+#endif // ! (__GNUC__ && POSIX)
+
+#endif // __MES_LIBGEN_H
diff --git a/mlibc/include/locale.h b/mlibc/include/locale.h
new file mode 100644 (file)
index 0000000..6cfc027
--- /dev/null
@@ -0,0 +1,33 @@
+/* -*-comment-start: "//";comment-end:""-*-
+ * Mes --- Maxwell Equations of Software
+ * Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
+ *
+ * This file is part of Mes.
+ *
+ * Mes 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 3 of the License, or (at
+ * your option) any later version.
+ *
+ * Mes 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 Mes.  If not, see <http://www.gnu.org/licenses/>.
+ */
+#ifndef __MES_LOCALE_H
+#define __MES_LOCALE_H 1
+
+#if __GNUC__ && POSIX
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE
+#endif
+#include_next <locale.h>
+
+#else // ! (__GNUC__ && POSIX)
+char* dirname (char*);
+#endif // ! (__GNUC__ && POSIX)
+
+#endif // __MES_LOCALE_H
diff --git a/mlibc/include/stdbool.h b/mlibc/include/stdbool.h
new file mode 100644 (file)
index 0000000..e2e1ee5
--- /dev/null
@@ -0,0 +1,35 @@
+/* -*-comment-start: "//";comment-end:""-*-
+ * Mes --- Maxwell Equations of Software
+ * Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
+ *
+ * This file is part of Mes.
+ *
+ * Mes 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 3 of the License, or (at
+ * your option) any later version.
+ *
+ * Mes 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 Mes.  If not, see <http://www.gnu.org/licenses/>.
+ */
+#ifndef __MES_STDBOOL_H
+#define __MES_STDBOOL_H 1
+
+#if __GNUC__ && POSIX
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE
+#endif
+#include_next <stdbool.h>
+
+#else // ! (__GNUC__ && POSIX)
+typedef int bool;
+#define false 0
+#define true 1
+#endif // ! (__GNUC__ && POSIX)
+
+#endif // __MES_STDBOOL_H
diff --git a/mlibc/include/stdnoreturn.h b/mlibc/include/stdnoreturn.h
new file mode 100644 (file)
index 0000000..84a1e94
--- /dev/null
@@ -0,0 +1,33 @@
+/* -*-comment-start: "//";comment-end:""-*-
+ * Mes --- Maxwell Equations of Software
+ * Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
+ *
+ * This file is part of Mes.
+ *
+ * Mes 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 3 of the License, or (at
+ * your option) any later version.
+ *
+ * Mes 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 Mes.  If not, see <http://www.gnu.org/licenses/>.
+ */
+#ifndef __MES_STDNORETURN_H
+#define __MES_STDNORETURN_H 1
+
+#if __GNUC__ && POSIX
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE
+#endif
+#include_next <stdnoreturn.h>
+
+#else // ! (__GNUC__ && POSIX)
+// whut?
+#endif // ! (__GNUC__ && POSIX)
+
+#endif // __MES_STDNORETURN_H
index b15cf52d1d4420309b74a26835f05673ae91f6f3..fb8c980e8298f5538404550ff4e1859ee42b89a3 100644 (file)
@@ -22,7 +22,9 @@
 
 #if __GNUC__ && POSIX
 #include_next <time.h>
-#endif // (__GNUC__ && POSIX)
+#else // ! (__GNUC__ && POSIX)
+typedef int time_t;
+#endif // ! (__GNUC__ && POSIX)
 
 #endif // __MES_TIME_H