Mercurial > emacs
annotate src/s/sunos4shr.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 |
rev | line source |
---|---|
75958
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
1 /* |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
2 Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, 2006, |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
3 2007 Free Software Foundation, Inc. |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
4 |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
5 This file is part of GNU Emacs. |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
6 |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
7 GNU Emacs is free software; you can redistribute it and/or modify |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
8 it under the terms of the GNU General Public License as published by |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
9 the Free Software Foundation; either version 2, or (at your option) |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
10 any later version. |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
11 |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
12 GNU Emacs is distributed in the hope that it will be useful, |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
13 but WITHOUT ANY WARRANTY; without even the implied warranty of |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
15 GNU General Public License for more details. |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
16 |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
17 You should have received a copy of the GNU General Public License |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
18 along with GNU Emacs; see the file COPYING. If not, write to |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
19 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
20 Boston, MA 02110-1301, USA. */ |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
21 |
386a4a482dee
Add copyright and license notice. Copyright years from base include
Glenn Morris <rgm@gnu.org>
parents:
52401
diff
changeset
|
22 |
5039
8755e1e3faf1
(GNU_MALLOC, REL_ALLOC): Don't define if already defined.
Richard M. Stallman <rms@gnu.org>
parents:
4205
diff
changeset
|
23 /* This file permits building Emacs with a shared libc on Sunos 4. |
8755e1e3faf1
(GNU_MALLOC, REL_ALLOC): Don't define if already defined.
Richard M. Stallman <rms@gnu.org>
parents:
4205
diff
changeset
|
24 To make this work, you must completely replace your C shared library |
9031 | 25 using one of the SunOS 4.1.x jumbo replacement patches from Sun. |
26 Here are the patch numbers for Sunos 4.1.3: | |
27 100890-10 SunOS 4.1.3: domestic libc jumbo patch | |
28 100891-10 SunOS 4.1.3: international libc jumbo patch */ | |
29 | |
5039
8755e1e3faf1
(GNU_MALLOC, REL_ALLOC): Don't define if already defined.
Richard M. Stallman <rms@gnu.org>
parents:
4205
diff
changeset
|
30 |
2733
d7cacd332230
* s/sunos4shr.h: Apply changes from David J. Mackenzie; this isn't
Jim Blandy <jimb@redhat.com>
parents:
625
diff
changeset
|
31 #include "sunos4-1.h" |
456 | 32 |
33 /* Say that the text segment of a.out includes the header; | |
34 the header actually occupies the first few bytes of the text segment | |
35 and is counted in hdr.a_text. */ | |
36 | |
37 /* Misleading! Actually gets loaded after crt0.o */ | |
38 #define START_FILES pre-crt0.o | |
39 | |
40 /* | |
41 * Kludge! can't get at symbol "start" in std crt0.o | |
42 * Who the #$%&* decided to remove the __ characters! | |
43 * Someone needs to fix this in sysdep.c with an #ifdef BROKEN_START in | |
44 * sysdep.c. We do not use this address so any value should do really. Still | |
45 * may need it in the future? | |
46 */ | |
47 #define BROKEN_START | |
48 #define TEXT_START 0x2020 | |
49 | |
50 #define UNEXEC unexsunos4.o | |
51 #define RUN_TIME_REMAP | |
11615
7fa33c87242c
(ORDINARY_LINK): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
9073
diff
changeset
|
52 #define ORDINARY_LINK |
12585
771e75e8ebb5
(SUNOS4_SHARED_LIBRARIES): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
12459
diff
changeset
|
53 #define SUNOS4_SHARED_LIBRARIES |
2733
d7cacd332230
* s/sunos4shr.h: Apply changes from David J. Mackenzie; this isn't
Jim Blandy <jimb@redhat.com>
parents:
625
diff
changeset
|
54 |
d7cacd332230
* s/sunos4shr.h: Apply changes from David J. Mackenzie; this isn't
Jim Blandy <jimb@redhat.com>
parents:
625
diff
changeset
|
55 #undef LD_SWITCH_SYSTEM |
18586
41f11018aeb5
(LD_SWITCH_SYSTEM_TEMACS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
13863
diff
changeset
|
56 #undef LD_SWITCH_SYSTEM_TEMACS |
4165
328187f39c3a
(SYSTEM_MALLOC): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
2733
diff
changeset
|
57 |
328187f39c3a
(SYSTEM_MALLOC): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
2733
diff
changeset
|
58 #undef SYSTEM_MALLOC |
5039
8755e1e3faf1
(GNU_MALLOC, REL_ALLOC): Don't define if already defined.
Richard M. Stallman <rms@gnu.org>
parents:
4205
diff
changeset
|
59 #ifndef GNU_MALLOC |
4165
328187f39c3a
(SYSTEM_MALLOC): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
2733
diff
changeset
|
60 #define GNU_MALLOC |
5039
8755e1e3faf1
(GNU_MALLOC, REL_ALLOC): Don't define if already defined.
Richard M. Stallman <rms@gnu.org>
parents:
4205
diff
changeset
|
61 #endif |
8755e1e3faf1
(GNU_MALLOC, REL_ALLOC): Don't define if already defined.
Richard M. Stallman <rms@gnu.org>
parents:
4205
diff
changeset
|
62 #ifndef REL_ALLOC |
4165
328187f39c3a
(SYSTEM_MALLOC): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
2733
diff
changeset
|
63 #define REL_ALLOC |
5039
8755e1e3faf1
(GNU_MALLOC, REL_ALLOC): Don't define if already defined.
Richard M. Stallman <rms@gnu.org>
parents:
4205
diff
changeset
|
64 #endif |
4205 | 65 |
66 /* khera@cs.duke.edu says this is needed. */ | |
67 #define memmove(to, from, size) bcopy (from, to, size) | |
9073
43aa8427db01
(USE_DL_STUBS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
9031
diff
changeset
|
68 |
43aa8427db01
(USE_DL_STUBS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
9031
diff
changeset
|
69 #undef USE_DL_STUBS |
12459
d1da7f16002c
(LIBXMU): New definitions (two alternative ones).
Richard M. Stallman <rms@gnu.org>
parents:
11615
diff
changeset
|
70 |
13863
8b143e9a5394
(LIBXMU): Replace previous change.
Richard M. Stallman <rms@gnu.org>
parents:
13711
diff
changeset
|
71 #ifndef HAVE_X11R6 |
8b143e9a5394
(LIBXMU): Replace previous change.
Richard M. Stallman <rms@gnu.org>
parents:
13711
diff
changeset
|
72 /* With X11R5 it was reported that linking -lXmu dynamically |
8b143e9a5394
(LIBXMU): Replace previous change.
Richard M. Stallman <rms@gnu.org>
parents:
13711
diff
changeset
|
73 did not work. With X11R6, it does work; and since normally |
8b143e9a5394
(LIBXMU): Replace previous change.
Richard M. Stallman <rms@gnu.org>
parents:
13711
diff
changeset
|
74 only the dynamic libraries are available, we should use them. */ |
12459
d1da7f16002c
(LIBXMU): New definitions (two alternative ones).
Richard M. Stallman <rms@gnu.org>
parents:
11615
diff
changeset
|
75 #ifdef __GNUC__ |
13863
8b143e9a5394
(LIBXMU): Replace previous change.
Richard M. Stallman <rms@gnu.org>
parents:
13711
diff
changeset
|
76 #define LIBXMU -Xlinker -Bstatic -lXmu -Xlinker -Bdynamic |
12459
d1da7f16002c
(LIBXMU): New definitions (two alternative ones).
Richard M. Stallman <rms@gnu.org>
parents:
11615
diff
changeset
|
77 #else |
13863
8b143e9a5394
(LIBXMU): Replace previous change.
Richard M. Stallman <rms@gnu.org>
parents:
13711
diff
changeset
|
78 #define LIBXMU -Bstatic -lXmu -Bdynamic |
12459
d1da7f16002c
(LIBXMU): New definitions (two alternative ones).
Richard M. Stallman <rms@gnu.org>
parents:
11615
diff
changeset
|
79 #endif |
13863
8b143e9a5394
(LIBXMU): Replace previous change.
Richard M. Stallman <rms@gnu.org>
parents:
13711
diff
changeset
|
80 |
8b143e9a5394
(LIBXMU): Replace previous change.
Richard M. Stallman <rms@gnu.org>
parents:
13711
diff
changeset
|
81 #endif /* not HAVE_X11R6 */ |
52401 | 82 |
83 /* arch-tag: cb54321a-ed45-4c17-a23e-1c157758da78 | |
84 (do not change this comment) */ |