OpenSSL 1.0.1c, Mac OS X, -no-XXX, and [missing] make depend

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

OpenSSL 1.0.1c, Mac OS X, -no-XXX, and [missing] make depend

Jeffrey Walton-3
Hi All,

I'm having problem building on Mac OS X (2012 MBP, OS X 10.8, Xcode
4.5). The target is iOS, but this appears to be a host problem.

Apple lacks DTLS, STCP, and friends, so I needed to ./config with
-no-dtls. That required a `make depend` cycle.

`makedepend` is missing, so that resulted in an error:

openssl-1.0.1c jwalton$ make depend
making depend in crypto...
../util/domd: line 30: makedepend: command not found
mv: Makefile.new: No such file or directory
make[1]: *** [depend] Error 127
make: *** [depend] Error 1

$ find /usr/ -name makedepend 2>/dev/null
$ find /bin/ -name makedepend 2>/dev/null
$ find /Applications/Xcode.app/ -name makedepend 2>/dev/null
$ man makedepend
No manual entry for makedepend

I fetched `makedepend` from FreeDesktop.org
(http://xorg.freedesktop.org/releases/individual/util/). It would not
build due to missing dependencies. Ad infinitum.

INSTALL.MacOSX would be kind of funny if this wasn't a stopper for me :)

How are folks building on Mac OS X?

Jeff
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: OpenSSL 1.0.1c, Mac OS X, -no-XXX, and [missing] make depend

Jeffrey Walton-3
On Tue, Dec 25, 2012 at 8:35 AM, Jeffrey Walton <[hidden email]> wrote:

> Hi All,
>
> I'm having problem building on Mac OS X (2012 MBP, OS X 10.8, Xcode
> 4.5). The target is iOS, but this appears to be a host problem.
>
> Apple lacks DTLS, STCP, and friends, so I needed to ./config with
> -no-dtls. That required a `make depend` cycle.
>
> `makedepend` is missing, so that resulted in an error:
>
> openssl-1.0.1c jwalton$ make depend
> making depend in crypto...
> ../util/domd: line 30: makedepend: command not found
> mv: Makefile.new: No such file or directory
> make[1]: *** [depend] Error 127
> make: *** [depend] Error 1
Open the Makefile generated by ./config. Its located in the root of
openssl-1.0.1x. Scroll down to line 75 or so. Change
MAKEDEPPROG=makedepend to:

    MAKEDEPPROG=$(CC) -M

And some things that don't work:

    MAKEDEPPROG=/usr/bin/gcc -M
    MAKEDEPPROG=gcc -M
    MAKEDEPPROG=llv-gcc -M

Jeff
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: OpenSSL 1.0.1c, Mac OS X, -no-XXX, and [missing] make depend

