aboutsummaryrefslogtreecommitdiffstats
path: root/lang
diff options
context:
space:
mode:
authorknu <knu@FreeBSD.org>2003-07-20 00:11:15 +0800
committerknu <knu@FreeBSD.org>2003-07-20 00:11:15 +0800
commit40410dd825b9a2a9eb1424bb8906edd589092022 (patch)
tree429bd489a618b257a5b64afe7fb99f60111ec31a /lang
parentc0222d03b2a7ce0503ca0d549952072c09406fbc (diff)
downloadfreebsd-ports-gnome-40410dd825b9a2a9eb1424bb8906edd589092022.tar.gz
freebsd-ports-gnome-40410dd825b9a2a9eb1424bb8906edd589092022.tar.zst
freebsd-ports-gnome-40410dd825b9a2a9eb1424bb8906edd589092022.zip
The dl module seems to cause coredump on Pentium4 boxen when compiled
with gcc 3.3 with a -mcpu or -march flag (even -mcpu=pentiumpro, which is the default CPU cflag that bsd.cpu.mk sets, leads ruby to coredump). Although currently I'm not sure if gcc 3.3's optimization has a bug or it is that it just exposed the dl module's hidden bug, disable those flags to work around the problem for the moment.
Diffstat (limited to 'lang')
-rw-r--r--lang/ruby-devel/Makefile1
-rw-r--r--lang/ruby-devel/files/patch-ext+dl+extconf.rb19
-rw-r--r--lang/ruby16-shim-ruby18/Makefile3
-rw-r--r--lang/ruby16-shim-ruby18/files/patch-ext+dl+extconf.rb19
-rw-r--r--lang/ruby18/Makefile1
-rw-r--r--lang/ruby18/files/patch-ext+dl+extconf.rb19
6 files changed, 61 insertions, 1 deletions
diff --git a/lang/ruby-devel/Makefile b/lang/ruby-devel/Makefile
index 80d96585f83b..0c5f3af29ad4 100644
--- a/lang/ruby-devel/Makefile
+++ b/lang/ruby-devel/Makefile
@@ -7,6 +7,7 @@
PORTNAME= ruby${RUBY_R}
PORTVERSION= ${RUBY_PORTVERSION}
+PORTREVISION= 1
CATEGORIES= lang ruby ipv6
MASTER_SITES= ${MASTER_SITE_RUBY}
MASTER_SITE_SUBDIR= ${MASTER_SITE_SUBDIR_RUBY}
diff --git a/lang/ruby-devel/files/patch-ext+dl+extconf.rb b/lang/ruby-devel/files/patch-ext+dl+extconf.rb
new file mode 100644
index 000000000000..359d1ee34af3
--- /dev/null
+++ b/lang/ruby-devel/files/patch-ext+dl+extconf.rb
@@ -0,0 +1,19 @@
+--- ext/dl/extconf.rb.orig Mon Oct 21 23:52:24 2002
++++ ext/dl/extconf.rb Sun Jul 20 00:55:25 2003
+@@ -183,6 +183,16 @@
+ ]
+
+ create_makefile('dl')
++
++if (Config::CONFIG['CC'] =~ /gcc/) && (Config::CONFIG['arch'] =~ /i.86/)
++ open('Makefile', 'r+') {|f|
++ s = f.read
++ f.rewind
++ f.print s.gsub(/^(CFLAGS\s*=.*\s)-m(cpu|arch)=\S+/, "\\1")
++ f.truncate f.tell
++ }
++end
++
+ rescue SystemExit
+ # do nothing
+ end
diff --git a/lang/ruby16-shim-ruby18/Makefile b/lang/ruby16-shim-ruby18/Makefile
index 4d05f25e2a13..861a9d79529c 100644
--- a/lang/ruby16-shim-ruby18/Makefile
+++ b/lang/ruby16-shim-ruby18/Makefile
@@ -7,6 +7,7 @@
PORTNAME= shim-ruby18
PORTVERSION= 1.8.0.p2.2003.04.19
+PORTREVISION= 1
CATEGORIES= lang devel ruby
MASTER_SITES= ${MASTER_SITE_RUBY}
MASTER_SITE_SUBDIR= shim
@@ -21,7 +22,7 @@ USE_BZIP2= yes
USE_RUBY= yes
-CONFIGURE_ARGS= RUBY=${RUBY}
+MAKE_ARGS= RUBY=${RUBY}
#CONFIGURE_ARGS+= CONFIGURE_ARGS="-- --config-opt=--with-opt-dir=${LOCALBASE}"
WRKSRC= ${WRKDIR}/shim/ruby16
diff --git a/lang/ruby16-shim-ruby18/files/patch-ext+dl+extconf.rb b/lang/ruby16-shim-ruby18/files/patch-ext+dl+extconf.rb
new file mode 100644
index 000000000000..359d1ee34af3
--- /dev/null
+++ b/lang/ruby16-shim-ruby18/files/patch-ext+dl+extconf.rb
@@ -0,0 +1,19 @@
+--- ext/dl/extconf.rb.orig Mon Oct 21 23:52:24 2002
++++ ext/dl/extconf.rb Sun Jul 20 00:55:25 2003
+@@ -183,6 +183,16 @@
+ ]
+
+ create_makefile('dl')
++
++if (Config::CONFIG['CC'] =~ /gcc/) && (Config::CONFIG['arch'] =~ /i.86/)
++ open('Makefile', 'r+') {|f|
++ s = f.read
++ f.rewind
++ f.print s.gsub(/^(CFLAGS\s*=.*\s)-m(cpu|arch)=\S+/, "\\1")
++ f.truncate f.tell
++ }
++end
++
+ rescue SystemExit
+ # do nothing
+ end
diff --git a/lang/ruby18/Makefile b/lang/ruby18/Makefile
index 80d96585f83b..0c5f3af29ad4 100644
--- a/lang/ruby18/Makefile
+++ b/lang/ruby18/Makefile
@@ -7,6 +7,7 @@
PORTNAME= ruby${RUBY_R}
PORTVERSION= ${RUBY_PORTVERSION}
+PORTREVISION= 1
CATEGORIES= lang ruby ipv6
MASTER_SITES= ${MASTER_SITE_RUBY}
MASTER_SITE_SUBDIR= ${MASTER_SITE_SUBDIR_RUBY}
diff --git a/lang/ruby18/files/patch-ext+dl+extconf.rb b/lang/ruby18/files/patch-ext+dl+extconf.rb
new file mode 100644
index 000000000000..359d1ee34af3
--- /dev/null
+++ b/lang/ruby18/files/patch-ext+dl+extconf.rb
@@ -0,0 +1,19 @@
+--- ext/dl/extconf.rb.orig Mon Oct 21 23:52:24 2002
++++ ext/dl/extconf.rb Sun Jul 20 00:55:25 2003
+@@ -183,6 +183,16 @@
+ ]
+
+ create_makefile('dl')
++
++if (Config::CONFIG['CC'] =~ /gcc/) && (Config::CONFIG['arch'] =~ /i.86/)
++ open('Makefile', 'r+') {|f|
++ s = f.read
++ f.rewind
++ f.print s.gsub(/^(CFLAGS\s*=.*\s)-m(cpu|arch)=\S+/, "\\1")
++ f.truncate f.tell
++ }
++end
++
+ rescue SystemExit
+ # do nothing
+ end