Ruby is the interpreted scripting language for quick and
easy object-oriented programming. It has many features to
process text files and to do system management tasks (as in
Perl). It is simple, straight-forward, and extensible.
Features of Ruby are shown below.
+ Simple Syntax
+ *Normal* Object-Oriented features(ex. class, method calls)
+ *Advanced* Object-Oriented features(ex. Mix-in, Singleton-method)
+ Operator Overloading
+ Exception Handling
+ Iterators and Closures
+ Garbage Collection
+ Dynamic Loading of Object files(on some architecture)
+ Highly Portable(works on many UNIX machines, and on DOS,
Windows, Mac, BeOS etc.)
WWW: http://www.ruby-lang.org/en/
===> The following configuration options are available for ruby20-2.0.0.648,1:
CAPIDOCS=off: Build and install C API documents
DEBUG=off: Build with debugging support
DOCS=on: Build and/or install documentation
EXAMPLES=on: Build and/or install examples
RDOC=on: Build and install Rdoc indexes
====> Which line editing lib to use: you have to select exactly one of them
LIBEDIT=on: Use libedit
READLINE=off: Use libreadline
===> Use 'make config' to modify these settings
====
Some of the standard commands are provided as separate ports for ease
of upgrading:
devel/ruby-gems: gem - RubyGems package manager
devel/rubygem-rake: rake - Ruby Make
And some of the standard libraries are provided as separate ports
since they require extra dependencies:
databases/ruby-gdbm: GDBM module
Install them as occasion demands.
====
lang/ruby2*: correct configure options
Fix readline & libedit configure options after a slight error slipped in
with the patches done in r400142.
PR: 203988
Submitted by: John Hein <z7dr6ut7gs@snkmail.com>
lang/ruby2*: fix readline & libedit configure options
The fixed error(s) were only visible with LOCALBASE not set to /usr/local.
PR: 203988
Submitted by: John Hein <z7dr6ut7gs@snkmail.com>
fix Ruby 2.0 and 2.1 header for clang 3.7
2.2 already had this change in upstream
PR: 202660
Submitted by: dim (different version)
Obtained from: Ruby SVN repository (r47996)
Remove UNIQUENAME and LATEST_LINK.
UNIQUENAME was never unique, it was only used by USE_LDCONFIG and now,
we won't have conflicts there.
Use PKGBASE instead of LATEST_LINK in PKGLATESTFILE, the *only* consumer
is pkg-devel, and it works just fine without LATEST_LINK as pkg-devel
has the correct PKGNAME anyway.
Now that UNIQUENAME is gone, OPTIONSFILE is too. (it's been called
OPTIONS_FILE now.)
Reviewed by: antoine, bapt
Exp-run by: antoine
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D3336
MASTER_SITES cleanup.
- Replace ${MASTER_SITE_FOO} with FOO.
- Merge MASTER_SITE_SUBDIR into MASTER_SITES when possible. (This means 99.9%
of the time.)
- Remove occurrences of MASTER_SITE_LOCAL when no subdirectory was present and
no hint of what it should be was present.
- Fix some logic.
- And generally, make things more simple and easy to understand.
While there, add magic values to the FESTIVAL, GENTOO, GIMP, GNUPG, QT and
SAMBA macros.
Also, replace some EXTRACT_SUFX occurences with USES=tar:*.
Checked by: make fetch-urlall-list
With hat: portmgr
Sponsored by: Absolight
- Fix runtime with OpenSSL after the removal of SSLv2 in head.
- Make the main LOCALBASE/bin files into symlinks to the actual version to
make it simpler to tell which version is default.
Only enable dtrace support for amd64/i386 for now.
More testing needs to be done on arm to see if our dtrace support is
compatible with what ruby needs. PowerPC may work as well, but needs
more testing.
Reviewed by: swills
Change the EDIT option of ruby to use libedit by default now that libedit
from ports is able to handle unicode. Make sure that ruby does not provides its
own function to read the input but let libedit do it itself.
This allows the binary package to by default not be "tainted" by the readline
license.
Differential Revision: https://reviews.freebsd.org/D1547
Reviewed by: swills
Approved by: ruby (swills)
lang/ruby2*: fix dtrace support
DTrace support in ruby needs the -xnolibs flag added to the dtrace command
called during build to ensure that dtrace support is enabled even if the dtrace
kernel modules are not loaded at build time.
However, with this dtrace will be enabled on some OS versions where it will not
work, so add logic to disable it where appropriate.
lang/ruby20: switch to USES=execinfo
While here, move MAKE_JOBS_UNSAFE to CAPIDOCS option since thats the only place
it seems necessary
PR: 193412
Submitted by: Yasuhiro KIMURA <yasu@utahime.org>
lang/ruby*: remove obsolete patches
Remove no longer needed patches for ftp.
While here, fix the test target for ruby21
PR: 192998
Submitted by: Robert Grimm <rfgrimm@gmail.com>
lang/ruby*: fix docs handling
- Fix handling of RDOC option and make it ON by default
- Add DOCS option to OPTIONS_DEFINE
- Add EXAMPLES option
- Add CAPIDOCS option which installs C API documents generated by doxygen
- Other cleanups while here
PR: 189646
Submitted by: Yasuhiro KIMURA <yasu@utahime.org> (based on)
Support LIBS like LDFLAGS.
- Add LIBS="${LIBS}" to MAKE_ENV and CONFIGURE_ENV.
- Add an option helper for LIBS.
- Adjust all ports that already use LIBS. Also remove references to
PTHREAD_CFLAGS and PTHREAD_LIBS while here.
- Some ports did not support having a LIBS environment variable and
required additional patches.
Somewhat simplified a linker command line looks like:
${CC} ${src_LDFLAGS} ${LDFLAGS} ${src_LIBS} ${LIBS}
where src_LDFLAGS and src_LIBS are controlled by upstream and LDFLAGS and
LIBS can be controlled by us. If possible -L and -l flags need to be
(Only the first 15 lines of the commit message are shown above )
- Force use of libreadline from ports rather than base, in order to avoid
unexpectedly getting readline from ports if it's already installed.
- Add patch to work with newer libreadline
- Provide an option to use libedit from ports, avoiding the libedit in base.
- Note 1: The patch to work with newer libreadline is only applied in the
libreadline case since it actually breaks building with libedit.
- Note 2: libreadline is not BSD licensed and while libedit would be
preferable, it seems to have issues with UTF8 still, see ruby bug 9204. Once
that's resolved, we can make libedit the default.
PR: ports/187928 [1] (based on)
PR: ports/188077 [2] (based on)
Submitted by: Shin-ya Murakami <murashin@gfd-dennou.org> [1]
Submitted by: Christoph Moench-Tegeder <cmt@burggraben.net> [2]
Obtained
from: http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ext/readline/readline.c?r1=43458&r2=45225
(ruby upstream)
MFH: 2014Q2
- Add patch to fix build on 11-CURRENT after Clang 3.4 import. No need to
conditionalize this on OSVER because the patch is safe everywhere. No bump
because package doesn't change.
Submitted by: antoine (1.9, 2.0 and 2.1 based on)
- Add patch to increase stack size to avoid crash on ppc64
- Bump PORTREVISION due to binary and package change
Submitted by: jhibbits (via private email)
Templates, Mk/ lang/ruby*: add the RUBY license
The current Ruby license is an optional choice of BSD-2-Clause and the 'Ruby'
license. This is not OSI approved.
Approved by: portmgr (tabthorpe)
- Fix PLIST
- While I'm here:
- Remove leading indefinite article from COMMENT
- Convert to new LIB_DEPENDS format
PR: ports/184306
Submitted by: Alexey Markov <redrat@mail.ru>