git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Deprecation warnings under XCode

From
Eric Sunshine <sunshine@sunshineco.com>
Date
Dec 3, 2014, 00:37 UTC
Message-ID
<CAPig+cRvGaFJQZZ8CDeMMB6u1NKtqUrfe1aWC0OUG3xF9Nu34g@mail.gmail.com>
In-Reply-To
<xmqqoarnp7p2.fsf@gitster.dls.corp.google.com>
On Mon, Dec 1, 2014 at 1:04 PM, Junio C Hamano <gitster@pobox.com> wrote:
Show 15 quoted lines
> Torsten Bögershausen <tboegi@web.de> 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 have not been able to find suitable Mac OS X replacements (nor could I when resubmitting David's series [1] to use CommonCrypto).

Show 22 quoted lines
> 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?

It's been a long time [1] since I looked at it, but I believe that David's CommonCrypto patch series only replaced OpenSSL calls for which Apple had provided CommonCrypto replacements. If my memory is correct, there were still plenty of OpenSSL deprecations warnings remaining after his patches (the warnings which started this thread) even without defining NO_APPLE_COMMON_CRYPTO. Thus, David's patches reduced the number of warnings but did not fully eliminate them.

Checking again, it still seems to be the case that Apple neglects to provide CommonCrypto replacements for these OpenSSL functions which Apple itself deprecated.

[1]: http://thread.gmane.org/gmane.comp.version-control.git/224833
Previous: Junio C HamanoNext: Michael Blume
Message 5 of 11 in “Deprecation warnings under XCode”
  1. Michael BlumeDec 1, 2014
  2. Torsten BögershausenDec 1, 2014
  3. Kyle J. McKayDec 1, 2014
  4. Junio C HamanoDec 1, 2014
  5. Eric SunshineDec 3, 2014
  6. Michael BlumeDec 3, 2014
  7. Eric SunshineDec 3, 2014
  8. David AguilarDec 3, 2014
  9. Torsten BögershausenDec 3, 2014
  10. David AguilarDec 4, 2014
  11. Eric SunshineDec 3, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.