Giacomo Tesio
804b13a4dc
lib9.h: removed duplicate defines
2021-04-08 22:14:34 +02:00
Giacomo Tesio
922e993c41
libs, kernel and commands: re-enable -Werror
2020-11-15 13:30:09 +01:00
Giacomo Tesio
16c7924425
libs: get rid of libstdio (and stdio.h); `mv ctype.h chartypes.h` in /sys/include
2020-09-17 23:53:35 +02:00
Giacomo Tesio
0a325039bf
gcc & system build: add `-9` and remove `--posix` from build files
2020-09-17 23:53:12 +02:00
Giacomo Tesio
2f850291d5
rename libc to libjehanne; improve libposix
...
This is to avoid conflicts between standards' assumptions and Jehanne's choices
2020-09-17 23:48:27 +02:00
Giacomo Tesio
3c7dc6eb8b
posix.h: correctly wrap apw/errno.h inclusion (should we invert this dependency?)
2020-09-17 23:48:03 +02:00
Giacomo Tesio
4067cb45cb
libc: refactoring
2020-09-17 23:47:39 +02:00
Giacomo Tesio
f104c46858
purge syscall macros
2020-09-17 23:45:23 +02:00
Giacomo Tesio
361a06f284
libc: move read and write to jehanne_ namespace (where they actually belong)
2020-09-17 23:43:56 +02:00
Giacomo Tesio
e9e5e59740
libposix: rename function argument
2020-09-17 23:43:54 +02:00
Giacomo Tesio
a15c1111b8
libposix: POSIX_rmdir
2019-11-20 00:19:59 +01:00
Giacomo Tesio
49da4de25c
posix: POSIX_sysconf
2019-11-18 00:53:09 +01:00
Giacomo Tesio
ea21d3cd2d
libposix: add support for O_NONBLOCK
...
We keep a list of non blocking fds and use awake to
make them not block on read, write, pread and pwrite.
2018-01-15 22:37:27 +01:00
Giacomo Tesio
c7d0f621c9
Clarify Forsyth's and 9front's copyrights
...
I'm very grateful to Charles Forsyth for creating most of Jehanne's kernel
and to 9front's guys for all the code and ideas they freely share.
Here I make their copyrights explicit as they had been erroneusly omitted
or messed up before. Sorry.
2018-01-05 02:30:45 +01:00
Giacomo Tesio
001069aa7b
libposix: deep refactor; add sys/posixly command
...
With these changes, libposix (and newlib) can run MirBSD Korn Shell.
2017-12-18 23:02:36 +01:00
Giacomo Tesio
8c5dff6c0b
libc: add pexec() to execute a command in $PATH
2017-12-15 02:58:09 +01:00
Giacomo Tesio
0c63c7dc91
libc: removed unused tos.h
2017-12-15 02:58:09 +01:00
Giacomo Tesio
9202b04504
rc: use some uppercase variables (PATH, USER...)
2017-10-22 13:22:37 +02:00
Giacomo Tesio
d6d65887b2
libc: rename $apid to $APID
2017-10-20 02:05:13 +02:00
Giacomo Tesio
fab9c1d80f
libc: introduce <envvars.h>
...
The new header envvars.h contains the names of commonly used
environment variables, such as $user, $ifs, $path and so on.
These defines are useful for Jehanne core applications that
use them to comunicate some values.
They are not strictly required, but having such defines we
can easily change the naming convention (from lowercase to uppercase).
2017-10-20 01:22:48 +02:00
Giacomo Tesio
d3c2605d57
libc: set ERRMAX to 128 (to match genbuf in the kernel's Proc structure)
2017-10-18 01:40:40 +02:00
Giacomo Tesio
e206015f7f
libposix: add getpgid
2017-09-07 23:27:33 +02:00
Giacomo Tesio
e3ff5b1004
libposix: add getpgrp; draft setsid, getsid and setpgid
2017-09-07 00:10:34 +02:00
Giacomo Tesio
e168dcb7fa
libposix: add umask
2017-09-06 22:59:05 +02:00
Giacomo Tesio
14edc758f4
libposix: add get/set functions for uid, gid, euid, egid, pgid, sid, reuid...
2017-09-05 00:15:37 +02:00
Giacomo Tesio
c5aaa72bbb
libposix: add dup, dup2, getrusage, fstat and lstat
2017-09-03 17:51:44 +02:00
Giacomo Tesio
0bc2e60c72
libposix: stub chown family (always returning 0)
...
I do not expect chown, fchownat and lchown to be much used in
UNIX softwares that we care to port.
We stub the functions in libposix so that we can refer them from
standard C libaries (such as newlib).
We will implement them (parsing /cfg/users to determinate uid and gid)
when it will be actually needed from a software ported to Jehanne.
2017-08-31 00:50:31 +02:00
Giacomo Tesio
b78613615d
libposix: add access
2017-08-28 23:04:12 +02:00
Giacomo Tesio
bfb95a3d3e
libposix: drafted chdir, fchdir and mkdir
2017-08-23 04:05:31 +02:00
Giacomo Tesio
4de95c9bc0
libposix: make AT_FDCWD value configurable
2017-08-23 02:57:41 +02:00
Giacomo Tesio
61c4849bd7
libposix: add POSIX_chmod and POSIX_fchmodat to posix.h
2017-08-23 02:05:34 +02:00
Giacomo Tesio
004dd6bff1
libposix: specify PosixOpenTranslator's behaviour on various flags
2017-08-22 02:12:26 +02:00
Giacomo Tesio
9947978c05
libposix: implemented libposix_getdents
2017-08-22 01:42:33 +02:00
Giacomo Tesio
f7c3a41b11
libposix: drafted getdents
2017-08-21 01:05:40 +02:00
Giacomo Tesio
3916b222b5
libposix: fix typo
2017-08-21 00:52:57 +02:00
Giacomo Tesio
ea6b68588c
libposix: implemented getcwd, getlogin, getlogin_r, getpass, pread and pwrite
2017-08-21 00:20:12 +02:00
Giacomo Tesio
6ce619a2e0
libc: sleep's argument must be unsigned
2017-08-16 00:58:21 +02:00
Giacomo Tesio
93dde48355
kernel: deep refactoring and cleanup
...
This large commit address several issues
- removed 386 directory: Jehanne is 64bit only
- simplified kernel options management
- rewritten boot process
- ported memory related stuff from 9front's 9/pc64
- removed devacpi
- removed old code
- deep refactor of awake syscall
- removed MCACHE support for mount
- fix libc's setjmp/longjmp
2017-08-11 03:18:32 +02:00
Giacomo Tesio
c13d386ab5
libaml: import 9front's improvements
2017-07-21 01:34:34 +02:00
Giacomo Tesio
d1e285f721
libposix: honor SIG_IGN by doing nothing (DRAFT)
2017-05-29 02:04:48 +02:00
Giacomo Tesio
40ccb89835
libc: simplify Waitmsg
2017-05-26 01:55:09 +02:00
Giacomo Tesio
e0610f6b71
libposix: drafted SIGCHLD management
2017-05-23 00:27:50 +02:00
Giacomo Tesio
79f8204766
kern: move tsemaquire to userspace (given a generalized awake)
2017-05-12 11:13:19 +02:00
Giacomo Tesio
da0381a213
libposix: big refactor of signal handling
2017-05-05 19:01:18 +02:00
Giacomo Tesio
bd5063666f
libposix: introduce POSIX_signal_execute and PosixSignalDisposition enum
2017-05-03 01:14:53 +02:00
Giacomo Tesio
cf974abe0e
libposix: (almost working) waitpid
2017-05-02 00:57:18 +02:00
Giacomo Tesio
8c33c921b4
libposix: draft waitpid (still broken)
2017-05-01 23:57:05 +02:00
Giacomo Tesio
14934ee51f
libposix: sleep and pipe
2017-04-30 16:49:50 +02:00
Giacomo Tesio
c2204d83a5
libposix: getppid
2017-04-22 00:40:39 +02:00
Giacomo Tesio
a1b4085b7b
libc: keep __libc_init weak definition private
2017-04-21 23:58:06 +02:00