com output option

This commit is contained in:
nakst 2021-09-22 13:43:37 +01:00
parent 22185bfe22
commit 34f86b3f91
2 changed files with 5 additions and 2 deletions

View File

@ -285,6 +285,7 @@ Option options[] = {
{ "Flag.VGA_TEXT_MODE", OPTION_TYPE_BOOL, { .b = false } },
{ "Flag.CHECK_FOR_NOT_RESPONDING", OPTION_TYPE_BOOL, { .b = true } },
{ "Flag._ALWAYS_USE_VBE", OPTION_TYPE_BOOL, { .b = false } },
{ "Flag.COM_OUTPUT", OPTION_TYPE_BOOL, { .b = true } },
{ "Dependency.ACPICA", OPTION_TYPE_BOOL, { .b = true } },
{ "Dependency.stb_image", OPTION_TYPE_BOOL, { .b = true } },
{ "Dependency.stb_image_write", OPTION_TYPE_BOOL, { .b = true } },

View File

@ -150,6 +150,7 @@ char apiLinkFlags1[4096] = " -T util/linker/api64.ld -ffreestanding -nostdlib -g
char apiLinkFlags2[4096] = " -lgcc ";
char apiLinkFlags3[4096] = " -Wl,--end-group -Lroot/Applications/POSIX/lib ";
char kernelLinkFlags[4096] = " -ffreestanding -nostdlib -lgcc -g -z max-page-size=0x1000 ";
char kernelAssemblyFlags[4096] = " -felf64 -Fdwarf ";
// Specific configuration options:
@ -1046,8 +1047,7 @@ void LinkKernel() {
}
void BuildKernel(Application *application) {
ExecuteForApp(application, toolchainNasm, "-MD", "bin/kernel2.d", "-D", "COM_OUTPUT",
"-felf64", "kernel/x86_64.s", "-o", "bin/kernel_x86_64.o", "-Fdwarf");
ExecuteForApp(application, toolchainNasm, "-MD", "bin/kernel2.d", "kernel/x86_64.s", "-o", "bin/kernel_x86_64.o", ArgString(kernelAssemblyFlags));
ExecuteForApp(application, toolchainCXX, "-MD", "-c", "kernel/main.cpp", "-o", "bin/kernel.o",
ArgString(kernelCompileFlags), ArgString(cppCompileFlags), ArgString(commonCompileFlags));
}
@ -1300,6 +1300,8 @@ int main(int argc, char **argv) {
convertFonts = false;
} else if (0 == strcmp(s.key, "Flag._ALWAYS_USE_VBE")) {
bootUseVBE = !!atoi(s.value);
} else if (0 == strcmp(s.key, "Flag.COM_OUTPUT") && atoi(s.value)) {
strcat(kernelAssemblyFlags, " -DCOM_OUTPUT ");
} else if (0 == memcmp(s.key, "General.", 8)) {
EsINIState s2 = s;
s2.key += 8, s2.keyBytes -= 8;