Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Port build system to meson and clean up directories #8

Draft
wants to merge 2 commits into
base: iOS15
Choose a base branch
from

Conversation

JustSoup312
Copy link

@JustSoup312 JustSoup312 commented Feb 20, 2025

Meson has a lot of nice-to-haves that make doesn't. It's like a chisel to a hammer. Porting the build system to a more fine-tunable system (meson) will make it easier to support building on other platforms.

This MR also changes the directory structure to be easier to follow for new contributors.

This MR is not ready yet as it has linking issues with assembly files and uses ld.lld on Linux instead of ld64.lld. Also, all directories are not ported to meson yet.

TO TEST THIS MR:

meson setup builddir --cross-file darwin-cross.toml
meson compile -C builddir

@JustSoup312 JustSoup312 changed the title Port build system to meson Port build system to meson and clean up directories Feb 20, 2025
dependencies : [newlib],
include_directories : inc,
c_args : [
'-Os',

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can set project default_option to optimization=s

'--target=arm64-apple-ios12.0',
'-std=gnu17',
'-moutline',
'-flto',

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

b_lto=true ?

c_args : [
'-Os',
'--target=arm64-apple-ios12.0',
'-std=gnu17',

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

c_std=gnu17

@asdfugil
Copy link
Member

asdfugil commented Feb 20, 2025

modifying the source tree structure would make it difficult to merge checkra1n/PongoOS, also the bootm command is in checkra1n/PongoOS iOS15 branch already

@@ -0,0 +1,4 @@
pongo_drivers_recfg_sources_c = [
'src/pongo/drivers/recfg/recfg.c',
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider using files() function and skipping the initial directory path component within the sources list.

Renaming and moving directories around would be so much easier by not having to change all the build files in a subtree.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants