#
# Copyright (C) 2011-2024 Entware
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#

include $(TOPDIR)/rules.mk

PKG_NAME:=amneziawg-go
PKG_VERSION:=v0.2.12
PKG_RELEASE:=1

PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=2e3f7d122ca8ef61e403fddc48a9db8fccd95dbf
PKG_SOURCE_URL:=https://github.com/amnezia-vpn/amneziawg-go
PKG_MIRROR_HASH:=4481b5ddb4f0533675492b7ec4a2bc5f5e6c2b25c95fd82347f01f510884ee9e

PKG_BUILD_PARALLEL:=1

include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/golang.mk

define Package/amneziawg-go/Default
	SECTION:=net
	CATEGORY:=Network
	SUBMENU:=VPN
	TITLE:=This is an implementation of amneziawg in Go
	URL:=https://github.com/amnezia-vpn/amneziawg-go
	MAINTAINER:=Entware team, https://entware.net
	DEPENDS:=+amneziawg-tools +ip-full
endef

define Package/amneziawg-go
	$(call Package/amneziawg-go/Default)
	VARIANT:=hf
endef

define Package/amneziawg-go_nohf
	$(call Package/amneziawg-go/Default)
	VARIANT:=nohf
	DEPENDS+=@arm
endef

define Package/amneziawg-go/description
 This is an implementation of amneziawg in Go.
endef

Package/amneziawg-go_nohf/description=$(Package/amneziawg-go/description)

define Package/amneziawg-go/install
	$(INSTALL_DIR) $(1)/opt/bin
	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/bin/amneziawg-go $(1)/opt/bin/amneziawg-go
endef

Package/amneziawg-go_nohf/install=$(Package/amneziawg-go/install)

$(eval $(call BuildPackage,amneziawg-go))
$(eval $(call BuildPackage,amneziawg-go_nohf))
