shiltian wrote: I think this sounds very hacky. Does it work if we do `target_include_directories(BEFORE omptarget.rtl.amdgpu PRIVATE dynamic_hsa)`? This will make sure that the `dyanic_hsa` will be the first one to be listed in `-I`. https://github.com/llvm/llvm-project/pull/95769