Commit graph

64 commits

Author SHA1 Message Date
Jonas 'Sortie' Termansen
01a9779fc6 Compile libc with -ffreestanding.
This properly avoids problems where the compiler is unaware that this is the
implementation and assumes it can rely on the implementation. For instance,
it might implement calloc using a call to calloc.

Restructure the code that wrongly assumed __STDC_HOSTED__ meant userspace.
2016-05-15 22:43:29 +02:00
Jonas 'Sortie' Termansen
264805a4aa Remove uname -i and -o options.
These are unportable GNU extensions that's not needed for Sortix.
2016-05-15 22:43:29 +02:00
Jonas 'Sortie' Termansen
2a6a246ff4 Remove getdomainname(2). 2016-05-15 22:43:29 +02:00
Jonas 'Sortie' Termansen
fe87b61a33 Add tagline. 2016-03-26 23:50:50 +01:00
Jonas 'Sortie' Termansen
2b72262b4f Relicense Sortix to the ISC license.
I hereby relicense all my work on Sortix under the ISC license as below.

All Sortix contributions by other people are already under this license,
are not substantial enough to be copyrightable, or have been removed.

All imported code from other projects is compatible with this license.

All GPL licensed code from other projects had previously been removed.

Copyright 2011-2016 Jonas 'Sortie' Termansen and contributors.

