Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
app-emulation/rpcs3::guru is masked but no keyword
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Unsupported Software
View previous topic :: View next topic  
Author Message
ritzmax72
Tux's lil' helper
Tux's lil' helper


Joined: 10 Aug 2014
Posts: 82

PostPosted: Tue Jul 11, 2023 8:15 pm    Post subject: app-emulation/rpcs3::guru is masked but no keyword Reply with quote

I don't know if this is good place to query about non-gentoo repos but...

rpcs3 from guru overlay has been masked but --autounmask-write does nothing.
Also, the ebuild does not seem to have any value in "KEYWORD" section.

How does one know if this is just masked regardless by gentoo team or there is a bug in ebuild making?

Code:

# Copyright 2021-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit cmake flag-o-matic git-r3 xdg

DESCRIPTION="PS3 emulator/debugger"
HOMEPAGE="https://rpcs3.net/"
EGIT_REPO_URI="https://github.com/RPCS3/rpcs3"
EGIT_SUBMODULES=( 'asmjit' 'llvm' '3rdparty/flatbuffers' '3rdparty/wolfssl'
   '3rdparty/SoundTouch/soundtouch' )
# Delete sources when ensuring yaml-cpp compiled with fexceptions
EGIT_SUBMODULES+=( '3rdparty/yaml-cpp' )

LICENSE="GPL-2"
SLOT="0"
KEYWORDS=""

DEPEND="alsa? ( media-libs/alsa-lib )
   faudio? ( app-emulation/faudio )
   pulseaudio? ( media-sound/pulseaudio )
   app-arch/p7zip
   dev-libs/hidapi
   dev-libs/libevdev
   dev-libs/pugixml
   dev-libs/xxhash
   media-libs/cubeb
   media-libs/glew
   media-libs/libpng
   media-libs/openal
   sys-libs/zlib"
#   dev-cpp/yaml-cpp
RDEPEND="${DEPEND}"
BDEPEND=""

IUSE="alsa discord faudio +llvm pulseaudio vulkan wayland"

src_unpack() {
   git clone https://github.com/intel/ittapi "${WORKDIR}"/ittapi
   git-r3_src_unpack
}

src_prepare() {
   append-cflags -DNDEBUG -Wno-error=stringop-truncation
   append-cppflags -DNDEBUG -Wno-error=stringop-truncation

   # Disable cache
   sed -i -e '/find_program(CCACHE_FOUND/d' -e '/set(.*_FLAGS/d' \
      CMakeLists.txt || die

   # Unbundle hidapi
   sed -i -e '/hidapi\.h/{s:":<hidapi/:;s/"/>/}' rpcs3/Input/hid_pad_handler.h || die
   sed -i -e '/hidapi/d' 3rdparty/CMakeLists.txt
   sed -i -e '1afind_package(PkgConfig REQUIRED)\npkg_check_modules(hidapi-hidraw REQUIRED hidapi-hidraw)' rpcs3/CMakeLists.txt
   sed -i -e 's/3rdparty::hidapi/hidapi-hidraw/' rpcs3/CMakeLists.txt rpcs3/rpcs3qt/CMakeLists.txt || die
   sed -i -e 's/hid_write_control/hid_write/' rpcs3/Input/dualsense_pad_handler.cpp rpcs3/Input/ds4_pad_handler.cpp || die

   # Move ittapi to the right place via cmake
   local regex='/GIT_EXECUTABLE} clone/s!(.*!(COMMAND mv '
   regex+="${WORKDIR}"
   regex+='/ittapi \${ITTAPI_SOURCE_DIR}!'
   sed -i -e "${regex}" \
      llvm/lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt || die ${regex}

   # Unbundle cubeb
   sed -i -e '/cubeb/d' 3rdparty/CMakeLists.txt || die
   sed -i -e '$afind_package(cubeb)\n' CMakeLists.txt || die
   sed -i -e 's/3rdparty::cubeb/cubeb/' rpcs3/Emu/CMakeLists.txt || die

   # Unbundle yaml-cpp: system yaml-cpp should be compiled with -fexceptions
   # sed -i -e '/yaml-cpp/d' 3rdparty/CMakeLists.txt || die
   # sed -i -e '$afind_package(yaml-cpp)\n' CMakeLists.txt || die
   # sed -i -e 's/3rdparty::yaml-cpp/yaml-cpp/' rpcs3/Emu/CMakeLists.txt \
   #   rpcs3/rpcs3qt/CMakeLists.txt || die

   # Unbundle glslang SPIRV
   sed -i -e '/add_subdirectory(glslang/d' \
      -e '/add_subdirectory(SPIRV/d' \
      -e '/if(VULKAN_FOUND)/afind_library(SPIRV libSPIRV.so)\nfind_library(SPIRV-Tools-opt libSPIRV-Tools-opt.so)\n' \
      -e '/target_link_libraries.*SPIRV/{s/SPIRV-Tools-opt/${&}/;s/SPIRV /${SPIRV} /}' \
      3rdparty/CMakeLists.txt || die
   sed -i -e '/#include "SPIRV/{s:":<glslang/:;s/"/>/}' rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp || die

   cmake_src_prepare
}

