* src/native/vm/openjdk/sun_misc_Perf.cpp: Implement just the bare minimum
[cacao.git] / src / native / include / Makefile.am
index cc1c27b4a65c30a0308642d1df31f68cd54acd10..28a29873cc7737d4326ee4b8c1c505112d882db6 100644 (file)
-## Process this file with automake to produce Makefile.in
+## src/native/include/Makefile.am
+##
+## Copyright (C) 1996-2005, 2006, 2007, 2008
+## CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO
+##
+## This file is part of CACAO.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2, or (at
+## your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program; if not, write to the Free Software
+## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+## 02110-1301, USA.
 
-# $Id: Makefile.am 1622 2004-11-30 13:18:52Z twisti $
 
-CLEANFILES = \
-       gnu_classpath_Configuration.h \
-       gnu_classpath_RawData.h \
-       gnu_java_awt_image_GdkPixbufDecoder.h \
-       gnu_java_awt_peer_gtk_GdkFontMetrics.h \
-       gnu_java_awt_peer_gtk_GdkGraphics.h \
-       gnu_java_awt_peer_gtk_GdkPixbufDecoder.h \
-       gnu_java_awt_peer_gtk_GtkButtonPeer.h \
-       gnu_java_awt_peer_gtk_GtkCanvasPeer.h \
-       gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.h \
-       gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.h \
-       gnu_java_awt_peer_gtk_GtkCheckboxPeer.h \
-       gnu_java_awt_peer_gtk_GtkChoicePeer.h \
-       gnu_java_awt_peer_gtk_GtkClipboard.h \
-       gnu_java_awt_peer_gtk_GtkComponentPeer.h \
-       gnu_java_awt_peer_gtk_GtkFileDialogPeer.h \
-       gnu_java_awt_peer_gtk_GtkFramePeer.h \
-       gnu_java_awt_peer_gtk_GtkGenericPeer.h \
-       gnu_java_awt_peer_gtk_GtkImagePainter.h \
-       gnu_java_awt_peer_gtk_GtkLabelPeer.h \
-       gnu_java_awt_peer_gtk_GtkListPeer.h \
-       gnu_java_awt_peer_gtk_GtkMainThread.h \
-       gnu_java_awt_peer_gtk_GtkMenuBarPeer.h \
-       gnu_java_awt_peer_gtk_GtkMenuItemPeer.h \
-       gnu_java_awt_peer_gtk_GtkMenuPeer.h \
-       gnu_java_awt_peer_gtk_GtkPanelPeer.h \
-       gnu_java_awt_peer_gtk_GtkPopupMenuPeer.h \
-       gnu_java_awt_peer_gtk_GtkScrollPanePeer.h \
-       gnu_java_awt_peer_gtk_GtkScrollbarPeer.h \
-       gnu_java_awt_peer_gtk_GtkTextAreaPeer.h \
-       gnu_java_awt_peer_gtk_GtkTextComponentPeer.h \
-       gnu_java_awt_peer_gtk_GtkTextFieldPeer.h \
-       gnu_java_awt_peer_gtk_GtkToolkit.h \
-       gnu_java_awt_peer_gtk_GtkWindowPeer.h \
-       gnu_java_lang_reflect_TypeSignature.h \
-       gnu_java_math_MPN.h \
-       gnu_java_net_PlainDatagramSocketImpl.h \
-       gnu_java_net_PlainSocketImpl.h \
-       gnu_java_nio_FileLockImpl.h \
-       gnu_java_nio_SelectorImpl.h \
-       gnu_java_nio_channels_FileChannelImpl.h \
-       gnu_java_security_x509_X509Certificate.h \
-       java_awt_peer_ComponentPeer.h \
-       java_awt_peer_MenuItemPeer.h \
-       java_awt_peer_MenuPeer.h \
-       java_beans_PropertyEditor.h \
-       java_io_DataInput.h \
-       java_io_DataInputStream.h \
-       java_io_File.h \
-       java_io_FileDescriptor.h \
-       java_io_FileInputStream.h \
-       java_io_FileWriter.h \
-       java_io_ObjectInputStream.h \
-       java_io_OutputStream.h \
-       java_io_OutputStreamWriter.h \
-       java_io_PrintStream.h \
-       java_io_PrintWriter.h \
-       java_io_RandomAccessFile.h \
-       java_io_VMFile.h \
-       java_io_VMObjectStreamClass.h \
-       java_io_Writer.h \
-       java_lang_Boolean.h \
-       java_lang_Byte.h \
-       java_lang_Character.h \
+JAVAH    = javah
+JAVAHCMD = $(JAVAH) -jni -bootclasspath $(BOOTCLASSPATH)
+
+if WITH_JAVA_RUNTIME_LIBRARY_CLDC1_1
+IMPLEMENTED_VM_CLASSES_HEADER_FILES = \
+       com_sun_cldc_io_ResourceInputStream.h \
+       com_sun_cldc_io_j2me_socket_Protocol.h \
+       com_sun_cldchi_io_ConsoleOutputStream.h \
+       com_sun_cldchi_jvm_FileDescriptor.h \
+       com_sun_cldchi_jvm_JVM.h \
        java_lang_Class.h \
