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

Use local includes for Cascade files #47

Closed
wants to merge 2 commits into from
Closed

Conversation

etremel
Copy link
Contributor

@etremel etremel commented Jul 17, 2023

This is another minor build-system improvement I made in my cascade_chain branch and wanted to port to the main branch. When writing a C++ library, the #include directives for the same library's files should use quotes rather than angle brackets, and they should appear in a separate group at the top of the include list. This helps the compiler find the "local" version of the files within the workspace instead of the "installed" version of the files (in a system include path) when you need to rebuild the library after already having installed it. Some Cascade files were already following this standard, but some weren't.

Following the standard practices we've applied to Derecho, #includes for
headers within the Cascade library should use quotes rather than angle
brackets and appear in a separate group before all non-Cascade includes.
The Derecho includes should also be grouped before the standard library
includes, since Derecho is more like a related sub-component of Cascade
than a third-party library (they share a namespace).

This is a manual cherry-pick of commit
5758256 from the cascade_chain branch,
where I already made this change a while ago.
@etremel etremel requested a review from songweijia August 2, 2023 19:53
@etremel
Copy link
Contributor Author

etremel commented Oct 18, 2024

As we discovered while working on Derecho PR #276, using quotes instead of angle brackets actually should not have any effect on the include search path in most of these cases, so these changes are counterproductive.

@etremel etremel closed this Oct 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant