Merge pull request #22440 from myszsoda/atftpd_option_enable
[feed/packages.git] / net / gnunet / Makefile
1 include $(TOPDIR)/rules.mk
2
3 PKG_NAME:=gnunet
4
5 PKG_VERSION:=0.20.0
6 PKG_RELEASE:=1
7 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
8 PKG_SOURCE_URL:=@GNU/gnunet
9 PKG_HASH:=56029e78a99c04d52b1358094ae5074e4cd8ea9b98cf6855f57ad9af27ac9518
10
11 PKG_LICENSE:=AGPL-3.0
12 PKG_LICENSE_FILES:=COPYING
13 PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
14 PKG_CPE_ID:=cpe:/a:gnunet:gnunet
15
16 PKG_BUILD_PARALLEL:=1
17 PKG_FIXUP:=gettext-version
18 PKG_INSTALL:=1
19
20 # despite configure fails if sqlite3 isn't detected
21 PKG_BUILD_DEPENDS:=sqlite3
22
23 include $(INCLUDE_DIR)/package.mk
24 include $(INCLUDE_DIR)/nls.mk
25
26 # always pass --with-sqlite3 as configure fails when trying --without-sqlite3
27 CONFIGURE_ARGS+= \
28 --with-libiconv-prefix="$(ICONV_PREFIX)" \
29 --with-libintl-prefix="$(INTL_PREFIX)" \
30 --with-ltdl \
31 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-mysql),--with-mysql="$(STAGING_DIR)/usr",--without-mysql) \
32 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-pgsql),--with-postgresql="$(STAGING_DIR)/usr/bin/pg_config",--without-postgresql) \
33 --with-sqlite3="$(STAGING_DIR)/usr" \
34 --disable-testruns \
35 --disable-documentation \
36 --enable-experimental \
37 --with-extractor=$(STAGING_DIR)/usr \
38 --with-gnutls=$(STAGING_DIR)/usr \
39 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-transport-bluetooth),--with-bluetooth="$(STAGING_DIR)/usr",--without-bluetooth) \
40 --with-jose=$(STAGING_DIR)/usr \
41 --with-libcurl=$(STAGING_DIR)/usr \
42 --with-ogg=$(STAGING_DIR)/usr \
43 --with-opus=$(STAGING_DIR)/usr \
44 --with-pabc=$(STAGING_DIR)/usr \
45 --with-png=$(STAGING_DIR)/usr \
46 --with-pulse=$(STAGING_DIR)/usr \
47 --with-libunistring-prefix=$(STAGING_DIR)/usr \
48 --with-microhttpd=$(STAGING_DIR)/usr
49
50 # upstream now provides --with-pulseaudio but doesn't detect rpath
51 TARGET_LDFLAGS+= -Wl,-rpath-link=$(STAGING_DIR)/usr/lib/pulseaudio
52
53 define Package/gnunet/Default
54 SECTION:=net
55 CATEGORY:=Network
56 TITLE:=GNUnet
57 URL:=https://www.gnunet.org/
58 endef
59
60 define Package/gnunet
61 $(call Package/gnunet/Default)
62 TITLE+= - a peer-to-peer framework focusing on security
63 DEPENDS:=+libatomic +libgcrypt +libgpg-error +libidn2 +libltdl +libsodium \
64 +libunistring +librt +zlib $(ICONV_DEPENDS) $(INTL_DEPENDS)
65 USERID:=gnunet=958:gnunet=958
66 MENU:=1
67 FILE_MODES:=/usr/lib/gnunet/libexec/gnunet-helper-nat-server:root:gnunet:4750 \
68 /usr/lib/gnunet/libexec/gnunet-helper-nat-client:root:gnunet:4750
69 endef
70
71 define Package/gnunet/description
72 GNUnet is a peer-to-peer framework focusing on security. The first and
73 primary application for GNUnet is anonymous file-sharing. GNUnet is
74 currently developed by a worldwide group of independent free software
75 developers. GNUnet is a GNU package (http://www.gnu.org/).
76
77 This is an ALPHA release. There are known and significant bugs as
78 well as many missing features in this release.
79
80 This package provides the core components of GNUnet including the
81 CADET routing engine, a DHT implementation and basic transports as
82 well as their helpers.
83 endef
84
85 define BuildComponent
86 PKG_CONFIG_DEPENDS+=CONFIG_PACKAGE_$(PKG_NAME)-$(1)
87
88 define Package/gnunet-$(1)
89 $$(call Package/gnunet/Default)
90 TITLE+= $(2)
91 DEPENDS:=gnunet $(DEPENDS_$(1))
92 $(if $(3),DEFAULT:=y if PACKAGE_gnunet)
93 $(if $(USERID_$(1)),USERID:=$(USERID_$(1)))
94 $(if $(CONFLICTS_$(1)),CONFLICTS:=$(CONFLICTS_$(1)))
95 $(if $(FILE_MODES_$(1)),FILE_MODES:=$(FILE_MODES_$(1)))
96 endef
97
98 define Package/gnunet-$(1)/install
99 ( if [ "$(BIN_$(1))" ]; then \
100 $(INSTALL_DIR) $$(1)/usr/bin && \
101 for bin in $(BIN_$(1)); do \
102 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$$$$$bin $$(1)/usr/bin/ || exit 1; \
103 done \
104 fi )
105
106 ( if [ "$(LIB_$(1))" ]; then \
107 $(INSTALL_DIR) $$(1)/usr/lib && \
108 for lib in $(LIB_$(1)); do \
109 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$$$$$lib.so* $$(1)/usr/lib/ || exit 1; \
110 done \
111 fi )
112
113 ( if [ "$(PLUGIN_$(1))" ]; then \
114 $(INSTALL_DIR) $$(1)/usr/lib/gnunet && \
115 for plug in $(PLUGIN_$(1)); do \
116 $(CP) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$$$$$plug*.so $$(1)/usr/lib/gnunet || exit 1; \
117 done \
118 fi )
119
120 ( if [ "$(LIBEXEC_$(1))" ]; then \
121 $(INSTALL_DIR) $$(1)/usr/lib/gnunet/libexec && \
122 for lex in $(LIBEXEC_$(1)); do \
123 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$$$$$lex $$(1)/usr/lib/gnunet/libexec || exit 1; \
124 done \
125 fi )
126
127 ( if [ "$(CONF_$(1))" ]; then \
128 $(INSTALL_DIR) $$(1)/usr/share/gnunet/config.d && \
129 for conf in $(CONF_$(1)); do \
130 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$$$$$conf.conf $$(1)/usr/share/gnunet/config.d || exit 1; \
131 done \
132 fi )
133
134 ( if [ "$(SQL_$(1))" ]; then \
135 $(INSTALL_DIR) $$(1)/usr/share/gnunet/sql && \
136 for sql in $(SQL_$(1)); do \
137 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/sql/$$$$$$$$sql.sql $$(1)/usr/share/gnunet/sql || exit 1; \
138 done \
139 fi )
140
141 ( if [ -e ./files/gnunet-$(1).defaults ]; then \
142 $(INSTALL_DIR) $$(1)/etc/uci-defaults && \
143 $(INSTALL_BIN) ./files/gnunet-$(1).defaults $$(1)/etc/uci-defaults/gnunet-$(1) ; \
144 fi )
145 endef
146
147 $$(eval $$(call BuildPackage,gnunet-$(1)))
148 endef
149
150 define Package/gnunet/install
151 $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec
152 $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d $(1)/usr/share/gnunet/hellos
153
154 ( for bin in arm ats cadet core config ecc identity nat nat-auto nat-server nse \
155 peerinfo revocation scalarproduct scrypt statistics transport uri; do \
156 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ || exit 1; \
157 done )
158
159 ( for lib in arm ats block blockgroup cadet \
160 core datacache dht dns fragmentation friends hello \
161 identity natauto natnew nse nt peerinfo peerstore regexblock regex revocation \
162 scalarproduct set seti setu statistics transport transportapplication \
163 transportcommunicator transportcore transportmonitor util; do \
164 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ || exit 1; \
165 done )
166
167 ( for plug in ats_proportional block_dht block_regex block_revocation dhtu_gnunet dhtu_ip transport_unix; do \
168 $(CP) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet || exit 1; \
169 done )
170
171 ( for lex in communicator-unix daemon-topology helper-nat-client \
172 helper-nat-server service-arm service-ats service-cadet service-core \
173 service-dht service-identity service-nat service-nat-auto service-nse \
174 service-peerinfo service-peerstore service-regex service-revocation \
175 service-scalarproduct-alice service-scalarproduct-bob service-scalarproduct-ecc-alice \
176 service-scalarproduct-ecc-bob service-set service-seti service-setu service-statistics \
177 service-tng service-transport timeout; do \
178 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec || exit 1; \
179 done )
180
181 ( for conf in arm ats cadet communicator-unix core datacache dht dhtu identity \
182 nat nat-auto nse peerinfo peerstore regex revocation \
183 scalarproduct set seti setu statistics tlds topology transport util; do \
184 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d || exit 1; \
185 done )
186
187 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/hellos/* $(1)/usr/share/gnunet/hellos
188 $(INSTALL_DIR) $(1)/etc/init.d
189 $(INSTALL_BIN) ./files/gnunet.init $(1)/etc/init.d/gnunet
190 $(INSTALL_DIR) $(1)/lib/upgrade/keep.d
191 $(INSTALL_DATA) ./files/gnunet.upgrade $(1)/lib/upgrade/keep.d/gnunet
192 $(INSTALL_DIR) $(1)/etc/uci-defaults
193 $(INSTALL_BIN) ./files/gnunet.defaults $(1)/etc/uci-defaults/gnunet
194 $(INSTALL_DIR) $(1)/lib/netifd/proto
195 $(INSTALL_BIN) ./files/gnunet-proto.sh $(1)/lib/netifd/proto/gnunet.sh
196 endef
197
198 define Build/InstallDev
199 $(INSTALL_DIR) $(1)/usr/include/gnunet $(1)/usr/lib/pkgconfig
200 $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{la,so}* $(1)/usr/lib/
201 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc $(1)/usr/lib/pkgconfig
202 $(CP) $(PKG_INSTALL_DIR)/usr/include/gnunet/*.h $(1)/usr/include/gnunet
203 endef
204
205 BIN_abd:=abd
206 LIB_abd:=abd
207 PLUGIN_abd:=gnsrecord_abd
208 LIBEXEC_abd:=service-abd
209 CONF_abd:=abd
210 DEPENDS_abd:=+gnunet-gns
211
212 BIN_auction:=auction-create auction-info auction-join
213 LIBEXEC_auction:=service-auction
214 CONF_auction:=auction
215 DEPENDS_auction:=+gnunet-reclaim +jansson
216
217 DEPENDS_conversation:=+gnunet-gns +libgst1app +libgst1audio +libgstreamer1 +glib2 +pulseaudio-daemon +libopus +libogg
218 BIN_conversation:=conversation conversation-test
219 LIB_conversation:=conversation microphone speaker
220 PLUGIN_conversation:=gnsrecord_conversation
221 LIBEXEC_conversation:=helper-audio-playback helper-audio-record service-conversation
222 CONF_conversation:=conversation
223
224 BIN_dht-cli:=dht-get dht-hello dht-put dht-monitor
225 PLUGIN_dht-cli:=block_test
226
227 DEPENDS_curl:=+libcurl-gnutls +jansson
228 LIB_curl:=curl
229
230 DEPENDS_hostlist:=+libmicrohttpd-ssl +gnunet-curl +ca-bundle
231 LIBEXEC_hostlist:=daemon-hostlist
232 CONF_hostlist:=hostlist
233
234 LIBEXEC_communicator-udp:=communicator-udp
235 LIBEXEC_communicator-tcp:=communicator-tcp
236
237 DEPENDS_transport-bluetooth:=+bluez-libs
238 PLUGIN_transport-bluetooth:=transport_bluetooth
239 LIBEXEC_transport-bluetooth:=helper-transport-bluetooth
240 FILE_MODES_transport-bluetooth:=/usr/lib/gnunet/libexec/gnunet-helper-transport-bluetooth:root:gnunet:4750
241
242 DEPENDS_transport-http_client:=+gnunet-curl +ca-bundle
243 PLUGIN_transport-http_client:=transport_http_client transport_https_client
244
245 DEPENDS_transport-http_server:=+libmicrohttpd-ssl
246 PLUGIN_transport-http_server:=transport_http_server transport_https_server
247
248 PLUGIN_transport-tcp:=transport_tcp
249
250 PLUGIN_transport-udp:=transport_udp
251
252 PLUGIN_transport-wlan:=transport_wlan
253 LIBEXEC_transport-wlan:=helper-transport-wlan
254 FILE_MODES_transport-wlan:=/usr/lib/gnunet/libexec/gnunet-helper-transport-wlan:root:gnunet:4750
255
256 # BIN_dv:=dv
257 LIB_dv:=dv
258 PLUGIN_dv:=transport_dv
259 LIBEXEC_dv:=service-dv
260 CONF_dv:=dv
261
262 DEPENDS_fs:=+gnunet-datastore +libextractor
263 BIN_fs:=auto-share directory download fs publish unindex search
264 LIB_fs:=fs
265 PLUGIN_fs:=block_fs
266 LIBEXEC_fs:=helper-fs-publish service-fs
267 CONF_fs:=fs
268
269 DEPENDS_gns:=+gnunet-vpn +iptables-mod-extra
270 USERID_gns:=:gnunetdns=452
271 BIN_gns:=gns namecache namestore namestore-dbtool namestore-zonefile resolver zoneimport
272 LIB_gns:=gns gnsrecord namecache namestore
273 PLUGIN_gns:=block_dns block_gns gnsrecord_conversation gnsrecord_dns gnsrecord_gns namecache_flat
274 LIBEXEC_gns:=dns2gns helper-dns service-dns service-gns service-namecache service-namestore service-resolver service-zonemaster
275 CONF_gns:=dns gns namecache namestore resolver zonemaster
276 FILE_MODES_gns:=/usr/lib/gnunet/libexec/gnunet-helper-dns:root:gnunetdns:4750 /usr/lib/gnunet/libexec/gnunet-service-dns:gnunet:gnunetdns:2750
277
278 DEPENDS_namestore-fcfsd:=+gnunet-rest +libmicrohttpd-ssl
279 LIBEXEC_namestore-fcfsd:=namestore-fcfsd
280
281 DEPENDS_gns-proxy:=+gnunet-gns +gnunet-curl +libmicrohttpd-ssl +PACKAGE_libgnutls-dane:libgnutls-dane
282 LIBEXEC_gns-proxy:=gns-proxy
283
284 DEPENDS_datastore:=+gnunet-gns
285 BIN_datastore:=datastore
286 LIB_datastore:=datastore
287 LIBEXEC_datastore:=service-datastore
288 CONF_datastore:=datastore
289
290 BIN_messenger:=messenger
291 LIB_messenger:=messenger
292 LIBEXEC_messenger:=service-messenger
293 CONF_messenger:=messenger
294 PLUGIN_messenger:=gnsrecord_messenger
295
296 DEPENDS_reclaim:=+gnunet-gns +gnunet-sqlite +libpbc +libgabe +jansson
297 BIN_reclaim:=did reclaim
298 LIB_reclaim:=consensus did reclaim secretsharing
299 LIBEXEC_reclaim:=service-consensus service-reclaim service-secretsharing
300 CONF_reclaim:=consensus reclaim secretsharing
301 PLUGIN_reclaim:=block_consensus gnsrecord_reclaim reclaim_credential_jwt reclaim_attribute_basic
302
303 DEPENDS_rest:=+gnunet-gns +gnunet-reclaim +libmicrohttpd-ssl +jansson +libjose
304 LIB_rest:=rest json gnsrecordjson
305 PLUGIN_rest:=rest_config rest_copying rest_gns rest_identity rest_namestore rest_peerinfo rest_openid_connect rest_reclaim
306 LIBEXEC_rest:=rest-server
307 CONF_rest:=rest
308
309 BIN_rps:=rps
310 LIB_rps:=rps
311 LIBEXEC_rps:=service-rps
312 CONF_rps:=rps
313
314 PLUGIN_dhtcache-heap:=datacache_heap
315 CONFLICTS_dhtcache-heap:=gnunet-dhtcache-pgsql gnunet-dhtcache-sqlite
316
317 PLUGIN_peerstore-flat:=peerstore_flat
318
319 DEPENDS_fs-heap:=+gnunet-datastore
320 PLUGIN_fs-heap:=datastore_heap
321 CONFLICTS_fs-heap:=gnunet-fs-mysql gnunet-fs-pgsql gnunet-fs-sqlite
322
323 DEPENDS_mysql:=+libmysqlclient
324 LIB_mysql:=mysql my
325
326
327 DEPENDS_fs-mysql:=+gnunet-mysql +gnunet-datastore
328 PLUGIN_fs-mysql:=datastore_mysql
329 CONFLICTS_fs-mysql:=gnunet-fs-pgsql gnunet-fs-sqlite
330
331 DEPENDS_pgsql:=+libpq +pgsql-server
332 LIB_pgsql:=pq
333 SQL_pgsql:=versioning
334 USERID_pgsql:=gnunet=958::postgres=5432
335
336 DEPENDS_dhtcache-pgsql:=+gnunet-pgsql
337 PLUGIN_dhtcache-pgsql:=datacache_postgres
338 CONFLICTS_dhtcache-pgsql:=gnunet-dhtcache-sqlite
339 SQL_dhtcache-pgsql:=datacache-0001 datacache-drop
340
341 DEPENDS_fs-pgsql:=+gnunet-pgsql +gnunet-datastore
342 PLUGIN_fs-pgsql:=datastore_postgres
343 CONFLICTS_fs-pgsql:=gnunet-fs-sqlite
344 SQL_fs-pgsql:=datastore-0001 datastore-drop
345
346 DEPENDS_gns-pgsql:=+gnunet-pgsql +gnunet-gns
347 PLUGIN_gns-pgsql:=namecache_postgres namestore_postgres
348 CONFLICTS_gns-pgsql:=gnunet-gns-sqlite
349 SQL_gns-pgsql:=namecache-0001 namecache-drop namestore-0001 namestore-drop
350
351 DEPENDS_sqlite:=+libsqlite3
352 LIB_sqlite:=sq
353
354 DEPENDS_gns-sqlite:=+gnunet-gns +gnunet-sqlite
355 PLUGIN_gns-sqlite:=namecache_sqlite namestore_sqlite
356
357 DEPENDS_peerstore-sqlite:=+gnunet-sqlite
358 PLUGIN_peerstore-sqlite:=peerstore_sqlite
359 CONFLICTS_peerstore-sqlite:=gnunet-peerstore-flat
360
361 DEPENDS_dhtcache-sqlite:=+gnunet-sqlite
362 PLUGIN_dhtcache-sqlite:=datacache_sqlite
363
364 DEPENDS_fs-sqlite:=+gnunet-datastore +gnunet-sqlite
365 PLUGIN_fs-sqlite:=datastore_sqlite
366
367 DEPENDS_utils:=+certtool +openssl-util
368 BIN_utils:=gns-proxy-setup-ca transport-certificate-creation
369
370 DEPENDS_vpn:=+kmod-tun +iptables +uci-firewall
371 BIN_vpn:=vpn
372 FILE_MODES_vpn:=/usr/lib/gnunet/libexec/gnunet-helper-exit:root:gnunet:4750 /usr/lib/gnunet/libexec/gnunet-helper-vpn:root:gnunet:4750
373 LIB_vpn:=vpn
374 LIBEXEC_vpn:=daemon-exit daemon-pt helper-exit helper-vpn service-vpn
375 CONF_vpn:=exit pt vpn
376
377 define Package/gnunet-gns/prerm
378 #!/bin/sh
379
380 uci -q batch <<EOF
381 del network.gnunetdns
382 del network.gndnsrtt
383 del network.gndnsrl
384 commit network
385
386 del firewall.gnunetdns
387 del firewall.gndnsrl
388 del firewall.gndnsrl2
389 commit firewall
390 EOF
391 endef
392
393 define Package/gnunet-vpn/prerm
394 #!/bin/sh
395
396 uci -q batch <<EOF
397 del network.gnunetvpn
398 del network.gnunetexit
399 commit network
400 del firewall.gnunetvpn
401 del firewall.gnunetexit
402 del firewall.gnexitfwd
403 commit firewall
404 EOF
405 endef
406
407 define PostInstFixSUIDPerms
408 define Package/$(1)/postinst
409 #!/bin/sh
410 [ -z "$IPKG_INSTROOT" ] || exit 0
411 [ -e /usr/share/gnunet/.permfix ] && rm /usr/share/gnunet/.permfix || exit 0
412 endef
413 endef
414
415 $(eval $(call PostInstFixSUIDPerms,gnunet))
416 $(eval $(call PostInstFixSUIDPerms,gnunet-gns))
417 $(eval $(call PostInstFixSUIDPerms,gnunet-transport-bluetooth))
418 $(eval $(call PostInstFixSUIDPerms,gnunet-transport-wlan))
419 $(eval $(call PostInstFixSUIDPerms,gnunet-vpn))
420
421 $(eval $(call BuildPackage,gnunet))
422 $(eval $(call BuildComponent,abd,credential service components,))
423 $(eval $(call BuildComponent,auction,auction components,))
424 $(eval $(call BuildComponent,conversation,conversation component,))
425 $(eval $(call BuildComponent,curl,cURL wrapper component,))
426 $(eval $(call BuildComponent,datastore,data storage components,))
427 $(eval $(call BuildComponent,dht-cli,DHT command line clients,))
428 # $(eval $(call BuildComponent,dv,distance-vector routing component,y))
429 $(eval $(call BuildComponent,fs,file-sharing components,))
430 $(eval $(call BuildComponent,gns,name resolution components,y))
431 $(eval $(call BuildComponent,gns-proxy,gns-proxy component,))
432 $(eval $(call BuildComponent,hostlist,HTTP bootstrap hostlist client and server,y))
433 $(eval $(call BuildComponent,messenger,group chat messenger,))
434 $(eval $(call BuildComponent,reclaim,reclaim identity-provider subsystem,))
435 $(eval $(call BuildComponent,rest,REST interface,))
436 $(eval $(call BuildComponent,rps,RPS routing component,y))
437 $(eval $(call BuildComponent,namestore-fcfsd,first-come-first-serve registration server,))
438 $(eval $(call BuildComponent,dhtcache-heap,heap-based dhtcache plugin,y))
439 $(eval $(call BuildComponent,fs-heap,heap-based filesharing plugin,))
440 $(eval $(call BuildComponent,peerstore-flat,flat storage peerstore plugin,))
441 $(eval $(call BuildComponent,mysql,mySQL backend,))
442 $(eval $(call BuildComponent,fs-mysql,mySQL filesharing plugins,))
443 $(eval $(call BuildComponent,pgsql,PostgreSQL backend,))
444 $(eval $(call BuildComponent,dhtcache-pgsql,PostgreSQL dhtcache plugin,))
445 $(eval $(call BuildComponent,fs-pgsql,PostgreSQL filesharing plugin,))
446 $(eval $(call BuildComponent,gns-pgsql,PostgreSQL GNS plugins,))
447 $(eval $(call BuildComponent,sqlite,libsqlite3 backend,))
448 $(eval $(call BuildComponent,dhtcache-sqlite,libsqlite3 dhtcache plugin,))
449 $(eval $(call BuildComponent,fs-sqlite,libsqlite3 filesharing plugin,))
450 $(eval $(call BuildComponent,gns-sqlite,libsqlite3 gns plugins,))
451 $(eval $(call BuildComponent,peerstore-sqlite,libsqlite3 peerstore plugin,))
452 $(eval $(call BuildComponent,communicator-tcp,tng transport TCP communicator,y))
453 $(eval $(call BuildComponent,communicator-udp,tng transport UDP communicator,y))
454 $(eval $(call BuildComponent,transport-bluetooth,bluetooth transport,))
455 $(eval $(call BuildComponent,transport-http_client,HTTP/HTTPS client transport,y))
456 $(eval $(call BuildComponent,transport-http_server,HTTP/HTTPS server transport,))
457 $(eval $(call BuildComponent,transport-tcp,TCP transport,y))
458 $(eval $(call BuildComponent,transport-udp,UDP transport,y))
459 $(eval $(call BuildComponent,transport-wlan,WLAN transport,y))
460 $(eval $(call BuildComponent,utils,administration utililties,))
461 $(eval $(call BuildComponent,vpn,vpn components,y))