create bsd12 branch

This commit is contained in:
ziggi
2019-12-26 07:26:06 +00:00
commit 5cfdab6bfe
14432 changed files with 2272620 additions and 0 deletions

View File

@@ -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>

View File

@@ -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;
}

View File

@@ -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

View File

@@ -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
*/

View File

@@ -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();

View File

@@ -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 = "";