OpenWrt – Blame information for rev 4
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
4 | office | 1 | # |
2 | # Copyright (C) 2016-2018 Jason A. Donenfeld <Jason@zx2c4.com> |
||
3 | # Copyright (C) 2016 Baptiste Jonglez <openwrt@bitsofnetworks.org> |
||
4 | # Copyright (C) 2016-2017 Dan Luedtke <mail@danrl.com> |
||
5 | # |
||
6 | # This is free software, licensed under the GNU General Public License v2. |
||
7 | # See /LICENSE for more information. |
||
8 | |||
9 | include $(TOPDIR)/rules.mk |
||
10 | include $(INCLUDE_DIR)/kernel.mk |
||
11 | |||
12 | PKG_NAME:=wireguard |
||
13 | |||
14 | PKG_VERSION:=0.0.20181119 |
||
15 | PKG_RELEASE:=1 |
||
16 | |||
17 | PKG_SOURCE:=WireGuard-$(PKG_VERSION).tar.xz |
||
18 | PKG_SOURCE_URL:=https://git.zx2c4.com/WireGuard/snapshot/ |
||
19 | PKG_HASH:=7d47f7996dd291069de4efb3097c42f769f60dc3ac6f850a4d5705f321e4406b |
||
20 | |||
21 | PKG_LICENSE:=GPL-2.0 Apache-2.0 |
||
22 | PKG_LICENSE_FILES:=COPYING |
||
23 | |||
24 | PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/WireGuard-$(PKG_VERSION) |
||
25 | PKG_BUILD_PARALLEL:=1 |
||
26 | PKG_USE_MIPS16:=0 |
||
27 | |||
28 | # WireGuard's makefile needs this to know where to build the kernel module |
||
29 | export KERNELDIR:=$(LINUX_DIR) |
||
30 | |||
31 | include $(INCLUDE_DIR)/package.mk |
||
32 | |||
33 | define Package/wireguard/Default |
||
34 | SECTION:=net |
||
35 | CATEGORY:=Network |
||
36 | SUBMENU:=VPN |
||
37 | URL:=https://www.wireguard.com |
||
38 | MAINTAINER:=Jason A. Donenfeld <Jason@zx2c4.com> \ |
||
39 | Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> |
||
40 | endef |
||
41 | |||
42 | define Package/wireguard/Default/description |
||
43 | WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes |
||
44 | state-of-the-art cryptography. It aims to be faster, simpler, leaner, and |
||
45 | more useful than IPSec, while avoiding the massive headache. It intends to |
||
46 | be considerably more performant than OpenVPN. WireGuard is designed as a |
||
47 | general purpose VPN for running on embedded interfaces and super computers |
||
48 | alike, fit for many different circumstances. It uses UDP. |
||
49 | endef |
||
50 | |||
51 | define Package/wireguard |
||
52 | $(call Package/wireguard/Default) |
||
53 | TITLE:=WireGuard meta-package |
||
54 | DEPENDS:=+wireguard-tools +kmod-wireguard |
||
55 | endef |
||
56 | |||
57 | include $(INCLUDE_DIR)/kernel-defaults.mk |
||
58 | include $(INCLUDE_DIR)/package-defaults.mk |
||
59 | |||
60 | # Used by Build/Compile/Default |
||
61 | MAKE_PATH:=src/tools |
||
62 | MAKE_VARS += PLATFORM=linux |
||
63 | |||
64 | define Build/Compile |
||
65 | $(MAKE) $(KERNEL_MAKEOPTS) M="$(PKG_BUILD_DIR)/src" modules |
||
66 | $(call Build/Compile/Default) |
||
67 | endef |
||
68 | |||
69 | define Package/wireguard/install |
||
70 | true |
||
71 | endef |
||
72 | |||
73 | define Package/wireguard/description |
||
74 | $(call Package/wireguard/Default/description) |
||
75 | endef |
||
76 | |||
77 | define Package/wireguard-tools |
||
78 | $(call Package/wireguard/Default) |
||
79 | TITLE:=WireGuard userspace control program (wg) |
||
80 | DEPENDS:=+libmnl +ip |
||
81 | endef |
||
82 | |||
83 | define Package/wireguard-tools/description |
||
84 | $(call Package/wireguard/Default/description) |
||
85 | |||
86 | This package provides the userspace control program for WireGuard, |
||
87 | `wg(8)`, a netifd protocol helper, and a re-resolve watchdog script. |
||
88 | endef |
||
89 | |||
90 | define Package/wireguard-tools/install |
||
91 | $(INSTALL_DIR) $(1)/usr/bin/ |
||
92 | $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/tools/wg $(1)/usr/bin/ |
||
93 | $(INSTALL_BIN) ./files/wireguard_watchdog $(1)/usr/bin/ |
||
94 | $(INSTALL_DIR) $(1)/lib/netifd/proto/ |
||
95 | $(INSTALL_BIN) ./files/wireguard.sh $(1)/lib/netifd/proto/ |
||
96 | endef |
||
97 | |||
98 | define KernelPackage/wireguard |
||
99 | SECTION:=kernel |
||
100 | CATEGORY:=Kernel modules |
||
101 | SUBMENU:=Network Support |
||
102 | TITLE:=WireGuard kernel module |
||
103 | DEPENDS:=+IPV6:kmod-udptunnel6 +kmod-udptunnel4 |
||
104 | FILES:= $(PKG_BUILD_DIR)/src/wireguard.$(LINUX_KMOD_SUFFIX) |
||
105 | AUTOLOAD:=$(call AutoProbe,wireguard) |
||
106 | endef |
||
107 | |||
108 | define KernelPackage/wireguard/description |
||
109 | $(call Package/wireguard/Default/description) |
||
110 | |||
111 | This package provides the kernel module for WireGuard. |
||
112 | endef |
||
113 | |||
114 | $(eval $(call BuildPackage,wireguard)) |
||
115 | $(eval $(call BuildPackage,wireguard-tools)) |
||
116 | $(eval $(call KernelPackage,wireguard)) |