Rework how iOS does linking (#8127)
iOS has some particular constraints about how applications can be built: * We must generate a static library (.a) since XCode does the final link. * We need to carefully give the right set of arguments to libtool in the case we're generating an archive. * Dynamic linking isn't supported. * It can only be done on OS X. This patch cleans up all of the above. We add a new flag `-staticlib` (only supported on Darwin) that allows us to produce archive files using libtool, and a -pgmlibtool flag to control which 'libtool' executable to use. This fixes #8127. I believe this is the last piece missing from the iOS cross compiler. Authored-by:Luke Iannini <lukexi@me.com> Authored-by:
Maxwell Swadling <maxwellswadling@gmail.com> Authored-by:
Stephen Blackheath <...@blacksapphire.com> Signed-off-by:
Austin Seipp <aseipp@pobox.com>
Showing
- aclocal.m4 2 additions, 0 deletionsaclocal.m4
- compiler/main/DriverPipeline.hs 60 additions, 31 deletionscompiler/main/DriverPipeline.hs
- compiler/main/DynFlags.hs 7 additions, 1 deletioncompiler/main/DynFlags.hs
- compiler/main/GhcMake.hs 1 addition, 1 deletioncompiler/main/GhcMake.hs
- compiler/main/Packages.lhs 10 additions, 7 deletionscompiler/main/Packages.lhs
- compiler/main/SysTools.lhs 15 additions, 2 deletionscompiler/main/SysTools.lhs
- docs/users_guide/flags.xml 19 additions, 3 deletionsdocs/users_guide/flags.xml
- docs/users_guide/phases.xml 29 additions, 3 deletionsdocs/users_guide/phases.xml
- settings.in 1 addition, 0 deletionssettings.in
Loading
Please register or sign in to comment