-       java_lang_Compiler.h \
-       java_lang_Double.h \
-       java_lang_Float.h \
-       java_lang_Integer.h \
-       java_lang_JOWENNTest1.h \
-       java_lang_Long.h \
        java_lang_Math.h \
-       java_lang_Process.h \
        java_lang_Runtime.h \
-       java_lang_RuntimePermission.h \
-       java_lang_SecurityManager.h \
-       java_lang_Short.h \
-       java_lang_StackTraceElement.h \
-       java_lang_StrictMath.h \
-       java_lang_StringBuffer.h \
-       java_lang_System.h \
-       java_lang_UnsatisfiedLinkError.h \
+       java_lang_System.h
+endif
+
+if WITH_JAVA_RUNTIME_LIBRARY_GNU_CLASSPATH
+IMPLEMENTED_VM_CLASSES_HEADER_FILES = \
+       gnu_classpath_VMStackWalker.h \
+       gnu_classpath_VMSystemProperties.h \
+       gnu_java_lang_VMCPStringBuilder.h \
+       gnu_java_lang_management_VMClassLoadingMXBeanImpl.h \
+       gnu_java_lang_management_VMMemoryMXBeanImpl.h \
+       gnu_java_lang_management_VMRuntimeMXBeanImpl.h \
+       gnu_java_lang_management_VMThreadMXBeanImpl.h \
        java_lang_VMClass.h \
        java_lang_VMClassLoader.h \
-       java_lang_VMDouble.h \
-       java_lang_VMFloat.h \
+       java_lang_VMObject.h \
        java_lang_VMRuntime.h \
-       java_lang_VMSecurityManager.h \
        java_lang_VMString.h \
        java_lang_VMSystem.h \
+       java_lang_VMThread.h \
        java_lang_VMThrowable.h \
-       java_lang_reflect_Array.h \
-       java_lang_reflect_Constructor.h \
-       java_lang_reflect_Field.h \
-       java_lang_reflect_Method.h \
-       java_lang_reflect_Modifier.h \
-       java_lang_reflect_Proxy.h \
-       java_net_DatagramPacket.h \
-       java_net_DatagramSocketImpl.h \
-       java_net_InetAddress.h \
-       java_net_NetworkInterface.h \
-       java_net_PlainDatagramSocketImpl.h \
-       java_net_PlainSocketImpl.h \
-       java_net_SocketImpl.h \
-       java_net_URL.h \
-       java_nio_ByteOrder.h \
-       java_nio_CharBufferImpl.h \
-       java_nio_DirectByteBufferImpl.h \
-       java_nio_DoubleBufferImpl.h \
-       java_nio_FloatBufferImpl.h \
-       java_nio_IntBufferImpl.h \
-       java_nio_LongBufferImpl.h \
-       java_nio_ShortBufferImpl.h \
-       java_nio_channels_FileChannelImpl.h \
-       java_security_AccessController.h \
-       java_security_ProtectionDomain.h \
-       java_security_cert_Certificate.h \
-       java_security_cert_X509Certificate.h \
-       java_sql_Connection.h \
-       java_text_Collator.h \
-       java_util_Hashtable.h \
-       java_util_Locale.h \
-       java_util_Properties.h \
-       java_util_TimeZone.h \
-       java_util_VMTimeZone.h \
-       java_util_zip_Deflater.h \
-       java_util_zip_Inflater.h \
-       javax_swing_Popup.h \
-       javax_swing_UIManager.h
+       java_lang_management_VMManagementFactory.h \
+       java_lang_reflect_VMConstructor.h \
+       java_lang_reflect_VMField.h \
+       java_lang_reflect_VMMethod.h \
+       java_lang_reflect_VMProxy.h \
+       java_security_VMAccessController.h \
+       java_util_concurrent_atomic_AtomicLong.h \
+       sun_misc_Unsafe.h
+
+if ENABLE_ANNOTATIONS
+IMPLEMENTED_VM_CLASSES_HEADER_FILES += \
+       sun_reflect_ConstantPool.h
+endif
+endif
+
+if WITH_JAVA_RUNTIME_LIBRARY_OPENJDK
+IMPLEMENTED_VM_CLASSES_HEADER_FILES = \
+       sun_misc_Unsafe.h
+endif
+
+if ENABLE_JVMTI
+JVMTI_HEADER_FILES = \
+       gnu_classpath_jdwp_VMFrame.h \
+       gnu_classpath_jdwp_VMMethod.h \
+       gnu_classpath_jdwp_VMVirtualMachine.h \
+       gnu_classpath_jdwp_event_EventRequest.h \
+       gnu_classpath_jdwp_util_VariableTable.h
+endif
+
+CLEANFILES = \
+       *.h
+
+DO_HEADER_FILES = \
+       $(IMPLEMENTED_VM_CLASSES_HEADER_FILES)
+
+if WITH_JAVA_RUNTIME_LIBRARY_GNU_CLASSPATH
+if ENABLE_ZLIB
+VM_ZIP = $(top_builddir)/src/classes/vm.zip
+endif
+endif
+
+if WITH_JAVA_RUNTIME_LIBRARY_CLDC1_1
+if ENABLE_ZLIB
+VM_ZIP = $(top_builddir)/src/classes/vm.zip
+endif
+endif
 
