[Adding Vedant directly]

I'm not super familiar with the swift build scripts, but I have a theory of 
what is going wrong. I think the problem is that compiler-rt is being built 
during the cross build, and it really shouldn't be.

The compiler-rt build system has some significant flaws, and it is being 
reworked to resolve them. The problem causing this is that we have a hacked up 
CMake build process that generates multiple cross-targeted binaries from a 
single build configuration. I believe that compiler-rt's built-in hacky 
cross-targeting is tripping over however swift is supporting cross-targeting, 
and it is falling over.

With the current state of compiler-rt the right way to build it for Darwin is 
to treat it as host content, and it will build the Darwin-cross libraries too. 
Then you can pull the cross-libraries out and put them into the device build.

Vedant, if you have questions feel free to swing by my office on Monday.

-Chris

> On Mar 19, 2016, at 10:11 AM, Andrew Hyatt via swift-dev 
> <[email protected]> wrote:
> 
> (From /u/thegreatbeanz on reddit.com/r/swift)
> 
> So the problem here is actually that something has gone horribly wrong when 
> configuring compiler- rt.
> You'll notice in the clang commands that it is building in this directory:
> clang_rt.builtins_armv7_10.4.dir
> What that means is it is building the clang_rt.10.4 archive which provides 
> back ported library functions to OS X 10.4. Obviously 10.4 didn't support 
> armv7 as an architecture, something has gone really wrong here.
> If you're on the latest swift it is probably a regression caused by 53f48f8. 
> You need to email swift-dev to get support from Dmitri Gribenko and Vedant 
> Kumar.
> Source: I wrote most of the compiler-rt builtin build system for Darwin.
> 
> Andrew Hyatt
> [email protected]
> 
>> On Mar 19, 2016, at 9:26 AM, Andrew Hyatt via swift-dev 
>> <[email protected]> wrote:
>> 
>> Building swift-llvm fails when using build-script to cross compile because 
>> build-script wrongly gives duplicate -isysroot arguments.
>> 
>> The full arguments that are given to clang by build-script while building 
>> LLVM are here: https://gist.github.com/ahyattdev/8ecc5d3808b9ee543a60
>> 
>> The command I use to build the compiler, using the latest sources from GitHub
>> 
>> utils/build-script -R -i -- --cross-compile-tools-deployment-targets 
>> "iphoneos-arm64 iphoneos-armv7 iphoneos-armv7s" 
>> --user-config-args="-DLLVM_ENABLE_BACKTRACES=Off"
>> 
>> This error occurs after the phase of building llvm for the host machine, and 
>> occurs during the cross compilation phase.
>> 
>> Andrew Hyatt
>> [email protected]
>> 
>> _______________________________________________
>> swift-dev mailing list
>> [email protected]
>> https://lists.swift.org/mailman/listinfo/swift-dev
> 
> _______________________________________________
> swift-dev mailing list
> [email protected]
> https://lists.swift.org/mailman/listinfo/swift-dev
_______________________________________________
swift-dev mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-dev

Reply via email to