Sync with portage [Tue Apr 21 09:10:04 MSK 2020].

develop
root 4 years ago
parent a09983f969
commit 313bce1e7e

Binary file not shown.

Binary file not shown.

@ -10,7 +10,7 @@ HOMEPAGE="https://wiki.gnome.org/Accessibility"
LICENSE="LGPL-2.1+"
SLOT="2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
IUSE="test"
RESTRICT="!test? ( test )"

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/Accessibility"
LICENSE="LGPL-2.1+"
SLOT="2"
IUSE="X gtk-doc +introspection"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
RDEPEND="
>=sys-apps/dbus-1.5[${MULTILIB_USEDEP}]

@ -1,2 +1 @@
DIST orca-3.32.0.tar.xz 2512032 BLAKE2B eae6c726e5e7361b7d60f0907f8c62c476895d681cf424940586e6308bcde147094a9557243aae6ecffef142bd556cb3cb30839955403e0958f123672400bf0a SHA512 015aa26ddaffa53d646e5d708ffed9e771beebbe925c27b963cbd3c3a2b36f730c0668cac6b89a371cd81cf8a570eb591711ba923fa4d013e00e31667749cf20
DIST orca-3.34.2.tar.xz 3509556 BLAKE2B 4e73517660b837cec6d4dc12e3b2e57dec526f22aa407ababee2cb12c3aa8807184649b6962f26551926b1b3f8c49230054b4ef5583e15eeeb94685aaaf3ca13 SHA512 b685bd8e417d74ccc0d0ce6b15b3220e5079320198886f568147480f107f7d0273cbd412fdc2c6cc509d3210b36c40aecb50e167d43120f6770ce02a0891ad20

