On 12/04/2013 07:48 PM, Marius Schamschula wrote:
Hi all, Over the years I have built many versions of git and released them on hmug.org. git 1.8.5.1 builds just fine under OS 10.7 (Lion) and 10.9 (Mavericks), but the build fails (also for 1.8.5) on 10.8 (Mountain Lion): <snip> GIT_VERSION = 1.8.5.1 * new build flags CC credential-store.o In file included from git-compat-util.h:330:0, from cache.h:4, from credential-store.c:1: compat/apple-common-crypto.h: In function 'git_CC_EVP_EncodeBlock': compat/apple-common-crypto.h:32:2: error: 'SecTransformRef' undeclared (first use in this function) compat/apple-common-crypto.h:32:2: note: each undeclared identifier is reported only once for each function it appears in compat/apple-common-crypto.h:32:18: error: expected ';' before 'encoder' compat/apple-common-crypto.h:36:2: error: 'encoder' undeclared (first use in this function) compat/apple-common-crypto.h:36:2: warning: implicit declaration of function 'SecEncodeTransformCreate' compat/apple-common-crypto.h:36:37: error: 'kSecBase64Encoding' undeclared (first use in this function) compat/apple-common-crypto.h:40:2: warning: implicit declaration of function 'SecTransformSetAttribute' compat/apple-common-crypto.h:40:36: error: 'kSecTransformInputAttributeName' undeclared (first use in this function) compat/apple-common-crypto.h:44:2: warning: implicit declaration of function 'SecTransformExecute' compat/apple-common-crypto.h: In function 'git_CC_EVP_DecodeBlock': compat/apple-common-crypto.h:62:2: error: 'SecTransformRef' undeclared (first use in this function) compat/apple-common-crypto.h:62:18: error: expected ';' before 'decoder' compat/apple-common-crypto.h:66:2: error: 'decoder' undeclared (first use in this function) compat/apple-common-crypto.h:66:2: warning: implicit declaration of function 'SecDecodeTransformCreate' compat/apple-common-crypto.h:66:37: error: 'kSecBase64Encoding' undeclared (first use in this function) compat/apple-common-crypto.h:70:36: error: 'kSecTransformInputAttributeName' undeclared (first use in this function) Makefile:1975: recipe for target 'credential-store.o' failed make: *** [credential-store.o] Error 1 </snip> Apparently a header issue: I tried force feeding the Security/SecEncryptTransform.h file, and just got an other error… Any help would be welcome! Thanks in advance. Marius -- Marius Schamschula
I can't reproduce it here (in other words, it compiles) What could help is to run the preprocessor, and see what the compiler see. a) Patch the Makefile of git like this: -- a/Makefile +++ b/Makefile @@ -349,7 +349,8 @@ GIT-VERSION-FILE: FORCE # CFLAGS and LDFLAGS are for the users to override from the command line. -CFLAGS = -g -O2 -Wall +#CFLAGS = -g -O2 -Wall +CFLAGS= -E b) Compile credential-store.o (Which is now an ASCII file) credential-store.o ; make credential-store.o c) Take an editor and have a look. On my system SecTransform.h is here: ----------------- /System/Library/Frameworks/Security.framework/Headers/SecTransform.h" d) And the file contains something like this: --------------- typedef CFTypeRef SecTransformRef; typedef CFTypeRef SecGroupTransformRef; /Torsten -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html