{"thread":{"id":"40851","subject":"[RFC] OS X El Capitan + Xcode ships without SSL header?!","startedAt":"2015-11-21T18:58:51Z","lastAt":"2015-12-01T09:04:02Z","messageCount":4,"participants":["Lars Schneider","Dair Grant","Torsten Bögershausen"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"273581","messageId":"BBD3F9B1-9FCA-4207-B374-3ADCF19F1431@gmail.com","threadId":"40851","inReplyTo":null,"subject":"[RFC] OS X El Capitan + Xcode ships without SSL header?!","fromName":"Lars Schneider","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-11-21T18:58:51Z","receivedAt":"2015-11-21T18:58:51Z","isPatch":false,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"Hi,\n\nI cannot build Git on a clean machine with OS X El Capitan 10.11, Xcode 7.1.1 and Xcode command line tools because of missing OpenSSL headers.\n\nIt looks like as there are no OpenSSL headers at all. I only found this weird non working version:\n/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift-migrator/sdk/MacOSX.sdk/usr/include/openssl/ssl.h\n\nI installed OpenSSL with brew, added the include path and it works.\n\nCan anyone confirm?\n\nThanks,\nLars\n"},{"id":"273587","messageId":"86841415-A635-4656-9EF5-02F543257FF4@feralinteractive.com","threadId":"40851","inReplyTo":"BBD3F9B1-9FCA-4207-B374-3ADCF19F1431@gmail.com","subject":"Re: [RFC] OS X El Capitan + Xcode ships without SSL header?!","fromName":"Dair Grant","fromEmail":"dair@feralinteractive.com","sentAt":"2015-11-22T13:12:24Z","receivedAt":"2015-11-22T13:12:24Z","isPatch":false,"sender":{"key":"dair@feralinteractive.com","avatar":null},"body":"\n> On 21 Nov 2015, at 18:58, Lars Schneider <larsxschneider@gmail.com> wrote:\n> \n> I installed OpenSSL with brew, added the include path and it works.\n> \n> Can anyone confirm?\n\nThat is correct. Xcode’s copy of OpenSSL has been deprecated since 10.7 and was removed for 10.11 in Xcode 7:\n\n   https://lists.apple.com/archives/macnetworkprog/2015/Jun/msg00025.html\n\n\n-dair"},{"id":"273821","messageId":"565B3036.8000604@web.de","threadId":"40851","inReplyTo":"BBD3F9B1-9FCA-4207-B374-3ADCF19F1431@gmail.com","subject":"Re: [RFC] OS X El Capitan + Xcode ships without SSL header?!","fromName":"Torsten Bögershausen","fromEmail":"tboegi@web.de","sentAt":"2015-11-29T17:04:54Z","receivedAt":"2015-11-29T17:04:54Z","isPatch":false,"sender":{"key":"tboegi@web.de","avatar":"https://avatars.githubusercontent.com/u/7138363?v=4"},"body":"On 21/11/15 19:58, Lars Schneider wrote:\n> Hi,\n> \n> I cannot build Git on a clean machine with OS X El Capitan 10.11, Xcode 7.1.1 and Xcode command line tools because of missing OpenSSL headers.\n> \n> It looks like as there are no OpenSSL headers at all. I only found this weird non working version:\n> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift-migrator/sdk/MacOSX.sdk/usr/include/openssl/ssl.h\n> \n> I installed OpenSSL with brew, added the include path and it works.\n> \n> Can anyone confirm?\n> \n> Thanks,\n> Lars\n> \n(Does it make sense that you send a patch which auto-detects brew similar to fink or mac ports?)\n\nAfter some proper updating of one test machine I ran into the same problem.\nA possible patch may look like this:\n\n\ncommit 5e7c16f3350e8e62bfdb181b0b5da7352945d046\nAuthor: Torsten Bögershausen <tboegi@web.de>\nDate:   Sun Nov 29 17:29:22 2015 +0100\n\n    Mac OS X 10.11: set NO_OPENSSL\n    \n    There is no openssl/ directory any more in Mac OS X 10.11,\n    openssl is depracated since Mac OS X 10.7\n    \n    Set NO_OPENSSL to YesPlease as default under Mac OS X, and make it\n    possible to override this and use openssl by defining DARWIN_OPENSSL\n\ndiff --git a/config.mak.uname b/config.mak.uname\nindex f34dcaa..a8a8b07 100644\n--- a/config.mak.uname\n+++ b/config.mak.uname\n@@ -105,6 +105,12 @@ ifeq ($(uname_S),Darwin)\n        ifeq ($(shell test \"`expr \"$(uname_R)\" : '\\([0-9][0-9]*\\)\\.'`\" -ge 11 && echo 1),1)\n                HAVE_GETDELIM = YesPlease\n        endif\n+       # MacOS 10.11  and higher\n+       ifeq ($(shell test \"`expr \"$(uname_R)\" : '\\([0-9][0-9]*\\)\\.'`\" -ge 15 && echo 1),1)\n+               ifndef DARWIN_OPENSSL\n+                       NO_OPENSSL = YesPlease\n+               endif\n+       endif\n        NO_MEMMEM = YesPlease\n        USE_ST_TIMESPEC = YesPlease\n        HAVE_DEV_TTY = YesPlease\n"},{"id":"273856","messageId":"7AD88D08-04E7-485E-9465-692F3043C445@gmail.com","threadId":"40851","inReplyTo":"565B3036.8000604@web.de","subject":"Re: [RFC] OS X El Capitan + Xcode ships without SSL header?!","fromName":"Lars Schneider","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-12-01T09:04:02Z","receivedAt":"2015-12-01T09:04:02Z","isPatch":false,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"\nOn 29 Nov 2015, at 18:04, Torsten Bögershausen <tboegi@web.de> wrote:\n\n> On 21/11/15 19:58, Lars Schneider wrote:\n>> Hi,\n>> \n>> I cannot build Git on a clean machine with OS X El Capitan 10.11, Xcode 7.1.1 and Xcode command line tools because of missing OpenSSL headers.\n>> \n>> It looks like as there are no OpenSSL headers at all. I only found this weird non working version:\n>> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift-migrator/sdk/MacOSX.sdk/usr/include/openssl/ssl.h\n>> \n>> I installed OpenSSL with brew, added the include path and it works.\n>> \n>> Can anyone confirm?\n>> \n>> Thanks,\n>> Lars\n>> \n> (Does it make sense that you send a patch which auto-detects brew similar to fink or mac ports?)\nI think that would make sense. I'll look into it if I find some free cycles...\n\n> \n> After some proper updating of one test machine I ran into the same problem.\n> A possible patch may look like this:\n> \n> \n> commit 5e7c16f3350e8e62bfdb181b0b5da7352945d046\n> Author: Torsten Bögershausen <tboegi@web.de>\n> Date:   Sun Nov 29 17:29:22 2015 +0100\n> \n>    Mac OS X 10.11: set NO_OPENSSL\n> \n>    There is no openssl/ directory any more in Mac OS X 10.11,\n>    openssl is depracated since Mac OS X 10.7\n> \n>    Set NO_OPENSSL to YesPlease as default under Mac OS X, and make it\n>    possible to override this and use openssl by defining DARWIN_OPENSSL\n> \n> diff --git a/config.mak.uname b/config.mak.uname\n> index f34dcaa..a8a8b07 100644\n> --- a/config.mak.uname\n> +++ b/config.mak.uname\n> @@ -105,6 +105,12 @@ ifeq ($(uname_S),Darwin)\n>        ifeq ($(shell test \"`expr \"$(uname_R)\" : '\\([0-9][0-9]*\\)\\.'`\" -ge 11 && echo 1),1)\n>                HAVE_GETDELIM = YesPlease\n>        endif\n> +       # MacOS 10.11  and higher\n> +       ifeq ($(shell test \"`expr \"$(uname_R)\" : '\\([0-9][0-9]*\\)\\.'`\" -ge 15 && echo 1),1)\n> +               ifndef DARWIN_OPENSSL\n> +                       NO_OPENSSL = YesPlease\n> +               endif\n> +       endif\n\nThat would propably do it. However, what are the ramifications here? Does this affect `git clone` over HTTPS or even SSH? Sorry if this question sounds stupid but I am not too familiar with these systems. If there are indeed these severe ramifications then I would probably print a little tutorial how to install OpenSSL via brew.\n\nMaybe one could use Apple's TLS implementation [1] on OS X alternatively. However, I don't know how different the APIs are and the resulting \"ifdefs\" are probably undesired.\n\nCheers,\nLars\n\n[1] https://developer.apple.com/library/mac/documentation/Security/Reference/secureTransportRef/\n\n\n "}]}