parent
97b522cd24
commit
bf4754872b
Binary file not shown.
Binary file not shown.
@ -1,2 +1,3 @@
|
||||
DIST ansible-2.9.10.tar.gz 14237929 BLAKE2B 52230b18efa94dbcbd6e4fba3d0915e2375fc8de7412944eaeefc054f50ea888a1aeb86b688a7ae97184b1a8a10180e67a7004d48906235ce4e1b83976d10e9a SHA512 c0d5e26491f52d1eb8d1c3755903bb6a8d50634df5fb50a970076d49d99cfda424fa60c258a6a5821e01c435a8ef077d46ced4b2f8c4f4a8d381737e6f14afb4
|
||||
DIST ansible-2.9.11.tar.gz 14243995 BLAKE2B afd60d69f53c79c778f122db902ba149030fd995650566f6edcfa41178e92d56cf200089b76de3c6999a824725c793e57c222733ed5b9d9c401bccea942cde5b SHA512 b157a5cfb5ba7cb651c7afc0dc92cfe3b8f9eebd06de6d7a1e4917ffca3c542c5207c8e1820acc5be840190c8754f111e2501304ad7e64867247e5b973aec81e
|
||||
DIST ansible-2.9.9.tar.gz 14222889 BLAKE2B bcacd9271aa0275cff8090819ee5c2832c7b59a287d976ced7e4dad52b5af85350baa1de30f56fdbb92e237c1dd3a9f6ff86cd1af5cb20167331b3f846649d4a SHA512 327c5ece277096f71f10fec2b33a8d2c94ee59b0e22b15bb5ca449da2331b8158239bdbc8e3afd093af358a787f410c7c2e0942010de65a8d9c8719cf83e4abd
|
||||
|
@ -0,0 +1,68 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6,7} )
|
||||
|
||||
inherit distutils-r1 eutils
|
||||
|
||||
DESCRIPTION="Model-driven deployment, config management, and command execution framework"
|
||||
HOMEPAGE="https://ansible.com/"
|
||||
SRC_URI="https://releases.ansible.com/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~x64-macos"
|
||||
IUSE="doc test"
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/paramiko[${PYTHON_USEDEP}]
|
||||
dev-python/jinja[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
dev-python/cryptography[${PYTHON_USEDEP}]
|
||||
dev-python/httplib2[${PYTHON_USEDEP}]
|
||||
dev-python/six[${PYTHON_USEDEP}]
|
||||
dev-python/netaddr[${PYTHON_USEDEP}]
|
||||
dev-python/pexpect[${PYTHON_USEDEP}]
|
||||
net-misc/sshpass
|
||||
virtual/ssh
|
||||
"
|
||||
DEPEND="
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
>=dev-python/packaging-16.6[${PYTHON_USEDEP}]
|
||||
doc? (
|
||||
dev-python/sphinx[${PYTHON_USEDEP}]
|
||||
dev-python/sphinx-notfound-page[${PYTHON_USEDEP}]
|
||||
>=dev-python/pygments-2.4.0[${PYTHON_USEDEP}]
|
||||
)
|
||||
test? (
|
||||
${RDEPEND}
|
||||
dev-python/nose[${PYTHON_USEDEP}]
|
||||
>=dev-python/mock-1.0.1[${PYTHON_USEDEP}]
|
||||
dev-python/passlib[${PYTHON_USEDEP}]
|
||||
dev-python/coverage[${PYTHON_USEDEP}]
|
||||
dev-python/unittest2[${PYTHON_USEDEP}]
|
||||
dev-vcs/git
|
||||
)"
|
||||
|
||||
python_compile_all() {
|
||||
if use doc; then
|
||||
cd docs/docsite || die
|
||||
export CPUS=4
|
||||
emake -f Makefile.sphinx html
|
||||
fi
|
||||
}
|
||||
|
||||
python_test() {
|
||||
nosetests -d -w test/units -v --with-coverage --cover-package=ansible --cover-branches || die
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
use doc && local HTML_DOCS=( docs/docsite/_build/html/. )
|
||||
distutils-r1_python_install_all
|
||||
|
||||
dodoc -r examples
|
||||
}
|
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST unp_2.0~pre7+nmu1.tar.bz2 17537 BLAKE2B 7ef6cfcc524daf95c7cd9dc41ba690cb8db1b1983cd45709c8764591af36d6d00631975bfef0359ac633aae1c11b73efe827e367931f73fe7c5fcc8832b0fe84 SHA512 1b30f14c8d17e0a6b149ca4795f2219e9180f814347410e7ff7fa2b9720a9d308190f2ded8fcfd11bac9b5bb7a64ffd93f140bdaffcba1127f0e15e3d2737362
|
||||
DIST unp_2.0~pre8.tar.xz 16336 BLAKE2B 6c6ffd75acda980e6c572c48944b238788a64d2bf1f854b45a3bc468da19fc6e593a8b604d99dac51b5b645ec88b27300be6af4d988a56470812a7ae92f19336 SHA512 58d2a6a9f7fe868773273532b46249109e1e757517dd46e485f2b3a77fea404aeea34edf4460e76376806ae0d28baefa55f1063919bdf1493617f1b361fe6039
|
||||
|
@ -0,0 +1,49 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit eutils bash-completion-r1
|
||||
|
||||
DESCRIPTION="Script for unpacking various file formats"
|
||||
HOMEPAGE="https://packages.qa.debian.org/u/unp.html"
|
||||
MY_PV="${PV/_pre/$'\x7e'pre}"
|
||||
SRC_URI="mirror://debian/pool/main/u/unp/${PN}_${MY_PV}.tar.xz"
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~hppa ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
|
||||
IUSE="nls"
|
||||
|
||||
DEPEND="nls? ( sys-devel/gettext )"
|
||||
|
||||
RDEPEND="${DEPEND}
|
||||
dev-lang/perl"
|
||||
|
||||
src_compile() {
|
||||
if use nls; then
|
||||
strip-linguas -i .
|
||||
if [ -n "$LINGUAS" ]; then
|
||||
emake -C po MOFILES="${LINGUAS// /.po }.po"
|
||||
else
|
||||
emake -C po
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin unp
|
||||
dosym unp /usr/bin/ucat
|
||||
doman debian/unp.1
|
||||
dodoc debian/changelog debian/README.Debian
|
||||
newbashcomp debian/unp.bash-completion unp
|
||||
|
||||
if use nls; then
|
||||
if [ -n "$LINGUAS" ]; then
|
||||
emake -C po MOFILES="${LINGUAS// /.mo }.mo" DESTDIR="${D}" install
|
||||
else
|
||||
emake -C po DESTDIR="${D}" install
|
||||
fi
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,3 +1 @@
|
||||
DIST bacula-9.4.4.tar.gz 4159759 BLAKE2B 29628626a9654369ea1633878c16ff8af48bf568ccd54c140c5b9c1e9df7fb988296f4d6f0119a4904827790f7c8881cd7207c9f4b9355bfbc1395a12f24a9c3 SHA512 f973c9ab8ee9867962645b1a1388b494fd402c990be8128b892e043e16361bff2fc08ec43e2c8c9bebeae9c94afd3fdbc04a610b35f99e7dd054ed1ad2c04b31
|
||||
DIST bacula-9.6.3.tar.gz 4246447 BLAKE2B c591fcd5a6c3a79b52cf778f7719ad59f35bfdf99293abb4f6e9c701c0d545125734721a926f071056433d7a9801c40c546f4a73770f5d0fea9fc33c334bcd93 SHA512 8ee14311945ff04c4d3ca736725e2187bcf3e9e0a3093df215c8651bd6a7b07792edea4912ba84189ee79df614c1e99a4333ce173163cfc7efb536dad582106f
|
||||
DIST bacula-9.6.5.tar.gz 4252526 BLAKE2B 48bfc9f45db10949fb4d7396c2ca15ed17dad3bd6ab9c6ab5cd0b3a80d1df0d37868a8671c2ead9b00fe89da91d43e945ca2818016f09502aff1a2fd3a5d455d SHA512 4018e242b2131c2416cd16ae3530c9c848dc8e88dd6532136c699a50fcbf39a574ffec8ef13bc5d7a9673d057b51cf1d1be80667e89abe0e18ec79d04b0edd70
|
||||
|
@ -1,426 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit desktop libtool qmake-utils systemd
|
||||
|
||||
MY_PV=${PV/_beta/-b}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
DESCRIPTION="Featureful client/server network backup suite"
|
||||
HOMEPAGE="https://www.bacula.org/"
|
||||
SRC_URI="mirror://sourceforge/bacula/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="AGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc ~sparc x86"
|
||||
IUSE="acl bacula-clientonly bacula-nodir bacula-nosd +batch-insert examples ipv6 libressl logwatch mysql postgres qt5 readline +sqlite ssl static tcpd vim-syntax X"
|
||||
|
||||
DEPEND="
|
||||
!bacula-clientonly? (
|
||||
!bacula-nodir? ( virtual/mta )
|
||||
postgres? ( dev-db/postgresql:=[threads] )
|
||||
mysql? ( || ( dev-db/mysql-connector-c dev-db/mariadb-connector-c ) )
|
||||
sqlite? ( dev-db/sqlite:3 )
|
||||
)
|
||||
dev-libs/gmp:0
|
||||
qt5? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtsvg:5
|
||||
x11-libs/qwt:6
|
||||
)
|
||||
logwatch? ( sys-apps/logwatch )
|
||||
readline? ( sys-libs/readline:0 )
|
||||
static? (
|
||||
dev-libs/lzo[static-libs]
|
||||
sys-libs/ncurses:=[static-libs]
|
||||
sys-libs/zlib[static-libs]
|
||||
acl? ( virtual/acl[static-libs] )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:0=[static-libs] )
|
||||
libressl? ( dev-libs/libressl:0=[static-libs] )
|
||||
)
|
||||
)
|
||||
!static? (
|
||||
dev-libs/lzo
|
||||
sys-libs/ncurses:=
|
||||
sys-libs/zlib
|
||||
acl? ( virtual/acl )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
)
|
||||
)
|
||||
tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
|
||||
"
|
||||
RDEPEND="${DEPEND}
|
||||
acct-user/bacula
|
||||
acct-group/bacula
|
||||
!bacula-clientonly? (
|
||||
!bacula-nosd? (
|
||||
app-arch/mt-st
|
||||
sys-block/mtx
|
||||
)
|
||||
)
|
||||
vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
|
||||
"
|
||||
|
||||
REQUIRED_USE="
|
||||
!bacula-clientonly? ( ^^ ( mysql postgres sqlite ) )
|
||||
static? ( bacula-clientonly )
|
||||
"
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
pkg_setup() {
|
||||
#XOR and !bacula-clientonly controlled by REQUIRED_USE
|
||||
use mysql && export mydbtype="mysql"
|
||||
use postgres && export mydbtype="postgresql"
|
||||
use sqlite && export mydbtype="sqlite3"
|
||||
|
||||
if use bacula-clientonly && use static && use qt5; then
|
||||
ewarn
|
||||
ewarn "Building statically linked 'bat' is not supported. Ignorig 'qt5' useflag."
|
||||
ewarn
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# adjusts default configuration files for several binaries
|
||||
# to /etc/bacula/<config> instead of ./<config>
|
||||
pushd src >&/dev/null || die
|
||||
for f in console/console.c dird/dird.c filed/filed.c \
|
||||
stored/bcopy.c stored/bextract.c stored/bls.c \
|
||||
stored/bscan.c stored/btape.c stored/stored.c \
|
||||
qt-console/main.cpp; do
|
||||
sed -i -e 's|^\(#define CONFIG_FILE "\)|\1/etc/bacula/|g' "${f}" \
|
||||
|| die "sed on ${f} failed"
|
||||
done
|
||||
popd >&/dev/null || die
|
||||
|
||||
# bug 466688 drop deprecated categories from Desktop file
|
||||
sed -i -e 's/Application;//' scripts/bat.desktop.in || die
|
||||
|
||||
# bug 466690 Use CXXFLAGS instead of CFLAGS
|
||||
sed -i -e 's/@CFLAGS@/@CXXFLAGS@/' autoconf/Make.common.in || die
|
||||
|
||||
# drop automatic install of unneeded documentation (for bug 356499)
|
||||
eapply -p0 "${FILESDIR}"/7.2.0/${PN}-7.2.0-doc.patch
|
||||
|
||||
# bug #310087
|
||||
eapply "${FILESDIR}"/5.2.3/${PN}-5.2.3-as-needed.patch
|
||||
|
||||
# bug #311161
|
||||
eapply -p0 "${FILESDIR}"/9.0.2/${PN}-9.0.2-lib-search-path.patch
|
||||
|
||||
# bat needs to respect LDFLAGS and CFLAGS
|
||||
eapply -p0 "${FILESDIR}"/9.0.6/${PN}-9.0.6-bat-pro.patch
|
||||
|
||||
# bug #328701
|
||||
eapply -p0 "${FILESDIR}"/5.2.3/${PN}-5.2.3-openssl-1.patch
|
||||
|
||||
eapply -p0 "${FILESDIR}"/9.0.8/${PN}-9.0.8-fix-static.patch
|
||||
|
||||
# fix soname in libbaccat.so bug #602952
|
||||
eapply -p0 "${FILESDIR}/bacula-fix-sonames.patch"
|
||||
|
||||
# do not strip binaries
|
||||
sed -i -e "s/strip /# strip /" src/filed/Makefile.in || die
|
||||
sed -i -e "s/strip /# strip /" src/console/Makefile.in || die
|
||||
|
||||
# fix file not found error during make depend
|
||||
eapply -p0 "${FILESDIR}"/7.0.2/${PN}-7.0.2-depend.patch
|
||||
|
||||
eapply_user
|
||||
|
||||
# Fix systemd unit files:
|
||||
# bug 497748
|
||||
sed -i -e '/Requires/d' platforms/systemd/*.service.in || die
|
||||
sed -i -e '/StandardOutput/d' platforms/systemd/*.service.in || die
|
||||
# bug 504370
|
||||
sed -i -e '/Alias=bacula-dir/d' platforms/systemd/bacula-dir.service.in || die
|
||||
# bug 584442 and 504368
|
||||
sed -i -e 's/@dir_user@/root/g' platforms/systemd/bacula-dir.service.in || die
|
||||
|
||||
# build 'bat' for Qt5
|
||||
export QMAKE="$(qt5_get_bindir)"/qmake
|
||||
|
||||
# adapt to >=Qt-5.9 (see bug #644566)
|
||||
# qmake needs an existing target file to generate install instructions
|
||||
sed -i -e 's#bins.files = bat#bins.files = .libs/bat#g' \
|
||||
src/qt-console/bat.pro.in || die
|
||||
mkdir src/qt-console/.libs || die
|
||||
touch src/qt-console/.libs/bat || die
|
||||
chmod 755 src/qt-console/.libs/bat || die
|
||||
|
||||
# fix handling of libressl version
|
||||
# needs separate handling for <libressl-2.7 and >=libressl2.7
|
||||
# (see bug #655520)
|
||||
if has_version "<dev-libs/libressl-2.7"; then
|
||||
eapply -p0 "${FILESDIR}"/9.4.0/${PN}-9.4.0-libressl26.patch
|
||||
else
|
||||
eapply -p0 "${FILESDIR}"/9.4.0/${PN}-9.4.0-libressl27.patch
|
||||
fi
|
||||
|
||||
# Don't let program install man pages directly
|
||||
rm "${S}"/manpages/Makefile.in || die "Unable to remove man pages Makefile.in"
|
||||
eapply -p1 "${FILESDIR}/bacula-fix-manpages.patch"
|
||||
|
||||
# fix bundled libtool (bug 466696)
|
||||
# But first move directory with M4 macros out of the way.
|
||||
# It is only needed by autoconf and gives errors during elibtoolize.
|
||||
mv autoconf/libtool autoconf/libtool1 || die
|
||||
elibtoolize
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=''
|
||||
|
||||
if use bacula-clientonly; then
|
||||
myconf="${myconf} \
|
||||
$(use_enable bacula-clientonly client-only) \
|
||||
$(use_enable !static libtool) \
|
||||
$(use_enable static static-cons) \
|
||||
$(use_enable static static-fd)"
|
||||
else
|
||||
myconf="${myconf} \
|
||||
$(use_enable !bacula-nodir build-dird) \
|
||||
$(use_enable !bacula-nosd build-stored)"
|
||||
# bug #311099
|
||||
# database support needed by dir-only *and* sd-only
|
||||
# build as well (for building bscan, btape, etc.)
|
||||
myconf="${myconf}
|
||||
--with-${mydbtype}"
|
||||
fi
|
||||
|
||||
# do not build bat if 'static' clientonly
|
||||
if ! use bacula-clientonly || ! use static; then
|
||||
myconf="${myconf} \
|
||||
$(use_enable qt5 bat)"
|
||||
fi
|
||||
|
||||
myconf="${myconf} \
|
||||
$(use_with X x) \
|
||||
$(use_enable batch-insert) \
|
||||
$(use_enable !readline conio) \
|
||||
$(use_enable readline) \
|
||||
$(use_with readline readline /usr) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_enable ipv6) \
|
||||
$(use_enable acl) \
|
||||
$(use_with tcpd tcp-wrappers)"
|
||||
|
||||
econf \
|
||||
--with-pid-dir=/var/run \
|
||||
--sysconfdir=/etc/bacula \
|
||||
--with-archivedir=/var/lib/bacula/tmp \
|
||||
--with-subsys-dir=/var/lock/subsys \
|
||||
--with-working-dir=/var/lib/bacula \
|
||||
--with-logdir=/var/lib/bacula \
|
||||
--with-scriptdir=/usr/libexec/bacula \
|
||||
--with-systemd=$(systemd_get_systemunitdir) \
|
||||
--with-dir-user=bacula \
|
||||
--with-dir-group=bacula \
|
||||
--with-sd-user=root \
|
||||
--with-sd-group=bacula \
|
||||
--with-fd-user=root \
|
||||
--with-fd-group=bacula \
|
||||
--enable-smartalloc \
|
||||
--disable-afs \
|
||||
--without-s3 \
|
||||
--host=${CHOST} \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Make build log verbose (bug #447806)
|
||||
emake NO_ECHO=""
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
doicon scripts/bacula.png
|
||||
|
||||
# install bat icon and desktop file when enabled
|
||||
# (for some reason ./configure doesn't pick this up)
|
||||
if use qt5 && ! use static ; then
|
||||
doicon src/qt-console/images/bat_icon.png
|
||||
domenu scripts/bat.desktop
|
||||
fi
|
||||
|
||||
# remove some scripts we don't need at all
|
||||
rm -f "${D}"/usr/libexec/bacula/{bacula,bacula-ctl-dir,bacula-ctl-fd,bacula-ctl-sd,startmysql,stopmysql}
|
||||
|
||||
# rename statically linked apps
|
||||
if use bacula-clientonly && use static ; then
|
||||
pushd "${D}"/usr/sbin || die
|
||||
mv static-bacula-fd bacula-fd || die
|
||||
mv static-bconsole bconsole || die
|
||||
popd || die
|
||||
fi
|
||||
|
||||
# extra files which 'make install' doesn't cover
|
||||
if ! use bacula-clientonly; then
|
||||
# the database update scripts
|
||||
diropts -m0750
|
||||
insinto /usr/libexec/bacula/updatedb
|
||||
insopts -m0754
|
||||
doins "${S}"/updatedb/*
|
||||
fperms 0640 /usr/libexec/bacula/updatedb/README
|
||||
|
||||
# the logrotate configuration
|
||||
# (now unconditional wrt bug #258187)
|
||||
diropts -m0755
|
||||
insinto /etc/logrotate.d
|
||||
insopts -m0644
|
||||
newins "${S}"/scripts/logrotate bacula
|
||||
|
||||
# the logwatch scripts
|
||||
if use logwatch; then
|
||||
diropts -m0750
|
||||
dodir /usr/share/logwatch/scripts/services
|
||||
dodir /usr/share/logwatch/scripts/shared
|
||||
dodir /etc/logwatch/conf/logfiles
|
||||
dodir /etc/logwatch/conf/services
|
||||
pushd "${S}"/scripts/logwatch >&/dev/null || die
|
||||
emake DESTDIR="${D}" install
|
||||
popd >&/dev/null || die
|
||||
fi
|
||||
fi
|
||||
|
||||
# Install all man pages
|
||||
doman "${S}"/manpages/*
|
||||
|
||||
if ! use qt5; then
|
||||
rm -vf "${D}"/usr/share/man/man1/bat.1*
|
||||
fi
|
||||
rm -vf "${D}"/usr/share/man/man1/bacula-tray-monitor.1*
|
||||
|
||||
if use bacula-clientonly || use bacula-nodir ; then
|
||||
rm -vf "${D}"/usr/libexec/bacula/create_*_database
|
||||
rm -vf "${D}"/usr/libexec/bacula/drop_*_database
|
||||
rm -vf "${D}"/usr/libexec/bacula/make_*_tables
|
||||
rm -vf "${D}"/usr/libexec/bacula/update_*_tables
|
||||
rm -vf "${D}"/usr/libexec/bacula/drop_*_tables
|
||||
rm -vf "${D}"/usr/libexec/bacula/grant_*_privileges
|
||||
rm -vf "${D}"/usr/libexec/bacula/*_catalog_backup
|
||||
fi
|
||||
if use bacula-clientonly || use bacula-nosd; then
|
||||
rm -vf "${D}"/usr/libexec/bacula/disk-changer
|
||||
rm -vf "${D}"/usr/libexec/bacula/mtx-changer
|
||||
rm -vf "${D}"/usr/libexec/bacula/dvd-handler
|
||||
fi
|
||||
|
||||
# documentation
|
||||
dodoc ChangeLog ReleaseNotes SUPPORT
|
||||
|
||||
# install examples (bug #457504)
|
||||
if use examples; then
|
||||
docinto examples/
|
||||
dodoc -r examples/*
|
||||
fi
|
||||
|
||||
# vim-files
|
||||
if use vim-syntax; then
|
||||
insinto /usr/share/vim/vimfiles/syntax
|
||||
doins scripts/bacula.vim
|
||||
insinto /usr/share/vim/vimfiles/ftdetect
|
||||
newins scripts/filetype.vim bacula_ft.vim
|
||||
fi
|
||||
|
||||
# setup init scripts
|
||||
myscripts="bacula-fd"
|
||||
if ! use bacula-clientonly; then
|
||||
if ! use bacula-nodir; then
|
||||
myscripts="${myscripts} bacula-dir"
|
||||
fi
|
||||
if ! use bacula-nosd; then
|
||||
myscripts="${myscripts} bacula-sd"
|
||||
fi
|
||||
fi
|
||||
for script in ${myscripts}; do
|
||||
# copy over init script and config to a temporary location
|
||||
# so we can modify them as needed
|
||||
cp "${FILESDIR}/${script}".confd "${T}/${script}".confd || die "failed to copy ${script}.confd"
|
||||
cp "${FILESDIR}/newscripts/${script}".initd "${T}/${script}".initd || die "failed to copy ${script}.initd"
|
||||
|
||||
# now set the database dependancy for the director init script
|
||||
case "${script}" in
|
||||
bacula-dir)
|
||||
case "${mydbtype}" in
|
||||
sqlite3)
|
||||
# sqlite databases don't have a daemon
|
||||
sed -i -e 's/need "%database%"/:/g' "${T}/${script}".initd || die
|
||||
;;
|
||||
*)
|
||||
# all other databases have daemons
|
||||
sed -i -e "s:%database%:${mydbtype}:" "${T}/${script}".initd || die
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
# install init script and config
|
||||
newinitd "${T}/${script}".initd "${script}"
|
||||
newconfd "${T}/${script}".confd "${script}"
|
||||
done
|
||||
|
||||
systemd_dounit "${S}"/platforms/systemd/bacula-{dir,fd,sd}.service
|
||||
|
||||
# make sure the working directory exists
|
||||
diropts -m0750
|
||||
keepdir /var/lib/bacula
|
||||
|
||||
# make sure bacula group can execute bacula libexec scripts
|
||||
fowners -R root:bacula /usr/libexec/bacula
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use bacula-clientonly; then
|
||||
fowners root:bacula /var/lib/bacula
|
||||
else
|
||||
fowners bacula:bacula /var/lib/bacula
|
||||
fi
|
||||
|
||||
einfo
|
||||
einfo "A group 'bacula' has been created. Any users you add to this"
|
||||
einfo "group have access to files created by the daemons."
|
||||
einfo
|
||||
einfo "A user 'bacula' has been created. Please see the bacula manual"
|
||||
einfo "for information about running bacula as a non-root user."
|
||||
einfo
|
||||
|
||||
if ! use bacula-clientonly && ! use bacula-nodir; then
|
||||
einfo
|
||||
einfo "If this is a new install, you must create the ${mydbtype} databases with:"
|
||||
einfo " /usr/libexec/bacula/create_${mydbtype}_database"
|
||||
einfo " /usr/libexec/bacula/make_${mydbtype}_tables"
|
||||
einfo " /usr/libexec/bacula/grant_${mydbtype}_privileges"
|
||||
einfo
|
||||
|
||||
ewarn "ATTENTION!"
|
||||
ewarn "The format of the database may have changed."
|
||||
ewarn "If you just upgraded from a version below 9.0.0 you must run"
|
||||
ewarn "'update_bacula_tables' now."
|
||||
ewarn "Make sure to have a backup of your catalog before."
|
||||
ewarn
|
||||
fi
|
||||
|
||||
if use sqlite; then
|
||||
einfo
|
||||
einfo "Be aware that Bacula does not officially support SQLite database anymore."
|
||||
einfo "Best use it only for a client-only installation. See Bug #445540."
|
||||
einfo
|
||||
fi
|
||||
|
||||
einfo "Please note that 'bconsole' will always be installed. To compile 'bat'"
|
||||
einfo "you have to enable 'USE=qt5'."
|
||||
einfo
|
||||
einfo "/var/lib/bacula/tmp was configured for archivedir. This dir will be used during"
|
||||
einfo "restores, so be sure to set it to an appropriate in dir in the bacula config."
|
||||
}
|
@ -1,429 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit desktop libtool qmake-utils systemd
|
||||
|
||||
MY_PV=${PV/_beta/-b}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
DESCRIPTION="Featureful client/server network backup suite"
|
||||
HOMEPAGE="https://www.bacula.org/"
|
||||
SRC_URI="mirror://sourceforge/bacula/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="AGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~sparc ~x86"
|
||||
IUSE="acl bacula-clientonly bacula-nodir bacula-nosd +batch-insert examples ipv6 libressl logwatch mysql postgres qt5 readline +sqlite ssl static tcpd vim-syntax X"
|
||||
|
||||
DEPEND="
|
||||
!bacula-clientonly? (
|
||||
!bacula-nodir? ( virtual/mta )
|
||||
postgres? ( dev-db/postgresql:=[threads] )
|
||||
mysql? ( || ( dev-db/mysql-connector-c dev-db/mariadb-connector-c ) )
|
||||
sqlite? ( dev-db/sqlite:3 )
|
||||
)
|
||||
dev-libs/gmp:0
|
||||
qt5? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtsvg:5
|
||||
x11-libs/qwt:6
|
||||
)
|
||||
logwatch? ( sys-apps/logwatch )
|
||||
readline? ( sys-libs/readline:0 )
|
||||
static? (
|
||||
dev-libs/lzo[static-libs]
|
||||
sys-libs/ncurses:=[static-libs]
|
||||
sys-libs/zlib[static-libs]
|
||||
acl? ( virtual/acl[static-libs(+)] )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:0=[static-libs] )
|
||||
libressl? ( dev-libs/libressl:0=[static-libs] )
|
||||
)
|
||||
)
|
||||
!static? (
|
||||
dev-libs/lzo
|
||||
sys-libs/ncurses:=
|
||||
sys-libs/zlib
|
||||
acl? ( virtual/acl )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
)
|
||||
)
|
||||
tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
|
||||
"
|
||||
RDEPEND="${DEPEND}
|
||||
acct-user/bacula
|
||||
acct-group/bacula
|
||||
!bacula-clientonly? (
|
||||
!bacula-nosd? (
|
||||
app-arch/mt-st
|
||||
sys-block/mtx
|
||||
)
|
||||
)
|
||||
vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
|
||||
"
|
||||
|
||||
REQUIRED_USE="
|
||||
!bacula-clientonly? ( ^^ ( mysql postgres sqlite ) )
|
||||
static? ( bacula-clientonly )
|
||||
"
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
pkg_setup() {
|
||||
#XOR and !bacula-clientonly controlled by REQUIRED_USE
|
||||
use mysql && export mydbtype="mysql"
|
||||
use postgres && export mydbtype="postgresql"
|
||||
use sqlite && export mydbtype="sqlite3"
|
||||
|
||||
if use bacula-clientonly && use static && use qt5; then
|
||||
ewarn
|
||||
ewarn "Building statically linked 'bat' is not supported. Ignorig 'qt5' useflag."
|
||||
ewarn
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# adjusts default configuration files for several binaries
|
||||
# to /etc/bacula/<config> instead of ./<config>
|
||||
pushd src >&/dev/null || die
|
||||
for f in console/console.c dird/dird.c filed/filed.c \
|
||||
stored/bcopy.c stored/bextract.c stored/bls.c \
|
||||
stored/bscan.c stored/btape.c stored/stored.c \
|
||||
qt-console/main.cpp; do
|
||||
sed -i -e 's|^\(#define CONFIG_FILE "\)|\1/etc/bacula/|g' "${f}" \
|
||||
|| die "sed on ${f} failed"
|
||||
done
|
||||
popd >&/dev/null || die
|
||||
|
||||
# bug 466688 drop deprecated categories from Desktop file
|
||||
sed -i -e 's/Application;//' scripts/bat.desktop.in || die
|
||||
|
||||
# bug 466690 Use CXXFLAGS instead of CFLAGS
|
||||
sed -i -e 's/@CFLAGS@/@CXXFLAGS@/' autoconf/Make.common.in || die
|
||||
|
||||
# drop automatic install of unneeded documentation (for bug 356499)
|
||||
eapply -p0 "${FILESDIR}"/7.2.0/${PN}-7.2.0-doc.patch
|
||||
|
||||
# bug #310087
|
||||
eapply "${FILESDIR}"/5.2.3/${PN}-5.2.3-as-needed.patch
|
||||
|
||||
# bug #311161
|
||||
eapply -p0 "${FILESDIR}"/9.0.2/${PN}-9.0.2-lib-search-path.patch
|
||||
|
||||
# bat needs to respect LDFLAGS and CFLAGS
|
||||
eapply -p0 "${FILESDIR}"/9.0.6/${PN}-9.0.6-bat-pro.patch
|
||||
|
||||
# bug #328701
|
||||
eapply -p0 "${FILESDIR}"/5.2.3/${PN}-5.2.3-openssl-1.patch
|
||||
|
||||
eapply -p0 "${FILESDIR}"/9.0.8/${PN}-9.0.8-fix-static.patch
|
||||
|
||||
# fix soname in libbaccat.so bug #602952
|
||||
eapply -p0 "${FILESDIR}/bacula-fix-sonames.patch"
|
||||
|
||||
# do not strip binaries
|
||||
sed -i -e "s/strip /# strip /" src/filed/Makefile.in || die
|
||||
sed -i -e "s/strip /# strip /" src/console/Makefile.in || die
|
||||
|
||||
# fix file not found error during make depend
|
||||
eapply -p0 "${FILESDIR}"/7.0.2/${PN}-7.0.2-depend.patch
|
||||
|
||||
eapply_user
|
||||
|
||||
# Fix systemd unit files:
|
||||
# bug 497748
|
||||
sed -i -e '/Requires/d' platforms/systemd/*.service.in || die
|
||||
sed -i -e '/StandardOutput/d' platforms/systemd/*.service.in || die
|
||||
# bug 504370
|
||||
sed -i -e '/Alias=bacula-dir/d' platforms/systemd/bacula-dir.service.in || die
|
||||
# bug 584442 and 504368
|
||||
sed -i -e 's/@dir_user@/root/g' platforms/systemd/bacula-dir.service.in || die
|
||||
|
||||
# build 'bat' for Qt5
|
||||
export QMAKE="$(qt5_get_bindir)"/qmake
|
||||
|
||||
# adapt to >=Qt-5.9 (see bug #644566)
|
||||
# qmake needs an existing target file to generate install instructions
|
||||
sed -i -e 's#bins.files = bat#bins.files = .libs/bat#g' \
|
||||
src/qt-console/bat.pro.in || die
|
||||
mkdir src/qt-console/.libs || die
|
||||
touch src/qt-console/.libs/bat || die
|
||||
chmod 755 src/qt-console/.libs/bat || die
|
||||
|
||||
# fix handling of libressl version
|
||||
# needs separate handling for <libressl-2.7 and >=libressl2.7
|
||||
# (see bug #655520)
|
||||
if has_version "<dev-libs/libressl-2.7"; then
|
||||
eapply -p0 "${FILESDIR}"/9.4.0/${PN}-9.4.0-libressl26.patch
|
||||
else
|
||||
eapply -p0 "${FILESDIR}"/9.4.0/${PN}-9.4.0-libressl27.patch
|
||||
fi
|
||||
|
||||
# Don't let program install man pages directly
|
||||
rm "${S}"/manpages/Makefile.in || die "Unable to remove man pages Makefile.in"
|
||||
eapply -p1 "${FILESDIR}/bacula-fix-manpages.patch"
|
||||
|
||||
# correct installation for plugins to mode 0755 (bug #725946)
|
||||
sed -i -e "s/(INSTALL_PROGRAM) /(INSTALL_LIB) /" src/plugins/fd/Makefile.in ||die
|
||||
|
||||
# fix bundled libtool (bug 466696)
|
||||
# But first move directory with M4 macros out of the way.
|
||||
# It is only needed by autoconf and gives errors during elibtoolize.
|
||||
mv autoconf/libtool autoconf/libtool1 || die
|
||||
elibtoolize
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=''
|
||||
|
||||
if use bacula-clientonly; then
|
||||
myconf="${myconf} \
|
||||
$(use_enable bacula-clientonly client-only) \
|
||||
$(use_enable !static libtool) \
|
||||
$(use_enable static static-cons) \
|
||||
$(use_enable static static-fd)"
|
||||
else
|
||||
myconf="${myconf} \
|
||||
$(use_enable !bacula-nodir build-dird) \
|
||||
$(use_enable !bacula-nosd build-stored)"
|
||||
# bug #311099
|
||||
# database support needed by dir-only *and* sd-only
|
||||
# build as well (for building bscan, btape, etc.)
|
||||
myconf="${myconf}
|
||||
--with-${mydbtype}"
|
||||
fi
|
||||
|
||||
# do not build bat if 'static' clientonly
|
||||
if ! use bacula-clientonly || ! use static; then
|
||||
myconf="${myconf} \
|
||||
$(use_enable qt5 bat)"
|
||||
fi
|
||||
|
||||
myconf="${myconf} \
|
||||
$(use_with X x) \
|
||||
$(use_enable batch-insert) \
|
||||
$(use_enable !readline conio) \
|
||||
$(use_enable readline) \
|
||||
$(use_with readline readline /usr) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_enable ipv6) \
|
||||
$(use_enable acl) \
|
||||
$(use_with tcpd tcp-wrappers)"
|
||||
|
||||
econf \
|
||||
--with-pid-dir=/var/run \
|
||||
--sysconfdir=/etc/bacula \
|
||||
--with-archivedir=/var/lib/bacula/tmp \
|
||||
--with-subsys-dir=/var/lock/subsys \
|
||||
--with-working-dir=/var/lib/bacula \
|
||||
--with-logdir=/var/lib/bacula \
|
||||
--with-scriptdir=/usr/libexec/bacula \
|
||||
--with-systemd=$(systemd_get_systemunitdir) \
|
||||
--with-dir-user=bacula \
|
||||
--with-dir-group=bacula \
|
||||
--with-sd-user=root \
|
||||
--with-sd-group=bacula \
|
||||
--with-fd-user=root \
|
||||
--with-fd-group=bacula \
|
||||
--enable-smartalloc \
|
||||
--disable-afs \
|
||||
--without-s3 \
|
||||
--host=${CHOST} \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Make build log verbose (bug #447806)
|
||||
emake NO_ECHO=""
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
doicon scripts/bacula.png
|
||||
|
||||
# install bat icon and desktop file when enabled
|
||||
# (for some reason ./configure doesn't pick this up)
|
||||
if use qt5 && ! use static ; then
|
||||
doicon src/qt-console/images/bat_icon.png
|
||||
domenu scripts/bat.desktop
|
||||
fi
|
||||
|
||||
# remove some scripts we don't need at all
|
||||
rm -f "${D}"/usr/libexec/bacula/{bacula,bacula-ctl-dir,bacula-ctl-fd,bacula-ctl-sd,startmysql,stopmysql}
|
||||
|
||||
# rename statically linked apps
|
||||
if use bacula-clientonly && use static ; then
|
||||
pushd "${D}"/usr/sbin || die
|
||||
mv static-bacula-fd bacula-fd || die
|
||||
mv static-bconsole bconsole || die
|
||||
popd || die
|
||||
fi
|
||||
|
||||
# extra files which 'make install' doesn't cover
|
||||
if ! use bacula-clientonly; then
|
||||
# the database update scripts
|
||||
diropts -m0750
|
||||
insinto /usr/libexec/bacula/updatedb
|
||||
insopts -m0754
|
||||
doins "${S}"/updatedb/*
|
||||
fperms 0640 /usr/libexec/bacula/updatedb/README
|
||||
|
||||
# the logrotate configuration
|
||||
# (now unconditional wrt bug #258187)
|
||||
diropts -m0755
|
||||
insinto /etc/logrotate.d
|
||||
insopts -m0644
|
||||
newins "${S}"/scripts/logrotate bacula
|
||||
|
||||
# the logwatch scripts
|
||||
if use logwatch; then
|
||||
diropts -m0750
|
||||
dodir /usr/share/logwatch/scripts/services
|
||||
dodir /usr/share/logwatch/scripts/shared
|
||||
dodir /etc/logwatch/conf/logfiles
|
||||
dodir /etc/logwatch/conf/services
|
||||
pushd "${S}"/scripts/logwatch >&/dev/null || die
|
||||
emake DESTDIR="${D}" install
|
||||
popd >&/dev/null || die
|
||||
fi
|
||||
fi
|
||||
|
||||
# Install all man pages
|
||||
doman "${S}"/manpages/*
|
||||
|
||||
if ! use qt5; then
|
||||
rm -vf "${D}"/usr/share/man/man1/bat.1*
|
||||
fi
|
||||
rm -vf "${D}"/usr/share/man/man1/bacula-tray-monitor.1*
|
||||
|
||||
if use bacula-clientonly || use bacula-nodir ; then
|
||||
rm -vf "${D}"/usr/libexec/bacula/create_*_database
|
||||
rm -vf "${D}"/usr/libexec/bacula/drop_*_database
|
||||
rm -vf "${D}"/usr/libexec/bacula/make_*_tables
|
||||
rm -vf "${D}"/usr/libexec/bacula/update_*_tables
|
||||
rm -vf "${D}"/usr/libexec/bacula/drop_*_tables
|
||||
rm -vf "${D}"/usr/libexec/bacula/grant_*_privileges
|
||||
rm -vf "${D}"/usr/libexec/bacula/*_catalog_backup
|
||||
fi
|
||||
if use bacula-clientonly || use bacula-nosd; then
|
||||
rm -vf "${D}"/usr/libexec/bacula/disk-changer
|
||||
rm -vf "${D}"/usr/libexec/bacula/mtx-changer
|
||||
rm -vf "${D}"/usr/libexec/bacula/dvd-handler
|
||||
fi
|
||||
|
||||
# documentation
|
||||
dodoc ChangeLog ReleaseNotes SUPPORT
|
||||
|
||||
# install examples (bug #457504)
|
||||
if use examples; then
|
||||
docinto examples/
|
||||
dodoc -r examples/*
|
||||
fi
|
||||
|
||||
# vim-files
|
||||
if use vim-syntax; then
|
||||
insinto /usr/share/vim/vimfiles/syntax
|
||||
doins scripts/bacula.vim
|
||||
insinto /usr/share/vim/vimfiles/ftdetect
|
||||
newins scripts/filetype.vim bacula_ft.vim
|
||||
fi
|
||||
|
||||
# setup init scripts
|
||||
myscripts="bacula-fd"
|
||||
if ! use bacula-clientonly; then
|
||||
if ! use bacula-nodir; then
|
||||
myscripts="${myscripts} bacula-dir"
|
||||
fi
|
||||
if ! use bacula-nosd; then
|
||||
myscripts="${myscripts} bacula-sd"
|
||||
fi
|
||||
fi
|
||||
for script in ${myscripts}; do
|
||||
# copy over init script and config to a temporary location
|
||||
# so we can modify them as needed
|
||||
cp "${FILESDIR}/${script}".confd "${T}/${script}".confd || die "failed to copy ${script}.confd"
|
||||
cp "${FILESDIR}/newscripts/${script}".initd "${T}/${script}".initd || die "failed to copy ${script}.initd"
|
||||
|
||||
# now set the database dependancy for the director init script
|
||||
case "${script}" in
|
||||
bacula-dir)
|
||||
case "${mydbtype}" in
|
||||
sqlite3)
|
||||
# sqlite databases don't have a daemon
|
||||
sed -i -e 's/need "%database%"/:/g' "${T}/${script}".initd || die
|
||||
;;
|
||||
*)
|
||||
# all other databases have daemons
|
||||
sed -i -e "s:%database%:${mydbtype}:" "${T}/${script}".initd || die
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
# install init script and config
|
||||
newinitd "${T}/${script}".initd "${script}"
|
||||
newconfd "${T}/${script}".confd "${script}"
|
||||
done
|
||||
|
||||
systemd_dounit "${S}"/platforms/systemd/bacula-{dir,fd,sd}.service
|
||||
|
||||
# make sure the working directory exists
|
||||
diropts -m0750
|
||||
keepdir /var/lib/bacula
|
||||
|
||||
# make sure bacula group can execute bacula libexec scripts
|
||||
fowners -R root:bacula /usr/libexec/bacula
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use bacula-clientonly; then
|
||||
fowners root:bacula /var/lib/bacula
|
||||
else
|
||||
fowners bacula:bacula /var/lib/bacula
|
||||
fi
|
||||
|
||||
einfo
|
||||
einfo "A group 'bacula' has been created. Any users you add to this"
|
||||
einfo "group have access to files created by the daemons."
|
||||
einfo
|
||||
einfo "A user 'bacula' has been created. Please see the bacula manual"
|
||||
einfo "for information about running bacula as a non-root user."
|
||||
einfo
|
||||
|
||||
if ! use bacula-clientonly && ! use bacula-nodir; then
|
||||
einfo
|
||||
einfo "If this is a new install, you must create the ${mydbtype} databases with:"
|
||||
einfo " /usr/libexec/bacula/create_${mydbtype}_database"
|
||||
einfo " /usr/libexec/bacula/make_${mydbtype}_tables"
|
||||
einfo " /usr/libexec/bacula/grant_${mydbtype}_privileges"
|
||||
einfo
|
||||
|
||||
ewarn "ATTENTION!"
|
||||
ewarn "The format of the database may have changed."
|
||||
ewarn "If you just upgraded from a version below 9.0.0 you must run"
|
||||
ewarn "'update_bacula_tables' now."
|
||||
ewarn "Make sure to have a backup of your catalog before."
|
||||
ewarn
|
||||
fi
|
||||
|
||||
if use sqlite; then
|
||||
einfo
|
||||
einfo "Be aware that Bacula does not officially support SQLite database anymore."
|
||||
einfo "Best use it only for a client-only installation. See Bug #445540."
|
||||
einfo
|
||||
fi
|
||||
|
||||
einfo "Please note that 'bconsole' will always be installed. To compile 'bat'"
|
||||
einfo "you have to enable 'USE=qt5'."
|
||||
einfo
|
||||
einfo "/var/lib/bacula/tmp was configured for archivedir. This dir will be used during"
|
||||
einfo "restores, so be sure to set it to an appropriate in dir in the bacula config."
|
||||
}
|
@ -1,428 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit desktop libtool qmake-utils systemd
|
||||
|
||||
MY_PV=${PV/_beta/-b}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
DESCRIPTION="Featureful client/server network backup suite"
|
||||
HOMEPAGE="https://www.bacula.org/"
|
||||
SRC_URI="mirror://sourceforge/bacula/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="AGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~sparc ~x86"
|
||||
IUSE="acl bacula-clientonly bacula-nodir bacula-nosd +batch-insert examples ipv6 libressl logwatch mysql postgres qt5 readline +sqlite ssl static tcpd vim-syntax X"
|
||||
|
||||
DEPEND="
|
||||
!bacula-clientonly? (
|
||||
!bacula-nodir? ( virtual/mta )
|
||||
postgres? ( dev-db/postgresql:=[threads] )
|
||||
mysql? ( || ( dev-db/mysql-connector-c dev-db/mariadb-connector-c ) )
|
||||
sqlite? ( dev-db/sqlite:3 )
|
||||
)
|
||||
dev-libs/gmp:0
|
||||
qt5? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtsvg:5
|
||||
x11-libs/qwt:6
|
||||
)
|
||||
logwatch? ( sys-apps/logwatch )
|
||||
readline? ( sys-libs/readline:0 )
|
||||
static? (
|
||||
dev-libs/lzo[static-libs]
|
||||
sys-libs/ncurses:=[static-libs]
|
||||
sys-libs/zlib[static-libs]
|
||||
acl? ( virtual/acl[static-libs(+)] )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:0=[static-libs] )
|
||||
libressl? ( dev-libs/libressl:0=[static-libs] )
|
||||
)
|
||||
)
|
||||
!static? (
|
||||
dev-libs/lzo
|
||||
sys-libs/ncurses:=
|
||||
sys-libs/zlib
|
||||
acl? ( virtual/acl )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
)
|
||||
)
|
||||
tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
|
||||
"
|
||||
RDEPEND="${DEPEND}
|
||||
acct-user/bacula
|
||||
acct-group/bacula
|
||||
!bacula-clientonly? (
|
||||
!bacula-nosd? (
|
||||
app-arch/mt-st
|
||||
sys-block/mtx
|
||||
)
|
||||
)
|
||||
vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
|
||||
"
|
||||
|
||||
REQUIRED_USE="
|
||||
!bacula-clientonly? ( ^^ ( mysql postgres sqlite ) )
|
||||
static? ( bacula-clientonly )
|
||||
"
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
pkg_setup() {
|
||||
#XOR and !bacula-clientonly controlled by REQUIRED_USE
|
||||
use mysql && export mydbtype="mysql"
|
||||
use postgres && export mydbtype="postgresql"
|
||||
use sqlite && export mydbtype="sqlite3"
|
||||
|
||||
if use bacula-clientonly && use static && use qt5; then
|
||||
ewarn
|
||||
ewarn "Building statically linked 'bat' is not supported. Ignorig 'qt5' useflag."
|
||||
ewarn
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# adjusts default configuration files for several binaries
|
||||
# to /etc/bacula/<config> instead of ./<config>
|
||||
pushd src >&/dev/null || die
|
||||
for f in console/console.c dird/dird.c filed/filed.c \
|
||||
stored/bcopy.c stored/bextract.c stored/bls.c \
|
||||
stored/bscan.c stored/btape.c stored/stored.c \
|
||||
qt-console/main.cpp; do
|
||||
sed -i -e 's|^\(#define CONFIG_FILE "\)|\1/etc/bacula/|g' "${f}" \
|
||||
|| die "sed on ${f} failed"
|
||||
done
|
||||
popd >&/dev/null || die
|
||||
|
||||
# bug 466688 drop deprecated categories from Desktop file
|
||||
sed -i -e 's/Application;//' scripts/bat.desktop.in || die
|
||||
|
||||
# bug 466690 Use CXXFLAGS instead of CFLAGS
|
||||
sed -i -e 's/@CFLAGS@/@CXXFLAGS@/' autoconf/Make.common.in || die
|
||||
|
||||
# drop automatic install of unneeded documentation (for bug 356499)
|
||||
eapply -p0 "${FILESDIR}"/7.2.0/${PN}-7.2.0-doc.patch
|
||||
|
||||
# bug #310087
|
||||
eapply "${FILESDIR}"/5.2.3/${PN}-5.2.3-as-needed.patch
|
||||
|
||||
# bug #311161
|
||||
eapply -p0 "${FILESDIR}"/9.0.2/${PN}-9.0.2-lib-search-path.patch
|
||||
|
||||
# bat needs to respect LDFLAGS and CFLAGS
|
||||
eapply -p0 "${FILESDIR}"/9.0.6/${PN}-9.0.6-bat-pro.patch
|
||||
|
||||
# bug #328701
|
||||
eapply -p0 "${FILESDIR}"/5.2.3/${PN}-5.2.3-openssl-1.patch
|
||||
|
||||
eapply -p0 "${FILESDIR}"/9.6.3/${P}-fix-static.patch
|
||||
|
||||
# fix soname in libbaccat.so bug #602952
|
||||
eapply -p0 "${FILESDIR}/bacula-fix-sonames.patch"
|
||||
|
||||
# do not strip binaries
|
||||
sed -i -e "s/strip /# strip /" src/filed/Makefile.in || die
|
||||
sed -i -e "s/strip /# strip /" src/console/Makefile.in || die
|
||||
|
||||
# fix file not found error during make depend
|
||||
eapply -p0 "${FILESDIR}"/7.0.2/${PN}-7.0.2-depend.patch
|
||||
|
||||
eapply_user
|
||||
|
||||
# Fix systemd unit files:
|
||||
# bug 497748
|
||||
sed -i -e '/Requires/d' platforms/systemd/*.service.in || die
|
||||
sed -i -e '/StandardOutput/d' platforms/systemd/*.service.in || die
|
||||
# bug 504370
|
||||
sed -i -e '/Alias=bacula-dir/d' platforms/systemd/bacula-dir.service.in || die
|
||||
# bug 584442 and 504368
|
||||
sed -i -e 's/@dir_user@/root/g' platforms/systemd/bacula-dir.service.in || die
|
||||
|
||||
# build 'bat' for Qt5
|
||||
export QMAKE="$(qt5_get_bindir)"/qmake
|
||||
|
||||
# adapt to >=Qt-5.9 (see bug #644566)
|
||||
# qmake needs an existing target file to generate install instructions
|
||||
sed -i -e 's#bins.files = bat#bins.files = .libs/bat#g' \
|
||||
src/qt-console/bat.pro.in || die
|
||||
mkdir src/qt-console/.libs || die
|
||||
touch src/qt-console/.libs/bat || die
|
||||
chmod 755 src/qt-console/.libs/bat || die
|
||||
|
||||
# fix handling of libressl version
|
||||
# needs separate handling for <libressl-2.7 and >=libressl2.7
|
||||
# (see bug #655520)
|
||||
if has_version "<dev-libs/libressl-2.7"; then
|
||||
eapply -p0 "${FILESDIR}"/9.4.0/${PN}-9.4.0-libressl26.patch
|
||||
else
|
||||
eapply -p0 "${FILESDIR}"/9.4.0/${PN}-9.4.0-libressl27.patch
|
||||
fi
|
||||
|
||||
# Don't let program install man pages directly
|
||||
sed -i -e 's/ manpages//' Makefile.in || die
|
||||
|
||||
# correct installation for plugins to mode 0755 (bug #725946)
|
||||
sed -i -e "s/(INSTALL_PROGRAM) /(INSTALL_LIB) /" src/plugins/fd/Makefile.in ||die
|
||||
|
||||
# fix bundled libtool (bug 466696)
|
||||
# But first move directory with M4 macros out of the way.
|
||||
# It is only needed by autoconf and gives errors during elibtoolize.
|
||||
mv autoconf/libtool autoconf/libtool1 || die
|
||||
elibtoolize
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=''
|
||||
|
||||
if use bacula-clientonly; then
|
||||
myconf="${myconf} \
|
||||
$(use_enable bacula-clientonly client-only) \
|
||||
$(use_enable !static libtool) \
|
||||
$(use_enable static static-cons) \
|
||||
$(use_enable static static-fd)"
|
||||
else
|
||||
myconf="${myconf} \
|
||||
$(use_enable !bacula-nodir build-dird) \
|
||||
$(use_enable !bacula-nosd build-stored)"
|
||||
# bug #311099
|
||||
# database support needed by dir-only *and* sd-only
|
||||
# build as well (for building bscan, btape, etc.)
|
||||
myconf="${myconf}
|
||||
--with-${mydbtype}"
|
||||
fi
|
||||
|
||||
# do not build bat if 'static' clientonly
|
||||
if ! use bacula-clientonly || ! use static; then
|
||||
myconf="${myconf} \
|
||||
$(use_enable qt5 bat)"
|
||||
fi
|
||||
|
||||
myconf="${myconf} \
|
||||
$(use_with X x) \
|
||||
$(use_enable batch-insert) \
|
||||
$(use_enable !readline conio) \
|
||||
$(use_enable readline) \
|
||||
$(use_with readline readline /usr) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_enable ipv6) \
|
||||
$(use_enable acl) \
|
||||
$(use_with tcpd tcp-wrappers)"
|
||||
|
||||
econf \
|
||||
--with-pid-dir=/var/run \
|
||||
--sysconfdir=/etc/bacula \
|
||||
--with-archivedir=/var/lib/bacula/tmp \
|
||||
--with-subsys-dir=/var/lock/subsys \
|
||||
--with-working-dir=/var/lib/bacula \
|
||||
--with-logdir=/var/lib/bacula \
|
||||
--with-scriptdir=/usr/libexec/bacula \
|
||||
--with-systemd=$(systemd_get_systemunitdir) \
|
||||
--with-dir-user=bacula \
|
||||
--with-dir-group=bacula \
|
||||
--with-sd-user=root \
|
||||
--with-sd-group=bacula \
|
||||
--with-fd-user=root \
|
||||
--with-fd-group=bacula \
|
||||
--enable-smartalloc \
|
||||
--disable-afs \
|
||||
--without-s3 \
|
||||
--host=${CHOST} \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Make build log verbose (bug #447806)
|
||||
emake NO_ECHO=""
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
doicon scripts/bacula.png
|
||||
|
||||
# install bat icon and desktop file when enabled
|
||||
# (for some reason ./configure doesn't pick this up)
|
||||
if use qt5 && ! use static ; then
|
||||
doicon src/qt-console/images/bat_icon.png
|
||||
domenu scripts/bat.desktop
|
||||
fi
|
||||
|
||||
# remove some scripts we don't need at all
|
||||
rm -f "${D}"/usr/libexec/bacula/{bacula,bacula-ctl-dir,bacula-ctl-fd,bacula-ctl-sd,startmysql,stopmysql}
|
||||
|
||||
# rename statically linked apps
|
||||
if use bacula-clientonly && use static ; then
|
||||
pushd "${D}"/usr/sbin || die
|
||||
mv static-bacula-fd bacula-fd || die
|
||||
mv static-bconsole bconsole || die
|
||||
popd || die
|
||||
fi
|
||||
|
||||
# extra files which 'make install' doesn't cover
|
||||
if ! use bacula-clientonly; then
|
||||
# the database update scripts
|
||||
diropts -m0750
|
||||
insinto /usr/libexec/bacula/updatedb
|
||||
insopts -m0754
|
||||
doins "${S}"/updatedb/*
|
||||
fperms 0640 /usr/libexec/bacula/updatedb/README
|
||||
|
||||
# the logrotate configuration
|
||||
# (now unconditional wrt bug #258187)
|
||||
diropts -m0755
|
||||
insinto /etc/logrotate.d
|
||||
insopts -m0644
|
||||
newins "${S}"/scripts/logrotate bacula
|
||||
|
||||
# the logwatch scripts
|
||||
if use logwatch; then
|
||||
diropts -m0750
|
||||
dodir /usr/share/logwatch/scripts/services
|
||||
dodir /usr/share/logwatch/scripts/shared
|
||||
dodir /etc/logwatch/conf/logfiles
|
||||
dodir /etc/logwatch/conf/services
|
||||
pushd "${S}"/scripts/logwatch >&/dev/null || die
|
||||
emake DESTDIR="${D}" install
|
||||
popd >&/dev/null || die
|
||||
fi
|
||||
fi
|
||||
|
||||
# Install all man pages
|
||||
doman "${S}"/manpages/*.[18]
|
||||
|
||||
if ! use qt5; then
|
||||
rm -vf "${D}"/usr/share/man/man1/bat.1*
|
||||
fi
|
||||
rm -vf "${D}"/usr/share/man/man1/bacula-tray-monitor.1*
|
||||
|
||||
if use bacula-clientonly || use bacula-nodir ; then
|
||||
rm -vf "${D}"/usr/libexec/bacula/create_*_database
|
||||
rm -vf "${D}"/usr/libexec/bacula/drop_*_database
|
||||
rm -vf "${D}"/usr/libexec/bacula/make_*_tables
|
||||
rm -vf "${D}"/usr/libexec/bacula/update_*_tables
|
||||
rm -vf "${D}"/usr/libexec/bacula/drop_*_tables
|
||||
rm -vf "${D}"/usr/libexec/bacula/grant_*_privileges
|
||||
rm -vf "${D}"/usr/libexec/bacula/*_catalog_backup
|
||||
fi
|
||||
if use bacula-clientonly || use bacula-nosd; then
|
||||
rm -vf "${D}"/usr/libexec/bacula/disk-changer
|
||||
rm -vf "${D}"/usr/libexec/bacula/mtx-changer
|
||||
rm -vf "${D}"/usr/libexec/bacula/dvd-handler
|
||||
fi
|
||||
|
||||
# documentation
|
||||
dodoc ChangeLog ReleaseNotes SUPPORT
|
||||
|
||||
# install examples (bug #457504)
|
||||
if use examples; then
|
||||
docinto examples/
|
||||
dodoc -r examples/*
|
||||
fi
|
||||
|
||||
# vim-files
|
||||
if use vim-syntax; then
|
||||
insinto /usr/share/vim/vimfiles/syntax
|
||||
doins scripts/bacula.vim
|
||||
insinto /usr/share/vim/vimfiles/ftdetect
|
||||
newins scripts/filetype.vim bacula_ft.vim
|
||||
fi
|
||||
|
||||
# setup init scripts
|
||||
myscripts="bacula-fd"
|
||||
if ! use bacula-clientonly; then
|
||||
if ! use bacula-nodir; then
|
||||
myscripts="${myscripts} bacula-dir"
|
||||
fi
|
||||
if ! use bacula-nosd; then
|
||||
myscripts="${myscripts} bacula-sd"
|
||||
fi
|
||||
fi
|
||||
for script in ${myscripts}; do
|
||||
# copy over init script and config to a temporary location
|
||||
# so we can modify them as needed
|
||||
cp "${FILESDIR}/${script}".confd "${T}/${script}".confd || die "failed to copy ${script}.confd"
|
||||
cp "${FILESDIR}/newscripts/${script}".initd "${T}/${script}".initd || die "failed to copy ${script}.initd"
|
||||
|
||||
# now set the database dependancy for the director init script
|
||||
case "${script}" in
|
||||
bacula-dir)
|
||||
case "${mydbtype}" in
|
||||
sqlite3)
|
||||
# sqlite databases don't have a daemon
|
||||
sed -i -e 's/need "%database%"/:/g' "${T}/${script}".initd || die
|
||||
;;
|
||||
*)
|
||||
# all other databases have daemons
|
||||
sed -i -e "s:%database%:${mydbtype}:" "${T}/${script}".initd || die
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
# install init script and config
|
||||
newinitd "${T}/${script}".initd "${script}"
|
||||
newconfd "${T}/${script}".confd "${script}"
|
||||
done
|
||||
|
||||
systemd_dounit "${S}"/platforms/systemd/bacula-{dir,fd,sd}.service
|
||||
|
||||
# make sure the working directory exists
|
||||
diropts -m0750
|
||||
keepdir /var/lib/bacula
|
||||
|
||||
# make sure bacula group can execute bacula libexec scripts
|
||||
fowners -R root:bacula /usr/libexec/bacula
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use bacula-clientonly; then
|
||||
fowners root:bacula /var/lib/bacula
|
||||
else
|
||||
fowners bacula:bacula /var/lib/bacula
|
||||
fi
|
||||
|
||||
einfo
|
||||
einfo "A group 'bacula' has been created. Any users you add to this"
|
||||
einfo "group have access to files created by the daemons."
|
||||
einfo
|
||||
einfo "A user 'bacula' has been created. Please see the bacula manual"
|
||||
einfo "for information about running bacula as a non-root user."
|
||||
einfo
|
||||
|
||||
if ! use bacula-clientonly && ! use bacula-nodir; then
|
||||
einfo
|
||||
einfo "If this is a new install, you must create the ${mydbtype} databases with:"
|
||||
einfo " /usr/libexec/bacula/create_${mydbtype}_database"
|
||||
einfo " /usr/libexec/bacula/make_${mydbtype}_tables"
|
||||
einfo " /usr/libexec/bacula/grant_${mydbtype}_privileges"
|
||||
einfo
|
||||
|
||||
ewarn "ATTENTION!"
|
||||
ewarn "The format of the database may have changed."
|
||||
ewarn "If you just upgraded from a version below 9.0.0 you must run"
|
||||
ewarn "'update_bacula_tables' now."
|
||||
ewarn "Make sure to have a backup of your catalog before."
|
||||
ewarn
|
||||
fi
|
||||
|
||||
if use sqlite; then
|
||||
einfo
|
||||
einfo "Be aware that Bacula does not officially support SQLite database anymore."
|
||||
einfo "Best use it only for a client-only installation. See Bug #445540."
|
||||
einfo
|
||||
fi
|
||||
|
||||
einfo "Please note that 'bconsole' will always be installed. To compile 'bat'"
|
||||
einfo "you have to enable 'USE=qt5'."
|
||||
einfo
|
||||
einfo "/var/lib/bacula/tmp was configured for archivedir. This dir will be used during"
|
||||
einfo "restores, so be sure to set it to an appropriate in dir in the bacula config."
|
||||
}
|
@ -1,425 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit desktop libtool qmake-utils systemd
|
||||
|
||||
MY_PV=${PV/_beta/-b}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
DESCRIPTION="Featureful client/server network backup suite"
|
||||
HOMEPAGE="https://www.bacula.org/"
|
||||
SRC_URI="mirror://sourceforge/bacula/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="AGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~sparc ~x86"
|
||||
IUSE="acl bacula-clientonly bacula-nodir bacula-nosd +batch-insert examples ipv6 libressl logwatch mysql postgres qt5 readline +sqlite ssl static tcpd vim-syntax X"
|
||||
|
||||
DEPEND="
|
||||
!bacula-clientonly? (
|
||||
!bacula-nodir? ( virtual/mta )
|
||||
postgres? ( dev-db/postgresql:=[threads] )
|
||||
mysql? ( || ( dev-db/mysql-connector-c dev-db/mariadb-connector-c ) )
|
||||
sqlite? ( dev-db/sqlite:3 )
|
||||
)
|
||||
dev-libs/gmp:0
|
||||
qt5? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtsvg:5
|
||||
x11-libs/qwt:6
|
||||
)
|
||||
logwatch? ( sys-apps/logwatch )
|
||||
readline? ( sys-libs/readline:0 )
|
||||
static? (
|
||||
dev-libs/lzo[static-libs]
|
||||
sys-libs/ncurses:=[static-libs]
|
||||
sys-libs/zlib[static-libs]
|
||||
acl? ( virtual/acl[static-libs(+)] )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:0=[static-libs] )
|
||||
libressl? ( dev-libs/libressl:0=[static-libs] )
|
||||
)
|
||||
)
|
||||
!static? (
|
||||
dev-libs/lzo
|
||||
sys-libs/ncurses:=
|
||||
sys-libs/zlib
|
||||
acl? ( virtual/acl )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
)
|
||||
)
|
||||
tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
|
||||
"
|
||||
RDEPEND="${DEPEND}
|
||||
acct-user/bacula
|
||||
acct-group/bacula
|
||||
!bacula-clientonly? (
|
||||
!bacula-nosd? (
|
||||
app-arch/mt-st
|
||||
sys-block/mtx
|
||||
)
|
||||
)
|
||||
vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
|
||||
"
|
||||
|
||||
REQUIRED_USE="
|
||||
!bacula-clientonly? ( ^^ ( mysql postgres sqlite ) )
|
||||
static? ( bacula-clientonly )
|
||||
"
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
pkg_setup() {
|
||||
#XOR and !bacula-clientonly controlled by REQUIRED_USE
|
||||
use mysql && export mydbtype="mysql"
|
||||
use postgres && export mydbtype="postgresql"
|
||||
use sqlite && export mydbtype="sqlite3"
|
||||
|
||||
if use bacula-clientonly && use static && use qt5; then
|
||||
ewarn
|
||||
ewarn "Building statically linked 'bat' is not supported. Ignorig 'qt5' useflag."
|
||||
ewarn
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# adjusts default configuration files for several binaries
|
||||
# to /etc/bacula/<config> instead of ./<config>
|
||||
pushd src >&/dev/null || die
|
||||
for f in console/console.c dird/dird.c filed/filed.c \
|
||||
stored/bcopy.c stored/bextract.c stored/bls.c \
|
||||
stored/bscan.c stored/btape.c stored/stored.c \
|
||||
qt-console/main.cpp; do
|
||||
sed -i -e 's|^\(#define CONFIG_FILE "\)|\1/etc/bacula/|g' "${f}" \
|
||||
|| die "sed on ${f} failed"
|
||||
done
|
||||
popd >&/dev/null || die
|
||||
|
||||
# bug 466688 drop deprecated categories from Desktop file
|
||||
sed -i -e 's/Application;//' scripts/bat.desktop.in || die
|
||||
|
||||
# bug 466690 Use CXXFLAGS instead of CFLAGS
|
||||
sed -i -e 's/@CFLAGS@/@CXXFLAGS@/' autoconf/Make.common.in || die
|
||||
|
||||
# drop automatic install of unneeded documentation (for bug 356499)
|
||||
eapply -p0 "${FILESDIR}"/7.2.0/${PN}-7.2.0-doc.patch
|
||||
|
||||
# bug #310087
|
||||
eapply "${FILESDIR}"/5.2.3/${PN}-5.2.3-as-needed.patch
|
||||
|
||||
# bug #311161
|
||||
eapply -p0 "${FILESDIR}"/9.0.2/${PN}-9.0.2-lib-search-path.patch
|
||||
|
||||
# bat needs to respect LDFLAGS and CFLAGS
|
||||
eapply -p0 "${FILESDIR}"/9.0.6/${PN}-9.0.6-bat-pro.patch
|
||||
|
||||
# bug #328701
|
||||
eapply -p0 "${FILESDIR}"/5.2.3/${PN}-5.2.3-openssl-1.patch
|
||||
|
||||
eapply -p0 "${FILESDIR}"/9.6.3/${P}-fix-static.patch
|
||||
|
||||
# fix soname in libbaccat.so bug #602952
|
||||
eapply -p0 "${FILESDIR}/bacula-fix-sonames.patch"
|
||||
|
||||
# do not strip binaries
|
||||
sed -i -e "s/strip /# strip /" src/filed/Makefile.in || die
|
||||
sed -i -e "s/strip /# strip /" src/console/Makefile.in || die
|
||||
|
||||
# fix file not found error during make depend
|
||||
eapply -p0 "${FILESDIR}"/7.0.2/${PN}-7.0.2-depend.patch
|
||||
|
||||
eapply_user
|
||||
|
||||
# Fix systemd unit files:
|
||||
# bug 497748
|
||||
sed -i -e '/Requires/d' platforms/systemd/*.service.in || die
|
||||
sed -i -e '/StandardOutput/d' platforms/systemd/*.service.in || die
|
||||
# bug 504370
|
||||
sed -i -e '/Alias=bacula-dir/d' platforms/systemd/bacula-dir.service.in || die
|
||||
# bug 584442 and 504368
|
||||
sed -i -e 's/@dir_user@/root/g' platforms/systemd/bacula-dir.service.in || die
|
||||
|
||||
# build 'bat' for Qt5
|
||||
export QMAKE="$(qt5_get_bindir)"/qmake
|
||||
|
||||
# adapt to >=Qt-5.9 (see bug #644566)
|
||||
# qmake needs an existing target file to generate install instructions
|
||||
sed -i -e 's#bins.files = bat#bins.files = .libs/bat#g' \
|
||||
src/qt-console/bat.pro.in || die
|
||||
mkdir src/qt-console/.libs || die
|
||||
touch src/qt-console/.libs/bat || die
|
||||
chmod 755 src/qt-console/.libs/bat || die
|
||||
|
||||
# fix handling of libressl version
|
||||
# needs separate handling for <libressl-2.7 and >=libressl2.7
|
||||
# (see bug #655520)
|
||||
if has_version "<dev-libs/libressl-2.7"; then
|
||||
eapply -p0 "${FILESDIR}"/9.4.0/${PN}-9.4.0-libressl26.patch
|
||||
else
|
||||
eapply -p0 "${FILESDIR}"/9.4.0/${PN}-9.4.0-libressl27.patch
|
||||
fi
|
||||
|
||||
# Don't let program install man pages directly
|
||||
sed -i -e 's/ manpages//' Makefile.in || die
|
||||
|
||||
# fix bundled libtool (bug 466696)
|
||||
# But first move directory with M4 macros out of the way.
|
||||
# It is only needed by autoconf and gives errors during elibtoolize.
|
||||
mv autoconf/libtool autoconf/libtool1 || die
|
||||
elibtoolize
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=''
|
||||
|
||||
if use bacula-clientonly; then
|
||||
myconf="${myconf} \
|
||||
$(use_enable bacula-clientonly client-only) \
|
||||
$(use_enable !static libtool) \
|
||||
$(use_enable static static-cons) \
|
||||
$(use_enable static static-fd)"
|
||||
else
|
||||
myconf="${myconf} \
|
||||
$(use_enable !bacula-nodir build-dird) \
|
||||
$(use_enable !bacula-nosd build-stored)"
|
||||
# bug #311099
|
||||
# database support needed by dir-only *and* sd-only
|
||||
# build as well (for building bscan, btape, etc.)
|
||||
myconf="${myconf}
|
||||
--with-${mydbtype}"
|
||||
fi
|
||||
|
||||
# do not build bat if 'static' clientonly
|
||||
if ! use bacula-clientonly || ! use static; then
|
||||
myconf="${myconf} \
|
||||
$(use_enable qt5 bat)"
|
||||
fi
|
||||
|
||||
myconf="${myconf} \
|
||||
$(use_with X x) \
|
||||
$(use_enable batch-insert) \
|
||||
$(use_enable !readline conio) \
|
||||
$(use_enable readline) \
|
||||
$(use_with readline readline /usr) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_enable ipv6) \
|
||||
$(use_enable acl) \
|
||||
$(use_with tcpd tcp-wrappers)"
|
||||
|
||||
econf \
|
||||
--with-pid-dir=/var/run \
|
||||
--sysconfdir=/etc/bacula \
|
||||
--with-archivedir=/var/lib/bacula/tmp \
|
||||
--with-subsys-dir=/var/lock/subsys \
|
||||
--with-working-dir=/var/lib/bacula \
|
||||
--with-logdir=/var/lib/bacula \
|
||||
--with-scriptdir=/usr/libexec/bacula \
|
||||
--with-systemd=$(systemd_get_systemunitdir) \
|
||||
--with-dir-user=bacula \
|
||||
--with-dir-group=bacula \
|
||||
--with-sd-user=root \
|
||||
--with-sd-group=bacula \
|
||||
--with-fd-user=root \
|
||||
--with-fd-group=bacula \
|
||||
--enable-smartalloc \
|
||||
--disable-afs \
|
||||
--without-s3 \
|
||||
--host=${CHOST} \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Make build log verbose (bug #447806)
|
||||
emake NO_ECHO=""
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
doicon scripts/bacula.png
|
||||
|
||||
# install bat icon and desktop file when enabled
|
||||
# (for some reason ./configure doesn't pick this up)
|
||||
if use qt5 && ! use static ; then
|
||||
doicon src/qt-console/images/bat_icon.png
|
||||
domenu scripts/bat.desktop
|
||||
fi
|
||||
|
||||
# remove some scripts we don't need at all
|
||||
rm -f "${D}"/usr/libexec/bacula/{bacula,bacula-ctl-dir,bacula-ctl-fd,bacula-ctl-sd,startmysql,stopmysql}
|
||||
|
||||
# rename statically linked apps
|
||||
if use bacula-clientonly && use static ; then
|
||||
pushd "${D}"/usr/sbin || die
|
||||
mv static-bacula-fd bacula-fd || die
|
||||
mv static-bconsole bconsole || die
|
||||
popd || die
|
||||
fi
|
||||
|
||||
# extra files which 'make install' doesn't cover
|
||||
if ! use bacula-clientonly; then
|
||||
# the database update scripts
|
||||
diropts -m0750
|
||||
insinto /usr/libexec/bacula/updatedb
|
||||
insopts -m0754
|
||||
doins "${S}"/updatedb/*
|
||||
fperms 0640 /usr/libexec/bacula/updatedb/README
|
||||
|
||||
# the logrotate configuration
|
||||
# (now unconditional wrt bug #258187)
|
||||
diropts -m0755
|
||||
insinto /etc/logrotate.d
|
||||
insopts -m0644
|
||||
newins "${S}"/scripts/logrotate bacula
|
||||
|
||||
# the logwatch scripts
|
||||
if use logwatch; then
|
||||
diropts -m0750
|
||||
dodir /usr/share/logwatch/scripts/services
|
||||
dodir /usr/share/logwatch/scripts/shared
|
||||
dodir /etc/logwatch/conf/logfiles
|
||||
dodir /etc/logwatch/conf/services
|
||||
pushd "${S}"/scripts/logwatch >&/dev/null || die
|
||||
emake DESTDIR="${D}" install
|
||||
popd >&/dev/null || die
|
||||
fi
|
||||
fi
|
||||
|
||||
# Install all man pages
|
||||
doman "${S}"/manpages/*.[18]
|
||||
|
||||
if ! use qt5; then
|
||||
rm -vf "${D}"/usr/share/man/man1/bat.1*
|
||||
fi
|
||||
rm -vf "${D}"/usr/share/man/man1/bacula-tray-monitor.1*
|
||||
|
||||
if use bacula-clientonly || use bacula-nodir ; then
|
||||
rm -vf "${D}"/usr/libexec/bacula/create_*_database
|
||||
rm -vf "${D}"/usr/libexec/bacula/drop_*_database
|
||||
rm -vf "${D}"/usr/libexec/bacula/make_*_tables
|
||||
rm -vf "${D}"/usr/libexec/bacula/update_*_tables
|
||||
rm -vf "${D}"/usr/libexec/bacula/drop_*_tables
|
||||
rm -vf "${D}"/usr/libexec/bacula/grant_*_privileges
|
||||
rm -vf "${D}"/usr/libexec/bacula/*_catalog_backup
|
||||
fi
|
||||
if use bacula-clientonly || use bacula-nosd; then
|
||||
rm -vf "${D}"/usr/libexec/bacula/disk-changer
|
||||
rm -vf "${D}"/usr/libexec/bacula/mtx-changer
|
||||
rm -vf "${D}"/usr/libexec/bacula/dvd-handler
|
||||
fi
|
||||
|
||||
# documentation
|
||||
dodoc ChangeLog ReleaseNotes SUPPORT
|
||||
|
||||
# install examples (bug #457504)
|
||||
if use examples; then
|
||||
docinto examples/
|
||||
dodoc -r examples/*
|
||||
fi
|
||||
|
||||
# vim-files
|
||||
if use vim-syntax; then
|
||||
insinto /usr/share/vim/vimfiles/syntax
|
||||
doins scripts/bacula.vim
|
||||
insinto /usr/share/vim/vimfiles/ftdetect
|
||||
newins scripts/filetype.vim bacula_ft.vim
|
||||
fi
|
||||
|
||||
# setup init scripts
|
||||
myscripts="bacula-fd"
|
||||
if ! use bacula-clientonly; then
|
||||
if ! use bacula-nodir; then
|
||||
myscripts="${myscripts} bacula-dir"
|
||||
fi
|
||||
if ! use bacula-nosd; then
|
||||
myscripts="${myscripts} bacula-sd"
|
||||
fi
|
||||
fi
|
||||
for script in ${myscripts}; do
|
||||
# copy over init script and config to a temporary location
|
||||
# so we can modify them as needed
|
||||
cp "${FILESDIR}/${script}".confd "${T}/${script}".confd || die "failed to copy ${script}.confd"
|
||||
cp "${FILESDIR}/newscripts/${script}".initd "${T}/${script}".initd || die "failed to copy ${script}.initd"
|
||||
|
||||
# now set the database dependancy for the director init script
|
||||
case "${script}" in
|
||||
bacula-dir)
|
||||
case "${mydbtype}" in
|
||||
sqlite3)
|
||||
# sqlite databases don't have a daemon
|
||||
sed -i -e 's/need "%database%"/:/g' "${T}/${script}".initd || die
|
||||
;;
|
||||
*)
|
||||
# all other databases have daemons
|
||||
sed -i -e "s:%database%:${mydbtype}:" "${T}/${script}".initd || die
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
# install init script and config
|
||||
newinitd "${T}/${script}".initd "${script}"
|
||||
newconfd "${T}/${script}".confd "${script}"
|
||||
done
|
||||
|
||||
systemd_dounit "${S}"/platforms/systemd/bacula-{dir,fd,sd}.service
|
||||
|
||||
# make sure the working directory exists
|
||||
diropts -m0750
|
||||
keepdir /var/lib/bacula
|
||||
|
||||
# make sure bacula group can execute bacula libexec scripts
|
||||
fowners -R root:bacula /usr/libexec/bacula
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use bacula-clientonly; then
|
||||
fowners root:bacula /var/lib/bacula
|
||||
else
|
||||
fowners bacula:bacula /var/lib/bacula
|
||||
fi
|
||||
|
||||
einfo
|
||||
einfo "A group 'bacula' has been created. Any users you add to this"
|
||||
einfo "group have access to files created by the daemons."
|
||||
einfo
|
||||
einfo "A user 'bacula' has been created. Please see the bacula manual"
|
||||
einfo "for information about running bacula as a non-root user."
|
||||
einfo
|
||||
|
||||
if ! use bacula-clientonly && ! use bacula-nodir; then
|
||||
einfo
|
||||
einfo "If this is a new install, you must create the ${mydbtype} databases with:"
|
||||
einfo " /usr/libexec/bacula/create_${mydbtype}_database"
|
||||
einfo " /usr/libexec/bacula/make_${mydbtype}_tables"
|
||||
einfo " /usr/libexec/bacula/grant_${mydbtype}_privileges"
|
||||
einfo
|
||||
|
||||
ewarn "ATTENTION!"
|
||||
ewarn "The format of the database may have changed."
|
||||
ewarn "If you just upgraded from a version below 9.0.0 you must run"
|
||||
ewarn "'update_bacula_tables' now."
|
||||
ewarn "Make sure to have a backup of your catalog before."
|
||||
ewarn
|
||||
fi
|
||||
|
||||
if use sqlite; then
|
||||
einfo
|
||||
einfo "Be aware that Bacula does not officially support SQLite database anymore."
|
||||
einfo "Best use it only for a client-only installation. See Bug #445540."
|
||||
einfo
|
||||
fi
|
||||
|
||||
einfo "Please note that 'bconsole' will always be installed. To compile 'bat'"
|
||||
einfo "you have to enable 'USE=qt5'."
|
||||
einfo
|
||||
einfo "/var/lib/bacula/tmp was configured for archivedir. This dir will be used during"
|
||||
einfo "restores, so be sure to set it to an appropriate in dir in the bacula config."
|
||||
}
|
@ -1,63 +0,0 @@
|
||||
--- src/console/Makefile.in.orig 2017-07-25 19:03:05.664760298 +0200
|
||||
+++ src/console/Makefile.in 2017-07-25 19:05:43.576706091 +0200
|
||||
@@ -24,6 +24,7 @@
|
||||
CONSSRCS = console.c console_conf.c authenticate.c @CONS_SRC@
|
||||
CONSOBJS = console.o console_conf.o authenticate.o @CONS_OBJ@
|
||||
JSONOBJS = bbconsjson.o console_conf.o
|
||||
+ZLIBS=@ZLIBS@
|
||||
|
||||
# these are the objects that are changed by the .configure process
|
||||
EXTRAOBJS = @OBJLIST@
|
||||
@@ -50,18 +51,18 @@
|
||||
|
||||
bconsole: Makefile $(CONSOBJS) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE)
|
||||
$(LIBTOOL_LINK) $(CXX) -L../lib -L../cats $(LDFLAGS) $(CONS_LDFLAGS) -o $@ $(CONSOBJS) \
|
||||
- $(DLIB) $(CONS_LIBS) -lbaccfg -lbac -lm $(LIBS) $(GETTEXT_LIBS) \
|
||||
- $(OPENSSL_LIBS)
|
||||
+ $(DLIB) $(CONS_LIBS) -lbaccfg -lbac -lm $(ZLIBS) $(GETTEXT_LIBS) \
|
||||
+ $(OPENSSL_LIBS) $(LIBS)
|
||||
|
||||
bbconsjson: Makefile $(JSONOBJS) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE)
|
||||
$(LIBTOOL_LINK) $(CXX) -L../lib -L../cats $(LDFLAGS) $(CONS_LDFLAGS) -o $@ $(JSONOBJS) \
|
||||
- $(DLIB) $(CONS_LIBS) -lbaccfg -lbac -lm $(LIBS) $(GETTEXT_LIBS) \
|
||||
- $(OPENSSL_LIBS)
|
||||
+ $(DLIB) $(CONS_LIBS) -lbaccfg -lbac -lm $(ZLIBS) $(GETTEXT_LIBS) \
|
||||
+ $(OPENSSL_LIBS) $(LIBS)
|
||||
|
||||
static-bconsole: Makefile $(CONSOBJS) ../lib/libbac.a ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE)
|
||||
$(LIBTOOL_LINK) $(CXX) -static -L../lib -L../cats $(LDFLAGS) $(CONS_LDFLAGS) -o $@ $(CONSOBJS) \
|
||||
- $(DLIB) $(CONS_LIBS) -lbaccfg -lbac -lm $(LIBS) $(GETTEXT_LIBS) \
|
||||
- $(OPENSSL_LIBS)
|
||||
+ $(DLIB) $(CONS_LIBS) -lbaccfg -lbac -lm $(ZLIBS) $(GETTEXT_LIBS) \
|
||||
+ $(OPENSSL_LIBS) $(LIBS)
|
||||
strip $@
|
||||
|
||||
|
||||
--- src/filed/Makefile.in.orig 2017-07-25 19:09:19.655852979 +0200
|
||||
+++ src/filed/Makefile.in 2017-07-25 19:11:39.519558592 +0200
|
||||
@@ -69,19 +69,19 @@
|
||||
bacula-fd: Makefile $(SVROBJS) ../findlib/libbacfind$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) @WIN32@
|
||||
@echo "Linking $@ ..."
|
||||
$(LIBTOOL_LINK) $(CXX) $(WLDFLAGS) $(LDFLAGS) -L../lib -L../findlib -o $@ $(SVROBJS) \
|
||||
- $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbaccfg -lbac -lm $(LIBS) \
|
||||
- $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZO_LIBS)
|
||||
+ $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbaccfg -lbac -lm \
|
||||
+ $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZO_LIBS)
|
||||
|
||||
bfdjson: Makefile $(JSONOBJS) ../findlib/libbacfind$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) @WIN32@
|
||||
@echo "Linking $@ ..."
|
||||
$(LIBTOOL_LINK) $(CXX) $(WLDFLAGS) $(LDFLAGS) -L../lib -L../findlib -o $@ $(JSONOBJS) \
|
||||
- $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbaccfg -lbac -lm $(LIBS) \
|
||||
- $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZO_LIBS)
|
||||
+ $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbaccfg -lbac -lm \
|
||||
+ $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZO_LIBS)
|
||||
|
||||
static-bacula-fd: Makefile $(SVROBJS) ../findlib/libbacfind.a ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) @WIN32@
|
||||
$(LIBTOOL_LINK) $(CXX) $(WLDFLAGS) $(LDFLAGS) -static -L../lib -L../findlib -o $@ $(SVROBJS) \
|
||||
- $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbaccfg -lbac -lm $(LIBS) \
|
||||
- $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZO_LIBS)
|
||||
+ $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbaccfg -lbac -lm \
|
||||
+ $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZO_LIBS)
|
||||
strip $@
|
||||
|
||||
Makefile: $(srcdir)/Makefile.in $(topdir)/config.status
|
@ -1,32 +0,0 @@
|
||||
diff -ur bacula-9.2.1.orig/configure bacula-9.2.1/configure
|
||||
--- bacula-9.2.1.orig/configure 2018-08-12 07:28:00.000000000 +0000
|
||||
+++ bacula-9.2.1/configure 2018-10-26 19:12:34.838003264 +0000
|
||||
@@ -31277,7 +31277,7 @@
|
||||
fi
|
||||
|
||||
|
||||
-ac_config_files="$ac_config_files autoconf/Make.common Makefile manpages/Makefile scripts/btraceback scripts/bconsole scripts/baculabackupreport scripts/bacula scripts/bacula-ctl-dir scripts/bacula-ctl-fd scripts/bacula-ctl-sd scripts/devel_bacula scripts/Makefile scripts/logrotate scripts/mtx-changer scripts/disk-changer scripts/logwatch/Makefile scripts/logwatch/logfile.bacula.conf scripts/bat.desktop scripts/bat.desktop.xsu scripts/bat.desktop.consolehelper scripts/bat.console_apps scripts/bacula-tray-monitor.desktop src/Makefile src/host.h src/console/Makefile src/console/bconsole.conf src/qt-console/bat.conf src/qt-console/bat.pro src/qt-console/bat.pro.mingw32 src/qt-console/bat.pro.mingw64 src/qt-console/install_conf_file src/qt-console/tray-monitor/tray-monitor.conf src/qt-console/tray-monitor/bacula-tray-monitor.conf src/qt-console/tray-monitor/tray-monitor.pro src/qt-console/tray-monitor/tray-monitor.pro.mingw32 src/qt-console/tray-monitor/tray-monitor.pro.mingw64 src/dird/Makefile src/dird/bacula-dir.conf src/lib/Makefile src/stored/Makefile src/stored/bacula-sd.conf src/filed/Makefile src/filed/bacula-fd.conf src/cats/Makefile src/cats/make_catalog_backup.pl src/cats/make_catalog_backup src/cats/delete_catalog_backup src/cats/create_postgresql_database src/cats/update_postgresql_tables src/cats/make_postgresql_tables src/cats/grant_postgresql_privileges src/cats/drop_postgresql_tables src/cats/drop_postgresql_database src/cats/create_mysql_database src/cats/update_mysql_tables src/cats/make_mysql_tables src/cats/grant_mysql_privileges src/cats/drop_mysql_tables src/cats/drop_mysql_database src/cats/create_sqlite3_database src/cats/update_sqlite3_tables src/cats/make_sqlite3_tables src/cats/grant_sqlite3_privileges src/cats/drop_sqlite3_tables src/cats/drop_sqlite3_database src/cats/sqlite src/cats/mysql src/cats/create_bacula_database src/cats/update_bacula_tables src/cats/grant_bacula_privileges src/cats/make_bacula_tables src/cats/drop_bacula_tables src/cats/drop_bacula_database src/cats/install-default-backend src/findlib/Makefile src/tools/Makefile src/plugins/fd/Makefile src/plugins/sd/Makefile src/plugins/dir/Makefile po/Makefile.in updatedb/update_mysql_tables updatedb/update_sqlite3_tables updatedb/update_postgresql_tables updatedb/update_mysql_tables_9_to_10 updatedb/update_sqlite3_tables_9_to_10 updatedb/update_postgresql_tables_9_to_10 updatedb/update_mysql_tables_10_to_11 updatedb/update_sqlite3_tables_10_to_11 updatedb/update_postgresql_tables_10_to_11 updatedb/update_mysql_tables_11_to_12 updatedb/update_sqlite3_tables_11_to_12 updatedb/update_postgresql_tables_11_to_12 examples/nagios/check_bacula/Makefile platforms/rpms/redhat/bacula.spec platforms/rpms/redhat/bacula-bat.spec platforms/rpms/redhat/bacula-docs.spec platforms/rpms/redhat/bacula-mtx.spec platforms/rpms/suse/bacula.spec platforms/rpms/suse/bacula-bat.spec platforms/rpms/suse/bacula-docs.spec platforms/rpms/suse/bacula-mtx.spec $PFILES"
|
||||
+ac_config_files="$ac_config_files autoconf/Make.common Makefile scripts/btraceback scripts/bconsole scripts/baculabackupreport scripts/bacula scripts/bacula-ctl-dir scripts/bacula-ctl-fd scripts/bacula-ctl-sd scripts/devel_bacula scripts/Makefile scripts/logrotate scripts/mtx-changer scripts/disk-changer scripts/logwatch/Makefile scripts/logwatch/logfile.bacula.conf scripts/bat.desktop scripts/bat.desktop.xsu scripts/bat.desktop.consolehelper scripts/bat.console_apps scripts/bacula-tray-monitor.desktop src/Makefile src/host.h src/console/Makefile src/console/bconsole.conf src/qt-console/bat.conf src/qt-console/bat.pro src/qt-console/bat.pro.mingw32 src/qt-console/bat.pro.mingw64 src/qt-console/install_conf_file src/qt-console/tray-monitor/tray-monitor.conf src/qt-console/tray-monitor/bacula-tray-monitor.conf src/qt-console/tray-monitor/tray-monitor.pro src/qt-console/tray-monitor/tray-monitor.pro.mingw32 src/qt-console/tray-monitor/tray-monitor.pro.mingw64 src/dird/Makefile src/dird/bacula-dir.conf src/lib/Makefile src/stored/Makefile src/stored/bacula-sd.conf src/filed/Makefile src/filed/bacula-fd.conf src/cats/Makefile src/cats/make_catalog_backup.pl src/cats/make_catalog_backup src/cats/delete_catalog_backup src/cats/create_postgresql_database src/cats/update_postgresql_tables src/cats/make_postgresql_tables src/cats/grant_postgresql_privileges src/cats/drop_postgresql_tables src/cats/drop_postgresql_database src/cats/create_mysql_database src/cats/update_mysql_tables src/cats/make_mysql_tables src/cats/grant_mysql_privileges src/cats/drop_mysql_tables src/cats/drop_mysql_database src/cats/create_sqlite3_database src/cats/update_sqlite3_tables src/cats/make_sqlite3_tables src/cats/grant_sqlite3_privileges src/cats/drop_sqlite3_tables src/cats/drop_sqlite3_database src/cats/sqlite src/cats/mysql src/cats/create_bacula_database src/cats/update_bacula_tables src/cats/grant_bacula_privileges src/cats/make_bacula_tables src/cats/drop_bacula_tables src/cats/drop_bacula_database src/cats/install-default-backend src/findlib/Makefile src/tools/Makefile src/plugins/fd/Makefile src/plugins/sd/Makefile src/plugins/dir/Makefile po/Makefile.in updatedb/update_mysql_tables updatedb/update_sqlite3_tables updatedb/update_postgresql_tables updatedb/update_mysql_tables_9_to_10 updatedb/update_sqlite3_tables_9_to_10 updatedb/update_postgresql_tables_9_to_10 updatedb/update_mysql_tables_10_to_11 updatedb/update_sqlite3_tables_10_to_11 updatedb/update_postgresql_tables_10_to_11 updatedb/update_mysql_tables_11_to_12 updatedb/update_sqlite3_tables_11_to_12 updatedb/update_postgresql_tables_11_to_12 examples/nagios/check_bacula/Makefile platforms/rpms/redhat/bacula.spec platforms/rpms/redhat/bacula-bat.spec platforms/rpms/redhat/bacula-docs.spec platforms/rpms/redhat/bacula-mtx.spec platforms/rpms/suse/bacula.spec platforms/rpms/suse/bacula-bat.spec platforms/rpms/suse/bacula-docs.spec platforms/rpms/suse/bacula-mtx.spec $PFILES"
|
||||
|
||||
ac_config_commands="$ac_config_commands default"
|
||||
|
||||
@@ -32368,7 +32368,6 @@
|
||||
"default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
|
||||
"autoconf/Make.common") CONFIG_FILES="$CONFIG_FILES autoconf/Make.common" ;;
|
||||
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
|
||||
- "manpages/Makefile") CONFIG_FILES="$CONFIG_FILES manpages/Makefile" ;;
|
||||
"scripts/btraceback") CONFIG_FILES="$CONFIG_FILES scripts/btraceback" ;;
|
||||
"scripts/bconsole") CONFIG_FILES="$CONFIG_FILES scripts/bconsole" ;;
|
||||
"scripts/baculabackupreport") CONFIG_FILES="$CONFIG_FILES scripts/baculabackupreport" ;;
|
||||
diff -ur bacula-9.2.1.orig/Makefile.in bacula-9.2.1/Makefile.in
|
||||
--- bacula-9.2.1.orig/Makefile.in 2018-08-12 07:28:00.000000000 +0000
|
||||
+++ bacula-9.2.1/Makefile.in 2018-10-26 19:13:08.788012946 +0000
|
||||
@@ -27,7 +27,7 @@
|
||||
# Non-client-only directores
|
||||
subdirs = src/cats @DIRD_DIR@ @STORED_DIR@ src/tools
|
||||
|
||||
-all_subdirs = ${fd_subdirs} ${@ALL_DIRS@} manpages
|
||||
+all_subdirs = ${fd_subdirs} ${@ALL_DIRS@}
|
||||
|
||||
DIST = INSTALL README.configure configure Makefile Makefile.in ChangeLog
|
||||
|
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST gnucash-docs-3.8b.tar.gz 71058053 BLAKE2B 0a69db02faf6487f2ecc1b5f9a788fb50cec65ff7db53ca9ec6048510156f094c0ce457d1abb4a9a6694060f68780c0336de41dbd0736ad93055cce81b3a66ab SHA512 3c30e88412e17960006517fb7c341220159c45760ca28c79c27c66551451c8ec14e000757f4d9a78c923e10d437351e38dbedaf0a1f3b11bbf5b87d80cb230fe
|
||||
DIST gnucash-docs-4.0.tar.gz 62498230 BLAKE2B 39d711267a7ec0d45915659db8557fd2871c295aba82601c34878f56c5a24b0f56ffa68a4597e464050e3e59f62411ae6f5efc0870bea2fa46f313f58ed3826b SHA512 4aa4510b86a6bf3a217c9809b73166c0ce777b9f5a506c15f51ca80a0aa45b93e774e1b7c07571ceb0aad6b6df67a4f268d5498874d23653cb0c94620f491d1d
|
||||
|
@ -0,0 +1,66 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit autotools eutils gnome2
|
||||
|
||||
DESCRIPTION="Documentation package for GnuCash"
|
||||
HOMEPAGE="http://www.gnucash.org/"
|
||||
SRC_URI="https://github.com/Gnucash/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="GPL-2 FDL-1.1"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
LOCALES=( de it ja pt ru )
|
||||
IUSE="${LOCALES[*]/#/l10n_}"
|
||||
|
||||
DEPEND="
|
||||
app-text/docbook-xml-dtd
|
||||
app-text/docbook-xsl-stylesheets
|
||||
app-text/rarian
|
||||
dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
:
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local doc_type my_lang
|
||||
|
||||
for doc_type in help guide; do
|
||||
for my_lang in C ${L10N}; do
|
||||
case $my_lang in
|
||||
# Both help and guides translated
|
||||
C|de|it|pt) ;;
|
||||
ru|ja) # Only guides translated
|
||||
if [[ ${doc_type} = "help" ]] ; then
|
||||
elog "Help documentation hasn't been translated for $my_lang"
|
||||
elog "Will do English instead."
|
||||
continue
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
die "Invalid locale: $my_lang"
|
||||
;;
|
||||
esac
|
||||
|
||||
emake -C "${doc_type}/${my_lang}" DESTDIR="${D}" install
|
||||
done
|
||||
done
|
||||
|
||||
einstalldocs
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_pkg_postinst
|
||||
optfeature "You need dev-java/fop to generate pdf files." dev-java/fop
|
||||
optfeature "You need gnome-extra/yelp to view the docs." gnome-extra/yelp
|
||||
}
|
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST ebuild-mode-1.50.tar.xz 35440 BLAKE2B 281719a0a686ef1c80c8391cc118d14085ac6407dee5ee7ee44229bb529de041d31fcec7c08bb1e4b8b5057823c5d99a49a9786daa0b7b17a766155b7daaaecc SHA512 a7c232103848c7782a4ebad89e064f3bc37a78427228be799d8e1bd3670524b32050229ba7cd48d9e4c2b0bb32828ce95eb2e47038411591d03fa8f998614c1e
|
||||
DIST ebuild-mode-1.51.tar.xz 35280 BLAKE2B 63f57919bb73937ce3d40b4d6762e78c78d273bcf67875434d12450e00632d457d3dedbe6f213c1979a60cbc0a0874723e3e9424fdcfb64a48acc885cc90e577 SHA512 ff9ece96fbe7bfc9c070769dc6667e8c33f8fb7ef20a2d347c670342ef7500b52b54a93ed37ac9ea13a89c1b89752f5dd6e56c234abe9a4fcd4eb6bad0d0b466
|
||||
|
@ -0,0 +1,22 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit elisp readme.gentoo-r1
|
||||
|
||||
DESCRIPTION="Emacs modes for editing ebuilds and other Gentoo specific files"
|
||||
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Emacs"
|
||||
SRC_URI="https://dev.gentoo.org/~ulm/emacs/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
|
||||
|
||||
BDEPEND="sys-apps/texinfo"
|
||||
|
||||
DOCS="ChangeLog keyword-generation.sh"
|
||||
ELISP_TEXINFO="${PN}.texi"
|
||||
SITEFILE="50${PN}-gentoo-1.51.el"
|
||||
DOC_CONTENTS="Some optional features may require installation of additional
|
||||
packages, like dev-python/docutils-glep for glep."
|
@ -0,0 +1,21 @@
|
||||
(add-to-list 'load-path "@SITELISP@")
|
||||
(autoload 'ebuild-mode "ebuild-mode"
|
||||
"Major mode for Portage .ebuild and .eclass files." t)
|
||||
(autoload 'gentoo-newsitem-mode "gentoo-newsitem-mode"
|
||||
"Major mode for Gentoo GLEP 42 news items." t)
|
||||
(autoload 'glep-mode "glep-mode"
|
||||
"Major mode for Gentoo Linux Enhancement Proposals." t)
|
||||
|
||||
(add-to-list 'auto-mode-alist '("\\.\\(ebuild\\|eclass\\)\\'" . ebuild-mode))
|
||||
(add-to-list 'auto-mode-alist
|
||||
'("/[0-9]\\{4\\}-[01][0-9]-[0-3][0-9]-.+\\.[a-z]\\{2\\}\\.txt\\'"
|
||||
. gentoo-newsitem-mode))
|
||||
(add-to-list 'auto-mode-alist '("/glep.*\\.rst\\'" . glep-mode))
|
||||
(add-to-list 'auto-mode-alist
|
||||
'("/\\(package\\.\\(use\\|env\
|
||||
\\|license\\|properties\\|accept_\\(keywords\\|restrict\\)\\)\
|
||||
\\|\\(package\\.\\)?use.\\(stable\\.\\)?\\(force\\|mask\\)\\)\\'"
|
||||
. conf-mode))
|
||||
(add-to-list 'interpreter-mode-alist '("openrc-run" . sh-mode))
|
||||
(add-to-list 'interpreter-mode-alist '("runscript" . sh-mode))
|
||||
(modify-coding-system-alist 'file "\\.\\(ebuild\\|eclass\\)\\'" 'utf-8)
|
Binary file not shown.
@ -1,3 +1,2 @@
|
||||
DIST libvirt-6.0.0.tar.xz 8686092 BLAKE2B 669054aa3bb3e4f2cf0be2e9ea796b820786661f65495597322e178d7c7e42355b0e3752c8a847cb2fc4405928a30a00544829647aa84cc2e71bc0cb8ce9af5f SHA512 64259c0cffa9fc01192c5474f69d88a61ed0bae0a100379fed6112723a37eff1865ccfc85a19d6b8cd39ed504f04998bb3f6390aaafff797bb41ef65b6ec413c
|
||||
DIST libvirt-6.1.0.tar.xz 8276964 BLAKE2B cf57e28d17e868ab4a69f03fe77b0d779362c6cb8cf1a38196ba7bad873ec4ecfa8ad1744ce97251820ab898be1ddc9bf30b788f1708172bfd23ec2c7cd3bdac SHA512 17a2641f300a4a05149261bae74ac856e9a2511a259146595d2e2412c4a0601d88369b0544ba86edc80e433a47cf828317d8de38c6ec86a1b3efaca75294a606
|
||||
DIST libvirt-6.2.0.tar.xz 8307248 BLAKE2B 9d449e041fc548a688f974d0801e625cf023ef0df49c40028e486e88fcf14181869e0dfd87f0eabcdd184df67dda5b5fbdc0c2375832f1534faff531779255dd SHA512 96bef701fd73aef93d1490f0bc331901a0ff6250a4f36a3e4844f76cc262dc0ae4cce8686a603c2a9c575ce489d8d5ed1521ebd22b92aff8301efdb74dee91e4
|
||||
DIST libvirt-6.5.0.tar.xz 9407160 BLAKE2B 592aace555a3b72311cb430784587180fa7dbf74f75509cd8373a046339b9c4c0707bf530dd2d06146d78a85f8af3dba5d0b146ecec180d3cc4d3bf78c19da61 SHA512 30a032270304b97945ff2c5087c72c2f5510634186f2eaf7c3d834a72cddcaec97bbe5ccc86802728a59f4c80b5bb54757400683df5f20175757cfe07ce67453
|
||||
|
@ -1,19 +0,0 @@
|
||||
diff --git a/tools/libvirt-guests.sh.in b/tools/libvirt-guests.sh.in
|
||||
index 7f74b85..ea58119 100644
|
||||
--- a/tools/libvirt-guests.sh.in
|
||||
+++ b/tools/libvirt-guests.sh.in
|
||||
@@ -41,11 +41,11 @@ CONNECT_RETRIES=10
|
||||
RETRIES_SLEEP=1
|
||||
SYNC_TIME=0
|
||||
|
||||
-test -f "$sysconfdir"/sysconfig/libvirt-guests &&
|
||||
- . "$sysconfdir"/sysconfig/libvirt-guests
|
||||
+test -f "$sysconfdir"/libvirt/libvirt-guests.conf &&
|
||||
+ . "$sysconfdir"/libvirt/libvirt-guests.conf
|
||||
|
||||
LISTFILE="$localstatedir"/lib/libvirt/libvirt-guests
|
||||
-VAR_SUBSYS_LIBVIRT_GUESTS="$localstatedir"/lock/subsys/libvirt-guests
|
||||
+VAR_SUBSYS_LIBVIRT_GUESTS="$localstatedir"/lock/libvirt-guests
|
||||
|
||||
RETVAL=0
|
||||
|
@ -1,116 +0,0 @@
|
||||
From 563706143779166624812b3faf498d869f5dd383 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <563706143779166624812b3faf498d869f5dd383.1547196492.git.mprivozn@redhat.com>
|
||||
From: Michal Privoznik <mprivozn@redhat.com>
|
||||
Date: Fri, 11 Jan 2019 09:41:06 +0100
|
||||
Subject: [PATCH] gentoo: fix paths for apparmor
|
||||
|
||||
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
||||
---
|
||||
src/security/Makefile.inc.am | 10 +++++-----
|
||||
src/security/apparmor/libvirt-qemu | 2 ++
|
||||
...bvirt.virt-aa-helper => usr.libexec.virt-aa-helper} | 4 ++--
|
||||
src/security/apparmor/usr.sbin.libvirtd | 6 ++++--
|
||||
4 files changed, 13 insertions(+), 9 deletions(-)
|
||||
rename src/security/apparmor/{usr.lib.libvirt.virt-aa-helper => usr.libexec.virt-aa-helper} (93%)
|
||||
|
||||
diff --git a/src/security/Makefile.inc.am b/src/security/Makefile.inc.am
|
||||
index b24cdfd083..ae8e979b84 100644
|
||||
--- a/src/security/Makefile.inc.am
|
||||
+++ b/src/security/Makefile.inc.am
|
||||
@@ -36,7 +36,7 @@ EXTRA_DIST += \
|
||||
security/apparmor/TEMPLATE.lxc \
|
||||
security/apparmor/libvirt-qemu \
|
||||
security/apparmor/libvirt-lxc \
|
||||
- security/apparmor/usr.lib.libvirt.virt-aa-helper \
|
||||
+ security/apparmor/usr.libexec.virt-aa-helper \
|
||||
security/apparmor/usr.sbin.libvirtd \
|
||||
$(NULL)
|
||||
|
||||
@@ -90,7 +90,7 @@ endif WITH_SECDRIVER_APPARMOR
|
||||
if WITH_APPARMOR_PROFILES
|
||||
apparmordir = $(sysconfdir)/apparmor.d/
|
||||
apparmor_DATA = \
|
||||
- security/apparmor/usr.lib.libvirt.virt-aa-helper \
|
||||
+ security/apparmor/usr.libexec.virt-aa-helper \
|
||||
security/apparmor/usr.sbin.libvirtd \
|
||||
$(NULL)
|
||||
|
||||
@@ -110,11 +110,11 @@ APPARMOR_LOCAL_DIR = "$(DESTDIR)$(apparmordir)/local"
|
||||
install-apparmor-local:
|
||||
$(MKDIR_P) "$(APPARMOR_LOCAL_DIR)"
|
||||
echo "# Site-specific additions and overrides for \
|
||||
- 'usr.lib.libvirt.virt-aa-helper'" \
|
||||
- >"$(APPARMOR_LOCAL_DIR)/usr.lib.libvirt.virt-aa-helper"
|
||||
+ 'usr.libexec.virt-aa-helper'" \
|
||||
+ >"$(APPARMOR_LOCAL_DIR)/usr.libexec.virt-aa-helper"
|
||||
|
||||
uninstall-apparmor-local:
|
||||
- rm -f "$(APPARMOR_LOCAL_DIR)/usr.lib.libvirt.virt-aa-helper"
|
||||
+ rm -f "$(APPARMOR_LOCAL_DIR)/usr.libexec.virt-aa-helper"
|
||||
rmdir "$(APPARMOR_LOCAL_DIR)" || :
|
||||
|
||||
INSTALL_DATA_LOCAL += install-apparmor-local
|
||||
diff --git a/src/security/apparmor/libvirt-qemu b/src/security/apparmor/libvirt-qemu
|
||||
index eaa5167525..9be50bbbe0 100644
|
||||
--- a/src/security/apparmor/libvirt-qemu
|
||||
+++ b/src/security/apparmor/libvirt-qemu
|
||||
@@ -87,6 +87,8 @@
|
||||
/usr/share/AAVMF/** r,
|
||||
/usr/share/qemu-efi/** r,
|
||||
/usr/share/slof/** r,
|
||||
+ /usr/share/seavgabios/** r,
|
||||
+ /usr/share/edk2-ovmf/** r,
|
||||
|
||||
# pki for libvirt-vnc and libvirt-spice (LP: #901272, #1690140)
|
||||
/etc/pki/CA/ r,
|
||||
diff --git a/src/security/apparmor/usr.lib.libvirt.virt-aa-helper b/src/security/apparmor/usr.libexec.virt-aa-helper
|
||||
similarity index 93%
|
||||
rename from src/security/apparmor/usr.lib.libvirt.virt-aa-helper
|
||||
rename to src/security/apparmor/usr.libexec.virt-aa-helper
|
||||
index de9436872c..99ab4ea527 100644
|
||||
--- a/src/security/apparmor/usr.lib.libvirt.virt-aa-helper
|
||||
+++ b/src/security/apparmor/usr.libexec.virt-aa-helper
|
||||
@@ -1,7 +1,7 @@
|
||||
# Last Modified: Mon Apr 5 15:10:27 2010
|
||||
#include <tunables/global>
|
||||
|
||||
-profile virt-aa-helper /usr/{lib,lib64}/libvirt/virt-aa-helper {
|
||||
+profile virt-aa-helper /usr/libexec/virt-aa-helper {
|
||||
#include <abstractions/base>
|
||||
|
||||
# needed for searching directories
|
||||
@@ -36,7 +36,7 @@
|
||||
deny /dev/mapper/ r,
|
||||
deny /dev/mapper/* r,
|
||||
|
||||
- /usr/{lib,lib64}/libvirt/virt-aa-helper mr,
|
||||
+ /usr/libexec/virt-aa-helper mr,
|
||||
/{usr/,}sbin/apparmor_parser Ux,
|
||||
|
||||
/etc/apparmor.d/libvirt/* r,
|
||||
@@ -66,5 +66,5 @@
|
||||
/**.[iI][sS][oO] r,
|
||||
/**/disk{,.*} r,
|
||||
|
||||
- #include <local/usr.lib.libvirt.virt-aa-helper>
|
||||
+ #include <local/usr.libexec.virt-aa-helper>
|
||||
}
|
||||
diff --git a/src/security/apparmor/usr.sbin.libvirtd b/src/security/apparmor/usr.sbin.libvirtd
|
||||
index f0ffc53008..8a402bd6ec 100644
|
||||
--- a/src/security/apparmor/usr.sbin.libvirtd
|
||||
+++ b/src/security/apparmor/usr.sbin.libvirtd
|
||||
@@ -98,8 +98,10 @@
|
||||
audit deny /sys/kernel/security/apparmor/.* rwxl,
|
||||
/sys/kernel/security/apparmor/profiles r,
|
||||
/usr/{lib,lib64}/libvirt/* PUxr,
|
||||
- /usr/{lib,lib64}/libvirt/libvirt_parthelper ix,
|
||||
- /usr/{lib,lib64}/libvirt/libvirt_iohelper ix,
|
||||
+ /usr/libexec/virt-aa-helper PUxr,
|
||||
+ /usr/libexec/libvirt_lxc PUxr,
|
||||
+ /usr/libexec/libvirt_parthelper ix,
|
||||
+ /usr/libexec/libvirt_iohelper ix,
|
||||
/etc/libvirt/hooks/** rmix,
|
||||
/etc/xen/scripts/** rmix,
|
||||
|
||||
--
|
||||
2.19.2
|
@ -1,39 +0,0 @@
|
||||
From ba756e8d0928ac4ddb7decd1033de2121201d941 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <ba756e8d0928ac4ddb7decd1033de2121201d941.1585986243.git.mprivozn@redhat.com>
|
||||
From: =?UTF-8?q?J=C3=A1n=20Tomko?= <jtomko@redhat.com>
|
||||
Date: Mon, 20 Jan 2020 07:55:48 +0100
|
||||
Subject: [PATCH] qemu: end the agent job in qemuDomainSetTimeAgent
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This function grabs an agent job but ends a monitor job.
|
||||
End the agent job instead.
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1792723
|
||||
|
||||
Signed-off-by: Ján Tomko <jtomko@redhat.com>
|
||||
Reported-by: Dan Zheng <dzheng@redhat.com>
|
||||
Fixes: e005c95f56fee9ed780be7f8db103d690bd34cbd
|
||||
(cherry picked from commit d61f95cf6a6fbd564e104c168d325581acd9cd8d)
|
||||
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
||||
---
|
||||
src/qemu/qemu_driver.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
|
||||
index d6b1e9f00c..48cd5b95d9 100644
|
||||
--- a/src/qemu/qemu_driver.c
|
||||
+++ b/src/qemu/qemu_driver.c
|
||||
@@ -20376,7 +20376,7 @@ qemuDomainSetTimeAgent(virQEMUDriverPtr driver,
|
||||
qemuDomainObjExitAgent(vm, agent);
|
||||
|
||||
endjob:
|
||||
- qemuDomainObjEndJob(driver, vm);
|
||||
+ qemuDomainObjEndAgentJob(vm);
|
||||
return ret;
|
||||
}
|
||||
|
||||
--
|
||||
2.24.1
|
||||
|
@ -1,33 +0,0 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
description="Virtual Machine Management daemon (libvirt)"
|
||||
|
||||
LIBVIRTD_OPTS=${LIBVIRTD_OPTS:-"${LIBVIRTD_OPTS}"}
|
||||
LIBVIRTD_TIMEOUT=${LIBVIRTD_TERMTIMEOUT:-"TERM/25/KILL/5"}
|
||||
|
||||
command="/usr/sbin/libvirtd"
|
||||
command_args="-d ${LIBVIRTD_OPTS}"
|
||||
start_stop_daemon_args="--env KRB5_KTNAME=/etc/libvirt/krb5.tab"
|
||||
pidfile="/run/libvirtd.pid"
|
||||
retry="${LIBVIRTD_TERMTIMEOUT}"
|
||||
|
||||
depend() {
|
||||
need virtlogd
|
||||
use ceph dbus iscsid virtlockd
|
||||
after cgconfig corosync ebtables iptables ip6tables nfs nfsmount ntp-client ntpdportmap rpc.statd sanlock xenconsoled
|
||||
USE_FLAG_FIREWALLD
|
||||
}
|
||||
|
||||
start_pre() {
|
||||
# Test configuration directories in /etc/libvirt/ to be either not
|
||||
# present or a directory, i.e. not a regular file, bug #532892
|
||||
|
||||
checkpath --directory /etc/libvirt/lxc || return 1
|
||||
checkpath --directory /etc/libvirt/nwfilter || return 1
|
||||
[ -L /etc/libvirt/qemu ] ||
|
||||
checkpath --directory /etc/libvirt/qemu || return 1
|
||||
[ -L /etc/libvirt/storage ] ||
|
||||
checkpath --directory /etc/libvirt/storage || return 1
|
||||
}
|
@ -1,23 +0,0 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
description="libvirt virtual machine lock manager"
|
||||
command="/usr/sbin/virtlockd"
|
||||
command_args="-d"
|
||||
pidfile="/run/virtlockd.pid"
|
||||
|
||||
extra_started_commands="reload"
|
||||
description_reload="re-exec the daemon, while maintaining locks and clients"
|
||||
|
||||
|
||||
depend() {
|
||||
after ntp-client ntpd nfs nfsmount corosync
|
||||
}
|
||||
|
||||
reload() {
|
||||
ebegin "re-exec() virtlockd"
|
||||
|
||||
start-stop-daemon --signal SIGUSR1 \
|
||||
--exec "${command}" --pidfile "${pidfile}"
|
||||
}
|
@ -1,23 +0,0 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
description="libvirt virtual machine logging manager"
|
||||
command="/usr/sbin/virtlogd"
|
||||
command_args="-d"
|
||||
pidfile="/run/virtlogd.pid"
|
||||
|
||||
extra_started_commands="reload"
|
||||
description_reload="re-exec the daemon, while maintaining open connections"
|
||||
|
||||
|
||||
depend() {
|
||||
after ntp-client ntpd nfs nfsmount corosync
|
||||
}
|
||||
|
||||
reload() {
|
||||
ebegin "re-exec() virtlogd"
|
||||
|
||||
start-stop-daemon --signal SIGUSR1 \
|
||||
--exec "${command}" --pidfile "${pidfile}"
|
||||
}
|
@ -1,360 +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} )
|
||||
|
||||
inherit autotools out-of-source bash-completion-r1 eutils linux-info python-any-r1 readme.gentoo-r1 systemd
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://libvirt.org/git/libvirt.git"
|
||||
SRC_URI=""
|
||||
KEYWORDS="amd64 x86"
|
||||
SLOT="0"
|
||||
else
|
||||
SRC_URI="https://libvirt.org/sources/${P}.tar.xz"
|
||||
KEYWORDS="amd64 ~arm64 ~ppc64 x86"
|
||||
SLOT="0/${PV}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="C toolkit to manipulate virtual machines"
|
||||
HOMEPAGE="http://www.libvirt.org/"
|
||||
LICENSE="LGPL-2.1"
|
||||
IUSE="
|
||||
apparmor audit +caps +dbus dtrace firewalld fuse glusterfs iscsi
|
||||
iscsi-direct +libvirtd lvm libssh lxc +macvtap nfs nls numa openvz
|
||||
parted pcap phyp policykit +qemu rbd sasl selinux +udev +vepa
|
||||
virtualbox virt-network wireshark-plugins xen zfs
|
||||
"
|
||||
|
||||
REQUIRED_USE="
|
||||
firewalld? ( virt-network )
|
||||
libvirtd? ( || ( lxc openvz qemu virtualbox xen ) )
|
||||
lxc? ( caps libvirtd )
|
||||
openvz? ( libvirtd )
|
||||
policykit? ( dbus )
|
||||
qemu? ( libvirtd )
|
||||
vepa? ( macvtap )
|
||||
virt-network? ( libvirtd )
|
||||
virtualbox? ( libvirtd )
|
||||
xen? ( libvirtd )"
|
||||
|
||||
# gettext.sh command is used by the libvirt command wrappers, and it's
|
||||
# non-optional, so put it into RDEPEND.
|
||||
# We can use both libnl:1.1 and libnl:3, but if you have both installed, the
|
||||
# package will use 3 by default. Since we don't have slot pinning in an API,
|
||||
# we must go with the most recent
|
||||
RDEPEND="
|
||||
acct-user/qemu
|
||||
policykit? ( acct-group/libvirt )
|
||||
app-misc/scrub
|
||||
>=dev-libs/glib-2.48.0
|
||||
dev-libs/libgcrypt:0
|
||||
dev-libs/libnl:3
|
||||
>=dev-libs/libxml2-2.7.6
|
||||
>=net-analyzer/openbsd-netcat-1.105-r1
|
||||
>=net-libs/gnutls-1.0.25:0=
|
||||
net-libs/libssh2
|
||||
net-libs/libtirpc
|
||||
net-libs/rpcsvc-proto
|
||||
>=net-misc/curl-7.18.0
|
||||
sys-apps/dmidecode
|
||||
>=sys-apps/util-linux-2.17
|
||||
sys-devel/gettext
|
||||
sys-libs/ncurses:0=
|
||||
sys-libs/readline:=
|
||||
apparmor? ( sys-libs/libapparmor )
|
||||
audit? ( sys-process/audit )
|
||||
caps? ( sys-libs/libcap-ng )
|
||||
dbus? ( sys-apps/dbus )
|
||||
dtrace? ( dev-util/systemtap )
|
||||
firewalld? ( >=net-firewall/firewalld-0.6.3 )
|
||||
fuse? ( sys-fs/fuse:0= )
|
||||
glusterfs? ( >=sys-cluster/glusterfs-3.4.1 )
|
||||
iscsi? ( sys-block/open-iscsi )
|
||||
iscsi-direct? ( >=net-libs/libiscsi-1.18.0 )
|
||||
libssh? ( net-libs/libssh )
|
||||
lvm? ( >=sys-fs/lvm2-2.02.48-r2[-device-mapper-only(-)] )
|
||||
lxc? ( !sys-apps/systemd[-cgroup-hybrid(+)] )
|
||||
nfs? ( net-fs/nfs-utils )
|
||||
numa? (
|
||||
>sys-process/numactl-2.0.2
|
||||
sys-process/numad
|
||||
)
|
||||
parted? (
|
||||
>=sys-block/parted-1.8[device-mapper]
|
||||
sys-fs/lvm2[-device-mapper-only(-)]
|
||||
)
|
||||
pcap? ( >=net-libs/libpcap-1.0.0 )
|
||||
policykit? ( >=sys-auth/polkit-0.9 )
|
||||
qemu? (
|
||||
>=app-emulation/qemu-1.5.0
|
||||
dev-libs/yajl
|
||||
)
|
||||
rbd? ( sys-cluster/ceph )
|
||||
sasl? ( dev-libs/cyrus-sasl )
|
||||
selinux? ( >=sys-libs/libselinux-2.0.85 )
|
||||
virt-network? (
|
||||
net-dns/dnsmasq[script]
|
||||
net-firewall/ebtables
|
||||
>=net-firewall/iptables-1.4.10[ipv6]
|
||||
net-misc/radvd
|
||||
sys-apps/iproute2[-minimal]
|
||||
)
|
||||
virtualbox? ( || ( app-emulation/virtualbox >=app-emulation/virtualbox-bin-2.2.0 ) )
|
||||
wireshark-plugins? ( net-analyzer/wireshark:= )
|
||||
xen? (
|
||||
>=app-emulation/xen-4.6.0
|
||||
app-emulation/xen-tools:=
|
||||
)
|
||||
udev? (
|
||||
virtual/udev
|
||||
>=x11-libs/libpciaccess-0.10.9
|
||||
)
|
||||
zfs? ( sys-fs/zfs )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
${PYTHON_DEPS}
|
||||
app-text/xhtml1
|
||||
dev-lang/perl
|
||||
dev-libs/libxslt
|
||||
dev-perl/XML-XPath
|
||||
dev-python/docutils
|
||||
virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-6.0.0-do-not-use-sysconf.patch
|
||||
"${FILESDIR}"/${PN}-1.2.16-fix_paths_in_libvirt-guests_sh.patch
|
||||
"${FILESDIR}"/${PN}-5.2.0-fix-paths-for-apparmor.patch
|
||||
"${FILESDIR}"/${PN}-6.0.0-qemu-end-the-agent-job-in-qemuDomainSetTimeAgent.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# Check kernel configuration:
|
||||
CONFIG_CHECK=""
|
||||
use fuse && CONFIG_CHECK+="
|
||||
~FUSE_FS"
|
||||
|
||||
use lvm && CONFIG_CHECK+="
|
||||
~BLK_DEV_DM
|
||||
~DM_MULTIPATH
|
||||
~DM_SNAPSHOT"
|
||||
|
||||
use lxc && CONFIG_CHECK+="
|
||||
~BLK_CGROUP
|
||||
~CGROUP_CPUACCT
|
||||
~CGROUP_DEVICE
|
||||
~CGROUP_FREEZER
|
||||
~CGROUP_NET_PRIO
|
||||
~CGROUP_PERF
|
||||
~CGROUPS
|
||||
~CGROUP_SCHED
|
||||
~CPUSETS
|
||||
~IPC_NS
|
||||
~MACVLAN
|
||||
~NAMESPACES
|
||||
~NET_CLS_CGROUP
|
||||
~NET_NS
|
||||
~PID_NS
|
||||
~POSIX_MQUEUE
|
||||
~SECURITYFS
|
||||
~USER_NS
|
||||
~UTS_NS
|
||||
~VETH
|
||||
~!GRKERNSEC_CHROOT_MOUNT
|
||||
~!GRKERNSEC_CHROOT_DOUBLE
|
||||
~!GRKERNSEC_CHROOT_PIVOT
|
||||
~!GRKERNSEC_CHROOT_CHMOD
|
||||
~!GRKERNSEC_CHROOT_CAPS"
|
||||
|
||||
kernel_is lt 4 7 && use lxc && CONFIG_CHECK+="
|
||||
~DEVPTS_MULTIPLE_INSTANCES"
|
||||
|
||||
use macvtap && CONFIG_CHECK+="
|
||||
~MACVTAP"
|
||||
|
||||
use virt-network && CONFIG_CHECK+="
|
||||
~BRIDGE_EBT_MARK_T
|
||||
~BRIDGE_NF_EBTABLES
|
||||
~NETFILTER_ADVANCED
|
||||
~NETFILTER_XT_CONNMARK
|
||||
~NETFILTER_XT_MARK
|
||||
~NETFILTER_XT_TARGET_CHECKSUM
|
||||
~IP_NF_FILTER
|
||||
~IP_NF_MANGLE
|
||||
~IP_NF_NAT
|
||||
~IP_NF_TARGET_MASQUERADE
|
||||
~IP6_NF_FILTER
|
||||
~IP6_NF_MANGLE
|
||||
~IP6_NF_NAT"
|
||||
# Bandwidth Limiting Support
|
||||
use virt-network && CONFIG_CHECK+="
|
||||
~BRIDGE_EBT_T_NAT
|
||||
~IP_NF_TARGET_REJECT
|
||||
~NET_ACT_POLICE
|
||||
~NET_CLS_FW
|
||||
~NET_CLS_U32
|
||||
~NET_SCH_HTB
|
||||
~NET_SCH_INGRESS
|
||||
~NET_SCH_SFQ"
|
||||
|
||||
# Handle specific kernel versions for different features
|
||||
kernel_is lt 3 6 && CONFIG_CHECK+=" ~CGROUP_MEM_RES_CTLR"
|
||||
if kernel_is ge 3 6; then
|
||||
CONFIG_CHECK+=" ~MEMCG ~MEMCG_SWAP "
|
||||
kernel_is lt 4 5 && CONFIG_CHECK+=" ~MEMCG_KMEM "
|
||||
fi
|
||||
|
||||
ERROR_USER_NS="Optional depending on LXC configuration."
|
||||
|
||||
if [[ -n ${CONFIG_CHECK} ]]; then
|
||||
linux-info_pkg_setup
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
touch "${S}/.mailmap"
|
||||
|
||||
default
|
||||
|
||||
# Tweak the init script:
|
||||
cp "${FILESDIR}/libvirtd.init-r18" "${S}/libvirtd.init" || die
|
||||
sed -e "s/USE_FLAG_FIREWALLD/$(usex firewalld 'need firewalld' '')/" \
|
||||
-i "${S}/libvirtd.init" || die "sed failed"
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
my_src_configure() {
|
||||
local myeconfargs=(
|
||||
$(use_with apparmor)
|
||||
$(use_with apparmor apparmor-profiles)
|
||||
$(use_with audit)
|
||||
$(use_with caps capng)
|
||||
$(use_with dbus)
|
||||
$(use_with dtrace)
|
||||
$(use_with firewalld)
|
||||
$(use_with fuse)
|
||||
$(use_with glusterfs)
|
||||
$(use_with glusterfs storage-gluster)
|
||||
$(use_with iscsi storage-iscsi)
|
||||
$(use_with iscsi-direct storage-iscsi-direct)
|
||||
$(use_with libvirtd)
|
||||
$(use_with libssh)
|
||||
$(use_with lvm storage-lvm)
|
||||
$(use_with lvm storage-mpath)
|
||||
$(use_with lxc)
|
||||
$(use_with macvtap)
|
||||
$(use_enable nls)
|
||||
$(use_with numa numactl)
|
||||
$(use_with numa numad)
|
||||
$(use_with openvz)
|
||||
$(use_with parted storage-disk)
|
||||
$(use_with pcap libpcap)
|
||||
$(use_with phyp)
|
||||
$(use_with policykit polkit)
|
||||
$(use_with qemu)
|
||||
$(use_with qemu yajl)
|
||||
$(use_with rbd storage-rbd)
|
||||
$(use_with sasl)
|
||||
$(use_with selinux)
|
||||
$(use_with udev)
|
||||
$(use_with vepa virtualport)
|
||||
$(use_with virt-network network)
|
||||
$(use_with wireshark-plugins wireshark-dissector)
|
||||
$(use_with xen libxl)
|
||||
$(use_with zfs storage-zfs)
|
||||
|
||||
--without-hal
|
||||
--without-netcf
|
||||
--without-sanlock
|
||||
|
||||
--with-esx
|
||||
--with-init-script=systemd
|
||||
--with-qemu-group=$(usex caps qemu root)
|
||||
--with-qemu-user=$(usex caps qemu root)
|
||||
--with-remote
|
||||
--with-storage-fs
|
||||
--with-vmware
|
||||
|
||||
--disable-static
|
||||
--disable-werror
|
||||
|
||||
--localstatedir=/var
|
||||
--with-runstatedir=/run
|
||||
--enable-dependency-tracking
|
||||
)
|
||||
|
||||
if use virtualbox && has_version app-emulation/virtualbox-ose; then
|
||||
myeconfargs+=( --with-vbox=/usr/lib/virtualbox-ose/ )
|
||||
else
|
||||
myeconfargs+=( $(use_with virtualbox vbox) )
|
||||
fi
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
my_src_test() {
|
||||
# remove problematic tests, bug #591416, bug #591418
|
||||
sed -i -e 's#commandtest$(EXEEXT) # #' \
|
||||
-e 's#virfirewalltest$(EXEEXT) # #' \
|
||||
-e 's#nwfilterebiptablestest$(EXEEXT) # #' \
|
||||
-e 's#nwfilterxml2firewalltest$(EXEEXT)$##' \
|
||||
tests/Makefile
|
||||
|
||||
export VIR_TEST_DEBUG=1
|
||||
HOME="${T}" emake check
|
||||
}
|
||||
|
||||
my_src_install() {
|
||||
emake DESTDIR="${D}" \
|
||||
SYSTEMD_UNIT_DIR="$(systemd_get_systemunitdir)" install
|
||||
|
||||
find "${D}" -name '*.la' -delete || die
|
||||
|
||||
# Remove bogus, empty directories. They are either not used, or
|
||||
# libvirtd is able to create them on demand
|
||||
rm -rf "${D}"/etc/sysconfig
|
||||
rm -rf "${D}"/var
|
||||
rm -rf "${D}"/run
|
||||
|
||||
newbashcomp "${S}/tools/bash-completion/vsh" virsh
|
||||
bashcomp_alias virsh virt-admin
|
||||
|
||||
use libvirtd || return 0
|
||||
# From here, only libvirtd-related instructions, be warned!
|
||||
|
||||
systemd_newtmpfilesd "${FILESDIR}"/libvirtd.tmpfiles.conf libvirtd.conf
|
||||
|
||||
newinitd "${S}/libvirtd.init" libvirtd
|
||||
newinitd "${FILESDIR}/libvirt-guests.init-r4" libvirt-guests
|
||||
newinitd "${FILESDIR}/virtlockd.init-r1" virtlockd
|
||||
newinitd "${FILESDIR}/virtlogd.init-r1" virtlogd
|
||||
|
||||
newconfd "${FILESDIR}/libvirtd.confd-r5" libvirtd
|
||||
newconfd "${FILESDIR}/libvirt-guests.confd" libvirt-guests
|
||||
|
||||
DOC_CONTENTS=$(<"${FILESDIR}/README.gentoo-r3")
|
||||
DISABLE_AUTOFORMATTING=true
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# we only ever want to generate this once
|
||||
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
|
||||
rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
|
||||
touch "${ROOT}"/etc/libvirt/qemu/networks/default.xml
|
||||
fi
|
||||
|
||||
use libvirtd || return 0
|
||||
# From here, only libvirtd-related instructions, be warned!
|
||||
|
||||
readme.gentoo_print_elog
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST gnucash-3.8b.tar.bz2 14285584 BLAKE2B 304d73b04883b61b8a4e174f458206769483ca0f6d28d284c760397e0bc4061dbdb379ff3cca35e80d6736516549a8733bf36895a11c2202fb9f8f25e591e1d9 SHA512 e0529934e9ccafbef2b724f5fca9a0e300c78cf21596f0dcd4b5c11ff300c06a963b68eff1efe00834dc488ced604b86011075bb22480488ddf31d2d4c94ddca
|
||||
DIST gnucash-4.0.tar.bz2 13978744 BLAKE2B 9718e365e1a3939357fabb98f43a95ed22d4d4ee13bb17a7dda5da8ed2c4fe6c4ec4951eb1b5a66bd71feb3f26a4e896d5cb7a177cd7d1b773ac26e643a24f0a SHA512 29fd61352932ff0962e5c634711bc1ae09020e457bace5d2954b743976b607ad3632ddf6a7024148e989dc8e69769400cb7795eee097f8d88dea3ac8d6b7c7ee
|
||||
|
@ -0,0 +1,235 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6,7,8} )
|
||||
|
||||
inherit cmake gnome2-utils python-single-r1 toolchain-funcs xdg-utils
|
||||
|
||||
DESCRIPTION="A personal finance manager"
|
||||
HOMEPAGE="http://www.gnucash.org/"
|
||||
SRC_URI="https://github.com/Gnucash/${PN}/releases/download/${PV}/${P}.tar.bz2"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
|
||||
IUSE="aqbanking debug doc examples gnome-keyring +gui mysql nls ofx postgres
|
||||
python quotes -register2 smartcard sqlite test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# Examples doesn't build unless GUI is also built
|
||||
REQUIRED_USE="
|
||||
examples? ( gui )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )
|
||||
smartcard? ( aqbanking )"
|
||||
|
||||
# dev-libs/boost must always be built with nls enabled.
|
||||
# dev-scheme/guile[deprecated] because of SCM_LIST*() use.
|
||||
# net-libs/aqbanking dropped gtk with v6. So, to simplify the
|
||||
# dependency, we just rely on that.
|
||||
RDEPEND="
|
||||
>=dev-libs/glib-2.56.1:2
|
||||
>=dev-scheme/guile-2.2.0:12=[deprecated,regex]
|
||||
>=sys-libs/zlib-1.1.4
|
||||
dev-libs/boost:=[icu,nls]
|
||||
dev-libs/icu:=
|
||||
dev-libs/libxml2:2
|
||||
dev-libs/libxslt
|
||||
aqbanking? (
|
||||
>=net-libs/aqbanking-6[ofx?]
|
||||
sys-libs/gwenhywfar
|
||||
smartcard? ( sys-libs/libchipcard )
|
||||
)
|
||||
gnome-keyring? ( >=app-crypt/libsecret-0.18 )
|
||||
gui? (
|
||||
>=x11-libs/gtk+-3.22.30:3
|
||||
gnome-base/dconf
|
||||
net-libs/webkit-gtk:4=
|
||||
aqbanking? ( sys-libs/gwenhywfar[gtk] )
|
||||
)
|
||||
mysql? (
|
||||
dev-db/libdbi
|
||||
dev-db/libdbi-drivers[mysql]
|
||||
)
|
||||
ofx? ( >=dev-libs/libofx-0.9.1:= )
|
||||
postgres? (
|
||||
dev-db/libdbi
|
||||
dev-db/libdbi-drivers[postgres]
|
||||
)
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
quotes? (
|
||||
>=dev-perl/Finance-Quote-1.11
|
||||
dev-perl/Date-Manip
|
||||
dev-perl/HTML-TableExtract
|
||||
)
|
||||
sqlite? (
|
||||
dev-db/libdbi
|
||||
dev-db/libdbi-drivers[sqlite]
|
||||
)
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-cpp/gtest-1.8.0
|
||||
>=sys-devel/gettext-0.20
|
||||
dev-lang/perl
|
||||
dev-perl/XML-Parser
|
||||
sys-devel/libtool
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
dev-lang/swig
|
||||
dev-util/cmake
|
||||
virtual/pkgconfig
|
||||
|| (
|
||||
>=sys-devel/gcc-8:*
|
||||
>=sys-devel/clang-6:*
|
||||
)
|
||||
"
|
||||
|
||||
PDEPEND="doc? (
|
||||
~app-doc/gnucash-docs-${PV}
|
||||
gnome-extra/yelp
|
||||
)"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.2-no-gui.patch
|
||||
"${FILESDIR}"/${PN}-3.8-examples-subdir.patch
|
||||
"${FILESDIR}"/${PN}-3.8-exclude-license.patch
|
||||
)
|
||||
|
||||
S="${WORKDIR}/${PN}-$(ver_cut 1-2)"
|
||||
|
||||
pkg_pretend() {
|
||||
if tc-is-gcc; then
|
||||
if [[ $(gcc-major-version) -lt 8 ]]; then
|
||||
die "GnuCash needs at least GCC version 8."
|
||||
fi
|
||||
elif tc-is-clang; then
|
||||
if [[ $(clang-major-version) -lt 6 ]]; then
|
||||
die "GnuCash needs at least clang version 6."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
xdg_environment_reset
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cmake_src_prepare
|
||||
|
||||
# Fix tests writing to /tmp
|
||||
local fixtestfiles=(
|
||||
gnucash/report/test/test-report-html.scm
|
||||
gnucash/report/reports/standard/test/test-invoice.scm
|
||||
gnucash/report/reports/standard/test/test-new-owner-report.scm
|
||||
gnucash/report/reports/standard/test/test-owner-report.scm
|
||||
gnucash/report/reports/standard/test/test-transaction.scm
|
||||
gnucash/report/reports/standard/test/test-portfolios.scm
|
||||
gnucash/report/reports/standard/test/test-charts.scm
|
||||
gnucash/report/test/test-report.scm
|
||||
gnucash/report/test/test-commodity-utils.scm
|
||||
gnucash/report/test/test-report-extras.scm
|
||||
libgnucash/backend/dbi/test/test-backend-dbi-basic.cpp
|
||||
libgnucash/backend/xml/test/test-xml-pricedb.cpp
|
||||
)
|
||||
for x in "${fixtestfiles[@]}"; do
|
||||
sed -i -e "s|\"/tmp/|\"${T}/|g" "${S}/${x}" || die "sed of "${S}/${x}" failed"
|
||||
done
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
export GUILE_AUTO_COMPILE=0
|
||||
|
||||
local sql_on_off="OFF"
|
||||
if use mysql || use postgres || use sqlite ; then
|
||||
sql_on_off="ON"
|
||||
fi
|
||||
|
||||
local mycmakeargs=(
|
||||
-DCOMPILE_GSCHEMAS=OFF
|
||||
-DDISABLE_NLS=$(usex !nls)
|
||||
-DENABLE_REGISTER2=$(usex register2)
|
||||
-DWITH_AQBANKING=$(usex aqbanking)
|
||||
-DWITH_OFX=$(usex ofx)
|
||||
-DWITH_PYTHON=$(usex python)
|
||||
-DWITH_SQL=${sql_on_off}
|
||||
-DWITH_GNUCASH=$(usex gui)
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use python ; then
|
||||
cp common/test-core/unittest_support.py \
|
||||
"${BUILD_DIR}"/common/test-core/ || die
|
||||
fi
|
||||
|
||||
LOCALE_TESTS=
|
||||
if type locale >/dev/null 2>&1; then
|
||||
MY_LOCALES="$(locale -a)"
|
||||
if [[ "${MY_LOCALES}" != *en_US* ||
|
||||
"${MY_LOCALES}" != *en_GB* ||
|
||||
"${MY_LOCALES}" != *fr_FR* ]] ; then
|
||||
ewarn "Missing one or more of en_US, en_GB, or fr_FR locales."
|
||||
else
|
||||
LOCALE_TESTS=true
|
||||
fi
|
||||
else
|
||||
ewarn "'locale' not found."
|
||||
fi
|
||||
|
||||
if [[ ! ${LOCALE_TESTS} ]]; then
|
||||
ewarn "Disabling test-qof and test-gnc-numeric."
|
||||
echo 'set(CTEST_CUSTOM_TESTS_IGNORE test-qof test-gnc-numeric)' \
|
||||
> "${BUILD_DIR}"/CTestCustom.cmake || die
|
||||
fi
|
||||
|
||||
cd "${BUILD_DIR}" || die
|
||||
XDG_DATA_HOME="${T}/$(whoami)" eninja check
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
# strip is unable to recognise the format of the input files (*.go)
|
||||
dostrip -x /usr/$(get_libdir)/guile
|
||||
|
||||
if use examples ; then
|
||||
docompress -x /usr/share/doc/${PF}/examples
|
||||
else
|
||||
rm -r "${ED}"/usr/share/doc/${PF}/examples
|
||||
fi
|
||||
|
||||
if use python ; then
|
||||
python_optimize
|
||||
python_optimize "${ED}"/usr/share/gnucash/python
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use gui ; then
|
||||
xdg_icon_cache_update
|
||||
gnome2_schemas_update
|
||||
fi
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
|
||||
ewarn "Backup all financial files or databases before using GnuCash >=2.7.0!"
|
||||
ewarn
|
||||
ewarn "GnuCash 2.7.0 introduced large changes in its file format and database"
|
||||
ewarn "schema that WILL prevent you from reverting back to GnuCash 2.6."
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
if use gui ; then
|
||||
xdg_icon_cache_update
|
||||
gnome2_schemas_update
|
||||
fi
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST skrooge-2.22.1.tar.xz 21559588 BLAKE2B 1f08a5357af4b792ba3d3eb4d460604fa23914aa5924ac9405019fbcce50efa96441b84bcd1142469f00eab89daa7c8175c5c33821190b7a09b7c565880f55b4 SHA512 0bbc4e98293f73a3ffe1243246fbd88c5d4d45fec8d67e8daebbe8ed08365c897b734cc5dd2a2104e608a13546f383b618d12c3523425d1a513511301c510f43
|
||||
DIST skrooge-2.23.0.tar.xz 22403128 BLAKE2B e8b4e33e80f307f2c7e6c984199c116aee1d7cabe0ac4ee9461ba10289adc0a15ba5e5d8efb93d49ec8f22104462d572a8ee52b08df84d0379fa77ce56a4ddc9 SHA512 4592deb159aa310f36f8950cf0a65d811624b40dc8b05cdefc271b95885bc6db5ac15f7b4c5299b1468ac92b7e560636bf95ddd6d31340993d9184ba0b150a76
|
||||
|
@ -0,0 +1,105 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
ECM_HANDBOOK="optional"
|
||||
ECM_TEST="forceoptional"
|
||||
KFMIN=5.60.0
|
||||
QTMIN=5.12.3
|
||||
VIRTUALX_REQUIRED="test"
|
||||
inherit ecm kde.org
|
||||
|
||||
DESCRIPTION="Personal finances manager, aiming at being simple and intuitive"
|
||||
HOMEPAGE="https://skrooge.org/"
|
||||
|
||||
if [[ ${KDE_BUILD_TYPE} = release ]]; then
|
||||
SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="5"
|
||||
IUSE="activities designer kde ofx webkit"
|
||||
|
||||
REQUIRED_USE="test? ( designer )"
|
||||
|
||||
BDEPEND="
|
||||
dev-libs/libxslt
|
||||
virtual/pkgconfig
|
||||
"
|
||||
COMMON_DEPEND="
|
||||
app-crypt/qca:2[qt5(+)]
|
||||
dev-db/sqlcipher
|
||||
dev-libs/grantlee:5
|
||||
>=dev-qt/qtconcurrent-${QTMIN}:5
|
||||
>=dev-qt/qtdbus-${QTMIN}:5
|
||||
>=dev-qt/qtdeclarative-${QTMIN}:5[widgets]
|
||||
>=dev-qt/qtgui-${QTMIN}:5
|
||||
>=dev-qt/qtnetwork-${QTMIN}:5
|
||||
>=dev-qt/qtprintsupport-${QTMIN}:5
|
||||
>=dev-qt/qtscript-${QTMIN}:5
|
||||
>=dev-qt/qtsql-${QTMIN}:5=
|
||||
>=dev-qt/qtsvg-${QTMIN}:5
|
||||
>=dev-qt/qtwidgets-${QTMIN}:5
|
||||
>=dev-qt/qtxml-${QTMIN}:5
|
||||
>=kde-frameworks/karchive-${KFMIN}:5
|
||||
>=kde-frameworks/kcompletion-${KFMIN}:5
|
||||
>=kde-frameworks/kconfig-${KFMIN}:5
|
||||
>=kde-frameworks/kconfigwidgets-${KFMIN}:5
|
||||
>=kde-frameworks/kcoreaddons-${KFMIN}:5
|
||||
>=kde-frameworks/kdbusaddons-${KFMIN}:5
|
||||
>=kde-frameworks/ki18n-${KFMIN}:5
|
||||
>=kde-frameworks/kiconthemes-${KFMIN}:5
|
||||
>=kde-frameworks/kio-${KFMIN}:5
|
||||
>=kde-frameworks/kitemviews-${KFMIN}:5
|
||||
>=kde-frameworks/knewstuff-${KFMIN}:5
|
||||
>=kde-frameworks/knotifications-${KFMIN}:5
|
||||
>=kde-frameworks/knotifyconfig-${KFMIN}:5
|
||||
>=kde-frameworks/kparts-${KFMIN}:5
|
||||
>=kde-frameworks/kservice-${KFMIN}:5
|
||||
>=kde-frameworks/ktextwidgets-${KFMIN}:5
|
||||
>=kde-frameworks/kwallet-${KFMIN}:5
|
||||
>=kde-frameworks/kwidgetsaddons-${KFMIN}:5
|
||||
>=kde-frameworks/kxmlgui-${KFMIN}:5
|
||||
activities? ( >=kde-frameworks/kactivities-${KFMIN}:5 )
|
||||
kde? ( >=kde-frameworks/krunner-${KFMIN}:5 )
|
||||
ofx? ( dev-libs/libofx )
|
||||
webkit? ( >=dev-qt/qtwebkit-5.212.0_pre20180120:5 )
|
||||
!webkit? ( >=dev-qt/qtwebengine-${QTMIN}:5[widgets] )
|
||||
"
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
>=kde-frameworks/kguiaddons-${KFMIN}:5
|
||||
>=kde-frameworks/kjobwidgets-${KFMIN}:5
|
||||
>=kde-frameworks/kwindowsystem-${KFMIN}:5
|
||||
designer? (
|
||||
>=kde-frameworks/kdesignerplugin-${KFMIN}:5
|
||||
>=dev-qt/designer-${QTMIN}:5
|
||||
)
|
||||
"
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
>=dev-qt/qtquickcontrols-${QTMIN}:5
|
||||
"
|
||||
|
||||
# hangs + installs files
|
||||
RESTRICT+=" test"
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DSKG_BUILD_TEST=$(usex test)
|
||||
-DSKG_DESIGNER=$(usex designer)
|
||||
$(cmake_use_find_package activities KF5Activities)
|
||||
$(cmake_use_find_package kde KF5Runner)
|
||||
$(cmake_use_find_package ofx LibOfx)
|
||||
-DSKG_WEBENGINE=$(usex !webkit)
|
||||
)
|
||||
|
||||
ecm_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
local mycmakeargs=(
|
||||
-DSKG_BUILD_TEST=ON
|
||||
)
|
||||
ecm_src_test
|
||||
}
|
Binary file not shown.
@ -0,0 +1,121 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# Not all modules needed by py script are packaged in Gentoo
|
||||
#PYTHON_COMPAT=( python3_{6..9} )
|
||||
|
||||
inherit autotools flag-o-matic gnome2-utils #python-single-r1
|
||||
|
||||
DESCRIPTION="A graphical user interface to the Apple productline"
|
||||
HOMEPAGE="http://www.gtkpod.org/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2 FDL-1.2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
IUSE="aac clutter curl cdr flac gstreamer mp3 vorbis"
|
||||
REQUIRED_USE="cdr? ( gstreamer )"
|
||||
|
||||
# ${PYTHON_DEPS}
|
||||
COMMON_DEPEND="
|
||||
>=dev-libs/gdl-3.6:3
|
||||
>=dev-libs/glib-2.31:2
|
||||
>=dev-libs/libxml2-2.7.7:2
|
||||
>=dev-util/anjuta-3.6
|
||||
>=media-libs/libgpod-0.8.2:=
|
||||
>=media-libs/libid3tag-0.15
|
||||
>=x11-libs/gtk+-3.0.8:3
|
||||
aac? ( media-libs/faad2 )
|
||||
clutter? ( >=media-libs/clutter-gtk-1.2:1.0 )
|
||||
curl? ( >=net-misc/curl-7.10 )
|
||||
flac? ( media-libs/flac )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0
|
||||
cdr? (
|
||||
>=app-cdr/brasero-3
|
||||
>=media-libs/libdiscid-0.2.2
|
||||
media-libs/musicbrainz:5
|
||||
)
|
||||
)
|
||||
mp3? ( media-sound/lame )
|
||||
vorbis? (
|
||||
media-libs/libvorbis
|
||||
media-sound/vorbis-tools
|
||||
)
|
||||
"
|
||||
|
||||
# to pull in at least -flac and -vorbis plugins , but others at the same time
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
gstreamer? ( media-plugins/gst-plugins-meta:1.0 )
|
||||
"
|
||||
# media-libs/gstreamer:1.0 needed at build time as we need m4 file for
|
||||
# eautoreconf, bug #659748
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
media-libs/gstreamer:1.0
|
||||
dev-util/intltool
|
||||
sys-devel/flex
|
||||
sys-devel/gettext
|
||||
virtual/os-headers
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
eapply "${FILESDIR}"/${PN}-2.1.3-gold.patch
|
||||
eapply "${FILESDIR}"/${PN}-2.1.5-m4a.patch
|
||||
|
||||
# python_fix_shebang scripts/
|
||||
# 2to3 --no-diffs -w scripts/sync-palm-jppy.py || die
|
||||
|
||||
gnome2_disable_deprecation_warning
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Prevent sandbox violations, bug #420279
|
||||
addpredict /dev
|
||||
|
||||
append-flags -fcommon #722504
|
||||
|
||||
econf \
|
||||
--enable-deprecations \
|
||||
--disable-static \
|
||||
--disable-plugin-coverweb \
|
||||
$(use_enable clutter plugin-clarity) \
|
||||
$(use_enable gstreamer plugin-media-player) \
|
||||
$(use_enable cdr plugin-sjcd) \
|
||||
$(use_with curl) \
|
||||
$(use_with vorbis ogg) \
|
||||
$(use_with flac) \
|
||||
$(use_with aac mp4)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
docdir=/usr/share/doc/${PF}/html \
|
||||
figuresdir=/usr/share/doc/${PF}/html/figures \
|
||||
install
|
||||
|
||||
dodoc AUTHORS ChangeLog NEWS README TODO TROUBLESHOOTING
|
||||
rm -f "${ED}"/usr/share/gtkpod/data/{AUTHORS,COPYING} || die
|
||||
|
||||
# Needs unpackaged python modules
|
||||
rm -f "${ED}"/usr/share/gtkpod/scripts/sync-palm-jppy.py || die
|
||||
|
||||
find "${D}" -name '*.la' -type f -delete || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_schemas_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_schemas_update
|
||||
}
|
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST webgen-1.7.0.gem 201728 BLAKE2B ed44657420817d98ffbd72093ff56db22ae3a8da43c77661a663d938f3958c4055df4b7b34252eee162846af27a35320f680fdb6b9b1818f96aa1e51eceffd9f SHA512 1e791f720108996a4f52b151d160d9b6f613c036aae2350c634f5539257c4ae946737ba2df94bc424199413463e3016432a6d1e67e30b419b2770bc83b3b14db
|
||||
DIST webgen-1.7.1.gem 201728 BLAKE2B 2ea7d7911b4edf29cb7310a676593a77956b3fffd1a4ca5f69731270e648365fb8293a292b8fdd717444ed8f690dd5f095ac5dd77f5c950253b5de7d6086f966 SHA512 7b58c7d2b8ff6a4feabc1435e6bddbf25b3e4695517c2bd8d97b698a49b6fd61538f1a77bdd4e13f7368fdfbeae9f007dfc09ecfcde4eb75a366b8e0ccc8c58a
|
||||
|
@ -0,0 +1,52 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
USE_RUBY="ruby26"
|
||||
|
||||
RUBY_FAKEGEM_RECIPE_DOC="task"
|
||||
RUBY_FAKEGEM_DOCDIR="htmldoc/rdoc"
|
||||
RUBY_FAKEGEM_EXTRADOC="AUTHORS THANKS"
|
||||
RUBY_FAKEGEM_EXTRAINSTALL="data"
|
||||
|
||||
inherit ruby-fakegem
|
||||
|
||||
DESCRIPTION="A template-based static website generator"
|
||||
HOMEPAGE="https://webgen.gettalong.org"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="builder doc highlight markdown"
|
||||
|
||||
ruby_add_bdepend "doc? ( dev-ruby/rdoc )
|
||||
test? (
|
||||
dev-ruby/minitest:5
|
||||
dev-ruby/rdiscount
|
||||
>=dev-ruby/sass-3.2:* )"
|
||||
|
||||
ruby_add_rdepend ">=dev-ruby/cmdparse-3.0.1:3
|
||||
>=dev-ruby/systemu-2.5 =dev-ruby/systemu-2*
|
||||
>=dev-ruby/kramdown-2.3:2
|
||||
builder? ( >=dev-ruby/builder-2.1.0:* )
|
||||
highlight? ( >=dev-ruby/coderay-1.0 )
|
||||
markdown? ( dev-ruby/maruku )"
|
||||
|
||||
all_ruby_prepare() {
|
||||
# Avoid a test fragile for sass version differences
|
||||
sed -i -e '/test_static_call/,/^ end/ s:^:#:' test/webgen/content_processor/test_sass.rb || die
|
||||
# Avoid a test with fragile whitespace tests
|
||||
rm -f test/webgen/content_processor/test_haml.rb || die
|
||||
|
||||
# Avoid tests for rdoc since that requires an obsolete version
|
||||
sed -i -e '/def test_create_nodes/askip' test/webgen/path_handler/test_api.rb || die
|
||||
|
||||
# Avoid tests for unpackaged dependencies
|
||||
rm -f test/webgen/content_processor/test_{css_minify,tikz}.rb || die
|
||||
}
|
||||
|
||||
all_ruby_install() {
|
||||
all_fakegem_install
|
||||
|
||||
doman man/man1/webgen.1
|
||||
}
|
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST ebuild-mode-1.50.tar.xz 35440 BLAKE2B 281719a0a686ef1c80c8391cc118d14085ac6407dee5ee7ee44229bb529de041d31fcec7c08bb1e4b8b5057823c5d99a49a9786daa0b7b17a766155b7daaaecc SHA512 a7c232103848c7782a4ebad89e064f3bc37a78427228be799d8e1bd3670524b32050229ba7cd48d9e4c2b0bb32828ce95eb2e47038411591d03fa8f998614c1e
|
||||
DIST ebuild-mode-1.51.tar.xz 35280 BLAKE2B 63f57919bb73937ce3d40b4d6762e78c78d273bcf67875434d12450e00632d457d3dedbe6f213c1979a60cbc0a0874723e3e9424fdcfb64a48acc885cc90e577 SHA512 ff9ece96fbe7bfc9c070769dc6667e8c33f8fb7ef20a2d347c670342ef7500b52b54a93ed37ac9ea13a89c1b89752f5dd6e56c234abe9a4fcd4eb6bad0d0b466
|
||||
|
@ -0,0 +1,36 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DESCRIPTION="Emacs modes for editing ebuilds and other Gentoo specific files"
|
||||
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Emacs"
|
||||
SRC_URI="https://dev.gentoo.org/~ulm/emacs/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~hppa ~x86"
|
||||
|
||||
RDEPEND=">=app-editors/xemacs-21.4.20-r5
|
||||
app-xemacs/sh-script"
|
||||
BDEPEND="${RDEPEND}"
|
||||
|
||||
src_compile() {
|
||||
local XEMACS="${EPREFIX}/usr/bin/xemacs"
|
||||
|
||||
"${XEMACS}" -batch -q --no-site-file \
|
||||
-eval "(add-to-list 'load-path \".\")" \
|
||||
-f batch-byte-compile \
|
||||
ebuild-mode.el gentoo-newsitem-mode.el || die
|
||||
|
||||
"${XEMACS}" -batch -q --no-site-file \
|
||||
-eval "(setq autoload-package-name \"${PN}\")" \
|
||||
-eval "(setq generated-autoload-file \"${S}/auto-autoloads.el\")" \
|
||||
-l autoload -f batch-update-autoloads \
|
||||
ebuild-mode.el gentoo-newsitem-mode.el || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /usr/share/xemacs/site-packages/lisp/${PN}
|
||||
doins *.el *.elc
|
||||
}
|
Binary file not shown.
@ -0,0 +1,100 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
FORTRAN_NEEDED="test"
|
||||
inherit cmake cuda fortran-2
|
||||
|
||||
DESCRIPTION="C++ template library for linear algebra"
|
||||
HOMEPAGE="http://eigen.tuxfamily.org/index.php?title=Main_Page"
|
||||
SRC_URI="https://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2"
|
||||
|
||||
LICENSE="MPL-2.0"
|
||||
SLOT="3"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_ppc_vsx cuda debug doc openmp test" #zvector
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="
|
||||
doc? (
|
||||
app-doc/doxygen[dot]
|
||||
dev-texlive/texlive-bibtexextra
|
||||
dev-texlive/texlive-fontsextra
|
||||
dev-texlive/texlive-fontutils
|
||||
dev-texlive/texlive-latex
|
||||
dev-texlive/texlive-latexextra
|
||||
)
|
||||
test? ( virtual/pkgconfig )
|
||||
"
|
||||
DEPEND="
|
||||
cuda? ( dev-util/nvidia-cuda-toolkit )
|
||||
test? (
|
||||
dev-libs/gmp:0
|
||||
dev-libs/mpfr:0
|
||||
media-libs/freeglut
|
||||
media-libs/glew
|
||||
sci-libs/adolc[sparse]
|
||||
sci-libs/cholmod
|
||||
sci-libs/fftw:3.0
|
||||
sci-libs/pastix
|
||||
sci-libs/scotch
|
||||
sci-libs/spqr
|
||||
sci-libs/superlu
|
||||
sci-libs/umfpack
|
||||
virtual/opengl
|
||||
)
|
||||
"
|
||||
# Missing:
|
||||
# METIS-5
|
||||
# GOOGLEHASH
|
||||
|
||||
S="${WORKDIR}/${PN}-${PN}-323c052e1731"
|
||||
|
||||
PATCHES=( "${FILESDIR}"/${P}-gentoo-cmake.patch )
|
||||
|
||||
src_prepare() {
|
||||
cmake_src_prepare
|
||||
|
||||
cmake_comment_add_subdirectory demos
|
||||
|
||||
if ! use test; then
|
||||
sed -e "/add_subdirectory(test/s/^/#DONOTCOMPILE /g" \
|
||||
-e "/add_subdirectory(blas/s/^/#DONOTCOMPILE /g" \
|
||||
-e "/add_subdirectory(lapack/s/^/#DONOTCOMPILE /g" \
|
||||
-i CMakeLists.txt || die
|
||||
fi
|
||||
|
||||
use cuda && cuda_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKEPACKAGE_INSTALL_DIR="${EPREFIX}"/usr/$(get_libdir)/cmake/${PN}${SLOT}
|
||||
)
|
||||
use test && mycmakeargs+=(
|
||||
-DEIGEN_TEST_CXX11=ON
|
||||
-DEIGEN_TEST_NOQT=ON
|
||||
-DEIGEN_TEST_ALTIVEC=$(usex cpu_flags_ppc_altivec)
|
||||
-DEIGEN_TEST_CUDA=$(usex cuda)
|
||||
-DEIGEN_TEST_OPENMP=$(usex openmp)
|
||||
-DEIGEN_TEST_NEON64=$(usex cpu_flags_arm_neon)
|
||||
-DEIGEN_TEST_VSX=$(usex cpu_flags_ppc_vsx)
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cmake_src_compile
|
||||
use doc && cmake_src_compile doc
|
||||
if use test; then
|
||||
cmake_src_compile blas
|
||||
cmake_src_compile buildtests
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
use doc && local HTML_DOCS=( "${BUILD_DIR}"/doc/html/. )
|
||||
cmake_src_install
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
Let us properly override with CMAKE_BUILD_TYPE=Gentoo
|
||||
|
||||
--- a/CMakeLists.txt 2018-12-11 18:57:55.000000000 +0100
|
||||
+++ b/CMakeLists.txt 2020-07-21 16:43:33.467680534 +0200
|
||||
@@ -14,18 +14,7 @@
|
||||
set(Eigen_BINARY_DIR ${Eigen3_BINARY_DIR})
|
||||
|
||||
# guard against bad build-type strings
|
||||
-
|
||||
-if (NOT CMAKE_BUILD_TYPE)
|
||||
- set(CMAKE_BUILD_TYPE "Release")
|
||||
-endif()
|
||||
-
|
||||
-string(TOLOWER "${CMAKE_BUILD_TYPE}" cmake_build_type_tolower)
|
||||
-if( NOT cmake_build_type_tolower STREQUAL "debug"
|
||||
- AND NOT cmake_build_type_tolower STREQUAL "release"
|
||||
- AND NOT cmake_build_type_tolower STREQUAL "relwithdebinfo")
|
||||
- message(FATAL_ERROR "Unknown build type \"${CMAKE_BUILD_TYPE}\". Allowed values are Debug, Release, RelWithDebInfo (case-insensitive).")
|
||||
-endif()
|
||||
-
|
||||
+# yeah no.
|
||||
|
||||
#############################################################################
|
||||
# retrieve version infomation #
|
@ -0,0 +1,2 @@
|
||||
DIST build2-toolchain-0.13.0.tar.xz 4218940 BLAKE2B ed27290df21e5db843325b3e42c43c6934ce8f2b9b157538b921f9cfe3a7dccc3b56e261053373553cbd7fbff39e912ffe2282f812d0e6f158749ed5748d5e33 SHA512 0485872acd40beb700739b2995f76efcc9811dd52a38ee049576e45fcb5a7d7ae9c718beca8aeab9ab3f1c5e0270d3946f2335f88ec19476577c195417c2dbd4
|
||||
DIST libodb-sqlite-2.5.0-b.19.tar.gz 74822 BLAKE2B e9a5d3be8b453bcdc026b6349572c3bd88eb468329216bee535f4e1ac72bfe6c88b485efe2476303600209df42023099fdda88b410d9295e8cab73ed9dd03fc0 SHA512 be6dbc731d9f45dfc7e9246f404edad78d59c9d38cff6599aed56d60d4f0e8391336e2da3608f66d74559f0a8d34243eb38e7e6a1221188959321810193ae901
|
@ -0,0 +1,52 @@
|
||||
--- build2-toolchain-e135a3112b15c88f0601583ca068f8adea7b605d-orig/build2/libbuild2/cc/module.cxx 2020-07-10 20:12:57.000000000 +1000
|
||||
+++ build2-toolchain-e135a3112b15c88f0601583ca068f8adea7b605d/build2/libbuild2/cc/module.cxx 2020-07-14 14:33:58.939950579 +1000
|
||||
@@ -323,8 +323,6 @@
|
||||
|
||||
#ifndef _WIN32
|
||||
static const dir_path usr_inc ("/usr/include");
|
||||
- static const dir_path usr_loc_lib ("/usr/local/lib");
|
||||
- static const dir_path usr_loc_inc ("/usr/local/include");
|
||||
# ifdef __APPLE__
|
||||
static const dir_path a_usr_inc (
|
||||
"/Library/Developer/CommandLineTools/SDKs/MacOSX*.sdk/usr/include");
|
||||
@@ -486,7 +484,6 @@
|
||||
auto& ls (lib_dirs.first);
|
||||
|
||||
bool ui (find (is.begin (), is.end (), usr_inc) != is.end ());
|
||||
- bool uli (find (is.begin (), is.end (), usr_loc_inc) != is.end ());
|
||||
|
||||
#ifdef __APPLE__
|
||||
// On Mac OS starting from 10.14 there is no longer /usr/include.
|
||||
@@ -509,7 +506,7 @@
|
||||
//
|
||||
// Is Apple's /usr/include.
|
||||
//
|
||||
- if (!ui && !uli)
|
||||
+ if (!ui)
|
||||
{
|
||||
for (const dir_path& d: is)
|
||||
{
|
||||
@@ -521,22 +518,16 @@
|
||||
}
|
||||
}
|
||||
#endif
|
||||
- if (ui || uli)
|
||||
+ if (ui)
|
||||
{
|
||||
- bool ull (find (ls.begin (), ls.end (), usr_loc_lib) != ls.end ());
|
||||
-
|
||||
// Many platforms don't search in /usr/local/lib by default (but do
|
||||
// for headers in /usr/local/include). So add it as the last option.
|
||||
//
|
||||
- if (!ull && exists (usr_loc_lib, true /* ignore_error */))
|
||||
- ls.push_back (usr_loc_lib);
|
||||
|
||||
// FreeBSD is at least consistent: it searches in neither. Quoting
|
||||
// its wiki: "FreeBSD can't even find libraries that it installed."
|
||||
// So let's help it a bit.
|
||||
//
|
||||
- if (!uli && exists (usr_loc_inc, true /* ignore_error */))
|
||||
- is.push_back (usr_loc_inc);
|
||||
}
|
||||
}
|
||||
#endif
|
@ -0,0 +1,117 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
MY_P="${PN}-$(ver_cut 1-3)-b.$(ver_cut 5)"
|
||||
|
||||
BUILD2_PN=build2-toolchain
|
||||
BUILD2_PV="0.13.0"
|
||||
BUILD2_P="${BUILD2_PN}-${BUILD2_PV}"
|
||||
|
||||
inherit toolchain-funcs multiprocessing
|
||||
SRC_URI="https://pkg.cppget.org/1/beta/odb/${MY_P}.tar.gz
|
||||
https://download.build2.org/${BUILD2_PV}/${BUILD2_P}.tar.xz"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
DESCRIPTION="Common ODB runtime library"
|
||||
HOMEPAGE="https://codesynthesis.com/products/odb/"
|
||||
|
||||
LICENSE="|| ( Code-Synthesis-ODB GPL-2 )"
|
||||
SLOT="0"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
dev-cpp/libodb
|
||||
dev-db/sqlite:3
|
||||
"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
RDEPEND="${DEPEND}
|
||||
!<dev-util/build2-0.13.0
|
||||
"
|
||||
|
||||
BS="${WORKDIR}/${BUILD2_P}"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
b() {
|
||||
local myargs=(
|
||||
--jobs $(makeopts_jobs)
|
||||
--verbose 3
|
||||
)
|
||||
export LD_LIBRARY_PATH="${BS}/libbutl/libbutl:${BS}/build2/libbuild2:${BS}/build2/libbuild2/bash:${BS}/build2/libbuild2/in:${BS}/build2/libbuild2/bin:${BS}/build2/libbuild2/c:${BS}/build2/libbuild2/cc:${BS}/build2/libbuild2/cxx:${BS}/build2/libbuild2/version:${BS}/libpkgconf/libpkgconf:${LD_LIBRARY_PATH}"
|
||||
set -- "${BS}"/build2/build2/b-boot "${@}" "${myargs[@]}"
|
||||
echo "${@}"
|
||||
"${@}" || die "${@} failed"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cd "${WORKDIR}" || die
|
||||
for i in ${BUILD2_P}/libodb-sqlite/buildfile ${MY_P}/buildfile; do
|
||||
printf 'cxx.libs += %s\ncxx.poptions += %s\n' \
|
||||
"-L${EPREFIX}/usr/$(get_libdir) $($(tc-getPKG_CONFIG) sqlite3 --libs)" \
|
||||
"$($(tc-getPKG_CONFIG) sqlite3 --cflags)" >> \
|
||||
${i} \
|
||||
|| die
|
||||
done
|
||||
|
||||
cd "${BS}" || die
|
||||
eapply "${FILESDIR}"/build2-0.13.0_alpha0_pre20200710-nousrlocal.patch
|
||||
sed \
|
||||
-e 's:libsqlite3[/]\?::' \
|
||||
-i buildfile build/bootstrap.build \
|
||||
|| die
|
||||
|
||||
if has_version dev-util/pkgconf; then
|
||||
for i in build2/build2/buildfile build2/libbuild2/buildfile; do
|
||||
printf 'cxx.libs += %s\ncxx.poptions += %s\n' \
|
||||
"$($(tc-getPKG_CONFIG) libpkgconf --libs)" \
|
||||
"$($(tc-getPKG_CONFIG) libpkgconf --cflags)" >> \
|
||||
"${i}" \
|
||||
|| die
|
||||
done
|
||||
sed \
|
||||
-e 's:libpkgconf[/]\?::' \
|
||||
-i buildfile build/bootstrap.build \
|
||||
|| die
|
||||
fi
|
||||
|
||||
cd "${S}" || die
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
pushd ${BS} || die
|
||||
emake -C build2 -f bootstrap.gmake \
|
||||
CXX=$(tc-getCXX) \
|
||||
CXXFLAGS="${CXXFLAGS}" \
|
||||
LDFLAGS="${LDFLAGS}"
|
||||
popd || die
|
||||
|
||||
b configure \
|
||||
config.cxx="$(tc-getCXX)" \
|
||||
config.cxx.coptions="${CXXFLAGS}" \
|
||||
config.cxx.loptions="${LDFLAGS}" \
|
||||
config.c="$(tc-getCC)" \
|
||||
config.cc.coptions="${CFLAGS}" \
|
||||
config.cc.loptions="${LDFLAGS}" \
|
||||
config.bin.ar="$(tc-getAR)" \
|
||||
config.bin.ranlib="$(tc-getRANLIB)" \
|
||||
config.bin.lib=shared \
|
||||
config.install.chroot="${D}" \
|
||||
config.install.root="${EPREFIX}"/usr \
|
||||
config.install.lib="${EPREFIX}"/usr/$(get_libdir) \
|
||||
config.install.doc="${EPREFIX}"/usr/share/doc/${PF}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
b update-for-install
|
||||
use test && b update-for-test
|
||||
}
|
||||
|
||||
src_test() {
|
||||
b test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
b install
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>gienah@gentoo.org</email>
|
||||
<name>Mark Wright</name>
|
||||
</maintainer>
|
||||
<longdescription lang="en">
|
||||
ODB is an open-source, cross-platform, and cross-database
|
||||
object-relational mapping (ORM) system for C++. It allows you
|
||||
to persist C++ objects to a relational database without having
|
||||
to deal with tables, columns, or SQL and without manually
|
||||
writing any mapping code. ODB supports MySQL, SQLite,
|
||||
PostgreSQL, Oracle, and Microsoft SQL Server relational
|
||||
databases as well as C++98/03 and C++11 language standards. It
|
||||
also comes with optional profiles for Boost and Qt which allow
|
||||
you to seamlessly use value types, containers, and smart
|
||||
pointers from these libraries in your persistent C++ classes.
|
||||
</longdescription>
|
||||
</pkgmetadata>
|
@ -0,0 +1,2 @@
|
||||
DIST build2-toolchain-0.13.0.tar.xz 4218940 BLAKE2B ed27290df21e5db843325b3e42c43c6934ce8f2b9b157538b921f9cfe3a7dccc3b56e261053373553cbd7fbff39e912ffe2282f812d0e6f158749ed5748d5e33 SHA512 0485872acd40beb700739b2995f76efcc9811dd52a38ee049576e45fcb5a7d7ae9c718beca8aeab9ab3f1c5e0270d3946f2335f88ec19476577c195417c2dbd4
|
||||
DIST libodb-2.5.0-b.19.tar.gz 101239 BLAKE2B d6c32e4e5bbacafbecf9e992f91604dac4bb50359d41709b81116f09ce805cd2a3388cf14b47acc60d9b5a52867de0725c1dbbc7603dda8ffaf64589b3057ecb SHA512 0a3e70afd2c2ba573676e1a2630986215b4c8e57a004f7d2f2227f301b6c58f739397a0efc8877902baf88b93aff83c9b67c9f5b5e87cc570d64bb76b7b8f66b
|
@ -0,0 +1,52 @@
|
||||
--- build2-toolchain-e135a3112b15c88f0601583ca068f8adea7b605d-orig/build2/libbuild2/cc/module.cxx 2020-07-10 20:12:57.000000000 +1000
|
||||
+++ build2-toolchain-e135a3112b15c88f0601583ca068f8adea7b605d/build2/libbuild2/cc/module.cxx 2020-07-14 14:33:58.939950579 +1000
|
||||
@@ -323,8 +323,6 @@
|
||||
|
||||
#ifndef _WIN32
|
||||
static const dir_path usr_inc ("/usr/include");
|
||||
- static const dir_path usr_loc_lib ("/usr/local/lib");
|
||||
- static const dir_path usr_loc_inc ("/usr/local/include");
|
||||
# ifdef __APPLE__
|
||||
static const dir_path a_usr_inc (
|
||||
"/Library/Developer/CommandLineTools/SDKs/MacOSX*.sdk/usr/include");
|
||||
@@ -486,7 +484,6 @@
|
||||
auto& ls (lib_dirs.first);
|
||||
|
||||
bool ui (find (is.begin (), is.end (), usr_inc) != is.end ());
|
||||
- bool uli (find (is.begin (), is.end (), usr_loc_inc) != is.end ());
|
||||
|
||||
#ifdef __APPLE__
|
||||
// On Mac OS starting from 10.14 there is no longer /usr/include.
|
||||
@@ -509,7 +506,7 @@
|
||||
//
|
||||
// Is Apple's /usr/include.
|
||||
//
|
||||
- if (!ui && !uli)
|
||||
+ if (!ui)
|
||||
{
|
||||
for (const dir_path& d: is)
|
||||
{
|
||||
@@ -521,22 +518,16 @@
|
||||
}
|
||||
}
|
||||
#endif
|
||||
- if (ui || uli)
|
||||
+ if (ui)
|
||||
{
|
||||
- bool ull (find (ls.begin (), ls.end (), usr_loc_lib) != ls.end ());
|
||||
-
|
||||
// Many platforms don't search in /usr/local/lib by default (but do
|
||||
// for headers in /usr/local/include). So add it as the last option.
|
||||
//
|
||||
- if (!ull && exists (usr_loc_lib, true /* ignore_error */))
|
||||
- ls.push_back (usr_loc_lib);
|
||||
|
||||
// FreeBSD is at least consistent: it searches in neither. Quoting
|
||||
// its wiki: "FreeBSD can't even find libraries that it installed."
|
||||
// So let's help it a bit.
|
||||
//
|
||||
- if (!uli && exists (usr_loc_inc, true /* ignore_error */))
|
||||
- is.push_back (usr_loc_inc);
|
||||
}
|
||||
}
|
||||
#endif
|
@ -0,0 +1,111 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
MY_P="${PN}-$(ver_cut 1-3)-b.$(ver_cut 5)"
|
||||
|
||||
BUILD2_PN=build2-toolchain
|
||||
BUILD2_PV="0.13.0"
|
||||
BUILD2_P="${BUILD2_PN}-${BUILD2_PV}"
|
||||
|
||||
inherit toolchain-funcs multiprocessing
|
||||
SRC_URI="https://pkg.cppget.org/1/beta/odb/${MY_P}.tar.gz
|
||||
https://download.build2.org/${BUILD2_PV}/${BUILD2_P}.tar.xz"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
DESCRIPTION="Common ODB runtime library"
|
||||
HOMEPAGE="https://codesynthesis.com/products/odb/"
|
||||
|
||||
LICENSE="|| ( Code-Synthesis-ODB GPL-2 )"
|
||||
SLOT="0"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
RDEPEND="${DEPEND}
|
||||
!<dev-util/build2-0.13.0
|
||||
"
|
||||
|
||||
BS="${WORKDIR}/${BUILD2_P}"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
b() {
|
||||
local myargs=(
|
||||
--jobs $(makeopts_jobs)
|
||||
--verbose 3
|
||||
)
|
||||
export LD_LIBRARY_PATH="${BS}/libbutl/libbutl:${BS}/build2/libbuild2:${BS}/build2/libbuild2/bash:${BS}/build2/libbuild2/in:${BS}/build2/libbuild2/bin:${BS}/build2/libbuild2/c:${BS}/build2/libbuild2/cc:${BS}/build2/libbuild2/cxx:${BS}/build2/libbuild2/version:${BS}/libpkgconf/libpkgconf:${LD_LIBRARY_PATH}"
|
||||
set -- "${BS}"/build2/build2/b-boot "${@}" "${myargs[@]}"
|
||||
echo "${@}"
|
||||
"${@}" || die "${@} failed"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
pushd "${BS}" || die
|
||||
eapply "${FILESDIR}"/build2-0.13.0_alpha0_pre20200710-nousrlocal.patch
|
||||
printf 'cxx.libs += %s\ncxx.poptions += %s\n' \
|
||||
"-L${EPREFIX}/usr/$(get_libdir) $($(tc-getPKG_CONFIG) sqlite3 --libs)" \
|
||||
"$($(tc-getPKG_CONFIG) sqlite3 --cflags)" >> \
|
||||
libodb-sqlite/buildfile \
|
||||
|| die
|
||||
sed \
|
||||
-e 's:libsqlite3[/]\?::' \
|
||||
-i buildfile build/bootstrap.build \
|
||||
|| die
|
||||
|
||||
if has_version dev-util/pkgconf; then
|
||||
for i in build2/build2/buildfile build2/libbuild2/buildfile; do
|
||||
printf 'cxx.libs += %s\ncxx.poptions += %s\n' \
|
||||
"$($(tc-getPKG_CONFIG) libpkgconf --libs)" \
|
||||
"$($(tc-getPKG_CONFIG) libpkgconf --cflags)" >> \
|
||||
"${i}" \
|
||||
|| die
|
||||
done
|
||||
sed \
|
||||
-e 's:libpkgconf[/]\?::' \
|
||||
-i buildfile build/bootstrap.build \
|
||||
|| die
|
||||
fi
|
||||
popd || die
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
pushd "${BS}" || die
|
||||
emake -C build2 -f bootstrap.gmake \
|
||||
CXX=$(tc-getCXX) \
|
||||
CXXFLAGS="${CXXFLAGS}" \
|
||||
LDFLAGS="${LDFLAGS}"
|
||||
popd || die
|
||||
|
||||
b configure \
|
||||
config.cxx="$(tc-getCXX)" \
|
||||
config.cxx.coptions="${CXXFLAGS}" \
|
||||
config.cxx.loptions="${LDFLAGS}" \
|
||||
config.c="$(tc-getCC)" \
|
||||
config.cc.coptions="${CFLAGS}" \
|
||||
config.cc.loptions="${LDFLAGS}" \
|
||||
config.bin.ar="$(tc-getAR)" \
|
||||
config.bin.ranlib="$(tc-getRANLIB)" \
|
||||
config.bin.lib=shared \
|
||||
config.install.chroot="${D}" \
|
||||
config.install.root="${EPREFIX}"/usr \
|
||||
config.install.lib="${EPREFIX}"/usr/$(get_libdir) \
|
||||
config.install.doc="${EPREFIX}"/usr/share/doc/${PF}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
b update-for-install
|
||||
use test && b update-for-test
|
||||
}
|
||||
|
||||
src_test() {
|
||||
b test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
b install
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>gienah@gentoo.org</email>
|
||||
<name>Mark Wright</name>
|
||||
</maintainer>
|
||||
<longdescription lang="en">
|
||||
ODB is an open-source, cross-platform, and cross-database
|
||||
object-relational mapping (ORM) system for C++. It allows you
|
||||
to persist C++ objects to a relational database without having
|
||||
to deal with tables, columns, or SQL and without manually
|
||||
writing any mapping code. ODB supports MySQL, SQLite,
|
||||
PostgreSQL, Oracle, and Microsoft SQL Server relational
|
||||
databases as well as C++98/03 and C++11 language standards. It
|
||||
also comes with optional profiles for Boost and Qt which allow
|
||||
you to seamlessly use value types, containers, and smart
|
||||
pointers from these libraries in your persistent C++ classes.
|
||||
</longdescription>
|
||||
</pkgmetadata>
|
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST phpPgAdmin-5.6.0.tar.bz2 880640 BLAKE2B a49fb97c26c35323b567f06002cc6da9f3efacb4be99633e6ad4d6a53015e557ef3c98a4bf9c4dedf525b86354816e744f6159bad7db6f52fe2c03223f0be9a1 SHA512 afe4c99322bb24bf1895afb20dd87dcad1fc7d887b9271d9dd6b56779a7b5c8aa7293cdc7fa560a62a830adbf5453914a4783a1265915b24594779c0beeaecda
|
||||
DIST phpPgAdmin-7.12.1.tar.bz2 579723 BLAKE2B 58d4992424fb6c9bf8565843c6d76ceecb68212cc311d15d43303fd6b63fe2a611ce146761b8f6b8f992798060d065a0b0e528aed5df217a3078cef9e56c49da SHA512 d64b4796c5acad990ef81b12ebd377474d04c1a65adc41a91a2d278bb975812389bb6eae23490de3f5ce09502d36adea3cacfdec0e868c6a0e0bcb639b8a94db
|
||||
|
@ -0,0 +1,38 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit webapp
|
||||
|
||||
MY_P="phpPgAdmin-${PV}"
|
||||
|
||||
DESCRIPTION="Web-based administration for Postgres database in php"
|
||||
HOMEPAGE="http://phppgadmin.sourceforge.net/"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/releases/download/REL_$(ver_rs 1- -)/${MY_P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="dev-lang/php[postgres,session]"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
src_install() {
|
||||
webapp_src_preinst
|
||||
|
||||
local doc
|
||||
local docs="CREDITS DEVELOPERS FAQ HISTORY INSTALL TODO TRANSLATORS"
|
||||
dodoc ${docs}
|
||||
mv conf/config.inc.php-dist conf/config.inc.php
|
||||
|
||||
cp -r * "${D}"${MY_HTDOCSDIR}
|
||||
for doc in ${docs} INSTALL LICENSE; do
|
||||
rm -f "${D}"${MY_HTDOCSDIR}/${doc}
|
||||
done
|
||||
|
||||
webapp_configfile ${MY_HTDOCSDIR}/conf/config.inc.php
|
||||
webapp_postinst_txt en "${FILESDIR}"/postinstall-en.txt
|
||||
webapp_src_install
|
||||
}
|
Binary file not shown.
@ -1,99 +0,0 @@
|
||||
https://bugs.gentoo.org/708744
|
||||
|
||||
From 6bd6308fcea3541e505651bf8e8127a4a03d22cd Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
Date: Tue, 12 Nov 2019 09:19:18 +0100
|
||||
Subject: [PATCH] Adapt Configure to GCC version 10
|
||||
|
||||
I got a notice from Jeff Law <law@redhat.com>:
|
||||
|
||||
Your particular package fails its testsuite. This was ultimately
|
||||
tracked down to a Configure problem. The perl configure script treated
|
||||
gcc-10 as gcc-1 and turned on -fpcc-struct-return. This is an ABI
|
||||
changing flag and caused Perl to not be able to interact properly with
|
||||
the dbm libraries on the system leading to a segfault.
|
||||
|
||||
His proposed patch corrected only this one instance of the version
|
||||
mismatch. Reading the Configure script revealed more issues. This
|
||||
patch fixes all of them I found.
|
||||
|
||||
Please note I do not have GCC 10 available, I tested it by faking the version
|
||||
with:
|
||||
|
||||
--- a/Configure
|
||||
+++ b/Configure
|
||||
@@ -4701,7 +4701,7 @@ else
|
||||
fi
|
||||
$rm -f try try.*
|
||||
case "$gccversion" in
|
||||
-1*) cpp=`./loc gcc-cpp $cpp $pth` ;;
|
||||
+1.*) cpp=`./loc gcc-cpp $cpp $pth` ;;
|
||||
esac
|
||||
case "$gccversion" in
|
||||
'') gccosandvers='' ;;
|
||||
@@ -4741,7 +4741,7 @@ esac
|
||||
# gcc 3.* complain about adding -Idirectories that they already know about,
|
||||
# so we will take those off from locincpth.
|
||||
case "$gccversion" in
|
||||
-3*)
|
||||
+3.*)
|
||||
echo "main(){}">try.c
|
||||
for incdir in $locincpth; do
|
||||
warn=`$cc $ccflags -I$incdir -c try.c 2>&1 | \
|
||||
@@ -5467,13 +5467,13 @@ fi
|
||||
case "$hint" in
|
||||
default|recommended)
|
||||
case "$gccversion" in
|
||||
- 1*) dflt="$dflt -fpcc-struct-return" ;;
|
||||
+ 1.*) dflt="$dflt -fpcc-struct-return" ;;
|
||||
esac
|
||||
case "$optimize:$DEBUGGING" in
|
||||
*-g*:old) dflt="$dflt -DDEBUGGING";;
|
||||
esac
|
||||
case "$gccversion" in
|
||||
- 2*) if $test -d /etc/conf/kconfig.d &&
|
||||
+ 2.*) if $test -d /etc/conf/kconfig.d &&
|
||||
$contains _POSIX_VERSION $usrinc/sys/unistd.h >/dev/null 2>&1
|
||||
then
|
||||
# Interactive Systems (ISC) POSIX mode.
|
||||
@@ -5482,7 +5482,7 @@ default|recommended)
|
||||
;;
|
||||
esac
|
||||
case "$gccversion" in
|
||||
- 1*) ;;
|
||||
+ 1.*) ;;
|
||||
2.[0-8]*) ;;
|
||||
?*) set strict-aliasing -fno-strict-aliasing
|
||||
eval $checkccflag
|
||||
@@ -5600,7 +5600,7 @@ case "$cppflags" in
|
||||
;;
|
||||
esac
|
||||
case "$gccversion" in
|
||||
-1*) cppflags="$cppflags -D__GNUC__"
|
||||
+1.*) cppflags="$cppflags -D__GNUC__"
|
||||
esac
|
||||
case "$mips_type" in
|
||||
'');;
|
||||
@@ -23103,7 +23103,7 @@ fi
|
||||
|
||||
: add -D_FORTIFY_SOURCE if feasible and not already there
|
||||
case "$gccversion" in
|
||||
-[456789].*) case "$optimize$ccflags" in
|
||||
+[456789].*|[1-9][0-9]*) case "$optimize$ccflags" in
|
||||
*-O*) case "$ccflags$cppsymbols" in
|
||||
*_FORTIFY_SOURCE=*) # Don't add it again.
|
||||
echo "You seem to have -D_FORTIFY_SOURCE already, not adding it." >&4
|
||||
--- a/cflags.SH
|
||||
+++ b/cflags.SH
|
||||
@@ -156,7 +156,7 @@ esac
|
||||
|
||||
case "$gccversion" in
|
||||
'') ;;
|
||||
-[12]*) ;; # gcc versions 1 (gasp!) and 2 are not good for this.
|
||||
+[12].*) ;; # gcc versions 1 (gasp!) and 2 are not good for this.
|
||||
Intel*) ;; # # Is that you, Intel C++?
|
||||
#
|
||||
# NOTE 1: the -std=c89 without -pedantic is a bit pointless.
|
||||
--
|
||||
2.25.0
|
||||
|
@ -0,0 +1,346 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
WANT_LIBTOOL="none"
|
||||
|
||||
inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
|
||||
|
||||
MY_P="Python-${PV}"
|
||||
PYVER=$(ver_cut 1-2)
|
||||
PATCHSET="python-gentoo-patches-${PV}"
|
||||
|
||||
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||
HOMEPAGE="https://www.python.org/"
|
||||
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
|
||||
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="PSF-2"
|
||||
SLOT="${PYVER}"
|
||||
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 )"
|
||||
|
||||
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||
# If you need to apply a patch which requires python for bootstrapping, please
|
||||
# run the bootstrap code on your dev box and include the results in the
|
||||
# patchset. See bug 447752.
|
||||
|
||||
RDEPEND="app-arch/bzip2:=
|
||||
app-arch/xz-utils:=
|
||||
dev-libs/libffi:=
|
||||
sys-apps/util-linux:=
|
||||
>=sys-libs/zlib-1.1.3:=
|
||||
virtual/libcrypt:=
|
||||
virtual/libintl
|
||||
gdbm? ( sys-libs/gdbm:=[berkdb] )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:= )
|
||||
readline? ( >=sys-libs/readline-4.1:= )
|
||||
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:= )
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
)
|
||||
tk? (
|
||||
>=dev-lang/tcl-8.0:=
|
||||
>=dev-lang/tk-8.0:=
|
||||
dev-tcltk/blt:=
|
||||
dev-tcltk/tix
|
||||
)
|
||||
xml? ( >=dev-libs/expat-2.1:= )"
|
||||
# bluetooth requires headers from bluez
|
||||
DEPEND="${RDEPEND}
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
test? ( app-arch/xz-utils[extra-filters(+)] )
|
||||
virtual/pkgconfig
|
||||
!sys-devel/gcc[libffi(-)]"
|
||||
RDEPEND+=" !build? ( app-misc/mime-types )"
|
||||
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
|
||||
|
||||
src_prepare() {
|
||||
# Ensure that internal copies of expat, libffi and zlib are not used.
|
||||
rm -fr Modules/expat || die
|
||||
rm -fr Modules/_ctypes/libffi* || die
|
||||
rm -fr Modules/zlib || die
|
||||
|
||||
local PATCHES=(
|
||||
"${WORKDIR}/${PATCHSET}"
|
||||
)
|
||||
|
||||
default
|
||||
|
||||
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
|
||||
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local disable
|
||||
# disable automagic bluetooth headers detection
|
||||
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
|
||||
use gdbm || disable+=" gdbm"
|
||||
use ncurses || disable+=" _curses _curses_panel"
|
||||
use readline || disable+=" readline"
|
||||
use sqlite || disable+=" _sqlite3"
|
||||
use ssl || export PYTHON_DISABLE_SSL="1"
|
||||
use tk || disable+=" _tkinter"
|
||||
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
|
||||
export PYTHON_DISABLE_MODULES="${disable}"
|
||||
|
||||
if ! use xml; then
|
||||
ewarn "You have configured Python without XML support."
|
||||
ewarn "This is NOT a recommended configuration as you"
|
||||
ewarn "may face problems parsing any XML documents."
|
||||
fi
|
||||
|
||||
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
|
||||
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
|
||||
fi
|
||||
|
||||
if [[ "$(gcc-major-version)" -ge 4 ]]; then
|
||||
append-flags -fwrapv
|
||||
fi
|
||||
|
||||
filter-flags -malign-double
|
||||
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=50309
|
||||
if is-flagq -O3; then
|
||||
is-flagq -fstack-protector-all && replace-flags -O3 -O2
|
||||
use hardened && replace-flags -O3 -O2
|
||||
fi
|
||||
|
||||
# https://bugs.gentoo.org/700012
|
||||
if is-flagq -flto || is-flagq '-flto=*'; then
|
||||
append-cflags $(test-flags-CC -ffat-lto-objects)
|
||||
fi
|
||||
|
||||
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||
tc-export CXX
|
||||
|
||||
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
|
||||
# Needed on FreeBSD unless Python 3.2 is already installed.
|
||||
# Please query BSD team before removing this!
|
||||
append-ldflags "-L."
|
||||
|
||||
# Fix implicit declarations on cross and prefix builds. Bug #674070.
|
||||
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
|
||||
|
||||
local dbmliborder
|
||||
if use gdbm; then
|
||||
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
# glibc-2.30 removes it; since we can't cleanly force-rebuild
|
||||
# Python on glibc upgrade, remove it proactively to give
|
||||
# a chance for users rebuilding python before glibc
|
||||
ac_cv_header_stropts_h=no
|
||||
|
||||
--enable-shared
|
||||
$(use_enable ipv6)
|
||||
--infodir='${prefix}/share/info'
|
||||
--mandir='${prefix}/share/man'
|
||||
--with-computed-gotos
|
||||
--with-dbmliborder="${dbmliborder}"
|
||||
--with-libc=
|
||||
--enable-loadable-sqlite-extensions
|
||||
--without-ensurepip
|
||||
--with-system-expat
|
||||
--with-system-ffi
|
||||
)
|
||||
|
||||
OPT="" econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Ensure sed works as expected
|
||||
# https://bugs.gentoo.org/594768
|
||||
local -x LC_ALL=C
|
||||
|
||||
emake CPPFLAGS= CFLAGS= LDFLAGS=
|
||||
|
||||
# Work around bug 329499. See also bug 413751 and 457194.
|
||||
if has_version dev-libs/libffi[pax_kernel]; then
|
||||
pax-mark E python
|
||||
else
|
||||
pax-mark m python
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Tests will not work when cross compiling.
|
||||
if tc-is-cross-compiler; then
|
||||
elog "Disabling tests due to crosscompiling."
|
||||
return
|
||||
fi
|
||||
|
||||
# Skip failing tests.
|
||||
local skipped_tests="gdb"
|
||||
|
||||
for test in ${skipped_tests}; do
|
||||
mv "${S}"/Lib/test/test_${test}.py "${T}"
|
||||
done
|
||||
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
|
||||
emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
local result=$?
|
||||
|
||||
for test in ${skipped_tests}; do
|
||||
mv "${T}/test_${test}.py" "${S}"/Lib/test
|
||||
done
|
||||
|
||||
elog "The following tests have been skipped:"
|
||||
for test in ${skipped_tests}; do
|
||||
elog "test_${test}.py"
|
||||
done
|
||||
|
||||
elog "If you would like to run them, you may:"
|
||||
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
|
||||
elog "and run the tests separately."
|
||||
|
||||
if [[ ${result} -ne 0 ]]; then
|
||||
die "emake test failed"
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local libdir=${ED}/usr/lib/python${PYVER}
|
||||
|
||||
emake DESTDIR="${D}" altinstall
|
||||
|
||||
# Remove static library
|
||||
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
|
||||
|
||||
sed \
|
||||
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
|
||||
-e "s/\(PY_LDFLAGS=\).*/\1/" \
|
||||
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
|
||||
|
||||
# Fix collisions between different slots of Python.
|
||||
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
|
||||
|
||||
# Cheap hack to get version with ABIFLAGS
|
||||
local abiver=$(cd "${ED}/usr/include"; echo python*)
|
||||
if [[ ${abiver} != python${PYVER} ]]; then
|
||||
# Replace python3.X with a symlink to python3.Xm
|
||||
rm "${ED}/usr/bin/python${PYVER}" || die
|
||||
dosym "${abiver}" "/usr/bin/python${PYVER}"
|
||||
# Create python3.X-config symlink
|
||||
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
|
||||
# Create python-3.5m.pc symlink
|
||||
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
|
||||
fi
|
||||
|
||||
# python seems to get rebuilt in src_install (bug 569908)
|
||||
# Work around it for now.
|
||||
if has_version dev-libs/libffi[pax_kernel]; then
|
||||
pax-mark E "${ED}/usr/bin/${abiver}"
|
||||
else
|
||||
pax-mark m "${ED}/usr/bin/${abiver}"
|
||||
fi
|
||||
|
||||
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
|
||||
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
|
||||
|
||||
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
|
||||
|
||||
dodoc Misc/{ACKS,HISTORY,NEWS}
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
find Tools -name __pycache__ -exec rm -fr {} + || die
|
||||
dodoc -r Tools
|
||||
fi
|
||||
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
|
||||
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
|
||||
emake --no-print-directory -s -f - 2>/dev/null)
|
||||
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
|
||||
|
||||
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
|
||||
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
|
||||
sed \
|
||||
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
|
||||
-e "s:@PYDOC@:pydoc${PYVER}:" \
|
||||
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
|
||||
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
|
||||
|
||||
local -x EPYTHON=python${PYVER}
|
||||
# if not using a cross-compiler, use the fresh binary
|
||||
if ! tc-is-cross-compiler; then
|
||||
local -x PYTHON=./python
|
||||
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
|
||||
else
|
||||
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
|
||||
fi
|
||||
|
||||
echo "EPYTHON='${EPYTHON}'" > epython.py || die
|
||||
python_domodule epython.py
|
||||
|
||||
# python-exec wrapping support
|
||||
local pymajor=${PYVER%.*}
|
||||
local scriptdir=${D}$(python_get_scriptdir)
|
||||
mkdir -p "${scriptdir}" || die
|
||||
# python and pythonX
|
||||
ln -s "../../../bin/${abiver}" \
|
||||
"${scriptdir}/python${pymajor}" || die
|
||||
ln -s "python${pymajor}" "${scriptdir}/python" || die
|
||||
# python-config and pythonX-config
|
||||
# note: we need to create a wrapper rather than symlinking it due
|
||||
# to some random dirname(argv[0]) magic performed by python-config
|
||||
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
|
||||
#!/bin/sh
|
||||
exec "${abiver}-config" "\${@}"
|
||||
EOF
|
||||
chmod +x "${scriptdir}/python${pymajor}-config" || die
|
||||
ln -s "python${pymajor}-config" \
|
||||
"${scriptdir}/python-config" || die
|
||||
# 2to3, pydoc
|
||||
ln -s "../../../bin/2to3-${PYVER}" \
|
||||
"${scriptdir}/2to3" || die
|
||||
ln -s "../../../bin/pydoc${PYVER}" \
|
||||
"${scriptdir}/pydoc" || die
|
||||
# idle
|
||||
if use tk; then
|
||||
ln -s "../../../bin/idle${PYVER}" \
|
||||
"${scriptdir}/idle" || die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
|
||||
python_updater_warning="1"
|
||||
fi
|
||||
}
|
||||
|
||||
eselect_python_update() {
|
||||
if [[ -z "$(eselect python show)" || \
|
||||
! -f "${EROOT}/usr/bin/$(eselect python show)" ]]; then
|
||||
eselect python update
|
||||
fi
|
||||
|
||||
if [[ -z "$(eselect python show --python${PV%%.*})" || \
|
||||
! -f "${EROOT}/usr/bin/$(eselect python show --python${PV%%.*})" ]]
|
||||
then
|
||||
eselect python update --python${PV%%.*}
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
eselect_python_update
|
||||
|
||||
if [[ "${python_updater_warning}" == "1" ]]; then
|
||||
ewarn "You have just upgraded from an older version of Python."
|
||||
ewarn
|
||||
ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
eselect_python_update
|
||||
}
|
@ -0,0 +1,323 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
WANT_LIBTOOL="none"
|
||||
|
||||
inherit autotools check-reqs flag-o-matic pax-utils python-utils-r1 \
|
||||
toolchain-funcs
|
||||
|
||||
MY_P="Python-${PV/_beta/b}"
|
||||
PYVER=$(ver_cut 1-2)
|
||||
PATCHSET="python-gentoo-patches-${PV/_beta/b}"
|
||||
|
||||
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||
HOMEPAGE="https://www.python.org/"
|
||||
SRC_URI="https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz
|
||||
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="PSF-2"
|
||||
SLOT="${PYVER}"
|
||||
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 )"
|
||||
|
||||
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||
# If you need to apply a patch which requires python for bootstrapping, please
|
||||
# run the bootstrap code on your dev box and include the results in the
|
||||
# patchset. See bug 447752.
|
||||
|
||||
RDEPEND="app-arch/bzip2:=
|
||||
app-arch/xz-utils:=
|
||||
dev-libs/libffi:=
|
||||
sys-apps/util-linux:=
|
||||
>=sys-libs/zlib-1.1.3:=
|
||||
virtual/libcrypt:=
|
||||
virtual/libintl
|
||||
gdbm? ( sys-libs/gdbm:=[berkdb] )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:= )
|
||||
readline? ( >=sys-libs/readline-4.1:= )
|
||||
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:= )
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
)
|
||||
tk? (
|
||||
>=dev-lang/tcl-8.0:=
|
||||
>=dev-lang/tk-8.0:=
|
||||
dev-tcltk/blt:=
|
||||
dev-tcltk/tix
|
||||
)
|
||||
xml? ( >=dev-libs/expat-2.1:= )"
|
||||
# bluetooth requires headers from bluez
|
||||
DEPEND="${RDEPEND}
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
test? ( app-arch/xz-utils[extra-filters(+)] )
|
||||
virtual/pkgconfig
|
||||
!sys-devel/gcc[libffi(-)]"
|
||||
RDEPEND+=" !build? ( app-misc/mime-types )"
|
||||
PDEPEND=">=app-eselect/eselect-python-20140125-r1"
|
||||
|
||||
# large file tests involve a 2.5G file being copied (duplicated)
|
||||
CHECKREQS_DISK_BUILD=5500M
|
||||
|
||||
pkg_pretend() {
|
||||
use test && check-reqs_pkg_pretend
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
use test && check-reqs_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Ensure that internal copies of expat, libffi and zlib are not used.
|
||||
rm -fr Modules/expat || die
|
||||
rm -fr Modules/_ctypes/libffi* || die
|
||||
rm -fr Modules/zlib || die
|
||||
|
||||
local PATCHES=(
|
||||
"${WORKDIR}/${PATCHSET}"
|
||||
)
|
||||
|
||||
default
|
||||
|
||||
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
|
||||
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local disable
|
||||
# disable automagic bluetooth headers detection
|
||||
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
|
||||
use gdbm || disable+=" gdbm"
|
||||
use ncurses || disable+=" _curses _curses_panel"
|
||||
use readline || disable+=" readline"
|
||||
use sqlite || disable+=" _sqlite3"
|
||||
use ssl || export PYTHON_DISABLE_SSL="1"
|
||||
use tk || disable+=" _tkinter"
|
||||
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
|
||||
export PYTHON_DISABLE_MODULES="${disable}"
|
||||
|
||||
if ! use xml; then
|
||||
ewarn "You have configured Python without XML support."
|
||||
ewarn "This is NOT a recommended configuration as you"
|
||||
ewarn "may face problems parsing any XML documents."
|
||||
fi
|
||||
|
||||
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
|
||||
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
|
||||
fi
|
||||
|
||||
if [[ "$(gcc-major-version)" -ge 4 ]]; then
|
||||
append-flags -fwrapv
|
||||
fi
|
||||
|
||||
filter-flags -malign-double
|
||||
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=50309
|
||||
if is-flagq -O3; then
|
||||
is-flagq -fstack-protector-all && replace-flags -O3 -O2
|
||||
use hardened && replace-flags -O3 -O2
|
||||
fi
|
||||
|
||||
# https://bugs.gentoo.org/700012
|
||||
if is-flagq -flto || is-flagq '-flto=*'; then
|
||||
append-cflags $(test-flags-CC -ffat-lto-objects)
|
||||
fi
|
||||
|
||||
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||
tc-export CXX
|
||||
|
||||
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
|
||||
# Needed on FreeBSD unless Python 3.2 is already installed.
|
||||
# Please query BSD team before removing this!
|
||||
append-ldflags "-L."
|
||||
|
||||
# Fix implicit declarations on cross and prefix builds. Bug #674070.
|
||||
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
|
||||
|
||||
local dbmliborder
|
||||
if use gdbm; then
|
||||
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
# glibc-2.30 removes it; since we can't cleanly force-rebuild
|
||||
# Python on glibc upgrade, remove it proactively to give
|
||||
# a chance for users rebuilding python before glibc
|
||||
ac_cv_header_stropts_h=no
|
||||
|
||||
--enable-shared
|
||||
$(use_enable ipv6)
|
||||
--infodir='${prefix}/share/info'
|
||||
--mandir='${prefix}/share/man'
|
||||
--with-computed-gotos
|
||||
--with-dbmliborder="${dbmliborder}"
|
||||
--with-libc=
|
||||
--enable-loadable-sqlite-extensions
|
||||
--without-ensurepip
|
||||
--with-system-expat
|
||||
--with-system-ffi
|
||||
)
|
||||
|
||||
OPT="" econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Ensure sed works as expected
|
||||
# https://bugs.gentoo.org/594768
|
||||
local -x LC_ALL=C
|
||||
|
||||
emake CPPFLAGS= CFLAGS= LDFLAGS=
|
||||
|
||||
# Work around bug 329499. See also bug 413751 and 457194.
|
||||
if has_version dev-libs/libffi[pax_kernel]; then
|
||||
pax-mark E python
|
||||
else
|
||||
pax-mark m python
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Tests will not work when cross compiling.
|
||||
if tc-is-cross-compiler; then
|
||||
elog "Disabling tests due to crosscompiling."
|
||||
return
|
||||
fi
|
||||
|
||||
# Skip failing tests.
|
||||
local skipped_tests="gdb"
|
||||
|
||||
for test in ${skipped_tests}; do
|
||||
mv "${S}"/Lib/test/test_${test}.py "${T}"
|
||||
done
|
||||
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
|
||||
emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
local result=$?
|
||||
|
||||
for test in ${skipped_tests}; do
|
||||
mv "${T}/test_${test}.py" "${S}"/Lib/test
|
||||
done
|
||||
|
||||
elog "The following tests have been skipped:"
|
||||
for test in ${skipped_tests}; do
|
||||
elog "test_${test}.py"
|
||||
done
|
||||
|
||||
elog "If you would like to run them, you may:"
|
||||
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
|
||||
elog "and run the tests separately."
|
||||
|
||||
if [[ ${result} -ne 0 ]]; then
|
||||
die "emake test failed"
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local libdir=${ED}/usr/lib/python${PYVER}
|
||||
|
||||
emake DESTDIR="${D}" altinstall
|
||||
|
||||
# Remove static library
|
||||
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
|
||||
|
||||
sed \
|
||||
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
|
||||
-e "s/\(PY_LDFLAGS=\).*/\1/" \
|
||||
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
|
||||
|
||||
# Fix collisions between different slots of Python.
|
||||
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
|
||||
|
||||
# Cheap hack to get version with ABIFLAGS
|
||||
local abiver=$(cd "${ED}/usr/include"; echo python*)
|
||||
if [[ ${abiver} != python${PYVER} ]]; then
|
||||
# Replace python3.X with a symlink to python3.Xm
|
||||
rm "${ED}/usr/bin/python${PYVER}" || die
|
||||
dosym "${abiver}" "/usr/bin/python${PYVER}"
|
||||
# Create python3.X-config symlink
|
||||
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
|
||||
# Create python-3.5m.pc symlink
|
||||
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
|
||||
fi
|
||||
|
||||
# python seems to get rebuilt in src_install (bug 569908)
|
||||
# Work around it for now.
|
||||
if has_version dev-libs/libffi[pax_kernel]; then
|
||||
pax-mark E "${ED}/usr/bin/${abiver}"
|
||||
else
|
||||
pax-mark m "${ED}/usr/bin/${abiver}"
|
||||
fi
|
||||
|
||||
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
|
||||
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
|
||||
|
||||
dodoc Misc/{ACKS,HISTORY,NEWS}
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
find Tools -name __pycache__ -exec rm -fr {} + || die
|
||||
dodoc -r Tools
|
||||
fi
|
||||
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
|
||||
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
|
||||
emake --no-print-directory -s -f - 2>/dev/null)
|
||||
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
|
||||
|
||||
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
|
||||
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
|
||||
sed \
|
||||
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
|
||||
-e "s:@PYDOC@:pydoc${PYVER}:" \
|
||||
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
|
||||
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
|
||||
|
||||
local -x EPYTHON=python${PYVER}
|
||||
# if not using a cross-compiler, use the fresh binary
|
||||
if ! tc-is-cross-compiler; then
|
||||
local -x PYTHON=./python
|
||||
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
|
||||
else
|
||||
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
|
||||
fi
|
||||
|
||||
echo "EPYTHON='${EPYTHON}'" > epython.py || die
|
||||
python_domodule epython.py
|
||||
|
||||
# python-exec wrapping support
|
||||
local pymajor=${PYVER%.*}
|
||||
local scriptdir=${D}$(python_get_scriptdir)
|
||||
mkdir -p "${scriptdir}" || die
|
||||
# python and pythonX
|
||||
ln -s "../../../bin/${abiver}" \
|
||||
"${scriptdir}/python${pymajor}" || die
|
||||
ln -s "python${pymajor}" "${scriptdir}/python" || die
|
||||
# python-config and pythonX-config
|
||||
# note: we need to create a wrapper rather than symlinking it due
|
||||
# to some random dirname(argv[0]) magic performed by python-config
|
||||
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
|
||||
#!/bin/sh
|
||||
exec "${abiver}-config" "\${@}"
|
||||
EOF
|
||||
chmod +x "${scriptdir}/python${pymajor}-config" || die
|
||||
ln -s "python${pymajor}-config" \
|
||||
"${scriptdir}/python-config" || die
|
||||
# 2to3, pydoc
|
||||
ln -s "../../../bin/2to3-${PYVER}" \
|
||||
"${scriptdir}/2to3" || die
|
||||
ln -s "../../../bin/pydoc${PYVER}" \
|
||||
"${scriptdir}/pydoc" || die
|
||||
# idle
|
||||
if use tk; then
|
||||
ln -s "../../../bin/idle${PYVER}" \
|
||||
"${scriptdir}/idle" || die
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -0,0 +1,43 @@
|
||||
From fd89e242d16128dedef08f47d99ae56aa19b0591 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?=C3=98rjan=20Malde?= <red@foxi.me>
|
||||
Date: Wed, 15 Jul 2020 12:16:16 +0200
|
||||
Subject: [PATCH] Include limits.h for INT_MAX
|
||||
|
||||
---
|
||||
lib/zip_crypto_openssl.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/lib/zip_crypto_openssl.c b/lib/zip_crypto_openssl.c
|
||||
index 1cb00479..60f92758 100644
|
||||
--- a/lib/zip_crypto_openssl.c
|
||||
+++ b/lib/zip_crypto_openssl.c
|
||||
@@ -38,6 +38,7 @@
|
||||
#include "zip_crypto.h"
|
||||
|
||||
#include <openssl/rand.h>
|
||||
+#include <limits.h>
|
||||
|
||||
#if OPENSSL_VERSION_NUMBER < 0x1010000fL || defined(LIBRESSL_VERSION_NUMBER)
|
||||
#define USE_OPENSSL_1_0_API
|
||||
|
||||
From b4a4f778806fe2c3ca9ec57c0411a8dcf462e655 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Klausner <tk@giga.or.at>
|
||||
Date: Wed, 15 Jul 2020 12:38:07 +0200
|
||||
Subject: [PATCH] Include limits.h for INT_MAX.
|
||||
|
||||
---
|
||||
lib/zip_crypto_mbedtls.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/lib/zip_crypto_mbedtls.c b/lib/zip_crypto_mbedtls.c
|
||||
index c348ad2a..7063c6b6 100644
|
||||
--- a/lib/zip_crypto_mbedtls.c
|
||||
+++ b/lib/zip_crypto_mbedtls.c
|
||||
@@ -41,6 +41,7 @@
|
||||
#include <mbedtls/entropy.h>
|
||||
#include <mbedtls/pkcs5.h>
|
||||
|
||||
+#include <limits.h>
|
||||
|
||||
_zip_crypto_aes_t *
|
||||
_zip_crypto_aes_new(const zip_uint8_t *key, zip_uint16_t key_size, zip_error_t *error) {
|
Binary file not shown.
@ -0,0 +1,115 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6..9} )
|
||||
inherit cmake llvm llvm.org python-any-r1
|
||||
|
||||
DESCRIPTION="OCaml bindings for LLVM"
|
||||
HOMEPAGE="https://llvm.org/"
|
||||
LLVM_COMPONENTS=( llvm )
|
||||
llvm.org_set_globals
|
||||
|
||||
# Keep in sync with sys-devel/llvm
|
||||
ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC AVR )
|
||||
ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
|
||||
NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore
|
||||
"${ALL_LLVM_EXPERIMENTAL_TARGETS[@]}" )
|
||||
ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
|
||||
LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?}
|
||||
|
||||
LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~arm ~x86"
|
||||
IUSE="debug test ${ALL_LLVM_TARGETS[*]}"
|
||||
REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-lang/ocaml-4.00.0:0=
|
||||
dev-ml/ocaml-ctypes:=
|
||||
~sys-devel/llvm-${PV}:=[${LLVM_TARGET_USEDEPS// /,},debug?]
|
||||
!sys-devel/llvm[ocaml(-)]"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="
|
||||
dev-lang/perl
|
||||
dev-ml/findlib
|
||||
test? ( dev-ml/ounit )
|
||||
${PYTHON_DEPS}"
|
||||
|
||||
pkg_setup() {
|
||||
LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup
|
||||
python-any-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local libdir=$(get_libdir)
|
||||
local mycmakeargs=(
|
||||
-DLLVM_LIBDIR_SUFFIX=${libdir#lib}
|
||||
|
||||
-DBUILD_SHARED_LIBS=OFF
|
||||
-DLLVM_BUILD_LLVM_DYLIB=ON
|
||||
-DLLVM_LINK_LLVM_DYLIB=ON
|
||||
-DLLVM_OCAML_OUT_OF_TREE=ON
|
||||
|
||||
# cheap hack: LLVM combines both anyway, and the only difference
|
||||
# is that the former list is explicitly verified at cmake time
|
||||
-DLLVM_TARGETS_TO_BUILD=""
|
||||
-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
|
||||
-DLLVM_BUILD_TESTS=$(usex test)
|
||||
|
||||
# disable various irrelevant deps and settings
|
||||
-DLLVM_ENABLE_FFI=OFF
|
||||
-DLLVM_ENABLE_TERMINFO=OFF
|
||||
-DHAVE_HISTEDIT_H=NO
|
||||
-DLLVM_ENABLE_ASSERTIONS=$(usex debug)
|
||||
-DLLVM_ENABLE_EH=ON
|
||||
-DLLVM_ENABLE_RTTI=ON
|
||||
|
||||
-DLLVM_HOST_TRIPLE="${CHOST}"
|
||||
|
||||
# disable go bindings
|
||||
-DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND
|
||||
|
||||
# TODO: ocamldoc
|
||||
)
|
||||
|
||||
use test && mycmakeargs+=(
|
||||
-DLLVM_LIT_ARGS="$(get_lit_flags)"
|
||||
)
|
||||
|
||||
# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
|
||||
# also: custom rules for OCaml do not work for CPPFLAGS
|
||||
use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
|
||||
cmake_src_configure
|
||||
|
||||
local llvm_libdir=$(llvm-config --libdir)
|
||||
# an ugly hack; TODO: figure out a way to pass -L to ocaml...
|
||||
cd "${BUILD_DIR}/${libdir}" || die
|
||||
ln -s "${llvm_libdir}"/*.so . || die
|
||||
|
||||
if use test; then
|
||||
local llvm_bindir=$(llvm-config --bindir)
|
||||
# Force using system-installed tools.
|
||||
sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
|
||||
"${BUILD_DIR}"/test/lit.site.cfg.py || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cmake_build ocaml_all
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# respect TMPDIR!
|
||||
local -x LIT_PRESERVES_TMP=1
|
||||
cmake_build check-llvm-bindings-ocaml
|
||||
}
|
||||
|
||||
src_install() {
|
||||
DESTDIR="${D}" \
|
||||
cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
|
||||
|
||||
dodoc bindings/ocaml/README.txt
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,95 +0,0 @@
|
||||
From 604bc53a3beec173020c944ce9cb38afca2a9126 Mon Sep 17 00:00:00 2001
|
||||
From: Tobias Oberstein <tobias.oberstein@crossbario.com>
|
||||
Date: Fri, 9 Mar 2018 10:37:31 +0100
|
||||
Subject: [PATCH] Fix cs test (#955)
|
||||
|
||||
* encode test string
|
||||
|
||||
* already an instance
|
||||
|
||||
* add extra deps (encryption)
|
||||
|
||||
* add extra deps
|
||||
|
||||
* deactivate py 3.3, tx < 15.4
|
||||
|
||||
* systematic version coverage
|
||||
|
||||
* fix coverage (hopefully)
|
||||
|
||||
* another try
|
||||
|
||||
* actually need to yield, as a future is returned
|
||||
---
|
||||
.travis.yml | 58 ++++++++++++++++++++++++++++++++---
|
||||
Makefile | 3 ++
|
||||
autobahn/asyncio/rawsocket.py | 2 +-
|
||||
autobahn/wamp/test/test_cryptosign.py | 18 +++++++++--
|
||||
tox.ini | 32 ++++++++++---------
|
||||
5 files changed, 89 insertions(+), 24 deletions(-)
|
||||
|
||||
diff --git a/autobahn/asyncio/rawsocket.py b/autobahn/asyncio/rawsocket.py
|
||||
index 130a8e41..bbb83337 100644
|
||||
--- a/autobahn/asyncio/rawsocket.py
|
||||
+++ b/autobahn/asyncio/rawsocket.py
|
||||
@@ -408,7 +408,7 @@ class WampRawSocketClientProtocol(WampRawSocketMixinGeneral, WampRawSocketMixinA
|
||||
@property
|
||||
def serializer_id(self):
|
||||
if not hasattr(self, '_serializer'):
|
||||
- self._serializer = self.factory._serializer()
|
||||
+ self._serializer = self.factory._serializer
|
||||
return self._serializer.RAWSOCKET_SERIALIZER_ID
|
||||
|
||||
def get_channel_id(self, channel_id_type=u'tls-unique'):
|
||||
diff --git a/autobahn/wamp/test/test_cryptosign.py b/autobahn/wamp/test/test_cryptosign.py
|
||||
index 700ca3cc..78f8d556 100644
|
||||
--- a/autobahn/wamp/test/test_cryptosign.py
|
||||
+++ b/autobahn/wamp/test/test_cryptosign.py
|
||||
@@ -25,9 +25,21 @@
|
||||
###############################################################################
|
||||
|
||||
from __future__ import absolute_import
|
||||
+
|
||||
import hashlib
|
||||
+import os
|
||||
+
|
||||
from mock import Mock
|
||||
|
||||
+import txaio
|
||||
+
|
||||
+if os.environ.get('USE_TWISTED', False):
|
||||
+ txaio.use_twisted()
|
||||
+elif os.environ.get('USE_ASYNCIO', False):
|
||||
+ txaio.use_asyncio()
|
||||
+else:
|
||||
+ raise Exception('no networking framework selected')
|
||||
+
|
||||
from autobahn.wamp.cryptosign import _makepad, HAS_CRYPTOSIGN
|
||||
from autobahn.wamp import types
|
||||
from autobahn.wamp.auth import create_authenticator
|
||||
@@ -59,14 +71,14 @@ def setUp(self):
|
||||
self.key = SigningKey.from_ssh_data(keybody)
|
||||
self.privkey_hex = self.key._key.encode(encoder=HexEncoder)
|
||||
m = hashlib.sha256()
|
||||
- m.update("some TLS message")
|
||||
+ m.update("some TLS message".encode())
|
||||
self.channel_id = m.digest()
|
||||
|
||||
def test_valid(self):
|
||||
session = Mock()
|
||||
session._transport.get_channel_id = Mock(return_value=self.channel_id)
|
||||
challenge = types.Challenge(u"ticket", dict(challenge="ff" * 32))
|
||||
- signed = self.key.sign_challenge(session, challenge)
|
||||
+ signed = yield self.key.sign_challenge(session, challenge)
|
||||
self.assertEqual(
|
||||
u'9b6f41540c9b95b4b7b281c3042fa9c54cef43c842d62ea3fd6030fcb66e70b3e80d49d44c29d1635da9348d02ec93f3ed1ef227dfb59a07b580095c2b82f80f9d16ca518aa0c2b707f2b2a609edeca73bca8dd59817a633f35574ac6fd80d00',
|
||||
signed.result,
|
||||
@@ -81,7 +93,7 @@ def test_authenticator(self):
|
||||
session = Mock()
|
||||
session._transport.get_channel_id = Mock(return_value=self.channel_id)
|
||||
challenge = types.Challenge(u"cryptosign", dict(challenge="ff" * 32))
|
||||
- reply = authenticator.on_challenge(session, challenge)
|
||||
+ reply = yield authenticator.on_challenge(session, challenge)
|
||||
self.assertEqual(
|
||||
reply.result,
|
||||
u'9b6f41540c9b95b4b7b281c3042fa9c54cef43c842d62ea3fd6030fcb66e70b3e80d49d44c29d1635da9348d02ec93f3ed1ef227dfb59a07b580095c2b82f80f9d16ca518aa0c2b707f2b2a609edeca73bca8dd59817a633f35574ac6fd80d00',
|
@ -0,0 +1,40 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6..9} )
|
||||
inherit llvm.org python-r1
|
||||
|
||||
DESCRIPTION="Python bindings for sys-devel/clang"
|
||||
HOMEPAGE="https://llvm.org/"
|
||||
LLVM_COMPONENTS=( clang/bindings/python )
|
||||
llvm.org_set_globals
|
||||
|
||||
LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
IUSE="test"
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# The module is opening libclang.so directly, and doing some blasphemy
|
||||
# on top of it.
|
||||
RDEPEND="
|
||||
>=sys-devel/clang-${PV}:*
|
||||
!sys-devel/llvm:0[clang(-),python(-)]
|
||||
!sys-devel/clang:0[python(-)]
|
||||
${PYTHON_DEPS}"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
python_test() {
|
||||
"${EPYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
python_foreach_impl python_test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
python_foreach_impl python_domodule clang
|
||||
}
|
@ -1,4 +1,6 @@
|
||||
DIST cryptography-2.8.tar.gz 504516 BLAKE2B 3a853bf59a752acee9e9607f3f35f3815701c6068a1ffa5b6604ec648a31a5d4e31f13a1b19f3156c703313800242d8b06dd71a54a4eb0cc68481dea894002f3 SHA512 bf3ca44123c693b0602be19445925f9efebd46c469909e47b7907d57141fb6bd99268c33e1fe3f42a08ab8b4edd4f98f21b6a682f530352313334dfd31ba91e7
|
||||
DIST cryptography-2.9.tar.gz 517211 BLAKE2B 3889812dadce01f09c509f5bcdf26405fd1cd2de7064cdbf0f68338894cf65dfe0c6a607867db614b35ad11da4546af2371cf59836dbbbd3037db84241cf71ec SHA512 7db2846b901e42ddc4caa9851235e5a0894ef702d4c4692eb60fcae17bc4e7833782a8001679ea41b78f9273d7d68a4b85810248590e12ca33cfade3208e2849
|
||||
DIST cryptography-3.0.tar.gz 534725 BLAKE2B f6f4d5cfcf42a9ca2288bdc7c61bd0ae2f98999868951798f358d6ec9dbbcddb31102b0954f983bb9c118df53a8483e74aa2395ce366a9a97b6b9164b0044bd2 SHA512 4fca5d0e59f02f23c7e2d5c80f86e4cf36eeeb9a128e7b3332a91aa0b9dcdd3282a882a88ea34ffba1e91687eb6d1fc1042774f1e30970e9bf56ee701c32ac15
|
||||
DIST cryptography_vectors-2.8.tar.gz 35102030 BLAKE2B 8e98e12bab31a2097a72c849f52ee93b9b684a8923c140722419154471bd695c6287ff4498c9fe326662c7d9a9f5d9ebaa55dc4d5a0d8180a6827ae244464006 SHA512 d328082d3a65b8036d396172d7e42c753c842e9310850a77c6ccd99c9905d48bbc3e3319d216013c1370b8439f0f8056749ae94b1abf9a5b7088435acdeed7fb
|
||||
DIST cryptography_vectors-2.9.tar.gz 35140661 BLAKE2B 870245659f6a64566f823116d8b4ba017981eb41148e9dcde9cac372eb6703a7b4580040b487cd8773160d5bd989fa9d5bb1788ac550b28e76bde8c9f6cd56c7 SHA512 025ed48855f182b926e3eeb5dca1033eb7f43c419bd6ea71accfed38b4d9ef4cbbf5af60bc28a39e3d6723de2d4091bd226e30c0e572a2e0d43a95a12c1bb7a2
|
||||
DIST cryptography_vectors-3.0.tar.gz 35156155 BLAKE2B 987fa88873bb3ec9745a150906e868c1aea14bb9e618c5c65348deb4e8618f89b15a8d70ea6ed0760649505f5649dd2fbf1e40fadad193faf3a92922ed234025 SHA512 a24c6f25c0acf79cea534fc86d61d9697c004a18204043457cf1a955751e8313893c63258f82ada523a9608b7ec0e5a7a7047ddcbd20e0c55d7c6392bc61c24f
|
||||
|
@ -0,0 +1,60 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{6..9} pypy3 )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
|
||||
inherit distutils-r1 flag-o-matic
|
||||
|
||||
VEC_P=cryptography_vectors-${PV}
|
||||
DESCRIPTION="Library providing cryptographic recipes and primitives"
|
||||
HOMEPAGE="https://github.com/pyca/cryptography/ https://pypi.org/project/cryptography/"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
|
||||
test? ( mirror://pypi/c/cryptography_vectors/${VEC_P}.tar.gz )"
|
||||
|
||||
LICENSE="|| ( Apache-2.0 BSD )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="libressl idna test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# the openssl 1.0.2l-r1 needs to be updated again :(
|
||||
# It'd theb be able to go into the || section again
|
||||
#=dev-libs/openssl-1.0.2l-r1:0
|
||||
# the following is the original section, disallowing bindist entirely
|
||||
#!libressl? ( >=dev-libs/openssl-1.0.2:0=[-bindist(-)] )
|
||||
RDEPEND="
|
||||
!libressl? ( >=dev-libs/openssl-1.0.2o-r6:0= )
|
||||
libressl? ( >=dev-libs/libressl-2.9.1:0= )
|
||||
idna? ( >=dev-python/idna-2.1[${PYTHON_USEDEP}] )
|
||||
>=dev-python/six-1.4.1[${PYTHON_USEDEP}]
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/enum34[${PYTHON_USEDEP}]
|
||||
dev-python/ipaddress[${PYTHON_USEDEP}]
|
||||
' -2)
|
||||
$(python_gen_cond_dep '
|
||||
>=dev-python/cffi-1.8:=[${PYTHON_USEDEP}]
|
||||
' 'python*')
|
||||
"
|
||||
BDEPEND="${RDEPEND}
|
||||
test? (
|
||||
dev-python/pretend[${PYTHON_USEDEP}]
|
||||
dev-python/iso8601[${PYTHON_USEDEP}]
|
||||
dev-python/pytz[${PYTHON_USEDEP}]
|
||||
>=dev-python/hypothesis-1.11.4[${PYTHON_USEDEP}]
|
||||
dev-python/pyasn1-modules[${PYTHON_USEDEP}]
|
||||
dev-python/pytest[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
DOCS=( AUTHORS.rst CONTRIBUTING.rst README.rst )
|
||||
|
||||
python_configure_all() {
|
||||
append-cflags $(test-flags-CC -pthread)
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local -x PYTHONPATH=${PYTHONPATH}:${WORKDIR}/${VEC_P}
|
||||
pytest -vv || die "Tests fail with ${EPYTHON}"
|
||||
}
|
@ -1,3 +1,2 @@
|
||||
DIST libvirt-python-6.0.0.tar.gz 196791 BLAKE2B 8fa524d76277fc0278158205f25da8a4331c732a7cbdbe7d9ef9c697b8d5758d8f4182ac749212f4b7c147cde5648fa8cd245cbe0ae809e9079ef654def3c4a1 SHA512 1d64bdb430d099c6e72259e49d99aa985b9ba745c543d3a12ad614c48e1334a3607e093d93612c34e8ec3990e880f3d66fd33199605f2ec9a419193bbb839d58
|
||||
DIST libvirt-python-6.1.0.tar.gz 196848 BLAKE2B 352cd4da292ffbe41fa7d06e862204507c89f8e5a7a2951a1a6e22b66d8c27b6a7394071bcf6eb025b00b7dba40a655c02f56f4c38278ba4bb0848f174642881 SHA512 a7994e21cbd5aa9c16aa4baa0e314ab3d71b15692e50da8f243994aee7393cc4dd2a27b39def87599ecfc32764980c71069ce4c904edc379219bd76a6344ce1e
|
||||
DIST libvirt-python-6.2.0.tar.gz 196971 BLAKE2B e11c82bd98c62072c14992c485339337bcc3639bbd56154185834c145f76984ced9f09f7f05c302609ce6629a8d13db77debd6f3d85e8fdb00c818bbe51cc552 SHA512 91f6940f60670221c914ee7ffc8d89a74222bcacbbf1afd5f679479f1e1bcec563f297a8e8359d6f51a1eee29162e39e2a276f5277fcec551d50f112e304a947
|
||||
DIST libvirt-python-6.5.0.tar.gz 198753 BLAKE2B 90951af538c664f5da20cfced6b81dc2b06d36e723b3c41a0b2763bf0d73d3036d7e84a2db57f20fa2bd1ede8fb01c45dad9e5097a9f6008579dae319f825898 SHA512 a69c75b615f674bbb89fdb3e5cfc3dddfde68adffd0599e9d03f1552bb765823dc003859fe713ac0a324835c61f909bd43518571ddde8f99c37bee2416f094eb
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue