2 # Copyright (C) 2008-2016 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR)/rules.mk
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
15 PKG_SOURCE_URL:=https://dist.torproject.org/ \
16 https://archive.torproject.org/tor-package-archive
17 PKG_MD5SUM:=33325d2b250fd047ba2ddc5d11c2190c4e2951f4b03ec48ebd8bf0666e990d43
18 PKG_MAINTAINER:=Hauke Mehrtens <hauke@hauke-m.de>
19 PKG_LICENSE_FILES:=LICENSE
23 include $(INCLUDE_DIR)/package.mk
25 define Package/tor/Default
28 URL:=https://www.torproject.org/
32 define Package/tor/Default/description
33 Tor is a toolset for a wide range of organizations and people that want to
34 improve their safety and security on the Internet. Using Tor can help you
35 anonymize web browsing and publishing, instant messaging, IRC, SSH, and
36 more. Tor also provides a platform on which software developers can build
37 new applications with built-in anonymity, safety, and privacy features.
41 $(call Package/tor/Default)
42 TITLE:=An anonymous Internet communication system
43 DEPENDS:=+libevent2 +libopenssl +libpthread +librt +zlib +libcap
46 define Package/tor/description
47 $(call Package/tor/Default/description)
48 This package contains the tor daemon.
51 define Package/tor-gencert
52 $(call Package/tor/Default)
53 TITLE:=Tor certificate generation
57 define Package/tor-gencert/description
58 $(call Package/tor/Default/description)
59 Generate certs and keys for Tor directory authorities
62 define Package/tor-resolve
63 $(call Package/tor/Default)
64 TITLE:=tor hostname resolve
68 define Package/tor-resolve/description
69 $(call Package/tor/Default/description)
70 Resolve a hostname to an IP address via tor
73 define Package/tor-geoip
74 $(call Package/tor/Default)
75 TITLE:=GeoIP db for tor
79 define Package/tor-geoip/description
80 $(call Package/tor/Default/description)
81 This package contains a GeoIP database mapping IP addresses to countries.
84 define Package/tor/conffiles
86 /var/lib/tor/fingerprint
91 --with-libevent-dir="$(STAGING_DIR)/usr" \
92 --with-ssl-dir="$(STAGING_DIR)/usr" \
93 --with-openssl-dir="$(STAGING_DIR)/usr" \
94 --with-zlib-dir="$(STAGING_DIR)/usr" \
100 --with-tor-user=tor \
103 EXTRA_CFLAGS += -std=gnu99
105 ifneq ($(CONFIG_SSP_SUPPORT),y)
107 --disable-gcc-hardening
109 EXTRA_CFLAGS += -fPIC
115 define Package/tor/install
116 $(INSTALL_DIR) $(1)/usr/sbin
117 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/tor $(1)/usr/sbin/
118 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/torify $(1)/usr/sbin/
119 $(INSTALL_DIR) $(1)/etc/init.d
120 $(INSTALL_BIN) ./files/tor.init $(1)/etc/init.d/tor
121 $(INSTALL_DIR) $(1)/etc/tor
122 $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/tor/torrc.sample $(1)/etc/tor/torrc
125 define Package/tor-gencert/install
126 $(INSTALL_DIR) $(1)/usr/sbin
127 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/tor-gencert $(1)/usr/sbin/
130 define Package/tor-resolve/install
131 $(INSTALL_DIR) $(1)/usr/sbin
132 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/tor-resolve $(1)/usr/sbin/
135 define Package/tor-geoip/install
136 $(INSTALL_DIR) $(1)/usr/share/tor
137 $(CP) $(PKG_INSTALL_DIR)/usr/share/tor/geoip $(1)/usr/share/tor/
138 $(CP) $(PKG_INSTALL_DIR)/usr/share/tor/geoip6 $(1)/usr/share/tor/
141 $(eval $(call BuildPackage,tor))
142 $(eval $(call BuildPackage,tor-gencert))
143 $(eval $(call BuildPackage,tor-resolve))
144 $(eval $(call BuildPackage,tor-geoip))