• Duncan Coutts's avatar
    Make ghc -dynamic imply -fPIC for C code · 431e40e1
    Duncan Coutts authored
    As is already the case for ghc -fPIC. This is needed because ghc -dynamic
    means to generate code that is capable of being linked to Haskell shared
    libs and for C code the equivalent is -fPIC. Normally C code does not need
    -fPIC merely to link to shared libs however Haskell shared libs do not
    follow common conventions. In particular the static data cannot be
    referenced statically because it cannot be copied by the static linker.
    The linker cannot copy them because we do not specify a .size for the
    _closure entries (in the .data section) though in principle we could.