You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

89 lines
2.6 KiB

  1. #
  2. # Copyright (C) 2018 Jeffery To
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. PKG_NAME:=obfs4proxy
  9. PKG_VERSION:=0.0.7
  10. PKG_RELEASE:=1
  11. PKG_SOURCE_PROTO:=git
  12. PKG_SOURCE_URL:=https://git.torproject.org/pluggable-transports/obfs4.git
  13. PKG_SOURCE_VERSION:=8256fac93c2cf79742725e3aaced5bbe3380fd32
  14. PKG_SOURCE_DATE:=20161115
  15. PKG_MIRROR_HASH:=9c504337f7a2b46310083224cf0998fc7645f8af5d50657cf74358d39916eddc
  16. PKG_LICENSE:=BSD-2-Clause
  17. PKG_LICENSE_FILES:=LICENSE
  18. PKG_MAINTAINER:=Jeffery To <jeffery.to@gmail.com>
  19. PKG_BUILD_DEPENDS:=golang/host
  20. PKG_BUILD_PARALLEL:=1
  21. PKG_USE_MIPS16:=0
  22. GO_PKG:=git.torproject.org/pluggable-transports/obfs4.git
  23. include $(INCLUDE_DIR)/package.mk
  24. include ../../lang/golang/golang-package.mk
  25. define Package/obfs4proxy/Default
  26. TITLE:=A Tor pluggable transport proxy, implementing obfs4
  27. URL:=https://gitweb.torproject.org/pluggable-transports/obfs4.git/
  28. DEPENDS:=$(GO_ARCH_DEPENDS)
  29. endef
  30. define Package/obfs4proxy
  31. $(call Package/obfs4proxy/Default)
  32. SECTION:=net
  33. CATEGORY:=Network
  34. endef
  35. define Package/golang-torproject-pluggable-transports-obfs4-dev
  36. $(call Package/obfs4proxy/Default)
  37. $(call GoPackage/GoSubMenu)
  38. TITLE+= (source files)
  39. DEPENDS+= \
  40. +golang-github-agl-ed25519-dev \
  41. +golang-github-dchest-siphash-dev \
  42. +golang-golang-x-crypto-dev \
  43. +golang-golang-x-net-dev \
  44. +golang-torproject-pluggable-transports-goptlib-dev
  45. PKGARCH:=all
  46. endef
  47. define Package/obfs4proxy/Default/description
  48. obfs4proxy is a tool that attempts to circumvent censorship by
  49. transforming the Tor traffic between the client and the bridge. This way
  50. censors, who usually monitor traffic between the client and the bridge,
  51. will see innocent-looking transformed traffic instead of the actual Tor
  52. traffic.
  53. obfs4proxy implements the obfsucation protocols obfs2, obfs3, and obfs4.
  54. It is written in Go and is compliant with the Tor pluggable transports
  55. specification, and its modular architecture allows it to support
  56. multiple pluggable transports.
  57. endef
  58. define Package/obfs4proxy/description
  59. $(call Package/obfs4proxy/Default/description)
  60. This package contains both the client and the bridge in a single
  61. program.
  62. endef
  63. define Package/golang-torproject-pluggable-transports-obfs4-dev/description
  64. $(call Package/obfs4proxy/Default/description)
  65. This package provides the source files for the client/bridge program.
  66. endef
  67. $(eval $(call GoBinPackage,obfs4proxy))
  68. $(eval $(call BuildPackage,obfs4proxy))
  69. $(eval $(call GoSrcPackage,golang-torproject-pluggable-transports-obfs4-dev))
  70. $(eval $(call BuildPackage,golang-torproject-pluggable-transports-obfs4-dev))