[eclipse-birt] - Update to 3.7.1. - Add patch to build with Rhino 1.7R3.
Andrew Overholt
overholt at fedoraproject.org
Wed Dec 7 15:01:33 UTC 2011
commit 504c056c8a847b8db507085efd4e0663a97a61d2
Author: Andrew Overholt <overholt at redhat.com>
Date: Wed Dec 7 09:53:25 2011 -0500
- Update to 3.7.1.
- Add patch to build with Rhino 1.7R3.
.gitignore | 3 +
eclipse-birt-build-with-rhino-1.7R3.patch | 322 +++++++++++++++++++++++++++++
eclipse-birt.spec | 37 +++-
fetch-birt.sh | 45 ++--
sources | 2 +-
5 files changed, 376 insertions(+), 33 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 145de70..08707b9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,3 +7,6 @@ birt-source-2_5_2.zip
eclipse-birt-2.6.0-fetched-src.tar.bz2
eclipse-birt-3.7.0-fetched-src.tar.bz2
/eclipse-birt-fedora-data-feature.tar.bz2
+/noarch
+/eclipse-birt-3.7.1
+eclipse-birt-3.7.1-fetched-src.tar.bz2
diff --git a/eclipse-birt-build-with-rhino-1.7R3.patch b/eclipse-birt-build-with-rhino-1.7R3.patch
new file mode 100644
index 0000000..c15ed35
--- /dev/null
+++ b/eclipse-birt-build-with-rhino-1.7R3.patch
@@ -0,0 +1,322 @@
+commit e8b2767ab187824644370e4a730df6e7759c47ba
+Author: Andrew Overholt <overholt at redhat.com>
+Date: Wed Dec 7 09:20:51 2011 -0500
+
+ Changes to work with new Rhino 1.7.3 API
+
+diff --git a/core/org.eclipse.birt.core/src/org/eclipse/birt/core/data/ExpressionParserUtility.java b/core/org.eclipse.birt.core/src/org/eclipse/birt/core/data/ExpressionParserUtility.java
+index aa71603..47b2a2d 100644
+--- a/core/org.eclipse.birt.core/src/org/eclipse/birt/core/data/ExpressionParserUtility.java
++++ b/core/org.eclipse.birt.core/src/org/eclipse/birt/core/data/ExpressionParserUtility.java
+@@ -19,10 +19,10 @@ import org.eclipse.birt.core.exception.CoreException;
+ import org.eclipse.birt.core.i18n.ResourceConstants;
+ import org.mozilla.javascript.CompilerEnvirons;
+ import org.mozilla.javascript.Context;
+-import org.mozilla.javascript.FunctionNode;
++import org.mozilla.javascript.ast.FunctionNode;
+ import org.mozilla.javascript.Node;
+ import org.mozilla.javascript.Parser;
+-import org.mozilla.javascript.ScriptOrFnNode;
++import org.mozilla.javascript.ast.ScriptNode;
+ import org.mozilla.javascript.Token;
+
+ /**
+@@ -74,7 +74,7 @@ public class ExpressionParserUtility
+ Context context = Context.enter( );
+ try
+ {
+- ScriptOrFnNode tree = util.parse( expression, context );
++ ScriptNode tree = util.parse( expression, context );
+ util.CompiledExprFromTree( expression,
+ context,
+ tree,
+@@ -136,7 +136,7 @@ public class ExpressionParserUtility
+ * @throws BirtException
+ */
+ private void CompiledExprFromTree( String expression, Context context,
+- ScriptOrFnNode tree, List columnExprList ) throws BirtException
++ ScriptNode tree, List columnExprList ) throws BirtException
+ {
+ if ( tree.getFirstChild( ) == tree.getLastChild( ) )
+ {
+@@ -177,7 +177,7 @@ public class ExpressionParserUtility
+ * @param cx
+ * @return
+ */
+- private ScriptOrFnNode parse( String expression, Context cx )
++ private ScriptNode parse( String expression, Context cx )
+ {
+ CompilerEnvirons compilerEnv = new CompilerEnvirons( );
+ Parser p = new Parser( compilerEnv, cx.getErrorReporter( ) );
+@@ -193,7 +193,7 @@ public class ExpressionParserUtility
+ * @param columnExprList
+ * @throws BirtException
+ */
+- private void processChild( Node child, ScriptOrFnNode tree,
++ private void processChild( Node child, ScriptNode tree,
+ List columnExprList ) throws BirtException
+ {
+ switch ( child.getType( ) )
+@@ -228,7 +228,7 @@ public class ExpressionParserUtility
+ * @param refNode
+ * @throws BirtException
+ */
+- private void compileDirectColRefExpr( Node refNode, ScriptOrFnNode tree,
++ private void compileDirectColRefExpr( Node refNode, ScriptNode tree,
+ List columnExprList ) throws BirtException
+ {
+ assert ( refNode.getType( ) == Token.GETPROP
+@@ -262,7 +262,7 @@ public class ExpressionParserUtility
+ * @param columnExprList
+ * @throws BirtException
+ */
+- private void compileOuterColRef( Node refNode, ScriptOrFnNode tree,
++ private void compileOuterColRef( Node refNode, ScriptNode tree,
+ List columnExprList ) throws BirtException
+ {
+ int level = compileOuterColRefExpr( refNode );
+@@ -291,7 +291,7 @@ public class ExpressionParserUtility
+ * @param columnExprList
+ * @throws BirtException
+ */
+- private void compileRowPositionRef( Node refNode, ScriptOrFnNode tree,
++ private void compileRowPositionRef( Node refNode, ScriptNode tree,
+ List columnExprList ) throws BirtException
+ {
+ Node rowFirstNode = refNode.getFirstChild( );
+@@ -329,7 +329,7 @@ public class ExpressionParserUtility
+ * @param columnExprList
+ * @throws BirtException
+ */
+- private void compileSimpleColumnRefExpr( Node refNode, ScriptOrFnNode tree,
++ private void compileSimpleColumnRefExpr( Node refNode, ScriptNode tree,
+ List columnExprList ) throws BirtException
+ {
+ Node rowName = refNode.getFirstChild( );
+@@ -466,7 +466,7 @@ public class ExpressionParserUtility
+ * @throws BirtException
+ */
+ private void compileAggregateExpr( Node callNode,
+- ScriptOrFnNode tree, List columnExprList ) throws BirtException
++ ScriptNode tree, List columnExprList ) throws BirtException
+ {
+ assert ( callNode.getType( ) == Token.CALL );
+ compileAggregationFunction( callNode, tree, columnExprList );
+@@ -481,7 +481,7 @@ public class ExpressionParserUtility
+ * @throws BirtException
+ */
+ private void compileAggregationFunction( Node callNode,
+- ScriptOrFnNode tree, List columnExprList ) throws BirtException
++ ScriptNode tree, List columnExprList ) throws BirtException
+ {
+ Node firstChild = callNode.getFirstChild( );
+ if ( firstChild.getType( ) != Token.GETPROP )
+@@ -502,7 +502,7 @@ public class ExpressionParserUtility
+ * @param callNode
+ * @throws BirtException
+ */
+- private void extractArguments( Node callNode, ScriptOrFnNode tree,
++ private void extractArguments( Node callNode, ScriptNode tree,
+ List columnExprList ) throws BirtException
+ {
+ Node arg = callNode.getFirstChild( ).getNext( );
+@@ -524,7 +524,7 @@ public class ExpressionParserUtility
+ * @param complexNode
+ * @throws BirtException
+ */
+- private void compileComplexExpr( Node complexNode, ScriptOrFnNode tree,
++ private void compileComplexExpr( Node complexNode, ScriptNode tree,
+ List columnExprList ) throws BirtException
+ {
+ Node child = complexNode.getFirstChild( );
+@@ -567,7 +567,7 @@ public class ExpressionParserUtility
+ * @param columnExprList
+ * @throws BirtException
+ */
+- private void compileFunctionNode( FunctionNode node, ScriptOrFnNode tree,
++ private void compileFunctionNode( FunctionNode node, ScriptNode tree,
+ List columnExprList ) throws BirtException
+ {
+ compileComplexExpr( node, tree, columnExprList );
+@@ -580,7 +580,7 @@ public class ExpressionParserUtility
+ * @param tree
+ * @return
+ */
+- private int getFunctionIndex( String functionName, ScriptOrFnNode tree )
++ private int getFunctionIndex( String functionName, ScriptNode tree )
+ {
+ int index = -1;
+ for ( int i = 0; i < tree.getFunctionCount( ); i++ )
+diff --git a/core/org.eclipse.birt.core/src/org/eclipse/birt/core/data/OlapExpressionCompiler.java b/core/org.eclipse.birt.core/src/org/eclipse/birt/core/data/OlapExpressionCompiler.java
+index e3e4bc4..ea26f97 100644
+--- a/core/org.eclipse.birt.core/src/org/eclipse/birt/core/data/OlapExpressionCompiler.java
++++ b/core/org.eclipse.birt.core/src/org/eclipse/birt/core/data/OlapExpressionCompiler.java
+@@ -19,7 +19,7 @@ import org.mozilla.javascript.CompilerEnvirons;
+ import org.mozilla.javascript.Context;
+ import org.mozilla.javascript.Node;
+ import org.mozilla.javascript.Parser;
+-import org.mozilla.javascript.ScriptOrFnNode;
++import org.mozilla.javascript.ast.ScriptNode;
+ import org.mozilla.javascript.Token;
+
+ /**
+@@ -43,7 +43,7 @@ class OlapExpressionCompiler
+ Context cx = Context.enter( );
+ CompilerEnvirons ce = new CompilerEnvirons( );
+ Parser p = new Parser( ce, cx.getErrorReporter( ) );
+- ScriptOrFnNode tree = p.parse( expr, null, 0 );
++ ScriptNode tree = p.parse( expr, null, 0 );
+
+ return getScriptObjectName( tree, "measure" );
+ }
+@@ -72,7 +72,7 @@ class OlapExpressionCompiler
+ Context cx = Context.enter( );
+ CompilerEnvirons ce = new CompilerEnvirons( );
+ Parser p = new Parser( ce, cx.getErrorReporter( ) );
+- ScriptOrFnNode tree = p.parse( expr, null, 0 );
++ ScriptNode tree = p.parse( expr, null, 0 );
+
+ populateDimLevels( null,
+ tree,
+diff --git a/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/AbstractExpressionCompiler.java b/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/AbstractExpressionCompiler.java
+index ecbaee2..50d1848 100644
+--- a/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/AbstractExpressionCompiler.java
++++ b/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/AbstractExpressionCompiler.java
+@@ -30,7 +30,7 @@ import org.mozilla.javascript.Interpreter;
+ import org.mozilla.javascript.Node;
+ import org.mozilla.javascript.Parser;
+ import org.mozilla.javascript.Script;
+-import org.mozilla.javascript.ScriptOrFnNode;
++import org.mozilla.javascript.ast.ScriptNode;
+ import org.mozilla.javascript.Token;
+
+ /**
+@@ -96,7 +96,7 @@ abstract class AbstractExpressionCompiler
+ return null;
+ IDataScriptEngine engine = (IDataScriptEngine) context.getScriptEngine( IDataScriptEngine.ENGINE_NAME );
+
+- ScriptOrFnNode tree = parse( exp, engine.getJSContext( context ) );
++ ScriptNode tree = parse( exp, engine.getJSContext( context ) );
+ return processScriptTree( exp, tree, engine.getJSContext( context ));
+ }
+ catch ( Exception e )
+@@ -128,7 +128,7 @@ abstract class AbstractExpressionCompiler
+
+ IDataScriptEngine engine = (IDataScriptEngine) context.getScriptEngine( IDataScriptEngine.ENGINE_NAME );
+
+- ScriptOrFnNode tree = parse( exp, engine.getJSContext( context ) );
++ ScriptNode tree = parse( exp, engine.getJSContext( context ) );
+ return processScriptTree( exp, tree, engine.getJSContext( context ) );
+ }
+ catch ( Exception e )
+@@ -175,7 +175,7 @@ abstract class AbstractExpressionCompiler
+ * DataException
+ */
+ private CompiledExpression processScriptTree( String expression,
+- ScriptOrFnNode tree, Context context ) throws DataException
++ ScriptNode tree, Context context ) throws DataException
+
+ {
+ CompiledExpression expr;
+@@ -226,7 +226,7 @@ abstract class AbstractExpressionCompiler
+ * @return
+ * @throws DataException
+ */
+- protected ScriptOrFnNode parse( String expression, Context cx )
++ protected ScriptNode parse( String expression, Context cx )
+ throws DataException
+ {
+ if ( expression == null )
+@@ -453,7 +453,7 @@ abstract class AbstractExpressionCompiler
+ * @param tree
+ * @param expr
+ */
+- protected void compileForBytecodeExpr( Context context, ScriptOrFnNode tree,
++ protected void compileForBytecodeExpr( Context context, ScriptNode tree,
+ CompiledExpression expr )
+ {
+ assert ( expr instanceof BytecodeExpression );
+diff --git a/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/ExpressionCompiler.java b/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/ExpressionCompiler.java
+index 43f86bb..fd3fe7f 100644
+--- a/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/ExpressionCompiler.java
++++ b/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/ExpressionCompiler.java
+@@ -19,7 +19,7 @@ import org.eclipse.birt.data.engine.impl.aggregation.AggregateRegistry;
+ import org.eclipse.birt.data.engine.script.ScriptConstants;
+ import org.mozilla.javascript.Context;
+ import org.mozilla.javascript.Node;
+-import org.mozilla.javascript.ScriptOrFnNode;
++import org.mozilla.javascript.ast.ScriptNode;
+ import org.mozilla.javascript.Token;
+
+ /**
+@@ -116,7 +116,7 @@ public class ExpressionCompiler extends AbstractExpressionCompiler
+ continue;
+ }
+
+- ScriptOrFnNode tree = new ScriptOrFnNode( Token.SCRIPT );
++ ScriptNode tree = new ScriptNode( Token.SCRIPT );
+ Node exprNode = new Node( Token.EXPR_RESULT);
+ exprNode.addChildToFront( arg );
+ tree.addChildrenToFront( exprNode );
+diff --git a/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/MultiPassExpressionCompiler.java b/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/MultiPassExpressionCompiler.java
+index f59339f..bd5bc53 100644
+--- a/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/MultiPassExpressionCompiler.java
++++ b/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/MultiPassExpressionCompiler.java
+@@ -30,7 +30,7 @@ import org.eclipse.birt.data.engine.odi.IQuery.GroupSpec;
+ import org.eclipse.birt.data.engine.script.ScriptConstants;
+ import org.mozilla.javascript.Context;
+ import org.mozilla.javascript.Node;
+-import org.mozilla.javascript.ScriptOrFnNode;
++import org.mozilla.javascript.ast.ScriptNode;
+ import org.mozilla.javascript.Scriptable;
+ import org.mozilla.javascript.Token;
+
+@@ -189,7 +189,7 @@ class MultiPassExpressionCompiler extends AbstractExpressionCompiler
+ {
+ IScriptExpression expression = (IScriptExpression) binding.getExpression( );
+ currentGroupLevelList.add( expression.getGroupName( ) );
+- ScriptOrFnNode tree = parse( expression.getText( ),
++ ScriptNode tree = parse( expression.getText( ),
+ context );
+ if ( tree.getFirstChild( ) != null
+ && tree.getFirstChild( ).getFirstChild( ) != null
+@@ -563,7 +563,7 @@ class MultiPassExpressionCompiler extends AbstractExpressionCompiler
+ continue;
+ }
+
+- ScriptOrFnNode tree = new ScriptOrFnNode( Token.SCRIPT );
++ ScriptNode tree = new ScriptNode( Token.SCRIPT );
+ Node exprNode = new Node( Token.EXPR_RESULT );
+ exprNode.addChildToFront( arg );
+ tree.addChildrenToFront( exprNode );
+diff --git a/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/olap/util/OlapExpressionCompiler.java b/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/olap/util/OlapExpressionCompiler.java
+index 0756209..a490152 100644
+--- a/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/olap/util/OlapExpressionCompiler.java
++++ b/data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/olap/util/OlapExpressionCompiler.java
+@@ -37,7 +37,7 @@ import org.mozilla.javascript.CompilerEnvirons;
+ import org.mozilla.javascript.Context;
+ import org.mozilla.javascript.Node;
+ import org.mozilla.javascript.Parser;
+-import org.mozilla.javascript.ScriptOrFnNode;
++import org.mozilla.javascript.ast.ScriptNode;
+ import org.mozilla.javascript.Token;
+
+ /**
+@@ -139,7 +139,7 @@ public class OlapExpressionCompiler
+ Context cx = Context.enter( );
+ CompilerEnvirons ce = new CompilerEnvirons( );
+ Parser p = new Parser( ce, cx.getErrorReporter( ) );
+- ScriptOrFnNode tree = p.parse( expr, null, 0 );
++ ScriptNode tree = p.parse( expr, null, 0 );
+
+ return getScriptObjectName( tree, objectName );
+ }
+@@ -240,7 +240,7 @@ public class OlapExpressionCompiler
+ Context cx = Context.enter( );
+ CompilerEnvirons ce = new CompilerEnvirons( );
+ Parser p = new Parser( ce, cx.getErrorReporter( ) );
+- ScriptOrFnNode tree = p.parse( expr.getText( ), null, 0 );
++ ScriptNode tree = p.parse( expr.getText( ), null, 0 );
+
+ populateDimLevels( null,
+ tree,
diff --git a/eclipse-birt.spec b/eclipse-birt.spec
index 20f1c6b..b0be0bb 100644
--- a/eclipse-birt.spec
+++ b/eclipse-birt.spec
@@ -1,9 +1,20 @@
%global eclipse_base %{_libdir}/eclipse
%global eclipse_dropin %{_datadir}/eclipse/dropins
+# Match the context qualifier with the upstream p2 repo
+#
+# eclipse -consolelog -nosplash -application org.eclipse.equinox.p2.director \
+# -repository http://download.eclipse.org/birt/update-site/3.7 -list | \
+# grep org.eclipse.birt.feature.group | grep %%{version} | \
+# sed "s/org.eclipse.birt.feature.group=//" | \
+# sed "s/%%{version}.//" | \
+# sed "s/-.*//"
+%global qualifier v20110905
+%global tag BIRT_3_7_1_Release_201109131734
+
Name: eclipse-birt
-Version: 3.7.0
-Release: 5%{?dist}
+Version: 3.7.1
+Release: 1%{?dist}
Summary: Eclipse-based reporting system
Group: System Environment/Libraries
License: EPL
@@ -15,6 +26,11 @@ Source1: fetch-birt.sh
Source2: %{name}-fedora-data-feature.tar.bz2
# smil in Fedora is merged in xml-commons-apis-ext.jar, reflecting upstream changes
Patch0: birt-remove-smil.patch
+# 351482: BIRT does not work with Rhino (org.mozilla.javascript) 1.7R3
+# https://bugs.eclipse.org/bugs/show_bug.cgi?id=351482
+#
+# FIXME: This is only a first-step patch to make it build with Rhino 1.7R3.
+Patch1: %{name}-build-with-rhino-1.7R3.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
%if 0%{?rhel} >= 6
@@ -66,12 +82,11 @@ you add charts to your own application.
%prep
%setup -q
-%patch0
+%patch0 -p1
+%patch1 -p2
# add in a data feature to include birt data plugins
-pushd features
tar -xjf %{SOURCE2}
-popd
# make sure upstream hasn't snuck in any jars we don't know about
find -name "*.jar" -exec rm {} \;
@@ -153,12 +168,16 @@ rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%{eclipse_dropin}/birt
-%doc features/org.eclipse.birt.chart.feature/license.html
-%doc features/org.eclipse.birt.chart.feature/epl-v10.html
-%doc features/org.eclipse.birt.data.fedora.feature/license.html
-%doc features/org.eclipse.birt.data.fedora.feature/epl-v10.html
+%doc org.eclipse.birt.chart.feature/license.html
+%doc org.eclipse.birt.chart.feature/epl-v10.html
+%doc org.eclipse.birt.data.fedora.feature/license.html
+%doc org.eclipse.birt.data.fedora.feature/epl-v10.html
%changelog
+* Wed Dec 7 2011 Andrew Overholt <overholt at redhat.com> 3.7.1-1
+- Update to 3.7.1.
+- Add patch to build with Rhino 1.7R3.
+
* Fri Dec 2 2011 Andrew Overholt <overholt at redhat.com> 3.7.0-5
- Add ExclusiveArch for RHEL.
diff --git a/fetch-birt.sh b/fetch-birt.sh
index 3bfa076..1d9fa55 100755
--- a/fetch-birt.sh
+++ b/fetch-birt.sh
@@ -1,37 +1,36 @@
#!/bin/sh
-CVSTAG=BIRT_3_7_0_Release_201106091010
-RHINOTAG=v20090608
-VERSION=3.7.0
+TAG=BIRT_3_7_1_Release_201109131734
+VERSION=3.7.1
rm -fr eclipse-birt-${VERSION}
mkdir -p eclipse-birt-${VERSION}
-pushd eclipse-birt-${VERSION}
+
+git clone git://git.eclipse.org/gitroot/birt/org.eclipse.birt.git
+cd org.eclipse.birt
+git checkout ${TAG}
for f in \
features/org.eclipse.birt.chart.feature \
-org.eclipse.birt.chart \
-org.eclipse.birt.chart.device.extension \
-org.eclipse.birt.chart.device.pdf \
-org.eclipse.birt.chart.device.svg \
-org.eclipse.birt.chart.device.swt \
-org.eclipse.birt.chart.engine \
-org.eclipse.birt.chart.engine.extension \
-org.eclipse.birt.chart.examples.core \
-org.eclipse.birt.chart.ui \
-org.eclipse.birt.chart.ui.extension \
-org.eclipse.birt.core \
-org.eclipse.birt.core.ui \
-org.eclipse.birt.data \
-org.eclipse.birt.data.aggregation \
+build/org.eclipse.birt.chart \
+chart/org.eclipse.birt.chart.device.extension \
+chart/org.eclipse.birt.chart.device.pdf \
+chart/org.eclipse.birt.chart.device.svg \
+chart/org.eclipse.birt.chart.device.swt \
+chart/org.eclipse.birt.chart.engine \
+chart/org.eclipse.birt.chart.engine.extension \
+chart/org.eclipse.birt.chart.examples.core \
+chart/org.eclipse.birt.chart.ui \
+chart/org.eclipse.birt.chart.ui.extension \
+core/org.eclipse.birt.core \
+core/org.eclipse.birt.core.ui \
+data/org.eclipse.birt.data \
+data/org.eclipse.birt.data.aggregation \
; do
-cvs -d :pserver:anonymous at dev.eclipse.org:/cvsroot/birt \
-export -r ${CVSTAG} source/$f;
+ mv $f ../eclipse-birt-${VERSION}
done
-mv source/* .
-rmdir source
-popd
+cd ..
tar cjf eclipse-birt-${VERSION}-fetched-src.tar.bz2 eclipse-birt-${VERSION}
diff --git a/sources b/sources
index ebf81ee..64c30a2 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-8f03e903eb6930e1a5a1f73d7043925e eclipse-birt-3.7.0-fetched-src.tar.bz2
c1d9741b061a5bbc66e1181318b1ec53 eclipse-birt-fedora-data-feature.tar.bz2
+e7e723b76c4b2cb12693518955af7544 eclipse-birt-3.7.1-fetched-src.tar.bz2
More information about the scm-commits
mailing list