Makefile 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446
  1. #
  2. # Copyright (C) 2008-2018 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. #
  6. include $(TOPDIR)/rules.mk
  7. PKG_NAME:=ddns-scripts
  8. # Version == major.minor.patch
  9. # increase on new functionality (minor) or patches (patch)
  10. PKG_VERSION:=2.7.8
  11. # Release == build
  12. # increase on changes of services files or tld_names.dat
  13. PKG_RELEASE:=11
  14. PKG_LICENSE:=GPL-2.0
  15. PKG_MAINTAINER:=
  16. include $(INCLUDE_DIR)/package.mk
  17. # no default dependencies
  18. PKG_DEFAULT_DEPENDS=
  19. define Package/ddns-scripts/Default
  20. SECTION:=net
  21. CATEGORY:=Network
  22. SUBMENU:=IP Addresses and Names
  23. PKGARCH:=all
  24. endef
  25. ###### *************************************************************************
  26. define Package/ddns-scripts
  27. $(call Package/ddns-scripts/Default)
  28. TITLE:=Dynamic DNS Client scripts (with IPv6 support)
  29. endef
  30. # shown in LuCI package description
  31. define Package/ddns-scripts/description
  32. Dynamic DNS Client scripts (with IPv6 support) - Info: http://wiki.openwrt.org/doc/howto/ddns.client
  33. endef
  34. # shown in menuconfig <Help>
  35. define Package/ddns-scripts/config
  36. help
  37. A highly configurable set of scripts for doing dynamic dns updates.
  38. - IPv6 support
  39. - DNS server support
  40. - Glue Record support (require BIND host or KNOT host)
  41. - DNS requests via TCP
  42. - Proxy server support
  43. - log file support
  44. - support to run once
  45. Version: $(PKG_VERSION)-$(PKG_RELEASE)
  46. Info : http://wiki.openwrt.org/doc/howto/ddns.client
  47. endef
  48. ###### *************************************************************************
  49. define Package/ddns-scripts_cloudflare.com-v4
  50. $(call Package/ddns-scripts/Default)
  51. TITLE:=CloudFlare.com API v4 (requires cURL)
  52. DEPENDS:=ddns-scripts +curl
  53. endef
  54. define Package/ddns-scripts_cloudflare.com-v4/description
  55. Dynamic DNS Client scripts extension for CloudFlare.com API-v4 (require/install cURL)
  56. endef
  57. ###### *************************************************************************
  58. define Package/ddns-scripts_freedns_42_pl
  59. $(call Package/ddns-scripts/Default)
  60. TITLE:=DDNS extension for FreeDNS.42.pl (requires cURL)
  61. DEPENDS:=ddns-scripts +curl
  62. endef
  63. define Package/ddns-scripts_freedns_42_pl/description
  64. Dynamic DNS Client scripts extension for freedns.42.pl
  65. endef
  66. ###### *************************************************************************
  67. define Package/ddns-scripts_godaddy.com-v1
  68. $(call Package/ddns-scripts/Default)
  69. TITLE:=GoDaddy.com (require cURL)
  70. DEPENDS:=ddns-scripts +curl
  71. endef
  72. define Package/ddns-scripts_godaddy.com-v1/description
  73. Dynamic DNS Client scripts extension for GoDaddy.com (require/install cURL)
  74. endef
  75. ###### *************************************************************************
  76. define Package/ddns-scripts_no-ip_com
  77. $(call Package/ddns-scripts/Default)
  78. TITLE:=DDNS extension for No-IP.com
  79. DEPENDS:=ddns-scripts
  80. endef
  81. define Package/ddns-scripts_no-ip_com/description
  82. Dynamic DNS Client scripts extension for No-IP.com
  83. endef
  84. ###### *************************************************************************
  85. define Package/ddns-scripts_nsupdate
  86. $(call Package/ddns-scripts/Default)
  87. TITLE:=DDNS extension using Bind nsupdate
  88. DEPENDS:=ddns-scripts +bind-client
  89. endef
  90. define Package/ddns-scripts_nsupdate/description
  91. Dynamic DNS Client scripts extension for direct updates using Bind nsupdate
  92. endef
  93. define Package/ddns-scripts_nsupdate/config
  94. help
  95. The script directly updates a PowerDNS (or maybe bind server) via nsupdate
  96. from bind-client package. It requires
  97. "option dns_server" to be set to the server to be used by nsupdate.
  98. "option username" should be set to the key name and
  99. "option password" to the base64 encoded shared secret.
  100. endef
  101. ###### *************************************************************************
  102. define Package/ddns-scripts_route53-v1
  103. $(call Package/ddns-scripts/Default)
  104. TITLE:=Amazon AWS Route 53 API v1
  105. DEPENDS:=ddns-scripts +curl +openssl-util
  106. endef
  107. define Package/ddns-scripts_route53-v1/description
  108. Dynamic DNS Client scripts extension for Amazon AWS Route53. Note: You
  109. must also install ca-certificate or ca-bundle.
  110. It requires:
  111. "option username" to be a valid AWS access key id
  112. "option password" to be the matching AWS secret key id
  113. "option domain" to contain the hosted zone ID
  114. endef
  115. ###### *************************************************************************
  116. define Build/Configure
  117. endef
  118. define Build/Compile
  119. $(CP) ./files $(PKG_BUILD_DIR)
  120. # ensure that VERSION inside dynamic_dns_functions.sh reflect PKG_VERSION of Makefile
  121. $(SED) '/^VERSION=*/s/.*/VERSION="$(PKG_VERSION)-$(PKG_RELEASE)"/' $(PKG_BUILD_DIR)/files/dynamic_dns_functions.sh
  122. # remove comments, white spaces and empty lines
  123. for FILE in `find $(PKG_BUILD_DIR)/files -type f`; do \
  124. $(SED) 's/^[[:space:]]*//' \
  125. -e '/^#[[:space:]]\|^#$$$$/d' \
  126. -e 's/[[:space:]]#[[:space:]].*$$$$//' \
  127. -e 's/[[:space:]]*$$$$//' \
  128. -e '/^\/\/[[:space:]]/d' \
  129. -e '/^[[:space:]]*$$$$/d' $$$$FILE; \
  130. done
  131. endef
  132. define Package/ddns-scripts/conffiles
  133. /etc/config/ddns
  134. endef
  135. ###### *************************************************************************
  136. define Package/ddns-scripts/preinst
  137. #!/bin/sh
  138. # if NOT run buildroot then stop service
  139. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  140. exit 0 # suppress errors
  141. endef
  142. define Package/ddns-scripts/install
  143. $(INSTALL_DIR) $(1)/etc/uci-defaults
  144. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.defaults $(1)/etc/uci-defaults/ddns
  145. $(INSTALL_DIR) $(1)/etc/hotplug.d/iface
  146. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.hotplug $(1)/etc/hotplug.d/iface/95-ddns
  147. $(INSTALL_DIR) $(1)/etc/init.d
  148. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.init $(1)/etc/init.d/ddns
  149. $(INSTALL_DIR) $(1)/etc/config
  150. $(INSTALL_CONF) $(PKG_BUILD_DIR)/files/ddns.config $(1)/etc/config/ddns
  151. $(INSTALL_DIR) $(1)/etc/ddns
  152. $(INSTALL_DATA) $(PKG_BUILD_DIR)/files/services* $(1)/etc/ddns
  153. $(INSTALL_DIR) $(1)/usr/lib/ddns
  154. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/dynamic_dns_*.sh $(1)/usr/lib/ddns
  155. endef
  156. define Package/ddns-scripts/postinst
  157. #!/bin/sh
  158. # if NOT run buildroot and PKG_UPGRADE then (re)start service if enabled
  159. [ -z "$${IPKG_INSTROOT}" -a "$${PKG_UPGRADE}" = "1" ] && {
  160. [ -x /etc/uci-defaults/ddns ] && \
  161. /etc/uci-defaults/ddns && \
  162. rm -f /etc/uci-defaults/ddns >/dev/null 2>&1
  163. /etc/init.d/ddns enabled && \
  164. /etc/init.d/ddns start >/dev/null 2>&1
  165. }
  166. exit 0 # suppress errors
  167. endef
  168. define Package/ddns-scripts/prerm
  169. #!/bin/sh
  170. # if run within buildroot exit
  171. [ -n "$${IPKG_INSTROOT}" ] && exit 0
  172. # stop running scripts
  173. /etc/init.d/ddns stop
  174. /etc/init.d/ddns disable
  175. # clear LuCI indexcache
  176. rm -f /tmp/luci-indexcache >/dev/null 2>&1
  177. exit 0 # suppress errors
  178. endef
  179. ###### *************************************************************************
  180. define Package/ddns-scripts_cloudflare.com-v4/preinst
  181. #!/bin/sh
  182. # if NOT run buildroot then stop service
  183. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  184. exit 0 # suppress errors
  185. endef
  186. define Package/ddns-scripts_cloudflare.com-v4/install
  187. $(INSTALL_DIR) $(1)/etc/uci-defaults
  188. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.defaults $(1)/etc/uci-defaults/ddns_cloudflare.com-v4
  189. $(INSTALL_DIR) $(1)/usr/lib/ddns
  190. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_cloudflare_com_v4.sh $(1)/usr/lib/ddns
  191. endef
  192. define Package/ddns-scripts_cloudflare.com-v4/postinst
  193. #!/bin/sh
  194. # remove old services file entries
  195. /bin/sed -i '/cloudflare\.com-v4/d' $${IPKG_INSTROOT}/etc/ddns/services >/dev/null 2>&1
  196. /bin/sed -i '/cloudflare\.com-v4/d' $${IPKG_INSTROOT}/etc/ddns/services_ipv6 >/dev/null 2>&1
  197. # and create new
  198. printf "%s\\t%s\\n" '"cloudflare.com-v4"' '"update_cloudflare_com_v4.sh"' >> $${IPKG_INSTROOT}/etc/ddns/services
  199. printf "%s\\t%s\\n" '"cloudflare.com-v4"' '"update_cloudflare_com_v4.sh"' >> $${IPKG_INSTROOT}/etc/ddns/services_ipv6
  200. # on real system restart service if enabled
  201. [ -z "$${IPKG_INSTROOT}" ] && {
  202. [ -x /etc/uci-defaults/ddns_cloudflare.com-v4 ] && \
  203. /etc/uci-defaults/ddns_cloudflare.com-v4 && \
  204. rm -f /etc/uci-defaults/ddns_cloudflare.com-v4 >/dev/null 2>&1
  205. /etc/init.d/ddns enabled && \
  206. /etc/init.d/ddns start >/dev/null 2>&1
  207. }
  208. exit 0 # suppress errors
  209. endef
  210. define Package/ddns-scripts_cloudflare.com-v4/prerm
  211. #!/bin/sh
  212. # if NOT run buildroot then stop service
  213. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  214. # remove services file entries
  215. /bin/sed -i '/cloudflare\.com-v4/d' $${IPKG_INSTROOT}/etc/ddns/services >/dev/null 2>&1
  216. /bin/sed -i '/cloudflare\.com-v4/d' $${IPKG_INSTROOT}/etc/ddns/services_ipv6 >/dev/null 2>&1
  217. exit 0 # suppress errors
  218. endef
  219. ###### *************************************************************************
  220. define Package/ddns-scripts_freedns_42_pl/preinst
  221. #!/bin/sh
  222. # if NOT run buildroot then stop service
  223. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  224. exit 0 # suppress errors
  225. endef
  226. define Package/ddns-scripts_freedns_42_pl/install
  227. $(INSTALL_DIR) $(1)/etc/uci-defaults
  228. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.defaults $(1)/etc/uci-defaults/ddns_freedns_42_pl
  229. $(INSTALL_DIR) $(1)/usr/lib/ddns
  230. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_freedns_42_pl.sh $(1)/usr/lib/ddns
  231. endef
  232. define Package/ddns-scripts_freedns_42_pl/postinst
  233. #!/bin/sh
  234. # remove old services file entries
  235. /bin/sed -i '/freedns\.42\.pl/d' $${IPKG_INSTROOT}/etc/ddns/services >/dev/null 2>&1
  236. # and create new
  237. printf "%s\\t%s\\n" '"freedns.42.pl"' '"update_freedns_42_pl.sh"' >> $${IPKG_INSTROOT}/etc/ddns/services
  238. # on real system restart service if enabled
  239. [ -z "$${IPKG_INSTROOT}" ] && {
  240. [ -x /etc/uci-defaults/ddns_freedns_42_pl ] && \
  241. /etc/uci-defaults/ddns_freedns_42_pl && \
  242. rm -f /etc/uci-defaults/ddns_freedns_42_pl >/dev/null 2>&1
  243. /etc/init.d/ddns enabled && \
  244. /etc/init.d/ddns start >/dev/null 2>&1
  245. }
  246. exit 0 # suppress errors
  247. endef
  248. define Package/ddns-scripts_freedns_42_pl/prerm
  249. #!/bin/sh
  250. # if NOT run buildroot then stop service
  251. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  252. # remove services file entries
  253. /bin/sed -i '/freedns\.42\.pl/d' $${IPKG_INSTROOT}/etc/ddns/services >/dev/null 2>&1
  254. exit 0 # suppress errors
  255. endef
  256. ###### *************************************************************************
  257. define Package/ddns-scripts_godaddy.com-v1/preinst
  258. #!/bin/sh
  259. # if NOT run buildroot then stop service
  260. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  261. exit 0 # suppress errors
  262. endef
  263. define Package/ddns-scripts_godaddy.com-v1/install
  264. $(INSTALL_DIR) $(1)/etc/uci-defaults
  265. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.defaults $(1)/etc/uci-defaults/ddns_godaddy.com-v1
  266. $(INSTALL_DIR) $(1)/usr/lib/ddns
  267. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_godaddy_com_v1.sh $(1)/usr/lib/ddns
  268. endef
  269. define Package/ddns-scripts_godaddy.com-v1/postinst
  270. #!/bin/sh
  271. # remove old services file entries
  272. /bin/sed -i '/godaddy\.com-v1/d' $${IPKG_INSTROOT}/etc/ddns/services >/dev/null 2>&1
  273. /bin/sed -i '/godaddy\.com-v1/d' $${IPKG_INSTROOT}/etc/ddns/services_ipv6 >/dev/null 2>&1
  274. # and create new
  275. printf "%s\\t%s\\n" '"godaddy.com-v1"' '"update_godaddy_com_v1.sh"' >> $${IPKG_INSTROOT}/etc/ddns/services
  276. printf "%s\\t%s\\n" '"godaddy.com-v1"' '"update_godaddy_com_v1.sh"' >> $${IPKG_INSTROOT}/etc/ddns/services_ipv6
  277. # on real system restart service if enabled
  278. [ -z "$${IPKG_INSTROOT}" ] && {
  279. [ -x /etc/uci-defaults/ddns_godaddy.com-v1 ] && \
  280. /etc/uci-defaults/ddns_godaddy.com-v1 && \
  281. rm -f /etc/uci-defaults/ddns_godaddy.com-v1 >/dev/null 2>&1
  282. /etc/init.d/ddns enabled \
  283. && /etc/init.d/ddns start >/dev/null 2>&1
  284. }
  285. exit 0 # suppress errors
  286. endef
  287. define Package/ddns-scripts_godaddy.com-v1/prerm
  288. #!/bin/sh
  289. # if NOT run buildroot then stop service
  290. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  291. # remove services file entries
  292. /bin/sed -i '/godaddy\.com-v1/d' $${IPKG_INSTROOT}/etc/ddns/services >/dev/null 2>&1
  293. /bin/sed -i '/godaddy\.com-v1/d' $${IPKG_INSTROOT}/etc/ddns/services_ipv6 >/dev/null 2>&1
  294. exit 0 # suppress errors
  295. endef
  296. ###### *************************************************************************
  297. define Package/ddns-scripts_no-ip_com/preinst
  298. #!/bin/sh
  299. # if NOT run buildroot then stop service
  300. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  301. exit 0 # suppress errors
  302. endef
  303. define Package/ddns-scripts_no-ip_com/install
  304. $(INSTALL_DIR) $(1)/etc/uci-defaults
  305. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.defaults $(1)/etc/uci-defaults/ddns_no-ip_com
  306. $(INSTALL_DIR) $(1)/usr/lib/ddns
  307. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_no-ip_com.sh $(1)/usr/lib/ddns
  308. endef
  309. define Package/ddns-scripts_no-ip_com/postinst
  310. #!/bin/sh
  311. # remove old services file entries
  312. /bin/sed -i '/no-ip\.com/d' $${IPKG_INSTROOT}/etc/ddns/services >/dev/null 2>&1
  313. # and create new
  314. printf "%s\\t%s\\n" '"no-ip.com"' '"update_no-ip_com.sh"' >> $${IPKG_INSTROOT}/etc/ddns/services
  315. # on real system restart service if enabled
  316. [ -z "$${IPKG_INSTROOT}" ] && {
  317. [ -x /etc/uci-defaults/ddns_no-ip_com ] && \
  318. /etc/uci-defaults/ddns_no-ip_com && \
  319. rm -f /etc/uci-defaults/ddns_no-ip_com >/dev/null 2>&1
  320. /etc/init.d/ddns enabled && \
  321. /etc/init.d/ddns start >/dev/null 2>&1
  322. }
  323. exit 0 # suppress errors
  324. endef
  325. define Package/ddns-scripts_no-ip_com/prerm
  326. #!/bin/sh
  327. # if NOT run buildroot then stop service
  328. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  329. # remove services file entries
  330. /bin/sed -i '/no-ip\.com/d' $${IPKG_INSTROOT}/etc/ddns/services >/dev/null 2>&1
  331. exit 0 # suppress errors
  332. endef
  333. ###### *************************************************************************
  334. define Package/ddns-scripts_nsupdate/preinst
  335. #!/bin/sh
  336. # if NOT run buildroot then stop service
  337. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  338. exit 0 # suppress errors
  339. endef
  340. define Package/ddns-scripts_nsupdate/install
  341. $(INSTALL_DIR) $(1)/etc/uci-defaults
  342. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.defaults $(1)/etc/uci-defaults/ddns_nsupdate
  343. $(INSTALL_DIR) $(1)/usr/lib/ddns
  344. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_nsupdate.sh $(1)/usr/lib/ddns
  345. endef
  346. define Package/ddns-scripts_nsupdate/postinst
  347. #!/bin/sh
  348. # remove old services file entries
  349. /bin/sed -i '/bind-nsupdate/d' $${IPKG_INSTROOT}/etc/ddns/services >/dev/null 2>&1
  350. /bin/sed -i '/bind-nsupdate/d' $${IPKG_INSTROOT}/etc/ddns/services_ipv6 >/dev/null 2>&1
  351. # and create new
  352. printf "%s\\t%s\\n" '"bind-nsupdate"' '"update_nsupdate.sh"' >> $${IPKG_INSTROOT}/etc/ddns/services
  353. printf "%s\\t%s\\n" '"bind-nsupdate"' '"update_nsupdate.sh"' >> $${IPKG_INSTROOT}/etc/ddns/services_ipv6
  354. # on real system restart service if enabled
  355. [ -z "$${IPKG_INSTROOT}" ] && {
  356. [ -x /etc/uci-defaults/ddns_nsupdate ] && \
  357. /etc/uci-defaults/ddns_nsupdate && \
  358. rm -f /etc/uci-defaults/ddns_nsupdate >/dev/null 2>&1
  359. /etc/init.d/ddns enabled && \
  360. /etc/init.d/ddns start >/dev/null 2>&1
  361. }
  362. exit 0 # suppress errors
  363. endef
  364. define Package/ddns-scripts_nsupdate/prerm
  365. #!/bin/sh
  366. # if NOT run buildroot then stop service
  367. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  368. # remove services file entries
  369. /bin/sed -i '/bind-nsupdate/d' $${IPKG_INSTROOT}/etc/ddns/services >/dev/null 2>&1
  370. /bin/sed -i '/bind-nsupdate/d' $${IPKG_INSTROOT}/etc/ddns/services_ipv6 >/dev/null 2>&1
  371. exit 0 # suppress errors
  372. endef
  373. ###### *************************************************************************
  374. define Package/ddns-scripts_route53-v1/preinst
  375. #!/bin/sh
  376. # if NOT run buildroot then stop service
  377. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  378. exit 0 # suppress errors
  379. endef
  380. define Package/ddns-scripts_route53-v1/install
  381. $(INSTALL_DIR) $(1)/etc/uci-defaults
  382. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.defaults $(1)/etc/uci-defaults/ddns_route53-v1
  383. $(INSTALL_DIR) $(1)/usr/lib/ddns
  384. $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_route53_v1.sh $(1)/usr/lib/ddns
  385. endef
  386. define Package/ddns-scripts_route53-v1/postinst
  387. #!/bin/sh
  388. # remove old services file entries
  389. /bin/sed -i '/route53-v1/d' $${IPKG_INSTROOT}/etc/ddns/services >/dev/null 2>&1
  390. /bin/sed -i '/route53-v1/d' $${IPKG_INSTROOT}/etc/ddns/services_ipv6 >/dev/null 2>&1
  391. # and create new
  392. printf "%s\\t%s\\n" '"route53-v1"' '"update_route53_v1.sh"' >> $${IPKG_INSTROOT}/etc/ddns/services
  393. printf "%s\\t%s\\n" '"route53-v1"' '"update_route53_v1.sh"' >> $${IPKG_INSTROOT}/etc/ddns/services_ipv6
  394. # on real system restart service if enabled
  395. [ -z "$${IPKG_INSTROOT}" ] && {
  396. [ -x /etc/uci-defaults/ddns_route53-v1 ] && \
  397. /etc/uci-defaults/ddns_route53-v1 && \
  398. rm -f /etc/uci-defaults/route53.com-v1 >/dev/null 2>&1
  399. /etc/init.d/ddns enabled \
  400. && /etc/init.d/ddns start >/dev/null 2>&1
  401. }
  402. exit 0 # suppress errors
  403. endef
  404. define Package/ddns-scripts_route53-v1/prerm
  405. #!/bin/sh
  406. # if NOT run buildroot then stop service
  407. [ -z "$${IPKG_INSTROOT}" ] && /etc/init.d/ddns stop >/dev/null 2>&1
  408. # remove services file entries
  409. /bin/sed -i 'route53-v1/d' $${IPKG_INSTROOT}/etc/ddns/services >/dev/null 2>&1
  410. /bin/sed -i 'route53-v1/d' $${IPKG_INSTROOT}/etc/ddns/services_ipv6 >/dev/null 2>&1
  411. exit 0 # suppress errors
  412. endef
  413. ###### *************************************************************************
  414. $(eval $(call BuildPackage,ddns-scripts))
  415. $(eval $(call BuildPackage,ddns-scripts_cloudflare.com-v4))
  416. $(eval $(call BuildPackage,ddns-scripts_freedns_42_pl))
  417. $(eval $(call BuildPackage,ddns-scripts_godaddy.com-v1))
  418. $(eval $(call BuildPackage,ddns-scripts_no-ip_com))
  419. $(eval $(call BuildPackage,ddns-scripts_nsupdate))
  420. $(eval $(call BuildPackage,ddns-scripts_route53-v1))