I realized last week that I could build one of Apple's driver stacks at home. I wanted this so I could turn on its logging as well as to enable source code debugging.
Each day I updated my clients on my progress, however by today I was quite dismayed that I still couldn't get it to build. This because Apple has a private SDK called macosx.internal. The drivers from Apple's Open Source site once built out of the box, thereby enabling OpenDarwin, but now they don't.
I at first had no clue what was in machos.internal - damn autocorrect! - but eventually figured out that it needed some headers from the xnu kernel.
I figured I should try building the kernel first, but again it depends on macosx.internal. All I really needed was the headers, so I tried:
$ make installhdrs
... which did install lots of headers, but not the ones I needed. The only headers it installs are already in Kernel.framework. I needed some of the private headers. As I figured them out I added them to my own private Kernel.framework.
When I started work again today I mailed my clients with "Working at home to continue building the IOGraphicsFamily. I am dismayed that this is taking so long."
Dismayed because the client wants to send my driver to OEMs on the first.
Eric wrote back, "Do you think this will help?"
"Yes. It should enable debugging of that showstopper bug."
"The one Lucas fixed last week?"
(Score: 2) by MichaelDavidCrawford on Wednesday November 29 2017, @01:42AM
My client retained me based entirely on this website [soggywizards.com]. It doesn't even have my name on the homepage or on the page about OS X kernel extensions. Certainly not my age. No gray-haired photos either.
I'm a contract programmer so I'm paid like they pay for office supplies. Consultants never go through HR.
The reason I changed my specialty to drivers was that it is damn near impossible for someone with grey hair to get a job as a mobile app developer. My homelessness had quite a lot to do with my desire to be a mobile app developer.
Finally I gave up, registered the soggywizards.com domain and hung out my contract programming shingle. I get a serious client inquiry about once per month. Not all of the potential clients decide to retain me, but I've been with this particular client for a year.