-
Notifications
You must be signed in to change notification settings - Fork 745
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
Fix -no-pie option spelling #860
Conversation
Certain file managers need this figure out that the executable is actually executable. The problem is further complicated by meson being uncooperative and not implementing its own -Db_pie=false correctly.
Upd: CI suggests that |
According to the clang docs -no-pie is correct. I guess on mac it is -no_pie instead. Clang on non-mac systems isn't something we often test, so that's why we wouldn't have noticed it was broken. Regarding the file managers, we don't control those, you are free to try to get the bugs fixed upsteam in those. It happens in gnome-based file managers like nautilus and caja, they will refuse to treat executables compiled with -pie as actual executables. |
I've been considering moving this and other very specific and, in some cases, hacky options from the meson config over to the ghactions build script, as they exist solely to support our very specific use case of building a binary with the fewest possible environmental dependencies. You're not meant to use these options either as a contributor during development or as a maintainer when packaging the game for your distro. In the latter case, it's actually very likely that some of them will only get in your way. |
How is a8d2b26? |
Works for me, however there are unrelated build issues. ENOTIME right now to create proper pull requests/issues, so will mentione them here:
|
Cool, thanks for checking.
Everything we target has
That's because I left that part to when I'd get around to working on #835. |
This is problematic as per a comment on The-Powder-Toy#860, and everything we target has <cstdint> now.
This is problematic as per a comment on The-Powder-Toy#860, and everything we target has <cstdint> now.
Closing as seemingly resolved. The commit LBPHacker gave above was already merged (thus the reason this PR has conflicts), as were some other mentioned fixes. |
No idea where
-no_pie
comes from, butlld
,gold
andclang
all accept-no-pie
. For the record, I think that this whole hack should be removed - the commits says it was created for "certain file managers", but shouldn't these file managers be fixed instead, as any installation where executables built with default compiler arguments are not recognized is executables is terminally broken. There's definitely no place for fixes for third party file managers in TPT code.