diff --git a/dev-lang/ruby/patches/ruby-2.1.2.patchset b/dev-lang/ruby/patches/ruby-2.1.2.patchset new file mode 100644 index 000000000..c08b3be70 --- /dev/null +++ b/dev-lang/ruby/patches/ruby-2.1.2.patchset @@ -0,0 +1,33 @@ +From 0293a01f710c55445042a570cc3fb9755e20ed71 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Wed, 18 Jun 2014 16:03:04 +0000 +Subject: Fix configuration for Haiku. + +* Use something for linking dynamic libraries +* Set a soname on libruby. + +diff --git a/configure.in b/configure.in +index 17ed3ed..8efd25d 100644 +--- a/configure.in ++++ b/configure.in +@@ -2654,7 +2654,7 @@ if test "$with_dln_a_out" != yes; then + [bsdi3*], [ AS_CASE(["$CC"], + [*shlicc*], [ : ${LDSHARED='$(CC) -r'} + rb_cv_dlopen=yes])], +- [linux* | gnu* | k*bsd*-gnu | netbsd* | bsdi* | kopensolaris*-gnu], [ ++ [linux* | gnu* | k*bsd*-gnu | netbsd* | bsdi* | kopensolaris*-gnu | haiku*], [ + : ${LDSHARED='$(CC) -shared'} + if test "$rb_cv_binary_elf" = yes; then + LDFLAGS="$LDFLAGS -Wl,-export-dynamic" +@@ -3124,7 +3124,7 @@ AS_CASE("$enable_shared", [yes], [ + [sunos4*], [ + LIBRUBY_ALIASES='lib$(RUBY_SO_NAME).so.$(MAJOR).$(MINOR) lib$(RUBY_SO_NAME).so' + ], +- [linux* | gnu* | k*bsd*-gnu | atheos* | kopensolaris*-gnu], [ ++ [linux* | gnu* | k*bsd*-gnu | atheos* | kopensolaris*-gnu | haiku*], [ + LIBRUBY_DLDFLAGS='-Wl,-soname,lib$(RUBY_SO_NAME).so.$(MAJOR).$(MINOR)'" $LDFLAGS_OPTDIR" + LIBRUBY_ALIASES='lib$(RUBY_SO_NAME).so.$(MAJOR).$(MINOR) lib$(RUBY_SO_NAME).so' + if test "$load_relative" = yes; then +-- +1.8.3.4 + diff --git a/dev-lang/ruby/ruby-2.1.1.recipe b/dev-lang/ruby/ruby-2.1.2.recipe similarity index 66% rename from dev-lang/ruby/ruby-2.1.1.recipe rename to dev-lang/ruby/ruby-2.1.2.recipe index b63c482c7..8901a4fc7 100644 --- a/dev-lang/ruby/ruby-2.1.1.recipe +++ b/dev-lang/ruby/ruby-2.1.2.recipe @@ -11,15 +11,15 @@ 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="http://www.ruby-lang.org" -SRC_URI="http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.1.tar.gz" -CHECKSUM_SHA256="c843df31ae88ed49f5393142b02b9a9f5a6557453805fd489a76fbafeae88941" +SRC_URI="http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.2.tar.gz" +CHECKSUM_SHA256="f22a6447811a81f3c808d1c2a5ce3b5f5f0955c68c9a749182feb425589e6635" LICENSE="Ruby BSD (3-clause)" COPYRIGHT="1993-2014 Yukihiro Matsumoto" REVISION="1" -ARCHITECTURES="?x86 ?x86_64" +ARCHITECTURES="?x86 !x86_64" if [ $effectiveTargetArchitecture != x86_gcc2 ]; then # x86_gcc2 is fine as primary target architecture as long as we're building # for a different secondary architecture. @@ -28,16 +28,16 @@ fi SECONDARY_ARCHITECTURES="x86" PROVIDES=" - ruby$secondaryArchSuffix = $portVersion compat >= 1.9 - cmd:ruby = $portVersion compat >= 1.9 - cmd:erb = $portVersion compat >= 1.9 - cmd:gem = $portVersion compat >= 1.9 - cmd:irb = $portVersion compat >= 1.9 - cmd:rake = $portVersion compat >= 1.9 - cmd:rdoc = $portVersion compat >= 1.9 - cmd:ri = $portVersion compat >= 1.9 - cmd:testrb = $portVersion compat >= 1.9 - lib:libruby$secondaryArchSuffix = $portVersion compat >= 1.9 + ruby$secondaryArchSuffix = $portVersion compat >= 2.1 + cmd:ruby$secondaryArchSuffix = $portVersion compat >= 2.1 + cmd:erb$secondaryArchSuffix = $portVersion compat >= 2.1 + cmd:gem$secondaryArchSuffix = $portVersion compat >= 2.1 + cmd:irb$secondaryArchSuffix = $portVersion compat >= 2.1 + cmd:rake$secondaryArchSuffix = $portVersion compat >= 2.1 + cmd:rdoc$secondaryArchSuffix = $portVersion compat >= 2.1 + cmd:ri$secondaryArchSuffix = $portVersion compat >= 2.1 + cmd:testrb$secondaryArchSuffix = $portVersion compat >= 2.1 + lib:libruby$secondaryArchSuffix = $portVersion compat >= 2.1 " REQUIRES=" @@ -58,39 +58,46 @@ BUILD_REQUIRES=" devel:libssl$secondaryArchSuffix devel:libiconv$secondaryArchSuffix devel:libncursesw$secondaryArchSuffix + devel:libffi$secondaryArchSuffix " BUILD_PREREQUIRES=" cmd:gcc$secondaryArchSuffix cmd:g++$secondaryArchSuffix cmd:autoconf - cmd:make cmd:bison cmd:git + cmd:libtoolize + cmd:make + cmd:pkg_config$secondaryArchSuffix " PROVIDES_devel=" ruby_devel$secondaryArchSuffix = $portVersion - devel:libruby_static$secondaryArchSuffix = $portVersion compat >= 1.9 - lib:libruby_static$secondaryArchSuffix = $portVersion compat >= 1.9 - devel:libruby$secondaryArchSuffix = $portVersion compat >= 1.9 + devel:libruby_static$secondaryArchSuffix = $portVersion compat >= 2.1 + lib:libruby_static$secondaryArchSuffix = $portVersion compat >= 2.1 + devel:libruby$secondaryArchSuffix = $portVersion compat >= 2.1 " REQUIRES_devel=" ruby$secondaryArchSuffix == $portVersion base " +PATCHES="ruby-2.1.2.patchset" BUILD() { + libtoolize --force --copy --install autoconf runConfigure ./configure --enable-shared --disable-silent-rules # The build process needs to run ruby, and without this it fails to find # libruby.so. - make $jobArgs + export LIBRARY_PATH=$LIBRARY_PATH:%A + make $jobArgs Q='' } INSTALL() { + export LIBRARY_PATH=$LIBRARY_PATH:%A make install prepareInstalledDevelLibs libruby-static libruby packageEntries devel $developDir @@ -98,5 +105,6 @@ INSTALL() TEST() { + export LIBRARY_PATH=$LIBRARY_PATH:%A make check }