feat: Changing the build system to cmake #1

Closed
opened 2024-04-29 17:28:17 +00:00 by KevinAlavik · 4 comments
KevinAlavik commented 2024-04-29 17:28:17 +00:00 (Migrated from github.com)

Switching to cmake would be a more "proper" build system. This allows the user to easily change custom "targets" aka toolchain files (https://cmake.org/cmake/help/latest/envvar/CMAKE_TOOLCHAIN_FILE.html). And also using ninja (https://ninja-build.org/) would be a great idea too since it’s faster then make. Also a proper system to configure aurix and build (using like bash scripts). This is what I do in leaf and is totally a personal preference but I think it’s wise to switch since it’s easier to scale the project. If you need any help I would be more then happy to help!

Switching to cmake would be a more "proper" build system. This allows the user to easily change custom "targets" aka toolchain files (https://cmake.org/cmake/help/latest/envvar/CMAKE_TOOLCHAIN_FILE.html). And also using ninja (https://ninja-build.org/) would be a great idea too since it’s faster then make. Also a proper system to configure aurix and build (using like bash scripts). This is what I do in leaf and is totally a personal preference but I think it’s wise to switch since it’s easier to scale the project. If you need any help I would be more then happy to help!
cre0z commented 2024-04-29 18:59:01 +00:00 (Migrated from github.com)

I'm still a bit worried about switching to CMake fully - especially making sure the entire system is easily expandable for other architectures and easy to understand. I'll probably make a new branch to do some experiments with CMake.

I'm still a bit worried about switching to CMake fully - especially making sure the entire system is easily expandable for other architectures and easy to understand. I'll probably make a new branch to do some experiments with CMake.
KevinAlavik commented 2024-04-30 04:35:50 +00:00 (Migrated from github.com)

Yep i fully understand but i honestly think cmake syntax is easier to understand then make. And for other architectures you could do as i said in the first comment. Use toolchain files. In leaf i also have like a gen-$bootloader.sh script to generate the final image. So the configure and build system uses the cmake to configure and ninja to build then makes a image with a predefined script based on arch and bootloader. And i think a new branch would be wise. I would love to help

Yep i fully understand but i honestly think cmake syntax is easier to understand then make. And for other architectures you could do as i said in the first comment. Use toolchain files. In leaf i also have like a gen-$bootloader.sh script to generate the final image. So the configure and build system uses the cmake to configure and ninja to build then makes a image with a predefined script based on arch and bootloader. And i think a new branch would be wise. I would love to help
cre0z commented 2024-08-02 22:19:50 +00:00 (Migrated from github.com)

Closing for settling with Make.

Closing for settling with Make.
KevinAlavik commented 2024-08-03 18:53:01 +00:00 (Migrated from github.com)

@schkwve fair enough.

@schkwve fair enough.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Piraterna/aurix#1
No description provided.