Pushing minimal fixes in sablevm-classlib into Sarge
Hi,
I recently closed #304823, #306507 with the upload of sablevm-classlib
1.11.3-2. The changes were minimal, but were fixing quite a PITA for
Java users: the previous version was not able to build nor run newer ANT
(equivalent of 'make' for Java).
The package was in Sid for over a week and I got no complaints (neither
in BTS, nor private email, nor IRC). I also tested it with a few
packages that use Ant to build, and I also made sure this version runs
Eclipse (with the script from http://sablevm.org/wiki/Eclipse ).
I think the 'removed PITA' / 'diff size' ratio is quite high here, so
I wanted to ask for pushing it into Sarge. I am also attaching the
diff, the actual changes are 2 conditionals added (plus indentation that
makes it look bigger) and setting properties that had completly wrong
values ("?") to sane values (it would be impossible to make it worse by
setting it to anything).
In summary, I wanted to ask you to consider pusing sablevm-classlib
1.11.3-2 into Sarge.
Thank you for making Sarge happen,
Grzegorz B. Prokopski
PS: The sablevm package needs not to be updated. The construction of
dependencies allows for that.
--
Grzegorz B. Prokopski <gadek@sablevm.org>
SableVM - Free, LGPL'ed Java VM http://sablevm.org
Why SableVM ?!? http://sablevm.org/wiki/Features
Debian GNU/Linux - the Free OS http://www.debian.org
diff -urN sablevm-classlib-1.11.3-1/debian/changelog sablevm-classlib-1.11.3-2/debian/changelog
--- sablevm-classlib-1.11.3-1/debian/changelog 2005-05-19 22:41:58.204128752 -0400
+++ sablevm-classlib-1.11.3-2/debian/changelog 2005-05-19 22:42:09.061478184 -0400
@@ -1,3 +1,10 @@
+sablevm-classlib (1.11.3-2) unstable; urgency=low
+
+ * Fixed Ant bootstrapping. Closes: #304823, #306507.
+ * Changes kept to minimum to allow inclusion into Sarge.
+
+ -- Grzegorz B. Prokopski <gadek@debian.org> Tue, 10 May 2005 23:29:48 -0400
+
sablevm-classlib (1.11.3-1) unstable; urgency=high
* Bugfix-only upload for Sarge.
diff -urN sablevm-classlib-1.11.3-1/java/lang/Thread.java sablevm-classlib-1.11.3-2/java/lang/Thread.java
--- sablevm-classlib-1.11.3-1/java/lang/Thread.java 2005-03-24 16:03:09.000000000 -0500
+++ sablevm-classlib-1.11.3-2/java/lang/Thread.java 2005-05-19 22:42:09.059478488 -0400
@@ -750,6 +750,8 @@
if (sm != null)
// XXX Don't check this if the caller's class loader is an ancestor.
sm.checkPermission(new RuntimePermission("getClassLoader"));
+ if (contextClassLoader == null)
+ contextClassLoader = ClassLoader.getSystemClassLoader();
return contextClassLoader;
}
diff -urN sablevm-classlib-1.11.3-1/vm/reference/gnu/classpath/VMSystemProperties.java sablevm-classlib-1.11.3-2/vm/reference/gnu/classpath/VMSystemProperties.java
--- sablevm-classlib-1.11.3-1/vm/reference/gnu/classpath/VMSystemProperties.java 2005-05-19 22:41:58.202129056 -0400
+++ sablevm-classlib-1.11.3-2/vm/reference/gnu/classpath/VMSystemProperties.java 2005-05-19 22:42:09.060478336 -0400
@@ -87,20 +87,20 @@
static void preInit(Properties p)
{
// set default values
- p.setProperty("java.version", "?");
- p.setProperty("java.vendor", "?");
- p.setProperty("java.vendor.url", "?");
- p.setProperty("java.home", "?");
+ p.setProperty("java.version", "1.4.2");
+ p.setProperty("java.vendor", "SableVM Project");
+ p.setProperty("java.vendor.url", "http://sablevm.org");
+ p.setProperty("java.home", "/usr/lib/sablevm");
p.setProperty("java.vm.specification.version", "Second Edition");
p.setProperty("java.vm.specification.vendor", "Addison Wesley");
p.setProperty("java.vm.specification.name", "ISBN 0-201-43294-3");
p.setProperty("java.vm.version", getSableVMVersion());
p.setProperty("java.vm.vendor", "Etienne M. Gagnon and others");
p.setProperty("java.vm.name", "SableVM");
- p.setProperty("java.specification.version", "?");
- p.setProperty("java.specification.vendor", "?");
- p.setProperty("java.specification.name", "?");
- p.setProperty("java.class.version", "?");
+ p.setProperty("java.specification.version", "1.2");
+ p.setProperty("java.specification.vendor", "Sun Microsystems Inc.");
+ p.setProperty("java.specification.name", "Java Platform API Specification");
+ p.setProperty("java.class.version", "46.0");
p.setProperty("java.class.path", ".");
p.setProperty("java.library.path", ".");
p.setProperty("java.io.tmpdir", "/tmp");
@@ -123,6 +123,9 @@
// which depend on it.
p.setProperty("sun.boot.class.path", getBootstrapClassPath());
p.setProperty("sun.boot.library.path", getBootstrapLibraryPath());
+ p.setProperty("gnu.classpath.vm.shortname", "SableVM");
+ p.setProperty("java.runtime.name", p.getProperty("java.vm.name"));
+ p.setProperty("java.runtime.version", p.getProperty("java.vm.version"));
// GNU Classpath default uses global location, which is broken.
p.setProperty("gnu.classpath.home.url", "file://" +
diff -urN sablevm-classlib-1.11.3-1/vm/reference/java/lang/VMClassLoader.java sablevm-classlib-1.11.3-2/vm/reference/java/lang/VMClassLoader.java
--- sablevm-classlib-1.11.3-1/vm/reference/java/lang/VMClassLoader.java 2005-03-24 16:03:25.000000000 -0500
+++ sablevm-classlib-1.11.3-2/vm/reference/java/lang/VMClassLoader.java 2005-05-19 22:42:09.059478488 -0400
@@ -236,15 +236,16 @@
File file = new File(st.nextToken());
if (file.isDirectory())
{
- try
- {
- v.add(new URL("file://"
- + new File(file, name).getAbsolutePath()));
- }
- catch (MalformedURLException e)
- {
- throw new Error(e);
- }
+ File fullFile = new File(file, name);
+ if (fullFile.exists() && fullFile.isFile())
+ try
+ {
+ v.add(new URL("file://" + fullFile.getAbsolutePath()));
+ }
+ catch (MalformedURLException e)
+ {
+ throw new Error(e);
+ }
}
else if (file.isFile())
{
Reply to: