Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 6 Apr 2007 08:04:57 GMT
From:      Nemo Liu<nemoliu@gmail.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/111316: [UPDATE]update lang/jruby to 0.9.8:100% pure-Java implementation of the Ruby
Message-ID:  <200704060804.l3684v3f028471@www.freebsd.org>
Resent-Message-ID: <200704060810.l368A5AF015600@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         111316
>Category:       ports
>Synopsis:       [UPDATE]update lang/jruby to 0.9.8:100% pure-Java implementation of the Ruby
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Fri Apr 06 08:10:05 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Nemo Liu
>Release:        7-current
>Organization:
>Environment:
FreeBSD tango.sina.com.cn 7.0-STOooRM FreeBSD 7.0-STOooRM #0: Wed Apr  4 15:05:23 CST 2007     liutong@tango.sina.com.cn:/usr/obj/usr/src/sys/TANGO  amd64
>Description:
This release has some great improvements:

    * Ruby on Rails support. We have been working hard on getting Rails own unit
      tests running and over 98% of them now run successfully. We feel things are
      running well enough to invite Ruby users to kick the tires and help root out
      any final issues.
    * Ruby classes can extend concrete/abstract Java classes and override methods
    * New Java primitive array syntax
    * Reimplementation of String, Numeric classes, and Array to be more correct
      and performant
    * Significant bottlenecks have been identified. In some cases IO is 6.5x
      faster than previous releases. Java included classes are significantly
      faster than in the past.
    * 225 Jira issues resolved since last release

>How-To-Repeat:

>Fix:


Patch attached with submission follows:

Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/lang/jruby/Makefile,v
retrieving revision 1.15
diff -u -r1.15 Makefile
--- Makefile	9 May 2006 20:52:15 -0000	1.15
+++ Makefile	6 Apr 2007 07:42:03 -0000
@@ -2,45 +2,65 @@
 # Date created:			20 September 2001
 # Whom:				Akinori MUSHA aka knu <knu@idaemons.org>
 #
-# $FreeBSD: ports/lang/jruby/Makefile,v 1.15 2006/05/09 20:52:15 edwin Exp $
+# $FreeBSD$
 #
 
 PORTNAME=	jruby
-PORTVERSION=	0.5.3
+PORTVERSION=	0.9.8
 CATEGORIES=	lang ruby java
-MASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
-MASTER_SITE_SUBDIR=	${PORTNAME}
+MASTER_SITES=	http://dist.codehaus.org/jruby/
 DISTNAME=	${PORTNAME}-bin-${PORTVERSION}
-DIST_SUBDIR=	ruby
 
-MAINTAINER=	ports@FreeBSD.org
+MAINTAINER=	nemoliu@gmail.com
 COMMENT=	An implementation of Ruby Interpreter in Pure Java
 
-WRKSRC=		${WRKDIR}/${PORTNAME}-${PORTVERSION}
 NO_BUILD=	yes
+USE_JAVA=	yes
+JAVA_VERSION=	1.3+
 
+WRKDIR?=	${WRKDIRPREFIX}${.CURDIR}/work
 JRUBY_HOME?=	${PREFIX}/share/${PORTNAME}
-
-PLIST_SUB=	JRUBY_HOME="${JRUBY_HOME:S,^${PREFIX}/,,}"
-
-post-extract:
-	${MV} ${WRKSRC}/README ${WRKSRC}/docs/
-	${RM} ${WRKSRC}/lib/COPYING.LIB
+WRKSRC=		${WRKDIR}/${PORTNAME}-${PORTVERSION}
+REPLACE_FILES=	${WRKSRC}/bin/jruby \
+		${WRKSRC}/bin/jrubyc
+REPLACE_LIST=	JRUBY_HOME=${JRUBY_HOME} \
+		JAVA_HOME=${JAVA_HOME}
+REPLACE_LIST_TEMP=	${REPLACE_LIST:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/}
+
+.include <bsd.port.pre.mk>
+
+pre-patch:
+	@${ECHO_MSG} "Installation settings:"
+	@${ECHO_MSG} "   JRUBY_HOME:    ${JRUBY_HOME}"
+	@${ECHO_MSG} "   JAVA_HOME:     ${JAVA_HOME}"
 
 post-patch:
