-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathMakefile
143 lines (121 loc) · 4.48 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# SPDX-License-Identifier: MIT
#
# Copyright (C) 2023-2025 Anya Lin <[email protected]>
include $(TOPDIR)/rules.mk
PKG_UPSTREAM_NAME:=natmap
PKG_NAME:=natmapt
PKG_UPSTREAM_VERSION:=20250318
PKG_UPSTREAM_GITHASH:=
PKG_VERSION:=$(PKG_UPSTREAM_VERSION)$(if $(PKG_UPSTREAM_GITHASH),~$(call version_abbrev,$(PKG_UPSTREAM_GITHASH)))
PKG_RELEASE:=1
SCRIPTS_VERSION:=0.2025.2.19
PKG_SOURCE_SUBDIR:=$(PKG_UPSTREAM_NAME)-$(PKG_UPSTREAM_VERSION)
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR)
ifeq ($(PKG_UPSTREAM_GITHASH),)
PKG_SOURCE_URL:=https://github.com/heiher/natmap/releases/download/$(PKG_UPSTREAM_VERSION)
PKG_HASH:=7d421e918d6101a6b36e9c9ae487a8b415bc28c1e712593e192b033f888f7e51
PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.xz
else
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/heiher/natmap.git
PKG_SOURCE_VERSION:=$(PKG_UPSTREAM_GITHASH)
PKG_MIRROR_HASH:=d1baa9250ce52cb9f0cac05508705ed4fc14a14a0dbece648a1002f9a95d594b
PKG_SOURCE:=$(PKG_SOURCE_SUBDIR)-$(PKG_SOURCE_VERSION).tar.gz
endif
PKG_MAINTAINER:=Anya Lin <[email protected]>, Richard Yu <[email protected]>, Ray Wang <[email protected]>
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=License
PKG_USE_MIPS16:=0
PKG_BUILD_FLAGS:=no-mips16
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define Package/natmapt
SECTION:=net
CATEGORY:=Network
TITLE:=TCP/UDP port mapping tool for full cone NAT
URL:=https://github.com/heiher/natmap
DEPENDS:=+curl +jsonfilter +bash
endef
MAKE_FLAGS += REV_ID="$(PKG_VERSION)"
define Package/natmapt/conffiles
/etc/config/natmap
endef
define Package/natmapt/prerm
#!/bin/sh
rm -f "$$IPKG_INSTROOT/usr/bin/natmap-curl"
exit 0
endef
define Package/natmapt/install
$(CURDIR)/.prepare.sh $(VERSION) $(CURDIR) $(PKG_BUILD_DIR)/bin/natmap
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/natmap $(1)/usr/bin/
$(INSTALL_DIR) $(1)/usr/lib/natmap/
$(INSTALL_BIN) ./files/natmap-update.sh $(1)/usr/lib/natmap/update.sh
$(INSTALL_BIN) ./files/common.sh $(1)/usr/lib/natmap/common.sh
$(INSTALL_DIR) $(1)/etc/config/
$(INSTALL_CONF) ./files/natmap.config $(1)/etc/config/natmap
$(INSTALL_DIR) $(1)/etc/init.d/
$(INSTALL_BIN) ./files/natmap.init $(1)/etc/init.d/natmap
$(INSTALL_DIR) $(1)/etc/uci-defaults
$(INSTALL_BIN) ./files/natmap.defaults $(1)/etc/uci-defaults/97_natmap
$(INSTALL_DIR) $(1)/etc/natmap/client
$(INSTALL_BIN) ./files/client/qBittorrent $(1)/etc/natmap/client/
$(INSTALL_DIR) $(1)/etc/natmap/notify
$(INSTALL_BIN) ./files/notify/ntfy $(1)/etc/natmap/notify/
$(INSTALL_DIR) $(1)/etc/natmap/ddns
$(INSTALL_BIN) ./files/ddns/Cloudflare $(1)/etc/natmap/ddns/
endef
define Package/natmapt-scripts/Default
SECTION:=net
CATEGORY:=Network
TITLE:=NATMap $(1) scripts ($(2))
DEPENDS:=+natmapt
PROVIDES:=natmapt-$(1)-scripts
VERSION:=$(SCRIPTS_VERSION)
PKGARCH:=all
endef
define Package/natmapt-scripts/install/Default
$(INSTALL_DIR) $(1)/etc/natmap/$(2)
$(INSTALL_BIN) ./files/$(2)/$(3) $(1)/etc/natmap/$(2)/
endef
define Package/natmapt-client-script-transmission
$(call Package/natmapt-scripts/Default,client,Transmission)
DEPENDS+:=
endef
define Package/natmapt-client-script-transmission/install
$(call Package/natmapt-scripts/install/Default,$(1),client,Transmission)
endef
define Package/natmapt-client-script-deluge
$(call Package/natmapt-scripts/Default,client,Deluge)
DEPENDS+:=
endef
define Package/natmapt-client-script-deluge/install
$(call Package/natmapt-scripts/install/Default,$(1),client,Deluge)
endef
define Package/natmapt-notify-script-pushbullet
$(call Package/natmapt-scripts/Default,notify,Pushbullet)
DEPENDS+:=
endef
define Package/natmapt-notify-script-pushbullet/install
$(call Package/natmapt-scripts/install/Default,$(1),notify,Pushbullet)
endef
define Package/natmapt-notify-script-pushover
$(call Package/natmapt-scripts/Default,notify,Pushover)
DEPENDS+:=
endef
define Package/natmapt-notify-script-pushover/install
$(call Package/natmapt-scripts/install/Default,$(1),notify,Pushover)
endef
define Package/natmapt-notify-script-telegram
$(call Package/natmapt-scripts/Default,notify,Telegram)
DEPENDS+:=
endef
define Package/natmapt-notify-script-telegram/install
$(call Package/natmapt-scripts/install/Default,$(1),notify,Telegram)
endef
$(eval $(call BuildPackage,natmapt))
$(eval $(call BuildPackage,natmapt-client-script-transmission))
$(eval $(call BuildPackage,natmapt-client-script-deluge))
$(eval $(call BuildPackage,natmapt-notify-script-pushbullet))
$(eval $(call BuildPackage,natmapt-notify-script-pushover))
$(eval $(call BuildPackage,natmapt-notify-script-telegram))