# $Id: Portfile 30017 2007-10-18 08:16:28Z mww@macports.org $ PortSystem 1.0 name openssl version 0.9.8f platforms darwin freebsd categories devel security maintainers mww homepage http://www.openssl.org/ description OpenSSL SSL/TLS cryptography library long_description \ The OpenSSL Project is a collaborative effort to develop a robust, \ commercial-grade, full-featured, and Open Source toolkit implementing \ the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security \ (TLS v1) protocols as well as a full-strength general purpose \ cryptography library. master_sites http://www.openssl.org/source/ checksums md5 114bf908eb1b293d11d3e6b18a09269f \ sha1 e8716370093b112763ace0c66c06a0d6049e413b \ rmd160 ad0d9d8b238dbede1aa6b76256d11038bd281e05 depends_lib port:zlib platform darwin { patchfiles patch-Makefile.org patch-crypto-Makefile } configure.cmd ./config configure.args -L${prefix}/lib --openssldir=${prefix}/etc/openssl zlib no-asm no-krb5 shared platform darwin 6 { depends_lib-append port:dlcompat } platform darwin 8 { build.args CC=/usr/bin/gcc-4.0 } destroot.destdir INSTALL_PREFIX=${destroot} destroot.args MANDIR=${prefix}/share/man test.run yes livecheck.check regex livecheck.url ${master_sites} livecheck.regex ${name}-(0.9.8\[a-z\]) variant universal { # port-specific procedure proc clean {} { system "make clean" foreach f [glob lib*.a lib*.*.*.*.dylib] { file delete ${f} } } # i386 # configure pre-configure { system "./Configure darwin-i386-cc ${configure.pre_args} ${configure.args} && \ patch < ${filespath}/patch-Makefiles-universal-i386" reinplace "s|^PROCESSOR=.*|PROCESSOR=|" ${worksrcpath}/Makefile } # build configure { system "make" } # backup, clean up post-configure { # get list of files to be backed up - only needs to be done once fs-traverse file . { if {![string equal [string range [file tail $file] end-1 end] .o]} { set type [exec file -b $file] if {[regexp {(Mach-O|ar archive)} $type]} { global universal_filelist lappend universal_filelist $file } } } backup i386 clean } # ppc # configure pre-build { system "./Configure darwin-ppc-cc ${configure.pre_args} ${configure.args} && \ patch < ${filespath}/patch-Makefiles-universal-ppc" } # build build { system "make" } # backup post-build { # there's already a list of files to be backed up global fileList backup ppc clean } # universal pre-destroot { global fileList system "make openssl.pc libssl.pc libcrypto.pc" lipo system "patch < ${filespath}/patch-Makefile-universal-install" } destroot.target install_docs install_sw # the test suite can only be run *after* destrooting test.run yes test.dir ${worksrcpath}/test test.target alltests }