diff options
-rw-r--r-- | asmcomp/i386/emit.mlp | 4 | ||||
-rw-r--r-- | asmrun/i386.S | 2 | ||||
-rwxr-xr-x | config/auto-aux/config.guess | 3 | ||||
-rwxr-xr-x | configure | 8 | ||||
-rw-r--r-- | otherlibs/unix/getpw.c | 4 |
5 files changed, 18 insertions, 3 deletions
diff --git a/asmcomp/i386/emit.mlp b/asmcomp/i386/emit.mlp index fe4eac8db..dc50e2a46 100644 --- a/asmcomp/i386/emit.mlp +++ b/asmcomp/i386/emit.mlp @@ -48,6 +48,7 @@ let symbol_prefix = match Config.system with "linux_elf" -> "" | "solaris" -> "" + | "beos" -> "" | _ -> "_" let emit_symbol s = @@ -59,6 +60,7 @@ let label_prefix = match Config.system with "linux_elf" -> ".L" | "solaris" -> ".L" + | "beos" -> ".L" | _ -> "L" let emit_label lbl = @@ -85,7 +87,7 @@ let use_ascii_dir = let emit_align = match Config.system with - "linux_elf" | "solaris" -> + "linux_elf" | "solaris" | "beos" -> (fun n -> ` .align {emit_int n}\n`) | _ -> (fun n -> ` .align {emit_int(Misc.log2 n)}\n`) diff --git a/asmrun/i386.S b/asmrun/i386.S index 3e2be5a03..933197604 100644 --- a/asmrun/i386.S +++ b/asmrun/i386.S @@ -23,7 +23,7 @@ #define CONCAT(a,b) a##b #endif -#if defined(SYS_linux_elf) || defined(SYS_solaris) +#if defined(SYS_linux_elf) || defined(SYS_solaris) || defined(SYS_beos) #define G(x) x #define LBL(x) CONCAT(.L,x) #define FUNCTION_ALIGN 4 diff --git a/config/auto-aux/config.guess b/config/auto-aux/config.guess index 9346b8a2d..4a37a8d0b 100755 --- a/config/auto-aux/config.guess +++ b/config/auto-aux/config.guess @@ -453,6 +453,9 @@ EOF "Power Macintosh":Rhapsody:*:*) echo powerpc-apple-rhapsody exit 0;; + BePC:BeOS:*:*) + echo i586-unknown-beos + exit 0;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 @@ -171,6 +171,10 @@ case "$bytecc,$host" in # Almost the same as NeXTStep bytecccompopts="-fno-defer-pop -Wall -DSHRINKED_GNUC" mathlib="";; + *,*-*-beos*) + bytecccompopts="-fno-defer-pop -Wall" + # No -lm library + mathlib="";; gcc,alpha-*-osf*) bytecccompopts="-fno-defer-pop -Wall" # -taso puts code in lower 4GB @@ -204,7 +208,7 @@ case $? in 1) echo "The C compiler $cc is not ANSI-compliant." echo "You need an ANSI C compiler to build Objective Caml." exit 2;; - *) echo "Unable to compiler the test program." + *) echo "Unable to compile the test program." echo "Make sure the C compiler $cc is properly installed." exit 2;; esac @@ -297,6 +301,7 @@ case "$host" in i[3456]86-*-*bsd*) arch=i386; system=bsd;; i[3456]86-*-nextstep*) arch=i386; system=nextstep;; i[3456]86-*-solaris*) arch=i386; system=solaris;; + i[3456]86-*-beos*) arch=i386; system=beos;; mips-*-irix6*) arch=mips; system=irix;; hppa1.1-*-hpux*) arch=hppa; system=hpux;; hppa1.1-*-nextstep*) arch=hppa; system=nextstep;; @@ -642,6 +647,7 @@ case "$host" in mips-*-ultrix*) bignum_arch=mips;; alpha-*-osf*) bignum_arch=alpha;; i[3456]86-*-linux) bignum_arch=x86;; + i[3456]86-*-beos) bignum_arch=x86;; sparc-*-sunos*) bignum_arch=supersparc;; sparc-*-solaris*) bignum_arch=supersparc-solaris;; sparc-*-*bsd*) bignum_arch=sparc;; diff --git a/otherlibs/unix/getpw.c b/otherlibs/unix/getpw.c index b39e98573..f5766c67c 100644 --- a/otherlibs/unix/getpw.c +++ b/otherlibs/unix/getpw.c @@ -27,7 +27,11 @@ static value alloc_passwd_entry(struct passwd *entry) Begin_roots5 (name, passwd, gecos, dir, shell); name = copy_string(entry->pw_name); passwd = copy_string(entry->pw_passwd); +#ifndef __BEOS__ gecos = copy_string(entry->pw_gecos); +#else + gecos = copy_string(""); +#endif dir = copy_string(entry->pw_dir); shell = copy_string(entry->pw_shell); res = alloc_small(7, 0); |