~q3cpma/portage-overlay

4e0f35cd2d392e2294deb1d1c4c82d9a39b833cf — q3cpma a month ago 2a3d524 master
Remove squishyball
Update RPCS3 and make it build for real
3 files changed, 114 insertions(+), 133 deletions(-)

A games-emulation/rpcs3/rpcs3-9999-r4.ebuild
D games-emulation/rpcs3/rpcs3-9999.ebuild
D media-sound/squishyball/squishyball-19645.ebuild
A games-emulation/rpcs3/rpcs3-9999-r4.ebuild => games-emulation/rpcs3/rpcs3-9999-r4.ebuild +114 -0
@@ 0,0 1,114 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

# TODO: properly unbundle flatbuffers

EAPI=7
PYTHON_COMPAT=( python3_{8..10} )

inherit cmake git-r3 python-single-r1

DESCRIPTION="PlayStation 3 emulator"
HOMEPAGE="https://rpcs3.net/"
EGIT_REPO_URI="https://github.com/RPCS3/rpcs3"
KEYWORDS=""

LICENSE="GPL-2"
SLOT="0"
IUSE="alsa joystick +llvm pulseaudio vulkan"

RDEPEND="
	>=dev-qt/qtcore-5.15.2
	>=dev-qt/qtdbus-5.15.2
	>=dev-qt/qtgui-5.15.2
	>=dev-qt/qtwidgets-5.15.2
	>=dev-qt/qtsvg-5.15.2
	alsa? ( media-libs/alsa-lib )
	sys-devel/gdb
	joystick? ( dev-libs/libevdev )
	media-libs/glew:0
	media-libs/libpng:*
	media-libs/openal
	media-video/ffmpeg
	pulseaudio? ( media-sound/pulseaudio )
	sys-libs/zlib
	virtual/opengl
	vulkan? ( media-libs/vulkan-loader )
	x11-libs/libX11
	>=dev-libs/pugixml-1.11
"

DEPEND="${RDEPEND}
	>=sys-devel/gcc-9
"

EGIT_SUBMODULES=(
	"*"
	"-3rdparty/FAudio"
	"-3rdparty/curl"
	"-3rdparty/ffmpeg"
	"-3rdparty/libpng"
	"-3rdparty/pugixml"
	"-3rdparty/zlib"
)

src_prepare() {
	default

	sed -i \
		-e '/find_program(CCACHE_FOUND/d' \
		CMakeLists.txt
	sed -i \
		-e 's/DEBUG|RELEASE|RELWITHDEBINFO|MINSIZEREL/DEBUG|RELEASE|RELWITHDEBINFO|MINSIZEREL|GENTOO/' \
		llvm/CMakeLists.txt
	sed -i \
		'/-Werror/ s/^/#/' \
		buildfiles/cmake/ConfigureCompiler.cmake

	cmake_src_prepare
}

src_configure() {
	# We can't use precompiled headers due to https://github.com/RPCS3/rpcs3/issues/8443
	local mycmakeargs=(
		-DUSE_NATIVE_INSTRUCTIONS=OFF
		-DWITH_LLVM=$(usex llvm ON OFF)
		-DUSE_ALSA=$(usex alsa ON OFF)
		-DUSE_DISCORD_RPC=OFF
		-DUSE_PULSE=$(usex pulseaudio ON OFF)
		-DUSE_FAUDIO=OFF
		-DUSE_LIBEVDEV=$(usex joystick ON OFF)
		-DUSE_VULKAN=$(usex vulkan ON OFF)
		-DUSE_PRECOMPILED_HEADERS=OFF
		-DUSE_SYSTEM_LIBPNG=ON
		-DUSE_SYSTEM_FFMPEG=ON
		-DUSE_SYSTEM_CURL=ON
		-DUSE_SYSTEM_PUGIXML=ON
		-DCMAKE_C_FLAGS="${CFLAGS}"
		-DCMAKE_C_FLAGS_GENTOO="${CFLAGS}"
		-DCMAKE_CXX_FLAGS="${CXXFLAGS}"
		-DCMAKE_CXX_FLAGS_GENTOO="${CXXFLAGS}"
		-DBUILD_SHARED_LIBS=OFF
	)
	# https://github.com/RPCS3/rpcs3/pull/8609
	if use vulkan; then
		mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Wayland=TRUE )
	fi

	cmake_src_configure
}

