aboutsummaryrefslogtreecommitdiff
path: root/lang/ruby21
diff options
context:
space:
mode:
authorSteve Wills <swills@FreeBSD.org>2014-10-01 15:45:27 +0000
committerSteve Wills <swills@FreeBSD.org>2014-10-01 15:45:27 +0000
commitc553ae64887129ba3d5f6998950bed781d4f37c5 (patch)
tree76856ff2913b9dea93f1727c2a0f27071d8802f8 /lang/ruby21
parent0330211a86141480d2528dc77770a276e8c88a3e (diff)
downloadports-c553ae64887129ba3d5f6998950bed781d4f37c5.tar.gz
ports-c553ae64887129ba3d5f6998950bed781d4f37c5.zip
Notes
Diffstat (limited to 'lang/ruby21')
-rw-r--r--lang/ruby21/Makefile6
-rw-r--r--lang/ruby21/files/patch-Makefile.in20
-rw-r--r--lang/ruby21/files/patch-configure.in41
3 files changed, 58 insertions, 9 deletions
diff --git a/lang/ruby21/Makefile b/lang/ruby21/Makefile
index 6696170acbc1..56dc3c677863 100644
--- a/lang/ruby21/Makefile
+++ b/lang/ruby21/Makefile
@@ -84,9 +84,13 @@ CPPFLAGS+= -I${LOCALBASE}/include
# Keep this, else ruby will fail to load libraries dependent op libpthread.
LIBS+= -L${LOCALBASE}/lib ${PTHREAD_LIBS}
-.if ${ARCH} == "powerpc"
+.if ${OPSYS} == "FreeBSD"
+.if (${ARCH} == "i386" && ${OSVERSION} > 1010000) || (${ARCH} == "amd64" && ${OSVERSION} > 903000)
+CONFIGURE_ARGS+= --enable-dtrace
+.else
CONFIGURE_ARGS+= --disable-dtrace
.endif
+.endif
CONFIGURE_ENV= debugflags=
diff --git a/lang/ruby21/files/patch-Makefile.in b/lang/ruby21/files/patch-Makefile.in
new file mode 100644
index 000000000000..d82bd726b228
--- /dev/null
+++ b/lang/ruby21/files/patch-Makefile.in
@@ -0,0 +1,20 @@
+--- Makefile.in.orig 2014-10-01 13:48:32.240448887 +0000
++++ Makefile.in 2014-10-01 13:49:42.263443819 +0000
+@@ -347,7 +347,7 @@
+
+ .d.h:
+ @$(ECHO) translating probes $<
+- $(Q) $(DTRACE) -o $@.tmp -h -C $(INCFLAGS) -s $<
++ $(Q) $(DTRACE) -xnolibs -o $@.tmp -h -C $(INCFLAGS) -s $<
+ $(Q) sed -e 's/RUBY_/RUBY_DTRACE_/g' -e 's/PROBES_H_TMP/PROBES_H/g' -e 's/(char \*/(const char */g' -e 's/, char \*/, const char */g' $@.tmp > $@
+ $(Q) $(RM) $@.tmp
+
+@@ -367,7 +367,7 @@
+ fi; \
+ touch "$$stamp"
+ $(RM) $@
+- $(Q) $(DTRACE) -G -C $(INCFLAGS) -s $(srcdir)/probes.d -o $@ $(DTRACE_DEPENDENT_OBJS)
++ $(Q) $(DTRACE) -xnolibs -G -C $(INCFLAGS) -s $(srcdir)/probes.d -o $@ $(DTRACE_DEPENDENT_OBJS)
+
+ # DTrace static library hacks described here:
+ # http://mail.opensolaris.org/pipermail/dtrace-discuss/2005-August/000207.html
diff --git a/lang/ruby21/files/patch-configure.in b/lang/ruby21/files/patch-configure.in
index 3153a0629187..fffa001b8b7e 100644
--- a/lang/ruby21/files/patch-configure.in
+++ b/lang/ruby21/files/patch-configure.in
@@ -1,6 +1,31 @@
---- configure.in.orig 2014-03-20 05:40:57.873422152 +0000
-+++ configure.in 2014-03-20 05:40:57.873422152 +0000
-@@ -1084,10 +1084,10 @@
+--- configure.in.orig 2014-10-01 13:46:05.488459511 +0000
++++ configure.in 2014-10-01 13:45:56.345459984 +0000
+@@ -570,7 +570,7 @@
+ [AC_CACHE_CHECK(whether dtrace USDT is available, rb_cv_dtrace_available,
+ [
+ echo "provider conftest{ probe fire(); };" > conftest_provider.d
+- if $DTRACE -h -o conftest_provider.h -s conftest_provider.d >/dev/null 2>/dev/null; then
++ if $DTRACE -xnolibs -h -o conftest_provider.h -s conftest_provider.d >/dev/null 2>/dev/null; then
+ # DTrace is available on the system
+ rb_cv_dtrace_available=yes
+ else
+@@ -591,13 +591,13 @@
+ probe fire();
+ };
+ _PROBES
+- $DTRACE -h -o conftest_provider.h -s conftest_provider.d >/dev/null 2>/dev/null &&
++ $DTRACE -xnolibs -h -o conftest_provider.h -s conftest_provider.d >/dev/null 2>/dev/null &&
+ cat >conftest.c <<_CONF &&
+ @%:@include "conftest_provider.h"
+ int main(void){ CONFTEST_FIRE(); return 0; }
+ _CONF
+ $CC $CFLAGS $CPPFLAGS -c -o conftest.o conftest.c &&
+- $DTRACE -G -s conftest_provider.d conftest.o 2>/dev/null
++ $DTRACE -xnolibs -G -s conftest_provider.d conftest.o 2>/dev/null
+ }; then
+ rb_cv_prog_dtrace_g=yes
+ else
+@@ -1087,10 +1087,10 @@
],
[ LIBS="-lm $LIBS"])
@@ -15,7 +40,7 @@
dnl Checks for header files.
AC_HEADER_DIRENT
-@@ -1982,7 +1982,7 @@
+@@ -1998,7 +1998,7 @@
if test x"$ac_cv_func_clock_gettime" != xyes; then
# glibc 2.17 moves clock_* functions from librt to the main C library.
# http://sourceware.org/ml/libc-announce/2012/msg00001.html
@@ -24,7 +49,7 @@
if test x"$ac_cv_lib_rt_clock_gettime" = xyes; then
AC_DEFINE(HAVE_CLOCK_GETTIME, 1)
fi
-@@ -2423,7 +2423,7 @@
+@@ -2460,7 +2460,7 @@
fi
if test x"$enable_pthread" = xyes; then
@@ -33,7 +58,7 @@
AC_CHECK_LIB($pthread_lib, pthread_kill,
rb_with_pthread=yes, rb_with_pthread=no)
if test "$rb_with_pthread" = "yes"; then break; fi
-@@ -2437,6 +2437,7 @@
+@@ -2474,6 +2474,7 @@
[c], [],
[root], [],
[c_r], [MAINLIBS="-pthread $MAINLIBS"],
@@ -41,7 +66,7 @@
[AS_CASE(["$target_os"],
[openbsd*|mirbsd*], [LIBS="-pthread $LIBS"],
[LIBS="-l$pthread_lib $LIBS"])])
-@@ -2668,7 +2669,6 @@
+@@ -2735,7 +2736,6 @@
: ${LDSHARED='$(CC) -shared'}
if test "$rb_cv_binary_elf" = yes; then
LDFLAGS="$LDFLAGS -rdynamic"
@@ -49,7 +74,7 @@
else
test "$GCC" = yes && test "$rb_cv_prog_gnu_ld" = yes || LDSHARED='$(LD) -Bshareable'
fi
-@@ -3136,6 +3136,7 @@
+@@ -3203,6 +3203,7 @@
[freebsd*|dragonfly*], [
SOLIBS='$(LIBS)'
LIBRUBY_SO='lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR)'