* [gentoo-dev] [PATCH] wrapper.eclass: Drop support for EAPIs 0 to 4
@ 2022-03-31 7:40 Ulrich Müller
0 siblings, 0 replies; only message in thread
From: Ulrich Müller @ 2022-03-31 7:40 UTC (permalink / raw
To: gentoo-dev; +Cc: Ulrich Müller
- Add EAPI conditional
- Drop unnecessary die statements
- Use sed instead of cat, to preserve indentation of output
Signed-off-by: Ulrich Müller <ulm@gentoo.org>
---
eclass/wrapper.eclass | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/eclass/wrapper.eclass b/eclass/wrapper.eclass
index 399c7cc269d4..8d3d273d81c6 100644
--- a/eclass/wrapper.eclass
+++ b/eclass/wrapper.eclass
@@ -1,59 +1,64 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: wrapper.eclass
# @MAINTAINER:
# base-system@gentoo.org
+# @SUPPORTED_EAPIS: 5 6 7 8
# @BLURB: create a shell wrapper script
+case ${EAPI} in
+ 5|6|7|8) ;;
+ *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
if [[ -z ${_WRAPPER_ECLASS} ]]; then
_WRAPPER_ECLASS=1
# @FUNCTION: make_wrapper
# @USAGE: <wrapper> <target> [chdir] [libpaths] [installpath]
# @DESCRIPTION:
# Create a shell wrapper script named wrapper in installpath
# (defaults to the 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.
make_wrapper() {
local wrapper=$1 bin=$2 chdir=$3 libdir=$4 path=$5
local tmpwrapper="${T}/tmp.wrapper.${wrapper##*/}"
- has "${EAPI:-0}" 0 1 2 && local EPREFIX=""
(
echo '#!/bin/sh'
if [[ -n ${libdir} ]] ; then
local var
if [[ ${CHOST} == *-darwin* ]] ; then
var=DYLD_LIBRARY_PATH
else
var=LD_LIBRARY_PATH
fi
- cat <<-EOF
+ sed 's/^X//' <<-EOF || die
if [ "\${${var}+set}" = "set" ] ; then
- export ${var}="\${${var}}:${EPREFIX}${libdir}"
+ X export ${var}="\${${var}}:${EPREFIX}${libdir}"
else
- export ${var}="${EPREFIX}${libdir}"
+ X export ${var}="${EPREFIX}${libdir}"
fi
EOF
fi
[[ -n ${chdir} ]] && printf 'cd "%s" &&\n' "${EPREFIX}${chdir}"
# We don't want to quote ${bin} so that people can pass complex
# things as ${bin} ... "./someprog --args"
printf 'exec %s "$@"\n' "${bin/#\//${EPREFIX}/}"
) > "${tmpwrapper}"
chmod go+rx "${tmpwrapper}"
if [[ -n ${path} ]] ; then
(
exeopts -m 0755
exeinto "${path}"
newexe "${tmpwrapper}" "${wrapper}"
) || die
else
- newbin "${tmpwrapper}" "${wrapper}" || die
+ newbin "${tmpwrapper}" "${wrapper}"
fi
}
fi
--
2.35.1
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2022-03-31 7:40 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-03-31 7:40 [gentoo-dev] [PATCH] wrapper.eclass: Drop support for EAPIs 0 to 4 Ulrich Müller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox