yonaskolb / yonaskolb/XcodeGen
Currently .xcconfig files on Xcode don't seem to follow the folder hierarchy.
Nobody has claimed this yet.
- Dominant language
- Swift
- Stars
- 8.8k
- Forks
- 908
- Avg merge
- 17d 14h
- Merged PRs (30d)
- 2
Description
When using the top-level configFiles: label to point to individual .xcconfig files, it all works correctly, with the exception of how it's currently displayed in the xcode file drawer. The files I'm pointing to are two levels down the file hierarchy (we have a significant amount of them), but on Xcode they're displayed at the top level. Is this a bug, intended behaviour, or did I miss some aspect of the file spec?
Excerpt of project.yaml with names changed.
configs:
APP DEV: debug
APP1: release
APP2: release
APP3: release
configFiles:
APP DEV: SourceFolder/Supporting Files/APP DEV/APP DEV.xcconfig
APP1: SourceFolder/Supporting Files/APP1/APP1.xcconfig
APP2: SourceFolder/Supporting Files/APP2/APP2.xcconfig
APP3: SourceFolder/Supporting Files/APP3/APP3.xcconfig
targets:
MainTarget:
type: application
platform: iOS
deploymentTarget: "14.4"
sources: [SourceFolder]
configVariants:
- APP1
- APP2
- APP3
- APP DEV
On Xcode they show app at the top level as such:
- MainTarget
- APP DEV
- APP DEV.xcconfig
- APP1
- APP1.xcconfig
- APP2
- APP2.xcconfig
- APP3
- APP3.xcconfig
And the Supporting Files folder appears empty. When inspecting the file locations on Xcode, I can see that it points to the right file, deeper inside the folder structure. Any clues on what's happening is appreciated.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the issue using the supplied project.yaml excerpt, especially the configFiles paths, and inspect the generated Xcode project in the file drawer. Determine whether the displayed hierarchy should follow those paths; done means the behavior is corrected or its intended behavior is clearly established.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- swift
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100