You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
977 B
Plaintext

# the set keyword sets a property of the current scope
# (i.e. the entire build script, a target, etc.)
set RUSTC_EXE = "rustc";
set ASM_EXE = "clang";
set CC_EXE = "clang";
set LINK_EXE = "ld.lld";
set BUILD_PREFIX = "build";
# a target is a single component.
# targets can depend on other targets.
target kern {
owo = 1 + 2 * 3 * 4 - 5;
# the type keyword defines whether the target is supposed to be
# compiled into an executable binary (exe) or a library (lib).
type exe;
# the depend keyword adds one or more dependencies to the target.
depend [
libk,
arch,
];
# the source keyword adds one or more source files to the target.
# the file extension determines what language/compiler to use.
source "kern/lib.rs";
}
target libk {
print("hello, world");
type lib;
depend arch;
source "libk/lib.rs";
}
target arch {
type lib;
source [
"arch/lib.rs",
"arch/**.nasm",
];
}