Go to file
dzwdz 7f6686177a libc: better curl compat
I can now actually curl an entire page :^)
2024-02-20 20:09:06 +01:00
contrib build: rework how sysroots work 2023-08-17 00:50:52 +02:00
ports ports: curl :^) 2023-12-25 18:36:02 +01:00
src libc: better curl compat 2024-02-20 20:09:06 +01:00
sysroot user/libc: reorganize net stuff, basic hosts-only gethostbyname() 2023-12-25 20:12:44 +01:00
toolchain libc: get as+ld to work 2023-08-25 14:06:00 +02:00
.gdbinit fix gdb support 2022-10-02 18:47:51 +02:00
.gitignore build: generate the Makefile in python 2023-08-16 14:47:32 +02:00
.gitmodules reorganization: first steps 2023-08-14 18:51:07 +02:00
boot cmd/init: remove /initctl, use intr instead 2023-09-13 00:05:06 +02:00
compile_flags.txt kernel: delay freeing reaped processes, slightly more strict states 2023-01-19 23:27:12 +01:00
configure build: support single file commands 2023-09-22 23:42:30 +02:00
readme.md libc: get most of binutils to compile 2023-08-24 19:10:35 +02:00

readme.md

camellia

an experimental, work-in-progress, microkernel based on some of my ideas for privilege separation.

third party code used

  • src/libc/elf.h from adachristine
  • src/libc/vendor/getopt from skeeto
  • src/libc/vendor/dlmalloc from Doug Lea
  • src/libc/vendor/sortix/ has code from Sortix
  • src/libk/include/bits/limits.h based on heatd's code
  • src/kernel/arch/amd64/3rdparty/multiboot2.h from the FSF

build dependencies

# on debian
# TODO not yet verified on a clean install
apt-get install gcc git sparse # basics
apt-get install grub-pc-bin xorriso mtools # for the .iso
apt-get install g++ libgmp-dev lbmpfr-dev libmpc-dev # for the toolchain
apt-get install qemu-system-x86

repo organization

src/
	bootstrap/	first userland program ran by the kernel; embeds the initrd
	cmd/	userland programs
	kernel/
		arch/amd64/
		sysroot/
			dummy sysroot to get gcc to behave
	libc/
	libk/	libc functions used by the kernel
cache/	download cache