Subject: Re: Deprecation warnings under XCode

From: Junio C Hamano <[email-masked]>
Date: Mon, 01 Dec 2014 10:04:57 -0800

Torsten Bögershausen <[email-masked]> writes:

> On 12/01/2014 04:02 AM, Michael Blume wrote:
>> I have no idea whether this should concern anyone, but my mac build of git shows
>>
>>      CC imap-send.o
>> imap-send.c:183:36: warning: 'ERR_error_string' is deprecated: first
>> deprecated in OS X 10.7 [-Wdeprecated-declarations]
>>          fprintf(stderr, "%s: %s\n", func,
>> ERR_error_string(ERR_get_error(), NULL));
>>                                            ^
> []
> Isn't the warning a warning ;-)
> I don't see this warnings because my openssl comes from
> /opt/local/include (Mac ports)
> Does anybody know which new functions exist in Mac OS X versions >= 10.7  ?

I am not a Mac person, but is this about APPLE_COMMON_CRYPTO support
added in 4dcd7732 (Makefile: add support for Apple CommonCrypto
facility, 2013-05-19) and be4c828b (imap-send: eliminate HMAC
deprecation warnings on Mac OS X, 2013-05-19)?  Specifically, the
log message for 4dcd7732 begins like so:

    Makefile: add support for Apple CommonCrypto facility
    
    As of Mac OS X 10.7, Apple deprecated all OpenSSL functions due to
    OpenSSL ABI instability, thus leading to build warnings.  As a
    replacement, Apple encourages developers to migrate to its own (stable)
    CommonCrypto facility.

In the Makefile we seem to have this:

    # Define NO_APPLE_COMMON_CRYPTO if you are building on Darwin/Mac OS X
    # and do not want to use Apple's CommonCrypto library.  This allows you
    # to provide your own OpenSSL library, for example from MacPorts.

which makes it sound like using APPLE_COMMON_CRYPTO is the default
for Mac.  Perhaps those who do want to use CommonCrypto to avoid
warnings should not define that macro?