git: e6b4d197733c - main - devel/tup: new port had been added (file-based build system)

From: Alexey Dokuchaev <danfe_at_FreeBSD.org>
Date: Wed, 01 Jun 2022 02:09:46 UTC
The branch main has been updated by danfe:

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

commit e6b4d197733c3b72fd0efdf67e957dabd40f4383
Author:     Alexey Dokuchaev <danfe@FreeBSD.org>
AuthorDate: 2022-06-01 02:09:00 +0000
Commit:     Alexey Dokuchaev <danfe@FreeBSD.org>
CommitDate: 2022-06-01 02:09:00 +0000

    devel/tup: new port had been added (file-based build system)
    
    It inputs a list of file changes and a directed acyclic graph (DAG),
    then processes the DAG to execute the appropriate commands required
    to update dependent files.
    
    WWW: https://gittup.org/tup/
---
 devel/Makefile                           |  1 +
 devel/tup/Makefile                       | 35 ++++++++++++++++++++++++++++++++
 devel/tup/distinfo                       |  3 +++
 devel/tup/files/patch-src_tup_platform.c | 11 ++++++++++
 devel/tup/pkg-descr                      |  8 ++++++++
 5 files changed, 58 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 4e2ee38fd6e4..856c2ee4282b 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -7256,6 +7256,7 @@
     SUBDIR += trellis
     SUBDIR += trio
     SUBDIR += truc
+    SUBDIR += tup
     SUBDIR += ua_parser-core
     SUBDIR += uclcmd
     SUBDIR += ucommon
diff --git a/devel/tup/Makefile b/devel/tup/Makefile
new file mode 100644
index 000000000000..3e179d265f78
--- /dev/null
+++ b/devel/tup/Makefile
@@ -0,0 +1,35 @@
+# Created by: Alexey Dokuchaev <danfe@FreeBSD.org>
+
+PORTNAME=	tup
+PORTVERSION=	0.7.11
+DISTVERSIONPREFIX=	v
+CATEGORIES=	devel
+MASTER_SITES=	https://gittup.org/tup/releases/
+
+MAINTAINER=	danfe@FreeBSD.org
+COMMENT=	Fast and smart file-based build system
+
+LICENSE=	GPLv2
+
+LIB_DEPENDS=	libpcre.so:devel/pcre
+
+USES=		fuse pkgconfig
+
+DO_MAKE_BUILD=	${SETENV} ${MAKE_ENV} ${SH} bootstrap-nofuse.sh
+
+PLIST_FILES=	bin/${PORTNAME} share/man/man1/${PORTNAME}.1.gz \
+		share/vim/vimfiles/syntax/${PORTNAME}.vim
+
+post-patch:
+	@${REINPLACE_CMD} -e 's,-Os,${CFLAGS},' ${WRKSRC}/Tuprules.tup
+
+do-install:
+	${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/${PORTNAME} \
+		${STAGEDIR}${PREFIX}/bin
+	${INSTALL_MAN} ${INSTALL_WRKSRC}/${PORTNAME}.1 \
+		${STAGEDIR}${MAN1PREFIX}/share/man/man1
+	@${MKDIR} ${STAGEDIR}${PREFIX}/share/vim/vimfiles/syntax
+	${INSTALL_DATA} ${INSTALL_WRKSRC}/contrib/syntax/*.vim \
+		${STAGEDIR}${PREFIX}/share/vim/vimfiles/syntax
+
+.include <bsd.port.mk>
diff --git a/devel/tup/distinfo b/devel/tup/distinfo
new file mode 100644
index 000000000000..57cbb1d3f47a
--- /dev/null
+++ b/devel/tup/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1621101608
+SHA256 (tup-v0.7.11.tar.gz) = ebfb5e28afd7eb6c1718930c17e703c5142e3345031e7f001c752a09adc3a784
+SIZE (tup-v0.7.11.tar.gz) = 4683364
diff --git a/devel/tup/files/patch-src_tup_platform.c b/devel/tup/files/patch-src_tup_platform.c
new file mode 100644
index 000000000000..a0285919f806
--- /dev/null
+++ b/devel/tup/files/patch-src_tup_platform.c
@@ -0,0 +1,11 @@
+--- src/tup/platform.c.orig	2021-05-14 16:20:52 UTC
++++ src/tup/platform.c
+@@ -58,6 +58,8 @@ const char *tup_arch = "arm64";
+ const char *tup_arch = "arm";
+ #elif __aarch64__
+ const char *tup_arch = "arm64";
++#elif __riscv
++const char *tup_arch = "riscv";
+ #else
+ #error Unsupported cpu architecture. Please add support in tup/platform.c
+ #endif
diff --git a/devel/tup/pkg-descr b/devel/tup/pkg-descr
new file mode 100644
index 000000000000..59b5d028ca80
--- /dev/null
+++ b/devel/tup/pkg-descr
@@ -0,0 +1,8 @@
+Tup is a file-based build system for Unix and Windows.  It takes as input
+a list of file changes and a directed acyclic graph (DAG).  It then
+processes the DAG to execute the appropriate commands required to update
+dependent files.  Updates are performed with very little overhead since
+tup implements powerful build algorithms to avoid doing unnecessary work,
+so you can stay focused on your project rather than on your build system.
+
+WWW: https://gittup.org/tup/