Bug 186468 - [PATCH] lang/ruby: rub19 won't build/install with lang/gcc installed on FreeBSD 10
Summary: [PATCH] lang/ruby: rub19 won't build/install with lang/gcc installed on FreeB...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Steve Wills
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-02-05 03:00 UTC by jim
Modified: 2014-02-10 20:30 UTC (History)
1 user (show)

See Also:


Attachments
ruby-1.9.3.484_1,1.patch (694 bytes, patch)
2014-02-05 03:00 UTC, jim
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description jim 2014-02-05 03:00:01 UTC
- lang/ruby19 requires libffi to build and run. lang/gcc installs a version of libffi.so in /usr/local/lib/gcc46/.
	# locate libffi
	/usr/local/lib/gcc46/libffi.a
	/usr/local/lib/gcc46/libffi.so
	/usr/local/lib/gcc46/libffi.so.4

	# locate ffi.h
	/usr/local/lib/gcc46/gcc/x86_64-portbld-freebsd10.0/4.6.4/include/ffi.h
- lang/ruby19 finds that version of libffi and does not build libffi from ports.
	===>   ruby-1.9.3.484_1,1 depends on file: /usr/local/bin/autoconf-2.69 - found
	===>   ruby-1.9.3.484_1,1 depends on shared library: libexecinfo.so - found
	===>   ruby-1.9.3.484_1,1 depends on shared library: libffi.so - found
	===>   ruby-1.9.3.484_1,1 depends on shared library: libyaml.so - found
- During build, libffi is not found, and "fiddle" is not build.
	configuring fiber
	configuring fiddle
	ffi.h is missing. Please install libffi.
	Failed to configure fiddle. It will not be installed.
	configuring io/console
-lang/ruby19 chokes on install
	===>  Installing for ruby-1.9.3.484_1,1
	===>  Checking if lang/ruby19 already installed
	===>   Registering installation for ruby-1.9.3.484_1,1
	pkg-static: lstat(/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/amd64-freebsd10/fiddle.so): No such file or directory
	pkg-static: lstat(/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/fiddle/closure.rb): No such file or directory
	pkg-static: lstat(/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/fiddle/function.rb): No such file or directory
	pkg-static: lstat(/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/fiddle.rb): No such file or directory
	pkg-static: lstat(/usr/ports/lang/ruby19/work/stage/usr/local/lib/ruby/1.9/fiddle/): No such file or directory
	*** Error code 74

	Stop.
	make[1]: stopped in /usr/ports/lang/ruby19
	*** Error code 1

	Stop.
	make: stopped in /usr/ports/lang/ruby19


Port maintainer (ruby@FreeBSD.org) is cc'd.

Generated with FreeBSD Port Tools 0.99_11 (mode: change, diff: SVN)

Fix: Make libffi and build and run dependency.
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2014-02-05 03:20:55 UTC
Responsible Changed
From-To: freebsd-ports-bugs->gerald

Over to maintainer (via the GNATS Auto Assign Tool)
Comment 2 Gerald Pfeifer freebsd_committer freebsd_triage 2014-02-06 23:17:39 UTC
Responsible Changed
From-To: gerald->ruby@FreeBSD.org

Reassigning to proper maintainers.
Comment 3 Mark Linimon freebsd_committer freebsd_triage 2014-02-10 05:04:03 UTC
Responsible Changed
From-To: ruby@FreeBSD.org->ruby

Canonicalize assignment.
Comment 4 Steve Wills freebsd_committer freebsd_triage 2014-02-10 15:14:50 UTC
Responsible Changed
From-To: ruby->swills

I'll take it.
Comment 5 dfilter service freebsd_committer freebsd_triage 2014-02-10 20:22:28 UTC
Author: swills
Date: Mon Feb 10 20:22:20 2014
New Revision: 343678
URL: http://svnweb.freebsd.org/changeset/ports/343678
QAT: https://qat.redports.org/buildarchive/r343678/

Log:
  - Fix build when newer gcc which includes a libffi is installed
  
  PR:		ports/186468
  Submitted by:	Jim Ohlstein <jim@ohlste.in>

Modified:
  head/lang/ruby19/Makefile
  head/lang/ruby20/Makefile

Modified: head/lang/ruby19/Makefile
==============================================================================
--- head/lang/ruby19/Makefile	Mon Feb 10 20:10:29 2014	(r343677)
+++ head/lang/ruby19/Makefile	Mon Feb 10 20:22:20 2014	(r343678)
@@ -18,9 +18,12 @@ LICENSE=	BSD2CLAUSE RUBY
 LICENSE_COMB=	dual
 
 LIB_DEPENDS=	libexecinfo.so:${PORTSDIR}/devel/libexecinfo \
-		libffi.so:${PORTSDIR}/devel/libffi \
 		libyaml.so:${PORTSDIR}/textproc/libyaml
 
+# Using LIB_DEPENDS finds the libffi from gcc which causes problems
+BUILD_DEPENDS=	libffi>=0:${PORTSDIR}/devel/libffi
+RUN_DEPENDS=	libffi>=0:${PORTSDIR}/devel/libffi
+
 GNU_CONFIGURE=	yes
 WRKSRC=		${RUBY_WRKSRC}
 CONFIGURE_ARGS=	${RUBY_CONFIGURE_ARGS} \

Modified: head/lang/ruby20/Makefile
==============================================================================
--- head/lang/ruby20/Makefile	Mon Feb 10 20:10:29 2014	(r343677)
+++ head/lang/ruby20/Makefile	Mon Feb 10 20:22:20 2014	(r343678)
@@ -18,9 +18,12 @@ LICENSE=	BSD2CLAUSE RUBY
 LICENSE_COMB=	dual
 
 LIB_DEPENDS=	libexecinfo.so:${PORTSDIR}/devel/libexecinfo \
-		libffi.so:${PORTSDIR}/devel/libffi \
 		libyaml.so:${PORTSDIR}/textproc/libyaml
 
+# Using LIB_DEPENDS finds the libffi from gcc which causes problems
+BUILD_DEPENDS=	libffi>=0:${PORTSDIR}/devel/libffi
+RUN_DEPENDS=	libffi>=0:${PORTSDIR}/devel/libffi
+
 GNU_CONFIGURE=	yes
 WRKSRC=		${RUBY_WRKSRC}
 CONFIGURE_ARGS=	${RUBY_CONFIGURE_ARGS} \
_______________________________________________
svn-ports-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-ports-all
To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
Comment 6 Steve Wills freebsd_committer freebsd_triage 2014-02-10 20:22:32 UTC
State Changed
From-To: open->closed

Committed, with minor changes. Thanks!