summaryrefslogtreecommitdiff
path: root/packages/dev-util/google-perf-tools/google-perf-tools-scm.exheres-0
blob: 437df45098db9f9c0bded53664f927ffa8f62fe2 (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
# Distributed under the terms of the GNU General Public License v2
# Copyright 2018 Gluzskiy Alexandr <sss@sss.chaoslab.ru>

require github [ user=gperftools project=gperftools ] flag-o-matic
require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.15 1.13 1.12 1.11 ] need_libtool=false ]


DOWNLOADS=""
SLOT="0"
PLATFORMS="~amd64 ~x86"

SUMMARY="Fast, multi-threaded malloc() and nifty performance analysis tools"
DESCRIPTION=""

MYOPTIONS="
    debug
    largepages [[ description = [ Use (experimental) larger pages for tcmalloc,\
this increases memory usage, but should speed up the allocation/free operations. ] ]]
    minimal
    optimisememory [[ description = [ build libtcmalloc with smaller internal caches. ] ]]
"

DEPENDENCIES="
    build+run:
        dev-libs/libunwind
"

DEFAULT_SRC_CONFIGURE_OPTION_ENABLES=(
    "debug debugalloc"
    minimal
)

src_configure() {
    option largepages && append-flags -DTCMALLOC_LARGE_PAGES
    option optimisememory && append-flags -DTCMALLOC_SMALL_BUT_SLOW
    append-flags -fno-strict-aliasing -fno-omit-frame-pointer

    default_src_configure
}