1 |
1 |
# Copyright 1999-2023 Gentoo Authors
|
2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
3 |
3 |
|
4 |
|
EAPI=6
|
5 |
|
|
6 |
|
inherit gnome2 multilib-minimal
|
|
4 |
EAPI=8
|
|
5 |
PYTHON_COMPAT=( python3_{10..12} )
|
|
6 |
inherit gnome.org meson-multilib python-any-r1 virtualx
|
7 |
7 |
|
8 |
8 |
DESCRIPTION="C++ interface for GTK+"
|
9 |
|
HOMEPAGE="https://www.gtkmm.org"
|
|
9 |
HOMEPAGE="https://www.gtkmm.org https://gitlab.gnome.org/GNOME/gtkmm"
|
10 |
10 |
|
11 |
11 |
LICENSE="LGPL-2.1+"
|
12 |
|
SLOT="2.4"
|
13 |
|
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~loong ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
|
14 |
|
IUSE="doc examples test"
|
|
12 |
SLOT="3.0"
|
|
13 |
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
|
|
14 |
|
|
15 |
IUSE="aqua gtk-doc test wayland X"
|
|
16 |
REQUIRED_USE="|| ( aqua wayland X )"
|
15 |
17 |
RESTRICT="!test? ( test )"
|
16 |
18 |
|
17 |
19 |
RDEPEND="
|
18 |
|
>=dev-cpp/glibmm-2.34.1:2[${MULTILIB_USEDEP}]
|
19 |
|
>=x11-libs/gtk+-2.24.15:2[${MULTILIB_USEDEP}]
|
20 |
|
>=x11-libs/gdk-pixbuf-2.28:2[${MULTILIB_USEDEP}]
|
21 |
|
>=dev-cpp/atkmm-2.22.7:0[${MULTILIB_USEDEP}]
|
22 |
|
>=dev-cpp/cairomm-1.10.0-r1:0[${MULTILIB_USEDEP}]
|
23 |
|
>=dev-cpp/pangomm-2.34.0:1.4[${MULTILIB_USEDEP}]
|
24 |
|
>=dev-libs/libsigc++-2.3.2:2[${MULTILIB_USEDEP}]
|
|
20 |
>=dev-cpp/atkmm-2.24.2:0[gtk-doc?,${MULTILIB_USEDEP}]
|
|
21 |
>=dev-cpp/cairomm-1.12.0:0[gtk-doc?,${MULTILIB_USEDEP}]
|
|
22 |
>=dev-cpp/glibmm-2.54.0:2[gtk-doc?,${MULTILIB_USEDEP}]
|
|
23 |
>=dev-cpp/pangomm-2.38.2:1.4[gtk-doc?,${MULTILIB_USEDEP}]
|
|
24 |
>=dev-libs/libsigc++-2.3.2:2[gtk-doc?,${MULTILIB_USEDEP}]
|
|
25 |
>=media-libs/libepoxy-1.2[${MULTILIB_USEDEP}]
|
|
26 |
>=x11-libs/gdk-pixbuf-2.35.5:2[${MULTILIB_USEDEP}]
|
|
27 |
>=x11-libs/gtk+-3.24.0:3[aqua?,wayland?,X=,${MULTILIB_USEDEP}]
|
25 |
28 |
"
|
26 |
|
DEPEND="${RDEPEND}
|
|
29 |
DEPEND="${RDEPEND}"
|
|
30 |
BDEPEND="
|
27 |
31 |
virtual/pkgconfig
|
28 |
|
doc? (
|
29 |
|
media-gfx/graphviz
|
|
32 |
gtk-doc? (
|
|
33 |
app-doc/doxygen[dot]
|
|
34 |
dev-lang/perl
|
30 |
35 |
dev-libs/libxslt
|
31 |
|
app-doc/doxygen )
|
|
36 |
)
|
|
37 |
${PYTHON_DEPS}
|
32 |
38 |
"
|
33 |
39 |
|
34 |
|
src_prepare() {
|
35 |
|
if ! use test; then
|
36 |
|
# don't waste time building tests
|
37 |
|
sed 's/^\(SUBDIRS =.*\)tests\(.*\)$/\1\2/' -i Makefile.am Makefile.in \
|
38 |
|
|| die "sed 1 failed"
|
39 |
|
fi
|
40 |
|
|
41 |
|
if ! use examples; then
|
42 |
|
# don't waste time building tests
|
43 |
|
sed 's/^\(SUBDIRS =.*\)demos\(.*\)$/\1\2/' -i Makefile.am Makefile.in \
|
44 |
|
|| die "sed 2 failed"
|
45 |
|
fi
|
46 |
|
|
47 |
|
gnome2_src_prepare
|
48 |
|
}
|
49 |
|
|
50 |
40 |
multilib_src_configure() {
|
51 |
|
ECONF_SOURCE="${S}" \
|
52 |
|
gnome2_src_configure \
|
53 |
|
--enable-api-atkmm \
|
54 |
|
$(multilib_native_use_enable doc documentation)
|
55 |
|
}
|
56 |
|
|
57 |
|
multilib_src_install() {
|
58 |
|
gnome2_src_install
|
|
41 |
local emesonargs=(
|
|
42 |
-Dbuild-atkmm-api=true
|
|
43 |
-Dbuild-demos=false
|
|
44 |
$(meson_native_use_bool gtk-doc build-documentation)
|
|
45 |
$(meson_use test build-tests)
|
|
46 |
$(meson_use X build-x11-api)
|
|
47 |
)
|
|
48 |
meson_src_configure
|
59 |
49 |
}
|
60 |
50 |
|
61 |
|
multilib_src_install_all() {
|
62 |
|
DOCS="AUTHORS ChangeLog PORTING NEWS README"
|
63 |
|
einstalldocs
|
|
51 |
multilib_src_test() {
|
|
52 |
virtx meson_src_test
|
64 |
53 |
}
|