1 | # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 |
---|
2 | # $Id: Portfile 132609 2015-02-05 21:50:33Z larryv@macports.org $ |
---|
3 | |
---|
4 | PortSystem 1.0 |
---|
5 | PortGroup muniversal 1.0 |
---|
6 | |
---|
7 | name openssl |
---|
8 | epoch 1 |
---|
9 | version 1.0.1k |
---|
10 | |
---|
11 | # At least the following ports statically link OpenSSL and need to be revbumped |
---|
12 | # for every update of OpenSSL: |
---|
13 | # - ... |
---|
14 | # Although they dynamically link OpenSSL, at least the following ports need to |
---|
15 | # be revbumped for every update of OpenSSL: |
---|
16 | # - freeradius |
---|
17 | # - tor |
---|
18 | # These lists aren't exhaustive. Feel free to add more entries as you find them. |
---|
19 | |
---|
20 | categories devel security |
---|
21 | platforms darwin |
---|
22 | license OpenSSL SSLeay |
---|
23 | maintainers larryv cal openmaintainer |
---|
24 | |
---|
25 | description OpenSSL SSL/TLS cryptography library |
---|
26 | long_description The OpenSSL Project is a collaborative effort to \ |
---|
27 | develop a robust, commercial-grade, full-featured, \ |
---|
28 | and Open Source toolkit implementing the Secure \ |
---|
29 | Sockets Layer (SSL v2/v3) and Transport Layer \ |
---|
30 | Security (TLS v1) protocols as well as \ |
---|
31 | a full-strength general purpose cryptography \ |
---|
32 | library. |
---|
33 | homepage http://www.openssl.org/ |
---|
34 | |
---|
35 | depends_lib port:zlib |
---|
36 | |
---|
37 | master_sites http://www.openssl.org/source/ |
---|
38 | checksums md5 d4f002bd22a56881340105028842ae1f \ |
---|
39 | sha1 19d818e202558c212a9583fcdaf876995a633ddf \ |
---|
40 | rmd160 e22c085189c6ce640378f0cc67faa512b4b873f2 \ |
---|
41 | sha256 8f9faeaebad088e772f4ef5e38252d472be4d878c6b3a2718c10a4fcebe7a41c |
---|
42 | |
---|
43 | patchfiles patch-bn_internal.pod.diff \ |
---|
44 | patch-Configure.diff \ |
---|
45 | patch-crypto-Makefile.diff \ |
---|
46 | patch-Makefile.org-parallel.diff \ |
---|
47 | patch-Makefile.org.diff |
---|
48 | post-patch { |
---|
49 | # Ensure that the correct compiler is used |
---|
50 | reinplace "s|cc:|${configure.cc}:|" ${worksrcpath}/Configure |
---|
51 | # use SDK if necessary |
---|
52 | if {${configure.sdkroot} ne ""} { |
---|
53 | reinplace "s|\\(-arch \[_a-zA-Z0-9\]*\\)|\\1 -isysroot ${configure.sdkroot}|" ${worksrcpath}/Configure |
---|
54 | } |
---|
55 | } |
---|
56 | |
---|
57 | configure.ccache no |
---|
58 | configure.perl /usr/bin/perl |
---|
59 | configure.cmd ./Configure |
---|
60 | configure.args -L${prefix}/lib \ |
---|
61 | no-krb5 \ |
---|
62 | --openssldir=${prefix}/etc/openssl \ |
---|
63 | shared \ |
---|
64 | zlib |
---|
65 | platform darwin 8 i386 { |
---|
66 | configure.args-append no-asm |
---|
67 | } |
---|
68 | |
---|
69 | destroot.args MANDIR=${prefix}/share/man MANSUFFIX=ssl |
---|
70 | destroot.destdir INSTALL_PREFIX=${destroot} |
---|
71 | |
---|
72 | test.run yes |
---|
73 | test.dir ${worksrcpath}/test |
---|
74 | test.target alltests |
---|
75 | |
---|
76 | livecheck.type regex |
---|
77 | livecheck.url ${master_sites} |
---|
78 | livecheck.regex ${name}-(\[0-9.\]+\[a-z\]?)\\.tar\\.gz |
---|
79 | |
---|
80 | # code for universal build |
---|
81 | array set merger_configure_args { |
---|
82 | ppc darwin-ppc-cc |
---|
83 | i386 darwin-i386-cc |
---|
84 | ppc64 darwin64-ppc-cc |
---|
85 | x86_64 darwin64-x86_64-cc |
---|
86 | } |
---|
87 | |
---|
88 | if {[variant_isset universal]} { |
---|
89 | set merger_arch_compiler "no" |
---|
90 | |
---|
91 | configure.universal_args-delete --disable-dependency-tracking |
---|
92 | |
---|
93 | pre-destroot { |
---|
94 | global merger_dont_diff |
---|
95 | if {[llength ${universal_archs_to_use}] > 2} { |
---|
96 | lappend merger_dont_diff ${prefix}/include/openssl/opensslconf.h |
---|
97 | } |
---|
98 | } |
---|
99 | |
---|
100 | # Do not set --host. |
---|
101 | array set merger_host { |
---|
102 | ppc {} |
---|
103 | i386 {} |
---|
104 | ppc64 {} |
---|
105 | x86_64 {} |
---|
106 | } |
---|
107 | } elseif {[info exists merger_configure_args($build_arch)]} { |
---|
108 | configure.args-append $merger_configure_args($build_arch) |
---|
109 | } |
---|
110 | |
---|
111 | variant rfc3779 description {enable RFC 3779: X.509 Extensions for IP Addresses and AS Identifiers} { |
---|
112 | configure.args-append enable-rfc3779 |
---|
113 | } |
---|