lede/package/lean/frpc/Makefile
2019-04-15 16:43:49 +08:00

94 lines
2.4 KiB
Makefile

#
# Copyright (C) 2019 Xingwang Liao
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=frp
PKG_VERSION:=0.25.3
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/fatedier/frp/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=68281965d04567d55f143b4a4c4d4369c1962937d80484b6b48e96a5dcf0b2e4
PKG_LICENSE:=Apache-2.0
PKG_LICENSE_FILES:=LICENSE
PKG_MAINTAINER:=Xingwang Liao <kuoruan@gmail.com>
PKG_BUILD_DEPENDS:=golang/host
PKG_BUILD_PARALLEL:=1
PKG_USE_MIPS16:=0
GO_PKG:=github.com/fatedier/frp
GO_PKG_BUILD_PKG:=github.com/fatedier/frp/cmd/...
include $(INCLUDE_DIR)/package.mk
include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk
define Package/frp/Default
TITLE:=A fast reverse proxy
URL:=https://github.com/fatedier/frp
endef
define Package/frp/Default/description
frp is a fast reverse proxy to help you expose a local server behind a NAT or firewall
to the internet. As of now, it supports tcp & udp, as well as httpand https protocols,
where requests can be forwarded to internal services by domain name.
endef
define frp/templates
define Package/$(1)
$$(call Package/frp/Default)
TITLE+= ($(1))
USERID:=frp=7000:frp=7000
SECTION:=net
CATEGORY:=Network
SUBMENU:=Web Servers/Proxies
DEPENDS:=$$(GO_ARCH_DEPENDS)
endef
define Package/$(1)/description
$$(call Package/frp/Default/description)
This package contains the $(1).
endef
define Package/$(1)/install
$$(INSTALL_DIR) $$(1)/usr/bin
$$(INSTALL_BIN) $$(GO_PKG_BUILD_BIN_DIR)/$(1) $$(1)/usr/bin/
endef
endef
define Package/golang-github-fatedier-frp-dev
$(call Package/frp/Default)
$(call GoPackage/GoSubMenu)
TITLE+= (source files)
PKGARCH:=all
endef
define Package/golang-github-fatedier-frp-dev/description
$(call Package/frp/Default/description)
This package provides the source files for frpc/frps.
endef
define Build/Compile
$(call GoPackage/Build/Compile,-ldflags "-s -w")
chmod +x $$(GO_PKG_BUILD_BIN_DIR)/frpc && upx --ultra-brute $$(GO_PKG_BUILD_BIN_DIR)/frpc
endef
FRP_COMPONENTS:=frpc frps
$(foreach component,$(FRP_COMPONENTS), \
$(eval $(call frp/templates,$(component))) \
$(eval $(call GoBinPackage,$(component))) \
$(eval $(call BuildPackage,$(component))) \
)
$(eval $(call GoSrcPackage,golang-github-fatedier-frp-dev))
$(eval $(call BuildPackage,golang-github-fatedier-frp-dev))