build: Build mini-libc and libc+tcc-gcc too.

* include/getopt.h[__GNUC__ && POSIX]: Only use include_next.
* lib/libc+tcc-gcc.c[POSIX](longjmp, setjmp, __udivdi3, __umoddi3):
  Remove.
* build-aux/build-cc.sh: Build mini-libc-gcc and libc+tcc-gcc too.
* build-aux/build-mlibc.sh: Build mini-libc-gcc too.
This commit is contained in:
Jan Nieuwenhuizen 2018-05-23 13:37:55 +02:00
parent 6ab7d2cee7
commit 0ba240a4e0
No known key found for this signature in database
GPG key ID: F3C1A0D9C1D65273
6 changed files with 16 additions and 5 deletions

View file

@ -46,7 +46,8 @@ build-aux/mes-snarf.scm src/posix.c
build-aux/mes-snarf.scm src/reader.c
build-aux/mes-snarf.scm src/vector.c
NOLINK=1 sh build-aux/cc.sh lib/mini-libc-gcc
NOLINK=1 sh build-aux/cc.sh lib/libc-gcc
#NOLINK=1 sh build-aux/cc.sh lib/libc+tcc-gcc
NOLINK=1 sh build-aux/cc.sh lib/libc+tcc-gcc
sh build-aux/cc.sh src/mes

View file

@ -59,6 +59,7 @@ C32FLAGS=${C32FLAGS-"
"}
NOLINK=1 sh build-aux/cc-mlibc.sh lib/crt1
NOLINK=1 sh build-aux/cc-mlibc.sh lib/mini-libc-gcc
NOLINK=1 sh build-aux/cc-mlibc.sh lib/libc-gcc
NOLINK=1 sh build-aux/cc-mlibc.sh lib/libc+tcc-gcc

View file

@ -32,7 +32,6 @@
#include <endian.h>
int isdigit (int);
int isxdigit (int);
#endif // ! (__GNUC__ && POSIX)
char *optarg;
int optind;
@ -56,5 +55,7 @@ int getopt (int argc, char *const *argv, char const *shortopts);
int getopt_long (int argc, char *const *argv, char const *shortopts,
struct option const *longopts, int *longind);
#endif // ! (__GNUC__ && POSIX)
#endif // __MES_GETOPT_H

View file

@ -34,6 +34,8 @@
#include <libc+tcc.c>
#include <getopt.c>
#if !POSIX
int errno;
void
@ -95,3 +97,5 @@ __umoddi3 (unsigned long long a, unsigned long long b)
int bi = b;
return ai % bi;
}
#endif // !POSIX

View file

@ -19,6 +19,4 @@
*/
#include <mini-linux-mes.c>
typedef unsigned long size_t;
#include <mini-libc.c>

View file

@ -1,6 +1,6 @@
/* -*-comment-start: "//";comment-end:""-*-
* Mes --- Maxwell Equations of Software
* Copyright © 2016,2017 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
* Copyright © 2016,2017,2018 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
*
* This file is part of Mes.
*
@ -18,6 +18,12 @@
* along with Mes. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __MES_SIZE_T
#define __MES_SIZE_T
#undef size_t
typedef unsigned long size_t;
#endif
size_t
strlen (char const* s)
{