BuildSystem: Allow running custom version of cmake

You can now set the environment variable CMAKE_COMMAND to use custom
cmake version.
This commit is contained in:
Bananymous 2023-12-27 12:55:32 +02:00
parent 87272f0cd7
commit af80bad87a
2 changed files with 7 additions and 1 deletions

View File

@ -14,6 +14,8 @@ Each major component and library has its own subdirectory (kernel, userspace, li
There does not exist a complete list of needed packages for building. From the top of my head I can say that *cmake*, *ninja*, *make*, *grub*, *rsync* and emulator (*qemu* or *bochs*) are needed. There does not exist a complete list of needed packages for building. From the top of my head I can say that *cmake*, *ninja*, *make*, *grub*, *rsync* and emulator (*qemu* or *bochs*) are needed.
You need cmake version of atleast 2.26. If you are using cmake that is not found from PATH, you can set the CMAKE\_COMMAND environment variable to point to the correct cmake binary.
To build the toolchain for this os. You can run the following command. To build the toolchain for this os. You can run the following command.
> ***NOTE:*** The following step has to be done only once. This might take a long time since we are compiling binutils and gcc. > ***NOTE:*** The following step has to be done only once. This might take a long time since we are compiling binutils and gcc.
```sh ```sh

View File

@ -14,7 +14,7 @@ make_build_dir () {
mkdir -p $BANAN_BUILD_DIR mkdir -p $BANAN_BUILD_DIR
cd $BANAN_BUILD_DIR cd $BANAN_BUILD_DIR
if ! [[ -f "build.ninja" ]]; then if ! [[ -f "build.ninja" ]]; then
cmake --toolchain=$BANAN_TOOLCHAIN_DIR/Toolchain.txt -G Ninja $BANAN_ROOT_DIR $CMAKE_COMMAND --toolchain=$BANAN_TOOLCHAIN_DIR/Toolchain.txt -G Ninja $BANAN_ROOT_DIR
fi fi
} }
@ -66,6 +66,10 @@ if [[ $# -eq 0 ]]; then
exit 1 exit 1
fi fi
if [[ -z $CMAKE_COMMAND ]]; then
export CMAKE_COMMAND=cmake
fi
case $1 in case $1 in
toolchain) toolchain)
build_toolchain build_toolchain