Date: Tue, 25 Oct 2016 19:37:33 +0000 (UTC) From: Boris Samorodov <bsam@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r424647 - in head/comms: . java-simple-serial-connector java-simple-serial-connector/files Message-ID: <201610251937.u9PJbXsh031352@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: bsam Date: Tue Oct 25 19:37:33 2016 New Revision: 424647 URL: https://svnweb.freebsd.org/changeset/ports/424647 Log: Library for working with serial ports in Java. WWW: https://github.com/scream3r/java-simple-serial-connector PR: 213758 Submitted by: bsdports@kyle-evans.net Added: head/comms/java-simple-serial-connector/ head/comms/java-simple-serial-connector/Makefile (contents, props changed) head/comms/java-simple-serial-connector/distinfo (contents, props changed) head/comms/java-simple-serial-connector/files/ head/comms/java-simple-serial-connector/files/build.xml.in (contents, props changed) head/comms/java-simple-serial-connector/files/patch-src_cpp___nix__based_jssc.cpp (contents, props changed) head/comms/java-simple-serial-connector/files/patch-src_cpp_jssc__SerialNativeInterface.h (contents, props changed) head/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialNativeInterface.java (contents, props changed) head/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialPort.java (contents, props changed) head/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialPortList.java (contents, props changed) head/comms/java-simple-serial-connector/pkg-descr (contents, props changed) Modified: head/comms/Makefile Modified: head/comms/Makefile ============================================================================== --- head/comms/Makefile Tue Oct 25 19:27:44 2016 (r424646) +++ head/comms/Makefile Tue Oct 25 19:37:33 2016 (r424647) @@ -70,6 +70,7 @@ SUBDIR += ibp SUBDIR += java-commapi SUBDIR += java-commapi-freebsd + SUBDIR += java-simple-serial-connector SUBDIR += jerm SUBDIR += jsdr SUBDIR += kb Added: head/comms/java-simple-serial-connector/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/comms/java-simple-serial-connector/Makefile Tue Oct 25 19:37:33 2016 (r424647) @@ -0,0 +1,45 @@ +# $FreeBSD$ + +PORTNAME= java-simple-serial-connector +PORTVERSION= 2.8.0 +DISTVERSIONPREFIX= v +CATEGORIES= comms java + +MAINTAINER= bsdports@kyle-evans.net +COMMENT= Library for working with serial ports from Java + +LICENSE= LGPL3 + +USE_GITHUB= yes +GH_ACCOUNT= scream3r + +MAJOR_MINOR= ${PORTVERSION:C/(.*)\.[0-9]*/\\1/} +USE_JAVA= yes +USE_ANT= yes +ALL_TARGET= dist +CXXFLAGS+= -I${JAVA_HOME}/include -I${JAVA_HOME}/include/freebsd +WRKSRC_LIBS= ${WRKSRC}/src/java/libs + +PLIST_FILES= ${JAVA_HOME}/jre/lib/ext/jssc-${PORTVERSION}.jar + +.include <bsd.port.pre.mk> + +.if ${ARCH} == "armv6" || ${ARCH} == "aarch64" +ARCH= arm +.endif + +post-extract: + @${CP} ${FILESDIR}/build.xml.in ${WRKSRC}/build.xml + @${REINPLACE_CMD} -e 's|%%PORTVERSION%%|${PORTVERSION}|' ${WRKSRC}/build.xml + +pre-build: + ${RM} -r ${WRKSRC_LIBS}/* + ${MKDIR} ${WRKSRC_LIBS}/freebsd + (cd ${WRKSRC}/src/cpp/_nix_based && ${CXX} ${CXXFLAGS} ${CPPFLAGS} -shared -fPIC -o ${WRKSRC_LIBS}/freebsd/libjSSC-${MAJOR_MINOR}_${ARCH}.so jssc.cpp) + ${STRIP_CMD} ${WRKSRC_LIBS}/freebsd/libjSSC-${MAJOR_MINOR}_${ARCH}.so + +do-install: + @${MKDIR} ${STAGEDIR}${JAVA_HOME}/jre/lib/ext + ${CP} ${WRKSRC}/build/jssc-${PORTVERSION}.jar ${STAGEDIR}${JAVA_HOME}/jre/lib/ext + +.include <bsd.port.post.mk> Added: head/comms/java-simple-serial-connector/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/comms/java-simple-serial-connector/distinfo Tue Oct 25 19:37:33 2016 (r424647) @@ -0,0 +1,3 @@ +TIMESTAMP = 1477335330 +SHA256 (scream3r-java-simple-serial-connector-v2.8.0_GH0.tar.gz) = c3287bfc31ea81929739271b087b833fb7050686af6a90ec953c5b2f41b4d42d +SIZE (scream3r-java-simple-serial-connector-v2.8.0_GH0.tar.gz) = 149937 Added: head/comms/java-simple-serial-connector/files/build.xml.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/comms/java-simple-serial-connector/files/build.xml.in Tue Oct 25 19:37:33 2016 (r424647) @@ -0,0 +1,25 @@ +<project name="JSSC" basedir="."> + <property name="src" location="src/java" /> + <property name="build" location="build" /> + <property name="libs" location="${src}/libs" /> + <property name="libsto" location="${build}/libs" /> + <property name="dist" location="dist" /> + + <target name="init"> + <tstamp /> + <mkdir dir="${build}" /> + </target> + + <target name="compile" depends="init" description="Compile JSSC"> + <javac srcdir="${src}" destdir="${build}" encoding="UTF-8" /> + <copy todir="${libsto}"> + <fileset dir="${libs}" /> + </copy> + </target> + + <target name="dist" depends="compile" description="Build distributable"> + <jar destfile="${build}/jssc-%%PORTVERSION%%.jar"> + <fileset dir="${build}" /> + </jar> + </target> +</project> Added: head/comms/java-simple-serial-connector/files/patch-src_cpp___nix__based_jssc.cpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/comms/java-simple-serial-connector/files/patch-src_cpp___nix__based_jssc.cpp Tue Oct 25 19:37:33 2016 (r424647) @@ -0,0 +1,11 @@ +--- src/cpp/_nix_based/jssc.cpp.orig 2016-10-24 19:48:41 UTC ++++ src/cpp/_nix_based/jssc.cpp +@@ -545,7 +545,7 @@ JNIEXPORT jbyteArray JNICALL Java_jssc_S + FD_CLR(portHandle, &read_fd_set); + jbyteArray returnArray = env->NewByteArray(byteCount); + env->SetByteArrayRegion(returnArray, 0, byteCount, lpBuffer); +- delete lpBuffer; ++ delete[] lpBuffer; + return returnArray; + } + Added: head/comms/java-simple-serial-connector/files/patch-src_cpp_jssc__SerialNativeInterface.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/comms/java-simple-serial-connector/files/patch-src_cpp_jssc__SerialNativeInterface.h Tue Oct 25 19:37:33 2016 (r424647) @@ -0,0 +1,11 @@ +--- src/cpp/jssc_SerialNativeInterface.h.orig 2016-10-24 19:47:55 UTC ++++ src/cpp/jssc_SerialNativeInterface.h +@@ -43,6 +43,8 @@ extern "C" { + #define jssc_SerialNativeInterface_OS_SOLARIS 2L + #undef jssc_SerialNativeInterface_OS_MAC_OS_X + #define jssc_SerialNativeInterface_OS_MAC_OS_X 3L ++#undef jssc_SerialNativeInterface_OS_FREEBSD ++#define jssc_SerialNativeInterface_OS_FREEBSD 4L + #undef jssc_SerialNativeInterface_ERR_PORT_BUSY + #define jssc_SerialNativeInterface_ERR_PORT_BUSY -1LL + #undef jssc_SerialNativeInterface_ERR_PORT_NOT_FOUND Added: head/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialNativeInterface.java ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialNativeInterface.java Tue Oct 25 19:37:33 2016 (r424647) @@ -0,0 +1,62 @@ +--- src/java/jssc/SerialNativeInterface.java.orig 2014-01-24 14:34:02 UTC ++++ src/java/jssc/SerialNativeInterface.java +@@ -43,6 +43,7 @@ public class SerialNativeInterface { + public static final int OS_WINDOWS = 1; + public static final int OS_SOLARIS = 2;//since 0.9.0 + public static final int OS_MAC_OS_X = 3;//since 0.9.0 ++ public static final int OS_FREEBSD = 4; + + private static int osType = -1; + +@@ -108,36 +109,16 @@ public class SerialNativeInterface { + osName = "mac_os_x"; + osType = OS_MAC_OS_X; + }//<- since 0.9.0 ++ else if(osName.equals("FreeBSD")){ ++ osName = "freebsd"; ++ osType = OS_FREEBSD; ++ } + + if(architecture.equals("i386") || architecture.equals("i686")){ +- architecture = "x86"; ++ architecture = "i386"; + } + else if(architecture.equals("amd64") || architecture.equals("universal")){//os.arch "universal" since 2.6.0 +- architecture = "x86_64"; +- } +- else if(architecture.equals("arm")) {//since 2.1.0 +- String floatStr = "sf"; +- if(javaLibPath.toLowerCase().contains("gnueabihf") || javaLibPath.toLowerCase().contains("armhf")){ +- floatStr = "hf"; +- } +- else { +- try { +- Process readelfProcess = Runtime.getRuntime().exec("readelf -A /proc/self/exe"); +- BufferedReader reader = new BufferedReader(new InputStreamReader(readelfProcess.getInputStream())); +- String buffer = ""; +- while((buffer = reader.readLine()) != null && !buffer.isEmpty()){ +- if(buffer.toLowerCase().contains("Tag_ABI_VFP_args".toLowerCase())){ +- floatStr = "hf"; +- break; +- } +- } +- reader.close(); +- } +- catch (Exception ex) { +- //Do nothing +- } +- } +- architecture = "arm" + floatStr; ++ architecture = "amd64"; + } + + libFolderPath = libRootFolder + fileSeparator + ".jssc" + fileSeparator + osName; +@@ -259,7 +240,7 @@ public class SerialNativeInterface { + } + + /** +- * Get OS type (OS_LINUX || OS_WINDOWS || OS_SOLARIS) ++ * Get OS type (OS_LINUX || OS_WINDOWS || OS_SOLARIS || OS_FREEBSD) + * + * @since 0.8 + */ Added: head/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialPort.java ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialPort.java Tue Oct 25 19:37:33 2016 (r424647) @@ -0,0 +1,32 @@ +--- src/java/jssc/SerialPort.java.orig 2016-10-24 19:44:26 UTC ++++ src/java/jssc/SerialPort.java +@@ -264,7 +264,8 @@ public class SerialPort { + checkPortOpened("setEventsMask()"); + if(SerialNativeInterface.getOsType() == SerialNativeInterface.OS_LINUX || + SerialNativeInterface.getOsType() == SerialNativeInterface.OS_SOLARIS || +- SerialNativeInterface.getOsType() == SerialNativeInterface.OS_MAC_OS_X){//since 0.9.0 ++ SerialNativeInterface.getOsType() == SerialNativeInterface.OS_MAC_OS_X || ++ SerialNativeInterface.getOsType() == SerialNativeInterface.OS_FREEBSD){//since 0.9.0 + linuxMask = mask; + if(mask > 0){ + maskAssigned = true; +@@ -298,7 +299,8 @@ public class SerialPort { + checkPortOpened("getEventsMask()"); + if(SerialNativeInterface.getOsType() == SerialNativeInterface.OS_LINUX || + SerialNativeInterface.getOsType() == SerialNativeInterface.OS_SOLARIS || +- SerialNativeInterface.getOsType() == SerialNativeInterface.OS_MAC_OS_X){//since 0.9.0 ++ SerialNativeInterface.getOsType() == SerialNativeInterface.OS_MAC_OS_X || ++ SerialNativeInterface.getOsType() == SerialNativeInterface.OS_FREEBSD){//since 0.9.0 + return linuxMask; + } + return serialInterface.getEventsMask(portHandle); +@@ -1041,7 +1043,8 @@ public class SerialPort { + private EventThread getNewEventThread() { + if(SerialNativeInterface.getOsType() == SerialNativeInterface.OS_LINUX || + SerialNativeInterface.getOsType() == SerialNativeInterface.OS_SOLARIS || +- SerialNativeInterface.getOsType() == SerialNativeInterface.OS_MAC_OS_X){//since 0.9.0 ++ SerialNativeInterface.getOsType() == SerialNativeInterface.OS_MAC_OS_X || ++ SerialNativeInterface.getOsType() == SerialNativeInterface.OS_FREEBSD){//since 0.9.0 + return new LinuxEventThread(); + } + return new EventThread(); Added: head/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialPortList.java ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/comms/java-simple-serial-connector/files/patch-src_java_jssc_SerialPortList.java Tue Oct 25 19:37:33 2016 (r424647) @@ -0,0 +1,14 @@ +--- src/java/jssc/SerialPortList.java.orig 2016-10-24 19:46:27 UTC ++++ src/java/jssc/SerialPortList.java +@@ -57,6 +57,11 @@ public class SerialPortList { + PORTNAMES_PATH = "/dev/"; + break; + } ++ case SerialNativeInterface.OS_FREEBSD: { ++ PORTNAMES_REGEXP = Pattern.compile("cuaU[0-9]{1,3}"); ++ PORTNAMES_PATH = "/dev/"; ++ break; ++ } + case SerialNativeInterface.OS_WINDOWS: { + PORTNAMES_REGEXP = Pattern.compile(""); + PORTNAMES_PATH = ""; Added: head/comms/java-simple-serial-connector/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/comms/java-simple-serial-connector/pkg-descr Tue Oct 25 19:37:33 2016 (r424647) @@ -0,0 +1,3 @@ +Library for working with serial ports in Java. + +WWW: https://github.com/scream3r/java-simple-serial-connector
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201610251937.u9PJbXsh031352>