1################################################################################
2#
3# i2pd
4#
5################################################################################
6
7I2PD_VERSION = 2.50.2
8I2PD_SITE = $(call github,PurpleI2P,i2pd,$(I2PD_VERSION))
9I2PD_LICENSE = BSD-3-Clause
10I2PD_LICENSE_FILES = LICENSE
11I2PD_CPE_ID_VENDOR = i2pd
12I2PD_SUBDIR = build
13I2PD_DEPENDENCIES = \
14	boost \
15	openssl \
16	zlib
17
18I2PD_CONF_OPTS += -DWITH_GUI=OFF
19
20ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
21I2PD_CONF_OPTS += \
22	-DHAVE_CXX_ATOMICS_WITHOUT_LIB=OFF \
23	-DHAVE_CXX_ATOMICS64_WITHOUT_LIB=OFF
24endif
25
26ifeq ($(BR2_STATIC_LIBS),y)
27I2PD_CONF_OPTS += -DWITH_STATIC=ON
28else
29I2PD_CONF_OPTS += -DWITH_STATIC=OFF
30endif
31
32ifeq ($(BR2_PACKAGE_LIBMINIUPNPC),y)
33I2PD_DEPENDENCIES += libminiupnpc
34I2PD_CONF_OPTS += -DWITH_UPNP=ON
35else
36I2PD_CONF_OPTS += -DWITH_UPNP=OFF
37endif
38
39define I2PD_INSTALL_CONFIGURATION_FILES
40	$(INSTALL) -D -m 644 $(@D)/contrib/i2pd.conf \
41		$(TARGET_DIR)/etc/i2pd/i2pd.conf
42	$(INSTALL) -D -m 644 $(@D)/contrib/tunnels.conf \
43		$(TARGET_DIR)/etc/i2pd/tunnels.conf
44	mkdir -p $(TARGET_DIR)/var/lib/i2pd
45	cp -a $(@D)/contrib/certificates $(TARGET_DIR)/var/lib/i2pd
46endef
47I2PD_POST_INSTALL_TARGET_HOOKS += I2PD_INSTALL_CONFIGURATION_FILES
48
49define I2PD_USERS
50	i2pd -1 i2pd -1 * /var/lib/i2pd - - I2P Daemon
51endef
52
53define I2PD_INSTALL_INIT_SYSV
54	$(INSTALL) -D -m 0755 package/i2pd/S99i2pd \
55		$(TARGET_DIR)/etc/init.d/S99i2pd
56endef
57
58define I2PD_INSTALL_INIT_SYSTEMD
59	$(INSTALL) -D -m 644 package/i2pd/i2pd.service \
60		$(TARGET_DIR)/usr/lib/systemd/system/i2pd.service
61endef
62
63$(eval $(cmake-package))
64