Commit 84ca505
committed
[Backport PR-511] feat: add Darwin-style framework search paths (-F, -iframework)
- Introduce DUI::SearchPath with PathKind {Include, Framework, SystemFramework}
to model GCC/Clang behavior on Darwin.
- Extend openHeader() to search left-to-right across mixed -I/-F/-iframework
paths, preserving order.
- Implement toAppleFrameworkRelatives() returning both Headers and
PrivateHeaders candidates for a <Pkg/Hdr.h> include.
- Preserve backward compatibility: if searchPaths is empty, legacy
includePaths are mirrored as Include paths.
- Update tests to use PathKind::Framework for framework-based includes.
This brings simplecpp closer to GCC/Clang behavior on macOS and enables
robust resolution of framework headers like Foundation/Foundation.h.
Suggested-by: glank <glankk@users.noreply.github.com>
(cherry picked from commit cdd5fc2)1 parent ab6c5a7 commit 84ca505
3 files changed
+73
-25
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| 16 | + | |
16 | 17 | | |
17 | 18 | | |
18 | 19 | | |
| |||
2432 | 2433 | | |
2433 | 2434 | | |
2434 | 2435 | | |
2435 | | - | |
2436 | | - | |
2437 | | - | |
| 2436 | + | |
| 2437 | + | |
| 2438 | + | |
| 2439 | + | |
2438 | 2440 | | |
2439 | 2441 | | |
2440 | 2442 | | |
2441 | | - | |
| 2443 | + | |
2442 | 2444 | | |
2443 | 2445 | | |
2444 | | - | |
| 2446 | + | |
| 2447 | + | |
2445 | 2448 | | |
2446 | 2449 | | |
2447 | 2450 | | |
| |||
3015 | 3018 | | |
3016 | 3019 | | |
3017 | 3020 | | |
3018 | | - | |
3019 | | - | |
3020 | | - | |
3021 | | - | |
3022 | | - | |
| 3021 | + | |
| 3022 | + | |
| 3023 | + | |
| 3024 | + | |
| 3025 | + | |
| 3026 | + | |
| 3027 | + | |
| 3028 | + | |
| 3029 | + | |
| 3030 | + | |
3023 | 3031 | | |
3024 | 3032 | | |
3025 | | - | |
3026 | | - | |
3027 | | - | |
3028 | | - | |
3029 | | - | |
3030 | | - | |
3031 | | - | |
3032 | | - | |
3033 | | - | |
3034 | | - | |
| 3033 | + | |
| 3034 | + | |
| 3035 | + | |
| 3036 | + | |
| 3037 | + | |
| 3038 | + | |
| 3039 | + | |
| 3040 | + | |
| 3041 | + | |
| 3042 | + | |
| 3043 | + | |
| 3044 | + | |
| 3045 | + | |
| 3046 | + | |
| 3047 | + | |
| 3048 | + | |
3035 | 3049 | | |
3036 | 3050 | | |
3037 | 3051 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
340 | 340 | | |
341 | 341 | | |
342 | 342 | | |
343 | | - | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
344 | 360 | | |
345 | 361 | | |
346 | 362 | | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
347 | 371 | | |
348 | 372 | | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
349 | 376 | | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
350 | 380 | | |
351 | 381 | | |
352 | 382 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2158 | 2158 | | |
2159 | 2159 | | |
2160 | 2160 | | |
2161 | | - | |
| 2161 | + | |
| 2162 | + | |
| 2163 | + | |
2162 | 2164 | | |
2163 | | - | |
| 2165 | + | |
2164 | 2166 | | |
2165 | 2167 | | |
2166 | 2168 | | |
| |||
2185 | 2187 | | |
2186 | 2188 | | |
2187 | 2189 | | |
2188 | | - | |
| 2190 | + | |
| 2191 | + | |
| 2192 | + | |
2189 | 2193 | | |
2190 | | - | |
| 2194 | + | |
2191 | 2195 | | |
2192 | 2196 | | |
2193 | 2197 | | |
| |||
0 commit comments