src_configure() {
   local mycmakeargs=(
      -DBUILD_LLVM_SUBMODULE=ON # ennoying really
      -DBUILD_SHARED_LIBS=OFF # to remove after unbundling
      -DUSE_DISCORD_RPC=$(usex discord)
      -DUSE_FAUDIO=$(usex faudio)
      -DUSE_PRECOMPILED_HEADERS=ON
      -DUSE_SYSTEM_CURL=ON
      -DUSE_SYSTEM_LIBPNG=ON
      -DUSE_SYSTEM_LIBUSB=ON
      -DUSE_SYSTEM_PUGIXML=ON
      -DUSE_SYSTEM_XXHASH=ON
      -DUSE_SYSTEM_ZLIB=ON
      -DUSE_VULKAN=$(usex vulkan)
      -DWITH_LLVM=$(usex llvm)
   )
   use faudio && mycmakeargs+=( -DUSE_SYSTEM_FAUDIO=$(usex faudio) )
   CMAKE_BUILD_TYPE=RELEASE cmake_src_configure
   sed -i -e 's/FFMPEG_LIB_AVFORMAT-NOTFOUND/avformat/' -e 's/FFMPEG_LIB_AVCODEC-NOTFOUND/avcodec/' \
      -e 's/FFMPEG_LIB_AVUTIL-NOTFOUND/avutil/' -e 's/FFMPEG_LIB_SWSCALE-NOTFOUND/swscale/' \
      -e 's/FFMPEG_LIB_SWRESAMPLE-NOTFOUND/swresample/' "${BUILD_DIR}"/build.ninja || die
}
Back to top
View user's profile Send private message
alamahant
Advocate
Advocate


Joined: 23 Mar 2019
Posts: 3879

PostPosted: Tue Jul 11, 2023 8:34 pm    Post subject: Reply with quote

Plz post
Code:

emerge -pv rpcs3

_________________
:)
Back to top
View user's profile Send private message
grknight
Retired Dev
Retired Dev


Joined: 20 Feb 2015
Posts: 1663

PostPosted: Tue Jul 11, 2023 9:08 pm    Post subject: Reply with quote

KEYWORDS="" is certainly valid. Its purpose is to indicate something that could be broken and needs explicit opt-in testing (see masked by missing keyword in package.accept_keywords documentation).

It could also be an omission by the creator of the ebuild, but that will not be clear unless the git history of the package is reviewed.
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21642

PostPosted: Tue Jul 11, 2023 9:31 pm    Post subject: Reply with quote

Moved from P&P to Unsupported Software due to use of GURU repository.
Back to top
View user's profile Send private message
ritzmax72
Tux's lil' helper
Tux's lil' helper


Joined: 10 Aug 2014
Posts: 82

PostPosted: Wed Jul 12, 2023 12:04 am    Post subject: Reply with quote

alamahant wrote:
Plz post
Code:

emerge -pv rpcs3


Code:

These are the packages that would be merged, in order:

Calculating dependencies... done!
Dependency resolution took 38.75 s.


!!! All ebuilds that could satisfy "rpcs3" have been masked.
!!! One of the following masked packages is required to complete your request:
- games-emulation/rpcs3-9999::guru (masked by: missing keyword)

For more information, see the MASKED PACKAGES section in the emerge
man page or refer to the Gentoo Handbook.



It doesn't specify which keyword.
Back to top
View user's profile Send private message
jburns
Veteran
Veteran


Joined: 18 Jan 2007
Posts: 1214
Location: Massachusetts USA

PostPosted: Wed Jul 12, 2023 1:18 am    Post subject: Reply with quote

From the output of "man portage"
Quote:
package.accept_keywords and package.keywords
Per-package ACCEPT_KEYWORDS. Useful for mixing unstable packages in with a normally stable system or vice
versa. This will allow ACCEPT_KEYWORDS to be augmented for a single package. If both package.accept_key‐
words and package.keywords are present, both of them will be used, and values from package.accept_keywords
will override values from package.keywords. The package.accept_keywords file is intended to replace the
package.keywords file, since profiles support a different form of package.keywords which modifies effective
KEYWORDS (rather than ACCEPT_KEYWORDS).

Format:
- comment lines begin with # (no inline comments)
- one DEPEND atom per line followed by additional KEYWORDS
- lines without any KEYWORDS imply unstable host arch

Example:
# always use unstable libgd
media-libs/libgd ˜x86
# only use stable mplayer
media-video/mplayer -˜x86
# always use unstable netcat
net-analyzer/netcat

Note:
In addition to the normal values from ACCEPT_KEYWORDS package.keywords supports three special tokens:

* package is visible if it is stable on any architecture
˜* package is visible if it is in testing on any architecture
** package is always visible (KEYWORDS are ignored completely)

Additional Note: If you encounter the -* KEYWORD, this indicates that the package is known to be broken on
all systems which are not otherwise listed in KEYWORDS. For example, a binary only package which is built
for x86 will look like:

games-fps/quake3-demo-1.11.ebuild:KEYWORDS="-* x86"

If you wish to accept this package anyways, then use one of the other keywords in your package.accept_key‐
words like this:

games-fps/quake3-demo x86


"=games-emulation/rpcs3-9999 **" in package.accept_keywords would tell portage to ignore KEYWORDS for the package.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Unsupported Software All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum