git: bb2fc57f874f - main - net-mgmt/makenl: FidoNet NodeList Generator Program

From: Robert Clausecker <fuz_at_FreeBSD.org>
Date: Fri, 28 Apr 2023 16:17:58 UTC
The branch main has been updated by fuz:

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

commit bb2fc57f874fadbb8a7dd4b221f578bdb512d469
Author:     Andriy Dzedolik <dz@dolik.dev>
AuthorDate: 2023-04-27 20:57:19 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2023-04-28 16:17:27 +0000

    net-mgmt/makenl: FidoNet NodeList Generator Program
    
    MakeNL is an open-sourced version of MakeNL, the Fido/FTN nodelist
    processing program.  It is used to process Fido/FTN nodelists for
    submission to coordinators and/or for creation of nodelist files for
    distribution.  It is a near drop-in replacement for an existing
    installation of MakeNL.
    
    WWW: https://github.com/zoomosis/makenl
    
    PR:             270550
---
 net-mgmt/Makefile                               |  1 +
 net-mgmt/makenl/Makefile                        | 24 +++++++++++++++
 net-mgmt/makenl/distinfo                        |  3 ++
 net-mgmt/makenl/files/patch-CMakeLists.txt      | 18 +++++++++++
 net-mgmt/makenl/files/patch-docs_CMakeLists.txt | 41 +++++++++++++++++++++++++
 net-mgmt/makenl/pkg-descr                       |  5 +++
 net-mgmt/makenl/pkg-plist                       | 16 ++++++++++
 7 files changed, 108 insertions(+)

diff --git a/net-mgmt/Makefile b/net-mgmt/Makefile
index 4fee41cab0be..d5478f146663 100644
--- a/net-mgmt/Makefile
+++ b/net-mgmt/Makefile
@@ -130,6 +130,7 @@
     SUBDIR += libsmi
     SUBDIR += lldpd
     SUBDIR += mac-telnet
+    SUBDIR += makenl
     SUBDIR += mbrowse
     SUBDIR += mdata-client
     SUBDIR += metronome
