Opened 14 years ago

Closed 13 years ago

#25607 closed defect (fixed)

p5-crypt-ssleay doesn't build against macports openssl

Reported by: danielluke (Daniel J. Luke) Owned by: mas@…
Priority: Normal Milestone:
Component: ports Version: 1.9.2
Keywords: Cc: mas@…
Port: p5-crypt-ssleay

Description

This may be a result of the macports openssl upgrade to 1.0.0a, but the port should probably make an effort to make the macports openssl be the one that is selected when building...

--->  Configuring p5-crypt-ssleay
DEBUG: Using compiler 'Mac OS X gcc 4.0'
DEBUG: configure phase started at Fri Jul  9 17:02:37 EDT 2010
DEBUG: Executing org.macports.configure (p5-crypt-ssleay)
DEBUG: Environment: CPATH='/opt/local/include' CFLAGS='-pipe -O2 -arch ppc' CPPFLAGS='-I/opt/local/include' CXXFLAGS='-pipe -O2 -arch ppc' LIBRARY_PATH='/opt/local/lib' MACOSX_DEPLOYMENT_TARGET='10.5' CXX='/usr/bin/g++-4.0' CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_perl_p5-crypt-ssleay/work/.CC_PRINT_OPTIONS' F90FLAGS='-pipe -O2 -m32' LDFLAGS='-L/opt/local/lib -arch ppc' FCFLAGS='-pipe -O2 -m32' OBJC='/usr/bin/gcc-4.0' INSTALL='/usr/bin/install -c' PERL_AUTOINSTALL='--skipdeps' OBJCFLAGS='-pipe -O2 -arch ppc' FFLAGS='-pipe -O2 -m32' CC_PRINT_OPTIONS='YES' CC='/usr/bin/gcc-4.0'
DEBUG: Assembled command: 'cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_perl_p5-crypt-ssleay/work/Crypt-SSLeay-0.57" && /opt/local/bin/perl Makefile.PL INSTALLDIRS=vendor'
=======================================================
Only one OpenSSL installation found at /usr
Consider running 'perl Makefile.PL --default' the next
time Crypt::SSLeay is upgraded to select this directory
automatically thereby avoiding the following prompt.
=======================================================
Which SSL install path do you want to use? [/usr] /usr

BUILD INFORMATION
================================================
ssl library: OpenSSL 0.9.7 in /usr
ssl header:  openssl/ssl.h
libraries:   -L/usr/lib -lssl -lcrypto -lgcc
include dir: -I/usr/include/openssl
================================================

Attachments (1)

p5-crypt-ssleay-0.58.patch (1.2 KB) - added by l2g@… 13 years ago.
Update to version 0.58; explicitly point to MacPorts tree during configure phase so debug messages make sense

Download all attachments as: .zip

Change History (9)

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

Despite this message printed during the configure phase, the openssl that actually gets used is the MacPorts one:

$ otool -L /opt/local/lib/perl5/vendor_perl/5.8.9/darwin-2level/auto/Crypt/SSLeay/SSLeay.bundle
/opt/local/lib/perl5/vendor_perl/5.8.9/darwin-2level/auto/Crypt/SSLeay/SSLeay.bundle:
	/opt/local/lib/libssl.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
	/opt/local/lib/libcrypto.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.0)

comment:2 Changed 13 years ago by l2g@…

Owner: changed from mas@… to l2g@…
Status: newassigned
Version: 1.9.11.9.2

I edited the portfile to update Crypt::SSLeay to 0.58 and to override configure.args to give Makefile.PL a --lib switch that explicitly points to the MacPorts tree. It gives more comforting messages at configure time now:

--->  Configuring p5-crypt-ssleay
DEBUG: Using compiler 'Mac OS X gcc 4.2'
DEBUG: configure phase started at Mon Jan 24 19:38:44 PST 2011
DEBUG: Executing org.macports.configure (p5-crypt-ssleay)
DEBUG: Environment: CPATH='/opt/local/include' CFLAGS='-O2 -arch i386' CPPFLAGS='-I/opt/local/include' CXXFLAGS='-O2 -arch i386' LIBRARY_PATH='/opt/local/lib' MACOSX_DEPLOYMENT_TARGET='10.6' CXX='/usr/bin/g++-4.2' CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_perl_p5-crypt-ssleay/work/.CC_PRINT_OPTIONS' F90FLAGS='-O2 -m32' LDFLAGS='-L/opt/local/lib -arch i386' FCFLAGS='-O2 -m32' OBJC='/usr/bin/gcc-4.2' INSTALL='/usr/bin/install -c' PERL_AUTOINSTALL='--skipdeps' OBJCFLAGS='-O2 -arch i386' FFLAGS='-O2 -m32' CC_PRINT_OPTIONS='YES' CC='/usr/bin/gcc-4.2'
DEBUG: Assembled command: 'cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_perl_p5-crypt-ssleay/work/Crypt-SSLeay-0.58" && /opt/local/bin/perl Makefile.PL --lib=/opt/local INSTALLDIRS=vendor'

