-
Notifications
You must be signed in to change notification settings - Fork 11.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
[Driver][Darwin] Move the remaining bits for header path handling over to the Driver. #75638
Labels
Comments
EugeneZelenko
added
the
clang:driver
'clang' and 'clang++' user-facing binaries. Not 'clang-cl'
label
Dec 15, 2023
@llvm/issue-subscribers-clang-driver Author: Brad Smith (brad0)
The remaining bits for the header path handling need to be moved over to the Driver within AddClangSystemIncludeArgs() as has been done for other OS's to date.
clang/lib/Lex/InitHeaderSearch.cpp
|
https://reviews.llvm.org/D158376 (DragonFlyBSD) is a migration example. |
@MaskRay I had spoken to jroelofs on Discourse and he said to file an issue so he could pass it around to someone appropriate at Apple. |
ldionne
added a commit
to ldionne/llvm-project
that referenced
this issue
Dec 18, 2023
…tend This removes a long standing piece of technical debt. Most other platforms have moved all their header search path logic to the driver, but Darwin still had some logic for setting framework search paths present in the frontend. This patch moves that logic to the driver alongside existing logic that already handles part of these search paths. This is intended to be a pure refactor without any functional change visible to users, since the search paths before and after should be the same, and in the same order. The change in the tests is necessary because we would previously add the DriverKit framework search path in the frontend regardless of whether we actually need to, which we now handle correctly because the driver checks for ld64-605.1+. Fixes llvm#75638
ldionne
added a commit
that referenced
this issue
Dec 31, 2023
…tend (#75841) This removes a long standing piece of technical debt. Most other platforms have moved all their header search path logic to the driver, but Darwin still had some logic for setting framework search paths present in the frontend. This patch moves that logic to the driver alongside existing logic that already handles part of these search paths. This is intended to be a pure refactor without any functional change visible to users, since the search paths before and after should be the same, and in the same order. The change in the tests is necessary because we would previously add the DriverKit framework search path in the frontend regardless of whether we actually need to, which we now handle correctly because the driver checks for ld64-605.1+. Fixes #75638
Reverted in d34901f due to LSan issues. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
The remaining bits for the header path handling need to be moved over to the Driver within AddClangSystemIncludeArgs() as has been done for other OS's to date.
clang/lib/Lex/InitHeaderSearch.cpp
llvm-project/clang/lib/Lex/InitHeaderSearch.cpp
Line 343 in 7113c80
The text was updated successfully, but these errors were encountered: