From 7c67e0b556235169c5e76d99487f04e8250ab049 Mon Sep 17 00:00:00 2001 From: ziggi Date: Sun, 9 Aug 2020 19:14:28 +0000 Subject: [PATCH] add java/java-simple-serial-connector net/libhttp-parser --- java/java-simple-serial-connector/Makefile | 47 ++++++++++++++ java/java-simple-serial-connector/distinfo | 3 + .../files/build.xml.in | 25 ++++++++ .../files/patch-src_cpp___nix__based_jssc.cpp | 11 ++++ ...atch-src_cpp_jssc__SerialNativeInterface.h | 11 ++++ ...h-src_java_jssc_SerialNativeInterface.java | 62 +++++++++++++++++++ .../files/patch-src_java_jssc_SerialPort.java | 32 ++++++++++ .../patch-src_java_jssc_SerialPortList.java | 14 +++++ java/java-simple-serial-connector/pkg-descr | 3 + net/libhttp-parser/Makefile | 23 +++++++ net/libhttp-parser/distinfo | 3 + net/libhttp-parser/files/patch-x-Makefile | 40 ++++++++++++ net/libhttp-parser/pkg-descr | 8 +++ net/libhttp-parser/pkg-plist | 3 + 14 files changed, 285 insertions(+) create mode 100644 java/java-simple-serial-connector/Makefile create mode 100644 java/java-simple-serial-connector/distinfo create mode 100644 java/java-simple-serial-connector/files/build.xml.in create mode 100644 java/java-simple-serial-connector/files/patch-src_cpp___nix__based_jssc.cpp create mode 100644 java/java-simple-serial-connector/files/patch-src_cpp_jssc__SerialNativeInterface.h create mode 100644 java/java-simple-serial-connector/files/patch-src_java_jssc_SerialNativeInterface.java create mode 100644 java/java-simple-serial-connector/files/patch-src_java_jssc_SerialPort.java create mode 100644 java/java-simple-serial-connector/files/patch-src_java_jssc_SerialPortList.java create mode 100644 java/java-simple-serial-connector/pkg-descr create mode 100644 net/libhttp-parser/Makefile create mode 100644 net/libhttp-parser/distinfo create mode 100644 net/libhttp-parser/files/patch-x-Makefile create mode 100644 net/libhttp-parser/pkg-descr create mode 100644 net/libhttp-parser/pkg-plist diff --git a/java/java-simple-serial-connector/Makefile b/java/java-simple-serial-connector/Makefile new file mode 100644 index 00000000..0f225d89 --- /dev/null +++ b/java/java-simple-serial-connector/Makefile @@ -0,0 +1,47 @@ +# $FreeBSD: head/comms/java-simple-serial-connector/Makefile 495537 2019-03-13 03:03:56Z ler $ + +PORTNAME= java-simple-serial-connector +PORTVERSION= 2.8.0 +DISTVERSIONPREFIX= v +CATEGORIES= comms java + +MAINTAINER= kevans@FreeBSD.org +COMMENT= Library for working with serial ports from Java + +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 + +.if ${ARCH} == aarch64 || ${ARCH} == armv6 || ${ARCH} == armv7 +JSSC_ARCH= arm +.else +JSSC_ARCH= ${ARCH} +.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}_${JSSC_ARCH}.so jssc.cpp + ${STRIP_CMD} ${WRKSRC_LIBS}/freebsd/libjSSC-${MAJOR_MINOR}_${JSSC_ARCH}.so + +do-install: + ${MKDIR} ${STAGEDIR}${JAVA_HOME}/jre/lib/ext + ${CP} ${WRKSRC}/build/jssc-${PORTVERSION}.jar ${STAGEDIR}${JAVA_HOME}/jre/lib/ext + +.include diff --git a/java/java-simple-serial-connector/distinfo b/java/java-simple-serial-connector/distinfo new file mode 100644 index 00000000..fe66340a --- /dev/null +++ b/java/java-simple-serial-connector/distinfo @@ -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 diff --git a/java/java-simple-serial-connector/files/build.xml.in b/java/java-simple-serial-connector/files/build.xml.in new file mode 100644 index 00000000..da8c2fac --- /dev/null +++ b/java/java-simple-serial-connector/files/build.xml.in @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/java/java-simple-serial-connector/files/patch-src_cpp___nix__based_jssc.cpp b/java/java-simple-serial-connector/files/patch-src_cpp___nix__based_jssc.cpp new file mode 100644 index 00000000..fe42d023 --- /dev/null +++ b/java/java-simple-serial-connector/files/patch-src_cpp___nix__based_jssc.cpp @@ -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; + } + diff --git a/java/java-simple-serial-connector/files/patch-src_cpp_jssc__SerialNativeInterface.h b/java/java-simple-serial-connector/files/patch-src_cpp_jssc__SerialNativeInterface.h new file mode 100644 index 00000000..a8d47509 --- /dev/null +++ b/java/java-simple-serial-connector/files/patch-src_cpp_jssc__SerialNativeInterface.h @@ -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 diff --git a/java/java-simple-serial-connector/files/patch-src_java_jssc_SerialNativeInterface.java b/java/java-simple-serial-connector/files/patch-src_java_jssc_SerialNativeInterface.java new file mode 100644 index 00000000..fadcacf8 --- /dev/null +++ b/java/java-simple-serial-connector/files/patch-src_java_jssc_SerialNativeInterface.java @@ -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 + */ diff --git a/java/java-simple-serial-connector/files/patch-src_java_jssc_SerialPort.java b/java/java-simple-serial-connector/files/patch-src_java_jssc_SerialPort.java new file mode 100644 index 00000000..136f195d --- /dev/null +++ b/java/java-simple-serial-connector/files/patch-src_java_jssc_SerialPort.java @@ -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(); diff --git a/java/java-simple-serial-connector/files/patch-src_java_jssc_SerialPortList.java b/java/java-simple-serial-connector/files/patch-src_java_jssc_SerialPortList.java new file mode 100644 index 00000000..34c8af58 --- /dev/null +++ b/java/java-simple-serial-connector/files/patch-src_java_jssc_SerialPortList.java @@ -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 = ""; diff --git a/java/java-simple-serial-connector/pkg-descr b/java/java-simple-serial-connector/pkg-descr new file mode 100644 index 00000000..863b0643 --- /dev/null +++ b/java/java-simple-serial-connector/pkg-descr @@ -0,0 +1,3 @@ +Library for working with serial ports in Java. + +WWW: https://github.com/scream3r/java-simple-serial-connector diff --git a/net/libhttp-parser/Makefile b/net/libhttp-parser/Makefile new file mode 100644 index 00000000..e7d28edc --- /dev/null +++ b/net/libhttp-parser/Makefile @@ -0,0 +1,23 @@ +# Created by: Alexey Dokuchaev +# $FreeBSD: head/www/http-parser/Makefile 529086 2020-03-25 09:46:27Z danfe $ + +PORTNAME= http-parser +PORTVERSION= 2.9.4 +DISTVERSIONPREFIX= v +CATEGORIES= www +PKGNAMEPREFIX= lib + +MAINTAINER= danfe@FreeBSD.org +COMMENT= HTTP request/response parser written in C + +USE_GITHUB= yes +GH_ACCOUNT= nodejs + +USES= gmake +USE_LDCONFIG= yes +MAKE_ENV= STRIP="${STRIP}" +ALL_TARGET= library +INSTALL_TARGET= install-strip +TEST_TARGET= test + +.include diff --git a/net/libhttp-parser/distinfo b/net/libhttp-parser/distinfo new file mode 100644 index 00000000..102b75fd --- /dev/null +++ b/net/libhttp-parser/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1585047246 +SHA256 (nodejs-http-parser-v2.9.4_GH0.tar.gz) = 467b9e30fd0979ee301065e70f637d525c28193449e1b13fbcb1b1fab3ad224f +SIZE (nodejs-http-parser-v2.9.4_GH0.tar.gz) = 52056 diff --git a/net/libhttp-parser/files/patch-x-Makefile b/net/libhttp-parser/files/patch-x-Makefile new file mode 100644 index 00000000..a348e04b --- /dev/null +++ b/net/libhttp-parser/files/patch-x-Makefile @@ -0,0 +1,40 @@ +--- ./Makefile.orig 2020-03-24 12:54:06.000000000 +0200 ++++ ./Makefile 2020-07-23 10:10:53.858715000 +0200 +@@ -35,8 +35,8 @@ + HELPER = wine + else + SOEXT ?= so +-SONAME ?= $(SOLIBNAME).$(SOEXT).$(SOMAJOR).$(SOMINOR) +-LIBNAME ?= $(SOLIBNAME).$(SOEXT).$(SOMAJOR).$(SOMINOR).$(SOREV) ++SONAME ?= $(SOLIBNAME).$(SOEXT).$(SOMAJOR) ++LIBNAME ?= $(SOLIBNAME).$(SOEXT).$(SOMAJOR) + endif + + CC?=gcc +@@ -54,7 +54,7 @@ + + CFLAGS += -Wall -Wextra -Werror + CFLAGS_DEBUG = $(CFLAGS) -O0 -g $(CFLAGS_DEBUG_EXTRA) +-CFLAGS_FAST = $(CFLAGS) -O3 $(CFLAGS_FAST_EXTRA) ++CFLAGS_FAST = $(CFLAGS) $(CFLAGS_FAST_EXTRA) + CFLAGS_BENCH = $(CFLAGS_FAST) -Wno-unused-parameter + CFLAGS_LIB = $(CFLAGS_FAST) -fPIC + +@@ -133,13 +133,13 @@ + install: library + $(INSTALL) -D http_parser.h $(DESTDIR)$(INCLUDEDIR)/http_parser.h + $(INSTALL) -D $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBNAME) +- ln -sf $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SONAME) ++# ln -sf $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SONAME) + ln -sf $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SOLIBNAME).$(SOEXT) + + install-strip: library +- $(INSTALL) -D http_parser.h $(DESTDIR)$(INCLUDEDIR)/http_parser.h +- $(INSTALL) -D -s $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBNAME) +- ln -sf $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SONAME) ++ $(INSTALL) http_parser.h $(DESTDIR)$(INCLUDEDIR) ++ $(INSTALL) $(STRIP) $(LIBNAME) $(DESTDIR)$(LIBDIR) ++# ln -sf $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SONAME) + ln -sf $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SOLIBNAME).$(SOEXT) + + uninstall: diff --git a/net/libhttp-parser/pkg-descr b/net/libhttp-parser/pkg-descr new file mode 100644 index 00000000..60538448 --- /dev/null +++ b/net/libhttp-parser/pkg-descr @@ -0,0 +1,8 @@ +This is a parser for HTTP messages written in C. It parses both requests +and responses. The parser is designed to be used in performance HTTP +applications. It does not make any system calls nor allocations, it does +not buffer data, it can be interrupted at anytime. Depending on the +architecture, it only requires about 40 bytes of data per message stream +(in a web server that is per connection). + +WWW: https://github.com/nodejs/http-parser diff --git a/net/libhttp-parser/pkg-plist b/net/libhttp-parser/pkg-plist new file mode 100644 index 00000000..ae24d0a5 --- /dev/null +++ b/net/libhttp-parser/pkg-plist @@ -0,0 +1,3 @@ +include/http_parser.h +lib/libhttp_parser.so +lib/libhttp_parser.so.2