2009-08-26 21:56:37 +02:00
|
|
|
# $NetBSD: Makefile,v 1.18 2009/08/26 19:57:54 sno Exp $
|
2004-03-28 22:34:53 +02:00
|
|
|
|
|
|
|
.include "../../lang/classpath/Makefile.common"
|
|
|
|
|
|
|
|
PKGNAME= ${DISTNAME:S/classpath/classpath-gui/}
|
2009-08-26 21:56:37 +02:00
|
|
|
PKGREVISION= 3
|
2004-03-28 22:34:53 +02:00
|
|
|
COMMENT+= (GUI libraries)
|
|
|
|
|
Update classpath{,-gui} to 0.93.
Patch provided by pancake@youterm.com in PR 35262.
And add patches to build with NetBSD 3.
New in release 0.93 (Dec 8, 2006)
* CORBA objects that exist on the same virtual machine and only are connected
to another ORB are now accessed directly and no longer via network. It is
the same feature that RMI implementation provides. These faster calls should
be completely transparent, as the parameters are cloned, where required.
Currently the direct calls are only possible for the non-deprecated objects
that are connected to the ORB via POA.
* The 'javah' tool has been added. It requires the ASM library
(see asm.objectweb.org); it can be enabled with the --with-asm
option to configure
* Added the rmi and corbaname URL context factories for JNDI.
* Fixes in the JNDI InitialContext now allows to plug-in user implementation.
* Removed currentClassLoader method from
vm/reference/java/io/ObjectInputStream.java.
* Added firstNonNullClassLoader method to
vm/reference/gnu/classpath/VMStackWalker.java. VMs are encouraged to
provide a more efficient implementation.
* Added aton method to vm/reference/java/net/VMInetAddress.java.
* NetworkInterface has been implemented for systems that provide the
`getifaddrs' function.
* java.nio.channels.Selector implementations have been added that use
the kqueue notification mechanism on Mac OS X and *BSD, and that use
the epoll notification mechanism on Linux 2.6.
* java.nio has been refactored to support more non-blocking operations
natively. Blocking IO classes have been refactored to call
non-blocking classes. Non-blocking accepts, connects, and
scatter-gather IO should now be better supported.
* HTML support for Swing has been greatly enhanced.
Runtime interface changes:
* java.net.VMNetworkInterface and java.net.NetworkInterface have been
updated to keep native-modified state in the former, and to simplify
the native code in our reference implementation.
* gnu.java.nio.VMChannel has been expanded to better support native
non-blocking IO. Most native state data (such as file descriptor
integers) has been abstracted away into private state in the runtime
interface.
* gnu.java.nio.VMPipe has been similarly changed.
* gnu.java.net.VMPlainSocketImpl has been changed to remove some
functionality now provided by VMChannel; datagram socket-specific
methods have also been moved here, deprecating VMPlainDatagramSocketImpl.
* gnu.java.net.VMPlainDatagramSocketImpl removed.
New in release 0.92 (Aug 9, 2006)
* GConf is used as a backend for java.util.prefs. GNU Classpath
thanks to Mario Torre for this contribution!
* libjawtgnu.so has been renamed libjawt.so for binary compatibility.
libjawt.so should be installed in a VM-specific directory rather
than directly in /usr/lib. Proprietary VMs put their libjawt.so
implementations in VM-specific directories but search /usr/lib first.
If GNU Classpath's libjawt.so is installed in /usr/lib it will create
problems for people who use a proprietary VM to run AWT Native
Interface applications.
* The GdkGraphics2D backend has been made the default. There is no
longer an explicit dependency on Cairo, the --enable-gtk-cairo
configure option is gone, and GTK 2.8 or higher is now required to
build the GTK peers.
* A Mozilla plugin, 'gcjwebplugin', is now included. It introduces a
dependency on the Mozilla plugin support headers and libraries.
* New java implementations of png and gif imageio readers and writers.
* A tools.texinfo document has been created and now includes
documentation about:
* appletviewer
* gcjwebplugin
* jarsigner
* keytool
* Several new tools are now included:
* appletviewer
* jar
* native2ascii
* serialver
* keytool
* jarsigner
A new configure option --enable-tool-wrappers causes wrapper
binaries to be built for VMs that support the JNI Invocation API.
* javax.sound.midi providers have been added to read and
write standard MIDI files.
* A javax.sound.sampled .au and .wav file readers have been added.
* New Java Virtual Machine Tool Interface header, jvmti.h.
* AWT peers for X Windows based on Escher (a pure java X protocol
implementation) have been added. So far it supports AWT 1.1 style
Graphics, image loading via ImageIO (PNG, GIF and BMP images in this
release), top level components as well as mouse and keyboard input.
It is capable of running many Swing applications. Graphics2D and
AWT widgets are not yet supported with this peer set.
* GConf based util.peers backend (see the --enable-gconf-peer and
--enable-default-preferences-peer configure options).
* Support for batch importing trusted certificates for use with ssl
connections (see script/import-cacerts.sh).
* NIO scatter-gather channel support.
Runtime interface changes:
* A new class, VMURLConnection, is used to implement
URLConnection.guessContentTypeFromStream. The reference
implementation uses libmagic (and falls back to doing nothing if
libmagic is not available).
* The method gnu.java.io.PlatformHelper.toCanonicalForm() has been
replaced with a JNI implementation of VMFile.toCanonicalForm() for
GNU/Posix systems.
* A new class, VMRuntimeMXBeanImpl, is used to implement
the low-level support of the runtime management bean.
VMs should use it to supply the input arguments and start
time of the VM. In addition, one of sun.boot.class.path
or java.boot.class.path should be defined by the VM to
support the optional boot class path access functionality.
* The Unsafe class was moved back to the place expected by the JSR 166
reference implementation. We've also added a couple other new VM
classes to support the JSR 166 code -- sun.reflect.Reflection and
sun.reflect.misc.ReflectUtil.
* Another new class, VMClassLoadingMXBeanImpl, is used to implement
the low-level support of the class loading management bean.
VMs need to supply it with information about how many classes
are currently loaded, how many have been unloaded and whether
verbose class loading output is on or off. Provision should also
be made for the latter to be toggled at runtime.
* VMThreadMXBeanImpl is used to implement the low-level support
of the thread management bean. Providing this interface requires
providing a fair amount of information about threads, including
optional time and contention monitoring, and instances of the
new ThreadInfo class in java.lang.management. getState() has also
been added to the VMThread interface; this is required by the bean
as well as java.lang.Thread.
* VMMemoryMXBeanImpl is used to implement the low-level support
of the memory management bean. Providing this interface requires
providing information about the levels of heap and non-heap memory,
and the number of objects eligible for garbage collection.
* VMCompilationMXBeanImpl is used to allow for optional compilation
time support for Just-In-Time compilers.
* VMMemoryPoolMXBeanImpl is used to implement the low-level support
of the memory pool beans. Providing this interface requires
providing memory usage statistics for each supported bean.
* VMManagementFactory provides the names of the memory pools,
memory managers and garbage collectors maintained by the virtual
machine. These are used to create the beans by the ManagementFactory.
* VMMemoryManagerMXBeanImpl and VMGarbageCollectorMXBeanImpl provide
low-level support for memory managers (including the specific subclass
of garbage collecting memory managers). The interfaces for these
require no more than enumerating the number of collections and the
time spent (for garbage collectors) and a relationship to the memory
pools (for all), along with a validity check.
2007-01-05 17:48:58 +01:00
|
|
|
DEPENDS+= classpath>=0.93:../../lang/classpath
|
2004-03-28 22:34:53 +02:00
|
|
|
|
2005-08-10 22:56:10 +02:00
|
|
|
USE_TOOLS+= pkg-config
|
|
|
|
|
2006-04-15 21:53:07 +02:00
|
|
|
BUILD_DIRS= native/jni/classpath
|
|
|
|
BUILD_DIRS+= native/jni/gtk-peer
|
|
|
|
INSTALL_DIRS= native/jni/gtk-peer
|
2004-03-28 22:34:53 +02:00
|
|
|
|
2007-09-21 15:03:25 +02:00
|
|
|
BUILDLINK_FILES.libart+= bin/libart2-config
|
|
|
|
BUILDLINK_FNAME_TRANSFORM.libart+= -e 's|/libart2-config|/libart-config|g'
|
2004-03-28 22:34:53 +02:00
|
|
|
|
2007-01-14 10:22:02 +01:00
|
|
|
BUILDLINK_DEPMETHOD.libXt?= build
|
|
|
|
|
2004-03-28 22:34:53 +02:00
|
|
|
.include "../../devel/glib2/buildlink3.mk"
|
2007-09-21 15:03:25 +02:00
|
|
|
.include "../../graphics/libart/buildlink3.mk"
|
2004-03-28 22:34:53 +02:00
|
|
|
.include "../../x11/gtk2/buildlink3.mk"
|
2007-01-14 10:22:02 +01:00
|
|
|
.include "../../x11/libSM/buildlink3.mk"
|
|
|
|
.include "../../x11/libX11/buildlink3.mk"
|
|
|
|
.include "../../x11/libXt/buildlink3.mk"
|
2006-12-27 14:37:35 +01:00
|
|
|
.include "../../x11/libXtst/buildlink3.mk"
|
2004-03-28 22:34:53 +02:00
|
|
|
.include "../../mk/bsd.pkg.mk"
|