Mercurial > emacs
view src/s/irix5-0.h @ 90906:f8694254fa1d
(w32font_info): Remove subranges.
(QCsubranges, Qmodern, Qswiss, Qroman): Remove.
(QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
(Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
(Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
(Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
(Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
(Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
(Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
(Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
(Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
New symbols.
(font_callback_data): New struct.
(w32font_list, w32font_match): Use it.
(w32font_open): Don't populate subranges.
(w32font_has_char): Use script Lisp symbols, not subrange bitmask.
(w32font_encode_char): Always return unicode code-point as-is.
(w32font_text_extents): Supply a tranformation matrix to
GetGlyphOutline. Never look up by glyph index. Avoid looping
twice. Use unicode version of GetTexExtentPoint32 instead of
glyph index version.
(set_fonts_frame): Remove
(w32_enumfont_pattern_entity): Add frame parameter, use it to
set frame parameter. Use backward compatible fake foundries.
Save generic family in extra slot under QCfamily. Make width slot
constant. Save QCspacing value. Save list of scripts instead of
binary subranges.
(w32_generic_family, logfonts_match, font_matches_spec): New functions.
(add_font_entity_to_list): Use font_callback_data struct. Filter
unwanted fonts.
(add_one_font_entity_to_list): Use font_callback_data struct.
(w32_registry): Default to iso10646_1;
(fill_in_logfont): Use dpi from extra slot. Don't bother with
string font registries. Don't fill in font name if it is a generic
family name, fill family instead. Use spacing, family and script
extra info to fill pitch, family and charset fields.
(list_all_matching_fonts): Use font_callback_data struct.
(unicode_range_for_char): Remove.
(font_supported_scripts): New function.
(w32font_initialize): Remove.
(syms_of_w32font): Update which symbols are defined.
author | Jason Rumney <jasonr@gnu.org> |
---|---|
date | Sat, 02 Jun 2007 23:42:23 +0000 |
parents | dd7c098af727 |
children | f55f9811f5d7 |
line wrap: on
line source
/* Definitions file for GNU Emacs running on Silicon Graphics Irix system 5.0. Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. This file is part of GNU Emacs. GNU Emacs 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 2, or (at your option) any later version. GNU Emacs 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 GNU Emacs; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "usg5-4.h" #define IRIX5 #undef sigsetmask /* use sys_sigsetmask */ #undef _longjmp /* use system versions, not conservative aliases */ #undef _setjmp #define SETPGRP_RELEASES_CTTY #ifdef LIBS_SYSTEM #undef LIBS_SYSTEM #endif #ifdef LIB_STANDARD #undef LIB_STANDARD #endif #ifdef SYSTEM_TYPE #undef SYSTEM_TYPE #endif #define SYSTEM_TYPE "irix" #ifdef SETUP_SLAVE_PTY #undef SETUP_SLAVE_PTY #endif /* thomas@mathematik.uni-bremen.de says this is needed. */ /* Make process_send_signal work by "typing" a signal character on the pty. */ #define SIGNALS_VIA_CHARACTERS /* SGI has all the fancy wait stuff, but we can't include sys/wait.h because it defines BIG_ENDIAN and LITTLE_ENDIAN (ugh!.) Instead we'll just define WNOHANG right here. (An implicit decl is good enough for wait3.) */ /* #define WNOHANG 0x1 */ /* No need to use sprintf to get the tty name--we get that from _getpty. */ #ifdef PTY_TTY_NAME_SPRINTF #undef PTY_TTY_NAME_SPRINTF #endif #define PTY_TTY_NAME_SPRINTF /* No need to get the pty name at all. */ #ifdef PTY_NAME_SPRINTF #undef PTY_NAME_SPRINTF #endif #define PTY_NAME_SPRINTF #ifdef emacs char *_getpty(); #endif /* We need only try once to open a pty. */ #define PTY_ITERATION /* Here is how to do it. */ #define PTY_OPEN \ { \ struct sigaction ocstat, cstat; \ char * name; \ sigemptyset(&cstat.sa_mask); \ cstat.sa_handler = SIG_DFL; \ cstat.sa_flags = 0; \ sigaction(SIGCLD, &cstat, &ocstat); \ name = _getpty (&fd, O_RDWR | O_NDELAY, 0600, 0); \ sigaction(SIGCLD, &ocstat, (struct sigaction *)0); \ if (name == 0) \ return -1; \ if (fd < 0) \ return -1; \ if (fstat (fd, &stb) < 0) \ return -1; \ strcpy (pty_name, name); \ } /* Since we use POSIX constructs in PTY_OPEN, we must force POSIX throughout. */ #define POSIX_SIGNALS /* Info from simon@lia.di.epfl.ch (Simon Leinen) suggests this is needed. */ #define GETPGRP_NO_ARG /* Ulimit(UL_GMEMLIM) is busted... */ #define ULIMIT_BREAK_VALUE 0x14000000 /* Tell process_send_signal to use VSUSP instead of VSWTCH. */ #define PREFER_VSUSP /* define MAIL_USE_FLOCK if the mailer uses flock to interlock access to /usr/spool/mail/$USER. The alternative is that a lock file named /usr/spool/mail/$USER.lock. */ #define MAIL_USE_FLOCK /* use K&R C */ #if 0 #ifndef __GNUC__ #define C_SWITCH_SYSTEM -cckr #endif #endif /* -g used not to work on Irix unless you used gas, and since gcc warns if you use it, turn off the warning. */ /* -g does now work, at least on recent Irix 6 versions with gcc 2.95; I'm not sure about Irix 5 -- fx */ #ifdef __GNUC__ #define C_DEBUG_SWITCH #endif /* Prevent the variable ospeed from being defined by -lcurses because it defines it with too few bytes. */ #define ospeed ospeed_ #define NARROWPROTO 1 #define USE_MMAP_FOR_BUFFERS 1 /* arch-tag: ad0660e0-acf8-46ae-b866-4f3df5b1101b (do not change this comment) */