-
Notifications
You must be signed in to change notification settings - Fork 5.8k
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
Make CMake options for platform-dependent plugins depend on being build for a supported platform. #17517
Conversation
@Ferroin , Please, rebase the PR. Best regards! |
a1c338e
to
e2112e4
Compare
Rebased to resolve merge conflicts. |
@Ferroin , I understand we also want to avoid installing these files on FreeBSD:
Best regards! |
e2112e4
to
6cb1661
Compare
Rebased to resolve merge conflicts. |
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.
PR is working as expected, on:
- Slackware Current
- FreeBSD 14
- Windows 11
LGTM!
6cb1661
to
7f8c063
Compare
Rebased to resolve merge conflict. |
This will allow us to use the target platform to decide what options to actually show to users.
This way users will only be able to enable plugins that will actually work on their system.
7f8c063
to
856d3d6
Compare
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 repeated these tests and everything continue working. LGTM!
…ld for a supported platform. (netdata#17517) * Move OS detection above option definitions. This will allow us to use the target platform to decide what options to actually show to users. * Make plugin options depend on the platforms that we support them on. This way users will only be able to enable plugins that will actually work on their system.
…ld for a supported platform. (netdata#17517) * Move OS detection above option definitions. This will allow us to use the target platform to decide what options to actually show to users. * Make plugin options depend on the platforms that we support them on. This way users will only be able to enable plugins that will actually work on their system.
Summary
A large number of our external data collection plugins are Linux-specific, and a handful are dependent on specific UNIX-like platforms. This PR ensures that configuration options for these plugins do not show up if we are not building for a platform they support instead of failing configuration later on or silently disabling them.
No functional changes other than not being able to enable these options on unsupported platforms.
Test Plan
CI passes on this PR.