[103918] trunk/dports

Joshua Root jmr at macports.org
Sun Mar 10 12:53:54 PDT 2013


> Revision: 103918
>           https://trac.macports.org/changeset/103918
> Author:   kimuraw at macports.org
> Date:     2013-03-09 18:04:04 -0800 (Sat, 09 Mar 2013)
> Log Message:
> -----------
> _resources/port1.0/group/ruby-1.0.tcl, lang/ruby, lang/ruby19: introduce `port select ruby`
> 
> file hierarchy:
> 
>     ${prefix}/bin
>         ruby1.8        - port:ruby
>         ruby1.9        - port:ruby19
>         nanoc3-1.8     - port:rb-nanoc3
>         nanoc3-1.9     - port:rb19-nanoc3
[...]
> Modified: trunk/dports/lang/ruby/Portfile
> ===================================================================
> --- trunk/dports/lang/ruby/Portfile	2013-03-10 02:00:31 UTC (rev 103917)
> +++ trunk/dports/lang/ruby/Portfile	2013-03-10 02:04:04 UTC (rev 103918)
> @@ -1,3 +1,4 @@
> +# -*- 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
>  # $Id$
>  
>  PortSystem		1.0
> @@ -2,7 +3,8 @@
>  PortGroup		muniversal 1.0
> -PortGroup               compiler_blacklist_versions 1.0
> +PortGroup		compiler_blacklist_versions 1.0
> +PortGroup		select 1.0
>  
>  name			ruby
>  version			1.8.7-p371
> -revision		1
> +revision		2
>  
> @@ -37,7 +39,11 @@
>  				port:zlib \
>  				port:ncurses \
>  				port:gdbm
> +depends_run		port:ruby_select
>  
> +select.group	ruby
> +select.file		${filespath}/ruby18
> +
>  # vendordir: enable vendor-specific.rb
>  # #3604: gcc4 fails to detect linking at configure
>  # #19050: use $(CC) not cc, this change has been merged at ruby-1.8 trunk
> @@ -99,10 +105,16 @@
>  				--enable-pthread \
>  				--without-tk \
>  				--with-vendordir=${prefix}/lib/ruby/vendor_ruby \
> -				--with-opt-dir=${prefix}
> +				--with-opt-dir=${prefix} \
> +				--program-suffix=1.8
>  # ignore minor version for archdir, like i686-darwin9
>  configure.env	UNAME_RELEASE=${os.major}
>  
> +# force libruby without suffix (backward compatibility)
> +post-configure {
> +	reinplace "s|^RUBY_SO_NAME=.*|RUBY_SO_NAME=ruby|" ${worksrcpath}/Makefile
> +}

Doesn't this require all rb-* ports to be rev bumped so they will use
the new interpreter path? I know at least rb-rbot fails to run with:

/opt/local/bin/rbot: bad interpreter: /opt/local/bin/ruby: no such file
or directory

And in that case, you might as well not rename libruby, right? In fact,
you might as well rename the ruby port to ruby18 wholesale.

- Josh


More information about the macports-dev mailing list