summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
Diffstat (limited to 'eclass')
-rw-r--r--eclass/Manifest.gzbin36485 -> 36159 bytes
-rw-r--r--eclass/base.eclass216
-rw-r--r--eclass/cargo.eclass1
-rw-r--r--eclass/flag-o-matic.eclass4
-rw-r--r--eclass/games.eclass398
-rw-r--r--eclass/ros-catkin.eclass2
-rw-r--r--eclass/ruby-fakegem.eclass4
7 files changed, 7 insertions, 618 deletions
diff --git a/eclass/Manifest.gz b/eclass/Manifest.gz
index c8f911088882..1748ab65dad0 100644
--- a/eclass/Manifest.gz
+++ b/eclass/Manifest.gz
Binary files differ
diff --git a/eclass/base.eclass b/eclass/base.eclass
deleted file mode 100644
index 3a81fb76ccf1..000000000000
--- a/eclass/base.eclass
+++ /dev/null
@@ -1,216 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# DEPRECATED
-# This eclass has been deprecated and must not be used by any new
-# ebuilds or eclasses. Replacements for particular phase functions
-# in EAPI 2+:
-#
-# base_src_unpack() - default (or unpacker_src_unpack if unpacker.eclass
-# was inherited)
-# base_src_prepare() - inherit eutils, inline:
-# epatch "${PATCHES[@]}" # if PATCHES defined as array
-# epatch ${PATCHES} # if PATCHES defined as string
-# epatch_user
-# base_src_configure() - default
-# base_src_compile() - default
-# base_src_install() - default
-# base_src_install_docs() - einstalldocs from eutils.eclass
-
-# @DEAD
-# @ECLASS: base.eclass
-# @MAINTAINER:
-# QA Team <qa@gentoo.org>
-# @AUTHOR:
-# Original author: Dan Armak <danarmak@gentoo.org>
-# @SUPPORTED_EAPIS: 0 1 2 3 4 5
-# @BLURB: The base eclass defines some default functions and variables.
-# @DEPRECATED: none
-# @DESCRIPTION:
-# The base eclass defines some default functions and variables.
-
-if [[ -z ${_BASE_ECLASS} ]]; then
-_BASE_ECLASS=1
-
-inherit eutils
-
-BASE_EXPF="src_unpack src_compile src_install"
-case "${EAPI:-0}" in
- 0|1) ;;
- 2|3|4|5) BASE_EXPF+=" src_prepare src_configure" ;;
- *) die "${ECLASS}.eclass is banned in EAPI ${EAPI}";;
-esac
-
-EXPORT_FUNCTIONS ${BASE_EXPF}
-
-# @ECLASS-VARIABLE: DOCS
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Array containing documents passed to dodoc command.
-#
-# DOCS=( "${S}/doc/document.txt" "${S}/doc/doc_folder/" )
-
-# @ECLASS-VARIABLE: HTML_DOCS
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Array containing documents passed to dohtml command.
-#
-# HTML_DOCS=( "${S}/doc/document.html" "${S}/doc/html_folder/" )
-
-# @ECLASS-VARIABLE: PATCHES
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# PATCHES array variable containing all various patches to be applied.
-# This variable is expected to be defined in global scope of ebuild.
-# Make sure to specify the full path. This variable is utilised in
-# src_unpack/src_prepare phase based on EAPI.
-#
-# NOTE: if using patches folders with special file suffixes you have to
-# define one additional variable EPATCH_SUFFIX="something"
-#
-# PATCHES=( "${FILESDIR}/mypatch.patch" "${FILESDIR}/patches_folder/" )
-
-
-# @FUNCTION: base_src_unpack
-# @DESCRIPTION:
-# The base src_unpack function, which is exported.
-# Calls also src_prepare with eapi older than 2.
-base_src_unpack() {
- debug-print-function $FUNCNAME "$@"
-
- pushd "${WORKDIR}" > /dev/null
-
- if [[ $(type -t unpacker_src_unpack) == "function" ]] ; then
- unpacker_src_unpack
- elif [[ -n ${A} ]] ; then
- unpack ${A}
- fi
- has src_prepare ${BASE_EXPF} || base_src_prepare
-
- popd > /dev/null
-}
-
-# @FUNCTION: base_src_prepare
-# @DESCRIPTION:
-# The base src_prepare function, which is exported
-# EAPI is greater or equal to 2. Here the PATCHES array is evaluated.
-base_src_prepare() {
- debug-print-function $FUNCNAME "$@"
- debug-print "$FUNCNAME: PATCHES=$PATCHES"
-
- local patches_failed=0
-
- pushd "${S}" > /dev/null
- if [[ "$(declare -p PATCHES 2>/dev/null 2>&1)" == "declare -a"* ]]; then
- for x in "${PATCHES[@]}"; do
- debug-print "$FUNCNAME: applying patch from ${x}"
- if [[ -d "${x}" ]]; then
- # Use standardized names and locations with bulk patching
- # Patch directory is ${WORKDIR}/patch
- # See epatch() in eutils.eclass for more documentation
- EPATCH_SUFFIX=${EPATCH_SUFFIX:=patch}
-
- # in order to preserve normal EPATCH_SOURCE value that can
- # be used other way than with base eclass store in local
- # variable and restore later
- oldval=${EPATCH_SOURCE}
- EPATCH_SOURCE=${x}
- EPATCH_FORCE=yes
- epatch
- EPATCH_SOURCE=${oldval}
- elif [[ -f "${x}" ]]; then
- epatch "${x}"
- else
- ewarn "QA: File or directory \"${x}\" does not exist."
- ewarn "QA: Check your PATCHES array or add missing file/directory."
- patches_failed=1
- fi
- done
- [[ ${patches_failed} -eq 1 ]] && die "Some patches failed. See above messages."
- else
- for x in ${PATCHES}; do
- debug-print "$FUNCNAME: patching from ${x}"
- epatch "${x}"
- done
- fi
-
- # Apply user patches
- debug-print "$FUNCNAME: applying user patches"
- epatch_user
-
- popd > /dev/null
-}
-
-# @FUNCTION: base_src_configure
-# @DESCRIPTION:
-# The base src_configure function, which is exported when
-# EAPI is greater or equal to 2. Runs basic econf.
-base_src_configure() {
- debug-print-function $FUNCNAME "$@"
-
- # there is no pushd ${S} so we can override its place where to run
- [[ -x ${ECONF_SOURCE:-.}/configure ]] && econf "$@"
-}
-
-# @FUNCTION: base_src_compile
-# @DESCRIPTION:
-# The base src_compile function, calls src_configure with
-# EAPI older than 2.
-base_src_compile() {
- debug-print-function $FUNCNAME "$@"
-
- has src_configure ${BASE_EXPF} || base_src_configure
- base_src_make "$@"
-}
-
-# @FUNCTION: base_src_make
-# @DESCRIPTION:
-# Actual function that runs emake command.
-base_src_make() {
- debug-print-function $FUNCNAME "$@"
-
- if [[ -f Makefile || -f GNUmakefile || -f makefile ]]; then
- emake "$@" || die "died running emake, $FUNCNAME"
- fi
-}
-
-# @FUNCTION: base_src_install
-# @DESCRIPTION:
-# The base src_install function. Runs make install and
-# installs documents and html documents from DOCS and HTML_DOCS
-# arrays.
-base_src_install() {
- debug-print-function $FUNCNAME "$@"
-
- emake DESTDIR="${D}" "$@" install || die "died running make install, $FUNCNAME"
- base_src_install_docs
-}
-
-# @FUNCTION: base_src_install_docs
-# @DESCRIPTION:
-# Actual function that install documentation from
-# DOCS and HTML_DOCS arrays.
-base_src_install_docs() {
- debug-print-function $FUNCNAME "$@"
-
- local x
-
- pushd "${S}" > /dev/null
-
- if [[ "$(declare -p DOCS 2>/dev/null 2>&1)" == "declare -a"* ]]; then
- for x in "${DOCS[@]}"; do
- debug-print "$FUNCNAME: docs: creating document from ${x}"
- dodoc "${x}" || die "dodoc failed"
- done
- fi
- if [[ "$(declare -p HTML_DOCS 2>/dev/null 2>&1)" == "declare -a"* ]]; then
- for x in "${HTML_DOCS[@]}"; do
- debug-print "$FUNCNAME: docs: creating html document from ${x}"
- dohtml -r "${x}" || die "dohtml failed"
- done
- fi
-
- popd > /dev/null
-}
-
-fi
diff --git a/eclass/cargo.eclass b/eclass/cargo.eclass
index e2894b4588b6..15b9d455bdef 100644
--- a/eclass/cargo.eclass
+++ b/eclass/cargo.eclass
@@ -142,6 +142,7 @@ cargo_gen_config() {
[build]
jobs = $(makeopts_jobs)
+ incremental = false
[term]
verbose = true
diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index ed1b6e746cef..2e04e2acb06b 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -49,7 +49,9 @@ setup-allowed-flags() {
_setup-allowed-flags() {
ALLOWED_FLAGS=(
-pipe -O '-O[12sg]' -mcpu -march -mtune
- '-fstack-protector*' '-fsanitize*' '-fstack-check*' -fno-stack-check
+ '-fstack-protector*'
+ '-fsanitize*' '-fno-sanitize*'
+ '-fstack-check*' -fno-stack-check
-fbounds-check -fbounds-checking -fno-strict-overflow
-fno-PIE -fno-pie -nopie -no-pie -fno-unit-at-a-time
diff --git a/eclass/games.eclass b/eclass/games.eclass
deleted file mode 100644
index c3645ea5a802..000000000000
--- a/eclass/games.eclass
+++ /dev/null
@@ -1,398 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# @DEAD
-# @ECLASS: games.eclass
-# @MAINTAINER:
-# Games team <games@gentoo.org>
-# @SUPPORTED_EAPIS: 0 1 2 3 4 5
-# @BLURB: Standardizing the install of games.
-# @DEPRECATED: none
-# @DESCRIPTION:
-# This eclass makes sure that games are consistently handled in gentoo.
-# It installs game files by default in FHS-compatible directories
-# like /usr/share/games and sets more restrictive permissions in order
-# to avoid some security bugs.
-#
-# The installation directories as well as the user and group files are
-# installed as can be controlled by the user. See the variables like
-# GAMES_BINDIR, GAMES_USER etc. below. These are NOT supposed to be set
-# by ebuilds!
-#
-# For a general guide on writing games ebuilds, see:
-# https://wiki.gentoo.org/wiki/Project:Games/Ebuild_howto
-#
-# WARNING: This eclass is DEPRECATED and must not be used by new games
-# ebuilds, bug #574082. When writing game ebuilds, no specific eclass
-# is needed. For more details, see the QA team policies page:
-# https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Policies#Games
-
-
-if [[ -z ${_GAMES_ECLASS} ]]; then
-_GAMES_ECLASS=1
-
-inherit base multilib toolchain-funcs eutils user
-
-case ${EAPI:-0} in
- 0|1) EXPORT_FUNCTIONS pkg_setup src_compile pkg_preinst pkg_postinst ;;
- 2|3|4|5) EXPORT_FUNCTIONS pkg_setup src_configure src_compile pkg_preinst pkg_postinst ;;
- *) die "games.eclass is banned in EAPI=${EAPI}, see https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Policies#Games" ;;
-esac
-
-if [[ ${CATEGORY}/${PN} != "games-misc/games-envd" ]] ; then
- # environment file
- RDEPEND="games-misc/games-envd"
-fi
-
-# @ECLASS-VARIABLE: GAMES_PREFIX
-# @DESCRIPTION:
-# Prefix where to install games, mostly used by GAMES_BINDIR. Games data should
-# still go into GAMES_DATADIR. May be set by the user.
-GAMES_PREFIX=${GAMES_PREFIX:-/usr/games}
-
-# @ECLASS-VARIABLE: GAMES_PREFIX_OPT
-# @DESCRIPTION:
-# Prefix where to install precompiled/blob games, usually followed by
-# package name. May be set by the user.
-GAMES_PREFIX_OPT=${GAMES_PREFIX_OPT:-/opt}
-
-# @ECLASS-VARIABLE: GAMES_DATADIR
-# @DESCRIPTION:
-# Base directory where to install game data files, usually followed by
-# package name. May be set by the user.
-GAMES_DATADIR=${GAMES_DATADIR:-/usr/share/games}
-
-# @ECLASS-VARIABLE: GAMES_DATADIR_BASE
-# @DESCRIPTION:
-# Similar to GAMES_DATADIR, but only used when a package auto appends 'games'
-# to the path. May be set by the user.
-GAMES_DATADIR_BASE=${GAMES_DATADIR_BASE:-/usr/share}
-
-# @ECLASS-VARIABLE: GAMES_SYSCONFDIR
-# @DESCRIPTION:
-# Where to install global games configuration files, usually followed by
-# package name. May be set by the user.
-GAMES_SYSCONFDIR=${GAMES_SYSCONFDIR:-/etc/games}
-
-# @ECLASS-VARIABLE: GAMES_STATEDIR
-# @DESCRIPTION:
-# Where to install/store global variable game data, usually followed by
-# package name. May be set by the user.
-GAMES_STATEDIR=${GAMES_STATEDIR:-/var/games}
-
-# @ECLASS-VARIABLE: GAMES_LOGDIR
-# @DESCRIPTION:
-# Where to store global game log files, usually followed by
-# package name. May be set by the user.
-GAMES_LOGDIR=${GAMES_LOGDIR:-/var/log/games}
-
-# @ECLASS-VARIABLE: GAMES_BINDIR
-# @DESCRIPTION:
-# Where to install the game binaries. May be set by the user. This is in PATH.
-GAMES_BINDIR=${GAMES_BINDIR:-${GAMES_PREFIX}/bin}
-
-# @ECLASS-VARIABLE: GAMES_ENVD
-# @INTERNAL
-# @DESCRIPTION:
-# The games environment file name which sets games specific LDPATH and PATH.
-GAMES_ENVD="90games"
-
-# @ECLASS-VARIABLE: GAMES_USER
-# @DESCRIPTION:
-# The USER who owns all game files and usually has write permissions.
-# May be set by the user.
-GAMES_USER=${GAMES_USER:-root}
-
-# @ECLASS-VARIABLE: GAMES_USER_DED
-# @DESCRIPTION:
-# The USER who owns all game files related to the dedicated server part
-# of a package. May be set by the user.
-GAMES_USER_DED=${GAMES_USER_DED:-games}
-
-# @ECLASS-VARIABLE: GAMES_GROUP
-# @DESCRIPTION:
-# The GROUP that owns all game files and usually does not have
-# write permissions. May be set by the user.
-# If you want games world-executable, then you can at least set this variable
-# to 'users' which is almost the same.
-GAMES_GROUP=${GAMES_GROUP:-games}
-
-# @FUNCTION: games_get_libdir
-# @DESCRIPTION:
-# Gets the directory where to install games libraries. This is in LDPATH.
-games_get_libdir() {
- echo ${GAMES_PREFIX}/$(get_libdir)
-}
-
-# @FUNCTION: egamesconf
-# @USAGE: [<args>...]
-# @DESCRIPTION:
-# Games equivalent to 'econf' for autotools based build systems. It passes
-# the necessary games specific directories automatically.
-egamesconf() {
- # handle verbose build log pre-EAPI5
- local _gamesconf
- if has "${EAPI:-0}" 0 1 2 3 4 ; then
- if grep -q -s disable-silent-rules "${ECONF_SOURCE:-.}"/configure ; then
- _gamesconf="--disable-silent-rules"
- fi
- fi
-
- # bug 493954
- if grep -q -s datarootdir "${ECONF_SOURCE:-.}"/configure ; then
- _gamesconf="${_gamesconf} --datarootdir=/usr/share"
- fi
-
- econf \
- --prefix="${GAMES_PREFIX}" \
- --libdir="$(games_get_libdir)" \
- --datadir="${GAMES_DATADIR}" \
- --sysconfdir="${GAMES_SYSCONFDIR}" \
- --localstatedir="${GAMES_STATEDIR}" \
- ${_gamesconf} \
- "$@"
-}
-
-# @FUNCTION: gameswrapper
-# @USAGE: <command> [<args>...]
-# @INTERNAL
-# @DESCRIPTION:
-# Wraps an install command like dobin, dolib etc, so that
-# it has GAMES_PREFIX as prefix.
-gameswrapper() {
- # dont want to pollute calling env
- (
- into "${GAMES_PREFIX}"
- cmd=$1
- shift
- ${cmd} "$@"
- )
-}
-
-# @FUNCTION: dogamesbin
-# @USAGE: <path>...
-# @DESCRIPTION:
-# Install one or more games binaries.
-dogamesbin() { gameswrapper ${FUNCNAME/games} "$@"; }
-
-# @FUNCTION: dogamessbin
-# @USAGE: <path>...
-# @DESCRIPTION:
-# Install one or more games system binaries.
-dogamessbin() { gameswrapper ${FUNCNAME/games} "$@"; }
-
-# @FUNCTION: dogameslib
-# @USAGE: <path>...
-# @DESCRIPTION:
-# Install one or more games libraries.
-dogameslib() { gameswrapper ${FUNCNAME/games} "$@"; }
-
-# @FUNCTION: dogameslib.a
-# @USAGE: <path>...
-# @DESCRIPTION:
-# Install one or more static games libraries.
-dogameslib.a() { gameswrapper ${FUNCNAME/games} "$@"; }
-
-# @FUNCTION: dogameslib.so
-# @USAGE: <path>...
-# @DESCRIPTION:
-# Install one or more shared games libraries.
-dogameslib.so() { gameswrapper ${FUNCNAME/games} "$@"; }
-
-# @FUNCTION: newgamesbin
-# @USAGE: <path> <newname>
-# @DESCRIPTION:
-# Install one games binary with a new name.
-newgamesbin() { gameswrapper ${FUNCNAME/games} "$@"; }
-
-# @FUNCTION: newgamessbin
-# @USAGE: <path> <newname>
-# @DESCRIPTION:
-# Install one system games binary with a new name.
-newgamessbin() { gameswrapper ${FUNCNAME/games} "$@"; }
-
-# @FUNCTION: games_make_wrapper
-# @USAGE: <wrapper> <target> [chdir] [libpaths] [installpath]
-# @DESCRIPTION:
-# Create a shell wrapper script named wrapper in installpath
-# (defaults to the games bindir) to execute target (default of wrapper) by
-# first optionally setting LD_LIBRARY_PATH to the colon-delimited
-# libpaths followed by optionally changing directory to chdir.
-games_make_wrapper() { gameswrapper ${FUNCNAME/games_} "$@"; }
-
-# @FUNCTION: gamesowners
-# @USAGE: [<args excluding owner/group>...] <path>...
-# @DESCRIPTION:
-# Run 'chown' with the given args on the given files. Owner and
-# group are GAMES_USER and GAMES_GROUP and must not be passed
-# as args.
-gamesowners() { chown ${GAMES_USER}:${GAMES_GROUP} "$@"; }
-
-# @FUNCTION: gamesperms
-# @USAGE: <path>...
-# @DESCRIPTION:
-# Run 'chmod' with games specific permissions on the given files.
-gamesperms() { chmod u+rw,g+r-w,o-rwx "$@"; }
-
-# @FUNCTION: prepgamesdirs
-# @DESCRIPTION:
-# Fix all permissions/owners of files in games related directories,
-# usually called at the end of src_install().
-prepgamesdirs() {
- local dir f mode
- for dir in \
- "${GAMES_PREFIX}" "${GAMES_PREFIX_OPT}" "${GAMES_DATADIR}" \
- "${GAMES_SYSCONFDIR}" "${GAMES_STATEDIR}" "$(games_get_libdir)" \
- "${GAMES_BINDIR}" "$@"
- do
- [[ ! -d ${D}/${dir} ]] && continue
- (
- gamesowners -R "${D}/${dir}"
- find "${D}/${dir}" -type d -print0 | xargs -0 chmod 750
- mode=o-rwx,g+r,g-w
- [[ ${dir} = ${GAMES_STATEDIR} ]] && mode=o-rwx,g+r
- find "${D}/${dir}" -type f -print0 | xargs -0 chmod $mode
-
- # common trees should not be games owned #264872 #537580
- fowners root:0 "${dir}"
- fperms 755 "${dir}"
- if [[ ${dir} == "${GAMES_PREFIX}" \
- || ${dir} == "${GAMES_PREFIX_OPT}" ]] ; then
- for d in $(get_libdir) bin ; do
- # check if dirs exist to avoid "nonfatal" option
- if [[ -e ${D}/${dir}/${d} ]] ; then
- fowners root:0 "${dir}/${d}"
- fperms 755 "${dir}/${d}"
- fi
- done
- fi
- ) &>/dev/null
-
- f=$(find "${D}/${dir}" -perm +4000 -a -uid 0 2>/dev/null)
- if [[ -n ${f} ]] ; then
- eerror "A game was detected that is setuid root!"
- eerror "${f}"
- die "refusing to merge a setuid root game"
- fi
- done
- [[ -d ${D}/${GAMES_BINDIR} ]] || return 0
- find "${D}/${GAMES_BINDIR}" -maxdepth 1 -type f -exec chmod 750 '{}' \;
-}
-
-# @FUNCTION: games_pkg_setup
-# @DESCRIPTION:
-# Export some toolchain specific variables and create games related groups
-# and users. This function is exported as pkg_setup().
-games_pkg_setup() {
- tc-export CC CXX LD AR RANLIB
-
- enewgroup "${GAMES_GROUP}" 35
- [[ ${GAMES_USER} != "root" ]] \
- && enewuser "${GAMES_USER}" 35 -1 "${GAMES_PREFIX}" "${GAMES_GROUP}"
- [[ ${GAMES_USER_DED} != "root" ]] \
- && enewuser "${GAMES_USER_DED}" 36 /bin/bash "${GAMES_PREFIX}" "${GAMES_GROUP}"
-
- # Dear portage team, we are so sorry. Lots of love, games team.
- # See Bug #61680
- [[ ${USERLAND} != "GNU" ]] && return 0
- [[ $(egetshell "${GAMES_USER_DED}") == "/bin/false" ]] \
- && usermod -s /bin/bash "${GAMES_USER_DED}"
-}
-
-# @FUNCTION: games_src_configure
-# @DESCRIPTION:
-# Runs egamesconf if there is a configure file.
-# This function is exported as src_configure().
-games_src_configure() {
- [[ -x "${ECONF_SOURCE:-.}"/configure ]] && egamesconf
-}
-
-# @FUNCTION: games_src_compile
-# @DESCRIPTION:
-# Runs base_src_make(). This function is exported as src_compile().
-games_src_compile() {
- case ${EAPI:-0} in
- 0|1) games_src_configure ;;
- esac
- base_src_make
-}
-
-# @FUNCTION: games_pkg_preinst
-# @DESCRIPTION:
-# Synchronizes GAMES_STATEDIR of the ebuild image with the live filesystem.
-games_pkg_preinst() {
- local f
-
- while read f ; do
- if [[ -e ${ROOT}/${GAMES_STATEDIR}/${f} ]] ; then
- cp -p \
- "${ROOT}/${GAMES_STATEDIR}/${f}" \
- "${D}/${GAMES_STATEDIR}/${f}" \
- || die "cp failed"
- # make the date match the rest of the install
- touch "${D}/${GAMES_STATEDIR}/${f}"
- fi
- done < <(find "${D}/${GAMES_STATEDIR}" -type f -printf '%P\n' 2>/dev/null)
-}
-
-# @FUNCTION: games_pkg_postinst
-# @DESCRIPTION:
-# Prints some warnings and infos, also related to games groups.
-games_pkg_postinst() {
- if [[ -z "${GAMES_SHOW_WARNING}" ]] ; then
- ewarn "Remember, in order to play games, you have to"
- ewarn "be in the '${GAMES_GROUP}' group."
- echo
- case ${CHOST} in
- *-darwin*) ewarn "Just run 'niutil -appendprop / /groups/games users <USER>'";;
- *-freebsd*|*-dragonfly*) ewarn "Just run 'pw groupmod ${GAMES_GROUP} -m <USER>'";;
- *) ewarn "Just run 'gpasswd -a <USER> ${GAMES_GROUP}', then have <USER> re-login.";;
- esac
- echo
- einfo "For more info about Gentoo gaming in general, see our website:"
- einfo " https://games.gentoo.org/"
- echo
- fi
-}
-
-# @FUNCTION: games_ut_unpack
-# @USAGE: <directory or file to unpack>
-# @DESCRIPTION:
-# Unpack .uz2 files for UT2003/UT2004.
-games_ut_unpack() {
- local ut_unpack="$1"
- local f=
-
- if [[ -z ${ut_unpack} ]] ; then
- die "You must provide an argument to games_ut_unpack"
- fi
- if [[ -f ${ut_unpack} ]] ; then
- uz2unpack "${ut_unpack}" "${ut_unpack%.uz2}" \
- || die "uncompressing file ${ut_unpack}"
- fi
- if [[ -d ${ut_unpack} ]] ; then
- while read f ; do
- uz2unpack "${ut_unpack}/${f}" "${ut_unpack}/${f%.uz2}" \
- || die "uncompressing file ${f}"
- rm -f "${ut_unpack}/${f}" || die "deleting compressed file ${f}"
- done < <(find "${ut_unpack}" -maxdepth 1 -name '*.uz2' -printf '%f\n' 2>/dev/null)
- fi
-}
-
-# @FUNCTION: games_umod_unpack
-# @USAGE: <file to unpack>
-# @DESCRIPTION:
-# Unpacks .umod/.ut2mod/.ut4mod files for UT/UT2003/UT2004.
-# Don't forget to set 'dir' and 'Ddir'.
-games_umod_unpack() {
- local umod=$1
- mkdir -p "${Ddir}"/System
- cp "${dir}"/System/{ucc-bin,{Manifest,Def{ault,User}}.ini,{Engine,Core,zlib,ogg,vorbis}.so,{Engine,Core}.int} "${Ddir}"/System
- cd "${Ddir}"/System
- UT_DATA_PATH=${Ddir}/System ./ucc-bin umodunpack -x "${S}/${umod}" -nohomedir &> /dev/null \
- || die "uncompressing file ${umod}"
- rm -f "${Ddir}"/System/{ucc-bin,{Manifest,Def{ault,User},User,UT200{3,4}}.ini,{Engine,Core,zlib,ogg,vorbis}.so,{Engine,Core}.int,ucc.log} &>/dev/null \
- || die "Removing temporary files"
-}
-
-fi
diff --git a/eclass/ros-catkin.eclass b/eclass/ros-catkin.eclass
index 1bd1be4a478c..43c4acb11425 100644
--- a/eclass/ros-catkin.eclass
+++ b/eclass/ros-catkin.eclass
@@ -46,7 +46,7 @@ fi
# ROS only really works with one global python version and the target
# version depends on the release. Noetic targets 3.7 and 3.8.
# py3.9 or later are ok to add there as long as dev-ros/* have their deps satisfied.
-PYTHON_COMPAT=( python3_{7,8} )
+PYTHON_COMPAT=( python3_{7,8,9} )
inherit ${SCM} python-single-r1 cmake flag-o-matic
diff --git a/eclass/ruby-fakegem.eclass b/eclass/ruby-fakegem.eclass
index 19445b10c164..3e36b06d3153 100644
--- a/eclass/ruby-fakegem.eclass
+++ b/eclass/ruby-fakegem.eclass
@@ -408,7 +408,7 @@ EOF
# Configure extensions defined in RUBY_FAKEGEM_EXTENSIONS, if any.
each_fakegem_configure() {
for extension in "${RUBY_FAKEGEM_EXTENSIONS[@]}" ; do
- ${RUBY} -C ${extension%/*} ${extension##*/} || die
+ ${RUBY} --disable=did_you_mean -C ${extension%/*} ${extension##*/} || die
done
}
@@ -517,7 +517,7 @@ all_ruby_compile() {
each_fakegem_test() {
case ${RUBY_FAKEGEM_RECIPE_TEST} in
rake)
- ${RUBY} -S rake ${RUBY_FAKEGEM_TASK_TEST} || die "tests failed"
+ ${RUBY} --disable=did_you_mean -S rake ${RUBY_FAKEGEM_TASK_TEST} || die "tests failed"
;;
rspec)
RSPEC_VERSION=2 ruby-ng_rspec