0
0
Fork 0
haikuports/dev-lang/ruby/ruby-2.2.10.recipe

109 lines
3.1 KiB
Bash

SUMMARY="A programming language focused on simplicity and productivity"
DESCRIPTION="Ruby is a dynamic, reflective, object-oriented, general-purpose \
programming language. It was designed and developed in the mid-1990s \
by Yukihiro 'Matz' Matsumoto in Japan.
Ruby embodies syntax inspired by Perl with Smalltalk-like features and \
was also influenced by Eiffel and Lisp. It supports multiple \
programming paradigms, including functional, object oriented, and \
imperative. It also has a dynamic type system and automatic memory \
management. Therefore, it is similar in varying degrees to, Smalltalk, \
Python, Perl, Lisp, Dylan, and CLU."
HOMEPAGE="https://www.ruby-lang.org/"
COPYRIGHT="1993-2018 Yukihiro Matsumoto"
LICENSE="Ruby
BSD (3-clause)"
REVISION="3"
SOURCE_URI="https://cache.ruby-lang.org/pub/ruby/2.2/ruby-$portVersion.tar.xz"
CHECKSUM_SHA256="bf77bcb7e6666ccae8d0882ea12b05f382f963f0a9a5285a328760c06a9ab650"
PATCHES="ruby-$portVersion.patchset"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
ruby$secondaryArchSuffix = $portVersion compat >= 2.2
cmd:erb = $portVersion compat >= 2.2
cmd:gem = $portVersion compat >= 2.2
cmd:irb = $portVersion compat >= 2.2
cmd:rake = $portVersion compat >= 2.2
cmd:rdoc = $portVersion compat >= 2.2
cmd:ri = $portVersion compat >= 2.2
cmd:ruby = $portVersion compat >= 2.2
cmd:testrb = $portVersion compat >= 2.2
lib:libruby$secondaryArchSuffix = 2.2.0 compat >= 2.2
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libedit$secondaryArchSuffix
lib:libffi$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libncursesw$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
lib:libssp$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
PROVIDES_devel="
ruby${secondaryArchSuffix}_devel = $portVersion
devel:libruby$secondaryArchSuffix = 2.2.0 compat >= 2.2
devel:libruby_static$secondaryArchSuffix = 2.2.0 compat >= 2.2
"
REQUIRES_devel="
ruby$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libcrypto$secondaryArchSuffix
devel:libedit$secondaryArchSuffix
devel:libffi$secondaryArchSuffix
devel:libiconv$secondaryArchSuffix
devel:libncursesw$secondaryArchSuffix
devel:libssl$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:autoconf
cmd:bison
cmd:g++$secondaryArchSuffix
cmd:gcc$secondaryArchSuffix
cmd:git
cmd:libtoolize$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
"
defineDebugInfoPackage ruby$secondaryArchSuffix \
"$libDir"/libruby.so.2.2.0
BUILD()
{
libtoolize --force --copy --install
autoconf
export CFLAGS=-D_BSD_SOURCE
runConfigure --omit-dirs binDir ./configure --enable-shared \
--disable-silent-rules \
--bindir=$prefix/bin
# The build process needs to run ruby, and without this it fails to find
# libruby.so.
export LIBRARY_PATH=$LIBRARY_PATH:%A
make $jobArgs
}
INSTALL()
{
export LIBRARY_PATH=$LIBRARY_PATH:%A
make install
prepareInstalledDevelLibs libruby-static libruby
fixPkgconfig
packageEntries devel $developDir
}
TEST()
{
export LIBRARY_PATH=$LIBRARY_PATH:%A
make check
}