From: Brian Gernhardt Date: Tue, 31 Mar 2009 20:26:45 GMT Subject: Re: strbuf name conflict on Mac OS Message-ID: <5ECAAD78-F8D4-4F86-A16B-C8DF483771D6@silverinsanity.com> In-Reply-To: On Mar 31, 2009, at 4:17 PM, Joshua Juran wrote: > Apple's OpenTransport.h from Universal Interfaces 3.4.2 defines its > own struct strbuf, with which git's collides. > > Since OpenTransport.h also defines some POSIX constants (such as > O_NONBLOCK) as enums, it's necessary to include OpenTransport.h from > fcntl.h (and other affected headers) so as to control the order in > which the definitions appear in the translation unit. Just to be clear, this is related to your work on LAMP under Classic and not OS X, correct? If so, perhaps you need to create a compat/ classic_mac.h file that's included (when the correct #defines are seen) from git-compat-util.h in the manner of compat/ {cygwin,mingw}.h. I'm assuming that this naming conflict is not the only such you'll find and it's better to keep platform specific tweaks to a single place when possible. ~~ Brian