[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-03-18 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde updated https://github.com/llvm/llvm-project/pull/82084 >From 4c147d0508df51ca713b182dd8b85130cafb1f6c Mon Sep 17 00:00:00 2001 From: Evan Wilde Date: Fri, 16 Feb 2024 16:39:10 -0800 Subject: [PATCH] Support sysroot-relative header search paths Clang supported heade

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-03-18 Thread Evan Wilde via cfe-commits
@@ -3256,12 +3262,14 @@ static bool ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args, } for (const auto *A : Args.filtered(OPT_idirafter)) -Opts.AddPath(A->getValue(), frontend::After, false, true); +Opts.AddPath(ConvertHeaderPath(A), frontend::After

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-03-18 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde edited https://github.com/llvm/llvm-project/pull/82084 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-03-18 Thread Evan Wilde via cfe-commits
@@ -3218,6 +3218,21 @@ static bool ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args, bool IsIndexHeaderMap = false; bool IsSysrootSpecified = Args.hasArg(OPT__sysroot_EQ) || Args.hasArg(OPT_isysroot); + + // Expand a leading `=` to the sysroot if one w

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-03-18 Thread Evan Wilde via cfe-commits
@@ -3218,6 +3218,21 @@ static bool ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args, bool IsIndexHeaderMap = false; bool IsSysrootSpecified = Args.hasArg(OPT__sysroot_EQ) || Args.hasArg(OPT_isysroot); + + // Expand a leading `=` to the sysroot if one w

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-03-18 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde updated https://github.com/llvm/llvm-project/pull/82084 >From 9e665d05743022350e06f4ea357ecfecde82efb8 Mon Sep 17 00:00:00 2001 From: Evan Wilde Date: Fri, 16 Feb 2024 16:39:10 -0800 Subject: [PATCH] Support sysroot-relative header search paths Clang supported heade

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-03-19 Thread Evan Wilde via cfe-commits
@@ -3191,6 +3191,22 @@ static bool ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args, bool IsIndexHeaderMap = false; bool IsSysrootSpecified = Args.hasArg(OPT__sysroot_EQ) || Args.hasArg(OPT_isysroot); + + // Expand a leading `=` to the sysroot if one w

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-03-19 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde updated https://github.com/llvm/llvm-project/pull/82084 >From 0d01d10b4f162694a0de205fc2cf9ffd1adf54e0 Mon Sep 17 00:00:00 2001 From: Evan Wilde Date: Fri, 16 Feb 2024 16:39:10 -0800 Subject: [PATCH] Support sysroot-relative header search paths Clang supported heade

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-03-19 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde closed https://github.com/llvm/llvm-project/pull/82084 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] e4ad1f9 - [NFC] Remove extra semicolons in clang/lib/APINotes/APINotesFormat.h

2023-07-21 Thread Evan Wilde via cfe-commits
Author: Evan Wilde Date: 2023-07-21T16:19:53-07:00 New Revision: e4ad1f976d1209b8ff233e6aab924f92b7484c2d URL: https://github.com/llvm/llvm-project/commit/e4ad1f976d1209b8ff233e6aab924f92b7484c2d DIFF: https://github.com/llvm/llvm-project/commit/e4ad1f976d1209b8ff233e6aab924f92b7484c2d.diff LO

[clang] d7b4594 - [NFC][clang] Fix format in UnsafeBufferUsage.cpp

2023-07-16 Thread Evan Wilde via cfe-commits
Author: Evan Wilde Date: 2023-07-16T22:45:29-07:00 New Revision: d7b45945fbb7c4ac27c456dd7c2ff8bb40fcf8f8 URL: https://github.com/llvm/llvm-project/commit/d7b45945fbb7c4ac27c456dd7c2ff8bb40fcf8f8 DIFF: https://github.com/llvm/llvm-project/commit/d7b45945fbb7c4ac27c456dd7c2ff8bb40fcf8f8.diff LO

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-02-16 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde created https://github.com/llvm/llvm-project/pull/82084 Clang supported header searchpaths of the form `-I =/path`, relative to the sysroot if one is passed, but did not implement that behavior for `-iquote`, `-isystem`, or `-idirafter`. This implements the `=` por

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-02-16 Thread Evan Wilde via cfe-commits
@@ -3218,6 +3218,21 @@ static bool ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args, bool IsIndexHeaderMap = false; bool IsSysrootSpecified = Args.hasArg(OPT__sysroot_EQ) || Args.hasArg(OPT_isysroot); + + // Expand a leading `=` to the sysroot if one w

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-02-16 Thread Evan Wilde via cfe-commits
@@ -3256,12 +3262,14 @@ static bool ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args, } for (const auto *A : Args.filtered(OPT_idirafter)) -Opts.AddPath(A->getValue(), frontend::After, false, true); +Opts.AddPath(ConvertHeaderPath(A), frontend::After

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-02-17 Thread Evan Wilde via cfe-commits
@@ -3218,6 +3218,21 @@ static bool ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args, bool IsIndexHeaderMap = false; bool IsSysrootSpecified = Args.hasArg(OPT__sysroot_EQ) || Args.hasArg(OPT_isysroot); + + // Expand a leading `=` to the sysroot if one w

[clang] Add support for sysroot-relative system header search paths (PR #82084)

2024-02-17 Thread Evan Wilde via cfe-commits
@@ -3229,16 +3244,7 @@ static bool ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args, IsIndexHeaderMap ? frontend::IndexHeaderMap : frontend::Angled; bool IsFramework = A->getOption().matches(OPT_F); -std::string Path = A->getValue(); - -if (I

[clang] NFC: Make clang resource headers an interface library (PR #88317)

2024-04-10 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde created https://github.com/llvm/llvm-project/pull/88317 Making the clang resource headers into an interface library instead of a custom target means that we can attach the header search paths to the library. Targets that "link" against this library will automaticall

[clang] NFC: Make clang resource headers an interface library (PR #88317)

2024-04-10 Thread Evan Wilde via cfe-commits
@@ -501,6 +501,10 @@ add_header_target("windows-resource-headers" ${windows_only_files}) add_header_target("utility-resource-headers" ${utility_files}) get_clang_resource_dir(header_install_dir SUBDIR include) +target_include_directories(clang-resource-headers INTERFACE + $

[clang] NFC: Make clang resource headers an interface library (PR #88317)

2024-04-10 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde updated https://github.com/llvm/llvm-project/pull/88317 >From 753df93a4fc054328c0b7caacc1064c283ced8ec Mon Sep 17 00:00:00 2001 From: Evan Wilde Date: Thu, 14 Mar 2024 18:11:24 -0700 Subject: [PATCH] Make clang resource headers an interface library Making the clang

[clang] NFC: Make clang resource headers an interface library (PR #88317)

2024-04-12 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde closed https://github.com/llvm/llvm-project/pull/88317 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Fix missing installed header (PR #95979)

2024-06-18 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde approved this pull request. Nice find. That's kind of horrifying. I'm fine with flipping the file order to avoid the source file caching bug in CMake. CC @compnerd since he also knows CMake and may have opinions. https://github.com/llvm/llvm-project/pull/95979 __

[clang] [clang] Fix missing installed header (PR #95979)

2024-06-20 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde closed https://github.com/llvm/llvm-project/pull/95979 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Fix missing installed header (PR #95979)

2024-06-20 Thread Evan Wilde via cfe-commits
etcwilde wrote: @danielotero Thank you for your contribution. https://github.com/llvm/llvm-project/pull/95979 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)

2024-04-18 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde created https://github.com/llvm/llvm-project/pull/89266 This reverts commit 8d468c132eed7ffe34d601b224220efd51655eb3. @ayermolo reports seeing the following error when the clang-resource-headers are a library instead of a custom target: ``` CMake Error at CMakeLists

[clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)

2024-04-18 Thread Evan Wilde via cfe-commits
etcwilde wrote: @ayermolo, one idea might be to see if `clang-resource-headers` is in the install distribution list? I'm not seeing a matching `get_property` in a CMakeLists.txt that matches the above error exactly, so I'm not sure how to reproduce this or how you're picking up the clang-resou

[clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)

2024-04-20 Thread Evan Wilde via cfe-commits
etcwilde wrote: Great, glad to hear that you figured out what was happening. I wasn't sure how the target would end up in the clang-export list and not be defined since the bit of code that adds it to the clang-export list isn't conditionalized any differently than the creation of the target i

[clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)

2024-04-20 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde closed https://github.com/llvm/llvm-project/pull/89266 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] RFC: [cmake] Export CLANG_RESOURCE_DIR in ClangConfig (PR #97197)

2024-07-25 Thread Evan Wilde via cfe-commits
etcwilde wrote: > That forces us back to the original discussion about exporting > CLANG_RESOURCE_DIR The path is already available through the exported `clang-resource-header` imported interface target. https://github.com/llvm/llvm-project/pull/97197 _

[clang] RFC: [cmake] Export CLANG_RESOURCE_DIR in ClangConfig (PR #97197)

2024-07-12 Thread Evan Wilde via cfe-commits
etcwilde wrote: So, Swift actually has/had a similar issue. We embed a copy of clang in Swift, so we needed to find the corresponding clang resource headers and install them with our compiler which is why I wrote https://github.com/llvm/llvm-project/pull/88317 to expose them. It adds the clan

[clang] RFC: [cmake] Export CLANG_RESOURCE_DIR in ClangConfig (PR #97197)

2024-08-02 Thread Evan Wilde via cfe-commits
etcwilde wrote: > We can't really help you with whatever is wrong with Debian's packages unless > it is a bug caused by our build configurations. The change you're proposing > in this PR could just as easily be impacted in some distro's packages. The exported target is new and hasn't been in a

[clang] [Clang] Replace vt_gen with LLVMCodeGenTypes (PR #109601)

2024-09-24 Thread Evan Wilde via cfe-commits
etcwilde wrote: This drops the dependency edge between the compile step and generating `GenVT.inc` though. There was already a (indirect) dependency between the link step of `clangCodeGen` and generating `GetnVT.inc`. Perhaps LLVM should export `vt_gen` like it does `intrinsics_gen` so that st

[clang] [Clang] Replace vt_gen with LLVMCodeGenTypes (PR #109601)

2024-09-24 Thread Evan Wilde via cfe-commits
etcwilde wrote: Here, I'd missed adding `vt_gen` as something that one could pick up through the cmake config. Can you try a standalone build with the changes here? https://github.com/llvm/llvm-project/pull/109817 Thanks. https://github.com/llvm/llvm-project/pull/109601 ___

[clang] Add missing deps edge: CodeGenAction.cpp.o -> GenVT.inc (PR #109306)

2024-09-19 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde closed https://github.com/llvm/llvm-project/pull/109306 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Add missing deps edge: CodeGenAction.cpp.o -> GenVT.inc (PR #109306)

2024-09-19 Thread Evan Wilde via cfe-commits
https://github.com/etcwilde created https://github.com/llvm/llvm-project/pull/109306 CodeGenAction.cpp.o depends on generating GenVT.inc before trying to compile it through the following header chain: ``` GenVT.inc MachineValueType.h LowLevelType.h MachineMemOperand.h MachineInstr.h MachineBas

[clang] [clang] Fix missing installed header (PR #95979)

2025-02-16 Thread Evan Wilde via cfe-commits
etcwilde wrote: For folks landing here, this should be fixed in CMake 4.1 by policy [CMP0187](https://gitlab.kitware.com/cmake/cmake/-/merge_requests/10271). https://github.com/llvm/llvm-project/pull/95979 ___ cfe-commits mailing list cfe-commits@list