Why is it ppc-specific? Le lun. 30 sept. 2024, 20:49, Leo Sandoval <lsand...@redhat.com> a écrit :
> From: Mark Hamzy <ha...@us.ibm.com> > > Add configuration support for serial terminal consoles. This will set > the maximum screen size so that text is not overwritten. > > Signed-off-by: Mark Hamzy <ha...@us.ibm.com> > Signed-off-by: Robbie Harwood <rharw...@redhat.com> > --- > Makefile.util.def | 7 ++ > util/grub.d/20_ppc_terminfo.in | 114 +++++++++++++++++++++++++++++++++ > 2 files changed, 121 insertions(+) > create mode 100644 util/grub.d/20_ppc_terminfo.in > > diff --git a/Makefile.util.def b/Makefile.util.def > index 9432365a9..09bfcadd9 100644 > --- a/Makefile.util.def > +++ b/Makefile.util.def > @@ -517,6 +517,13 @@ script = { > installdir = grubconf; > }; > > +script = { > + name = '20_ppc_terminfo'; > + common = util/grub.d/20_ppc_terminfo.in; > + installdir = grubconf; > + condition = COND_HOST_LINUX; > +}; > + > script = { > name = '30_os-prober'; > common = util/grub.d/30_os-prober.in; > diff --git a/util/grub.d/20_ppc_terminfo.in b/util/grub.d/ > 20_ppc_terminfo.in > new file mode 100644 > index 000000000..10d665868 > --- /dev/null > +++ b/util/grub.d/20_ppc_terminfo.in > @@ -0,0 +1,114 @@ > +#! /bin/sh > +set -e > + > +# grub-mkconfig helper script. > +# Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc. > +# > +# GRUB is free software: you can redistribute it and/or modify > +# it under the terms of the GNU General Public License as published by > +# the Free Software Foundation, either version 3 of the License, or > +# (at your option) any later version. > +# > +# GRUB is distributed in the hope that it will be useful, > +# but WITHOUT ANY WARRANTY; without even the implied warranty of > +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > +# GNU General Public License for more details. > +# > +# You should have received a copy of the GNU General Public License > +# along with GRUB. If not, see <http://www.gnu.org/licenses/>. > + > +prefix=@prefix@ > +exec_prefix=@exec_prefix@ > +bindir=@bindir@ > +libdir=@libdir@ > +. "@datadir@/@PACKAGE@/grub-mkconfig_lib" > + > +export TEXTDOMAIN=@PACKAGE@ > +export TEXTDOMAINDIR=@localedir@ > + > +X=80 > +Y=24 > +TERMINAL=ofconsole > + > +argument () { > + opt=$1 > + shift > + > + if test $# -eq 0; then > + echo "$0: option requires an argument -- '$opt'" 1>&2 > + exit 1 > + fi > + echo $1 > +} > + > +check_terminfo () { > + > + while test $# -gt 0 > + do > + option=$1 > + shift > + > + case "$option" in > + terminfo | TERMINFO) > + ;; > + > + -g) > + NEWXY=`argument $option "$@"` > + NEWX=`echo $NEWXY | cut -d x -f 1` > + NEWY=`echo $NEWXY | cut -d x -f 2` > + > + if [ ${NEWX} -ge 80 ] ; then > + X=${NEWX} > + else > + echo "Warning: ${NEWX} is less than the minimum size of 80" > + fi > + > + if [ ${NEWY} -ge 24 ] ; then > + Y=${NEWY} > + else > + echo "Warning: ${NEWY} is less than the minimum size of 24" > + fi > + > + shift > + ;; > + > + *) > +# # accept console or ofconsole > +# if [ "$option" != "console" -a "$option" != "ofconsole" ] ; then > +# echo "Error: GRUB_TERMINFO unknown console: $option" > +# exit 1 > +# fi > +# # perfer console > +# TERMINAL=console > + # accept ofconsole > + if [ "$option" != "ofconsole" ] ; then > + echo "Error: GRUB_TERMINFO unknown console: $option" > + exit 1 > + fi > + # perfer console > + TERMINAL=ofconsole > + ;; > + esac > + > + done > + > +} > + > +if ! uname -m | grep -q ppc ; then > + exit 0 > +fi > + > +if [ "x${GRUB_TERMINFO}" != "x" ] ; then > + F1=`echo ${GRUB_TERMINFO} | cut -d " " -f 1` > + > + if [ "${F1}" != "terminfo" ] ; then > + echo "Error: GRUB_TERMINFO is set to \"${GRUB_TERMINFO}\" The first > word should be terminfo." > + exit 1 > + fi > + > + check_terminfo ${GRUB_TERMINFO} > +fi > + > +cat << EOF > + terminfo -g ${X}x${Y} ${TERMINAL} > +EOF > -- > 2.46.1 > > > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > https://lists.gnu.org/mailman/listinfo/grub-devel >
_______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel