-
-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Meta+Everywhere: Fix OpenBSD support and add minor FreeBSD improvements #6589
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
base: master
Are you sure you want to change the base?
Meta+Everywhere: Fix OpenBSD support and add minor FreeBSD improvements #6589
Conversation
It's version getting pinned was missed when the dependency was added.
Other dependency have their port version pinned already but not this one.
I added the `bsd` platform expression recently in upstream vcpkg and this makes the file just a little bit cleaner and makes the work for supporting future BSD systems simpler.
4cc4bbc to
1673ec9
Compare
Meta/Lagom/Tools/CodeGenerators/LibWeb/GenerateWindowOrWorkerInterfaces.cpp
Outdated
Show resolved
Hide resolved
1673ec9 to
c891e8c
Compare
| @@ -0,0 +1,28 @@ | |||
| diff --git a/BUILD.gn b/BUILD.gn | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Question - how does this compare with #6599? Is this commit meant to be a full version update to match upstream's skia port, or would we be partway in between versions?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I ended up dropping that patch, as it was only some changes from the upstream update, that PR is a cleaner solution to this and does the same thing when it comes to BSD support. I will mark the PR as draft until that gets merged.
Meta/Lagom/Tools/CodeGenerators/LibWeb/GenerateWindowOrWorkerInterfaces.cpp
Show resolved
Hide resolved
c891e8c to
9f538c6
Compare
|
Your pull request has conflicts that need to be resolved before it can be reviewed and merged. Make sure to rebase your branch on top of the latest |
This will be needed later for OpenBSD specific code. It also does break NetBSD and DragonFly on purpose as those systems are nowhere near close to building right now with this script and it's better to clearly state they are unsupported.
The bug doesn't only affect FreeBSD but the others too.
It turns out the problem present on FreeBSD is also present on OpenBSD.
This patch is more complete and closer to how BSD ports of chromium do it. It also contains one tiny fix to the WebKitCompilerFlags file.
This generator uses so much memory that it crosses the default OpenBSD limit.
OpenBSD really doesn't have a better way to get the executable path than guessing it based on argv[0] and the PATH environment variable. I also found that this is what many other projects with OpenBSD support do. While this method is not always gonna return the correct value this is enough to get Ladybird running.
Just as on FreeBSD, OpenBSD also has libdrm and DMA-BUF. This gets WebGL working on OpenBSD.
As noted in the error messages the cmake port on OpenBSD has some quirks (not creating namelinks) that break vcpkg. The old pkg-config is also just a simple perl script which is too primitive to work in all cases when using complicated systems like vcpkg.
9f538c6 to
ca7da75
Compare
Depends on #6599