From patchwork Tue Jun 16 17:19:01 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Bilas X-Patchwork-Id: 1310622 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=busybox.net (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=grinn-global.com Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 49mZgP74d1z9sRN for ; Wed, 17 Jun 2020 03:19:13 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id D701486BC6; Tue, 16 Jun 2020 17:19:10 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6AU+fvYqTXIF; Tue, 16 Jun 2020 17:19:09 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id F111B89608; Tue, 16 Jun 2020 17:19:08 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 004E31BF3D7 for ; Tue, 16 Jun 2020 17:19:08 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id F162A89608 for ; Tue, 16 Jun 2020 17:19:07 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id kdAcFnzVHkvu for ; Tue, 16 Jun 2020 17:19:06 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from smtp.megiteam.pl (smtp.megiteam.pl [31.186.83.105]) by whitealder.osuosl.org (Postfix) with ESMTPS id A9E3B89607 for ; Tue, 16 Jun 2020 17:19:06 +0000 (UTC) Received: from host-81-161-202-27.oxylion.net.pl ([81.161.202.27] helo=bartekk-pc.grinndev.ovh) by smtp.megiteam.pl with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86.2_XX) (envelope-from ) id 1jlFEl-0000Kd-SN; Tue, 16 Jun 2020 19:19:04 +0200 From: Bartosz Bilas To: buildroot@buildroot.org Date: Tue, 16 Jun 2020 19:19:01 +0200 Message-Id: <20200616171901.4566-1-b.bilas@grinn-global.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Subject: [Buildroot] [PATCH v2] package/ttyd: new package X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Bartosz Bilas Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" ttyd is a simple command-line tool for sharing terminal over the web. Signed-off-by: Bartosz Bilas --- Changes v1 -> v2: - Add the separate dependency on MMU and the availability of atomic operations. (Suggested by Baruch) DEVELOPERS | 1 + package/Config.in | 1 + .../ttyd/0001-cmake-fix-build-without-C.patch | 41 +++++++++++++++++++ package/ttyd/Config.in | 21 ++++++++++ package/ttyd/ttyd.hash | 3 ++ package/ttyd/ttyd.mk | 13 ++++++ 6 files changed, 80 insertions(+) create mode 100644 package/ttyd/0001-cmake-fix-build-without-C.patch create mode 100644 package/ttyd/Config.in create mode 100644 package/ttyd/ttyd.hash create mode 100644 package/ttyd/ttyd.mk diff --git a/DEVELOPERS b/DEVELOPERS index 76a153d695..cbe6bc1856 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -294,6 +294,7 @@ F: board/stmicroelectronics/stm32mp157a-dk1/ F: configs/stm32mp157a_dk1_defconfig F: package/python-esptool/ F: package/python-pyaes/ +F: package/ttyd/ F: package/qt5/qt5scxml/ F: package/qt5/qt5webview/ diff --git a/package/Config.in b/package/Config.in index d32eadab88..1f44fe7ca9 100644 --- a/package/Config.in +++ b/package/Config.in @@ -2310,6 +2310,7 @@ comment "Utilities" source "package/time/Config.in" source "package/tini/Config.in" source "package/tmux/Config.in" + source "package/ttyd/Config.in" source "package/which/Config.in" source "package/xmlstarlet/Config.in" source "package/xxhash/Config.in" diff --git a/package/ttyd/0001-cmake-fix-build-without-C.patch b/package/ttyd/0001-cmake-fix-build-without-C.patch new file mode 100644 index 0000000000..8d5d35ca19 --- /dev/null +++ b/package/ttyd/0001-cmake-fix-build-without-C.patch @@ -0,0 +1,41 @@ +From cec921a680576865847d98552ded2a67efd8eb50 Mon Sep 17 00:00:00 2001 +From: Bartosz Bilas +Date: Mon, 15 Jun 2020 17:32:26 +0200 +Subject: [PATCH] cmake: fix build without C++ + +Specify that ttyd is a C project to avoid the +following build failure if a C++ compiler isn't found. + +CMake Error at CMakeLists.txt:3 (project): + The CMAKE_CXX_COMPILER: + + /home/bartekk/Projects/buildroots/buildroot-dev/buildroot/output/host/bin/arm-buildroot-linux-uclibcgnueabihf-g++ + + is not a full path to an existing compiler tool. + + Tell CMake where to find the compiler by setting either the environment + variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path + to the compiler, or to the compiler name if it is in the PATH. + +Signed-off-by: Bartosz Bilas +--- + Upstream status: https://github.com/tsl0922/ttyd/pull/382 + + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8061f47..efd76d2 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,6 +1,6 @@ + cmake_minimum_required(VERSION 2.8) + +-project(ttyd) ++project(ttyd C) + set(PROJECT_VERSION "1.6.0") + + find_package(Git) +-- +2.27.0 + diff --git a/package/ttyd/Config.in b/package/ttyd/Config.in new file mode 100644 index 0000000000..2665c63b1f --- /dev/null +++ b/package/ttyd/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_TTYD + bool "ttyd" + depends on !BR2_STATIC_LIBS # libuv + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv + depends on BR2_USE_MMU # libuv + select BR2_PACKAGE_JSON_C + select BR2_PACKAGE_LIBUV + select BR2_PACKAGE_LIBWEBSOCKETS + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_ZLIB + help + ttyd is a simple command-line tool for sharing terminal + over the web. + + https://github.com/tsl0922/ttyd + +comment "ttyd needs a toolchain w/ NPTL, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/ttyd/ttyd.hash b/package/ttyd/ttyd.hash new file mode 100644 index 0000000000..c73af44af3 --- /dev/null +++ b/package/ttyd/ttyd.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 d14740bc82be0d0760dd0a3c97acbcbde490412a4edc61edabe46d311b068f83 ttyd-1.6.0.tar.gz +sha256 711762f081c180ade3d09d7b0b7537eaf35eca8d1671e47bc66eaa39376edb12 LICENSE diff --git a/package/ttyd/ttyd.mk b/package/ttyd/ttyd.mk new file mode 100644 index 0000000000..a7e2ee9bb5 --- /dev/null +++ b/package/ttyd/ttyd.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# ttyd +# +################################################################################ + +TTYD_VERSION = 1.6.0 +TTYD_SITE = $(call github,tsl0922,ttyd,$(TTYD_VERSION)) +TTYD_LICENSE = MIT +TTYD_LICENSE_FILES = LICENSE +TTYD_DEPENDENCIES = json-c libuv libwebsockets openssl zlib + +$(eval $(cmake-package))