source: trunk/dports/lang/ruby186/Portfile

Last change on this file was 146517, checked in by raimue@…, 21 months ago

Mass rev-bump dependents of port openssl due to ABI change

Disabling SSLv2 in r146162 changed the ABI of the library, leading to loading
errors for binaries with references to SSLv2 symbols.

https://lists.macosforge.org/pipermail/macports-dev/2016-March/032531.html

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 4.0 KB
Line 
1# $Id: Portfile 146517 2016-03-10 17:49:28Z ryandesign@macports.org $
2
3PortSystem 1.0
4
5name                    ruby186
6conflicts               ruby
7version                 1.8.6-p420
8revision        2
9
10categories              lang ruby
11maintainers             kimuraw openmaintainer
12
13description             Powerful and clean object-oriented scripting language
14long_description        Ruby is the interpreted scripting language for quick \
15                                        and easy object-oriented programming. It has many \
16                                        features to process text files and to do system \
17                                        management tasks (as in Perl). It is simple, \
18                                        straight-forward, extensible, and portable. \
19                                        Note: this port conflicts with the ruby port, so you \
20                                        can have either that or this one active at one time.
21homepage                http://www.ruby-lang.org/
22license                 {Ruby GPL-2}
23master_sites    ruby:1.8
24use_bzip2               yes
25
26dist_subdir             ruby
27distname                ruby-${version}
28checksums               md5     1c7a978e9ffd4f56dc2ad74bbd2c34f3 \
29                                sha1    00e977ac46df0ccd1545657426439a82f44bf284 \
30                                rmd160  2f76f19e0a3a35d92200769052d4a049c1478c42
31
32platforms               darwin
33
34depends_lib             port:libiconv \
35                                port:readline \
36                                path:lib/libssl.dylib:openssl \
37                                port:zlib \
38                                port:ncurses \
39                                port:gdbm
40
41# enable vendordir
42patchfiles              patch-vendordir.diff
43
44# bug15528: TCPServer.open('localhost', 0) fails on some Mac
45# [ruby-core:21033]: The DRb code in drb.rb does not correctly deal with
46#                    multiple network families if they're present.
47# #25647: build failure with openssl 1.0.0
48#         patch from http://redmine.ruby-lang.org/issues/show/2022
49# ruby_bug3674: http://redmine.ruby-lang.org/issues/show/3674
50### [ruby-core:25606]: Virtual Timer Expired when forking
51patchfiles-append \
52                                patch-bug15528.diff \
53                                patch-ruby_core21033.diff \
54                                patch-bug25647.diff \
55                                patch-ruby_bug3674.diff
56
57# dot-darwin.diff: avoid "darwin" matches /win/ in lib/rdoc/options.rb
58# etc-irbrc.diff: require /etc/irbrc when the platform is not Windows
59# md5_sha1_commoncrypto.diff: use CommonCrypto when available
60# use-setreugid.diff: use setreuid()/setregid() on 10.5 or later
61# words-bigendian-from-arch.diff: [ruby-core:12895], [ruby-dev:32160]
62patchfiles-append       dot-darwin.diff \
63                                                etc-irbrc.diff \
64                                                md5_sha1_commoncrypto.diff \
65                                                use-setreugid.diff \
66                                                words-bigendian-from-arch.diff
67
68# #30275: ruby built with clang or llvm-gcc does not work
69# see list "MacPorts on Lion (common issues, fixes, and workarounds)"
70# http://lists.macosforge.org/pipermail/macports-dev/2011-July/015263.html
71compiler.blacklist *clang* *llvm-gcc-4.2
72
73configure.args  --enable-shared \
74                                --mandir="${prefix}/share/man" \
75                                --enable-pthread \
76                                --without-tk \
77                                --disable-ucontext
78
79if {![variant_isset universal] && [info exists build_arch] && ${build_arch} ne ""} {
80        configure.env-append ARCH_FLAG="-arch ${build_arch}"
81}
82
83destroot.target install install-doc
84post-destroot {
85        foreach type {site vendor} {
86                set libdir ${destroot}${prefix}/lib/ruby/${type}_ruby
87                xinstall -m 0755 -d ${libdir}
88
89                # special file for installation control of modules
90                xinstall -m 0644 ${filespath}/${type}-specific.rb ${libdir}
91
92                # prevent empty site/vendor directories from being pruned
93                foreach subdir [exec find ${libdir} -type d -empty] {
94                        destroot.keepdirs-append ${subdir}
95                }
96        }
97    # error at activate, for these case sensitive files
98        foreach rdoc {Exception2MessageMapper/fail-i.yaml \
99                                  REXML/Parsers/XPathParser/predicate-i.yaml} {
100                if {[file exists ${destroot}${prefix}/share/ri/1.8/system/${rdoc}]} {
101                        delete ${destroot}${prefix}/share/ri/1.8/system/${rdoc}
102                }
103        }
104}
105
106platform darwin {
107        # for proper rdoc/ri creation, make sure to link to destroot libruby.dylib
108        destroot.env    DYLD_LIBRARY_PATH=${destroot}${prefix}/lib
109}
110
111variant tk conflicts mactk description {Enable MacPorts Tk bindings} {
112        configure.args-delete   --without-tk
113        configure.args-append   --with-tk
114        depends_lib-append              port:tcl \
115                                                        port:tk
116}
117
118variant mactk conflicts tk description {Enable Mac OS X Tk framework bindings} {
119        configure.args-delete   --without-tk
120        configure.args-append   --enable-tcltk-framework
121}
122
123livecheck.type  regex
124livecheck.url   http://www.ruby-lang.org/en/downloads/
125livecheck.regex {>Ruby (.*?)</a> \\\(md5:}
126
Note: See TracBrowser for help on using the repository browser.