Hamish Knight
486cd42bba
[xcodegen] Avoid buildable folders for mixed Swift targets
...
If a Swift target has sources in its folder that
aren't part of the target, we can't form a buildable
folder.
2024-12-14 19:53:51 +00:00
Hamish Knight
54bf65b2e9
[xcodegen] Include Obj-C(++) sources
...
Can't believe I missed these for so long.
2024-12-14 19:53:51 +00:00
Hamish Knight
71eeb612f0
[xcodegen] Avoid emitting Swift Obj-C header
...
This isn't needed currently and works around
an assertion failure.
2024-12-14 19:53:51 +00:00
Hamish Knight
780a546646
[xcodegen] Restrict dependency computation a bit
...
Only consider `.o` and `.swiftmodule` inputs for now. Previously
we could end up with unnecessary dependencies for e.g plugin
dylibs, but we don't build and patch those in currently.
2024-12-14 19:53:51 +00:00
Hamish Knight
dfe1f9cc53
[xcodegen] Infer project root from xcodegen location
...
Instead of inferring from the build directory location,
infer from the location of swift-xcodegen itself since
we know that's in the swift repo.
2024-12-14 14:30:55 +00:00
Hamish Knight
7f313a6621
Merge pull request #77791 from hamishknight/enable-buildable-folders
2024-12-02 09:19:47 +00:00
Hamish Knight
dade4217db
[xcodegen] Show caveat for --stdlib-swift too
...
While here, also add a caveat for the fact that
`--stdlib-swift` is disabled by default since it's
surprised a couple of folks now.
2024-11-29 16:07:13 +00:00
Hamish Knight
e04efdd2bb
[xcodegen] Enable buildable folders by default
...
I've been living on this for a bit without issue,
enable by default.
2024-11-29 16:05:12 +00:00
Hamish Knight
b0d91b016c
Fix typo
...
Co-authored-by: Jamie <2119834+jamieQ@users.noreply.github.com >
2024-11-22 16:00:09 +00:00
Hamish Knight
ac4d52d5c3
[xcodegen] Update help text for --stdlib-swift
...
Clarify why a development snapshot is needed
for stdlib Swift targets.
2024-11-22 15:50:36 +00:00
Hamish Knight
9a53db6b9a
[xcodegen] Add --buildable-folders
...
This enables the use of folder references for
compatible targets, allowing new source files to
be added without needing to regenerate the project.
Currently disabled by default; I'd like to get
some living-on before enabling.
2024-11-09 20:16:45 +00:00
Hamish Knight
a596880b65
[xcodegen] Add --prefer-folder-refs flag
2024-11-09 20:01:37 +00:00
Hamish Knight
84ba92dbe8
[xcodegen] Add serialization support for buildable folders
2024-11-09 20:01:37 +00:00
Hamish Knight
29cfe90869
[xcodegen] Remove isImportant
...
This only existed to avoid adding anything under
a folder reference. Now that we add those
references first, this is no longer needed.
2024-11-09 20:01:37 +00:00
Hamish Knight
5ff60d014b
[xcodegen] Add file references to project first
...
This requires ensuring we check that we're not
ever attempting to add a group under an existing
folder reference. This will be required for
buildable folders.
2024-11-09 20:01:37 +00:00
Hamish Knight
94b744ce4f
[xcodegen] Fix typo
2024-11-06 12:20:44 +00:00
Hamish Knight
43be5456b1
[xcodegen] Allow output to be missing in compile_commands.json
...
This may not always be present for CI builds.
2024-11-06 12:20:44 +00:00
Hamish Knight
03d8ea5248
Introduce swift-xcodegen
...
This is a tool specifically designed to generate
Xcode projects for the Swift repo (as well as a
couple of adjacent repos such as LLVM and Clang).
It aims to provide a much more user-friendly experience
than the CMake Xcode generation (`build-script --xcode`).
2024-11-05 22:42:10 +00:00