From e1f7024dba7e50ecce9bea7c7d96bff9fc41ad2a Mon Sep 17 00:00:00 2001 From: 4lDO2 <4lDO2@protonmail.com> Date: Mon, 18 Jul 2022 11:52:15 +0200 Subject: [PATCH] Add bootstrap recipe. --- recipes/bootstrap/recipe.toml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 recipes/bootstrap/recipe.toml diff --git a/recipes/bootstrap/recipe.toml b/recipes/bootstrap/recipe.toml new file mode 100644 index 000000000..9c1f730d3 --- /dev/null +++ b/recipes/bootstrap/recipe.toml @@ -0,0 +1,11 @@ +[recipe] +[build] +template = "custom" +script = """ +ARCH="$(echo "${TARGET}" | cut -d - -f1)" +nasm -o "${COOKBOOK_BUILD}/asm.o" -f elf64 "${COOKBOOK_SOURCE}/src/${ARCH}.asm" +cargo -Zbuild-std=core,alloc,compiler_builtins -Zbuild-std-features=compiler-builtins-mem rustc --target "${TARGET}" --manifest-path "${COOKBOOK_SOURCE}/Cargo.toml" --release --target-dir "${COOKBOOK_BUILD}" -- --emit obj="${COOKBOOK_BUILD}/${TARGET}/release/libbootstrap.a" +compiler_builtins=`find "${COOKBOOK_BUILD}/x86_64-unknown-redox/release/deps/" -name "*libcompiler_builtins*.rlib"` +ld -o "${COOKBOOK_STAGE}/bootstrap" --gc-sections -T "${COOKBOOK_SOURCE}/src/${ARCH}.ld" "${COOKBOOK_BUILD}/asm.o" "${COOKBOOK_BUILD}/${TARGET}/release/libbootstrap.a" "${COOKBOOK_SYSROOT}/lib/libc.a" "$compiler_builtins" +""" +dependencies = ["relibc"] -- GitLab