view src/m/sun386.h @ 26879:b4de7fa9866e

(x_append_glyph): Setup members of struct glyph properly for composition. (x_append_composite_glyph): New function. (VCENTER_BASELINE_OFFSET): New macro. (x_produce_glyphs): If it->what == IT_COMPOSITION, setup members of struct it for the composition. Cache pixel offsets in the struct composition. Delete codes for a composite character. Handle Vignore_relative_composition in composition code. (struct glyph_string): Delete member cmpcharp, add new member cmp. (x_set_cursor_gc): Check s->cmp, not s->cmpcharp. (x_compute_glyph_string_overhangs): Likewise. (x_get_glyph_overhangs): Delete codes for a composite character. (x_right_overwritten): Check s->cmp, not s->cmpcharp. (x_draw_glyph_string_background): Likewise. Delete codes for checking s->gidx for a composition. (x_draw_glyph_string_foreground): Delete code for a composite character. (x_draw_composite_glyph_string_foreground): New function. (x_draw_glyph_string_box): Check s->cmp, not s->cmpcharp. (x_draw_glyph_string): Handle the case of COMPOSITE_GLYPH. (struct work): Deleted. (x_fill_composite_glyph_string): Argument changed. Mostly rewritten for that. (x_fill_glyph_string): Don't check CHARSET_COMPOSITION. (BUILD_CHAR_GLYPH_STRINGS): Don't handle composition here. (BUILD_COMPOSITE_GLYPH_STRING): New macro. (BUILD_GLYPH_STRINGS): For composition, call BUILD_COMPOSITE_GLYPH_STRING. (x_new_font): Initialize f->output_data.x->baseline_offset, not f->output_data.x->font_baseline.
author Kenichi Handa <handa@m17n.org>
date Wed, 15 Dec 1999 00:27:21 +0000
parents ee40177f6c68
children 23a1cea22d13
line wrap: on
line source

/* machine description file for Sun's 386-based RoadRunner.  This file borrows heavily from
  "sun2.h", but since that file is heavily cpu-specific, it was easier
  not to include it.

   Copyright (C) 1988 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., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.  */

/* The following line tells the configuration script what sort of 
   operating system this machine is likely to run.
   USUAL-OPSYS="note"

NOTE-START
  Use s-sunos4-0.h for operating system version 4.0, and s-sunos4-1.h
  for later versions.  See the file share-lib/SUNBUG for how to solve
  problems caused by bugs in the "export" version of SunOS 4.
NOTE-END  */

/* Say this machine is a bird */
#ifndef roadrunner
#define roadrunner
#endif

/* Actual cpu-specific defs */
#include "intel386.h"

/* Data type of load average, as read out of kmem.  */

#define LOAD_AVE_TYPE long

/* Convert that into an integer that is 100 for a load average of 1.0  */

#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)

/* Underscores are not prepended to C symbols on this machine.  */ 
#undef LDAV_SYMBOL
#define LDAV_SYMBOL "avenrun"

/* Must use the system's termcap.  It does special things.  */

#define LIBS_TERMCAP -ltermcap

/* Arrange to link with sun windows, if requested.  */
/* For details on emacstool and sunfns, see etc/SUN-SUPPORT */
/* These programs require Sun UNIX 4.2 Release 3.2 or greater */

#ifdef HAVE_SUN_WINDOWS
#define OTHER_FILES  ${etcdir}emacstool
#define LIBS_MACHINE -lsuntool -lsunwindow -lpixrect
#define OBJECTS_MACHINE sunfns.o
#define SYMS_MACHINE syms_of_sunfns ()
#define PURESIZE 132000
#endif

/* Roadrunner uses 'COFF' format */
#define COFF

#define C_SWITCH_MACHINE -Bstatic       /* avoid dynamic linking */
#define LD_SWITCH_MACHINE -n -Bstatic
/* Get rid of the -e __start that s-sunos4.h does.  */
#undef LD_SWITCH_SYSTEM

#ifdef USG
/* USG detects Solaris.  j.w.hawtin@lut.ac.uk says Solaris 2.1
   on the 386 needs this.  */
#define LIBS_MACHINE -lkvm
#endif