[swift-dev] Why are we re-linking?

rintaro ishizaki fs.output at gmail.com
Thu May 5 23:12:05 CDT 2016


Sorry, accidentally clicked send button..

I've wrote PoC code here:
https://github.com/rintaro/swift/commit/9bf18d46f4933ace03948417087bade084104edb

Of course, this changes the semantics of `--version` output.
So I'm not sure we can accept this or not.
Any thought?

Rintaro

2016-05-06 13:08 GMT+09:00 rintaro ishizaki <fs.output at gmail.com>:

> Hi all,
>
> getSwiftFullVersion output must take account stdlib revsion?
>
> How about get the revision hash from the Swift repository
> *excluding* stdlib/, test/ and validation-test/ directories.
>
> git log -1 --pretty=format:%H -- \
>     . \
>     :(exclude)stdlib \
>     :(exclude)test \
>     :(exclude)validation-test
>
>
> Instead of,
>
> git log -1 --pretty=format:%H
>
>
> Or more specifically, just include only "compiler" related directories:
>
> git log -1 --pretty=format:%H -- include/ lib/ tools/
>
>
> I've wrote PoC code
>
> 2016-04-12 2:22 GMT+09:00 Jordan Rose via swift-dev <swift-dev at swift.org>:
>
>>
>> On Apr 7, 2016, at 14:01, Chris Lattner <clattner at apple.com> wrote:
>>
>>
>> On Apr 6, 2016, at 11:08 AM, Jordan Rose via swift-dev <
>> swift-dev at swift.org> wrote:
>>
>> I imagine it's because your git hash has changed, which is used in the
>> --version output for swiftc. I'm not sure how to avoid that cost entirely,
>> but we could add a CMake option to not do it (which you could set locally),
>> and we could probably move it to a library that isn't used by most of those
>> tools (so that we're only re-linking swiftc).
>>
>>
>> Could we move the hash to be a text file stored next to the executables
>> in the installdir?  That way the text file gets updated, but not the
>> binaries?
>>
>>
>> Oh, that's clever. Maybe that's good enough for local builds. I'd want to
>> be careful about it for the binary we ship (to not waste an fstat).
>>
>> FWIW this isn't *quite* just --version output; we also stamp it into
>> swiftmodule files. But any build with an actual submission tag will use
>> that instead.
>>
>> Jordan
>>
>>
>> _______________________________________________
>> swift-dev mailing list
>> swift-dev at swift.org
>> https://lists.swift.org/mailman/listinfo/swift-dev
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-dev/attachments/20160506/0d66f654/attachment.html>


More information about the swift-dev mailing list