smartsnmpd is an implementation of SNMP Agent developed by Credo Semi. It use Lua as script language to write SNMP MIB nodes to improve the efficiency of developtment. This package add native support for OpenWrt. Include using ubus and uci to get status/info. And, it use uloop as low level event library. So it's some sort of desgin for OpenWrt. Website: https://github.com/credosemi/smartsnmp Signed-off-by: Leo Ma <leoma@credosemi.com> Signed-off-by: Xiongfei Guo <xfguo@credosemi.com>
75 lines
2 KiB
Makefile
75 lines
2 KiB
Makefile
#
|
|
# Copyright (C) 2014 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:=smartsnmpd
|
|
PKG_VERSION:=2014-08-13
|
|
PKG_RELEASE=$(PKG_SOURCE_VERSION)
|
|
|
|
PKG_SOURCE_PROTO:=git
|
|
PKG_SOURCE_URL:=https://github.com/credosemi/smartsnmp.git
|
|
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
|
PKG_SOURCE_VERSION:=fb93473d895f058b2d8975d3cfa280ae2a8ae98d
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
|
PKG_MIRROR_MD5SUM:=
|
|
|
|
|
|
PKG_MAINTAINER:=Xiongfei Guo <xfguo@credosemi.com>
|
|
PKG_LICENSE:=GPL-2.0
|
|
PKG_LICENSE_FILES:=LICENSE
|
|
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
include $(INCLUDE_DIR)/scons.mk
|
|
|
|
define Package/smartsnmpd
|
|
SECTION:=net
|
|
CATEGORY:=Network
|
|
DEPENDS+=+lua +liblua +libubox +libuci-lua +libubus-lua
|
|
TITLE:=Smart-SNMP (Agent)
|
|
URL:=https://github.com/credosemi/smartsnmp
|
|
endef
|
|
|
|
define Package/smartsnmpd/description
|
|
smartsnmpd is an implementation of SNMP Agent. Its goal is "Easily
|
|
writing boring SNMP MIB with Lua". This package add native support
|
|
for OpenWrt. Include using ubus and uci to get system info/status.
|
|
And, it use libubox/uloop as low level event-driven library.
|
|
endef
|
|
|
|
SCONS_OPTIONS += --transport=uloop
|
|
|
|
define Build/Configure
|
|
(cd $(PKG_BUILD_DIR); \
|
|
$(SCONS_VARS) \
|
|
scons \
|
|
prefix=/usr \
|
|
$(SCONS_OPTIONS) \
|
|
)
|
|
endef
|
|
|
|
define Package/smartsnmpd/install
|
|
$(INSTALL_DIR) $(1)/usr/sbin
|
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/smartsnmpd $(1)/usr/sbin/smartsnmpd
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib/lua/smartsnmp
|
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/build/smartsnmp/core.so $(1)/usr/lib/lua/smartsnmp/core.so
|
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/lualib/smartsnmp/*.lua $(1)/usr/lib/lua/smartsnmp/
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib/lua/smartsnmp/mibs
|
|
$(INSTALL_BIN) ./files/mibs/*.lua $(1)/usr/lib/lua/smartsnmp/mibs/
|
|
|
|
$(INSTALL_DIR) $(1)/etc/config
|
|
$(INSTALL_DATA) ./files/smartsnmpd.conf $(1)/etc/config/smartsnmpd
|
|
|
|
$(INSTALL_DIR) $(1)/etc/init.d
|
|
$(INSTALL_BIN) ./files/smartsnmpd.init $(1)/etc/init.d/smartsnmpd
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,smartsnmpd))
|
|
|