summaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
authorGreg Lewis <glewis@FreeBSD.org>2003-05-15 16:34:36 +0000
committerGreg Lewis <glewis@FreeBSD.org>2003-05-15 16:34:36 +0000
commit666153e3b36735345aee68e0777efc0ea3d38a50 (patch)
tree65eee602f863ab9328df65e00e08ea89a87c36d3 /java
parent* Update to exim-4.20, featuring host of minor bugfixes and some feature (diff)
. Add the java/jmp port.
JMP is a profiler for java that can be used to trace objects usage and method timings. JMP uses the JVMPI interface to gather statistics and interact with the JVM. JMP uses a GTK+ interface to show the status. PR: 47151, 48474, 50325 Submitted by: Ronald Klop <ronald@cs.vu.nl>
Notes
Notes: svn path=/head/; revision=81043
Diffstat (limited to '')
-rw-r--r--java/Makefile1
-rw-r--r--java/jmp/Makefile43
-rw-r--r--java/jmp/distinfo1
-rw-r--r--java/jmp/files/patch-Makefile.am19
-rw-r--r--java/jmp/files/patch-Makefile.in19
-rw-r--r--java/jmp/files/patch-configure12
-rw-r--r--java/jmp/files/patch-instance_owners.c15
-rw-r--r--java/jmp/files/patch-jmp.c45
-rw-r--r--java/jmp/pkg-descr8
-rw-r--r--java/jmp/pkg-plist5
10 files changed, 168 insertions, 0 deletions
diff --git a/java/Makefile b/java/Makefile
index 062aeacd56af..ce4361ae943d 100644
--- a/java/Makefile
+++ b/java/Makefile
@@ -51,6 +51,7 @@
SUBDIR += jikes
SUBDIR += jlex
SUBDIR += jlint
+ SUBDIR += jmp
SUBDIR += jre
SUBDIR += jsdk
SUBDIR += jump
diff --git a/java/jmp/Makefile b/java/jmp/Makefile
new file mode 100644
index 000000000000..6610824d04f4
--- /dev/null
+++ b/java/jmp/Makefile
@@ -0,0 +1,43 @@
+# New ports collection makefile for: jmp
+# Date created: 11 January 2003
+# Whom: Ronald Klop <ronald@cs.vu.nl>
+#
+# $FreeBSD$
+#
+
+PORTNAME= jmp
+PORTVERSION= 0.29
+CATEGORIES= java devel
+MASTER_SITES= http://www.khelekore.org/jmp/
+
+MAINTAINER= ronald@cs.vu.nl
+COMMENT= Java Memory Profiler
+
+BUILD_DEPENDS= ${LOCALBASE}/bin/bison:${PORTSDIR}/devel/bison
+LIB_DEPENDS= intl:${PORTSDIR}/devel/gettext
+
+.if defined(WITHOUT_X11)
+CONFIGURE_ARGS= --enable-noui
+.else
+USE_XLIB= yes
+LIB_DEPENDS+= gtk-x11-2.0:${PORTSDIR}/x11-toolkits/gtk20
+.endif
+
+.if defined(WITH_DEBUG)
+CFLAGS+= -DJMPDEBUG -g
+.endif
+
+USE_LIBTOOL= yes
+USE_GMAKE= yes
+#USE_JAVA= 1.2+
+USE_JAVA= 1.3
+NEED_JAVAC= yes
+
+MAKE_FLAGS= JAVAC=${JAVAC} JAVAH=${JAVAH}
+
+GNU_CONFIGURE= yes
+
+CONFIGURE_ENV= JAVA_HOME="${JAVA_HOME}"
+INSTALLS_SHLIB= yes
+
+.include <bsd.port.mk>
diff --git a/java/jmp/distinfo b/java/jmp/distinfo
new file mode 100644
index 000000000000..85cfd4775e54
--- /dev/null
+++ b/java/jmp/distinfo
@@ -0,0 +1 @@
+MD5 (jmp-0.29.tar.gz) = ba923307a088b81f08d94faaf8ca8ade
diff --git a/java/jmp/files/patch-Makefile.am b/java/jmp/files/patch-Makefile.am
new file mode 100644
index 000000000000..9795b08b1c4e
--- /dev/null
+++ b/java/jmp/files/patch-Makefile.am
@@ -0,0 +1,19 @@
+$FreeBSD$
+
+--- Makefile.am Tue May 13 22:11:38 2003
++++ Makefile.am Tue May 13 22:12:05 2003
+@@ -42,12 +42,12 @@
+ gcc -shared -o $@ ${OBJECTS} -Wl,--kill-at
+
+ jmp/JMPController.class : java/jmp/JMPController.java
+- javac -sourcepath java -d . $<
++ ${JAVAC} -sourcepath java -d . $<
+
+ # javah does not update file modification time, so touch it
+ # otherwise we will remake file every time
+ jmp_JMPController.h: jmp/JMPController.class
+- javah jmp.JMPController
++ ${JAVAH} jmp.JMPController
+ @touch jmp_JMPController.h
+
+ javadocs:
diff --git a/java/jmp/files/patch-Makefile.in b/java/jmp/files/patch-Makefile.in
new file mode 100644
index 000000000000..847866fdbb7f
--- /dev/null
+++ b/java/jmp/files/patch-Makefile.in
@@ -0,0 +1,19 @@
+$FreeBSD$
+
+--- Makefile.in Tue May 13 22:11:43 2003
++++ Makefile.in Tue May 13 22:12:29 2003
+@@ -598,12 +598,12 @@
+ gcc -shared -o $@ ${OBJECTS} -Wl,--kill-at
+
+ jmp/JMPController.class : java/jmp/JMPController.java
+- javac -sourcepath java -d . $<
++ ${JAVAC} -sourcepath java -d . $<
+
+ # javah does not update file modification time, so touch it
+ # otherwise we will remake file every time
+ jmp_JMPController.h: jmp/JMPController.class
+- javah jmp.JMPController
++ ${JAVAH} jmp.JMPController
+ @touch jmp_JMPController.h
+
+ javadocs:
diff --git a/java/jmp/files/patch-configure b/java/jmp/files/patch-configure
new file mode 100644
index 000000000000..1e1a32c90f62
--- /dev/null
+++ b/java/jmp/files/patch-configure
@@ -0,0 +1,12 @@
+$FreeBSD$
+
+--- configure.orig Fri Feb 28 08:28:00 2003
++++ configure Fri Feb 28 08:28:31 2003
+@@ -11241,6 +11241,7 @@
+
+
+ case $target_os in
++ freebsd*) java_os=freebsd;;
+ linux*) java_os=linux;;
+ solaris*) java_os=solaris;;
+ cygwin*) java_os=win32;;
diff --git a/java/jmp/files/patch-instance_owners.c b/java/jmp/files/patch-instance_owners.c
new file mode 100644
index 000000000000..23bff9b42dbb
--- /dev/null
+++ b/java/jmp/files/patch-instance_owners.c
@@ -0,0 +1,15 @@
+$FreeBSD$
+
+--- instance_owners.c Tue May 13 20:28:40 2003
++++ instance_owners.c Tue May 13 20:28:11 2003
+@@ -11,6 +11,10 @@
+ #include <jmp-config.h>
+ #include <inttypes.h>
+
++#if __FreeBSD__ < 5
++#define PRId32 "d"
++#endif
++
+ enum {
+ INFO,
+ NUM_COLUMNS
diff --git a/java/jmp/files/patch-jmp.c b/java/jmp/files/patch-jmp.c
new file mode 100644
index 000000000000..888f0a5dfd48
--- /dev/null
+++ b/java/jmp/files/patch-jmp.c
@@ -0,0 +1,45 @@
+$FreeBSD$
+
+--- jmp.c Tue May 13 23:17:03 2003
++++ jmp.c Tue May 13 23:17:47 2003
+@@ -1548,10 +1548,11 @@
+ free (cf);
+ }
+
+-void enable_method_events () {
++void enable_method_events_and_stacks (int get_stacks) {
+ /* Ok, the thread stacks are bogous, clear them all and try to get
+ * real stacks, timing will be a bit bogous, but not to much...
+ */
++ if (get_stacks) {
+ jmphash_lock (threads);
+ jmphash_lock (methods);
+ jvmpi->DisableGC ();
+@@ -1559,6 +1560,7 @@
+ jvmpi->EnableGC ();
+ jmphash_unlock (methods);
+ jmphash_unlock (threads);
++ }
+
+ method_profiling = 1;
+ /*
+@@ -1572,6 +1574,10 @@
+ jvmpi->EnableEvent (JVMPI_EVENT_METHOD_EXIT, NULL);
+ }
+
++void enable_method_events () {
++ enable_method_events_and_stacks (1);
++}
++
+ static void enable_dump_events () {
+ dump_enabled = 1;
+ jvmpi->EnableEvent (JVMPI_EVENT_DATA_DUMP_REQUEST, NULL);
+@@ -1603,7 +1609,7 @@
+ enable_object_events ();
+ enable_thread_events ();
+ if (method_profiling)
+- enable_method_events ();
++ enable_method_events_and_stacks (0);
+ if (dump_enabled)
+ enable_dump_events ();
+ if (monitor_profiling)
diff --git a/java/jmp/pkg-descr b/java/jmp/pkg-descr
new file mode 100644
index 000000000000..7e71745723e6
--- /dev/null
+++ b/java/jmp/pkg-descr
@@ -0,0 +1,8 @@
+JMP is a profiler for java that can be used to trace objects usage and
+method timings. JMP uses the JVMPI interface to gather statistics and
+interact with the JVM. JMP uses a GTK+ interface to show the status.
+
+Usage:
+java -Xrunjmp <your-class>
+
+WWW: http://www.khelekore.org/jmp/
diff --git a/java/jmp/pkg-plist b/java/jmp/pkg-plist
new file mode 100644
index 000000000000..60fef1525cfa
--- /dev/null
+++ b/java/jmp/pkg-plist
@@ -0,0 +1,5 @@
+lib/libjmp.la
+lib/libjmp.so
+lib/libjmp.so.0
+share/locale/de/LC_MESSAGES/jmp.mo
+share/locale/sv/LC_MESSAGES/jmp.mo