3 |
3 |
|
4 |
4 |
EAPI=7
|
5 |
5 |
|
6 |
|
PYTHON_COMPAT=( python3_{9,10} )
|
|
6 |
PYTHON_COMPAT=( python3_{9..11} )
|
7 |
7 |
|
8 |
8 |
inherit python-r1 toolchain-funcs
|
9 |
9 |
|
... | ... | |
16 |
16 |
|
17 |
17 |
LICENSE="GPL-2"
|
18 |
18 |
SLOT="0"
|
19 |
|
KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~x86"
|
20 |
|
IUSE="aio curl glusterfs gnuplot gtk io-uring nfs numa python rbd rdma static tcmalloc test zbc zlib"
|
|
19 |
KEYWORDS="amd64 arm ~arm64 ~ia64 ~loong ~ppc ppc64 ~riscv x86"
|
|
20 |
IUSE="aio curl glusterfs gnuplot gtk io-uring nfs numa python rbd rdma static tcmalloc test valgrind zbc zlib"
|
21 |
21 |
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
|
22 |
22 |
gnuplot? ( python )
|
23 |
23 |
io-uring? ( aio )"
|
... | ... | |
26 |
26 |
BDEPEND="virtual/pkgconfig"
|
27 |
27 |
|
28 |
28 |
# GTK+:2 does not offer static libaries.
|
|
29 |
# xnvme
|
|
30 |
# libblkio
|
|
31 |
# pmem2
|
29 |
32 |
LIB_DEPEND="aio? ( dev-libs/libaio[static-libs(+)] )
|
30 |
33 |
curl? (
|
31 |
34 |
net-misc/curl:=[static-libs(+)]
|
... | ... | |
45 |
48 |
gtk? ( x11-libs/gtk+:2 )"
|
46 |
49 |
DEPEND="${RDEPEND}
|
47 |
50 |
static? ( ${LIB_DEPEND} )
|
48 |
|
test? ( dev-util/cunit )"
|
|
51 |
test? ( dev-util/cunit )
|
|
52 |
valgrind? ( dev-util/valgrind )"
|
49 |
53 |
RDEPEND+="
|
50 |
54 |
python? (
|
51 |
55 |
${PYTHON_DEPS}
|
... | ... | |
71 |
75 |
-e '/if compile_prog "" "-lz" "zlib" *; *then/ '"s::if $(usex zlib true false) ; then:" \
|
72 |
76 |
-e '/if compile_prog "" "-laio" "libaio" *; *then/'"s::if $(usex aio true false) ; then:" \
|
73 |
77 |
-e '/if compile_prog "" "-lcunit" "CUnit" *; *then/'"s::if $(usex test true false) ; then:" \
|
|
78 |
-e '/if compile_prog "" "" "valgrind_dev" *; *then/'"s::if $(usex valgrind true false) ; then:" \
|
74 |
79 |
configure || die
|
75 |
80 |
}
|
76 |
81 |
|
... | ... | |
80 |
85 |
# TODO: cuda
|
81 |
86 |
# TODO: libnbd - not packaged in Gentoo
|
82 |
87 |
# TODO: pmem - not packaged in Gentoo
|
|
88 |
# TODO: libblkiio - not packaged in Gentoo
|
|
89 |
# TODO: xnvme - not packaged in Gentoo
|
|
90 |
# TODO: libhdfs
|
83 |
91 |
# libnfs option does not work as expected:
|
84 |
92 |
# $(usex nfs '' '--disable-libnfs') \
|
85 |
|
set -- \
|
86 |
|
./configure \
|
87 |
|
--disable-optimizations \
|
88 |
|
--extra-cflags="${CFLAGS} ${CPPFLAGS}" \
|
89 |
|
--cc="$(tc-getCC)" \
|
90 |
|
--disable-pmem \
|
91 |
|
$(usex nfs '' '--disable-nfs') \
|
92 |
|
$(usex curl '' '--disable-http') \
|
93 |
|
$(usex glusterfs '' '--disable-gfapi') \
|
94 |
|
$(usex gtk '--enable-gfio' '') \
|
95 |
|
$(usex numa '' '--disable-numa') \
|
96 |
|
$(usex rbd '' '--disable-rbd') \
|
97 |
|
$(usex rdma '' '--disable-rdma') \
|
98 |
|
$(usex static '--build-static' '') \
|
|
93 |
OPTS=(
|
|
94 |
--disable-optimizations
|
|
95 |
--extra-cflags="${CFLAGS} ${CPPFLAGS}"
|
|
96 |
--cc="$(tc-getCC)"
|
|
97 |
--disable-pmem
|
|
98 |
--disable-xnvme
|
|
99 |
--disable-libblkio
|
|
100 |
# Not booleans, enable-only up to this version
|
|
101 |
#--disable-cuda
|
|
102 |
#--disable-libcufile
|
|
103 |
#--disable-libhdfs
|
|
104 |
--disable-dfs
|
|
105 |
$(usex nfs '' '--disable-libnfs')
|
|
106 |
$(usex curl '' '--disable-http')
|
|
107 |
$(usex glusterfs '' '--disable-gfapi')
|
|
108 |
$(usex gtk '--enable-gfio' '')
|
|
109 |
$(usex numa '' '--disable-numa')
|
|
110 |
$(usex rbd '' '--disable-rbd')
|
|
111 |
$(usex rdma '' '--disable-rdma')
|
|
112 |
$(usex static '--build-static' '')
|
99 |
113 |
$(usex tcmalloc '' '--disable-tcmalloc')
|
|
114 |
)
|
|
115 |
set -- \
|
|
116 |
# not autoconf
|
|
117 |
./configure "${OPTS[@]}"
|
100 |
118 |
echo "$@" |tr ' ' '\n'
|
101 |
119 |
"$@" || die 'configure failed'
|
102 |
120 |
}
|