Commit Graph

414 Commits

Author SHA1 Message Date
Jonas 'Sortie' Termansen ac3928bfc8 Fix unportable pid_t printing in calltrace(3). 2013-12-30 20:46:22 +01:00
Jonas 'Sortie' Termansen f47cb98b97 Fix wrong return type in getpgid(2) implementation. 2013-12-30 20:19:00 +01:00
Jonas 'Sortie' Termansen 4cffc6b77b Add fnmatch(3). 2013-12-19 17:42:08 +01:00
Jonas 'Sortie' Termansen 500d3bb38b Add symlink(2) and symlinkat(2) stub. 2013-12-19 17:42:08 +01:00
Jonas 'Sortie' Termansen 48931408f4 Make FILE a macro that expands to FILE.
This solves a compatibility problem with libgmp that erroneously attempts to
detect whether <stdio.h> has been included, but doesn't know what the include
guards for Sortix libc are.
2013-12-19 17:42:07 +01:00
Jonas 'Sortie' Termansen 6a9eee3238 Add brand.h. 2013-12-17 14:30:46 +01:00
Jonas 'Sortie' Termansen c833b054d5 Add <argp.h>. 2013-12-17 14:30:46 +01:00
Jonas 'Sortie' Termansen 33bf0d93ad Avoid libc conflicts with libstdc++. 2013-12-17 14:30:45 +01:00
Jonas 'Sortie' Termansen 2302350d78 Remove <sortix/kernel/platform.h>. 2013-12-17 14:30:45 +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 d43a044575 Refactor assert(3). 2013-12-17 14:30:45 +01:00
Jonas 'Sortie' Termansen 9d4bc2a15f Grow kernel heap upwards.
Previously the kernel heap grew downwards for historical reasons. There is no
reason for this and it simplifies the heap implementation if it only grows
upwards. This also rearranges how the kernel virtual memory is allocated to
suit an upwards-growing heap.
2013-12-17 14:30:45 +01:00
Jonas 'Sortie' Termansen b9e463965b Split libc/stdlib/on_exit.cpp into multiple files. 2013-12-17 14:30:45 +01:00
Jonas 'Sortie' Termansen 8018a85a30 Fix wrong base parsing in strtol(3). 2013-12-17 14:30:45 +01:00
Jonas 'Sortie' Termansen db185ece7d Add <ar.h> header. 2013-12-17 14:30:45 +01:00
Jonas 'Sortie' Termansen e31b98c5a1 Improve standards conformance of asctime_r(3). 2013-12-17 14:30:45 +01:00
Jonas 'Sortie' Termansen 011ea58176 Rewrite vprintf_callback(3). 2013-12-17 14:30:44 +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 3166413eef Properly implement memmove(3). 2013-12-17 14:30:44 +01:00
Jonas 'Sortie' Termansen ca2de62ea7 Use the <pwd.h> API in getlogin_r(3). 2013-12-17 14:30:44 +01:00
Jonas 'Sortie' Termansen 3785beb7f5 Implement the <grp.h> API properly. 2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen a7e1207e0f Implement the <pwd.h> API properly. 2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen 69f2a3ef91 Add ENOGROUP. 2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen dd269e9d51 Add ENOUSER. 2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen 396765eaba Remove getdtablesize(3).
This interface has been replaced with sysconf(_SC_OPEN_MAX). Note that this
implementation currently reports this as 0x10000, but there really is no
such limit in Sortix at this time.
2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen bae68066eb Add struct iovec to sys/socket.h. 2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen 5933ac5210 Rename O_CREAT to O_CREATE. 2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen e901ad8105 Move the declaration of the FILE structure into its own header. 2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen a212ec0ee3 Split libc/unistd/ioleast.cpp into multiple files. 2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen 8c0e0235d6 Refactor fcntl(2) ABI.
This is an incompatible ABI change.
2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen 4e520c8c36 Remove sortix_gets(3). 2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen b399ece14b Add dup3(2). 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen 9700623737 Remove obsolete __SORTIX_SHOW_UNIMPLEMENTED feature macro. 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen 69eb2f0e5f Update <errno.h> to current coding conventions. 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 5b6d49b060 Remove useless extern keyword from libc header function prototypes. 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen f79508fbc9 Remove __POSIX_OBSOLETE feature macro. 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen 52f67b436d Provide the full <stdint.h> in all system components. 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen 8044afc7e8 Provide the restrict keyword in all system components. 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen bea3ed6f50 Detect internal system component build macros in <features.h>. 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen 798554f21c Update <features.h> to current coding conventions. 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 3a30ba57ef Change libc internal build macro to __is_sortix_libc. 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen c24b162ef3 Add __sortix_libc__ feature macro. 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen fd4b35f986 Add mkstemp(3). 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen f105c8f3be Add wmemset(3). 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen 9039553c15 Add wmemmove(3). 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen 329881f38d Add wmemcpy(3). 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen 3c3bb32431 Add wmemchr(3). 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen f32e1c7951 Add wcsstr(3). 2013-12-17 14:30:41 +01:00
Jonas 'Sortie' Termansen 2e46a6ce8c Add wcspbrk(3). 2013-12-17 14:30:41 +01:00
Jonas 'Sortie' Termansen b944052a2e Add wcsxfrm(3). 2013-12-17 14:30:41 +01:00
Jonas 'Sortie' Termansen 2db8bc088d Add wcsncmp(3). 2013-12-17 14:30:41 +01:00
Jonas 'Sortie' Termansen adb3bf543f Add wmemcmp(3). 2013-12-17 14:30:41 +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 930be00966 Don't write errors to stderr in dlopen(3) and dlsym(3). 2013-12-17 14:30:41 +01:00
Jonas 'Sortie' Termansen 30d35a98dd Add sigandset(3), sigisemptyset(3), signotset(3), and sigorset(3). 2013-12-17 14:30:41 +01:00
Jonas 'Sortie' Termansen d5a7901b25 Add getopt(3) and getopt_long(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen bb2a1b3e73 Add dprintf(3) and vdprintf(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen 91eb5f3af9 Split libc/stdio/sprint.cpp into multiple files. 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen edce6b9c2b Split libc/stdio/print.cpp into multiple files. 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen 2f49694031 Add flockfile(3), ftrylockfile(3), and funlockfile(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen 405173fc04 Add strftime_l(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen 070a319006 Split stdlib/abs.cpp into multiple files. 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen 02013158e7 Add imaxdiv(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen a9d8712435 Add wcscoll(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen 8d674a43e1 Add wcsto{l,ll,ul,ull,imax,umax}(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen cba75809fe Declare wchar_t in inttypes.h. 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen 5a127a429c Add overflow support to strtol and clean up the code. 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen 1df749498a Refactor strtol functions. 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen cdc5a9673e Add strtoimax(3) and strtoumax(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen d79808f85f Split gnu_error(3) and perror(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen 0c43765bbf Add strdupa(3) and strndupa(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen fdbcea19dc Add ffs(3), ffsl(3), and ffsll(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen 6ea9a0d509 Merge strings.h into string.h. 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen bc20ef464c Split pread and pwrite into their own files. 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen 12d6f1fd73 Add killpg(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen f1888f9e8b Add strlcat(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen a1655ca43b Add strerror_l(3) and strerror_r(3). 2013-12-17 14:30:40 +01:00
Jonas 'Sortie' Termansen 4ac3c313ae Add strlcpy(3). 2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen 2518e4fc40 Add strxfrm_l(3). 2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen 5bda12c8fc Add strcoll_l(3). 2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen e6a23c5365 Update libc/dirent/fddir-sortix to current coding conventions. 2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen 290ee1a6a6 Update libc/dirent/dir to current coding conventions. 2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen 8707a0d309 Update libc/stdio/fdio to current coding conventions. 2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen 2fa4df7576 Update libc/stdio/stdio to current coding conventions. 2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen 878dbd819f Update libc/ctype/ctype to current coding conventions. 2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen 5980be9b3c Add Sortix Math Library.
This work is based in part on code from NetBSD libm, libc and kernel.

The library is partly public domain and partly BSD-style licensed.
2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen 14c32c3433 Move libc initialization functions into their own directory. 2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen 89a2c44493 Move stdio.h functions into their own directory. 2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen a329235397 Move timespec.h functions into their own directory. 2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen 106c269c62 Move sys/readdirents.h functions into their own directory. 2013-12-17 14:30:39 +01:00
Jonas 'Sortie' Termansen d162eac516 Move sys/ioctl.h functions into their own directory. 2013-12-17 14:30:38 +01:00