git: 70ec5e55fb58 - main - devel/yyjson: A high performance C JSON library.

From: Piotr Kubaj <pkubaj_at_FreeBSD.org>
Date: Thu, 17 Aug 2023 13:12:22 UTC
The branch main has been updated by pkubaj:

URL: https://cgit.FreeBSD.org/ports/commit/?id=70ec5e55fb58603a1cc9a8a02da81471d2e3b299

commit 70ec5e55fb58603a1cc9a8a02da81471d2e3b299
Author:     Piotr Kubaj <pkubaj@FreeBSD.org>
AuthorDate: 2023-08-17 13:11:25 +0000
Commit:     Piotr Kubaj <pkubaj@FreeBSD.org>
CommitDate: 2023-08-17 13:12:18 +0000

    devel/yyjson: A high performance C JSON library.
    
    Needed for upcoming update of sysutils/fastfetch.
---
 devel/Makefile         |  1 +
 devel/yyjson/Makefile  | 15 +++++++++++++++
 devel/yyjson/distinfo  |  3 +++
 devel/yyjson/pkg-descr | 21 +++++++++++++++++++++
 devel/yyjson/pkg-plist |  4 ++++
 5 files changed, 44 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 0d83fd9ed483..4436afc6b875 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -7827,6 +7827,7 @@
     SUBDIR += yder
     SUBDIR += youcompleteme
     SUBDIR += yuck
+    SUBDIR += yyjson
     SUBDIR += z80-asm
     SUBDIR += z80asm
     SUBDIR += z80ex
diff --git a/devel/yyjson/Makefile b/devel/yyjson/Makefile
new file mode 100644
index 000000000000..bd4a214ffab9
--- /dev/null
+++ b/devel/yyjson/Makefile
@@ -0,0 +1,15 @@
+PORTNAME=	yyjson
+PORTVERSION=	0.7.0
+CATEGORIES=	devel
+
+MAINTAINER=	pkubaj@FreeBSD.org
+COMMENT=	Fastest JSON library in C 
+WWW=		https://github.com/ibireme/yyjson
+
+LICENSE=	MIT
+
+USES=		cmake
+USE_GITHUB=	yes
+GH_ACCOUNT=	ibireme
+
+.include <bsd.port.mk>
diff --git a/devel/yyjson/distinfo b/devel/yyjson/distinfo
new file mode 100644
index 000000000000..7852c4496cf3
--- /dev/null
+++ b/devel/yyjson/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1692277627
+SHA256 (ibireme-yyjson-0.7.0_GH0.tar.gz) = 9b91ee48ac1fe5939f747d49f123d9a522b5f4e1e46165c1871936d583628a06
+SIZE (ibireme-yyjson-0.7.0_GH0.tar.gz) = 1511395
diff --git a/devel/yyjson/pkg-descr b/devel/yyjson/pkg-descr
new file mode 100644
index 000000000000..7f2644f647e8
--- /dev/null
+++ b/devel/yyjson/pkg-descr
@@ -0,0 +1,21 @@
+A high performance JSON library written in ANSI C.
+Features:
+* Fast: can read or write gigabytes per second JSON data on modern CPUs.
+* Portable: complies with ANSI C (C89) for cross-platform compatibility.
+* Strict: complies with RFC 8259 JSON standard, ensuring strict number format
+  and UTF-8 validation.
+* Extendable: offers options to allow comments, trailing commas, NaN/Inf, and
+  custom memory allocator.
+* Accuracy: can accurately read and write int64, uint64, and double numbers.
+* Flexible: supports unlimited JSON nesting levels, \u0000 characters, and non
+  null-terminated strings.
+* Manipulation: supports querying and modifying using JSON Pointer, JSON Patch
+  and JSON Merge Patch.
+* Developer-Friendly: easy integration with only one h and one c file.
+
+Limitations:
+* An array or object is stored as a data structure such as linked list, which
+  makes accessing elements by index or key slower than using an iterator.
+* Duplicate keys are allowed in an object, and the order of the keys is
+  preserved.
+* JSON parsing result is immutable, requiring a mutable copy for modification.
diff --git a/devel/yyjson/pkg-plist b/devel/yyjson/pkg-plist
new file mode 100644
index 000000000000..383c0bd83eb6
--- /dev/null
+++ b/devel/yyjson/pkg-plist
@@ -0,0 +1,4 @@
+include/yyjson.h
+lib/cmake/yyjson/yyjson-config-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/yyjson/yyjson-config.cmake
+lib/libyyjson.a