mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-19 03:53:22 -04:00
Merge updates from master
This commit is contained in:
@@ -1,184 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: R-packages.eclass
|
||||
# @AUTHOR:
|
||||
# Alessandro Barbieri <lssndrbarbieri@gmail.com>
|
||||
# André Erdmann <dywi@mailerd.de>
|
||||
# Benda Xu <heroxbd@gentoo.org>
|
||||
# Denis Dupeyron <calchan@gentoo.org>
|
||||
# Robert Greener <me@r0bert.dev>
|
||||
# @BLURB: eclass to build R packages
|
||||
# @MAINTAINER:
|
||||
# Alessandro Barbieri <lssndrbarbieri@gmail.com>
|
||||
# @SUPPORTED_EAPIS: 7 8
|
||||
|
||||
case ${EAPI} in
|
||||
7|8) ;;
|
||||
*) die "${ECLASS}: EAPI ${EAPI} unsupported."
|
||||
esac
|
||||
|
||||
if [ ! ${_R_PACKAGES_ECLASS} ]; then
|
||||
|
||||
inherit edo optfeature toolchain-funcs
|
||||
|
||||
# @ECLASS_VARIABLE: SUGGESTED_PACKAGES
|
||||
# @DEPRECATED: none
|
||||
# @DEFAULT_UNSET
|
||||
# @DESCRIPTION:
|
||||
# String variable containing the list of upstream suggested packages. Consider
|
||||
# using optfeature directly instead for more concise descriptions.
|
||||
|
||||
# @ECLASS_VARIABLE: CRAN_SNAPSHOT_DATE
|
||||
# @DEFAULT_UNSET
|
||||
# @DESCRIPTION:
|
||||
# The date the ebuild was updated in YYYY-MM-DD format used to fetch distfiles
|
||||
# from Microsoft CRAN mirror. This will be required in the future.
|
||||
|
||||
# @ECLASS_VARIABLE: CRAN_PN
|
||||
# @DESCRIPTION:
|
||||
# Package name to use for fetching distfiles from CRAN.
|
||||
: ${CRAN_PN:=${PN//_/.}}
|
||||
|
||||
# @ECLASS_VARIABLE: CRAN_PV
|
||||
# @DESCRIPTION:
|
||||
# Package version to use for fetching distfiles from CRAN.
|
||||
: ${CRAN_PV:=${PV}}
|
||||
|
||||
if [[ ${CRAN_SNAPSHOT_DATE} ]]; then
|
||||
SRC_URI="https://cran.microsoft.com/snapshot/${CRAN_SNAPSHOT_DATE}"
|
||||
else
|
||||
SRC_URI="mirror://cran"
|
||||
fi
|
||||
SRC_URI+="/src/contrib/${CRAN_PN}_${CRAN_PV}.tar.gz"
|
||||
|
||||
HOMEPAGE="https://cran.r-project.org/package=${CRAN_PN}"
|
||||
|
||||
SLOT="0"
|
||||
|
||||
DEPEND="dev-lang/R"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
# @FUNCTION: R-packages_src_unpack
|
||||
# @DEPRECATED: none
|
||||
# @DESCRIPTION:
|
||||
# Unpack R packages into the right folder. Consider setting ${S} to appropriate
|
||||
# value instead.
|
||||
R-packages_src_unpack() {
|
||||
default_src_unpack
|
||||
|
||||
if [[ -d "${CRAN_PN}" ]] && [[ ! -d "${P}" ]]; then
|
||||
mv "${CRAN_PN}" "${P}" || die
|
||||
fi
|
||||
}
|
||||
|
||||
# @FUNCTION: R-packages_src_prepare
|
||||
# @DEPRECATED: none
|
||||
# @DESCRIPTION:
|
||||
# Remove unwanted files from the sources.
|
||||
R-packages_src_prepare() {
|
||||
default_src_prepare
|
||||
eqawarn "This ebuild uses R-packages_src_prepare which is no-op."
|
||||
eqawarn "You can safely remove it."
|
||||
}
|
||||
|
||||
# @FUNCTION: R-packages_src_configure
|
||||
# @DESCRIPTION:
|
||||
# Set up temporary directories.
|
||||
R-packages_src_configure() {
|
||||
mkdir "${T}"/R || die
|
||||
}
|
||||
|
||||
# @FUNCTION: R-packages_src_compile
|
||||
# @DESCRIPTION:
|
||||
# Pass build-related environment variables to R and then build/install the
|
||||
# package.
|
||||
R-packages_src_compile() {
|
||||
local -a mymakeflags=(
|
||||
"${MAKEFLAGS}"
|
||||
AR="$(tc-getAR)"
|
||||
CC="$(tc-getCC)"
|
||||
CPP="$(tc-getCPP)"
|
||||
CXX="$(tc-getCXX)"
|
||||
FC="$(tc-getFC)"
|
||||
LD="$(tc-getLD)"
|
||||
NM="$(tc-getNM)"
|
||||
RANLIB="$(tc-getRANLIB)"
|
||||
CFLAGS="${CFLAGS}"
|
||||
CPPFLAGS="${CPPFLAGS}"
|
||||
CXXFLAGS="${CXXFLAGS}"
|
||||
FFLAGS="${FFLAGS}"
|
||||
FCFLAGS="${FCFLAGS}"
|
||||
LDFLAGS="${LDFLAGS}"
|
||||
MAKEOPTS="${MAKEOPTS}"
|
||||
)
|
||||
|
||||
MAKEFLAGS="${mymakeflags[@]// /\\ }" \
|
||||
edo R CMD INSTALL . -d -l "${T}"/R --byte-compile
|
||||
}
|
||||
|
||||
# @FUNCTION: R-packages_src_install
|
||||
# @DESCRIPTION:
|
||||
# Move files into right folders.
|
||||
#
|
||||
# Documentation and examples is moved to docdir, symlinked back to R
|
||||
# site-library (to allow access from within R).
|
||||
#
|
||||
# Everything else is moved to the R site-library.
|
||||
R-packages_src_install() {
|
||||
cd "${T}"/R/${CRAN_PN} || die
|
||||
|
||||
local DOCDIR="/usr/share/doc/${PF}"
|
||||
local EDOCDIR="${ED}${DOCDIR}"
|
||||
mkdir -p "${EDOCDIR}" || die
|
||||
|
||||
# _maybe_movelink <target> <link_name>
|
||||
# If target exists, installs everything under target into R's
|
||||
# site-library for the package and creates a link with the name
|
||||
# <link_name> to it.
|
||||
_maybe_movelink() {
|
||||
local target=${1}
|
||||
local link_name=${2}
|
||||
if [[ ! -e "${target}" ]]; then
|
||||
return
|
||||
fi
|
||||
|
||||
local rdir=/usr/$(get_libdir)/R/site-library/${CRAN_PN}
|
||||
local rp_source="${rdir}/${target}"
|
||||
insinto ${rdir}
|
||||
doins -r ${target}
|
||||
ln -s "${rp_source}" "${link_name}" || die
|
||||
}
|
||||
|
||||
for i in {NEWS,README}.md DESCRIPTION CITATION INDEX NEWS WORDLIST News.Rd; do
|
||||
_maybe_movelink "${i}" "${EDOCDIR}/${i}"
|
||||
done
|
||||
|
||||
_maybe_movelink html "${EDOCDIR}"/html
|
||||
|
||||
_maybe_movelink examples "${EDOCDIR}"/examples
|
||||
|
||||
_maybe_movelink doc "${EDOCDIR}"/doc
|
||||
|
||||
rm -f LICENSE || die
|
||||
rm -rf tests test || die
|
||||
|
||||
insinto /usr/$(get_libdir)/R/site-library
|
||||
doins -r "${T}"/R/${CRAN_PN}
|
||||
}
|
||||
|
||||
# @FUNCTION: R-packages_pkg_postinst
|
||||
# @DEPRECATED: optfeature
|
||||
# @DESCRIPTION:
|
||||
# Prompt to install the upstream suggested packages (if they exist). Consider
|
||||
# calling "optfeature" directly instead for concise descriptions.
|
||||
R-packages_pkg_postinst() {
|
||||
for p in ${SUGGESTED_PACKAGES}; do
|
||||
optfeature "having the upstream suggested package" "${p}"
|
||||
done
|
||||
}
|
||||
|
||||
_R_PACKAGES_ECLASS=1
|
||||
fi
|
||||
|
||||
EXPORT_FUNCTIONS src_unpack src_configure src_compile src_install pkg_postinst
|
||||
@@ -1,240 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# @ECLASS: octaveforge.eclass
|
||||
# @AUTHOR:
|
||||
# Rafael G. Martins <rafael@rafaelmartins.eng.br>
|
||||
# Alessandro Barbieri <lssndrbarbieri@gmail.com>
|
||||
# @BLURB: octaveforge helper eclass.
|
||||
# @MAINTAINER:
|
||||
# Alessandro Barbieri <lssndrbarbieri@gmail.com>
|
||||
# @SUPPORTED_EAPIS: 8
|
||||
|
||||
inherit autotools edo
|
||||
|
||||
case ${EAPI} in
|
||||
8) ;;
|
||||
*) die "${ECLASS}: EAPI ${EAPI} unsupported."
|
||||
esac
|
||||
|
||||
EXPORT_FUNCTIONS src_unpack src_prepare src_compile src_install src_test pkg_postinst pkg_prerm pkg_postrm
|
||||
|
||||
# @ECLASS_VARIABLE: REPO_URI
|
||||
# @DESCRIPTION:
|
||||
# URI to the sourceforge octave-forge repository
|
||||
REPO_URI="http://svn.code.sf.net/p/octave/code/trunk/octave-forge"
|
||||
|
||||
# defining some paths
|
||||
|
||||
# @ECLASS_VARIABLE: OCT_ROOT
|
||||
# @DESCRIPTION:
|
||||
# full path to octave share
|
||||
OCT_ROOT="/usr/share/octave"
|
||||
|
||||
# @ECLASS_VARIABLE: OCT_PKGDIR
|
||||
# @DESCRIPTION:
|
||||
# path to octave pkgdir
|
||||
OCT_PKGDIR="${OCT_ROOT}/packages"
|
||||
|
||||
# @ECLASS_VARIABLE: OCT_BIN
|
||||
# @DESCRIPTION:
|
||||
# octave binary name
|
||||
OCT_BIN="octave"
|
||||
|
||||
SRC_URI="mirror://sourceforge/octave/${P}.tar.gz"
|
||||
SLOT="0"
|
||||
|
||||
# @FUNCTION: octaveforge_src_unpack
|
||||
# @DESCRIPTION:
|
||||
# function to unpack and set the correct S
|
||||
octaveforge_src_unpack() {
|
||||
default
|
||||
if [[ ! -d "${WORKDIR}/${P}" ]]; then
|
||||
S="${WORKDIR}/${PN}"
|
||||
fi
|
||||
}
|
||||
|
||||
# @FUNCTION: octaveforge_src_prepare
|
||||
# @DESCRIPTION:
|
||||
# function to add octaveforge specific makefile and configure and reconfigure if possible
|
||||
octaveforge_src_prepare() {
|
||||
default
|
||||
|
||||
_generate_configure || die
|
||||
|
||||
if [[ -e "${S}/src/configure.ac" ]]; then
|
||||
pushd "${S}/src" || die
|
||||
eautoreconf
|
||||
popd || die
|
||||
elif [[ -e "${S}/src/autogen.sh" ]]; then
|
||||
pushd "${S}/src" || die
|
||||
edo ./autogen.sh
|
||||
popd || die
|
||||
fi
|
||||
if [[ -e "${S}/src/Makefile" ]]; then
|
||||
sed -i 's/ -s / /g' "${S}/src/Makefile" || die
|
||||
fi
|
||||
}
|
||||
|
||||
octaveforge_src_compile() {
|
||||
PKGDIR="$(pwd | sed -e 's|^.*/||' || die)"
|
||||
export OCT_PACKAGE="${TMPDIR}/${PKGDIR}.tar.gz"
|
||||
export MKOCTFILE="mkoctfile -v"
|
||||
|
||||
cmd="disp(__octave_config_info__('octlibdir'));"
|
||||
OCTLIBDIR=$(octavecommand "${cmd}" || die)
|
||||
export LFLAGS="${LFLAGS} -L${OCTLIBDIR}"
|
||||
export LDFLAGS="${LDFLAGS} -L${OCTLIBDIR}"
|
||||
|
||||
if [[ -e src/Makefile ]]; then
|
||||
emake -C src
|
||||
fi
|
||||
|
||||
if [[ -e src/Makefile ]]; then
|
||||
mv src/Makefile src/Makefile.disable || die
|
||||
fi
|
||||
if [[ -e src/configure ]]; then
|
||||
mv src/configure src/configure.disable || die
|
||||
fi
|
||||
|
||||
pushd .. || die
|
||||
tar -czf "${OCT_PACKAGE}" "${PKGDIR}" || die
|
||||
}
|
||||
|
||||
# @FUNCTION: octaveforge_src_install
|
||||
# @DESCRIPTION:
|
||||
# function to install the octave package
|
||||
octaveforge_src_install() {
|
||||
DESTDIR="${D}" _octaveforge_pkg_install || die
|
||||
}
|
||||
|
||||
octaveforge_src_test() {
|
||||
DESTDIR="${T}" _octaveforge_pkg_install || die
|
||||
|
||||
# cargo culted from Fedora
|
||||
cmd="
|
||||
pkg('load','${PN}');
|
||||
oruntests('${oct_pkgdir}');
|
||||
unlink(pkg('local_list'));
|
||||
unlink(pkg('global_list'));
|
||||
"
|
||||
octavecommand "${cmd}" || die
|
||||
}
|
||||
|
||||
# @FUNCTION: octaveforge_pkg_postinst
|
||||
# @DESCRIPTION:
|
||||
# function that will rebuild the octave package database
|
||||
octaveforge_pkg_postinst() {
|
||||
einfo "Registering ${CATEGORY}/${PF} on the Octave package database."
|
||||
if [[ ! -d "${OCT_PKGDIR}" ]] ; then
|
||||
mkdir -p "${OCT_PKGDIR}" || die
|
||||
fi
|
||||
cmd="pkg('rebuild');"
|
||||
octavecommand "${cmd}" || die
|
||||
}
|
||||
|
||||
# @FUNCTION: octaveforge_pkg_prerm
|
||||
# @DESCRIPTION:
|
||||
# function that will run on_uninstall routines to prepare the package to remove
|
||||
octaveforge_pkg_prerm() {
|
||||
einfo 'Running on_uninstall routines to prepare the package to remove.'
|
||||
cmd="
|
||||
pkg('rebuild');
|
||||
l = pkg('list');
|
||||
disp(l{cellfun(@(x)strcmp(x.name,'${PN}'),l)}.dir);
|
||||
"
|
||||
oct_pkgdir=$(octavecommand "${cmd}" || die)
|
||||
rm -f "${oct_pkgdir}/packinfo/on_uninstall.m" || die
|
||||
if [[ -e "${oct_pkgdir}/packinfo/on_uninstall.m.orig" ]]; then
|
||||
mv "$oct_pkgdir"/packinfo/on_uninstall.m{.orig,} || die
|
||||
pushd "$oct_pkgdir/packinfo" || die
|
||||
cmd="
|
||||
l = pkg('list');
|
||||
on_uninstall(l{cellfun(@(x)strcmp(x.name,'${PN}'), l)});
|
||||
"
|
||||
octavecommand "${cmd}" || die
|
||||
fi
|
||||
}
|
||||
|
||||
# @FUNCTION: octaveforge_pkg_postrm
|
||||
# @DESCRIPTION:
|
||||
# function that will rebuild the octave package database
|
||||
octaveforge_pkg_postrm() {
|
||||
einfo 'Rebuilding the Octave package database.'
|
||||
if [[ ! -d "${OCT_PKGDIR}" ]] ; then
|
||||
mkdir -p "${OCT_PKGDIR}" || die
|
||||
fi
|
||||
cmd="pkg('rebuild');"
|
||||
edo "${OCT_BIN}" -H --silent --no-gui --eval "${cmd}"
|
||||
}
|
||||
|
||||
octavecommand() {
|
||||
edo "${OCT_BIN}" -H -q --no-site-file --no-gui --eval "$1"
|
||||
}
|
||||
|
||||
_generate_configure() {
|
||||
cat << EOF > configure || die
|
||||
#! /bin/sh -f
|
||||
|
||||
if [ -e src/configure ]; then
|
||||
cd src
|
||||
./configure $*
|
||||
fi
|
||||
EOF
|
||||
chmod 0755 "configure" || die
|
||||
}
|
||||
|
||||
_octaveforge_pkg_install() {
|
||||
TMPDIR="${T}"
|
||||
DISTPKG='Gentoo'
|
||||
|
||||
pushd ../ || die
|
||||
if [[ "X${DISTPKG}X" != "XX" ]]; then
|
||||
stripcmd="
|
||||
unlink(pkg('local_list'));
|
||||
unlink(pkg('global_list'));
|
||||
"
|
||||
fi
|
||||
if [[ "X${DESTDIR}X" = "XX" ]]; then
|
||||
cmd="
|
||||
warning('off','all');
|
||||
pkg('install','${OCT_PACKAGE}');
|
||||
l=pkg('list');
|
||||
disp(l{cellfun(@(x)strcmp(x.name,'${PN}'),l)}.dir);
|
||||
${stripcmd}
|
||||
"
|
||||
oct_pkgdir=$(octavecommand "${cmd}" || die)
|
||||
else
|
||||
cmd="disp(fullfile(__octave_config_info__('datadir'),'octave'));"
|
||||
shareprefix=${DESTDIR}/$(octavecommand "${cmd}" || die)
|
||||
cmd="disp(fullfile(__octave_config_info__('libdir'),'octave'));"
|
||||
libprefix=${DESTDIR}/$(octavecommand "${cmd}" || die)
|
||||
octprefix="${shareprefix}/packages"
|
||||
archprefix="${libprefix}/packages"
|
||||
if [[ ! -e "${octprefix}" ]]; then
|
||||
mkdir -p "${octprefix}" || die
|
||||
fi
|
||||
if [[ ! -e "${archprefix}" ]]; then
|
||||
mkdir -p "${archprefix}" || die
|
||||
fi
|
||||
cmd="
|
||||
warning('off','all');
|
||||
pkg('prefix','${octprefix}','${archprefix}');
|
||||
pkg('global_list',fullfile('${shareprefix}','octave_packages'));
|
||||
pkg('local_list',fullfile('${shareprefix}','octave_packages'));
|
||||
pkg('install','-nodeps','-verbose','${OCT_PACKAGE}');
|
||||
"
|
||||
octavecommand "${cmd}" || die
|
||||
cmd="
|
||||
warning('off','all');
|
||||
pkg('prefix','${octprefix}','${archprefix}');
|
||||
pkg('global_list',fullfile('${shareprefix}','octave_packages'));
|
||||
pkg('local_list',fullfile('${shareprefix}','octave_packages'));
|
||||
l=pkg('list');
|
||||
disp(l{cellfun(@(x)strcmp(x.name,'${PN}'),l)}.dir);
|
||||
${stripcmd}
|
||||
"
|
||||
oct_pkgdir=$(octavecommand "${cmd}" || die)
|
||||
fi
|
||||
export oct_pkgdir
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
DIST invidious-2024.02.18.tar.gz 3293879 BLAKE2B 470c60c36122c188f8371484c85401504789fdfa97570bcf1dea7c280831bcea3b40f54d4a7674746dfac6a3a571b1e7782189b3f32cf18d8aa372344fa5bf08 SHA512 ca11ce337368e3c18298c119a44395a0b95d30660dcf81d5f09bd1ec6c754b97f1e6aeaa940f0da1f12405583b23b00a7f8800193b6b12ec1f7f3ea3e66baffb
|
||||
DIST invidious-2024.03.08.tar.gz 3293907 BLAKE2B 3e4b8650d57452ce0a6d1265cd391a74fbefeecdea4911126f37aec0bd3ee3e7167b086cf204858906e52cfd700e1b04d598bf9ee990a830932cb38466c1a04e SHA512 543dee1e8af07969be06589616198ece6cccace8833eeb1929c902d57ba5e7ebd13dc0cef5e1774ed98f8d85352547fc444690879a377e2f64b2781ea848f011
|
||||
DIST invidious-2024.03.31.tar.gz 3293940 BLAKE2B 1d9ae4f2b3fc77db3351a383800984b15e2e619543b52484bd12aeb844c6655e23bb95b1fa0fb7d4b389a84bc986ec17de51821cfe9be5d32aab20e7f7422513 SHA512 5b3630cfbbc01f5967bcd24fd6b5c680854c4abdeb87fcbf4b181f8149e49b21f54b5140e3af0218a72f11917c813171945acfa2a16211b7697e70134e6aa65b
|
||||
DIST invidious-mocks-11ec372.tar.gz 180392 BLAKE2B 899db54d4efdfc231d588155d52784d70a364c7382bd1652a3c384dc618435d646a50e957c1407f6ac7ade410e811438b23a16d9949e63f7791e34960bba1fc6 SHA512 7bc1aa17f555babaceca15fe51061400a6c8a9cb01ad15c5d22c155f3164aca7c6e49c8dcdbd894e1593c2c69d3ddaa201544b068510281e910b90a11a407e59
|
||||
DIST video.js-7.12.1.tgz 3511060 BLAKE2B 9ae5b1f6a0afab918b7dc3555fff2708963d4abb6c7903e13145b2d5393fb80e4ab6302c423b0ba15c805a624a23c25dd3db7865f1510c44cfc5d1d5ab1dbf54 SHA512 d0ec25eeae196e6e981d7f783fd595a90daf9e97de3723ad4cdc2e4c41282a8bd9a20a2a57631c3949ac40633811db60e2f19388fef816fe8755ad55e857917e
|
||||
DIST videojs-contrib-quality-levels-2.1.0.tgz 18770 BLAKE2B f6c4789835379380bde941d032bb0afbc49d093eb9407308094afd0b9c1f25781f57d8f8db928e318eb270927574a5fd505f08af13f0baf55897723ec489b769 SHA512 76a19019b2fd00586e731922ed9874737908847d0f00f707121ea351d47268509578ebaa9c9ace62cff7c0db6ca240dd05d45fd83bb66a79e9bb86765da49946
|
||||
|
||||
@@ -5,7 +5,7 @@ EAPI=8
|
||||
|
||||
inherit check-reqs shards systemd
|
||||
|
||||
COMMIT="e8a36985aff1a5b33ddf9abea85dd2c23422c2f7"
|
||||
COMMIT="08390acd0c17875fddb84cabba54197a5b5740e4"
|
||||
MOCKS_COMMIT="11ec372f72747c09d48ffef04843f72be67d5b54"
|
||||
MOCKS_P="${PN}-mocks-${MOCKS_COMMIT:0:7}"
|
||||
DESCRIPTION="Invidious is an alternative front-end to YouTube"
|
||||
Reference in New Issue
Block a user