Port Unicode char detection to FreeBSD+svgalib

Problem reported by Ashish SHUKLA in:
http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
* configure.ac: Check for struct unipair.unicode instead of for
<linux/kd.h>, since that’s more specific to what the code actually needs.
* src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
This commit is contained in:
Paul Eggert 2015-09-13 11:55:28 -07:00
parent 59e3f2df93
commit a85472bbdc
2 changed files with 5 additions and 4 deletions

View file

@ -1582,7 +1582,6 @@ fi
dnl checks for header files
AC_CHECK_HEADERS_ONCE(
linux/kd.h
sys/systeminfo.h
sys/sysinfo.h
coff.h pty.h
@ -3999,6 +3998,8 @@ AC_SUBST(KRB4LIB)
AC_CHECK_HEADERS(valgrind/valgrind.h)
AC_CHECK_MEMBERS([struct unipair.unicode], [], [], [[#include <linux/kd.h>]])
AC_CHECK_FUNCS_ONCE(tzset)
ok_so_far=yes

View file

@ -28,7 +28,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include "coding.h"
#include "keyboard.h"
#ifdef HAVE_LINUX_KD_H
#if HAVE_STRUCT_UNIPAIR_UNICODE
# include <errno.h>
# include <linux/kd.h>
# include <sys/ioctl.h>
@ -532,7 +532,7 @@ selected frame's terminal). */)
return store_terminal_param (decode_live_terminal (terminal), parameter, value);
}
#if HAVE_LINUX_KD_H
#if HAVE_STRUCT_UNIPAIR_UNICODE
/* Compute the glyph code table for T. */
@ -575,7 +575,7 @@ calculate_glyph_code_table (struct terminal *t)
Lisp_Object
terminal_glyph_code (struct terminal *t, int ch)
{
#if HAVE_LINUX_KD_H
#if HAVE_STRUCT_UNIPAIR_UNICODE
if (t->type == output_termcap)
{
/* As a hack, recompute the table when CH is the maximum