git: 6e7950427c6f - main - archivers/nevada-toolset: new port had been added (+)

From: Alexey Dokuchaev <danfe_at_FreeBSD.org>
Date: Thu, 10 Nov 2022 03:47:42 UTC
The branch main has been updated by danfe:

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

commit 6e7950427c6f0fd72fda986273f71557cb48c01b
Author:     Alexey Dokuchaev <danfe@FreeBSD.org>
AuthorDate: 2022-11-10 03:42:00 +0000
Commit:     Alexey Dokuchaev <danfe@FreeBSD.org>
CommitDate: 2022-11-10 03:42:00 +0000

    archivers/nevada-toolset: new port had been added (+)
    
    A small set of open-source tools for manipulating game data files
    from various early Command and Conquer games by Westwood Studios.
---
 archivers/Makefile                                 |  1 +
 archivers/nevada-toolset/Makefile                  | 26 ++++++++++++++++
 archivers/nevada-toolset/distinfo                  |  7 +++++
 .../nevada-toolset/files/patch-CMakeLists.txt      | 13 ++++++++
 .../files/patch-libs_baseconfig_CMakeLists.txt     | 36 ++++++++++++++++++++++
 .../files/patch-libs_baseconfig_src_endiantype.h   | 15 +++++++++
 .../files/patch-libs_captainslog_CMakeLists.txt    | 16 ++++++++++
 .../files/patch-src_ini2str_ini2str.cpp            | 10 ++++++
 .../files/patch-src_ini2str_strgen.cpp             | 10 ++++++
 archivers/nevada-toolset/pkg-descr                 | 10 ++++++
 10 files changed, 144 insertions(+)

diff --git a/archivers/Makefile b/archivers/Makefile
index 5d5ac093ae51..dabcf0a44367 100644
--- a/archivers/Makefile
+++ b/archivers/Makefile
@@ -92,6 +92,7 @@
     SUBDIR += minizip-ng
     SUBDIR += mscompress
     SUBDIR += mtf
+    SUBDIR += nevada-toolset
     SUBDIR += nfpm
     SUBDIR += nomarch
     SUBDIR += nwreckdum
