aboutsummaryrefslogtreecommitdiffstats
path: root/package/network/services/ustp
diff options
context:
space:
mode:
Diffstat (limited to 'package/network/services/ustp')
-rw-r--r--package/network/services/ustp/Makefile41
-rw-r--r--package/network/services/ustp/files/ustpd.init14
2 files changed, 55 insertions, 0 deletions
diff --git a/package/network/services/ustp/Makefile b/package/network/services/ustp/Makefile
new file mode 100644
index 0000000000..682bd9f350
--- /dev/null
+++ b/package/network/services/ustp/Makefile
@@ -0,0 +1,41 @@
+#
+# Copyright (C) 2021 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=ustp
+PKG_RELEASE:=1
+
+PKG_SOURCE_URL=$(PROJECT_GIT)/project/ustp.git
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_DATE:=2021-08-25
+PKG_SOURCE_VERSION:=9622264cf92691f18ae9222b0a4c9db95af5d80d
+PKG_MIRROR_HASH:=de4ed29eee21192b60e8683633d916d251bcccd5701bdac83b5ba435189297f1
+
+PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
+PKG_LICENSE:=GPL-2.0
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
+
+define Package/ustp
+ SECTION:=net
+ CATEGORY:=Network
+ TITLE:=OpenWrt STP/RSTP daemon
+ DEPENDS:=+libubox +libubus
+endef
+
+TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include -flto
+TARGET_LDFLAGS += -flto -fuse-linker-plugin
+
+define Package/ustp/install
+ $(INSTALL_DIR) $(1)/sbin $(1)/etc/init.d
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/ipkg-install/sbin/* $(1)/sbin/
+ $(INSTALL_BIN) ./files/ustpd.init $(1)/etc/init.d/ustpd
+endef
+
+$(eval $(call BuildPackage,ustp))
diff --git a/package/network/services/ustp/files/ustpd.init b/package/network/services/ustp/files/ustpd.init
new file mode 100644
index 0000000000..9b741fec78
--- /dev/null
+++ b/package/network/services/ustp/files/ustpd.init
@@ -0,0 +1,14 @@
+#!/bin/sh /etc/rc.common
+# Copyright (c) 2021 OpenWrt.org
+
+START=50
+
+USE_PROCD=1
+PROG=/sbin/ustpd
+
+start_service() {
+ procd_open_instance
+ procd_set_param command "$PROG"
+ procd_set_param respawn
+ procd_close_instance
+}