Subject: Re: Problem with S_IFGITLINK

From: Michael J Gruber <[email-masked]>
Date: Wed, 24 Aug 2011 16:43:15 +0200

Adam Kłobukowski venit, vidit, dixit 24.08.2011 14:49:
> Hello
> 
> I'm trying to compile git on some very exotic u*ix flavor (FreeMiNT 
> anyone? :)) and I encountered problem with S_IFGITLINK.
> 
> Unfortunately, on my system S_IFGITLINK = S_IFLNK, and it breaks build 
> in entry.c write_entry.
> 
> Should I report a bug? (where?, I could not find any reference to 
> bugtracker on git pages)

Yes. Here.

A short log of the build break would be nice.

> Can I fix it somehow? Can I change value of S_IFGITLINK to something else?

From git's cache.h:

/*
 * A "directory link" is a link to another git directory.
 *
 * The value 0160000 is not normally a valid mode, and
 * also just happens to be S_IFDIR + S_IFLNK
 *
 * NOTE! We *really* shouldn't depend on the S_IFxxx macros
 * always having the same values everywhere. We should use
 * our internal git values for these things, and then we can
 * translate that to the OS-specific value. It just so
 * happens that everybody shares the same bit representation
 * in the UNIX world (and apparently wider too..)
 */

Time to implement that translation :|

Michael