Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: grub2
Fetching contributors…

Cannot retrieve contributors at this time

file 43 lines (36 sloc) 1.265 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
module kernel.config;

// Debugging options

// Setting DEBUG_ALL to true will cause *ALL* debug
// flags to turn on. If you only want to see some
// debug messages, turn DEBUG_ALL off, and only
// turn on the debug messages you wish to see.
const auto DEBUG_ALL = false;

// Individual debug options
const auto DEBUG_PAGING = false;
const auto DEBUG_PAGEFAULTS = false;
const auto DEBUG_PMEM = false;
const auto DEBUG_INTERRUPTS = false;
const auto DEBUG_MPTABLE = false;
const auto DEBUG_LAPIC = false;
const auto DEBUG_IOAPIC = false;
const auto DEBUG_APENTRY = false;
const auto DEBUG_KBD = false;
const auto DEBUG_SCHEDULER = false;

struct Config {
static:

// Scheduler Implementation
// Options:
// UniprocessScheduler
// RoundRobinScheduler
// const char[] SchedulerImplementation = "UniprocessScheduler";
const char[] SchedulerImplementation = "RoundRobinScheduler";

// ReadOption!("SchedulerImplementation")
// Returns the value of a configuration option
template ReadOption(char[] Option) {
mixin("const char[] ReadOption = (Config." ~ Option ~ ".stringof)[1..$-1];");
}

// For implementing config options as aliases
template Alias(char[] Option) {
const char[] Alias = "alias " ~ ReadOption!(Option) ~ " " ~ Option ~ ";";
}
}
Something went wrong with that request. Please try again.