Made pc86 work with the new libc.
This commit is contained in:
parent
680b4071b7
commit
dbb2062d03
|
@ -13,7 +13,7 @@ vars.plats = {
|
||||||
"osx386",
|
"osx386",
|
||||||
"osxppc",
|
"osxppc",
|
||||||
-- --"qemuppc",
|
-- --"qemuppc",
|
||||||
-- "pc86",
|
"pc86",
|
||||||
-- "rpi",
|
-- "rpi",
|
||||||
-- "pdpv7",
|
-- "pdpv7",
|
||||||
-- "em22",
|
-- "em22",
|
||||||
|
@ -23,7 +23,7 @@ vars.plats_with_tests = {
|
||||||
"linux386",
|
"linux386",
|
||||||
"linuxppc",
|
"linuxppc",
|
||||||
-- --"qemuppc",
|
-- --"qemuppc",
|
||||||
-- "pc86",
|
"pc86",
|
||||||
}
|
}
|
||||||
|
|
||||||
local plat_packages = {}
|
local plat_packages = {}
|
||||||
|
|
|
@ -9,7 +9,7 @@ local function addheader(h)
|
||||||
end
|
end
|
||||||
|
|
||||||
addheader("ack/plat.h")
|
addheader("ack/plat.h")
|
||||||
addheader("unistd.h")
|
addheader("sys/types.h")
|
||||||
|
|
||||||
acklibrary {
|
acklibrary {
|
||||||
name = "headers",
|
name = "headers",
|
||||||
|
|
9
plat/pc86/include/sys/types.h
Normal file
9
plat/pc86/include/sys/types.h
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
#ifndef _SYS_TYPES_H
|
||||||
|
#define _SYS_TYPES_H
|
||||||
|
|
||||||
|
typedef int pid_t;
|
||||||
|
typedef int mode_t;
|
||||||
|
typedef long time_t;
|
||||||
|
typedef long suseconds_t;
|
||||||
|
|
||||||
|
#endif
|
|
@ -1,73 +0,0 @@
|
||||||
/*
|
|
||||||
* unistd.h - standard system calls
|
|
||||||
*/
|
|
||||||
/* $Id$ */
|
|
||||||
|
|
||||||
#ifndef _UNISTD_H
|
|
||||||
#define _UNISTD_H
|
|
||||||
|
|
||||||
#include <stddef.h>
|
|
||||||
|
|
||||||
/* Types */
|
|
||||||
|
|
||||||
typedef int pid_t;
|
|
||||||
typedef int mode_t;
|
|
||||||
|
|
||||||
/* Constants for file access (open and friends) */
|
|
||||||
|
|
||||||
enum
|
|
||||||
{
|
|
||||||
O_ACCMODE = 0x3,
|
|
||||||
|
|
||||||
O_RDONLY = 0,
|
|
||||||
O_WRONLY = 1,
|
|
||||||
O_RDWR = 2,
|
|
||||||
|
|
||||||
O_CREAT = 0100,
|
|
||||||
O_TRUNC = 01000,
|
|
||||||
O_APPEND = 02000,
|
|
||||||
O_NONBLOCK = 04000
|
|
||||||
};
|
|
||||||
|
|
||||||
/* Special variables */
|
|
||||||
|
|
||||||
extern char** environ;
|
|
||||||
|
|
||||||
/* Implemented system calls */
|
|
||||||
|
|
||||||
extern void _exit(int);
|
|
||||||
extern pid_t getpid(void);
|
|
||||||
extern int brk(void* addr);
|
|
||||||
extern void* sbrk(int increment);
|
|
||||||
extern int isatty(int d);
|
|
||||||
extern off_t lseek(int fildes, off_t offset, int whence);
|
|
||||||
extern int close(int d);
|
|
||||||
extern int open(const char* path, int access, ...);
|
|
||||||
extern int creat(const char* path, mode_t mode);
|
|
||||||
extern int read(int fd, void* buffer, size_t count);
|
|
||||||
extern int write(int fd, void* buffer, size_t count);
|
|
||||||
extern int unlink(const char* path);
|
|
||||||
|
|
||||||
/* Unimplemented system calls (these are just prototypes to let the library
|
|
||||||
* compile). */
|
|
||||||
|
|
||||||
extern int fcntl(int fd, int op, ...);
|
|
||||||
|
|
||||||
/* Signal handling */
|
|
||||||
|
|
||||||
typedef int sig_atomic_t;
|
|
||||||
|
|
||||||
#define SIG_ERR ((sighandler_t) -1) /* Error return. */
|
|
||||||
#define SIG_DFL ((sighandler_t) 0) /* Default action. */
|
|
||||||
#define SIG_IGN ((sighandler_t) 1) /* Ignore signal. */
|
|
||||||
|
|
||||||
#define SIGABRT 6 /* Abort (ANSI) */
|
|
||||||
#define SIGILL 11 /* Illegal instruction */
|
|
||||||
|
|
||||||
#define _NSIG 32 /* Biggest signal number + 1
|
|
||||||
(not including real-time signals). */
|
|
||||||
typedef void (*sighandler_t)(int);
|
|
||||||
extern sighandler_t signal(int signum, sighandler_t handler);
|
|
||||||
extern int raise(int signum);
|
|
||||||
|
|
||||||
#endif
|
|
|
@ -8,7 +8,7 @@
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include "libsys.h"
|
#include "libsys.h"
|
||||||
|
|
||||||
int read(int fd, void* buffer, size_t count)
|
ssize_t read(int fd, void* buffer, size_t count)
|
||||||
{
|
{
|
||||||
char i;
|
char i;
|
||||||
|
|
||||||
|
|
|
@ -19,7 +19,7 @@ void _sys_write_tty(char c)
|
||||||
_sys_rawwrite('\r');
|
_sys_rawwrite('\r');
|
||||||
}
|
}
|
||||||
|
|
||||||
int write(int fd, void* buffer, size_t count)
|
ssize_t write(int fd, void* buffer, size_t count)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
char* p = buffer;
|
char* p = buffer;
|
||||||
|
|
Loading…
Reference in a new issue