-all:
-       CLASSPATH=$(top_srcdir)/src/classpath/lib/bootstrap.zip \
-       $(top_srcdir)/src/cacaoh/cacaoh -d . \
-       $(CLASSES)
+noinst_DATA = $(DO_HEADER_FILES)
 
-CLASSES= \
-       java.lang.reflect.Field \
-       java.lang.SecurityManager \
-       java.net.DatagramPacket \
-       java.net.InetAddress \
-       java.net.SocketImpl \
-       java.util.Properties \
-       \
-       gnu.classpath.Configuration \
-       gnu.classpath.RawData \
-       gnu.java.lang.reflect.TypeSignature \
-       gnu.java.math.MPN \
-       gnu.java.net.PlainDatagramSocketImpl \
-       gnu.java.net.PlainSocketImpl \
-       gnu.java.nio.FileLockImpl \
-       gnu.java.nio.SelectorImpl \
-       gnu.java.nio.channels.FileChannelImpl \
-       gnu.java.security.x509.X509Certificate  \
-       java.beans.PropertyEditor \
-       java.io.DataInput \
-       java.io.DataInputStream \
-       java.io.File \
-       java.io.FileDescriptor \
-       java.io.FileInputStream \
-       java.io.FileWriter \
-       java.io.ObjectInputStream \
-       java.io.OutputStream \
-       java.io.OutputStreamWriter \
-       java.io.PrintStream \
-       java.io.PrintWriter \
-       java.io.RandomAccessFile \
-       java.io.VMFile \
-       java.io.VMObjectStreamClass \
-       java.io.Writer \
-       java.lang.Boolean \
-       java.lang.Byte \
-       java.lang.Character \
-       java.lang.Class \
-       java.lang.Compiler \
-       java.lang.Double \
-       java.lang.Float \
-       java.lang.Integer \
-       java.lang.Long \
-       java.lang.Math \
-       java.lang.Process \
-       java.lang.Runtime \
-       java.lang.RuntimePermission \
-       java.lang.Short \
-       java.lang.StackTraceElement \
-       java.lang.StrictMath \
-       java.lang.StringBuffer \
-       java.lang.System \
-       java.lang.UnsatisfiedLinkError \
-       java.lang.VMClass \
-       java.lang.VMClassLoader \
-       java.lang.VMDouble \
-       java.lang.VMFloat \
-       java.lang.VMRuntime \
-       java.lang.VMSecurityManager \
-       java.lang.VMString \
-       java.lang.VMSystem \
-       java.lang.VMThrowable \
-       java.lang.reflect.Array \
-       java.lang.reflect.Constructor \
-       java.lang.reflect.Method \
-       java.lang.reflect.Modifier \
-       java.lang.reflect.Proxy \
-       java.net.DatagramSocketImpl \
-       java.net.NetworkInterface \
-       java.nio.ByteOrder \
-       java.nio.CharBufferImpl \
-       java.nio.DirectByteBufferImpl \
-       java.nio.DoubleBufferImpl \
-       java.nio.FloatBufferImpl \
-       java.nio.IntBufferImpl \
-       java.nio.LongBufferImpl \
-       java.nio.ShortBufferImpl \
-       java.security.AccessController \
-       java.security.ProtectionDomain \
-       java.security.cert.Certificate \
-       java.security.cert.X509Certificate \
-       java.sql.Connection \
-       java.text.Collator \
-       java.util.Hashtable \
-       java.util.Locale \
-       java.util.TimeZone \
-       java.util.VMTimeZone \
-       java.util.zip.Deflater \
-       java.util.zip.Inflater \
-       javax.swing.Popup \
-       javax.swing.UIManager \
-       @AWTPEERS@
+$(DO_HEADER_FILES): $(CACAOH) $(VM_ZIP) $(CLASSPATH_CLASSES)
+       @class=`echo $@ | sed -e 's/\.h$$//' -e 's/_/\./g'`; \
+       echo "$(JAVAHCMD) -d . $$class"; \
+       $(JAVAHCMD) -d . $$class
 
 
 ## Local variables: