Sync with portage [Fri Jun 1 08:55:34 MSK 2018].

mhiretskiy 1150
root 6 years ago
parent 59250f9edb
commit 78ba9e82ee

Binary file not shown.

Binary file not shown.

@ -1,5 +1,3 @@
diff --git a/configure.in b/configure.in
index d78e8b2..15e8666 100644
--- a/configure.in
+++ b/configure.in
@@ -2,11 +2,10 @@ dnl Process this file with autoconf to produce a configure script.

@ -1,6 +1,5 @@
diff -NrU5 yasr-0.6.9.orig/yasr/yasr.h yasr-0.6.9/yasr/yasr.h
--- yasr-0.6.9.orig/yasr/yasr.h 2008-06-29 01:23:44.000000000 +0200
+++ yasr-0.6.9/yasr/yasr.h 2008-06-29 01:37:00.000000000 +0200
--- a/yasr/yasr.h
+++ b/yasr/yasr.h
@@ -306,22 +306,10 @@
extern void opt_say(int num, int flag);
extern void opt_set(int num, void *val);

@ -1,5 +1,3 @@
diff --git a/configure.in b/configure.in
index c26f577..d78e8b2 100644
--- a/configure.in
+++ b/configure.in
@@ -57,7 +57,7 @@ fi
@ -7,7 +5,7 @@ index c26f577..d78e8b2 100644
AM_GNU_GETTEXT(external)
-AM_GNU_GETTEXT_VERSION([0.17])
+AM_GNU_GETTEXT_VERSION([0.18.1])
+AM_GNU_GETTEXT_VERSION([0.19])
AC_OUTPUT([ m4/Makefile
Makefile

@ -1,6 +1,5 @@
diff -Naur yasr-0.6.9.orig/Makefile.am yasr-0.6.9/Makefile.am
--- yasr-0.6.9.orig/Makefile.am 2008-02-02 06:44:05.000000000 -0600
+++ yasr-0.6.9/Makefile.am 2009-02-06 08:37:07.000000000 -0600
--- a/Makefile.am
+++ b/Makefile.am
@@ -7,7 +7,6 @@
SUBDIRS = \
@ -14,9 +13,8 @@ diff -Naur yasr-0.6.9.orig/Makefile.am yasr-0.6.9/Makefile.am
README-ru
-ACLOCAL_AMFLAGS = -I m4
diff -Naur yasr-0.6.9.orig/configure.in yasr-0.6.9/configure.in
--- yasr-0.6.9.orig/configure.in 2008-02-02 07:09:04.000000000 -0600
+++ yasr-0.6.9/configure.in 2009-02-06 08:36:43.000000000 -0600
--- a/configure.in
+++ b/configure.in
@@ -59,8 +59,7 @@
AM_GNU_GETTEXT(external)
AM_GNU_GETTEXT_VERSION([0.17])

@ -1,10 +1,11 @@
# Copyright 1999-2013 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=2
inherit autotools eutils
EAPI=6
DESCRIPTION="general-purpose console screen reader"
inherit autotools
DESCRIPTION="General-purpose console screen reader"
HOMEPAGE="http://yasr.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
@ -16,36 +17,36 @@ IUSE="nls"
RDEPEND=""
DEPEND="nls? ( sys-devel/gettext )"
PATCHES=(
"${FILESDIR}"/${PN}-0.6.9-automake113.patch
"${FILESDIR}"/${PN}-0.6.9-gettext019.patch
"${FILESDIR}"/${PN}-0.6.9-gcc43.patch
"${FILESDIR}"/${PN}-0.6.9-remove-m4.patch
)
src_prepare() {
default
local x=/usr/share/gettext/po/Makefile.in.in
[[ -e $x ]] && cp -f $x po/ #330879
[[ -e $x ]] && cp -f $x po/ || die #330879
rm -r "${S}"/m4 || die
epatch "${FILESDIR}"/${P}-automake113.patch \
"${FILESDIR}"/${P}-gettext018.patch \
"${FILESDIR}"/${P}-gcc43.patch \
"${FILESDIR}"/${P}-remove-m4.patch
sed -i \
's:^\(synthesizer=emacspeak server\):#\1:
s:^\(synthesizer port=|/usr/local/bin/eflite\):#\1:
s:^#\(synthesizer=speech dispatcher\):\1:
s:^#\(synthesizer port=127.0.0.1.6560\):\1:' yasr.conf || die
rm -r "${S}"/m4
mv configure.{in,ac} || die
eautoreconf
}
src_configure() {
econf \
--datadir=/etc \
--disable-dependency-tracking \
--datadir="${EPREFIX}"/etc \
$(use_enable nls)
}
src_install() {
emake DESTDIR="${D}" install || die
dodoc README ChangeLog AUTHORS BUGS CREDITS
dosed \
's:^\(synthesizer=emacspeak server\):#\1:
s:^\(synthesizer port=|/usr/local/bin/eflite\):#\1:
s:^#\(synthesizer=speech dispatcher\):\1:
s:^#\(synthesizer port=127.0.0.1.6560\):\1:' /etc/yasr/yasr.conf
}
pkg_postinst() {
elog
elog "Speech-dispatcher is configured as the default synthesizer for yasr."

Binary file not shown.

@ -10,7 +10,7 @@ SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc64-solaris ~x64-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc64-solaris ~x64-solaris"
IUSE="libressl ssl"
RESTRICT="test"

@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit pam systemd
inherit bash-completion-r1 pam systemd
DESCRIPTION="Monitoring and managing daemons or similar programs running on a Unix system"
HOMEPAGE="http://mmonit.com/monit/"
@ -11,7 +11,7 @@ SRC_URI="http://mmonit.com/monit/dist/${P}.tar.gz"
LICENSE="AGPL-3"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux"
IUSE="libressl pam ssl"
IUSE="ipv6 libressl pam ssl"
RDEPEND="
ssl? (
@ -30,7 +30,12 @@ src_prepare() {
}
src_configure() {
econf $(use_with ssl) $(use_with pam)
local myeconfargs=(
$(use_with ipv6)
$(use_with pam)
$(use_with ssl)
)
econf "${myeconfargs[@]}"
}
src_install() {
@ -43,6 +48,8 @@ src_install() {
systemd_dounit "${FILESDIR}"/${PN}.service
use pam && newpamd "${FILESDIR}"/${PN}.pamd ${PN}
dobashcomp system/bash/monit
}
pkg_postinst() {

Binary file not shown.

@ -12,7 +12,7 @@ SRC_URI="https://download.savannah.gnu.org/releases-noredirect/${PN}/${P/_/-}.ta
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
S="${WORKDIR}/${P/_/-}"

@ -9,3 +9,38 @@
#include <sys/types.h>
#endif
https://svnweb.freebsd.org/ports/head/archivers/p7zip/files/patch-CPP_Windows_ErrorMsg.cpp?view=markup&pathrev=458172
This fixes the build with Clang 6.0:
../../../../CPP/Windows/ErrorMsg.cpp:24:10: error: case value evaluates to -2147024809, which cannot be narrowed to type 'DWORD' (aka 'unsigned int') [-Wc++11-narrowing]
case E_INVALIDARG : txt = "E_INVALIDARG"; break ;
^
../../../../CPP/Common/MyWindows.h:89:22: note: expanded from macro 'E_INVALIDARG'
#define E_INVALIDARG ((HRESULT)0x80070057L)
^
The HRESULT cast in the macro causes the value to be read as signed int.
--- a/CPP/Windows/ErrorMsg.cpp
+++ b/CPP/Windows/ErrorMsg.cpp
@@ -15,13 +15,13 @@ UString MyFormatMessage(DWORD errorCode)
switch(errorCode) {
case ERROR_NO_MORE_FILES : txt = "No more files"; break ;
- case E_NOTIMPL : txt = "E_NOTIMPL"; break ;
- case E_NOINTERFACE : txt = "E_NOINTERFACE"; break ;
- case E_ABORT : txt = "E_ABORT"; break ;
- case E_FAIL : txt = "E_FAIL"; break ;
- case STG_E_INVALIDFUNCTION : txt = "STG_E_INVALIDFUNCTION"; break ;
- case E_OUTOFMEMORY : txt = "E_OUTOFMEMORY"; break ;
- case E_INVALIDARG : txt = "E_INVALIDARG"; break ;
+ case (DWORD)(E_NOTIMPL) : txt = "E_NOTIMPL"; break ;
+ case (DWORD)(E_NOINTERFACE) : txt = "E_NOINTERFACE"; break ;
+ case (DWORD)(E_ABORT) : txt = "E_ABORT"; break ;
+ case (DWORD)(E_FAIL) : txt = "E_FAIL"; break ;
+ case (DWORD)(STG_E_INVALIDFUNCTION) : txt = "STG_E_INVALIDFUNCTION"; break ;
+ case (DWORD)(E_OUTOFMEMORY) : txt = "E_OUTOFMEMORY"; break ;
+ case (DWORD)(E_INVALIDARG) : txt = "E_INVALIDARG"; break ;
case ERROR_DIRECTORY : txt = "Error Directory"; break ;
default:
txt = strerror(errorCode);

Binary file not shown.

@ -1,2 +1,3 @@
DIST ophcrack-3.6.0.tar.bz2 288830 BLAKE2B bc2782d08cb84df24b745fdf0e9723e058da614b73a8d25dfe77cfa2ce291eaf8abd83006a9a410f80bdd240eb81fc402d6d5ebd1c9b92b5a7f1785a203c0c7a SHA512 caa9090b622acac1114f5635c2c58a2c32453ae21a96fc4f424cbc197b056872c282cf9d41142e316a1ffbc9523832b8bc7355c1503c15ac8579470de407a5c9
DIST ophcrack-3.7.0.tar.bz2 294045 BLAKE2B f506d29b27b4b90eadfd4d650512aea54db4228c4c63b90827a7957b544ab59dae757fc521fe62ab3be55d97e483ddde2aea9ad08c96b77d156e863a61f26312 SHA512 27e73979ca3d733629b9b34c490488cc27140efb8b90d266f270c0b95572cf40319a3fb658c02448fc7a3b825cf05c18a69f5d91bd0656d8410a30645f8dc8c6
DIST ophcrack-3.8.0.tar.bz2 293033 BLAKE2B f20bf79d5cafffaab0667b073e8d9dbcfbae0a16f4139b6304c3f6fc80a24f6ca673db9cd53e28ff277ec35821539f3960265aa28467795e25c45049acca3f31 SHA512 c66276b72299744d3e0c9fc14220c7f568e383bd324c1ede228bda5d51da78db817388421c9f5f8cd2f18687e7e53cfb0c65bcc0354b3d55ac16324c61f62dbd

@ -0,0 +1,43 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
inherit eutils
DESCRIPTION="A time-memory-trade-off-cracker"
HOMEPAGE="http://ophcrack.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="debug libressl qt5 +tables"
CDEPEND="!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
net-libs/netwib
qt5? ( dev-qt/qtcharts:5
dev-qt/qtgui:5 )"
DEPEND="app-arch/unzip
virtual/pkgconfig
${CDEPEND}"
RDEPEND="tables? ( app-crypt/ophcrack-tables )
${CDEPEND}"
src_configure() {
local myconf
myconf="$(use_enable debug)"
myconf="${myconf} $(use_enable qt5 gui)"
econf ${myconf} || die "Failed to compile"
}
src_install() {
emake install DESTDIR="${D}" || die "Installation failed."
cd "${S}"
newicon src/gui/pixmaps/os.xpm ophcrack.xpm
make_desktop_entry "${PN}" OphCrack ophcrack
}

Binary file not shown.

@ -1 +1,2 @@
DIST diskimage-builder-2.14.1.tar.gz 348188 BLAKE2B 3d751fc3f05578a7b5296c8b7ebde1b8dd0a38e40dc378fded93faa34c623db2abeac53c72048ce7ebd5747eb50a4f9e5525baba800adc4b2c1925f31a1dce0b SHA512 d056c89e78b3f42ccc5ced2dfdd9ac1c50ecdcb6861f81bdb3cd3c9d624fbba89c2a2b9ed08850dd79ff9fdf47fcaa3d3519b32f909bd1b0b12bbacf4d9ab758
DIST diskimage-builder-2.15.0.tar.gz 350322 BLAKE2B 6eca37edbf556bf8aece189117510946dcc687af17060add95a1efd1a9136f16597b2f9ef3b0beead0079566c83e19683eb0019ea290fa3b5cc5b132aa97eca8 SHA512 ffc0a1938c02140144d3e057f24c051a620f66ca400cc65c7d1743adcb94d1e1f3c99811addac0a9fb47fc81a73713c2edc2d26f7526098e69b05fb9144176ea

@ -0,0 +1,37 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit distutils-r1
DESCRIPTION="Golden Disk Image builder."
HOMEPAGE="http://docs.openstack.org/developer/diskimage-builder/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
IUSE=""
CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
!~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]"
DEPEND="${CDEPEND}
dev-python/setuptools[${PYTHON_USEDEP}]"
RDEPEND="${CDEPEND}
>=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
!~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
>=dev-python/networkx-1.10[${PYTHON_USEDEP}]
<dev-python/networkx-2.0[${PYTHON_USEDEP}]
>=dev-python/pyyaml-3.12[${PYTHON_USEDEP}]
>=dev-python/flake8-2.5.4[${PYTHON_USEDEP}]
<dev-python/flake8-2.6.0[${PYTHON_USEDEP}]
>=dev-python/six-1.10.0[${PYTHON_USEDEP}]
>=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
app-emulation/qemu
sys-block/parted
sys-fs/multipath-tools
sys-fs/dosfstools
sys-apps/gptfdisk
!dev-python/dib-utils[${PYTHON_USEDEP}]"

@ -0,0 +1 @@
DIST img-0.3.6.tar.gz 6043716 BLAKE2B 982a6f470f4b79cd4cc2b06be4060f516786f700872510948a25d5ad313cccf402b0fe26c053f7505b66c170221274568ce44632729c16e1ade680b5dc007b0d SHA512 911cf6a761741a04553d5e526399973c0e943cfda5eead7f94196969fed4f586134358b1e6f023c6cf07e755de802e498991eb320bd50af32649749622a26969

@ -0,0 +1,32 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit golang-build golang-vcs-snapshot
EGO_PN="github.com/genuinetools/img"
EGIT_COMMIT="v${PV}"
GIT_COMMIT="e4a43d044778e3df56e0de3c6ca00706fcca8b50"
ARCHIVE_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
DESCRIPTION="Standalone daemon-less unprivileged Dockerfile and OCI container image builder"
HOMEPAGE="https://github.com/genuinetools/img"
SRC_URI="${ARCHIVE_URI}"
LICENSE="MIT"
SLOT="0"
IUSE="seccomp"
RESTRICT="test"
src_compile() {
local TAGS=$(usex seccomp 'seccomp' '')
pushd src/${EGO_PN} || die
GOPATH="${S}" go build -tags ${TAGS} -v -ldflags "-X ${EGO_PN}/version.GITCOMMIT=${GIT_COMMIT} -X ${EGO_PN}/version.VERSION=${PV}" -o "${S}"/bin/img . || die
popd || die
}
src_install() {
dobin bin/*
dodoc -r src/${EGO_PN}/README.md
}

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mrueg@gentoo.org</email>
<name>Manuel Rüger</name>
</maintainer>
<upstream>
<remote-id type="github">genuinetools/img</remote-id>
</upstream>
</pkgmetadata>

@ -0,0 +1 @@
DIST reg-0.13.0.tar.gz 14958008 BLAKE2B 7afdb3f00732ad3fe4e8581d0773ba3d8ed4e9d41704e5aec7e45f16e407d19cc30cf8d4461d32719200b0253d26b609ff641c760b220685edb98bfb49f9b6b6 SHA512 7b9c23de23b798e9da4902a00d965c62452997240f53980eda478c8fa59ade985ca2f25fbe902597bcb32440dfcd41bd72c4631b4f4be956a48b75875e134018

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mrueg@gentoo.org</email>
<name>Manuel Rüger</name>
</maintainer>
<upstream>
<remote-id type="github">genuinetools/reg</remote-id>
</upstream>
</pkgmetadata>

@ -0,0 +1,31 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit golang-build golang-vcs-snapshot
EGO_PN="github.com/genuinetools/reg"
EGIT_COMMIT="v${PV}"
GIT_COMMIT="b2cdf0428ddc051f8a39143b63311b515e26d012"
ARCHIVE_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
DESCRIPTION="Docker registry v2 command line client"
HOMEPAGE="https://github.com/genuinetools/reg"
SRC_URI="${ARCHIVE_URI}"
LICENSE="MIT"
SLOT="0"
IUSE=""
RESTRICT="test"
src_compile() {
pushd src/${EGO_PN} || die
GOPATH="${S}" go build -v -ldflags "-X ${EGO_PN}/version.GITCOMMIT=${GIT_COMMIT} -X ${EGO_PN}/version.VERSION=${PV}" -o "${S}"/bin/reg . || die
popd || die
}
src_install() {
dobin bin/*
dodoc src/${EGO_PN}/README.md
}

@ -16,7 +16,9 @@ fi
IUSE="spirv-tools"
RDEPEND="spirv-tools? ( dev-util/spirv-tools:=[${MULTILIB_USEDEP}] )
media-libs/vulkan-loader[${MULTILIB_USEDEP}]
x11-libs/xcb-util-keysyms:=[${MULTILIB_USEDEP}]"
x11-libs/xcb-util:=[${MULTILIB_USEDEP}]
x11-libs/xcb-util-keysyms:=[${MULTILIB_USEDEP}]
x11-libs/xcb-util-wm:=[${MULTILIB_USEDEP}]"
DEPEND="${RDEPEND}
dev-util/spirv-headers

@ -16,7 +16,9 @@ fi
IUSE="spirv-tools"
RDEPEND="spirv-tools? ( dev-util/spirv-tools:=[${MULTILIB_USEDEP}] )
media-libs/vulkan-loader[${MULTILIB_USEDEP}]
x11-libs/xcb-util-keysyms:=[${MULTILIB_USEDEP}]"
x11-libs/xcb-util:=[${MULTILIB_USEDEP}]
x11-libs/xcb-util-keysyms:=[${MULTILIB_USEDEP}]
x11-libs/xcb-util-wm:=[${MULTILIB_USEDEP}]"
DEPEND="${RDEPEND}
dev-util/spirv-headers

Binary file not shown.

@ -1,8 +1,7 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=2
inherit eutils
EAPI=6
DESCRIPTION="A library to render text and shapes into a buffer usable by the Logitech G15"
HOMEPAGE="https://sourceforge.net/projects/g15tools/"
@ -23,13 +22,11 @@ src_configure() {
}
src_install() {
emake DESTDIR="${D}" install || die "make install failed"
default
newinitd "${FILESDIR}/${P}.initd" ${PN}
newconfd "${FILESDIR}/${P}.confd" ${PN}
dodoc AUTHORS README ChangeLog
if use examples ; then
exeinto "/usr/share/${PN}"
doexe examples/*

@ -1,8 +1,8 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python{2_7,3_4,3_5} )
PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
PYTHON_REQ_USE="ncurses"
inherit python-r1

Binary file not shown.

@ -1 +1,2 @@
DIST unsymlink-lib-12.tar.gz 8689 BLAKE2B 3c170886bfa3980ef0d51be1e3636afcd700aad94514a2783a1bf221970022fb4812640ac0c2f54e6b0d3b93244a64221b092768425faa1ddcfdc21ba76d9cd1 SHA512 e964cf8dae4107cbe0f5a304e693794d50316b914cca6cdf068ac3e715c8a6fab44d96ec38bd34e5c4f65dd169629bcaca3a0b6ce3256c3d40dbff69dac56fe5
DIST unsymlink-lib-13.tar.gz 8736 BLAKE2B 5b44112299232185f3f7a5d88057caa7e9161ca03a3e79bebd9dbf70a61ddde255d3a24679b9004cc572fedcfc24ffeb42693319e5dfa1f8371f8fed1408b15d SHA512 c87676b80259f2a20fde257e2b090380c3b04be1542a5a92832487327b8d1eb737059a6e6898f713fa378b792e23d2896280b94cb00d7961a0beba81cd6b3bd2

@ -0,0 +1,28 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python{2_7,3_{4,5,6}} )
inherit python-single-r1
DESCRIPTION="Convert your system to SYMLINK_LIB=no"
HOMEPAGE="https://github.com/mgorny/unsymlink-lib"
SRC_URI="https://github.com/mgorny/unsymlink-lib/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="${PYTHON_DEPS}
|| (
sys-apps/portage[${PYTHON_USEDEP}]
sys-apps/portage-mgorny[${PYTHON_USEDEP}]
)"
src_install() {
python_doscript unsymlink-lib
dodoc README
}

Binary file not shown.

@ -1,136 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# Old ebuild to help with people doing live upgrades w/old portage versions.
# We use the bundled versions of readline & termcap to avoid external deps
# (which in turn would require those packages to keep an old EAPI version).
EAPI="2"
inherit eutils flag-o-matic toolchain-funcs
# Official patchlevel
# See ftp://ftp.cwru.edu/pub/bash/bash-4.3-patches/
PLEVEL=${PV##*_p}
MY_PV=${PV/_p*}
MY_PV=${MY_PV/_/-}
MY_P=${PN}-${MY_PV}
[[ ${PV} != *_p* ]] && PLEVEL=0
patches() {
local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
[[ ${plevel} -eq 0 ]] && return 1
eval set -- {1..${plevel}}
set -- $(printf "${pn}${pv/\.}-%03d " "$@")
if [[ ${opt} == -s ]] ; then
echo "${@/#/${DISTDIR}/}"
else
local u
for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
printf "${u}/${pn}-${pv}-patches/%s " "$@"
done
fi
}
DESCRIPTION="The standard GNU Bourne again shell"
HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
LICENSE="GPL-3"
SLOT="0"
#KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
# Note: We export this because portage wants it enabled.
IUSE="+readline"
S=${WORKDIR}/${MY_P}
src_unpack() {
unpack ${MY_P}.tar.gz
}
src_prepare() {
# Include official patches
[[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
# Avoid regenerating docs after patches #407985
sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
touch -r . doc/*
epatch "${FILESDIR}"/${PN}-4.3-compat-lvl.patch
epatch "${FILESDIR}"/${PN}-4.3-append-process-segfault.patch
epatch "${FILESDIR}"/${PN}-4.3-mapfile-improper-array-name-validation.patch
epatch "${FILESDIR}"/${PN}-4.3-arrayfunc.patch
}
src_configure() {
local myconf=()
# For descriptions of these, see config-top.h
# bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426
append-cppflags \
-DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \
-DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
-DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
-DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
-DNON_INTERACTIVE_LOGIN_SHELLS \
-DSSH_SOURCE_BASHRC \
-DUSE_MKTEMP -DUSE_MKSTEMP
# Force internal copy of termcap to be used (to avoid ncurses dep).
export bash_cv_termcap_lib=gnutermcap
# Disable the plugins logic by hand since bash doesn't
# provide a way of doing it.
export ac_cv_func_dl{close,open,sym}=no \
ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
sed -i \
-e '/LOCAL_LDFLAGS=/s:-rdynamic::' \
configure || die
tc-export AR #444070
econf \
--docdir='$(datarootdir)'/doc/${PF} \
--htmldir='$(docdir)/html' \
--disable-nls \
--without-curses \
--without-afs \
--disable-net-redirections \
--disable-profiling \
--disable-mem-scramble \
--without-bash-malloc \
--enable-readline \
--enable-history \
--enable-bang-history \
"${myconf[@]}"
}
src_compile() {
emake || die
}
src_install() {
local f
emake DESTDIR="${D}" install || die
dodir /bin
mv "${D}"/usr/bin/bash "${D}"/bin/ || die
dosym bash /bin/rbash
insinto /etc/bash
doins "${FILESDIR}"/bash_logout
doins "${FILESDIR}"/bashrc
keepdir /etc/bash/bashrc.d
insinto /etc/skel
for f in bash{_logout,_profile,rc} ; do
newins "${FILESDIR}"/dot-${f} .${f}
done
local sed_args=(
-e "s:#${USERLAND}#@::"
-e '/#@/d'
)
sed -i \
"${sed_args[@]}" \
"${D}"/etc/skel/.bashrc \
"${D}"/etc/bash/bashrc || die
}

Binary file not shown.

@ -1 +1 @@
DIST libnumbertext-1.0_beta2.tar.gz 407135 BLAKE2B 6fecc6c885fbd9a2a701e5d3c10d38205e2d66a9e1e26609da8dd3ae92d2a954528ba011e7442fee0f4ffb3035ebe9381076a3eaac368e15a98a02508828997c SHA512 0db0e800495507b6173a134b1d2e681c326df56fc6fdaf5ae9e69e9f10ccfde1ad13b2150fb6120d15bd401c348a58570cbcad1b0be01fd80e24b67a67fd236a
DIST libnumbertext-1.0_beta3.tar.gz 415089 BLAKE2B 2e0e493f9553b363418c9a0003fef8ac20f28d4beebebcfb1beceddc693010dbeeafbfa4f1887feda2861f17a8397a78f8a836d8b87c0af96e1fad2ef3e77d10 SHA512 7afe747a243933c42d4e2c4b9de0d2a2d98bf990decd0f5a6b31b7ffca4a0a76c1d4f657612e50dabe07a1355331595c997e1cdd561760efba5b62779e1adfa1

Binary file not shown.

@ -1 +1,2 @@
DIST vimoutliner-0.3.6.zip 249053 BLAKE2B 329fbf73423291598a104881299200153c6d98cf75f3884c690879dc3460c4190c09eefec55415589f16a426ee76911a8ee7761a158d76b9e84360f5fadb83eb SHA512 20d348ff1b1b9572956fdc56b75e742b25b7deac2637fa6972a1e451edc1f679d8255847a291b84c80866a9ad8a37421524b8eb33565a1bb32ff2b75d0b68dde
DIST vimoutliner-0.4.0_p20180301.tar.gz 367361 BLAKE2B a97df5c154e6ed9b3209bd90bd57b4166877f02b9513351fda0e841de84334a1e592e1ed56b46cc59bc6bb64f3c763cdca81df3f8696f3c348a8ef4744124c02 SHA512 f9f369e7e7f09dac04b58a27a86dc2121b3aacd0002537db348517e779fd1b7c9e88ae905b4b42aace10f79cb8f91acada1ad58e26f2257e46d1af98347eab62

@ -0,0 +1,42 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit python-single-r1 vim-plugin vcs-snapshot
# Commit Date: 1 Mar 2018
COMMIT="4f12628247940d98eedd594961695dc504261058"
DESCRIPTION="Vim plugin for easy and fast outlining"
HOMEPAGE="https://github.com/vimoutliner/vimoutliner"
SRC_URI="https://github.com/vimoutliner/vimoutliner/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
KEYWORDS="~amd64 ~x86"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
VIM_PLUGIN_HELPFILES="vimoutliner"
VIM_PLUGIN_MESSAGES="filetype"
RDEPEND="dev-python/autopep8"
DEPEND="${RDEPEND}"
src_prepare() {
default
sed -i -e '1s:^:#!/usr/bin/python\n:' vimoutliner/scripts/otl2latex/otl2latex.py
find "${S}" -type f -exec chmod a+r {} \; || die
}
src_compile() {
local pyscript _pyscript
for pyscript in $(find "${S}" -type f -name \*.py); do
_pyscript=$(basename "${pyscript}")
[ ${_pyscript} == "otl.py" ] && continue
python_fix_shebang -q "${pyscript}"
done
}

Binary file not shown.

@ -1,2 +1 @@
DIST tree-2.65.tar.gz 197695 BLAKE2B a2e7e88852f41a5344657da399a25ab9ba8484e72ff0a3a8a550085eb85770060d9691a427979412adf6b5147cb16179bea415aafd9f7758cee996436d03ab5e SHA512 59e8a7052c36082d8dfe848c88fbbc68d2d88ad50426559b218de850bd8953fd7a5142d028785b5c080d4ac67e1c6ff517ad6342365d021b29d4bfa259b9a552
DIST tree-2.81.tar.gz 1167128 BLAKE2B ea92724b16fc7ea8a5f0036f5a7a57d000d66b332b4ba46139463f707f95922f38b1d4d56a6d2fca0a3c4ece8f11e28bbf4aa6bec5c5a7bc59ccaa36a01413d6 SHA512 85e910fdb19ffd03ae79302a95ebffdb44725fd9f291a61d6912f743b54fe9b3d1c863e00c7e75d238f428946809e42c7ae6379b1051688fb06ee6c6d761d294

@ -1,41 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=2
inherit eutils toolchain-funcs
DESCRIPTION="An STL-like tree class"
HOMEPAGE="http://www.aei.mpg.de/~peekas/tree/"
SRC_URI="http://www.aei.mpg.de/~peekas/tree/${P}.tar.gz"
LICENSE="|| ( GPL-2 GPL-3 )"
SLOT="0"
KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
IUSE="doc"
DEPEND=""
RDEPEND="${DEPEND}"
src_prepare() {
# test was buggy, reported upstream
epatch \
"${FILESDIR}"/${PN}-2.62-test.patch \
"${FILESDIR}"/${P}-gcc46.patch
}
src_test() {
$(tc-getCXX) ${CXXFLAGS} test_tree.cc -o test_tree \
|| die "compile test failed"
./test_tree > mytest.output || die "running test failed"
diff -Nu test_tree.output mytest.output || die "test dist failed"
}
src_install() {
insinto /usr/include
doins tree.hh tree_util.hh || die
insinto /usr/share/doc/${PF}
doins tree_example.cc || die
if use doc; then
doins tree.pdf || die
fi
}

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -10,7 +10,7 @@ SRC_URI="${HOMEPAGE}/releases/download/${PV}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0/0.0.7"
KEYWORDS="amd64 ~ppc x86"
KEYWORDS="amd64 ia64 ~ppc x86"
IUSE="static-libs"
DOCS=( Changes.md )

@ -1,3 +1,4 @@
DIST skalibs-2.3.2.0.tar.gz 205976 BLAKE2B 01e1694515093494d0d216e5b5f17524118c6fd3f5fe23b775c50055269472a8d82883b8a8a9f40b35c5bc1f36d867a1daca7f279d316b3789fbfc0c56c882d8 SHA512 f5a4b85fc43f49eccf5a2ac2ce5b142afc28fe4af781e59d1ad21a7eb5896075720230391234fcf7879cb29ba2d1624926d8cca77c3925327aa7a9a5fefff91a
DIST skalibs-2.6.1.0.tar.gz 210504 BLAKE2B 47be3c920d7e0db9baa5982c5e1273e3132636d84767b5a0087bcbda0c18039b0ca26428c1db9a33a0ed5186a9c94860c73aaccd7ecf38da21e56e9b3e5ffb4d SHA512 52db44f398bcc08a2b4243a32254fef87d11f152dd6e9f8fa85dcc548fff5dcd1ef83ffbd32aa572837f344f9a3e4a31f156edd5ad6b4274d8138fbf24213a57
DIST skalibs-2.6.3.0.tar.gz 224463 BLAKE2B 0b051cb027b2c7335c5b6d581aeb8ff4fce8262b58551a9a0ec87d03148280a66be07a0f589731c65ef9b5298e64be93a5bd2a45818bc131cb2df5f31ac1040e SHA512 4f904cde17fa91070317b9ddd542715c5b4e19a8ccb3ae3b2eb014a782ae66b38033f7f5614d92cfb64e251aa4e97e11c03695f161cdd2b122b61fd3e627af9a
DIST skalibs-2.6.4.0.tar.gz 226780 BLAKE2B 80d01d3696452b54d0247c8e523c059bb5ecd59fdea0d18a80992c3db70deab935fce13b5559835f98ccfacf81a2a81e8a6b432b67f851a42f8441f7f7ecc19e SHA512 19062853bd9df0dadeceaab96aca9d2a68d93aada7552d306902d1b13c55d421bbff7fd37dccaf1a81d66bbecf43ed2242961fdb7bd51ff22e9b6114c1b2bb77

@ -0,0 +1,48 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit versionator
DESCRIPTION="skarnet.org general-purpose libraries"
HOMEPAGE="https://www.skarnet.org/software/skalibs/"
SRC_URI="https://www.skarnet.org/software/${PN}/${P}.tar.gz"
LICENSE="ISC"
SLOT="0/$(get_version_component_range 1-2)"
KEYWORDS="~amd64 ~arm ~x86"
IUSE="doc ipv6 static-libs"
DEPEND=">=sys-devel/make-3.81"
RDEPEND=""
HTML_DOCS="doc/*"
src_prepare() {
default
# Remove QA warning about LDFLAGS addition
sed -i "s/tryldflag LDFLAGS_AUTO -Wl,--hash-style=both/:/" "${S}/configure" || die
# configure overrides gentoo's -fstack-protector default
sed -i "/^tryflag CFLAGS -fno-stack-protector$/d" "${S}/configure" || die
}
src_configure() {
econf \
--datadir=/etc \
--dynlibdir=/$(get_libdir) \
--libdir=/usr/$(get_libdir)/${PN} \
--sysdepdir=/usr/$(get_libdir)/${PN} \
--enable-clock \
--enable-shared \
$(use_enable static-libs static) \
$(use_enable ipv6)
}
src_install() {
emake DESTDIR="${D}" install
use doc && einstalldocs
}

Binary file not shown.

@ -1,3 +1,2 @@
DIST igbinary-2.0.1.tar.gz 178227 BLAKE2B fe6d7fdcf9f228bb41caa342530a7bfd0d105d413a236043f175de2c432e0d2017126500b1940f1aad4211da088d261903ac03f0a0801822e3cbae129fc7b83d SHA512 230a730aa39102401ac6e386452b6f1d523a46c1cd6f3edc8e48ecaf9be1efd60edd0299b0cf56af8b1e32ebba1f80be8bca3727661412b084c4e248f44c9633
DIST igbinary-2.0.4.tar.gz 179588 BLAKE2B 40624f4572622d42f57cea48739deb7374f459a9d06e2329d4489d3f394cf3f5f5628db9e5e9842df1219d97f83021623fb08ad35758e95331cbe1ec9a601c93 SHA512 4f3159dfc4c4e660b171d7958fcd3c0628b6310b23c8c13b6821e8517d437928583b225a84990f30b095f7fe771fb66ba5e933417cce56bf46872803312692c2
DIST igbinary-2.0.5.tar.gz 183869 BLAKE2B 8bb56ff0213c77dbc17cf65962e23579935b2330ca2107b8e6e00461a486e60df4209c375e9f74d17bb0a745136fa776233b41cfc51ffb5e1dc1c8fdb4a8bbf2 SHA512 e0abae97b5a0c9ab30ea00a490294f18f91b66b728a05186167e15c0a631d4de82b8a24d370a0d58cf5552adde68dd1b3fe56e877d382fbbdac02cfc18e49063
DIST igbinary-2.0.6.tar.gz 184889 BLAKE2B 7c07dc7b766ea395137c2cfffab6329f6fe5fc7e8ffb712474ef9c945319364b20ba4f8735aa776bc15b94c2cd815bba5c1a8b7c25c9715d706a6773f80082d8 SHA512 c9f76aedcfb5aace6b8a3c064410b099bf4563d99115ebfeb9c53a3dd18a48e5c44b99a04a2a75f5d114aa5a6d9030b6f2242502c6b3c9d273a6936f9fa410e6

@ -1,26 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PHP_EXT_NAME="${PN}"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
DOCS=( ChangeLog NEWS README.md )
PHP_EXT_ECONF_ARGS=( --enable-${PN} )
USE_PHP="php5-6 php7-0 php7-1"
inherit php-ext-source-r3
KEYWORDS="~amd64 ~x86"
DESCRIPTION="A fast drop-in replacement for the standard PHP serialize"
HOMEPAGE="https://github.com/${PN}/${PN}"
SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
IUSE=""
DEPEND=""
RDEPEND=""

@ -1,18 +1,18 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PHP_EXT_NAME="${PN}"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
DOCS=( ChangeLog NEWS README.md )
DOCS=( CREDITS NEWS README.md )
PHP_EXT_ECONF_ARGS=( --enable-${PN} )
USE_PHP="php5-6 php7-0 php7-1"
USE_PHP="php5-6 php7-0 php7-1 php7-2"
inherit php-ext-source-r3
KEYWORDS="amd64 x86"
KEYWORDS="~amd64 ~arm ~x86"
DESCRIPTION="A fast drop-in replacement for the standard PHP serialize"
HOMEPAGE="https://github.com/${PN}/${PN}"

Binary file not shown.

@ -0,0 +1 @@
DIST ptvsd-3.2.1.tar.gz 51934 BLAKE2B f94b57430bbc39bec90867f3d3b0e98fe88e3a6a8df26ef62f9e5aa4b966358c960881acca4df5a5f8d4538fad0a1c095488b11602673c092236f3110f4e9f8d SHA512 00524c80323ace2753a3ad07b441357f1d4a5c8a6a64eaa0d42c09fac9f6db2c291a1e55dd12ddfd46c257490979359088498fdfdf9fe7afe04bb6ceace33654

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zmedico@gentoo.org</email>
</maintainer>
<upstream>
<remote-id type="pypi">ptvsd</remote-id>
<remote-id type="github">Microsoft/ptvsd</remote-id>
</upstream>
</pkgmetadata>

@ -0,0 +1,17 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
inherit distutils-r1
DESCRIPTION="Visual Studio remote debugging server for Python"
HOMEPAGE="https://pypi.org/project/ptvsd/ https://github.com/Microsoft/ptvsd/"
SRC_URI="https://files.pythonhosted.org/packages/59/de/54ad88ba555ce66920165949febf4810359c000c4c73568a6215603b437d/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"

@ -13,7 +13,7 @@ SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
# pyblake2 itself allows more licenses but blake2 allows the following three
LICENSE="|| ( CC0-1.0 openssl Apache-2.0 )"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 sparc x86 ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ia64 ~mips ppc ppc64 sparc x86 ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"

@ -1,2 +1,3 @@
DIST pyftpdlib-1.5.1.tar.gz 127582 BLAKE2B 00233ab4acf5aae4902384f514de0d6da9a55b7312b7744ce3f16fd222b5abeae0c65f0f9309ff40d0cbd960baee2c269a1fc6ba72ed8f700c7dbfd47e646a8a SHA512 81bb634aef7190d97b5939b998c8dd8caf1ce77c2ca66d085826880590a03e7fe4aeefb5eb67f30f25b984962eaae740c4c8c1d5900909029702e37c36bb2b9b
DIST pyftpdlib-1.5.3.tar.gz 183189 BLAKE2B dd563f59ff21b2059e1c6d6ac6015561d5e0de07b52ea212589afea61abe63a2a61deed86bb133969c8dc99b826b7e23ddf071e0b28ac7b84a066f3fa7f31d90 SHA512 f0e56f170fa77e0866cbbead52ad52276ee45b6c3244557bc59cd2bf599934ae4414a684661d4d47f76098b3da19e23c1a037aaa07a6a81f8d1be14b90191517
DIST pyftpdlib-1.5.4.tar.gz 184986 BLAKE2B 6973b1f7e0fc0c89eb5d79e082690a706b56553ad4b2ece68a8216bb99c185d770475e349402ec71baf1bb06e5ecca5be2a3c52512f0d8283c4cc249bc28a949 SHA512 6eb308021dad28c1c51a88b366947a71b7bc1802571dc14cedf3a264bd0cb8504ef990d7e3110d10709f971d4d5b0001bee859b58fb4d02a1b0d46532acc9295

@ -0,0 +1,68 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python{2_7,3_{4,5,6}} )
PYTHON_REQ_USE="ssl(+)"
inherit distutils-r1
DESCRIPTION="Python FTP server library"
HOMEPAGE="https://github.com/giampaolo/pyftpdlib https://pypi.org/project/pyftpdlib/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~hppa ~m68k ~mips ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris"
IUSE="doc examples ssl test"
RDEPEND="
ssl? ( dev-python/pyopenssl[${PYTHON_USEDEP}] )
"
DEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
doc? (
dev-python/sphinx[${PYTHON_USEDEP}]
)
test? (
${RDEPEND}
dev-python/mock[${PYTHON_USEDEP}]
dev-python/psutil[${PYTHON_USEDEP}]
dev-python/pyopenssl[${PYTHON_USEDEP}]
dev-python/pysendfile[${PYTHON_USEDEP}]
)
"
python_prepare_all() {
sed -i "s/'sphinx.ext.intersphinx'//" docs/conf.py || die
distutils-r1_python_prepare_all
}
python_compile_all() {
if use doc; then
sphinx-build docs docs/_build/html || die
HTML_DOCS=( docs/_build/html/. )
fi
}
python_test() {
"${EPYTHON}" ${PN}/test/runner.py || die "Tests failed with ${EPYTHON}"
}
python_install_all() {
if use examples; then
docinto examples
dodoc -r demo/.
docompress -x /usr/share/doc/${PF}/examples
fi
distutils-r1_python_install_all
}
pkg_postinst() {
if [[ -z ${REPLACING_VERSIONS} ]] && \
[[ ${PYTHON_TARGETS} == *python2_7* ]] && \
! has_version dev-python/pysendfile ; then
elog "dev-python/pysendfile is not installed"
elog "It can considerably speed up file transfers for Python 2"
fi
}

Binary file not shown.

@ -1,6 +1,4 @@
DIST fakefs-0.11.3.tar.gz 44888 BLAKE2B 498dbcbe12389f27b6c6776425910f91ccc45ff85db1fa59e4fef8635dc9923294dbc979df2d10846d1435e81ee6d622190d3195399a4778d00bd4446edd2571 SHA512 9c9e18337d3c461fe4b5a4e6ede17cd840959147e66a57eb61fa203d8ba95d5655885d3e5b776ecb3a1cee93488dc711d1b2bd28df23bc131195e311229c329d
DIST fakefs-0.12.0.tar.gz 45573 BLAKE2B 8fabed4ae113da67a3e7b61c6b4c400d1e20509a5e9cdd4f865b5c0539a0840fa4d94899c58841d8158a431cb8f370973c89488d3929b43f1080d53283f7266b SHA512 623a8b150d2b1a324eb5f349c89eb4dbd0dd84a4efc3305ab6e53d45b8513d6272368ea0d8db9c57eeda0a2c68617bad57f27ff2e6bad3fb3342aace591bfa77
DIST fakefs-0.13.0.tar.gz 45866 BLAKE2B 0c31b6672aed70d00b5372a6b43045ebc1037126b81fe8cae8b139c1298fe833b42b09255f3c64148a6073d0205759786e401c6c34cdb5054295a2f654ba2584 SHA512 9df14a3d7ec2cdd92126eedf7663460caf21ad017f5db8a941fe8489ca3e3d16b8dd5fcb41d92b45a2895d18e18c9dd705d70e9b2d7895edb2f4430be7e6a0fa
DIST fakefs-0.13.2.tar.gz 45978 BLAKE2B 7657904f7732f398fbea8eaffc7fed375316be8827d015121215383f93524d683dd2f957b067e796a795b97e3c697b95ed1f317743d3b111e0ae9b6afe1d5740 SHA512 9d1aec7c750a70b8c27543481aa431c42df1436d1cd59af5feb0cde4bdb7491907ed856ffb991d4ca8a8147a521cb35910f8f9de9d80426ee4432a20090003b2
DIST fakefs-0.13.3.tar.gz 46019 BLAKE2B 2ff858106a4d5b4f6859b806cc1aa54a08917ecf2d8794fc20ff372cc94f1817ffac3e070c1c2d96a2f145fd2d471399792b42a45c24ee61c309b5f8d0ee18e1 SHA512 c3cd74fd5914d75a4cd3b0edc661b70398c8970ab100e7103831c2d2b686a9f61036549cb21f53610eeb2416d1a49dc0e0a16e7c439c504d65b41a05c31dfad3
DIST fakefs-0.14.0.tar.gz 44808 BLAKE2B 9957e95e5d8c6188da0cfa9160067b27485b9222a4f6342b2901a769b437ffcf4322e6ea377ac80ec95fd59ec56c5a48d3012e5c50b49a9fa8085c5c7b0fdd20 SHA512 8afc29bdff38232bf86de37771653b3f519f21e3c148afe7376d6df86cb303452f06a430f359f0df80a9f01aa9d697b24018e6b55a185e649c82e81d43274739
DIST fakefs-0.14.2.tar.gz 44978 BLAKE2B 6cf17d70c1c65ff5dd17c00d2a2f61860aa2d499365906e8a056d182a2402af08c33b1d4608ed2ea2749a49966eb3142195b5d29b014e41a176e793bd8223e97 SHA512 bfe33f0849a8e72bae6c3b4cdd05485c6ea807f2048decfcda84055fa601c85fcb6ebe0db9de81d9ec77c5040e58335be7109779bd765da73a405541903049e1

@ -1,43 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby22 ruby23 ruby24"
RUBY_FAKEGEM_RECIPE_TEST="none"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
RUBY_FAKEGEM_EXTRADOC="CONTRIBUTORS README.md"
inherit ruby-fakegem eutils
DESCRIPTION="A fake filesystem. Use it in your tests"
HOMEPAGE="https://github.com/defunkt/fakefs"
SRC_URI="https://github.com/defunkt/fakefs/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
IUSE=""
ruby_add_bdepend "
test? (
>=dev-ruby/rspec-3.1:3
>=dev-ruby/minitest-5.5
)"
all_ruby_prepare() {
# Remove bundler
rm Gemfile || die
# Avoid unneeded minitest-rg dependency.
sed -i -e '1igem "minitest", "~>5.5"' \
-e '/bundler/ s:^:#:' \
-e '/minitest\/rg/ s:^:#:' test/test_helper.rb || die
}
each_ruby_test() {
RSPEC_VERSION=3 ruby-ng_rspec
${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each{|f| require f}' || die
}

@ -1,43 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby22 ruby23 ruby24"
RUBY_FAKEGEM_RECIPE_TEST="none"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
RUBY_FAKEGEM_EXTRADOC="CONTRIBUTORS README.md"
inherit ruby-fakegem eutils
DESCRIPTION="A fake filesystem. Use it in your tests"
HOMEPAGE="https://github.com/defunkt/fakefs"
SRC_URI="https://github.com/defunkt/fakefs/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
IUSE=""
ruby_add_bdepend "
test? (
>=dev-ruby/rspec-3.1:3
>=dev-ruby/minitest-5.5
)"
all_ruby_prepare() {
# Remove bundler
rm Gemfile || die
# Avoid unneeded minitest-rg dependency.
sed -i -e '1igem "minitest", "~>5.5"' \
-e '/bundler/ s:^:#:' \
-e '/minitest\/rg/ s:^:#:' test/test_helper.rb || die
}
each_ruby_test() {
RSPEC_VERSION=3 ruby-ng_rspec
${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each{|f| require f}' || die
}

@ -3,7 +3,7 @@
EAPI=6
USE_RUBY="ruby22 ruby23 ruby24"
USE_RUBY="ruby23 ruby24 ruby25"
RUBY_FAKEGEM_RECIPE_TEST="none"

@ -2,3 +2,4 @@ DIST faraday-0.12.2.tar.gz 62809 BLAKE2B 4dcd60192df36e1b9766eab3bcbacd729239b0e
DIST faraday-0.14.0.tar.gz 65105 BLAKE2B bf5101083bd828e2ea98dcd487c7c082f8b2d2eb4d03ac7ad04e1873666db9e2cec1e6eb9887364874ea5f32d0313019d1eada5e05e25e0415bdd5aa2bcfca97 SHA512 25bba07e76a2a8bf02b0c81c045329e72d5911a2aacae56611db33dc25c89bd48bb1b4de9b20c6edc1514d3ceae8b06fca6076c85580533047c222cb30ef8dc7
DIST faraday-0.15.0.tar.gz 66086 BLAKE2B 5018d8e92b2988b08f4e7a5b0876ca6cd4049c74199ee0356adc48867611fd6d30d884bd3cf3e7703a02c7a6e967f9c47cdc44deb75045b8cee46992977fb834 SHA512 46602d89b1bbf5a41143a9a71fab193642e7c41db39dc1edc0efb99f4a7a924c5a698460a0a4f921f7ce1f73ee8eb12e6d79a08dea02c7142856d0aa1b95b521
DIST faraday-0.15.1.tar.gz 66461 BLAKE2B 476fa62bf9cf138fd52d0d455d7bdd970d77f0337ec1cf42f7833def9ba77a3e94f0bdbbda4136ac03c5a98465081e3093c6a7a6e193cbd7494a284444516679 SHA512 cb4a14b29b88c356063e2d504e0a93b84b33b6488060a313b2eb6ecbf17eaf09c6fb0e0fabd0bb057623438de2a8538034551d62d719a1c90b6158a768f38a1b
DIST faraday-0.15.2.tar.gz 66765 BLAKE2B 8cfe4c6c4f2bb1f0a5fd6a196d339118b09d67b8cdac0c258180ea03c39688af17790c7a15fb4dea4dfd4980c039f987464b2ba7e64c04931e9c31ac670c3618 SHA512 5911df09e770c4ee97f2c6c359a4136c268c598cc2f370a3aa112b5710c6c6b7f2704d3094677cd98c44532e3f0d6157df88e1c882d727eec511f4b62a04527c

@ -0,0 +1,69 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby23 ruby24 ruby25"
RUBY_FAKEGEM_TASK_TEST="test"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_EXTRADOC="README.md"
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
inherit ruby-fakegem eutils
DESCRIPTION="HTTP/REST API client library with pluggable components"
HOMEPAGE="https://github.com/lostisland/faraday"
SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
IUSE=""
DEPEND+=" test? ( sys-process/lsof )"
ruby_add_rdepend ">=dev-ruby/multipart-post-1.2.0 <dev-ruby/multipart-post-3"
ruby_add_bdepend "test? (
>=dev-ruby/test-unit-2.4
dev-ruby/httpclient
dev-ruby/rack-test
dev-ruby/sinatra
dev-ruby/net-http-persistent
dev-ruby/patron
)"
all_ruby_prepare() {
# Remove bundler support.
rm Gemfile || die
sed -i -e '/[Bb]undler/d' Rakefile test/helper.rb || die
sed -i -e '/bundler/,/^fi/ s:^:#:' script/test || die
# Remove simplecov and coveralls support, not needed to run tests.
sed -i -e '/simplecov/,/^end/ s:^:#:' \
-e '1igem "rack", "~>1.0"; require "yaml"' \
test/helper.rb || die
# Remove tests for adapters that are not packaged for Gentoo.
rm test/adapters/em_http_test.rb test/adapters/em_synchrony_test.rb test/adapters/excon_test.rb test/adapters/typhoeus_test.rb || die
# The proxy server is already killed, may be OS X vs Linux issue.
sed -i -e '138 s/^/#/' script/test || die
sed -i -e '/git ls-files/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
}
each_ruby_prepare() {
# Make sure the test scripts use the right ruby interpreter
sed -i -e 's:ruby:'${RUBY}':' script/* || die
}
each_ruby_test() {
MT_NO_PLUGINS=true each_fakegem_test
# Sleep some time to allow the sinatra test server to die
einfo "Waiting for test server to stop"
sleep 10
}

@ -1,3 +1,4 @@
DIST gherkin-2.12.2-git.tgz 1764938 BLAKE2B b5cc7f063c8567df2dfe92fe805d5310feeba967865221ce69c8c24986ab786851885f4724b17a028daea298eea340b3bcd0c7296f05b02816c837ffdf8a41b5 SHA512 1030bcaf31791c7031f22b8e4c5d94ddbddf012b8686d06a7598fde99a28f8a1fda45dc66dbdefdb825a045730b077a10ca1134835630710551e20364886ce51
DIST gherkin-4.1.3.gem 350208 BLAKE2B 3b0f54124c9f29c9216aaa9810526f1e11f6243b02143443d0ac18209320c14fda67f1c36d3056dbe5adbc18c36f72270054c17a011921eb87f8d21bc3e8c3c9 SHA512 7c113172ddf38ccf7e49eaac19355f3cb991f69d7499dba9189f375b75d3614f349fc6374e584a92c1223b0708cc8944859b4b38e28d79779a5091fa0c775e6e
DIST gherkin-5.0.0.gem 340992 BLAKE2B a8292fde04c98c409423733791e78b9d6e40a7a60b59a1acd0a0e9c6df0be9185e90f1c5af6ce0ac39f352457c18094c495557fb05323eb7ea5ae8ce27008950 SHA512 cc782e37f5aea4ad0776f5336e6218b77e7fd8d193786acffaa44685de3a2592e4e6f37a3787add807654901afd12bc2d094a782b154bb2be9e2cd16e283df2a
DIST gherkin-5.1.0.gem 29696 BLAKE2B 2439b82a147a546e8df71e11996f9560a8720580e07795542fc81781449b483a42e54251f3d0dd3482331773b1cada1d61b468bfcec2a9464ee2542eef2ed13e SHA512 d935ccceaec493736f337a4c3db69909858d15f4c41e93ecfc6ca31a30fc48eec1cecbe71d455265e1062006f49f05461c9860c9b3cc4806bb25f42dec6f504e

@ -0,0 +1,24 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby23 ruby24 ruby25"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
RUBY_FAKEGEM_DOCDIR="rdoc"
RUBY_FAKEGEM_EXTRADOC="README.md"
# Don't install support scripts to avoid slot collisions.
RUBY_FAKEGEM_BINWRAP=""
inherit ruby-fakegem
DESCRIPTION="Fast Gherkin lexer and parser"
HOMEPAGE="https://github.com/cucumber/gherkin"
LICENSE="MIT"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86"
SLOT="5"
IUSE=""

@ -1,8 +1,8 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby22 ruby23 ruby24"
USE_RUBY="ruby22 ruby23 ruby24 ruby25"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
RUBY_FAKEGEM_EXTRADOC="CHANGES TODO README.md README-json-jruby.markdown"

@ -1,4 +1,4 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@ -17,7 +17,7 @@ RUBY_FAKEGEM_BINWRAP=""
inherit ruby-fakegem
DESCRIPTION="Context framework extracted from Shoulda"
HOMEPAGE="http://thoughtbot.com/projects/shoulda"
HOMEPAGE="https://github.com/thoughtbot/shoulda-context"
LICENSE="MIT"
SLOT="0"

Binary file not shown.

@ -9,7 +9,7 @@ if [[ ${PV} = *9999* ]]; then
inherit git-r3
else
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x64-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc ~x86 ~amd64-fbsd ~x64-solaris"
fi
inherit distutils-r1

Binary file not shown.

@ -1,12 +1,6 @@
DIST git-2.16.1.tar.xz 4961656 BLAKE2B d94328da5d027cb82f1f23804a12dfc5df1577bf2c28cc376d4bb5c9e34d317886437f7eee2ac4503b8e2639d2e24c35660ab82a50207f500b7ed6fb104d3624 SHA512 09e30ada7bcf41f78f15784908062c10162d58d2fd7a68ad27e42fd49dc37eb0e82c19ad21db31034a189a8cdd009013a29f943e1ae5d5ab5688c913d2a4d42a
DIST git-2.16.3.tar.xz 4966248 BLAKE2B cd4d2573afd02a23766c4dd0da8397ac36193f68e18c162fc85d60d7595a50da7707f592ccc3a9f00a22fdcb8a8cada82139fe30f97af193fb367a4e392cbaa8 SHA512 73520cf3500b2d13b77eb1e5ec0d60263aad07732d25631732f0d986abd023f97b8a6db4abff64d342cb053018289b5f7a3e32f10b86bd9092a37ee0585adc8a
DIST git-2.16.4.tar.xz 4968252 BLAKE2B 77f76408bde02bfacdb99d22baca05893f63c96d1fb7508c7e92541f8f7ec9ced0dad650be788fd28a1e03b5d88b88708652d07a47bedaae60a9cbd4e2eec858 SHA512 f54e431e78289349dcb927ec34873dfb801c49a41cbb3d0138346d603af26bd7d86f9ac95e7a61a4831017f3503f33374510ccf68b0e62b0691fc5a43283f1ac
DIST git-2.17.1.tar.xz 5015484 BLAKE2B d3a61023872a15e3176e4dae6df83d4c2369a377244d44dfd7a63a15ecc3a7b145093afd5d6fa72e4eca98ba4f81f7ccd89ac2400c9cf8107ac04fd35d8bf6e4 SHA512 77c27569d40fbae1842130baa0cdda674a02e384631bd8fb1f2ddf67ce372dd4903b2ce6b4283a4ae506cdedd5daa55baa2afe6a6689528511e24e4beb864960
DIST git-htmldocs-2.16.1.tar.xz 1160372 BLAKE2B d426fbc85772e5f04550071dea50a75e6d581fd040e8b37b3b342a8d6569d0dcf456445bab1dec3d84e254e82468c900afff7c6be1ebd6771e7fad5884b92515 SHA512 f2bb8b88ab5aa3d6204874aae583249d5137193c5fe3925df7ae1bcdaec0564b496df9a648c180bebb0c8ff4573f27e330802020d3c9207c2738ddd5c52d99c9
DIST git-htmldocs-2.16.3.tar.xz 1164252 BLAKE2B 43d5b0317d3cb181c24347933b6ee3ce586f7be7e38ae30555bc732b369287f080879ff0408601db125a4104b665956f6bcef3f243496008d3ec1601110b06df SHA512 6271ff7780053347ceba47754db00fa8a0a39ff622c490e273ed286faa6ade3f7d6580fa396c913b4485a942b2ad0cdd898de467fde497de1d850fb6d3debd1e
DIST git-htmldocs-2.16.4.tar.xz 1164256 BLAKE2B 88a7ab5b094f15bc2b6c0f4d4c3eae185f6e6c0f00f4aca75492f0cc964428d1bf53002e0e43468b60b62058af5f13b061231061247e19b32bc70c2c8adb04eb SHA512 8f4a8c51656559af81296fb064ecf0f88444952c7f8ee91b85e5a61b20d200267d7432f720ded12046bab986361cff48cf7a2f5d21e05c1ac7648cc3168a0049
DIST git-htmldocs-2.17.1.tar.xz 1173296 BLAKE2B 5133a86fb73cd58d6a9d4ed05d32949f642c9a670a49ea67c7170dfb39c4ff3f63d5f220abebcc979f87a360ec2990ccf5a9e3c18e8fcb07082bac111ecb12c7 SHA512 69054b087ffd1c88532672c6edea3cd27e08421f25c09a1a304420ec6aa20806888f71e4ef21aac1bc2fed81a045a64ae164a9dc377eb48d61887bf8d787782c
DIST git-manpages-2.16.1.tar.xz 417188 BLAKE2B 239fb33967d17c8b10efb2e0d1963f7be3404b7f262b49f89b3f4a538135d80268fbe7fe0e561c9cb2d86840eb46b61653ed363d8da27d1169c435d8e1d5e851 SHA512 20c7646b5f1e3c633ce6aae5ee5fcbe4ca1e59fc9253ec9a9e45c7cd8a8ac7a5e71e36258eb747e3bd6d51b3b7971137315dcdbdff493e0f8774ecd3e309735a
DIST git-manpages-2.16.3.tar.xz 417152 BLAKE2B 2719a9a603dc49db1a61a2cec42427bdcdc96fab9d21d16c5a8c70d7dba271a1e5b29f4f83f32c525c4866e3497352017af3777a769893c9543e65d625972375 SHA512 b34a3658412a144fed6f818acc05c0b4be2453ae63f9430dcd53cda750f737bd3da50390bd3f4266e69befa521eddd222985fd531acca1ebd4ca62c6c5b2a85c
DIST git-manpages-2.16.4.tar.xz 417136 BLAKE2B 9a75913dae62fa2eb31cf48e77e266aa8d91c67b8a753c1740283b1d626dea1e9aa8d7cea06d9b97887f801b4d1f1b927014851105cefd3241ca7ab7330bfc8b SHA512 8029e9fac1eca542e809da1247f4eec3a2c81c0eb12d03aa816dcf120677011d3e409b06c28c8e7dbf41cbbcca873ec93846dc317bc73e57f4d4701ce7abf73d
DIST git-manpages-2.17.1.tar.xz 419400 BLAKE2B af8cef1ac43c6b5ee073c7e18c161ba3ebe0669e474833211c95e72b33524050c30ca133ada98e07c8b481ffc4a5cbce1e7d68427b7aeb9bb80534c2ef3623f0 SHA512 fbdd4ef99419d244bc7c03b10cf09e92d1f0894879fe159ee1f53262daebdc7fe72d6c2bbe9e21fe354f8afb26fa06b35788e54b0c078b686706b511bf7c33ee

@ -1,699 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
GENTOO_DEPEND_ON_PERL=no
# bug #329479: git-remote-testgit is not multiple-version aware
PYTHON_COMPAT=( python2_7 )
PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
if [[ ${PV} == *9999 ]]; then
SCM="git-r3"
EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
# See https://git-scm.com/docs/gitworkflows#_graduation
# In order of stability:
# 9999-r0: maint
# 9999-r1: master
# 9999-r2: next
# 9999-r3: pu
case "${PVR}" in
9999) EGIT_BRANCH=maint ;;
9999-r1) EGIT_BRANCH=master ;;
9999-r2) EGIT_BRANCH=next;;
9999-r3) EGIT_BRANCH=pu ;;
esac
fi
inherit toolchain-funcs eutils elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd ${SCM}
MY_PV="${PV/_rc/.rc}"
MY_P="${PN}-${MY_PV}"
DOC_VER=${MY_PV}
DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
HOMEPAGE="https://www.git-scm.com/"
if [[ ${PV} != *9999 ]]; then
SRC_URI_SUFFIX="xz"
SRC_URI_KORG="mirror://kernel/software/scm/git"
[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
doc? (
${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
)"
[[ "${PV}" = *_rc* ]] || \
KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test"
# Common to both DEPEND and RDEPEND
CDEPEND="
gnome-keyring? ( app-crypt/libsecret )
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:= )
sys-libs/zlib
pcre? (
pcre-jit? ( dev-libs/libpcre2[jit(+)] )
!pcre-jit? ( dev-libs/libpcre )
)
perl? ( dev-lang/perl:=[-build(-)] )
tk? ( dev-lang/tk:0= )
curl? (
net-misc/curl
webdav? ( dev-libs/expat )
)
emacs? ( virtual/emacs )
"
RDEPEND="${CDEPEND}
gpg? ( app-crypt/gnupg )
mediawiki? (
dev-perl/DateTime-Format-ISO8601
dev-perl/HTML-Tree
dev-perl/MediaWiki-API
)
perl? ( dev-perl/Error
dev-perl/Net-SMTP-SSL
dev-perl/Authen-SASL
cgi? ( dev-perl/CGI highlight? ( app-text/highlight ) )
cvs? ( >=dev-vcs/cvsps-2.1:0 dev-perl/DBI dev-perl/DBD-SQLite )
subversion? ( dev-vcs/subversion[-dso,perl] dev-perl/libwww-perl dev-perl/TermReadKey )
)
python? ( ${PYTHON_DEPS} )
"
# This is how info docs are created with Git:
# .txt/asciidoc --(asciidoc)---------> .xml/docbook
# .xml/docbook --(docbook2texi.pl)--> .texi
# .texi --(makeinfo)---------> .info
DEPEND="${CDEPEND}
doc? (
app-text/asciidoc
app-text/docbook2X
sys-apps/texinfo
app-text/xmlto
)
nls? ( sys-devel/gettext )
test? ( app-crypt/gnupg )"
# Live ebuild builds man pages and HTML docs, additionally
if [[ ${PV} == *9999 ]]; then
DEPEND="${DEPEND}
app-text/asciidoc"
fi
SITEFILE=50${PN}-gentoo.el
S="${WORKDIR}/${MY_P}"
REQUIRED_USE="
cgi? ( perl )
cvs? ( perl )
mediawiki? ( perl )
mediawiki-experimental? ( mediawiki )
subversion? ( perl )
webdav? ( curl )
pcre-jit? ( pcre )
python? ( ${PYTHON_REQUIRED_USE} )
"
PATCHES=(
# bug #350330 - automagic CVS when we don't want it is bad.
"${FILESDIR}"/git-2.12.0-optional-cvs.patch
# install mediawiki perl modules also in vendor_dir
# hack, needs better upstream solution
"${FILESDIR}"/git-1.8.5-mw-vendor.patch
"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
# Bug #493306, where FreeBSD 10.x merged libiconv into its libc.
"${FILESDIR}"/git-2.5.1-freebsd-10.x-no-iconv.patch
)
pkg_setup() {
if use subversion && has_version "dev-vcs/subversion[dso]"; then
ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
ewarn "with USE=dso, there may be weird crashes in git-svn. You"
ewarn "have been warned."
fi
if use python ; then
python-single-r1_pkg_setup
fi
}
# This is needed because for some obscure reasons future calls to make don't
# pick up these exports if we export them in src_unpack()
exportmakeopts() {
local myopts
if use blksha1 ; then
myopts+=" BLK_SHA1=YesPlease"
elif use ppcsha1 ; then
myopts+=" PPC_SHA1=YesPlease"
fi
if use curl ; then
use webdav || myopts+=" NO_EXPAT=YesPlease"
else
myopts+=" NO_CURL=YesPlease"
fi
# broken assumptions, because of static build system ...
myopts+=" NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease"
myopts+=" INSTALL=install TAR=tar"
myopts+=" SHELL_PATH=${EPREFIX}/bin/sh"
myopts+=" SANE_TOOL_PATH="
myopts+=" OLD_ICONV="
myopts+=" NO_EXTERNAL_GREP="
# For svn-fe
extlibs="-lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '')"
# can't define this to null, since the entire makefile depends on it
sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile
use iconv \
|| myopts+=" NO_ICONV=YesPlease"
use nls \
|| myopts+=" NO_GETTEXT=YesPlease"
use tk \
|| myopts+=" NO_TCLTK=YesPlease"
if use pcre; then
if use pcre-jit; then
myopts+=" USE_LIBPCRE2=YesPlease"
extlibs+=" -lpcre2-8"
else
myopts+=" USE_LIBPCRE1=YesPlease"
myopts+=" NO_LIBPCRE1_JIT=YesPlease"
extlibs+=" -lpcre"
fi
fi
use perl \
&& myopts+=" INSTALLDIRS=vendor" \
|| myopts+=" NO_PERL=YesPlease"
use python \
|| myopts+=" NO_PYTHON=YesPlease"
use subversion \
|| myopts+=" NO_SVN_TESTS=YesPlease"
use threads \
&& myopts+=" THREADED_DELTA_SEARCH=YesPlease" \
|| myopts+=" NO_PTHREADS=YesPlease"
use cvs \
|| myopts+=" NO_CVS=YesPlease"
use elibc_musl \
&& myopts+=" NO_REGEX=YesPlease"
# Disabled until ~m68k-mint can be keyworded again
# if [[ ${CHOST} == *-mint* ]] ; then
# myopts+=" NO_MMAP=YesPlease"
# myopts+=" NO_IPV6=YesPlease"
# myopts+=" NO_STRLCPY=YesPlease"
# myopts+=" NO_MEMMEM=YesPlease"
# myopts+=" NO_MKDTEMP=YesPlease"
# myopts+=" NO_MKSTEMPS=YesPlease"
# fi
if [[ ${CHOST} == ia64-*-hpux* ]]; then
myopts+=" NO_NSEC=YesPlease"
fi
if [[ ${CHOST} == *-*-aix* ]]; then
myopts+=" NO_FNMATCH_CASEFOLD=YesPlease"
fi
if [[ ${CHOST} == *-solaris* ]]; then
myopts+=" NEEDS_LIBICONV=YesPlease"
myopts+=" HAVE_CLOCK_MONOTONIC=1"
grep -q getdelim "${ROOT}"/usr/include/stdio.h && \
myopts+=" HAVE_GETDELIM=1"
fi
has_version '>=app-text/asciidoc-8.0' \
&& myopts+=" ASCIIDOC8=YesPlease"
myopts+=" ASCIIDOC_NO_ROFF=YesPlease"
# Bug 290465:
# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
[[ "${CHOST}" == *-uclibc* ]] && \
myopts+=" NO_NSEC=YesPlease"
export MY_MAKEOPTS="${myopts}"
export EXTLIBS="${extlibs}"
}
src_unpack() {
if [[ ${PV} != *9999 ]]; then
unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
cd "${S}"
unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
use doc && \
cd "${S}"/Documentation && \
unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
cd "${S}"
else
git-r3_src_unpack
cd "${S}"
#cp "${FILESDIR}"/GIT-VERSION-GEN .
fi
}
src_prepare() {
# add experimental patches to improve mediawiki support
# see patches for origin
if use mediawiki-experimental ; then
PATCHES+=(
"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
)
fi
default
sed -i \
-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
Makefile contrib/svn-fe/Makefile || die "sed failed"
# Never install the private copy of Error.pm (bug #296310)
sed -i \
-e '/private-Error.pm/s,^,#,' \
perl/Makefile.PL
# Fix docbook2texi command
sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
Documentation/Makefile || die "sed failed"
# Fix git-subtree missing DESTDIR
sed -i \
-e '/$(INSTALL)/s/ $(libexecdir)/ $(DESTDIR)$(libexecdir)/g' \
-e '/$(INSTALL)/s/ $(man1dir)/ $(DESTDIR)$(man1dir)/g' \
contrib/subtree/Makefile
}
git_emake() {
# bug #320647: PYTHON_PATH
PYTHON_PATH=""
use python && PYTHON_PATH="${PYTHON}"
emake ${MY_MAKEOPTS} \
DESTDIR="${D}" \
OPTCFLAGS="${CFLAGS}" \
OPTLDFLAGS="${LDFLAGS}" \
OPTCC="$(tc-getCC)" \
OPTAR="$(tc-getAR)" \
prefix="${EPREFIX}"/usr \
htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
sysconfdir="${EPREFIX}"/etc \
PYTHON_PATH="${PYTHON_PATH}" \
PERL_PATH="${EPREFIX}/usr/bin/perl" \
PERL_MM_OPT="" \
GIT_TEST_OPTS="--no-color" \
V=1 \
"$@"
}
src_configure() {
exportmakeopts
}
src_compile() {
if use perl ; then
git_emake perl/PM.stamp || die "emake perl/PM.stamp failed"
git_emake perl/perl.mak || die "emake perl/perl.mak failed"
fi
git_emake || die "emake failed"
if use emacs ; then
elisp-compile contrib/emacs/git{,-blame}.el
fi
if use perl && use cgi ; then
git_emake \
gitweb \
|| die "emake gitweb (cgi) failed"
fi
if [[ ${CHOST} == *-darwin* ]]; then
cd "${S}"/contrib/credential/osxkeychain || die
git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
|| die "emake credential-osxkeychain"
fi
cd "${S}"/Documentation
if [[ ${PV} == *9999 ]] ; then
git_emake man \
|| die "emake man failed"
if use doc ; then
git_emake info html \
|| die "emake info html failed"
fi
else
if use doc ; then
git_emake info \
|| die "emake info html failed"
fi
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
# by defining EXTLIBS we override the detection for libintl and
# libiconv, bug #516168
local nlsiconv=
use nls && use !elibc_glibc && nlsiconv+=" -lintl"
use iconv && use !elibc_glibc && nlsiconv+=" -liconv"
git_emake EXTLIBS="${EXTLIBS} ${nlsiconv}" || die "emake svn-fe failed"
if use doc ; then
git_emake svn-fe.{1,html} || die "emake svn-fe.1 svn-fe.html failed"
fi
cd "${S}"
fi
if use gnome-keyring ; then
cd "${S}"/contrib/credential/libsecret
git_emake || die "emake git-credential-libsecret failed"
fi
cd "${S}"/contrib/subtree || die
git_emake
use doc && git_emake doc
cd "${S}"/contrib/diff-highlight || die
git_emake
if use mediawiki ; then
cd "${S}"/contrib/mw-to-git
git_emake
fi
}
src_install() {
git_emake \
install || \
die "make install failed"
if [[ ${CHOST} == *-darwin* ]]; then
dobin contrib/credential/osxkeychain/git-credential-osxkeychain
fi
# Depending on the tarball and manual rebuild of the documentation, the
# manpages may exist in either OR both of these directories.
find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
use doc && dodir /usr/share/doc/${PF}/html
for d in / /howto/ /technical/ ; do
docinto ${d}
dodoc Documentation${d}*.txt
if use doc ; then
docinto ${d}/html
dodoc Documentation${d}*.html
fi
done
docinto /
# Upstream does not ship this pre-built :-(
use doc && doinfo Documentation/{git,gitman}.info
newbashcomp contrib/completion/git-completion.bash ${PN}
bashcomp_alias git gitk
# Not really a bash-completion file (bug #477920)
# but still needed uncompressed (bug #507480)
insinto /usr/share/${PN}
doins contrib/completion/git-prompt.sh
if use emacs ; then
elisp-install ${PN} contrib/emacs/git.{el,elc}
elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
# don't add automatically to the load-path, so the sitefile
# can do a conditional loading
touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
elisp-site-file-install "${FILESDIR}"/${SITEFILE}
fi
#dobin contrib/fast-import/git-p4 # Moved upstream
#dodoc contrib/fast-import/git-p4.txt # Moved upstream
newbin contrib/fast-import/import-tars.perl import-tars
exeinto /usr/libexec/git-core/
newexe contrib/git-resurrect.sh git-resurrect
# git-subtree
cd "${S}"/contrib/subtree
git_emake install || die "Failed to emake install git-subtree"
if use doc ; then
git_emake install-man install-doc || die "Failed to emake install-doc install-mangit-subtree"
fi
newdoc README README.git-subtree
dodoc git-subtree.txt
cd "${S}"
if use mediawiki ; then
cd "${S}"/contrib/mw-to-git
git_emake install
cd "${S}"
fi
# diff-highlight
dobin contrib/diff-highlight/diff-highlight
newdoc contrib/diff-highlight/README README.diff-highlight
# git-jump
exeinto /usr/libexec/git-core/
doexe contrib/git-jump/git-jump
newdoc contrib/git-jump/README git-jump.txt
# git-contacts
exeinto /usr/libexec/git-core/
doexe contrib/contacts/git-contacts
dodoc contrib/contacts/git-contacts.txt
if use gnome-keyring ; then
cd "${S}"/contrib/credential/libsecret
dobin git-credential-libsecret
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
dobin svn-fe
dodoc svn-fe.txt
if use doc ; then
doman svn-fe.1
docinto html
dodoc svn-fe.html
fi
cd "${S}"
fi
dodir /usr/share/${PN}/contrib
# The following are excluded:
# completion - installed above
# diff-highlight - done above
# emacs - installed above
# examples - these are stuff that is not used in Git anymore actually
# git-jump - done above
# gitview - installed above
# p4import - excluded because fast-import has a better one
# patches - stuff the Git guys made to go upstream to other places
# persistent-https - TODO
# mw-to-git - TODO
# subtree - build seperately
# svnimport - use git-svn
# thunderbird-patch-inline - fixes thunderbird
local contrib_objects=(
buildsystems
fast-import
hg-to-git
hooks
remotes2config.sh
rerere-train.sh
stats
workdir
)
for i in "${contrib_objects[@]}" ; do
cp -rf \
"${S}"/contrib/${i} \
"${ED}"/usr/share/${PN}/contrib \
|| die "Failed contrib ${i}"
done
if use perl && use cgi ; then
# We used to install in /usr/share/${PN}/gitweb
# but upstream installs in /usr/share/gitweb
# so we will install a symlink and use their location for compat with other
# distros
dosym /usr/share/gitweb /usr/share/${PN}/gitweb
# INSTALL discusses configuration issues, not just installation
docinto /
newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
newdoc "${S}"/gitweb/README README.gitweb
for d in "${ED}"/usr/lib{64,}/perl5/ ; do
if test -d "$d" ; then find "$d" \
-name .packlist \
-delete || die
fi
done
else
rm -rf "${ED}"/usr/share/gitweb
fi
if ! use subversion ; then
rm -f "${ED}"/usr/libexec/git-core/git-svn \
"${ED}"/usr/share/man/man1/git-svn.1*
fi
if use xinetd ; then
insinto /etc/xinetd.d
newins "${FILESDIR}"/git-daemon.xinetd git-daemon
fi
if use !prefix ; then
newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
newconfd "${FILESDIR}"/git-daemon.confd git-daemon
systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
systemd_dounit "${FILESDIR}/git-daemon.socket"
fi
perl_delete_localpod
# Remove disabled linguas
# we could remove sources in src_prepare, but install does not
# handle missing locale dir well
rm_loc() {
if [[ -e "${ED}/usr/share/locale/${1}" ]]; then
rm -r "${ED}/usr/share/locale/${1}" || die
fi
}
l10n_for_each_disabled_locale_do rm_loc
}
src_test() {
local disabled=""
local tests_cvs="t9200-git-cvsexportcommit.sh \
t9400-git-cvsserver-server.sh \
t9401-git-cvsserver-crlf.sh \
t9402-git-cvsserver-refs.sh \
t9600-cvsimport.sh \
t9601-cvsimport-vendor-branch.sh \
t9602-cvsimport-branches-tags.sh \
t9603-cvsimport-patchsets.sh \
t9604-cvsimport-timestamps.sh"
local tests_perl="t3701-add-interactive.sh \
t5502-quickfetch.sh \
t5512-ls-remote.sh \
t5520-pull.sh \
t7106-reset-unborn-branch.sh \
t7501-commit.sh"
# Bug #225601 - t0004 is not suitable for root perm
# Bug #219839 - t1004 is not suitable for root perm
# t0001-init.sh - check for init notices EPERM* fails
local tests_nonroot="t0001-init.sh \
t0004-unwritable.sh \
t0070-fundamental.sh \
t1004-read-tree-m-u-wf.sh \
t3700-add.sh \
t7300-clean.sh"
# t9100 still fails with symlinks in SVN 1.7
local test_svn="t9100-git-svn-basic.sh"
# Unzip is used only for the testcase code, not by any normal parts of Git.
if ! has_version app-arch/unzip ; then
einfo "Disabling tar-tree tests"
disabled+=" t5000-tar-tree.sh"
fi
cvs=0
use cvs && let cvs=$cvs+1
if [[ ${EUID} -eq 0 ]]; then
if [[ $cvs -eq 1 ]]; then
ewarn "Skipping CVS tests because CVS does not work as root!"
ewarn "You should retest with FEATURES=userpriv!"
disabled+=" ${tests_cvs}"
fi
einfo "Skipping other tests that require being non-root"
disabled+=" ${tests_nonroot}"
else
[[ $cvs -gt 0 ]] && \
has_version dev-vcs/cvs && \
let cvs=$cvs+1
[[ $cvs -gt 1 ]] && \
has_version "dev-vcs/cvs[server]" && \
let cvs=$cvs+1
if [[ $cvs -lt 3 ]]; then
einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
disabled+=" ${tests_cvs}"
fi
fi
if ! use perl ; then
einfo "Disabling tests that need Perl"
disabled+=" ${tests_perl}"
fi
einfo "Disabling tests that fail with SVN 1.7"
disabled+=" ${test_svn}"
# Reset all previously disabled tests
cd "${S}/t"
for i in *.sh.DISABLED ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
done
einfo "Disabled tests:"
for i in ${disabled} ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled $i"
done
# Avoid the test system removing the results because we want them ourselves
sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
-i "${S}"/t/Makefile
# Clean old results first, must always run
cd "${S}/t"
nonfatal git_emake clean
# Now run the tests, keep going if we hit an error, and don't terminate on
# failure
cd "${S}"
einfo "Start test run"
#MAKEOPTS=-j1
nonfatal git_emake --keep-going test
rc=$?
# Display nice results, now print the results
cd "${S}/t"
nonfatal git_emake aggregate-results
# And bail if there was a problem
[ $rc -eq 0 ] || die "tests failed. Please file a bug."
}
showpkgdeps() {
local pkg=$1
shift
elog " $(printf "%-17s:" ${pkg}) ${@}"
}
pkg_postinst() {
use emacs && elisp-site-regen
einfo "Please read /usr/share/bash-completion/git for Git bash command completion"
einfo "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
einfo "Note that the prompt bash code is now in that separate script"
elog "These additional scripts need some dependencies:"
echo
showpkgdeps git-quiltimport "dev-util/quilt"
showpkgdeps git-instaweb \
"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
echo
use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
}
pkg_postrm() {
use emacs && elisp-site-regen
}

@ -1,699 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
GENTOO_DEPEND_ON_PERL=no
# bug #329479: git-remote-testgit is not multiple-version aware
PYTHON_COMPAT=( python2_7 )
PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
if [[ ${PV} == *9999 ]]; then
SCM="git-r3"
EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
# See https://git-scm.com/docs/gitworkflows#_graduation
# In order of stability:
# 9999-r0: maint
# 9999-r1: master
# 9999-r2: next
# 9999-r3: pu
case "${PVR}" in
9999) EGIT_BRANCH=maint ;;
9999-r1) EGIT_BRANCH=master ;;
9999-r2) EGIT_BRANCH=next;;
9999-r3) EGIT_BRANCH=pu ;;
esac
fi
inherit toolchain-funcs eutils elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd ${SCM}
MY_PV="${PV/_rc/.rc}"
MY_P="${PN}-${MY_PV}"
DOC_VER=${MY_PV}
DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
HOMEPAGE="https://www.git-scm.com/"
if [[ ${PV} != *9999 ]]; then
SRC_URI_SUFFIX="xz"
SRC_URI_KORG="mirror://kernel/software/scm/git"
[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
doc? (
${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
)"
[[ "${PV}" = *_rc* ]] || \
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test"
# Common to both DEPEND and RDEPEND
CDEPEND="
gnome-keyring? ( app-crypt/libsecret )
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:= )
sys-libs/zlib
pcre? (
pcre-jit? ( dev-libs/libpcre2[jit(+)] )
!pcre-jit? ( dev-libs/libpcre )
)
perl? ( dev-lang/perl:=[-build(-)] )
tk? ( dev-lang/tk:0= )
curl? (
net-misc/curl
webdav? ( dev-libs/expat )
)
emacs? ( virtual/emacs )
"
RDEPEND="${CDEPEND}
gpg? ( app-crypt/gnupg )
mediawiki? (
dev-perl/DateTime-Format-ISO8601
dev-perl/HTML-Tree
dev-perl/MediaWiki-API
)
perl? ( dev-perl/Error
dev-perl/Net-SMTP-SSL
dev-perl/Authen-SASL
cgi? ( dev-perl/CGI highlight? ( app-text/highlight ) )
cvs? ( >=dev-vcs/cvsps-2.1:0 dev-perl/DBI dev-perl/DBD-SQLite )
subversion? ( dev-vcs/subversion[-dso,perl] dev-perl/libwww-perl dev-perl/TermReadKey )
)
python? ( ${PYTHON_DEPS} )
"
# This is how info docs are created with Git:
# .txt/asciidoc --(asciidoc)---------> .xml/docbook
# .xml/docbook --(docbook2texi.pl)--> .texi
# .texi --(makeinfo)---------> .info
DEPEND="${CDEPEND}
doc? (
app-text/asciidoc
app-text/docbook2X
sys-apps/texinfo
app-text/xmlto
)
nls? ( sys-devel/gettext )
test? ( app-crypt/gnupg )"
# Live ebuild builds man pages and HTML docs, additionally
if [[ ${PV} == *9999 ]]; then
DEPEND="${DEPEND}
app-text/asciidoc"
fi
SITEFILE=50${PN}-gentoo.el
S="${WORKDIR}/${MY_P}"
REQUIRED_USE="
cgi? ( perl )
cvs? ( perl )
mediawiki? ( perl )
mediawiki-experimental? ( mediawiki )
subversion? ( perl )
webdav? ( curl )
pcre-jit? ( pcre )
python? ( ${PYTHON_REQUIRED_USE} )
"
PATCHES=(
# bug #350330 - automagic CVS when we don't want it is bad.
"${FILESDIR}"/git-2.12.0-optional-cvs.patch
# install mediawiki perl modules also in vendor_dir
# hack, needs better upstream solution
"${FILESDIR}"/git-1.8.5-mw-vendor.patch
"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
# Bug #493306, where FreeBSD 10.x merged libiconv into its libc.
"${FILESDIR}"/git-2.5.1-freebsd-10.x-no-iconv.patch
)
pkg_setup() {
if use subversion && has_version "dev-vcs/subversion[dso]"; then
ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
ewarn "with USE=dso, there may be weird crashes in git-svn. You"
ewarn "have been warned."
fi
if use python ; then
python-single-r1_pkg_setup
fi
}
# This is needed because for some obscure reasons future calls to make don't
# pick up these exports if we export them in src_unpack()
exportmakeopts() {
local myopts
if use blksha1 ; then
myopts+=" BLK_SHA1=YesPlease"
elif use ppcsha1 ; then
myopts+=" PPC_SHA1=YesPlease"
fi
if use curl ; then
use webdav || myopts+=" NO_EXPAT=YesPlease"
else
myopts+=" NO_CURL=YesPlease"
fi
# broken assumptions, because of static build system ...
myopts+=" NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease"
myopts+=" INSTALL=install TAR=tar"
myopts+=" SHELL_PATH=${EPREFIX}/bin/sh"
myopts+=" SANE_TOOL_PATH="
myopts+=" OLD_ICONV="
myopts+=" NO_EXTERNAL_GREP="
# For svn-fe
extlibs="-lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '')"
# can't define this to null, since the entire makefile depends on it
sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile
use iconv \
|| myopts+=" NO_ICONV=YesPlease"
use nls \
|| myopts+=" NO_GETTEXT=YesPlease"
use tk \
|| myopts+=" NO_TCLTK=YesPlease"
if use pcre; then
if use pcre-jit; then
myopts+=" USE_LIBPCRE2=YesPlease"
extlibs+=" -lpcre2-8"
else
myopts+=" USE_LIBPCRE1=YesPlease"
myopts+=" NO_LIBPCRE1_JIT=YesPlease"
extlibs+=" -lpcre"
fi
fi
use perl \
&& myopts+=" INSTALLDIRS=vendor" \
|| myopts+=" NO_PERL=YesPlease"
use python \
|| myopts+=" NO_PYTHON=YesPlease"
use subversion \
|| myopts+=" NO_SVN_TESTS=YesPlease"
use threads \
&& myopts+=" THREADED_DELTA_SEARCH=YesPlease" \
|| myopts+=" NO_PTHREADS=YesPlease"
use cvs \
|| myopts+=" NO_CVS=YesPlease"
use elibc_musl \
&& myopts+=" NO_REGEX=YesPlease"
# Disabled until ~m68k-mint can be keyworded again
# if [[ ${CHOST} == *-mint* ]] ; then
# myopts+=" NO_MMAP=YesPlease"
# myopts+=" NO_IPV6=YesPlease"
# myopts+=" NO_STRLCPY=YesPlease"
# myopts+=" NO_MEMMEM=YesPlease"
# myopts+=" NO_MKDTEMP=YesPlease"
# myopts+=" NO_MKSTEMPS=YesPlease"
# fi
if [[ ${CHOST} == ia64-*-hpux* ]]; then
myopts+=" NO_NSEC=YesPlease"
fi
if [[ ${CHOST} == *-*-aix* ]]; then
myopts+=" NO_FNMATCH_CASEFOLD=YesPlease"
fi
if [[ ${CHOST} == *-solaris* ]]; then
myopts+=" NEEDS_LIBICONV=YesPlease"
myopts+=" HAVE_CLOCK_MONOTONIC=1"
grep -q getdelim "${ROOT}"/usr/include/stdio.h && \
myopts+=" HAVE_GETDELIM=1"
fi
has_version '>=app-text/asciidoc-8.0' \
&& myopts+=" ASCIIDOC8=YesPlease"
myopts+=" ASCIIDOC_NO_ROFF=YesPlease"
# Bug 290465:
# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
[[ "${CHOST}" == *-uclibc* ]] && \
myopts+=" NO_NSEC=YesPlease"
export MY_MAKEOPTS="${myopts}"
export EXTLIBS="${extlibs}"
}
src_unpack() {
if [[ ${PV} != *9999 ]]; then
unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
cd "${S}"
unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
use doc && \
cd "${S}"/Documentation && \
unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
cd "${S}"
else
git-r3_src_unpack
cd "${S}"
#cp "${FILESDIR}"/GIT-VERSION-GEN .
fi
}
src_prepare() {
# add experimental patches to improve mediawiki support
# see patches for origin
if use mediawiki-experimental ; then
PATCHES+=(
"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
)
fi
default
sed -i \
-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
Makefile contrib/svn-fe/Makefile || die "sed failed"
# Never install the private copy of Error.pm (bug #296310)
sed -i \
-e '/private-Error.pm/s,^,#,' \
perl/Makefile.PL
# Fix docbook2texi command
sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
Documentation/Makefile || die "sed failed"
# Fix git-subtree missing DESTDIR
sed -i \
-e '/$(INSTALL)/s/ $(libexecdir)/ $(DESTDIR)$(libexecdir)/g' \
-e '/$(INSTALL)/s/ $(man1dir)/ $(DESTDIR)$(man1dir)/g' \
contrib/subtree/Makefile
}
git_emake() {
# bug #320647: PYTHON_PATH
PYTHON_PATH=""
use python && PYTHON_PATH="${PYTHON}"
emake ${MY_MAKEOPTS} \
DESTDIR="${D}" \
OPTCFLAGS="${CFLAGS}" \
OPTLDFLAGS="${LDFLAGS}" \
OPTCC="$(tc-getCC)" \
OPTAR="$(tc-getAR)" \
prefix="${EPREFIX}"/usr \
htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
sysconfdir="${EPREFIX}"/etc \
PYTHON_PATH="${PYTHON_PATH}" \
PERL_PATH="${EPREFIX}/usr/bin/perl" \
PERL_MM_OPT="" \
GIT_TEST_OPTS="--no-color" \
V=1 \
"$@"
}
src_configure() {
exportmakeopts
}
src_compile() {
if use perl ; then
git_emake perl/PM.stamp || die "emake perl/PM.stamp failed"
git_emake perl/perl.mak || die "emake perl/perl.mak failed"
fi
git_emake || die "emake failed"
if use emacs ; then
elisp-compile contrib/emacs/git{,-blame}.el
fi
if use perl && use cgi ; then
git_emake \
gitweb \
|| die "emake gitweb (cgi) failed"
fi
if [[ ${CHOST} == *-darwin* ]]; then
cd "${S}"/contrib/credential/osxkeychain || die
git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
|| die "emake credential-osxkeychain"
fi
cd "${S}"/Documentation
if [[ ${PV} == *9999 ]] ; then
git_emake man \
|| die "emake man failed"
if use doc ; then
git_emake info html \
|| die "emake info html failed"
fi
else
if use doc ; then
git_emake info \
|| die "emake info html failed"
fi
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
# by defining EXTLIBS we override the detection for libintl and
# libiconv, bug #516168
local nlsiconv=
use nls && use !elibc_glibc && nlsiconv+=" -lintl"
use iconv && use !elibc_glibc && nlsiconv+=" -liconv"
git_emake EXTLIBS="${EXTLIBS} ${nlsiconv}" || die "emake svn-fe failed"
if use doc ; then
git_emake svn-fe.{1,html} || die "emake svn-fe.1 svn-fe.html failed"
fi
cd "${S}"
fi
if use gnome-keyring ; then
cd "${S}"/contrib/credential/libsecret
git_emake || die "emake git-credential-libsecret failed"
fi
cd "${S}"/contrib/subtree || die
git_emake
use doc && git_emake doc
cd "${S}"/contrib/diff-highlight || die
git_emake
if use mediawiki ; then
cd "${S}"/contrib/mw-to-git
git_emake
fi
}
src_install() {
git_emake \
install || \
die "make install failed"
if [[ ${CHOST} == *-darwin* ]]; then
dobin contrib/credential/osxkeychain/git-credential-osxkeychain
fi
# Depending on the tarball and manual rebuild of the documentation, the
# manpages may exist in either OR both of these directories.
find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
use doc && dodir /usr/share/doc/${PF}/html
for d in / /howto/ /technical/ ; do
docinto ${d}
dodoc Documentation${d}*.txt
if use doc ; then
docinto ${d}/html
dodoc Documentation${d}*.html
fi
done
docinto /
# Upstream does not ship this pre-built :-(
use doc && doinfo Documentation/{git,gitman}.info
newbashcomp contrib/completion/git-completion.bash ${PN}
bashcomp_alias git gitk
# Not really a bash-completion file (bug #477920)
# but still needed uncompressed (bug #507480)
insinto /usr/share/${PN}
doins contrib/completion/git-prompt.sh
if use emacs ; then
elisp-install ${PN} contrib/emacs/git.{el,elc}
elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
# don't add automatically to the load-path, so the sitefile
# can do a conditional loading
touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
elisp-site-file-install "${FILESDIR}"/${SITEFILE}
fi
#dobin contrib/fast-import/git-p4 # Moved upstream
#dodoc contrib/fast-import/git-p4.txt # Moved upstream
newbin contrib/fast-import/import-tars.perl import-tars
exeinto /usr/libexec/git-core/
newexe contrib/git-resurrect.sh git-resurrect
# git-subtree
cd "${S}"/contrib/subtree
git_emake install || die "Failed to emake install git-subtree"
if use doc ; then
git_emake install-man install-doc || die "Failed to emake install-doc install-mangit-subtree"
fi
newdoc README README.git-subtree
dodoc git-subtree.txt
cd "${S}"
if use mediawiki ; then
cd "${S}"/contrib/mw-to-git
git_emake install
cd "${S}"
fi
# diff-highlight
dobin contrib/diff-highlight/diff-highlight
newdoc contrib/diff-highlight/README README.diff-highlight
# git-jump
exeinto /usr/libexec/git-core/
doexe contrib/git-jump/git-jump
newdoc contrib/git-jump/README git-jump.txt
# git-contacts
exeinto /usr/libexec/git-core/
doexe contrib/contacts/git-contacts
dodoc contrib/contacts/git-contacts.txt
if use gnome-keyring ; then
cd "${S}"/contrib/credential/libsecret
dobin git-credential-libsecret
fi
if use subversion ; then
cd "${S}"/contrib/svn-fe
dobin svn-fe
dodoc svn-fe.txt
if use doc ; then
doman svn-fe.1
docinto html
dodoc svn-fe.html
fi
cd "${S}"
fi
dodir /usr/share/${PN}/contrib
# The following are excluded:
# completion - installed above
# diff-highlight - done above
# emacs - installed above
# examples - these are stuff that is not used in Git anymore actually
# git-jump - done above
# gitview - installed above
# p4import - excluded because fast-import has a better one
# patches - stuff the Git guys made to go upstream to other places
# persistent-https - TODO
# mw-to-git - TODO
# subtree - build seperately
# svnimport - use git-svn
# thunderbird-patch-inline - fixes thunderbird
local contrib_objects=(
buildsystems
fast-import
hg-to-git
hooks
remotes2config.sh
rerere-train.sh
stats
workdir
)
for i in "${contrib_objects[@]}" ; do
cp -rf \
"${S}"/contrib/${i} \
"${ED}"/usr/share/${PN}/contrib \
|| die "Failed contrib ${i}"
done
if use perl && use cgi ; then
# We used to install in /usr/share/${PN}/gitweb
# but upstream installs in /usr/share/gitweb
# so we will install a symlink and use their location for compat with other
# distros
dosym /usr/share/gitweb /usr/share/${PN}/gitweb
# INSTALL discusses configuration issues, not just installation
docinto /
newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
newdoc "${S}"/gitweb/README README.gitweb
for d in "${ED}"/usr/lib{64,}/perl5/ ; do
if test -d "$d" ; then find "$d" \
-name .packlist \
-delete || die
fi
done
else
rm -rf "${ED}"/usr/share/gitweb
fi
if ! use subversion ; then
rm -f "${ED}"/usr/libexec/git-core/git-svn \
"${ED}"/usr/share/man/man1/git-svn.1*
fi
if use xinetd ; then
insinto /etc/xinetd.d
newins "${FILESDIR}"/git-daemon.xinetd git-daemon
fi
if use !prefix ; then
newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
newconfd "${FILESDIR}"/git-daemon.confd git-daemon
systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
systemd_dounit "${FILESDIR}/git-daemon.socket"
fi
perl_delete_localpod
# Remove disabled linguas
# we could remove sources in src_prepare, but install does not
# handle missing locale dir well
rm_loc() {
if [[ -e "${ED}/usr/share/locale/${1}" ]]; then
rm -r "${ED}/usr/share/locale/${1}" || die
fi
}
l10n_for_each_disabled_locale_do rm_loc
}
src_test() {
local disabled=""
local tests_cvs="t9200-git-cvsexportcommit.sh \
t9400-git-cvsserver-server.sh \
t9401-git-cvsserver-crlf.sh \
t9402-git-cvsserver-refs.sh \
t9600-cvsimport.sh \
t9601-cvsimport-vendor-branch.sh \
t9602-cvsimport-branches-tags.sh \
t9603-cvsimport-patchsets.sh \
t9604-cvsimport-timestamps.sh"
local tests_perl="t3701-add-interactive.sh \
t5502-quickfetch.sh \
t5512-ls-remote.sh \
t5520-pull.sh \
t7106-reset-unborn-branch.sh \
t7501-commit.sh"
# Bug #225601 - t0004 is not suitable for root perm
# Bug #219839 - t1004 is not suitable for root perm
# t0001-init.sh - check for init notices EPERM* fails
local tests_nonroot="t0001-init.sh \
t0004-unwritable.sh \
t0070-fundamental.sh \
t1004-read-tree-m-u-wf.sh \
t3700-add.sh \
t7300-clean.sh"
# t9100 still fails with symlinks in SVN 1.7
local test_svn="t9100-git-svn-basic.sh"
# Unzip is used only for the testcase code, not by any normal parts of Git.
if ! has_version app-arch/unzip ; then
einfo "Disabling tar-tree tests"
disabled+=" t5000-tar-tree.sh"
fi
cvs=0
use cvs && let cvs=$cvs+1
if [[ ${EUID} -eq 0 ]]; then
if [[ $cvs -eq 1 ]]; then
ewarn "Skipping CVS tests because CVS does not work as root!"
ewarn "You should retest with FEATURES=userpriv!"
disabled+=" ${tests_cvs}"
fi
einfo "Skipping other tests that require being non-root"
disabled+=" ${tests_nonroot}"
else
[[ $cvs -gt 0 ]] && \
has_version dev-vcs/cvs && \
let cvs=$cvs+1
[[ $cvs -gt 1 ]] && \
has_version "dev-vcs/cvs[server]" && \
let cvs=$cvs+1
if [[ $cvs -lt 3 ]]; then
einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
disabled+=" ${tests_cvs}"
fi
fi
if ! use perl ; then
einfo "Disabling tests that need Perl"
disabled+=" ${tests_perl}"
fi
einfo "Disabling tests that fail with SVN 1.7"
disabled+=" ${test_svn}"
# Reset all previously disabled tests
cd "${S}/t"
for i in *.sh.DISABLED ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
done
einfo "Disabled tests:"
for i in ${disabled} ; do
[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled $i"
done
# Avoid the test system removing the results because we want them ourselves
sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
-i "${S}"/t/Makefile
# Clean old results first, must always run
cd "${S}/t"
nonfatal git_emake clean
# Now run the tests, keep going if we hit an error, and don't terminate on
# failure
cd "${S}"
einfo "Start test run"
#MAKEOPTS=-j1
nonfatal git_emake --keep-going test
rc=$?
# Display nice results, now print the results
cd "${S}/t"
nonfatal git_emake aggregate-results
# And bail if there was a problem
[ $rc -eq 0 ] || die "tests failed. Please file a bug."
}
showpkgdeps() {
local pkg=$1
shift
elog " $(printf "%-17s:" ${pkg}) ${@}"
}
pkg_postinst() {
use emacs && elisp-site-regen
einfo "Please read /usr/share/bash-completion/git for Git bash command completion"
einfo "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
einfo "Note that the prompt bash code is now in that separate script"
elog "These additional scripts need some dependencies:"
echo
showpkgdeps git-quiltimport "dev-util/quilt"
showpkgdeps git-instaweb \
"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
echo
use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
}
pkg_postrm() {
use emacs && elisp-site-regen
}

@ -45,7 +45,7 @@ if [[ ${PV} != *9999 ]]; then
${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
)"
[[ "${PV}" = *_rc* ]] || \
KEYWORDS="alpha amd64 ~arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
LICENSE="GPL-2"

Binary file not shown.

@ -313,7 +313,6 @@ should_we_eselect_gnat() {
echo
elog "eselect gnat set <profile>"
echo
ebeep
return 1
fi
}

@ -237,7 +237,6 @@ should_we_eselect_gnat() {
echo
elog "eselect gnat set <profile>"
echo
ebeep
return 1
fi
}

@ -749,7 +749,6 @@ unpack_2_6() {
touch .config
eerror "make defconfig failed."
eerror "assuming you dont have any headers installed yet and continuing"
epause 5
fi
make -s include/linux/version.h ${xmakeopts} 2>/dev/null \
@ -1607,7 +1606,6 @@ kernel-2_pkg_setup() {
ewarn "Also be aware that bugreports about gcc-4 not working"
ewarn "with linux-2.4 based ebuilds will be closed as INVALID!"
echo
epause 10
fi
fi

@ -1,4 +1,4 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: linux-info.eclass
@ -914,7 +914,6 @@ linux-info_pkg_setup() {
ewarn "Also be aware that bugreports about gcc-4 not working"
ewarn "with linux-2.4 based ebuilds will be closed as INVALID!"
echo
epause 10
fi
fi

@ -1,4 +1,4 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: webapp.eclass
@ -411,9 +411,6 @@ webapp_pkg_setup() {
ewarn "This ebuild may be overwriting important files."
ewarn
echo
if has "${EAPI:-0}" 0 1 2; then
ebeep 10
fi
elif [[ "$(echo ${my_output} | awk '{ print $1 }')" != "${PN}" ]]; then
echo
eerror "You already have ${my_output} installed in ${my_dir}"

Binary file not shown.

@ -4,7 +4,7 @@
EAPI=5
CDROM_OPTIONAL="yes"
inherit eutils cdrom unpacker games
inherit eutils cdrom unpacker
GOG_FILE="gog_duke_nukem_3d_atomic_edition_2.0.0.9.sh"
DESCRIPTION="Duke Nukem 3D data files"
@ -58,7 +58,7 @@ src_unpack() {
src_install() {
local DATAROOT
insinto "${GAMES_DATADIR}"/duke3d
insinto /usr/share/duke3d
if use cdinstall ; then
case ${CDROM_SET} in
@ -72,6 +72,4 @@ src_install() {
else
doins data/noarch/data/{duke3d.grp,duke.rts,game.con,user.con,demo?.dmo,defs.con}
fi
prepgamesdirs
}

Binary file not shown.

@ -1,3 +1,2 @@
DIST ArxFatalis_1.21_MULTILANG.exe 9064611 BLAKE2B 42a81491ff470843a80bd6f801a1d8d5b1295603c3b6ec759f545d6fed9530b64ca684b772735f92187eb4eb613b12f68ce7d0491a157123578476b835bb40eb SHA512 885260c6173ee5f2d6d6072bcfd14d085f11b997a0ce45cbdee9a347612e96da13477ef7d71b9c015fb02f2e47bdfb968a2aa89b0c92e9327abbd75b724e47c2
DIST setup_arx_fatalis.exe 547521812 BLAKE2B 8089773df88cff78ac933ffcd71b6db8d0757ce0a6eb9c92a8993ca4ed8bfad4497cd437c313de3fe677e1146b66d89887c2c0bca01ccd32213aff1c128e0bc6 SHA512 4f2021657bd1c5b89d40a29fca0f77a7755e191b8b3e297bb614e557b18ad943a76eb6670f66fb7f0ae1ad92353f1988c0f3bd0c27e220a35fa38a9cdffe0970
DIST setup_arx_fatalis_2.0.0.7.exe 525046992 BLAKE2B 558bffc8f4a0096761a9b1c8003b8127480bf03b1198b943dfe3c0bc8c6b9642275f86f5f4e9c6bbc2211bf48e38bebef634b24196b48d1d5520abf75254033f SHA512 08be7870d02ed6da8cedceb652906ea169eedcb44497a4517ef6a42d9db37403b5146b9e5a3a628a465f23088b0c09d958719e05454dcbb5ac12225c32d35942

@ -1,94 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
CDROM_OPTIONAL="yes"
inherit eutils cdrom check-reqs games
DESCRIPTION="Arx Fatalis data files"
HOMEPAGE="https://www.arkane-studios.com/uk/arx.php"
SRC_URI="cdinstall? ( http://download.zenimax.com/arxfatalis/patches/1.21/ArxFatalis_1.21_MULTILANG.exe )
gog? ( setup_arx_fatalis.exe )"
LICENSE="cdinstall? ( ArxFatalis-EULA-JoWooD ) gog? ( GOG-EULA )"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="gog"
REQUIRED_USE="^^ ( cdinstall gog )"
RESTRICT="binchecks mirror gog? ( fetch )"
RDEPEND="games-rpg/arx-libertatis"
DEPEND="app-arch/innoextract
cdinstall? ( app-arch/cabextract )"
CHECKREQS_DISK_BUILD="621M"
CHECKREQS_DISK_USR="617M"
S=${WORKDIR}
detect_language() {
speech_checksum=$(find '.' -iname "speech.pak" \
-exec md5sum -b '{}' \; | sed "s/ .*//g")
if [[ -z $speech_checksum ]] ; then
speech_checksum=$(find '.' -iname "speech_default.pak" \
-exec md5sum -b '{}' \; | sed "s/ .*//g")
fi
# check if the checksum is of a known localisation and set data_lang to
# the language string to be used with the 1.21 patch installer
case "$speech_checksum" in
'4c3fdb1f702700255924afde49081b6e') data_lang='german' ;;
# Bundled version of AF included with NVIDIA card
'ab8a93161688d793a7c78fbefd7d133e') data_lang='german' ;;
'4e8f962d8204bcfd79ce6f3226d6d6de') data_lang='english' ;;
'2f88c67ae1537919e69386d27583125b') data_lang='spanish' ;;
'4edf9f8c799190590b4cd52cfa5f91b1') data_lang='french' ;;
'81f05dea47c52d43f01c9b44dd8fe962') data_lang='italian' ;;
'677163bc319cd1e9aa1b53b5fb3e9402') data_lang='russian' ;;
'') eerror "speech*.pak not found"
die "speech*.pak not found" ;;
*) eerror "unsupported data language - speech*.pak checksum:" \
"$speech_checksum" \
"please file a gentoo bug"
die "unsupported data language, file a gentoo bug" ;;
esac
}
pkg_nofetch() {
einfo "Please download ${A} from your GOG.com account after buying Arx Fatalis"
einfo "and put it into ${DISTDIR}."
}
src_unpack() {
local data_lang
if use cdinstall ; then
cdrom_get_cds bin/Arx.ttf
find "${CDROM_ROOT}" -iname "setup*.cab" -exec cabextract '{}' \;
detect_language
else
# gog only offers english
data_lang="english"
fi
einfo "Data language: $data_lang"
innoextract --lowercase --language=${data_lang} \
"${DISTDIR}"/${A} || die
}
src_install() {
insinto "${GAMES_DATADIR}"/arx
doins -r app/{graph,misc}
find . -iname "*.pak" -exec doins '{}' \;
dodoc app/{manual,map}.pdf
# convert to lowercase
cd "${D}"
find . -type f -exec sh -c 'echo "${1}"
lower="`echo "${1}" | tr [:upper:] [:lower:]`"
[ "${1}" = "${lower}" ] || mv "${1}" "${lower}"' - {} \;
prepgamesdirs
}