Permission to use, copy, modify, and distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2016-03-05 22:21:50 +01:00
Jonas 'Sortie' Termansen
01b59c1947 Convert libc to C. 2016-03-03 23:02:23 +01:00
Jonas 'Sortie' Termansen
4d2901b90e Split stdin, stdout and stderr into their own files. 2016-01-26 19:01:36 +01:00
Jonas 'Sortie' Termansen
2e4b15daed Simplify directory reading. 2016-01-26 18:42:54 +01:00
Jonas 'Sortie' Termansen
bff1265d62 Add termios(2). 2016-01-25 15:47:40 +01:00
Jonas 'Sortie' Termansen
9a59ef2313 Fix select(2) conformance issues. 2016-01-22 20:01:32 +01:00
Jonas 'Sortie' Termansen
a79aeed0c1 Remove __BEGIN_DECLS and __END_DECLS. 2015-08-26 14:52:44 +02:00
Jonas 'Sortie' Termansen
248f446089 Remove st_atime, st_ctime and st_mtime deprecation warnings.
This battle isn't worth fighting at this time.
2015-08-21 21:25:00 +02:00
Jonas 'Sortie' Termansen
d890d3082d Add umount(2) and unmountat(2). 2014-12-26 21:45:29 +01:00
Jonas 'Sortie' Termansen
577f2f700b Add shutdown(2). 2014-11-27 01:39:53 +01:00
Jonas 'Sortie' Termansen
ad8d025c32 Rename <sortix/syscallnum.h> to <sortix/syscall.h>. 2014-11-27 01:18:58 +01:00
Jonas 'Sortie' Termansen
bb84370c34 Add type limits and print/scan specifiers to <sys/types.h>. 2014-11-26 23:34:14 +01:00
Jonas 'Sortie' Termansen
708bcb4735 Add recvmsg(2) and sendmsg(2). 2014-11-18 16:27:19 +01:00
Jonas 'Sortie' Termansen
234f186a7d Ensure system call indices are valid expressions in libc syscall stubs. 2014-09-25 17:49:01 +02:00
Jonas 'Sortie' Termansen
30cd318c17 Implement signals.
Note: This is an incompatible ABI change.
2014-07-22 13:25:39 +02:00
Jonas 'Sortie' Termansen
c8a3a858b0 Add libpthread. 2014-07-08 17:41:50 +02:00
Jonas 'Sortie' Termansen
9f0e9f2fd4 Fix overlapping socket level constants. 2014-06-17 23:53:26 +02:00
Jonas 'Sortie' Termansen
0f80611403 Fix C++ comments in <sys/types.h>. 2014-05-16 14:31:24 +02:00
Jonas 'Sortie' Termansen
f2857047b0 Fix non-portable asm keyword usage in in system header. 2014-05-16 14:21:13 +02:00
Jonas 'Sortie' Termansen
a935148f60 Add statvfs(2), fstatvfs(2) and fstatvfsat(2). 2014-03-17 19:22:12 +01:00
Jonas 'Sortie' Termansen
2fe3595feb Add getumask(2). 2014-03-17 19:22:12 +01:00
Jonas 'Sortie' Termansen
687096ec8a Add uname(3). 2014-03-17 19:22:11 +01:00
Jonas 'Sortie' Termansen
d5241349cc Move OFF_MIN and OFF_MAX to <sys/types.h>. 2014-03-17 19:22:10 +01:00
Jonas 'Sortie' Termansen
823d3a3e2f Add fsblkcnt_t and fsfilcnt_t. 2014-03-17 19:22:10 +01:00
Jonas 'Sortie' Termansen
b08455c4d3 Remove mxmpp. 2014-03-01 14:37:40 +01:00
Jonas 'Sortie' Termansen
0d3e35bd82 Add symbol size to SYSCALL_FUNCTION macro assembly. 2013-12-17 14:30:45 +01:00
Jonas 'Sortie' Termansen
dbd07b6ade Update <sys/syscall.h> to current coding conventions. 2013-12-17 14:30:45 +01:00
Jonas 'Sortie' Termansen
30a95dfa1e Split parts of <features.h> into <sys/cdefs.h>. 2013-12-17 14:30:44 +01:00
Jonas 'Sortie' Termansen
8961a99280 Add AF_LOCAL and PF_LOCAL. 2013-12-17 14:30:44 +01:00
Jonas 'Sortie' Termansen
bae68066eb Add struct iovec to sys/socket.h. 2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen
9700623737 Remove obsolete __SORTIX_SHOW_UNIMPLEMENTED feature macro. 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen
ad1c6e0ed7 Remove <sys/__/types.h> inclusion from <features.h>. 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen
ad84bc75c8 Change kernel internal build macro to __is_sortix_kernel. 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen
efc0eb2829 Add getrusage(3). 2013-12-17 14:30:41 +01:00
Jonas 'Sortie' Termansen
7a5e549612 Add getrlimit(3) and setrlimit(3). 2013-12-17 14:30:41 +01:00
Jonas 'Sortie' Termansen
13f09cc515 Add prlimit(2). 2013-12-17 14:30:41 +01:00
Jonas 'Sortie' Termansen
a6f38947f2 Add getpriority(2) and setpriority(2). 2013-12-17 14:30:41 +01:00
Jonas 'Sortie' Termansen
1469c89b87 Add id_t to <sys/types.h>. 2013-12-17 14:30:41 +01:00
Jonas 'Sortie' Termansen
04019cab9e Add mmap(2), mprotect(2) and munmap(2). 2013-12-17 14:30:41 +01:00
Jonas 'Sortie' Termansen
0903f4edc2 Add times(3). 2013-12-17 14:30:34 +01:00
Jonas 'Sortie' Termansen
df5deac29b Add support for per-process timers. 2013-12-17 14:30:33 +01:00
Jonas 'Sortie' Termansen
ef32b3fcbe Add {,p}{read,write}v(2). 2013-12-17 14:30:33 +01:00
Jonas 'Sortie' Termansen
3eeec255c0 Use alternate restrict keyword when unavailable. 2013-12-17 14:30:32 +01:00
Jonas 'Sortie' Termansen
79a49b2015 Add socket interface. 2013-12-17 14:30:30 +01:00
Jonas 'Sortie' Termansen
ee106231c4 Add utimensat(2) and futimens(2). 2013-12-17 14:30:30 +01:00
Jonas 'Sortie' Termansen
472155173d Adopt struct timespec as the kernel time format.
Note: Incompatible ABI change.
2013-12-17 14:30:30 +01:00