@ -1,59 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
GNOME2_LA_PUNT="yes"
PYTHON_COMPAT=( python3_6 )
PYTHON_REQ_USE="threads"
inherit gnome2 python-single-r1
DESCRIPTION="Extensible screen reader that provides access to the desktop"
HOMEPAGE="https://wiki.gnome.org/Projects/Orca"
LICENSE="LGPL-2.1+ CC-BY-SA-3.0"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
IUSE="+braille"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
COMMON_DEPEND="${PYTHON_DEPS}
>=app-accessibility/at-spi2-atk-2.32:2
>=app-accessibility/at-spi2-core-2.32:2[introspection]
>=dev-libs/atk-2.32
>=dev-libs/glib-2.28:2
media-libs/gstreamer:1.0[introspection]
>=x11-libs/gtk+-3.6.2:3[introspection]
$(python_gen_cond_dep '
dev-python/gst-python:1.0[${PYTHON_MULTI_USEDEP}]
>=dev-python/pygobject-3.18:3[${PYTHON_MULTI_USEDEP}]
')
braille? (
$(python_gen_cond_dep '
>=app-accessibility/brltty-5.0-r3[python,${PYTHON_MULTI_USEDEP}]
dev-libs/liblouis[python,${PYTHON_MULTI_USEDEP}]
')
)
"
RDEPEND="${COMMON_DEPEND}
dev-libs/atk[introspection]
$(python_gen_cond_dep '
>=app-accessibility/speech-dispatcher-0.8[python,${PYTHON_MULTI_USEDEP}]
>=dev-python/pyatspi-2.32[${PYTHON_MULTI_USEDEP}]
dev-python/setproctitle[${PYTHON_MULTI_USEDEP}]
')
x11-libs/libwnck:3[introspection]
x11-libs/pango[introspection]
"
DEPEND="${COMMON_DEPEND}
>=dev-util/intltool-0.50
dev-util/itstool
virtual/pkgconfig
"
# app-text/yelp-tools
src_configure() {
gnome2_src_configure \
$(use_with braille liblouis)
}

@ -13,7 +13,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Orca"
LICENSE="LGPL-2.1+ CC-BY-SA-3.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
IUSE="+braille"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"

Binary file not shown.

@ -4,3 +4,5 @@ DIST vault-1.2.4-webui.tar.xz 1919024 BLAKE2B c1fc1460d70f33695ce9f7571a701035b0
DIST vault-1.2.4.tar.gz 27778766 BLAKE2B 536dd114c0268f91eb6b5c13cc30d22cdb9d1085c1378c6e39a6fcffeb4d5313363d225c85073a4da124962d6f7de8e4800a6648e392909a9595341ac178d94a SHA512 35a91088ac6949863e2de651edac19d73586acc2f42d14e48d3b41236d9458c95e60f8ec2285b3846ff04ebe59a4d4b308686151d758b5af8caad711441e2ee4
DIST vault-1.3.0-webui.tar.xz 2004176 BLAKE2B f17b51346e694e13cb51779f158116cd1e241ba1a90c5e384b40fafc916386fd12ae7e09e11b083f1ff8cb8aa89a94f811029edc10fceec2a08cbe8e65b1bac4 SHA512 2f3695134ffd9af478568b08fc66b593d00c0990178af2f3d0e8b27c53afeed1f7926d97afa688b21cca931665b435e85c036a9970f71355977815f214c66c0c
DIST vault-1.3.0.tar.gz 31098388 BLAKE2B 81ac68f47eed4a9e0187774558d38701f4e1481b07bd8a6f310741741a112dcf8e8344e156b6cef2a05e115da998fafab9627d62e261ffb8995ebdd2468f770a SHA512 4011706c2d418e4e13369f5afa5541af8296d6731c12aa670ed0fce66cc4d950edb76a0d24722be6b63538dc3479dcf68bb89ce7d9f37437062635feb6432165
DIST vault-1.4.0-webui.tar.xz 1211468 BLAKE2B 5a7b221f2339ca451f6bc2df7b1a4611a9f7786305ec0631d0e7130fb0287f764553d8a8a99ade5d28a2ae39fca1028b5a3c7299a5049acff0d1a3c1e9b8124f SHA512 3b17221e189f9e5fa73afbae3496e4d1105401a94ce5f99ff1c6975ca25b20485a05dc7f0b0c469d29d896524370d8fa23157d401d28e2e92a71a4813a4d9ba6
DIST vault-1.4.0.tar.gz 33097110 BLAKE2B 837f23a50128b0fab6542fc6a596d911267a1e14453091f22171db2ccf6a1a3d0aacdb3f210ac0d07efc7ed5ce845a197f61dd4dab37c35ad6f0f47cefc09c9d SHA512 13c1fb901fe577d91f2734f8a0ae5e51083e1307e7fc32a4388a1be48f2c46cd3d121432fa7450d6f9b439285d3ad5819b123631f41bb347e8d75ce683d24a7e

@ -0,0 +1,72 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit fcaps go-module systemd
DESCRIPTION="A tool for managing secrets"
HOMEPAGE="https://vaultproject.io/"
VAULT_WEBUI_ARCHIVE="${P}-webui.tar.xz"
SRC_URI="https://github.com/hashicorp/vault/archive/v${PV}.tar.gz -> ${P}.tar.gz
webui? (
https://dev.gentoo.org/~williamh/dist/${VAULT_WEBUI_ARCHIVE}
)"
LICENSE="MPL-2.0 Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+webui"
BDEPEND="dev-go/gox"
COMMON_DEPEND="acct-group/vault
acct-user/vault"
DEPEND="${COMMON_DEPEND}"
RDEPEND="${COMMON_DEPEND}"
FILECAPS=(
-m 755 'cap_ipc_lock=+ep' usr/bin/${PN}
)
RESTRICT+=" test"
src_prepare() {
default
# Avoid the need to have a git checkout
sed -e 's:^\(GIT_COMMIT=\).*:\1:' \
-e 's:^\(GIT_DIRTY=\).*:\1:' \
-e s:\'\${GIT_COMMIT}\${GIT_DIRTY}\':: \
-i scripts/build.sh || die
sed -e "/hooks/d" \
-e 's|^\([[:space:]]*\)goimports .*)|\1true|' \
-i Makefile || die
if [[ -f "${WORKDIR}/http/bindata_assetfs.go" ]]; then
mv "${WORKDIR}/http/bindata_assetfs.go" "${S}/http" ||
die "mv failed"
fi
}
src_compile() {
mkdir "${T}"/bin || die
BUILD_TAGS="$(usex webui ui '')" \
GOFLAGS="-mod=vendor" \
GOPATH="${T}" \
XC_ARCH=$(go env GOARCH) \
XC_OS=$(go env GOOS) \
XC_OSARCH=$(go env GOOS)/$(go env GOARCH) \
emake
}
src_install() {
dobin bin/${PN}
dodoc CHANGELOG.md CONTRIBUTING.md README.md
insinto /etc/${PN}.d
doins "${FILESDIR}/"*.json.example
insinto /etc/logrotate.d
newins "${FILESDIR}/${PN}.logrotated" "${PN}"
newinitd "${FILESDIR}/${PN}.initd" "${PN}"
newconfd "${FILESDIR}/${PN}.confd" "${PN}"
systemd_dounit "${FILESDIR}/${PN}.service"
keepdir /var/log/${PN}
fowners ${PN}:${PN} /var/log/${PN}
}

Binary file not shown.

@ -1,2 +1 @@
DIST file-roller-3.32.3.tar.xz 852808 BLAKE2B 939b931d7b179cc45ca3766dd122e2242e4de22b8c15f0942c31b5f9b5e8eed9d636122445d265539f9368f86d2efc10af161aaa046b3de6be05072d2b53004b SHA512 8256995f776524772936c6d60777c6c2668a610a672788a51ed83de1ae1c131b12373d2a918658f64f004757bb8c71b03edbf0c89776fcad6d64b4fc7fdb8e49
DIST file-roller-3.32.4.tar.xz 854444 BLAKE2B 04264e64af8ab4376fa6985683b16be7fef730a4e24044f726933b885aaaa6b630f347a256b09c2ce6183d0a0a392b33b4328715bf6d19cf7128c1980f9f4792 SHA512 16b5ddbdeacf4e9e61265ecff05e8f2e0034147c67ae7355d2442f9b26098ff253d24cb34c8e686c2ac031da6acac8e1e3c8a9f978e1eb2b446b1e045babafc7

@ -1,91 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit gnome.org gnome2-utils meson readme.gentoo-r1 xdg
DESCRIPTION="Archive manager for GNOME"
HOMEPAGE="https://wiki.gnome.org/Apps/FileRoller"
LICENSE="GPL-2+ CC-BY-SA-3.0"
SLOT="0"
IUSE="libnotify nautilus packagekit"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
# gdk-pixbuf used extensively in the source
# cairo used in eggtreemultidnd.c
# pango used in fr-window
RDEPEND="
>=app-arch/libarchive-3:=
>=dev-libs/glib-2.36:2
>=dev-libs/json-glib-0.14
>=x11-libs/gtk+-3.13.2:3
x11-libs/cairo
x11-libs/gdk-pixbuf:2
x11-libs/pango
libnotify? ( >=x11-libs/libnotify-0.4.3:= )
nautilus? ( >=gnome-base/nautilus-2.22.2 )
packagekit? ( app-admin/packagekit-base )
"
DEPEND="${RDEPEND}"
BDEPEND="
dev-util/glib-utils
dev-util/itstool
>=sys-devel/gettext-0.19.8
virtual/pkgconfig
"
DISABLE_AUTOFORMATTING="yes"
DOC_CONTENTS="
${PN} is a frontend for several archiving utilities. If you want a
particular archive format support, see ${HOMEPAGE}
and install the relevant package. For example:
7-zip - app-arch/p7zip
ace - app-arch/unace
arj - app-arch/arj
brotli - app-arch/brotli
cpio - app-arch/cpio
deb - app-arch/dpkg
iso - app-cdr/cdrtools
jar,zip - app-arch/zip and app-arch/unzip
lha - app-arch/lha
lzop - app-arch/lzop
lz4 - app-arch/lz4
rar - app-arch/unrar or app-arch/unar
rpm - app-arch/rpm
unstuff - app-arch/stuffit
zoo - app-arch/zoo"
src_prepare() {
# File providing Gentoo package names for various archivers
cp -v "${FILESDIR}"/3.32-packages.match data/packages.match || die
xdg_src_prepare
}
src_configure() {
local emesonargs=(
-Drun-in-place=false
$(meson_use nautilus nautilus-actions)
$(meson_use libnotify notification)
$(meson_use packagekit)
-Dlibarchive=true
)
meson_src_configure
}
src_install() {
meson_src_install
readme.gentoo_create_doc
}
pkg_postinst() {
xdg_pkg_postinst
gnome2_schemas_update
readme.gentoo_print_elog
}
pkg_postrm() {
xdg_pkg_postrm
gnome2_schemas_update
}

@ -10,7 +10,7 @@ HOMEPAGE="https://wiki.gnome.org/Apps/FileRoller"
LICENSE="GPL-2+ CC-BY-SA-3.0"
SLOT="0"
IUSE="libnotify nautilus packagekit"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
# gdk-pixbuf used extensively in the source
# cairo used in eggtreemultidnd.c

@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/msitools"
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc x86"
IUSE="gtk-doc +introspection test vala"
REQUIRED_USE="vala? ( introspection )"

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
@ -9,7 +9,7 @@ SRC_URI="http://he.fi/bchunk/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="amd64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
KEYWORDS="amd64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
DOCS=( "${P}.lsm" "${PN}.spec" README ChangeLog )
PATCHES=( "${FILESDIR}/CVE-2017-15953.patch" "${FILESDIR}/CVE-2017-15955.patch" )

Binary file not shown.

@ -19,7 +19,7 @@ RESTRICT="!test? ( test )"
REQUIRED_USE="test? ( introspection )
vala? ( introspection )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc x86"
RDEPEND="
>=dev-libs/glib-2.44:2[${MULTILIB_USEDEP}]

Binary file not shown.

@ -1,2 +1 @@
DIST gedit-plugins-3.32.2.tar.xz 1474264 BLAKE2B feb116ec201b9eb9630570818cc288f0044ecfc174fc84c7d812aa6dfba5cc3748b4e2351ffa2be0d3a593a58b2318c4296b54b84476fc887195ee27f27bb597 SHA512 2767bc766daba5e1c81ef5a00bc3589a301c02e0286a6622cf11a03b5b391ecbcf9456187563dad4f2916610ee9ddca4414ff4beb639820954385ee3f8091d2a
DIST gedit-plugins-3.34.1.tar.xz 978800 BLAKE2B 03225ddc414e172f08179c64fbf12d0282c131b71855ca9dc20ceaa5750a5555c7bdde8c4ff1d95c721177b3d379edbcfc9af19ec22b96942df1913d13560303 SHA512 7fe31c2b0a1381a44362bd6066422d182b2246e3f903f8cd83cde0467b9853620a445bea7878d93e95a0a71ac5d5dd081a1930d602007cf2a6ef00b1a45bebfc

@ -1,95 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
GNOME2_LA_PUNT="yes" # plugins are dlopened
PYTHON_COMPAT=( python3_{6,7,8} )
PYTHON_REQ_USE="xml"
VALA_MIN_API_VERSION="0.28"
inherit eutils gnome2 multilib python-single-r1 vala
DESCRIPTION="Official plugins for gedit"
HOMEPAGE="https://wiki.gnome.org/Apps/Gedit/ShippedPlugins"
LICENSE="GPL-2+"
KEYWORDS="amd64 x86"
SLOT="0"
IUSE_plugins="charmap git terminal vala"
IUSE="+python ${IUSE_plugins}"
# python-single-r1 would request disabling PYTHON_TARGETS on libpeas
REQUIRED_USE="
charmap? ( python )
git? ( python )
python? ( ${PYTHON_REQUIRED_USE} )
terminal? ( python )
"
RDEPEND="
>=app-editors/gedit-3.16
>=dev-libs/glib-2.32:2
>=dev-libs/libpeas-1.7.0[gtk]
>=x11-libs/gtk+-3.9:3
>=x11-libs/gtksourceview-4.0.2:4
python? (
${PYTHON_DEPS}
$(python_gen_cond_dep '
>=app-editors/gedit-3.16[introspection,python,${PYTHON_SINGLE_USEDEP}]
dev-libs/libpeas[python,${PYTHON_SINGLE_USEDEP}]
>=dev-python/dbus-python-0.82[${PYTHON_MULTI_USEDEP}]
dev-python/pycairo[${PYTHON_MULTI_USEDEP}]
dev-python/pygobject:3[cairo,${PYTHON_MULTI_USEDEP}]
')
>=x11-libs/gtk+-3.9:3[introspection]
>=x11-libs/gtksourceview-4.0.2:4[introspection]
x11-libs/pango[introspection]
x11-libs/gdk-pixbuf:2[introspection]
)
charmap? ( >=gnome-extra/gucharmap-3:2.90[introspection] )
git? ( >=dev-libs/libgit2-glib-0.0.6 )
terminal? ( >=x11-libs/vte-0.52:2.91[introspection] )
vala? ( $(vala_depend) )
" # vte-0.52+ for feed_child API compatibility
DEPEND="${RDEPEND}
dev-util/itstool
>=sys-devel/gettext-0.19.8
virtual/pkgconfig
"
pkg_setup() {
use python && [[ ${MERGE_TYPE} != binary ]] && python-single-r1_pkg_setup
}
src_prepare() {
use vala && vala_src_prepare
gnome2_src_prepare
}
src_configure() {
gnome2_src_configure \
$(use_enable python) \
$(use_enable vala)
}
src_install() {
gnome2_src_install
# FIXME: crazy !!!
if use python; then
find "${ED}"/usr/share/gedit -name "*.py*" -delete || die
find "${ED}"/usr/share/gedit -type d -empty -delete || die
fi
# FIXME: upstream made this automagic...
clean_plugin charmap
clean_plugin git
clean_plugin terminal
}
clean_plugin() {
if use !${1} ; then
rm -rf "${ED}"/usr/share/gedit/plugins/${1}*
rm -rf "${ED}"/usr/$(get_libdir)/gedit/plugins/${1}*
fi
}

@ -12,7 +12,7 @@ DESCRIPTION="Collection of extra plugins for the gedit Text Editor"
HOMEPAGE="https://wiki.gnome.org/Apps/Gedit/ShippedPlugins"
LICENSE="GPL-2+"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 x86"
SLOT="0"
IUSE="charmap git +python terminal vala"

@ -1,2 +1 @@
DIST gedit-3.32.2.tar.xz 14789660 BLAKE2B 574a490e3beda9e8b4f8324409f3a1e3361b1fdd097c4bf8d05475be2a6bb66b230ab6d2047caa62c393458c29b6647c32293ce5c1428d030cb2345c19bf41c3 SHA512 a3ed4dea3d0f60fb2371d2b6bbf5f5db1f67c9a71d0d47836456e022903e86b8b127c88ece6a6d817b0c86ff82612c963a9e8ed60f9841af68474a1d129c886d
DIST gedit-3.34.1.tar.xz 14797588 BLAKE2B 8dfaac4660575d67e3f8396dfed675a737fc69bc2b34866ee467a3464a338240133cab8d067db7b87fdc129f06a2450b91f4e0f70a73912d4a274cca980196d6 SHA512 22968c678a2f7ecf062f490d5eedc97aaa53b15932db801ea83eb336f01f41e7a6037a85508a40164f38dee406f8db097b7ef6f1481ab44ea82668766d24966d

@ -1,49 +0,0 @@
From 79ff20c4123fb674b467f78b542f048f07516652 Mon Sep 17 00:00:00 2001
From: Will Thompson <wjt@endlessm.com>
Date: Wed, 17 Apr 2019 06:29:27 +0100
Subject: [PATCH] filebrowser: fix build order for enum-types.h
On Endless's package build server, building gedit on x86_64 failed as
follows:
[ 194s] [97/147] /usr/bin/meson --internal exe /usr/src/packages/BUILD/obj-x86_64-linux-gnu/meson-private/meson_exe_gedit-tool-merge.pl_cd41154a78cf16ac2c5a9a58261cb6418b36427a.dat
[ 195s] [98/147] /usr/bin/msgfmt --desktop --keyword=Name --keyword=Description --template=../plugins/externaltools/externaltools.plugin.desktop.in -d /usr/src/packages/BUILD/po --output=plugins/externaltools/externaltools.plugin
[ 195s] [99/147] /usr/bin/meson --internal exe /usr/src/packages/BUILD/obj-x86_64-linux-gnu/meson-private/meson_exe_glib-mkenums_ea0cb1ece8d7fa2e9a3e7c5a57f45df212823d0f.dat
[ 195s] [100/147] cc -Iplugins/filebrowser/5f8d977@@filebrowser@sha -Iplugins/filebrowser -I../plugins/filebrowser -I. -I../ -Isubprojects/libgd -I../subprojects/libgd -Iplugins/filebrowser/resources -Igedit -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0 -I/usr/include/libdrm -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/gtksourceview-4 -I/usr/include/libxml2 -I/usr/include/libpeas-1.0 -I/usr/include/gobject-introspection-1.0 -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -DLIBGD_TAGGED_ENTRY=1 -DHAVE_CONFIG_H -MD -MQ 'plugins/filebrowser/5f8d977@@filebrowser@sha/gedit-file-browser-plugin.c.o' -MF 'plugins/filebrowser/5f8d977@@filebrowser@sha/gedit-file-browser-plugin.c.o.d' -o 'plugins/filebrowser/5f8d977@@filebrowser@sha/gedit-file-browser-plugin.c.o' -c ../plugins/filebrowser/gedit-file-browser-plugin.c
[ 195s] FAILED: plugins/filebrowser/5f8d977@@filebrowser@sha/gedit-file-browser-plugin.c.o
[ 195s] cc -Iplugins/filebrowser/5f8d977@@filebrowser@sha -Iplugins/filebrowser -I../plugins/filebrowser -I. -I../ -Isubprojects/libgd -I../subprojects/libgd -Iplugins/filebrowser/resources -Igedit -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0 -I/usr/include/libdrm -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/gtksourceview-4 -I/usr/include/libxml2 -I/usr/include/libpeas-1.0 -I/usr/include/gobject-introspection-1.0 -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -DLIBGD_TAGGED_ENTRY=1 -DHAVE_CONFIG_H -MD -MQ 'plugins/filebrowser/5f8d977@@filebrowser@sha/gedit-file-browser-plugin.c.o' -MF 'plugins/filebrowser/5f8d977@@filebrowser@sha/gedit-file-browser-plugin.c.o.d' -o 'plugins/filebrowser/5f8d977@@filebrowser@sha/gedit-file-browser-plugin.c.o' -c ../plugins/filebrowser/gedit-file-browser-plugin.c
[ 195s] ../plugins/filebrowser/gedit-file-browser-plugin.c:35:10: fatal error: gedit-file-browser-enum-types.h: No such file or directory
[ 195s] #include "gedit-file-browser-enum-types.h"
[ 195s] ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 195s] compilation terminated.
I couldn't reproduce this locally, perhaps because I have the wrong number
of cores. However, exploring the build graph with:
ninja -t browse plugins/filebrowser/5f8d977@@filebrowser@sha/libfilebrowser.so.symbols
showed that there was no dependency between
gedit-file-browser-plugin.c.o and gedit-file-browser-enum-types.h.
Adding the generated gedit-file-browser-enum-types.h to the sources for
this shared_library() causes an (order-only) dependency to be added,
ensuring that gedit-file-browser-enum-types.h is generated before
gedit-file-browser-plugin.c is compiled.
---
plugins/filebrowser/meson.build | 1 +
1 file changed, 1 insertion(+)
diff --git a/plugins/filebrowser/meson.build b/plugins/filebrowser/meson.build
index 708f7f1d4..94a4ab0a6 100644
--- a/plugins/filebrowser/meson.build
+++ b/plugins/filebrowser/meson.build
@@ -59,6 +59,7 @@ libfilebrowser_enums_c = custom_target('libfilebrowser_enums_c',
libfilebrowser_sources += [
libfilebrowser_enums_c,
+ libfilebrowser_type_enums.get(1),
]
subdir('resources')
--
2.20.1

@ -1,102 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
VALA_MIN_API_VERSION="0.26"
VALA_USE_DEPEND="vapigen"
inherit gnome.org gnome2-utils meson python-single-r1 vala xdg
DESCRIPTION="A text editor for the GNOME desktop"
HOMEPAGE="https://wiki.gnome.org/Apps/Gedit"
LICENSE="GPL-2+ CC-BY-SA-3.0"
SLOT="0"
IUSE="+introspection +python gtk-doc spell vala"
REQUIRED_USE="python? ( introspection ${PYTHON_REQUIRED_USE} ) spell? ( python )"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
# X libs are not needed for OSX (aqua)
DEPEND="
>=dev-libs/glib-2.44:2
>=x11-libs/gtk+-3.22.0:3[introspection?]
>=x11-libs/gtksourceview-4.0.2:4[introspection?]
>=dev-libs/libpeas-1.14.1[gtk]
>=dev-libs/libxml2-2.5.0:2
>=net-libs/libsoup-2.60:2.4
x11-libs/libX11
spell? ( >=app-text/gspell-0.2.5:0= )
introspection? ( >=dev-libs/gobject-introspection-1.54:= )
python? (
${PYTHON_DEPS}
$(python_gen_cond_dep '
dev-python/pycairo[${PYTHON_MULTI_USEDEP}]
>=dev-python/pygobject-3:3[cairo,${PYTHON_MULTI_USEDEP}]
dev-libs/libpeas[python,${PYTHON_SINGLE_USEDEP}]
')
)
"
RDEPEND="${DEPEND}
x11-themes/adwaita-icon-theme
gnome-base/gsettings-desktop-schemas
gnome-base/gvfs
"
BDEPEND="
${vala_depend}
app-text/docbook-xml-dtd:4.1.2
dev-util/glib-utils
gtk-doc? ( >=dev-util/gtk-doc-1 )
dev-util/itstool
>=sys-devel/gettext-0.18
virtual/pkgconfig
"
PATCHES=(
"${FILESDIR}"/${PV}-make-spell-optional.patch
"${FILESDIR}"/${PV}-fix-parallel-build.patch # parallel build failure fix, included in 3.34
)
pkg_setup() {
use python && python-single-r1_pkg_setup
}
src_prepare() {
use vala && vala_src_prepare
xdg_src_prepare
}
src_configure() {
local emesonargs=(
$(meson_use introspection)
$(meson_use vala vapi)
$(meson_use python plugins)
$(meson_use gtk-doc documentation)
-Denable-gvfs-metadata=yes
$(meson_use spell)
)
meson_src_configure
}
# Only appdata and desktop file validation in v3.32.2
src_test() { :; }
src_install() {
meson_src_install
if use python; then
python_optimize
python_optimize "${ED}/usr/$(get_libdir)/gedit/plugins/"
fi
}
pkg_postinst() {
xdg_pkg_postinst
gnome2_schemas_update
}
pkg_postrm() {
xdg_pkg_postrm
gnome2_schemas_update
}

@ -17,7 +17,7 @@ SLOT="0"
IUSE="+introspection +python gtk-doc spell vala"
REQUIRED_USE="python? ( introspection ${PYTHON_REQUIRED_USE} ) spell? ( python )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
# X libs are not needed for OSX (aqua)
DEPEND="

Binary file not shown.

@ -1,2 +1 @@
DIST bijiben-3.32.2.tar.xz 659988 BLAKE2B a155b3ad4d340b6efe039ae8458be6665f5ea37935b2040d8aa59f4b019a7ce2a9bb42c309fbc212b8f87cd2e3db533305b64d6987b3b527435ab9906165a7ff SHA512 71573ced01a5e984998fc5ce97ebbd4fcf04a91165465697ff29ea67076a31654b8f66a93c3ed79b30a8af2e38fad3ac4bfc3047106411078c6cbb67c20d5c5d
DIST bijiben-3.34.2.tar.xz 663348 BLAKE2B 7736823334c5439f1da93e81940f6a433b48cf94173606b1985912b408ebaa05d14866b0bbdd0978c08456fe5a592829203aa7fdd31291748148d7973ab3d8ab SHA512 75e1286aabd5c0d5aca3d2150aa36f18873cc0bfeed24a1b6aa9f4d78318d37712df71929f453b2db871021f4df148af8a9ef64d563a2158db8c1dbb620e4538

@ -1,53 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit gnome.org gnome2-utils meson xdg
DESCRIPTION="Note editor designed to remain simple to use"
HOMEPAGE="https://wiki.gnome.org/Apps/Notes"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE=""
DEPEND="
app-misc/tracker:0/2.0
>=dev-libs/glib-2.53.4:2
net-libs/gnome-online-accounts:=
>=x11-libs/gtk+-3.19.3:3
>=gnome-extra/evolution-data-server-3.13.90:=
<gnome-extra/evolution-data-server-3.33
dev-libs/libxml2:2
sys-apps/util-linux
>=net-libs/webkit-gtk-2.10:4
"
RDEPEND="${DEPEND}"
BDEPEND="
dev-libs/appstream-glib
dev-util/gdbus-codegen
dev-util/glib-utils
dev-util/itstool
>=sys-devel/gettext-0.19.8
virtual/pkgconfig
"
src_configure() {
local emesonargs=(
-Dzeitgeist=false
-Dupdate_mimedb=false
-Dprivate_store=false # private store is mainly meant for flatpak builds
)
meson_src_configure
}
pkg_postinst() {
xdg_pkg_postinst
gnome2_schemas_update
}
pkg_postrm() {
xdg_pkg_postrm
gnome2_schemas_update
}

@ -9,7 +9,7 @@ HOMEPAGE="https://wiki.gnome.org/Apps/Notes"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 x86"
IUSE=""
DEPEND="

@ -16,7 +16,7 @@ IUSE="cue exif ffmpeg gif gsf +gstreamer iptc +iso +jpeg libav +pdf +playlist ra
REQUIRED_USE="cue? ( gstreamer )" # cue is currently only supported via gstreamer, not ffmpeg/libav
RESTRICT="!test? ( test )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
# tracker-2.1.7 currently always depends on ICU (theoretically could be libunistring instead); so choose ICU over enca always here for the time being (ICU is preferred)
RDEPEND="

@ -14,7 +14,7 @@ LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0/2.0"
IUSE="gtk-doc +miners networkmanager stemmer"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
#RESTRICT="!test? ( test )"
PV_SERIES=$(ver_cut 1-2)

Binary file not shown.

@ -1,77 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
GNOME2_LA_PUNT="yes"
PYTHON_COMPAT=( python2_7 )
inherit gnome2 python-single-r1
DESCRIPTION="Project manager for Gnome"
HOMEPAGE="https://wiki.gnome.org/Apps/Planner"
SRC_URI="https://dev.gentoo.org/~eva/distfiles/${PN}/${P}.tar.xz"
SLOT="0"
LICENSE="GPL-2"
KEYWORDS="~alpha amd64 ~ppc ~sparc x86"
IUSE="eds examples python"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="
>=dev-libs/glib-2.6:2
>=x11-libs/gtk+-2.24:2
>=gnome-base/libgnomecanvas-2.10
>=gnome-base/libglade-2.4:2.0
>=gnome-base/gconf-2.10:2
>=dev-libs/libxml2-2.6.27:2
>=dev-libs/libxslt-1.1.23
python? (
${PYTHON_DEPS}
$(python_gen_cond_dep '
>=dev-python/pygtk-2.6:2[${PYTHON_MULTI_USEDEP}] )
')
eds? (
>=gnome-extra/evolution-data-server-3.6:=
>=mail-client/evolution-3.6 )
"
DEPEND="${RDEPEND}
app-text/rarian
dev-util/gtk-doc-am
>=dev-util/intltool-0.35.5
gnome-base/gnome-common
virtual/pkgconfig
"
S="${WORKDIR}/${PN}-0.14.6"
pkg_setup() {
use python && python-single-r1_pkg_setup
}
src_configure() {
# FIXME: disable eds backend for now, it fails, upstream bug #654005
# We need to set compile-warnings to a different value as it doesn't use
# standard macro: https://bugzilla.gnome.org/703067
gnome2_src_configure \
$(use_enable python) \
$(use_enable python python-plugin) \
$(use_enable eds) \
--disable-eds-backend \
--with-database=no \
--disable-update-mimedb \
--enable-compile-warnings=yes
#$(use_enable eds eds-backend)
}
src_install() {
# error: relink `libstorage-mrproject-1.la' with the above command before installing it
# Try to drop workaround on next snapshot or bump
MAKEOPTS="${MAKEOPTS} -j1" gnome2_src_install \
sqldocdir="\$(datadir)/doc/${PF}" \
sampledir="\$(datadir)/doc/${PF}/examples"
if ! use examples; then
rm -rf "${D}/usr/share/doc/${PF}/examples"
fi
}

@ -12,7 +12,7 @@ SRC_URI="https://dev.gentoo.org/~eva/distfiles/${PN}/${P}.tar.xz"
SLOT="0"
LICENSE="GPL-2"
KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86"
KEYWORDS="~alpha amd64 ~ppc ~sparc x86"
IUSE="eds examples"

Binary file not shown.

@ -1,2 +1,3 @@
DIST cpuid2cpuflags-8.tar.bz2 82432 BLAKE2B c4284106a4b1433e266e364b40dd50cf801f6b4afcb6928b13c1ac58ea1c3854b4a952f6ac914ef995aaa8bc9cfd8a4428c84386eb2949f83228a5b9d9781ada SHA512 167ee1620d6d726ef849d265785b568bb72a1aae15f5f0c527a903424c8ce9519033c49e8a143ae093b56e25fd71b4746793fb825233173fe60ac29eeecca20c
DIST cpuid2cpuflags-9.tar.bz2 82841 BLAKE2B 6f866a29680b53975359c56f54f3ecd8e978fe55297fdfcb84b25f57dc38bb0fb5c2169dde83e29235d13667a43faa11d75fa15e3d8fbef65a86cea2832363c4 SHA512 61a265abfd5b0920e1b3c18d322dceb416a6a353b3d3ef3f01ab1d02aab1b45dd1ec4eed4ccf667eae82c953830f29d22a671dd7d7c2b4d309050033af1fd5b7
DIST cpuinfo2cpuflags-1.tar.gz 1429 BLAKE2B 5126e643e5e2ea0be2418068fbcfbbae1781a0e3ab7903d909d4a5a291cb2e5db132a7a6a5c6db12a757688efca0557e4331a91f64af4b7e47deca415fd05b34 SHA512 68a21cfdb0fc8c6eb5aad5c6702d50dd56c927b2010efea1651dbc6a9657654b770bc5a4055fb11e790066c2c63c9ea29c3e03d91057abe187e7029e6797aede

@ -0,0 +1,28 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Tool to guess CPU_FLAGS_* flags for the host"
HOMEPAGE="https://github.com/mgorny/cpuid2cpuflags"
SRC_URI="https://github.com/mgorny/cpuid2cpuflags/releases/download/v${PV}/${P}.tar.bz2"
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ppc64 ~x86 ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
IUSE=""
pkg_postinst() {
local v
for v in ${REPLACING_VERSIONS}; do
if [[ ${v%-r*} -lt 2 ]]; then
elog 'Please note that the output has changed in v2. The new format is suitable'
elog 'both for Portage and Paludis. To use it, e.g.:'
elog
elog ' $ echo "*/* $(cpuid2cpuflags)" > /etc/portage/package.use/00cpuflags'
elog
elog '(you may need to convert package.use into a directory if you want to use'
elog ' separate file as presented here)'
fi
done
}

@ -1,4 +1,5 @@
DIST nattka-0.1.10.tar.gz 77467 BLAKE2B 2f1ccca7bab2db95be2145716ab17a48959ffef4ec41ade2e4d944b66aa1d2bb1146e43089fe75714502ada0510c6257cc1577bda9353c517572e09407f818ae SHA512 8fc3dc8e37e755c5736dd74d0fd081bbce26e5f1093401f527f8818ddf2aebbddf36feb04ca1e76fd37f2cffaecaca768e7f70ac85d0f31bab24b09a12d23cf4
DIST nattka-0.1.11.tar.gz 80381 BLAKE2B 0de07893bb5517f706fcc37b24466276a1bd9a5a973acb25ed37936f793f0d00a592d14e5b15b5aa16987aea4f2bbe9ad582475adfe89f986c8f75c5a558bcf6 SHA512 fda0a4fc997344e0db5740e9ad6ef683044ae83b1c35d48b218b7274b305057a488944ec75ebe0abcd2f999af716561956ac212a8c1bd49dbd861bcf48419033
DIST nattka-0.2.1.tar.gz 83710 BLAKE2B 06724e50eea2b25bd997991c60403e3eff21e3b1f5bd4fa5b10317a9e469f401380367f6cdef7aa52ea655ac8f0ea89d4864cbf838c9224343c9012bbb684857 SHA512 f0454c47b83113064f3757ffc4aba5a4d20d591ab18d4a01eff55f7b5208cc4ca2acc5f0ab3d494ea89de572272a1f52b4ca5879f8e59adc1640cd277cfdf8c6
DIST nattka-0.2.2.tar.gz 85213 BLAKE2B f940287f3d781d60c1d32cd4ac913e3a290e4438ab45b786cd715a4f61e48eb066a3380c5343f1cde12cc003d16bd25ae94dfb9129f0fd414add90c8ec016c5f SHA512 c83c8138843a52487f45a5d1c78839bfb40d918c9cff0feced9a6e43cb5760a21ac0faef342ee3d9ba0c58f22ac1be51fd764770d3ab7a148da92c565b964c89
DIST nattka-0.2.tar.gz 83729 BLAKE2B 686c09c03d1edab981799f07397c558bab3c2c9befdeb16e1fbb796b3eeb789cd7efc63369ce5e6a15c60b5f5b71a47074f39e851451971bdba8549175fc4024 SHA512 53a45214455febb266faa70b37782c2c1857ea3e6ec0d07dd6be4822046ee0cfe8af67c143843d292a94df94e65b244d93316a3bb3b44709b08c4a14a9de6455

@ -0,0 +1,35 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DISTUTILS_USE_SETUPTOOLS=rdepend
PYTHON_COMPAT=( python3_{6,7,8} )
inherit distutils-r1
DESCRIPTION="A New Arch Tester Toolkit -- open-source stable-bot replacement"
HOMEPAGE="https://github.com/mgorny/nattka/"
SRC_URI="https://github.com/mgorny/nattka/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~s390 ~sparc ~x86"
RDEPEND="
dev-python/lxml[${PYTHON_USEDEP}]
dev-python/requests[${PYTHON_USEDEP}]
dev-util/pkgcheck[${PYTHON_USEDEP}]
dev-vcs/git
sys-apps/pkgcore[${PYTHON_USEDEP}]"
BDEPEND="
test? ( dev-python/vcrpy[${PYTHON_USEDEP}] )"
distutils_enable_sphinx doc --no-autodoc
distutils_enable_tests pytest
pkg_postinst() {
elog "NATTkA can optionally use:"
elog " dev-python/networkx"
elog "to sort 'apply' output in dependency order."
}

Binary file not shown.

@ -43,7 +43,7 @@ src_configure() {
--debian-glitch
)
einfo "Running ${configure_call[@]}"
CC="$(tc-getCC)" \
CC="$(tc-getCC)" AR="$(tc-getAR)" \
"${configure_call[@]}" || die
}

@ -1,2 +1 @@
DIST evince-3.32.1.tar.xz 2567868 BLAKE2B 8fec9ce1981fb2c5fc60c4b653f462f07f0341ebe64a5615f1e1a123533f8053c6f76a02d05da9245b4263c24df1cdd2e28aa89486b8c802a2aa14cf04faf13b SHA512 29028fedde9aff85e53a5059f63df007e1bac7d662a91fe01e1bb8c48349d5674afe3ce37f9c495e4b208fd476b22f4ecaf749c6d7c3362a03b05703400ece05
DIST evince-3.34.2.tar.xz 2565752 BLAKE2B 76497c34ce2eb460a3f2c3e790a7c44b9eeddd566854061d49fba2ba7cefa3b523d7bfe973d08b7ec1e8d967e4cbd63c73a668a346bd158a67752897f25827ee SHA512 51bfa4671e17a98c536790185ece6f4f77b956062901f840cd298cdc3e42eb7e8cabe9bfa84387f185cdf7462a322ef54bbc463b988a677af68561e55acd9f12

@ -1,107 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
GNOME2_LA_PUNT="yes"
GNOME2_EAUTORECONF="yes"
inherit gnome2 systemd
DESCRIPTION="Simple document viewer for GNOME"
HOMEPAGE="https://wiki.gnome.org/Apps/Evince"
LICENSE="GPL-2+ CC-BY-SA-3.0"
# subslot = evd3.(suffix of libevdocument3)-evv3.(suffix of libevview3)
SLOT="0/evd3.4-evv3.3"
IUSE="djvu dvi gstreamer gnome gnome-keyring +introspection nautilus nsplugin postscript spell t1lib tiff xps"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~x64-solaris"
# atk used in libview
# bundles unarr
COMMON_DEPEND="
dev-libs/atk
>=dev-libs/glib-2.36:2[dbus]
>=dev-libs/libxml2-2.5:2
sys-libs/zlib:=
>=x11-libs/gdk-pixbuf-2.36.5:2
>=x11-libs/gtk+-3.22.0:3[introspection?]
gnome-base/gsettings-desktop-schemas
>=x11-libs/cairo-1.10:=
>=app-text/poppler-0.76.0[cairo]
>=app-arch/libarchive-3.2.0
djvu? ( >=app-text/djvu-3.5.22:= )
dvi? (
virtual/tex-base
dev-libs/kpathsea:=
t1lib? ( >=media-libs/t1lib-5:= ) )
gstreamer? (
media-libs/gstreamer:1.0
media-libs/gst-plugins-base:1.0
media-libs/gst-plugins-good:1.0 )
gnome? ( gnome-base/gnome-desktop:3= )
gnome-keyring? ( >=app-crypt/libsecret-0.5 )
introspection? ( >=dev-libs/gobject-introspection-1:= )
nautilus? ( >=gnome-base/nautilus-2.91.4 )
postscript? ( >=app-text/libspectre-0.2:= )
spell? ( >=app-text/gspell-1.6.0:= )
tiff? ( >=media-libs/tiff-3.6:0= )
xps? ( >=app-text/libgxps-0.2.1:= )
"
RDEPEND="${COMMON_DEPEND}
gnome-base/gvfs
gnome-base/librsvg
|| (
>=x11-themes/adwaita-icon-theme-2.17.1
>=x11-themes/hicolor-icon-theme-0.10 )
"
DEPEND="${COMMON_DEPEND}
app-text/docbook-xml-dtd:4.3
dev-libs/appstream-glib
dev-util/gdbus-codegen
dev-util/glib-utils
>=dev-util/gtk-doc-am-1.13
dev-util/itstool
>=sys-devel/gettext-0.19.8
virtual/pkgconfig
app-text/yelp-tools
"
# eautoreconf needs:
# app-text/yelp-tools
PATCHES=(
"${FILESDIR}"/3.30.2-internal-synctex.patch # don't automagically link to synctex from texlive-core - always use internal copy of this small parser for now; requires eautoreconf
)
src_prepare() {
gnome2_src_prepare
# Do not depend on adwaita-icon-theme, bug #326855, #391859
# https://gitlab.freedesktop.org/xdg/default-icon-theme/issues/7
sed -e 's/adwaita-icon-theme >= $ADWAITA_ICON_THEME_REQUIRED//g' \
-i configure || die "sed failed"
}
src_configure() {
gnome2_src_configure \
--disable-static \
--enable-pdf \
--enable-comics \
--enable-thumbnailer \
--with-platform=gnome \
--enable-dbus \
$(use_enable djvu) \
$(use_enable dvi) \
$(use_enable gstreamer multimedia) \
$(use_enable gnome libgnome-desktop) \
$(use_with gnome-keyring keyring) \
$(use_enable introspection) \
$(use_enable nautilus) \
$(use_enable nsplugin browser-plugin) \
$(use_enable postscript ps) \
$(use_with spell gspell) \
$(use_enable t1lib) \
$(use_enable tiff) \
$(use_enable xps) \
BROWSER_PLUGIN_DIR="${EPREFIX}"/usr/$(get_libdir)/nsbrowser/plugins \
--with-systemduserunitdir="$(systemd_get_userunitdir)"
}

@ -14,7 +14,7 @@ LICENSE="GPL-2+ CC-BY-SA-3.0"
# subslot = evd3.(suffix of libevdocument3)-evv3.(suffix of libevview3)
SLOT="0/evd3.4-evv3.3"
IUSE="djvu dvi gstreamer gnome gnome-keyring +introspection nautilus nsplugin postscript spell t1lib tiff xps"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~x64-solaris"
# atk used in libview
# bundles unarr

@ -12,7 +12,7 @@ SRC_URI="http://${PN}.sourceforge.net/download/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-macos ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~x86-macos ~x86-solaris"
IUSE=""
RDEPEND="x11-libs/gtk+:2

@ -2,7 +2,7 @@ DIST texlive-20190410-source.tar.xz 53783408 BLAKE2B 8e34c7c2b74eab1c4d16ddbf7ed
DIST texlive-20200406-source.tar.xz 55383320 BLAKE2B 3bc024166ebfc269389531c7cf818b062856cd2dcc27cf0a2e790f07cd941d9905c9c6a54566ea627ea1ca334d2b6da8d3e5bd1c686dc9d6f8ac15aac388c1e3 SHA512 65be52cb5e1b52f12feb62c6cf23e56c581b9dccb8d3b9ccc85c12c62b0cb67dd71de8d22d967d2cbf8403502c66bccb238523d13a0d081be104fc9f9c68b477
DIST texlive-core-patches-2019-10.tar.xz 15384 BLAKE2B 0715e8553db296eb31f88791010c8e5c383758d0ae0b99effdbecf3dee029a865cac594c50262137c33915c3ddd9bdec0daaade9979b932444ef44fa4928fdc2 SHA512 166bb4440e824fed8aacfe0a1a62aa64403c6cd23bfbae4d65b6ee8822d29a54d30664068f0d65b49b30586691f75a21bb3719e41c75481f5cab72e82d0be1a7
DIST texlive-core-patches-2019-11.tar.xz 15412 BLAKE2B ac0abe035541acf2b4c028e310616a72e47c4c59826535a667bbc439069adabd5c54260d7724ae663ea0d36de01cdf363fa1c3472e8c53b19029fb798d432e53 SHA512 ae624bdbd172de373871dd8a1bd0d8c2e810e89e471705de393caf351d8863e71558ca021a9365821bbcb73956642d8a65f670431a7f94774080e6f821fc1d92
DIST texlive-core-patches-2020-1.tar.xz 12168 BLAKE2B 7e6417100f9e912343422dfe089c46467e15a721763f345a2e5618b53fb2da90cd3611a8a4205b5453666826e7e9e7a91a75c07b7e3cab40d6594afd436edeb1 SHA512 6109906cf83bec24d70f9a396b01febd727580547129bcb935784cf75bea823f1195d459f12457472fee3d76973d3c277d49ec9365847c5b707a9698ffd18a07
DIST texlive-core-patches-2020-3.tar.xz 12200 BLAKE2B 59ce9302ee78d2e450c255b1aa8e9e8d5fc9cb1908d9dfb7c65ce742c400b0a58f839b3c92afcd36f4b7e65d78a9bfded734b4d59e0201d2e95d8e9f726a15a8 SHA512 b1bf512250a15b55c668fe5a0fcc0d28b56c738b1b05f9222e0dbf269e0ff9319760b74f9c7a55c3ff096c90dbf68d554b915e4c11b015b565e8372837582a69
DIST texlive-module-a2ping-2019.tar.xz 30616 BLAKE2B 545abfdd3aa23b8d2bed608d7b7aef0f9578d5c4d6039880d435144c687014edb8c841afcb2d9ca1fc48a365b2bcb57832d49d1c6bb35480a01a813e40e18ea6 SHA512 983084ca3d70eff729d81d5d52a74e1bf1f95e384916bc81d17be81290f70c1da5ac891c1665a2451975f36fd56ea0036e1d0dc46b2e98b61ddc660ac044c23c
DIST texlive-module-a2ping-2020.tar.xz 30652 BLAKE2B 63e857ba7142751828669bc00d9689f000effddecc221a03943f508e69a28bdc675707527b47a5444ac9881268b1d9abe372d0bbcde78007aaf81c69b15421dd SHA512 4008c18f93a7d378c8da20bad7c1fdf19c3e6befccdcc804326168854fcd35bb89fe414b30a26dbddeaf81a11c0d404bf5b5459bd3d8adce49dc30279e3bd420
DIST texlive-module-a2ping.doc-2019.tar.xz 39740 BLAKE2B 1a9cf6e4cf4dd4dd7677efddafc9da191ab3c34eea3b7bd0f51937f6946e1696b858aa9d53e7599c220933b06bc0332869a0bd596ca66b9801b48adb5ab1aa2b SHA512 daeefb01a0197e3b7751614cb84e2926f670d36b7e8a389bfbbe39cbd941c4d10ef5112593bfb88e11fa15f7f7bb07f2538c7d0a68cefe1482bbdaf02d475512

@ -9,7 +9,7 @@ inherit flag-o-matic toolchain-funcs libtool texlive-common
MY_P=${PN%-core}-${TL_SOURCE_VERSION}-source
PATCHLEVEL=1
PATCHLEVEL=3
DESCRIPTION="A complete TeX distribution"
HOMEPAGE="https://tug.org/texlive/"

Binary file not shown.

@ -9,7 +9,7 @@ HOMEPAGE="https://www.gtkmm.org"
LICENSE="LGPL-2.1+ GPL-2+" # GPL-2+ applies only to the build system
SLOT="2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
IUSE="doc debug test"
RESTRICT="!test? ( test )"

@ -9,7 +9,7 @@ HOMEPAGE="https://www.gtkmm.org"
LICENSE="LGPL-2.1+"
SLOT="1.4"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
IUSE="doc"
COMMON_DEPEND="

Binary file not shown.

@ -9,7 +9,8 @@ JAVA_PKG_OPT_USE="jdbc"
# Keeping eutils in EAPI=6 for emktemp in pkg_config
inherit eutils systemd flag-o-matic prefix toolchain-funcs java-pkg-opt-2 user cmake-utils multilib-build
inherit eutils systemd flag-o-matic prefix toolchain-funcs \
multiprocessing java-pkg-opt-2 cmake-utils multilib-build
SRC_URI="https://downloads.mariadb.org/interstitial/${P}/source/${P}.tar.gz "
@ -115,26 +116,33 @@ COMMON_DEPEND="
DEPEND="virtual/yacc
static? ( sys-libs/ncurses[static-libs] )
|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )
server? ( extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) ) )
server? (
extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) )
test? ( acct-group/mysql acct-user/mysql )
)
${COMMON_DEPEND}"
RDEPEND="selinux? ( sec-policy/selinux-mysql )
client-libs? ( !dev-db/mariadb-connector-c[mysqlcompat] !dev-db/mysql-connector-c )
!dev-db/mysql !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster
server? ( !prefix? ( dev-db/mysql-init-scripts ) )
${COMMON_DEPEND}
server? ( galera? (
sys-apps/iproute2
=sys-cluster/galera-25*
sst-rsync? ( sys-process/lsof )
sst-mariabackup? ( net-misc/socat[ssl] )
sst-xtrabackup? ( net-misc/socat[ssl] )
) )
perl? ( !dev-db/mytop
server? (
galera? (
sys-apps/iproute2
=sys-cluster/galera-25*
sst-rsync? ( sys-process/lsof )
sst-mariabackup? ( net-misc/socat[ssl] )
sst-xtrabackup? ( net-misc/socat[ssl] )
)
!prefix? ( dev-db/mysql-init-scripts acct-group/mysql acct-user/mysql )
extraengine? ( jdbc? ( >=virtual/jre-1.6 ) )
)
perl? (
!dev-db/mytop
virtual/perl-Getopt-Long
dev-perl/TermReadKey
virtual/perl-Term-ANSIColor
virtual/perl-Time-HiRes )
server? ( extraengine? ( jdbc? ( >=virtual/jre-1.6 ) ) )
virtual/perl-Time-HiRes
)
"
# For other stuff to bring us in
# dev-perl/DBD-mysql is needed by some scripts installed by MySQL
@ -142,16 +150,74 @@ RDEPEND="selinux? ( sec-policy/selinux-mysql )
PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )
server? ( galera? ( sst-xtrabackup? ( || ( >=dev-db/percona-xtrabackup-bin-2.2.4 dev-db/percona-xtrabackup ) ) ) )"
mysql_init_vars() {
MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"}
MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"}
MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"}
MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"}
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=""
if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then
MY_DATADIR=$(my_print_defaults mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1)
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=$(grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \
| sed -e 's/.*=\s*//' \
| tail -n1)
fi
fi
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR="${MY_LOCALSTATEDIR}"
einfo "Using default MY_DATADIR"
fi
elog "MySQL MY_DATADIR is ${MY_DATADIR}"
if [[ -z "${PREVIOUS_DATADIR}" ]] ; then
if [[ -e "${MY_DATADIR}" ]] ; then
# If you get this and you're wondering about it, see bug #207636
elog "MySQL datadir found in ${MY_DATADIR}"
elog "A new one will not be created."
PREVIOUS_DATADIR="yes"
else
PREVIOUS_DATADIR="no"
fi
export PREVIOUS_DATADIR
fi
else
if [[ ${EBUILD_PHASE} == "config" ]]; then
local new_MY_DATADIR
new_MY_DATADIR=$(my_print_defaults mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1)
if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then
ewarn "MySQL MY_DATADIR has changed"
ewarn "from ${MY_DATADIR}"
ewarn "to ${new_MY_DATADIR}"
MY_DATADIR="${new_MY_DATADIR}"
fi
fi
fi
export MY_SHAREDSTATEDIR MY_SYSCONFDIR
export MY_LOCALSTATEDIR MY_LOGDIR
export MY_DATADIR
}
pkg_setup() {
if [[ ${MERGE_TYPE} != binary ]] ; then
local GCC_MAJOR_SET=$(gcc-major-version)
local GCC_MINOR_SET=$(gcc-minor-version)
if use tokudb && [[ ${GCC_MAJOR_SET} -lt 4 || \
${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then
eerror "${PN} with tokudb needs to be built with gcc-4.7 or later."
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
die
fi
# Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on
# non x86{,_64} arches
if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \
@ -160,62 +226,19 @@ pkg_setup() {
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
die
fi
fi
java-pkg-opt-2_pkg_setup
if has test ${FEATURES} && \
use server && ! has userpriv ${FEATURES} ; then
eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
fi
# This should come after all of the die statements
enewgroup mysql 60 || die "problem adding 'mysql' group"
enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user"
}
pkg_preinst() {
java-pkg-opt-2_pkg_preinst
}
pkg_postinst() {
# Make sure the vars are correctly initialized
mysql_init_vars
# Create log directory securely if it does not exist
[[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}"
if use server ; then
if use pam; then
einfo
elog "This install includes the PAM authentication plugin."
elog "To activate and configure the PAM plugin, please read:"
elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/"
einfo
fi
if has test ${FEATURES} ; then
# Bug #213475 - MySQL _will_ object strenuously if your machine is named
# localhost. Also causes weird failures.
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
einfo
elog "You might want to run:"
elog "\"emerge --config =${CATEGORY}/${PF}\""
elog "if this is a new install."
elog
elog "If you are switching server implentations, you should run the"
elog "mysql_upgrade tool."
einfo
else
einfo
elog "If you are upgrading major versions, you should run the"
elog "mysql_upgrade tool."
einfo
if ! has userpriv ${FEATURES} ; then
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
fi
fi
einfo
elog "Be sure to edit the my.cnf file to activate your cluster settings."
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
elog "The first time the cluster is activated, you should add"
elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node."
elog "This option should then be removed for subsequent starts."
einfo
fi
java-pkg-opt-2_pkg_setup
}
src_unpack() {
@ -441,6 +464,141 @@ src_compile() {
cmake-utils_src_compile
}
# Official test instructions:
# USE='extraengine perl server' \
# FEATURES='test userpriv' \
# ebuild mariadb-X.X.XX.ebuild \
# digest clean package
src_test() {
_disable_test() {
local rawtestname bug reason
rawtestname="${1}" ; shift
bug="${1}" ; shift
reason="${@}"
ewarn "test '${rawtestname}' disabled: '${reason}' (BUG#${bug})"
echo "${rawtestname} : BUG#${bug} ${reason}" >> "${T}/disabled.def"
}
local TESTDIR="${BUILD_DIR}/mysql-test"
local retstatus_unit
local retstatus_tests
if ! use server ; then
einfo "Skipping server tests due to minimal build."
return 0
fi
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
# Run CTest (test-units)
cmake-utils_src_test
retstatus_unit=$?
# Ensure that parallel runs don't die
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
if [[ -z "${MTR_PARALLEL}" ]] ; then
local -x MTR_PARALLEL=$(makeopts_jobs)
if [[ ${MTR_PARALLEL} -gt 4 ]] ; then
# Running multiple tests in parallel usually require higher ulimit
# and fs.aio-max-nr setting. In addition, tests like main.multi_update
# are known to hit timeout when system is busy.
# To avoid test failure we will limit MTR_PARALLEL to 4 instead of
# using "auto".
local info_msg="Parallel MySQL test suite jobs limited to 4 (MAKEOPTS=${MTR_PARALLEL})"
info_msg+=" to avoid test failures. Set MTR_PARALLEL if you know what you are doing!"
einfo "${info_msg}"
unset info_msg
MTR_PARALLEL=4
fi
else
einfo "MTR_PARALLEL is set to '${MTR_PARALLEL}'"
fi
# Try to increase file limits to increase test coverage
if ! ulimit -n 16500 1>/dev/null 2>&1 ; then
# Upper limit comes from parts.partition_* tests
ewarn "For maximum test coverage please raise open file limit to 16500 (ulimit -n 16500) before calling the package manager."
if ! ulimit -n 4162 1>/dev/null 2>&1 ; then
# Medium limit comes from '[Warning] Buffered warning: Could not increase number of max_open_files to more than 3000 (request: 4162)'
ewarn "For medium test coverage please raise open file limit to 4162 (ulimit -n 4162) before calling the package manager."
if ! ulimit -n 3000 1>/dev/null 2>&1 ; then
ewarn "For minimum test coverage please raise open file limit to 3000 (ulimit -n 3000) before calling the package manager."
else
einfo "Will run test suite with open file limit set to 3000 (minimum test coverage)."
fi
else
einfo "Will run test suite with open file limit set to 4162 (medium test coverage)."
fi
else
einfo "Will run test suite with open file limit set to 16500 (best test coverage)."
fi
# create directories because mysqladmin might run out of order
mkdir -p "${T}"/var-tests{,/log} || die
cp "${S}"/mysql-test/unstable-tests "${T}/disabled.def" || die
local -a disabled_tests
disabled_tests+=( "compat/oracle.plugin;0;Needs example plugin which Gentoo disables" )
disabled_tests+=( "main.explain_non_select;0;Sporadically failing test" )
disabled_tests+=( "main.func_time;0;Dependent on time test was written" )
disabled_tests+=( "main.grant;0;Sporadically failing test" )
disabled_tests+=( "main.join_cache;0;Sporadically failing test" )
disabled_tests+=( "main.plugin_auth;0;Needs client libraries built" )
disabled_tests+=( "main.stat_tables;0;Sporadically failing test" )
disabled_tests+=( "main.stat_tables_innodb;0;Sporadically failing test" )
disabled_tests+=( "mariabackup.*;0;Broken test suite" )
disabled_tests+=( "plugins.auth_ed25519;0;Needs client libraries built" )
disabled_tests+=( "plugins.cracklib_password_check;0;False positive due to varying policies" )
disabled_tests+=( "plugins.two_password_validations;0;False positive due to varying policies" )
disabled_tests+=( "roles.acl_statistics;0;False positive due to a user count mismatch caused by previous test" )
if ! use latin1 ; then
disabled_tests+=( "funcs_1.is_columns_mysql;0;Requires USE=latin1" )
disabled_tests+=( "main.information_schema;0;Requires USE=latin1" )
disabled_tests+=( "main.mysql;0;Requires USE=latin1" )
disabled_tests+=( "main.system_mysql_db;0;Requires USE=latin1" )
fi
if ! use profiling ; then
disabled_tests+=( "sys_vars.sysvars_server_notembedded;0;Requires USE=profiling" )
fi
local test_infos_str test_infos_arr
for test_infos_str in "${disabled_tests[@]}" ; do
IFS=';' read -r -a test_infos_arr <<< "${test_infos_str}"
if [[ ${#test_infos_arr[@]} != 3 ]] ; then
die "Invalid test data set, not matching format: ${test_infos_str}"
fi
_disable_test "${test_infos_arr[0]}" "${test_infos_arr[1]}" "${test_infos_arr[2]}"
done
unset test_infos_str test_infos_arr
# run mysql-test tests
pushd "${TESTDIR}" &>/dev/null || die
perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def"
retstatus_tests=$?
popd &>/dev/null || die
# Cleanup is important for these testcases.
pkill -9 -f "${S}/ndb" 2>/dev/null
pkill -9 -f "${S}/sql" 2>/dev/null
local failures=""
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
[[ -z "$failures" ]] || die "Test failures: $failures"
einfo "Tests successfully completed"
}
src_install() {
cmake-utils_src_install
@ -511,158 +669,50 @@ src_install() {
[[ -e "${ED}/usr/bin/mytop" ]] && ! use perl && rm -f "${ED}/usr/bin/mytop"
}
# Official test instructions:
# USE='extraengine perl server' \
# FEATURES='test userpriv -usersandbox' \
# ebuild mariadb-X.X.XX.ebuild \
# digest clean package
src_test() {
_disable_test() {
local rawtestname reason
rawtestname="${1}" ; shift
reason="${@}"
ewarn "test '${rawtestname}' disabled: '${reason}'"
echo ${rawtestname} : ${reason} >> "${T}/disabled.def"
}
local TESTDIR="${BUILD_DIR}/mysql-test"
local retstatus_unit
local retstatus_tests
if ! use server ; then
einfo "Skipping server tests due to minimal build."
return 0
fi
# Bug #213475 - MySQL _will_ object strenously if your machine is named
# localhost. Also causes weird failures.
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
if [[ $UID -eq 0 ]]; then
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
fi
has usersandbox $FEATURES && ewarn "Some tests may fail with FEATURES=usersandbox"
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
# Run CTest (test-units)
# cmake-utils_src_test
# retstatus_unit=$?
# Ensure that parallel runs don't die
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
# Enable parallel testing, auto will try to detect number of cores
# You may set this by hand.
# The default maximum is 8 unless MTR_MAX_PARALLEL is increased
export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
# create directories because mysqladmin might run out of order
mkdir -p "${T}"/var-tests{,/log} || die
# Run mysql tests
pushd "${TESTDIR}" > /dev/null || die
touch "${T}/disabled.def"
# These are failing in MariaDB 10.0 for now and are believed to be
# false positives:
#
# main.mysql_client_test, main.mysql_client_test_nonblock
# main.mysql_client_test_comp:
# segfaults at random under Portage only, suspect resource limits.
local t
for t in plugins.cracklib_password_check plugins.two_password_validations ; do
_disable_test "$t" "False positive due to varying policies"
done
for t in main.mysql_client_test main.mysql_client_test_nonblock \
rpl.rpl_semi_sync_uninstall_plugin main.mysql \
main.mysql_client_test_comp rpl.rpl_extra_col_master_myisam ; do
_disable_test "$t" "False positives in Gentoo"
done
if ! use client-libs ; then
_disable_test main.plugin_auth "Needs client libraries built"
_disable_test plugins.auth_ed25519 "Needs client libraries built"
fi
_disable_test main.gis_notembedded "Fails when latin1 USE is not set"
_disable_test sys_vars.sysvars_server_notembedded "Broken test" # bug #661700 required profiling always on
# run mysql-test tests
perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def"
retstatus_tests=$?
popd > /dev/null || die
# Cleanup is important for these testcases.
pkill -9 -f "${S}/ndb" 2>/dev/null
pkill -9 -f "${S}/sql" 2>/dev/null
local failures=""
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
[[ -z "$failures" ]] || die "Test failures: $failures"
einfo "Tests successfully completed"
pkg_preinst() {
java-pkg-opt-2_pkg_preinst
}
mysql_init_vars() {
MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"}
MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"}
MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"}
MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"}
pkg_postinst() {
# Make sure the vars are correctly initialized
mysql_init_vars
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=""
if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then
MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1`
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \
| sed -e 's/.*=\s*//' \
| tail -n1`
fi
fi
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR="${MY_LOCALSTATEDIR}"
einfo "Using default MY_DATADIR"
fi
elog "MySQL MY_DATADIR is ${MY_DATADIR}"
# Create log directory securely if it does not exist
[[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}"
if [[ -z "${PREVIOUS_DATADIR}" ]] ; then
if [[ -e "${MY_DATADIR}" ]] ; then
# If you get this and you're wondering about it, see bug #207636
elog "MySQL datadir found in ${MY_DATADIR}"
elog "A new one will not be created."
PREVIOUS_DATADIR="yes"
else
PREVIOUS_DATADIR="no"
fi
export PREVIOUS_DATADIR
if use server ; then
if use pam; then
einfo
elog "This install includes the PAM authentication plugin."
elog "To activate and configure the PAM plugin, please read:"
elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/"
einfo
fi
else
if [[ ${EBUILD_PHASE} == "config" ]]; then
local new_MY_DATADIR
new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1`
if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then
ewarn "MySQL MY_DATADIR has changed"
ewarn "from ${MY_DATADIR}"
ewarn "to ${new_MY_DATADIR}"
MY_DATADIR="${new_MY_DATADIR}"
fi
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
einfo
elog "You might want to run:"
elog "\"emerge --config =${CATEGORY}/${PF}\""
elog "if this is a new install."
elog
elog "If you are switching server implentations, you should run the"
elog "mysql_upgrade tool."
einfo
else
einfo
elog "If you are upgrading major versions, you should run the"
elog "mysql_upgrade tool."
einfo
fi
fi
export MY_SHAREDSTATEDIR MY_SYSCONFDIR
export MY_LOCALSTATEDIR MY_LOGDIR
export MY_DATADIR
einfo
elog "Be sure to edit the my.cnf file to activate your cluster settings."
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
elog "The first time the cluster is activated, you should add"
elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node."
elog "This option should then be removed for subsequent starts."
einfo
fi
}
pkg_config() {

@ -10,7 +10,7 @@ JAVA_PKG_OPT_USE="jdbc"
# Keeping eutils in EAPI=6 for emktemp in pkg_config
inherit eutils systemd flag-o-matic prefix toolchain-funcs \
java-pkg-opt-2 user cmake-utils
multiprocessing java-pkg-opt-2 cmake-utils
SRC_URI="https://downloads.mariadb.org/interstitial/${P}/source/${P}.tar.gz "
@ -113,26 +113,33 @@ COMMON_DEPEND="
DEPEND="virtual/yacc
static? ( sys-libs/ncurses[static-libs] )
|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )
server? ( extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) ) )
server? (
extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) )
test? ( acct-group/mysql acct-user/mysql )
)
${COMMON_DEPEND}"
RDEPEND="selinux? ( sec-policy/selinux-mysql )
!dev-db/mysql !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster
server? ( !prefix? ( dev-db/mysql-init-scripts ) )
!<virtual/mysql-5.6-r11
${COMMON_DEPEND}
server? ( galera? (
sys-apps/iproute2
=sys-cluster/galera-25*
sst-rsync? ( sys-process/lsof )
sst-mariabackup? ( net-misc/socat[ssl] )
sst-xtrabackup? ( net-misc/socat[ssl] )
) )
perl? ( !dev-db/mytop
server? (
galera? (
sys-apps/iproute2
=sys-cluster/galera-25*
sst-rsync? ( sys-process/lsof )
sst-mariabackup? ( net-misc/socat[ssl] )
sst-xtrabackup? ( net-misc/socat[ssl] )
)
!prefix? ( dev-db/mysql-init-scripts acct-group/mysql acct-user/mysql )
extraengine? ( jdbc? ( >=virtual/jre-1.6 ) )
)
perl? (
!dev-db/mytop
virtual/perl-Getopt-Long
dev-perl/TermReadKey
virtual/perl-Term-ANSIColor
virtual/perl-Time-HiRes )
server? ( extraengine? ( jdbc? ( >=virtual/jre-1.6 ) ) )
virtual/perl-Time-HiRes
)
"
# For other stuff to bring us in
# dev-perl/DBD-mysql is needed by some scripts installed by MySQL
@ -141,16 +148,74 @@ PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )
server? ( ~virtual/mysql-5.6[static=]
galera? ( sst-xtrabackup? ( || ( >=dev-db/percona-xtrabackup-bin-2.2.4 dev-db/percona-xtrabackup ) ) ) )"
mysql_init_vars() {
MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"}
MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"}
MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"}
MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"}
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=""
if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then
MY_DATADIR=$(my_print_defaults mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1)
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=$(grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \
| sed -e 's/.*=\s*//' \
| tail -n1)
fi
fi
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR="${MY_LOCALSTATEDIR}"
einfo "Using default MY_DATADIR"
fi
elog "MySQL MY_DATADIR is ${MY_DATADIR}"
if [[ -z "${PREVIOUS_DATADIR}" ]] ; then
if [[ -e "${MY_DATADIR}" ]] ; then
# If you get this and you're wondering about it, see bug #207636
elog "MySQL datadir found in ${MY_DATADIR}"
elog "A new one will not be created."
PREVIOUS_DATADIR="yes"
else
PREVIOUS_DATADIR="no"
fi
export PREVIOUS_DATADIR
fi
else
if [[ ${EBUILD_PHASE} == "config" ]]; then
local new_MY_DATADIR
new_MY_DATADIR=$(my_print_defaults mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1)
if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then
ewarn "MySQL MY_DATADIR has changed"
ewarn "from ${MY_DATADIR}"
ewarn "to ${new_MY_DATADIR}"
MY_DATADIR="${new_MY_DATADIR}"
fi
fi
fi
export MY_SHAREDSTATEDIR MY_SYSCONFDIR
export MY_LOCALSTATEDIR MY_LOGDIR
export MY_DATADIR
}
pkg_setup() {
if [[ ${MERGE_TYPE} != binary ]] ; then
local GCC_MAJOR_SET=$(gcc-major-version)
local GCC_MINOR_SET=$(gcc-minor-version)
if use tokudb && [[ ${GCC_MAJOR_SET} -lt 4 || \
${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then
eerror "${PN} with tokudb needs to be built with gcc-4.7 or later."
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
die
fi
# Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on
# non x86{,_64} arches
if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \
@ -159,91 +224,19 @@ pkg_setup() {
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
die
fi
fi
java-pkg-opt-2_pkg_setup
if has test ${FEATURES} && \
use server && ! has userpriv ${FEATURES} ; then
eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
fi
# This should come after all of the die statements
enewgroup mysql 60 || die "problem adding 'mysql' group"
enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user"
}
pkg_preinst() {
java-pkg-opt-2_pkg_preinst
# Here we need to see if the implementation switched client libraries
# We check if this is a new instance of the package and a client library already exists
local SHOW_ABI_MESSAGE libpath
if [[ -z ${REPLACING_VERSIONS} && -e "${EROOT}usr/$(get_libdir)/libmysqlclient.so" ]] ; then
libpath=$(readlink "${EROOT}usr/$(get_libdir)/libmysqlclient.so")
elog "Due to ABI changes when switching between different client libraries,"
elog "revdep-rebuild must find and rebuild all packages linking to libmysqlclient."
elog "Please run: revdep-rebuild --library ${libpath}"
ewarn "Failure to run revdep-rebuild may cause issues with other programs or libraries"
fi
}
pkg_postinst() {
# Make sure the vars are correctly initialized
mysql_init_vars
# Create log directory securely if it does not exist
[[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}"
if use server ; then
if use pam; then
einfo
elog "This install includes the PAM authentication plugin."
elog "To activate and configure the PAM plugin, please read:"
elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/"
einfo
fi
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
einfo
elog "You might want to run:"
elog "\"emerge --config =${CATEGORY}/${PF}\""
elog "if this is a new install."
elog
elog "If you are switching server implentations, you should run the"
elog "mysql_upgrade tool."
einfo
else
einfo
elog "If you are upgrading major versions, you should run the"
elog "mysql_upgrade tool."
einfo
fi
if has test ${FEATURES} ; then
# Bug #213475 - MySQL _will_ object strenuously if your machine is named
# localhost. Also causes weird failures.
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
if use galera ; then
einfo
elog "Be sure to edit the my.cnf file to activate your cluster settings."
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
elog "The first time the cluster is activated, you should add"
elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node."
elog "This option should then be removed for subsequent starts."
einfo
if use sst-xtrabackup ; then
ewarn "As per https://mariadb.com/kb/en/meta/xtrabackup_warning/, XtraBackup"
ewarn "as an SST is broken by default beginning with 10.2.19 with the setting"
ewarn "innodb_safe_truncate=ON. Please migrate to sst-mariabackup instead."
ewarn "sst-xtrabackup is being removed in 10.3 and higher."
if ! has userpriv ${FEATURES} ; then
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
fi
fi
fi
# Note about configuration change
einfo
elog "This version of mariadb reorganizes the configuration from a single my.cnf"
elog "to several files in /etc/mysql/${PN}.d."
elog "Please backup any changes you made to /etc/mysql/my.cnf"
elog "and add them as a new file under /etc/mysql/${PN}.d with a .cnf extension."
elog "You may have as many files as needed and they are read alphabetically."
elog "Be sure the options have the appropriate section headers, i.e. [mysqld]."
einfo
java-pkg-opt-2_pkg_setup
}
src_unpack() {
@ -515,6 +508,136 @@ src_compile() {
cmake-utils_src_compile
}
# Official test instructions:
# USE='extraengine perl server' \
# FEATURES='test userpriv' \
# ebuild mariadb-X.X.XX.ebuild \
# digest clean package
src_test() {
_disable_test() {
local rawtestname bug reason
rawtestname="${1}" ; shift
bug="${1}" ; shift
reason="${@}"
ewarn "test '${rawtestname}' disabled: '${reason}' (BUG#${bug})"
echo "${rawtestname} : BUG#${bug} ${reason}" >> "${T}/disabled.def"
}
local TESTDIR="${BUILD_DIR}/mysql-test"
local retstatus_unit
local retstatus_tests
if ! use server ; then
einfo "Skipping server tests due to minimal build."
return 0
fi
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
# Run CTest (test-units)
cmake-utils_src_test
retstatus_unit=$?
# Ensure that parallel runs don't die
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
if [[ -z "${MTR_PARALLEL}" ]] ; then
local -x MTR_PARALLEL=$(makeopts_jobs)
if [[ ${MTR_PARALLEL} -gt 4 ]] ; then
# Running multiple tests in parallel usually require higher ulimit
# and fs.aio-max-nr setting. In addition, tests like main.multi_update
# are known to hit timeout when system is busy.
# To avoid test failure we will limit MTR_PARALLEL to 4 instead of
# using "auto".
local info_msg="Parallel MySQL test suite jobs limited to 4 (MAKEOPTS=${MTR_PARALLEL})"
info_msg+=" to avoid test failures. Set MTR_PARALLEL if you know what you are doing!"
einfo "${info_msg}"
unset info_msg
MTR_PARALLEL=4
fi
else
einfo "MTR_PARALLEL is set to '${MTR_PARALLEL}'"
fi
# Try to increase file limits to increase test coverage
if ! ulimit -n 16500 1>/dev/null 2>&1 ; then
# Upper limit comes from parts.partition_* tests
ewarn "For maximum test coverage please raise open file limit to 16500 (ulimit -n 16500) before calling the package manager."
if ! ulimit -n 4162 1>/dev/null 2>&1 ; then
# Medium limit comes from '[Warning] Buffered warning: Could not increase number of max_open_files to more than 3000 (request: 4162)'
ewarn "For medium test coverage please raise open file limit to 4162 (ulimit -n 4162) before calling the package manager."
if ! ulimit -n 3000 1>/dev/null 2>&1 ; then
ewarn "For minimum test coverage please raise open file limit to 3000 (ulimit -n 3000) before calling the package manager."
else
einfo "Will run test suite with open file limit set to 3000 (minimum test coverage)."
fi
else
einfo "Will run test suite with open file limit set to 4162 (medium test coverage)."
fi
else
einfo "Will run test suite with open file limit set to 16500 (best test coverage)."
fi
# create directories because mysqladmin might run out of order
mkdir -p "${T}"/var-tests{,/log} || die
cp "${S}"/mysql-test/unstable-tests "${T}/disabled.def" || die
local -a disabled_tests
disabled_tests+=( "compat/oracle.plugin;0;Needs example plugin which Gentoo disables" )
disabled_tests+=( "main.explain_non_select;0;Sporadically failing test" )
disabled_tests+=( "main.func_time;0;Dependent on time test was written" )
disabled_tests+=( "main.grant;0;Sporadically failing test" )
disabled_tests+=( "main.join_cache;0;Sporadically failing test" )
disabled_tests+=( "main.plugin_auth;0;Needs client libraries built" )
disabled_tests+=( "main.stat_tables;0;Sporadically failing test" )
disabled_tests+=( "main.stat_tables_innodb;0;Sporadically failing test" )
disabled_tests+=( "mariabackup.*;0;Broken test suite" )
disabled_tests+=( "plugins.auth_ed25519;0;Needs client libraries built" )
disabled_tests+=( "plugins.cracklib_password_check;0;False positive due to varying policies" )
disabled_tests+=( "plugins.two_password_validations;0;False positive due to varying policies" )
disabled_tests+=( "roles.acl_statistics;0;False positive due to a user count mismatch caused by previous test" )
if ! use latin1 ; then
disabled_tests+=( "funcs_1.is_columns_mysql;0;Requires USE=latin1" )
disabled_tests+=( "main.information_schema;0;Requires USE=latin1" )
disabled_tests+=( "main.system_mysql_db;0;Requires USE=latin1" )
fi
local test_infos_str test_infos_arr
for test_infos_str in "${disabled_tests[@]}" ; do
IFS=';' read -r -a test_infos_arr <<< "${test_infos_str}"
if [[ ${#test_infos_arr[@]} != 3 ]] ; then
die "Invalid test data set, not matching format: ${test_infos_str}"
fi
_disable_test "${test_infos_arr[0]}" "${test_infos_arr[1]}" "${test_infos_arr[2]}"
done
unset test_infos_str test_infos_arr
# run mysql-test tests
pushd "${TESTDIR}" &>/dev/null || die
perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def"
retstatus_tests=$?
popd &>/dev/null || die
# Cleanup is important for these testcases.
pkill -9 -f "${S}/ndb" 2>/dev/null
pkill -9 -f "${S}/sql" 2>/dev/null
local failures=""
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
[[ -z "$failures" ]] || die "Test failures: $failures"
einfo "Tests successfully completed"
}
src_install() {
cmake-utils_src_install
@ -596,159 +719,79 @@ src_install() {
[[ -e "${ED}/usr/bin/mytop" ]] && ! use perl && rm -f "${ED}/usr/bin/mytop"
}
# Official test instructions:
# USE='extraengine perl server' \
# FEATURES='test userpriv -usersandbox' \
# ebuild mariadb-X.X.XX.ebuild \
# digest clean package
src_test() {
_disable_test() {
local rawtestname reason
rawtestname="${1}" ; shift
reason="${@}"
ewarn "test '${rawtestname}' disabled: '${reason}'"
echo ${rawtestname} : ${reason} >> "${T}/disabled.def"
}
local TESTDIR="${BUILD_DIR}/mysql-test"
local retstatus_unit
local retstatus_tests
if ! use server ; then
einfo "Skipping server tests due to minimal build."
return 0
fi
# Bug #213475 - MySQL _will_ object strenously if your machine is named
# localhost. Also causes weird failures.
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
pkg_preinst() {
java-pkg-opt-2_pkg_preinst
if [[ $UID -eq 0 ]]; then
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
# Here we need to see if the implementation switched client libraries
# We check if this is a new instance of the package and a client library already exists
local SHOW_ABI_MESSAGE libpath
if [[ -z ${REPLACING_VERSIONS} && -e "${EROOT}usr/$(get_libdir)/libmysqlclient.so" ]] ; then
libpath=$(readlink "${EROOT}usr/$(get_libdir)/libmysqlclient.so")
elog "Due to ABI changes when switching between different client libraries,"
elog "revdep-rebuild must find and rebuild all packages linking to libmysqlclient."
elog "Please run: revdep-rebuild --library ${libpath}"
ewarn "Failure to run revdep-rebuild may cause issues with other programs or libraries"
fi
has usersandbox $FEATURES && ewarn "Some tests may fail with FEATURES=usersandbox"
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
# Run CTest (test-units)
cmake-utils_src_test
retstatus_unit=$?
# Ensure that parallel runs don't die
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
# Enable parallel testing, auto will try to detect number of cores
# You may set this by hand.
# The default maximum is 8 unless MTR_MAX_PARALLEL is increased
export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
# create directories because mysqladmin might run out of order
mkdir -p "${T}"/var-tests{,/log} || die
# Run mysql tests
pushd "${TESTDIR}" > /dev/null || die
touch "${T}/disabled.def"
# These are failing in MariaDB 10.0 for now and are believed to be
# false positives:
#
# main.mysql_client_test, main.mysql_client_test_nonblock
# main.mysql_client_test_comp:
# segfaults at random under Portage only, suspect resource limits.
local t
for t in plugins.cracklib_password_check plugins.two_password_validations ; do
_disable_test "$t" "False positive due to varying policies"
done
for t in main.mysql_client_test main.mysql_client_test_nonblock main.mysql \
main.mysql_client_test_comp rpl.rpl_extra_col_master_myisam ; do
_disable_test "$t" "False positives in Gentoo"
done
_disable_test main.gis_notembedded "Needs latin1 USE set"
_disable_test main.plugin_auth "Needs client libraries built"
_disable_test plugins.auth_ed25519 "Needs client libraries built"
_disable_test main.mysqldump "Test fails past 2018-12-31 due to event expiration"
# Likely environment issues as only number of clients connected fails
_disable_test rpl.rpl_semi_sync_uninstall_plugin \
"Fails intermittently on parallel testing"
_disable_test main.ssl_crl "Not compatible with OpenSSL 1.1.1"
# run mysql-test tests
perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def"
retstatus_tests=$?
popd > /dev/null || die
# Cleanup is important for these testcases.
pkill -9 -f "${S}/ndb" 2>/dev/null
pkill -9 -f "${S}/sql" 2>/dev/null
local failures=""
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
[[ -z "$failures" ]] || die "Test failures: $failures"
einfo "Tests successfully completed"
}
mysql_init_vars() {
MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"}
MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"}
MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"}
MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"}
pkg_postinst() {
# Make sure the vars are correctly initialized
mysql_init_vars
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=""
if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then
MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1`
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \
| sed -e 's/.*=\s*//' \
| tail -n1`
fi
fi
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR="${MY_LOCALSTATEDIR}"
einfo "Using default MY_DATADIR"
# Create log directory securely if it does not exist
[[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}"
if use server ; then
if use pam; then
einfo
elog "This install includes the PAM authentication plugin."
elog "To activate and configure the PAM plugin, please read:"
elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/"
einfo
fi
elog "MySQL MY_DATADIR is ${MY_DATADIR}"
if [[ -z "${PREVIOUS_DATADIR}" ]] ; then
if [[ -e "${MY_DATADIR}" ]] ; then
# If you get this and you're wondering about it, see bug #207636
elog "MySQL datadir found in ${MY_DATADIR}"
elog "A new one will not be created."
PREVIOUS_DATADIR="yes"
else
PREVIOUS_DATADIR="no"
fi
export PREVIOUS_DATADIR
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
einfo
elog "You might want to run:"
elog "\"emerge --config =${CATEGORY}/${PF}\""
elog "if this is a new install."
elog
elog "If you are switching server implentations, you should run the"
elog "mysql_upgrade tool."
einfo
else
einfo
elog "If you are upgrading major versions, you should run the"
elog "mysql_upgrade tool."
einfo
fi
else
if [[ ${EBUILD_PHASE} == "config" ]]; then
local new_MY_DATADIR
new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1`
if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then
ewarn "MySQL MY_DATADIR has changed"
ewarn "from ${MY_DATADIR}"
ewarn "to ${new_MY_DATADIR}"
MY_DATADIR="${new_MY_DATADIR}"
if use galera ; then
einfo
elog "Be sure to edit the my.cnf file to activate your cluster settings."
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
elog "The first time the cluster is activated, you should add"
elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node."
elog "This option should then be removed for subsequent starts."
einfo
if use sst-xtrabackup ; then
ewarn "As per https://mariadb.com/kb/en/meta/xtrabackup_warning/, XtraBackup"
ewarn "as an SST is broken by default beginning with 10.2.19 with the setting"
ewarn "innodb_safe_truncate=ON. Please migrate to sst-mariabackup instead."
ewarn "sst-xtrabackup is being removed in 10.3 and higher."
fi
fi
fi
export MY_SHAREDSTATEDIR MY_SYSCONFDIR
export MY_LOCALSTATEDIR MY_LOGDIR
export MY_DATADIR
# Note about configuration change
einfo
elog "This version of mariadb reorganizes the configuration from a single my.cnf"
elog "to several files in /etc/mysql/${PN}.d."
elog "Please backup any changes you made to /etc/mysql/my.cnf"
elog "and add them as a new file under /etc/mysql/${PN}.d with a .cnf extension."
elog "You may have as many files as needed and they are read alphabetically."
elog "Be sure the options have the appropriate section headers, i.e. [mysqld]."
einfo
}
pkg_config() {

@ -10,7 +10,7 @@ JAVA_PKG_OPT_USE="jdbc"
# Keeping eutils in EAPI=6 for emktemp in pkg_config
inherit eutils systemd flag-o-matic prefix toolchain-funcs \
java-pkg-opt-2 user cmake-utils
multiprocessing java-pkg-opt-2 cmake-utils
SRC_URI="https://downloads.mariadb.org/interstitial/${P}/source/${P}.tar.gz "
@ -113,41 +113,106 @@ COMMON_DEPEND="
DEPEND="virtual/yacc
static? ( sys-libs/ncurses[static-libs] )
|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )
server? ( extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) ) )
server? (
extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) )
test? ( acct-group/mysql acct-user/mysql )
)
${COMMON_DEPEND}"
RDEPEND="selinux? ( sec-policy/selinux-mysql )
!dev-db/mysql !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster
server? ( !prefix? ( dev-db/mysql-init-scripts ) )
!<virtual/mysql-5.6-r11
${COMMON_DEPEND}
server? ( galera? (
sys-apps/iproute2
=sys-cluster/galera-25*
sst-rsync? ( sys-process/lsof )
sst-mariabackup? ( net-misc/socat[ssl] )
) )
perl? ( !dev-db/mytop
server? (
galera? (
sys-apps/iproute2
=sys-cluster/galera-25*
sst-rsync? ( sys-process/lsof )
sst-mariabackup? ( net-misc/socat[ssl] )
)
!prefix? ( dev-db/mysql-init-scripts acct-group/mysql acct-user/mysql )
extraengine? ( jdbc? ( >=virtual/jre-1.6 ) )
)
perl? (
!dev-db/mytop
virtual/perl-Getopt-Long
dev-perl/TermReadKey
virtual/perl-Term-ANSIColor
virtual/perl-Time-HiRes )
server? ( extraengine? ( jdbc? ( >=virtual/jre-1.6 ) ) )
virtual/perl-Time-HiRes
)
"
# For other stuff to bring us in
# dev-perl/DBD-mysql is needed by some scripts installed by MySQL
PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )
server? ( ~virtual/mysql-5.6[static=] )"
mysql_init_vars() {
MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"}
MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"}
MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"}
MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"}
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=""
if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then
MY_DATADIR=$(my_print_defaults mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1)
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=$(grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \
| sed -e 's/.*=\s*//' \
| tail -n1)
fi
fi
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR="${MY_LOCALSTATEDIR}"
einfo "Using default MY_DATADIR"
fi
elog "MySQL MY_DATADIR is ${MY_DATADIR}"
if [[ -z "${PREVIOUS_DATADIR}" ]] ; then
if [[ -e "${MY_DATADIR}" ]] ; then
# If you get this and you're wondering about it, see bug #207636
elog "MySQL datadir found in ${MY_DATADIR}"
elog "A new one will not be created."
PREVIOUS_DATADIR="yes"
else
PREVIOUS_DATADIR="no"
fi
export PREVIOUS_DATADIR
fi
else
if [[ ${EBUILD_PHASE} == "config" ]]; then
local new_MY_DATADIR
new_MY_DATADIR=$(my_print_defaults mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1)
if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then
ewarn "MySQL MY_DATADIR has changed"
ewarn "from ${MY_DATADIR}"
ewarn "to ${new_MY_DATADIR}"
MY_DATADIR="${new_MY_DATADIR}"
fi
fi
fi
export MY_SHAREDSTATEDIR MY_SYSCONFDIR
export MY_LOCALSTATEDIR MY_LOGDIR
export MY_DATADIR
}
pkg_setup() {
if [[ ${MERGE_TYPE} != binary ]] ; then
local GCC_MAJOR_SET=$(gcc-major-version)
local GCC_MINOR_SET=$(gcc-minor-version)
if use tokudb && [[ ${GCC_MAJOR_SET} -lt 4 || \
${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then
eerror "${PN} with tokudb needs to be built with gcc-4.7 or later."
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
die
fi
# Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on
# non x86{,_64} arches
if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \
@ -156,16 +221,19 @@ pkg_setup() {
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
die
fi
fi
java-pkg-opt-2_pkg_setup
if has test ${FEATURES} && \
use server && ! has userpriv ${FEATURES} ; then
eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
if has test ${FEATURES} ; then
# Bug #213475 - MySQL _will_ object strenuously if your machine is named
# localhost. Also causes weird failures.
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
if ! has userpriv ${FEATURES} ; then
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
fi
fi
fi
# This should come after all of the die statements
enewgroup mysql 60 || die "problem adding 'mysql' group"
enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user"
java-pkg-opt-2_pkg_setup
}
pkg_preinst() {
@ -183,60 +251,6 @@ pkg_preinst() {
fi
}
pkg_postinst() {
# Make sure the vars are correctly initialized
mysql_init_vars
# Create log directory securely if it does not exist
[[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}"
if use server ; then
if use pam; then
einfo
elog "This install includes the PAM authentication plugin."
elog "To activate and configure the PAM plugin, please read:"
elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/"
einfo
fi
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
einfo
elog "You might want to run:"
elog "\"emerge --config =${CATEGORY}/${PF}\""
elog "if this is a new install."
elog
elog "If you are switching server implentations, you should run the"
elog "mysql_upgrade tool."
einfo
else
einfo
elog "If you are upgrading major versions, you should run the"
elog "mysql_upgrade tool."
einfo
fi
if use galera ; then
einfo
elog "Be sure to edit the my.cnf file to activate your cluster settings."
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
elog "The first time the cluster is activated, you should add"
elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node."
elog "This option should then be removed for subsequent starts."
einfo
fi
fi
# Note about configuration change
einfo
elog "This version of mariadb reorganizes the configuration from a single my.cnf"
elog "to several files in /etc/mysql/${PN}.d."
elog "Please backup any changes you made to /etc/mysql/my.cnf"
elog "and add them as a new file under /etc/mysql/${PN}.d with a .cnf extension."
elog "You may have as many files as needed and they are read alphabetically."
elog "Be sure the options have the appropriate section headers, i.e. [mysqld]."
einfo
}
src_unpack() {
unpack ${A}
# Grab the patches
@ -504,6 +518,135 @@ src_compile() {
cmake-utils_src_compile
}
# Official test instructions:
# USE='extraengine perl server' \
# FEATURES='test userpriv' \
# ebuild mariadb-X.X.XX.ebuild \
# digest clean package
src_test() {
_disable_test() {
local rawtestname bug reason
rawtestname="${1}" ; shift
bug="${1}" ; shift
reason="${@}"
ewarn "test '${rawtestname}' disabled: '${reason}' (BUG#${bug})"
echo "${rawtestname} : BUG#${bug} ${reason}" >> "${T}/disabled.def"
}
local TESTDIR="${BUILD_DIR}/mysql-test"
local retstatus_unit
local retstatus_tests
if ! use server ; then
einfo "Skipping server tests due to minimal build."
return 0
fi
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
# Run CTest (test-units)
cmake-utils_src_test
retstatus_unit=$?
# Ensure that parallel runs don't die
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
if [[ -z "${MTR_PARALLEL}" ]] ; then
local -x MTR_PARALLEL=$(makeopts_jobs)
if [[ ${MTR_PARALLEL} -gt 4 ]] ; then
# Running multiple tests in parallel usually require higher ulimit
# and fs.aio-max-nr setting. In addition, tests like main.multi_update
# are known to hit timeout when system is busy.
# To avoid test failure we will limit MTR_PARALLEL to 4 instead of
# using "auto".
local info_msg="Parallel MySQL test suite jobs limited to 4 (MAKEOPTS=${MTR_PARALLEL})"
info_msg+=" to avoid test failures. Set MTR_PARALLEL if you know what you are doing!"
einfo "${info_msg}"
unset info_msg
MTR_PARALLEL=4
fi
else
einfo "MTR_PARALLEL is set to '${MTR_PARALLEL}'"
fi
# Try to increase file limits to increase test coverage
if ! ulimit -n 16500 1>/dev/null 2>&1 ; then
# Upper limit comes from parts.partition_* tests
ewarn "For maximum test coverage please raise open file limit to 16500 (ulimit -n 16500) before calling the package manager."
if ! ulimit -n 4162 1>/dev/null 2>&1 ; then
# Medium limit comes from '[Warning] Buffered warning: Could not increase number of max_open_files to more than 3000 (request: 4162)'
ewarn "For medium test coverage please raise open file limit to 4162 (ulimit -n 4162) before calling the package manager."
if ! ulimit -n 3000 1>/dev/null 2>&1 ; then
ewarn "For minimum test coverage please raise open file limit to 3000 (ulimit -n 3000) before calling the package manager."
else
einfo "Will run test suite with open file limit set to 3000 (minimum test coverage)."
fi
else
einfo "Will run test suite with open file limit set to 4162 (medium test coverage)."
fi
else
einfo "Will run test suite with open file limit set to 16500 (best test coverage)."
fi
# create directories because mysqladmin might run out of order
mkdir -p "${T}"/var-tests{,/log} || die
cp "${S}"/mysql-test/unstable-tests "${T}/disabled.def" || die
local -a disabled_tests
disabled_tests+=( "compat/oracle.plugin;0;Needs example plugin which Gentoo disables" )
disabled_tests+=( "main.explain_non_select;0;Sporadically failing test" )
disabled_tests+=( "main.func_time;0;Dependent on time test was written" )
disabled_tests+=( "main.grant;0;Sporadically failing test" )
disabled_tests+=( "main.plugin_auth;0;Needs client libraries built" )
disabled_tests+=( "main.stat_tables;0;Sporadically failing test" )
disabled_tests+=( "main.stat_tables_innodb;0;Sporadically failing test" )
disabled_tests+=( "mariabackup.*;0;Broken test suite" )
disabled_tests+=( "plugins.auth_ed25519;0;Needs client libraries built" )
disabled_tests+=( "plugins.cracklib_password_check;0;False positive due to varying policies" )
disabled_tests+=( "plugins.two_password_validations;0;False positive due to varying policies" )
disabled_tests+=( "roles.acl_statistics;0;False positive due to a user count mismatch caused by previous test" )
if ! use latin1 ; then
disabled_tests+=( "funcs_1.is_columns_mysql;0;Requires USE=latin1" )
disabled_tests+=( "main.information_schema;0;Requires USE=latin1" )
disabled_tests+=( "main.system_mysql_db;0;Requires USE=latin1" )
fi
local test_infos_str test_infos_arr
for test_infos_str in "${disabled_tests[@]}" ; do
IFS=';' read -r -a test_infos_arr <<< "${test_infos_str}"
if [[ ${#test_infos_arr[@]} != 3 ]] ; then
die "Invalid test data set, not matching format: ${test_infos_str}"
fi
_disable_test "${test_infos_arr[0]}" "${test_infos_arr[1]}" "${test_infos_arr[2]}"
done
unset test_infos_str test_infos_arr
# run mysql-test tests
pushd "${TESTDIR}" &>/dev/null || die
perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def"
retstatus_tests=$?
popd &>/dev/null || die
# Cleanup is important for these testcases.
pkill -9 -f "${S}/ndb" 2>/dev/null
pkill -9 -f "${S}/sql" 2>/dev/null
local failures=""
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
[[ -z "$failures" ]] || die "Test failures: $failures"
einfo "Tests successfully completed"
}
src_install() {
cmake-utils_src_install
@ -600,155 +743,58 @@ src_install() {
done
}
# Official test instructions:
# USE='extraengine perl server' \
# FEATURES='test userpriv -usersandbox' \
# ebuild mariadb-X.X.XX.ebuild \
# digest clean package
src_test() {
_disable_test() {
local rawtestname reason
rawtestname="${1}" ; shift
reason="${@}"
ewarn "test '${rawtestname}' disabled: '${reason}'"
echo ${rawtestname} : ${reason} >> "${T}/disabled.def"
}
local TESTDIR="${BUILD_DIR}/mysql-test"
local retstatus_unit
local retstatus_tests
if ! use server ; then
einfo "Skipping server tests due to minimal build."
return 0
fi
# Bug #213475 - MySQL _will_ object strenously if your machine is named
# localhost. Also causes weird failures.
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
if [[ $UID -eq 0 ]]; then
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
fi
has usersandbox $FEATURES && ewarn "Some tests may fail with FEATURES=usersandbox"
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
# Run CTest (test-units)
cmake-utils_src_test
retstatus_unit=$?
# Ensure that parallel runs don't die
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
# Enable parallel testing, auto will try to detect number of cores
# You may set this by hand.
# The default maximum is 8 unless MTR_MAX_PARALLEL is increased
export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
# create directories because mysqladmin might run out of order
mkdir -p "${T}"/var-tests{,/log} || die
# Run mysql tests
pushd "${TESTDIR}" > /dev/null || die
touch "${T}/disabled.def"
# These are failing in MariaDB 10.0 for now and are believed to be
# false positives:
#
# main.mysql_client_test, main.mysql_client_test_nonblock
# main.mysql_client_test_comp:
# segfaults at random under Portage only, suspect resource limits.
local t
for t in plugins.cracklib_password_check plugins.two_password_validations ; do
_disable_test "$t" "False positive due to varying policies"
done
for t in main.mysql_client_test main.mysql_client_test_nonblock \
main.mysql main.gis_notembedded \
main.mysql_client_test_comp rpl.rpl_extra_col_master_myisam ; do
_disable_test "$t" "False positives in Gentoo"
done
_disable_test main.plugin_auth "Needs client libraries built"
_disable_test plugins.auth_ed25519 "Needs client libraries built"
_disable_test main.func_time "Dependent on time test was written"
_disable_test main.ssl_crl "Not compatible with OpenSSL 1.1.1"
# run mysql-test tests
perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def"
retstatus_tests=$?
popd > /dev/null || die
# Cleanup is important for these testcases.
pkill -9 -f "${S}/ndb" 2>/dev/null
pkill -9 -f "${S}/sql" 2>/dev/null
local failures=""
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
[[ -z "$failures" ]] || die "Test failures: $failures"
einfo "Tests successfully completed"
}
pkg_postinst() {
# Make sure the vars are correctly initialized
mysql_init_vars
mysql_init_vars() {
MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"}
MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"}
MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"}
MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"}
# Create log directory securely if it does not exist
[[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}"
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=""
if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then
MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1`
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \
| sed -e 's/.*=\s*//' \
| tail -n1`
fi
fi
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR="${MY_LOCALSTATEDIR}"
einfo "Using default MY_DATADIR"
if use server ; then
if use pam; then
einfo
elog "This install includes the PAM authentication plugin."
elog "To activate and configure the PAM plugin, please read:"
elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/"
einfo
fi
elog "MySQL MY_DATADIR is ${MY_DATADIR}"
if [[ -z "${PREVIOUS_DATADIR}" ]] ; then
if [[ -e "${MY_DATADIR}" ]] ; then
# If you get this and you're wondering about it, see bug #207636
elog "MySQL datadir found in ${MY_DATADIR}"
elog "A new one will not be created."
PREVIOUS_DATADIR="yes"
else
PREVIOUS_DATADIR="no"
fi
export PREVIOUS_DATADIR
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
einfo
elog "You might want to run:"
elog "\"emerge --config =${CATEGORY}/${PF}\""
elog "if this is a new install."
elog
elog "If you are switching server implentations, you should run the"
elog "mysql_upgrade tool."
einfo
else
einfo
elog "If you are upgrading major versions, you should run the"
elog "mysql_upgrade tool."
einfo
fi
else
if [[ ${EBUILD_PHASE} == "config" ]]; then
local new_MY_DATADIR
new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1`
if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then
ewarn "MySQL MY_DATADIR has changed"
ewarn "from ${MY_DATADIR}"
ewarn "to ${new_MY_DATADIR}"
MY_DATADIR="${new_MY_DATADIR}"
fi
if use galera ; then
einfo
elog "Be sure to edit the my.cnf file to activate your cluster settings."
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
elog "The first time the cluster is activated, you should add"
elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node."
elog "This option should then be removed for subsequent starts."
einfo
fi
fi
export MY_SHAREDSTATEDIR MY_SYSCONFDIR
export MY_LOCALSTATEDIR MY_LOGDIR
export MY_DATADIR
# Note about configuration change
einfo
elog "This version of mariadb reorganizes the configuration from a single my.cnf"
elog "to several files in /etc/mysql/${PN}.d."
elog "Please backup any changes you made to /etc/mysql/my.cnf"
elog "and add them as a new file under /etc/mysql/${PN}.d with a .cnf extension."
elog "You may have as many files as needed and they are read alphabetically."
elog "Be sure the options have the appropriate section headers, i.e. [mysqld]."
einfo
}
pkg_config() {

@ -8,7 +8,7 @@ SUBSLOT="18"
JAVA_PKG_OPT_USE="jdbc"
inherit eutils systemd flag-o-matic prefix toolchain-funcs \
java-pkg-opt-2 cmake
multiprocessing java-pkg-opt-2 cmake
SRC_URI="https://downloads.mariadb.org/interstitial/${P}/source/${P}.tar.gz "
@ -112,8 +112,10 @@ BDEPEND="virtual/yacc
|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )
"
DEPEND="static? ( sys-libs/ncurses[static-libs] )
server? ( extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) )
test? ( acct-group/mysql acct-user/mysql ) )
server? (
extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) )
test? ( acct-group/mysql acct-user/mysql )
)
${COMMON_DEPEND}"
RDEPEND="selinux? ( sec-policy/selinux-mysql )
!dev-db/mysql !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster
@ -130,27 +132,87 @@ RDEPEND="selinux? ( sec-policy/selinux-mysql )
!prefix? ( dev-db/mysql-init-scripts acct-group/mysql acct-user/mysql )
extraengine? ( jdbc? ( >=virtual/jre-1.6 ) )
)
perl? ( !dev-db/mytop
perl? (
!dev-db/mytop
virtual/perl-Getopt-Long
dev-perl/TermReadKey
virtual/perl-Term-ANSIColor
virtual/perl-Time-HiRes )
virtual/perl-Time-HiRes
)
"
# For other stuff to bring us in
# dev-perl/DBD-mysql is needed by some scripts installed by MySQL
PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )
server? ( ~virtual/mysql-5.6[static=] )"
mysql_init_vars() {
MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"}
MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"}
MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"}
MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"}
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=""
if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then
MY_DATADIR=$(my_print_defaults mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1)
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=$(grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \
| sed -e 's/.*=\s*//' \
| tail -n1)
fi
fi
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR="${MY_LOCALSTATEDIR}"
einfo "Using default MY_DATADIR"
fi
elog "MySQL MY_DATADIR is ${MY_DATADIR}"
if [[ -z "${PREVIOUS_DATADIR}" ]] ; then
if [[ -e "${MY_DATADIR}" ]] ; then
# If you get this and you're wondering about it, see bug #207636
elog "MySQL datadir found in ${MY_DATADIR}"
elog "A new one will not be created."
PREVIOUS_DATADIR="yes"
else
PREVIOUS_DATADIR="no"
fi
export PREVIOUS_DATADIR
fi
else
if [[ ${EBUILD_PHASE} == "config" ]]; then
local new_MY_DATADIR
new_MY_DATADIR=$(my_print_defaults mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1)
if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then
ewarn "MySQL MY_DATADIR has changed"
ewarn "from ${MY_DATADIR}"
ewarn "to ${new_MY_DATADIR}"
MY_DATADIR="${new_MY_DATADIR}"
fi
fi
fi
export MY_SHAREDSTATEDIR MY_SYSCONFDIR
export MY_LOCALSTATEDIR MY_LOGDIR
export MY_DATADIR
}
pkg_setup() {
if [[ ${MERGE_TYPE} != binary ]] ; then
local GCC_MAJOR_SET=$(gcc-major-version)
local GCC_MINOR_SET=$(gcc-minor-version)
if use tokudb && [[ ${GCC_MAJOR_SET} -lt 4 || \
${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then
eerror "${PN} with tokudb needs to be built with gcc-4.7 or later."
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
die
fi
# Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on
# non x86{,_64} arches
if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \
@ -159,82 +221,19 @@ pkg_setup() {
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
die
fi
fi
java-pkg-opt-2_pkg_setup
if has test ${FEATURES} && \
use server && ! has userpriv ${FEATURES} ; then
eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
fi
}
pkg_preinst() {
java-pkg-opt-2_pkg_preinst
}
pkg_postinst() {
# Make sure the vars are correctly initialized
mysql_init_vars
# Create log directory securely if it does not exist
[[ -d "${ROOT}/${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}/${MY_LOGDIR}"
if use server ; then
if use pam; then
einfo
elog "This install includes the PAM authentication plugin."
elog "To activate and configure the PAM plugin, please read:"
elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/"
einfo
chown mysql:mysql "${EROOT}/usr/$(get_libdir)/mariadb/plugin/auth_pam_tool_dir" || die
fi
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
einfo
elog "You might want to run:"
elog "\"emerge --config =${CATEGORY}/${PF}\""
elog "if this is a new install."
elog
elog "If you are switching server implentations, you should run the"
elog "mysql_upgrade tool."
einfo
else
einfo
elog "If you are upgrading major versions, you should run the"
elog "mysql_upgrade tool."
einfo
fi
if has test ${FEATURES} ; then
# Bug #213475 - MySQL _will_ object strenuously if your machine is named
# localhost. Also causes weird failures.
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
if use galera ; then
einfo
elog "Be sure to edit the my.cnf file to activate your cluster settings."
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
elog "The first time the cluster is activated, you should add"
elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node."
elog "This option should then be removed for subsequent starts."
einfo
if [[ -n "${REPLACING_VERSIONS}" ]] ; then
local rver
for rver in ${REPLACING_VERSIONS} ; do
if ver_test "${rver}" -lt "10.4.0" ; then
ewarn "Upgrading galera from a previous version requires admin restart of the entire cluster."
ewarn "Please refer to https://mariadb.com/kb/en/library/changes-improvements-in-mariadb-104/#galera-4"
ewarn "for more information"
fi
done
if ! has userpriv ${FEATURES} ; then
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
fi
fi
fi
# Note about configuration change
einfo
elog "This version of mariadb reorganizes the configuration from a single my.cnf"
elog "to several files in /etc/mysql/${PN}.d."
elog "Please backup any changes you made to /etc/mysql/my.cnf"
elog "and add them as a new file under /etc/mysql/${PN}.d with a .cnf extension."
elog "You may have as many files as needed and they are read alphabetically."
elog "Be sure the options have the appropriate section headers, i.e. [mysqld]."
einfo
java-pkg-opt-2_pkg_setup
}
src_unpack() {
@ -517,6 +516,134 @@ src_compile() {
cmake_src_compile
}
# Official test instructions:
# USE='extraengine perl server' \
# FEATURES='test userpriv' \
# ebuild mariadb-X.X.XX.ebuild \
# digest clean package
src_test() {
_disable_test() {
local rawtestname bug reason
rawtestname="${1}" ; shift
bug="${1}" ; shift
reason="${@}"
ewarn "test '${rawtestname}' disabled: '${reason}' (BUG#${bug})"
echo "${rawtestname} : BUG#${bug} ${reason}" >> "${T}/disabled.def"
}
local TESTDIR="${BUILD_DIR}/mysql-test"
local retstatus_unit
local retstatus_tests
if ! use server ; then
einfo "Skipping server tests due to minimal build."
return 0
fi
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
# Run CTest (test-units)
cmake_src_test
retstatus_unit=$?
# Ensure that parallel runs don't die
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
if [[ -z "${MTR_PARALLEL}" ]] ; then
local -x MTR_PARALLEL=$(makeopts_jobs)
if [[ ${MTR_PARALLEL} -gt 4 ]] ; then
# Running multiple tests in parallel usually require higher ulimit
# and fs.aio-max-nr setting. In addition, tests like main.multi_update
# are known to hit timeout when system is busy.
# To avoid test failure we will limit MTR_PARALLEL to 4 instead of
# using "auto".
local info_msg="Parallel MySQL test suite jobs limited to 4 (MAKEOPTS=${MTR_PARALLEL})"
info_msg+=" to avoid test failures. Set MTR_PARALLEL if you know what you are doing!"
einfo "${info_msg}"
unset info_msg
MTR_PARALLEL=4
fi
else
einfo "MTR_PARALLEL is set to '${MTR_PARALLEL}'"
fi
# Try to increase file limits to increase test coverage
if ! ulimit -n 16500 1>/dev/null 2>&1 ; then
# Upper limit comes from parts.partition_* tests
ewarn "For maximum test coverage please raise open file limit to 16500 (ulimit -n 16500) before calling the package manager."
if ! ulimit -n 4162 1>/dev/null 2>&1 ; then
# Medium limit comes from '[Warning] Buffered warning: Could not increase number of max_open_files to more than 3000 (request: 4162)'
ewarn "For medium test coverage please raise open file limit to 4162 (ulimit -n 4162) before calling the package manager."
if ! ulimit -n 3000 1>/dev/null 2>&1 ; then
ewarn "For minimum test coverage please raise open file limit to 3000 (ulimit -n 3000) before calling the package manager."
else
einfo "Will run test suite with open file limit set to 3000 (minimum test coverage)."
fi
else
einfo "Will run test suite with open file limit set to 4162 (medium test coverage)."
fi
else
einfo "Will run test suite with open file limit set to 16500 (best test coverage)."
fi
# create directories because mysqladmin might run out of order
mkdir -p "${T}"/var-tests{,/log} || die
cp "${S}"/mysql-test/unstable-tests "${T}/disabled.def" || die
local -a disabled_tests
disabled_tests+=( "compat/oracle.plugin;0;Needs example plugin which Gentoo disables" )
disabled_tests+=( "main.explain_non_select;0;Sporadically failing test" )
disabled_tests+=( "main.func_time;0;Dependent on time test was written" )
disabled_tests+=( "main.plugin_auth;0;Needs client libraries built" )
disabled_tests+=( "main.stat_tables;0;Sporadically failing test" )
disabled_tests+=( "main.stat_tables_innodb;0;Sporadically failing test" )
disabled_tests+=( "mariabackup.*;0;Broken test suite" )
disabled_tests+=( "plugins.auth_ed25519;0;Needs client libraries built" )
disabled_tests+=( "plugins.cracklib_password_check;0;False positive due to varying policies" )
disabled_tests+=( "plugins.two_password_validations;0;False positive due to varying policies" )
disabled_tests+=( "roles.acl_statistics;0;False positive due to a user count mismatch caused by previous test" )
if ! use latin1 ; then
disabled_tests+=( "funcs_1.is_columns_mysql;0;Requires USE=latin1" )
disabled_tests+=( "main.information_schema;0;Requires USE=latin1" )
disabled_tests+=( "main.system_mysql_db;0;Requires USE=latin1" )
fi
local test_infos_str test_infos_arr
for test_infos_str in "${disabled_tests[@]}" ; do
IFS=';' read -r -a test_infos_arr <<< "${test_infos_str}"
if [[ ${#test_infos_arr[@]} != 3 ]] ; then
die "Invalid test data set, not matching format: ${test_infos_str}"
fi
_disable_test "${test_infos_arr[0]}" "${test_infos_arr[1]}" "${test_infos_arr[2]}"
done
unset test_infos_str test_infos_arr
# run mysql-test tests
pushd "${TESTDIR}" &>/dev/null || die
perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def"
retstatus_tests=$?
popd &>/dev/null || die
# Cleanup is important for these testcases.
pkill -9 -f "${S}/ndb" 2>/dev/null
pkill -9 -f "${S}/sql" 2>/dev/null
local failures=""
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
[[ -z "$failures" ]] || die "Test failures: $failures"
einfo "Tests successfully completed"
}
src_install() {
cmake_src_install
@ -617,160 +744,73 @@ src_install() {
done
}
# Official test instructions:
# USE='extraengine perl server' \
# FEATURES='test userpriv -usersandbox' \
# ebuild mariadb-X.X.XX.ebuild \
# digest clean package
src_test() {
_disable_test() {
local rawtestname reason
rawtestname="${1}" ; shift
reason="${@}"
ewarn "test '${rawtestname}' disabled: '${reason}'"
echo ${rawtestname} : ${reason} >> "${T}/disabled.def"
}
local TESTDIR="${BUILD_DIR}/mysql-test"
local retstatus_unit
local retstatus_tests
if ! use server ; then
einfo "Skipping server tests due to minimal build."
return 0
fi
# Bug #213475 - MySQL _will_ object strenously if your machine is named
# localhost. Also causes weird failures.
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
if [[ $UID -eq 0 ]]; then
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
fi
has usersandbox $FEATURES && ewarn "Some tests may fail with FEATURES=usersandbox"
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
# Run CTest (test-units)
cmake_src_test
retstatus_unit=$?
# Ensure that parallel runs don't die
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
# Enable parallel testing, auto will try to detect number of cores
# You may set this by hand.
# The default maximum is 8 unless MTR_MAX_PARALLEL is increased
export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
# create directories because mysqladmin might run out of order
mkdir -p "${T}"/var-tests{,/log} || die
# Run mysql tests
pushd "${TESTDIR}" > /dev/null || die
touch "${T}/disabled.def"
# These are failing in MariaDB 10.0 for now and are believed to be
# false positives:
#
# main.mysql_client_test, main.mysql_client_test_nonblock
# main.mysql_client_test_comp:
# segfaults at random under Portage only, suspect resource limits.
local t
for t in plugins.cracklib_password_check plugins.two_password_validations ; do
_disable_test "$t" "False positive due to varying policies"
done
for t in main.mysql_client_test main.mysql_client_test_nonblock main.mysql \
main.mysql_client_test_comp rpl.rpl_extra_col_master_myisam ; do
_disable_test "$t" "False positives in Gentoo"
done
for t in funcs_1.is_columns_mysql main.gis_notembedded main.information_schema \
main.mysql_upgrade main.system_mysql_db ; do
_disable_test "$t" "Failure for difference between latin1 and utf-8"
done
_disable_test main.plugin_auth "Needs client libraries built"
_disable_test plugins.auth_ed25519 "Needs client libraries built"
_disable_test main.func_time "Dependent on time test was written"
_disable_test compat/oracle.plugin "Needs example plugin which Gentoo disables"
# run mysql-test tests
perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def"
retstatus_tests=$?
popd > /dev/null || die
# Cleanup is important for these testcases.
pkill -9 -f "${S}/ndb" 2>/dev/null
pkill -9 -f "${S}/sql" 2>/dev/null
local failures=""
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
[[ -z "$failures" ]] || die "Test failures: $failures"
einfo "Tests successfully completed"
pkg_preinst() {
java-pkg-opt-2_pkg_preinst
}
mysql_init_vars() {
MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"}
MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"}
MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"}
MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"}
pkg_postinst() {
# Make sure the vars are correctly initialized
mysql_init_vars
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=""
if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then
MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1`
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \
| sed -e 's/.*=\s*//' \
| tail -n1`
fi
fi
if [[ -z "${MY_DATADIR}" ]] ; then
MY_DATADIR="${MY_LOCALSTATEDIR}"
einfo "Using default MY_DATADIR"
# Create log directory securely if it does not exist
[[ -d "${ROOT}/${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}/${MY_LOGDIR}"
if use server ; then
if use pam; then
einfo
elog "This install includes the PAM authentication plugin."
elog "To activate and configure the PAM plugin, please read:"
elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/"
einfo
chown mysql:mysql "${EROOT}/usr/$(get_libdir)/mariadb/plugin/auth_pam_tool_dir" || die
fi
elog "MySQL MY_DATADIR is ${MY_DATADIR}"
if [[ -z "${PREVIOUS_DATADIR}" ]] ; then
if [[ -e "${MY_DATADIR}" ]] ; then
# If you get this and you're wondering about it, see bug #207636
elog "MySQL datadir found in ${MY_DATADIR}"
elog "A new one will not be created."
PREVIOUS_DATADIR="yes"
else
PREVIOUS_DATADIR="no"
fi
export PREVIOUS_DATADIR
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
einfo
elog "You might want to run:"
elog "\"emerge --config =${CATEGORY}/${PF}\""
elog "if this is a new install."
elog
elog "If you are switching server implentations, you should run the"
elog "mysql_upgrade tool."
einfo
else
einfo
elog "If you are upgrading major versions, you should run the"
elog "mysql_upgrade tool."
einfo
fi
else
if [[ ${EBUILD_PHASE} == "config" ]]; then
local new_MY_DATADIR
new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
| sed -ne '/datadir/s|^--datadir=||p' \
| tail -n1`
if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then
ewarn "MySQL MY_DATADIR has changed"
ewarn "from ${MY_DATADIR}"
ewarn "to ${new_MY_DATADIR}"
MY_DATADIR="${new_MY_DATADIR}"
if use galera ; then
einfo
elog "Be sure to edit the my.cnf file to activate your cluster settings."
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
elog "The first time the cluster is activated, you should add"
elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node."
elog "This option should then be removed for subsequent starts."
einfo
if [[ -n "${REPLACING_VERSIONS}" ]] ; then
local rver
for rver in ${REPLACING_VERSIONS} ; do
if ver_test "${rver}" -lt "10.4.0" ; then
ewarn "Upgrading galera from a previous version requires admin restart of the entire cluster."
ewarn "Please refer to https://mariadb.com/kb/en/library/changes-improvements-in-mariadb-104/#galera-4"
ewarn "for more information"
fi
done
fi
fi
fi
export MY_SHAREDSTATEDIR MY_SYSCONFDIR
export MY_LOCALSTATEDIR MY_LOGDIR
export MY_DATADIR
# Note about configuration change
einfo
elog "This version of mariadb reorganizes the configuration from a single my.cnf"
elog "to several files in /etc/mysql/${PN}.d."
elog "Please backup any changes you made to /etc/mysql/my.cnf"
elog "and add them as a new file under /etc/mysql/${PN}.d with a .cnf extension."
elog "You may have as many files as needed and they are read alphabetically."
elog "Be sure the options have the appropriate section headers, i.e. [mysqld]."
einfo
}
pkg_config() {

@ -399,19 +399,19 @@ src_test() {
touch "${T}/disabled.def"
local -a disabled_tests
disabled_tests+=( "auth_sec.keyring_file_data_qa;0;Won't work with user privileges")
disabled_tests+=( "gis.spatial_analysis_functions_buffer;5452;Known rounding error with latest AMD processors (PS)")
disabled_tests+=( "gis.gis_bugs_crashes;5452;Known rounding error with latest AMD processors (PS)")
disabled_tests+=( "gis.geometry_class_attri_prop;5452;Known rounding error with latest AMD processors (PS)")
disabled_tests+=( "gis.spatial_utility_function_distance_sphere;5452;Known rounding error with latest AMD processors (PS)")
disabled_tests+=( "gis.geometry_property_function_issimple;5452;Known rounding error with latest AMD processors (PS)")
disabled_tests+=( "gis.spatial_analysis_functions_centroid;5452;Known rounding error with latest AMD processors (PS)")
disabled_tests+=( "gis.spatial_operators_intersection;5452;Known rounding error with latest AMD processors (PS)")
disabled_tests+=( "gis.spatial_utility_function_simplify;5452;Known rounding error with latest AMD processors (PS)")
disabled_tests+=( "gis.spatial_op_testingfunc_mix;5452;Known rounding error with latest AMD processors (PS)")
disabled_tests+=( "gis.spatial_analysis_functions_distance;5452;Known rounding error with latest AMD processors (PS)")
disabled_tests+=( "main.window_std_var;0;Known rounding error with latest AMD processors -- no upstream bug yet")
disabled_tests+=( "main.window_std_var_optimized;0;Known rounding error with latest AMD processors -- no upstream bug yet")
disabled_tests+=( "auth_sec.keyring_file_data_qa;0;Won't work with user privileges" )
disabled_tests+=( "gis.spatial_analysis_functions_buffer;5452;Known rounding error with latest AMD processors (PS)" )
disabled_tests+=( "gis.gis_bugs_crashes;5452;Known rounding error with latest AMD processors (PS)" )
disabled_tests+=( "gis.geometry_class_attri_prop;5452;Known rounding error with latest AMD processors (PS)" )
disabled_tests+=( "gis.spatial_utility_function_distance_sphere;5452;Known rounding error with latest AMD processors (PS)" )
disabled_tests+=( "gis.geometry_property_function_issimple;5452;Known rounding error with latest AMD processors (PS)" )
disabled_tests+=( "gis.spatial_analysis_functions_centroid;5452;Known rounding error with latest AMD processors (PS)" )
disabled_tests+=( "gis.spatial_operators_intersection;5452;Known rounding error with latest AMD processors (PS)" )
disabled_tests+=( "gis.spatial_utility_function_simplify;5452;Known rounding error with latest AMD processors (PS)" )
disabled_tests+=( "gis.spatial_op_testingfunc_mix;5452;Known rounding error with latest AMD processors (PS)" )
disabled_tests+=( "gis.spatial_analysis_functions_distance;5452;Known rounding error with latest AMD processors (PS)" )
disabled_tests+=( "main.window_std_var;0;Known rounding error with latest AMD processors -- no upstream bug yet" )
disabled_tests+=( "main.window_std_var_optimized;0;Known rounding error with latest AMD processors -- no upstream bug yet" )
disabled_tests+=( "rpl_gtid.rpl_gtid_stm_drop_table;90612;Known test failure" )
disabled_tests+=( "rpl_gtid.rpl_multi_source_mtr_includes;0;Known failure - no upstream bug yet" )
disabled_tests+=( "sys_vars.myisam_data_pointer_size_func;87935;Test will fail on slow hardware")
@ -420,7 +420,7 @@ src_test() {
disabled_tests+=( "x.message_compressed_payload;0;False positive caused by protobuff-3.11+" )
disabled_tests+=( "x.message_protobuf_nested;0;False positive caused by protobuff-3.11+" )
local test_ds
local test_infos_str test_infos_arr
for test_infos_str in "${disabled_tests[@]}" ; do
IFS=';' read -r -a test_infos_arr <<< "${test_infos_str}"
@ -430,7 +430,7 @@ src_test() {
_disable_test "${test_infos_arr[0]}" "${test_infos_arr[1]}" "${test_infos_arr[2]}"
done
unset test_ds test_infos_str test_infos_arr
unset test_infos_str test_infos_arr
# Try to increase file limits to increase test coverage
if ! ulimit -n 16500 1>/dev/null 2>&1 ; then

Binary file not shown.

@ -14,7 +14,7 @@ SRC_URI="mirror://apache/tomcat/tomcat-7/v${PV}/src/${MY_P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="3.0"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
KEYWORDS="amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
IUSE=""
DEPEND=">=virtual/jdk-1.6"

Binary file not shown.

@ -18,7 +18,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2 phpdbg"

@ -19,7 +19,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
S="${WORKDIR}/${PN}-${MY_PV}"

@ -21,7 +21,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
S="${WORKDIR}/${PN}-${MY_PV}"

@ -18,7 +18,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"

@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
LICENSE="LGPL-2.1"
SLOT="0.40"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~x86-linux"
IUSE="test valadoc"
RESTRICT="!test? ( test )"

@ -10,7 +10,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
LICENSE="LGPL-2.1+"
SLOT="0.46"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~x86-linux"
IUSE="test valadoc"
RESTRICT="!test? ( test )"

Binary file not shown.

@ -9,7 +9,7 @@ HOMEPAGE="https://wiki.gnome.org/Accessibility"
LICENSE="LGPL-2+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
IUSE="gtk-doc +introspection"
RDEPEND="

@ -1,2 +1 @@
DIST folks-0.12.1.tar.xz 522688 BLAKE2B 584957b628e286b850ee45c3f79d942ae602124e0130eeddc8806ae6fc12accd26c140df5caa0a1a68c84bff707df785d863d2f69ee9a0b6b450b8159c21fb39 SHA512 f60e993508137b33602ccc814bde45ad780d61afb0566f8175fd01b3dcaa5f5771e11d98156c4ecfd85f920a7adc140a5b2582eaaa97568b8fb3b3761668decb
DIST folks-0.13.1.tar.xz 515584 BLAKE2B fe4e368e60dd41a72f449f130993eb7b8792b2a38218ff7117a8e5ec192d53d2b8f5ab09a2318267cf2fd7a717048b8715289b2f411c59846c6c98235ec32149 SHA512 b134172077bed1655cd7f24b1402ed347d405b22114c33d6638040a5e475632ea33cde898a08fc143eaefc7057d4b6dccceac7e797e1976fdf88c58764818afe

@ -1,40 +0,0 @@
From 93c03b9582eb1eac21f084decf86ca5f1340dc53 Mon Sep 17 00:00:00 2001
From: Mart Raudsepp <leio@gentoo.org>
Date: Sat, 7 Sep 2019 22:16:43 +0300
Subject: [PATCH] meson: Allow disabling build of tests
---
meson.build | 4 +++-
meson_options.txt | 1 +
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
index 91800654..37e6b5c2 100644
--- a/meson.build
+++ b/meson.build
@@ -219,7 +219,9 @@ subdir('tools')
subdir('po')
# Tests
-subdir('tests')
+if get_option('test')
+ subdir('tests')
+endif
if docs_enabled
subdir('docs')
diff --git a/meson_options.txt b/meson_options.txt
index 042a72e8..b4552d49 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -9,6 +9,7 @@ option('zeitgeist', type: 'boolean', value: false, description: 'build Zeitgeist
option('import_tool', type: 'boolean', value: true, description: 'Enable building the meta-contact import tool')
option('inspect_tool', type: 'boolean', value: true, description: 'Enable building the data inspection tool')
# Test options
+option('test', type: 'boolean', value: true, description: 'Build test programs')
option('installed_tests', type: 'boolean', value: false, description: 'Install test programs')
# Docs
option('docs', type: 'boolean', value: false, description: 'Enable documentation generation')
--
2.20.1

@ -1,47 +0,0 @@
From 1853567d79024c6ce960d9dc187cff8aaf9a37ce Mon Sep 17 00:00:00 2001
From: Niels De Graef <nielsdegraef@gmail.com>
Date: Mon, 3 Feb 2020 08:57:52 +0100
Subject: [PATCH] meson: Use python.dependency() correctly
From https://github.com/mesonbuild/meson/issues/6470:
> So, to further clarify, passing an argument to
> py_installation.dependency() should be an error, since this method
> will only ever return a python dependency (for embedding python
> itself, etc.) and not dbusmock or anything else.
Fixxes https://gitlab.gnome.org/GNOME/folks/issues/119
---
meson.build | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/meson.build b/meson.build
index d5115e28..f3644457 100644
--- a/meson.build
+++ b/meson.build
@@ -1,7 +1,7 @@
project('folks', [ 'vala', 'c' ],
version: '0.13.2',
license: 'LGPL2.1+',
- meson_version: '>= 0.49',
+ meson_version: '>= 0.51',
)
gnome = import('gnome')
@@ -132,8 +132,11 @@ if bluez_backend_enabled
libebook_dep = dependency('libebook-1.2', version: '>=' + min_eds_version)
# Needed for the BlueZ tests
pymod = import('python')
- py_installation = pymod.find_installation('python3')
- python_dbusmock = py_installation.dependency('dbusmock')
+ py_installation = pymod.find_installation('python3',
+ modules: [
+ 'dbusmock',
+ ],
+ )
endif
if import_tool_enabled
--
2.20.1

@ -1,31 +0,0 @@
From f8a59fb6bf12be06595c94d0b00afed4e1d2f1ee Mon Sep 17 00:00:00 2001
From: Mart Raudsepp <leio@gentoo.org>
Date: Sun, 23 Feb 2020 19:28:51 +0200
Subject: [PATCH] meson: Conditionalize dbusmock check to tests being built
---
meson.build | 2 ++
1 file changed, 2 insertions(+)
diff --git a/meson.build b/meson.build
index 74320634..64f28d2b 100644
--- a/meson.build
+++ b/meson.build
@@ -131,12 +131,14 @@ endif
if bluez_backend_enabled
libebook_dep = dependency('libebook-1.2', version: '>=' + min_eds_version)
# Needed for the BlueZ tests
+ if get_option('test')
pymod = import('python')
py_installation = pymod.find_installation('python3',
modules: [
'dbusmock',
],
)
+ endif
endif
if import_tool_enabled
--
2.20.1

@ -1,26 +0,0 @@
From b2b0832cf69560bdf0692d275d49d4ed6e293426 Mon Sep 17 00:00:00 2001
From: Mart Raudsepp <leio@gentoo.org>
Date: Sat, 7 Sep 2019 22:26:38 +0300
Subject: [PATCH] tests: disable failing tracker tests
All tracker tests fail for me, so disable them for now to at least
continue testing the rest.
---
tests/meson.build | 4 ----
1 file changed, 4 deletions(-)
diff --git a/tests/meson.build b/tests/meson.build
index 6a7fa29c..2079051b 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -43,7 +43,3 @@ endif
if eds_backend_enabled
subdir('eds')
endif
-
-if tracker_backend_enabled
- subdir('tracker')
-endif
--
2.20.1

@ -1,89 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
VALA_USE_DEPEND="vapigen"
VALA_MAX_API_VERSION="0.44" # tests-utils fails to build with newer with v0.12.1
inherit gnome.org gnome2-utils meson vala xdg
DESCRIPTION="Library for aggregating people from multiple sources"
HOMEPAGE="https://wiki.gnome.org/Projects/Folks"
LICENSE="LGPL-2.1+"
SLOT="0/25" # subslot = libfolks soname version
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-linux"
IUSE="bluetooth eds +telepathy test tracker utils"
REQUIRED_USE="bluetooth? ( eds )"
RESTRICT="!test? ( test )"
DEPEND="
>=dev-libs/glib-2.44:2
dev-libs/dbus-glib
>=dev-libs/libgee-0.10:0.8[introspection]
>=dev-libs/gobject-introspection-1.54:=
telepathy? ( >=net-libs/telepathy-glib-0.19.9 )
tracker? ( app-misc/tracker:0/2.0 )
eds? ( >=gnome-extra/evolution-data-server-3.13.90:=
<gnome-extra/evolution-data-server-3.33
)
dev-libs/libxml2:2
utils? ( sys-libs/readline:0= )
"
# telepathy-mission-control needed at runtime; it is used by the telepathy
# backend via telepathy-glib's AccountManager binding.
RDEPEND="${DEPEND}
bluetooth? ( >=net-wireless/bluez-5[obex] )
telepathy? ( net-im/telepathy-mission-control )
"
BDEPEND="
>=dev-util/meson-0.49
>=sys-devel/gettext-0.19.8
virtual/pkgconfig
test? ( sys-apps/dbus
bluetooth? ( dev-python/dbusmock ) )
$(vala_depend)
telepathy? ( net-libs/telepathy-glib[vala] )
eds? ( gnome-extra/evolution-data-server[vala] )
"
PATCHES=(
"${FILESDIR}"/${PV}-conditional-tests.patch # Allow not building lots of test executables when tests are disabled
"${FILESDIR}"/${PV}-no-tracker-tests.patch # TODO: Tracker tests fail; this removes them for now
"${FILESDIR}"/${PV}-meson-0.53-compat.patch # https://gitlab.gnome.org/GNOME/folks/issues/119
"${FILESDIR}"/${PV}-meson-0.53-compat2.patch # Don't require dbusmock if tests aren't built (with our downstream conditional-tests patch)
)
src_prepare() {
vala_src_prepare
xdg_src_prepare
}
src_configure() {
local emesonargs=(
$(meson_use bluetooth bluez_backend)
$(meson_use eds eds_backend)
-Dlibsocialweb_backend=false # not packaged
$(meson_use eds ofono_backend)
$(meson_use telepathy telepathy_backend)
$(meson_use tracker tracker_backend)
-Dzeitgeist=false # last rited package
-Dimport_tool=true
$(meson_use utils inspect_tool)
$(meson_use test)
-Dinstalled_tests=false
-Ddocs=false # Needs find_program sedding to specific version; only dev docs, don't bother
)
meson_src_configure
}
pkg_postinst() {
xdg_pkg_postinst
gnome2_schemas_update
}
pkg_postrm() {
xdg_pkg_postrm
gnome2_schemas_update
}

@ -1,90 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
VALA_USE_DEPEND="vapigen"
VALA_MAX_API_VERSION="0.44" # tests-utils fails to build with newer with v0.12.1
inherit gnome.org gnome2-utils meson vala xdg
DESCRIPTION="Library for aggregating people from multiple sources"
HOMEPAGE="https://wiki.gnome.org/Projects/Folks"
LICENSE="LGPL-2.1+"
SLOT="0/25" # subslot = libfolks soname version
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~x86-linux"
IUSE="bluetooth eds +telepathy test tracker utils"
REQUIRED_USE="bluetooth? ( eds )"
RESTRICT="!test? ( test )"
DEPEND="
$(vala_depend)
>=dev-libs/glib-2.44:2
dev-libs/dbus-glib
>=dev-libs/libgee-0.10:0.8[introspection]
>=dev-libs/gobject-introspection-1.54:=
telepathy? ( >=net-libs/telepathy-glib-0.19.9[vala] )
tracker? ( app-misc/tracker:0/2.0 )
eds? ( >=gnome-extra/evolution-data-server-3.13.90:=[vala]
<gnome-extra/evolution-data-server-3.33
)
dev-libs/libxml2:2
utils? ( sys-libs/readline:0= )
"
# telepathy-mission-control needed at runtime; it is used by the telepathy
# backend via telepathy-glib's AccountManager binding.
RDEPEND="${DEPEND}
bluetooth? ( >=net-wireless/bluez-5[obex] )
telepathy? ( net-im/telepathy-mission-control )
"
BDEPEND="
>=dev-util/meson-0.49
>=sys-devel/gettext-0.19.8
virtual/pkgconfig
"
# FIXME:
# test? ( bluetooth? ( dbusmock is missing in the tree ) )
DEPEND="${COMMON_DEPEND}
test? ( sys-apps/dbus
bluetooth? ( dev-python/dbusmock ) )
"
PATCHES=(
"${FILESDIR}"/${PV}-conditional-tests.patch # Allow not building lots of test executables when tests are disabled
"${FILESDIR}"/${PV}-no-tracker-tests.patch # TODO: Tracker tests fail; this removed them for now
)
src_prepare() {
vala_src_prepare
xdg_src_prepare
}
src_configure() {
local emesonargs=(
$(meson_use bluetooth bluez_backend)
$(meson_use eds eds_backend)
-Dlibsocialweb_backend=false # not packaged
$(meson_use eds ofono_backend)
$(meson_use telepathy telepathy_backend)
$(meson_use tracker tracker_backend)
-Dzeitgeist=false # last rited package
-Dimport_tool=true
$(meson_use utils inspect_tool)
$(meson_use test)
-Dinstalled_tests=false
-Ddocs=false # Needs find_program sedding to specific version; only dev docs, don't bother
)
meson_src_configure
}
pkg_postinst() {
xdg_pkg_postinst
gnome2_schemas_update
}
pkg_postrm() {
xdg_pkg_postrm
gnome2_schemas_update
}

@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Folks"
LICENSE="LGPL-2.1+"
SLOT="0/25" # subslot = libfolks soname version
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-linux"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~x86-linux"
IUSE="bluetooth eds +telepathy tracker utils"
REQUIRED_USE="bluetooth? ( eds )"

@ -11,7 +11,7 @@ SRC_URI="https://github.com/fribidi/fribidi/releases/download/v${PV}/${P}.tar.xz
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="static-libs"
RDEPEND=""

@ -10,7 +10,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Gjs"
LICENSE="MIT || ( MPL-1.1 LGPL-2+ GPL-2+ )"
SLOT="0"
IUSE="+cairo examples gtk readline +sysprof test"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
RDEPEND="
>=dev-libs/glib-2.58.0

@ -14,7 +14,7 @@ SLOT="2"
IUSE="dbus debug elibc_glibc fam gtk-doc kernel_linux +mime selinux static-libs systemtap test utils xattr"
RESTRICT="!test? ( test )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
# * libelf isn't strictly necessary, but makes gresource tool more useful, and
# the check is automagic in gio/meson.build. gresource is not a multilib tool

@ -11,7 +11,7 @@ HOMEPAGE="http://spruce.sourceforge.net/gmime/ https://developer.gnome.org/gmime
SLOT="3.0"
LICENSE="LGPL-2.1+"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x64-solaris ~x86-solaris"
IUSE="crypt doc idn static-libs test +vala"
RESTRICT="!test? ( test )"

@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/GObjectIntrospection"
LICENSE="HPND"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE=""
RDEPEND="!<${CATEGORY}/${GNOME_ORG_MODULE}-${PV}"

@ -15,7 +15,7 @@ SLOT="0"
IUSE="doctool gtk-doc test"
RESTRICT="!test? ( test )"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
# virtual/pkgconfig needed at runtime, bug #505408
RDEPEND="

@ -12,7 +12,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Gom"
LICENSE="LGPL-2+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
IUSE="gtk-doc +introspection python test"
RESTRICT="!test? ( test )"
REQUIRED_USE="python? ( introspection ${PYTHON_REQUIRED_USE} )"

@ -10,7 +10,7 @@ HOMEPAGE="https://gitlab.gnome.org/GNOME/libdazzle"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc x86"
IUSE="gtk-doc +introspection test +vala"
REQUIRED_USE="vala? ( introspection )"

@ -15,7 +15,7 @@ if [[ ${PV} == 9999* ]] ; then
inherit git-r3
else
SRC_URI="https://www.freedesktop.org/software/libevdev/${P}.tar.xz"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 s390 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86"
fi
LICENSE="MIT"

@ -16,7 +16,7 @@ IUSE="+crypt gnome-online-accounts gtk-doc +introspection test vala"
REQUIRED_USE="vala? ( introspection )"
RESTRICT="!test? ( test )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc x86"
RDEPEND="
>=dev-libs/glib-2.44.0:2

@ -10,7 +10,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Libgee"
LICENSE="LGPL-2.1+"
SLOT="0.8/2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-linux"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~x86-linux"
IUSE="+introspection"
# FIXME: add doc support, requires valadoc

@ -12,7 +12,7 @@ SRC_URI="https://people.freedesktop.org/~hughsient/releases/${P}.tar.xz"
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc x86"
IUSE="gtk-doc +introspection static-libs test +vala"
REQUIRED_USE="vala? ( introspection )"

@ -15,7 +15,7 @@ SLOT="2/3-16-2" # subslot = 3-(libgweather-3 soname suffix) w/ temporary -2 suff
IUSE="glade gtk-doc +introspection +vala"
REQUIRED_USE="vala? ( introspection )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~x86-solaris"
RDEPEND="
>=dev-libs/glib-2.44.0:2

@ -13,7 +13,7 @@ SRC_URI="https://www.freedesktop.org/software/${PN}/${P}.tar.xz"
LICENSE="MIT"
SLOT="0/10"
[[ "$(ver_cut 3)" -gt 900 ]] || \
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~s390 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 ~s390 sparc x86"
IUSE="doc input_devices_wacom test"
RESTRICT="!test? ( test )"

@ -11,7 +11,7 @@ HOMEPAGE="https://developer.gnome.org/libpeas/stable/"
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
IUSE="glade +gtk gtk-doc lua luajit +python vala"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"

@ -19,12 +19,9 @@ IUSE="+khronos-headers"
BDEPEND="${RUBY_DEPS}"
DEPEND="dev-util/opencl-headers"
# nvidia-drivers block is hopefully temporary, until it has ceased
# to depend on eselect-opencl
RDEPEND="${DEPEND}
!app-eselect/eselect-opencl
!dev-libs/opencl-icd-loader
!x11-drivers/nvidia-drivers"
!dev-libs/opencl-icd-loader"
PATCHES=("${FILESDIR}"/${P}-gcc-10.patch)

@ -20,12 +20,9 @@ IUSE="test"
RESTRICT="!test? ( test )"
# nvidia-drivers block is hopefully temporary, until it has ceased
# to depend on eselect-opencl
DEPEND="dev-util/opencl-headers
!app-eselect/eselect-opencl
!dev-libs/ocl-icd
!x11-drivers/nvidia-drivers"
!dev-libs/ocl-icd"
RDEPEND="${DEPEND}"
S="${WORKDIR}/${MY_P}"

@ -0,0 +1,37 @@
From: Roberto Bagnara <bagnara@cs.unipr.it>
Date: Sun, 11 Feb 2018 08:11:09 +0000 (+0100)
Subject: Added missing "template" and "typename" keywords.
X-Git-Url: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl%2Fppl.git;a=commitdiff_plain;h=c39f6a07b51f89e365b05ba4147aa2aa448febd7;hp=3a5e1e20a94cffb830182f22132b153d6691b7c5
Added missing "template" and "typename" keywords.
(Thanks to Dmitrii Pasechnik.)
---
diff --git a/src/Determinate_inlines.hh b/src/Determinate_inlines.hh
index 2749953..5b47275 100644
--- a/src/Determinate_inlines.hh
+++ b/src/Determinate_inlines.hh
@@ -289,8 +289,8 @@ operator()(Determinate& x, const Determinate& y) const {
template <typename PSET>
template <typename Binary_Operator_Assign>
-inline
-Determinate<PSET>::Binary_Operator_Assign_Lifter<Binary_Operator_Assign>
+inline typename
+Determinate<PSET>::template Binary_Operator_Assign_Lifter<Binary_Operator_Assign>
Determinate<PSET>::lift_op_assign(Binary_Operator_Assign op_assign) {
return Binary_Operator_Assign_Lifter<Binary_Operator_Assign>(op_assign);
}
diff --git a/src/OR_Matrix_inlines.hh b/src/OR_Matrix_inlines.hh
index b20b697..8124b7f 100644
--- a/src/OR_Matrix_inlines.hh
+++ b/src/OR_Matrix_inlines.hh
@@ -97,7 +97,7 @@ OR_Matrix<T>::Pseudo_Row<U>::Pseudo_Row(const Pseudo_Row<V>& y)
template <typename T>
template <typename U>
-inline OR_Matrix<T>::Pseudo_Row<U>&
+inline typename OR_Matrix<T>::template Pseudo_Row<U>&
OR_Matrix<T>::Pseudo_Row<U>::operator=(const Pseudo_Row& y) {
first = y.first;
#if PPL_OR_MATRIX_EXTRA_DEBUG

@ -0,0 +1,68 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools
DESCRIPTION="The Parma Polyhedra Library for numerical analysis of complex systems"
HOMEPAGE="http://bugseng.com/products/ppl"
SRC_URI="http://bugseng.com/products/ppl/download/ftp/releases/${PV}/${P}.tar.xz"
LICENSE="GPL-3"
SLOT="0/4.14" # SONAMEs
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~sparc-solaris"
IUSE="cdd +cxx doc lpsol pch static-libs test"
RDEPEND=">=dev-libs/gmp-6[cxx]
lpsol? ( sci-mathematics/glpk )"
DEPEND="${RDEPEND}
app-arch/xz-utils
sys-devel/m4"
RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}/disable-mipproblem2.patch"
"${FILESDIR}/disable-containsintegerpoint1.patch"
"${FILESDIR}/disable-boeing-tests.patch"
"${FILESDIR}/fix-clang-build.patch"
)
src_prepare() {
default
# The patch should do this, but then the diff makes it run
# afoul of the Gentoo patch size limit.
rm demos/ppl_lpsol/examples/boeing[12].mps || die
eautoreconf
}
src_configure() {
local interfaces=( c )
use cxx && interfaces+=( cxx )
econf \
--disable-debugging \
--disable-optimization \
$(use_enable doc documentation) \
$(use_enable cdd ppl_lcdd) \
$(use_enable lpsol ppl_lpsol) \
$(use_enable pch) \
$(use_enable static-libs static) \
--enable-interfaces="${interfaces[*]}" \
$(use test && echo --enable-check=quick)
}
src_install() {
default
if ! use static-libs; then
find "${ED}"/usr -name 'libppl*.la' -delete || die
fi
pushd "${ED}/usr/share/doc/${PF}" >/dev/null || die
rm gpl* fdl* || die
if ! use doc ; then
rm -r *-html/ *.ps.gz *.pdf || die
fi
}

@ -11,7 +11,7 @@ LICENSE="LGPL-2+"
SLOT="0/18"
IUSE="archive crypt gtk-doc +introspection +quvi test"
RESTRICT="!test? ( test )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86"
RDEPEND="
>=dev-libs/glib-2.56:2

@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Vala"
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
IUSE=""
RDEPEND=""

@ -11,7 +11,7 @@ if [[ ${PV} = 9999* ]]; then
inherit git-r3 autotools
else
SRC_URI="https://wayland.freedesktop.org/releases/${P}.tar.xz"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
fi
LICENSE="MIT"

@ -8,7 +8,7 @@ if [[ ${PV} = *9999* ]]; then
inherit git-r3
else
SRC_URI="https://wayland.freedesktop.org/releases/${P}.tar.xz"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
fi
inherit autotools libtool multilib-minimal toolchain-funcs

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save