Re: Git on Mac OS X 10.4.10

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 08/14/2014 02:13 PM, Markus Hitter wrote:
I'm new to this list, so: Hello everybody!

My backup servers run Mac OS X 10.4.10. Yes, these are old, but very
reliable and easily up to the task. And Mac OS X 10.4 is the latest OS
supported there (PowerPC G3).

Recently I tried to upgrade to v2.0.4 (from 1.7.11.4).

Issue 1: I get many of these warnings:

     LINK [many cases]
/usr/bin/ld: warning multiple definitions of symbol _regcomp
libgit.a(regex.o) definition of _regcomp in section (__TEXT,__text)
/usr/lib/gcc/powerpc-apple-darwin8/4.0.1/../../../libSystem.dylib(regcomp.So)
definition of _regcomp
/usr/bin/ld: warning multiple definitions of symbol _regexec
libgit.a(regex.o) definition of _regexec in section (__TEXT,__text)
/usr/lib/gcc/powerpc-apple-darwin8/4.0.1/../../../libSystem.dylib(regexec.So)
definition of _regexec
/usr/bin/ld: warning multiple definitions of symbol _regfree
libgit.a(regex.o) definition of _regfree in section (__TEXT,__text)
/usr/lib/gcc/powerpc-apple-darwin8/4.0.1/../../../libSystem.dylib(regfree.So)
definition of _regfree

Is this expected?
No.
Git has its own regcomp() (and the regXXX() ) in ./compat/regex/*, and for some reasons the linker picks them both from libgit.a (which is a static library) and the dynamic library in libSystem.dylib

Either the linker needs to be convinced not to do that (by changing the command line to the linker,
changing the order of libraries may help, I don't know)
Or each regcomp in the .h and .c files is changed into git_regcomp.
This change shouldn't break anything.



Issue 2: I need this simple patch ...

--- compat/apple-common-crypto.h.org	2014-07-30 23:19:53.000000000 +0200
+++ compat/apple-common-crypto.h	2014-08-14 12:57:37.000000000 +0200
@@ -2,7 +2,7 @@
  #define OPENSSL_NO_MD5
  #define HEADER_HMAC_H
  #define HEADER_SHA_H
-#include <CommonCrypto/CommonHMAC.h>
+//#include <CommonCrypto/CommonHMAC.h>
  #define HMAC_CTX CCHmacContext
  #define HMAC_Init(hmac, key, len, algo) CCHmacInit(hmac, algo, key, len)
  #define HMAC_Update CCHmacUpdate
The  <CommonCrypto/CommonHMAC.h> is in Mac OS X 10.6 .. 10.9,
but not in 10.4 (I don't know about 10.5).
You can try to tweak the "makefiles",  search for NO_APPLE_COMMON_CRYPTO,
and set NO_APPLE_COMMON_CRYPTO, but only  for Darwin 10.3 (or below)

... and this command sequence ...

make all
touch imap-send.o
touch git-imap-send
make all

... to get it compiling. All, except git-imap-send, obviously, which is
no loss for my purposes.

I tried many releases, the patch requirement started with about v1.9.1,
the git-imap-send failure somewhere between 1.8.1.6 and 1.8.4.3.

Trying to be a good Open Source citizen, how would I proceed?
If you want to share your changes, please send a patch to this list.
Thanks,
Markus

--
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




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]