parent
a84c8c30a0
commit
4588f1167f
Binary file not shown.
Binary file not shown.
@ -0,0 +1,72 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{8..11} )
|
||||
|
||||
inherit bash-completion-r1 distutils-r1 multiprocessing
|
||||
|
||||
MY_P=aws-cli-${PV}
|
||||
DESCRIPTION="Universal Command Line Environment for AWS"
|
||||
HOMEPAGE="
|
||||
https://github.com/aws/aws-cli/
|
||||
https://pypi.org/project/awscli/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
|
||||
-> ${MY_P}.gh.tar.gz
|
||||
"
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
|
||||
|
||||
# botocore is x.(y+2).z
|
||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
|
||||
RDEPEND="
|
||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
||||
dev-python/colorama[${PYTHON_USEDEP}]
|
||||
dev-python/docutils[${PYTHON_USEDEP}]
|
||||
dev-python/rsa[${PYTHON_USEDEP}]
|
||||
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
!app-admin/awscli-bin
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_prepare() {
|
||||
# do not rely on bundled deps in botocore (sic!)
|
||||
find -name '*.py' -exec sed -i \
|
||||
-e 's:from botocore[.]vendored import:import:' \
|
||||
-e 's:from botocore[.]vendored[.]:from :' \
|
||||
{} + || die
|
||||
# strip overzealous upper bounds on requirements
|
||||
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
||||
|
||||
python_test() {
|
||||
# integration tests require AWS credentials and Internet access
|
||||
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
newbashcomp bin/aws_bash_completer aws
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
newins bin/aws_zsh_completer.sh _aws
|
||||
|
||||
distutils-r1_python_install_all
|
||||
|
||||
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
|
||||
}
|
@ -1,2 +1,3 @@
|
||||
DIST conky-1.12.2.tar.gz 2407428 BLAKE2B b8d1b40dc4b547679b5ab4bf0328aabaac868025433729f48baf572c536da4a527a073a6d47f36c179851aecef58535dccb956e3a695700f06bf8e6ab170ae1f SHA512 55280953da437efe36320e4c12f74d95b8406bd7d8b7d93c6582f9b346c1c80a94b71d1c27860f6274de9171865fca91e330dfc39feb80bb2f453a538bc5ce1a
|
||||
DIST conky-1.13.1.tar.gz 2443276 BLAKE2B e51610172e830d0368e8c9a48ea056285efe48275364c4d0c973da6467ea044303d75f94cc0b963c3b423a7ec61d8eff26da30c102c557ccd5a4e8cf984db4f6 SHA512 3ee0e14f6ff2bac39404c272790055ac1106f47a00e8298da909a0febf6de0661486e8ce23f34e8c5050e364168b2efcefd0b28736cbd0bc135e1362f0dc5516
|
||||
DIST conky-1.15.0.tar.gz 1800684 BLAKE2B e3b8c682e99be42cd28ed9507c346f16afefb525269c31bf9731169fa2c52bcaac4f523ecd0ec8c722fb4e269226254f8579876e68a2b27c3a3f5685dd50b423 SHA512 d317b0a141355ce56c9dce5ba6e4b9dbe73b05b9b0b85d93d491f6d6da4194c1aceefbbc7e1b10e5fc233a9732933949e273630845194f6c16dce34a77ee5841
|
||||
|
@ -0,0 +1,185 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
LUA_COMPAT=( lua5-3 )
|
||||
|
||||
inherit cmake linux-info lua-single readme.gentoo-r1 xdg
|
||||
|
||||
DESCRIPTION="An advanced, highly configurable system monitor for X"
|
||||
HOMEPAGE="https://github.com/brndnmtthws/conky"
|
||||
SRC_URI="https://github.com/brndnmtthws/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3 BSD LGPL-2.1 MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm64 ~x86"
|
||||
IUSE="apcupsd bundled-toluapp cmus curl doc extras hddtemp ical iconv imlib
|
||||
intel-backlight iostats irc lua-cairo lua-imlib lua-rsvg math moc mpd
|
||||
mysql ncurses nvidia +portmon pulseaudio rss systemd thinkpad truetype
|
||||
webserver wifi X xinerama xmms2"
|
||||
|
||||
COMMON_DEPEND="
|
||||
cmus? ( media-sound/cmus )
|
||||
curl? ( net-misc/curl )
|
||||
ical? ( dev-libs/libical:= )
|
||||
iconv? ( virtual/libiconv )
|
||||
imlib? ( media-libs/imlib2[X] )
|
||||
irc? ( net-libs/libircclient )
|
||||
lua-cairo? ( x11-libs/cairo[X] )
|
||||
lua-imlib? ( media-libs/imlib2[X] )
|
||||
lua-rsvg? ( gnome-base/librsvg )
|
||||
mysql? ( dev-db/mysql-connector-c )
|
||||
ncurses? ( sys-libs/ncurses:= )
|
||||
nvidia? ( x11-drivers/nvidia-drivers[tools,static-libs] )
|
||||
pulseaudio? ( media-libs/libpulse )
|
||||
rss? ( dev-libs/libxml2 net-misc/curl dev-libs/glib:2 )
|
||||
systemd? ( sys-apps/systemd )
|
||||
truetype? ( x11-libs/libXft >=media-libs/freetype-2 )
|
||||
wifi? ( net-wireless/wireless-tools )
|
||||
webserver? ( net-libs/libmicrohttpd )
|
||||
X? (
|
||||
x11-libs/libX11
|
||||
x11-libs/libXdamage
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXext
|
||||
)
|
||||
xinerama? ( x11-libs/libXinerama )
|
||||
xmms2? ( media-sound/xmms2 )
|
||||
${LUA_DEPS}
|
||||
"
|
||||
RDEPEND="
|
||||
${COMMON_DEPEND}
|
||||
apcupsd? ( sys-power/apcupsd )
|
||||
hddtemp? ( app-admin/hddtemp )
|
||||
moc? ( media-sound/moc )
|
||||
extras? (
|
||||
app-editors/nano
|
||||
|| ( app-editors/vim app-editors/gvim )
|
||||
)
|
||||
"
|
||||
DEPEND="
|
||||
${COMMON_DEPEND}
|
||||
doc? ( virtual/pandoc dev-python/pyyaml dev-python/jinja )
|
||||
extras? ( dev-python/pyyaml dev-python/jinja )
|
||||
"
|
||||
|
||||
REQUIRED_USE="
|
||||
imlib? ( X )
|
||||
lua-cairo? ( X bundled-toluapp )
|
||||
lua-imlib? ( X bundled-toluapp )
|
||||
lua-rsvg? ( X bundled-toluapp )
|
||||
nvidia? ( X )
|
||||
truetype? ( X )
|
||||
xinerama? ( X )
|
||||
"
|
||||
|
||||
CONFIG_CHECK="~IPV6"
|
||||
|
||||
DOCS=( README.md AUTHORS )
|
||||
|
||||
DISABLE_AUTOFORMATTING="yes"
|
||||
DOC_CONTENTS="You can find sample configurations at ${ROOT}/usr/share/doc/${PF}.
|
||||
To customize, copy to \${XDG_CONFIG_HOME}/conky/conky.conf and edit it to your liking.
|
||||
|
||||
There are pretty html docs available at https://conky.cc/.
|
||||
|
||||
Also see https://github.com/brndnmtthws/conky/wiki or https://wiki.gentoo.org/wiki/Conky"
|
||||
|
||||
pkg_setup() {
|
||||
linux-info_pkg_setup
|
||||
|
||||
lua-single_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cmake_src_prepare
|
||||
|
||||
xdg_environment_reset
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs
|
||||
|
||||
if use X; then
|
||||
mycmakeargs=(
|
||||
-DBUILD_ARGB=yes
|
||||
-DBUILD_X11=yes
|
||||
-DBUILD_XDAMAGE=yes
|
||||
-DBUILD_XDBE=yes
|
||||
-DBUILD_XSHAPE=yes
|
||||
-DOWN_WINDOW=yes
|
||||
)
|
||||
else
|
||||
mycmakeargs=(
|
||||
-DBUILD_X11=no
|
||||
)
|
||||
fi
|
||||
|
||||
mycmakeargs+=(
|
||||
-DBUILD_APCUPSD=$(usex apcupsd)
|
||||
-DBUILD_AUDACIOUS=no
|
||||
-DBUILD_BUILTIN_CONFIG=yes
|
||||
-DBUILD_CMUS=$(usex cmus)
|
||||
-DBUILD_CURL=$(usex curl)
|
||||
-DBUILD_DOCS=$(usex doc)
|
||||
-DBUILD_EXTRAS=$(usex extras)
|
||||
-DBUILD_HDDTEMP=$(usex hddtemp)
|
||||
-DBUILD_HTTP=$(usex webserver)
|
||||
-DBUILD_I18N=yes
|
||||
-DBUILD_IBM=$(usex thinkpad)
|
||||
-DBUILD_ICAL=$(usex ical)
|
||||
-DBUILD_ICONV=$(usex iconv)
|
||||
-DBUILD_IMLIB2=$(usex imlib)
|
||||
-DBUILD_INTEL_BACKLIGHT=$(usex intel-backlight)
|
||||
-DBUILD_IOSTATS=$(usex iostats)
|
||||
-DBUILD_IPV6=yes
|
||||
-DBUILD_IRC=$(usex irc)
|
||||
-DBUILD_JOURNAL=$(usex systemd)
|
||||
-DBUILD_LUA_CAIRO=$(usex lua-cairo)
|
||||
-DBUILD_LUA_IMLIB2=$(usex lua-imlib)
|
||||
-DBUILD_LUA_RSVG=$(usex lua-rsvg)
|
||||
-DBUILD_MATH=$(usex math)
|
||||
-DBUILD_MOC=$(usex moc)
|
||||
-DBUILD_MPD=$(usex mpd)
|
||||
-DBUILD_MYSQL=$(usex mysql)
|
||||
-DBUILD_NCURSES=$(usex ncurses)
|
||||
-DBUILD_NVIDIA=$(usex nvidia)
|
||||
-DBUILD_OLD_CONFIG=yes
|
||||
-DBUILD_PORT_MONITORS=$(usex portmon)
|
||||
-DBUILD_PULSEAUDIO=$(usex pulseaudio)
|
||||
-DBUILD_RSS=$(usex rss)
|
||||
-DBUILD_WLAN=$(usex wifi)
|
||||
-DBUILD_XFT=$(usex truetype)
|
||||
-DBUILD_XINERAMA=$(usex xinerama)
|
||||
-DBUILD_XMMS2=$(usex xmms2)
|
||||
-DDOC_PATH=/usr/share/doc/${PF}
|
||||
-DMAINTAINER_MODE=no
|
||||
-DRELEASE=yes
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
if use extras; then
|
||||
insinto /usr/share/vim/vimfiles/ftdetect
|
||||
doins "${S}"/extras/vim/ftdetect/conkyrc.vim
|
||||
|
||||
insinto /usr/share/vim/vimfiles/syntax
|
||||
doins "${BUILD_DIR}"/extras/vim/syntax/conkyrc.vim
|
||||
|
||||
insinto /usr/share/nano/
|
||||
doins "${BUILD_DIR}"/extras/nano/conky.nanorc
|
||||
fi
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
|
||||
xdg_pkg_postinst
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST keepassxc-2.7.1.tar.gz 11168642 BLAKE2B 4708821c596e8fc736e086a700d5526be6d9c4cfcb270e3a0a8b73395e9ca3544cbb5973494b15d66e0b98264f4e79d9fa122961407211d346275a9aa1bd5cae SHA512 c2f780ba1f464b32f741d1c6e83734ff220de56dce382f3c38d940abf255d689559c13bff6ad565c38c18cfdb1d883aca52650dba0486e3e28bb4ef872253cc9
|
||||
DIST keepassxc-2.7.3-src.tar.xz 8963496 BLAKE2B 7f467960eb618d771e24980caa41ee15ecbb2bbfc6c0d37ddf1c8209e06b81a30b157c9ce00b3fd6c91c39ebaad60cec3513f7c1a64c8b7e0e2f0a116246f080 SHA512 29bf067308915d5ac7843eff3bcfb6c4c53a2108e9e2f5349ed03a0b8893f143dcc743cfc175c0831709bafef566d66baa31c5fe3e6fa5fc9c621bf87362e842
|
||||
|
@ -0,0 +1,14 @@
|
||||
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
|
||||
index 776c40d9..477bf179 100644
|
||||
--- a/tests/CMakeLists.txt
|
||||
+++ b/tests/CMakeLists.txt
|
||||
@@ -233,9 +233,6 @@ if(WITH_XC_BROWSER)
|
||||
LIBS ${TEST_LIBRARIES})
|
||||
endif()
|
||||
|
||||
-add_unit_test(NAME testcli SOURCES TestCli.cpp
|
||||
- LIBS testsupport cli ${TEST_LIBRARIES})
|
||||
-
|
||||
if(WITH_GUI_TESTS)
|
||||
add_subdirectory(gui)
|
||||
endif(WITH_GUI_TESTS)
|
@ -0,0 +1,101 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake flag-o-matic xdg
|
||||
|
||||
DESCRIPTION="KeePassXC - KeePass Cross-platform Community Edition"
|
||||
HOMEPAGE="https://keepassxc.org/
|
||||
https://github.com/keepassxreboot/keepassxc/"
|
||||
|
||||
if [[ "${PV}" != *9999 ]] ; then
|
||||
if [[ "${PV}" == *_beta* ]] ; then
|
||||
SRC_URI="https://github.com/keepassxreboot/keepassxc/archive/${PV/_/-}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${P/_/-}"
|
||||
else
|
||||
#SRC_URI="https://github.com/keepassxreboot/keepassxc/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
SRC_URI="https://github.com/keepassxreboot/keepassxc/releases/download/${PV}/${P}-src.tar.xz"
|
||||
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
|
||||
fi
|
||||
else
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/keepassxreboot/${PN}"
|
||||
[[ "${PV}" != 9999 ]] && EGIT_BRANCH="master"
|
||||
fi
|
||||
|
||||
LICENSE="LGPL-2.1 GPL-2 GPL-3"
|
||||
SLOT="0"
|
||||
IUSE="X autotype browser doc keeshare +network test yubikey"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
REQUIRED_USE="autotype? ( X )"
|
||||
|
||||
RDEPEND="
|
||||
app-crypt/argon2:=
|
||||
dev-libs/botan:2=
|
||||
dev-qt/qtconcurrent:5
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtdbus:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtnetwork:5
|
||||
dev-qt/qtsvg:5
|
||||
dev-qt/qtwidgets:5
|
||||
media-gfx/qrencode:=
|
||||
sys-libs/readline:0=
|
||||
sys-libs/zlib:=
|
||||
X? ( dev-qt/qtx11extras:5 )
|
||||
autotype? (
|
||||
x11-libs/libX11
|
||||
x11-libs/libXtst
|
||||
)
|
||||
keeshare? ( sys-libs/zlib:=[minizip] )
|
||||
yubikey? (
|
||||
dev-libs/libusb:1
|
||||
sys-apps/pcsc-lite
|
||||
)
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-qt/qttest:5
|
||||
"
|
||||
BDEPEND="
|
||||
dev-qt/linguist-tools:5
|
||||
doc? ( dev-ruby/asciidoctor )
|
||||
"
|
||||
|
||||
PATCHES=( "${FILESDIR}"/${P}-tests.patch )
|
||||
|
||||
src_prepare() {
|
||||
if [[ "${PV}" != *_beta* ]] && [[ "${PV}" != *9999 ]] && [[ ! -f .version ]] ; then
|
||||
printf '%s' "${PV}" > .version || die
|
||||
fi
|
||||
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# https://github.com/keepassxreboot/keepassxc/issues/5801
|
||||
filter-flags -flto*
|
||||
|
||||
local mycmakeargs=(
|
||||
# Gentoo users enable ccache via e.g. FEATURES=ccache or
|
||||
# other means. We don't want the build system to enable it for us.
|
||||
-DWITH_CCACHE=OFF
|
||||
-DWITH_GUI_TESTS=OFF
|
||||
-DWITH_TESTS="$(usex test)"
|
||||
-DWITH_XC_AUTOTYPE="$(usex autotype)"
|
||||
-DWITH_XC_DOCS="$(usex doc)"
|
||||
-DWITH_XC_BROWSER="$(usex browser)"
|
||||
-DWITH_XC_FDOSECRETS=ON
|
||||
-DWITH_XC_KEESHARE="$(usex keeshare)"
|
||||
-DWITH_XC_NETWORKING="$(usex network)"
|
||||
-DWITH_XC_SSHAGENT=ON
|
||||
-DWITH_XC_UPDATECHECK=OFF
|
||||
-DWITH_XC_YUBIKEY="$(usex yubikey)"
|
||||
-DWITH_XC_X11="$(usex X)"
|
||||
)
|
||||
if [[ "${PV}" == *_beta* ]] ; then
|
||||
mycmakeargs+=( -DOVERRIDE_VERSION="${PV/_/-}" )
|
||||
fi
|
||||
cmake_src_configure
|
||||
}
|
Binary file not shown.
@ -1,2 +1 @@
|
||||
DIST tarlz-0.22.tar.lz 105724 BLAKE2B 7921f7085d63f553f745cf8b7fee43ece32346a0804e41227806efae0ab338c48ee1830a8b087f03000a27fcf44338b3dba6d52d37f4de790d8b7bc5f0234ade SHA512 4e241ea0571e421c93fbeeb54a20e73fd4a7e9c85dc3b24295caec1a52e156cdcf5e85f4ee41f5dfae712b851d17fe0e96955380bb86306d8002f4187d0c60ec
|
||||
DIST tarlz-0.23.tar.lz 112276 BLAKE2B 87153b1e843ed74b5efd339d29e79ddef2bbd11ff951898383ae4c6c099f4e97ef58b8bd2f14ff5bff2cfd6baccb433ab55b9b9b78d0893caef5bd1f4d07a36e SHA512 623407142d03e0ddae3dbb057b8ef5f1aea850418dbb47c6278affa42c88bc1786cd3249d1e8c018643f41516787225cb2ed3aca2fc02ba8e65dfe4744f965d8
|
||||
|
@ -1,27 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit toolchain-funcs unpacker
|
||||
|
||||
DESCRIPTION="A parallel archiver combining tar and lzip"
|
||||
HOMEPAGE="https://www.nongnu.org/lzip/tarlz.html"
|
||||
SRC_URI="https://download.savannah.gnu.org/releases/lzip/${PN}/${P}.tar.lz"
|
||||
LICENSE="GPL-2+"
|
||||
|
||||
SLOT="0"
|
||||
|
||||
KEYWORDS="amd64"
|
||||
|
||||
RDEPEND=">=app-arch/lzlib-1.12"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="$(unpacker_src_uri_depends)"
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
CXX="$(tc-getCXX)" \
|
||||
CXXFLAGS="${CXXFLAGS}" \
|
||||
CPPFLAGS="${CPPFLAGS}" \
|
||||
LDFLAGS="${LDFLAGS}"
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST unrar-6.1.7.tar.gz 236798 BLAKE2B e33a7500b4a03a54f84b018ab90934366f52ef54c83257ed7fe4419ba993d2a8c21de26f445ae18d870aa5232cfbf1f5d8fbc0b3965803aeec6cac5e5a38e949 SHA512 b1a95358ff66b0e049597bbc4e1786d0bc909a8aff4aca94ee793d0d5a3c8b052eb347d88f44b6bc2e6231e777f1b711c198711118ae9ffbe8db2f72e7fbe846
|
||||
DIST unrar-6.2.1.tar.gz 242918 BLAKE2B 55cd5d11caae2e6cef2a36f5656b76d96946d6d7df3f34d7c65cc31b43b820d955da4751666797f8147c6a7b20c3429527b2b1629842334d3bec6de49e1d6a72 SHA512 920819b4b3e76004492813b4c22309443976fe5e7c873032bc084603b902c6873775cb90cb173d78de3624a3161a2238c9ece1e817f6b7d915937e2e18d8def9
|
||||
|
@ -0,0 +1,65 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit multilib toolchain-funcs
|
||||
|
||||
MY_PN="${PN}src"
|
||||
|
||||
DESCRIPTION="Uncompress rar files"
|
||||
HOMEPAGE="https://www.rarlab.com/rar_add.htm"
|
||||
SRC_URI="https://www.rarlab.com/rar/${MY_PN}-${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/unrar"
|
||||
|
||||
LICENSE="unRAR"
|
||||
SLOT="0/6" # subslot = soname version
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-5.9.3-build.patch
|
||||
"${FILESDIR}"/${PN}-5.5.5-honor-flags.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
local sed_args=( -e "/libunrar/s:.so:$(get_libname ${PV%.*.*}):" )
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
sed_args+=( -e "s:-shared:-dynamiclib -install_name ${EPREFIX}/usr/$(get_libdir)/libunrar$(get_libname ${PV%.*.*}):" )
|
||||
else
|
||||
sed_args+=( -e "s:-shared:& -Wl,-soname -Wl,libunrar$(get_libname ${PV%.*.*}):" )
|
||||
fi
|
||||
sed -i "${sed_args[@]}" makefile || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
mkdir -p build-{lib,bin} || die
|
||||
printf 'VPATH = ..\ninclude ../makefile' > build-lib/Makefile || die
|
||||
cp build-{lib,bin}/Makefile || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
unrar_make() {
|
||||
emake AR="$(tc-getAR)" CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS}" STRIP=true "$@"
|
||||
}
|
||||
|
||||
unrar_make CXXFLAGS+=" -fPIC" -C build-lib lib
|
||||
ln -s libunrar$(get_libname ${PV%.*.*}) build-lib/libunrar$(get_libname) || die
|
||||
ln -s libunrar$(get_libname ${PV%.*.*}) build-lib/libunrar$(get_libname ${PV}) || die
|
||||
|
||||
unrar_make -C build-bin
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin build-bin/unrar
|
||||
dodoc readme.txt
|
||||
|
||||
dolib.so build-lib/libunrar*
|
||||
|
||||
insinto /usr/include/libunrar${PV%.*.*}
|
||||
doins *.hpp
|
||||
dosym libunrar${PV%.*.*} /usr/include/libunrar
|
||||
|
||||
find "${ED}" -type f -name "*.a" -delete || die
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST xarchiver-0.5.4.19.tar.gz 1120885 BLAKE2B 4b8b9e188b16b799f33a1816a5f19a0f67720369282239e3a22af8588b9776ee37dbc63cb1b42a426c515a360aeb1abda84b22e783bd8e4e3578eb2f2fb66ab6 SHA512 f35846bcb1236957d4201980eb1c9e49e16472ab2316935c9f8c94a9b4c3c2da879cd2730c3413041098042251607432f6af1cbacadd97b81efb81180fa5ee6a
|
||||
DIST xarchiver-0.5.4.20.tar.gz 1120317 BLAKE2B dbeb21492a4045d504aac92c28847a91c23e0feedeb82074fe89736f64b2b7d09b41bbefe321441c51736a8273267ac13dd616d4f61ba1b9e72cc805e749aa79 SHA512 c05be6f69a576988ca1a67c1664e4e4e3c53588ef4c85ce943e204ae72b08e705eb20be1018274c5420e30c5ed71d773bdacccc538ab458d658fba494c097777
|
||||
|
@ -0,0 +1,61 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit xdg-utils
|
||||
|
||||
DESCRIPTION="A GTK+ archive manager that can be used with Thunar"
|
||||
HOMEPAGE="https://github.com/ib/xarchiver/"
|
||||
SRC_URI="
|
||||
https://github.com/ib/xarchiver/archive/${PV}.tar.gz -> ${P}.tar.gz
|
||||
"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="doc"
|
||||
|
||||
DEPEND="
|
||||
>=dev-libs/glib-2:=
|
||||
x11-libs/gtk+:3=
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
"
|
||||
BDEPEND="
|
||||
dev-util/intltool
|
||||
sys-devel/gettext
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
app-text/docbook-xml-dtd
|
||||
app-text/docbook-xsl-stylesheets
|
||||
dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
)
|
||||
"
|
||||
|
||||
src_configure() {
|
||||
local myconf=(
|
||||
$(use_enable doc)
|
||||
)
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_desktop_database_update
|
||||
xdg_icon_cache_update
|
||||
|
||||
elog "You need external programs for some formats, including:"
|
||||
elog "7zip - app-arch/p7zip"
|
||||
elog "arj - app-arch/arj"
|
||||
elog "lha - app-arch/lha"
|
||||
elog "lzop - app-arch/lzop"
|
||||
elog "rar - app-arch/unrar app-arch/rar"
|
||||
elog "zip - app-arch/unzip app-arch/zip"
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_desktop_database_update
|
||||
xdg_icon_cache_update
|
||||
}
|
@ -1,88 +0,0 @@
|
||||
https://bugs.gentoo.org/837155
|
||||
https://git.tukaani.org/?p=xz.git;a=commitdiff;h=69d1b3fc29677af8ade8dc15dba83f0589cb63d6;hp=bd93b776c1bd15e90661033c918cdeb354dbcc38
|
||||
|
||||
From: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: Tue, 29 Mar 2022 19:19:12 +0300
|
||||
Subject: [PATCH 1/1] xzgrep: Fix escaping of malicious filenames
|
||||
(ZDI-CAN-16587).
|
||||
|
||||
Malicious filenames can make xzgrep to write to arbitrary files
|
||||
or (with a GNU sed extension) lead to arbitrary code execution.
|
||||
|
||||
xzgrep from XZ Utils versions up to and including 5.2.5 are
|
||||
affected. 5.3.1alpha and 5.3.2alpha are affected as well.
|
||||
This patch works for all of them.
|
||||
|
||||
This bug was inherited from gzip's zgrep. gzip 1.12 includes
|
||||
a fix for zgrep.
|
||||
|
||||
The issue with the old sed script is that with multiple newlines,
|
||||
the N-command will read the second line of input, then the
|
||||
s-commands will be skipped because it's not the end of the
|
||||
file yet, then a new sed cycle starts and the pattern space
|
||||
is printed and emptied. So only the last line or two get escaped.
|
||||
|
||||
One way to fix this would be to read all lines into the pattern
|
||||
space first. However, the included fix is even simpler: All lines
|
||||
except the last line get a backslash appended at the end. To ensure
|
||||
that shell command substitution doesn't eat a possible trailing
|
||||
newline, a colon is appended to the filename before escaping.
|
||||
The colon is later used to separate the filename from the grep
|
||||
output so it is fine to add it here instead of a few lines later.
|
||||
|
||||
The old code also wasn't POSIX compliant as it used \n in the
|
||||
replacement section of the s-command. Using \<newline> is the
|
||||
POSIX compatible method.
|
||||
|
||||
LC_ALL=C was added to the two critical sed commands. POSIX sed
|
||||
manual recommends it when using sed to manipulate pathnames
|
||||
because in other locales invalid multibyte sequences might
|
||||
cause issues with some sed implementations. In case of GNU sed,
|
||||
these particular sed scripts wouldn't have such problems but some
|
||||
other scripts could have, see:
|
||||
|
||||
info '(sed)Locale Considerations'
|
||||
|
||||
This vulnerability was discovered by:
|
||||
cleemy desu wayo working with Trend Micro Zero Day Initiative
|
||||
|
||||
Thanks to Jim Meyering and Paul Eggert discussing the different
|
||||
ways to fix this and for coordinating the patch release schedule
|
||||
with gzip.
|
||||
--- a/src/scripts/xzgrep.in
|
||||
+++ b/src/scripts/xzgrep.in
|
||||
@@ -180,22 +180,26 @@ for i; do
|
||||
{ test $# -eq 1 || test $no_filename -eq 1; }; then
|
||||
eval "$grep"
|
||||
else
|
||||
+ # Append a colon so that the last character will never be a newline
|
||||
+ # which would otherwise get lost in shell command substitution.
|
||||
+ i="$i:"
|
||||
+
|
||||
+ # Escape & \ | and newlines only if such characters are present
|
||||
+ # (speed optimization).
|
||||
case $i in
|
||||
(*'
|
||||
'* | *'&'* | *'\'* | *'|'*)
|
||||
- i=$(printf '%s\n' "$i" |
|
||||
- sed '
|
||||
- $!N
|
||||
- $s/[&\|]/\\&/g
|
||||
- $s/\n/\\n/g
|
||||
- ');;
|
||||
+ i=$(printf '%s\n' "$i" | LC_ALL=C sed 's/[&\|]/\\&/g; $!s/$/\\/');;
|
||||
esac
|
||||
- sed_script="s|^|$i:|"
|
||||
+
|
||||
+ # $i already ends with a colon so don't add it here.
|
||||
+ sed_script="s|^|$i|"
|
||||
|
||||
# Fail if grep or sed fails.
|
||||
r=$(
|
||||
exec 4>&1
|
||||
- (eval "$grep" 4>&-; echo $? >&4) 3>&- | sed "$sed_script" >&3 4>&-
|
||||
+ (eval "$grep" 4>&-; echo $? >&4) 3>&- |
|
||||
+ LC_ALL=C sed "$sed_script" >&3 4>&-
|
||||
) || r=2
|
||||
exit $r
|
||||
fi >&3 5>&-
|
@ -1,118 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# Remember: we cannot leverage autotools in this ebuild in order
|
||||
# to avoid circular deps with autotools
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit libtool multilib multilib-minimal preserve-libs usr-ldscript
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
EGIT_REPO_URI="https://git.tukaani.org/xz.git"
|
||||
inherit git-r3 autotools
|
||||
|
||||
# bug #272880 and bug #286068
|
||||
BDEPEND="sys-devel/gettext >=sys-devel/libtool-2"
|
||||
else
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/lassecollin.asc
|
||||
inherit verify-sig
|
||||
|
||||
MY_P="${PN/-utils}-${PV/_}"
|
||||
SRC_URI="https://tukaani.org/xz/${MY_P}.tar.gz"
|
||||
SRC_URI+=" verify-sig? ( https://tukaani.org/xz/${MY_P}.tar.gz.sig )"
|
||||
|
||||
if [[ ${PV} != *_alpha* ]] && [[ ${PV} != *_beta* ]] ; then
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
fi
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Utils for managing LZMA compressed files"
|
||||
HOMEPAGE="https://tukaani.org/xz/"
|
||||
|
||||
# See top-level COPYING file as it outlines the various pieces and their licenses.
|
||||
LICENSE="public-domain LGPL-2.1+ GPL-2+"
|
||||
SLOT="0"
|
||||
IUSE="+extra-filters nls static-libs"
|
||||
|
||||
RDEPEND="!<app-arch/lzma-4.63
|
||||
!<app-arch/p7zip-4.57
|
||||
!<app-i18n/man-pages-de-2.16"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-lassecollin )"
|
||||
|
||||
# Tests currently do not account for smaller feature set
|
||||
RESTRICT="!extra-filters? ( test )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-xzgrep-ZDI-CAN-16587.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
eautopoint
|
||||
eautoreconf
|
||||
else
|
||||
# Allow building shared libs on Solaris/x64
|
||||
elibtoolize
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myconf=(
|
||||
--enable-threads
|
||||
$(use_enable nls)
|
||||
$(use_enable static-libs static)
|
||||
)
|
||||
|
||||
if ! multilib_is_native_abi ; then
|
||||
myconf+=(
|
||||
--disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts}
|
||||
)
|
||||
fi
|
||||
|
||||
if ! use extra-filters ; then
|
||||
myconf+=(
|
||||
# LZMA1 + LZMA2 for standard .lzma & .xz files
|
||||
--enable-encoders=lzma1,lzma2
|
||||
--enable-decoders=lzma1,lzma2
|
||||
|
||||
# those are used by default, depending on preset
|
||||
--enable-match-finders=hc3,hc4,bt4
|
||||
|
||||
# CRC64 is used by default, though some (old?) files use CRC32
|
||||
--enable-checks=crc32,crc64
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
export gl_cv_posix_shell="${EPREFIX}"/bin/sh
|
||||
|
||||
# Undo Solaris-based defaults pointing to /usr/xpg5/bin
|
||||
myconf+=( --disable-path-for-script )
|
||||
fi
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
default
|
||||
|
||||
gen_usr_ldscript -a lzma
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
preserve_old_lib /usr/$(get_libdir)/liblzma$(get_libname 0)
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
preserve_old_lib_notify /usr/$(get_libdir)/liblzma$(get_libname 0)
|
||||
}
|
Binary file not shown.
@ -1,2 +1 @@
|
||||
DIST dar-2.7.6.tar.gz 2410200 BLAKE2B 925b4854c66fec9287e0f42d213f94f208b5248d09eb6abe4e36a41df1fc57641d7a6b41e1f8aaa202e6f74ad04399c70a8cb74dc63685985a5671ba54efdf93 SHA512 517fa06a5b8caa53ad111e4287446583f328ee2027169db067610877e05291e63179c1bdd92312a6885d1c7eba0566a86301e974d1d48df56f0fce9ccfdb3a19
|
||||
DIST dar-2.7.7.tar.gz 2410835 BLAKE2B c2b1cff205a7af0b714808bbb952677ffdfa8d62289d412e4e3056db16f5c204a2eecc8f770ff57d18839218ff1babcb5c56c9729e03316d698a351dacf47e25 SHA512 984328cff1ed3338707858aced83a6a18e950581f02dd686a2a01668f6c374d0af2d98ba49068a61624641fcfbb139ae893d02e5b5f303b8b26d8e05fcb6a229
|
||||
|
@ -1,91 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit flag-o-matic
|
||||
|
||||
DESCRIPTION="A full featured backup tool, aimed for disks"
|
||||
HOMEPAGE="http://dar.linux.free.fr/"
|
||||
SRC_URI="mirror://sourceforge/dar/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc sparc x86 ~amd64-linux"
|
||||
IUSE="argon2 curl dar32 dar64 doc gcrypt gpg lz4 lzo nls rsync threads xattr"
|
||||
|
||||
REQUIRED_USE="?? ( dar32 dar64 )
|
||||
gpg? ( gcrypt )"
|
||||
|
||||
RESTRICT="test" # need to be run as root
|
||||
|
||||
RDEPEND="
|
||||
app-arch/bzip2:=
|
||||
app-arch/xz-utils
|
||||
app-arch/zstd:=
|
||||
sys-libs/libcap
|
||||
>=sys-libs/zlib-1.2.3:=
|
||||
argon2? ( app-crypt/argon2:= )
|
||||
curl? ( net-misc/curl )
|
||||
gcrypt? (
|
||||
dev-libs/libgcrypt:0=
|
||||
dev-libs/libgpg-error
|
||||
)
|
||||
gpg? ( app-crypt/gpgme:= )
|
||||
lz4? ( app-arch/lz4:= )
|
||||
lzo? ( dev-libs/lzo:2 )
|
||||
nls? ( virtual/libintl )
|
||||
rsync? ( net-libs/librsync:= )
|
||||
threads? ( dev-libs/libthreadar )
|
||||
xattr? ( sys-apps/attr )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
BDEPEND="
|
||||
doc? ( app-doc/doxygen )
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
src_configure() {
|
||||
# configure.ac is totally funked up regarding the AC_ARG_ENABLE
|
||||
# logic.
|
||||
# For example "--enable-dar-static" causes configure to DISABLE
|
||||
# static builds of dar.
|
||||
# Do _not_ use $(use_enable) until you have verified that the
|
||||
# logic has been fixed by upstream.
|
||||
local myconf=(
|
||||
--disable-dar-static
|
||||
--disable-python-binding
|
||||
--disable-upx
|
||||
$(usev !argon2 --disable-libargon2-linking)
|
||||
$(usev !curl --disable-libcurl-linking)
|
||||
$(usev dar32 --enable-mode=32)
|
||||
$(usev dar64 --enable-mode=64)
|
||||
$(usev !doc --disable-build-html)
|
||||
$(usev !gcrypt --disable-libgcrypt-linking)
|
||||
$(usev !gpg --disable-gpgme-linking)
|
||||
$(usev !lz4 --disable-liblz4-linking)
|
||||
$(usev !lzo --disable-liblzo2-linking)
|
||||
$(usev !nls --disable-nls)
|
||||
$(usev !rsync --disable-librsync-linking)
|
||||
$(usev !threads --disable-threadar)
|
||||
$(usev !xattr --disable-ea-support)
|
||||
)
|
||||
|
||||
# Bug 103741
|
||||
filter-flags -fomit-frame-pointer
|
||||
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" pkgdatadir="${EPREFIX}"/usr/share/doc/${PF}/html install
|
||||
|
||||
einstalldocs
|
||||
|
||||
find "${ED}" -name "*.la" -delete || die
|
||||
|
||||
# Bug 729150
|
||||
rm "${ED}/usr/share/doc/${PF}/html/samples/MyBackup.sh.tar.gz" || die
|
||||
}
|
Binary file not shown.
@ -0,0 +1,20 @@
|
||||
https://sourceforge.net/p/mhash/patches/11/
|
||||
|
||||
Compiling mhash-0.9.9.9 on platforms (like AIX) without GNU libc compatible malloc leads to undefined symbol rpl_malloc
|
||||
when linking the in-mhash executables drver, frag_test, rest_test, hmac_test, keygen_test.
|
||||
|
||||
Reason is that configure.in still contains AC_FUNC_MALLOC, detecting need
|
||||
to "#define malloc rpl_malloc", while mhash does not provide a rpl_malloc implementation.
|
||||
|
||||
As the only use of malloc() in lib/stdfns.c does not rely on GNU libc
|
||||
compatible malloc actually, there is no need to check for one.
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -64,7 +64,6 @@ AC_CHECK_HEADERS(signal.h stdint.h stdio.h stdlib.h string.h strings.h)
|
||||
|
||||
dnl Checks for functions
|
||||
|
||||
-AC_FUNC_MALLOC
|
||||
AC_FUNC_MEMCMP
|
||||
|
||||
AC_CHECK_FUNCS(bcopy bzero)
|
Binary file not shown.
@ -0,0 +1,53 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit myspell-r2
|
||||
|
||||
DESCRIPTION="English dictionaries for myspell/hunspell"
|
||||
HOMEPAGE="https://extensions.libreoffice.org/extensions/english-dictionaries"
|
||||
SRC_URI="https://extensions.libreoffice.org/assets/downloads/41/1664437278/dict-en-20221001_lo.oxt"
|
||||
|
||||
LICENSE="BSD MIT LGPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
|
||||
|
||||
PLOCALES=( "en" "en-AU" "en-CA" "en-GB" "en-US" "en-ZA" )
|
||||
IUSE+="${PLOCALES[@]/#/l10n_}"
|
||||
REQUIRED_USE="|| ( ${IUSE[@]} )"
|
||||
|
||||
src_prepare() {
|
||||
if use l10n_en-GB || use l10n_en; then
|
||||
MYSPELL_HYPH+=( "hyph_en_GB.dic" )
|
||||
fi
|
||||
if use l10n_en-US || use l10n_en; then
|
||||
MYSPELL_THES+=(
|
||||
"th_en_US_v2.dat"
|
||||
"th_en_US_v2.idx"
|
||||
)
|
||||
MYSPELL_HYPH+=( "hyph_en_US.dic" )
|
||||
fi
|
||||
|
||||
MYSPELL_DICT=( )
|
||||
for lang in "${PLOCALES[@]}"; do
|
||||
if [[ "${lang}" == "en" ]]; then
|
||||
continue
|
||||
fi
|
||||
local mylinguas="${lang//-/_}"
|
||||
if use "l10n_${lang}" || use l10n_en; then
|
||||
MYSPELL_DICT+=( "${mylinguas}.aff" "${mylinguas}.dic" )
|
||||
else
|
||||
rm "README_${mylinguas}.txt" || die
|
||||
if [[ ${lang} == "en-US" ]]; then
|
||||
rm "README_hyph_en_US.txt" || die
|
||||
fi
|
||||
if [[ ${lang} == "en-GB" ]]; then
|
||||
rm "README_hyph_en_GB.txt" || die
|
||||
rm "README_en_GB_thes.txt" || die
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
default
|
||||
}
|
Binary file not shown.
@ -1,4 +1,4 @@
|
||||
DIST vim-core-9.0.0099.tar.gz 16712565 BLAKE2B b3277ebda0bb40601d995935422006d1a266bb862be612e69abd057a7342d13457ded5cb4743cf43a09b7d2001438f5a426ba12c30947bb7c193188c5fc13cf7 SHA512 ca0dea7b7fd78cf9c7cd4656611d066540f9d81ab17bcb75c79f0e989bdcfb769940ea29f75445c554b159e9eb3b2c4f9d77448254c3e4e4457b1bf721936498
|
||||
DIST vim-core-9.0.0399.tar.gz 16833387 BLAKE2B f9d6588920b49ef32b82d012e1c4f8a34dc505267b67027a3b4302dd99d7987645c29a91fdb234fffa873b342488b4d9c85d05d3fe7a332042781881a61bea5e SHA512 6b261bf3aaa355e7a42de1785b134bccc51086495578730b9bc3b8e048679caa3a901e576a360cba5f1aa4d164c7f162a3f916e945b3f5f71e893ea30e0ca826
|
||||
DIST vim-core-9.0.0655.tar.gz 16804127 BLAKE2B e021ff4dd370cdd9b39fb9df0a12309215abd780ec297760b92b6caf924882465b28f9ba65d94ad75a229eb01c8f393f24a29a11919a96d78bb6fb45ef2971e3 SHA512 aa267941e835eecbeeffa7989fb525bdf4269f84d9c88d135a26d74ab7d025487863405b6e0f1391023c30193a122ed3e85a7a71bd4dc48058f3fe3377798f38
|
||||
DIST vim-9.0.0099.tar.gz 16712565 BLAKE2B b3277ebda0bb40601d995935422006d1a266bb862be612e69abd057a7342d13457ded5cb4743cf43a09b7d2001438f5a426ba12c30947bb7c193188c5fc13cf7 SHA512 ca0dea7b7fd78cf9c7cd4656611d066540f9d81ab17bcb75c79f0e989bdcfb769940ea29f75445c554b159e9eb3b2c4f9d77448254c3e4e4457b1bf721936498
|
||||
DIST vim-9.0.0399.tar.gz 16833387 BLAKE2B f9d6588920b49ef32b82d012e1c4f8a34dc505267b67027a3b4302dd99d7987645c29a91fdb234fffa873b342488b4d9c85d05d3fe7a332042781881a61bea5e SHA512 6b261bf3aaa355e7a42de1785b134bccc51086495578730b9bc3b8e048679caa3a901e576a360cba5f1aa4d164c7f162a3f916e945b3f5f71e893ea30e0ca826
|
||||
DIST vim-9.0.0655.tar.gz 16804127 BLAKE2B e021ff4dd370cdd9b39fb9df0a12309215abd780ec297760b92b6caf924882465b28f9ba65d94ad75a229eb01c8f393f24a29a11919a96d78bb6fb45ef2971e3 SHA512 aa267941e835eecbeeffa7989fb525bdf4269f84d9c88d135a26d74ab7d025487863405b6e0f1391023c30193a122ed3e85a7a71bd4dc48058f3fe3377798f38
|
||||
DIST vim-patches-vim-9.0.0049-patches.tar.gz 2743 BLAKE2B dff3e215b235e1cbc2c62b1af2d1414d10b794dbee9f5e7797fb3d34e00c2e065c339d4c82bf28aed53e0b5f2f8f1ee5c7ce69851cd63360788609bf144ac922 SHA512 7d5c64d674fa77048fdca7287072c0e488723133e254c10711dbadf750416c368725327ca9b76f332017bc70aa544a9baef671765eabf0d172d39921ffd7d942
|
||||
|
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST projectile-2.5.0.tar.gz 1915860 BLAKE2B 4d215e2c1e44c7f85121fc36445112f3064129fe95866b4fbb2e14b11d31519057d9cc69bcdf44c82cd516768cc73a031da48a7c5352b9825816db54810cafcb SHA512 3faeb7db70e5e2198ad307c1d5d24a5fadd207765387e7094691e40071411506e6df690995f923bf246b7176173ca41882d369276862b631d7436747bfeae3a3
|
||||
DIST projectile-2.6.0.tar.gz 1922935 BLAKE2B 40e5fc3d152b4fa244bb42cd606d4d6c92e9a212a3d58b7e5e3b333a6b9eb07ca05d61c18aa1859ba5e99872c92f2b8ae11442e5ebda22b057cb49017b1deff8 SHA512 28898d8e48c1dc90ada0f3648e8ef96bff96a3873af61d7f454160fa9fb5f2e8b08c7e0ab99953170b252a29bc04ccb3c10803807b0b96cfcead167855642fed
|
||||
|
@ -0,0 +1,28 @@
|
||||
# Copyright 2021-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
NEED_EMACS="25.1"
|
||||
|
||||
inherit elisp
|
||||
|
||||
DESCRIPTION="A project interaction library for Emacs"
|
||||
HOMEPAGE="https://docs.projectile.mx"
|
||||
SRC_URI="https://github.com/bbatsov/projectile/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="test? ( app-emacs/buttercup )"
|
||||
|
||||
SITEFILE="50projectile-gentoo.el"
|
||||
DOCS=( README.md )
|
||||
|
||||
src_test() {
|
||||
mkdir -p "${HOME}"/.emacs.d || die # For "projectile--directory-p" test
|
||||
buttercup -L . -L test --traceback full || die
|
||||
}
|
Binary file not shown.
@ -1,2 +1 @@
|
||||
DIST diskimage-builder-3.24.0.tar.gz 511917 BLAKE2B 4db5132d449c932202ede7a4d9e9f5711b667c39f3dad51dcd68ec81f49a71bafc4bfb09de363a5d16cac89942385a0b43b1adb31424581ccf0c903c0df5f80e SHA512 1e98e8c8886f2d046ccb2b02a647e294ba2d8bd691168678ef81ddab889f8945bae3c46e5e26ad03e0b2311c367bf3dd5d4bd2f07baab6e2002433ca1dfe0f74
|
||||
DIST diskimage-builder-3.25.0.tar.gz 512950 BLAKE2B 3a0c5658df5bc2498d4656b77c152dba9bedbbc342b53b20b88e89327cbb98e9c8e5dd8de97cc0b7b0bd31f01cd4d425e8e2f158bde24746b08a460db4ac79da SHA512 e602a9e8e3a8cef1c3cc62fcb3074183a4028c70f2b9e9c27416b6244773eb7cf2aa33a5bf38dca5f10dcfbee5d80eaffa9287e14beccb065cec3ddaf7a76ff7
|
||||
|
@ -1,39 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{7,8,9,10} )
|
||||
DISTUTILS_USE_SETUPTOOLS=rdepend
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Golden Disk Image builder"
|
||||
HOMEPAGE="http://docs.openstack.org/developer/diskimage-builder/"
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://opendev.org/openstack/diskimage-builder.git"
|
||||
else
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
KEYWORDS="amd64 ~arm64 x86 ~amd64-linux ~x86-linux"
|
||||
fi
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
|
||||
!~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]"
|
||||
DEPEND="${CDEPEND}"
|
||||
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/pyyaml-3.12[${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}]"
|
@ -1,4 +1,8 @@
|
||||
DIST vkd3d-proton-2.6-dxil-spirv.tar.gz 631130 BLAKE2B 99f40c5efde87d0af86542b427e5b0429be68ca69ba0c2b6d10a821811756d8dadff4449f268ae404f8ace09a91b3e8aaa135e534a77c0239e58c1a970a044cc SHA512 3c20090b7a1b53c30fd4967622fc7384e1bcc504c30d8075068b87dad1bd2c6f4a12459bf42e61bf76b9dd454ec17a9d529f74ab0d5583627e966d94bb341dc3
|
||||
DIST vkd3d-proton-2.6-spirv-headers.tar.gz 1299014 BLAKE2B 0b1e635aaa6eebec3525b13698a064e0e5b8a78829a772cbe9e1890148059bf396bc5c830e8d6ee3070a3343775991642565283994c65acfa0d82a91590b7d84 SHA512 ecb2158cad55edb4ba069383668f3b311a2f6aa6777b5b7ed94795d454622426ee34fee52b13c97d2f07b5b2f965815ee61a0203b76a0b0d2c708a4786d06b96
|
||||
DIST vkd3d-proton-2.6-vulkan-headers.tar.gz 415130 BLAKE2B 0c6444c4c1cb43b9c69757d7c2257ce2fe1bc6be308341f3189766f120994e4920bc738b737d9eefc299359dab568fb8809782e3663dd589c0e4d13aecb8873a SHA512 02cf1d63b29e48ef0efe489eb32237ba2f9f4bf58a182b00dc96aab18faba94de79283398e9e945cd81130f83fff228c59b04e496716ea9ccc148a5f4465282c
|
||||
DIST vkd3d-proton-2.6.tar.gz 1271948 BLAKE2B 02d2574a66614613748fe3471a6fd5aac2650fdae15a17b17ea2ed028fa53a0579b866e7240036a26108afc343395826474bb99e015b9299c2abec811bb872ab SHA512 6f27d213652e2380a9ba4534ac9ffe4b752b4608fbc2e8acd273fa151ab19ad0b132e3436384d2b8591cd1a59f0b69d342c893dc3a64be85188b5e3274bcf3f1
|
||||
DIST vkd3d-proton-2.7.tar.gz 1403317 BLAKE2B 4ae975537ac1f39d38155b106aed3fa5542925f0980c23ad2fa8f1f9cf168b104311d14b7ba68a539fd92ab131cc878d8822ff23b551ca6ba9b3b86ac580f927 SHA512 a8d055dc7bc1ecdd7edcb5dafe304804cd516623f6771b786778a2ef6a0e7ebc4ba6ce53897b2ee830eb6dc39da16805c638f1db56444385febedd13276aed18
|
||||
DIST vkd3d-proton-dxil-spirv-2166bc7ea0.tar.gz 688874 BLAKE2B 746dc8232ca0130f2b693ab7b9d3d93a4c514eacc473fa5d6fa91580e9daac48e9a51e63e93d3907f95c980e922ad3599190740dc280ef2ba1c96a4aea975416 SHA512 0a3308a10d3afc636e55c44fc4f2f3d067b5b828a6a93f3832698faf9a6ee26d53d25ad7eb0cbd6074b29395d073422434d63dd55004ce64e0aaf73334e4f5cc
|
||||
DIST vkd3d-proton-dxil-spirv-b537bbb91b.tar.gz 631130 BLAKE2B 99f40c5efde87d0af86542b427e5b0429be68ca69ba0c2b6d10a821811756d8dadff4449f268ae404f8ace09a91b3e8aaa135e534a77c0239e58c1a970a044cc SHA512 3c20090b7a1b53c30fd4967622fc7384e1bcc504c30d8075068b87dad1bd2c6f4a12459bf42e61bf76b9dd454ec17a9d529f74ab0d5583627e966d94bb341dc3
|
||||
DIST vkd3d-proton-spirv-headers-87d5b782be.tar.gz 439180 BLAKE2B 9c64a1b7aa408172bb57b38ca0e3d31221c7dfecfcd9afc77449c14e76f60f7436f1a54a794bf4959f4575f177e1024621c6ff696f7fb19b545877e0a527031c SHA512 d6ce02e53c259e508d1d72d81cc6aa6b3019e7ecd6a8878d81d8681d9734756f66c762ebd4b8b1d0f9fbb7a8f1f18d72aeb27c56822d810aca5a3e53c51c1ef6
|
||||
DIST vkd3d-proton-spirv-headers-ae217c1780.tar.gz 415130 BLAKE2B 0c6444c4c1cb43b9c69757d7c2257ce2fe1bc6be308341f3189766f120994e4920bc738b737d9eefc299359dab568fb8809782e3663dd589c0e4d13aecb8873a SHA512 02cf1d63b29e48ef0efe489eb32237ba2f9f4bf58a182b00dc96aab18faba94de79283398e9e945cd81130f83fff228c59b04e496716ea9ccc148a5f4465282c
|
||||
DIST vkd3d-proton-vulkan-headers-5177b119bb.tar.gz 1588963 BLAKE2B 3e973c9fc1fd8c8f725fbe8dbd67ca451aa7ffbb202d2395f3b26bbad9cb4e9e39514c7c78825be7ca122ccd5b434adb0b3fcce25cb7fff7c831dcc5909bbdc3 SHA512 3848e5b14f73dda60f133d396742a9a2aa2fc3914b8cbd8bde90e392437398321865ade63e81ec99a83af20a42424cf2c6d06e4dda0d7323486d59fbc4504a3b
|
||||
DIST vkd3d-proton-vulkan-headers-83e1a9ed8c.tar.gz 1299014 BLAKE2B 0b1e635aaa6eebec3525b13698a064e0e5b8a78829a772cbe9e1890148059bf396bc5c830e8d6ee3070a3343775991642565283994c65acfa0d82a91590b7d84 SHA512 ecb2158cad55edb4ba069383668f3b311a2f6aa6777b5b7ed94795d454622426ee34fee52b13c97d2f07b5b2f965815ee61a0203b76a0b0d2c708a4786d06b96
|
||||
|
@ -0,0 +1,171 @@
|
||||
# Copyright 2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
MULTILIB_COMPAT=( abi_x86_{32,64} )
|
||||
inherit flag-o-matic meson-multilib toolchain-funcs
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/HansKristian-Work/vkd3d-proton.git"
|
||||
EGIT_SUBMODULES=(
|
||||
# uses hacks / recent features and easily breaks, keep bundled headers
|
||||
# (also cross-compiled and -I/usr/include is troublesome)
|
||||
subprojects/{SPIRV,Vulkan}-Headers
|
||||
subprojects/dxil-spirv
|
||||
subprojects/dxil-spirv/third_party/spirv-headers # skip cross/tools
|
||||
)
|
||||
else
|
||||
HASH_VKD3D=4df366172e025c23621c8df5a794de90de165d97 # match tag on bumps
|
||||
HASH_DXIL=2166bc7ea0ceb2d7ff6d787d9b007f7eb7d4aaa8
|
||||
HASH_SPIRV=ae217c17809fadb232ec94b29304b4afcd417bb4
|
||||
HASH_SPIRV_DXIL=87d5b782bec60822aa878941e6b13c0a9a954c9b
|
||||
HASH_VULKAN=5177b119bbdf463b7b909855a83230253c2d8b68
|
||||
SRC_URI="
|
||||
https://github.com/HansKristian-Work/vkd3d-proton/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
https://github.com/HansKristian-Work/dxil-spirv/archive/${HASH_DXIL}.tar.gz -> ${PN}-dxil-spirv-${HASH_DXIL::10}.tar.gz
|
||||
https://github.com/KhronosGroup/SPIRV-Headers/archive/${HASH_SPIRV}.tar.gz -> ${PN}-spirv-headers-${HASH_SPIRV::10}.tar.gz
|
||||
https://github.com/KhronosGroup/SPIRV-Headers/archive/${HASH_SPIRV_DXIL}.tar.gz -> ${PN}-spirv-headers-${HASH_SPIRV_DXIL::10}.tar.gz
|
||||
https://github.com/KhronosGroup/Vulkan-Headers/archive/${HASH_VULKAN}.tar.gz -> ${PN}-vulkan-headers-${HASH_VULKAN::10}.tar.gz"
|
||||
KEYWORDS="-* ~amd64 ~x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Fork of VKD3D, development branches for Proton's Direct3D 12 implementation"
|
||||
HOMEPAGE="https://github.com/HansKristian-Work/vkd3d-proton/"
|
||||
|
||||
LICENSE="LGPL-2.1+ Apache-2.0 MIT"
|
||||
SLOT="0"
|
||||
IUSE="+abi_x86_32 crossdev-mingw debug extras"
|
||||
|
||||
BDEPEND="
|
||||
dev-util/glslang
|
||||
!crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] )"
|
||||
|
||||
pkg_pretend() {
|
||||
[[ ${MERGE_TYPE} == binary ]] && return
|
||||
|
||||
if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
|
||||
local tool=-w64-mingw32-g++
|
||||
for tool in $(usev abi_x86_64 x86_64${tool}) $(usev abi_x86_32 i686${tool}); do
|
||||
if ! type -P ${tool} >/dev/null; then
|
||||
eerror "With USE=crossdev-mingw, it is necessary to setup the mingw toolchain."
|
||||
eerror "For instructions, please see: https://wiki.gentoo.org/wiki/Mingw"
|
||||
use abi_x86_32 && use abi_x86_64 &&
|
||||
eerror "Also, with USE=abi_x86_32, will need both i686 and x86_64 toolchains."
|
||||
die "USE=crossdev-mingw is enabled, but ${tool} was not found"
|
||||
elif [[ ! $(LC_ALL=C ${tool} -v 2>&1) =~ "Thread model: posix" ]]; then
|
||||
eerror "${PN} requires GCC to be built with --enable-threads=posix"
|
||||
eerror "Please see: https://wiki.gentoo.org/wiki/Mingw#POSIX_threads_for_Windows"
|
||||
die "USE=crossdev-mingw is enabled, but ${tool} does not use POSIX threads"
|
||||
fi
|
||||
done
|
||||
tool=-w64-mingw32-widl
|
||||
for tool in $(usev abi_x86_64 x86_64${tool}) $(usev abi_x86_32 i686${tool}); do
|
||||
if ! type -P widl >/dev/null && ! type -P ${tool} >/dev/null; then
|
||||
eerror "With USE=crossdev-mingw, you need to provide the widl compiler by either"
|
||||
eerror "building crossdev mingw64-runtime with USE=tools or installing wine."
|
||||
die "USE=crossdev-mingw is set but neither widl nor ${tool} were found"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV} != 9999 ]]; then
|
||||
rmdir subprojects/{{SPIRV,Vulkan}-Headers,dxil-spirv} || die
|
||||
mv ../dxil-spirv-${HASH_DXIL} subprojects/dxil-spirv || die
|
||||
mv ../SPIRV-Headers-${HASH_SPIRV} subprojects/SPIRV-Headers || die
|
||||
mv ../Vulkan-Headers-${HASH_VULKAN} subprojects/Vulkan-Headers || die
|
||||
|
||||
# dxil and vkd3d's spirv headers currently mismatch and incompatible
|
||||
rmdir subprojects/dxil-spirv/third_party/spirv-headers || die
|
||||
mv ../SPIRV-Headers-${HASH_SPIRV_DXIL} \
|
||||
subprojects/dxil-spirv/third_party/spirv-headers || die
|
||||
fi
|
||||
|
||||
default
|
||||
|
||||
sed -i "/^basedir=/s|=.*|=${EPREFIX}/usr/lib/${PN}|" setup_vkd3d_proton.sh || die
|
||||
|
||||
if [[ ${PV} != 9999 ]]; then
|
||||
# without .git, meson sets vkd3d_build as 0x${PV} leading to failure
|
||||
sed -i "s/@VCS_TAG@/${HASH_VKD3D::15}/" vkd3d_build.h.in || die
|
||||
sed -i "s/@VCS_TAG@/${HASH_VKD3D::7}/" vkd3d_version.h.in || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
|
||||
|
||||
if [[ ${CHOST} != *-mingw* ]]; then
|
||||
if [[ ! -v MINGW_BYPASS ]]; then
|
||||
unset AR CC CXX RC STRIP WIDL
|
||||
filter-flags '-fstack-clash-protection' #758914
|
||||
filter-flags '-fstack-protector*' #870136
|
||||
filter-flags '-fuse-ld=*'
|
||||
fi
|
||||
|
||||
CHOST_amd64=x86_64-w64-mingw32
|
||||
CHOST_x86=i686-w64-mingw32
|
||||
CHOST=$(usex x86 ${CHOST_x86} ${CHOST_amd64})
|
||||
|
||||
# preferring meson eclass' cross file over upstream's but, unlike
|
||||
# dxvk, we lose static options in the process (from build-win*.txt)
|
||||
append-ldflags -static -static-libgcc -static-libstdc++
|
||||
|
||||
strip-unsupported-flags
|
||||
fi
|
||||
|
||||
multilib-minimal_src_configure
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# multilib's ${CHOST_amd64}-gcc -m32 is unusable with crossdev,
|
||||
# unset again so meson eclass will set ${CHOST}-gcc + others
|
||||
use crossdev-mingw && [[ ! -v MINGW_BYPASS ]] && unset AR CC CXX STRIP WIDL
|
||||
|
||||
# prefer ${CHOST}'s widl (mingw) over wine's as used by upstream if
|
||||
# possible, but eclasses don't handle that so setup machine files
|
||||
local widl=$(tc-getPROG WIDL widl)
|
||||
use amd64 && [[ ${widl} == widl && ${ABI} == x86 ]] && widl="widl','-m32"
|
||||
printf "[binaries]\nwidl = ['${widl}']\n" > "${T}"/widl.${ABI}.ini || die
|
||||
|
||||
local emesonargs=(
|
||||
--prefix="${EPREFIX}"/usr/lib/${PN}
|
||||
--{bin,lib}dir=x${ABI: -2}
|
||||
--{cross,native}-file="${T}"/widl.${ABI}.ini
|
||||
$(meson_use {,enable_}extras)
|
||||
$(meson_use debug enable_trace)
|
||||
$(usev !debug --strip) # portage won't strip .dll, so allow it here
|
||||
-Denable_tests=false # needs wine/vulkan and is intended for manual use
|
||||
)
|
||||
|
||||
meson_src_configure
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
dobin setup_vkd3d_proton.sh
|
||||
einstalldocs
|
||||
|
||||
# unnecesasry files, see package-release.sh
|
||||
rm "${ED}"/usr/lib/${PN}/x*/libvkd3d-proton-utils-3.dll || die
|
||||
find "${ED}" -type f -name '*.a' -delete || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ ! ${REPLACING_VERSIONS} ]]; then
|
||||
elog "To enable ${PN} on a wine prefix, you can run the following command:"
|
||||
elog
|
||||
elog " WINEPREFIX=/path/to/prefix setup_vkd3d_proton.sh install --symlink"
|
||||
elog
|
||||
elog "See ${EROOT}/usr/share/doc/${PF}/README.md* for details."
|
||||
fi
|
||||
|
||||
# don't try to keep wine-*[vulkan] in RDEPEND, but still give a warning
|
||||
local wine
|
||||
for wine in app-emulation/wine-{vanilla,staging}; do
|
||||
has_version ${wine} && ! has_version "${wine}[vulkan]" &&
|
||||
ewarn "${wine} was not built with USE=vulkan, ${PN} will not be usable with it"
|
||||
done
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Replacement for the .NET runtime and class libraries in Wine"
|
||||
HOMEPAGE="https://www.winehq.org/"
|
||||
SRC_URI="
|
||||
shared? ( https://github.com/madewokherd/wine-mono/releases/download/${P}/${P}-x86.tar.xz )
|
||||
!shared? ( https://github.com/madewokherd/wine-mono/releases/download/${P}/${P}-x86.msi )"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="BSD-2 GPL-2 LGPL-2.1 MIT MPL-1.1"
|
||||
SLOT="${PV}"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+shared"
|
||||
|
||||
src_install() {
|
||||
insinto /usr/share/wine/mono
|
||||
|
||||
if use shared; then
|
||||
doins -r ${P}
|
||||
else
|
||||
doins "${DISTDIR}"/${P}-x86.msi
|
||||
fi
|
||||
}
|
@ -1,532 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
PYTHON_REQ_USE='ncurses,xml(+),threads(+)'
|
||||
|
||||
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
REPO="xen.git"
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
|
||||
S="${WORKDIR}/${REPO}"
|
||||
else
|
||||
KEYWORDS="amd64 ~arm ~arm64 x86"
|
||||
|
||||
SEABIOS_VER="1.14.0"
|
||||
EDK2_COMMIT="7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5"
|
||||
EDK2_OPENSSL_VERSION="1_1_1j"
|
||||
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
|
||||
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
|
||||
IPXE_COMMIT="3c040ad387099483102708bb1839110bc788cefb"
|
||||
|
||||
XEN_PRE_PATCHSET_NUM=
|
||||
XEN_GENTOO_PATCHSET_NUM=2
|
||||
XEN_PRE_VERSION_BASE=
|
||||
|
||||
XEN_BASE_PV="${PV}"
|
||||
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
|
||||
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
|
||||
fi
|
||||
|
||||
SRC_URI="
|
||||
https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz
|
||||
https://www.seabios.org/downloads/seabios-${SEABIOS_VER}.tar.gz
|
||||
ipxe? ( https://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
|
||||
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
|
||||
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
|
||||
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
|
||||
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
|
||||
)
|
||||
"
|
||||
|
||||
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
|
||||
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
|
||||
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
|
||||
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
|
||||
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
|
||||
fi
|
||||
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
|
||||
XEN_GENTOO_PATCHES_TAG="${PV}-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
|
||||
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
|
||||
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
|
||||
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
|
||||
fi
|
||||
fi
|
||||
|
||||
DESCRIPTION="Xen tools including QEMU and xl"
|
||||
HOMEPAGE="https://xenproject.org"
|
||||
DOCS=( README )
|
||||
|
||||
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
|
||||
# >=dev-lang/ocaml-4 stable
|
||||
# Masked in profiles/eapi-5-files instead
|
||||
IUSE="api debug doc +hvm +ipxe lzma ocaml ovmf pygrub python +qemu +qemu-traditional +rombios screen selinux sdl static-libs system-ipxe system-qemu system-seabios"
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
ipxe? ( rombios )
|
||||
ovmf? ( hvm )
|
||||
pygrub? ( python )
|
||||
rombios? ( hvm )
|
||||
system-ipxe? ( rombios )
|
||||
?? ( ipxe system-ipxe )
|
||||
?? ( qemu system-qemu )"
|
||||
|
||||
COMMON_DEPEND="
|
||||
lzma? ( app-arch/xz-utils )
|
||||
qemu? (
|
||||
dev-libs/glib:2
|
||||
sys-libs/pam
|
||||
)
|
||||
app-arch/bzip2
|
||||
dev-libs/libnl:3
|
||||
dev-libs/lzo:2
|
||||
dev-libs/yajl
|
||||
sys-apps/util-linux
|
||||
sys-fs/e2fsprogs
|
||||
sys-libs/ncurses
|
||||
sys-libs/zlib
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
sys-apps/iproute2[-minimal]
|
||||
net-misc/bridge-utils
|
||||
screen? (
|
||||
app-misc/screen
|
||||
app-admin/logrotate
|
||||
)
|
||||
selinux? ( sec-policy/selinux-xen )"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
app-misc/pax-utils
|
||||
>=sys-kernel/linux-headers-4.11
|
||||
x11-libs/pixman
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/lxml[${PYTHON_USEDEP}]
|
||||
')
|
||||
x86? ( sys-devel/dev86
|
||||
system-ipxe? ( sys-firmware/ipxe[qemu] )
|
||||
sys-power/iasl )
|
||||
api? ( dev-libs/libxml2
|
||||
net-misc/curl )
|
||||
|
||||
ovmf? (
|
||||
!arm? ( !arm64? ( dev-lang/nasm ) )
|
||||
$(python_gen_impl_dep sqlite)
|
||||
)
|
||||
!amd64? ( >=sys-apps/dtc-1.4.0 )
|
||||
amd64? ( sys-power/iasl
|
||||
system-seabios? ( sys-firmware/seabios )
|
||||
system-ipxe? ( sys-firmware/ipxe[qemu] )
|
||||
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
|
||||
arm64? ( sys-power/iasl
|
||||
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
|
||||
doc? (
|
||||
app-text/ghostscript-gpl
|
||||
app-text/pandoc
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/markdown[${PYTHON_USEDEP}]
|
||||
')
|
||||
dev-texlive/texlive-latexextra
|
||||
media-gfx/transfig
|
||||
)
|
||||
hvm? ( x11-base/xorg-proto )
|
||||
qemu? (
|
||||
app-arch/snappy:=
|
||||
dev-util/meson
|
||||
sdl? (
|
||||
media-libs/libsdl[X]
|
||||
media-libs/libsdl2[X]
|
||||
)
|
||||
)
|
||||
system-qemu? ( app-emulation/qemu[xen] )
|
||||
ocaml? ( dev-ml/findlib
|
||||
dev-lang/ocaml[ocamlopt] )
|
||||
python? ( >=dev-lang/swig-4.0.0 )"
|
||||
|
||||
BDEPEND="dev-lang/perl
|
||||
sys-devel/bison
|
||||
sys-devel/gettext"
|
||||
|
||||
# hvmloader is used to bootstrap a fully virtualized kernel
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="
|
||||
usr/libexec/xen/boot/hvmloader
|
||||
usr/libexec/xen/boot/ovmf.bin
|
||||
usr/libexec/xen/boot/xen-shim
|
||||
usr/share/qemu-xen/qemu/hppa-firmware.img
|
||||
usr/share/qemu-xen/qemu/opensbi-riscv32-generic-fw_dynamic.elf
|
||||
usr/share/qemu-xen/qemu/opensbi-riscv64-generic-fw_dynamic.elf
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_EXECSTACK="
|
||||
usr/share/qemu-xen/qemu/hppa-firmware.img
|
||||
"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/libexec/xen/bin/elf2dmp
|
||||
usr/libexec/xen/bin/ivshmem-client
|
||||
usr/libexec/xen/bin/ivshmem-server
|
||||
usr/libexec/xen/bin/qemu-edid
|
||||
usr/libexec/xen/bin/qemu-img
|
||||
usr/libexec/xen/bin/qemu-io
|
||||
usr/libexec/xen/bin/qemu-keymap
|
||||
usr/libexec/xen/bin/qemu-nbd
|
||||
usr/libexec/xen/bin/qemu-pr-helper
|
||||
usr/libexec/xen/bin/qemu-storage-daemon
|
||||
usr/libexec/xen/bin/qemu-system-i386
|
||||
usr/libexec/xen/bin/virtfs-proxy-helper
|
||||
usr/libexec/xen/boot/ovmf.bin
|
||||
usr/libexec/xen/boot/xen-shim
|
||||
usr/libexec/xen/libexec/qemu-pr-helper
|
||||
usr/libexec/xen/libexec/virtfs-proxy-helper
|
||||
usr/libexec/xen/libexec/virtiofsd
|
||||
usr/libexec/xen/libexec/xen-bridge-helper
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/s390-netboot.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
python_setup
|
||||
export "CONFIG_LOMOUNT=y"
|
||||
|
||||
#bug 522642, disable compile tools/tests
|
||||
export "CONFIG_TESTS=n"
|
||||
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
|
||||
if use x86 && use amd64; then
|
||||
die "Confusion! Both x86 and amd64 are set in your use flags!"
|
||||
elif use x86; then
|
||||
export XEN_TARGET_ARCH="x86_32"
|
||||
elif use amd64 ; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
|
||||
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
|
||||
pushd tools/firmware/ > /dev/null
|
||||
ln -s seabios-dir-remote seabios-dir || die
|
||||
popd > /dev/null
|
||||
|
||||
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
|
||||
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
|
||||
fi
|
||||
|
||||
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
|
||||
eapply "${XEN_GENTOO_PATCHES_DIR}"
|
||||
fi
|
||||
|
||||
# Rename qemu-bridge-helper to xen-bridge-helper to avoid file
|
||||
# collisions with app-emulation/qemu.
|
||||
sed -i 's/qemu-bridge-helper/xen-bridge-helper/g' \
|
||||
tools/qemu-xen/include/net/net.h \
|
||||
tools/qemu-xen/Makefile \
|
||||
tools/qemu-xen/qemu-bridge-helper.c \
|
||||
tools/qemu-xen/qemu-options.hx \
|
||||
|| die
|
||||
|
||||
if use ovmf; then
|
||||
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
|
||||
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
|
||||
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
|
||||
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
|
||||
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
|
||||
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
|
||||
|
||||
# Bug #816987
|
||||
pushd tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli > /dev/null
|
||||
eapply "${FILESDIR}/${PN}-4.15.1-brotli-gcc11.patch"
|
||||
popd > /dev/null
|
||||
|
||||
pushd tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli > /dev/null
|
||||
eapply "${FILESDIR}/${PN}-4.15.1-brotli-gcc11.patch"
|
||||
popd > /dev/null
|
||||
fi
|
||||
|
||||
# ipxe
|
||||
if use ipxe; then
|
||||
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/ipxe.tar.gz || die
|
||||
|
||||
# gcc 11
|
||||
cp "${XEN_GENTOO_PATCHES_DIR}/ipxe/${PN}-4.15.0-ipxe-gcc11.patch" tools/firmware/etherboot/patches/ipxe-gcc11.patch || die
|
||||
echo ipxe-gcc11.patch >> tools/firmware/etherboot/patches/series || die
|
||||
fi
|
||||
|
||||
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
|
||||
|
||||
# Fix texi2html build error with new texi2html, qemu.doc.html
|
||||
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
|
||||
|
||||
# Drop .config, fixes to gcc-4.6
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
# drop flags
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
unset CPPFLAGS
|
||||
|
||||
if ! use pygrub; then
|
||||
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use python; then
|
||||
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use hvm; then
|
||||
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
|
||||
# Bug 351648
|
||||
elif ! use x86 && ! has x86 $(get_all_abis); then
|
||||
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
|
||||
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
|
||||
export CPATH="${WORKDIR}"/extra-headers
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
if use sdl; then
|
||||
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
|
||||
tools/Makefile || die
|
||||
else
|
||||
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
|
||||
tools/qemu-xen-traditional/xen-setup || die
|
||||
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
|
||||
tools/Makefile || die
|
||||
fi
|
||||
else
|
||||
# Don't bother with qemu, only needed for fully virtualised guests
|
||||
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
|
||||
fi
|
||||
|
||||
# Reset bash completion dir; Bug 472438
|
||||
sed -e "s;^BASH_COMPLETION_DIR :=.*;BASH_COMPLETION_DIR := $(get_bashcompdir);" \
|
||||
-i config/Paths.mk.in || die
|
||||
|
||||
# xencommons, Bug #492332, sed lighter weight than patching
|
||||
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
|
||||
-i tools/hotplug/Linux/init.d/xencommons.in || die
|
||||
|
||||
# fix bashishm
|
||||
sed -e '/Usage/s/\$//g' \
|
||||
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
|
||||
|
||||
# respect multilib, usr/lib/libcacard.so.0.0.0
|
||||
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
|
||||
-i tools/qemu-xen/configure || die
|
||||
|
||||
#bug 518136, don't build 32bit exactuable for nomultilib profile
|
||||
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
|
||||
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
|
||||
fi
|
||||
|
||||
# uncomment lines in xl.conf
|
||||
sed -e 's:^#autoballoon=:autoballoon=:' \
|
||||
-e 's:^#lockfile=:lockfile=:' \
|
||||
-e 's:^#vif.default.script=:vif.default.script=:' \
|
||||
-i tools/examples/xl.conf || die
|
||||
|
||||
# disable capstone (Bug #673474)
|
||||
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable glusterfs
|
||||
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable jpeg automagic
|
||||
sed -e "s:\$\$source/configure:\0 --disable-vnc-jpeg:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable png automagic
|
||||
sed -e "s:\$\$source/configure:\0 --disable-vnc-png:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable docker (Bug #732970)
|
||||
sed -e "s:\$\$source/configure:\0 --disable-containers:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable abi-dumper (Bug #791172)
|
||||
sed -e 's/$(ABI_DUMPER) /echo /g' \
|
||||
-i tools/libs/libs.mk || die
|
||||
|
||||
# Remove -Werror
|
||||
find . -type f \( -name Makefile -o -name "*.mk" \) \
|
||||
-exec sed -i \
|
||||
-e 's/-Werror //g' \
|
||||
-e '/^CFLAGS *+= -Werror$/d' \
|
||||
-e 's/, "-Werror"//' \
|
||||
{} + || die
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=(
|
||||
--libdir="${EPREFIX}/usr/$(get_libdir)"
|
||||
--libexecdir="${EPREFIX}/usr/libexec"
|
||||
--localstatedir="${EPREFIX}/var"
|
||||
--disable-golang
|
||||
--disable-werror
|
||||
--disable-xen
|
||||
--enable-tools
|
||||
--enable-docs
|
||||
$(use_enable api xenapi)
|
||||
$(use_enable ipxe)
|
||||
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '')
|
||||
$(use_enable ocaml ocamltools)
|
||||
$(use_enable ovmf)
|
||||
$(use_enable rombios)
|
||||
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored')
|
||||
)
|
||||
|
||||
use system-seabios && myconf+=( --with-system-seabios=/usr/share/seabios/bios.bin )
|
||||
use system-qemu && myconf+=( --with-system-qemu=/usr/bin/qemu-system-x86_64 )
|
||||
use amd64 && myconf+=( $(use_enable qemu-traditional) )
|
||||
tc-ld-disable-gold # Bug 669570
|
||||
econf ${myconf[@]}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
|
||||
|
||||
if test-flag-CC -fno-strict-overflow; then
|
||||
append-flags -fno-strict-overflow
|
||||
fi
|
||||
|
||||
# bug #845099
|
||||
if use ipxe; then
|
||||
local -x NO_WERROR=1
|
||||
fi
|
||||
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
|
||||
|
||||
if use doc; then
|
||||
emake -C docs build
|
||||
else
|
||||
emake -C docs man-pages
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Override auto-detection in the build system, bug #382573
|
||||
export INITD_DIR=/tmp/init.d
|
||||
export CONFIG_LEAF_DIR=../tmp/default
|
||||
|
||||
# Let the build system compile installed Python modules.
|
||||
local PYTHONDONTWRITEBYTECODE
|
||||
export PYTHONDONTWRITEBYTECODE
|
||||
|
||||
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
|
||||
XEN_PYTHON_NATIVE_INSTALL=y install-tools
|
||||
|
||||
# Created at runtime
|
||||
rm -rv "${ED}/var/run" || die
|
||||
|
||||
# Fix the remaining Python shebangs.
|
||||
python_fix_shebang "${D}"
|
||||
|
||||
# Remove RedHat-specific stuff
|
||||
rm -rf "${D}"/tmp || die
|
||||
|
||||
if use doc; then
|
||||
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
|
||||
dodoc -r docs/{pdf,txt}
|
||||
else
|
||||
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
|
||||
fi
|
||||
dodoc ${DOCS[@]}
|
||||
|
||||
newconfd "${FILESDIR}"/xendomains.confd xendomains
|
||||
newconfd "${FILESDIR}"/xenstored.confd xenstored
|
||||
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
|
||||
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
|
||||
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
|
||||
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
|
||||
newinitd "${FILESDIR}"/xencommons.initd xencommons
|
||||
newconfd "${FILESDIR}"/xencommons.confd xencommons
|
||||
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
|
||||
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
|
||||
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
|
||||
|
||||
if use screen; then
|
||||
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
|
||||
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
|
||||
keepdir /var/log/xen-consoles
|
||||
fi
|
||||
|
||||
# For -static-libs wrt Bug 384355
|
||||
if ! use static-libs; then
|
||||
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
|
||||
fi
|
||||
|
||||
# for xendomains
|
||||
keepdir /etc/xen/auto
|
||||
|
||||
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
|
||||
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
|
||||
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
|
||||
|
||||
keepdir /var/lib/xen/dump
|
||||
keepdir /var/lib/xen/xenpaging
|
||||
keepdir /var/lib/xenstored
|
||||
keepdir /var/log/xen
|
||||
|
||||
if use python; then
|
||||
python_domodule "${S}/tools/libs/stat/bindings/swig/python/xenstat.py"
|
||||
python_domodule "${S}/tools/libs/stat/bindings/swig/python/_xenstat.so"
|
||||
fi
|
||||
|
||||
python_optimize
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide and the offical wiki page:"
|
||||
elog "https://wiki.gentoo.org/wiki/Xen"
|
||||
elog "https://wiki.xen.org/wiki/Main_Page"
|
||||
elog ""
|
||||
elog "Recommended to utilise the xencommons script to config system at boot"
|
||||
elog "Add by use of rc-update on completion of the install"
|
||||
|
||||
if ! use hvm; then
|
||||
echo
|
||||
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
|
||||
elog "support enable the hvm use flag."
|
||||
elog "An x86 or amd64 system is required to build HVM support."
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
|
||||
elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
|
||||
elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
|
||||
elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
|
||||
fi
|
||||
}
|
@ -1,527 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..11} )
|
||||
PYTHON_REQ_USE='ncurses,xml(+),threads(+)'
|
||||
|
||||
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 readme.gentoo-r1 toolchain-funcs
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
REPO="xen.git"
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
|
||||
S="${WORKDIR}/${REPO}"
|
||||
else
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
|
||||
SEABIOS_VER="1.14.0"
|
||||
EDK2_COMMIT="7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5"
|
||||
EDK2_OPENSSL_VERSION="1_1_1j"
|
||||
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
|
||||
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
|
||||
IPXE_COMMIT="3c040ad387099483102708bb1839110bc788cefb"
|
||||
|
||||
XEN_GENTOO_PATCHSET_NUM=2
|
||||
XEN_GENTOO_PATCHSET_BASE=4.16.1
|
||||
XEN_PRE_PATCHSET_NUM=
|
||||
XEN_PRE_VERSION_BASE=
|
||||
|
||||
XEN_BASE_PV="${PV}"
|
||||
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
|
||||
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
|
||||
fi
|
||||
|
||||
SRC_URI="
|
||||
https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz
|
||||
https://www.seabios.org/downloads/seabios-${SEABIOS_VER}.tar.gz
|
||||
ipxe? ( https://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
|
||||
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
|
||||
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
|
||||
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
|
||||
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
|
||||
)
|
||||
"
|
||||
|
||||
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
|
||||
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
|
||||
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
|
||||
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
|
||||
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
|
||||
fi
|
||||
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
|
||||
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
|
||||
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
|
||||
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
|
||||
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
|
||||
fi
|
||||
fi
|
||||
|
||||
DESCRIPTION="Xen tools including QEMU and xl"
|
||||
HOMEPAGE="https://xenproject.org"
|
||||
DOCS=( README )
|
||||
|
||||
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
|
||||
# >=dev-lang/ocaml-4 stable
|
||||
# Masked in profiles/eapi-5-files instead
|
||||
IUSE="api debug doc +hvm +ipxe lzma ocaml ovmf pygrub python +qemu +qemu-traditional +rombios screen selinux sdl static-libs system-ipxe system-qemu system-seabios systemd zstd"
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
ipxe? ( rombios )
|
||||
ovmf? ( hvm )
|
||||
pygrub? ( python )
|
||||
rombios? ( hvm )
|
||||
system-ipxe? ( rombios )
|
||||
?? ( ipxe system-ipxe )
|
||||
?? ( qemu system-qemu )"
|
||||
|
||||
COMMON_DEPEND="
|
||||
lzma? ( app-arch/xz-utils )
|
||||
qemu? (
|
||||
dev-libs/glib:2
|
||||
sys-libs/pam
|
||||
)
|
||||
zstd? ( app-arch/zstd )
|
||||
app-arch/bzip2
|
||||
app-arch/zstd
|
||||
dev-libs/libnl:3
|
||||
dev-libs/lzo:2
|
||||
dev-libs/yajl
|
||||
sys-apps/util-linux
|
||||
sys-fs/e2fsprogs
|
||||
sys-libs/ncurses
|
||||
sys-libs/zlib
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
sys-apps/iproute2[-minimal]
|
||||
net-misc/bridge-utils
|
||||
screen? (
|
||||
app-misc/screen
|
||||
app-admin/logrotate
|
||||
)
|
||||
selinux? ( sec-policy/selinux-xen )"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
app-misc/pax-utils
|
||||
>=sys-kernel/linux-headers-4.11
|
||||
x11-libs/pixman
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/lxml[${PYTHON_USEDEP}]
|
||||
')
|
||||
x86? ( sys-devel/dev86
|
||||
system-ipxe? ( sys-firmware/ipxe[qemu] )
|
||||
sys-power/iasl )
|
||||
api? ( dev-libs/libxml2
|
||||
net-misc/curl )
|
||||
|
||||
ovmf? (
|
||||
!arm? ( !arm64? ( dev-lang/nasm ) )
|
||||
$(python_gen_impl_dep sqlite)
|
||||
)
|
||||
!amd64? ( >=sys-apps/dtc-1.4.0 )
|
||||
amd64? ( sys-power/iasl
|
||||
system-seabios? ( sys-firmware/seabios )
|
||||
system-ipxe? ( sys-firmware/ipxe[qemu] )
|
||||
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
|
||||
arm64? ( sys-power/iasl
|
||||
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
|
||||
doc? (
|
||||
app-text/ghostscript-gpl
|
||||
app-text/pandoc
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/markdown[${PYTHON_USEDEP}]
|
||||
')
|
||||
dev-texlive/texlive-latexextra
|
||||
media-gfx/transfig
|
||||
)
|
||||
hvm? ( x11-base/xorg-proto )
|
||||
qemu? (
|
||||
app-arch/snappy:=
|
||||
dev-util/meson
|
||||
sdl? (
|
||||
media-libs/libsdl[X]
|
||||
media-libs/libsdl2[X]
|
||||
)
|
||||
)
|
||||
system-qemu? ( app-emulation/qemu[xen] )
|
||||
ocaml? ( dev-ml/findlib
|
||||
dev-lang/ocaml[ocamlopt] )
|
||||
python? ( >=dev-lang/swig-4.0.0 )"
|
||||
|
||||
BDEPEND="dev-lang/perl
|
||||
sys-devel/bison
|
||||
sys-devel/gettext"
|
||||
|
||||
# hvmloader is used to bootstrap a fully virtualized kernel
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="
|
||||
usr/libexec/xen/boot/hvmloader
|
||||
usr/libexec/xen/boot/ovmf.bin
|
||||
usr/libexec/xen/boot/xen-shim
|
||||
usr/share/qemu-xen/qemu/hppa-firmware.img
|
||||
usr/share/qemu-xen/qemu/opensbi-riscv32-generic-fw_dynamic.elf
|
||||
usr/share/qemu-xen/qemu/opensbi-riscv64-generic-fw_dynamic.elf
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_EXECSTACK="
|
||||
usr/share/qemu-xen/qemu/hppa-firmware.img
|
||||
"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/libexec/xen/bin/elf2dmp
|
||||
usr/libexec/xen/bin/ivshmem-client
|
||||
usr/libexec/xen/bin/ivshmem-server
|
||||
usr/libexec/xen/bin/qemu-edid
|
||||
usr/libexec/xen/bin/qemu-img
|
||||
usr/libexec/xen/bin/qemu-io
|
||||
usr/libexec/xen/bin/qemu-keymap
|
||||
usr/libexec/xen/bin/qemu-nbd
|
||||
usr/libexec/xen/bin/qemu-pr-helper
|
||||
usr/libexec/xen/bin/qemu-storage-daemon
|
||||
usr/libexec/xen/bin/qemu-system-i386
|
||||
usr/libexec/xen/bin/virtfs-proxy-helper
|
||||
usr/libexec/xen/boot/ovmf.bin
|
||||
usr/libexec/xen/boot/xen-shim
|
||||
usr/libexec/xen/libexec/qemu-pr-helper
|
||||
usr/libexec/xen/libexec/virtfs-proxy-helper
|
||||
usr/libexec/xen/libexec/virtiofsd
|
||||
usr/libexec/xen/libexec/xen-bridge-helper
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/s390-netboot.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
python_setup
|
||||
export "CONFIG_LOMOUNT=y"
|
||||
|
||||
#bug 522642, disable compile tools/tests
|
||||
export "CONFIG_TESTS=n"
|
||||
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
|
||||
if use x86 && use amd64; then
|
||||
die "Confusion! Both x86 and amd64 are set in your use flags!"
|
||||
elif use x86; then
|
||||
export XEN_TARGET_ARCH="x86_32"
|
||||
elif use amd64 ; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
|
||||
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
|
||||
pushd tools/firmware/ > /dev/null
|
||||
ln -s seabios-dir-remote seabios-dir || die
|
||||
popd > /dev/null
|
||||
|
||||
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
|
||||
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
|
||||
fi
|
||||
|
||||
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
|
||||
eapply "${XEN_GENTOO_PATCHES_DIR}"
|
||||
fi
|
||||
|
||||
# Rename qemu-bridge-helper to xen-bridge-helper to avoid file
|
||||
# collisions with app-emulation/qemu.
|
||||
sed -i 's/qemu-bridge-helper/xen-bridge-helper/g' \
|
||||
tools/qemu-xen/include/net/net.h \
|
||||
tools/qemu-xen/meson.build \
|
||||
tools/qemu-xen/qemu-bridge-helper.c \
|
||||
tools/qemu-xen/qemu-options.hx \
|
||||
|| die
|
||||
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
|
||||
|
||||
if use ovmf; then
|
||||
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
|
||||
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
|
||||
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
|
||||
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
|
||||
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
|
||||
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
|
||||
|
||||
# Bug #816987
|
||||
pushd tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli > /dev/null
|
||||
eapply "${XEN_GENTOO_PATCHES_DIR}/ovmf/${PN}-4.15.1-brotli-gcc11.patch"
|
||||
popd > /dev/null
|
||||
|
||||
pushd tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli > /dev/null
|
||||
eapply "${XEN_GENTOO_PATCHES_DIR}/ovmf/${PN}-4.15.1-brotli-gcc11.patch"
|
||||
popd > /dev/null
|
||||
fi
|
||||
|
||||
# ipxe
|
||||
if use ipxe; then
|
||||
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/ipxe.tar.gz || die
|
||||
|
||||
# gcc 11
|
||||
cp "${XEN_GENTOO_PATCHES_DIR}/ipxe/${PN}-4.15.0-ipxe-gcc11.patch" tools/firmware/etherboot/patches/ipxe-gcc11.patch || die
|
||||
echo ipxe-gcc11.patch >> tools/firmware/etherboot/patches/series || die
|
||||
fi
|
||||
|
||||
# Fix texi2html build error with new texi2html, qemu.doc.html
|
||||
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
|
||||
|
||||
# Drop .config, fixes to gcc-4.6
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
# drop flags
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
unset CPPFLAGS
|
||||
|
||||
if ! use pygrub; then
|
||||
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use python; then
|
||||
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use hvm; then
|
||||
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
|
||||
# Bug 351648
|
||||
elif ! use x86 && ! has x86 $(get_all_abis); then
|
||||
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
|
||||
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
|
||||
export CPATH="${WORKDIR}"/extra-headers
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
if use sdl; then
|
||||
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
|
||||
tools/Makefile || die
|
||||
else
|
||||
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
|
||||
tools/qemu-xen-traditional/xen-setup || die
|
||||
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
|
||||
tools/Makefile || die
|
||||
fi
|
||||
else
|
||||
# Don't bother with qemu, only needed for fully virtualised guests
|
||||
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
|
||||
fi
|
||||
|
||||
# Reset bash completion dir; Bug 472438
|
||||
sed -e "s;^BASH_COMPLETION_DIR :=.*;BASH_COMPLETION_DIR := $(get_bashcompdir);" \
|
||||
-i config/Paths.mk.in || die
|
||||
|
||||
# xencommons, Bug #492332, sed lighter weight than patching
|
||||
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
|
||||
-i tools/hotplug/Linux/init.d/xencommons.in || die
|
||||
|
||||
# fix bashishm
|
||||
sed -e '/Usage/s/\$//g' \
|
||||
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
|
||||
|
||||
# respect multilib, usr/lib/libcacard.so.0.0.0
|
||||
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
|
||||
-i tools/qemu-xen/configure || die
|
||||
|
||||
#bug 518136, don't build 32bit exactuable for nomultilib profile
|
||||
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
|
||||
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
|
||||
fi
|
||||
|
||||
# uncomment lines in xl.conf
|
||||
sed -e 's:^#autoballoon=:autoballoon=:' \
|
||||
-e 's:^#lockfile=:lockfile=:' \
|
||||
-e 's:^#vif.default.script=:vif.default.script=:' \
|
||||
-i tools/examples/xl.conf || die
|
||||
|
||||
# disable capstone (Bug #673474)
|
||||
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable glusterfs
|
||||
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable jpeg automagic
|
||||
sed -e "s:\$\$source/configure:\0 --disable-vnc-jpeg:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable png automagic
|
||||
sed -e "s:\$\$source/configure:\0 --disable-vnc-png:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable docker (Bug #732970)
|
||||
sed -e "s:\$\$source/configure:\0 --disable-containers:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable abi-dumper (Bug #791172)
|
||||
sed -e 's/$(ABI_DUMPER) /echo /g' \
|
||||
-i tools/libs/libs.mk || die
|
||||
|
||||
# Remove -Werror
|
||||
find . -type f \( -name Makefile -o -name "*.mk" \) \
|
||||
-exec sed -i \
|
||||
-e 's/-Werror //g' \
|
||||
-e '/^CFLAGS *+= -Werror$/d' \
|
||||
-e 's/, "-Werror"//' \
|
||||
{} + || die
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=(
|
||||
--libdir="${EPREFIX}/usr/$(get_libdir)"
|
||||
--libexecdir="${EPREFIX}/usr/libexec"
|
||||
--localstatedir="${EPREFIX}/var"
|
||||
--disable-golang
|
||||
--disable-werror
|
||||
--disable-xen
|
||||
--enable-tools
|
||||
--enable-docs
|
||||
$(use_enable api xenapi)
|
||||
$(use_enable ipxe)
|
||||
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '')
|
||||
$(use_enable ocaml ocamltools)
|
||||
$(use_enable ovmf)
|
||||
$(use_enable rombios)
|
||||
$(use_enable systemd)
|
||||
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored')
|
||||
)
|
||||
|
||||
use system-seabios && myconf+=( --with-system-seabios=/usr/share/seabios/bios.bin )
|
||||
use system-qemu && myconf+=( --with-system-qemu=/usr/bin/qemu-system-x86_64 )
|
||||
use amd64 && myconf+=( $(use_enable qemu-traditional) )
|
||||
tc-ld-disable-gold # Bug 669570
|
||||
econf ${myconf[@]}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
|
||||
|
||||
if test-flag-CC -fno-strict-overflow; then
|
||||
append-flags -fno-strict-overflow
|
||||
fi
|
||||
|
||||
# bug #845099
|
||||
if use ipxe; then
|
||||
local -x NO_WERROR=1
|
||||
fi
|
||||
|
||||
emake \
|
||||
HOSTCC="$(tc-getBUILD_CC)" \
|
||||
HOSTCXX="$(tc-getBUILD_CXX)" \
|
||||
CC="$(tc-getCC)" \
|
||||
CXX="$(tc-getCXX)" \
|
||||
LD="$(tc-getLD)" \
|
||||
AR="$(tc-getAR)" \
|
||||
OBJDUMP="$(tc-getOBJDUMP)" \
|
||||
RANLIB="$(tc-getRANLIB)" \
|
||||
build-tools ${myopt}
|
||||
|
||||
if use doc; then
|
||||
emake -C docs build
|
||||
else
|
||||
emake -C docs man-pages
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Override auto-detection in the build system, bug #382573
|
||||
export INITD_DIR=/tmp/init.d
|
||||
export CONFIG_LEAF_DIR=../tmp/default
|
||||
|
||||
# Let the build system compile installed Python modules.
|
||||
local PYTHONDONTWRITEBYTECODE
|
||||
export PYTHONDONTWRITEBYTECODE
|
||||
|
||||
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
|
||||
XEN_PYTHON_NATIVE_INSTALL=y install-tools
|
||||
|
||||
# Created at runtime
|
||||
rm -rv "${ED}/var/run" || die
|
||||
|
||||
# Fix the remaining Python shebangs.
|
||||
python_fix_shebang "${D}"
|
||||
|
||||
# Remove RedHat-specific stuff
|
||||
rm -rf "${D}"/tmp || die
|
||||
|
||||
if use doc; then
|
||||
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
|
||||
dodoc -r docs/{pdf,txt}
|
||||
else
|
||||
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
|
||||
fi
|
||||
dodoc ${DOCS[@]}
|
||||
|
||||
newconfd "${FILESDIR}"/xendomains.confd xendomains
|
||||
newconfd "${FILESDIR}"/xenstored.confd xenstored
|
||||
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
|
||||
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
|
||||
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
|
||||
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
|
||||
newinitd "${FILESDIR}"/xencommons.initd xencommons
|
||||
newconfd "${FILESDIR}"/xencommons.confd xencommons
|
||||
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
|
||||
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
|
||||
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
|
||||
|
||||
if use screen; then
|
||||
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
|
||||
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
|
||||
keepdir /var/log/xen-consoles
|
||||
fi
|
||||
|
||||
# For -static-libs wrt Bug 384355
|
||||
if ! use static-libs; then
|
||||
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
|
||||
fi
|
||||
|
||||
# for xendomains
|
||||
keepdir /etc/xen/auto
|
||||
|
||||
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
|
||||
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
|
||||
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
|
||||
|
||||
keepdir /var/lib/xen/dump
|
||||
keepdir /var/lib/xen/xenpaging
|
||||
keepdir /var/lib/xenstored
|
||||
keepdir /var/log/xen
|
||||
|
||||
if use python; then
|
||||
python_domodule "${S}/tools/libs/stat/bindings/swig/python/xenstat.py"
|
||||
python_domodule "${S}/tools/libs/stat/bindings/swig/python/_xenstat.so"
|
||||
fi
|
||||
|
||||
python_optimize
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
}
|
@ -1,183 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
|
||||
inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
|
||||
SRC_URI=""
|
||||
else
|
||||
KEYWORDS="amd64 ~arm -x86"
|
||||
|
||||
XEN_PRE_PATCHSET_NUM=
|
||||
XEN_GENTOO_PATCHSET_NUM=
|
||||
XEN_PRE_VERSION_BASE=
|
||||
|
||||
XEN_BASE_PV="${PV}"
|
||||
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
|
||||
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
|
||||
fi
|
||||
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz"
|
||||
|
||||
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
|
||||
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
|
||||
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
|
||||
SRC_URI+=" https://github.com/Flowdalic/xen-upstream-patches/archive/refs/tags/${XEN_UPSTREAM_PATCHES_TAG}.tar.gz -> ${XEN_UPSTREAM_PATCHES_NAME}.tar.gz"
|
||||
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
|
||||
fi
|
||||
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
|
||||
XEN_GENTOO_PATCHES_TAG="4.16.1-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
|
||||
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
|
||||
SRC_URI+=" https://github.com/Flowdalic/xen-gentoo-patches/archive/refs/tags/${XEN_GENTOO_PATCHES_TAG}.tar.gz -> ${XEN_GENTOO_PATCHES_NAME}.tar.gz"
|
||||
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
|
||||
fi
|
||||
fi
|
||||
|
||||
DESCRIPTION="The Xen virtual machine monitor"
|
||||
HOMEPAGE="https://xenproject.org"
|
||||
|
||||
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="debug efi flask"
|
||||
REQUIRED_USE="arm? ( debug )"
|
||||
|
||||
DEPEND="${PYTHON_DEPS}
|
||||
efi? ( >=sys-devel/binutils-2.22[multitarget] )
|
||||
!efi? ( >=sys-devel/binutils-2.22 )
|
||||
flask? ( sys-apps/checkpolicy )"
|
||||
RDEPEND=""
|
||||
PDEPEND="~app-emulation/xen-tools-${PV}"
|
||||
|
||||
# no tests are available for the hypervisor
|
||||
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
|
||||
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
|
||||
RESTRICT="test splitdebug strip"
|
||||
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="boot/xen-syms-${PV}"
|
||||
|
||||
pkg_setup() {
|
||||
python-any-r1_pkg_setup
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]]; then
|
||||
if use amd64; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
|
||||
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
|
||||
fi
|
||||
|
||||
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
|
||||
eapply "${XEN_GENTOO_PATCHES_DIR}"
|
||||
fi
|
||||
|
||||
eapply "${FILESDIR}"/${PN}-4.15-efi.patch
|
||||
|
||||
# Enable XSM-FLASK
|
||||
use flask && eapply "${FILESDIR}"/${PN}-4.15-flask.patch
|
||||
|
||||
# Workaround new gcc-11 options
|
||||
sed -e '/^CFLAGS/s/-Werror//g' -i xen/Makefile || die
|
||||
|
||||
# Drop .config
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
if use efi; then
|
||||
export EFI_VENDOR="gentoo"
|
||||
export EFI_MOUNTPOINT="/boot"
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
xen_make() {
|
||||
# Setting clang to either 'y' or 'n' tells Xen's build system
|
||||
# whether or not clang is used.
|
||||
local clang=n
|
||||
if tc-is-clang; then
|
||||
clang=y
|
||||
fi
|
||||
|
||||
# Send raw LDFLAGS so that --as-needed works
|
||||
emake \
|
||||
V=1 \
|
||||
LDFLAGS="$(raw-ldflags)" \
|
||||
HOSTCC="$(tc-getBUILD_CC)" \
|
||||
HOSTCXX="$(tc-getBUILD_CXX)" \
|
||||
clang="${clang}" \
|
||||
"$@"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
cd xen || die
|
||||
|
||||
touch gentoo-config || die
|
||||
if use arm; then
|
||||
echo "CONFIG_EARLY_PRINTK=sun7i" >> gentoo-config || die
|
||||
fi
|
||||
if use debug; then
|
||||
cat <<-EOF >> gentoo-config || die
|
||||
CONFIG_DEBUG=y
|
||||
CONFIG_CRASH_DEBUG=y
|
||||
EOF
|
||||
fi
|
||||
if use flask; then
|
||||
echo "CONFIG_XSM=y" >> gentoo-config || die
|
||||
fi
|
||||
|
||||
# remove flags
|
||||
unset CFLAGS
|
||||
|
||||
tc-ld-disable-gold # Bug 700374
|
||||
|
||||
xen_make KCONFIG_ALLCONFIG=gentoo-config alldefconfig
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
xen_make -C xen
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# The 'make install' doesn't 'mkdir -p' the subdirs
|
||||
if use efi; then
|
||||
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
|
||||
fi
|
||||
|
||||
xen_make DESTDIR="${D}" -C xen install
|
||||
|
||||
# make install likes to throw in some extra EFI bits if it built
|
||||
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide:"
|
||||
elog " https://wiki.gentoo.org/wiki/Xen"
|
||||
|
||||
use efi && einfo "The efi executable is installed in /boot/efi/gentoo"
|
||||
|
||||
ewarn
|
||||
ewarn "Xen 4.12+ changed the default scheduler to credit2 which can cause"
|
||||
ewarn "domU lockups on multi-cpu systems. The legacy credit scheduler seems"
|
||||
ewarn "to work fine."
|
||||
ewarn
|
||||
ewarn "Add sched=credit to xen command line options to use the legacy scheduler."
|
||||
ewarn
|
||||
ewarn "https://wiki.gentoo.org/wiki/Xen#Xen_domU_hanging_with_Xen_4.12.2B"
|
||||
}
|
@ -1,174 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..11} )
|
||||
|
||||
inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
|
||||
SRC_URI=""
|
||||
else
|
||||
KEYWORDS="~amd64 ~arm -x86"
|
||||
|
||||
XEN_GENTOO_PATCHSET_NUM=2
|
||||
XEN_GENTOO_PATCHSET_BASE=4.16.1
|
||||
XEN_PRE_PATCHSET_NUM=
|
||||
XEN_PRE_VERSION_BASE=
|
||||
|
||||
XEN_BASE_PV="${PV}"
|
||||
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
|
||||
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
|
||||
fi
|
||||
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz"
|
||||
|
||||
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
|
||||
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
|
||||
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
|
||||
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
|
||||
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
|
||||
fi
|
||||
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
|
||||
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
|
||||
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
|
||||
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
|
||||
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
|
||||
fi
|
||||
fi
|
||||
|
||||
DESCRIPTION="The Xen virtual machine monitor"
|
||||
HOMEPAGE="https://xenproject.org"
|
||||
|
||||
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="+boot-symlinks debug efi flask"
|
||||
REQUIRED_USE="arm? ( debug )"
|
||||
|
||||
DEPEND="${PYTHON_DEPS}
|
||||
efi? ( >=sys-devel/binutils-2.22[multitarget] )
|
||||
!efi? ( >=sys-devel/binutils-2.22 )
|
||||
flask? ( sys-apps/checkpolicy )"
|
||||
RDEPEND=""
|
||||
PDEPEND="~app-emulation/xen-tools-${PV}"
|
||||
|
||||
# no tests are available for the hypervisor
|
||||
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
|
||||
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
|
||||
RESTRICT="test splitdebug strip"
|
||||
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="boot/xen-syms-${PV}"
|
||||
|
||||
pkg_setup() {
|
||||
python-any-r1_pkg_setup
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]]; then
|
||||
if use amd64; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
|
||||
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
|
||||
fi
|
||||
|
||||
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
|
||||
eapply "${XEN_GENTOO_PATCHES_DIR}"
|
||||
fi
|
||||
|
||||
# Symlinks do not work on fat32 volumes # 829765
|
||||
if ! use boot-symlinks || use efi; then
|
||||
eapply "${XEN_GENTOO_PATCHES_DIR}"/no-boot-symlinks/${PN}-4.16-no-symlinks.patch
|
||||
fi
|
||||
|
||||
# Workaround new gcc-11 options
|
||||
sed -e '/^CFLAGS/s/-Werror//g' -i xen/Makefile || die
|
||||
|
||||
# Drop .config
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
if use efi; then
|
||||
export EFI_VENDOR="gentoo"
|
||||
export EFI_MOUNTPOINT="/boot"
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
xen_make() {
|
||||
# Setting clang to either 'y' or 'n' tells Xen's build system
|
||||
# whether or not clang is used.
|
||||
local clang=n
|
||||
if tc-is-clang; then
|
||||
clang=y
|
||||
fi
|
||||
|
||||
# Send raw LDFLAGS so that --as-needed works
|
||||
emake \
|
||||
V=1 \
|
||||
LDFLAGS="$(raw-ldflags)" \
|
||||
HOSTCC="$(tc-getBUILD_CC)" \
|
||||
HOSTCXX="$(tc-getBUILD_CXX)" \
|
||||
CC="$(tc-getCC)" \
|
||||
CXX="$(tc-getCXX)" \
|
||||
LD="$(tc-getLD)" \
|
||||
AR="$(tc-getAR)" \
|
||||
OBJDUMP="$(tc-getOBJDUMP)" \
|
||||
RANLIB="$(tc-getRANLIB)" \
|
||||
clang="${clang}" \
|
||||
"$@"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
cd xen || die
|
||||
|
||||
touch gentoo-config || die
|
||||
if use arm; then
|
||||
echo "CONFIG_EARLY_PRINTK=sun7i" >> gentoo-config || die
|
||||
fi
|
||||
if use debug; then
|
||||
cat <<-EOF >> gentoo-config || die
|
||||
CONFIG_DEBUG=y
|
||||
CONFIG_CRASH_DEBUG=y
|
||||
EOF
|
||||
fi
|
||||
if use flask; then
|
||||
echo "CONFIG_XSM=y" >> gentoo-config || die
|
||||
fi
|
||||
|
||||
# remove flags
|
||||
unset CFLAGS
|
||||
|
||||
tc-ld-disable-gold # Bug 700374
|
||||
|
||||
xen_make KCONFIG_ALLCONFIG=gentoo-config alldefconfig
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
xen_make -C xen
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# The 'make install' doesn't 'mkdir -p' the subdirs
|
||||
if use efi; then
|
||||
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
|
||||
fi
|
||||
|
||||
xen_make DESTDIR="${D}" -C xen install
|
||||
|
||||
# make install likes to throw in some extra EFI bits if it built
|
||||
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,2 +1,3 @@
|
||||
DIST libpaper-2.0.0.tar.gz 1221217 BLAKE2B ef2c08ff7dc537734d080a29560a711b196b05a3b0c4b375c8dc73d4dd9588156d325d233e27940fac96a18dfa6bf523128b53eb4c7098e561aa6054efb88408 SHA512 ca5c79969a8c5d56322a6993917d5aa47089bb396a144edd0d9040b0bdde78c8fb59468a3d4063ae1fb323a1b23fb28169616d153de65f9085351b9c9d47f8c0
|
||||
DIST libpaper-2.0.1.tar.gz 1229250 BLAKE2B 67730d6783d8ab9c2f837f8f477ab8ea04be7df2b2f419e81d57834c86bfcdd373ecc29cbea51fee06ca102ea12c18646f96caafe7b7cc53580153d01873a329 SHA512 ccc77e2f7805e7e5f6b3e96acffa9aeb2854a21acbdbb40947251a6a8dca6f9d97db0c8e2859d2056d3b60b06200ef50d9cccae58f961ff77f234ad1ab3c32dc
|
||||
DIST libpaper_1.1.28.tar.gz 42356 BLAKE2B 48c4a28c6ff01bd91e257b6b306e787e5c6112052cff09bdb501d1cc4ddd10964c3588942098a6092d5a44391dfb22e10d5147d4c5012497f473473129ff7422 SHA512 3bf6ebb0af89931d2f72ea4a09a7fa958b2facda5f238983ec7bac39652e08614b33f0de3af74a03457b2a4203eee4950bf18a4b726e79aa64093ace6a1fb0bc
|
||||
|
@ -0,0 +1,34 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Library for handling paper characteristics"
|
||||
HOMEPAGE="https://github.com/rrthomas/libpaper"
|
||||
SRC_URI="https://github.com/rrthomas/libpaper/releases/download/v${PV}/${P}.tar.gz"
|
||||
|
||||
# See README.
|
||||
# paperspecs is public-domain
|
||||
LICENSE="LGPL-2.1+ GPL-2 public-domain"
|
||||
SLOT="0/$(ver_cut 1)"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
|
||||
src_configure() {
|
||||
econf --enable-relocatable
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
|
||||
dodir /etc
|
||||
(paperconf 2>/dev/null || echo a4) > "${ED}"/etc/papersize \
|
||||
|| die "papersize config failed"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -z ${REPLACING_VERSIONS} ]] ; then
|
||||
elog "Run e.g. \"paperconfig -p letter\" as root to use letter-pagesizes"
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,95 +0,0 @@
|
||||
--- a/src/KXLsound.c
|
||||
+++ b/src/KXLsound.c
|
||||
@@ -4,6 +4,9 @@
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/time.h>
|
||||
#include <linux/soundcard.h>
|
||||
+#include <stdlib.h>
|
||||
+#include <errno.h>
|
||||
+#include <string.h>
|
||||
#include "KXL.h"
|
||||
|
||||
#define MIN(a, b) (((a) < (b)) ? (a) : (b))
|
||||
@@ -22,7 +24,7 @@
|
||||
struct {
|
||||
Uint16 ListCnt;
|
||||
Sint32 ID;
|
||||
- Sint32 Pipe[2];
|
||||
+ int Pipe[2];
|
||||
Sint32 Device;
|
||||
Uint16 PlayCnt;
|
||||
KXL_SoundControl PlaySound[MAX_SOUNDS_PLAYING];
|
||||
@@ -242,11 +244,19 @@
|
||||
KXL_SoundOk = False;
|
||||
|
||||
KXL_LoadSoundData(path, fname);
|
||||
- // device check
|
||||
- if ((KXL_SoundData.Device = open("/dev/dsp", O_WRONLY)) == -1) {
|
||||
- fprintf(stderr, "KXL error message\nnot found sound card\n");
|
||||
+ // Open the sound device in non-blocking mode, because ALSA's OSS
|
||||
+ // emulation and some broken OSS drivers would make a blocking call
|
||||
+ // wait forever until the device is available. Since this breaks the
|
||||
+ // OSS spec, we immediately put it back to blocking mode if the
|
||||
+ // operation was successful.
|
||||
+ KXL_SoundData.Device = open("/dev/dsp", O_WRONLY|O_NDELAY);
|
||||
+ if (KXL_SoundData.Device < 0) {
|
||||
+ fprintf(stderr, "KXL error message\ncould not open sound card (%s)\n",
|
||||
+ strerror(errno));
|
||||
return;
|
||||
}
|
||||
+ fcntl( KXL_SoundData.Device, F_SETFL,
|
||||
+ fcntl( KXL_SoundData.Device, F_GETFL ) &~ FNDELAY );
|
||||
// create pipe
|
||||
if (pipe(KXL_SoundData.Pipe) < 0) {
|
||||
fprintf(stderr, "KXL error message\npipe error\n");
|
||||
--- a/src/KXL.h
|
||||
+++ b/src/KXL.h
|
||||
@@ -205,6 +205,7 @@
|
||||
KXL_Frame *Frame; // Pointer of frame structure
|
||||
GC FontGC; // GC of font
|
||||
XFontStruct *WinFont; // Pointer of font structrue
|
||||
+ Bool DetectAutoRepeat; // Does the server have detectable auto repeat
|
||||
} KXL_Window;
|
||||
// RGBE palette
|
||||
typedef struct {
|
||||
--- a/src/KXLimage.c
|
||||
+++ b/src/KXLimage.c
|
||||
@@ -1,4 +1,5 @@
|
||||
#include <stdio.h>
|
||||
+#include <stdlib.h>
|
||||
#include "KXL.h"
|
||||
|
||||
extern KXL_Window *KXL_Root;
|
||||
--- a/src/KXLvisual.c
|
||||
+++ b/src/KXLvisual.c
|
||||
@@ -1,4 +1,6 @@
|
||||
#include <stdio.h>
|
||||
+#include <stdlib.h>
|
||||
+#include <string.h>
|
||||
#include "KXL.h"
|
||||
|
||||
//================================================================
|
||||
@@ -364,7 +366,11 @@
|
||||
KXL_ReSizeFrame(w, h);
|
||||
KXL_Clear_Frame(0, 0, w, h);
|
||||
// Auto repeat off
|
||||
- XAutoRepeatOff(KXL_Root->Display);
|
||||
+ XkbSetDetectableAutoRepeat(KXL_Root->Display, True,
|
||||
+ &KXL_Root->DetectAutoRepeat);
|
||||
+ if(!KXL_Root->DetectAutoRepeat) {
|
||||
+ XAutoRepeatOff(KXL_Root->Display);
|
||||
+ }
|
||||
}
|
||||
|
||||
//==============================================================
|
||||
@@ -377,7 +383,9 @@
|
||||
XFreeGC(KXL_Root->Display, KXL_Root->Frame->Gc);
|
||||
KXL_Free(KXL_Root->Frame);
|
||||
// Auto repeat on
|
||||
- XAutoRepeatOn(KXL_Root->Display);
|
||||
+ if(!KXL_Root->DetectAutoRepeat) {
|
||||
+ XAutoRepeatOn(KXL_Root->Display);
|
||||
+ }
|
||||
// Delete font
|
||||
XFreeGC(KXL_Root->Display, KXL_Root->FontGC);
|
||||
// Delete window
|
@ -1,9 +0,0 @@
|
||||
Get rid of aclocal warning:
|
||||
/usr/share/aclocal/KXL.m4:6: warning: underquoted definition of AM_PATH_KXL
|
||||
--- a/KXL.m4
|
||||
+++ b/KXL.m4
|
||||
@@ -5,3 +5,3 @@
|
||||
dnl
|
||||
-AC_DEFUN(AM_PATH_KXL,
|
||||
+AC_DEFUN([AM_PATH_KXL],
|
||||
[dnl
|
Binary file not shown.
Binary file not shown.
@ -1,56 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
MY_PV="${PV:4:2}.${PV:6}"
|
||||
MY_PV="${PV:0:4}.${MY_PV//0}"
|
||||
JAVA_PKG_IUSE="doc source"
|
||||
MAVEN_ID="net.java.dev.msv:msv-core:2013.6.1"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
DESCRIPTION="Multi-Schema XML Validator, a Java tool for validating XML documents"
|
||||
HOMEPAGE="https://msv.java.net/"
|
||||
SRC_URI="https://search.maven.org/remotecontent?filepath=net/java/dev/${PN}/${PN}-core/${MY_PV}/${PN}-core-${MY_PV}-sources.jar"
|
||||
|
||||
LICENSE="BSD Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm arm64 ppc64 x86"
|
||||
|
||||
CP_DEPEND="
|
||||
dev-java/iso-relax:0
|
||||
dev-java/relaxng-datatype:0
|
||||
dev-java/xml-commons-resolver:0
|
||||
dev-java/xsdlib:0"
|
||||
|
||||
DEPEND="${CP_DEPEND}
|
||||
>=virtual/jdk-1.8:*"
|
||||
|
||||
RDEPEND="${CP_DEPEND}
|
||||
dev-java/xerces:2
|
||||
>=virtual/jre-1.8:*"
|
||||
|
||||
BDEPEND="app-arch/unzip"
|
||||
|
||||
JAVAC_ARGS="-XDignore.symbol.file"
|
||||
JAVA_SRC_DIR="."
|
||||
JAVA_RESOURCE_DIRS="res"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
mkdir "res" || die
|
||||
cp -r "com" "res" || die
|
||||
|
||||
# The only resources to have are '*.properties'
|
||||
find res -type f ! -name '*.properties' -exec rm -rf {} + || die
|
||||
|
||||
sed -e '/resolver.tools.CatalogResolver/s/com.sun.org.apache.xml.internal/org.apache.xml/' \
|
||||
-i com/sun/msv/driver/textui/Driver.java || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg-simple_src_install
|
||||
java-pkg_register-dependency xerces-2
|
||||
java-pkg_dolauncher "${PN}" --main com.sun.msv.driver.textui.Driver
|
||||
}
|
@ -1,5 +1,2 @@
|
||||
DIST protobuf-21.8.tar.gz 5110670 BLAKE2B 3c1b0c857a86e9586481d63896341d0cb11290dbd710d87a6f7889d34f5f262abe2986a29ed19a730f8fa5df0b5c62d77a4db6aa415a72b239f7483ae8d6380c SHA512 cb17be759311e91172801add1f88fe7a0291b547170c40d2e3303f5c248570dddeade96bd48740edd628215f55269c97475e2f4c4a41c50f1018d525f52036cb
|
||||
DIST protobuf-3.19.3.tar.gz 5293258 BLAKE2B c05b70ffca97f7166ea6a511a36907eed125edf1ebf17f908718221d9b851be84dfb2b1b39973f2faf35f6ade630e6ba4f9e8b91b8fbc922c5db97079323ee6e SHA512 1c003e7cbc8eae6a038f46e688b401ee202ba47f502561e909df79770f6e8b7daf3dc1ccc727e31bfb5b52cd04cb4fef7d2d2a28d650c13f396872ad4aa076c6
|
||||
DIST protobuf-3.19.6.tar.gz 5299501 BLAKE2B 3121f76b95f83c5309ce49ce296b738eff7be9d3a5093c564fbe2339fb5f3729e406f1b44bfcc05feb0d31ab63838bb4f54685017977c73a33b91215a6776072 SHA512 8f92242f2be8e1bbfba41341c87709ad91ad83b8b3e3df88bb430411541d3399295f49291fd52b50e3487b0fce33181cb4d175685fd25aac72adfaee26a612d4
|
||||
DIST protobuf-3.20.1.tar.gz 5368262 BLAKE2B 1ce1aef2e4c4f3ea4863629cc75d89fe17d0c7ac0c342ac641c787456fd4a12756c2892a27ddadedc94a7201494ec84566638ce33a03cb0c867b04e9eee0edb3 SHA512 fde3eb9f13946887ddfd87df428c5615ad09aaf191e4478b24e98e5e13231feeff4e70b4ca6a2ff7d9b9b2e2c60bc1d5479526edeafa78f9a8ed3bef2e0bacb0
|
||||
DIST protobuf-3.20.3.tar.gz 5374320 BLAKE2B fb51f2a0ecf5b83235f5252051f8192ae377bb7a5e030c3f3e9435ccde25919c059830cf476e840fa6c970928a32c0075e213c9d5d4d9e3d3b24732c39a9fbfa SHA512 01d6703bdbe769a1200ee6e4ebcdcb99688ec21f576988c60d82ec36e0822820fb245fcb4ca53293143d53e666d748b5a0c6937bc659fb3cdc4cd9b05ed12a1c
|
||||
DIST protobuf-3.21.9.tar.gz 5112917 BLAKE2B 1788652e89ccb77feeaf2a3f4ce8e8554b29c1bccf3f58d79c66f3e5f080659a9b7eb4f2b4a07ce640549749f376deaf725d20e19674348b5bce9168aad5d095 SHA512 d54843a4ed66edf6cab7262849216b909313d70e9758aa7f00d02902c576396f0a77bb224fe2ce408da37aefaf7da9f568dea7bda4e397fc1e3666c8aaf9cb0f
|
||||
|
@ -1,102 +0,0 @@
|
||||
# Copyright 2008-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc source test"
|
||||
MAVEN_ID="com.google.protobuf:${PN}:${PV}"
|
||||
# Tests not enabled, depend on com.google.truth which is not packaged
|
||||
# https://github.com/protocolbuffers/protobuf/blob/v3.19.6/java/core/pom.xml#L35-L40
|
||||
# JAVA_TESTING_FRAMEWORKS="junit-4"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
PARENT_PN="${PN/-java/}"
|
||||
PARENT_PV="${PV}"
|
||||
PARENT_P="${PARENT_PN}-${PARENT_PV}"
|
||||
|
||||
if [[ "${PV}" == *9999 ]]; then
|
||||
inherit git-r3
|
||||
|
||||
EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf.git"
|
||||
EGIT_SUBMODULES=()
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/${PARENT_P}"
|
||||
else
|
||||
SRC_URI="
|
||||
https://github.com/protocolbuffers/protobuf/archive/v${PARENT_PV}.tar.gz
|
||||
-> ${PARENT_P}.tar.gz
|
||||
"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Google's Protocol Buffers - Java bindings"
|
||||
HOMEPAGE="
|
||||
https://developers.google.com/protocol-buffers/
|
||||
"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/30"
|
||||
|
||||
S="${WORKDIR}/${PARENT_P}/java"
|
||||
|
||||
BDEPEND="
|
||||
dev-libs/protobuf:${SLOT}
|
||||
"
|
||||
DEPEND="
|
||||
>=virtual/jdk-1.8:*
|
||||
test? (
|
||||
dev-java/guava:0
|
||||
dev-java/mockito:4
|
||||
)
|
||||
"
|
||||
RDEPEND="
|
||||
>=virtual/jre-1.8:*
|
||||
"
|
||||
|
||||
JAVA_AUTOMATIC_MODULE_NAME="com.google.protobuf"
|
||||
JAVA_JAR_FILENAME="protobuf.jar"
|
||||
JAVA_RESOURCE_DIRS="core/src/main/resources"
|
||||
JAVA_SRC_DIR="core/src/main/java"
|
||||
|
||||
JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4,mockito-4"
|
||||
JAVA_TEST_RESOURCE_DIRS="../src"
|
||||
JAVA_TEST_SRC_DIR="core/src/test/java"
|
||||
|
||||
# Same than PATCHES but from repository's root directory,
|
||||
# please see function `src_prepare` below.
|
||||
# Simplier for users IMHO.
|
||||
PARENT_PATCHES=(
|
||||
)
|
||||
|
||||
# Here for patches within "java/" subdirectory.
|
||||
PATCHES=(
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
pushd "${WORKDIR}/${PARENT_P}" > /dev/null || die
|
||||
[[ -n "${PARENT_PATCHES[@]}" ]] && eapply "${PARENT_PATCHES[@]}"
|
||||
eapply_user
|
||||
popd > /dev/null || die
|
||||
|
||||
# Remove bundled jars
|
||||
java-pkg_clean
|
||||
|
||||
java-pkg-2_src_prepare
|
||||
|
||||
# There is also compiler/plugin, but not in this list because in a subdirectory
|
||||
core_protos=( any api descriptor duration empty field_mask source_context struct timestamp type wrappers )
|
||||
|
||||
# Copy resources from ../src/google/protobuf according to
|
||||
# https://github.com/protocolbuffers/protobuf/blob/v3.19.6/java/core/pom.xml#L45-L61
|
||||
mkdir -p "${JAVA_RESOURCE_DIRS}/google/protobuf/compiler" || die
|
||||
cp "../src/google/protobuf/${core_protos[@]}.proto" \
|
||||
"${JAVA_RESOURCE_DIRS}/google/protobuf" || die
|
||||
cp {../src,"${JAVA_RESOURCE_DIRS}"}/google/protobuf/compiler/plugin.proto || die
|
||||
|
||||
# Generate 146 .java files according to
|
||||
# https://github.com/protocolbuffers/protobuf/blob/v3.19.6/java/core/generate-sources-build.xml
|
||||
for proto in "${core_protos[@]}" compiler/plugin; do
|
||||
"${BROOT}/usr/bin/protoc" \
|
||||
--java_out="${JAVA_SRC_DIR}" -I../src ../src/google/protobuf/"${proto}".proto || die
|
||||
done
|
||||
}
|
@ -1,54 +0,0 @@
|
||||
# Copyright 2008-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc source"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
if [[ "${PV}" == "9999" ]]; then
|
||||
inherit git-r3
|
||||
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/protobuf-${PV}"
|
||||
EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
|
||||
EGIT_SUBMODULES=()
|
||||
fi
|
||||
|
||||
DESCRIPTION="Google's Protocol Buffers - Java bindings"
|
||||
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
|
||||
if [[ "${PV}" == "9999" ]]; then
|
||||
SRC_URI=""
|
||||
else
|
||||
SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> protobuf-${PV}.tar.gz"
|
||||
fi
|
||||
S="${WORKDIR}/protobuf-${PV}/java"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/31"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
|
||||
COMMON_DEPEND=">=virtual/jdk-1.8:*"
|
||||
BDEPEND="
|
||||
~dev-libs/protobuf-${PV}
|
||||
${COMMON_DEPEND}
|
||||
"
|
||||
DEPEND="${COMMON_DEPEND}"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
pushd "${WORKDIR}/protobuf-${PV}" > /dev/null || die
|
||||
eapply_user
|
||||
popd > /dev/null || die
|
||||
|
||||
java-pkg-2_src_prepare
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
"${BROOT}/usr/bin/protoc" --java_out=core/src/main/java -I../src ../src/google/protobuf/descriptor.proto || die
|
||||
JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_install
|
||||
}
|
@ -1,102 +0,0 @@
|
||||
# Copyright 2008-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc source test"
|
||||
MAVEN_ID="com.google.protobuf:${PN}:${PV}"
|
||||
# Tests not enabled, depend on com.google.truth which is not packaged
|
||||
# https://github.com/protocolbuffers/protobuf/blob/v3.20.3/java/core/pom.xml#L35-L40
|
||||
# JAVA_TESTING_FRAMEWORKS="junit-4"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
PARENT_PN="${PN/-java/}"
|
||||
PARENT_PV="${PV}"
|
||||
PARENT_P="${PARENT_PN}-${PARENT_PV}"
|
||||
|
||||
if [[ "${PV}" == *9999 ]]; then
|
||||
inherit git-r3
|
||||
|
||||
EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf.git"
|
||||
EGIT_SUBMODULES=()
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/${PARENT_P}"
|
||||
else
|
||||
SRC_URI="
|
||||
https://github.com/protocolbuffers/protobuf/archive/v${PARENT_PV}.tar.gz
|
||||
-> ${PARENT_P}.tar.gz
|
||||
"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Google's Protocol Buffers - Java bindings"
|
||||
HOMEPAGE="
|
||||
https://developers.google.com/protocol-buffers/
|
||||
"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/31"
|
||||
|
||||
S="${WORKDIR}/${PARENT_P}/java"
|
||||
|
||||
BDEPEND="
|
||||
dev-libs/protobuf:${SLOT}
|
||||
"
|
||||
DEPEND="
|
||||
>=virtual/jdk-1.8:*
|
||||
test? (
|
||||
dev-java/guava:0
|
||||
dev-java/mockito:4
|
||||
)
|
||||
"
|
||||
RDEPEND="
|
||||
>=virtual/jre-1.8:*
|
||||
"
|
||||
|
||||
JAVA_AUTOMATIC_MODULE_NAME="com.google.protobuf"
|
||||
JAVA_JAR_FILENAME="protobuf.jar"
|
||||
JAVA_RESOURCE_DIRS="core/src/main/resources"
|
||||
JAVA_SRC_DIR="core/src/main/java"
|
||||
|
||||
JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4,mockito-4"
|
||||
JAVA_TEST_RESOURCE_DIRS="../src"
|
||||
JAVA_TEST_SRC_DIR="core/src/test/java"
|
||||
|
||||
# Same than PATCHES but from repository's root directory,
|
||||
# please see function `src_prepare` below.
|
||||
# Simplier for users IMHO.
|
||||
PARENT_PATCHES=(
|
||||
)
|
||||
|
||||
# Here for patches within "java/" subdirectory.
|
||||
PATCHES=(
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
pushd "${WORKDIR}/${PARENT_P}" > /dev/null || die
|
||||
[[ -n "${PARENT_PATCHES[@]}" ]] && eapply "${PARENT_PATCHES[@]}"
|
||||
eapply_user
|
||||
popd > /dev/null || die
|
||||
|
||||
# Remove bundled jars
|
||||
java-pkg_clean
|
||||
|
||||
java-pkg-2_src_prepare
|
||||
|
||||
# There is also compiler/plugin, but not in this list because in a subdirectory
|
||||
core_protos=( any api descriptor duration empty field_mask source_context struct timestamp type wrappers )
|
||||
|
||||
# Copy resources from ../src/google/protobuf according to
|
||||
# https://github.com/protocolbuffers/protobuf/blob/v3.20.2/java/core/pom.xml#L45-L61
|
||||
mkdir -p "${JAVA_RESOURCE_DIRS}/google/protobuf/compiler" || die
|
||||
cp "../src/google/protobuf/${core_protos[@]}.proto" \
|
||||
"${JAVA_RESOURCE_DIRS}/google/protobuf" || die
|
||||
cp {../src,"${JAVA_RESOURCE_DIRS}"}/google/protobuf/compiler/plugin.proto || die
|
||||
|
||||
# Generate 146 .java files according to
|
||||
# https://github.com/protocolbuffers/protobuf/blob/v3.20.3/java/core/generate-sources-build.xml
|
||||
for proto in "${core_protos[@]}" compiler/plugin; do
|
||||
"${BROOT}/usr/bin/protoc" \
|
||||
--java_out="${JAVA_SRC_DIR}" -I../src ../src/google/protobuf/"${proto}".proto || die
|
||||
done
|
||||
}
|
@ -1,102 +0,0 @@
|
||||
# Copyright 2008-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc source test"
|
||||
MAVEN_ID="com.google.protobuf:${PN}:${PV}"
|
||||
# Tests not enabled, depend on com.google.truth which is not packaged
|
||||
# https://github.com/protocolbuffers/protobuf/blob/v21.7/java/core/pom.xml#L35-L40
|
||||
# JAVA_TESTING_FRAMEWORKS="junit-4"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
PARENT_PN="${PN/-java/}"
|
||||
PARENT_PV="$(ver_cut 2-)"
|
||||
PARENT_P="${PARENT_PN}-${PARENT_PV}"
|
||||
|
||||
if [[ "${PV}" == *9999 ]]; then
|
||||
inherit git-r3
|
||||
|
||||
EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf.git"
|
||||
EGIT_SUBMODULES=()
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/${PARENT_P}"
|
||||
else
|
||||
SRC_URI="
|
||||
https://github.com/protocolbuffers/protobuf/archive/v${PARENT_PV}.tar.gz
|
||||
-> ${PARENT_P}.tar.gz
|
||||
"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Google's Protocol Buffers - Java bindings"
|
||||
HOMEPAGE="
|
||||
https://developers.google.com/protocol-buffers/
|
||||
"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/32"
|
||||
|
||||
S="${WORKDIR}/${PARENT_P}/java"
|
||||
|
||||
BDEPEND="
|
||||
dev-libs/protobuf:${SLOT}
|
||||
"
|
||||
DEPEND="
|
||||
>=virtual/jdk-1.8:*
|
||||
test? (
|
||||
dev-java/guava:0
|
||||
dev-java/mockito:4
|
||||
)
|
||||
"
|
||||
RDEPEND="
|
||||
>=virtual/jre-1.8:*
|
||||
"
|
||||
|
||||
JAVA_AUTOMATIC_MODULE_NAME="com.google.protobuf"
|
||||
JAVA_JAR_FILENAME="protobuf.jar"
|
||||
JAVA_RESOURCE_DIRS="core/src/main/resources"
|
||||
JAVA_SRC_DIR="core/src/main/java"
|
||||
|
||||
JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4,mockito-4"
|
||||
JAVA_TEST_RESOURCE_DIRS="../src"
|
||||
JAVA_TEST_SRC_DIR="core/src/test/java"
|
||||
|
||||
# Same than PATCHES but from repository's root directory,
|
||||
# please see function `src_prepare` below.
|
||||
# Simplier for users IMHO.
|
||||
PARENT_PATCHES=(
|
||||
)
|
||||
|
||||
# Here for patches within "java/" subdirectory.
|
||||
PATCHES=(
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
pushd "${WORKDIR}/${PARENT_P}" > /dev/null || die
|
||||
[[ -n "${PARENT_PATCHES[@]}" ]] && eapply "${PARENT_PATCHES[@]}"
|
||||
eapply_user
|
||||
popd > /dev/null || die
|
||||
|
||||
# Remove bundled jars
|
||||
java-pkg_clean
|
||||
|
||||
java-pkg-2_src_prepare
|
||||
|
||||
# There is also compiler/plugin, but not in this list because in a subdirectory
|
||||
core_protos=( any api descriptor duration empty field_mask source_context struct timestamp type wrappers )
|
||||
|
||||
# Copy resources from ../src/google/protobuf according to
|
||||
# https://github.com/protocolbuffers/protobuf/blob/v21.7/java/core/pom.xml#L45-L61
|
||||
mkdir -p "${JAVA_RESOURCE_DIRS}/google/protobuf/compiler" || die
|
||||
cp "../src/google/protobuf/${core_protos[@]}.proto" \
|
||||
"${JAVA_RESOURCE_DIRS}/google/protobuf" || die
|
||||
cp {../src,"${JAVA_RESOURCE_DIRS}"}/google/protobuf/compiler/plugin.proto || die
|
||||
|
||||
# Generate 146 .java files according to
|
||||
# https://github.com/protocolbuffers/protobuf/blob/v21.7/java/core/generate-sources-build.xml
|
||||
for proto in "${core_protos[@]}" compiler/plugin; do
|
||||
"${BROOT}/usr/bin/protoc" \
|
||||
--java_out="${JAVA_SRC_DIR}" -I../src ../src/google/protobuf/"${proto}".proto || die
|
||||
done
|
||||
}
|
@ -0,0 +1,60 @@
|
||||
# Copyright 2008-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc source test"
|
||||
MAVEN_ID="com.google.protobuf:protobuf-java:3.21.9"
|
||||
# Tests not enabled, depend on com.google.truth which is not packaged
|
||||
# https://github.com/protocolbuffers/protobuf/blob/v3.21.6/java/core/pom.xml#L35-L39"
|
||||
# JAVA_TESTING_FRAMEWORKS="junit-4"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
DESCRIPTION="Google's Protocol Buffers - Java bindings"
|
||||
HOMEPAGE="https://developers.google.com/protocol-buffers/"
|
||||
SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> protobuf-${PV}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
|
||||
DEPEND="
|
||||
>=virtual/jdk-1.8:*
|
||||
test? (
|
||||
dev-java/guava:0
|
||||
dev-java/mockito:4
|
||||
)
|
||||
"
|
||||
RDEPEND=">=virtual/jre-1.8:*"
|
||||
|
||||
BDEPEND="dev-libs/protobuf:0"
|
||||
|
||||
S="${WORKDIR}/protobuf-${PV}/java"
|
||||
|
||||
JAVA_AUTOMATIC_MODULE_NAME="com.google.protobuf"
|
||||
JAVA_JAR_FILENAME="protobuf.jar"
|
||||
JAVA_RESOURCE_DIRS="core/src/main/resources"
|
||||
JAVA_SRC_DIR="core/src/main/java"
|
||||
|
||||
JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4,mockito-4"
|
||||
JAVA_TEST_RESOURCE_DIRS="../src"
|
||||
JAVA_TEST_SRC_DIR="core/src/test/java"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
java-pkg-2_src_prepare
|
||||
# Copy resources from ../src/google/protobuf according to
|
||||
# https://github.com/protocolbuffers/protobuf/blob/v3.21.6/java/core/pom.xml#L45-L61
|
||||
mkdir -p core/src/main/resources/google/protobuf/compiler || die
|
||||
cp {../src,core/src/main/resources}/google/protobuf/compiler/plugin.proto || die
|
||||
cp ../src/google/protobuf/{any,api,descriptor,duration,empty,field_mask,source_context,struct,timestamp,type,wrappers}.proto \
|
||||
"${JAVA_RESOURCE_DIRS}/google/protobuf" || die
|
||||
|
||||
# Generate 146 .java files according to
|
||||
# https://github.com/protocolbuffers/protobuf/blob/v3.21.6/java/core/generate-sources-build.xml
|
||||
for proto in any api compiler/plugin descriptor duration empty field_mask source_context struct timestamp type wrappers; do
|
||||
"${BROOT}/usr/bin/protoc" \
|
||||
--java_out=core/src/main/java -I../src ../src/google/protobuf/$proto.proto || die
|
||||
done
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST qdox-1.12.1.tar.gz 519833 BLAKE2B 83a732f1582b714cf943ede61bacc5216804c00cfbb642a479afb74739564f4fdbcd923dd7cb84a9626a97c5ad0a0f04895e0ae68252891cb25299e1fe1c9c72 SHA512 17ac933854ebd0560921805ea4339c151a7fd095bf8d50d5d71e656afda77ba30efac7926cfcc7543e4a8420b12d1eb75cdd305c50d1c28ad8cd6b0f4d95f5c5
|
||||
DIST qdox-2.0.1.tar.gz 528305 BLAKE2B ff2f4b59d650b93a466eae6cc69239b059f7786ea609c18c56414e7e849d711d5316664a376b2c2c6e0021a21e7577cc21c9f5cfd215c4af612100a4c81da758 SHA512 db9d9ed8e8cf38c74e35be493aebcca54ba9d2c43a92c066d1964777293ad3af8e3212fcb8c20e9453b93e9bbe868c988dab69f936e7df41450183ce385137fa
|
||||
|
@ -0,0 +1,102 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc source test"
|
||||
MAVEN_ID="com.thoughtworks.qdox:qdox:2.0.1"
|
||||
JAVA_TESTING_FRAMEWORKS="junit-4"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
DESCRIPTION="Parser for extracting class/interface/method definitions"
|
||||
HOMEPAGE="https://github.com/paul-hammant/qdox"
|
||||
SRC_URI="https://github.com/paul-hammant/qdox/archive/qdox-${PV}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="2"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~ppc-macos ~x64-macos"
|
||||
|
||||
DEPEND="
|
||||
dev-java/jflex:0
|
||||
>=virtual/jdk-1.8:*
|
||||
test? (
|
||||
dev-java/junit:4
|
||||
dev-java/mockito:0
|
||||
)
|
||||
"
|
||||
RDEPEND=">=virtual/jre-1.8:*"
|
||||
BDEPEND="dev-java/byaccj:0"
|
||||
|
||||
S="${WORKDIR}/qdox-${P}"
|
||||
|
||||
JAVA_AUTOMATIC_MODULE_NAME="com.thoughtworks.qdox"
|
||||
JAVA_SRC_DIR="src/main/java"
|
||||
JAVA_CLASSPATH_EXTRA="jflex"
|
||||
|
||||
JAVA_TEST_SRC_DIR="src/test/java"
|
||||
JAVA_TEST_RESOURCE_DIRS="src/test/resources"
|
||||
JAVA_TEST_GENTOO_CLASSPATH="
|
||||
junit-4
|
||||
mockito
|
||||
"
|
||||
|
||||
src_compile() {
|
||||
einfo "Running jflex"
|
||||
jflex src/grammar/lexer.flex src/grammar/commentlexer.flex \
|
||||
-d src/main/java/com/thoughtworks/qdox/parser/impl || die
|
||||
|
||||
einfo "Running byaccj for DefaultJavaCommentParser"
|
||||
byaccj -v \
|
||||
-Jnorun \
|
||||
-Jnoconstruct \
|
||||
-Jclass=DefaultJavaCommentParser \
|
||||
-Jpackage=com.thoughtworks.qdox.parser.impl \
|
||||
src/grammar/commentparser.y || die
|
||||
|
||||
einfo "Running byaccj for Parser"
|
||||
byaccj -v \
|
||||
-Jnorun \
|
||||
-Jnoconstruct \
|
||||
-Jclass=Parser \
|
||||
-Jimplements=CommentHandler \
|
||||
-Jsemantic=Value \
|
||||
-Jpackage=com.thoughtworks.qdox.parser.impl \
|
||||
src/grammar/parser.y || die
|
||||
|
||||
mv Parser.java src/main/java/com/thoughtworks/qdox/parser/impl/ || die
|
||||
mv DefaultJavaCommentParser.java src/main/java/com/thoughtworks/qdox/parser/impl/ || die
|
||||
mv DefaultJavaCommentParserVal.java src/main/java/com/thoughtworks/qdox/parser/impl/ || die
|
||||
|
||||
einfo "Running java-pkg-simple_src_compile"
|
||||
java-pkg-simple_src_compile
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Too many tests fail with Java 17.
|
||||
local vm_version="$(java-config -g PROVIDES_VERSION)"
|
||||
if ver_test "${vm_version}" -ge 17 ; then
|
||||
einfo "Tests only for Java < 17"
|
||||
else
|
||||
einfo "Running tests"
|
||||
pushd src/test/java || die
|
||||
local JAVA_TEST_RUN_ONLY=$(find * \
|
||||
\( -wholename "**/*Test.java" \
|
||||
-o -name 'TestMultipleLevelGenericInheritance.java' \)\
|
||||
! -name "ClassLibraryBuilderTest.java" \
|
||||
! -name "JavaClassTest.java" \
|
||||
! -name "JavaConstructorTest.java" \
|
||||
! -name "JavaFieldTest.java" \
|
||||
! -name "JavaMethodTest.java" \
|
||||
! -name "JavaPackageTest.java" \
|
||||
! -name "JavaParameterTest.java" \
|
||||
! -name "JavaSourceTest.java" \
|
||||
! -name "JavaTypeTest.java" \
|
||||
! -name "AbstractDocletTagTest.java" \
|
||||
)
|
||||
popd
|
||||
JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
|
||||
JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
|
||||
java-pkg-simple_src_test
|
||||
fi
|
||||
}
|
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue