#!/bin/sh
##############################################################################
-# Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. #
+# Copyright (c) 1998-2017,2019 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
# copy of this software and associated documentation files (the "Software"), #
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: MKfallback.sh,v 1.17 2017/01/07 16:05:16 tom Exp $
+# $Id: MKfallback.sh,v 1.22 2019/06/30 10:44:15 tom Exp $
#
# MKfallback.sh -- create fallback table for entry reads
#
tic_path=$1
shift
+infocmp_path=$1
+shift
+
case $tic_path in #(vi
/*)
tic_head=`echo "$tic_path" | sed -e 's,/[^/]*$,,'`
for x in $*
do
echo "/* $x */"
- infocmp -E $x
+ $infocmp_path -E $x | sed -e 's/\<short\>/NCURSES_INT2/g'
done
cat <<EOF
-static const TERMTYPE fallbacks[$#] =
+static const TERMTYPE2 fallbacks[$#] =
{
EOF
comma=""
for x in $*
do
echo "$comma /* $x */"
- infocmp -e $x
+ $infocmp_path -e $x
comma=","
done
fi
cat <<EOF
-NCURSES_EXPORT(const TERMTYPE *) _nc_fallback (const char *name GCC_UNUSED)
+NCURSES_EXPORT(const TERMTYPE2 *)
+_nc_fallback2 (const char *name GCC_UNUSED)
{
EOF
if [ "$*" ]
then
cat <<EOF
- const TERMTYPE *tp;
+ const TERMTYPE2 *tp;
for (tp = fallbacks;
- tp < fallbacks + sizeof(fallbacks)/sizeof(TERMTYPE);
+ tp < fallbacks + sizeof(fallbacks)/sizeof(TERMTYPE2);
tp++) {
if (_nc_name_match(tp->term_names, name, "|")) {
return(tp);
fi
cat <<EOF
- return((TERMTYPE *)0);
+ return((const TERMTYPE2 *)0);
+}
+
+#if NCURSES_EXT_NUMBERS
+#undef _nc_fallback
+
+/*
+ * This entrypoint is used by tack.
+ */
+NCURSES_EXPORT(const TERMTYPE *)
+_nc_fallback (const char *name)
+{
+ const TERMTYPE2 *tp = _nc_fallback2(name);
+ const TERMTYPE *result = 0;
+ if (tp != 0) {
+ static TERMTYPE temp;
+ _nc_export_termtype2(&temp, tp);
+ result = &temp;
+ }
+ return result;
}
+#endif
EOF
if test -n "$tmp_info" ; then