From 5602f7c33d4d54079e3cf227a88ffd6953dd1590 Mon Sep 17 00:00:00 2001 From: gatekeeper Date: Thu, 27 Mar 2025 22:53:15 -0700 Subject: [PATCH] sysutils/tvterm: New port: Terminal emulator powered by Turbo Vision Some alterations and additions were made to the original submission. PR: 285642 --- sysutils/Makefile | 1 + sysutils/tvterm/Makefile | 25 +++++++++++++++++++ sysutils/tvterm/distinfo | 5 ++++ .../patch-deps_tvision_source_CMakeLists.txt | 11 ++++++++ sysutils/tvterm/pkg-descr | 4 +++ sysutils/tvterm/pkg-plist | 15 +++++++++++ 6 files changed, 61 insertions(+) create mode 100644 sysutils/tvterm/Makefile create mode 100644 sysutils/tvterm/distinfo create mode 100644 sysutils/tvterm/files/patch-deps_tvision_source_CMakeLists.txt create mode 100644 sysutils/tvterm/pkg-descr create mode 100644 sysutils/tvterm/pkg-plist diff --git a/sysutils/Makefile b/sysutils/Makefile index be641b4679cc..964acc770de4 100644 --- a/sysutils/Makefile +++ b/sysutils/Makefile @@ -1396,6 +1396,7 @@ SUBDIR += tuckr SUBDIR += tuptime SUBDIR += turbostat + SUBDIR += tvterm SUBDIR += tw_cli SUBDIR += twa-kmod SUBDIR += twmn diff --git a/sysutils/tvterm/Makefile b/sysutils/tvterm/Makefile new file mode 100644 index 000000000000..c74c67413ca7 --- /dev/null +++ b/sysutils/tvterm/Makefile @@ -0,0 +1,25 @@ +PORTNAME= tvterm +PORTVERSION= g20250324 +CATEGORIES= sysutils + +MAINTAINER= tiago.gasiba@gmail.com +COMMENT= Terminal emulator powered by Turbo Vision +WWW= https://github.com/magiblot/tvterm + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/COPYRIGHT + +LIB_DEPENDS= libvterm.so:devel/libvterm + +USES= cmake ncurses + +USE_GITHUB= yes +GH_ACCOUNT= magiblot +GH_PROJECT= tvision:tv +GH_SUBDIR= deps/tvision:tv +GH_TAGNAME= feedbf7 d9bc009:tv + +CMAKE_ON= TVTERM_USE_SYSTEM_LIBVTERM \ + BUILD_SHARED_LIBS + +.include diff --git a/sysutils/tvterm/distinfo b/sysutils/tvterm/distinfo new file mode 100644 index 000000000000..7451e00cbf27 --- /dev/null +++ b/sysutils/tvterm/distinfo @@ -0,0 +1,5 @@ +TIMESTAMP = 1742858971 +SHA256 (magiblot-tvterm-g20250324-feedbf7_GH0.tar.gz) = fdcfc0f0c486685dd675d690ac44e6cdb59591654a3014fa246fe5e708fff78c +SIZE (magiblot-tvterm-g20250324-feedbf7_GH0.tar.gz) = 26384 +SHA256 (magiblot-tvision-d9bc009_GH0.tar.gz) = 641aa637539305520f9ad830ece9e32938e7bcec5e6ff0254c147097ee7ef81a +SIZE (magiblot-tvision-d9bc009_GH0.tar.gz) = 845000 diff --git a/sysutils/tvterm/files/patch-deps_tvision_source_CMakeLists.txt b/sysutils/tvterm/files/patch-deps_tvision_source_CMakeLists.txt new file mode 100644 index 000000000000..a8fdbccd2a32 --- /dev/null +++ b/sysutils/tvterm/files/patch-deps_tvision_source_CMakeLists.txt @@ -0,0 +1,11 @@ +--- deps/tvision/source/CMakeLists.txt.orig 2025-03-28 05:48:57 UTC ++++ deps/tvision/source/CMakeLists.txt +@@ -3,7 +3,7 @@ list(REMOVE_ITEM TVSOURCE "${CMAKE_CURRENT_LIST_DIR}/t + file(GLOB_RECURSE TVSOURCE "${CMAKE_CURRENT_LIST_DIR}/*/*.cpp") + list(REMOVE_ITEM TVSOURCE "${CMAKE_CURRENT_LIST_DIR}/tvision/geninc.cpp") + +-add_library(${PROJECT_NAME} STATIC ${TVSOURCE}) ++add_library(${PROJECT_NAME} ${TVSOURCE}) + add_library(${PROJECT_NAME}::${PROJECT_NAME} ALIAS ${PROJECT_NAME}) + + target_compile_features(${PROJECT_NAME} PUBLIC cxx_std_14) diff --git a/sysutils/tvterm/pkg-descr b/sysutils/tvterm/pkg-descr new file mode 100644 index 000000000000..ded0d02be224 --- /dev/null +++ b/sysutils/tvterm/pkg-descr @@ -0,0 +1,4 @@ +tvterm is an experimental terminal emulator widget and application +based on the Turbo Vision framework. It was created for the purpose +of demonstrating new features in Turbo Vision such as 24-bit color +support. diff --git a/sysutils/tvterm/pkg-plist b/sysutils/tvterm/pkg-plist new file mode 100644 index 000000000000..bd637fc780ec --- /dev/null +++ b/sysutils/tvterm/pkg-plist @@ -0,0 +1,15 @@ +bin/tvterm +include/tvterm/array.h +include/tvterm/consts.h +include/tvterm/debug.h +include/tvterm/mutex.h +include/tvterm/pty.h +include/tvterm/termctrl.h +include/tvterm/termemu.h +include/tvterm/termframe.h +include/tvterm/termview.h +include/tvterm/termwnd.h +include/tvterm/vtermemu.h +lib/cmake/tvterm/tvterm-config-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/tvterm/tvterm-config.cmake +lib/libtvterm-core.so