BUILD INFORMATION
================================================
ssl library: OpenSSL 1.0.0c in /opt/local
ssl header:  openssl/ssl.h
libraries:   -L/opt/local/lib -lssl -lcrypto -lgcc
include dir: -I/opt/local/include
================================================
Checking if your kit is complete...
Looks good
Note (probably harmless): No library found for -lgcc
Writing Makefile for Crypt::SSLeay
The test suite can attempt to connect to public servers
to ensure that the code is working properly. If you are
behind a strict firewall or have no network connectivity,
these tests may fail (through no fault of the code).
Do you want to run the live tests (y/N)? [N] N

comment:3 Changed 13 years ago by l2g@…

Cc: mas@… added

Changed 13 years ago by l2g@…

Attachment: p5-crypt-ssleay-0.58.patch added

Update to version 0.58; explicitly point to MacPorts tree during configure phase so debug messages make sense

comment:4 Changed 13 years ago by mas@…

Owner: changed from l2g@… to mas@…
Status: assignednew

Thanks. I'm setting it to configure.args-append to stay more modular.

comment:5 Changed 13 years ago by mas@…

Resolution: fixed
Status: newclosed

fixed in r75440

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

Note that CPATH and LIBRARY_PATH are already set by default.

comment:7 Changed 13 years ago by jon.hermansen@…

Resolution: fixed
Status: closedreopened

I'm pretty sure that this change has introduced a dependency bug. The port requires "lib:libssl:openssl", but since we're passing --libs ${prefix} now, my build seems to fail out with:

DEBUG: Environment: CPATH='/opt/local/include' CFLAGS='-pipe -O2 -isysroot /Developer/SDKs/MacOSX10.5.sdk -arch i386 -arch x86_64' CPPFLAGS='-I/opt/local/include -isysroot /Developer/SDKs/MacOSX10.5.sdk' CXXFLAGS='-pipe -O2 -isysroot /Developer/SDKs/MacOSX10.5.sdk -arch i386 -arch x86_64' MACOSX_DEPLOYMENT_TARGET='10.5' LIBRARY_PATH='/opt/local/lib' CXX='/usr/bin/g++-4.0' CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_perl_p5-crypt-ssleay/work/.CC_PRINT_OPTIONS' F90FLAGS='-pipe -O2' LDFLAGS='-L/opt/local/lib -Wl,-syslibroot,/Developer/SDKs/MacOSX10.5.sdk -arch i386 -arch x86_64' FCFLAGS='-pipe -O2' OBJC='/usr/bin/gcc-4.0' INSTALL='/usr/bin/install -c' C_INCLUDE_PATH='/opt/local/include' OBJCFLAGS='-pipe -O2 -isysroot /Developer/SDKs/MacOSX10.5.sdk -arch i386 -arch x86_64' FFLAGS='-pipe -O2' CC_PRINT_OPTIONS='YES' CC='/usr/bin/gcc-4.0'
DEBUG: Assembled command: 'cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_perl_p5-crypt-ssleay/work/Crypt-SSLeay-0.58" && /opt/local/bin/perl Makefile.PL INSTALLDIRS=vendor --lib=/opt/local'
========================================================================
No installed SSL libraries found in any of the following places.
    /opt/local
You will have to either specify a directory location at the following
prompt, or rerun the Makefile.PL program and use the --lib switch
to specify the path. If the path in question is considered standard
on your platform, please consider filing a bug report in order to
have it taken into account in a subsequent version of Crypt::SSLeay.

Found multiple possibilities for OpenSSL
Which SSL install path do you want to use?  
 does not appear to be an SSL library installation, since
the required header files were not found. The build cannot proceed.
--->  Building p5-crypt-ssleay

Can we require "port:openssl" instead?

comment:8 Changed 13 years ago by mas@…

Resolution: fixed
Status: reopenedclosed

You are right. Fixed in r77229.

Note: See TracTickets for help on using tickets.