usbmuxd: Update to latest git
[feed/packages.git] / net / tor / Makefile
1 #
2 # Copyright (C) 2008-2019 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=tor
11 PKG_VERSION:=0.3.5.8
12 PKG_RELEASE:=2
13
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_HASH:=d5c56603942a8927670f50a4a469fb909e29d3571fdd013389d567e57abc0b47
18 PKG_MAINTAINER:=Hauke Mehrtens <hauke@hauke-m.de> \
19 Peter Wagner <tripolar@gmx.at>
20 PKG_LICENSE_FILES:=LICENSE
21 PKG_CPE_ID:=cpe:/a:torproject:tor
22
23 PKG_INSTALL:=1
24 PKG_FIXUP:=autoreconf
25 PKG_BUILD_PARALLEL:=1
26
27 include $(INCLUDE_DIR)/package.mk
28
29 define Package/tor/Default
30 SECTION:=net
31 CATEGORY:=Network
32 URL:=https://www.torproject.org/
33 USERID:=tor=52:tor=52
34 endef
35
36 define Package/tor/Default/description
37 Tor is a toolset for a wide range of organizations and people that want to
38 improve their safety and security on the Internet. Using Tor can help you
39 anonymize web browsing and publishing, instant messaging, IRC, SSH, and
40 more. Tor also provides a platform on which software developers can build
41 new applications with built-in anonymity, safety, and privacy features.
42 endef
43
44 define Package/tor
45 $(call Package/tor/Default)
46 TITLE:=An anonymous Internet communication system
47 DEPENDS:=+libevent2 +libopenssl +libpthread +librt +zlib +libcap
48 endef
49
50 define Package/tor/description
51 $(call Package/tor/Default/description)
52 This package contains the tor daemon.
53 endef
54
55 define Package/tor-gencert
56 $(call Package/tor/Default)
57 TITLE:=Tor certificate generation
58 DEPENDS:=+tor
59 endef
60
61 define Package/tor-gencert/description
62 $(call Package/tor/Default/description)
63 Generate certs and keys for Tor directory authorities
64 endef
65
66 define Package/tor-resolve
67 $(call Package/tor/Default)
68 TITLE:=tor hostname resolve
69 DEPENDS:=+tor
70 endef
71
72 define Package/tor-resolve/description
73 $(call Package/tor/Default/description)
74 Resolve a hostname to an IP address via tor
75 endef
76
77 define Package/tor-geoip
78 $(call Package/tor/Default)
79 TITLE:=GeoIP db for tor
80 DEPENDS:=+tor
81 endef
82
83 define Package/tor-geoip/description
84 $(call Package/tor/Default/description)
85 This package contains a GeoIP database mapping IP addresses to countries.
86 endef
87
88 define Package/tor/conffiles
89 /etc/tor/torrc
90 /var/lib/tor/fingerprint
91 /var/lib/tor/keys/*
92 endef
93
94 CONFIGURE_ARGS += \
95 --with-libevent-dir="$(STAGING_DIR)/usr" \
96 --with-openssl-dir="$(STAGING_DIR)/usr" \
97 --with-zlib-dir="$(STAGING_DIR)/usr" \
98 --disable-asciidoc \
99 --disable-seccomp \
100 --disable-libscrypt \
101 --disable-unittests \
102 --disable-lzma \
103 --with-tor-user=tor \
104 --with-tor-group=tor
105
106 TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto
107 TARGET_LDFLAGS += -Wl,--gc-sections -flto
108
109 ifneq ($(CONFIG_SSP_SUPPORT),y)
110 CONFIGURE_ARGS += \
111 --disable-gcc-hardening
112 else
113 EXTRA_CFLAGS += $(FPIC)
114 endif
115
116 CONFIGURE_VARS += \
117 CROSS_COMPILE="yes"
118
119 define Package/tor/install
120 $(INSTALL_DIR) $(1)/usr/sbin
121 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/tor $(1)/usr/sbin/
122 $(INSTALL_DIR) $(1)/etc/init.d
123 $(INSTALL_BIN) ./files/tor.init $(1)/etc/init.d/tor
124 $(INSTALL_DIR) $(1)/etc/tor
125 $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/tor/torrc.sample $(1)/etc/tor/torrc
126 endef
127
128 define Package/tor-gencert/install
129 $(INSTALL_DIR) $(1)/usr/sbin
130 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/tor-gencert $(1)/usr/sbin/
131 endef
132
133 define Package/tor-resolve/install
134 $(INSTALL_DIR) $(1)/usr/sbin
135 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/tor-resolve $(1)/usr/sbin/
136 endef
137
138 define Package/tor-geoip/install
139 $(INSTALL_DIR) $(1)/usr/share/tor
140 $(INSTALL_DATA) \
141 $(PKG_INSTALL_DIR)/usr/share/tor/geoip \
142 $(PKG_INSTALL_DIR)/usr/share/tor/geoip6 \
143 $(1)/usr/share/tor/
144 endef
145
146 $(eval $(call BuildPackage,tor))
147 $(eval $(call BuildPackage,tor-gencert))
148 $(eval $(call BuildPackage,tor-resolve))
149 $(eval $(call BuildPackage,tor-geoip))