diff --git a/archivers/nevada-toolset/Makefile b/archivers/nevada-toolset/Makefile
new file mode 100644
index 000000000000..b9db7858386c
--- /dev/null
+++ b/archivers/nevada-toolset/Makefile
@@ -0,0 +1,26 @@
+PORTNAME=	nevada-toolset
+PORTVERSION=	g20200815
+CATEGORIES=	archivers games
+
+MAINTAINER=	danfe@FreeBSD.org
+COMMENT=	Tools for working with old Westwood game data formats
+WWW=		https://github.com/TheAssemblyArmada/NevadaToolset
+
+LICENSE=	GPLv2+
+
+USES=		cmake
+USE_GITHUB=	yes
+
+GH_ACCOUNT=	TheAssemblyArmada
+GH_PROJECT=	NevadaToolset BaseConfig:bc CaptainsLog:cl
+GH_TAGNAME=	d1ef341 a98fc2c:bc 6a52d80:cl
+GH_SUBDIR=	libs/baseconfig:bc libs/captainslog:cl
+
+PLIST_FILES=	bin/makemix bin/strgen bin/unmakemix
+
+do-install:
+	${INSTALL_PROGRAM} \
+		${PLIST_FILES:[1..3]:S,bin,${INSTALL_WRKSRC}/src,} \
+		${STAGEDIR}${PREFIX}/bin
+
+.include <bsd.port.mk>
diff --git a/archivers/nevada-toolset/distinfo b/archivers/nevada-toolset/distinfo
new file mode 100644
index 000000000000..dc772c18d7ab
--- /dev/null
+++ b/archivers/nevada-toolset/distinfo
@@ -0,0 +1,7 @@
+TIMESTAMP = 1597529192
+SHA256 (TheAssemblyArmada-NevadaToolset-g20200815-d1ef341_GH0.tar.gz) = 21f202f96526c7b759d64353ad492985371778cba0b74add6bd66d68681c6279
+SIZE (TheAssemblyArmada-NevadaToolset-g20200815-d1ef341_GH0.tar.gz) = 469550
+SHA256 (TheAssemblyArmada-BaseConfig-a98fc2c_GH0.tar.gz) = a71cd1c4778234d8037ac564d6a3dafa0be89cd3a055e25b903678eb9a38c81b
+SIZE (TheAssemblyArmada-BaseConfig-a98fc2c_GH0.tar.gz) = 30058
+SHA256 (TheAssemblyArmada-CaptainsLog-6a52d80_GH0.tar.gz) = 8fe47d2802cb597cf21fb5e3ffb57bdbd62369bb565a669edf8b294511d4ff51
+SIZE (TheAssemblyArmada-CaptainsLog-6a52d80_GH0.tar.gz) = 17689
diff --git a/archivers/nevada-toolset/files/patch-CMakeLists.txt b/archivers/nevada-toolset/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..b8e8ecd2408b
--- /dev/null
+++ b/archivers/nevada-toolset/files/patch-CMakeLists.txt
@@ -0,0 +1,13 @@
+--- CMakeLists.txt.orig	2020-08-15 22:06:32 UTC
++++ CMakeLists.txt
+@@ -15,10 +15,6 @@ option(BUILD_GUI_TOOLS "Build GUI versions of tools wh
+ 
+ option(BUILD_GUI_TOOLS "Build GUI versions of tools where available (Requires wxWidgets)." OFF)
+ 
+-if(USE_ICU)
+-    find_package(ICU REQUIRED data i18n io tu uc)
+-endif()
+-
+ if(BUILD_GUI_TOOLS)
+     find_package(wxWidgets REQUIRED core base xrc xml adv)
+ endif()
diff --git a/archivers/nevada-toolset/files/patch-libs_baseconfig_CMakeLists.txt b/archivers/nevada-toolset/files/patch-libs_baseconfig_CMakeLists.txt
new file mode 100644
index 000000000000..6f1d10e4bbc0
--- /dev/null
+++ b/archivers/nevada-toolset/files/patch-libs_baseconfig_CMakeLists.txt
@@ -0,0 +1,36 @@
+--- libs/baseconfig/CMakeLists.txt.orig	2020-01-23 13:00:42 UTC
++++ libs/baseconfig/CMakeLists.txt
+@@ -18,7 +18,7 @@ find_package(Git)
+ # Locate git binary to provide information to the build environment
+ find_package(Git)
+ 
+-if(GIT_FOUND)
++if(GIT_FOUND AND FALSE)
+     # Define current git branch.
+     if(NOT GITINFO_BRANCH)
+         execute_process(
+@@ -90,15 +90,15 @@ else()
+     list(GET GITINFO_DATE_AND_TIME 2 GITINFO_COMMIT_TZONE)
+ else()
+     # Fallback information if git isn't found. This should never be present in official builds.
+-    set(GITINFO_BRANCH "netherrealm")
+-    set(GITINFO_COMMIT_SHA1 "DEADBEEFDEADBEEFDEADBEEFDEADBEEFDEADBEEF")
+-    set(GITINFO_COMMIT_SHA1_SHORT "DEADBEEF")
+-    set(GITINFO_COMMIT_COUNT 0)
+-    set(GITINFO_COMMIT_TSTAMP 0)
+-    set(GITINFO_COMMIT_DATE "1955-11-12")
+-    set(GITINFO_COMMIT_TIME "22:04:00")
+-    set(GITINFO_COMMIT_TZONE "+0000")
+-    set(GITINFO_COMMIT_AUTHOR "Someone")
++    set(GITINFO_BRANCH "master")
++    set(GITINFO_COMMIT_SHA1 "d1ef34144e8b58046e43bd33b82e146aa53e65cb")
++    set(GITINFO_COMMIT_SHA1_SHORT "d1ef341")
++    set(GITINFO_COMMIT_COUNT 28)
++    set(GITINFO_COMMIT_TSTAMP 1597529192)
++    set(GITINFO_COMMIT_DATE "2020-08-15")
++    set(GITINFO_COMMIT_TIME "23:06:32")
++    set(GITINFO_COMMIT_TZONE "+0100")
++    set(GITINFO_COMMIT_AUTHOR "OmniBlade")
+ endif()
+ 
+ # Set default version info for the git version module.
diff --git a/archivers/nevada-toolset/files/patch-libs_baseconfig_src_endiantype.h b/archivers/nevada-toolset/files/patch-libs_baseconfig_src_endiantype.h
new file mode 100644
index 000000000000..5cdb48f0f02f
--- /dev/null
+++ b/archivers/nevada-toolset/files/patch-libs_baseconfig_src_endiantype.h
@@ -0,0 +1,15 @@
+--- libs/baseconfig/src/endiantype.h.orig	2020-01-23 13:00:42 UTC
++++ libs/baseconfig/src/endiantype.h
+@@ -39,10 +39,10 @@
+ #define be64toh(x) OSSwapBigToHostInt64(x)
+ #define le64toh(x) OSSwapLittleToHostInt64(x)
+ 
+-#elif defined(__OpenBSD__)
++#elif defined(__OpenBSD__) || defined(__FreeBSD__)
+ #include	<sys/endian.h>
+ 
+-#elif defined(__NetBSD__) || defined(__FreeBSD__) || defined(__DragonFly__)
++#elif defined(__NetBSD__) || defined(__DragonFly__)
+ #include	<sys/endian.h>
+ 
+ #define be16toh(x) betoh16(x)
diff --git a/archivers/nevada-toolset/files/patch-libs_captainslog_CMakeLists.txt b/archivers/nevada-toolset/files/patch-libs_captainslog_CMakeLists.txt
new file mode 100644
index 000000000000..e48d95378c78
--- /dev/null
+++ b/archivers/nevada-toolset/files/patch-libs_captainslog_CMakeLists.txt
@@ -0,0 +1,16 @@
+--- libs/captainslog/CMakeLists.txt.orig	2020-02-14 15:15:30 UTC
++++ libs/captainslog/CMakeLists.txt
+@@ -31,13 +31,6 @@ elseif("${CMAKE_SYSTEM}" MATCHES "Darwin")
+     list(APPEND CAPTN_SRC src/captnmessage_win32.c)
+ elseif("${CMAKE_SYSTEM}" MATCHES "Darwin")
+     list(APPEND CAPTN_SRC src/captnmessage_macos.m)
+-else()
+-    # TODO make a null version so builds can be done without any dependencies.
+-    find_package(GTK3 REQUIRED gtk)
+-    if(GTK3_FOUND)
+-        message("Building GTK3 version.")
+-        list(APPEND CAPTN_SRC src/captnmessage_gtk.c)
+-    endif()
+ endif()
+ 
+ add_library(captnlog STATIC ${CAPTN_SRC} src/captainslog.h)
diff --git a/archivers/nevada-toolset/files/patch-src_ini2str_ini2str.cpp b/archivers/nevada-toolset/files/patch-src_ini2str_ini2str.cpp
new file mode 100644
index 000000000000..2fdf8d07f37f
--- /dev/null
+++ b/archivers/nevada-toolset/files/patch-src_ini2str_ini2str.cpp
@@ -0,0 +1,10 @@
+--- src/ini2str/ini2str.cpp.orig	2020-08-15 22:06:32 UTC
++++ src/ini2str/ini2str.cpp
+@@ -20,6 +20,7 @@
+ #include "endiantype.h"
+ #include "rawfile.h"
+ #include "strini.h"
++#include <cstdio>
+ #include <win32compat.h>
+ 
+ char g_LineBreak = '`';
diff --git a/archivers/nevada-toolset/files/patch-src_ini2str_strgen.cpp b/archivers/nevada-toolset/files/patch-src_ini2str_strgen.cpp
new file mode 100644
index 000000000000..69cce9b78350
--- /dev/null
+++ b/archivers/nevada-toolset/files/patch-src_ini2str_strgen.cpp
@@ -0,0 +1,10 @@
+--- src/ini2str/strgen.cpp.orig	2020-08-15 22:06:32 UTC
++++ src/ini2str/strgen.cpp
+@@ -15,6 +15,7 @@
+ #include "always.h"
+ #include "ini2str.h"
+ #include "win32compat.h"
++#include <cstdio>
+ #include <cstring>
+ 
+ using std::strcmp;
diff --git a/archivers/nevada-toolset/pkg-descr b/archivers/nevada-toolset/pkg-descr
new file mode 100644
index 000000000000..96251a09178f
--- /dev/null
+++ b/archivers/nevada-toolset/pkg-descr
@@ -0,0 +1,10 @@
+A small set of open-source tools for manipulating game data files from
+various early Command and Conquer games by Westwood Studios, namely:
+
+  - strgen, which converts between a UTF-8 INI file format for easy
+    translation and the in game binary string table in an old DOS
+    code page
+
+  - makemix, which packs files into MIX archive files
+
+  - unmakemix, which extracts files from MIX archive files