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
[GBM] Unbreak on FreeBSD #17008
[GBM] Unbreak on FreeBSD #17008
Conversation
FreeBSD does not have epoll() but there is a kqueue-based shim for it called epoll-shim. This allows the GBM platform to build on FreeBSD.
// epoll_create1() from libepoll-shim always fails with 0 and | ||
// only supports EPOLL_CLOEXEC, so let's use that to make Kodi/GBM | ||
// runnable on FreeBSD. | ||
int epollFd = epoll_create1(EPOLL_CLOEXEC); |
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.
Can you just make this the default and remove the ifdeffing? I'll give it a go on linux but I don't see why it wouldn't work.
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.
Ok, done.
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.
So was it fine with EPOLL_CLOEXEC on Linux too?
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.
Seems fine to me. I just tested it. Sorry for the delay. I just moved houses and finally set my workstation up again.
epoll_create1() from libepoll-shim always fails with 0 and only supports EPOLL_CLOEXEC, so let's use that to make Kodi/GBM runnable on FreeBSD.
jenkins build this please |
Thanks for testing and approving, @lrusak. What needs to happen next to get it merged? |
jenkins build this please (something went wrong) |
@fritsch It seems like something went wrong again with Jenkins? |
jenkins build this please |
Looks like the build was fine. |
Ping? |
Thanks for fixing this and sorry it took so long to merge! Hopefully in the future we can be more accommodating of FreeBSD changes now that our jenkins is building all green again 👍 |
[GBM] Unbreak on FreeBSD
Description
[1] https://github.com/jiixyj/epoll-shim/
[2] https://github.com/jiixyj/epoll-shim/blob/9185474a4b382823cfaeaeaabfa75b277890c9e7/src/epoll.c#L97
How Has This Been Tested?
Build and run tested on FreeBSD. The patches are part of the kodi-devel package on FreeBSD.
Types of change
Checklist: