Imported GNU Classpath 0.19 + gcj-import-20051115.
* sources.am: Regenerated.
* Makefile.in: Likewise.
* scripts/makemake.tcl: Use glob -nocomplain.
From-SVN: r107049
This commit is contained in:
@@ -39,10 +39,8 @@ target_triplet = @target@
|
||||
subdir = native
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -83,10 +81,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -223,6 +225,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -236,6 +239,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
|
||||
@@ -42,10 +42,8 @@ target_triplet = @target@
|
||||
subdir = native/fdlibm
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -102,10 +100,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -242,6 +244,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -255,6 +258,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// java-assert.h - Header file holding assertion definitions. -*- c++ -*-
|
||||
/* java-assert.h - Header file holding assertion definitions. -*- c++ -*- */
|
||||
|
||||
/* Copyright (C) 1998, 1999 Free Software Foundation
|
||||
|
||||
@@ -11,7 +11,9 @@ details. */
|
||||
#ifndef __JAVA_ASSERT_H__
|
||||
#define __JAVA_ASSERT_H__
|
||||
|
||||
// This is a libgcj implementation header.
|
||||
#include <config.h>
|
||||
|
||||
/* This is a libgcj implementation header. */
|
||||
|
||||
void _Jv_Abort (const char *, const char *, int, const char *)
|
||||
__attribute__ ((__noreturn__));
|
||||
|
||||
@@ -291,7 +291,12 @@ extern double rnd_prod(double, double), rnd_quot(double, double);
|
||||
|
||||
|
||||
#define MAX_BIGNUMS 16
|
||||
#ifdef Pack_32
|
||||
#define MAX_BIGNUM_WDS 32
|
||||
#else
|
||||
/* Note that this is a workaround for */
|
||||
#define MAX_BIGNUM_WDS 128
|
||||
#endif
|
||||
|
||||
struct _Jv_Bigint
|
||||
{
|
||||
|
||||
@@ -42,10 +42,8 @@ target_triplet = @target@
|
||||
subdir = native/jawt
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -96,10 +94,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -236,6 +238,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -249,6 +252,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
|
||||
@@ -176,11 +176,11 @@ static void
|
||||
static void
|
||||
(JNICALL _Jv_AWTLock) (JNIEnv* env __attribute__((unused)))
|
||||
{
|
||||
classpath_jawt_lock ();
|
||||
/* FIXME: what is this supposed to do? */
|
||||
}
|
||||
|
||||
static void
|
||||
(JNICALL _Jv_AWTUnlock) (JNIEnv* env __attribute__((unused)))
|
||||
{
|
||||
classpath_jawt_unlock ();
|
||||
/* FIXME: what is this supposed to do? */
|
||||
}
|
||||
|
||||
@@ -4,6 +4,14 @@ if CREATE_CORE_JNI_LIBRARIES
|
||||
JNIDIRS = java-io java-lang java-net java-nio java-util
|
||||
endif
|
||||
|
||||
if CREATE_ALSA_LIBRARIES
|
||||
ALSADIR = midi-alsa
|
||||
endif
|
||||
|
||||
if CREATE_DSSI_LIBRARIES
|
||||
DSSIDIR = midi-dssi
|
||||
endif
|
||||
|
||||
if CREATE_GTK_PEER_LIBRARIES
|
||||
GTKDIR = gtk-peer
|
||||
endif
|
||||
@@ -16,9 +24,10 @@ if CREATE_XMLJ_LIBRARY
|
||||
XMLJDIR = xmlj
|
||||
endif
|
||||
|
||||
SUBDIRS = classpath $(JNIDIRS) $(GTKDIR) $(CLASSPATH_QT_PEER_DIR) $(XMLJDIR)
|
||||
SUBDIRS = classpath $(JNIDIRS) \
|
||||
$(ALSADIR) $(DSSIDIR) $(GTKDIR) $(CLASSPATH_QT_PEER_DIR) $(XMLJDIR)
|
||||
DIST_SUBDIRS = classpath java-io java-lang java-net java-nio java-util \
|
||||
gtk-peer qt-peer xmlj
|
||||
gtk-peer qt-peer xmlj midi-alsa midi-dssi
|
||||
|
||||
all-local:
|
||||
cd $(top_srcdir) && $(SHELL) ./scripts/check_jni_methods.sh
|
||||
|
||||
@@ -39,10 +39,8 @@ target_triplet = @target@
|
||||
subdir = native/jni
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -83,10 +81,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -223,6 +225,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -236,6 +239,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
@@ -249,12 +253,16 @@ target_os = @target_os@
|
||||
target_vendor = @target_vendor@
|
||||
vm_classes = @vm_classes@
|
||||
@CREATE_CORE_JNI_LIBRARIES_TRUE@JNIDIRS = java-io java-lang java-net java-nio java-util
|
||||
@CREATE_ALSA_LIBRARIES_TRUE@ALSADIR = midi-alsa
|
||||
@CREATE_DSSI_LIBRARIES_TRUE@DSSIDIR = midi-dssi
|
||||
@CREATE_GTK_PEER_LIBRARIES_TRUE@GTKDIR = gtk-peer
|
||||
@CREATE_QT_PEER_LIBRARIES_TRUE@CLASSPATH_QT_PEER_DIR = qt-peer
|
||||
@CREATE_XMLJ_LIBRARY_TRUE@XMLJDIR = xmlj
|
||||
SUBDIRS = classpath $(JNIDIRS) $(GTKDIR) $(CLASSPATH_QT_PEER_DIR) $(XMLJDIR)
|
||||
SUBDIRS = classpath $(JNIDIRS) \
|
||||
$(ALSADIR) $(DSSIDIR) $(GTKDIR) $(CLASSPATH_QT_PEER_DIR) $(XMLJDIR)
|
||||
|
||||
DIST_SUBDIRS = classpath java-io java-lang java-net java-nio java-util \
|
||||
gtk-peer qt-peer xmlj
|
||||
gtk-peer qt-peer xmlj midi-alsa midi-dssi
|
||||
|
||||
all: all-recursive
|
||||
|
||||
|
||||
@@ -5,7 +5,6 @@ noinst_LTLIBRARIES = libclasspath.la
|
||||
|
||||
libclasspath_la_SOURCES = jcl.c jcl.h \
|
||||
jnilink.c jnilink.h \
|
||||
primlib.c primlib.h \
|
||||
native_state.c native_state.h
|
||||
|
||||
AM_LDFLAGS = @CLASSPATH_MODULE@
|
||||
|
||||
@@ -42,10 +42,8 @@ target_triplet = @target@
|
||||
subdir = native/jni/classpath
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -57,8 +55,7 @@ CONFIG_HEADER = $(top_builddir)/include/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
LTLIBRARIES = $(noinst_LTLIBRARIES)
|
||||
libclasspath_la_LIBADD =
|
||||
am_libclasspath_la_OBJECTS = jcl.lo jnilink.lo primlib.lo \
|
||||
native_state.lo
|
||||
am_libclasspath_la_OBJECTS = jcl.lo jnilink.lo native_state.lo
|
||||
libclasspath_la_OBJECTS = $(am_libclasspath_la_OBJECTS)
|
||||
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include
|
||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||
@@ -96,10 +93,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -236,6 +237,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -249,6 +251,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
@@ -267,7 +270,6 @@ EXTRA_DIST = classpath_jawt.h
|
||||
noinst_LTLIBRARIES = libclasspath.la
|
||||
libclasspath_la_SOURCES = jcl.c jcl.h \
|
||||
jnilink.c jnilink.h \
|
||||
primlib.c primlib.h \
|
||||
native_state.c native_state.h
|
||||
|
||||
AM_LDFLAGS = @CLASSPATH_MODULE@
|
||||
@@ -327,7 +329,6 @@ distclean-compile:
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcl.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jnilink.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/native_state.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/primlib.Plo@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* jcl.c
|
||||
Copyright (C) 1998 Free Software Foundation, Inc.
|
||||
Copyright (C) 1998, 2005 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
@@ -193,7 +193,8 @@ JCL_NewRawDataObject (JNIEnv * env, void *data)
|
||||
{
|
||||
if (rawDataClass == NULL)
|
||||
{
|
||||
#ifdef POINTERS_ARE_64BIT
|
||||
jclass tmp;
|
||||
#if SIZEOF_VOID_P == 8
|
||||
rawDataClass = (*env)->FindClass (env, "gnu/classpath/Pointer64");
|
||||
if (rawDataClass == NULL)
|
||||
{
|
||||
@@ -243,17 +244,18 @@ JCL_NewRawDataObject (JNIEnv * env, void *data)
|
||||
}
|
||||
|
||||
#endif
|
||||
(*env)->DeleteLocalRef(env, rawDataClass);
|
||||
rawDataClass = (*env)->NewGlobalRef (env, rawDataClass);
|
||||
if (rawDataClass == NULL)
|
||||
tmp = (*env)->NewGlobalRef (env, rawDataClass);
|
||||
if (tmp == NULL)
|
||||
{
|
||||
JCL_ThrowException (env, "java/lang/InternalError",
|
||||
"unable to create an internal global ref");
|
||||
return NULL;
|
||||
}
|
||||
(*env)->DeleteLocalRef(env, rawDataClass);
|
||||
rawDataClass = tmp;
|
||||
}
|
||||
|
||||
#ifdef POINTERS_ARE_64BIT
|
||||
#if SIZEOF_VOID_P == 8
|
||||
return (*env)->NewObject (env, rawDataClass, rawData_mid, (jlong) data);
|
||||
#else
|
||||
return (*env)->NewObject (env, rawDataClass, rawData_mid, (jint) data);
|
||||
@@ -263,7 +265,7 @@ JCL_NewRawDataObject (JNIEnv * env, void *data)
|
||||
JNIEXPORT void * JNICALL
|
||||
JCL_GetRawData (JNIEnv * env, jobject rawdata)
|
||||
{
|
||||
#ifdef POINTERS_ARE_64BIT
|
||||
#if SIZEOF_VOID_P == 8
|
||||
return (void *) (*env)->GetLongField (env, rawdata, rawData_fid);
|
||||
#else
|
||||
return (void *) (*env)->GetIntField (env, rawdata, rawData_fid);
|
||||
|
||||
@@ -1,724 +0,0 @@
|
||||
/* primlib.c
|
||||
Copyright (C) 1998 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath 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.
|
||||
|
||||
GNU Classpath 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 GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
02110-1301 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
#include <jnilink.h>
|
||||
#include <primlib.h>
|
||||
#include <jcl.h>
|
||||
|
||||
static jclass nativeWrapClass[PRIMLIB_NUMTYPES] =
|
||||
{ NULL, NULL, NULL, NULL, NULL, NULL,
|
||||
NULL, NULL, NULL, NULL, NULL, NULL
|
||||
};
|
||||
|
||||
static jclass nativeTypeClass[PRIMLIB_NUMTYPES] =
|
||||
{ NULL, NULL, NULL, NULL, NULL, NULL,
|
||||
NULL, NULL, NULL, NULL, NULL, NULL
|
||||
};
|
||||
|
||||
static jmethodID nativeWrapClassConstructor[PRIMLIB_NUMTYPES] =
|
||||
{ NULL, NULL, NULL, NULL, NULL, NULL,
|
||||
NULL, NULL, NULL, NULL, NULL, NULL
|
||||
};
|
||||
|
||||
static jmethodID nativeWrapClassAccessor[PRIMLIB_NUMTYPES] =
|
||||
{ NULL, NULL, NULL, NULL, NULL, NULL,
|
||||
NULL, NULL, NULL, NULL, NULL, NULL
|
||||
};
|
||||
|
||||
static const char *nativeWrapClassName[PRIMLIB_NUMTYPES] = {
|
||||
NULL,
|
||||
NULL,
|
||||
"java/lang/Boolean",
|
||||
"java/lang/Byte",
|
||||
"java/lang/Character",
|
||||
"java/lang/Short",
|
||||
"java/lang/Integer",
|
||||
"java/lang/Long",
|
||||
"java/lang/Float",
|
||||
"java/lang/Double",
|
||||
"java/lang/Void",
|
||||
NULL
|
||||
};
|
||||
|
||||
static const char *nativeWrapClassConstructorSig[PRIMLIB_NUMTYPES] = {
|
||||
NULL,
|
||||
NULL,
|
||||
"(Z)V",
|
||||
"(B)V",
|
||||
"(C)V",
|
||||
"(S)V",
|
||||
"(I)V",
|
||||
"(J)V",
|
||||
"(F)V",
|
||||
"(D)V",
|
||||
"()V",
|
||||
NULL
|
||||
};
|
||||
|
||||
static const char *nativeWrapClassAccessorName[PRIMLIB_NUMTYPES] = {
|
||||
NULL,
|
||||
NULL,
|
||||
"booleanValue",
|
||||
"byteValue",
|
||||
"charValue",
|
||||
"shortValue",
|
||||
"intValue",
|
||||
"longValue",
|
||||
"floatValue",
|
||||
"doubleValue",
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
static const char *nativeWrapClassAccessorSig[PRIMLIB_NUMTYPES] = {
|
||||
NULL,
|
||||
NULL,
|
||||
"()Z",
|
||||
"()B",
|
||||
"()C",
|
||||
"()S",
|
||||
"()I",
|
||||
"()J",
|
||||
"()F",
|
||||
"()D",
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
|
||||
JNIEXPORT jclass JNICALL
|
||||
PRIMLIB_GetNativeWrapClass (JNIEnv * env, int reflectType)
|
||||
{
|
||||
return LINK_LinkClass (env, nativeWrapClass[reflectType],
|
||||
nativeWrapClassName[reflectType]);
|
||||
}
|
||||
|
||||
static jclass
|
||||
ActuallyGetNativeTypeClass (JNIEnv * env, int reflectType)
|
||||
{
|
||||
jclass wrapClass;
|
||||
jfieldID typeField;
|
||||
|
||||
wrapClass = PRIMLIB_GetNativeWrapClass (env, reflectType);
|
||||
if (wrapClass == NULL)
|
||||
return NULL;
|
||||
typeField =
|
||||
(*env)->GetStaticFieldID (env, wrapClass, "TYPE", "Ljava/lang/Class");
|
||||
if (typeField == NULL)
|
||||
return NULL;
|
||||
return (*env)->GetStaticObjectField (env, wrapClass, typeField);
|
||||
}
|
||||
|
||||
JNIEXPORT jclass JNICALL
|
||||
PRIMLIB_GetNativeTypeClass (JNIEnv * env, int reflectType)
|
||||
{
|
||||
return LINK_LinkKnownClass (env, nativeTypeClass[reflectType],
|
||||
ActuallyGetNativeTypeClass (env, reflectType));
|
||||
}
|
||||
|
||||
JNIEXPORT jmethodID JNICALL
|
||||
PRIMLIB_GetNativeWrapClassConstructor (JNIEnv * env, int reflectType)
|
||||
{
|
||||
PRIMLIB_GetNativeWrapClass (env, reflectType);
|
||||
return LINK_LinkConstructor (env, nativeWrapClassConstructor[reflectType],
|
||||
nativeWrapClass[reflectType],
|
||||
nativeWrapClassConstructorSig[reflectType]);
|
||||
}
|
||||
|
||||
JNIEXPORT jmethodID JNICALL
|
||||
PRIMLIB_GetNativeWrapClassAccessor (JNIEnv * env, int reflectType)
|
||||
{
|
||||
PRIMLIB_GetNativeWrapClass (env, reflectType);
|
||||
return LINK_LinkMethod (env, nativeWrapClassAccessor[reflectType],
|
||||
nativeWrapClass[reflectType],
|
||||
nativeWrapClassAccessorName[reflectType],
|
||||
nativeWrapClassAccessorSig[reflectType]);
|
||||
}
|
||||
|
||||
|
||||
|
||||
JNIEXPORT jobject JNICALL
|
||||
PRIMLIB_WrapBoolean (JNIEnv * env, jboolean b)
|
||||
{
|
||||
jmethodID construct =
|
||||
PRIMLIB_GetNativeWrapClassConstructor (env, PRIMLIB_BOOLEAN);
|
||||
JCL_RETHROW_EXCEPTION (env);
|
||||
return (*env)->NewObject (env,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_BOOLEAN),
|
||||
construct, b);
|
||||
}
|
||||
|
||||
JNIEXPORT jobject JNICALL
|
||||
PRIMLIB_WrapByte (JNIEnv * env, jbyte b)
|
||||
{
|
||||
jmethodID construct =
|
||||
PRIMLIB_GetNativeWrapClassConstructor (env, PRIMLIB_BYTE);
|
||||
JCL_RETHROW_EXCEPTION (env);
|
||||
return (*env)->NewObject (env,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_BYTE),
|
||||
construct, b);
|
||||
}
|
||||
|
||||
JNIEXPORT jobject JNICALL
|
||||
PRIMLIB_WrapChar (JNIEnv * env, jchar c)
|
||||
{
|
||||
jmethodID construct =
|
||||
PRIMLIB_GetNativeWrapClassConstructor (env, PRIMLIB_CHAR);
|
||||
JCL_RETHROW_EXCEPTION (env);
|
||||
return (*env)->NewObject (env,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_CHAR),
|
||||
construct, c);
|
||||
}
|
||||
|
||||
JNIEXPORT jobject JNICALL
|
||||
PRIMLIB_WrapShort (JNIEnv * env, jshort s)
|
||||
{
|
||||
jmethodID construct =
|
||||
PRIMLIB_GetNativeWrapClassConstructor (env, PRIMLIB_SHORT);
|
||||
JCL_RETHROW_EXCEPTION (env);
|
||||
return (*env)->NewObject (env,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_SHORT),
|
||||
construct, s);
|
||||
}
|
||||
|
||||
JNIEXPORT jobject JNICALL
|
||||
PRIMLIB_WrapInt (JNIEnv * env, jint i)
|
||||
{
|
||||
jmethodID construct =
|
||||
PRIMLIB_GetNativeWrapClassConstructor (env, PRIMLIB_INT);
|
||||
JCL_RETHROW_EXCEPTION (env);
|
||||
return (*env)->NewObject (env,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_INT),
|
||||
construct, i);
|
||||
}
|
||||
|
||||
JNIEXPORT jobject JNICALL
|
||||
PRIMLIB_WrapLong (JNIEnv * env, jlong l)
|
||||
{
|
||||
jmethodID construct =
|
||||
PRIMLIB_GetNativeWrapClassConstructor (env, PRIMLIB_LONG);
|
||||
JCL_RETHROW_EXCEPTION (env);
|
||||
return (*env)->NewObject (env,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_LONG),
|
||||
construct, l);
|
||||
}
|
||||
|
||||
JNIEXPORT jobject JNICALL
|
||||
PRIMLIB_WrapFloat (JNIEnv * env, jfloat f)
|
||||
{
|
||||
jmethodID construct =
|
||||
PRIMLIB_GetNativeWrapClassConstructor (env, PRIMLIB_FLOAT);
|
||||
JCL_RETHROW_EXCEPTION (env);
|
||||
return (*env)->NewObject (env,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_FLOAT),
|
||||
construct, f);
|
||||
}
|
||||
|
||||
JNIEXPORT jobject JNICALL
|
||||
PRIMLIB_WrapDouble (JNIEnv * env, jdouble d)
|
||||
{
|
||||
jmethodID construct =
|
||||
PRIMLIB_GetNativeWrapClassConstructor (env, PRIMLIB_DOUBLE);
|
||||
JCL_RETHROW_EXCEPTION (env);
|
||||
return (*env)->NewObject (env,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_DOUBLE),
|
||||
construct, d);
|
||||
}
|
||||
|
||||
|
||||
JNIEXPORT jboolean JNICALL
|
||||
PRIMLIB_UnwrapBoolean (JNIEnv * env, jobject obj)
|
||||
{
|
||||
if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_BOOLEAN)))
|
||||
{
|
||||
return PRIMLIB_GetBooleanObjectValue (env, obj);
|
||||
}
|
||||
else
|
||||
{
|
||||
JCL_ThrowException (env, "java/lang/IllegalArgumentException",
|
||||
"Argument not of correct type.");
|
||||
return JNI_FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
JNIEXPORT jbyte JNICALL
|
||||
PRIMLIB_UnwrapByte (JNIEnv * env, jobject obj)
|
||||
{
|
||||
if ((*env)->
|
||||
IsInstanceOf (env, obj, PRIMLIB_GetNativeWrapClass (env, PRIMLIB_BYTE)))
|
||||
{
|
||||
return PRIMLIB_GetByteObjectValue (env, obj);
|
||||
}
|
||||
else
|
||||
{
|
||||
JCL_ThrowException (env, "java/lang/IllegalArgumentException",
|
||||
"Argument not of correct type.");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
JNIEXPORT jshort JNICALL
|
||||
PRIMLIB_UnwrapShort (JNIEnv * env, jobject obj)
|
||||
{
|
||||
if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_SHORT)))
|
||||
{
|
||||
return PRIMLIB_GetShortObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_BYTE)))
|
||||
{
|
||||
return (jshort) PRIMLIB_GetByteObjectValue (env, obj);
|
||||
}
|
||||
else
|
||||
{
|
||||
JCL_ThrowException (env, "java/lang/IllegalArgumentException",
|
||||
"Argument not of correct type.");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
JNIEXPORT jchar JNICALL
|
||||
PRIMLIB_UnwrapChar (JNIEnv * env, jobject obj)
|
||||
{
|
||||
if ((*env)->
|
||||
IsInstanceOf (env, obj, PRIMLIB_GetNativeWrapClass (env, PRIMLIB_CHAR)))
|
||||
{
|
||||
return PRIMLIB_GetCharObjectValue (env, obj);
|
||||
}
|
||||
else
|
||||
{
|
||||
JCL_ThrowException (env, "java/lang/IllegalArgumentException",
|
||||
"Argument not of correct type.");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
PRIMLIB_UnwrapInt (JNIEnv * env, jobject obj)
|
||||
{
|
||||
if ((*env)->
|
||||
IsInstanceOf (env, obj, PRIMLIB_GetNativeWrapClass (env, PRIMLIB_INT)))
|
||||
{
|
||||
return PRIMLIB_GetIntObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_SHORT)))
|
||||
{
|
||||
return (jint) PRIMLIB_GetShortObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_CHAR)))
|
||||
{
|
||||
return (jint) PRIMLIB_GetCharObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_BYTE)))
|
||||
{
|
||||
return (jint) PRIMLIB_GetByteObjectValue (env, obj);
|
||||
}
|
||||
else
|
||||
{
|
||||
JCL_ThrowException (env, "java/lang/IllegalArgumentException",
|
||||
"Argument not of correct type.");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
JNIEXPORT jlong JNICALL
|
||||
PRIMLIB_UnwrapLong (JNIEnv * env, jobject obj)
|
||||
{
|
||||
if ((*env)->
|
||||
IsInstanceOf (env, obj, PRIMLIB_GetNativeWrapClass (env, PRIMLIB_LONG)))
|
||||
{
|
||||
return PRIMLIB_GetLongObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_INT)))
|
||||
{
|
||||
return (jlong) PRIMLIB_GetIntObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_SHORT)))
|
||||
{
|
||||
return (jlong) PRIMLIB_GetShortObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_CHAR)))
|
||||
{
|
||||
return (jlong) PRIMLIB_GetCharObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_BYTE)))
|
||||
{
|
||||
return (jlong) PRIMLIB_GetByteObjectValue (env, obj);
|
||||
}
|
||||
else
|
||||
{
|
||||
JCL_ThrowException (env, "java/lang/IllegalArgumentException",
|
||||
"Argument not of correct type.");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
JNIEXPORT jfloat JNICALL
|
||||
PRIMLIB_UnwrapFloat (JNIEnv * env, jobject obj)
|
||||
{
|
||||
if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_FLOAT)))
|
||||
{
|
||||
return PRIMLIB_GetFloatObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_LONG)))
|
||||
{
|
||||
return (jfloat) PRIMLIB_GetLongObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_INT)))
|
||||
{
|
||||
return (jfloat) PRIMLIB_GetIntObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_SHORT)))
|
||||
{
|
||||
return (jfloat) PRIMLIB_GetShortObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_CHAR)))
|
||||
{
|
||||
return (jfloat) PRIMLIB_GetCharObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_BYTE)))
|
||||
{
|
||||
return (jfloat) PRIMLIB_GetByteObjectValue (env, obj);
|
||||
}
|
||||
else
|
||||
{
|
||||
JCL_ThrowException (env, "java/lang/IllegalArgumentException",
|
||||
"Argument not of correct type.");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
JNIEXPORT jdouble JNICALL
|
||||
PRIMLIB_UnwrapDouble (JNIEnv * env, jobject obj)
|
||||
{
|
||||
if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_DOUBLE)))
|
||||
{
|
||||
return PRIMLIB_GetDoubleObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_FLOAT)))
|
||||
{
|
||||
return (jdouble) PRIMLIB_GetFloatObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_LONG)))
|
||||
{
|
||||
return (jdouble) PRIMLIB_GetLongObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_INT)))
|
||||
{
|
||||
return (jdouble) PRIMLIB_GetIntObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_SHORT)))
|
||||
{
|
||||
return (jdouble) PRIMLIB_GetShortObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_CHAR)))
|
||||
{
|
||||
return (jdouble) PRIMLIB_GetCharObjectValue (env, obj);
|
||||
}
|
||||
else if ((*env)->
|
||||
IsInstanceOf (env, obj,
|
||||
PRIMLIB_GetNativeWrapClass (env, PRIMLIB_BYTE)))
|
||||
{
|
||||
return (jdouble) PRIMLIB_GetByteObjectValue (env, obj);
|
||||
}
|
||||
else
|
||||
{
|
||||
JCL_ThrowException (env, "java/lang/IllegalArgumentException",
|
||||
"Argument not of correct type.");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
PRIMLIB_GetReflectiveWrapperType (JNIEnv * env, jobject obj)
|
||||
{
|
||||
jclass typeClass;
|
||||
if (obj == NULL)
|
||||
{
|
||||
return PRIMLIB_NULL;
|
||||
}
|
||||
|
||||
typeClass = PRIMLIB_GetNativeWrapClass (env, PRIMLIB_DOUBLE);
|
||||
if ((*env)->IsInstanceOf (env, obj, typeClass))
|
||||
{
|
||||
return PRIMLIB_DOUBLE;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeWrapClass (env, PRIMLIB_FLOAT);
|
||||
if ((*env)->IsInstanceOf (env, obj, typeClass))
|
||||
{
|
||||
return PRIMLIB_FLOAT;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeWrapClass (env, PRIMLIB_LONG);
|
||||
if ((*env)->IsInstanceOf (env, obj, typeClass))
|
||||
{
|
||||
return PRIMLIB_LONG;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeWrapClass (env, PRIMLIB_INT);
|
||||
if ((*env)->IsInstanceOf (env, obj, typeClass))
|
||||
{
|
||||
return PRIMLIB_INT;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeWrapClass (env, PRIMLIB_CHAR);
|
||||
if ((*env)->IsInstanceOf (env, obj, typeClass))
|
||||
{
|
||||
return PRIMLIB_CHAR;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeWrapClass (env, PRIMLIB_SHORT);
|
||||
if ((*env)->IsInstanceOf (env, obj, typeClass))
|
||||
{
|
||||
return PRIMLIB_SHORT;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeWrapClass (env, PRIMLIB_BYTE);
|
||||
if ((*env)->IsInstanceOf (env, obj, typeClass))
|
||||
{
|
||||
return PRIMLIB_BYTE;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeWrapClass (env, PRIMLIB_BOOLEAN);
|
||||
if ((*env)->IsInstanceOf (env, obj, typeClass))
|
||||
{
|
||||
return PRIMLIB_BOOLEAN;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeWrapClass (env, PRIMLIB_VOID);
|
||||
if ((*env)->IsInstanceOf (env, obj, typeClass))
|
||||
{
|
||||
return PRIMLIB_VOID;
|
||||
}
|
||||
return PRIMLIB_OBJECT;
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
PRIMLIB_GetReflectiveType (JNIEnv * env, jclass returnType)
|
||||
{
|
||||
jclass typeClass = PRIMLIB_GetNativeTypeClass (env, PRIMLIB_DOUBLE);
|
||||
if ((*env)->IsAssignableFrom (env, returnType, typeClass))
|
||||
{
|
||||
return PRIMLIB_DOUBLE;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeTypeClass (env, PRIMLIB_FLOAT);
|
||||
if ((*env)->IsAssignableFrom (env, returnType, typeClass))
|
||||
{
|
||||
return PRIMLIB_FLOAT;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeTypeClass (env, PRIMLIB_LONG);
|
||||
if ((*env)->IsAssignableFrom (env, returnType, typeClass))
|
||||
{
|
||||
return PRIMLIB_LONG;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeTypeClass (env, PRIMLIB_INT);
|
||||
if ((*env)->IsAssignableFrom (env, returnType, typeClass))
|
||||
{
|
||||
return PRIMLIB_INT;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeTypeClass (env, PRIMLIB_CHAR);
|
||||
if ((*env)->IsAssignableFrom (env, returnType, typeClass))
|
||||
{
|
||||
return PRIMLIB_CHAR;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeTypeClass (env, PRIMLIB_SHORT);
|
||||
if ((*env)->IsAssignableFrom (env, returnType, typeClass))
|
||||
{
|
||||
return PRIMLIB_SHORT;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeTypeClass (env, PRIMLIB_BYTE);
|
||||
if ((*env)->IsAssignableFrom (env, returnType, typeClass))
|
||||
{
|
||||
return PRIMLIB_BYTE;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeTypeClass (env, PRIMLIB_BOOLEAN);
|
||||
if ((*env)->IsAssignableFrom (env, returnType, typeClass))
|
||||
{
|
||||
return PRIMLIB_BOOLEAN;
|
||||
}
|
||||
typeClass = PRIMLIB_GetNativeTypeClass (env, PRIMLIB_VOID);
|
||||
if ((*env)->IsAssignableFrom (env, returnType, typeClass))
|
||||
{
|
||||
return PRIMLIB_VOID;
|
||||
}
|
||||
return PRIMLIB_OBJECT;
|
||||
}
|
||||
|
||||
|
||||
JNIEXPORT jboolean JNICALL
|
||||
PRIMLIB_GetBooleanObjectValue (JNIEnv * env, jobject obj)
|
||||
{
|
||||
jmethodID acc = PRIMLIB_GetNativeWrapClassAccessor (env, PRIMLIB_BOOLEAN);
|
||||
return (*env)->CallBooleanMethod (env, obj, acc);
|
||||
}
|
||||
|
||||
JNIEXPORT jbyte JNICALL
|
||||
PRIMLIB_GetByteObjectValue (JNIEnv * env, jobject obj)
|
||||
{
|
||||
jmethodID acc = PRIMLIB_GetNativeWrapClassAccessor (env, PRIMLIB_BYTE);
|
||||
return (*env)->CallByteMethod (env, obj, acc);
|
||||
}
|
||||
|
||||
JNIEXPORT jshort JNICALL
|
||||
PRIMLIB_GetShortObjectValue (JNIEnv * env, jobject obj)
|
||||
{
|
||||
jmethodID acc = PRIMLIB_GetNativeWrapClassAccessor (env, PRIMLIB_SHORT);
|
||||
return (*env)->CallShortMethod (env, obj, acc);
|
||||
}
|
||||
|
||||
JNIEXPORT jchar JNICALL
|
||||
PRIMLIB_GetCharObjectValue (JNIEnv * env, jobject obj)
|
||||
{
|
||||
jmethodID acc = PRIMLIB_GetNativeWrapClassAccessor (env, PRIMLIB_CHAR);
|
||||
return (*env)->CallCharMethod (env, obj, acc);
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
PRIMLIB_GetIntObjectValue (JNIEnv * env, jobject obj)
|
||||
{
|
||||
jmethodID acc = PRIMLIB_GetNativeWrapClassAccessor (env, PRIMLIB_INT);
|
||||
return (*env)->CallIntMethod (env, obj, acc);
|
||||
}
|
||||
|
||||
JNIEXPORT jlong JNICALL
|
||||
PRIMLIB_GetLongObjectValue (JNIEnv * env, jobject obj)
|
||||
{
|
||||
jmethodID acc = PRIMLIB_GetNativeWrapClassAccessor (env, PRIMLIB_LONG);
|
||||
return (*env)->CallLongMethod (env, obj, acc);
|
||||
}
|
||||
|
||||
JNIEXPORT jfloat JNICALL
|
||||
PRIMLIB_GetFloatObjectValue (JNIEnv * env, jobject obj)
|
||||
{
|
||||
jmethodID acc = PRIMLIB_GetNativeWrapClassAccessor (env, PRIMLIB_FLOAT);
|
||||
return (*env)->CallFloatMethod (env, obj, acc);
|
||||
}
|
||||
|
||||
JNIEXPORT jdouble JNICALL
|
||||
PRIMLIB_GetDoubleObjectValue (JNIEnv * env, jobject obj)
|
||||
{
|
||||
jmethodID acc = PRIMLIB_GetNativeWrapClassAccessor (env, PRIMLIB_DOUBLE);
|
||||
return (*env)->CallDoubleMethod (env, obj, acc);
|
||||
}
|
||||
|
||||
|
||||
|
||||
JNIEXPORT jvalue JNICALL
|
||||
PRIMLIB_UnwrapJValue (JNIEnv * env, jobject obj, jclass classType)
|
||||
{
|
||||
jvalue retval;
|
||||
jint objType = PRIMLIB_GetReflectiveType (env, classType);
|
||||
if (objType == PRIMLIB_BOOLEAN)
|
||||
{
|
||||
retval.z = PRIMLIB_UnwrapBoolean (env, obj);
|
||||
}
|
||||
else if (objType == PRIMLIB_BYTE)
|
||||
{
|
||||
retval.b = PRIMLIB_UnwrapByte (env, obj);
|
||||
}
|
||||
else if (objType == PRIMLIB_CHAR)
|
||||
{
|
||||
retval.c = PRIMLIB_UnwrapChar (env, obj);
|
||||
}
|
||||
else if (objType == PRIMLIB_SHORT)
|
||||
{
|
||||
retval.s = PRIMLIB_UnwrapShort (env, obj);
|
||||
}
|
||||
else if (objType == PRIMLIB_INT)
|
||||
{
|
||||
retval.i = PRIMLIB_UnwrapInt (env, obj);
|
||||
}
|
||||
else if (objType == PRIMLIB_LONG)
|
||||
{
|
||||
retval.j = PRIMLIB_UnwrapLong (env, obj);
|
||||
}
|
||||
else if (objType == PRIMLIB_FLOAT)
|
||||
{
|
||||
retval.f = PRIMLIB_UnwrapFloat (env, obj);
|
||||
}
|
||||
else if (objType == PRIMLIB_DOUBLE)
|
||||
{
|
||||
retval.d = PRIMLIB_UnwrapDouble (env, obj);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (obj != NULL && !(*env)->IsInstanceOf (env, obj, classType))
|
||||
{
|
||||
JCL_ThrowException (env, "java/lang/IllegalArgumentException",
|
||||
"Argument not of correct object type.");
|
||||
return retval;
|
||||
}
|
||||
retval.l = obj;
|
||||
}
|
||||
return retval;
|
||||
}
|
||||
@@ -1,119 +0,0 @@
|
||||
/* primlib.h
|
||||
Copyright (C) 1998 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath 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.
|
||||
|
||||
GNU Classpath 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 GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
02110-1301 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
#ifndef __PRIMLIB_H__
|
||||
#define __PRIMLIB_H__
|
||||
|
||||
#include <jni.h>
|
||||
|
||||
#define PRIMLIB_UNKNOWN 0
|
||||
#define PRIMLIB_OBJECT 1
|
||||
#define PRIMLIB_BOOLEAN 2
|
||||
#define PRIMLIB_BYTE 3
|
||||
#define PRIMLIB_CHAR 4
|
||||
#define PRIMLIB_SHORT 5
|
||||
#define PRIMLIB_INT 6
|
||||
#define PRIMLIB_LONG 7
|
||||
#define PRIMLIB_FLOAT 8
|
||||
#define PRIMLIB_DOUBLE 9
|
||||
#define PRIMLIB_VOID 10
|
||||
#define PRIMLIB_NULL 11
|
||||
#define PRIMLIB_NUMTYPES 12
|
||||
|
||||
/* Low-level primitive class accessor functions. */
|
||||
JNIEXPORT jclass JNICALL PRIMLIB_GetNativeWrapClass (JNIEnv * env,
|
||||
int reflectType);
|
||||
JNIEXPORT jclass JNICALL PRIMLIB_GetNativeTypeClass (JNIEnv * env,
|
||||
int reflectType);
|
||||
JNIEXPORT jmethodID JNICALL PRIMLIB_GetNativeWrapClassConstructor (JNIEnv *
|
||||
env,
|
||||
int
|
||||
reflectType);
|
||||
JNIEXPORT jmethodID JNICALL PRIMLIB_GetNativeWrapClassAccessor (JNIEnv * env,
|
||||
int
|
||||
reflectType);
|
||||
|
||||
/* Type discovery functions: WrapperType finds out j.l.Boolean/Byte/etc., and
|
||||
Type finds out j.l.Boolean.TYPE, etc.
|
||||
*/
|
||||
JNIEXPORT jint JNICALL PRIMLIB_GetReflectiveWrapperType (JNIEnv * env,
|
||||
jobject obj);
|
||||
JNIEXPORT jint JNICALL PRIMLIB_GetReflectiveType (JNIEnv * env,
|
||||
jclass returnType);
|
||||
|
||||
/* Constructor functions. */
|
||||
JNIEXPORT jobject JNICALL PRIMLIB_WrapBoolean (JNIEnv * env, jboolean b);
|
||||
JNIEXPORT jobject JNICALL PRIMLIB_WrapByte (JNIEnv * env, jbyte b);
|
||||
JNIEXPORT jobject JNICALL PRIMLIB_WrapChar (JNIEnv * env, jchar c);
|
||||
JNIEXPORT jobject JNICALL PRIMLIB_WrapShort (JNIEnv * env, jshort s);
|
||||
JNIEXPORT jobject JNICALL PRIMLIB_WrapInt (JNIEnv * env, jint i);
|
||||
JNIEXPORT jobject JNICALL PRIMLIB_WrapLong (JNIEnv * env, jlong l);
|
||||
JNIEXPORT jobject JNICALL PRIMLIB_WrapFloat (JNIEnv * env, jfloat f);
|
||||
JNIEXPORT jobject JNICALL PRIMLIB_WrapDouble (JNIEnv * env, jdouble d);
|
||||
|
||||
/* Widening conversion unwrapping functions. */
|
||||
JNIEXPORT jboolean JNICALL PRIMLIB_UnwrapBoolean (JNIEnv * env, jobject obj);
|
||||
JNIEXPORT jbyte JNICALL PRIMLIB_UnwrapByte (JNIEnv * env, jobject obj);
|
||||
JNIEXPORT jshort JNICALL PRIMLIB_UnwrapShort (JNIEnv * env, jobject obj);
|
||||
JNIEXPORT jchar JNICALL PRIMLIB_UnwrapChar (JNIEnv * env, jobject obj);
|
||||
JNIEXPORT jint JNICALL PRIMLIB_UnwrapInt (JNIEnv * env, jobject obj);
|
||||
JNIEXPORT jlong JNICALL PRIMLIB_UnwrapLong (JNIEnv * env, jobject obj);
|
||||
JNIEXPORT jfloat JNICALL PRIMLIB_UnwrapFloat (JNIEnv * env, jobject obj);
|
||||
JNIEXPORT jdouble JNICALL PRIMLIB_UnwrapDouble (JNIEnv * env, jobject obj);
|
||||
|
||||
/* Simple unwrapping functions. Objects *must* be of correct type. */
|
||||
JNIEXPORT jboolean JNICALL PRIMLIB_GetBooleanObjectValue (JNIEnv * env,
|
||||
jobject obj);
|
||||
JNIEXPORT jbyte JNICALL PRIMLIB_GetByteObjectValue (JNIEnv * env,
|
||||
jobject obj);
|
||||
JNIEXPORT jshort JNICALL PRIMLIB_GetShortObjectValue (JNIEnv * env,
|
||||
jobject obj);
|
||||
JNIEXPORT jchar JNICALL PRIMLIB_GetCharObjectValue (JNIEnv * env,
|
||||
jobject obj);
|
||||
JNIEXPORT jint JNICALL PRIMLIB_GetIntObjectValue (JNIEnv * env, jobject obj);
|
||||
JNIEXPORT jlong JNICALL PRIMLIB_GetLongObjectValue (JNIEnv * env,
|
||||
jobject obj);
|
||||
JNIEXPORT jfloat JNICALL PRIMLIB_GetFloatObjectValue (JNIEnv * env,
|
||||
jobject obj);
|
||||
JNIEXPORT jdouble JNICALL PRIMLIB_GetDoubleObjectValue (JNIEnv * env,
|
||||
jobject obj);
|
||||
|
||||
/* jvalue conversion: Unwrap obj to the type of classType, with widening conversion. */
|
||||
JNIEXPORT jvalue JNICALL PRIMLIB_UnwrapJValue (JNIEnv * env, jobject obj,
|
||||
jclass classType);
|
||||
|
||||
#endif
|
||||
@@ -55,10 +55,12 @@ libgtkpeer_la_SOURCES = $(gtk_cairo_c_source_files) \
|
||||
libgtkpeer_la_LIBADD = $(top_builddir)/native/jni/classpath/native_state.lo \
|
||||
$(top_builddir)/native/jni/classpath/jcl.lo
|
||||
|
||||
AM_LDFLAGS = @CLASSPATH_MODULE@ @GTK_LIBS@ @CAIRO_LIBS@ @PANGOFT2_LIBS@ @X_LIBS@ -lXtst
|
||||
AM_LDFLAGS = @CLASSPATH_MODULE@ @GTK_LIBS@ @CAIRO_LIBS@ @PANGOFT2_LIBS@ \
|
||||
@X_PRE_LIBS@ @X_LIBS@ @X_EXTRA_LIBS@ -lX11 -lXtst
|
||||
AM_CPPFLAGS = @CLASSPATH_INCLUDES@
|
||||
|
||||
# Just the WARNING_CFLAGS. We cannot use the strict flags since the gtk
|
||||
# headers contain broken prototypes (by design, see gtkitemfactory.h).
|
||||
AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@ \
|
||||
@GTK_CFLAGS@ @CAIRO_CFLAGS@ @PANGOFT2_CFLAGS@
|
||||
@GTK_CFLAGS@ @CAIRO_CFLAGS@ @PANGOFT2_CFLAGS@ \
|
||||
@X_CFLAGS@
|
||||
|
||||
@@ -42,10 +42,8 @@ target_triplet = @target@
|
||||
subdir = native/jni/gtk-peer
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -173,10 +171,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -313,6 +315,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -326,6 +329,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
@@ -391,13 +395,16 @@ libgtkpeer_la_SOURCES = $(gtk_cairo_c_source_files) \
|
||||
libgtkpeer_la_LIBADD = $(top_builddir)/native/jni/classpath/native_state.lo \
|
||||
$(top_builddir)/native/jni/classpath/jcl.lo
|
||||
|
||||
AM_LDFLAGS = @CLASSPATH_MODULE@ @GTK_LIBS@ @CAIRO_LIBS@ @PANGOFT2_LIBS@ @X_LIBS@ -lXtst
|
||||
AM_LDFLAGS = @CLASSPATH_MODULE@ @GTK_LIBS@ @CAIRO_LIBS@ @PANGOFT2_LIBS@ \
|
||||
@X_PRE_LIBS@ @X_LIBS@ @X_EXTRA_LIBS@ -lX11 -lXtst
|
||||
|
||||
AM_CPPFLAGS = @CLASSPATH_INCLUDES@
|
||||
|
||||
# Just the WARNING_CFLAGS. We cannot use the strict flags since the gtk
|
||||
# headers contain broken prototypes (by design, see gtkitemfactory.h).
|
||||
AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@ \
|
||||
@GTK_CFLAGS@ @CAIRO_CFLAGS@ @PANGOFT2_CFLAGS@
|
||||
@GTK_CFLAGS@ @CAIRO_CFLAGS@ @PANGOFT2_CFLAGS@ \
|
||||
@X_CFLAGS@
|
||||
|
||||
all: all-am
|
||||
|
||||
|
||||
@@ -65,6 +65,9 @@ Java_gnu_java_awt_peer_gtk_GdkFontPeer_initStaticState
|
||||
glyphVector_class = (*env)->FindClass
|
||||
(env, "gnu/java/awt/peer/gtk/GdkGlyphVector");
|
||||
|
||||
glyphVector_class = (*env)->NewGlobalRef
|
||||
(env, glyphVector_class);
|
||||
|
||||
glyphVector_ctor = (*env)->GetMethodID
|
||||
(env, glyphVector_class, "<init>",
|
||||
"([D[ILjava/awt/Font;Ljava/awt/font/FontRenderContext;)V");
|
||||
@@ -98,7 +101,7 @@ Java_gnu_java_awt_peer_gtk_GdkFontPeer_dispose
|
||||
pfont = (struct peerfont *)NSA_DEL_FONT_PTR (env, self);
|
||||
g_assert (pfont != NULL);
|
||||
if (pfont->layout != NULL)
|
||||
g_object_unref (pfont->font);
|
||||
g_object_unref (pfont->layout);
|
||||
if (pfont->font != NULL)
|
||||
g_object_unref (pfont->font);
|
||||
if (pfont->ctx != NULL)
|
||||
|
||||
@@ -116,11 +116,11 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics_copyState
|
||||
gdk_gc_copy (g->gc, g_old->gc);
|
||||
|
||||
if (GDK_STABLE_IS_PIXMAP (g->drawable))
|
||||
gdk_pixmap_ref (g->drawable);
|
||||
g_object_ref (g->drawable);
|
||||
else /* GDK_IS_WINDOW (g->drawable) */
|
||||
gdk_window_ref (g->drawable);
|
||||
g_object_ref (g->drawable);
|
||||
|
||||
gdk_colormap_ref (g->cm);
|
||||
g_object_ref (g->cm);
|
||||
|
||||
NSA_SET_G_PTR (env, obj, g);
|
||||
|
||||
@@ -140,8 +140,8 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics_initState__II
|
||||
|
||||
g->drawable = (GdkDrawable *) gdk_pixmap_new (NULL, width, height,
|
||||
gdk_rgb_get_visual ()->depth);
|
||||
g->cm = gdk_rgb_get_cmap ();
|
||||
gdk_colormap_ref (g->cm);
|
||||
g->cm = gdk_rgb_get_colormap ();
|
||||
g_object_ref (g->cm);
|
||||
g->gc = gdk_gc_new (g->drawable);
|
||||
|
||||
NSA_SET_G_PTR (env, obj, g);
|
||||
@@ -160,7 +160,7 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics_initFromImage
|
||||
|
||||
pixmap = cp_gtk_image_get_pixmap (env, source);
|
||||
g_assert(pixmap != NULL);
|
||||
gdk_pixmap_ref (pixmap);
|
||||
g_object_ref (pixmap);
|
||||
|
||||
g = (struct graphics *) g_malloc (sizeof (struct graphics));
|
||||
g->x_offset = g->y_offset = 0;
|
||||
@@ -168,7 +168,7 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics_initFromImage
|
||||
g->drawable = (GdkDrawable *)pixmap;
|
||||
|
||||
g->cm = gdk_drawable_get_colormap (g->drawable);
|
||||
gdk_colormap_ref (g->cm);
|
||||
g_object_ref (g->cm);
|
||||
g->gc = gdk_gc_new (g->drawable);
|
||||
|
||||
NSA_SET_G_PTR (env, obj, g);
|
||||
@@ -193,9 +193,9 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics_initStateUnlocked
|
||||
widget = GTK_WIDGET (ptr);
|
||||
g->drawable = (GdkDrawable *) widget->window;
|
||||
|
||||
gdk_window_ref (g->drawable);
|
||||
g_object_ref (g->drawable);
|
||||
g->cm = gtk_widget_get_colormap (widget);
|
||||
gdk_colormap_ref (g->cm);
|
||||
g_object_ref (g->cm);
|
||||
g->gc = gdk_gc_new (g->drawable);
|
||||
gdk_gc_copy (g->gc, widget->style->fg_gc[GTK_STATE_NORMAL]);
|
||||
color = widget->style->fg[GTK_STATE_NORMAL];
|
||||
@@ -254,14 +254,14 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics_dispose
|
||||
|
||||
XFlush (GDK_DISPLAY ());
|
||||
|
||||
gdk_gc_destroy (g->gc);
|
||||
g_object_unref (g->gc);
|
||||
|
||||
if (GDK_STABLE_IS_PIXMAP (g->drawable))
|
||||
gdk_pixmap_unref (g->drawable);
|
||||
g_object_unref (g->drawable);
|
||||
else /* GDK_IS_WINDOW (g->drawable) */
|
||||
gdk_window_unref (g->drawable);
|
||||
g_object_unref (g->drawable);
|
||||
|
||||
gdk_colormap_unref (g->cm);
|
||||
g_object_unref (g->cm);
|
||||
|
||||
g_free (g);
|
||||
|
||||
@@ -388,12 +388,12 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics_copyArea
|
||||
|
||||
g = (struct graphics *) NSA_GET_G_PTR (env, obj);
|
||||
|
||||
gdk_window_copy_area ((GdkWindow *)g->drawable,
|
||||
g->gc,
|
||||
x + g->x_offset + dx, y + g->y_offset + dy,
|
||||
(GdkWindow *)g->drawable,
|
||||
x + g->x_offset, y + g->y_offset,
|
||||
width, height);
|
||||
gdk_draw_drawable ((GdkWindow *)g->drawable,
|
||||
g->gc,
|
||||
(GdkWindow *)g->drawable,
|
||||
x + g->x_offset, y + g->y_offset,
|
||||
x + g->x_offset + dx, y + g->y_offset + dy,
|
||||
width, height);
|
||||
gdk_flush ();
|
||||
|
||||
gdk_threads_leave ();
|
||||
@@ -471,8 +471,8 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics_setFGColor
|
||||
color.blue = blue << 8;
|
||||
|
||||
g = (struct graphics *) NSA_GET_G_PTR (env, obj);
|
||||
|
||||
gdk_color_alloc (g->cm, &color);
|
||||
|
||||
gdk_colormap_alloc_color (g->cm, &color, TRUE, TRUE);
|
||||
gdk_gc_set_foreground (g->gc, &color);
|
||||
|
||||
gdk_threads_leave ();
|
||||
|
||||
@@ -58,9 +58,12 @@ void
|
||||
cp_gtk_graphics2d_init_jni (void)
|
||||
{
|
||||
jclass gdkgraphics2d;
|
||||
JNIEnv *env = cp_gtk_gdk_env();
|
||||
|
||||
gdkgraphics2d = (*cp_gtk_gdk_env())->FindClass (cp_gtk_gdk_env(),
|
||||
"gnu/java/awt/peer/gtk/GdkGraphics2D");
|
||||
gdkgraphics2d = (*env)->FindClass (env,
|
||||
"gnu/java/awt/peer/gtk/GdkGraphics2D");
|
||||
if ((*env)->ExceptionOccurred(env))
|
||||
return;
|
||||
|
||||
initComponentGraphics2DUnlockedID = (*cp_gtk_gdk_env())->GetMethodID (cp_gtk_gdk_env(), gdkgraphics2d,
|
||||
"initComponentGraphics2DUnlocked",
|
||||
@@ -777,12 +780,13 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics2D_setGradientUnlocked
|
||||
if (peer_is_disposed(env, obj))
|
||||
return;
|
||||
|
||||
if (gr->debug) printf ("setGradient (%f,%f) -> (%f,%f); (%d,%d,%d,%d) -> (%d,%d,%d,%d)\n",
|
||||
x1, y1,
|
||||
x2, y2,
|
||||
r1, g1, b1, a1,
|
||||
r2, g2, b2, a2);
|
||||
|
||||
if (gr->debug)
|
||||
printf ("setGradientUnlocked (%f,%f) -> (%f,%f); (%d,%d,%d,%d) -> (%d,%d,%d,%d)\n",
|
||||
x1, y1,
|
||||
x2, y2,
|
||||
r1, g1, b1, a1,
|
||||
r2, g2, b2, a2);
|
||||
|
||||
if (cyclic)
|
||||
surf = cairo_surface_create_similar (gr->surface, CAIRO_FORMAT_ARGB32, 3, 2);
|
||||
else
|
||||
@@ -903,8 +907,9 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics2D_setTexturePixelsUnlocked
|
||||
gr = (struct graphics2d *) NSA_GET_G2D_PTR (env, obj);
|
||||
g_assert (gr != NULL);
|
||||
|
||||
if (gr->debug) printf ("setTexturePixels (%d pixels, %dx%d, stride: %d)\n",
|
||||
(*env)->GetArrayLength (env, jarr), w, h, stride);
|
||||
if (gr->debug)
|
||||
printf ("setTexturePixelsUnlocked (%d pixels, %dx%d, stride: %d)\n",
|
||||
(*env)->GetArrayLength (env, jarr), w, h, stride);
|
||||
|
||||
if (gr->pattern)
|
||||
cairo_pattern_destroy (gr->pattern);
|
||||
@@ -931,9 +936,9 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics2D_setTexturePixelsUnlocked
|
||||
CAIRO_FORMAT_ARGB32,
|
||||
w, h, stride * 4);
|
||||
g_assert (gr->pattern_surface != NULL);
|
||||
cairo_pattern_set_extend (gr->pattern, 1);
|
||||
gr->pattern = cairo_pattern_create_for_surface (gr->pattern_surface);
|
||||
g_assert (gr->pattern != NULL);
|
||||
cairo_pattern_set_extend (gr->pattern, CAIRO_EXTEND_REPEAT);
|
||||
cairo_set_source (gr->cr, gr->pattern);
|
||||
}
|
||||
|
||||
@@ -957,8 +962,9 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics2D_drawPixels
|
||||
gr = (struct graphics2d *) NSA_GET_G2D_PTR (env, obj);
|
||||
g_assert (gr != NULL);
|
||||
|
||||
if (gr->debug) printf ("drawPixels (%d pixels, %dx%d, stride: %d)\n",
|
||||
(*env)->GetArrayLength (env, java_pixels), w, h, stride);
|
||||
if (gr->debug)
|
||||
printf ("drawPixels (%d pixels, %dx%d, stride: %d)\n",
|
||||
(*env)->GetArrayLength (env, java_pixels), w, h, stride);
|
||||
|
||||
native_pixels = (*env)->GetIntArrayElements (env, java_pixels, NULL);
|
||||
native_matrix = (*env)->GetDoubleArrayElements (env, java_matrix, NULL);
|
||||
@@ -1078,10 +1084,11 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics2D_cairoSetMatrixUnlocked
|
||||
g_assert (native_matrix != NULL);
|
||||
g_assert ((*env)->GetArrayLength (env, java_matrix) == 6);
|
||||
|
||||
if (gr->debug) printf ("cairo_set_matrix [ %f, %f, %f, %f, %f, %f ]\n",
|
||||
native_matrix[0], native_matrix[1],
|
||||
native_matrix[2], native_matrix[3],
|
||||
native_matrix[4], native_matrix[5]);
|
||||
if (gr->debug)
|
||||
printf ("cairo_matrix_init [ %f, %f, %f, %f, %f, %f ]\n",
|
||||
native_matrix[0], native_matrix[1],
|
||||
native_matrix[2], native_matrix[3],
|
||||
native_matrix[4], native_matrix[5]);
|
||||
|
||||
{
|
||||
cairo_matrix_t mat;
|
||||
@@ -1269,7 +1276,7 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics2D_cairoDrawGlyphVector
|
||||
(*env)->ReleaseFloatArrayElements (env, java_positions, native_positions, 0);
|
||||
(*env)->ReleaseIntArrayElements (env, java_codes, native_codes, 0);
|
||||
|
||||
begin_drawing_operation (env, gr);
|
||||
begin_drawing_operation (env, gr);
|
||||
cairo_show_glyphs (gr->cr, glyphs, n);
|
||||
end_drawing_operation (env, gr);
|
||||
|
||||
@@ -1437,7 +1444,8 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics2D_cairoSetRGBAColorUnlocked
|
||||
draw to a PixBuf, you must exchange the R and B components of your
|
||||
color. */
|
||||
|
||||
if (gr->debug) printf ("cairo_set_source_rgb (%f, %f, %f)\n", r, g, b);
|
||||
if (gr->debug)
|
||||
printf ("cairo_set_source_rgba (%f, %f, %f, %f)\n", r, g, b, a);
|
||||
|
||||
if (gr->drawbuf)
|
||||
cairo_set_source_rgba (gr->cr, b, g, r, a);
|
||||
@@ -1728,7 +1736,9 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics2D_cairoCurveTo
|
||||
|
||||
gr = (struct graphics2d *) NSA_GET_G2D_PTR (env, obj);
|
||||
g_assert (gr != NULL);
|
||||
if (gr->debug) printf ("cairo_curve_to (%f, %f), (%f, %f), (%f, %f)\n", x1, y1, x2, y2, x3, y3);
|
||||
if (gr->debug)
|
||||
printf ("cairo_curve_to (%f, %f), (%f, %f), (%f, %f)\n",
|
||||
x1, y1, x2, y2, x3, y3);
|
||||
cairo_curve_to (gr->cr, x1, y1, x2, y2, x3, y3);
|
||||
|
||||
gdk_threads_leave();
|
||||
@@ -1794,7 +1804,9 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics2D_cairoRelCurveTo
|
||||
|
||||
gr = (struct graphics2d *) NSA_GET_G2D_PTR (env, obj);
|
||||
g_assert (gr != NULL);
|
||||
if (gr->debug) printf ("cairo_rel_curve_to (%f, %f), (%f, %f), (%f, %f)\n", dx1, dy1, dx2, dy2, dx3, dy3);
|
||||
if (gr->debug)
|
||||
printf ("cairo_rel_curve_to (%f, %f), (%f, %f), (%f, %f)\n",
|
||||
dx1, dy1, dx2, dy2, dx3, dy3);
|
||||
cairo_rel_curve_to (gr->cr, dx1, dy1, dx2, dy2, dx3, dy3);
|
||||
|
||||
gdk_threads_leave();
|
||||
@@ -1822,7 +1834,8 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics2D_cairoRectangle
|
||||
return;
|
||||
}
|
||||
|
||||
if (gr->debug) printf ("cairo_rectangle (%f, %f) (%f, %f)\n", x, y, width, height);
|
||||
if (gr->debug)
|
||||
printf ("cairo_rectangle (%f, %f) (%f, %f)\n", x, y, width, height);
|
||||
cairo_rectangle (gr->cr, x, y, width, height);
|
||||
|
||||
gdk_threads_leave();
|
||||
@@ -1952,7 +1965,7 @@ Java_gnu_java_awt_peer_gtk_GdkGraphics2D_cairoSurfaceSetFilterUnlocked
|
||||
|
||||
gr = (struct graphics2d *) NSA_GET_G2D_PTR (env, obj);
|
||||
g_assert (gr != NULL);
|
||||
if (gr->debug) printf ("cairo_surface_set_filter %d\n", filter);
|
||||
if (gr->debug) printf ("cairo_pattern_set_filter %d\n", filter);
|
||||
switch ((enum java_awt_rendering_hints_filter) filter)
|
||||
{
|
||||
case java_awt_rendering_hints_VALUE_INTERPOLATION_NEAREST_NEIGHBOR:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* gnu_java_awt_GdkTextLayout.c
|
||||
Copyright (C) 2004 Free Software Foundation, Inc.
|
||||
Copyright (C) 2004, 2005 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
@@ -38,12 +38,28 @@
|
||||
|
||||
#include <jni.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <string.h>
|
||||
#include <pango/pango.h>
|
||||
#include <pango/pangoft2.h>
|
||||
#include <pango/pangofc-font.h>
|
||||
#include <freetype/ftglyph.h>
|
||||
#include <freetype/ftoutln.h>
|
||||
#include "native_state.h"
|
||||
#include "gdkfont.h"
|
||||
#include "gnu_java_awt_peer_gtk_GdkTextLayout.h"
|
||||
|
||||
struct state_table *cp_gtk_native_text_layout_state_table;
|
||||
|
||||
typedef struct gp
|
||||
{
|
||||
JNIEnv *env;
|
||||
jobject obj;
|
||||
double px;
|
||||
double py;
|
||||
double sx;
|
||||
double sy;
|
||||
} generalpath ;
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_java_awt_peer_gtk_GdkTextLayout_initStaticState
|
||||
(JNIEnv *env, jclass clazz)
|
||||
@@ -190,3 +206,219 @@ Java_gnu_java_awt_peer_gtk_GdkTextLayout_dispose
|
||||
|
||||
gdk_threads_leave ();
|
||||
}
|
||||
|
||||
/* GetOutline code follows ****************************/
|
||||
/********* Freetype callback functions *****************************/
|
||||
|
||||
static int _moveTo( FT_Vector* to,
|
||||
void *p)
|
||||
{
|
||||
JNIEnv *env;
|
||||
jobject obj;
|
||||
jclass cls;
|
||||
jmethodID method;
|
||||
jvalue values[2];
|
||||
generalpath *path = (generalpath *) p;
|
||||
|
||||
env = path->env;
|
||||
obj = path->obj;
|
||||
|
||||
values[0].f = (jfloat)(to->x * path->sx + path->px);
|
||||
values[1].f = (jfloat)(to->y * path->sy + path->py);
|
||||
|
||||
cls = (*env)->FindClass (env, "java/awt/geom/GeneralPath");
|
||||
method = (*env)->GetMethodID (env, cls, "moveTo", "(FF)V");
|
||||
(*env)->CallVoidMethodA(env, obj, method, values );
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int _lineTo( FT_Vector* to,
|
||||
void *p)
|
||||
{
|
||||
JNIEnv *env;
|
||||
jobject obj;
|
||||
jclass cls;
|
||||
jmethodID method;
|
||||
jvalue values[2];
|
||||
generalpath *path = (generalpath *) p;
|
||||
|
||||
env = path->env;
|
||||
obj = path->obj;
|
||||
values[0].f = (jfloat)(to->x * path->sx + path->px);
|
||||
values[1].f = (jfloat)(to->y * path->sy + path->py);
|
||||
|
||||
cls = (*env)->FindClass (env, "java/awt/geom/GeneralPath");
|
||||
method = (*env)->GetMethodID (env, cls, "lineTo", "(FF)V");
|
||||
(*env)->CallVoidMethodA(env, obj, method, values );
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int _quadTo( FT_Vector* cp,
|
||||
FT_Vector* to,
|
||||
void *p)
|
||||
{
|
||||
JNIEnv *env;
|
||||
jobject obj;
|
||||
jclass cls;
|
||||
jmethodID method;
|
||||
jvalue values[4];
|
||||
generalpath *path = (generalpath *) p;
|
||||
|
||||
env = path->env;
|
||||
obj = path->obj;
|
||||
values[0].f = (jfloat)(cp->x * path->sx + path->px);
|
||||
values[1].f = (jfloat)(cp->y * path->sy + path->py);
|
||||
values[2].f = (jfloat)(to->x * path->sx + path->px);
|
||||
values[3].f = (jfloat)(to->y * path->sy + path->py);
|
||||
|
||||
cls = (*env)->FindClass (env, "java/awt/geom/GeneralPath");
|
||||
method = (*env)->GetMethodID (env, cls, "quadTo", "(FFFF)V");
|
||||
(*env)->CallVoidMethodA(env, obj, method, values );
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int _curveTo( FT_Vector* cp1,
|
||||
FT_Vector* cp2,
|
||||
FT_Vector* to,
|
||||
void *p)
|
||||
{
|
||||
JNIEnv *env;
|
||||
jobject obj;
|
||||
jclass cls;
|
||||
jmethodID method;
|
||||
jvalue values[6];
|
||||
generalpath *path = (generalpath *) p;
|
||||
|
||||
env = path->env;
|
||||
obj = path->obj;
|
||||
values[0].f = (jfloat)(cp1->x * path->sx + path->px);
|
||||
values[1].f = (jfloat)(cp1->y * path->sy + path->py);
|
||||
values[2].f = (jfloat)(cp2->x * path->sx + path->px);
|
||||
values[3].f = (jfloat)(cp2->y * path->sy + path->py);
|
||||
values[4].f = (jfloat)(to->x * path->sx + path->px);
|
||||
values[5].f = (jfloat)(to->y * path->sy + path->py);
|
||||
|
||||
cls = (*env)->FindClass (env, "java/awt/geom/GeneralPath");
|
||||
method = (*env)->GetMethodID (env, cls, "curveTo", "(FFFFFF)V");
|
||||
(*env)->CallVoidMethodA(env, obj, method, values );
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
JNIEXPORT jobject JNICALL
|
||||
Java_gnu_java_awt_peer_gtk_GdkTextLayout_getOutline
|
||||
(JNIEnv *env, jobject obj, jobject transform)
|
||||
{
|
||||
struct textlayout *tl;
|
||||
generalpath *path;
|
||||
jobject gp;
|
||||
GSList *current_run;
|
||||
PangoLayoutLine *current_line;
|
||||
FT_Outline_Funcs ftCallbacks =
|
||||
{
|
||||
_moveTo,
|
||||
_lineTo,
|
||||
_quadTo,
|
||||
_curveTo,
|
||||
0,
|
||||
0
|
||||
};
|
||||
PangoLayoutIter* layoutIterator;
|
||||
|
||||
gdk_threads_enter ();
|
||||
|
||||
tl = (struct textlayout *)NSA_GET_TEXT_LAYOUT_PTR (env, obj);
|
||||
g_assert(tl != NULL);
|
||||
g_assert(tl->pango_layout != NULL);
|
||||
|
||||
path = g_malloc0 (sizeof (generalpath));
|
||||
g_assert(path != NULL);
|
||||
path->env = env;
|
||||
|
||||
/* Scaling factors */
|
||||
path->sx = PANGO_SCALE/65536.0;
|
||||
path->sy = -PANGO_SCALE/65536.0;
|
||||
|
||||
{ /* create a GeneralPath instance */
|
||||
jclass cls;
|
||||
jmethodID method;
|
||||
|
||||
cls = (*env)->FindClass (env, "java/awt/geom/GeneralPath");
|
||||
method = (*env)->GetMethodID (env, cls, "<init>", "()V");
|
||||
gp = path->obj = (*env)->NewObject (env, cls, method);
|
||||
}
|
||||
|
||||
layoutIterator = pango_layout_get_iter (tl->pango_layout);
|
||||
g_assert (layoutIterator != NULL);
|
||||
|
||||
if (pango_layout_iter_get_line (layoutIterator))
|
||||
do
|
||||
{
|
||||
PangoRectangle line_logical_rect;
|
||||
current_line = pango_layout_iter_get_line (layoutIterator);
|
||||
pango_layout_iter_get_line_extents (layoutIterator,
|
||||
NULL,
|
||||
&line_logical_rect);
|
||||
|
||||
path->px = line_logical_rect.x/(double)PANGO_SCALE;
|
||||
path->py = line_logical_rect.y/(double)PANGO_SCALE;
|
||||
|
||||
current_run = current_line->runs;
|
||||
while (current_run)
|
||||
{
|
||||
FT_Face ft_face;
|
||||
int index;
|
||||
PangoGlyphItem *run = current_run->data;
|
||||
PangoGlyphString *glyphs = run->glyphs;
|
||||
|
||||
PangoAnalysis *analysis = &run->item->analysis;
|
||||
g_assert (analysis != NULL);
|
||||
g_assert (analysis->font != NULL);
|
||||
|
||||
ft_face = pango_fc_font_lock_face ((PangoFcFont *)analysis->font);
|
||||
g_assert (ft_face != NULL);
|
||||
|
||||
for (index = 0; index < glyphs->num_glyphs; index++)
|
||||
{
|
||||
FT_Glyph glyph;
|
||||
FT_Error fterror;
|
||||
PangoGlyphGeometry pgg = glyphs->glyphs[index].geometry;
|
||||
|
||||
fterror = FT_Load_Glyph(ft_face,
|
||||
(FT_UInt)(glyphs->glyphs[index].glyph),
|
||||
FT_LOAD_DEFAULT | FT_LOAD_NO_BITMAP);
|
||||
g_assert(fterror == 0);
|
||||
|
||||
FT_Get_Glyph (ft_face->glyph, &glyph);
|
||||
FT_Outline_Decompose (&(((FT_OutlineGlyph)glyph)->outline),
|
||||
&ftCallbacks, path);
|
||||
FT_Done_Glyph (glyph);
|
||||
|
||||
path->px += pgg.width/(double)PANGO_SCALE;
|
||||
}
|
||||
|
||||
pango_fc_font_unlock_face ((PangoFcFont *)analysis->font);
|
||||
current_run = current_run->next;
|
||||
}
|
||||
} while (pango_layout_iter_next_line (layoutIterator));
|
||||
|
||||
g_free(path);
|
||||
gdk_threads_leave ();
|
||||
|
||||
if (transform != NULL)
|
||||
{
|
||||
jclass cls;
|
||||
jmethodID method;
|
||||
|
||||
cls = (*env)->FindClass (env, "java/awt/geom/GeneralPath");
|
||||
method = (*env)->GetMethodID (env, cls, "transform",
|
||||
"(Ljava/awt/geom/AffineTransform;)V");
|
||||
(*env)->CallVoidMethod(env, gp, method, transform );
|
||||
}
|
||||
|
||||
return gp;
|
||||
}
|
||||
|
||||
@@ -46,11 +46,11 @@ Java_gnu_java_awt_peer_gtk_GtkCanvasPeer_create
|
||||
gpointer widget;
|
||||
|
||||
gdk_threads_enter ();
|
||||
|
||||
|
||||
/* Create global reference and save it for future use */
|
||||
NSA_SET_GLOBAL_REF (env, obj);
|
||||
|
||||
widget = gtk_type_new (gtk_drawing_area_get_type ());
|
||||
widget = gtk_drawing_area_new ();
|
||||
|
||||
NSA_SET_PTR (env, obj, widget);
|
||||
|
||||
|
||||
@@ -64,7 +64,7 @@ Java_gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer_remove
|
||||
/* Update the group to point to some other widget in the group. We
|
||||
have to do this because Gtk doesn't have a separate object to
|
||||
represent a radio button's group. */
|
||||
for (list = gtk_radio_button_group (button); list != NULL;
|
||||
for (list = gtk_radio_button_get_group (button); list != NULL;
|
||||
list = list->next)
|
||||
{
|
||||
if (list->data != button)
|
||||
|
||||
@@ -130,7 +130,7 @@ Java_gnu_java_awt_peer_gtk_GtkCheckboxPeer_nativeSetCheckboxGroup
|
||||
gtk_radio_button_set_group (button, NULL);
|
||||
else
|
||||
gtk_radio_button_set_group (button,
|
||||
gtk_radio_button_group
|
||||
gtk_radio_button_get_group
|
||||
(GTK_RADIO_BUTTON (native_group)));
|
||||
|
||||
/* If the native group wasn't set on the new CheckboxGroup, then set
|
||||
|
||||
@@ -53,7 +53,11 @@ jstring cp_gtk_imageTarget;
|
||||
jstring cp_gtk_filesTarget;
|
||||
|
||||
/* Simple id to keep track of the selection we are currently managing. */
|
||||
#if SIZEOF_VOID_P == 8
|
||||
static long current_selection = 0;
|
||||
#else
|
||||
static int current_selection = 0;
|
||||
#endif
|
||||
|
||||
/* Whether we "own" the clipboard. And may clear it. */
|
||||
static int owner = 0;
|
||||
@@ -261,7 +265,11 @@ static void
|
||||
clipboard_clear_func (GtkClipboard *clipboard __attribute__((unused)),
|
||||
gpointer user_data)
|
||||
{
|
||||
#if SIZEOF_VOID_P == 8
|
||||
if (owner && (long) user_data == current_selection)
|
||||
#else
|
||||
if (owner && (int) user_data == current_selection)
|
||||
#endif
|
||||
{
|
||||
JNIEnv *env = cp_gtk_gdk_env();
|
||||
owner = 0;
|
||||
|
||||
@@ -56,10 +56,6 @@ exception statement from your version. */
|
||||
#define AWT_HAND_CURSOR 12
|
||||
#define AWT_MOVE_CURSOR 13
|
||||
|
||||
#define AWT_BUTTON1_DOWN_MASK (1 << 10)
|
||||
#define AWT_BUTTON2_DOWN_MASK (1 << 11)
|
||||
#define AWT_BUTTON3_DOWN_MASK (1 << 12)
|
||||
|
||||
/* FIXME: use gtk-double-click-time, gtk-double-click-distance */
|
||||
#define MULTI_CLICK_TIME 250
|
||||
/* as opposed to a MULTI_PASS_TIME :) */
|
||||
@@ -135,11 +131,11 @@ button_to_awt_mods (int button)
|
||||
switch (button)
|
||||
{
|
||||
case 1:
|
||||
return AWT_BUTTON1_MASK;
|
||||
return AWT_BUTTON1_DOWN_MASK | AWT_BUTTON1_MASK;
|
||||
case 2:
|
||||
return AWT_BUTTON2_MASK;
|
||||
return AWT_BUTTON2_DOWN_MASK | AWT_BUTTON2_MASK;
|
||||
case 3:
|
||||
return AWT_BUTTON3_MASK;
|
||||
return AWT_BUTTON3_DOWN_MASK | AWT_BUTTON3_MASK;
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -151,11 +147,11 @@ cp_gtk_state_to_awt_mods (guint state)
|
||||
jint result = 0;
|
||||
|
||||
if (state & GDK_SHIFT_MASK)
|
||||
result |= AWT_SHIFT_DOWN_MASK;
|
||||
result |= (AWT_SHIFT_DOWN_MASK | AWT_SHIFT_MASK);
|
||||
if (state & GDK_CONTROL_MASK)
|
||||
result |= AWT_CTRL_DOWN_MASK;
|
||||
result |= (AWT_CTRL_DOWN_MASK | AWT_CTRL_MASK);
|
||||
if (state & GDK_MOD1_MASK)
|
||||
result |= AWT_ALT_DOWN_MASK;
|
||||
result |= (AWT_ALT_DOWN_MASK | AWT_ALT_MASK);
|
||||
|
||||
return result;
|
||||
}
|
||||
@@ -166,13 +162,13 @@ state_to_awt_mods_with_button_states (guint state)
|
||||
jint result = 0;
|
||||
|
||||
if (state & GDK_SHIFT_MASK)
|
||||
result |= AWT_SHIFT_DOWN_MASK;
|
||||
result |= AWT_SHIFT_DOWN_MASK | AWT_SHIFT_MASK;
|
||||
if (state & GDK_CONTROL_MASK)
|
||||
result |= AWT_CTRL_DOWN_MASK;
|
||||
result |= AWT_CTRL_DOWN_MASK | AWT_CTRL_MASK;
|
||||
if (state & GDK_MOD1_MASK)
|
||||
result |= AWT_ALT_DOWN_MASK;
|
||||
result |= AWT_ALT_DOWN_MASK | AWT_ALT_MASK;
|
||||
if (state & GDK_BUTTON1_MASK)
|
||||
result |= AWT_BUTTON1_DOWN_MASK;
|
||||
result |= AWT_BUTTON1_DOWN_MASK | AWT_BUTTON1_MASK;
|
||||
if (state & GDK_BUTTON2_MASK)
|
||||
result |= AWT_BUTTON2_DOWN_MASK;
|
||||
if (state & GDK_BUTTON3_MASK)
|
||||
@@ -253,7 +249,7 @@ Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkWidgetSetCursorUnlocked
|
||||
|
||||
gdk_cursor = gdk_cursor_new (gdk_cursor_type);
|
||||
gdk_window_set_cursor (widget->window, gdk_cursor);
|
||||
gdk_cursor_destroy (gdk_cursor);
|
||||
gdk_cursor_unref (gdk_cursor);
|
||||
}
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
@@ -276,9 +272,9 @@ Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkWidgetSetParent
|
||||
if (widget->parent == NULL)
|
||||
{
|
||||
if (GTK_IS_WINDOW (parent_widget))
|
||||
{
|
||||
GList *children = gtk_container_children
|
||||
(GTK_CONTAINER (parent_widget));
|
||||
{
|
||||
GList *children = gtk_container_get_children
|
||||
(GTK_CONTAINER (parent_widget));
|
||||
|
||||
if (GTK_IS_MENU_BAR (children->data))
|
||||
gtk_fixed_put (GTK_FIXED (children->next->data), widget, 0, 0);
|
||||
@@ -458,7 +454,7 @@ Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkWidgetDispatchKeyEvent
|
||||
* Find the origin of a widget's window.
|
||||
*/
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkWidgetGetLocationOnScreen
|
||||
Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkWindowGetLocationOnScreen
|
||||
(JNIEnv * env, jobject obj, jintArray jpoint)
|
||||
{
|
||||
void *ptr;
|
||||
@@ -469,13 +465,36 @@ Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkWidgetGetLocationOnScreen
|
||||
ptr = NSA_GET_PTR (env, obj);
|
||||
point = (*env)->GetIntArrayElements (env, jpoint, 0);
|
||||
|
||||
gdk_window_get_origin (GTK_WIDGET (ptr)->window, point, point+1);
|
||||
gdk_window_get_root_origin (GTK_WIDGET (ptr)->window, point, point+1);
|
||||
|
||||
if (!GTK_IS_CONTAINER (ptr))
|
||||
{
|
||||
*point += GTK_WIDGET(ptr)->allocation.x;
|
||||
*(point+1) += GTK_WIDGET(ptr)->allocation.y;
|
||||
}
|
||||
(*env)->ReleaseIntArrayElements(env, jpoint, point, 0);
|
||||
|
||||
gdk_threads_leave ();
|
||||
}
|
||||
|
||||
/*
|
||||
* Find the origin of a widget
|
||||
*/
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkWidgetGetLocationOnScreen
|
||||
(JNIEnv * env, jobject obj, jintArray jpoint)
|
||||
{
|
||||
void *ptr;
|
||||
jint *point;
|
||||
GtkWidget *widget;
|
||||
|
||||
gdk_threads_enter ();
|
||||
|
||||
ptr = NSA_GET_PTR (env, obj);
|
||||
point = (*env)->GetIntArrayElements (env, jpoint, 0);
|
||||
|
||||
widget = GTK_WIDGET(ptr);
|
||||
while(gtk_widget_get_parent(widget) != NULL)
|
||||
widget = gtk_widget_get_parent(widget);
|
||||
gdk_window_get_position (GTK_WIDGET(widget)->window, point, point+1);
|
||||
|
||||
*point += GTK_WIDGET(ptr)->allocation.x;
|
||||
*(point+1) += GTK_WIDGET(ptr)->allocation.y;
|
||||
|
||||
(*env)->ReleaseIntArrayElements(env, jpoint, point, 0);
|
||||
|
||||
@@ -766,7 +785,10 @@ Java_gnu_java_awt_peer_gtk_GtkComponentPeer_isRealized
|
||||
ptr = NSA_GET_PTR (env, obj);
|
||||
|
||||
if (ptr == NULL)
|
||||
return FALSE;
|
||||
{
|
||||
gdk_threads_leave ();
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
ret_val = GTK_WIDGET_REALIZED (GTK_WIDGET (ptr));
|
||||
|
||||
@@ -844,7 +866,7 @@ find_fg_color_widget (GtkWidget *widget)
|
||||
|
||||
if (GTK_IS_EVENT_BOX (widget)
|
||||
|| (GTK_IS_BUTTON (widget)
|
||||
&& !GTK_IS_OPTION_MENU (widget)))
|
||||
&& !GTK_IS_COMBO_BOX (widget)))
|
||||
fg_color_widget = gtk_bin_get_child (GTK_BIN(widget));
|
||||
else
|
||||
fg_color_widget = widget;
|
||||
@@ -974,7 +996,7 @@ component_button_release_cb (GtkWidget *widget __attribute__((unused)),
|
||||
/* Generate an AWT click event only if the release occured in the
|
||||
window it was pressed in, and the mouse has not been dragged since
|
||||
the last time it was pressed. */
|
||||
gdk_window_get_size (event->window, &width, &height);
|
||||
gdk_drawable_get_size (event->window, &width, &height);
|
||||
if (! hasBeenDragged
|
||||
&& event->x >= 0
|
||||
&& event->y >= 0
|
||||
|
||||
@@ -299,7 +299,7 @@ Java_gnu_java_awt_peer_gtk_GtkImage_freePixmap(JNIEnv *env, jobject obj)
|
||||
if (offScreen (env, obj) == JNI_FALSE)
|
||||
gdk_pixbuf_unref ((GdkPixbuf *)getData (env, obj));
|
||||
else
|
||||
gdk_pixmap_unref ((GdkPixmap *)getData (env, obj));
|
||||
g_object_unref ((GdkPixmap *)getData (env, obj));
|
||||
|
||||
gdk_threads_leave ();
|
||||
}
|
||||
|
||||
@@ -88,7 +88,7 @@ Java_gnu_java_awt_peer_gtk_GtkMenuBarPeer_nativeSetHelpMenu
|
||||
|
||||
if (helpmenu != NULL)
|
||||
{
|
||||
list = gtk_container_children (GTK_CONTAINER (mbar));
|
||||
list = gtk_container_get_children (GTK_CONTAINER (mbar));
|
||||
while (list != NULL && list->data != helpmenu)
|
||||
list = list->next;
|
||||
if (list != NULL && list->data == helpmenu)
|
||||
@@ -110,7 +110,7 @@ Java_gnu_java_awt_peer_gtk_GtkMenuBarPeer_delMenu
|
||||
|
||||
ptr = NSA_GET_PTR (env, obj);
|
||||
|
||||
list = gtk_container_children (GTK_CONTAINER (ptr));
|
||||
list = gtk_container_get_children (GTK_CONTAINER (ptr));
|
||||
list = g_list_nth (list, index);
|
||||
gtk_container_remove (GTK_CONTAINER (ptr), GTK_WIDGET (list->data));
|
||||
|
||||
|
||||
@@ -165,7 +165,7 @@ Java_gnu_java_awt_peer_gtk_GtkMenuPeer_delItem
|
||||
|
||||
ptr = NSA_GET_PTR (env, obj);
|
||||
|
||||
list = gtk_container_children (GTK_CONTAINER (ptr));
|
||||
list = gtk_container_get_children (GTK_CONTAINER (ptr));
|
||||
list = g_list_nth (list, index);
|
||||
gtk_container_remove (GTK_CONTAINER (ptr), GTK_WIDGET (list->data));
|
||||
|
||||
|
||||
@@ -160,9 +160,7 @@ Java_gnu_java_awt_peer_gtk_GtkToolkit_gtkInit (JNIEnv *env,
|
||||
XSynchronize (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), True);
|
||||
#endif
|
||||
|
||||
gdk_rgb_init ();
|
||||
gtk_widget_set_default_colormap (gdk_rgb_get_cmap ());
|
||||
gtk_widget_set_default_visual (gdk_rgb_get_visual ());
|
||||
gtk_widget_set_default_colormap (gdk_rgb_get_colormap ());
|
||||
|
||||
/* Make sure queued calls don't get sent to GTK/GDK while
|
||||
we're shutting down. */
|
||||
|
||||
@@ -952,29 +952,29 @@ keyevent_state_to_awt_mods (GdkEventKey *event)
|
||||
|
||||
if (event->keyval == GDK_Shift_L
|
||||
|| event->keyval == GDK_Shift_R)
|
||||
result |= AWT_SHIFT_DOWN_MASK;
|
||||
result |= AWT_SHIFT_DOWN_MASK | AWT_SHIFT_MASK;
|
||||
else
|
||||
{
|
||||
if (state & GDK_SHIFT_MASK)
|
||||
result |= AWT_SHIFT_DOWN_MASK;
|
||||
result |= AWT_SHIFT_DOWN_MASK | AWT_SHIFT_MASK;
|
||||
}
|
||||
|
||||
if (event->keyval == GDK_Control_L
|
||||
|| event->keyval == GDK_Control_R)
|
||||
result |= AWT_CTRL_DOWN_MASK;
|
||||
result |= AWT_CTRL_DOWN_MASK | AWT_CTRL_MASK;
|
||||
else
|
||||
{
|
||||
if (state & GDK_CONTROL_MASK)
|
||||
result |= AWT_CTRL_DOWN_MASK;
|
||||
result |= AWT_CTRL_DOWN_MASK | AWT_CTRL_MASK;
|
||||
}
|
||||
|
||||
if (event->keyval == GDK_Alt_L
|
||||
|| event->keyval == GDK_Alt_R)
|
||||
result |= AWT_ALT_DOWN_MASK;
|
||||
result |= AWT_ALT_DOWN_MASK | AWT_ALT_MASK;
|
||||
else
|
||||
{
|
||||
if (state & GDK_MOD1_MASK)
|
||||
result |= AWT_ALT_DOWN_MASK;
|
||||
result |= AWT_ALT_DOWN_MASK | AWT_ALT_MASK;
|
||||
}
|
||||
}
|
||||
else if (event->type == GDK_KEY_RELEASE)
|
||||
@@ -985,20 +985,20 @@ keyevent_state_to_awt_mods (GdkEventKey *event)
|
||||
&& event->keyval != GDK_Shift_R)
|
||||
{
|
||||
if (state & GDK_SHIFT_MASK)
|
||||
result |= AWT_SHIFT_DOWN_MASK;
|
||||
result |= AWT_SHIFT_DOWN_MASK | AWT_SHIFT_MASK;
|
||||
}
|
||||
if (event->keyval != GDK_Control_L
|
||||
&& event->keyval != GDK_Control_R)
|
||||
{
|
||||
if (state & GDK_CONTROL_MASK)
|
||||
result |= AWT_CTRL_DOWN_MASK;
|
||||
result |= AWT_CTRL_DOWN_MASK | AWT_CTRL_MASK;
|
||||
}
|
||||
|
||||
if (event->keyval != GDK_Alt_L
|
||||
&& event->keyval != GDK_Alt_R)
|
||||
{
|
||||
if (state & GDK_MOD1_MASK)
|
||||
result |= AWT_ALT_DOWN_MASK;
|
||||
result |= AWT_ALT_DOWN_MASK | AWT_ALT_MASK;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1028,9 +1028,6 @@ static gboolean window_delete_cb (GtkWidget *widget, GdkEvent *event,
|
||||
static void window_destroy_cb (GtkWidget *widget, GdkEvent *event,
|
||||
jobject peer);
|
||||
static void window_show_cb (GtkWidget *widget, jobject peer);
|
||||
static void window_active_state_change_cb (GtkWidget *widget,
|
||||
GParamSpec *pspec,
|
||||
jobject peer);
|
||||
static void window_focus_state_change_cb (GtkWidget *widget,
|
||||
GParamSpec *pspec,
|
||||
jobject peer);
|
||||
@@ -1043,7 +1040,6 @@ static gboolean window_focus_out_cb (GtkWidget * widget,
|
||||
static gboolean window_window_state_cb (GtkWidget *widget,
|
||||
GdkEvent *event,
|
||||
jobject peer);
|
||||
static jint window_get_new_state (GtkWidget *widget);
|
||||
static gboolean window_property_changed_cb (GtkWidget *widget,
|
||||
GdkEventProperty *event,
|
||||
jobject peer);
|
||||
@@ -1209,7 +1205,7 @@ Java_gnu_java_awt_peer_gtk_GtkWindowPeer_gtkWindowSetResizable
|
||||
|
||||
ptr = NSA_GET_PTR (env, obj);
|
||||
|
||||
gtk_window_set_policy (GTK_WINDOW (ptr), resizable, resizable, FALSE);
|
||||
gtk_window_set_resizable (GTK_WINDOW (ptr), resizable);
|
||||
|
||||
gdk_threads_leave ();
|
||||
}
|
||||
@@ -1278,9 +1274,6 @@ Java_gnu_java_awt_peer_gtk_GtkWindowPeer_connectSignals
|
||||
g_signal_connect (G_OBJECT (ptr), "show",
|
||||
G_CALLBACK (window_show_cb), *gref);
|
||||
|
||||
g_signal_connect (G_OBJECT (ptr), "notify::is-active",
|
||||
G_CALLBACK (window_active_state_change_cb), *gref);
|
||||
|
||||
g_signal_connect (G_OBJECT (ptr), "notify::has-toplevel-focus",
|
||||
G_CALLBACK (window_focus_state_change_cb), *gref);
|
||||
|
||||
@@ -1591,31 +1584,6 @@ window_show_cb (GtkWidget *widget __attribute__((unused)),
|
||||
(jobject) NULL, (jint) 0);
|
||||
}
|
||||
|
||||
static void
|
||||
window_active_state_change_cb (GtkWidget *widget __attribute__((unused)),
|
||||
GParamSpec *pspec __attribute__((unused)),
|
||||
jobject peer __attribute__((unused)))
|
||||
{
|
||||
/* FIXME: not sure if this is needed or not. */
|
||||
/* Remove the unused attributes if you fix the below. */
|
||||
#if 0
|
||||
gdk_threads_leave ();
|
||||
|
||||
if (GTK_WINDOW (widget)->is_active)
|
||||
(*cp_gtk_gdk_env())->CallVoidMethod (cp_gtk_gdk_env(), peer,
|
||||
postWindowEventID,
|
||||
(jint) AWT_WINDOW_GAINED_FOCUS,
|
||||
(jobject) NULL, (jint) 0);
|
||||
else
|
||||
(*cp_gtk_gdk_env())->CallVoidMethod (cp_gtk_gdk_env(), peer,
|
||||
postWindowEventID,
|
||||
(jint) AWT_WINDOW_DEACTIVATED,
|
||||
(jobject) NULL, (jint) 0);
|
||||
|
||||
gdk_threads_enter ();
|
||||
#endif
|
||||
}
|
||||
|
||||
static void
|
||||
window_focus_state_change_cb (GtkWidget *widget,
|
||||
GParamSpec *pspec __attribute__((unused)),
|
||||
@@ -1660,7 +1628,7 @@ window_focus_out_cb (GtkWidget * widget __attribute__((unused)),
|
||||
}
|
||||
|
||||
static gboolean
|
||||
window_window_state_cb (GtkWidget *widget,
|
||||
window_window_state_cb (GtkWidget *widget __attribute__((unused)),
|
||||
GdkEvent *event,
|
||||
jobject peer)
|
||||
{
|
||||
@@ -1695,8 +1663,6 @@ window_window_state_cb (GtkWidget *widget,
|
||||
if (event->window_state.new_window_state & GDK_WINDOW_STATE_ICONIFIED)
|
||||
new_state |= AWT_FRAME_STATE_ICONIFIED;
|
||||
|
||||
new_state |= window_get_new_state (widget);
|
||||
|
||||
(*cp_gtk_gdk_env())->CallVoidMethod (cp_gtk_gdk_env(), peer,
|
||||
postWindowEventID,
|
||||
(jint) AWT_WINDOW_STATE_CHANGED,
|
||||
@@ -1705,47 +1671,6 @@ window_window_state_cb (GtkWidget *widget,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static jint
|
||||
window_get_new_state (GtkWidget *widget)
|
||||
{
|
||||
GdkDisplay *display = gtk_widget_get_display(widget);
|
||||
jint new_state = AWT_FRAME_STATE_NORMAL;
|
||||
Atom type;
|
||||
gint format;
|
||||
gulong atom_count;
|
||||
gulong bytes_after;
|
||||
Atom *atom_list = NULL;
|
||||
union atom_list_union alu;
|
||||
gulong i;
|
||||
|
||||
alu.atom_list = &atom_list;
|
||||
XGetWindowProperty (GDK_DISPLAY_XDISPLAY (display),
|
||||
GDK_WINDOW_XID (widget->window),
|
||||
gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_STATE"),
|
||||
0, G_MAXLONG, False, XA_ATOM, &type, &format, &atom_count,
|
||||
&bytes_after, alu.gu_extents);
|
||||
|
||||
if (type != None)
|
||||
{
|
||||
Atom maxvert = gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_STATE_MAXIMIZED_VERT");
|
||||
Atom maxhorz = gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_STATE_MAXIMIZED_HORZ");
|
||||
|
||||
i = 0;
|
||||
while (i < atom_count)
|
||||
{
|
||||
if (atom_list[i] == maxhorz)
|
||||
new_state |= AWT_FRAME_STATE_MAXIMIZED_HORIZ;
|
||||
else if (atom_list[i] == maxvert)
|
||||
new_state |= AWT_FRAME_STATE_MAXIMIZED_VERT;
|
||||
|
||||
++i;
|
||||
}
|
||||
|
||||
XFree (atom_list);
|
||||
}
|
||||
return new_state;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
window_property_changed_cb (GtkWidget *widget __attribute__((unused)),
|
||||
GdkEventProperty *event,
|
||||
|
||||
@@ -111,15 +111,26 @@ struct graphics
|
||||
jint x_offset, y_offset;
|
||||
};
|
||||
|
||||
/* New-style event masks. */
|
||||
#define AWT_BUTTON1_DOWN_MASK (1 << 10)
|
||||
#define AWT_BUTTON2_DOWN_MASK (1 << 11)
|
||||
#define AWT_BUTTON3_DOWN_MASK (1 << 12)
|
||||
|
||||
#define AWT_SHIFT_DOWN_MASK (1 << 6)
|
||||
#define AWT_CTRL_DOWN_MASK (1 << 7)
|
||||
#define AWT_META_DOWN_MASK (1 << 8)
|
||||
#define AWT_ALT_DOWN_MASK (1 << 9)
|
||||
|
||||
/* Old-style event masks. */
|
||||
#define AWT_BUTTON1_MASK (1 << 4)
|
||||
#define AWT_BUTTON2_MASK (1 << 3)
|
||||
#define AWT_BUTTON3_MASK (1 << 2)
|
||||
|
||||
#define AWT_SHIFT_MASK (1 << 0)
|
||||
#define AWT_CTRL_MASK (1 << 1)
|
||||
#define AWT_META_MASK (1 << 2)
|
||||
#define AWT_ALT_MASK (1 << 3)
|
||||
|
||||
#define AWT_ITEM_SELECTED 1
|
||||
#define AWT_ITEM_DESELECTED 2
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
pkglib_LTLIBRARIES = libjavaio.la
|
||||
nativelib_LTLIBRARIES = libjavaio.la
|
||||
|
||||
libjavaio_la_SOURCES = javaio.h \
|
||||
javaio.c \
|
||||
|
||||
@@ -42,10 +42,8 @@ target_triplet = @target@
|
||||
subdir = native/jni/java-io
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -61,9 +59,9 @@ am__vpath_adj = case $$p in \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(pkglibdir)"
|
||||
pkglibLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(pkglib_LTLIBRARIES)
|
||||
am__installdirs = "$(DESTDIR)$(nativelibdir)"
|
||||
nativelibLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(nativelib_LTLIBRARIES)
|
||||
libjavaio_la_DEPENDENCIES = \
|
||||
$(top_builddir)/native/jni/classpath/jcl.lo
|
||||
am_libjavaio_la_OBJECTS = javaio.lo java_io_VMFile.lo \
|
||||
@@ -105,10 +103,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -245,6 +247,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -258,6 +261,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
@@ -270,7 +274,7 @@ target_cpu = @target_cpu@
|
||||
target_os = @target_os@
|
||||
target_vendor = @target_vendor@
|
||||
vm_classes = @vm_classes@
|
||||
pkglib_LTLIBRARIES = libjavaio.la
|
||||
nativelib_LTLIBRARIES = libjavaio.la
|
||||
libjavaio_la_SOURCES = javaio.h \
|
||||
javaio.c \
|
||||
java_io_VMFile.c \
|
||||
@@ -314,35 +318,35 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES)
|
||||
install-nativelibLTLIBRARIES: $(nativelib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(pkglibdir)" || $(mkdir_p) "$(DESTDIR)$(pkglibdir)"
|
||||
@list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
test -z "$(nativelibdir)" || $(mkdir_p) "$(DESTDIR)$(nativelibdir)"
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=install $(pkglibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(pkglibdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(pkglibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(pkglibdir)/$$f"; \
|
||||
echo " $(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(nativelibdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(nativelibdir)/$$f"; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-pkglibLTLIBRARIES:
|
||||
uninstall-nativelibLTLIBRARIES:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@set -x; list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
@set -x; list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
p=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$p"; \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(nativelibdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(nativelibdir)/$$p"; \
|
||||
done
|
||||
|
||||
clean-pkglibLTLIBRARIES:
|
||||
-test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES)
|
||||
@list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
clean-nativelibLTLIBRARIES:
|
||||
-test -z "$(nativelib_LTLIBRARIES)" || rm -f $(nativelib_LTLIBRARIES)
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" != "$$p" || dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libjavaio.la: $(libjavaio_la_OBJECTS) $(libjavaio_la_DEPENDENCIES)
|
||||
$(LINK) -rpath $(pkglibdir) $(libjavaio_la_LDFLAGS) $(libjavaio_la_OBJECTS) $(libjavaio_la_LIBADD) $(LIBS)
|
||||
$(LINK) -rpath $(nativelibdir) $(libjavaio_la_LDFLAGS) $(libjavaio_la_OBJECTS) $(libjavaio_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
@@ -465,7 +469,7 @@ check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(LTLIBRARIES)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(pkglibdir)"; do \
|
||||
for dir in "$(DESTDIR)$(nativelibdir)"; do \
|
||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
@@ -494,7 +498,7 @@ maintainer-clean-generic:
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool clean-pkglibLTLIBRARIES \
|
||||
clean-am: clean-generic clean-libtool clean-nativelibLTLIBRARIES \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
@@ -513,9 +517,9 @@ info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
install-data-am: install-nativelibLTLIBRARIES
|
||||
|
||||
install-exec-am: install-pkglibLTLIBRARIES
|
||||
install-exec-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
@@ -541,20 +545,20 @@ ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-info-am uninstall-pkglibLTLIBRARIES
|
||||
uninstall-am: uninstall-info-am uninstall-nativelibLTLIBRARIES
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool clean-pkglibLTLIBRARIES ctags distclean \
|
||||
clean-libtool clean-nativelibLTLIBRARIES ctags distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-exec \
|
||||
install-exec-am install-info install-info-am install-man \
|
||||
install-pkglibLTLIBRARIES install-strip installcheck \
|
||||
install-nativelibLTLIBRARIES install-strip installcheck \
|
||||
installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags uninstall uninstall-am uninstall-info-am \
|
||||
uninstall-pkglibLTLIBRARIES
|
||||
uninstall-nativelibLTLIBRARIES
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
pkglib_LTLIBRARIES = libjavalang.la libjavalangreflect.la
|
||||
nativelib_LTLIBRARIES = libjavalang.la libjavalangreflect.la
|
||||
|
||||
libjavalang_la_SOURCES = java_lang_VMSystem.c \
|
||||
java_lang_VMFloat.c \
|
||||
|
||||
@@ -42,10 +42,8 @@ target_triplet = @target@
|
||||
subdir = native/jni/java-lang
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -61,9 +59,9 @@ am__vpath_adj = case $$p in \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(pkglibdir)"
|
||||
pkglibLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(pkglib_LTLIBRARIES)
|
||||
am__installdirs = "$(DESTDIR)$(nativelibdir)"
|
||||
nativelibLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(nativelib_LTLIBRARIES)
|
||||
libjavalang_la_DEPENDENCIES = $(wildcard \
|
||||
$(top_builddir)/native/fdlibm/*.lo) \
|
||||
$(top_builddir)/native/jni/classpath/jcl.lo
|
||||
@@ -110,10 +108,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -250,6 +252,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -263,6 +266,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
@@ -275,7 +279,7 @@ target_cpu = @target_cpu@
|
||||
target_os = @target_os@
|
||||
target_vendor = @target_vendor@
|
||||
vm_classes = @vm_classes@
|
||||
pkglib_LTLIBRARIES = libjavalang.la libjavalangreflect.la
|
||||
nativelib_LTLIBRARIES = libjavalang.la libjavalangreflect.la
|
||||
libjavalang_la_SOURCES = java_lang_VMSystem.c \
|
||||
java_lang_VMFloat.c \
|
||||
java_lang_VMDouble.c \
|
||||
@@ -322,37 +326,37 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES)
|
||||
install-nativelibLTLIBRARIES: $(nativelib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(pkglibdir)" || $(mkdir_p) "$(DESTDIR)$(pkglibdir)"
|
||||
@list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
test -z "$(nativelibdir)" || $(mkdir_p) "$(DESTDIR)$(nativelibdir)"
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=install $(pkglibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(pkglibdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(pkglibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(pkglibdir)/$$f"; \
|
||||
echo " $(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(nativelibdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(nativelibdir)/$$f"; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-pkglibLTLIBRARIES:
|
||||
uninstall-nativelibLTLIBRARIES:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@set -x; list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
@set -x; list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
p=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$p"; \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(nativelibdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(nativelibdir)/$$p"; \
|
||||
done
|
||||
|
||||
clean-pkglibLTLIBRARIES:
|
||||
-test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES)
|
||||
@list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
clean-nativelibLTLIBRARIES:
|
||||
-test -z "$(nativelib_LTLIBRARIES)" || rm -f $(nativelib_LTLIBRARIES)
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" != "$$p" || dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libjavalang.la: $(libjavalang_la_OBJECTS) $(libjavalang_la_DEPENDENCIES)
|
||||
$(LINK) -rpath $(pkglibdir) $(libjavalang_la_LDFLAGS) $(libjavalang_la_OBJECTS) $(libjavalang_la_LIBADD) $(LIBS)
|
||||
$(LINK) -rpath $(nativelibdir) $(libjavalang_la_LDFLAGS) $(libjavalang_la_OBJECTS) $(libjavalang_la_LIBADD) $(LIBS)
|
||||
libjavalangreflect.la: $(libjavalangreflect_la_OBJECTS) $(libjavalangreflect_la_DEPENDENCIES)
|
||||
$(LINK) -rpath $(pkglibdir) $(libjavalangreflect_la_LDFLAGS) $(libjavalangreflect_la_OBJECTS) $(libjavalangreflect_la_LIBADD) $(LIBS)
|
||||
$(LINK) -rpath $(nativelibdir) $(libjavalangreflect_la_LDFLAGS) $(libjavalangreflect_la_OBJECTS) $(libjavalangreflect_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
@@ -477,7 +481,7 @@ check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(LTLIBRARIES)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(pkglibdir)"; do \
|
||||
for dir in "$(DESTDIR)$(nativelibdir)"; do \
|
||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
@@ -506,7 +510,7 @@ maintainer-clean-generic:
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool clean-pkglibLTLIBRARIES \
|
||||
clean-am: clean-generic clean-libtool clean-nativelibLTLIBRARIES \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
@@ -525,9 +529,9 @@ info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
install-data-am: install-nativelibLTLIBRARIES
|
||||
|
||||
install-exec-am: install-pkglibLTLIBRARIES
|
||||
install-exec-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
@@ -553,20 +557,20 @@ ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-info-am uninstall-pkglibLTLIBRARIES
|
||||
uninstall-am: uninstall-info-am uninstall-nativelibLTLIBRARIES
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool clean-pkglibLTLIBRARIES ctags distclean \
|
||||
clean-libtool clean-nativelibLTLIBRARIES ctags distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-exec \
|
||||
install-exec-am install-info install-info-am install-man \
|
||||
install-pkglibLTLIBRARIES install-strip installcheck \
|
||||
install-nativelibLTLIBRARIES install-strip installcheck \
|
||||
installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags uninstall uninstall-am uninstall-info-am \
|
||||
uninstall-pkglibLTLIBRARIES
|
||||
uninstall-nativelibLTLIBRARIES
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* java_lang_VMProcess.c -- native code for java.lang.VMProcess
|
||||
Copyright (C) 1998, 1999, 2000, 2002, 2004 Free Software Foundation, Inc.
|
||||
Copyright (C) 1998, 1999, 2000, 2002, 2004, 2005 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
@@ -351,7 +351,6 @@ Java_java_lang_VMProcess_nativeSpawn (JNIEnv * env, jobject this,
|
||||
streams[0], streams[1], streams[2], (jlong) pid);
|
||||
if ((*env)->ExceptionOccurred (env))
|
||||
goto done;
|
||||
(*env)->DeleteLocalRef (env, clazz);
|
||||
|
||||
done:
|
||||
/*
|
||||
|
||||
@@ -42,6 +42,7 @@ exception statement from your version. */
|
||||
* Date: 2 Jun 1998
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
#include <stddef.h>
|
||||
|
||||
#include "java_lang_reflect_Array.h"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
pkglib_LTLIBRARIES = libjavanet.la
|
||||
nativelib_LTLIBRARIES = libjavanet.la
|
||||
|
||||
libjavanet_la_SOURCES = javanet.c \
|
||||
javanet.h \
|
||||
|
||||
@@ -42,10 +42,8 @@ target_triplet = @target@
|
||||
subdir = native/jni/java-net
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -61,9 +59,9 @@ am__vpath_adj = case $$p in \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(pkglibdir)"
|
||||
pkglibLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(pkglib_LTLIBRARIES)
|
||||
am__installdirs = "$(DESTDIR)$(nativelibdir)"
|
||||
nativelibLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(nativelib_LTLIBRARIES)
|
||||
libjavanet_la_DEPENDENCIES = \
|
||||
$(top_builddir)/native/jni/classpath/jcl.lo
|
||||
am_libjavanet_la_OBJECTS = javanet.lo java_net_VMInetAddress.lo \
|
||||
@@ -107,10 +105,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -247,6 +249,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -260,6 +263,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
@@ -272,7 +276,7 @@ target_cpu = @target_cpu@
|
||||
target_os = @target_os@
|
||||
target_vendor = @target_vendor@
|
||||
vm_classes = @vm_classes@
|
||||
pkglib_LTLIBRARIES = libjavanet.la
|
||||
nativelib_LTLIBRARIES = libjavanet.la
|
||||
libjavanet_la_SOURCES = javanet.c \
|
||||
javanet.h \
|
||||
java_net_VMInetAddress.c \
|
||||
@@ -317,35 +321,35 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES)
|
||||
install-nativelibLTLIBRARIES: $(nativelib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(pkglibdir)" || $(mkdir_p) "$(DESTDIR)$(pkglibdir)"
|
||||
@list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
test -z "$(nativelibdir)" || $(mkdir_p) "$(DESTDIR)$(nativelibdir)"
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=install $(pkglibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(pkglibdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(pkglibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(pkglibdir)/$$f"; \
|
||||
echo " $(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(nativelibdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(nativelibdir)/$$f"; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-pkglibLTLIBRARIES:
|
||||
uninstall-nativelibLTLIBRARIES:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@set -x; list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
@set -x; list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
p=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$p"; \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(nativelibdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(nativelibdir)/$$p"; \
|
||||
done
|
||||
|
||||
clean-pkglibLTLIBRARIES:
|
||||
-test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES)
|
||||
@list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
clean-nativelibLTLIBRARIES:
|
||||
-test -z "$(nativelib_LTLIBRARIES)" || rm -f $(nativelib_LTLIBRARIES)
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" != "$$p" || dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libjavanet.la: $(libjavanet_la_OBJECTS) $(libjavanet_la_DEPENDENCIES)
|
||||
$(LINK) -rpath $(pkglibdir) $(libjavanet_la_LDFLAGS) $(libjavanet_la_OBJECTS) $(libjavanet_la_LIBADD) $(LIBS)
|
||||
$(LINK) -rpath $(nativelibdir) $(libjavanet_la_LDFLAGS) $(libjavanet_la_OBJECTS) $(libjavanet_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
@@ -469,7 +473,7 @@ check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(LTLIBRARIES)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(pkglibdir)"; do \
|
||||
for dir in "$(DESTDIR)$(nativelibdir)"; do \
|
||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
@@ -498,7 +502,7 @@ maintainer-clean-generic:
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool clean-pkglibLTLIBRARIES \
|
||||
clean-am: clean-generic clean-libtool clean-nativelibLTLIBRARIES \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
@@ -517,9 +521,9 @@ info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
install-data-am: install-nativelibLTLIBRARIES
|
||||
|
||||
install-exec-am: install-pkglibLTLIBRARIES
|
||||
install-exec-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
@@ -545,20 +549,20 @@ ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-info-am uninstall-pkglibLTLIBRARIES
|
||||
uninstall-am: uninstall-info-am uninstall-nativelibLTLIBRARIES
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool clean-pkglibLTLIBRARIES ctags distclean \
|
||||
clean-libtool clean-nativelibLTLIBRARIES ctags distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-exec \
|
||||
install-exec-am install-info install-info-am install-man \
|
||||
install-pkglibLTLIBRARIES install-strip installcheck \
|
||||
install-nativelibLTLIBRARIES install-strip installcheck \
|
||||
installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags uninstall uninstall-am uninstall-info-am \
|
||||
uninstall-pkglibLTLIBRARIES
|
||||
uninstall-nativelibLTLIBRARIES
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
|
||||
@@ -181,7 +181,8 @@ Java_java_net_VMInetAddress_getHostByAddr (JNIEnv * env,
|
||||
sizeof (hostname), result);
|
||||
if (result != TARGET_NATIVE_OK)
|
||||
{
|
||||
JCL_ThrowException (env, UNKNOWN_HOST_EXCEPTION, "Bad IP address");
|
||||
JCL_ThrowException (env, UNKNOWN_HOST_EXCEPTION,
|
||||
TARGET_NATIVE_LAST_ERROR_STRING ());
|
||||
return (jstring) NULL;
|
||||
}
|
||||
|
||||
|
||||
@@ -856,8 +856,12 @@ _javanet_accept (JNIEnv * env, jobject this, jobject impl)
|
||||
&& (TARGET_NATIVE_LAST_ERROR ()
|
||||
!= TARGET_NATIVE_ERROR_INTERRUPT_FUNCTION_CALL))
|
||||
{
|
||||
JCL_ThrowException (env, IO_EXCEPTION,
|
||||
"Internal error: _javanet_accept(): ");
|
||||
if (TARGET_NATIVE_LAST_ERROR () == EAGAIN)
|
||||
JCL_ThrowException (env, "java/net/SocketTimeoutException",
|
||||
"Timeout");
|
||||
else
|
||||
JCL_ThrowException (env, IO_EXCEPTION,
|
||||
TARGET_NATIVE_LAST_ERROR_STRING ());
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -1542,8 +1546,7 @@ _javanet_shutdownInput (JNIEnv * env, jobject this)
|
||||
/* Shutdown input stream of socket. */
|
||||
if (shutdown (fd, SHUT_RD) == -1)
|
||||
{
|
||||
JCL_ThrowException (env, SOCKET_EXCEPTION,
|
||||
"Can't shutdown input of socket");
|
||||
JCL_ThrowException (env, SOCKET_EXCEPTION, strerror (errno));
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -1568,8 +1571,7 @@ _javanet_shutdownOutput (JNIEnv * env, jobject this)
|
||||
/* Shutdown output stream of socket. */
|
||||
if (shutdown (fd, SHUT_WR) == -1)
|
||||
{
|
||||
JCL_ThrowException (env, SOCKET_EXCEPTION,
|
||||
"Can't shutdown output of socket");
|
||||
JCL_ThrowException (env, SOCKET_EXCEPTION, strerror (errno));
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
pkglib_LTLIBRARIES = libjavanio.la
|
||||
nativelib_LTLIBRARIES = libjavanio.la
|
||||
|
||||
libjavanio_la_SOURCES = gnu_java_nio_VMPipe.c \
|
||||
gnu_java_nio_VMSelector.c \
|
||||
|
||||
@@ -42,10 +42,8 @@ target_triplet = @target@
|
||||
subdir = native/jni/java-nio
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -61,9 +59,9 @@ am__vpath_adj = case $$p in \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(pkglibdir)"
|
||||
pkglibLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(pkglib_LTLIBRARIES)
|
||||
am__installdirs = "$(DESTDIR)$(nativelibdir)"
|
||||
nativelibLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(nativelib_LTLIBRARIES)
|
||||
am__DEPENDENCIES_1 =
|
||||
libjavanio_la_DEPENDENCIES = \
|
||||
$(top_builddir)/native/jni/classpath/jcl.lo \
|
||||
@@ -112,10 +110,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -252,6 +254,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -265,6 +268,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
@@ -277,7 +281,7 @@ target_cpu = @target_cpu@
|
||||
target_os = @target_os@
|
||||
target_vendor = @target_vendor@
|
||||
vm_classes = @vm_classes@
|
||||
pkglib_LTLIBRARIES = libjavanio.la
|
||||
nativelib_LTLIBRARIES = libjavanio.la
|
||||
libjavanio_la_SOURCES = gnu_java_nio_VMPipe.c \
|
||||
gnu_java_nio_VMSelector.c \
|
||||
gnu_java_nio_channels_FileChannelImpl.c \
|
||||
@@ -325,35 +329,35 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES)
|
||||
install-nativelibLTLIBRARIES: $(nativelib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(pkglibdir)" || $(mkdir_p) "$(DESTDIR)$(pkglibdir)"
|
||||
@list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
test -z "$(nativelibdir)" || $(mkdir_p) "$(DESTDIR)$(nativelibdir)"
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=install $(pkglibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(pkglibdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(pkglibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(pkglibdir)/$$f"; \
|
||||
echo " $(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(nativelibdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(nativelibdir)/$$f"; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-pkglibLTLIBRARIES:
|
||||
uninstall-nativelibLTLIBRARIES:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@set -x; list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
@set -x; list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
p=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$p"; \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(nativelibdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(nativelibdir)/$$p"; \
|
||||
done
|
||||
|
||||
clean-pkglibLTLIBRARIES:
|
||||
-test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES)
|
||||
@list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
clean-nativelibLTLIBRARIES:
|
||||
-test -z "$(nativelib_LTLIBRARIES)" || rm -f $(nativelib_LTLIBRARIES)
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" != "$$p" || dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libjavanio.la: $(libjavanio_la_OBJECTS) $(libjavanio_la_DEPENDENCIES)
|
||||
$(LINK) -rpath $(pkglibdir) $(libjavanio_la_LDFLAGS) $(libjavanio_la_OBJECTS) $(libjavanio_la_LIBADD) $(LIBS)
|
||||
$(LINK) -rpath $(nativelibdir) $(libjavanio_la_LDFLAGS) $(libjavanio_la_OBJECTS) $(libjavanio_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
@@ -479,7 +483,7 @@ check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(LTLIBRARIES)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(pkglibdir)"; do \
|
||||
for dir in "$(DESTDIR)$(nativelibdir)"; do \
|
||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
@@ -508,7 +512,7 @@ maintainer-clean-generic:
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool clean-pkglibLTLIBRARIES \
|
||||
clean-am: clean-generic clean-libtool clean-nativelibLTLIBRARIES \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
@@ -527,9 +531,9 @@ info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
install-data-am: install-nativelibLTLIBRARIES
|
||||
|
||||
install-exec-am: install-pkglibLTLIBRARIES
|
||||
install-exec-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
@@ -555,20 +559,20 @@ ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-info-am uninstall-pkglibLTLIBRARIES
|
||||
uninstall-am: uninstall-info-am uninstall-nativelibLTLIBRARIES
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool clean-pkglibLTLIBRARIES ctags distclean \
|
||||
clean-libtool clean-nativelibLTLIBRARIES ctags distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-exec \
|
||||
install-exec-am install-info install-info-am install-man \
|
||||
install-pkglibLTLIBRARIES install-strip installcheck \
|
||||
install-nativelibLTLIBRARIES install-strip installcheck \
|
||||
installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags uninstall uninstall-am uninstall-info-am \
|
||||
uninstall-pkglibLTLIBRARIES
|
||||
uninstall-nativelibLTLIBRARIES
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
|
||||
@@ -140,7 +140,7 @@ Java_gnu_java_nio_charset_iconv_IconvDecoder_decode (JNIEnv * env,
|
||||
|
||||
if (retval == (size_t) (-1))
|
||||
{
|
||||
if (errno == EILSEQ || errno == EINVAL)
|
||||
if (errno == EILSEQ)
|
||||
retval = 1;
|
||||
else
|
||||
retval = 0;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
pkglib_LTLIBRARIES = libjavautil.la
|
||||
nativelib_LTLIBRARIES = libjavautil.la
|
||||
|
||||
libjavautil_la_SOURCES = java_util_VMTimeZone.c
|
||||
|
||||
|
||||
@@ -42,10 +42,8 @@ target_triplet = @target@
|
||||
subdir = native/jni/java-util
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -61,9 +59,9 @@ am__vpath_adj = case $$p in \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(pkglibdir)"
|
||||
pkglibLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(pkglib_LTLIBRARIES)
|
||||
am__installdirs = "$(DESTDIR)$(nativelibdir)"
|
||||
nativelibLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(nativelib_LTLIBRARIES)
|
||||
libjavautil_la_LIBADD =
|
||||
am_libjavautil_la_OBJECTS = java_util_VMTimeZone.lo
|
||||
libjavautil_la_OBJECTS = $(am_libjavautil_la_OBJECTS)
|
||||
@@ -103,10 +101,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -243,6 +245,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -256,6 +259,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
@@ -268,7 +272,7 @@ target_cpu = @target_cpu@
|
||||
target_os = @target_os@
|
||||
target_vendor = @target_vendor@
|
||||
vm_classes = @vm_classes@
|
||||
pkglib_LTLIBRARIES = libjavautil.la
|
||||
nativelib_LTLIBRARIES = libjavautil.la
|
||||
libjavautil_la_SOURCES = java_util_VMTimeZone.c
|
||||
AM_LDFLAGS = @CLASSPATH_MODULE@
|
||||
AM_CPPFLAGS = @CLASSPATH_INCLUDES@
|
||||
@@ -306,35 +310,35 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES)
|
||||
install-nativelibLTLIBRARIES: $(nativelib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(pkglibdir)" || $(mkdir_p) "$(DESTDIR)$(pkglibdir)"
|
||||
@list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
test -z "$(nativelibdir)" || $(mkdir_p) "$(DESTDIR)$(nativelibdir)"
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=install $(pkglibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(pkglibdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(pkglibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(pkglibdir)/$$f"; \
|
||||
echo " $(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(nativelibdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(nativelibdir)/$$f"; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-pkglibLTLIBRARIES:
|
||||
uninstall-nativelibLTLIBRARIES:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@set -x; list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
@set -x; list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
p=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$p"; \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(nativelibdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(nativelibdir)/$$p"; \
|
||||
done
|
||||
|
||||
clean-pkglibLTLIBRARIES:
|
||||
-test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES)
|
||||
@list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \
|
||||
clean-nativelibLTLIBRARIES:
|
||||
-test -z "$(nativelib_LTLIBRARIES)" || rm -f $(nativelib_LTLIBRARIES)
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" != "$$p" || dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libjavautil.la: $(libjavautil_la_OBJECTS) $(libjavautil_la_DEPENDENCIES)
|
||||
$(LINK) -rpath $(pkglibdir) $(libjavautil_la_LDFLAGS) $(libjavautil_la_OBJECTS) $(libjavautil_la_LIBADD) $(LIBS)
|
||||
$(LINK) -rpath $(nativelibdir) $(libjavautil_la_LDFLAGS) $(libjavautil_la_OBJECTS) $(libjavautil_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
@@ -454,7 +458,7 @@ check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(LTLIBRARIES)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(pkglibdir)"; do \
|
||||
for dir in "$(DESTDIR)$(nativelibdir)"; do \
|
||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
@@ -483,7 +487,7 @@ maintainer-clean-generic:
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool clean-pkglibLTLIBRARIES \
|
||||
clean-am: clean-generic clean-libtool clean-nativelibLTLIBRARIES \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
@@ -502,9 +506,9 @@ info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
install-data-am: install-nativelibLTLIBRARIES
|
||||
|
||||
install-exec-am: install-pkglibLTLIBRARIES
|
||||
install-exec-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
@@ -530,20 +534,20 @@ ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-info-am uninstall-pkglibLTLIBRARIES
|
||||
uninstall-am: uninstall-info-am uninstall-nativelibLTLIBRARIES
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool clean-pkglibLTLIBRARIES ctags distclean \
|
||||
clean-libtool clean-nativelibLTLIBRARIES ctags distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-exec \
|
||||
install-exec-am install-info install-info-am install-man \
|
||||
install-pkglibLTLIBRARIES install-strip installcheck \
|
||||
install-nativelibLTLIBRARIES install-strip installcheck \
|
||||
installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags uninstall uninstall-am uninstall-info-am \
|
||||
uninstall-pkglibLTLIBRARIES
|
||||
uninstall-nativelibLTLIBRARIES
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
*.o
|
||||
*.a
|
||||
*.lo
|
||||
*.la
|
||||
.libs
|
||||
.depsMakefile
|
||||
Makefile.in
|
||||
Makefile
|
||||
.deps
|
||||
@@ -0,0 +1,11 @@
|
||||
nativelib_LTLIBRARIES = libgjsmalsa.la
|
||||
|
||||
libgjsmalsa_la_SOURCES = gnu_javax_sound_midi_alsa_AlsaMidiSequencerDevice.c \
|
||||
gnu_javax_sound_midi_alsa_AlsaPortDevice.c \
|
||||
gnu_javax_sound_midi_alsa_AlsaMidiDeviceProvider.c
|
||||
|
||||
libgjsmalsa_la_LIBADD = -lasound
|
||||
|
||||
AM_LDFLAGS = @CLASSPATH_MODULE@
|
||||
AM_CPPFLAGS = @CLASSPATH_INCLUDES@ `pkg-config --cflags-only-I alsa`
|
||||
AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ `pkg-config --cflags-only-other alsa`
|
||||
@@ -0,0 +1,563 @@
|
||||
# Makefile.in generated by automake 1.9.3 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
SOURCES = $(libgjsmalsa_la_SOURCES)
|
||||
|
||||
srcdir = @srcdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
VPATH = @srcdir@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
top_builddir = ../../..
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
INSTALL = @INSTALL@
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
target_triplet = @target@
|
||||
subdir = native/jni/midi-alsa
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
$(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||
CONFIG_HEADER = $(top_builddir)/include/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(nativelibdir)"
|
||||
nativelibLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(nativelib_LTLIBRARIES)
|
||||
libgjsmalsa_la_DEPENDENCIES =
|
||||
am_libgjsmalsa_la_OBJECTS = \
|
||||
gnu_javax_sound_midi_alsa_AlsaMidiSequencerDevice.lo \
|
||||
gnu_javax_sound_midi_alsa_AlsaPortDevice.lo \
|
||||
gnu_javax_sound_midi_alsa_AlsaMidiDeviceProvider.lo
|
||||
libgjsmalsa_la_OBJECTS = $(am_libgjsmalsa_la_OBJECTS)
|
||||
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include
|
||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) \
|
||||
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||
$(AM_CFLAGS) $(CFLAGS)
|
||||
CCLD = $(CC)
|
||||
LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||
$(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
SOURCES = $(libgjsmalsa_la_SOURCES)
|
||||
DIST_SOURCES = $(libgjsmalsa_la_SOURCES)
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMDEP_FALSE = @AMDEP_FALSE@
|
||||
AMDEP_TRUE = @AMDEP_TRUE@
|
||||
AMTAR = @AMTAR@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
BUILD_CLASS_FILES_FALSE = @BUILD_CLASS_FILES_FALSE@
|
||||
BUILD_CLASS_FILES_TRUE = @BUILD_CLASS_FILES_TRUE@
|
||||
CAIRO_CFLAGS = @CAIRO_CFLAGS@
|
||||
CAIRO_LIBS = @CAIRO_LIBS@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CLASSPATH_INCLUDES = @CLASSPATH_INCLUDES@
|
||||
CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
CREATE_JNI_HEADERS_TRUE = @CREATE_JNI_HEADERS_TRUE@
|
||||
CREATE_JNI_LIBRARIES_FALSE = @CREATE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_JNI_LIBRARIES_TRUE = @CREATE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_QT_PEER_LIBRARIES_FALSE = @CREATE_QT_PEER_LIBRARIES_FALSE@
|
||||
CREATE_QT_PEER_LIBRARIES_TRUE = @CREATE_QT_PEER_LIBRARIES_TRUE@
|
||||
CREATE_XMLJ_LIBRARY_FALSE = @CREATE_XMLJ_LIBRARY_FALSE@
|
||||
CREATE_XMLJ_LIBRARY_TRUE = @CREATE_XMLJ_LIBRARY_TRUE@
|
||||
CXX = @CXX@
|
||||
CXXCPP = @CXXCPP@
|
||||
CXXDEPMODE = @CXXDEPMODE@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DATE = @DATE@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
ECJ = @ECJ@
|
||||
EGREP = @EGREP@
|
||||
ERROR_CFLAGS = @ERROR_CFLAGS@
|
||||
EXAMPLESDIR = @EXAMPLESDIR@
|
||||
EXEEXT = @EXEEXT@
|
||||
FIND = @FIND@
|
||||
FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
|
||||
FOUND_ECJ_TRUE = @FOUND_ECJ_TRUE@
|
||||
FOUND_GCJX_FALSE = @FOUND_GCJX_FALSE@
|
||||
FOUND_GCJX_TRUE = @FOUND_GCJX_TRUE@
|
||||
FOUND_GCJ_FALSE = @FOUND_GCJ_FALSE@
|
||||
FOUND_GCJ_TRUE = @FOUND_GCJ_TRUE@
|
||||
FOUND_JIKES_FALSE = @FOUND_JIKES_FALSE@
|
||||
FOUND_JIKES_TRUE = @FOUND_JIKES_TRUE@
|
||||
FOUND_KJC_FALSE = @FOUND_KJC_FALSE@
|
||||
FOUND_KJC_TRUE = @FOUND_KJC_TRUE@
|
||||
GCJ = @GCJ@
|
||||
GCJX = @GCJX@
|
||||
GJDOC = @GJDOC@
|
||||
GTK_CAIRO_ENABLED = @GTK_CAIRO_ENABLED@
|
||||
GTK_CAIRO_FALSE = @GTK_CAIRO_FALSE@
|
||||
GTK_CAIRO_TRUE = @GTK_CAIRO_TRUE@
|
||||
GTK_CFLAGS = @GTK_CFLAGS@
|
||||
GTK_LIBS = @GTK_LIBS@
|
||||
INIT_LOAD_LIBRARY = @INIT_LOAD_LIBRARY@
|
||||
INSTALL_CLASS_FILES_FALSE = @INSTALL_CLASS_FILES_FALSE@
|
||||
INSTALL_CLASS_FILES_TRUE = @INSTALL_CLASS_FILES_TRUE@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_GLIBJ_ZIP_FALSE = @INSTALL_GLIBJ_ZIP_FALSE@
|
||||
INSTALL_GLIBJ_ZIP_TRUE = @INSTALL_GLIBJ_ZIP_TRUE@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
JAVA_LANG_SYSTEM_EXPLICIT_INITIALIZATION = @JAVA_LANG_SYSTEM_EXPLICIT_INITIALIZATION@
|
||||
JAY = @JAY@
|
||||
JAY_SKELETON = @JAY_SKELETON@
|
||||
JIKES = @JIKES@
|
||||
JIKESENCODING = @JIKESENCODING@
|
||||
KJC = @KJC@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBDEBUG = @LIBDEBUG@
|
||||
LIBICONV = @LIBICONV@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIBVERSION = @LIBVERSION@
|
||||
LN_S = @LN_S@
|
||||
LTLIBICONV = @LTLIBICONV@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAINT = @MAINT@
|
||||
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
|
||||
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MKDIR = @MKDIR@
|
||||
MOC = @MOC@
|
||||
OBJEXT = @OBJEXT@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PANGOFT2_CFLAGS = @PANGOFT2_CFLAGS@
|
||||
PANGOFT2_LIBS = @PANGOFT2_LIBS@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
QT_CFLAGS = @QT_CFLAGS@
|
||||
QT_LIBS = @QT_LIBS@
|
||||
RANLIB = @RANLIB@
|
||||
REGEN_PARSERS_FALSE = @REGEN_PARSERS_FALSE@
|
||||
REGEN_PARSERS_TRUE = @REGEN_PARSERS_TRUE@
|
||||
REMOVE = @REMOVE@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRICT_WARNING_CFLAGS = @STRICT_WARNING_CFLAGS@
|
||||
STRIP = @STRIP@
|
||||
USER_CLASSLIB = @USER_CLASSLIB@
|
||||
USER_JAVAH = @USER_JAVAH@
|
||||
USER_SPECIFIED_CLASSLIB_FALSE = @USER_SPECIFIED_CLASSLIB_FALSE@
|
||||
USER_SPECIFIED_CLASSLIB_TRUE = @USER_SPECIFIED_CLASSLIB_TRUE@
|
||||
USER_SPECIFIED_JAVAH_FALSE = @USER_SPECIFIED_JAVAH_FALSE@
|
||||
USER_SPECIFIED_JAVAH_TRUE = @USER_SPECIFIED_JAVAH_TRUE@
|
||||
VERSION = @VERSION@
|
||||
WARNING_CFLAGS = @WARNING_CFLAGS@
|
||||
XML_CFLAGS = @XML_CFLAGS@
|
||||
XML_LIBS = @XML_LIBS@
|
||||
XSLT_CFLAGS = @XSLT_CFLAGS@
|
||||
XSLT_LIBS = @XSLT_LIBS@
|
||||
X_CFLAGS = @X_CFLAGS@
|
||||
X_EXTRA_LIBS = @X_EXTRA_LIBS@
|
||||
X_LIBS = @X_LIBS@
|
||||
X_PRE_LIBS = @X_PRE_LIBS@
|
||||
ZIP = @ZIP@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_RANLIB = @ac_ct_RANLIB@
|
||||
ac_ct_STRIP = @ac_ct_STRIP@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
|
||||
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target = @target@
|
||||
target_alias = @target_alias@
|
||||
target_cpu = @target_cpu@
|
||||
target_os = @target_os@
|
||||
target_vendor = @target_vendor@
|
||||
vm_classes = @vm_classes@
|
||||
nativelib_LTLIBRARIES = libgjsmalsa.la
|
||||
libgjsmalsa_la_SOURCES = gnu_javax_sound_midi_alsa_AlsaMidiSequencerDevice.c \
|
||||
gnu_javax_sound_midi_alsa_AlsaPortDevice.c \
|
||||
gnu_javax_sound_midi_alsa_AlsaMidiDeviceProvider.c
|
||||
|
||||
libgjsmalsa_la_LIBADD = -lasound
|
||||
AM_LDFLAGS = @CLASSPATH_MODULE@
|
||||
AM_CPPFLAGS = @CLASSPATH_INCLUDES@ `pkg-config --cflags-only-I alsa`
|
||||
AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ `pkg-config --cflags-only-other alsa`
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .c .lo .o .obj
|
||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
||||
&& exit 0; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu native/jni/midi-alsa/Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnu native/jni/midi-alsa/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
install-nativelibLTLIBRARIES: $(nativelib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(nativelibdir)" || $(mkdir_p) "$(DESTDIR)$(nativelibdir)"
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(nativelibdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(nativelibdir)/$$f"; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-nativelibLTLIBRARIES:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@set -x; list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
p=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(nativelibdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(nativelibdir)/$$p"; \
|
||||
done
|
||||
|
||||
clean-nativelibLTLIBRARIES:
|
||||
-test -z "$(nativelib_LTLIBRARIES)" || rm -f $(nativelib_LTLIBRARIES)
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" != "$$p" || dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libgjsmalsa.la: $(libgjsmalsa_la_OBJECTS) $(libgjsmalsa_la_DEPENDENCIES)
|
||||
$(LINK) -rpath $(nativelibdir) $(libgjsmalsa_la_LDFLAGS) $(libgjsmalsa_la_OBJECTS) $(libgjsmalsa_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnu_javax_sound_midi_alsa_AlsaMidiDeviceProvider.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnu_javax_sound_midi_alsa_AlsaMidiSequencerDevice.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnu_javax_sound_midi_alsa_AlsaPortDevice.Plo@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
||||
|
||||
.c.obj:
|
||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
||||
|
||||
.c.lo:
|
||||
@am__fastdepCC_TRUE@ if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
|
||||
distclean-libtool:
|
||||
-rm -f libtool
|
||||
uninstall-info-am:
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& cd $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) $$here
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
||||
list='$(DISTFILES)'; for file in $$list; do \
|
||||
case $$file in \
|
||||
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
|
||||
esac; \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||
dir="/$$dir"; \
|
||||
$(mkdir_p) "$(distdir)$$dir"; \
|
||||
else \
|
||||
dir=''; \
|
||||
fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(LTLIBRARIES)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(nativelibdir)"; do \
|
||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool clean-nativelibLTLIBRARIES \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-libtool distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-nativelibLTLIBRARIES
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-man:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
||||
mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-info-am uninstall-nativelibLTLIBRARIES
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool clean-nativelibLTLIBRARIES ctags distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-exec \
|
||||
install-exec-am install-info install-info-am install-man \
|
||||
install-nativelibLTLIBRARIES install-strip installcheck \
|
||||
installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags uninstall uninstall-am uninstall-info-am \
|
||||
uninstall-nativelibLTLIBRARIES
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
||||
+148
@@ -0,0 +1,148 @@
|
||||
/* gnu_javax_sound_midi_alsa_AlsaMidiDeviceProvider.c
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath 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.
|
||||
|
||||
GNU Classpath 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 GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
02110-1301 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
#include <config.h>
|
||||
#include <gnu_javax_sound_midi_alsa_AlsaMidiDeviceProvider.h>
|
||||
|
||||
#include <alsa/asoundlib.h>
|
||||
|
||||
static snd_seq_t *seq;
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_javax_sound_midi_alsa_AlsaMidiDeviceProvider_init_1
|
||||
(JNIEnv *env __attribute__((unused)), jobject this __attribute__((unused)))
|
||||
{
|
||||
int rc = snd_seq_open (&seq, "default", SND_SEQ_OPEN_DUPLEX, SND_SEQ_NONBLOCK);
|
||||
if (rc < 0)
|
||||
abort ();
|
||||
snd_seq_set_client_name(seq, "gnu.javax.sound.midi.alsa");
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a CLAZZ[] filled with ports matching TYPE.
|
||||
*/
|
||||
static jobjectArray
|
||||
getPortDeviceInfo (JNIEnv *env, unsigned type, const char *clazz)
|
||||
{
|
||||
jobjectArray rarray;
|
||||
snd_seq_client_info_t *cinfo;
|
||||
snd_seq_port_info_t *pinfo;
|
||||
int client;
|
||||
int count = 0;
|
||||
jclass icls;
|
||||
jmethodID mid;
|
||||
|
||||
snd_seq_client_info_alloca(&cinfo);
|
||||
snd_seq_port_info_alloca(&pinfo);
|
||||
|
||||
/* First, count the number of input devices. */
|
||||
snd_seq_client_info_set_client (cinfo, -1);
|
||||
while (snd_seq_query_next_client (seq, cinfo) >= 0)
|
||||
{
|
||||
client = snd_seq_client_info_get_client (cinfo);
|
||||
if (client == 0)
|
||||
continue;
|
||||
snd_seq_port_info_set_client (pinfo, client);
|
||||
snd_seq_port_info_set_port (pinfo, -1);
|
||||
while (snd_seq_query_next_port (seq, pinfo) >= 0)
|
||||
{
|
||||
if ((snd_seq_port_info_get_capability (pinfo) & type) != type)
|
||||
continue;
|
||||
count++;
|
||||
}
|
||||
}
|
||||
|
||||
icls = (*env)->FindClass(env, clazz);
|
||||
mid = (*env)->GetMethodID(env, icls, "<init>",
|
||||
"(Ljava/lang/String;Ljava/lang/String;JJ)V");
|
||||
|
||||
rarray = (jobjectArray) (*env)->NewObjectArray(env, count, icls, NULL);
|
||||
|
||||
/* Now, populate our array. */
|
||||
count = 0;
|
||||
snd_seq_client_info_set_client (cinfo, -1);
|
||||
while (snd_seq_query_next_client (seq, cinfo) >= 0)
|
||||
{
|
||||
const char *client_name;
|
||||
client = snd_seq_client_info_get_client (cinfo);
|
||||
if (client == 0)
|
||||
continue;
|
||||
snd_seq_port_info_set_client (pinfo, client);
|
||||
snd_seq_port_info_set_port (pinfo, -1);
|
||||
|
||||
client_name = snd_seq_client_info_get_name (cinfo);
|
||||
|
||||
while (snd_seq_query_next_port (seq, pinfo) >= 0)
|
||||
{
|
||||
const char *port_name;
|
||||
|
||||
if ((snd_seq_port_info_get_capability (pinfo) & type) != type)
|
||||
continue;
|
||||
|
||||
port_name = snd_seq_port_info_get_name (pinfo);
|
||||
|
||||
(*env)->SetObjectArrayElement(env, rarray, count,
|
||||
(*env)->NewObject (env, icls, mid,
|
||||
(*env)->NewStringUTF (env, client_name),
|
||||
(*env)->NewStringUTF (env, port_name),
|
||||
(jlong) snd_seq_port_info_get_client(pinfo),
|
||||
(jlong) snd_seq_port_info_get_port(pinfo)));
|
||||
count++;
|
||||
}
|
||||
}
|
||||
|
||||
return rarray;
|
||||
}
|
||||
|
||||
JNIEXPORT jobjectArray JNICALL
|
||||
Java_gnu_javax_sound_midi_alsa_AlsaMidiDeviceProvider_getInputDeviceInfo_1
|
||||
(JNIEnv *env, jobject this __attribute__((unused)))
|
||||
{
|
||||
return getPortDeviceInfo (env,
|
||||
(SND_SEQ_PORT_CAP_READ | SND_SEQ_PORT_CAP_SUBS_READ),
|
||||
"gnu/javax/sound/midi/alsa/AlsaMidiDeviceProvider$AlsaInputPortInfo");
|
||||
}
|
||||
|
||||
JNIEXPORT jobjectArray JNICALL
|
||||
Java_gnu_javax_sound_midi_alsa_AlsaMidiDeviceProvider_getOutputDeviceInfo_1
|
||||
(JNIEnv *env, jobject this __attribute__((unused)))
|
||||
{
|
||||
return getPortDeviceInfo (env,
|
||||
(SND_SEQ_PORT_CAP_WRITE | SND_SEQ_PORT_CAP_SUBS_WRITE),
|
||||
"gnu/javax/sound/midi/alsa/AlsaMidiDeviceProvider$AlsaOutputPortInfo");
|
||||
}
|
||||
|
||||
+59
@@ -0,0 +1,59 @@
|
||||
/* gnu_javax_sound_midi_alsa_AlsaMidiSequencerDevice.c
|
||||
Copyright (C) 2005
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath 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.
|
||||
|
||||
GNU Classpath 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 GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
02110-1301 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
#include <config.h>
|
||||
#include <gnu_javax_sound_midi_alsa_AlsaMidiSequencerDevice.h>
|
||||
|
||||
JNIEXPORT jlong JNICALL
|
||||
Java_gnu_javax_sound_midi_alsa_AlsaMidiSequencerDevice_open_1
|
||||
(JNIEnv *env __attribute__((unused)), jobject this __attribute__((unused)))
|
||||
{
|
||||
/* Nothing yet. */
|
||||
return 555;
|
||||
}
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_javax_sound_midi_alsa_AlsaMidiSequencerDevice_close_1
|
||||
(JNIEnv *env __attribute__((unused)),
|
||||
jobject this __attribute__((unused)), jlong s __attribute__((unused)))
|
||||
{
|
||||
/* Nothing. */
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,150 @@
|
||||
/* gnu_javax_sound_midi_alsa_AlsaPortDevice.c - Native support
|
||||
Copyright (C) 2005
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath 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.
|
||||
|
||||
GNU Classpath 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 GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
02110-1301 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
#include <config.h>
|
||||
#include <gnu_javax_sound_midi_alsa_AlsaPortDevice.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include <alsa/asoundlib.h>
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_javax_sound_midi_alsa_AlsaPortDevice_run_1receiver_1thread_1
|
||||
(JNIEnv *env, jobject this __attribute__((unused)),
|
||||
jlong client, jlong port, jobject receiver)
|
||||
{
|
||||
int rc;
|
||||
snd_seq_port_info_t *pinfo, *sinfo;
|
||||
snd_seq_port_subscribe_t *subs;
|
||||
snd_seq_addr_t sender, dest;
|
||||
snd_seq_t *seq;
|
||||
|
||||
snd_seq_port_info_alloca (&pinfo);
|
||||
snd_seq_port_info_alloca (&sinfo);
|
||||
snd_seq_port_subscribe_alloca (&subs);
|
||||
|
||||
rc = snd_seq_open (&seq, "default", SND_SEQ_OPEN_DUPLEX, SND_SEQ_NONBLOCK);
|
||||
|
||||
snd_seq_port_info_set_capability (pinfo, SND_SEQ_PORT_CAP_WRITE);
|
||||
snd_seq_port_info_set_type (pinfo, SND_SEQ_PORT_TYPE_MIDI_GENERIC);
|
||||
|
||||
rc = snd_seq_create_port (seq, pinfo);
|
||||
|
||||
sender.client = (int) client;
|
||||
sender.port = (int) port;
|
||||
dest.client = snd_seq_port_info_get_client(pinfo);
|
||||
dest.port = snd_seq_port_info_get_port(pinfo);
|
||||
|
||||
snd_seq_port_subscribe_set_sender (subs, &sender);
|
||||
snd_seq_port_subscribe_set_dest (subs, &dest);
|
||||
rc = snd_seq_subscribe_port(seq, subs);
|
||||
|
||||
{
|
||||
int npfd;
|
||||
struct pollfd *pfd;
|
||||
jclass smcls, rcls;
|
||||
jmethodID sminit, rsend;
|
||||
jbyteArray mba;
|
||||
jbyte *ba;
|
||||
jobject msg;
|
||||
jlong jtimestamp;
|
||||
|
||||
npfd = snd_seq_poll_descriptors_count (seq, POLLIN);
|
||||
pfd = (struct pollfd *) alloca (npfd * sizeof (struct pollfd));
|
||||
snd_seq_poll_descriptors (seq, pfd, npfd, POLLIN);
|
||||
|
||||
smcls = (*env)->FindClass(env, "javax/sound/midi/ShortMessage");
|
||||
sminit = (*env)->GetMethodID(env, smcls, "<init>", "([B)V");
|
||||
|
||||
rcls = (*env)->FindClass(env, "javax/sound/midi/Receiver");
|
||||
rsend = (*env)->GetMethodID(env, rcls, "send", "(Ljavax/sound/midi/MidiMessage;J)V");
|
||||
|
||||
while (1)
|
||||
{
|
||||
if (poll (pfd, npfd, 100000) > 0)
|
||||
{
|
||||
snd_seq_event_t *ev;
|
||||
|
||||
do
|
||||
{
|
||||
snd_seq_event_input (seq, &ev);
|
||||
|
||||
if ((ev->flags & SND_SEQ_TIME_STAMP_MASK) == SND_SEQ_TIME_STAMP_TICK)
|
||||
jtimestamp = (jlong) ev->time.tick;
|
||||
else
|
||||
jtimestamp = (jlong) ev->time.time.tv_sec * (jlong) 1000000000
|
||||
+ (jlong) ev->time.time.tv_nsec;
|
||||
|
||||
switch (ev->type)
|
||||
{
|
||||
case SND_SEQ_EVENT_NOTEON:
|
||||
mba = (*env)->NewByteArray (env, 3);
|
||||
ba = (*env)->GetByteArrayElements (env, mba, 0);
|
||||
ba[0] = 0x90 + ev->data.control.channel;
|
||||
ba[1] = ev->data.note.note;
|
||||
ba[2] = ev->data.note.velocity;
|
||||
(*env)->ReleaseByteArrayElements (env, mba, ba, 0);
|
||||
msg = (*env)->NewObject(env, smcls, sminit, mba);
|
||||
(*env)->CallObjectMethod(env, receiver,
|
||||
rsend, msg, jtimestamp);
|
||||
break;
|
||||
|
||||
case SND_SEQ_EVENT_CONTROLLER:
|
||||
mba = (*env)->NewByteArray (env, 3);
|
||||
ba = (*env)->GetByteArrayElements (env, mba, 0);
|
||||
ba[0] = 0xB0 + ev->data.control.channel;
|
||||
ba[1] = ev->data.control.param;
|
||||
ba[2] = ev->data.control.value;
|
||||
(*env)->ReleaseByteArrayElements (env, mba, ba, 0);
|
||||
msg = (*env)->NewObject(env, smcls, sminit, mba);
|
||||
(*env)->CallObjectMethod(env, receiver,
|
||||
rsend, msg, jtimestamp);
|
||||
break;
|
||||
|
||||
default:
|
||||
printf ("UNKNOWN EVENT 0x%x\n", ev->type);
|
||||
break;
|
||||
}
|
||||
|
||||
snd_seq_free_event(ev);
|
||||
}
|
||||
while (snd_seq_event_input_pending (seq, 0) > 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
*.o
|
||||
*.a
|
||||
*.lo
|
||||
*.la
|
||||
.libs
|
||||
.depsMakefile
|
||||
Makefile.in
|
||||
.deps
|
||||
Makefile
|
||||
@@ -0,0 +1,11 @@
|
||||
nativelib_LTLIBRARIES = libgjsmdssi.la
|
||||
|
||||
libgjsmdssi_la_SOURCES = gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider.c \
|
||||
gnu_javax_sound_midi_dssi_DSSISynthesizer.c \
|
||||
dssi_data.h
|
||||
|
||||
libgjsmdssi_la_LIBADD = $(top_builddir)/native/jni/classpath/jcl.lo -ljack
|
||||
|
||||
AM_LDFLAGS = @CLASSPATH_MODULE@
|
||||
AM_CPPFLAGS = @CLASSPATH_INCLUDES@
|
||||
AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
|
||||
@@ -0,0 +1,562 @@
|
||||
# Makefile.in generated by automake 1.9.3 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
SOURCES = $(libgjsmdssi_la_SOURCES)
|
||||
|
||||
srcdir = @srcdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
VPATH = @srcdir@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
top_builddir = ../../..
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
INSTALL = @INSTALL@
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
target_triplet = @target@
|
||||
subdir = native/jni/midi-dssi
|
||||
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
$(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||
CONFIG_HEADER = $(top_builddir)/include/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(nativelibdir)"
|
||||
nativelibLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(nativelib_LTLIBRARIES)
|
||||
libgjsmdssi_la_DEPENDENCIES = \
|
||||
$(top_builddir)/native/jni/classpath/jcl.lo
|
||||
am_libgjsmdssi_la_OBJECTS = \
|
||||
gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider.lo \
|
||||
gnu_javax_sound_midi_dssi_DSSISynthesizer.lo
|
||||
libgjsmdssi_la_OBJECTS = $(am_libgjsmdssi_la_OBJECTS)
|
||||
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include
|
||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) \
|
||||
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||
$(AM_CFLAGS) $(CFLAGS)
|
||||
CCLD = $(CC)
|
||||
LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||
$(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
SOURCES = $(libgjsmdssi_la_SOURCES)
|
||||
DIST_SOURCES = $(libgjsmdssi_la_SOURCES)
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMDEP_FALSE = @AMDEP_FALSE@
|
||||
AMDEP_TRUE = @AMDEP_TRUE@
|
||||
AMTAR = @AMTAR@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
BUILD_CLASS_FILES_FALSE = @BUILD_CLASS_FILES_FALSE@
|
||||
BUILD_CLASS_FILES_TRUE = @BUILD_CLASS_FILES_TRUE@
|
||||
CAIRO_CFLAGS = @CAIRO_CFLAGS@
|
||||
CAIRO_LIBS = @CAIRO_LIBS@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CLASSPATH_INCLUDES = @CLASSPATH_INCLUDES@
|
||||
CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
CREATE_JNI_HEADERS_TRUE = @CREATE_JNI_HEADERS_TRUE@
|
||||
CREATE_JNI_LIBRARIES_FALSE = @CREATE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_JNI_LIBRARIES_TRUE = @CREATE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_QT_PEER_LIBRARIES_FALSE = @CREATE_QT_PEER_LIBRARIES_FALSE@
|
||||
CREATE_QT_PEER_LIBRARIES_TRUE = @CREATE_QT_PEER_LIBRARIES_TRUE@
|
||||
CREATE_XMLJ_LIBRARY_FALSE = @CREATE_XMLJ_LIBRARY_FALSE@
|
||||
CREATE_XMLJ_LIBRARY_TRUE = @CREATE_XMLJ_LIBRARY_TRUE@
|
||||
CXX = @CXX@
|
||||
CXXCPP = @CXXCPP@
|
||||
CXXDEPMODE = @CXXDEPMODE@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DATE = @DATE@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
ECJ = @ECJ@
|
||||
EGREP = @EGREP@
|
||||
ERROR_CFLAGS = @ERROR_CFLAGS@
|
||||
EXAMPLESDIR = @EXAMPLESDIR@
|
||||
EXEEXT = @EXEEXT@
|
||||
FIND = @FIND@
|
||||
FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
|
||||
FOUND_ECJ_TRUE = @FOUND_ECJ_TRUE@
|
||||
FOUND_GCJX_FALSE = @FOUND_GCJX_FALSE@
|
||||
FOUND_GCJX_TRUE = @FOUND_GCJX_TRUE@
|
||||
FOUND_GCJ_FALSE = @FOUND_GCJ_FALSE@
|
||||
FOUND_GCJ_TRUE = @FOUND_GCJ_TRUE@
|
||||
FOUND_JIKES_FALSE = @FOUND_JIKES_FALSE@
|
||||
FOUND_JIKES_TRUE = @FOUND_JIKES_TRUE@
|
||||
FOUND_KJC_FALSE = @FOUND_KJC_FALSE@
|
||||
FOUND_KJC_TRUE = @FOUND_KJC_TRUE@
|
||||
GCJ = @GCJ@
|
||||
GCJX = @GCJX@
|
||||
GJDOC = @GJDOC@
|
||||
GTK_CAIRO_ENABLED = @GTK_CAIRO_ENABLED@
|
||||
GTK_CAIRO_FALSE = @GTK_CAIRO_FALSE@
|
||||
GTK_CAIRO_TRUE = @GTK_CAIRO_TRUE@
|
||||
GTK_CFLAGS = @GTK_CFLAGS@
|
||||
GTK_LIBS = @GTK_LIBS@
|
||||
INIT_LOAD_LIBRARY = @INIT_LOAD_LIBRARY@
|
||||
INSTALL_CLASS_FILES_FALSE = @INSTALL_CLASS_FILES_FALSE@
|
||||
INSTALL_CLASS_FILES_TRUE = @INSTALL_CLASS_FILES_TRUE@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_GLIBJ_ZIP_FALSE = @INSTALL_GLIBJ_ZIP_FALSE@
|
||||
INSTALL_GLIBJ_ZIP_TRUE = @INSTALL_GLIBJ_ZIP_TRUE@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
JAVA_LANG_SYSTEM_EXPLICIT_INITIALIZATION = @JAVA_LANG_SYSTEM_EXPLICIT_INITIALIZATION@
|
||||
JAY = @JAY@
|
||||
JAY_SKELETON = @JAY_SKELETON@
|
||||
JIKES = @JIKES@
|
||||
JIKESENCODING = @JIKESENCODING@
|
||||
KJC = @KJC@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBDEBUG = @LIBDEBUG@
|
||||
LIBICONV = @LIBICONV@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIBVERSION = @LIBVERSION@
|
||||
LN_S = @LN_S@
|
||||
LTLIBICONV = @LTLIBICONV@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAINT = @MAINT@
|
||||
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
|
||||
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MKDIR = @MKDIR@
|
||||
MOC = @MOC@
|
||||
OBJEXT = @OBJEXT@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PANGOFT2_CFLAGS = @PANGOFT2_CFLAGS@
|
||||
PANGOFT2_LIBS = @PANGOFT2_LIBS@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
QT_CFLAGS = @QT_CFLAGS@
|
||||
QT_LIBS = @QT_LIBS@
|
||||
RANLIB = @RANLIB@
|
||||
REGEN_PARSERS_FALSE = @REGEN_PARSERS_FALSE@
|
||||
REGEN_PARSERS_TRUE = @REGEN_PARSERS_TRUE@
|
||||
REMOVE = @REMOVE@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRICT_WARNING_CFLAGS = @STRICT_WARNING_CFLAGS@
|
||||
STRIP = @STRIP@
|
||||
USER_CLASSLIB = @USER_CLASSLIB@
|
||||
USER_JAVAH = @USER_JAVAH@
|
||||
USER_SPECIFIED_CLASSLIB_FALSE = @USER_SPECIFIED_CLASSLIB_FALSE@
|
||||
USER_SPECIFIED_CLASSLIB_TRUE = @USER_SPECIFIED_CLASSLIB_TRUE@
|
||||
USER_SPECIFIED_JAVAH_FALSE = @USER_SPECIFIED_JAVAH_FALSE@
|
||||
USER_SPECIFIED_JAVAH_TRUE = @USER_SPECIFIED_JAVAH_TRUE@
|
||||
VERSION = @VERSION@
|
||||
WARNING_CFLAGS = @WARNING_CFLAGS@
|
||||
XML_CFLAGS = @XML_CFLAGS@
|
||||
XML_LIBS = @XML_LIBS@
|
||||
XSLT_CFLAGS = @XSLT_CFLAGS@
|
||||
XSLT_LIBS = @XSLT_LIBS@
|
||||
X_CFLAGS = @X_CFLAGS@
|
||||
X_EXTRA_LIBS = @X_EXTRA_LIBS@
|
||||
X_LIBS = @X_LIBS@
|
||||
X_PRE_LIBS = @X_PRE_LIBS@
|
||||
ZIP = @ZIP@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_RANLIB = @ac_ct_RANLIB@
|
||||
ac_ct_STRIP = @ac_ct_STRIP@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
|
||||
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target = @target@
|
||||
target_alias = @target_alias@
|
||||
target_cpu = @target_cpu@
|
||||
target_os = @target_os@
|
||||
target_vendor = @target_vendor@
|
||||
vm_classes = @vm_classes@
|
||||
nativelib_LTLIBRARIES = libgjsmdssi.la
|
||||
libgjsmdssi_la_SOURCES = gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider.c \
|
||||
gnu_javax_sound_midi_dssi_DSSISynthesizer.c \
|
||||
dssi_data.h
|
||||
|
||||
libgjsmdssi_la_LIBADD = $(top_builddir)/native/jni/classpath/jcl.lo -ljack
|
||||
AM_LDFLAGS = @CLASSPATH_MODULE@
|
||||
AM_CPPFLAGS = @CLASSPATH_INCLUDES@
|
||||
AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .c .lo .o .obj
|
||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
||||
&& exit 0; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu native/jni/midi-dssi/Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnu native/jni/midi-dssi/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
install-nativelibLTLIBRARIES: $(nativelib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(nativelibdir)" || $(mkdir_p) "$(DESTDIR)$(nativelibdir)"
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(nativelibdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(nativelibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(nativelibdir)/$$f"; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-nativelibLTLIBRARIES:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@set -x; list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
p=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(nativelibdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(nativelibdir)/$$p"; \
|
||||
done
|
||||
|
||||
clean-nativelibLTLIBRARIES:
|
||||
-test -z "$(nativelib_LTLIBRARIES)" || rm -f $(nativelib_LTLIBRARIES)
|
||||
@list='$(nativelib_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" != "$$p" || dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libgjsmdssi.la: $(libgjsmdssi_la_OBJECTS) $(libgjsmdssi_la_DEPENDENCIES)
|
||||
$(LINK) -rpath $(nativelibdir) $(libgjsmdssi_la_LDFLAGS) $(libgjsmdssi_la_OBJECTS) $(libgjsmdssi_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnu_javax_sound_midi_dssi_DSSISynthesizer.Plo@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
||||
|
||||
.c.obj:
|
||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
||||
|
||||
.c.lo:
|
||||
@am__fastdepCC_TRUE@ if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
|
||||
distclean-libtool:
|
||||
-rm -f libtool
|
||||
uninstall-info-am:
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& cd $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) $$here
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
||||
list='$(DISTFILES)'; for file in $$list; do \
|
||||
case $$file in \
|
||||
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
|
||||
esac; \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||
dir="/$$dir"; \
|
||||
$(mkdir_p) "$(distdir)$$dir"; \
|
||||
else \
|
||||
dir=''; \
|
||||
fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(LTLIBRARIES)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(nativelibdir)"; do \
|
||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool clean-nativelibLTLIBRARIES \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-libtool distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-nativelibLTLIBRARIES
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-man:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
||||
mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-info-am uninstall-nativelibLTLIBRARIES
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool clean-nativelibLTLIBRARIES ctags distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-exec \
|
||||
install-exec-am install-info install-info-am install-man \
|
||||
install-nativelibLTLIBRARIES install-strip installcheck \
|
||||
installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags uninstall uninstall-am uninstall-info-am \
|
||||
uninstall-nativelibLTLIBRARIES
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
||||
@@ -0,0 +1,134 @@
|
||||
The file native/jni/midi-dssi/gnu_javax_sound_midi_dssi_DSSISynthesizer.c
|
||||
contains two functions (get_port_default and set_control) derived from
|
||||
example code in the DSSI distribution (http://dssi.sourceforge.net).
|
||||
The original DSSI example code is distributed under the following
|
||||
terms:
|
||||
|
||||
Copyright 2004 Chris Cannam, Steve Harris and Sean Bolton.
|
||||
|
||||
Permission to use, copy, modify, distribute, and sell this software
|
||||
for any purpose is hereby granted without fee, provided that the
|
||||
above copyright notice and this permission notice are included in
|
||||
all copies or substantial portions of the software.
|
||||
|
||||
|
||||
The rest of this file contain the original versions of these
|
||||
functions.
|
||||
|
||||
|
||||
LADSPA_Data get_port_default(const LADSPA_Descriptor *plugin, int port)
|
||||
{
|
||||
LADSPA_PortRangeHint hint = plugin->PortRangeHints[port];
|
||||
float lower = hint.LowerBound *
|
||||
(LADSPA_IS_HINT_SAMPLE_RATE(hint.HintDescriptor) ? sample_rate : 1.0f);
|
||||
float upper = hint.UpperBound *
|
||||
(LADSPA_IS_HINT_SAMPLE_RATE(hint.HintDescriptor) ? sample_rate : 1.0f);
|
||||
|
||||
if (!LADSPA_IS_HINT_HAS_DEFAULT(hint.HintDescriptor)) {
|
||||
if (!LADSPA_IS_HINT_BOUNDED_BELOW(hint.HintDescriptor) ||
|
||||
!LADSPA_IS_HINT_BOUNDED_ABOVE(hint.HintDescriptor)) {
|
||||
/* No hint, its not bounded, wild guess */
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
if (lower <= 0.0f && upper >= 0.0f) {
|
||||
/* It spans 0.0, 0.0 is often a good guess */
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
/* No clues, return minimum */
|
||||
return lower;
|
||||
}
|
||||
|
||||
/* Try all the easy ones */
|
||||
|
||||
if (LADSPA_IS_HINT_DEFAULT_0(hint.HintDescriptor)) {
|
||||
return 0.0f;
|
||||
} else if (LADSPA_IS_HINT_DEFAULT_1(hint.HintDescriptor)) {
|
||||
return 1.0f;
|
||||
} else if (LADSPA_IS_HINT_DEFAULT_100(hint.HintDescriptor)) {
|
||||
return 100.0f;
|
||||
} else if (LADSPA_IS_HINT_DEFAULT_440(hint.HintDescriptor)) {
|
||||
return 440.0f;
|
||||
}
|
||||
|
||||
/* All the others require some bounds */
|
||||
|
||||
if (LADSPA_IS_HINT_BOUNDED_BELOW(hint.HintDescriptor)) {
|
||||
if (LADSPA_IS_HINT_DEFAULT_MINIMUM(hint.HintDescriptor)) {
|
||||
return lower;
|
||||
}
|
||||
}
|
||||
if (LADSPA_IS_HINT_BOUNDED_ABOVE(hint.HintDescriptor)) {
|
||||
if (LADSPA_IS_HINT_DEFAULT_MAXIMUM(hint.HintDescriptor)) {
|
||||
return upper;
|
||||
}
|
||||
if (LADSPA_IS_HINT_BOUNDED_BELOW(hint.HintDescriptor)) {
|
||||
if (LADSPA_IS_HINT_DEFAULT_LOW(hint.HintDescriptor)) {
|
||||
return lower * 0.75f + upper * 0.25f;
|
||||
} else if (LADSPA_IS_HINT_DEFAULT_MIDDLE(hint.HintDescriptor)) {
|
||||
return lower * 0.5f + upper * 0.5f;
|
||||
} else if (LADSPA_IS_HINT_DEFAULT_HIGH(hint.HintDescriptor)) {
|
||||
return lower * 0.25f + upper * 0.75f;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* fallback */
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
setControl(d3h_instance_t *instance, long controlIn, snd_seq_event_t *event)
|
||||
{
|
||||
long port = pluginControlInPortNumbers[controlIn];
|
||||
|
||||
const LADSPA_Descriptor *p = instance->plugin->descriptor->LADSPA_Plugin;
|
||||
|
||||
LADSPA_PortRangeHintDescriptor d = p->PortRangeHints[port].HintDescriptor;
|
||||
|
||||
LADSPA_Data lb = p->PortRangeHints[port].LowerBound *
|
||||
(LADSPA_IS_HINT_SAMPLE_RATE(p->PortRangeHints[port].HintDescriptor) ?
|
||||
sample_rate : 1.0f);
|
||||
|
||||
LADSPA_Data ub = p->PortRangeHints[port].UpperBound *
|
||||
(LADSPA_IS_HINT_SAMPLE_RATE(p->PortRangeHints[port].HintDescriptor) ?
|
||||
sample_rate : 1.0f);
|
||||
|
||||
float value = (float)event->data.control.value;
|
||||
|
||||
if (!LADSPA_IS_HINT_BOUNDED_BELOW(d)) {
|
||||
if (!LADSPA_IS_HINT_BOUNDED_ABOVE(d)) {
|
||||
/* unbounded: might as well leave the value alone. */
|
||||
} else {
|
||||
/* bounded above only. just shift the range. */
|
||||
value = ub - 127.0f + value;
|
||||
}
|
||||
} else {
|
||||
if (!LADSPA_IS_HINT_BOUNDED_ABOVE(d)) {
|
||||
/* bounded below only. just shift the range. */
|
||||
value = lb + value;
|
||||
} else {
|
||||
/* bounded both ends. more interesting. */
|
||||
if (LADSPA_IS_HINT_LOGARITHMIC(d)) {
|
||||
const float llb = logf(lb);
|
||||
const float lub = logf(ub);
|
||||
|
||||
value = expf(llb + ((lub - llb) * value / 127.0f));
|
||||
} else {
|
||||
value = lb + ((ub - lb) * value / 127.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (verbose) {
|
||||
printf("%s: %s MIDI controller %d=%d -> control in %ld=%f\n", myName,
|
||||
instance->friendly_name, event->data.control.param,
|
||||
event->data.control.value, controlIn, value);
|
||||
}
|
||||
|
||||
pluginControlIns[controlIn] = value;
|
||||
pluginPortUpdated[controlIn] = 1;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,121 @@
|
||||
/* dssi_data.h - DSSI data
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath 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.
|
||||
|
||||
GNU Classpath 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 GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
02110-1301 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <dlfcn.h>
|
||||
#include <sys/time.h>
|
||||
#include <jni.h>
|
||||
#include <dssi.h>
|
||||
#include <jack/jack.h>
|
||||
#include <alsa/asoundlib.h>
|
||||
#include <alsa/seq.h>
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "target_native.h"
|
||||
#include "target_native_misc.h"
|
||||
#include "../classpath/jcl.h"
|
||||
|
||||
/* Specify the size of the circular buffer. It only needs to be big
|
||||
enough to hold the events that happen between jack callbacks (~
|
||||
1/40th of a second). */
|
||||
#define EVENT_BUFFER_SIZE 1024
|
||||
|
||||
/* Helper macros for going between pointers and jlongs. */
|
||||
#define JLONG_TO_PTR(T,P) ((T *)(long)P)
|
||||
#define PTR_TO_JLONG(P) ((jlong)(long)P)
|
||||
|
||||
|
||||
/* Every DSSI Synthesizer has one of these associated with it. The
|
||||
Java class sees it as a "long" handle. */
|
||||
|
||||
typedef struct
|
||||
{
|
||||
/* This is a handle to the dlopen'ed .so file containing the DSSI
|
||||
synthesizer. */
|
||||
void *dlhandle;
|
||||
|
||||
/* The function to call to get the DSS_Descriptor. */
|
||||
DSSI_Descriptor_Function fn;
|
||||
|
||||
/* The descriptor for this synthesizer. See the dssi.h system
|
||||
header. */
|
||||
const DSSI_Descriptor *desc;
|
||||
|
||||
/* We currently open a jack client connection for every
|
||||
synthesizer. */
|
||||
jack_client_t *jack_client;
|
||||
|
||||
/* We currently only handle stereo jack connections. Output from
|
||||
mono synthesizers is sent to both left and right ports. */
|
||||
jack_port_t *jack_left_output_port;
|
||||
jack_port_t *jack_right_output_port;
|
||||
|
||||
/* We use a circular buffer to hold MIDI events before processing
|
||||
them in the jack audio processing callback function. */
|
||||
snd_seq_event_t midiEventBuffer[EVENT_BUFFER_SIZE];
|
||||
int midiEventReadIndex;
|
||||
int midiEventWriteIndex;
|
||||
|
||||
/* This is a handle the synthesizers underlying LADSPA structure.
|
||||
See the ladspa.h system header for details. */
|
||||
LADSPA_Handle plugin_handle;
|
||||
|
||||
/* These are buffers we pass to the DSSI Synthesizer for
|
||||
filling. */
|
||||
float *left_buffer;
|
||||
float *right_buffer;
|
||||
|
||||
/* The number of input controls for this synth. */
|
||||
unsigned control_count;
|
||||
|
||||
/* An array of control values, control_count in length. */
|
||||
LADSPA_Data *control_values;
|
||||
|
||||
/* A mapping of MIDI controllers to control values. There are a
|
||||
maximum of 128 MIDI controllers. */
|
||||
unsigned control_value_map[128];
|
||||
|
||||
/* A mapping of MIDI controllers to LADSPA ports. There are a
|
||||
maximum of 128 MIDI controllers. */
|
||||
unsigned control_port_map[128];
|
||||
|
||||
/* The sample rate. */
|
||||
jack_nframes_t sample_rate;
|
||||
|
||||
} dssi_data;
|
||||
|
||||
+139
@@ -0,0 +1,139 @@
|
||||
/* gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider.c - DSSI Provider
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath 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.
|
||||
|
||||
GNU Classpath 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 GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
02110-1301 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
#include <config.h>
|
||||
#include <gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider.h>
|
||||
|
||||
#include "dssi_data.h"
|
||||
|
||||
void
|
||||
Java_gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider_dlclose_1
|
||||
(JNIEnv *env, jclass clazz __attribute__((unused)), jlong sohandle)
|
||||
{
|
||||
dssi_data *data = (dssi_data *) (long) sohandle;
|
||||
dlclose (data->dlhandle);
|
||||
JCL_free (env, data);
|
||||
}
|
||||
|
||||
jlong
|
||||
Java_gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider_dlopen_1
|
||||
(JNIEnv *env, jclass clazz __attribute__((unused)), jstring name)
|
||||
{
|
||||
const char *filename;
|
||||
void *handle;
|
||||
DSSI_Descriptor_Function fn;
|
||||
dssi_data *data = 0;
|
||||
|
||||
filename = JCL_jstring_to_cstring (env, name);
|
||||
if (filename == NULL)
|
||||
return (0);
|
||||
|
||||
handle = dlopen(filename, RTLD_NOW);
|
||||
|
||||
if (handle == 0)
|
||||
goto done;
|
||||
|
||||
fn = (DSSI_Descriptor_Function) dlsym(handle, "dssi_descriptor");
|
||||
|
||||
if (fn == 0)
|
||||
{
|
||||
dlclose(handle);
|
||||
goto done;
|
||||
}
|
||||
|
||||
data = (dssi_data *) JCL_malloc(env, sizeof(dssi_data));
|
||||
data->dlhandle = handle;
|
||||
data->fn = fn;
|
||||
data->midiEventReadIndex = 0;
|
||||
data->midiEventWriteIndex = 0;
|
||||
|
||||
done:
|
||||
JCL_free_cstring (env, name, filename);
|
||||
return PTR_TO_JLONG(data);
|
||||
}
|
||||
|
||||
jlong
|
||||
Java_gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider_getDSSIHandle_1
|
||||
(JNIEnv *env __attribute__((unused)),
|
||||
jclass clazz __attribute__((unused)), jlong handle, jlong index)
|
||||
{
|
||||
dssi_data *data = JLONG_TO_PTR(dssi_data,handle);
|
||||
data->desc = (data->fn)(index);
|
||||
return PTR_TO_JLONG(data->desc);
|
||||
}
|
||||
|
||||
jstring
|
||||
Java_gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider_getDSSIName_1
|
||||
(JNIEnv *env, jclass clazz __attribute__((unused)), jlong handle)
|
||||
{
|
||||
DSSI_Descriptor *desc = JLONG_TO_PTR(DSSI_Descriptor,handle);
|
||||
const char *str = desc->LADSPA_Plugin->Name;
|
||||
|
||||
return (*env)->NewStringUTF (env, str);
|
||||
}
|
||||
|
||||
jstring
|
||||
Java_gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider_getDSSICopyright_1
|
||||
(JNIEnv *env, jclass clazz __attribute__((unused)), jlong handle)
|
||||
{
|
||||
DSSI_Descriptor *desc = JLONG_TO_PTR(DSSI_Descriptor,handle);
|
||||
const char *str = desc->LADSPA_Plugin->Copyright;
|
||||
|
||||
return (*env)->NewStringUTF (env, str);
|
||||
}
|
||||
|
||||
jstring
|
||||
Java_gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider_getDSSIVendor_1
|
||||
(JNIEnv *env, jclass clazz __attribute__((unused)), jlong handle)
|
||||
{
|
||||
DSSI_Descriptor *desc = JLONG_TO_PTR(DSSI_Descriptor,handle);
|
||||
const char *str = desc->LADSPA_Plugin->Maker;
|
||||
|
||||
return (*env)->NewStringUTF (env, str);
|
||||
}
|
||||
|
||||
jstring
|
||||
Java_gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider_getDSSILabel_1
|
||||
(JNIEnv *env, jclass clazz __attribute__((unused)), jlong handle)
|
||||
{
|
||||
DSSI_Descriptor *desc = JLONG_TO_PTR(DSSI_Descriptor,handle);
|
||||
const char *str = desc->LADSPA_Plugin->Label;
|
||||
|
||||
return (*env)->NewStringUTF (env, str);
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,584 @@
|
||||
/* gnu_javax_sound_midi_dssi_DSSISynthesizer.c - DSSI Synth
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath 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.
|
||||
|
||||
GNU Classpath 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 GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
02110-1301 USA.
|
||||
|
||||
Linking this library statically or dynamically with other modules is
|
||||
making a combined work based on this library. Thus, the terms and
|
||||
conditions of the GNU General Public License cover the whole
|
||||
combination.
|
||||
|
||||
As a special exception, the copyright holders of this library give you
|
||||
permission to link this library with independent modules to produce an
|
||||
executable, regardless of the license terms of these independent
|
||||
modules, and to copy and distribute the resulting executable under
|
||||
terms of your choice, provided that you also meet, for each linked
|
||||
independent module, the terms and conditions of the license of that
|
||||
module. An independent module is a module which is not derived from
|
||||
or based on this library. If you modify this library, you may extend
|
||||
this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
/* The original get_port_default() and set_control() routines were
|
||||
* copied from the DSSI source distribution and are covered by the
|
||||
* following copyright and license...
|
||||
*
|
||||
* Copyright 2004 Chris Cannam, Steve Harris and Sean Bolton.
|
||||
*
|
||||
* Permission to use, copy, modify, distribute, and sell this software
|
||||
* for any purpose is hereby granted without fee, provided that the
|
||||
* above copyright notice and this permission notice are included in
|
||||
* all copies or substantial portions of the software.
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
#include <gnu_javax_sound_midi_dssi_DSSISynthesizer.h>
|
||||
#include <math.h>
|
||||
|
||||
#include "dssi_data.h"
|
||||
|
||||
/* Define this for debug output. */
|
||||
#undef DEBUG_DSSI_PROVIDER
|
||||
|
||||
static void set_control (dssi_data *data, snd_seq_event_t *event);
|
||||
|
||||
|
||||
/**
|
||||
* The jack callback routine.
|
||||
*
|
||||
* This function is called by the jack audio system in its own thread
|
||||
* whenever it needs new audio data.
|
||||
*
|
||||
*/
|
||||
static int
|
||||
process (jack_nframes_t nframes, void *arg)
|
||||
{
|
||||
dssi_data *data = (dssi_data *) arg;
|
||||
int index;
|
||||
jack_default_audio_sample_t *buffer;
|
||||
|
||||
/* Look through the event buffer to see if any control values
|
||||
need changing. */
|
||||
for ( index = data->midiEventReadIndex;
|
||||
index != data->midiEventWriteIndex;
|
||||
index = (index + 1) % EVENT_BUFFER_SIZE)
|
||||
{
|
||||
if (data->midiEventBuffer[index].type == SND_SEQ_EVENT_CONTROLLER)
|
||||
set_control (data, & data->midiEventBuffer[index]);
|
||||
}
|
||||
|
||||
if (data->desc->run_synth)
|
||||
{
|
||||
/* Call the synth audio processing routine. */
|
||||
data->desc->run_synth
|
||||
(data->plugin_handle,
|
||||
nframes,
|
||||
&data->midiEventBuffer[data->midiEventReadIndex],
|
||||
data->midiEventWriteIndex - data->midiEventReadIndex);
|
||||
}
|
||||
else
|
||||
if (data->desc->run_multiple_synths)
|
||||
{
|
||||
snd_seq_event_t *events =
|
||||
&data->midiEventBuffer[data->midiEventReadIndex];
|
||||
unsigned long event_count =
|
||||
data->midiEventWriteIndex - data->midiEventReadIndex;
|
||||
|
||||
/* Call the synth audio processing routine. */
|
||||
data->desc->run_multiple_synths
|
||||
(1,
|
||||
& (data->plugin_handle),
|
||||
nframes,
|
||||
&events,
|
||||
&event_count);
|
||||
}
|
||||
|
||||
/* Update the read index on our circular buffer. */
|
||||
data->midiEventReadIndex = data->midiEventWriteIndex;
|
||||
|
||||
/* Copy output from the synth to jack.
|
||||
|
||||
FIXME: This is hack that only gets one channel from the synth and
|
||||
send that to both jack ports (until we handle stero synths
|
||||
properly).
|
||||
|
||||
FIXME: Can we avoid this copying? */
|
||||
buffer = jack_port_get_buffer(data->jack_left_output_port, nframes);
|
||||
memcpy (buffer, data->left_buffer, nframes * sizeof(LADSPA_Data));
|
||||
buffer = jack_port_get_buffer(data->jack_right_output_port, nframes);
|
||||
memcpy (buffer, data->left_buffer, nframes * sizeof(LADSPA_Data));
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Calculate a reasonable default value for a specific control port.
|
||||
* This is mostly copied from the DSSI example code. Copyright info
|
||||
* is found at the top of this file.
|
||||
*
|
||||
*/
|
||||
static LADSPA_Data
|
||||
get_port_default (const LADSPA_Descriptor *plugin,
|
||||
int port, jack_nframes_t sample_rate)
|
||||
{
|
||||
LADSPA_PortRangeHint hint = plugin->PortRangeHints[port];
|
||||
float lower = hint.LowerBound *
|
||||
(LADSPA_IS_HINT_SAMPLE_RATE(hint.HintDescriptor) ? sample_rate : 1.0f);
|
||||
float upper = hint.UpperBound *
|
||||
(LADSPA_IS_HINT_SAMPLE_RATE(hint.HintDescriptor) ? sample_rate : 1.0f);
|
||||
|
||||
if (!LADSPA_IS_HINT_HAS_DEFAULT(hint.HintDescriptor))
|
||||
{
|
||||
if (!LADSPA_IS_HINT_BOUNDED_BELOW(hint.HintDescriptor) ||
|
||||
!LADSPA_IS_HINT_BOUNDED_ABOVE(hint.HintDescriptor))
|
||||
{
|
||||
/* No hint, its not bounded, wild guess */
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
if (lower <= 0.0f && upper >= 0.0f)
|
||||
{
|
||||
/* It spans 0.0, 0.0 is often a good guess */
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
/* No clues, return minimum */
|
||||
return lower;
|
||||
}
|
||||
|
||||
/* Try all the easy ones */
|
||||
|
||||
if (LADSPA_IS_HINT_DEFAULT_0(hint.HintDescriptor))
|
||||
return 0.0f;
|
||||
else if (LADSPA_IS_HINT_DEFAULT_1(hint.HintDescriptor))
|
||||
return 1.0f;
|
||||
else if (LADSPA_IS_HINT_DEFAULT_100(hint.HintDescriptor))
|
||||
return 100.0f;
|
||||
else if (LADSPA_IS_HINT_DEFAULT_440(hint.HintDescriptor))
|
||||
return 440.0f;
|
||||
|
||||
/* All the others require some bounds */
|
||||
|
||||
if (LADSPA_IS_HINT_BOUNDED_BELOW(hint.HintDescriptor)
|
||||
&& (LADSPA_IS_HINT_DEFAULT_MINIMUM(hint.HintDescriptor)))
|
||||
return lower;
|
||||
|
||||
if (LADSPA_IS_HINT_BOUNDED_ABOVE(hint.HintDescriptor))
|
||||
{
|
||||
if (LADSPA_IS_HINT_DEFAULT_MAXIMUM(hint.HintDescriptor))
|
||||
return upper;
|
||||
|
||||
if (LADSPA_IS_HINT_BOUNDED_BELOW(hint.HintDescriptor))
|
||||
{
|
||||
if (LADSPA_IS_HINT_DEFAULT_LOW(hint.HintDescriptor))
|
||||
return lower * 0.75f + upper * 0.25f;
|
||||
else if (LADSPA_IS_HINT_DEFAULT_MIDDLE(hint.HintDescriptor))
|
||||
return lower * 0.5f + upper * 0.5f;
|
||||
else if (LADSPA_IS_HINT_DEFAULT_HIGH(hint.HintDescriptor))
|
||||
return lower * 0.25f + upper * 0.75f;
|
||||
}
|
||||
}
|
||||
|
||||
/* fallback */
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set a control value by mapping the MIDI event to a suitable value
|
||||
* for this control.
|
||||
* This is mostly copied from the DSSI example code. Copyright info
|
||||
* is found at the top of this file.
|
||||
*
|
||||
*/
|
||||
static void
|
||||
set_control(dssi_data *data, snd_seq_event_t *event)
|
||||
{
|
||||
unsigned control = event->data.control.param;
|
||||
unsigned port = data->control_port_map[control];
|
||||
|
||||
const LADSPA_Descriptor *p = data->desc->LADSPA_Plugin;
|
||||
|
||||
LADSPA_PortRangeHintDescriptor d = p->PortRangeHints[port].HintDescriptor;
|
||||
|
||||
LADSPA_Data lb = p->PortRangeHints[port].LowerBound *
|
||||
(LADSPA_IS_HINT_SAMPLE_RATE(p->PortRangeHints[port].HintDescriptor) ?
|
||||
data->sample_rate : 1.0f);
|
||||
|
||||
LADSPA_Data ub = p->PortRangeHints[port].UpperBound *
|
||||
(LADSPA_IS_HINT_SAMPLE_RATE(p->PortRangeHints[port].HintDescriptor) ?
|
||||
data->sample_rate : 1.0f);
|
||||
|
||||
float value = (float)event->data.control.value;
|
||||
|
||||
if (!LADSPA_IS_HINT_BOUNDED_BELOW(d))
|
||||
{
|
||||
if (!LADSPA_IS_HINT_BOUNDED_ABOVE(d))
|
||||
{
|
||||
/* unbounded: might as well leave the value alone. */
|
||||
}
|
||||
else
|
||||
{
|
||||
/* bounded above only. just shift the range. */
|
||||
value = ub - 127.0f + value;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!LADSPA_IS_HINT_BOUNDED_ABOVE(d))
|
||||
{
|
||||
/* bounded below only. just shift the range. */
|
||||
value = lb + value;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* bounded both ends. more interesting. */
|
||||
if (LADSPA_IS_HINT_LOGARITHMIC(d))
|
||||
{
|
||||
const float llb = logf(lb);
|
||||
const float lub = logf(ub);
|
||||
|
||||
value = expf(llb + ((lub - llb) * value / 127.0f));
|
||||
}
|
||||
else
|
||||
{
|
||||
value = lb + ((ub - lb) * value / 127.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef DEBUG_DSSI_PROVIDER
|
||||
printf("MIDI controller %d=%d -> control in %u=%f\n",
|
||||
event->data.control.param,
|
||||
event->data.control.value,
|
||||
data->control_value_map[control], value);
|
||||
#endif
|
||||
|
||||
data->control_values[data->control_value_map[control]] = value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Open a new synthesizer. This currently involves instantiating a
|
||||
* new synth, creating a new jack client connection, and activating
|
||||
* both.
|
||||
*
|
||||
*/
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_javax_sound_midi_dssi_DSSISynthesizer_open_1
|
||||
(JNIEnv *env, jclass clazz __attribute__((unused)), jlong handle)
|
||||
{
|
||||
unsigned int port_count, j, cindex;
|
||||
const char **ports;
|
||||
int controller = 0;
|
||||
dssi_data *data = (dssi_data *) (long) handle;
|
||||
if ((data->jack_client = jack_client_new (data->desc->LADSPA_Plugin->Label)) == 0)
|
||||
{
|
||||
/* JCL_ThrowException (env, "javax/sound/midi/MidiUnavailableException", */
|
||||
JCL_ThrowException (env, "java/io/IOException",
|
||||
"can't create jack client");
|
||||
return;
|
||||
}
|
||||
|
||||
/* Get the jack sample rate, which may be used in default control port
|
||||
value calculations. */
|
||||
data->sample_rate = jack_get_sample_rate (data->jack_client);
|
||||
|
||||
data->plugin_handle =
|
||||
(data->desc->LADSPA_Plugin->instantiate)(data->desc->LADSPA_Plugin,
|
||||
data->sample_rate);
|
||||
|
||||
if (jack_set_process_callback (data->jack_client, process, data) != 0)
|
||||
{
|
||||
JCL_ThrowException (env, "java/io/IOException",
|
||||
"can't set jack process callback");
|
||||
return;
|
||||
}
|
||||
|
||||
data->jack_left_output_port =
|
||||
jack_port_register (data->jack_client, "output_left",
|
||||
JACK_DEFAULT_AUDIO_TYPE, JackPortIsOutput, 0);
|
||||
data->jack_right_output_port =
|
||||
jack_port_register (data->jack_client, "output_right",
|
||||
JACK_DEFAULT_AUDIO_TYPE, JackPortIsOutput, 0);
|
||||
|
||||
/* Count the number of controls and audio ouput ports. */
|
||||
port_count = data->control_count = 0;
|
||||
for (j = 0; j < data->desc->LADSPA_Plugin->PortCount; j++)
|
||||
{
|
||||
LADSPA_PortDescriptor pod =
|
||||
data->desc->LADSPA_Plugin->PortDescriptors[j];
|
||||
|
||||
if (LADSPA_IS_PORT_AUDIO(pod) && LADSPA_IS_PORT_OUTPUT(pod))
|
||||
port_count++;
|
||||
else if (LADSPA_IS_PORT_CONTROL(pod) && LADSPA_IS_PORT_INPUT(pod))
|
||||
data->control_count++;
|
||||
}
|
||||
|
||||
/* Allocate the array of control values. */
|
||||
data->control_values =
|
||||
(LADSPA_Data *) JCL_malloc (env,
|
||||
data->control_count * sizeof (LADSPA_Data));
|
||||
|
||||
/* Initialize the MIDI control map. */
|
||||
memset (data->control_value_map, 0, data->control_count * sizeof(unsigned));
|
||||
|
||||
/* Create buffers for each port. */
|
||||
for (cindex = 0, j = 0; j < data->desc->LADSPA_Plugin->PortCount; j++)
|
||||
{
|
||||
LADSPA_PortDescriptor pod =
|
||||
data->desc->LADSPA_Plugin->PortDescriptors[j];
|
||||
if (LADSPA_IS_PORT_AUDIO(pod) && LADSPA_IS_PORT_OUTPUT(pod))
|
||||
{
|
||||
data->left_buffer =
|
||||
(float *) calloc(jack_get_buffer_size(data->jack_client),
|
||||
sizeof(float));
|
||||
(data->desc->LADSPA_Plugin->connect_port)(data->plugin_handle, j,
|
||||
data->left_buffer);
|
||||
}
|
||||
else
|
||||
if (LADSPA_IS_PORT_CONTROL(pod) && LADSPA_IS_PORT_INPUT(pod))
|
||||
{
|
||||
/* This is an input control port. Connect it to a properly
|
||||
initialized value in our controller value array. */
|
||||
(data->desc->LADSPA_Plugin->connect_port)
|
||||
(data->plugin_handle, j, &(data->control_values[cindex]));
|
||||
data->control_values[cindex] =
|
||||
get_port_default (data->desc->LADSPA_Plugin,
|
||||
j, data->sample_rate);
|
||||
|
||||
/* Set up the mapping between MIDI controllers and this
|
||||
contoller value. */
|
||||
if (data->desc->get_midi_controller_for_port)
|
||||
{
|
||||
controller = data->desc->
|
||||
get_midi_controller_for_port(data->plugin_handle, j);
|
||||
|
||||
if ((controller != DSSI_NONE) && DSSI_IS_CC(controller))
|
||||
{
|
||||
data->control_value_map[DSSI_CC_NUMBER(controller)] = cindex;
|
||||
data->control_port_map[DSSI_CC_NUMBER(controller)] = j;
|
||||
|
||||
#ifdef DEBUG_DSSI_PROVIDER
|
||||
printf ("MIDI Controller 0x%x [%s] = %g\n",
|
||||
DSSI_CC_NUMBER(controller),
|
||||
data->desc->LADSPA_Plugin->PortNames[j],
|
||||
data->control_values[cindex]);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
cindex++;
|
||||
}
|
||||
}
|
||||
|
||||
(data->desc->LADSPA_Plugin->activate)(data->plugin_handle);
|
||||
|
||||
if (jack_activate (data->jack_client))
|
||||
JCL_ThrowException (env, "java/io/IOException",
|
||||
"can't activate jack client");
|
||||
|
||||
/* Try to connect the synth output to hardware audio ports. */
|
||||
ports = jack_get_ports (data->jack_client, NULL, NULL,
|
||||
JackPortIsPhysical | JackPortIsInput);
|
||||
if (ports)
|
||||
{
|
||||
if (ports[0] && ports[1])
|
||||
{
|
||||
/* Don't bother checking return values. Failing is OK. */
|
||||
jack_connect (data->jack_client,
|
||||
jack_port_name (data->jack_left_output_port),
|
||||
ports[0]);
|
||||
jack_connect (data->jack_client,
|
||||
jack_port_name (data->jack_right_output_port),
|
||||
ports[1]);
|
||||
}
|
||||
free(ports);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This is called when we receive a new MIDI CONTROL CHANGE message.
|
||||
* Simply stick an appropriate event in the event buffer. This will
|
||||
* get processed in the jack callback function.
|
||||
*/
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_javax_sound_midi_dssi_DSSISynthesizer_controlChange_1
|
||||
(JNIEnv *env __attribute__((unused)), jclass clazz __attribute__((unused)),
|
||||
jlong handle, jint channel, jint control, jint value)
|
||||
{
|
||||
dssi_data *data = JLONG_TO_PTR(dssi_data,handle);
|
||||
|
||||
/* Insert this event in the event buffer. */
|
||||
snd_seq_event_t *ev = & data->midiEventBuffer[data->midiEventWriteIndex];
|
||||
|
||||
/* Set the event value. */
|
||||
snd_seq_ev_set_controller (ev, channel, control, value);
|
||||
|
||||
data->midiEventWriteIndex =
|
||||
(data->midiEventWriteIndex + 1) % EVENT_BUFFER_SIZE;
|
||||
}
|
||||
|
||||
/**
|
||||
* This is called when we receive a new MIDI NOTE ON message. Simply
|
||||
* stick an appropriate event in the event buffer. This will get
|
||||
* processed in the jack callback function.
|
||||
*/
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_javax_sound_midi_dssi_DSSISynthesizer_noteOn_1
|
||||
(JNIEnv *env __attribute__((unused)), jclass clazz __attribute__((unused)),
|
||||
jlong handle, jint channel, jint note, jint velocity)
|
||||
{
|
||||
dssi_data *data = JLONG_TO_PTR(dssi_data,handle);
|
||||
|
||||
/* Insert this event in the event buffer. */
|
||||
snd_seq_event_t *ev = & data->midiEventBuffer[data->midiEventWriteIndex];
|
||||
|
||||
ev->type = SND_SEQ_EVENT_NOTEON;
|
||||
ev->data.control.channel = channel;
|
||||
ev->data.note.note = note;
|
||||
ev->data.note.velocity = velocity;
|
||||
|
||||
data->midiEventWriteIndex =
|
||||
(data->midiEventWriteIndex + 1) % EVENT_BUFFER_SIZE;
|
||||
}
|
||||
|
||||
/**
|
||||
* This is called when we receive a new MIDI NOTE OFF message. Simply
|
||||
* stick an appropriate event in the event buffer. This will get
|
||||
* processed in the jack callback function.
|
||||
*/
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_javax_sound_midi_dssi_DSSISynthesizer_noteOff_1
|
||||
(JNIEnv *env __attribute__((unused)),
|
||||
jclass clazz __attribute__((unused)),
|
||||
jlong handle, jint channel, jint note, jint velocity)
|
||||
{
|
||||
dssi_data *data = JLONG_TO_PTR(dssi_data,handle);
|
||||
|
||||
/* Insert this event in the event buffer. */
|
||||
snd_seq_event_t *ev = & data->midiEventBuffer[data->midiEventWriteIndex];
|
||||
|
||||
ev->type = SND_SEQ_EVENT_NOTEOFF;
|
||||
ev->data.control.channel = channel;
|
||||
ev->data.note.note = note;
|
||||
ev->data.note.velocity = velocity;
|
||||
|
||||
data->midiEventWriteIndex =
|
||||
(data->midiEventWriteIndex + 1) % EVENT_BUFFER_SIZE;
|
||||
}
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_javax_sound_midi_dssi_DSSISynthesizer_setPolyPressure_1
|
||||
(JNIEnv *env __attribute__((unused)), jclass clazz __attribute__((unused)),
|
||||
jlong handle __attribute__((unused)), jint channel __attribute__((unused)),
|
||||
jint note __attribute__((unused)), jint velocity __attribute__((unused)))
|
||||
{
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
Java_gnu_javax_sound_midi_dssi_DSSISynthesizer_getPolyPressure_1
|
||||
(JNIEnv *env __attribute__((unused)), jclass clazz __attribute__((unused)),
|
||||
jlong handle __attribute__((unused)), jint channel __attribute__((unused)),
|
||||
jint note __attribute__((unused)))
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_javax_sound_midi_dssi_DSSISynthesizer_close_1
|
||||
(JNIEnv *env __attribute__((unused)), jclass clazz __attribute__((unused)),
|
||||
jlong handle __attribute__((unused)))
|
||||
{
|
||||
}
|
||||
|
||||
/* FIXME: These next three functions are really inefficient because
|
||||
we're instantiating and cleaning up plugin instances just to query
|
||||
values. */
|
||||
|
||||
JNIEXPORT jstring JNICALL
|
||||
Java_gnu_javax_sound_midi_dssi_DSSISynthesizer_getProgramName_1
|
||||
(JNIEnv *env, jclass clazz __attribute__((unused)),
|
||||
jlong handle, jint index)
|
||||
{
|
||||
LADSPA_Handle lhandle;
|
||||
jstring name = (jstring) NULL;
|
||||
dssi_data *data = JLONG_TO_PTR(dssi_data, handle);
|
||||
if (data->desc->get_program == NULL)
|
||||
return NULL;
|
||||
lhandle =
|
||||
(data->desc->LADSPA_Plugin->instantiate)(data->desc->LADSPA_Plugin,
|
||||
48000);
|
||||
const DSSI_Program_Descriptor *program =
|
||||
(data->desc->get_program)(lhandle, (unsigned long) index);
|
||||
if (program)
|
||||
name = (*env)->NewStringUTF (env, program->Name);
|
||||
(data->desc->LADSPA_Plugin->cleanup)(lhandle);
|
||||
|
||||
return name;
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
Java_gnu_javax_sound_midi_dssi_DSSISynthesizer_getProgramBank_1
|
||||
(JNIEnv *env __attribute__((unused)), jclass clazz __attribute__((unused)),
|
||||
jlong handle, jint index)
|
||||
{
|
||||
LADSPA_Handle lhandle;
|
||||
jint result = -1;
|
||||
dssi_data *data = JLONG_TO_PTR(dssi_data, handle);
|
||||
lhandle =
|
||||
(data->desc->LADSPA_Plugin->instantiate)(data->desc->LADSPA_Plugin,
|
||||
48000);
|
||||
const DSSI_Program_Descriptor *program =
|
||||
(data->desc->get_program)(lhandle, (unsigned long) index);
|
||||
if (program)
|
||||
result = (jint) program->Bank;
|
||||
(data->desc->LADSPA_Plugin->cleanup)(lhandle);
|
||||
return result;
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
Java_gnu_javax_sound_midi_dssi_DSSISynthesizer_getProgramProgram_1
|
||||
(JNIEnv *env __attribute__((unused)), jclass clazz __attribute__((unused)),
|
||||
jlong handle, jint index)
|
||||
{
|
||||
LADSPA_Handle lhandle;
|
||||
jint result = -1;
|
||||
dssi_data *data = JLONG_TO_PTR(dssi_data, handle);
|
||||
lhandle =
|
||||
(data->desc->LADSPA_Plugin->instantiate)(data->desc->LADSPA_Plugin,
|
||||
48000);
|
||||
const DSSI_Program_Descriptor *program =
|
||||
(data->desc->get_program)(lhandle, (unsigned long) index);
|
||||
if (program)
|
||||
result = (jint) program->Program;
|
||||
(data->desc->LADSPA_Plugin->cleanup)(lhandle);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
Java_gnu_javax_sound_midi_dssi_DSSISynthesizer_selectProgram_1
|
||||
(JNIEnv *env __attribute__((unused)), jclass clazz __attribute__((unused)),
|
||||
jlong handle, jint bank, jint program)
|
||||
{
|
||||
dssi_data *data = JLONG_TO_PTR(dssi_data, handle);
|
||||
|
||||
(data->desc->select_program)(data->plugin_handle,
|
||||
(unsigned) bank, (unsigned) program);
|
||||
}
|
||||
@@ -45,10 +45,8 @@ target_triplet = @target@
|
||||
subdir = native/jni/qt-peer
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -121,10 +119,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -261,6 +263,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -274,6 +277,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
|
||||
@@ -35,6 +35,7 @@ this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
#include <assert.h>
|
||||
#include <QWidget>
|
||||
#include <QPoint>
|
||||
|
||||
|
||||
@@ -42,10 +42,8 @@ target_triplet = @target@
|
||||
subdir = native/jni/xmlj
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -97,10 +95,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -237,6 +239,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -250,6 +253,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
|
||||
@@ -39,10 +39,8 @@ target_triplet = @target@
|
||||
subdir = native/target/Linux
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -75,10 +73,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -215,6 +217,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -228,6 +231,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
|
||||
@@ -39,10 +39,8 @@ target_triplet = @target@
|
||||
subdir = native/target
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -84,10 +82,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -224,6 +226,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -237,6 +240,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
|
||||
@@ -39,10 +39,8 @@ target_triplet = @target@
|
||||
subdir = native/target/generic
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
|
||||
$(top_srcdir)/../../config/lead-dot.m4 \
|
||||
$(top_srcdir)/../../config/no-executables.m4 \
|
||||
$(top_srcdir)/../../libtool.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
|
||||
$(top_srcdir)/m4/acattribute.m4 $(top_srcdir)/m4/accross.m4 \
|
||||
$(top_srcdir)/m4/acinclude.m4 $(top_srcdir)/m4/iconv.m4 \
|
||||
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
|
||||
$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
|
||||
@@ -75,10 +73,14 @@ CLASSPATH_MODULE = @CLASSPATH_MODULE@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CREATE_ALSA_LIBRARIES_FALSE = @CREATE_ALSA_LIBRARIES_FALSE@
|
||||
CREATE_ALSA_LIBRARIES_TRUE = @CREATE_ALSA_LIBRARIES_TRUE@
|
||||
CREATE_API_DOCS_FALSE = @CREATE_API_DOCS_FALSE@
|
||||
CREATE_API_DOCS_TRUE = @CREATE_API_DOCS_TRUE@
|
||||
CREATE_CORE_JNI_LIBRARIES_FALSE = @CREATE_CORE_JNI_LIBRARIES_FALSE@
|
||||
CREATE_CORE_JNI_LIBRARIES_TRUE = @CREATE_CORE_JNI_LIBRARIES_TRUE@
|
||||
CREATE_DSSI_LIBRARIES_FALSE = @CREATE_DSSI_LIBRARIES_FALSE@
|
||||
CREATE_DSSI_LIBRARIES_TRUE = @CREATE_DSSI_LIBRARIES_TRUE@
|
||||
CREATE_GTK_PEER_LIBRARIES_FALSE = @CREATE_GTK_PEER_LIBRARIES_FALSE@
|
||||
CREATE_GTK_PEER_LIBRARIES_TRUE = @CREATE_GTK_PEER_LIBRARIES_TRUE@
|
||||
CREATE_JNI_HEADERS_FALSE = @CREATE_JNI_HEADERS_FALSE@
|
||||
@@ -215,6 +217,7 @@ build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
default_toolkit = @default_toolkit@
|
||||
exec_prefix = @exec_prefix@
|
||||
glibjdir = @glibjdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
@@ -228,6 +231,7 @@ libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
nativelibdir = @nativelibdir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
|
||||
Reference in New Issue
Block a user