Commit Graph

38 Commits

Author SHA1 Message Date
d07ee6b951 No longer build with -m32 by default
This is currently correct, since only i386 is supported. To
cross-compile from amd64, it is still possible to use CC="gcc -m32".
2018-03-27 00:02:17 +02:00
e7113a8b49 Build libuKernel with -fPIC by default 2018-03-27 00:01:17 +02:00
28e7fcd905 Register uKernel 2018-03-27 00:00:24 +02:00
dcf2dc2e67 Build a userland version of the kernel for tests 2018-03-23 14:03:06 +01:00
5e6d68106b Move libuKernel to a subdirectory 2018-03-23 02:43:26 +01:00
6bd4ff4773 Also link with crt{begin,end}.o 2018-03-23 02:34:57 +01:00
c5addb33f4 Add support for the global constructors 2018-03-23 02:28:54 +01:00
195bd77aa6 Register more object types 2018-03-23 02:07:22 +01:00
008fa95b52 Import missing file 2018-03-22 00:47:45 +01:00
638a448eb3 Let qemu create a VGA console 2018-03-22 00:36:23 +01:00
1ff7ed8a50 Also link to the GitHub mirror for configure(1) 2018-03-22 00:36:12 +01:00
9a2cf8af5c Introduce libuKernel 2018-03-21 22:45:11 +01:00
22b23c8521 Register some dependencies 2018-03-21 03:17:51 +01:00
3a0315f9aa Implement abort() with exit() 2018-03-21 03:15:28 +01:00
2d55e05bfc Add support for stack-smashing protection (SSP) 2018-03-21 03:04:45 +01:00
ad9d9babd1 Always expose <stddef.h> from <string.h>
This is closer to a typical userland's behaviour.
2018-03-21 02:59:34 +01:00
15e2dc18d4 Add uint32_t 2018-03-21 02:59:11 +01:00
c9245359ef Add memset() 2018-03-21 02:30:12 +01:00
532ac8f131 Implement screen scrolling (untested) 2018-03-21 02:28:45 +01:00
1a773d7ab2 Print a message while booting 2018-03-21 02:08:31 +01:00
00ef683c6b Move definitions into vga.h 2018-03-21 01:59:28 +01:00
5678808c6f Introduce <stddef.h> and <stdint.h> 2018-03-21 01:57:33 +01:00
e4b9b80ada Produce a multiboot-compliant kernel 2018-03-20 03:48:00 +01:00
3403f067df Code cleanup 2018-03-20 03:41:35 +01:00
8adfbfbabd Code cleanup 2018-03-20 03:35:45 +01:00
9d1ba0a978 Clear the VGA console upon initialization 2018-03-20 03:32:31 +01:00
0f259d551b Move the console code to a separate driver 2018-03-20 03:20:19 +01:00
aa0d46cf53 Register "grub.log" 2018-03-20 03:11:56 +01:00
214ebc2fae Also ship a README file 2018-03-20 03:10:51 +01:00
f6d38bf5fa Force the kernel to be built in 32-bits mode
Focus on the 32-bits architecture for the moment.
2018-03-20 02:58:33 +01:00
74229f1d5c Complete and enable the multiboot compliance test 2018-03-20 02:44:34 +01:00
3fcb8649e9 Add licensing information 2018-03-20 02:39:35 +01:00
527a5e783f Use CFLAGS in ASFLAGS when using cc(1) as as(1) 2018-03-20 02:38:36 +01:00
73703b40d2 Import the 2-clause BSD license 2018-03-19 01:02:43 +01:00
ee99c6d0ad Add copyright information 2018-03-19 01:02:26 +01:00
8150cd7366 Import basic test for Multiboot conformance 2018-03-19 00:59:43 +01:00
c289b6e529 Register some targets and intermediate files 2018-03-19 00:40:56 +01:00
972e977ef7 Initial import
This is directly inspired by https://wiki.osdev.org/Bare_Bones.
2018-03-19 00:40:47 +01:00