Opened 14 years ago

Closed 13 years ago

Last modified 13 years ago

#26813 closed defect (fixed)

MacPorts (on Linux) does not build against OpenSSL anymore

Reported by: mmpestorich (Mike M Pestorich) Owned by: macports-tickets@…
Priority: Low Milestone: MacPorts 2.0.0
Component: base Version:
Keywords: openssl libmd checksums Cc:
Port:

Description

On the MacPorts Download & Installation Page it lists a few requirements to build MacPorts on other platforms. One of those requirements is OpenSSL or libmd which are used for checksums. I remember way back when, I used to be able to compile MacPorts on my Linux system against OpenSSL, however, it seems for some time now I can only compile it successfully against a ported version of libmd. I have not found too many implementations of libmd for the Linux system. As such, I ended up porting over a FreeBSD 8 version of the library to run on Linux. It works fine, however, as it only gets used for my MacPorts installation and everything else on my system that uses MD5, SHA, etc... links against OpenSSL, I would like to get rid of it and not have to maintain a library ported from another operating system.

Here's what I have been able to ascertain so far. If I:

  • Set MD5_LIBS="-lcrypt"
  • Modify so <openssl/md5.h>, etc... is found by configure

I can get through configure but then I run into compile problems with some of the #defines in pextlib1.0/md5cmd.c and pextlib1.0/sha1cmd.c:

  • MD5File undefined
  • SHAFile undefined
  • SHA_HASHBYTES undefined

I haven't looked any further into this than that. But thought I'd put this up here to see if it makes sense to be able to link against OpenSSL's libcrypto.

Attachments (1)

macports-1.9.2.patch (6.9 KB) - added by mmpestorich (Mike M Pestorich) 13 years ago.

Download all attachments as: .zip

Change History (9)

comment:1 Changed 14 years ago by mmpestorich (Mike M Pestorich)

Sorry... it should read: Set MD5_LIBS="-lcrypto"

comment:2 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)

Yes, I believe I heard that MacPorts support for building on Linux got broken some versions ago. It's not a priority for most of us.

comment:3 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)

Type: requestdefect

comment:4 Changed 14 years ago by jmroot (Joshua Root)

Component: basewebsite
Milestone: MacPorts 2.0.0
Resolution: fixed
Status: newclosed
Version: 1.9.1

Updated the install page in r72375. The code for doing hashes with openssl got removed when we converted to using CommonCrypto, and the effort of bringing it back considerably outweighs the benefit (for me at least). Feel free to submit a patch if it's important to you. Most of what's needed is there in the svn history, just not in a form that integrates properly with the newer bits.

Changed 13 years ago by mmpestorich (Mike M Pestorich)

Attachment: macports-1.9.2.patch added

comment:5 Changed 13 years ago by mmpestorich (Mike M Pestorich)

Ok. Attached is a patch to bring back OpenSSL's libcrypto for those that don't have libmd (of which there is a great possibility I might be the only one).

Another oddity I noticed for those that run macports on a non-OSX platform is when --without-objc-runtime and --without-objc-foundation are passed to configure, configure will fail if not passed in that order. Just thought I'd note that. Not a big deal. I'm well enough satifisfied now that I have libcrypto back.

comment:6 Changed 13 years ago by jmroot (Joshua Root)

Component: websitebase
Milestone: MacPorts 2.0.0
Resolution: fixed
Status: closedreopened

comment:7 Changed 13 years ago by afb@…

Resolution: fixed
Status: reopenedclosed

Fixed, r26813.

Also restores the MacPorts support for FreeBSD, that was broken with the weird-libmd support.

comment:8 Changed 13 years ago by afb@…

Duh, r77865 (Ticket #26813).

Note: See TracTickets for help on using tickets.