src_install() {
	cmake_src_install

	mv "${ED}"/usr/bin/rpcs3 "${ED}"/usr/bin/rpcs3.bin
	cat <<EOF > "${T}"/rpcs3
#!/bin/sh

# https://github.com/RPCS3/rpcs3/issues/7772
export QT_AUTO_SCREEN_SCALE_FACTOR=0

exec rpcs3.bin
EOF
	dobin "${T}"/rpcs3
}

D games-emulation/rpcs3/rpcs3-9999.ebuild => games-emulation/rpcs3/rpcs3-9999.ebuild +0 -88
@@ 1,88 0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# From pinkpieea's overlay

EAPI=6

inherit cmake-utils
#eutils pax-utils toolchain-funcs flag-o-matic

if [[ ${PV} == 9999 ]]
then
	EGIT_REPO_URI="https://github.com/RPCS3/rpcs3"
	inherit git-r3
else
	SRC_URI="https://github.com/RPCS3/rpcs3/archive/v${PV}.tar.gz"
	KEYWORDS="~amd64"
fi

DESCRIPTION="Very experimental PS3 emulator"
HOMEPAGE="https://rpcs3.net"

LICENSE="GPL-2"
SLOT="0"
IUSE="alsa gdb joystick +llvm pulseaudio vulkan"

RDEPEND="
	>=dev-qt/qtcore-5.10
	>=dev-qt/qtdbus-5.10
	>=dev-qt/qtgui-5.10
	>=dev-qt/qtwidgets-5.10
	alsa? ( media-libs/alsa-lib )
	gdb? ( sys-devel/gdb )
	joystick? ( dev-libs/libevdev )
	llvm? ( sys-devel/llvm )
	media-libs/glew:0
	media-libs/libpng:*
	media-libs/openal
	pulseaudio? ( media-sound/pulseaudio )
	sys-libs/zlib
	virtual/ffmpeg
	virtual/opengl
	vulkan? ( media-libs/vulkan-loader )
	x11-libs/libX11
"

DEPEND="${RDEPEND}
	>=sys-devel/gcc-5.1
"
EGIT_SUBMODULES=(
	"*"
	"-rpcs3-ffmpeg"
	"-llvm"
	"-libpng"
	"-rsx-debugger"
	"-3rdparty/zlib"
	"-Vulkan/Vulkan-LoaderAndValidationLayers"
)

#CC=clang
#CXX=clang++

src_prepare() {
	default

	sed -i -e '/find_program(CCACHE_FOUND/d' CMakeLists.txt

	cmake-utils_src_prepare
}

src_configure() {
	local mycmakeargs=(
		"-DUSE_SYSTEM_LIBPNG=ON"
		"-DUSE_SYSTEM_FFMPEG=ON"
		"-DUSE_VULKAN=$(usex vulkan ON OFF)"
		"-DUSE_ALSA=$(usex alsa ON OFF)"
		"-DUSE_PULSE=$(usex pulseaudio ON OFF)"
		"-DUSE_LIBEVDEV=$(usex joystick ON OFF)"
		"-DWITH_GDB=$(usex gdb ON OFF)"
		"-DWITHOUT_LLVM=$(usex llvm OFF ON)"
	)

	cmake-utils_src_configure
}

#pkg_postinst() {
	# Add pax markings for hardened systems
#	pax-mark -m "${EPREFIX}"/usr/bin/"${PN}"
#}

D media-sound/squishyball/squishyball-19645.ebuild => media-sound/squishyball/squishyball-19645.ebuild +0 -45
@@ 1,45 0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6
inherit autotools subversion

DESCRIPTION="Simple command-line utility for performing double-blind A/B, A/B/X or X/X/Y testing on the command line"
HOMEPAGE="https://svn.xiph.org/trunk/squishyball/"
ESVN_REPO_URI="https://svn.xiph.org/trunk/$PN"
ESVN_REVISION=$PV

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"

RDEPEND="media-libs/flac
media-libs/libao
media-libs/libvorbis
media-libs/opusfile
sys-libs/ncurses"

DEPEND="$RDEPEND
sys-devel/automake"

src_prepare()
{
	eautoreconf
	default
}

src_configure()
{
	./configure
}

src_compile()
{
	emake
}

src_install()
{
	dobin ${PN}
	doman ${PN}.1
}