Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Feb 2014 15:52:33 +0100
From:      Antoine Brodin <antoine@FreeBSD.org>
To:        ruby@freebsd.org
Subject:   Ruby and clang 3.4
Message-ID:  <CAALwa8mcae4qkv3mdnmeqxt9qThJw9joCPv9hssFyPOjmZ7DQg@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi there,

With clang 3.4  (imported 3 days ago in head),  ruby has problems
configuring / building dl.so.
Logs for ruby19 and ruby 20 are available at
http://package21.nyi.freebsd.org/bulk/head-default-baseline/2014-02-18_15h22m08s/logs/errors/ruby-1.9.3.484_1,1.log
 and  http://package21.nyi.freebsd.org/bulk/head-default-baseline/2014-02-18_15h22m08s/logs/errors/ruby20-2.0.0.353_4,1.log

...
configuring dl
Failed to configure dl. It will not be installed.
configuring dl/callback
Failed to configure dl/callback. It will not be installed.
configuring dl/win32
Failed to configure dl/win32. It will not be installed.
...

===>  Building package for ruby-1.9.3.484_1,1
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/include/ruby-1.9/ruby/dl.h):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/amd64-freebsd11/dl/callback.so):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/amd64-freebsd11/dl.so):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/dl/callback.rb):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/dl/cparser.rb):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/dl/func.rb):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/dl/import.rb):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/dl/pack.rb):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/dl/stack.rb):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/dl/struct.rb):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/dl/types.rb):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/dl/value.rb):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/dl.rb):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/dl/):
No such file or directory
pkg-static: lstat(/wrkdirs/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/amd64-freebsd11/dl/):
No such file or directory


This is due to clang 3.4 rejecting -fno-defer-pop

I have the following patch for ruby19:

Index: lang/ruby19/files/patch-ext__dl__extconf.rb
===================================================================
--- lang/ruby19/files/patch-ext__dl__extconf.rb (revision 0)
+++ lang/ruby19/files/patch-ext__dl__extconf.rb (working copy)
@@ -0,0 +1,12 @@
+--- ./ext/dl/extconf.rb.orig   2010-02-25 22:49:20.000000000 +0000
++++ ./ext/dl/extconf.rb        2014-02-18 22:06:44.000000000 +0000
+@@ -1,7 +1,8 @@
+ require 'mkmf'
+
+ if RbConfig::CONFIG['GCC'] == 'yes'
+-  $CFLAGS << " -fno-defer-pop -fno-omit-frame-pointer"
++  $CFLAGS << " -fno-defer-pop" unless have_macro("__clang__")
++  $CFLAGS << " -fno-omit-frame-pointer"
+ end
+
+ $INSTALLFILES = [

Cheers,

Antoine



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAALwa8mcae4qkv3mdnmeqxt9qThJw9joCPv9hssFyPOjmZ7DQg>