diff --git a/net-mgmt/makenl/Makefile b/net-mgmt/makenl/Makefile
new file mode 100644
index 000000000000..0bbe9860b15a
--- /dev/null
+++ b/net-mgmt/makenl/Makefile
@@ -0,0 +1,24 @@
+PORTNAME=	makenl
+DISTVERSION=	3.5.1
+CATEGORIES=	net-mgmt
+
+MAINTAINER=	dz@dolik.dev
+COMMENT=	FidoNet NodeList Generator Program
+WWW=		https://github.com/zoomosis/makenl
+
+LICENSE=	GPLv2
+LICENSE_FILE=	${WRKSRC}/docs/license.txt
+
+USES=		cmake
+
+OPTIONS_DEFINE=	DOCS EXAMPLES
+OPTIONS_SUB=	yes
+
+DOCS_CMAKE_BOOL=	DOCS
+EXAMPLES_CMAKE_BOOL=	EXAMPLES
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	zoomosis
+GH_TAGNAME=	ab7babe
+
+.include <bsd.port.mk>
diff --git a/net-mgmt/makenl/distinfo b/net-mgmt/makenl/distinfo
new file mode 100644
index 000000000000..5daaa23af7aa
--- /dev/null
+++ b/net-mgmt/makenl/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1682698600
+SHA256 (zoomosis-makenl-3.5.1-ab7babe_GH0.tar.gz) = ac76e0748938cf2ea55eac608975255d84ad2e8fa526f331cdf7e5baf7d9d53f
+SIZE (zoomosis-makenl-3.5.1-ab7babe_GH0.tar.gz) = 149643
diff --git a/net-mgmt/makenl/files/patch-CMakeLists.txt b/net-mgmt/makenl/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..acf5641a4df5
--- /dev/null
+++ b/net-mgmt/makenl/files/patch-CMakeLists.txt
@@ -0,0 +1,18 @@
+--- CMakeLists.txt.orig	2023-02-05 22:03:01 UTC
++++ CMakeLists.txt
+@@ -1,6 +1,13 @@
+ PROJECT(makenl NONE)
+ CMAKE_MINIMUM_REQUIRED(VERSION 2.8...3.19)
+ 
++option(DOCS "Install documentation" OFF)
++option(EXAMPLES "Install examples" OFF)
++
+ ADD_SUBDIRECTORY(src)
+-ADD_SUBDIRECTORY(docs)
+-ADD_SUBDIRECTORY(examples)
++if(DOCS)
++  ADD_SUBDIRECTORY(docs)
++endif()
++if(EXAMPLES)
++  ADD_SUBDIRECTORY(examples)
++endif()
diff --git a/net-mgmt/makenl/files/patch-docs_CMakeLists.txt b/net-mgmt/makenl/files/patch-docs_CMakeLists.txt
new file mode 100644
index 000000000000..e5dbe4cdebca
--- /dev/null
+++ b/net-mgmt/makenl/files/patch-docs_CMakeLists.txt
@@ -0,0 +1,41 @@
+--- docs/CMakeLists.txt.orig	2023-03-31 09:28:39 UTC
++++ docs/CMakeLists.txt
+@@ -2,32 +2,7 @@ PROJECT(makenl-docs NONE)
+ CMAKE_MINIMUM_REQUIRED(VERSION 2.8...3.19)
+ 
+ LIST(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules")
+-INCLUDE(pandocology)
+ 
+-add_document(
+-    TARGET makenl_html
+-    SOURCES makenl.md
+-    OUTPUT_FILE makenl.html
+-    PANDOC_DIRECTIVES --self-contained --metadata pagetitle='MakeNL NODELIST Generator Program by Ben Baker'
+-    NO_EXPORT_PRODUCT
+-)
+-
+-add_document(
+-    TARGET whatsnew_html
+-    SOURCES whatsnew.md
+-    OUTPUT_FILE whatsnew.html
+-    PANDOC_DIRECTIVES --self-contained --metadata pagetitle='MakeNL Revision History'
+-    NO_EXPORT_PRODUCT
+-)
+-
+-add_document(
+-    TARGET readme_html
+-    SOURCES readme.md
+-    OUTPUT_FILE readme.html
+-    PANDOC_DIRECTIVES --self-contained --metadata pagetitle='MakeNL read me first'
+-    NO_EXPORT_PRODUCT
+-)
+-
+ SET(makenl_DOCS
+     makenl.md
+     readme.md
+@@ -36,5 +11,4 @@ SET(makenl_DOCS
+ )
+ 
+ INSTALL(FILES ${makenl_DOCS} DESTINATION share/doc/makenl)
+-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/makenl.html DESTINATION share/doc/makenl)
+ INSTALL(FILES ${makenl_EXAMPLES} DESTINATION share/doc/makenl/examples)
diff --git a/net-mgmt/makenl/pkg-descr b/net-mgmt/makenl/pkg-descr
new file mode 100644
index 000000000000..69333baba51a
--- /dev/null
+++ b/net-mgmt/makenl/pkg-descr
@@ -0,0 +1,5 @@
+MakeNL is an open-sourced version of MakeNL, the Fido/FTN nodelist
+processing program.  It is used to process Fido/FTN nodelists for
+submission to coordinators and/or for creation of nodelist files for
+distribution.  It is a near drop-in replacement for an existing
+installation of MakeNL.
diff --git a/net-mgmt/makenl/pkg-plist b/net-mgmt/makenl/pkg-plist
new file mode 100644
index 000000000000..04f401668731
--- /dev/null
+++ b/net-mgmt/makenl/pkg-plist
@@ -0,0 +1,16 @@
+bin/makenl
+share/man/man1/makenl.1.gz
+%%EXAMPLES%%%%DOCSDIR%%/examples/cpyright.txt
+%%EXAMPLES%%%%DOCSDIR%%/examples/distrib.ctl
+%%EXAMPLES%%%%DOCSDIR%%/examples/epilog.txt
+%%EXAMPLES%%%%DOCSDIR%%/examples/hub.ctl
+%%EXAMPLES%%%%DOCSDIR%%/examples/net-l.ctl
+%%EXAMPLES%%%%DOCSDIR%%/examples/net-s.ctl
+%%EXAMPLES%%%%DOCSDIR%%/examples/node.ctl
+%%EXAMPLES%%%%DOCSDIR%%/examples/prolog.txt
+%%EXAMPLES%%%%DOCSDIR%%/examples/regional.ctl
+%%EXAMPLES%%%%DOCSDIR%%/examples/zone.ctl
+%%PORTDOCS%%%%DOCSDIR%%/fts-5000.txt
+%%PORTDOCS%%%%DOCSDIR%%/makenl.md
+%%PORTDOCS%%%%DOCSDIR%%/readme.md
+%%PORTDOCS%%%%DOCSDIR%%/whatsnew.md