Ben Laurie-2
In reply to this post by Jeffrey Walton-3
On Tue, Dec 25, 2012 at 1:35 PM, Jeffrey Walton <[hidden email]> wrote:
> I fetched `makedepend` from FreeDesktop.org
> (http://xorg.freedesktop.org/releases/individual/util/). It would not
> build due to missing dependencies. Ad infinitum.

$ port search makedepend
makedepend @1.0.4 (x11, devel)
    Create dependencies in makefiles
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: OpenSSL 1.0.1c, Mac OS X, -no-XXX, and [missing] make depend

Jeffrey Walton-3
On Wed, Dec 26, 2012 at 9:57 AM, Ben Laurie <[hidden email]> wrote:
> On Tue, Dec 25, 2012 at 1:35 PM, Jeffrey Walton <[hidden email]> wrote:
>> I fetched `makedepend` from FreeDesktop.org
>> (http://xorg.freedesktop.org/releases/individual/util/). It would not
>> build due to missing dependencies. Ad infinitum.
>
> $ port search makedepend
> makedepend @1.0.4 (x11, devel)
>     Create dependencies in makefiles
Ah, thanks Ben. I did not think to try MacPorts.

Jeff
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: OpenSSL 1.0.1c, Mac OS X, -no-XXX, and [missing] make depend

Ben Laurie-2
On 26 December 2012 20:07, Jeffrey Walton <[hidden email]> wrote:

> On Wed, Dec 26, 2012 at 9:57 AM, Ben Laurie <[hidden email]> wrote:
>> On Tue, Dec 25, 2012 at 1:35 PM, Jeffrey Walton <[hidden email]> wrote:
>>> I fetched `makedepend` from FreeDesktop.org
>>> (http://xorg.freedesktop.org/releases/individual/util/). It would not
>>> build due to missing dependencies. Ad infinitum.
>>
>> $ port search makedepend
>> makedepend @1.0.4 (x11, devel)
>>     Create dependencies in makefiles
> Ah, thanks Ben. I did not think to try MacPorts.

BTW, commit a6bbbf2ff5580addb917a8b4f1160f90af91d268, when I push it,
fixes this to use clang instead of makdepend (in master, I may update
other branches, too).

>
> Jeff
> ______________________________________________________________________
> OpenSSL Project                                 http://www.openssl.org
> User Support Mailing List                    [hidden email]
> Automated List Manager                           [hidden email]
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: OpenSSL 1.0.1c, Mac OS X, -no-XXX, and [missing] make depend

Jeffrey Walton-3
On Sat, Jan 19, 2013 at 9:17 AM, Ben Laurie <[hidden email]> wrote:

> On 26 December 2012 20:07, Jeffrey Walton <[hidden email]> wrote:
>> On Wed, Dec 26, 2012 at 9:57 AM, Ben Laurie <[hidden email]> wrote:
>>> On Tue, Dec 25, 2012 at 1:35 PM, Jeffrey Walton <[hidden email]> wrote:
>>>> I fetched `makedepend` from FreeDesktop.org
>>>> (http://xorg.freedesktop.org/releases/individual/util/). It would not
>>>> build due to missing dependencies. Ad infinitum.
>>>
>>> $ port search makedepend
>>> makedepend @1.0.4 (x11, devel)
>>>     Create dependencies in makefiles
>> Ah, thanks Ben. I did not think to try MacPorts.
>
> BTW, commit a6bbbf2ff5580addb917a8b4f1160f90af91d268, when I push it,
> fixes this to use clang instead of makdepend (in master, I may update
> other branches, too).
Thanks Ben.

Let me know if you would like me to test it on modern Mac OS X,
including iOS cross compile environment before you commit.

My eventual desire is to have configure targets for iphoneos,
iphonesimulator, and macosx that use SYSROOT. The darwin targets will
not be touched.

I can then package the libraries, the headers and their tools (incore)
into a Framework, and stop fighting Xcode and its Build Settings
(including the cursed User Paths and System Paths). Its not so much me
- its more for the organizations I work with.

Jeff
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: OpenSSL 1.0.1c, Mac OS X, -no-XXX, and [missing] make depend

Ben Laurie-2
On 19 January 2013 16:31, Jeffrey Walton <[hidden email]> wrote:

> On Sat, Jan 19, 2013 at 9:17 AM, Ben Laurie <[hidden email]> wrote:
>> On 26 December 2012 20:07, Jeffrey Walton <[hidden email]> wrote:
>>> On Wed, Dec 26, 2012 at 9:57 AM, Ben Laurie <[hidden email]> wrote:
>>>> On Tue, Dec 25, 2012 at 1:35 PM, Jeffrey Walton <[hidden email]> wrote:
>>>>> I fetched `makedepend` from FreeDesktop.org
>>>>> (http://xorg.freedesktop.org/releases/individual/util/). It would not
>>>>> build due to missing dependencies. Ad infinitum.
>>>>
>>>> $ port search makedepend
>>>> makedepend @1.0.4 (x11, devel)
>>>>     Create dependencies in makefiles
>>> Ah, thanks Ben. I did not think to try MacPorts.
>>
>> BTW, commit a6bbbf2ff5580addb917a8b4f1160f90af91d268, when I push it,
>> fixes this to use clang instead of makdepend (in master, I may update
>> other branches, too).
> Thanks Ben.
>
> Let me know if you would like me to test it on modern Mac OS X,
> including iOS cross compile environment before you commit.

I didn't make the corresponding change for cross compiles since I
don't do those, though it should be trivial, I guess - do they also
use cc?

> My eventual desire is to have configure targets for iphoneos,
> iphonesimulator, and macosx that use SYSROOT. The darwin targets will
> not be touched.
>
> I can then package the libraries, the headers and their tools (incore)
> into a Framework, and stop fighting Xcode and its Build Settings
> (including the cursed User Paths and System Paths). Its not so much me
> - its more for the organizations I work with.
>
> Jeff
> ______________________________________________________________________
> OpenSSL Project                                 http://www.openssl.org
> User Support Mailing List                    [hidden email]
> Automated List Manager                           [hidden email]
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: OpenSSL 1.0.1c, Mac OS X, -no-XXX, and [missing] make depend

Jeffrey Walton-3
On Sat, Jan 19, 2013 at 11:42 AM, Ben Laurie <[hidden email]> wrote:

> On 19 January 2013 16:31, Jeffrey Walton <[hidden email]> wrote:
>> On Sat, Jan 19, 2013 at 9:17 AM, Ben Laurie <[hidden email]> wrote:
>>> On 26 December 2012 20:07, Jeffrey Walton <[hidden email]> wrote:
>>>> On Wed, Dec 26, 2012 at 9:57 AM, Ben Laurie <[hidden email]> wrote:
>>>>> On Tue, Dec 25, 2012 at 1:35 PM, Jeffrey Walton <[hidden email]> wrote:
>>>>>> I fetched `makedepend` from FreeDesktop.org
>>>>>> (http://xorg.freedesktop.org/releases/individual/util/). It would not
>>>>>> build due to missing dependencies. Ad infinitum.
>>>>>
>>>>> $ port search makedepend
>>>>> makedepend @1.0.4 (x11, devel)
>>>>>     Create dependencies in makefiles
>>>> Ah, thanks Ben. I did not think to try MacPorts.
>>>
>>> BTW, commit a6bbbf2ff5580addb917a8b4f1160f90af91d268, when I push it,
>>> fixes this to use clang instead of makdepend (in master, I may update
>>> other branches, too).
>> Thanks Ben.
>>
>> Let me know if you would like me to test it on modern Mac OS X,
>> including iOS cross compile environment before you commit.
>
> I didn't make the corresponding change for cross compiles since I
> don't do those, though it should be trivial, I guess - do they also
> use cc?
>
>> My eventual desire is to have configure targets for iphoneos,
>> iphonesimulator, and macosx that use SYSROOT. The darwin targets will
>> not be touched.
>>
>> I can then package the libraries, the headers and their tools (incore)
>> into a Framework, and stop fighting Xcode and its Build Settings
>> (including the cursed User Paths and System Paths). Its not so much me
>> - its more for the organizations I work with.
Well, I set CROSS_CHAIN and CROSS_COMPILE to
/Applications/Xcode/Developer.../<Platform>/SDKs/..../usr/bin. I
believe that means llvm-gcc. I don't explicitly set CC in the scripts
(the scripts are based on Tim's original work).

The <Plaform> above can be MacOSX, iPhoneOS, or iPhoneSimulator.

I also put CROSS_COMPILE on path as the first entry.

When I set CROSS_COMPILE, `MAKEDEPEND=makedepend` breaks. To fix it, I
open the Makefile and change it to `MAKEDEPEND=$(CC) -M`. Note: the
fix is need for FIPS Capable, but not needed for FIPS Object Module.

So I don't believe I am using CC by default, but I use CC to fix the
problem when I encounter it. I'm not sure what CC evaluates to. I will
check it the next time I have Xcode open.

if you are not adverse to a small change if needed, check it in and I
will go through a FIPS Object Module and FIPS Capable Library build.
I'll report back if there are problems.

Jeff
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]