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

Make CMakeBuildConfiguration API #1010

Merged
merged 1 commit into from
Jan 15, 2025

Conversation

betamaxbandit
Copy link
Contributor

For ISV integration/extension to CDT CMake, it is necessary to extend several non-API classes (eg: CMakeBuildConfiguration, CMakeBuildConfigurationProvider). This would cause "Discouraged access: The type XXX is not API" warnings.

The classes have now been made API so can be extended without warnings.

Addresses Issue: CDT CMake Improvements #1000, IDE-82683-REQ-017 Extending CMakeBuildConfiguration

@jonahgraham

This comment was marked as off-topic.

Copy link
Member

@jonahgraham jonahgraham left a comment

Choose a reason for hiding this comment

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

I am applying these suggested changes and will push an update very soon.

For ISV integration/extension to CDT CMake, it is necessary to extend
several non-API classes (eg: CMakeBuildConfiguration,
CMakeBuildConfigurationProvider). This would cause "Discouraged access:
The type XXX is not API" warnings.

The classes have now been made API so can be extended without warnings.

Addresses Issue: CDT CMake Improvements eclipse-cdt#1000, IDE-82683-REQ-017
Extending CMakeBuildConfiguration
@betamaxbandit
Copy link
Contributor Author

LGTM
Thanks @jonahgraham

@jonahgraham jonahgraham merged commit 3c4287f into eclipse-cdt:main Jan 15, 2025
4 checks passed
@jonahgraham jonahgraham added this to the 12.0.0 M2 milestone Jan 15, 2025
@jonahgraham jonahgraham added the build Build components of CDT, anything to do with running the compiler, using Make, CMake, or any builder label Jan 15, 2025
@betamaxbandit betamaxbandit deleted the IDE-82683-REQ-017 branch January 15, 2025 16:38
jonahgraham added a commit to jonahgraham/cdt that referenced this pull request Jan 22, 2025
PR eclipse-cdt#1010 added the ability to extend CMakeBuildConfiguration and
CMakeBuildConfigurationProvider by making the classes public
API, they used to be internal API.

This change makes it easier to reuse the code in the provider
and configuration by allowing extenders to provide their own
implementations of CMakeBuildConfiguration. This has been
achieved by adding createCMakeBuildConfiguration methods to
control which CMakeBuildConfiguration is constructed.

Follow up to eclipse-cdt#1010
jonahgraham added a commit that referenced this pull request Jan 23, 2025
PR #1010 added the ability to extend CMakeBuildConfiguration and
CMakeBuildConfigurationProvider by making the classes public
API, they used to be internal API.

This change makes it easier to reuse the code in the provider
and configuration by allowing extenders to provide their own
implementations of CMakeBuildConfiguration. This has been
achieved by adding createCMakeBuildConfiguration methods to
control which CMakeBuildConfiguration is constructed.

Follow up to #1010
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Build components of CDT, anything to do with running the compiler, using Make, CMake, or any builder
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants