Commit Graph

94 Commits

Author SHA1 Message Date
16590dbb02
ports: Avoid using two separate directories for port packages
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-08 17:43:27 +02:00
49662b6069
tools: Calculate the needed fs size dynamically 2023-08-08 15:43:20 +02:00
cd9219df52
tools: Install kernel API headers into /usr/include/moon 2023-08-02 11:56:00 +02:00
2e2b87b714
ports+tools: Add bc port
All checks were successful
continuous-integration/drone/push Build is passing
It segfaults when writing "about", but oh well...
2023-07-24 19:14:22 +02:00
c70790bf62
ports: Add some defaults for CMake projects as well
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-24 18:50:51 +02:00
9a00b29304
ports: Basic ports system + nasm port
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-24 17:07:49 +02:00
01359af288
tools: Make the Ext2 partition bigger (32M)
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-22 16:11:34 +02:00
759fb4fe0e
tools: Make replace-stdint.sh replace types only if they're followed by a space
All checks were successful
continuous-integration/drone/push Build is passing
Otherwise, size_to_read -> usizeo_read.
2023-07-22 11:59:41 +02:00
098109f16b
tools: Make sure formatting scripts cover all sources 2023-07-22 11:59:02 +02:00
0d924f89d3
tools: Avoid making the tests interfere with the main build directory
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-21 14:49:59 +02:00
c24a261233
tools: Do not use KVM when it's not supported
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-21 14:17:14 +02:00
cd6bf745a7
tests+kernel+init: Run tests automatically in a headless way
Some checks failed
continuous-integration/drone/push Build is failing
2023-07-21 14:09:37 +02:00
15199a2366
libluna+libc: Implement memchr() and strstr()
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-10 15:30:05 +02:00
16b0531d42
kernel+apps+base+tools: Use Ext2 for the root partition file system
All checks were successful
continuous-integration/drone/push Build is passing
init is now split into two parts: preinit, which lives in the initrd and prepares the root file system for init,
and the actual /usr/bin/init, which lives in the root partition and starts services and reaps zombies.

The kernel now looks for /bin/preinit instead of /bin/init as the executable for the init process.

All configuration files in initrd/etc have been moved to base/etc. (The plan is to have only moon and preinit in the initrd.)

Since the current Ext2 implementation is read-only (and it's on a CDROM so it would be read-only anyways),
/home/selene is a tmpfs (as well as /tmp), to allow for a writable home directory.

The system is slower now, but that's to expect since the Ext2 code doesn't use caching and the ATA code still uses PIO.
2023-07-10 13:05:06 +02:00
491416ddaf
tools: Bump up the ext2 filesystem size 2023-06-25 20:35:39 +02:00
d7486326bf
tools: Generate the Ext2 filesystem using genext2fs instead
mkbootimg's filenames have some kind of bug...
2023-06-25 20:35:37 +02:00
e7d482e78a
kernel+init: Add a VFS mount system and auto-populate the devfs 2023-05-17 19:40:37 +02:00
35b1b36599
tools+tests: Add a system to run all tests at once automatically
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-07 23:04:24 +02:00
77560bbc3e
kernel+tools: Allow loading files with different owners + add a more dynamic install script
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-06 12:11:35 +02:00
2f2b45758e
tools: Update some of the lint scripts with a better system to find source files 2023-04-23 10:53:34 +02:00
7b8260f3f6
all: Enable/disable debug symbols/optimization in COMMON_FLAGS 2023-04-07 12:07:08 +02:00
a164dcc160
libos: Add libos + very basic ArgumentParser
All checks were successful
continuous-integration/drone/push Build is passing
libluna but for stuff that interests only userspace, like an argument parser or files or stuff like that.
2023-03-29 18:27:02 +02:00
0c07e66c4f
Update all files from luna/ paths to libluna/
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-11 10:38:34 +01:00
6512e9549e
tools: Make replace-stdint.sh search in libluna/ instead of luna/ 2023-03-10 21:30:59 +01:00
293be2c75a
tools: Use libluna instead of luna in run-clang-format.sh 2023-03-07 21:08:05 +01:00
77887eed80
luna -> libluna
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-27 15:22:39 +01:00
8098ff0616
tools: Avoid rebuilding libc and friends every single time
All checks were successful
continuous-integration/drone/push Build is passing
We do this by preserving timestamps when copying headers so CMake doesn't think they have changed.
2023-01-25 21:16:20 +01:00
a6974b605e
tools+CMake: Prefix all environment variables with LUNA_
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-21 22:44:16 +01:00
73ddd0b0c5
tools: Be more arch-agnostic
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-11 19:14:35 +01:00
0c5a84f932
toolchain: Update to binutils 2.39
Some checks failed
continuous-integration/drone/push Build is failing
CI will fail, it's normal. Wait for me to build a new toolchain for it.
2023-01-07 21:23:01 +01:00
8838e2cf22
Bring back the OS-Specific Toolchain on restart :^)
Some checks failed
continuous-integration/drone/push Build is failing
2023-01-06 17:35:07 +01:00
f1923ce5bd
Install headers before compilation
Some checks failed
continuous-integration/drone/push Build is failing
2023-01-06 13:35:57 +01:00
129e3c434a
Switch to C for userspace, with a very bare-bones libc!!
Some checks failed
continuous-integration/drone/push Build is failing
2023-01-06 13:31:14 +01:00
34e6c05cef
Fix it up a bit more
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-23 10:48:00 +01:00
913b13b380
Fix up the header install script
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-23 10:46:44 +01:00
4fdd1d57f5 Make build-debug.sh also add debug symbols to luna 2022-12-07 16:11:59 +00:00
f767d98037
Please work 2022-12-05 19:07:01 +01:00
999d90d588
Update check-formatting.sh 2022-12-05 19:02:23 +01:00
c7ab6bc2d3
Reorganize the luna/ directory so that headers aren't in the top level include path 2022-12-04 12:42:43 +01:00
a0c4bbe6f3 Make sure to clean CMake cache when rebuilding 2022-12-04 11:55:47 +01:00
5d9c50eb12 Make build-debug.sh work 2022-12-04 10:27:25 +01:00
bbc5470ae4 Update symlink location 2022-12-03 17:39:22 +01:00
e440df58c9 cleanup: remove unused scripts 2022-12-03 17:37:12 +01:00
505dde35ac Make GDB source .gdbconf relative to the root directory 2022-12-03 17:34:36 +01:00
dcd5a82073 Make GDB use the correct kernel file 2022-12-03 17:34:14 +01:00
88681bdc74 Default to ninja 2022-11-23 19:01:28 +01:00
3b2dc5db55 PlacementNew.h: Use Types.h 2022-11-23 17:22:16 +01:00
46cad14052 Print "All files OK" when all files are using correct types 2022-11-20 18:57:22 +01:00
f982152caa Add a script to manually check files with stdint.h types 2022-11-20 18:54:39 +01:00
1f2901d41a Add convenience script to replace stdint.h types with Types.h types 2022-11-20 18:28:46 +01:00