see MacPorts Guide to know how to writing Portfile(s).
- Simple Gem
install bundler with ruby-2.2 rubygems.
# $Id: $
PortSystem 1.0
PortGroup ruby 1.0
ruby.setup bundler 1.10.1 gem {} rubygems ruby22
revision 0
license MIT
platforms darwin
maintainers nomaintainer
homepage http://bundler.io
description Ruby application dependency manager
long_description ${description}
checksums sha256 57e4b969ee140920b9d33d16b6cdffd9d0ed8302ecd1b0c5b4e6257938770e9e
NOTE: You need to get checksum(s) of the .gem file.
% gem2.2 fetch bundler
Fetching: bundler-1.10.1.gem (100%)
Downloaded bundler-1.10.1
% openssl sha256 bundler-1.10.1.gem
SHA256(bundler-1.10.1.gem)= 57e4b969ee140920b9d33d16b6cdffd9d0ed8302ecd1b0c5b4e6257938770e9e
%
- Dependencies
# $Id: $
PortSystem 1.0
PortGroup ruby 1.0
ruby.setup {rcairo cairo} 1.14.1 gem {} rubygems ruby22
revision 0
maintainers kimuraw
description Ruby bindings for cairo
long_description ${description}
license Ruby
checksums sha256 e93a7bc97687d2725b77f4651656f77a42a134e39129e05c853c6eac1929ae4d
platforms darwin
depends_lib-append port:cairo port:rb22-pkg-config
If your target software requires other packages (expect ruby), write the package names at "depends_lib-append".
- usage of ruby.setup
ruby.setup module version installation_type {docs ...} [source] ruby_version
module : name of target software. port name becomes prefix(rb22-, rub21-) + module, such as rb22-bundler.
installation_type : [gem|extconf.rb|setup.rb|...]
source : [rubygems|rubyforge|...] we can omit "source" when installation_type is "gem".
ruby_version : [ruby22|ruby21|ruby20|...]