Reorganized source tree
This commit is contained in:
@@ -1,7 +1,19 @@
|
||||
SUBDIRS = interrupts mmgr
|
||||
noinst_PROGRAMS = quark-kernel
|
||||
quark_kernel_SOURCES = quarkkernel.cpp elf.cpp tty.cpp systeminfo.cpp util.cpp entry.S pio.S multiboot2header.S
|
||||
quark_kernel_LDADD = -lgcc mmgr/libmmgr.a interrupts/libinterrupts.a
|
||||
quark_kernel_CPPFLAGS = -ffreestanding -O0 -Wall -fno-exceptions -fno-rtti -ggdb
|
||||
quark_kernel_LDFLAGS = -T linker.ld -nostdlib
|
||||
quark_kernel_DEPENDENCIES = linker.ld
|
||||
quark_kernel_SOURCES = quarkkernel.cpp elf.cpp tty.cpp systeminfo.cpp util.cpp memorymap.cpp buddyallocator.cpp
|
||||
quark_kernel_LDADD = -lgcc
|
||||
quark_kernel_CPPFLAGS = -ffreestanding -mgeneral-regs-only -O0 -Wall -fno-exceptions -fno-rtti -ggdb
|
||||
quark_kernel_LDFLAGS = -nostdlib
|
||||
|
||||
if x86
|
||||
quark_kernel_SOURCES += x86/pagetableentry.cpp \
|
||||
x86/mmap.cpp \
|
||||
x86/interrupts.cpp \
|
||||
x86/inthandlers.cpp \
|
||||
x86/interruptdescriptor.cpp \
|
||||
x86/idt.S \
|
||||
x86/entry.S \
|
||||
x86/pio.S \
|
||||
x86/multiboot2header.S
|
||||
quark_kernel_LDFLAGS += -T x86/linker.ld
|
||||
quark_kernel_DEPENDENCIES = x86/linker.ld
|
||||
endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#include "buddyallocator.hpp"
|
||||
#include "types.hpp"
|
||||
#include "systypes.hpp"
|
||||
#include "memorymap.hpp"
|
||||
|
||||
#define roundUp(n, m) ((n % m == 0) ? n : (n + m - (n % m)))
|
||||
@@ -1,6 +0,0 @@
|
||||
noinst_LIBRARIES = libinterrupts.a
|
||||
libinterrupts_a_CPPFLAGS = -ffreestanding -mgeneral-regs-only -O0 -Wall -fno-exceptions -fno-rtti -ggdb
|
||||
|
||||
if x86
|
||||
libinterrupts_a_SOURCES = x86/interrupts.cpp x86/inthandlers.cpp x86/interruptdescriptor.cpp x86/idt.S
|
||||
endif
|
||||
@@ -4,7 +4,7 @@
|
||||
#include <stdint.h>
|
||||
#include <stddef.h>
|
||||
|
||||
#include "types.hpp"
|
||||
#include "systypes.hpp"
|
||||
|
||||
namespace kernel
|
||||
{
|
||||
@@ -1,7 +0,0 @@
|
||||
noinst_LIBRARIES = libmmgr.a
|
||||
libmmgr_a_SOURCES = memorymap.cpp buddyallocator.cpp
|
||||
libmmgr_a_CPPFLAGS = -ffreestanding -O0 -Wall -fno-exceptions -fno-rtti -ggdb
|
||||
|
||||
if x86
|
||||
libmmgr_a_SOURCES += x86/pagetableentry.cpp x86/mmap.cpp
|
||||
endif
|
||||
@@ -1,15 +0,0 @@
|
||||
#ifndef MEM_TYPES_H
|
||||
#define MEM_TYPES_H
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stddef.h>
|
||||
|
||||
#if defined __i386__ || __arm__
|
||||
typedef uint32_t physaddr_t;
|
||||
#elif defined __x86_64__ || __aarch64__
|
||||
typedef uint64_t physaddr_t;
|
||||
#else
|
||||
typedef uint64_t physaddr_t;
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -2,7 +2,7 @@
|
||||
#define __MEMORYALLOCATOR_H_
|
||||
|
||||
#include <stddef.h>
|
||||
#include "types.hpp"
|
||||
#include "systypes.hpp"
|
||||
|
||||
namespace kernel
|
||||
{
|
||||
@@ -3,8 +3,8 @@
|
||||
|
||||
#include "systypes.hpp"
|
||||
#include "systeminfo.hpp"
|
||||
#include "mmgr/mmgr.hpp"
|
||||
#include "pio.hpp"
|
||||
#include "mmgr.hpp"
|
||||
#include "x86/pio.hpp"
|
||||
#include "tty.hpp"
|
||||
#include "util.hpp"
|
||||
#include "config.h"
|
||||
|
||||
@@ -1,6 +1,15 @@
|
||||
#ifndef SYSTYPES_H
|
||||
#define SYSTYPES_H
|
||||
|
||||
#include "mmgr/types.hpp"
|
||||
#include <stdint.h>
|
||||
#include <stddef.h>
|
||||
|
||||
#if defined __i386__ || __arm__
|
||||
typedef uint32_t physaddr_t;
|
||||
#elif defined __x86_64__ || __aarch64__
|
||||
typedef uint64_t physaddr_t;
|
||||
#else
|
||||
typedef uint64_t physaddr_t;
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
.section .multiboot
|
||||
.include "multiboot2header.S"
|
||||
.include "x86/multiboot2header.S"
|
||||
|
||||
.section .rodata
|
||||
|
||||
@@ -17,11 +17,6 @@ gdt:
|
||||
gdt_info:
|
||||
.short 23
|
||||
.long gdt
|
||||
|
||||
.align 16
|
||||
idt_info:
|
||||
.short idt_end - idt - 1
|
||||
.long idt
|
||||
|
||||
.section .bss
|
||||
|
||||
@@ -50,11 +45,6 @@ system_info:
|
||||
.global memory_map
|
||||
memory_map:
|
||||
.skip 16 * 16
|
||||
|
||||
.global idt
|
||||
idt:
|
||||
.skip 8 * 256
|
||||
idt_end:
|
||||
|
||||
.section .text
|
||||
.global _start
|
||||
@@ -234,7 +224,6 @@ s_end:
|
||||
# Initialize stack
|
||||
mov $stackTop, %esp
|
||||
lgdt gdt_info
|
||||
lidt idt_info
|
||||
|
||||
jmp $8, $.ldcs
|
||||
.ldcs:
|
||||
@@ -2,7 +2,7 @@
|
||||
#define SRC_PAGETABLEENTRY_H_
|
||||
|
||||
#include <stdint.h>
|
||||
#include "../types.hpp"
|
||||
#include "../systypes.hpp"
|
||||
|
||||
namespace kernel {
|
||||
|
||||
Reference in New Issue
Block a user