git: 32784eda79bb - main - devel/sfsexp: New port: Small Fast S-Expression Library

From: Joseph Mingrone <jrm_at_FreeBSD.org>
Date: Sun, 24 Oct 2021 02:50:47 UTC
The branch main has been updated by jrm:

URL: https://cgit.FreeBSD.org/ports/commit/?id=32784eda79bb2dceb4ae74f6ac2acc9b6ae46935

commit 32784eda79bb2dceb4ae74f6ac2acc9b6ae46935
Author:     Joseph Mingrone <jrm@FreeBSD.org>
AuthorDate: 2021-10-24 00:42:15 +0000
Commit:     Joseph Mingrone <jrm@FreeBSD.org>
CommitDate: 2021-10-24 02:49:00 +0000

    devel/sfsexp: New port: Small Fast S-Expression Library
    
    https://github.com/mjsottile/sfsexp
---
 devel/Makefile                        |  1 +
 devel/sfsexp/Makefile                 | 26 ++++++++++++++++++++++++++
 devel/sfsexp/distinfo                 |  3 +++
 devel/sfsexp/files/patch-sfsexp.pc.in |  8 ++++++++
 devel/sfsexp/pkg-descr                | 23 +++++++++++++++++++++++
 devel/sfsexp/pkg-plist                | 12 ++++++++++++
 6 files changed, 73 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 74f4e414e689..d6980bafa942 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -6955,6 +6955,7 @@
     SUBDIR += serdisplib
     SUBDIR += sfml
     SUBDIR += sfml1
+    SUBDIR += sfsexp
     SUBDIR += sgb
     SUBDIR += shapelib
     SUBDIR += shards
diff --git a/devel/sfsexp/Makefile b/devel/sfsexp/Makefile
new file mode 100644
index 000000000000..51797a1fe810
--- /dev/null
+++ b/devel/sfsexp/Makefile
@@ -0,0 +1,26 @@
+PORTNAME=	sfsexp
+DISTVERSIONPREFIX=	v
+DISTVERSION=	1.3.1-18
+DISTVERSIONSUFFIX=	-gc11b849
+CATEGORIES=	devel
+
+MAINTAINER=	jrm@FreeBSD.org
+COMMENT=	Small Fast S-Expression Library
+
+LICENSE=	LGPL21+
+LICENSE_FILE=	${WRKSRC}/LICENSE_LGPL
+
+USES=		autoreconf libtool pkgconfig
+USE_GITHUB=	yes
+GH_ACCOUNT=	mjsottile
+USE_LDCONFIG=	yes
+
+GNU_CONFIGURE=	yes
+
+INSTALL_TARGET=	install-strip
+
+post-install:
+	${INSTALL_DATA} ${WRKSRC}/${PORTNAME}.pc \
+	  ${STAGEDIR}${PREFIX}/libdata/pkgconfig/
+
+.include <bsd.port.mk>
diff --git a/devel/sfsexp/distinfo b/devel/sfsexp/distinfo
new file mode 100644
index 000000000000..3e6396ce9036
--- /dev/null
+++ b/devel/sfsexp/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1635039746
+SHA256 (mjsottile-sfsexp-v1.3.1-18-gc11b849_GH0.tar.gz) = dd274a5f5d80c5c98a6955c3188dddd75c18bc57c22648b753dc572f1f59f2ec
+SIZE (mjsottile-sfsexp-v1.3.1-18-gc11b849_GH0.tar.gz) = 115544
diff --git a/devel/sfsexp/files/patch-sfsexp.pc.in b/devel/sfsexp/files/patch-sfsexp.pc.in
new file mode 100644
index 000000000000..a43486ffa992
--- /dev/null
+++ b/devel/sfsexp/files/patch-sfsexp.pc.in
@@ -0,0 +1,8 @@
+--- sfsexp.pc.in.orig	2021-10-24 02:04:26 UTC
++++ sfsexp.pc.in
+@@ -8,4 +8,4 @@ Description: small and fast s-expressions library
+ URL: https://github.com/mjsottile/sfsexp
+ Version: @VERSION@
+ Libs: -L@libdir@ -lsexp
+-Cflags: -I@includedir@/sfsexp
++Cflags: -I@includedir@
diff --git a/devel/sfsexp/pkg-descr b/devel/sfsexp/pkg-descr
new file mode 100644
index 000000000000..f5a802a81115
--- /dev/null
+++ b/devel/sfsexp/pkg-descr
@@ -0,0 +1,23 @@
+The sfsexp library is intended for developers who wish to manipulate
+(read, parse, modify, and create) symbolic expressions from C or C++
+programs. A symbolic expression, or s-expression, is essentially a
+LISP-like expression such as (a (b c)). S-expressions are able to
+represent complex, structured data without requiring additional
+meta-data describing the structure. They are recursively defined: an
+s-expression is a list of either atoms or s-expressions. In the example
+above, the expression contains an atom "a" and an s-expression, which in
+turn contains two atoms, "b" and "c". They are simple, useful, and well
+understood.
+
+This library is designed to provide a minimal set of functions and data
+structures for the four functions listed above: reading s-expressions
+(I/O), parsing strings containing them into an AST equivalent, modifying
+the AST representation, and converting the AST back into a well
+formatted string. The primary goals are efficiency and simplicity. This
+library forms the basis of the data representation and transmission
+protocol for the Supermon high-speed cluster monitoring system from the
+LANL Advanced Computing Laboratory. The usefulness and lack of choice in
+available, open source s-expression libraries around 2003 motivated the
+independent (from supermon) release of this library.
+
+WWW: https://github.com/mjsottile/sfsexp
diff --git a/devel/sfsexp/pkg-plist b/devel/sfsexp/pkg-plist
new file mode 100644
index 000000000000..09ef656404ad
--- /dev/null
+++ b/devel/sfsexp/pkg-plist
@@ -0,0 +1,12 @@
+include/cstring.h
+include/faststack.h
+include/sexp.h
+include/sexp_errors.h
+include/sexp_memory.h
+include/sexp_ops.h
+include/sexp_vis.h
+lib/libsexp.a
+lib/libsexp.so
+lib/libsexp.so.1
+lib/libsexp.so.1.0.0
+libdata/pkgconfig/sfsexp.pc