summaryrefslogtreecommitdiff
path: root/packages/net-vpn/i2pd/i2pd-scm.exheres-0
blob: c543953032ae71a747f5547fa848dfe917841bb1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# Distributed under the terms of the GNU General Public License v2
# Copyright 2018 Gluzskiy Alexandr <sss@sss.chaoslab.ru>

SCM_REPOSITORY="https://github.com/PurpleI2P/i2pd"
SCM_BRANCH="openssl"
require scm-git systemd-service cmake [ api=2 ]
HOMEPAGE="https://github.com/PurpleI2P/i2pd"
SUMMARY="A C++ daemon for accessing the I2P anonymous network"
LICENCES="BSD-3"
SLOT="0"
PLATFORMS="~amd64 ~x86"
DOWNLOADS=""

MYOPTIONS="
    i2p-hardening
    pch
    upnp
    (
        providers:
            libressl
            openssl
    )
    [[ number-selected = exactly-one ]]
"

MYOPTIONS+="
    amd64_cpu_features: aes avx
    x86_cpu_features: aes avx
"

DEPENDENCIES="
    build+run:
        dev-libs/boost[>=1.49]
        upnp? ( net-libs/miniupnpc )
        providers:openssl? ( dev-libs/openssl )
        providers:libressl? ( dev-libs/libressl )
"

src_configure() {
    local cmakeparams=()
    if option amd64_cpu_features:aes; then
        cmakeparams+=( -DWITH_AESNI=ON )
    fi
    if option x86_cpu_features:aes; then
        cmakeparams+=( -DWITH_AESNI=ON )
    fi
    if option amd64_cpu_features:avx; then
        cmakeparams+=( -DWITH_AVX=ON )
    fi
    if option x86_cpu_features:avx; then
        cmakeparams+=( -DWITH_AVX=ON )
    fi
    cmakeparams+=(
        $(cmake_with i2p-hardening HARDENING)
        $(cmake_with pch PCH)
        $(cmake_with upnp UPNP)
        -DWITH_LIBRARY=ON
        -DWITH_BINARY=ON
    )
    CMAKE_SOURCE=${WORKBASE}/${PNV}/build
    ecmake "${cmakeparams[@]}"
}