aboutsummaryrefslogtreecommitdiff
path: root/java/jxgrabkey
diff options
context:
space:
mode:
authorMikhail Teterin <mi@FreeBSD.org>2016-06-30 07:42:20 +0000
committerMikhail Teterin <mi@FreeBSD.org>2016-06-30 07:42:20 +0000
commitff6a653684765916442d689f3bab689923f60ad6 (patch)
tree0da080f30cf90886b91fcff64c8f9b1f066b35ea /java/jxgrabkey
parentc44d975f657a7305209b839cd79c7dea2596f807 (diff)
downloadports-ff6a653684765916442d689f3bab689923f60ad6.tar.gz
ports-ff6a653684765916442d689f3bab689923f60ad6.zip
Notes
Diffstat (limited to 'java/jxgrabkey')
-rw-r--r--java/jxgrabkey/Makefile42
-rw-r--r--java/jxgrabkey/distinfo3
-rw-r--r--java/jxgrabkey/files/Makefile.JXGrabKey14
-rw-r--r--java/jxgrabkey/files/patch-shlib-path9
-rw-r--r--java/jxgrabkey/files/patch-warnings24
-rw-r--r--java/jxgrabkey/pkg-descr4
6 files changed, 96 insertions, 0 deletions
diff --git a/java/jxgrabkey/Makefile b/java/jxgrabkey/Makefile
new file mode 100644
index 000000000000..b7720f9067dd
--- /dev/null
+++ b/java/jxgrabkey/Makefile
@@ -0,0 +1,42 @@
+# Created by: Mikhail T. <mi@aldan.algebra.com>
+# $FreeBSD$
+
+PORTNAME= jxgrabkey
+PORTVERSION= 0.3.2
+CATEGORIES= java devel
+MASTER_SITES= SF
+DISTFILES= ${PORTNAME}-${PORTVERSION}_src${EXTRACT_SUFX}
+
+MAINTAINER= mi@aldan.algebra.com
+COMMENT= JNI library for easy use of global X11 hotkeys from Java
+
+LICENSE= LGPL3
+
+USES= tar:bz2
+USE_JAVA= yes
+USE_ANT= yes
+OPTIONS_DEFINE= TEST
+TEST_BUILD_DEPENDS= ${JAVALIBDIR}/junit.jar:java/junit \
+ ${JAVALIBDIR}/hamcrest.jar:java/hamcrest
+MAKE_ENV+= JAVA_HOME=${JAVA_HOME} OPSYS=${OPSYS}
+PLIST_FILES= %%JAVAJARDIR%%/JXGrabKey.jar lib/libJXGrabKey.so
+USE_LDCONFIG= yes
+
+do-build:
+ ${SETENV} ${MAKE_ENV} ${MAKE} -C ${WRKSRC}/JXGrabKey/C++ \
+ -f ${FILESDIR}/Makefile.JXGrabKey
+ cd ${WRKSRC}/JXGrabKey/Java && ${ANT} -verbose jar
+
+do-install:
+ ${INSTALL_LIB} ${WRKSRC}/JXGrabKey/C++/libJXGrabKey.so ${STAGEDIR}${PREFIX}/lib/
+ ${INSTALL_DATA} ${WRKSRC}/JXGrabKey/Java/dist/JXGrabKey.jar ${STAGEDIR}${JAVAJARDIR}/
+
+do-test-TEST-on: build
+ ${ECHO_MSG} Tests require a valid DISPLAY
+ cd ${WRKSRC}/JXGrabKey/Java && \
+ ${SETENV} CLASSPATH=${JAVALIBDIR}/junit.jar:${JAVALIBDIR}/hamcrest.jar \
+ LD_LIBRARY_PATH=${WRKSRC}/JXGrabKey/C++ \
+ ${ANT} -Djavac.classpath=${JAVALIBDIR}/junit.jar \
+ test
+
+.include <bsd.port.mk>
diff --git a/java/jxgrabkey/distinfo b/java/jxgrabkey/distinfo
new file mode 100644
index 000000000000..f614f62a71a3
--- /dev/null
+++ b/java/jxgrabkey/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1467261857
+SHA256 (jxgrabkey-0.3.2_src.tar.bz2) = 2465c556f5e4100931f68d35d1211ac65dd92773cb58775585abb9e55c32c66c
+SIZE (jxgrabkey-0.3.2_src.tar.bz2) = 32061
diff --git a/java/jxgrabkey/files/Makefile.JXGrabKey b/java/jxgrabkey/files/Makefile.JXGrabKey
new file mode 100644
index 000000000000..06298499b5bd
--- /dev/null
+++ b/java/jxgrabkey/files/Makefile.JXGrabKey
@@ -0,0 +1,14 @@
+# $FreeBSD$
+
+LIB_CXX= JXGrabKey
+SHLIB_NAME= lib${LIB_CXX}.so
+NO_PROFILE= nope
+
+SRCS= JXGrabKey.cpp
+VPATH= src
+CXXFLAGS+= -I${JAVA_HOME}/include \
+ -I${JAVA_HOME}/include/${OPSYS:tl} \
+ -I${LOCALBASE}/include
+LDADD= -L${LOCALBASE}/lib -lX11
+
+.include <bsd.lib.mk>
diff --git a/java/jxgrabkey/files/patch-shlib-path b/java/jxgrabkey/files/patch-shlib-path
new file mode 100644
index 000000000000..abf4176a1365
--- /dev/null
+++ b/java/jxgrabkey/files/patch-shlib-path
@@ -0,0 +1,9 @@
+--- JXGrabKey/Java/test/jxgrabkey/JXGrabKeyTest.java 2010-02-28 10:11:49.000000000 -0500
++++ JXGrabKey/Java/test/jxgrabkey/JXGrabKeyTest.java 2016-06-30 02:51:50.285529000 -0400
+@@ -16,5 +16,5 @@
+ @BeforeClass
+ public static void setUpClass() throws Exception {
+- System.load(new File("../C++/dist/Release/GNU-Linux-x86/libJXGrabKey.so").getCanonicalPath());
++ System.loadLibrary("JXGrabKey");
+ JXGrabKey.setDebugOutput(true);
+ JXGrabKey.getInstance();
diff --git a/java/jxgrabkey/files/patch-warnings b/java/jxgrabkey/files/patch-warnings
new file mode 100644
index 000000000000..fed1556455b8
--- /dev/null
+++ b/java/jxgrabkey/files/patch-warnings
@@ -0,0 +1,24 @@
+--- JXGrabKey/C++/src/JXGrabKey.cpp 2010-02-28 10:11:49.000000000 -0500
++++ JXGrabKey/C++/src/JXGrabKey.cpp 2016-06-30 03:15:41.718599000 -0400
+@@ -24,4 +24,5 @@
+ #include <X11/Xlib.h>
+ #include <X11/keysym.h>
++#include <X11/XKBlib.h>
+
+ #include <pthread.h>
+@@ -319,5 +320,5 @@
+
+ XSetErrorHandler((XErrorHandler) xErrorHandler);
+- pthread_spin_init(&x_lock, NULL); // init here bcoz of the returns
++ pthread_spin_init(&x_lock, PTHREAD_PROCESS_SHARED); // init here bcoz of the returns
+
+ doListen = true;
+@@ -347,6 +348,6 @@
+ << keys.at(i).id
+ << "; type = KeyPress; x11Keycode = '"
+- << XKeysymToString(XKeycodeToKeysym(dpy,
+- ev.xkey.keycode, 0)) << "' (0x"
++ << XKeysymToString(XkbKeycodeToKeysym(dpy,
++ ev.xkey.keycode, 0, 0)) << "' (0x"
+ << std::hex << ev.xkey.keycode
+ << "); x11Mask = 0x" << std::hex
diff --git a/java/jxgrabkey/pkg-descr b/java/jxgrabkey/pkg-descr
new file mode 100644
index 000000000000..b028b2a22e63
--- /dev/null
+++ b/java/jxgrabkey/pkg-descr
@@ -0,0 +1,4 @@
+JXGrabKey is a jni library for easy use of global X11 hotkeys on
+from Java.
+
+WWW: http://jxgrabkey.sourceforge.net/