summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetteri Räty <betelgeuse@gentoo.org>2005-11-11 19:20:31 +0000
committerPetteri Räty <betelgeuse@gentoo.org>2005-11-11 19:20:31 +0000
commit64c66bb20b4d4cf137da3f3d21aaebb5d59c11ea (patch)
treefb92da7ae41590ff0e15d987a2dac6d3fc1ff7e0 /dev-java/gnu-classpath
parentAdded dssi description and improved cairo for dev-java/gnu-classpath. (diff)
downloadhistorical-64c66bb20b4d4cf137da3f3d21aaebb5d59c11ea.tar.gz
historical-64c66bb20b4d4cf137da3f3d21aaebb5d59c11ea.tar.bz2
historical-64c66bb20b4d4cf137da3f3d21aaebb5d59c11ea.zip
Version bump. In this release the cairo use flag was added back. The new alsa and dssi use flags are for different MIDI providers. Also added a debug use flag. The ebuild now installs files like README and NEWS. The keywords for sparc, ppc and ppc64 were dropped until they can test media-libs/dssi.
Package-Manager: portage-2.0.53_rc7
Diffstat (limited to 'dev-java/gnu-classpath')
-rw-r--r--dev-java/gnu-classpath/ChangeLog11
-rw-r--r--dev-java/gnu-classpath/Manifest12
-rw-r--r--dev-java/gnu-classpath/files/0.19-dssi.patch33
-rw-r--r--dev-java/gnu-classpath/files/0.19-dssi_data.h121
-rw-r--r--dev-java/gnu-classpath/files/digest-gnu-classpath-0.191
-rw-r--r--dev-java/gnu-classpath/gnu-classpath-0.19.ebuild82
6 files changed, 255 insertions, 5 deletions
diff --git a/dev-java/gnu-classpath/ChangeLog b/dev-java/gnu-classpath/ChangeLog
index bd3eefb4f3c2..f3d4bd3f0c78 100644
--- a/dev-java/gnu-classpath/ChangeLog
+++ b/dev-java/gnu-classpath/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for dev-java/gnu-classpath
# Copyright 2000-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-java/gnu-classpath/ChangeLog,v 1.42 2005/10/29 11:26:54 betelgeuse Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-java/gnu-classpath/ChangeLog,v 1.43 2005/11/11 19:20:31 betelgeuse Exp $
+
+*gnu-classpath-0.19 (11 Nov 2005)
+
+ 11 Nov 2005; Petteri Räty <betelgeuse@gentoo.org> +files/0.19-dssi.patch,
+ +files/0.19-dssi_data.h, +gnu-classpath-0.19.ebuild:
+ Version bump. In this release the cairo use flag was added back. The new
+ alsa and dssi use flags are for different MIDI providers. Also added a debug
+ use flag. The ebuild now installs files like README and NEWS. The keywords
+ for sparc, ppc and ppc64 were dropped until they can test media-libs/dssi.
28 Oct 2005; Thomas Matthijs <axxo@gentoo.org> +files/gtk28.patch,
gnu-classpath-0.18.ebuild:
diff --git a/dev-java/gnu-classpath/Manifest b/dev-java/gnu-classpath/Manifest
index 815ddce15d89..31815222ab09 100644
--- a/dev-java/gnu-classpath/Manifest
+++ b/dev-java/gnu-classpath/Manifest
@@ -1,19 +1,23 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
-MD5 f57df651208bdc72fca64738d1ca373a ChangeLog 5863
+MD5 80ef117f9c6dd551f8c084dfd7fd04e7 ChangeLog 6339
+MD5 50601eed7ae1e20d101af4a58b903946 files/0.19-dssi.patch 1443
+MD5 7e2cbdd8bd825a0e9b8fff8312f08c23 files/0.19-dssi_data.h 4174
MD5 9b2c43cfbb9e8d325407a9ddd2068a5d files/digest-gnu-classpath-0.14 67
MD5 2690159fdd3e679de05cd6daed73f4da files/digest-gnu-classpath-0.15-r1 67
MD5 e8174eff88cbeae8528507c699821eea files/digest-gnu-classpath-0.18 67
+MD5 2fa214c9b3ef402739df2a954d83c46e files/digest-gnu-classpath-0.19 67
MD5 887f044e4350323f1324cc1368943c1a files/gtk28.patch 1522
MD5 f076bc9c2bfe9d094c6255f2beec9abc gnu-classpath-0.14.ebuild 1195
MD5 d04460407e0f569ab509eaf458ae97f3 gnu-classpath-0.15-r1.ebuild 1638
MD5 b906f7e1050511b7a12b99e9b79d5d3b gnu-classpath-0.18.ebuild 1927
+MD5 8ce23286ffee0730491b25cde92ccf5e gnu-classpath-0.19.ebuild 2307
MD5 a6ec7d7724fbd068ffb39b5be56134ed metadata.xml 157
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
-iD8DBQFDY1y9QiJ/wx066S4RAgkHAJ49PiI2OyBTkx+xLeNI3/WmyUakAACffT/w
-FyJlz5ePi+DCeJUQnY+i658=
-=jCH7
+iD8DBQFDdO8NQiJ/wx066S4RAqy6AJ4pkRQhI93OS7e3Rdw6BHXCecij+QCdFl8z
+qhJQrg78+pEZoQ+nhyODIUY=
+=z/FW
-----END PGP SIGNATURE-----
diff --git a/dev-java/gnu-classpath/files/0.19-dssi.patch b/dev-java/gnu-classpath/files/0.19-dssi.patch
new file mode 100644
index 000000000000..be7eaf01a589
--- /dev/null
+++ b/dev-java/gnu-classpath/files/0.19-dssi.patch
@@ -0,0 +1,33 @@
+Index: configure.ac
+===================================================================
+RCS file: /cvsroot/classpath/classpath/configure.ac,v
+retrieving revision 1.118
+diff -u -r1.118 configure.ac
+--- configure.ac 7 Nov 2005 14:25:54 -0000 1.118
++++ configure.ac 10 Nov 2005 10:50:23 -0000
+@@ -118,7 +118,7 @@
+ dnl -----------------------------------------------------------
+ dnl DSSI code (enabled by default)
+ dnl -----------------------------------------------------------
+-AC_ARG_ENABLE([alsa],
++AC_ARG_ENABLE([dssi],
+ [AS_HELP_STRING(--disable-dssi,compile DSSI providers (enable by --enable-dssi) [default=yes])],
+ [case "${enableval}" in
+ yes) COMPILE_DSSI=yes ;;
+Index: native/jni/midi-dssi/Makefile.am
+===================================================================
+RCS file: /cvsroot/classpath/classpath/native/jni/midi-dssi/Makefile.am,v
+retrieving revision 1.2
+diff -u -r1.2 Makefile.am
+--- native/jni/midi-dssi/Makefile.am 23 Oct 2005 16:59:09 -0000 1.2
++++ native/jni/midi-dssi/Makefile.am 10 Nov 2005 10:50:23 -0000
+@@ -1,7 +1,8 @@
+ nativelib_LTLIBRARIES = libgjsmdssi.la
+
+ libgjsmdssi_la_SOURCES = gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider.c \
+-gnu_javax_sound_midi_dssi_DSSISynthesizer.c
++ gnu_javax_sound_midi_dssi_DSSISynthesizer.c \
++ dssi_data.h
+
+ libgjsmdssi_la_LIBADD = $(top_builddir)/native/jni/classpath/jcl.lo -ljack
+
diff --git a/dev-java/gnu-classpath/files/0.19-dssi_data.h b/dev-java/gnu-classpath/files/0.19-dssi_data.h
new file mode 100644
index 000000000000..8278f7b9e18a
--- /dev/null
+++ b/dev-java/gnu-classpath/files/0.19-dssi_data.h
@@ -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;
+
diff --git a/dev-java/gnu-classpath/files/digest-gnu-classpath-0.19 b/dev-java/gnu-classpath/files/digest-gnu-classpath-0.19
new file mode 100644
index 000000000000..91be78a97c8c
--- /dev/null
+++ b/dev-java/gnu-classpath/files/digest-gnu-classpath-0.19
@@ -0,0 +1 @@
+MD5 0b93b1c1dd3d33ef7fb6a47dbb29e41d classpath-0.19.tar.gz 6765716
diff --git a/dev-java/gnu-classpath/gnu-classpath-0.19.ebuild b/dev-java/gnu-classpath/gnu-classpath-0.19.ebuild
new file mode 100644
index 000000000000..269428607027
--- /dev/null
+++ b/dev-java/gnu-classpath/gnu-classpath-0.19.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/gnu-classpath/gnu-classpath-0.19.ebuild,v 1.1 2005/11/11 19:20:31 betelgeuse Exp $
+
+inherit eutils autotools
+
+MY_P=${P/gnu-/}
+DESCRIPTION="Free core class libraries for use with virtual machines and compilers for the Java programming language"
+SRC_URI="ftp://ftp.gnu.org/gnu/classpath/${MY_P}.tar.gz"
+HOMEPAGE="http://www.gnu.org/software/classpath"
+
+LICENSE="GPL-2-with-linking-exception"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+
+# Add the doc use flag after the upstream build system is improved
+# See their bug 24025
+
+IUSE="alsa cairo debug dssi examples gtk xml2"
+
+RDEPEND="alsa? ( media-libs/alsa-lib )
+ dssi? ( >=media-libs/dssi-0.9 )
+ gtk? ( >=x11-libs/gtk+-2.4
+ >=dev-libs/glib-2.0
+ virtual/x11
+ cairo? ( >=x11-libs/cairo-0.5.0 )
+ )
+ xml2? ( >=dev-libs/libxml2-2.6.8 >=dev-libs/libxslt-1.1.11 )"
+
+DEPEND="app-arch/zip
+ dev-java/jikes
+ ${REPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+
+ cp ${FILESDIR}/${PV}-dssi_data.h native/jni/midi-dssi/dssi_data.h \
+ || die "Copying dssi_data.h failed."
+
+ epatch ${FILESDIR}/${PV}-dssi.patch
+ eautoconf
+}
+
+src_compile() {
+ # Note: This is written in a way to easily support GCJ and other compilers
+ # at a later point. Currently Gentoo uses mainly GCJ 3.3 (from the
+ # corresponding GCC) which cannot compile GNU Classpath correctly.
+ # Another possibility would be ECJ (from Eclipse).
+ local compiler="--with-jikes"
+
+ econf ${compiler} \
+ $(use_enable alsa) \
+ $(use_enable cairo gtk-cairo) \
+ $(use_enable debug ) \
+ $(use_enable examples) \
+ $(use_enable gtk gtk-peer) \
+ $(use_enable xml2 xmlj) \
+ $(use_enable dssi ) \
+ --enable-jni \
+ --disable-dependency-tracking \
+ || die "configure failed"
+# disabled for now... see above.
+# $(use_with doc gjdoc) \
+
+ emake || die "make failed"
+}
+
+src_install() {
+ einstall || die "einstall failed"
+ dodoc AUTHORS BUGS ChangeLog* HACKING NEWS README THANKYOU TODO
+}
+
+pkg_postinst() {
+ if use gtk && use cairo; then
+ einfo "GNU Classpath was compiled with preliminary cairo support."
+ einfo "To use that functionality set the system property"
+ einfo "gnu.java.awt.peer.gtk.Graphics to Graphics2D at runtime."
+ fi
+}