<pre style='margin:0'>
kimura wataru (kimuraw) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/3cdf53308a0340c669026607fb4fe44c203e90a4">https://github.com/macports/macports-ports/commit/3cdf53308a0340c669026607fb4fe44c203e90a4</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 3cdf53308a0 lang/ruby30: new port for ruby-3.0.x
</span>3cdf53308a0 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 3cdf53308a0340c669026607fb4fe44c203e90a4
</span>Author: kimura wataru <kimuraw@macports.org>
AuthorDate: Sun Dec 27 23:06:48 2020 +0900

<span style='display:block; white-space:pre;color:#404040;'>    lang/ruby30: new port for ruby-3.0.x
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    - https://www.ruby-lang.org/en/news/2020/12/25/ruby-3-0-0-released/
</span><span style='display:block; white-space:pre;color:#404040;'>    - https://github.com/ruby/ruby/blob/v3_0_0/NEWS.md
</span>---
 lang/ruby30/Portfile     | 143 +++++++++++++++++++++++++++++++++++++++++++++++
 lang/ruby30/files/ruby30 |  19 +++++++
 2 files changed, 162 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/ruby30/Portfile b/lang/ruby30/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..bd28eb43e55
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/ruby30/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,143 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem          1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           select 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name                ruby30
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             3.0.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          lang ruby
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers         {kimuraw @kimuraw} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms           darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         Powerful and clean object-oriented scripting language
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    Ruby is the interpreted scripting language for quick \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    and easy object-oriented programming. It has many \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    features to process text files and to do system \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    management tasks (as in Perl). It is simple, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    straight-forward, extensible, and portable.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage            https://www.ruby-lang.org/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             {Ruby BSD}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites        ruby:3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname            ruby-${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+dist_subdir         ruby30
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           md5 d6af36269a1b0bc278236d371543ad97 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160 8351564472580096adadce10e67856ac646eab12 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha1 233873708c1ce9fdc295e0ef1c25e64f9b98b062 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256 a13ed141a1c18eb967aac1e33f4d6ad5f21be1ac543c344e0d6feeee54af8e28 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   size 19539509
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_parallel_build  no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib         port:readline \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:lib/libssl.dylib:openssl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:zlib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:libyaml \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:libffi \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:gdbm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_run         port:ruby_select
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build       port:pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_skip_archcheck pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+select.group        ruby
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+select.file         ${filespath}/ruby30
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args      --enable-shared \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --enable-install-static-library \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-install-doc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --mandir="${prefix}/share/man" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --enable-pthread \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --without-gmp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --with-opt-dir="${prefix}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --program-suffix=3.0 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --with-rubylibprefix="${prefix}/lib/ruby3.0" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --without-baseruby
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# [NOTE] workaround for mismatch of sdk versions on macOS 11.x,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# such as MacOSX11.0.sdk (buildbot) <=> MacOSX11.1.sdk (user's Mac).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# see ruby27/Portfile
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-build {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.major} == 20} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # ruby saves its' compile options (CFLAGS, LDFLAGS, ..) in "rbconfig.rb" at build,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # and uses the options when complile binary extensions.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # rewrite MacOSX11.1.sdk -> MacOSX.sdk in rbconfig.rb
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        file copy ${worksrcpath}/rbconfig.rb ${worksrcpath}/rbconfig.rb.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace -E -q {s|(/MacOSX)[0-9\.]+(\.sdk[\'\"]?[[:blank:]])|\1\2|g} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+               ${worksrcpath}/rbconfig.rb \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+               ${worksrcpath}/ruby-3.0.pc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace -E -q {s|(/MacOSX)[0-9\.]+(\.sdk[\'\"]?)$|\1\2|g} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+               ${worksrcpath}/rbconfig.rb \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+               ${worksrcpath}/ruby-3.0.pc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Add the architecture flag as required
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {[info exists build_arch] && ${build_arch} != ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append "--with-arch=${build_arch}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # (see rb-bundler) sh "gem build ..." -> sh "gem3.0 build ..."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace -E "s/(gem) (build|install|push)/gem3.0 \\2/g" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${worksrcpath}/lib/bundler/gem_helper.rb
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach type {site vendor} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set libdir ${destroot}${prefix}/lib/ruby3.0/${type}_ruby/3.0.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        xinstall -m 0755 -d ${libdir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach subdir [exec find ${libdir} -type d -empty] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            destroot.keepdirs-append ${subdir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # install destination of commands from port:rb30-*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -m 0755 -d ${destroot}${prefix}/libexec/ruby3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    destroot.keepdirs-append ${destroot}${prefix}/libexec/ruby3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant doc description "Install rdoc indexes and C API documents" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-delete   --disable-install-doc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant gmp description "use gmp" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-delete   --without-gmp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_lib-append      port:gmp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant jemalloc description "use jemalloc" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-delete   --without-jemalloc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append   --with-jemalloc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_lib-append      port:jemalloc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant relative description "Enable relative loading of libraries to allow for relocation of binaries." {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #enable relative loading
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append  --enable-load-relative
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# legacy systems suport
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform darwin {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_build-append    port:gmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        build.cmd               ${prefix}/bin/gmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append   --disable-dtrace
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cflags-append -std=c99
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.major} == 8} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cppflags-append -DCPU_SUBTYPE_MASK=0xff000000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.type  regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.url   https://cache.ruby-lang.org/pub/ruby/3.0/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex ruby-(3\\.0\\.\\d+)[quotemeta ${extract.suffix}]
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/ruby30/files/ruby30 b/lang/ruby30/files/ruby30
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..6a42c37fb29
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/ruby30/files/ruby30
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,19 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/erb3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/gem3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/irb3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/rake3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/rdoc3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/ri3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/ruby3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+share/man/man1/erb3.0.1.gz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+share/man/man1/irb3.0.1.gz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+share/man/man1/ri3.0.1.gz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+share/man/man1/ruby3.0.1.gz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/bundle3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/bundler3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+share/man/man1/bundle3.0.1.gz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/racc3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/typeprof3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/rbs3.0
</span></pre><pre style='margin:0'>

</pre>