sablevm) as noted by Gary Duzan in PR pkg/30137
Fix PLIST issues, to properly deintall
Fix AWK snippets for print-PLIST
Bump PKGREVISION for sablevm and sablevm-classpath
This fixes PR pkg/30022
(selected parts of changelog)
* Version 1.13
- Updated the class library to the GNU Classpath 0.19 release.
- Fixed internal libffi on ia64.
- Fixed possible interpeter crashes on ia64.
- Other small bugfixes.
* Version 1.12
- Fixed write barriers for generational garbage collector.
- Imported GNU Classpath 0.16 release (plus later fixes).
- Disabled inlined engine on alpha.
- Added jar-sablevm wrapper for fastjar.
- Fixed NaN -> int conversion.
- Improved AIX support.
- Improved Cygwin support (but not in SableVM SDK).
* Version 1.11
- Fixed many important bugs of version 1.1.10.
- Imported GNU Classpath CVS snapshot as of March 12, 2005.
- Added assertions to check that the env pointer is valid in JNI calls.
- Implemented non-blocking locking, and used it to solve a hashcode bug.
- Solved many subtle bugs resulting in incompletely initialized
threads and stack corruption.
- Added creation of rt.jar symlink to libclasspath.jar.
* Version 1.1.10
- Imported the code of GNU Classpath 0.14.
- Implemented most of the missing JNI 1.2 functions.
- Implemented the new JNI 1.4 nio related functions.
- Fixed the java-sablevm wrapper to better handle LD_LIBRARY_PATH,
-Djava.library.path and CLASSPATH setting.
- Disabled the timezone setting in java-sablevm wrapper - classpath
should now do it on its own.
- Fixed Object.wait() when timeout is specified. This fixes Ant pauses.
- Changed _svmm_fatal_error() to actually print the function name,
when possible.
- Added thread IDs to verbose instruction output
- Implemented Java_java_lang_VMRuntime_[free|total|max]Memory().
- Implemented basic JDK home support.
- Fixed various bugs.
* Version 1.1.9
- Added the necessary support to run both Eclipse 2 and Eclipse 3
without using external libraries. Instructions are available
at http://sablevm.org/wiki/Eclipse .
- Merged code from GNU Classpath 0.13 release.
- Improved error messages related to exceptions at bootstrap (ie.
binding to non-existant native methods).
- Implemented some missing JNI functions.
- Added some missing system-dependant Java properties.
- Enabled "real life brokenness" option by default to better handle
native code not adhering to the Java specs.
- Improved cross-compiliation support.
* Version 1.1.8
- Imported a new GNU Classpath CVS snapshot as of December 28, 2004.
- Implemented some missing JNI functions needed by qt/java.
- Set BOOTCLASSPATH in java-sablevm to help jikes find our libs.
- Wrapped the exception thrown by a constructor or a method invoked
through reflection in an InvocationTargetException instance.
- Added ProtectionDomain handling for classes loaded via j.l.ClassLoader.
- Started to use URLClassLoader instead of gnu.j.l.SystemClassLoader,
which apparently was used by us exclusively.
- Enabled GCC unused and long-long warnings, then fixed tons of warnings.
- Implemented [Get|Release]PrimitiveArrayCritical.
- Solved a class loading related deadlock.
- Fixed a VMThread.sleep bug.
- Passed the class name as a parameter to LinkageError and
ClassCircularityError in java.lang.ClassLoader.
- Added function name as message to UnsatisfiedLinkError for missing
native functions.
* Version 1.1.7
- Imported new GNU Classpath CVS snapshot as of Sun Oct 10 18:00:00 UTC 2004.
- Added handling of Jar/Zip files on boot classpath (closes BUG:2).
- Provided user-friendly failure messages for bootstrap problems. This
should get rid of the hated "sablevm: cannot create vm".
- Allowed for multiple elements and prepending/appending to boot class path.
- Added --with-profiling switch to make most functions non-"static".
- Made sablevm-classpath install its files in more standard locations.
- Explicitely disallowed compilation of classpath with gcj or kjc (it
never worked reliably).
- Made jikes and gcc be less verbose by default (to avoid confusion).
- Removed some obsolete code from various places.
- Added new Generational Garbage Collector ("experimental", available on
request, by passing --with-gc=gencopy to configure).
- Made several bugfixes of:
- JNI methods not returning NULL on errors (closes BUG:12).
- IsInstanceOf always returning JNI_FALSE (closes BUG:63).
- A copy&paste mistake in PopLocalFrame (closes BUG:62).
- Several JNI methods not returning NULL on errors (closes BUG:12).
- IsInstanceOf always returning JNI_FALSE (closes BUG:63).
- "New array" memory allocation size overflow (closes BUG:8).
- Out-of-source builds (closes BUG:55).
- Handling of 'double' values on ARM.
- FPU in 64-bit precision mode on Linux / Intel x86 (closes BUG:1).
- F2L, F2I, D2L, D2I not checking for overflows (closes BUG:54).
- SIGPIPE killing the VM (closes BUG:51).
- GNU make detection on non-GNU/Linux platforms.
- Case-insensitive grepping for "Main-Class:" string in MANIFEST.MF.
* Version 1.1.6
- Synchronized sablevm-classpath with the latest GNU Classpath CVS
(post 0.10 release) as of July 10, 2004.
- Improved AWT and Swing support.
- Added additional checks to autogen.sh for FreeBSD.
- Added new DecoderUS_ASCII, Spring and SpringLayout classes.
- Added a sablevm.verbose.synchronization (DEBUG) option to help
debugging deadlocks.
- Improved TimeZone handling.
- Added useful additional information in stack dumps.
* Version 1.1.5
- Synchronized sablevm-classpath with the latest GNU Classpath CVS as of May 29, 2004.
- Improved the support for Ant 1.6.
- Switched to libtool handling to find the right library suffixes.
This helps some platforms like OpenBSD and Cygwin.
- Fixed a corner case problem with class loading.
- Made some other small bug fixes.
* Version 1.1.4
- Updated sablevm-classpath with the recent GNU Classpath 0.09 release
and later GNU Classpath CVS changes as of May 4, 2004.
- Improved support for AWT and Swing.
- Eliminated the dependency lt_dlopen(NULL) which seem broken on some
platforms such as Cygwin and some *BSD.
- Switched to new, complete implementation of VMProcess/Process from
GNU Classpath instead of using our own previous partial
implementation.
- Added x86_64 (AMD64) support to the already supported 8 other
architectures of Debian GNU/Linux (alpha, hppa, i386, ia64, m68k,
powerpc, s390, sparc). The support for the remaining mips and
mipsel architectures of Debian is apparently implemented but it has
not yet been confirmed.
- Improved autodetection of build parameters on non-GNU/Linux systems.
This includes selection of dynamic libraries, availability of m4
preprocessor and auto-disabling "signals for exceptions" on
platforms that don't seem to support signals.
that these directories will be conditionally removed (based on reference
counts), regardless of the value of PKG_CONFIG. Bump the PKGREVISION
for packages that were modified as a result.
this, we only need some simple logic in java-env.mk to automatically
generate an ALTERNATIVES file for us.
There are two exceptions, though: fastjar and jikes (pointed out by tv@),
which do not use this file; they have to be handled manually.
Bump PKGREVISION for all affected packages.
While doing this, remove the java-wrapper package, obsoleted by the new
functionality provided by pkg_alternatives.
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
All library names listed by *.la files no longer need to be listed
in the PLIST, e.g., instead of:
lib/libfoo.a
lib/libfoo.la
lib/libfoo.so
lib/libfoo.so.0
lib/libfoo.so.0.1
one simply needs:
lib/libfoo.la
and bsd.pkg.mk will automatically ensure that the additional library
names are listed in the installed package +CONTENTS file.
Also make LIBTOOLIZE_PLIST default to "yes".
intended transformation: use "rm" to remove an option, "rmdir" to remove
all options containing a path starting with a given directory name, and
"rename" to rename options to something else.
can easily coexist with other Java implementations. This basically means
that they are now installed under ${PREFIX}/java/sablevm and that a wrapper
is created under ${PREFIX}/bin (sablevm-java) to exec this VM.
Version 1.1.3
- Cleaned up build process so that "./configure ; make ; make install"
works out of the box for both sablevm-classpath (as it does for sablevm).
Version 1.1.2
- Uses GNU Classpath 0.08+CVS.
- Various minor bugfixes and enhancements.
SableVM is a portable bytecode interpreter written in C, and implementing
the Java virtual machine specification, second edition. Its goals are to
be reasonably small, fast and efficient, as well as providing a well
designed and robust platform for conducting research.
SableVM implements many innovative techniques, including:
* 3 flavors of threaded interpretation (switched, threaded and inlined).
* Bidirectional object layout.
* Spinlock-free thin locks.
* Sparse interface vtables.
* Low-cost maps for precise garbage collection.
This package is slightly based on the one found in pkgsrc-wip, made by
pancake AT phreaker.net.