[GHC] #13020: Use a fixed SDK for Mac OS X builds

GHC ghc-devs at haskell.org
Wed Dec 21 11:43:41 UTC 2016


#13020: Use a fixed SDK for Mac OS X builds
-------------------------------------+-------------------------------------
           Reporter:  gracjan        |             Owner:
               Type:  task           |            Status:  new
           Priority:  normal         |         Milestone:
          Component:  Compiler       |           Version:  8.0.1
           Keywords:                 |  Operating System:  MacOS X
       Architecture:                 |   Type of failure:  Building GHC
  Unknown/Multiple                   |  failed
          Test Case:                 |        Blocked By:
           Blocking:                 |   Related Tickets:
Differential Rev(s):                 |         Wiki Page:
-------------------------------------+-------------------------------------
 Apple releases new systems with new SDK versions. Official documentation
 says that it is enough to use newest SDK with MACOSX_TARGET set to lowest
 supported version of Mac OS X. This is not always true, as they try to
 keep all new features conditionally included, but they sometimes fail.

 For example `/usr/include/sys/mman.h` file has been changed between
 SDK10.10 and SDK10.11 without any compatibility flags and resulted in
 #13005 (Mac OSX uses `MAP_ANON` in place of `MAP_ANONYMOUS`).

 The solution is:
 - download the lowest supported SDK from https://github.com/phracker
 /MacOSX-SDKs
 - set the path using -isysroot param to gcc

 Overall would be best to compile using all supported SDKs, but given lack
 of CI machines I think it is better to build with minimum version. Apple
 is pretty good at keeping backward compatibility on source level.

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13020>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list