-	${REINPLACE_CMD} -e 's,!!JRUBY_HOME!!,${JRUBY_HOME},g' \
-		${WRKSRC}/bin/jruby.sh
+	@${ECHO_MSG} -n ">> Removing unneeded files..."
+	@${RM} -f `${FIND} ${WRKSRC} -name '*.bat'` `${FIND} ${WRKSRC} -name '*.orig'` `${FIND} ${WRKSRC} -name '*.exe'`
+	@${ECHO_MSG} " [ DONE ]"
+.for file in ${REPLACE_FILES}
+	@${ECHO_MSG} -n ">> Customizing `basename ${file}`..."
+	@${SED} ${REPLACE_LIST_TEMP} ${file} > ${WRKDIR}/`basename ${file}`
+	@${ECHO_MSG} " [ DONE ]"
+.endfor
 
 do-install:
-	${INSTALL_SCRIPT} ${WRKSRC}/bin/jruby.sh ${PREFIX}/bin/jruby
-	${MKDIR} ${JRUBY_HOME}/lib
-	${INSTALL_DATA} ${WRKSRC}/lib/* ${JRUBY_HOME}/lib/
+	@${ECHO_MSG} -n ">> Installation JRuby files..."
+	@${INSTALL_SCRIPT} ${WRKDIR}/jruby ${PREFIX}/jruby
+	@${INSTALL_SCRIPT} ${WRKDIR}/jrubyc ${PREFIX}/jrubyc
+	@cd ${WRKSRC}/lib \
+	  && ${FIND} . -type d -exec ${MKDIR} ${JRUBY_HOME}/lib/{} \; \
+	  && ${FIND} . -type f -exec ${INSTALL_DATA} {} ${JRUBY_HOME}/lib/{} \;
+	@${ECHO_MSG} " [ DONE ]"
 .if !defined(NOPORTDOCS)
-	${MKDIR} ${DOCSDIR}
-	${INSTALL_DATA} ${WRKSRC}/docs/* ${DOCSDIR}/
-	${MKDIR} ${EXAMPLESDIR}
-	${INSTALL_DATA} ${WRKSRC}/samples/* ${EXAMPLESDIR}/
+	@${ECHO_MSG} -n ">> Installation Documents files..."
+	@${MKDIR} ${DOCSDIR}
+	@(cd ${WRKSRC}/docs \
+	  && ${COPYTREE_SHARE} \* ${DOCSDIR})
+	@${MKDIR} ${EXAMPLESDIR}
+	@(cd ${WRKSRC}/samples \
+	  && ${COPYTREE_SHARE} \* ${EXAMPLESDIR})
+	@${ECHO_MSG} " [ DONE ]"
 .endif
-	${CAT} ${PKGMESSAGE}
 
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
Index: distinfo
===================================================================
RCS file: /home/ncvs/ports/lang/jruby/distinfo,v
retrieving revision 1.13
diff -u -r1.13 distinfo
--- distinfo	25 Nov 2005 00:33:36 -0000	1.13
+++ distinfo	6 Apr 2007 07:42:44 -0000
@@ -1,3 +1,3 @@
-MD5 (ruby/jruby-bin-0.5.3.tar.gz) = fbff9e334157a4626daddcbace9c848f
-SHA256 (ruby/jruby-bin-0.5.3.tar.gz) = 63c1eb0a03ff93ab5af470c7784bfcc0054f899b565fb27177ec74e566bfe474
-SIZE (ruby/jruby-bin-0.5.3.tar.gz) = 1720394
+MD5 (jruby-bin-0.9.8.tar.gz) = 57873413ceb2b20309fe1a3388f54f24
+SHA256 (jruby-bin-0.9.8.tar.gz) = b98020012827ad7dac60d48f3d42a18cc9276da6fb55d501192a308bb279299e
+SIZE (jruby-bin-0.9.8.tar.gz) = 3615420
Index: pkg-descr
===================================================================
RCS file: /home/ncvs/ports/lang/jruby/pkg-descr,v
retrieving revision 1.1
diff -u -r1.1 pkg-descr
--- pkg-descr	20 Sep 2001 09:18:26 -0000	1.1
+++ pkg-descr	6 Apr 2007 08:00:09 -0000
@@ -1,6 +1,9 @@
-JRuby is the effort to recreate the Ruby interpreter in Java.
-Currently, the interpreter is written in portable C.  The Java version
-will be tightly integrated with Java to allow both to script any Java
-class and to embed the interpreter into any Java application.
+JRuby is an 100% pure-Java implementation of the Ruby programming language.
+    *  A 1.8.4 compatible Ruby interpreter written in 100% pure Java
+    * Most builtin Ruby classes provided
+    * Support for interacting with and defining java classes from within
+      ruby
+    * Bean Scripting Framework (BSF) support
+    * Distributed under a tri-license (CPL/GPL/LGPL)
 
-WWW:	http://jruby.sourceforge.net/
+WWW:	http://jruby.codehaus.org/	
Index: pkg-message
===================================================================
RCS file: pkg-message
diff -N pkg-message
--- pkg-message	8 Oct 2002 17:59:57 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,3 +0,0 @@
-----------------------------------------------------------------------
-To run JRuby, install JDK 1.3.1 or higher and set JAVA_HOME properly.
-----------------------------------------------------------------------
Index: pkg-plist
===================================================================
RCS file: /home/ncvs/ports/lang/jruby/pkg-plist,v
retrieving revision 1.3
diff -u -r1.3 pkg-plist
--- pkg-plist	29 Oct 2002 17:30:58 -0000	1.3
+++ pkg-plist	6 Apr 2007 07:57:32 -0000
@@ -1,32 +1,46 @@
-bin/jruby
-%%JRUBY_HOME%%/lib/LICENSE.ant
-%%JRUBY_HOME%%/lib/LICENSE.jakarta-oro
-%%JRUBY_HOME%%/lib/ant.jar
-%%JRUBY_HOME%%/lib/bsf.jar
-%%JRUBY_HOME%%/lib/gnu-regexp-1.1.4.jar
-%%JRUBY_HOME%%/lib/jakarta-oro-2.0.6.jar
-%%JRUBY_HOME%%/lib/jruby.jar
-%%JRUBY_HOME%%/lib/junit.jar
-%%JRUBY_HOME%%/lib/license.bsf.html
-@dirrm %%JRUBY_HOME%%/lib
-@dirrm %%JRUBY_HOME%%
-%%PORTDOCS%%share/doc/jruby/BeanScriptingFramework
-%%PORTDOCS%%share/doc/jruby/Glossary.txt
-%%PORTDOCS%%share/doc/jruby/Javasupport-highlevel.txt
-%%PORTDOCS%%share/doc/jruby/Javasupport-lowlevel.txt
-%%PORTDOCS%%share/doc/jruby/Javasupport-overview.txt
-%%PORTDOCS%%share/doc/jruby/README
-%%PORTDOCS%%share/doc/jruby/README.test
-%%PORTDOCS%%share/doc/jruby/TODO
-%%PORTDOCS%%share/doc/jruby/changelog.xml
-%%PORTDOCS%%share/doc/jruby/release-checklist.txt
-%%PORTDOCS%%@dirrm share/doc/jruby
-%%PORTDOCS%%share/examples/jruby/beer.rb
-%%PORTDOCS%%share/examples/jruby/error.rb
-%%PORTDOCS%%share/examples/jruby/eval.rb
-%%PORTDOCS%%share/examples/jruby/fib.rb
-%%PORTDOCS%%share/examples/jruby/java2.rb
-%%PORTDOCS%%share/examples/jruby/swing.rb
-%%PORTDOCS%%share/examples/jruby/swing2.rb
-%%PORTDOCS%%share/examples/jruby/thread.rb
-%%PORTDOCS%%@dirrm share/examples/jruby
+jruby
+jrubyc
+%%PORTDOCS%%%%DOCSDIR%%/BeanScriptingFramework
+%%PORTDOCS%%%%DOCSDIR%%/CodeConventions.txt
+%%PORTDOCS%%%%DOCSDIR%%/Glossary.txt
+%%PORTDOCS%%%%DOCSDIR%%/Javasupport-highlevel.txt
+%%PORTDOCS%%%%DOCSDIR%%/Javasupport-lowlevel.txt
+%%PORTDOCS%%%%DOCSDIR%%/Javasupport-overview.txt
+%%PORTDOCS%%%%DOCSDIR%%/LICENCE.bsf
+%%PORTDOCS%%%%DOCSDIR%%/LICENSE.ant
+%%PORTDOCS%%%%DOCSDIR%%/LICENSE.bouncycastle
+%%PORTDOCS%%%%DOCSDIR%%/README.coverage
+%%PORTDOCS%%%%DOCSDIR%%/README.rails
+%%PORTDOCS%%%%DOCSDIR%%/README.test
+%%PORTDOCS%%%%DOCSDIR%%/Readline-HOWTO.txt
+%%PORTDOCS%%%%DOCSDIR%%/getting_involved.html
+%%PORTDOCS%%%%DOCSDIR%%/jvyaml/CREDITS
+%%PORTDOCS%%%%DOCSDIR%%/jvyaml/LICENSE
+%%PORTDOCS%%%%DOCSDIR%%/jvyaml/README
+%%PORTDOCS%%%%DOCSDIR%%/patches/rails/rails-1.1.2-blockargs-fix.patch
+%%PORTDOCS%%%%DOCSDIR%%/patches/rubylib/ruby-1.8.4_fileutils_fu_windows_designator.patch
+%%PORTDOCS%%%%DOCSDIR%%/rbyaml/LICENSE
+%%PORTDOCS%%%%DOCSDIR%%/rbyaml/README
+%%PORTDOCS%%%%DOCSDIR%%/release-checklist.txt
+%%EXAMPLESDIR%%/applet.html
+%%EXAMPLESDIR%%/beer.rb
+%%EXAMPLESDIR%%/dom-applet.html
+%%EXAMPLESDIR%%/error.rb
+%%EXAMPLESDIR%%/eval.rb
+%%EXAMPLESDIR%%/fib.rb
+%%EXAMPLESDIR%%/java2.rb
+%%EXAMPLESDIR%%/swing.rb
+%%EXAMPLESDIR%%/swing2.rb
+%%EXAMPLESDIR%%/test_fib_compiler.rb
+%%EXAMPLESDIR%%/thread.rb
+%%EXAMPLESDIR%%/xslt.rb
+@dirrm share/nls/en_US.US-ASCII
+@dirrm share/nls/POSIX
+@dirrm %%EXAMPLESDIR%%
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/rbyaml
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/patches/rubylib
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/patches/rails
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/patches
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/jvyaml
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/api
+%%PORTDOCS%%@dirrm %%DOCSDIR%%
Index: files/patch-bin::jruby.sh
===================================================================
RCS file: files/patch-bin::jruby.sh
diff -N files/patch-bin::jruby.sh
--- files/patch-bin::jruby.sh	8 Oct 2002 17:59:57 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,7 +0,0 @@
---- bin/jruby.sh.orig	Fri Sep 13 05:24:44 2002
-+++ bin/jruby.sh	Wed Oct  9 02:36:39 2002
-@@ -22,2 +22,4 @@
- 
-+JRUBY_HOME="${JRUBY_HOME:-!!JRUBY_HOME!!}"
-+
- if [ -z "$JRUBY_HOME" ] ; then
Index: files/patch-jruby
===================================================================
RCS file: files/patch-jruby
diff -N files/patch-jruby
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ files/patch-jruby	6 Apr 2007 06:34:12 -0000
@@ -0,0 +1,18 @@
+--- bin/jruby.orig	Fri Apr  6 13:57:54 2007
++++ bin/jruby	Fri Apr  6 14:00:13 2007
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ # -----------------------------------------------------------------------------
+ # jruby.sh - Start Script for the JRuby interpreter
+ #
+@@ -26,6 +26,9 @@
+ esac
+ 
+ # ----- Verify and Set Required Environment Variables -------------------------
++JAVA_HOME=%%JAVA_HOME%%
++JRUBY_HOME=%%JRUBY_HOME%%
++
+ 
+ if [ -z "$JRUBY_HOME" ] ; then
+   ## resolve links - $0 may be a link to  home
Index: files/patch-jrubyc
===================================================================
RCS file: files/patch-jrubyc
diff -N files/patch-jrubyc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ files/patch-jrubyc	6 Apr 2007 06:34:21 -0000
@@ -0,0 +1,12 @@
+--- bin/jrubyc.orig	Fri Apr  6 13:58:12 2007
++++ bin/jrubyc	Fri Apr  6 14:00:36 2007
+@@ -26,6 +26,9 @@
+ esac
+ 
+ # ----- Verify and Set Required Environment Variables -------------------------
++JAVA_HOME=%%JAVA_HOME%%
++JRUBY_HOME=%%JRUBY_HOME%
++
+ 
+ if [ -z "$JRUBY_HOME" ] ; then
+   ## resolve links - $0 may be a link to  home

>Release-Note:
>Audit-Trail:
>Unformatted:



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