@ -1,10 +1,10 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
CDROM_OPTIONAL="yes"
inherit eutils cdrom check-reqs games
inherit eutils cdrom check-reqs
DESCRIPTION="Arx Fatalis data files"
HOMEPAGE="https://www.arkane-studios.com/uk/arx.php"
@ -78,7 +78,7 @@ src_unpack() {
}
src_install() {
insinto "${GAMES_DATADIR}"/arx
insinto /usr/share/arx
doins -r app/{graph,misc}
find . -iname "*.pak" -exec doins '{}' \;
@ -89,6 +89,4 @@ src_install() {
find . -type f -exec sh -c 'echo "${1}"
lower="`echo "${1}" | tr [:upper:] [:lower:]`"
[ "${1}" = "${lower}" ] || mv "${1}" "${lower}"' - {} \;
prepgamesdirs
}

Binary file not shown.

@ -1,4 +1,2 @@
DIST hedgewars-src-0.9.23.tar.bz2 173042171 BLAKE2B 8458cce459e59227a92f70a1a1593ce0e222030f519e554bea067890394322e8346d062a8552472280401272691d5ebb4c2e85d9e8824b3513d70d24cca4b880 SHA512 b9bcd6d32c7bb97c2766aacbc759dd48b7a4c7a72003ab2bf31cdfac94a6e08de740a689458c276d3c35b90e89a1af6c200f98f463e9554e8b176b5706dc3090
DIST hedgewars-src-0.9.24.1.tar.bz2 175069915 BLAKE2B 5c49b91b9a77a110a7bc8667f9621c92d638950071c8db7493b7797c2e504a214052fad6ae8554d844146eecabd794529891aebf4e54ee73f8a447ab11c6c7da SHA512 b0b166c807e0d08a763e5e88e178d6e629baa420685bbfe381db7b5ecf003175892f8c2e3b75f1f6d7663335bd5b417d1a2afdc89b9d56b348b056ee3490ed2f
DIST hedgewars_0.9.22-dfsg-7.debian.tar.xz 79016 BLAKE2B dda854b87db808520e3b6405e6eb28db085d23b78e4cdcce25a94992bc2551e2436401766cc39bf52fb7c5ad0e946a9792cc333813454fdfd615d2569e3fb16a SHA512 011d44989b6fcad9ae7a20fcb11a4e2b9a75d1ace6c6e4c2139cd7e67f13ea21d90b6c8a7afb76fa9a06c32537b00b8b4b7689967b3019300e93a7a6fe3e0fbf
DIST hedgewars_0.9.23-dfsg-2.debian.tar.xz 77488 BLAKE2B 5de6fa2ad91f1346f679d07b3b445bd119d2cdd3c715ace20fc36abe726330ccf9a9b69ec56c58cfca4cc6256ff248b0cc0b0e27caf2a79df0f1662ea7727e8e SHA512 03680446930279178ddff85a87fc27b7c26ad6d850c8f26571517ebbd6dff296db216da6b56d4bd55c659786bc5c76e2b67a63052ee38e150655e60c08f7c491

@ -1,81 +0,0 @@
# User unc0rr
# Node ID 8869b5256720f0378bf9d5edc68ecb7e1f376039
Configure for Qt5
--- a/QTfrontend/CMakeLists.txt Mon Jan 15 12:15:56 2018 -0500
+++ b/QTfrontend/CMakeLists.txt Wed Jan 24 21:05:34 2018 +0100
@@ -1,24 +1,6 @@
-# Configure for Qt4
-set(QT_MIN_VERSION "4.7.0")
-include(CheckLibraryExists)
+find_package(Qt5 COMPONENTS Core Gui Network Widgets)
-set(QT_USE_QTCORE TRUE)
-set(QT_USE_QTGUI TRUE)
-set(QT_USE_QTNETWORK TRUE)
-set(QT_USE_QTSVG FALSE)
-set(QT_USE_QTXML FALSE)
-set(QT_USE_QTOPENGL FALSE)
-set(QT_USE_QTMAIN TRUE)
-
-find_package(Qt4 REQUIRED)
-include(${QT_USE_FILE})
-
-# https://bugreports.qt-project.org/browse/QTBUG-17333
-if(APPLE AND
- ${QTVERSION} VERSION_GREATER "4.7.0" AND
- ${QTVERSION} VERSION_LESS "4.7.4")
- message(FATAL_ERROR "This version of Qt is known *not* to work, please update or use a lower version")
-endif()
+include(CheckLibraryExists)
find_package(SDL2 REQUIRED)
find_package(SDL2_mixer 2 REQUIRED) #audio in SDLInteraction
@@ -159,9 +141,9 @@
endif()
endif()
-qt4_add_resources(hwfr_rez_src ${hwfr_rez})
+qt5_add_resources(hwfr_rez_src ${hwfr_rez})
-qt4_wrap_cpp(hwfr_moc_srcs ${hwfr_moc_hdrs})
+qt5_wrap_cpp(hwfr_moc_srcs ${hwfr_moc_hdrs})
if(APPLE)
@@ -198,14 +180,14 @@
list(APPEND HW_LINK_LIBS
physfs physlayer
- ${QT_LIBRARIES}
+ Qt5::Core Qt5::Gui Qt5::Network Qt5::Widgets
)
list(APPEND HW_LINK_LIBS
${SDL2_LIBRARY}
${SDL2_MIXER_LIBRARIES}
)
-
+
if(WIN32 AND NOT UNIX)
if(NOT SDL2_LIBRARY)
list(APPEND HW_LINK_LIBS SDL2)
--- a/share/hedgewars/Data/Locale/CMakeLists.txt Mon Jan 15 12:15:56 2018 -0500
+++ b/share/hedgewars/Data/Locale/CMakeLists.txt Wed Jan 24 21:05:34 2018 +0100
@@ -1,5 +1,4 @@
-find_package(Qt4 REQUIRED)
-include(${QT_USE_FILE})
+find_package(Qt5 COMPONENTS LinguistTools)
file(GLOB txttrans2 ??.txt)
file(GLOB txttrans5 ?????.txt)
@@ -9,7 +8,7 @@
file(GLOB campaignfiles campaigns_*.txt)
file(GLOB tipfiles tips_*.xml)
-QT4_ADD_TRANSLATION(QM ${tsfiles})
+QT5_ADD_TRANSLATION(QM ${tsfiles})
add_custom_target (release-translation ALL
DEPENDS ${QM}

@ -1,441 +0,0 @@
# User unc0rr
# Node ID fc47fc4af6bd6f399035923453cd85c8f50146f7
Finish porting. Seems to work, but no thorough testing has been performed
--- a/QTfrontend/CMakeLists.txt Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/CMakeLists.txt Wed Jan 24 22:20:10 2018 +0100
@@ -1,5 +1,7 @@
find_package(Qt5 COMPONENTS Core Gui Network Widgets)
+include_directories(${Qt5Core_PRIVATE_INCLUDE_DIRS})
+
include(CheckLibraryExists)
find_package(SDL2 REQUIRED)
--- a/QTfrontend/main.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/main.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -20,7 +20,6 @@
#include <QTranslator>
#include <QLocale>
-#include <QPlastiqueStyle>
#include <QRegExp>
#include <QMap>
#include <QSettings>
@@ -252,7 +251,7 @@
splash.show();
#endif
- app.setStyle(new QPlastiqueStyle());
+ //app.setStyle(new QPlastiqueStyle());
QDateTime now = QDateTime::currentDateTime();
srand(now.toTime_t());
@@ -332,7 +331,7 @@
// Fallback to current input locale if "C" locale is returned
if(cc == "C")
- cc = HWApplication::keyboardInputLocale().name();
+ cc = HWApplication::inputMethod()->locale().name();
}
// Load locale files into translators
--- a/QTfrontend/model/ammoSchemeModel.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/model/ammoSchemeModel.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -569,7 +569,7 @@
<< QVariant() // scriptparam 43
;
- QList<QVariant> construction;
+ QList<QVariant> construction;
construction
<< predefSchemesNames[10] // name 0
<< QVariant(false) // fortsmode 1
@@ -617,7 +617,7 @@
<< QVariant() // scriptparam 43
;
- QList<QVariant> hedgeeditor;
+ QList<QVariant> hedgeeditor;
hedgeeditor
<< predefSchemesNames[11] // name 0
<< QVariant(false) // fortsmode 1
@@ -896,10 +896,12 @@
return;
}
+ beginResetModel();
+
cfg[cfg.size()-1] = cfg[cfg.size()-1].mid(1);
for(int i = 0; i < cfg.size(); ++i)
netScheme[i] = QVariant(cfg[i]);
- reset();
+ endResetModel();
}
--- a/QTfrontend/model/playerslistmodel.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/model/playerslistmodel.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -309,10 +309,10 @@
}
if(index.data(Ignore).toBool())
- setData(index, Qt::gray, Qt::ForegroundRole);
+ setData(index, QColor(Qt::gray), Qt::ForegroundRole);
else
if(index.data(Friend).toBool())
- setData(index, Qt::green, Qt::ForegroundRole);
+ setData(index, QColor(Qt::green), Qt::ForegroundRole);
else
setData(index, QBrush(QColor(0xff, 0xcc, 0x00)), Qt::ForegroundRole);
}
--- a/QTfrontend/net/hwmap.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/net/hwmap.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -79,7 +79,7 @@
{
quint8 *buf = (quint8*) readbuffer.constData();
QImage im(buf, 256, 128, QImage::Format_Mono);
- im.setNumColors(2);
+ im.setColorCount(2);
QPixmap px(QSize(256, 128));
QPixmap pxres(px.size());
--- a/QTfrontend/net/netudpwidget.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/net/netudpwidget.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -33,15 +33,19 @@
void HWNetUdpModel::updateList()
{
- games.clear();
+ beginResetModel();
+
+ games.clear();
- reset();
+ endResetModel();
- pUdpSocket->writeDatagram("hedgewars client", QHostAddress::Broadcast, NETGAME_DEFAULT_PORT);
+ pUdpSocket->writeDatagram("hedgewars client", QHostAddress::Broadcast, NETGAME_DEFAULT_PORT);
}
void HWNetUdpModel::onClientRead()
{
+ beginResetModel();
+
while (pUdpSocket->hasPendingDatagrams())
{
QByteArray datagram;
@@ -60,7 +64,7 @@
}
}
- reset();
+ endResetModel();
}
QVariant HWNetUdpModel::data(const QModelIndex &index,
--- a/QTfrontend/net/newnetclient.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/net/newnetclient.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -242,7 +242,7 @@
void HWNewNet::SendPasswordHash(const QString & hash)
{
// don't send it immediately, only store and check if server asked us for a password
- m_passwordHash = hash.toAscii();
+ m_passwordHash = hash.toLatin1();
maybeSendPassword();
}
@@ -271,7 +271,7 @@
if (lst[0] == "ERROR")
{
if (lst.size() == 2)
- emit Error(HWApplication::translate("server", lst[1].toAscii().constData()));
+ emit Error(HWApplication::translate("server", lst[1].toLatin1().constData()));
else
emit Error("Unknown error");
return;
@@ -280,7 +280,7 @@
if (lst[0] == "WARNING")
{
if (lst.size() == 2)
- emit Warning(HWApplication::translate("server", lst[1].toAscii().constData()));
+ emit Warning(HWApplication::translate("server", lst[1].toLatin1().constData()));
else
emit Warning("Unknown warning");
return;
@@ -447,7 +447,7 @@
while(flags.size() > 1)
{
flags.remove(0, 1);
- char c = flags[0].toAscii();
+ char c = flags[0].toLatin1();
bool inRoom = (netClientState == InRoom || netClientState == InGame);
switch(c)
@@ -673,7 +673,7 @@
}
m_game_connected = false;
Disconnect();
- emit disconnected(HWApplication::translate("server", lst[1].toAscii().constData()));
+ emit disconnected(HWApplication::translate("server", lst[1].toLatin1().constData()));
return;
}
@@ -727,7 +727,7 @@
}
for(int i = 1; i < lst.size(); ++i)
{
- QByteArray em = QByteArray::fromBase64(lst[i].toAscii());
+ QByteArray em = QByteArray::fromBase64(lst[i].toLatin1());
emit FromNet(em);
}
return;
@@ -1155,18 +1155,18 @@
return;
QString hash = QCryptographicHash::hash(
- m_clientSalt.toAscii()
- .append(m_serverSalt.toAscii())
+ m_clientSalt.toLatin1()
+ .append(m_serverSalt.toLatin1())
.append(m_passwordHash)
- .append(cProtoVer->toAscii())
+ .append(cProtoVer->toLatin1())
.append("!hedgewars")
, QCryptographicHash::Sha1).toHex();
m_serverHash = QCryptographicHash::hash(
- m_serverSalt.toAscii()
- .append(m_clientSalt.toAscii())
+ m_serverSalt.toLatin1()
+ .append(m_clientSalt.toLatin1())
.append(m_passwordHash)
- .append(cProtoVer->toAscii())
+ .append(cProtoVer->toLatin1())
.append("!hedgewars")
, QCryptographicHash::Sha1).toHex();
--- a/QTfrontend/net/proto.h Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/net/proto.h Wed Jan 24 22:20:10 2018 +0100
@@ -22,7 +22,7 @@
#include <QByteArray>
#include <QString>
#include <QStringList>
-
+#include <QObject>
class HWProto : public QObject
{
--- a/QTfrontend/ui/dialog/upload_video.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/ui/dialog/upload_video.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -38,7 +38,7 @@
// User-agent string used in http requests.
// Don't make it a global varibale - crash on linux because of cVersionString
-#define USER_AGENT ("Hedgewars-QtFrontend/" + *cVersionString).toAscii()
+#define USER_AGENT ("Hedgewars-QtFrontend/" + *cVersionString).toLatin1()
// This is developer key obtained from http://code.google.com/apis/youtube/dashboard/
// If you are reusing this code outside Hedgewars, don't use this developer key,
@@ -193,7 +193,7 @@
QString account(QUrl::toPercentEncoding(leAccount->text()));
QString pass(QUrl::toPercentEncoding(lePassword->text()));
- QByteArray data = QString("Email=%1&Passwd=%2&service=youtube&source=Hedgewars").arg(account).arg(pass).toAscii();
+ QByteArray data = QString("Email=%1&Passwd=%2&service=youtube&source=Hedgewars").arg(account).arg(pass).toUtf8();
QNetworkReply *reply = netManager->post(request, data);
connect(reply, SIGNAL(finished()), this, SLOT(authFinished()));
@@ -246,7 +246,7 @@
return;
}
- QByteArray auth = ("GoogleLogin auth=" + authToken).toAscii();
+ QByteArray auth = ("GoogleLogin auth=" + authToken).toLatin1();
// We have authenticated, now we can send metadata and start upload
// Documentation is here: https://developers.google.com/youtube/2.0/developers_guide_protocol_resumable_uploads#Resumable_uploads
--- a/QTfrontend/ui/page/pageadmin.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/ui/page/pageadmin.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -98,7 +98,7 @@
<< tr("Expiration")
<< tr("Reason")
);
- twBans->horizontalHeader()->setResizeMode(2, QHeaderView::Stretch);
+ twBans->horizontalHeader()->setSectionResizeMode(2, QHeaderView::Stretch);
twBans->setEditTriggers(QAbstractItemView::NoEditTriggers);
twBans->setSelectionBehavior(QAbstractItemView::SelectRows);
twBans->setSelectionMode(QAbstractItemView::SingleSelection);
--- a/QTfrontend/ui/page/pagenet.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/ui/page/pagenet.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -99,7 +99,7 @@
{
tvServersList->setModel(new HWNetUdpModel(tvServersList));
- tvServersList->horizontalHeader()->setResizeMode(0, QHeaderView::Stretch);
+ tvServersList->horizontalHeader()->setSectionResizeMode(0, QHeaderView::Stretch);
static_cast<HWNetServersModel *>(tvServersList->model())->updateList();
--- a/QTfrontend/ui/page/pageroomslist.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/ui/page/pageroomslist.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -154,7 +154,7 @@
roomsList = new RoomTableView(this);
roomsList->setSelectionBehavior(QAbstractItemView::SelectRows);
roomsList->verticalHeader()->setVisible(false);
- roomsList->horizontalHeader()->setResizeMode(QHeaderView::Interactive);
+ roomsList->horizontalHeader()->setSectionResizeMode(QHeaderView::Interactive);
roomsList->setAlternatingRowColors(true);
roomsList->setShowGrid(false);
roomsList->setSelectionMode(QAbstractItemView::SingleSelection);
@@ -587,7 +587,7 @@
h->setSortIndicatorShown(true);
h->setSortIndicator(RoomsListModel::StateColumn, Qt::AscendingOrder);
- h->setResizeMode(RoomsListModel::NameColumn, QHeaderView::Stretch);
+ h->setSectionResizeMode(RoomsListModel::NameColumn, QHeaderView::Stretch);
if (!restoreHeaderState())
{
--- a/QTfrontend/ui/page/pagevideos.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/ui/page/pagevideos.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -133,8 +133,8 @@
filesTable->setMinimumWidth(400);
QHeaderView * header = filesTable->horizontalHeader();
- header->setResizeMode(vcName, QHeaderView::ResizeToContents);
- header->setResizeMode(vcSize, QHeaderView::Fixed);
+ header->setSectionResizeMode(vcName, QHeaderView::ResizeToContents);
+ header->setSectionResizeMode(vcSize, QHeaderView::Fixed);
header->resizeSection(vcSize, 100);
header->setStretchLastSection(true);
@@ -851,7 +851,7 @@
static QString unprotectPass(QString str)
{
- QByteArray array = QByteArray::fromBase64(str.toAscii());
+ QByteArray array = QByteArray::fromBase64(str.toLatin1());
for (int i = 0; i < array.size(); i++)
array[i] = array[i] ^ 0xC4 ^ i;
return QString::fromUtf8(array);
--- a/QTfrontend/ui/widget/about.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/ui/widget/about.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -26,6 +26,7 @@
#include <QMessageBox>
#include <QNetworkReply>
#include <QDebug>
+#include <QMimeData>
#include "hwconsts.h"
#include "SDLInteraction.h"
#include "SDL.h"
--- a/QTfrontend/ui/widget/chatwidget.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/ui/widget/chatwidget.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -32,6 +32,7 @@
#include <QSortFilterProxyModel>
#include <QMenu>
#include <QScrollBar>
+#include <QMimeData>
#include "DataManager.h"
#include "hwconsts.h"
@@ -312,7 +313,7 @@
else if (link.scheme() == "hwnick")
{
// decode nick
- QString nick = QString::fromUtf8(QByteArray::fromBase64(link.encodedQuery()));
+ QString nick = QString::fromUtf8(QByteArray::fromBase64(link.query(QUrl::FullyDecoded).toLatin1()));
QModelIndexList mil = chatNicks->model()->match(chatNicks->model()->index(0, 0), Qt::DisplayRole, nick);
bool isOffline = (mil.size() < 1);
@@ -374,10 +375,10 @@
{
if (nickname != m_userNick)
return QString("<a href=\"hwnick://?%1\" class=\"nick\">%2</a>").arg(
- QString(nickname.toUtf8().toBase64())).arg(Qt::escape(nickname));
+ QString(nickname.toUtf8().toBase64())).arg(nickname.toHtmlEscaped());
// unlinked nick (if own one)
- return QString("<span class=\"nick\">%1</span>").arg(Qt::escape(nickname));
+ return QString("<span class=\"nick\">%1</span>").arg(nickname.toHtmlEscaped());
}
const QRegExp HWChatWidget::URLREGEXP = QRegExp("(http(s)?://)?(www\\.)?((([^/:?&#]+\\.)?hedgewars\\.org|code\\.google\\.com|googlecode\\.com|hh\\.unit22\\.org)(/[^ ]*)?)");
@@ -399,7 +400,7 @@
QString HWChatWidget::messageToHTML(const QString & message)
{
- QString formattedStr = Qt::escape(message);
+ QString formattedStr = message.toHtmlEscaped();
// link some urls
formattedStr = formattedStr.replace(URLREGEXP, "<a href=\"http\\2://\\4\">\\4</a>");
return formattedStr;
@@ -606,9 +607,9 @@
{
addLine("msg_PlayerInfo", QString(" >>> %1 - <span class=\"ipaddress\">%2</span> <span class=\"version\">%3</span> <span class=\"location\">%4</span>")
.arg(linkedNick(nick))
- .arg(Qt::escape(ip == "[]"?"":ip))
- .arg(Qt::escape(version))
- .arg(Qt::escape(roomInfo))
+ .arg(QString(ip == "[]"?"":ip).toHtmlEscaped())
+ .arg(version.toHtmlEscaped())
+ .arg(roomInfo.toHtmlEscaped())
);
}
--- a/QTfrontend/ui/widget/feedbackdialog.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/ui/widget/feedbackdialog.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -20,7 +20,7 @@
#include <QLineEdit>
#include <QTextBrowser>
#include <QLabel>
-#include <QHttp>
+#include <QNetworkAccessManager>
#include <QSysInfo>
#include <QDebug>
#include <QBuffer>
@@ -474,7 +474,7 @@
this, SLOT(finishedSlot(QNetworkReply*)));
QNetworkRequest header(QUrl("https://hedgewars.org/feedback/?submit"));
- header.setRawHeader("Content-Length", QString::number(body.size()).toAscii());
+ header.setRawHeader("Content-Length", QString::number(body.size()).toLatin1());
header.setRawHeader("Content-Type", "application/x-www-form-urlencoded");
nam->post(header, body);
--- a/QTfrontend/ui/widget/keybinder.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/ui/widget/keybinder.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -154,7 +154,7 @@
curTable = new QTableWidget(0, 2);
curTable->verticalHeader()->setVisible(false);
curTable->horizontalHeader()->setVisible(false);
- curTable->horizontalHeader()->setResizeMode(QHeaderView::Stretch);
+ curTable->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
curTable->verticalHeader()->setDefaultSectionSize(rowHeight);
curTable->setShowGrid(false);
curTable->setStyleSheet("QTableWidget { border: none; } ");
--- a/QTfrontend/ui/widget/mapContainer.cpp Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/ui/widget/mapContainer.cpp Wed Jan 24 22:20:10 2018 +0100
@@ -984,7 +984,7 @@
{
m_theme = selectedTheme = current.data(ThemeModel::ActualNameRole).toString();
m_themeID = current.row();
- QIcon icon = qVariantValue<QIcon>(current.data(Qt::DecorationRole));
+ QIcon icon = current.data(Qt::DecorationRole).value<QIcon>();
//QSize iconSize = icon.actualSize(QSize(65535, 65535));
//btnTheme->setFixedHeight(64);
//btnTheme->setIconSize(iconSize);
--- a/QTfrontend/util/FileEngine.h Wed Jan 24 21:05:34 2018 +0100
+++ b/QTfrontend/util/FileEngine.h Wed Jan 24 22:20:10 2018 +0100
@@ -1,9 +1,7 @@
#ifndef _FileEngine_h
#define _FileEngine_h
-#include <QAbstractFileEngine>
-#include <QAbstractFileEngineHandler>
-#include <QAbstractFileEngineIterator>
+#include <private/qabstractfileengine_p.h>
#include <QDateTime>
#include "physfs.h"

@ -1,134 +0,0 @@
From f8e302e5ac5033c1b7ac5d83d6d8df3f15eb6178 Mon Sep 17 00:00:00 2001
From: Wuzzy <Wuzzy2@mail.ru>
Date: Tue, 27 Mar 2018 17:32:23 +0200
Subject: [PATCH] Fix team files and settings not saving properly, and remove
FileEngine stuff from DLC
This is done by using absolute paths and removing physfs://
---
QTfrontend/game.cpp | 4 ++--
QTfrontend/team.cpp | 10 +++++-----
QTfrontend/ui/page/pagedata.cpp | 6 ------
QTfrontend/util/DataManager.cpp | 4 ++--
4 files changed, 9 insertions(+), 15 deletions(-)
diff --git a/QTfrontend/game.cpp b/QTfrontend/game.cpp
index 224c38350..f071ef734 100644
--- a/QTfrontend/game.cpp
+++ b/QTfrontend/game.cpp
@@ -536,7 +536,7 @@ void HWGame::abort()
void HWGame::sendCampaignVar(const QByteArray &varToSend)
{
QString varToFind = QString::fromUtf8(varToSend);
- QSettings teamfile(QString("physfs://Teams/%1.hwt").arg(campaignTeam), QSettings::IniFormat, 0);
+ QSettings teamfile(QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(campaignTeam), QSettings::IniFormat, 0);
teamfile.setIniCodec("UTF-8");
QString varValue = teamfile.value("Campaign " + campaign + "/" + varToFind, "").toString();
QByteArray command;
@@ -553,7 +553,7 @@ void HWGame::writeCampaignVar(const QByteArray & varVal)
QString varToWrite = QString::fromUtf8(varVal.left(i));
QString varValue = QString::fromUtf8(varVal.mid(i + 1));
- QSettings teamfile(QString("physfs://Teams/%1.hwt").arg(campaignTeam), QSettings::IniFormat, 0);
+ QSettings teamfile(QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(campaignTeam), QSettings::IniFormat, 0);
teamfile.setIniCodec("UTF-8");
teamfile.setValue("Campaign " + campaign + "/" + varToWrite, varValue);
}
diff --git a/QTfrontend/team.cpp b/QTfrontend/team.cpp
index 0586e622a..740697b7f 100644
--- a/QTfrontend/team.cpp
+++ b/QTfrontend/team.cpp
@@ -171,7 +171,7 @@ HWTeam & HWTeam::operator = (const HWTeam & other)
bool HWTeam::loadFromFile()
{
- QSettings teamfile(QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(m_name)), QSettings::IniFormat, 0);
+ QSettings teamfile(QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(DataManager::safeFileName(m_name)), QSettings::IniFormat, 0);
teamfile.setIniCodec("UTF-8");
m_name = teamfile.value("Team/Name", m_name).toString();
m_grave = teamfile.value("Team/Grave", "Statue").toString();
@@ -204,7 +204,7 @@ bool HWTeam::loadFromFile()
bool HWTeam::fileExists()
{
- QFile f(QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(m_name)));
+ QFile f(QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(DataManager::safeFileName(m_name)));
return f.exists();
}
@@ -220,7 +220,7 @@ bool HWTeam::deleteFile()
{
if(m_isNetTeam)
return false;
- QFile cfgfile(QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(m_name)));
+ QFile cfgfile(QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(DataManager::safeFileName(m_name)));
cfgfile.remove();
return true;
}
@@ -229,12 +229,12 @@ bool HWTeam::saveToFile()
{
if (OldTeamName != m_name)
{
- QFile cfgfile(QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(OldTeamName)));
+ QFile cfgfile(QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(DataManager::safeFileName(OldTeamName)));
cfgfile.remove();
OldTeamName = m_name;
}
- QString fileName = QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(m_name));
+ QString fileName = QString(cfgdir->absolutePath() + "/Teams/%1.hwt").arg(DataManager::safeFileName(m_name));
DataManager::ensureFileExists(fileName);
QSettings teamfile(fileName, QSettings::IniFormat, 0);
teamfile.setIniCodec("UTF-8");
diff --git a/QTfrontend/ui/page/pagedata.cpp b/QTfrontend/ui/page/pagedata.cpp
index ccdea5ac4..cc7d17b2a 100644
--- a/QTfrontend/ui/page/pagedata.cpp
+++ b/QTfrontend/ui/page/pagedata.cpp
@@ -31,8 +31,6 @@
#include "pagedata.h"
#include "databrowser.h"
#include "hwconsts.h"
-#include "DataManager.h"
-#include "FileEngine.h"
QLayout * PageDataDownload::bodyLayoutDefinition()
{
@@ -197,9 +195,6 @@ void PageDataDownload::fileDownloaded()
out.write(reply->readAll());
out.close();
-
- // now mount it
- FileEngineHandler::mount(fileName);
}
}
@@ -229,7 +224,6 @@ void PageDataDownload::onPageLeave()
if (m_contentDownloaded)
{
m_contentDownloaded = false;
- //DataManager::instance().reload();
}
}
diff --git a/QTfrontend/util/DataManager.cpp b/QTfrontend/util/DataManager.cpp
index 3d69931cf..5c8aa4cc5 100644
--- a/QTfrontend/util/DataManager.cpp
+++ b/QTfrontend/util/DataManager.cpp
@@ -172,11 +172,11 @@ QString DataManager::settingsFileName()
{
if(m_settingsFileName.isEmpty())
{
- QFile settingsFile("physfs://settings.ini");
+ QFile settingsFile(cfgdir->absoluteFilePath("settings.ini"));
if(!settingsFile.exists())
{
- QFile oldSettingsFile("physfs://hedgewars.ini");
+ QFile oldSettingsFile(cfgdir->absoluteFilePath("hedgewars.ini"));
settingsFile.open(QFile::WriteOnly);
settingsFile.close();
--
2.16.1

@ -1,91 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
CMAKE_MAKEFILE_GENERATOR=emake
inherit cmake-utils desktop xdg-utils
MY_P=${PN}-src-${PV}
DEB_PATCH_VER=7
DESCRIPTION="A turn-based strategy, artillery, action and comedy game"
HOMEPAGE="https://www.hedgewars.org/"
SRC_URI="https://www.hedgewars.org/download/releases/${MY_P}.tar.bz2
mirror://debian/pool/main/h/${PN}/${PN}_0.9.22-dfsg-${DEB_PATCH_VER}.debian.tar.xz"
LICENSE="GPL-2 Apache-2.0 FDL-1.3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="libav"
QA_FLAGS_IGNORED="/usr/bin/hwengine" # pascal sucks
QA_PRESTRIPPED="/usr/bin/hwengine" # pascal sucks
# qtcore:5= - depends on private header
CDEPEND="
>=dev-games/physfs-3.0.1
dev-lang/lua:0=
dev-qt/qtcore:5=
dev-qt/qtgui:5
dev-qt/qtnetwork:5
dev-qt/qtwidgets:5
media-libs/libpng:0=
media-libs/libsdl2:=
media-libs/sdl2-image:=
media-libs/sdl2-mixer:=[vorbis]
media-libs/sdl2-net:=
media-libs/sdl2-ttf:=
sys-libs/zlib:=
libav? ( media-video/libav:= )
!libav? ( media-video/ffmpeg:= )"
DEPEND="${CDEPEND}
>=dev-lang/fpc-2.4
dev-qt/linguist-tools:5"
RDEPEND="${CDEPEND}
app-arch/xz-utils
>=media-fonts/dejavu-2.28
media-fonts/wqy-zenhei"
S="${WORKDIR}"/${MY_P}
PATCHES=(
"${FILESDIR}"/${PN}-0.9.22-rpath-fix.patch
"${FILESDIR}"/${P}-qt5-{1,2}.patch # bug 645504
"${FILESDIR}"/${P}-settings-saving.patch # bug 651810
)
src_configure() {
local mycmakeargs=(
-DMINIMAL_FLAGS=ON
-DDATA_INSTALL_DIR="${EPREFIX}/usr/share/${PN}"
-Dtarget_binary_install_dir="${EPREFIX}/usr/bin"
-Dtarget_library_install_dir="${EPREFIX}/usr/$(get_libdir)"
-DNOSERVER=TRUE
-DCMAKE_VERBOSE_MAKEFILE=TRUE
-DPHYSFS_SYSTEM=ON
# Need to tell the build system where the fonts are located
# as it uses PhysFS' symbolic link protection mode which
# prevents us from symlinking the fonts into the right directory
# https://hg.hedgewars.org/hedgewars/rev/76ad55807c24
# https://icculus.org/physfs/docs/html/physfs_8h.html#aad451d9b3f46f627a1be8caee2eef9b7
-DFONTS_DIRS="${EPREFIX}/usr/share/fonts/wqy-zenhei;${EPREFIX}/usr/share/fonts/dejavu"
# upstream sets RPATH that leads to weird breakage
# https://bugzilla.redhat.com/show_bug.cgi?id=1200193
-DCMAKE_SKIP_RPATH=ON
)
cmake-utils_src_configure
}
src_install() {
cmake-utils_src_install
doman man/${PN}.6
}
pkg_postinst() {
xdg_desktop_database_update
}
pkg_postrm() {
xdg_desktop_database_update
}

@ -0,0 +1,23 @@
#!/sbin/openrc-run
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
depend() {
use net
}
start() {
checkpath -q -d -m 0750 -o wesnoth:wesnoth /run/wesnothd
ebegin "Starting wesnothd"
start-stop-daemon --start --quiet -b -m \
--pidfile /run/wesnothd/wesnothd.pid \
-c wesnoth:wesnoth \
--exec /usr/bin/wesnothd
eend $?
}
stop() {
ebegin "Stopping wesnothd"
start-stop-daemon --stop --quiet --pidfile /run/wesnothd/wesnothd.pid
eend $?
}

@ -108,7 +108,7 @@ src_configure() {
src_install() {
DOCS="README.md changelog.md players_changelog.md" cmake-utils_src_install
if use dedicated || use server; then
keepdir "/run/wesnothd"
newinitd "${FILESDIR}"/wesnothd.rc wesnothd
rmdir "${ED%/}/run/wesnothd" || die
newinitd "${FILESDIR}"/wesnothd.rc-r1 wesnothd
fi
}

Binary file not shown.

@ -13,7 +13,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/NetworkManager"
LICENSE="GPL-2+"
SLOT="0"
IUSE="+introspection +gcr +modemmanager selinux teamd"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
RDEPEND="
>=app-crypt/libsecret-0.18

Binary file not shown.

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

Loading…
Cancel
Save