sh: Remove remnants to compile out fc completely

r360139 made compiling with NO_HISTORY work. This #define does not remove
the fc and bind builtins completely but makes them always write an error
message.

However, there was also some code in builtins.def and mkbuiltins to remove
the fc builtin entirely (but not the bind builtin). The additional build
system complication to make this work seems not worth it, so remove that
code.
This commit is contained in:
Jilles Tjoelker 2020-04-22 21:45:43 +00:00
parent 8262311cbe
commit da06ef25e6
2 changed files with 3 additions and 10 deletions

View File

@ -39,8 +39,6 @@
# of a C routine.
# The -j flag specifies that this command is to be excluded from systems
# without job control.
# The -h flag specifies that this command is to be excluded from systems
# based on the NO_HISTORY compile-time symbol.
# The -n flag specifies that this command can safely be run in the same
# process when it is the only command in a command substitution. Some
# commands have special logic defined in safe_builtin().
@ -71,7 +69,7 @@ fgcmd -j fg
freebsd_wordexpcmd freebsd_wordexp
getoptscmd getopts
hashcmd hash
histcmd -h fc
histcmd fc
jobidcmd -n jobid
jobscmd -n jobs
killcmd -n kill

View File

@ -35,11 +35,6 @@
# $FreeBSD$
temp=`mktemp -t ka`
havehist=1
if [ "X$1" = "X-h" ]; then
havehist=0
shift
fi
srcdir=$1
havejobs=0
if grep '^#define[ ]*JOBS[ ]*1' $srcdir/shell.h > /dev/null
@ -56,8 +51,8 @@ cat <<\!
#include "builtins.h"
!
awk '/^[^#]/ {if(('$havejobs' || $2 != "-j") && ('$havehist' || $2 != "-h")) \
print $0}' $srcdir/builtins.def | sed 's/-[hj]//' > $temp
awk '/^[^#]/ {if('$havejobs' || $2 != "-j") \
print $0}' $srcdir/builtins.def | sed 's/-j//' > $temp
echo 'int (*const builtinfunc[])(int, char **) = {'
awk '/^[^#]/ { printf "\t%s,\n", $1}' $temp
echo '};