- Notifications
You must be signed in to change notification settings - Fork 219
build: rename libllbuild
to the proper liblibllbuild
#1005
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
CC: @drexin |
@swift-ci please test |
@swift-ci please test |
The llbuild executable is rarely used compared to the library, I think we should rename that to something like llbuild-exec or llbuild-tool before renaming the library |
I agree, that's probably the lower risk approach. |
Works for me; I'll rename the executable. |
@swift-ci please test |
@swift-ci please test |
Because `llbuild` is the executable, we cannot have another target with the name `llbuild` which is the library target. As such, the library is named `libllbuild`. This changes the output name of the library to `liblibllbuild`. This was being overridden which caused some trouble for builds which attempted to skirt the dependencies. As the tool is generally unused, prefer to rename the tool target to `llbuild-tool`, and use `OUTPUT_NAME` to retain the output name. This allows us to have the `libllbuild.a` name for the new `llbuild` target.
@swift-ci please test |
@swift-ci please smoke test |
@swift-ci please smoke test Linux platform |
@swift-ci please smoke test macOS platform |
@swift-ci please smoke test |
…n Windows These were originally added 6 years ago in swiftlang#475 to "Disable incremental linking so llbuild.ilk's don't conflict" because at the time the command line tool and library targets were given the same OUTPUT_NAME, which conflicted. In swiftlang#1005 these targets were given distinct names, so the workaround should no longer be necessary. This helps unblock swiftlang/swift-build#757 because this flag is currently added without regard for the specific compiler driver in use, so the flag might not work based on whether clang-cl.exe or cl.exe vs clang.exe (where it would require a -Xlinker prefix), is used.
…n Windows These were originally added 6 years ago in #475 to "Disable incremental linking so llbuild.ilk's don't conflict" because at the time the command line tool and library targets were given the same OUTPUT_NAME, which conflicted. In #1005 these targets were given distinct names, so the workaround should no longer be necessary. This helps unblock swiftlang/swift-build#757 because this flag is currently added without regard for the specific compiler driver in use, so the flag might not work based on whether clang-cl.exe or cl.exe vs clang.exe (where it would require a -Xlinker prefix), is used.
Because
llbuild
is the executable, we cannot have another target with the namellbuild
which is the library target. As such, the library is namedlibllbuild
. This changes the output name of the library toliblibllbuild
. This was being overridden which caused some trouble for builds which attempted to skirt the dependencies. Rename the output to the proper name.