git-svn: trunk@2920
Török Edvin authored on 2007/03/09 05:30:49... | ... |
@@ -1,3 +1,12 @@ |
1 |
+Thu Mar 8 20:34:36 EET 2007 (edwin) |
|
2 |
+--------------------------------- |
|
3 |
+ * contrib/entitynorm/: fix entity list generator to support more entities, |
|
4 |
+ including & (bb #391) |
|
5 |
+ * libclamav/entitylist.h: new entitylist generated using |
|
6 |
+ contrib/entitynorm/generate_entitylist (bb #391) |
|
7 |
+ * libclamav/hashtab.c: fix bug in growing hash tables (must use hash on new |
|
8 |
+ table) |
|
9 |
+ |
|
1 | 10 |
Thu Mar 8 12:22:36 CET 2007 (tk) |
2 | 11 |
--------------------------------- |
3 | 12 |
* libclamav/readdb.c: call cli_dconf_print() from cl_build() |
... | ... |
@@ -45,7 +54,7 @@ Mon Mar 5 19:10:11 CET 2007 (tk) |
45 | 45 |
--------------------------------- |
46 | 46 |
* configure: add GNU/Hurd support (bb#363) |
47 | 47 |
|
48 |
-Fri Mar 2 19:36:00 CEST 2007 (edwin) |
|
48 |
+Fri Mar 2 19:36:00 EET 2007 (edwin) |
|
49 | 49 |
------------------------------------- |
50 | 50 |
* libclamav/htmlnorm.c: ampersands were missed in URLs. (bb #377) |
51 | 51 |
|
... | ... |
@@ -33,7 +33,8 @@ POST_UNINSTALL = : |
33 | 33 |
build_triplet = x86_64-unknown-linux-gnu |
34 | 34 |
host_triplet = x86_64-unknown-linux-gnu |
35 | 35 |
noinst_PROGRAMS = fixdb$(EXEEXT) postprocessdb$(EXEEXT) \ |
36 |
- generate_entitylist$(EXEEXT) |
|
36 |
+ generate_entitylist$(EXEEXT) \ |
|
37 |
+ generate_encoding_aliases$(EXEEXT) |
|
37 | 38 |
subdir = . |
38 | 39 |
DIST_COMMON = README $(am__configure_deps) \ |
39 | 40 |
$(srcdir)/../../config.guess $(srcdir)/../../config.sub \ |
... | ... |
@@ -55,6 +56,12 @@ PROGRAMS = $(noinst_PROGRAMS) |
55 | 55 |
am_fixdb_OBJECTS = fixdb.$(OBJEXT) |
56 | 56 |
fixdb_OBJECTS = $(am_fixdb_OBJECTS) |
57 | 57 |
fixdb_DEPENDENCIES = $(clam_builddir)/libclamav/libclamav.la |
58 |
+am_generate_encoding_aliases_OBJECTS = \ |
|
59 |
+ generate_encoding_aliases.$(OBJEXT) |
|
60 |
+generate_encoding_aliases_OBJECTS = \ |
|
61 |
+ $(am_generate_encoding_aliases_OBJECTS) |
|
62 |
+generate_encoding_aliases_DEPENDENCIES = \ |
|
63 |
+ $(clam_builddir)/libclamav/libclamav.la |
|
58 | 64 |
am_generate_entitylist_OBJECTS = generate_entitylist.$(OBJEXT) |
59 | 65 |
generate_entitylist_OBJECTS = $(am_generate_entitylist_OBJECTS) |
60 | 66 |
generate_entitylist_DEPENDENCIES = \ |
... | ... |
@@ -74,10 +81,10 @@ CCLD = $(CC) |
74 | 74 |
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ |
75 | 75 |
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ |
76 | 76 |
$(LDFLAGS) -o $@ |
77 |
-SOURCES = $(fixdb_SOURCES) $(generate_entitylist_SOURCES) \ |
|
78 |
- $(postprocessdb_SOURCES) |
|
79 |
-DIST_SOURCES = $(fixdb_SOURCES) $(generate_entitylist_SOURCES) \ |
|
80 |
- $(postprocessdb_SOURCES) |
|
77 |
+SOURCES = $(fixdb_SOURCES) $(generate_encoding_aliases_SOURCES) \ |
|
78 |
+ $(generate_entitylist_SOURCES) $(postprocessdb_SOURCES) |
|
79 |
+DIST_SOURCES = $(fixdb_SOURCES) $(generate_encoding_aliases_SOURCES) \ |
|
80 |
+ $(generate_entitylist_SOURCES) $(postprocessdb_SOURCES) |
|
81 | 81 |
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ |
82 | 82 |
html-recursive info-recursive install-data-recursive \ |
83 | 83 |
install-dvi-recursive install-exec-recursive \ |
... | ... |
@@ -101,16 +108,16 @@ DIST_ARCHIVES = $(distdir).tar.gz |
101 | 101 |
GZIP_ENV = --best |
102 | 102 |
distuninstallcheck_listfiles = find . -type f -print |
103 | 103 |
distcleancheck_listfiles = find . -type f -print |
104 |
-ACLOCAL = ${SHELL} /home/edwin/clam/clamav-devel/missing --run aclocal-1.10 |
|
105 |
-AMTAR = ${SHELL} /home/edwin/clam/clamav-devel/missing --run tar |
|
104 |
+ACLOCAL = ${SHELL} /home/edwin/clam/svn2/trunk/missing --run aclocal-1.10 |
|
105 |
+AMTAR = ${SHELL} /home/edwin/clam/svn2/trunk/missing --run tar |
|
106 | 106 |
AR = ar |
107 |
-AUTOCONF = ${SHELL} /home/edwin/clam/clamav-devel/missing --run autoconf |
|
108 |
-AUTOHEADER = ${SHELL} /home/edwin/clam/clamav-devel/missing --run autoheader |
|
109 |
-AUTOMAKE = ${SHELL} /home/edwin/clam/clamav-devel/missing --run automake-1.10 |
|
107 |
+AUTOCONF = ${SHELL} /home/edwin/clam/svn2/trunk/missing --run autoconf |
|
108 |
+AUTOHEADER = ${SHELL} /home/edwin/clam/svn2/trunk/missing --run autoheader |
|
109 |
+AUTOMAKE = ${SHELL} /home/edwin/clam/svn2/trunk/missing --run automake-1.10 |
|
110 | 110 |
AWK = gawk |
111 | 111 |
CC = gcc |
112 | 112 |
CCDEPMODE = depmode=gcc3 |
113 |
-CFLAGS = -D_FORTIFY_SOURCE=2 -fstack-protector -g3 -march=k8 -pedantic -W -Wall -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat=2 -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wno-unused-parameter -Wpointer-arith -Wshadow -Wstack-protector -Wstrict-prototypes -Wswitch -Wundef -Wwrite-strings |
|
113 |
+CFLAGS = -mfpmath=sse -msse -msse2 -m3dnow -mmmx -D_FORTIFY_SOURCE=2 -fstack-protector -march=k8 -pedantic -g3 -Wextra -Wall -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat=2 -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wno-unused-parameter -Wpointer-arith -Wshadow -Wstack-protector -Wstrict-prototypes -Wswitch -Wundef -Wwrite-strings |
|
114 | 114 |
CPP = gcc -E |
115 | 115 |
CPPFLAGS = |
116 | 116 |
CXX = g++ |
... | ... |
@@ -140,7 +147,7 @@ LIBS = |
140 | 140 |
LIBTOOL = $(SHELL) $(top_builddir)/libtool |
141 | 141 |
LN_S = ln -s |
142 | 142 |
LTLIBOBJS = |
143 |
-MAKEINFO = ${SHELL} /home/edwin/clam/clamav-devel/missing --run makeinfo |
|
143 |
+MAKEINFO = ${SHELL} /home/edwin/clam/svn2/trunk/missing --run makeinfo |
|
144 | 144 |
MKDIR_P = /bin/mkdir -p |
145 | 145 |
OBJEXT = o |
146 | 146 |
PACKAGE = fixdb |
... | ... |
@@ -154,11 +161,11 @@ RANLIB = ranlib |
154 | 154 |
SET_MAKE = |
155 | 155 |
SHELL = /bin/sh |
156 | 156 |
STRIP = strip |
157 |
-VERSION = 20061119 |
|
158 |
-abs_builddir = /home/edwin/clam/clamav-devel/contrib/entitynorm |
|
159 |
-abs_srcdir = /home/edwin/clam/clamav-devel/contrib/entitynorm |
|
160 |
-abs_top_builddir = /home/edwin/clam/clamav-devel/contrib/entitynorm |
|
161 |
-abs_top_srcdir = /home/edwin/clam/clamav-devel/contrib/entitynorm |
|
157 |
+VERSION = 20070308 |
|
158 |
+abs_builddir = /home/edwin/clam/svn2/trunk/contrib/entitynorm |
|
159 |
+abs_srcdir = /home/edwin/clam/svn2/trunk/contrib/entitynorm |
|
160 |
+abs_top_builddir = /home/edwin/clam/svn2/trunk/contrib/entitynorm |
|
161 |
+abs_top_srcdir = /home/edwin/clam/svn2/trunk/contrib/entitynorm |
|
162 | 162 |
ac_ct_CC = gcc |
163 | 163 |
ac_ct_CXX = g++ |
164 | 164 |
ac_ct_F77 = |
... | ... |
@@ -187,7 +194,7 @@ host_vendor = unknown |
187 | 187 |
htmldir = ${docdir} |
188 | 188 |
includedir = ${prefix}/include |
189 | 189 |
infodir = ${datarootdir}/info |
190 |
-install_sh = $(SHELL) /home/edwin/clam/clamav-devel/install-sh |
|
190 |
+install_sh = $(SHELL) /home/edwin/clam/svn2/trunk/install-sh |
|
191 | 191 |
libdir = ${exec_prefix}/lib |
192 | 192 |
libexecdir = ${exec_prefix}/libexec |
193 | 193 |
localedir = ${datarootdir}/locale |
... | ... |
@@ -218,6 +225,9 @@ postprocessdb_LDADD = $(clam_builddir)/libclamav/libclamav.la |
218 | 218 |
generate_entitylist_SOURCES = generate_entitylist.c |
219 | 219 |
generate_entitylist_INCLUDES = |
220 | 220 |
generate_entitylist_LDADD = $(clam_builddir)/libclamav/libclamav.la |
221 |
+generate_encoding_aliases_SOURCES = generate_encoding_aliases.c |
|
222 |
+generate_encoding_aliases_INCLUDES = |
|
223 |
+generate_encoding_aliases_LDADD = $(clam_builddir)/libclamav/libclamav.la |
|
221 | 224 |
INCLUDES = -I$(top_srcdir) -I$(clam_builddir) -I$(clam_builddir)/shared -I$(clam_builddir)/libclamav |
222 | 225 |
all: test-config.h |
223 | 226 |
$(MAKE) $(AM_MAKEFLAGS) all-recursive |
... | ... |
@@ -284,6 +294,9 @@ clean-noinstPROGRAMS: |
284 | 284 |
fixdb$(EXEEXT): $(fixdb_OBJECTS) $(fixdb_DEPENDENCIES) |
285 | 285 |
@rm -f fixdb$(EXEEXT) |
286 | 286 |
$(LINK) $(fixdb_OBJECTS) $(fixdb_LDADD) $(LIBS) |
287 |
+generate_encoding_aliases$(EXEEXT): $(generate_encoding_aliases_OBJECTS) $(generate_encoding_aliases_DEPENDENCIES) |
|
288 |
+ @rm -f generate_encoding_aliases$(EXEEXT) |
|
289 |
+ $(LINK) $(generate_encoding_aliases_OBJECTS) $(generate_encoding_aliases_LDADD) $(LIBS) |
|
287 | 290 |
generate_entitylist$(EXEEXT): $(generate_entitylist_OBJECTS) $(generate_entitylist_DEPENDENCIES) |
288 | 291 |
@rm -f generate_entitylist$(EXEEXT) |
289 | 292 |
$(LINK) $(generate_entitylist_OBJECTS) $(generate_entitylist_LDADD) $(LIBS) |
... | ... |
@@ -298,6 +311,7 @@ distclean-compile: |
298 | 298 |
-rm -f *.tab.c |
299 | 299 |
|
300 | 300 |
include ./$(DEPDIR)/fixdb.Po |
301 |
+include ./$(DEPDIR)/generate_encoding_aliases.Po |
|
301 | 302 |
include ./$(DEPDIR)/generate_entitylist.Po |
302 | 303 |
include ./$(DEPDIR)/postprocess.Po |
303 | 304 |
|
304 | 305 |
deleted file mode 100644 |
... | ... |
@@ -1,122 +0,0 @@ |
1 |
- |
|
2 |
-<!-- |
|
3 |
- File isopub.ent produced by the XSL script entities.xsl |
|
4 |
- from input data in unicode.xml. |
|
5 |
- |
|
6 |
- Please report any errors to David Carlisle |
|
7 |
- via the public W3C list www-math@w3.org. |
|
8 |
- |
|
9 |
- The numeric character values assigned to each entity |
|
10 |
- (should) match the Unicode assignments in Unicode 4.0. |
|
11 |
- |
|
12 |
- (C) International Organization for Standardization 2003 |
|
13 |
- Permission to copy in any form is granted for use with |
|
14 |
- conforming SGML systems and applications as defined in |
|
15 |
- ISO 8879, provided this notice is included in all copies. |
|
16 |
- |
|
17 |
- |
|
18 |
- |
|
19 |
-<!-- |
|
20 |
- Version: $Id: isopub(2).ent,v 1.1 2006/12/26 16:17:01 tkojm Exp $ |
|
21 |
- |
|
22 |
- Public identifier: ISO 9573-13:2003//ENTITIES Publishing//EN//XML |
|
23 |
- System identifier: http://www.w3.org/2003/entities/iso9573-2003/isopub.ent |
|
24 |
- |
|
25 |
- The public identifier should always be used verbatim. |
|
26 |
- The system identifier may be changed to suit local requirements. |
|
27 |
- |
|
28 |
- Typical invocation: |
|
29 |
- |
|
30 |
- <!ENTITY % isopub PUBLIC |
|
31 |
- "ISO 9573-13:2003//ENTITIES Publishing//EN//XML" |
|
32 |
- "http://www.w3.org/2003/entities/iso9573-2003/isopub.ent" |
|
33 |
- > |
|
34 |
- %isopub; |
|
35 |
- |
|
36 |
- |
|
37 |
-<!ENTITY blank "␣" ><!--OPEN BOX --> |
|
38 |
-<!ENTITY blk12 "▒" ><!--MEDIUM SHADE --> |
|
39 |
-<!ENTITY blk14 "░" ><!--LIGHT SHADE --> |
|
40 |
-<!ENTITY blk34 "▓" ><!--DARK SHADE --> |
|
41 |
-<!ENTITY block "█" ><!--FULL BLOCK --> |
|
42 |
-<!ENTITY bull "•" ><!--BULLET --> |
|
43 |
-<!ENTITY caret "⁁" ><!--CARET INSERTION POINT --> |
|
44 |
-<!ENTITY check "✓" ><!--CHECK MARK --> |
|
45 |
-<!ENTITY cir "○" ><!--WHITE CIRCLE --> |
|
46 |
-<!ENTITY clubs "♣" ><!--BLACK CLUB SUIT --> |
|
47 |
-<!ENTITY copysr "℗" ><!--SOUND RECORDING COPYRIGHT --> |
|
48 |
-<!ENTITY cross "✗" ><!--BALLOT X --> |
|
49 |
-<!ENTITY Dagger "‡" ><!--DOUBLE DAGGER --> |
|
50 |
-<!ENTITY dagger "†" ><!--DAGGER --> |
|
51 |
-<!ENTITY dash "‐" ><!--HYPHEN --> |
|
52 |
-<!ENTITY diams "♦" ><!--BLACK DIAMOND SUIT --> |
|
53 |
-<!ENTITY dlcrop "⌍" ><!--BOTTOM LEFT CROP --> |
|
54 |
-<!ENTITY drcrop "⌌" ><!--BOTTOM RIGHT CROP --> |
|
55 |
-<!ENTITY dtri "▿" ><!--WHITE DOWN-POINTING SMALL TRIANGLE --> |
|
56 |
-<!ENTITY dtrif "▾" ><!--BLACK DOWN-POINTING SMALL TRIANGLE --> |
|
57 |
-<!ENTITY emsp " " ><!--EM SPACE --> |
|
58 |
-<!ENTITY emsp13 " " ><!--THREE-PER-EM SPACE --> |
|
59 |
-<!ENTITY emsp14 " " ><!--FOUR-PER-EM SPACE --> |
|
60 |
-<!ENTITY ensp " " ><!--EN SPACE --> |
|
61 |
-<!ENTITY female "♀" ><!--FEMALE SIGN --> |
|
62 |
-<!ENTITY ffilig "ffi" ><!--LATIN SMALL LIGATURE FFI --> |
|
63 |
-<!ENTITY fflig "ff" ><!--LATIN SMALL LIGATURE FF --> |
|
64 |
-<!ENTITY ffllig "ffl" ><!--LATIN SMALL LIGATURE FFL --> |
|
65 |
-<!ENTITY filig "fi" ><!--LATIN SMALL LIGATURE FI --> |
|
66 |
-<!ENTITY flat "♭" ><!--MUSIC FLAT SIGN --> |
|
67 |
-<!ENTITY fllig "fl" ><!--LATIN SMALL LIGATURE FL --> |
|
68 |
-<!ENTITY frac13 "⅓" ><!--VULGAR FRACTION ONE THIRD --> |
|
69 |
-<!ENTITY frac15 "⅕" ><!--VULGAR FRACTION ONE FIFTH --> |
|
70 |
-<!ENTITY frac16 "⅙" ><!--VULGAR FRACTION ONE SIXTH --> |
|
71 |
-<!ENTITY frac23 "⅔" ><!--VULGAR FRACTION TWO THIRDS --> |
|
72 |
-<!ENTITY frac25 "⅖" ><!--VULGAR FRACTION TWO FIFTHS --> |
|
73 |
-<!ENTITY frac35 "⅗" ><!--VULGAR FRACTION THREE FIFTHS --> |
|
74 |
-<!ENTITY frac45 "⅘" ><!--VULGAR FRACTION FOUR FIFTHS --> |
|
75 |
-<!ENTITY frac56 "⅚" ><!--VULGAR FRACTION FIVE SIXTHS --> |
|
76 |
-<!ENTITY hairsp " " ><!--HAIR SPACE --> |
|
77 |
-<!ENTITY hearts "♥" ><!--BLACK HEART SUIT --> |
|
78 |
-<!ENTITY hellip "…" ><!--HORIZONTAL ELLIPSIS --> |
|
79 |
-<!ENTITY hybull "⁃" ><!--HYPHEN BULLET --> |
|
80 |
-<!ENTITY incare "℅" ><!--CARE OF --> |
|
81 |
-<!ENTITY ldquor "„" ><!--DOUBLE LOW-9 QUOTATION MARK --> |
|
82 |
-<!ENTITY lhblk "▄" ><!--LOWER HALF BLOCK --> |
|
83 |
-<!ENTITY loz "◊" ><!--LOZENGE --> |
|
84 |
-<!ENTITY lozf "⧫" ><!--BLACK LOZENGE --> |
|
85 |
-<!ENTITY lsquor "‚" ><!--SINGLE LOW-9 QUOTATION MARK --> |
|
86 |
-<!ENTITY ltri "◃" ><!--WHITE LEFT-POINTING SMALL TRIANGLE --> |
|
87 |
-<!ENTITY ltrif "◂" ><!--BLACK LEFT-POINTING SMALL TRIANGLE --> |
|
88 |
-<!ENTITY male "♂" ><!--MALE SIGN --> |
|
89 |
-<!ENTITY malt "✠" ><!--MALTESE CROSS --> |
|
90 |
-<!ENTITY marker "▮" ><!--BLACK VERTICAL RECTANGLE --> |
|
91 |
-<!ENTITY mdash "—" ><!--EM DASH --> |
|
92 |
-<!ENTITY mldr "…" ><!--HORIZONTAL ELLIPSIS --> |
|
93 |
-<!ENTITY natur "♮" ><!--MUSIC NATURAL SIGN --> |
|
94 |
-<!ENTITY ndash "–" ><!--EN DASH --> |
|
95 |
-<!ENTITY nldr "‥" ><!--TWO DOT LEADER --> |
|
96 |
-<!ENTITY numsp " " ><!--FIGURE SPACE --> |
|
97 |
-<!ENTITY phone "☎" ><!--BLACK TELEPHONE --> |
|
98 |
-<!ENTITY puncsp " " ><!--PUNCTUATION SPACE --> |
|
99 |
-<!ENTITY rdquor "”" ><!--RIGHT DOUBLE QUOTATION MARK --> |
|
100 |
-<!ENTITY rect "▭" ><!--WHITE RECTANGLE --> |
|
101 |
-<!ENTITY rsquor "’" ><!--RIGHT SINGLE QUOTATION MARK --> |
|
102 |
-<!ENTITY rtri "▹" ><!--WHITE RIGHT-POINTING SMALL TRIANGLE --> |
|
103 |
-<!ENTITY rtrif "▸" ><!--BLACK RIGHT-POINTING SMALL TRIANGLE --> |
|
104 |
-<!ENTITY rx "℞" ><!--PRESCRIPTION TAKE --> |
|
105 |
-<!ENTITY sext "✶" ><!--SIX POINTED BLACK STAR --> |
|
106 |
-<!ENTITY sharp "♯" ><!--MUSIC SHARP SIGN --> |
|
107 |
-<!ENTITY spades "♠" ><!--BLACK SPADE SUIT --> |
|
108 |
-<!ENTITY squ "□" ><!--WHITE SQUARE --> |
|
109 |
-<!ENTITY squf "▪" ><!--BLACK SMALL SQUARE --> |
|
110 |
-<!ENTITY star "☆" ><!--WHITE STAR --> |
|
111 |
-<!ENTITY starf "★" ><!--BLACK STAR --> |
|
112 |
-<!ENTITY target "⌖" ><!--POSITION INDICATOR --> |
|
113 |
-<!ENTITY telrec "⌕" ><!--TELEPHONE RECORDER --> |
|
114 |
-<!ENTITY thinsp " " ><!--THIN SPACE --> |
|
115 |
-<!ENTITY uhblk "▀" ><!--UPPER HALF BLOCK --> |
|
116 |
-<!ENTITY ulcrop "⌏" ><!--TOP LEFT CROP --> |
|
117 |
-<!ENTITY urcrop "⌎" ><!--TOP RIGHT CROP --> |
|
118 |
-<!ENTITY utri "▵" ><!--WHITE UP-POINTING SMALL TRIANGLE --> |
|
119 |
-<!ENTITY utrif "▴" ><!--BLACK UP-POINTING SMALL TRIANGLE --> |
|
120 |
-<!ENTITY vellip "⋮" ><!--VERTICAL ELLIPSIS --> |
... | ... |
@@ -23,7 +23,7 @@ |
23 | 23 |
#include <others.h> |
24 | 24 |
#include <htmlnorm.h> |
25 | 25 |
#include <hashtab.h> |
26 |
-#include <entitiesConverter.h> |
|
26 |
+#include <entconv.h> |
|
27 | 27 |
#include <regex.h> |
28 | 28 |
#include <sys/types.h> |
29 | 29 |
#include <dirent.h> |
... | ... |
@@ -46,19 +46,36 @@ static char* extract_str(const char* l,const regmatch_t* pmatch) |
46 | 46 |
} |
47 | 47 |
|
48 | 48 |
static regex_t entity_regex; |
49 |
+static const char ent_head[]="<!ENTITY"; |
|
50 |
+static const size_t ent_head_size = sizeof(ent_head); |
|
49 | 51 |
static int entity_extract(const char* line,char* entity_name,int* entity_value) |
50 | 52 |
{ |
51 |
- regmatch_t pmatch[3]; |
|
53 |
+ regmatch_t pmatch[5]; |
|
52 | 54 |
|
53 |
- if(regexec(&entity_regex,line,3,pmatch,0)==0) { |
|
55 |
+ if(regexec(&entity_regex,line,5,pmatch,0)==0) { |
|
54 | 56 |
const char* entity_val; |
55 |
- strncpy(entity_name,extract_str(line,&pmatch[1]),MAX_LINE); |
|
56 |
- entity_val = extract_str(line,&pmatch[2]); |
|
57 |
- if(sscanf( entity_val,"%d",entity_value)!=1) |
|
58 |
- return -2; |
|
57 |
+ strncpy(entity_name,extract_str(line,&pmatch[1]),MAX_LINE); |
|
58 |
+ entity_val = extract_str(line,&pmatch[3]); |
|
59 |
+ if(entity_val[0] == 'x') { |
|
60 |
+ if(sscanf(entity_val+1,"%x",entity_value)!=1) |
|
61 |
+ return -2; |
|
62 |
+ } |
|
63 |
+ else { |
|
64 |
+ if(sscanf( entity_val,"%d",entity_value)!=1) |
|
65 |
+ return -2; |
|
66 |
+ } |
|
67 |
+ if(*entity_value > 65535) { |
|
68 |
+ fprintf(stderr,"Entity value outside of utf-16 range:%u; %s\n",*entity_value,line); |
|
69 |
+ return 0; |
|
70 |
+ } |
|
59 | 71 |
return 1; |
60 | 72 |
} |
61 |
- else return 0; |
|
73 |
+ else { |
|
74 |
+ if(strncmp(line,ent_head,ent_head_size-1)==0) { |
|
75 |
+ fprintf(stderr,"Unable to interpret entity decl:%s\n",line); |
|
76 |
+ } |
|
77 |
+ return 0; |
|
78 |
+ } |
|
62 | 79 |
} |
63 | 80 |
static void loadEntitiesFromFile(const char* file,struct hashtable* s,char* xt[]) |
64 | 81 |
{ |
... | ... |
@@ -89,8 +106,10 @@ static void loadEntitiesFromFile(const char* file,struct hashtable* s,char* xt[] |
89 | 89 |
} |
90 | 90 |
if(xt[val] && strcmp(xt[val],name)) |
91 | 91 |
cli_dbgmsg("Duplicate entity reference to same code:%s->%d<-%s\n",name,val,xt[val]); |
92 |
- else if(xt[val]) |
|
93 |
- printf("%s:%d\n",xt[val],val); |
|
92 |
+ else if(xt[val]) { |
|
93 |
+ fprintf(stderr,"Impossible: element not found in hashtable, but we did add it!! %s:%d:%s:%p\n",xt[val],val,name,elem); |
|
94 |
+ abort(); |
|
95 |
+ } |
|
94 | 96 |
xt[val] = strdup(name); |
95 | 97 |
hashtab_insert(s,name,strlen(name),val); |
96 | 98 |
} |
... | ... |
@@ -103,7 +122,7 @@ static void init_entity_parser(void) |
103 | 103 |
{ |
104 | 104 |
int rc; |
105 | 105 |
char errbuff[MAX_LINE]; |
106 |
- if(( rc = regcomp(&entity_regex,".*<!ENTITY +([^ ]+) +\"&#([0-9]+);\">.*",REG_EXTENDED) )) { |
|
106 |
+ if(( rc = regcomp(&entity_regex,".*<!ENTITY +([^ \t]+) +\" *&(#38;)?#(([0-9]+)|x([0-9a-fA-F])+); *\" *>.*",REG_EXTENDED) )) { |
|
107 | 107 |
regerror(rc,&entity_regex,errbuff,MAX_LINE); |
108 | 108 |
fprintf(stderr,"Error compiling regex:%s\n",errbuff); |
109 | 109 |
exit(1); |
... | ... |
@@ -1,7 +1,7 @@ |
1 | 1 |
#! /bin/sh |
2 | 2 |
|
3 | 3 |
# libtoolT - Provide generalized library-building support services. |
4 |
-# Generated automatically by (GNU fixdb 20061119) |
|
4 |
+# Generated automatically by (GNU fixdb 20070308) |
|
5 | 5 |
# NOTE: Changes made to this file will be lost: look at ltmain.sh. |
6 | 6 |
# |
7 | 7 |
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 |
... | ... |
@@ -85,7 +85,7 @@ AR_FLAGS="cru" |
85 | 85 |
LTCC="gcc" |
86 | 86 |
|
87 | 87 |
# LTCC compiler flags. |
88 |
-LTCFLAGS="-D_FORTIFY_SOURCE=2 -fstack-protector -g3 -march=k8 -pedantic -W -Wall -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat=2 -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wno-unused-parameter -Wpointer-arith -Wshadow -Wstack-protector -Wstrict-prototypes -Wswitch -Wundef -Wwrite-strings " |
|
88 |
+LTCFLAGS="-mfpmath=sse -msse -msse2 -m3dnow -mmmx -D_FORTIFY_SOURCE=2 -fstack-protector -march=k8 -pedantic -g3 -Wextra -Wall -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat=2 -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wno-unused-parameter -Wpointer-arith -Wshadow -Wstack-protector -Wstrict-prototypes -Wswitch -Wundef -Wwrite-strings" |
|
89 | 89 |
|
90 | 90 |
# A language-specific compiler. |
91 | 91 |
CC="gcc" |
... | ... |
@@ -328,7 +328,7 @@ link_all_deplibs=no |
328 | 328 |
sys_lib_search_path_spec=" /usr/lib/gcc/x86_64-linux-gnu/4.1.2/ /usr/lib/gcc/x86_64-linux-gnu/4.1.2/ /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../../x86_64-linux-gnu/lib/x86_64-linux-gnu/4.1.2/ /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../../x86_64-linux-gnu/lib/ /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../x86_64-linux-gnu/4.1.2/ /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../ /lib/x86_64-linux-gnu/4.1.2/ /lib/ /usr/lib/x86_64-linux-gnu/4.1.2/ /usr/lib/" |
329 | 329 |
|
330 | 330 |
# Run-time system search path for libraries |
331 |
-sys_lib_dlsearch_path_spec="/lib /usr/lib /usr/X11R6/lib " |
|
331 |
+sys_lib_dlsearch_path_spec="/lib /usr/lib " |
|
332 | 332 |
|
333 | 333 |
# Fix the shell variable $srcfile for the compiler. |
334 | 334 |
fix_srcfile_path="" |
... | ... |
@@ -353,7 +353,7 @@ include_expsyms="" |
353 | 353 |
# ltmain.sh - Provide generalized library-building support services. |
354 | 354 |
# NOTE: Changing this file will not affect anything until you rerun configure. |
355 | 355 |
# |
356 |
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 |
|
356 |
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005 |
|
357 | 357 |
# Free Software Foundation, Inc. |
358 | 358 |
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 |
359 | 359 |
# |
... | ... |
@@ -369,13 +369,41 @@ include_expsyms="" |
369 | 369 |
# |
370 | 370 |
# You should have received a copy of the GNU General Public License |
371 | 371 |
# along with this program; if not, write to the Free Software |
372 |
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
|
372 |
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
|
373 | 373 |
# |
374 | 374 |
# As a special exception to the GNU General Public License, if you |
375 | 375 |
# distribute this file as part of a program that contains a |
376 | 376 |
# configuration script generated by Autoconf, you may include it under |
377 | 377 |
# the same distribution terms that you use for the rest of that program. |
378 | 378 |
|
379 |
+basename="s,^.*/,,g" |
|
380 |
+ |
|
381 |
+# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh |
|
382 |
+# is ksh but when the shell is invoked as "sh" and the current value of |
|
383 |
+# the _XPG environment variable is not equal to 1 (one), the special |
|
384 |
+# positional parameter $0, within a function call, is the name of the |
|
385 |
+# function. |
|
386 |
+progpath="$0" |
|
387 |
+ |
|
388 |
+# The name of this program: |
|
389 |
+progname=`echo "$progpath" | $SED $basename` |
|
390 |
+modename="$progname" |
|
391 |
+ |
|
392 |
+# Global variables: |
|
393 |
+EXIT_SUCCESS=0 |
|
394 |
+EXIT_FAILURE=1 |
|
395 |
+ |
|
396 |
+PROGRAM=ltmain.sh |
|
397 |
+PACKAGE=libtool |
|
398 |
+VERSION="1.5.22 Debian 1.5.22-4" |
|
399 |
+TIMESTAMP=" (1.1220.2.365 2005/12/18 22:14:06)" |
|
400 |
+ |
|
401 |
+# See if we are running on zsh, and set the options which allow our |
|
402 |
+# commands through without removal of \ escapes. |
|
403 |
+if test -n "${ZSH_VERSION+set}" ; then |
|
404 |
+ setopt NO_GLOB_SUBST |
|
405 |
+fi |
|
406 |
+ |
|
379 | 407 |
# Check that we have a working $echo. |
380 | 408 |
if test "X$1" = X--no-reexec; then |
381 | 409 |
# Discard the --no-reexec flag, and continue. |
... | ... |
@@ -388,7 +416,7 @@ elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then |
388 | 388 |
: |
389 | 389 |
else |
390 | 390 |
# Restart under the correct shell, and then maybe $echo will work. |
391 |
- exec $SHELL "$0" --no-reexec ${1+"$@"} |
|
391 |
+ exec $SHELL "$progpath" --no-reexec ${1+"$@"} |
|
392 | 392 |
fi |
393 | 393 |
|
394 | 394 |
if test "X$1" = X--fallback-echo; then |
... | ... |
@@ -397,19 +425,9 @@ if test "X$1" = X--fallback-echo; then |
397 | 397 |
cat <<EOF |
398 | 398 |
$* |
399 | 399 |
EOF |
400 |
- exit 0 |
|
400 |
+ exit $EXIT_SUCCESS |
|
401 | 401 |
fi |
402 | 402 |
|
403 |
-# The name of this program. |
|
404 |
-progname=`$echo "$0" | sed 's%^.*/%%'` |
|
405 |
-modename="$progname" |
|
406 |
- |
|
407 |
-# Constants. |
|
408 |
-PROGRAM=ltmain.sh |
|
409 |
-PACKAGE=libtool |
|
410 |
-VERSION=1.4.2a |
|
411 |
-TIMESTAMP=" (1.922.2.79 2001/11/28 21:50:31)" |
|
412 |
- |
|
413 | 403 |
default_mode= |
414 | 404 |
help="Try \`$progname --help' for more information." |
415 | 405 |
magic="%%%MAGIC variable%%%" |
... | ... |
@@ -419,10 +437,20 @@ rm="rm -f" |
419 | 419 |
|
420 | 420 |
# Sed substitution that helps us do robust quoting. It backslashifies |
421 | 421 |
# metacharacters that are still active within double-quoted strings. |
422 |
-Xsed='sed -e 1s/^X//' |
|
422 |
+Xsed="${SED}"' -e 1s/^X//' |
|
423 | 423 |
sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g' |
424 |
-SP2NL='tr \040 \012' |
|
425 |
-NL2SP='tr \015\012 \040\040' |
|
424 |
+# test EBCDIC or ASCII |
|
425 |
+case `echo X|tr X '\101'` in |
|
426 |
+ A) # ASCII based system |
|
427 |
+ # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr |
|
428 |
+ SP2NL='tr \040 \012' |
|
429 |
+ NL2SP='tr \015\012 \040\040' |
|
430 |
+ ;; |
|
431 |
+ *) # EBCDIC based system |
|
432 |
+ SP2NL='tr \100 \n' |
|
433 |
+ NL2SP='tr \r\n \100\100' |
|
434 |
+ ;; |
|
435 |
+esac |
|
426 | 436 |
|
427 | 437 |
# NLS nuisances. |
428 | 438 |
# Only set LANG and LC_ALL to C if already set. |
... | ... |
@@ -437,12 +465,14 @@ if test "${LANG+set}" = set; then |
437 | 437 |
fi |
438 | 438 |
|
439 | 439 |
# Make sure IFS has a sensible default |
440 |
-: ${IFS=" "} |
|
440 |
+lt_nl=' |
|
441 |
+' |
|
442 |
+IFS=" $lt_nl" |
|
441 | 443 |
|
442 | 444 |
if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then |
443 |
- echo "$modename: not configured to build any kind of library" 1>&2 |
|
444 |
- echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 |
|
445 |
- exit 1 |
|
445 |
+ $echo "$modename: not configured to build any kind of library" 1>&2 |
|
446 |
+ $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 |
|
447 |
+ exit $EXIT_FAILURE |
|
446 | 448 |
fi |
447 | 449 |
|
448 | 450 |
# Global variables. |
... | ... |
@@ -454,11 +484,268 @@ run= |
454 | 454 |
show="$echo" |
455 | 455 |
show_help= |
456 | 456 |
execute_dlfiles= |
457 |
+duplicate_deps=no |
|
458 |
+preserve_args= |
|
457 | 459 |
lo2o="s/\\.lo\$/.${objext}/" |
458 | 460 |
o2lo="s/\\.${objext}\$/.lo/" |
459 | 461 |
|
462 |
+##################################### |
|
463 |
+# Shell function definitions: |
|
464 |
+# This seems to be the best place for them |
|
465 |
+ |
|
466 |
+# func_mktempdir [string] |
|
467 |
+# Make a temporary directory that won't clash with other running |
|
468 |
+# libtool processes, and avoids race conditions if possible. If |
|
469 |
+# given, STRING is the basename for that directory. |
|
470 |
+func_mktempdir () |
|
471 |
+{ |
|
472 |
+ my_template="${TMPDIR-/tmp}/${1-$progname}" |
|
473 |
+ |
|
474 |
+ if test "$run" = ":"; then |
|
475 |
+ # Return a directory name, but don't create it in dry-run mode |
|
476 |
+ my_tmpdir="${my_template}-$$" |
|
477 |
+ else |
|
478 |
+ |
|
479 |
+ # If mktemp works, use that first and foremost |
|
480 |
+ my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` |
|
481 |
+ |
|
482 |
+ if test ! -d "$my_tmpdir"; then |
|
483 |
+ # Failing that, at least try and use $RANDOM to avoid a race |
|
484 |
+ my_tmpdir="${my_template}-${RANDOM-0}$$" |
|
485 |
+ |
|
486 |
+ save_mktempdir_umask=`umask` |
|
487 |
+ umask 0077 |
|
488 |
+ $mkdir "$my_tmpdir" |
|
489 |
+ umask $save_mktempdir_umask |
|
490 |
+ fi |
|
491 |
+ |
|
492 |
+ # If we're not in dry-run mode, bomb out on failure |
|
493 |
+ test -d "$my_tmpdir" || { |
|
494 |
+ $echo "cannot create temporary directory \`$my_tmpdir'" 1>&2 |
|
495 |
+ exit $EXIT_FAILURE |
|
496 |
+ } |
|
497 |
+ fi |
|
498 |
+ |
|
499 |
+ $echo "X$my_tmpdir" | $Xsed |
|
500 |
+} |
|
501 |
+ |
|
502 |
+ |
|
503 |
+# func_win32_libid arg |
|
504 |
+# return the library type of file 'arg' |
|
505 |
+# |
|
506 |
+# Need a lot of goo to handle *both* DLLs and import libs |
|
507 |
+# Has to be a shell function in order to 'eat' the argument |
|
508 |
+# that is supplied when $file_magic_command is called. |
|
509 |
+func_win32_libid () |
|
510 |
+{ |
|
511 |
+ win32_libid_type="unknown" |
|
512 |
+ win32_fileres=`file -L $1 2>/dev/null` |
|
513 |
+ case $win32_fileres in |
|
514 |
+ *ar\ archive\ import\ library*) # definitely import |
|
515 |
+ win32_libid_type="x86 archive import" |
|
516 |
+ ;; |
|
517 |
+ *ar\ archive*) # could be an import, or static |
|
518 |
+ if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \ |
|
519 |
+ $EGREP -e 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then |
|
520 |
+ win32_nmres=`eval $NM -f posix -A $1 | \ |
|
521 |
+ $SED -n -e '1,100{/ I /{s,.*,import,;p;q;};}'` |
|
522 |
+ case $win32_nmres in |
|
523 |
+ import*) win32_libid_type="x86 archive import";; |
|
524 |
+ *) win32_libid_type="x86 archive static";; |
|
525 |
+ esac |
|
526 |
+ fi |
|
527 |
+ ;; |
|
528 |
+ *DLL*) |
|
529 |
+ win32_libid_type="x86 DLL" |
|
530 |
+ ;; |
|
531 |
+ *executable*) # but shell scripts are "executable" too... |
|
532 |
+ case $win32_fileres in |
|
533 |
+ *MS\ Windows\ PE\ Intel*) |
|
534 |
+ win32_libid_type="x86 DLL" |
|
535 |
+ ;; |
|
536 |
+ esac |
|
537 |
+ ;; |
|
538 |
+ esac |
|
539 |
+ $echo $win32_libid_type |
|
540 |
+} |
|
541 |
+ |
|
542 |
+ |
|
543 |
+# func_infer_tag arg |
|
544 |
+# Infer tagged configuration to use if any are available and |
|
545 |
+# if one wasn't chosen via the "--tag" command line option. |
|
546 |
+# Only attempt this if the compiler in the base compile |
|
547 |
+# command doesn't match the default compiler. |
|
548 |
+# arg is usually of the form 'gcc ...' |
|
549 |
+func_infer_tag () |
|
550 |
+{ |
|
551 |
+ if test -n "$available_tags" && test -z "$tagname"; then |
|
552 |
+ CC_quoted= |
|
553 |
+ for arg in $CC; do |
|
554 |
+ case $arg in |
|
555 |
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") |
|
556 |
+ arg="\"$arg\"" |
|
557 |
+ ;; |
|
558 |
+ esac |
|
559 |
+ CC_quoted="$CC_quoted $arg" |
|
560 |
+ done |
|
561 |
+ case $@ in |
|
562 |
+ # Blanks in the command may have been stripped by the calling shell, |
|
563 |
+ # but not from the CC environment variable when configure was run. |
|
564 |
+ " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*) ;; |
|
565 |
+ # Blanks at the start of $base_compile will cause this to fail |
|
566 |
+ # if we don't check for them as well. |
|
567 |
+ *) |
|
568 |
+ for z in $available_tags; do |
|
569 |
+ if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then |
|
570 |
+ # Evaluate the configuration. |
|
571 |
+ eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" |
|
572 |
+ CC_quoted= |
|
573 |
+ for arg in $CC; do |
|
574 |
+ # Double-quote args containing other shell metacharacters. |
|
575 |
+ case $arg in |
|
576 |
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") |
|
577 |
+ arg="\"$arg\"" |
|
578 |
+ ;; |
|
579 |
+ esac |
|
580 |
+ CC_quoted="$CC_quoted $arg" |
|
581 |
+ done |
|
582 |
+ case "$@ " in |
|
583 |
+ " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*) |
|
584 |
+ # The compiler in the base compile command matches |
|
585 |
+ # the one in the tagged configuration. |
|
586 |
+ # Assume this is the tagged configuration we want. |
|
587 |
+ tagname=$z |
|
588 |
+ break |
|
589 |
+ ;; |
|
590 |
+ esac |
|
591 |
+ fi |
|
592 |
+ done |
|
593 |
+ # If $tagname still isn't set, then no tagged configuration |
|
594 |
+ # was found and let the user know that the "--tag" command |
|
595 |
+ # line option must be used. |
|
596 |
+ if test -z "$tagname"; then |
|
597 |
+ $echo "$modename: unable to infer tagged configuration" |
|
598 |
+ $echo "$modename: specify a tag with \`--tag'" 1>&2 |
|
599 |
+ exit $EXIT_FAILURE |
|
600 |
+# else |
|
601 |
+# $echo "$modename: using $tagname tagged configuration" |
|
602 |
+ fi |
|
603 |
+ ;; |
|
604 |
+ esac |
|
605 |
+ fi |
|
606 |
+} |
|
607 |
+ |
|
608 |
+ |
|
609 |
+# func_extract_an_archive dir oldlib |
|
610 |
+func_extract_an_archive () |
|
611 |
+{ |
|
612 |
+ f_ex_an_ar_dir="$1"; shift |
|
613 |
+ f_ex_an_ar_oldlib="$1" |
|
614 |
+ |
|
615 |
+ $show "(cd $f_ex_an_ar_dir && $AR x $f_ex_an_ar_oldlib)" |
|
616 |
+ $run eval "(cd \$f_ex_an_ar_dir && $AR x \$f_ex_an_ar_oldlib)" || exit $? |
|
617 |
+ if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then |
|
618 |
+ : |
|
619 |
+ else |
|
620 |
+ $echo "$modename: ERROR: object name conflicts: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" 1>&2 |
|
621 |
+ exit $EXIT_FAILURE |
|
622 |
+ fi |
|
623 |
+} |
|
624 |
+ |
|
625 |
+# func_extract_archives gentop oldlib ... |
|
626 |
+func_extract_archives () |
|
627 |
+{ |
|
628 |
+ my_gentop="$1"; shift |
|
629 |
+ my_oldlibs=${1+"$@"} |
|
630 |
+ my_oldobjs="" |
|
631 |
+ my_xlib="" |
|
632 |
+ my_xabs="" |
|
633 |
+ my_xdir="" |
|
634 |
+ my_status="" |
|
635 |
+ |
|
636 |
+ $show "${rm}r $my_gentop" |
|
637 |
+ $run ${rm}r "$my_gentop" |
|
638 |
+ $show "$mkdir $my_gentop" |
|
639 |
+ $run $mkdir "$my_gentop" |
|
640 |
+ my_status=$? |
|
641 |
+ if test "$my_status" -ne 0 && test ! -d "$my_gentop"; then |
|
642 |
+ exit $my_status |
|
643 |
+ fi |
|
644 |
+ |
|
645 |
+ for my_xlib in $my_oldlibs; do |
|
646 |
+ # Extract the objects. |
|
647 |
+ case $my_xlib in |
|
648 |
+ [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;; |
|
649 |
+ *) my_xabs=`pwd`"/$my_xlib" ;; |
|
650 |
+ esac |
|
651 |
+ my_xlib=`$echo "X$my_xlib" | $Xsed -e 's%^.*/%%'` |
|
652 |
+ my_xdir="$my_gentop/$my_xlib" |
|
653 |
+ |
|
654 |
+ $show "${rm}r $my_xdir" |
|
655 |
+ $run ${rm}r "$my_xdir" |
|
656 |
+ $show "$mkdir $my_xdir" |
|
657 |
+ $run $mkdir "$my_xdir" |
|
658 |
+ exit_status=$? |
|
659 |
+ if test "$exit_status" -ne 0 && test ! -d "$my_xdir"; then |
|
660 |
+ exit $exit_status |
|
661 |
+ fi |
|
662 |
+ case $host in |
|
663 |
+ *-darwin*) |
|
664 |
+ $show "Extracting $my_xabs" |
|
665 |
+ # Do not bother doing anything if just a dry run |
|
666 |
+ if test -z "$run"; then |
|
667 |
+ darwin_orig_dir=`pwd` |
|
668 |
+ cd $my_xdir || exit $? |
|
669 |
+ darwin_archive=$my_xabs |
|
670 |
+ darwin_curdir=`pwd` |
|
671 |
+ darwin_base_archive=`$echo "X$darwin_archive" | $Xsed -e 's%^.*/%%'` |
|
672 |
+ darwin_arches=`lipo -info "$darwin_archive" 2>/dev/null | $EGREP Architectures 2>/dev/null` |
|
673 |
+ if test -n "$darwin_arches"; then |
|
674 |
+ darwin_arches=`echo "$darwin_arches" | $SED -e 's/.*are://'` |
|
675 |
+ darwin_arch= |
|
676 |
+ $show "$darwin_base_archive has multiple architectures $darwin_arches" |
|
677 |
+ for darwin_arch in $darwin_arches ; do |
|
678 |
+ mkdir -p "unfat-$$/${darwin_base_archive}-${darwin_arch}" |
|
679 |
+ lipo -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}" |
|
680 |
+ cd "unfat-$$/${darwin_base_archive}-${darwin_arch}" |
|
681 |
+ func_extract_an_archive "`pwd`" "${darwin_base_archive}" |
|
682 |
+ cd "$darwin_curdir" |
|
683 |
+ $rm "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" |
|
684 |
+ done # $darwin_arches |
|
685 |
+ ## Okay now we have a bunch of thin objects, gotta fatten them up :) |
|
686 |
+ darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print| xargs basename | sort -u | $NL2SP` |
|
687 |
+ darwin_file= |
|
688 |
+ darwin_files= |
|
689 |
+ for darwin_file in $darwin_filelist; do |
|
690 |
+ darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP` |
|
691 |
+ lipo -create -output "$darwin_file" $darwin_files |
|
692 |
+ done # $darwin_filelist |
|
693 |
+ ${rm}r unfat-$$ |
|
694 |
+ cd "$darwin_orig_dir" |
|
695 |
+ else |
|
696 |
+ cd "$darwin_orig_dir" |
|
697 |
+ func_extract_an_archive "$my_xdir" "$my_xabs" |
|
698 |
+ fi # $darwin_arches |
|
699 |
+ fi # $run |
|
700 |
+ ;; |
|
701 |
+ *) |
|
702 |
+ func_extract_an_archive "$my_xdir" "$my_xabs" |
|
703 |
+ ;; |
|
704 |
+ esac |
|
705 |
+ my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` |
|
706 |
+ done |
|
707 |
+ func_extract_archives_result="$my_oldobjs" |
|
708 |
+} |
|
709 |
+# End of Shell function definitions |
|
710 |
+##################################### |
|
711 |
+ |
|
712 |
+# Darwin sucks |
|
713 |
+eval std_shrext=\"$shrext_cmds\" |
|
714 |
+ |
|
715 |
+disable_libs=no |
|
716 |
+ |
|
460 | 717 |
# Parse our command line options once, thoroughly. |
461 |
-while test $# -gt 0 |
|
718 |
+while test "$#" -gt 0 |
|
462 | 719 |
do |
463 | 720 |
arg="$1" |
464 | 721 |
shift |
... | ... |
@@ -474,6 +761,34 @@ do |
474 | 474 |
execute_dlfiles) |
475 | 475 |
execute_dlfiles="$execute_dlfiles $arg" |
476 | 476 |
;; |
477 |
+ tag) |
|
478 |
+ tagname="$arg" |
|
479 |
+ preserve_args="${preserve_args}=$arg" |
|
480 |
+ |
|
481 |
+ # Check whether tagname contains only valid characters |
|
482 |
+ case $tagname in |
|
483 |
+ *[!-_A-Za-z0-9,/]*) |
|
484 |
+ $echo "$progname: invalid tag name: $tagname" 1>&2 |
|
485 |
+ exit $EXIT_FAILURE |
|
486 |
+ ;; |
|
487 |
+ esac |
|
488 |
+ |
|
489 |
+ case $tagname in |
|
490 |
+ CC) |
|
491 |
+ # Don't test for the "default" C tag, as we know, it's there, but |
|
492 |
+ # not specially marked. |
|
493 |
+ ;; |
|
494 |
+ *) |
|
495 |
+ if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$progpath" > /dev/null; then |
|
496 |
+ taglist="$taglist $tagname" |
|
497 |
+ # Evaluate the configuration. |
|
498 |
+ eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^# ### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $progpath`" |
|
499 |
+ else |
|
500 |
+ $echo "$progname: ignoring unknown tag $tagname" 1>&2 |
|
501 |
+ fi |
|
502 |
+ ;; |
|
503 |
+ esac |
|
504 |
+ ;; |
|
477 | 505 |
*) |
478 | 506 |
eval "$prev=\$arg" |
479 | 507 |
;; |
... | ... |
@@ -491,18 +806,27 @@ do |
491 | 491 |
;; |
492 | 492 |
|
493 | 493 |
--version) |
494 |
- echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" |
|
495 |
- exit 0 |
|
494 |
+ $echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" |
|
495 |
+ $echo |
|
496 |
+ $echo "Copyright (C) 2005 Free Software Foundation, Inc." |
|
497 |
+ $echo "This is free software; see the source for copying conditions. There is NO" |
|
498 |
+ $echo "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." |
|
499 |
+ exit $? |
|
496 | 500 |
;; |
497 | 501 |
|
498 | 502 |
--config) |
499 |
- sed -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0 |
|
500 |
- exit 0 |
|
503 |
+ ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $progpath |
|
504 |
+ # Now print the configurations for the tags. |
|
505 |
+ for tagname in $taglist; do |
|
506 |
+ ${SED} -n -e "/^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^# ### END LIBTOOL TAG CONFIG: $tagname$/p" < "$progpath" |
|
507 |
+ done |
|
508 |
+ exit $? |
|
501 | 509 |
;; |
502 | 510 |
|
503 | 511 |
--debug) |
504 |
- echo "$progname: enabling shell trace mode" |
|
512 |
+ $echo "$progname: enabling shell trace mode" |
|
505 | 513 |
set -x |
514 |
+ preserve_args="$preserve_args $arg" |
|
506 | 515 |
;; |
507 | 516 |
|
508 | 517 |
--dry-run | -n) |
... | ... |
@@ -510,18 +834,18 @@ do |
510 | 510 |
;; |
511 | 511 |
|
512 | 512 |
--features) |
513 |
- echo "host: $host" |
|
513 |
+ $echo "host: $host" |
|
514 | 514 |
if test "$build_libtool_libs" = yes; then |
515 |
- echo "enable shared libraries" |
|
515 |
+ $echo "enable shared libraries" |
|
516 | 516 |
else |
517 |
- echo "disable shared libraries" |
|
517 |
+ $echo "disable shared libraries" |
|
518 | 518 |
fi |
519 | 519 |
if test "$build_old_libs" = yes; then |
520 |
- echo "enable static libraries" |
|
520 |
+ $echo "enable static libraries" |
|
521 | 521 |
else |
522 |
- echo "disable static libraries" |
|
522 |
+ $echo "disable static libraries" |
|
523 | 523 |
fi |
524 |
- exit 0 |
|
524 |
+ exit $? |
|
525 | 525 |
;; |
526 | 526 |
|
527 | 527 |
--finish) mode="finish" ;; |
... | ... |
@@ -533,6 +857,19 @@ do |
533 | 533 |
|
534 | 534 |
--quiet | --silent) |
535 | 535 |
show=: |
536 |
+ preserve_args="$preserve_args $arg" |
|
537 |
+ ;; |
|
538 |
+ |
|
539 |
+ --tag) |
|
540 |
+ prevopt="--tag" |
|
541 |
+ prev=tag |
|
542 |
+ preserve_args="$preserve_args --tag" |
|
543 |
+ ;; |
|
544 |
+ --tag=*) |
|
545 |
+ set tag "$optarg" ${1+"$@"} |
|
546 |
+ shift |
|
547 |
+ prev=tag |
|
548 |
+ preserve_args="$preserve_args --tag" |
|
536 | 549 |
;; |
537 | 550 |
|
538 | 551 |
-dlopen) |
... | ... |
@@ -543,7 +880,7 @@ do |
543 | 543 |
-*) |
544 | 544 |
$echo "$modename: unrecognized option \`$arg'" 1>&2 |
545 | 545 |
$echo "$help" 1>&2 |
546 |
- exit 1 |
|
546 |
+ exit $EXIT_FAILURE |
|
547 | 547 |
;; |
548 | 548 |
|
549 | 549 |
*) |
... | ... |
@@ -556,9 +893,21 @@ done |
556 | 556 |
if test -n "$prevopt"; then |
557 | 557 |
$echo "$modename: option \`$prevopt' requires an argument" 1>&2 |
558 | 558 |
$echo "$help" 1>&2 |
559 |
- exit 1 |
|
559 |
+ exit $EXIT_FAILURE |
|
560 | 560 |
fi |
561 | 561 |
|
562 |
+case $disable_libs in |
|
563 |
+no) |
|
564 |
+ ;; |
|
565 |
+shared) |
|
566 |
+ build_libtool_libs=no |
|
567 |
+ build_old_libs=yes |
|
568 |
+ ;; |
|
569 |
+static) |
|
570 |
+ build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` |
|
571 |
+ ;; |
|
572 |
+esac |
|
573 |
+ |
|
562 | 574 |
# If this variable is set in any of the actions, the command in it |
563 | 575 |
# will be execed at the end. This prevents here-documents from being |
564 | 576 |
# left over by shells. |
... | ... |
@@ -568,8 +917,10 @@ if test -z "$show_help"; then |
568 | 568 |
|
569 | 569 |
# Infer the operation mode. |
570 | 570 |
if test -z "$mode"; then |
571 |
+ $echo "*** Warning: inferring the mode of operation is deprecated." 1>&2 |
|
572 |
+ $echo "*** Future versions of Libtool will require --mode=MODE be specified." 1>&2 |
|
571 | 573 |
case $nonopt in |
572 |
- *cc | *++ | gcc* | *-gcc*) |
|
574 |
+ *cc | cc* | *++ | gcc* | *-gcc* | g++* | xlc*) |
|
573 | 575 |
mode=link |
574 | 576 |
for arg |
575 | 577 |
do |
... | ... |
@@ -610,7 +961,7 @@ if test -z "$show_help"; then |
610 | 610 |
if test -n "$execute_dlfiles" && test "$mode" != execute; then |
611 | 611 |
$echo "$modename: unrecognized option \`-dlopen'" 1>&2 |
612 | 612 |
$echo "$help" 1>&2 |
613 |
- exit 1 |
|
613 |
+ exit $EXIT_FAILURE |
|
614 | 614 |
fi |
615 | 615 |
|
616 | 616 |
# Change the help message to a mode-specific one. |
... | ... |
@@ -624,158 +975,127 @@ if test -z "$show_help"; then |
624 | 624 |
modename="$modename: compile" |
625 | 625 |
# Get the compilation command and the source file. |
626 | 626 |
base_compile= |
627 |
- prev= |
|
628 |
- lastarg= |
|
629 |
- srcfile="$nonopt" |
|
627 |
+ srcfile="$nonopt" # always keep a non-empty value in "srcfile" |
|
628 |
+ suppress_opt=yes |
|
630 | 629 |
suppress_output= |
630 |
+ arg_mode=normal |
|
631 |
+ libobj= |
|
632 |
+ later= |
|
631 | 633 |
|
632 |
- user_target=no |
|
633 | 634 |
for arg |
634 | 635 |
do |
635 |
- case $prev in |
|
636 |
- "") ;; |
|
637 |
- xcompiler) |
|
638 |
- # Aesthetically quote the previous argument. |
|
639 |
- prev= |
|
640 |
- lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` |
|
641 |
- |
|
642 |
- case $arg in |
|
643 |
- # Double-quote args containing other shell metacharacters. |
|
644 |
- # Many Bourne shells cannot handle close brackets correctly |
|
645 |
- # in scan sets, so we specify it separately. |
|
646 |
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") |
|
647 |
- arg="\"$arg\"" |
|
648 |
- ;; |
|
649 |
- esac |
|
636 |
+ case $arg_mode in |
|
637 |
+ arg ) |
|
638 |
+ # do not "continue". Instead, add this to base_compile |
|
639 |
+ lastarg="$arg" |
|
640 |
+ arg_mode=normal |
|
641 |
+ ;; |
|
650 | 642 |
|
651 |
- # Add the previous argument to base_compile. |
|
652 |
- if test -z "$base_compile"; then |
|
653 |
- base_compile="$lastarg" |
|
654 |
- else |
|
655 |
- base_compile="$base_compile $lastarg" |
|
656 |
- fi |
|
643 |
+ target ) |
|
644 |
+ libobj="$arg" |
|
645 |
+ arg_mode=normal |
|
657 | 646 |
continue |
658 | 647 |
;; |
659 |
- esac |
|
660 | 648 |
|
661 |
- # Accept any command-line options. |
|
662 |
- case $arg in |
|
663 |
- -o) |
|
664 |
- if test "$user_target" != "no"; then |
|
665 |
- $echo "$modename: you cannot specify \`-o' more than once" 1>&2 |
|
666 |
- exit 1 |
|
667 |
- fi |
|
668 |
- user_target=next |
|
669 |
- ;; |
|
649 |
+ normal ) |
|
650 |
+ # Accept any command-line options. |
|
651 |
+ case $arg in |
|
652 |
+ -o) |
|
653 |
+ if test -n "$libobj" ; then |
|
654 |
+ $echo "$modename: you cannot specify \`-o' more than once" 1>&2 |
|
655 |
+ exit $EXIT_FAILURE |
|
656 |
+ fi |
|
657 |
+ arg_mode=target |
|
658 |
+ continue |
|
659 |
+ ;; |
|
670 | 660 |
|
671 |
- -static) |
|
672 |
- build_old_libs=yes |
|
673 |
- continue |
|
674 |
- ;; |
|
661 |
+ -static | -prefer-pic | -prefer-non-pic) |
|
662 |
+ later="$later $arg" |
|
663 |
+ continue |
|
664 |
+ ;; |
|
675 | 665 |
|
676 |
- -prefer-pic) |
|
677 |
- pic_mode=yes |
|
678 |
- continue |
|
679 |
- ;; |
|
666 |
+ -no-suppress) |
|
667 |
+ suppress_opt=no |
|
668 |
+ continue |
|
669 |
+ ;; |
|
680 | 670 |
|
681 |
- -prefer-non-pic) |
|
682 |
- pic_mode=no |
|
683 |
- continue |
|
684 |
- ;; |
|
671 |
+ -Xcompiler) |
|
672 |
+ arg_mode=arg # the next one goes into the "base_compile" arg list |
|
673 |
+ continue # The current "srcfile" will either be retained or |
|
674 |
+ ;; # replaced later. I would guess that would be a bug. |
|
685 | 675 |
|
686 |
- -Xcompiler) |
|
687 |
- prev=xcompiler |
|
688 |
- continue |
|
689 |
- ;; |
|
676 |
+ -Wc,*) |
|
677 |
+ args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` |
|
678 |
+ lastarg= |
|
679 |
+ save_ifs="$IFS"; IFS=',' |
|
680 |
+ for arg in $args; do |
|
681 |
+ IFS="$save_ifs" |
|
690 | 682 |
|
691 |
- -Wc,*) |
|
692 |
- args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` |
|
693 |
- lastarg= |
|
694 |
- save_ifs="$IFS"; IFS=',' |
|
695 |
- for arg in $args; do |
|
683 |
+ # Double-quote args containing other shell metacharacters. |
|
684 |
+ # Many Bourne shells cannot handle close brackets correctly |
|
685 |
+ # in scan sets, so we specify it separately. |
|
686 |
+ case $arg in |
|
687 |
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") |
|
688 |
+ arg="\"$arg\"" |
|
689 |
+ ;; |
|
690 |
+ esac |
|
691 |
+ lastarg="$lastarg $arg" |
|
692 |
+ done |
|
696 | 693 |
IFS="$save_ifs" |
694 |
+ lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` |
|
697 | 695 |
|
698 |
- # Double-quote args containing other shell metacharacters. |
|
699 |
- # Many Bourne shells cannot handle close brackets correctly |
|
700 |
- # in scan sets, so we specify it separately. |
|
701 |
- case $arg in |
|
702 |
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") |
|
703 |
- arg="\"$arg\"" |
|
704 |
- ;; |
|
705 |
- esac |
|
706 |
- lastarg="$lastarg $arg" |
|
707 |
- done |
|
708 |
- IFS="$save_ifs" |
|
709 |
- lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` |
|
710 |
- |
|
711 |
- # Add the arguments to base_compile. |
|
712 |
- if test -z "$base_compile"; then |
|
713 |
- base_compile="$lastarg" |
|
714 |
- else |
|
696 |
+ # Add the arguments to base_compile. |
|
715 | 697 |
base_compile="$base_compile $lastarg" |
716 |
- fi |
|
717 |
- continue |
|
718 |
- ;; |
|
719 |
- esac |
|
698 |
+ continue |
|
699 |
+ ;; |
|
720 | 700 |
|
721 |
- case $user_target in |
|
722 |
- next) |
|
723 |
- # The next one is the -o target name |
|
724 |
- user_target=yes |
|
725 |
- continue |
|
726 |
- ;; |
|
727 |
- yes) |
|
728 |
- # We got the output file |
|
729 |
- user_target=set |
|
730 |
- libobj="$arg" |
|
731 |
- continue |
|
701 |
+ * ) |
|
702 |
+ # Accept the current argument as the source file. |
|
703 |
+ # The previous "srcfile" becomes the current argument. |
|
704 |
+ # |
|
705 |
+ lastarg="$srcfile" |
|
706 |
+ srcfile="$arg" |
|
707 |
+ ;; |
|
708 |
+ esac # case $arg |
|
732 | 709 |
;; |
733 |
- esac |
|
734 |
- |
|
735 |
- # Accept the current argument as the source file. |
|
736 |
- lastarg="$srcfile" |
|
737 |
- srcfile="$arg" |
|
710 |
+ esac # case $arg_mode |
|
738 | 711 |
|
739 | 712 |
# Aesthetically quote the previous argument. |
740 |
- |
|
741 |
- # Backslashify any backslashes, double quotes, and dollar signs. |
|
742 |
- # These are the only characters that are still specially |
|
743 |
- # interpreted inside of double-quoted scrings. |
|
744 | 713 |
lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` |
745 | 714 |
|
715 |
+ case $lastarg in |
|
746 | 716 |
# Double-quote args containing other shell metacharacters. |
747 | 717 |
# Many Bourne shells cannot handle close brackets correctly |
748 |
- # in scan sets, so we specify it separately. |
|
749 |
- case $lastarg in |
|
718 |
+ # in scan sets, and some SunOS ksh mistreat backslash-escaping |
|
719 |
+ # in scan sets (worked around with variable expansion), |
|
720 |
+ # and furthermore cannot handle '|' '&' '(' ')' in scan sets |
|
721 |
+ # at all, so we specify them separately. |
|
750 | 722 |
*[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") |
751 | 723 |
lastarg="\"$lastarg\"" |
752 | 724 |
;; |
753 | 725 |
esac |
754 | 726 |
|
755 |
- # Add the previous argument to base_compile. |
|
756 |
- if test -z "$base_compile"; then |
|
757 |
- base_compile="$lastarg" |
|
758 |
- else |
|
759 |
- base_compile="$base_compile $lastarg" |
|
760 |
- fi |
|
761 |
- done |
|
727 |
+ base_compile="$base_compile $lastarg" |
|
728 |
+ done # for arg |
|
762 | 729 |
|
763 |
- case $user_target in |
|
764 |
- set) |
|
730 |
+ case $arg_mode in |
|
731 |
+ arg) |
|
732 |
+ $echo "$modename: you must specify an argument for -Xcompile" |
|
733 |
+ exit $EXIT_FAILURE |
|
765 | 734 |
;; |
766 |
- no) |
|
767 |
- # Get the name of the library object. |
|
768 |
- libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` |
|
735 |
+ target) |
|
736 |
+ $echo "$modename: you must specify a target with \`-o'" 1>&2 |
|
737 |
+ exit $EXIT_FAILURE |
|
769 | 738 |
;; |
770 | 739 |
*) |
771 |
- $echo "$modename: you must specify a target with \`-o'" 1>&2 |
|
772 |
- exit 1 |
|
740 |
+ # Get the name of the library object. |
|
741 |
+ [ -z "$libobj" ] && libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` |
|
773 | 742 |
;; |
774 | 743 |
esac |
775 | 744 |
|
776 | 745 |
# Recognize several different file suffixes. |
777 | 746 |
# If the user specifies -o file.o, it is replaced with file.lo |
778 |
- xform='[cCFSfmso]' |
|
747 |
+ xform='[cCFSifmso]' |
|
779 | 748 |
case $libobj in |
780 | 749 |
*.ada) xform=ada ;; |
781 | 750 |
*.adb) xform=adb ;; |
... | ... |
@@ -783,10 +1103,13 @@ if test -z "$show_help"; then |
783 | 783 |
*.asm) xform=asm ;; |
784 | 784 |
*.c++) xform=c++ ;; |
785 | 785 |
*.cc) xform=cc ;; |
786 |
+ *.ii) xform=ii ;; |
|
787 |
+ *.class) xform=class ;; |
|
786 | 788 |
*.cpp) xform=cpp ;; |
787 | 789 |
*.cxx) xform=cxx ;; |
788 | 790 |
*.f90) xform=f90 ;; |
789 | 791 |
*.for) xform=for ;; |
792 |
+ *.java) xform=java ;; |
|
790 | 793 |
esac |
791 | 794 |
|
792 | 795 |
libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` |
... | ... |
@@ -795,25 +1118,63 @@ if test -z "$show_help"; then |
795 | 795 |
*.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; |
796 | 796 |
*) |
797 | 797 |
$echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 |
798 |
- exit 1 |
|
798 |
+ exit $EXIT_FAILURE |
|
799 | 799 |
;; |
800 | 800 |
esac |
801 | 801 |
|
802 |
+ func_infer_tag $base_compile |
|
803 |
+ |
|
804 |
+ for arg in $later; do |
|
805 |
+ case $arg in |
|
806 |
+ -static) |
|
807 |
+ build_old_libs=yes |
|
808 |
+ continue |
|
809 |
+ ;; |
|
810 |
+ |
|
811 |
+ -prefer-pic) |
|
812 |
+ pic_mode=yes |
|
813 |
+ continue |
|
814 |
+ ;; |
|
815 |
+ |
|
816 |
+ -prefer-non-pic) |
|
817 |
+ pic_mode=no |
|
818 |
+ continue |
|
819 |
+ ;; |
|
820 |
+ esac |
|
821 |
+ done |
|
822 |
+ |
|
823 |
+ qlibobj=`$echo "X$libobj" | $Xsed -e "$sed_quote_subst"` |
|
824 |
+ case $qlibobj in |
|
825 |
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") |
|
826 |
+ qlibobj="\"$qlibobj\"" ;; |
|
827 |
+ esac |
|
828 |
+ test "X$libobj" != "X$qlibobj" \ |
|
829 |
+ && $echo "X$libobj" | grep '[]~#^*{};<>?"'"'"' &()|`$[]' \ |
|
830 |
+ && $echo "$modename: libobj name \`$libobj' may not contain shell special characters." |
|
831 |
+ objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` |
|
832 |
+ xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` |
|
833 |
+ if test "X$xdir" = "X$obj"; then |
|
834 |
+ xdir= |
|
835 |
+ else |
|
836 |
+ xdir=$xdir/ |
|
837 |
+ fi |
|
838 |
+ lobj=${xdir}$objdir/$objname |
|
839 |
+ |
|
802 | 840 |
if test -z "$base_compile"; then |
803 | 841 |
$echo "$modename: you must specify a compilation command" 1>&2 |
804 | 842 |
$echo "$help" 1>&2 |
805 |
- exit 1 |
|
843 |
+ exit $EXIT_FAILURE |
|
806 | 844 |
fi |
807 | 845 |
|
808 | 846 |
# Delete any leftover library objects. |
809 | 847 |
if test "$build_old_libs" = yes; then |
810 |
- removelist="$obj $libobj" |
|
848 |
+ removelist="$obj $lobj $libobj ${libobj}T" |
|
811 | 849 |
else |
812 |
- removelist="$libobj" |
|
850 |
+ removelist="$lobj $libobj ${libobj}T" |
|
813 | 851 |
fi |
814 | 852 |
|
815 | 853 |
$run $rm $removelist |
816 |
- trap "$run $rm $removelist; exit 1" 1 2 15 |
|
854 |
+ trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15 |
|
817 | 855 |
|
818 | 856 |
# On Cygwin there's no "real" PIC flag so we must build both object types |
819 | 857 |
case $host_os in |
... | ... |
@@ -821,7 +1182,7 @@ if test -z "$show_help"; then |
821 | 821 |
pic_mode=default |
822 | 822 |
;; |
823 | 823 |
esac |
824 |
- if test $pic_mode = no && test "$deplibs_check_method" != pass_all; then |
|
824 |
+ if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then |
|
825 | 825 |
# non-PIC code in shared libraries is not supported |
826 | 826 |
pic_mode=default |
827 | 827 |
fi |
... | ... |
@@ -832,8 +1193,9 @@ if test -z "$show_help"; then |
832 | 832 |
output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} |
833 | 833 |
lockfile="$output_obj.lock" |
834 | 834 |
removelist="$removelist $output_obj $lockfile" |
835 |
- trap "$run $rm $removelist; exit 1" 1 2 15 |
|
835 |
+ trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15 |
|
836 | 836 |
else |
837 |
+ output_obj= |
|
837 | 838 |
need_locks=no |
838 | 839 |
lockfile= |
839 | 840 |
fi |
... | ... |
@@ -841,13 +1203,13 @@ if test -z "$show_help"; then |
841 | 841 |
# Lock this critical section if it is needed |
842 | 842 |
# We use this script file to make the link, it avoids creating a new file |
843 | 843 |
if test "$need_locks" = yes; then |
844 |
- until $run ln "$0" "$lockfile" 2>/dev/null; do |
|
844 |
+ until $run ln "$progpath" "$lockfile" 2>/dev/null; do |
|
845 | 845 |
$show "Waiting for $lockfile to be removed" |
846 | 846 |
sleep 2 |
847 | 847 |
done |
848 | 848 |
elif test "$need_locks" = warn; then |
849 | 849 |
if test -f "$lockfile"; then |
850 |
- echo "\ |
|
850 |
+ $echo "\ |
|
851 | 851 |
*** ERROR, $lockfile exists and contains: |
852 | 852 |
`cat $lockfile 2>/dev/null` |
853 | 853 |
|
... | ... |
@@ -859,14 +1221,33 @@ avoid parallel builds (make -j) in this platform, or get a better |
859 | 859 |
compiler." |
860 | 860 |
|
861 | 861 |
$run $rm $removelist |
862 |
- exit 1 |
|
862 |
+ exit $EXIT_FAILURE |
|
863 | 863 |
fi |
864 |
- echo $srcfile > "$lockfile" |
|
864 |
+ $echo "$srcfile" > "$lockfile" |
|
865 | 865 |
fi |
866 | 866 |
|
867 | 867 |
if test -n "$fix_srcfile_path"; then |
868 | 868 |
eval srcfile=\"$fix_srcfile_path\" |
869 | 869 |
fi |
870 |
+ qsrcfile=`$echo "X$srcfile" | $Xsed -e "$sed_quote_subst"` |
|
871 |
+ case $qsrcfile in |
|
872 |
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") |
|
873 |
+ qsrcfile="\"$qsrcfile\"" ;; |
|
874 |
+ esac |
|
875 |
+ |
|
876 |
+ $run $rm "$libobj" "${libobj}T" |
|
877 |
+ |
|
878 |
+ # Create a libtool object file (analogous to a ".la" file), |
|
879 |
+ # but don't create it if we're doing a dry run. |
|
880 |
+ test -z "$run" && cat > ${libobj}T <<EOF |
|
881 |
+# $libobj - a libtool object file |
|
882 |
+# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP |
|
883 |
+# |
|
884 |
+# Please DO NOT delete this file! |
|
885 |
+# It is necessary for linking the library. |
|
886 |
+ |
|
887 |
+# Name of the PIC object. |
|
888 |
+EOF |
|
870 | 889 |
|
871 | 890 |
# Only build a PIC object if we are building libtool libraries. |
872 | 891 |
if test "$build_libtool_libs" = yes; then |
... | ... |
@@ -874,53 +1255,38 @@ compiler." |
874 | 874 |
fbsd_hideous_sh_bug=$base_compile |
875 | 875 |
|
876 | 876 |
if test "$pic_mode" != no; then |
877 |
- # All platforms use -DPIC, to notify preprocessed assembler code. |
|
878 |
- command="$base_compile $srcfile $pic_flag -DPIC" |
|
877 |
+ command="$base_compile $qsrcfile $pic_flag" |
|
879 | 878 |
else |
880 | 879 |
# Don't build PIC code |
881 |
- command="$base_compile $srcfile" |
|
880 |
+ command="$base_compile $qsrcfile" |
|
882 | 881 |
fi |
883 |
- if test "$build_old_libs" = yes; then |
|
884 |
- lo_libobj="$libobj" |
|
885 |
- dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` |
|
886 |
- if test "X$dir" = "X$libobj"; then |
|
887 |
- dir="$objdir" |
|
888 |
- else |
|
889 |
- dir="$dir/$objdir" |
|
890 |
- fi |
|
891 |
- libobj="$dir/"`$echo "X$libobj" | $Xsed -e 's%^.*/%%'` |
|
892 | 882 |
|
893 |
- if test -d "$dir"; then |
|
894 |
- $show "$rm $libobj" |
|
895 |
- $run $rm $libobj |
|
896 |
- else |
|
897 |
- $show "$mkdir $dir" |
|
898 |
- $run $mkdir $dir |
|
899 |
- status=$? |
|
900 |
- if test $status -ne 0 && test ! -d $dir; then |
|
901 |
- exit $status |
|
902 |
- fi |
|
883 |
+ if test ! -d "${xdir}$objdir"; then |
|
884 |
+ $show "$mkdir ${xdir}$objdir" |
|
885 |
+ $run $mkdir ${xdir}$objdir |
|
886 |
+ exit_status=$? |
|
887 |
+ if test "$exit_status" -ne 0 && test ! -d "${xdir}$objdir"; then |
|
888 |
+ exit $exit_status |
|
903 | 889 |
fi |
904 | 890 |
fi |
905 |
- if test "$compiler_o_lo" = yes; then |
|
906 |
- output_obj="$libobj" |
|
907 |
- command="$command -o $output_obj" |
|
908 |
- elif test "$compiler_c_o" = yes; then |
|
909 |
- output_obj="$obj" |
|
910 |
- command="$command -o $output_obj" |
|
891 |
+ |
|
892 |
+ if test -z "$output_obj"; then |
|
893 |
+ # Place PIC objects in $objdir |
|
894 |
+ command="$command -o $lobj" |
|
911 | 895 |
fi |
912 | 896 |
|
913 |
- $run $rm "$output_obj" |
|
897 |
+ $run $rm "$lobj" "$output_obj" |
|
898 |
+ |
|
914 | 899 |
$show "$command" |
915 | 900 |
if $run eval "$command"; then : |
916 | 901 |
else |
917 | 902 |
test -n "$output_obj" && $run $rm $removelist |
918 |
- exit 1 |
|
903 |
+ exit $EXIT_FAILURE |
|
919 | 904 |
fi |
920 | 905 |
|
921 | 906 |
if test "$need_locks" = warn && |
922 |
- test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then |
|
923 |
- echo "\ |
|
907 |
+ test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then |
|
908 |
+ $echo "\ |
|
924 | 909 |
*** ERROR, $lockfile contains: |
925 | 910 |
`cat $lockfile 2>/dev/null` |
926 | 911 |
|
... | ... |
@@ -935,13 +1301,13 @@ avoid parallel builds (make -j) in this platform, or get a better |
935 | 935 |
compiler." |
936 | 936 |
|
937 | 937 |
$run $rm $removelist |
938 |
- exit 1 |
|
938 |
+ exit $EXIT_FAILURE |
|
939 | 939 |
fi |
940 | 940 |
|
941 | 941 |
# Just move the object if needed, then go on to compile the next one |
942 |
- if test x"$output_obj" != x"$libobj"; then |
|
943 |
- $show "$mv $output_obj $libobj" |
|
944 |
- if $run $mv $output_obj $libobj; then : |
|
942 |
+ if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then |
|
943 |
+ $show "$mv $output_obj $lobj" |
|
944 |
+ if $run $mv $output_obj $lobj; then : |
|
945 | 945 |
else |
946 | 946 |
error=$? |
947 | 947 |
$run $rm $removelist |
... | ... |
@@ -949,77 +1315,50 @@ compiler." |
949 | 949 |
fi |
950 | 950 |
fi |
951 | 951 |
|
952 |
- # If we have no pic_flag, then copy the object into place and finish. |
|
953 |
- if (test -z "$pic_flag" || test "$pic_mode" != default) && |
|
954 |
- test "$build_old_libs" = yes; then |
|
955 |
- # Rename the .lo from within objdir to obj |
|
956 |
- if test -f $obj; then |
|
957 |
- $show $rm $obj |
|
958 |
- $run $rm $obj |
|
959 |
- fi |
|
952 |
+ # Append the name of the PIC object to the libtool object file. |
|
953 |
+ test -z "$run" && cat >> ${libobj}T <<EOF |
|
954 |
+pic_object='$objdir/$objname' |
|
960 | 955 |
|
961 |
- $show "$mv $libobj $obj" |
|
962 |
- if $run $mv $libobj $obj; then : |
|
963 |
- else |
|
964 |
- error=$? |
|
965 |
- $run $rm $removelist |
|
966 |
- exit $error |
|
967 |
- fi |
|
956 |
+EOF |
|
968 | 957 |
|
969 |
- xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` |
|
970 |
- if test "X$xdir" = "X$obj"; then |
|
971 |
- xdir="." |
|
972 |
- else |
|
973 |
- xdir="$xdir" |
|
974 |
- fi |
|
975 |
- baseobj=`$echo "X$obj" | $Xsed -e "s%.*/%%"` |
|
976 |
- libobj=`$echo "X$baseobj" | $Xsed -e "$o2lo"` |
|
977 |
- # Now arrange that obj and lo_libobj become the same file |
|
978 |
- $show "(cd $xdir && $LN_S $baseobj $libobj)" |
|
979 |
- if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then |
|
980 |
- # Unlock the critical section if it was locked |
|
981 |
- if test "$need_locks" != no; then |
|
982 |
- $run $rm "$lockfile" |
|
983 |
- fi |
|
984 |
- exit 0 |
|
985 |
- else |
|
986 |
- error=$? |
|
987 |
- $run $rm $removelist |
|
988 |
- exit $error |
|
989 |
- fi |
|
958 |
+ # Allow error messages only from the first compilation. |
|
959 |
+ if test "$suppress_opt" = yes; then |
|
960 |
+ suppress_output=' >/dev/null 2>&1' |
|
990 | 961 |
fi |
962 |
+ else |
|
963 |
+ # No PIC object so indicate it doesn't exist in the libtool |
|
964 |
+ # object file. |
|
965 |
+ test -z "$run" && cat >> ${libobj}T <<EOF |
|
966 |
+pic_object=none |
|
991 | 967 |
|
992 |
- # Allow error messages only from the first compilation. |
|
993 |
- suppress_output=' >/dev/null 2>&1' |
|
968 |
+EOF |
|
994 | 969 |
fi |
995 | 970 |
|
996 | 971 |
# Only build a position-dependent object if we build old libraries. |
997 | 972 |
if test "$build_old_libs" = yes; then |
998 | 973 |
if test "$pic_mode" != yes; then |
999 | 974 |
# Don't build PIC code |
1000 |
- command="$base_compile $srcfile" |
|
975 |
+ command="$base_compile $qsrcfile" |
|
1001 | 976 |
else |
1002 |
- # All platforms use -DPIC, to notify preprocessed assembler code. |
|
1003 |
- command="$base_compile $srcfile $pic_flag -DPIC" |
|
977 |
+ command="$base_compile $qsrcfile $pic_flag" |
|
1004 | 978 |
fi |
1005 | 979 |
if test "$compiler_c_o" = yes; then |
1006 | 980 |
command="$command -o $obj" |
1007 |
- output_obj="$obj" |
|
1008 | 981 |
fi |
1009 | 982 |
|
1010 | 983 |
# Suppress compiler output if we already did a PIC compilation. |
1011 | 984 |
command="$command$suppress_output" |
1012 |
- $run $rm "$output_obj" |
|
985 |
+ $run $rm "$obj" "$output_obj" |
|
1013 | 986 |
$show "$command" |
1014 | 987 |
if $run eval "$command"; then : |
1015 | 988 |
else |
1016 | 989 |
$run $rm $removelist |
1017 |
- exit 1 |
|
990 |
+ exit $EXIT_FAILURE |
|
1018 | 991 |
fi |
1019 | 992 |
|
1020 | 993 |
if test "$need_locks" = warn && |
1021 |
- test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then |
|
1022 |
- echo "\ |
|
994 |
+ test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then |
|
995 |
+ $echo "\ |
|
1023 | 996 |
*** ERROR, $lockfile contains: |
1024 | 997 |
`cat $lockfile 2>/dev/null` |
1025 | 998 |
|
... | ... |
@@ -1034,11 +1373,11 @@ avoid parallel builds (make -j) in this platform, or get a better |
1034 | 1034 |
compiler." |
1035 | 1035 |
|
1036 | 1036 |
$run $rm $removelist |
1037 |
- exit 1 |
|
1037 |
+ exit $EXIT_FAILURE |
|
1038 | 1038 |
fi |
1039 | 1039 |
|
1040 | 1040 |
# Just move the object if needed |
1041 |
- if test x"$output_obj" != x"$obj"; then |
|
1041 |
+ if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then |
|
1042 | 1042 |
$show "$mv $output_obj $obj" |
1043 | 1043 |
if $run $mv $output_obj $obj; then : |
1044 | 1044 |
else |
... | ... |
@@ -1048,29 +1387,31 @@ compiler." |
1048 | 1048 |
fi |
1049 | 1049 |
fi |
1050 | 1050 |
|
1051 |
- # Create an invalid libtool object if no PIC, so that we do not |
|
1052 |
- # accidentally link it into a program. |
|
1053 |
- if test "$build_libtool_libs" != yes; then |
|
1054 |
- $show "echo timestamp > $libobj" |
|
1055 |
- $run eval "echo timestamp > \$libobj" || exit $? |
|
1056 |
- else |
|
1057 |
- # Move the .lo from within objdir |
|
1058 |
- $show "$mv $libobj $lo_libobj" |
|
1059 |
- if $run $mv $libobj $lo_libobj; then : |
|
1060 |
- else |
|
1061 |
- error=$? |
|
1062 |
- $run $rm $removelist |
|
1063 |
- exit $error |
|
1064 |
- fi |
|
1065 |
- fi |
|
1051 |
+ # Append the name of the non-PIC object the libtool object file. |
|
1052 |
+ # Only append if the libtool object file exists. |
|
1053 |
+ test -z "$run" && cat >> ${libobj}T <<EOF |
|
1054 |
+# Name of the non-PIC object. |
|
1055 |
+non_pic_object='$objname' |
|
1056 |
+ |
|
1057 |
+EOF |
|
1058 |
+ else |
|
1059 |
+ # Append the name of the non-PIC object the libtool object file. |
|
1060 |
+ # Only append if the libtool object file exists. |
|
1061 |
+ test -z "$run" && cat >> ${libobj}T <<EOF |
|
1062 |
+# Name of the non-PIC object. |
|
1063 |
+non_pic_object=none |
|
1064 |
+ |
|
1065 |
+EOF |
|
1066 | 1066 |
fi |
1067 | 1067 |
|
1068 |
+ $run $mv "${libobj}T" "${libobj}" |
|
1069 |
+ |
|
1068 | 1070 |
# Unlock the critical section if it was locked |
1069 | 1071 |
if test "$need_locks" != no; then |
1070 | 1072 |
$run $rm "$lockfile" |
1071 | 1073 |
fi |
1072 | 1074 |
|
1073 |
- exit 0 |
|
1075 |
+ exit $EXIT_SUCCESS |
|
1074 | 1076 |
;; |
1075 | 1077 |
|
1076 | 1078 |
# libtool link mode |
... | ... |
@@ -1081,7 +1422,7 @@ compiler." |
1081 | 1081 |
# It is impossible to link a dll without this setting, and |
1082 | 1082 |
# we shouldn't force the makefile maintainer to figure out |
1083 | 1083 |
# which system we are compiling for in order to pass an extra |
1084 |
- # flag for every libtool invokation. |
|
1084 |
+ # flag for every libtool invocation. |
|
1085 | 1085 |
# allow_undefined=no |
1086 | 1086 |
|
1087 | 1087 |
# FIXME: Unfortunately, there are problems with the above when trying |
... | ... |
@@ -1096,6 +1437,7 @@ compiler." |
1096 | 1096 |
;; |
1097 | 1097 |
esac |
1098 | 1098 |
libtool_args="$nonopt" |
1099 |
+ base_compile="$nonopt $@" |
|
1099 | 1100 |
compile_command="$nonopt" |
1100 | 1101 |
finalize_command="$nonopt" |
1101 | 1102 |
|
... | ... |
@@ -1111,6 +1453,7 @@ compiler." |
1111 | 1111 |
linker_flags= |
1112 | 1112 |
dllsearchpath= |
1113 | 1113 |
lib_search_path=`pwd` |
1114 |
+ inst_prefix_dir= |
|
1114 | 1115 |
|
1115 | 1116 |
avoid_version=no |
1116 | 1117 |
dlfiles= |
... | ... |
@@ -1125,6 +1468,9 @@ compiler." |
1125 | 1125 |
module=no |
1126 | 1126 |
no_install=no |
1127 | 1127 |
objs= |
1128 |
+ non_pic_objects= |
|
1129 |
+ notinst_path= # paths that contain not-installed libtool libraries |
|
1130 |
+ precious_files_regex= |
|
1128 | 1131 |
prefer_static_libs=no |
1129 | 1132 |
preload=no |
1130 | 1133 |
prev= |
... | ... |
@@ -1136,6 +1482,9 @@ compiler." |
1136 | 1136 |
temp_rpath= |
1137 | 1137 |
thread_safe=no |
1138 | 1138 |
vinfo= |
1139 |
+ vinfo_number=no |
|
1140 |
+ |
|
1141 |
+ func_infer_tag $base_compile |
|
1139 | 1142 |
|
1140 | 1143 |
# We need to know -static, to get the right output filenames. |
1141 | 1144 |
for arg |
... | ... |
@@ -1149,14 +1498,15 @@ compiler." |
1149 | 1149 |
if test -n "$link_static_flag"; then |
1150 | 1150 |
dlopen_self=$dlopen_self_static |
1151 | 1151 |
fi |
1152 |
+ prefer_static_libs=yes |
|
1152 | 1153 |
else |
1153 | 1154 |
if test -z "$pic_flag" && test -n "$link_static_flag"; then |
1154 | 1155 |
dlopen_self=$dlopen_self_static |
1155 | 1156 |
fi |
1157 |
+ prefer_static_libs=built |
|
1156 | 1158 |
fi |
1157 | 1159 |
build_libtool_libs=no |
1158 | 1160 |
build_old_libs=yes |
1159 |
- prefer_static_libs=yes |
|
1160 | 1161 |
break |
1161 | 1162 |
;; |
1162 | 1163 |
esac |
... | ... |
@@ -1166,7 +1516,7 @@ compiler." |
1166 | 1166 |
test -n "$old_archive_from_new_cmds" && build_old_libs=yes |
1167 | 1167 |
|
1168 | 1168 |
# Go through the arguments, transforming them on the way. |
1169 |
- while test $# -gt 0; do |
|
1169 |
+ while test "$#" -gt 0; do |
|
1170 | 1170 |
arg="$1" |
1171 | 1171 |
shift |
1172 | 1172 |
case $arg in |
... | ... |
@@ -1231,7 +1581,7 @@ compiler." |
1231 | 1231 |
export_symbols="$arg" |
1232 | 1232 |
if test ! -f "$arg"; then |
1233 | 1233 |
$echo "$modename: symbol file \`$arg' does not exist" |
1234 |
- exit 1 |
|
1234 |
+ exit $EXIT_FAILURE |
|
1235 | 1235 |
fi |
1236 | 1236 |
prev= |
1237 | 1237 |
continue |
... | ... |
@@ -1241,18 +1591,140 @@ compiler." |
1241 | 1241 |
prev= |
1242 | 1242 |
continue |
1243 | 1243 |
;; |
1244 |
+ inst_prefix) |
|
1245 |
+ inst_prefix_dir="$arg" |
|
1246 |
+ prev= |
|
1247 |
+ continue |
|
1248 |
+ ;; |
|
1249 |
+ precious_regex) |
|
1250 |
+ precious_files_regex="$arg" |
|
1251 |
+ prev= |
|
1252 |
+ continue |
|
1253 |
+ ;; |
|
1244 | 1254 |
release) |
1245 | 1255 |
release="-$arg" |
1246 | 1256 |
prev= |
1247 | 1257 |
continue |
1248 | 1258 |
;; |
1259 |
+ objectlist) |
|
1260 |
+ if test -f "$arg"; then |
|
1261 |
+ save_arg=$arg |
|
1262 |
+ moreargs= |
|
1263 |
+ for fil in `cat $save_arg` |
|
1264 |
+ do |
|
1265 |
+# moreargs="$moreargs $fil" |
|
1266 |
+ arg=$fil |
|
1267 |
+ # A libtool-controlled object. |
|
1268 |
+ |
|
1269 |
+ # Check to see that this really is a libtool object. |
|
1270 |
+ if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then |
|
1271 |
+ pic_object= |
|
1272 |
+ non_pic_object= |
|
1273 |
+ |
|
1274 |
+ # Read the .lo file |
|
1275 |
+ # If there is no directory component, then add one. |
|
1276 |
+ case $arg in |
|
1277 |
+ */* | *\\*) . $arg ;; |
|
1278 |
+ *) . ./$arg ;; |
|
1279 |
+ esac |
|
1280 |
+ |
|
1281 |
+ if test -z "$pic_object" || \ |
|
1282 |
+ test -z "$non_pic_object" || |
|
1283 |
+ test "$pic_object" = none && \ |
|
1284 |
+ test "$non_pic_object" = none; then |
|
1285 |
+ $echo "$modename: cannot find name of object for \`$arg'" 1>&2 |
|
1286 |
+ exit $EXIT_FAILURE |
|
1287 |
+ fi |
|
1288 |
+ |
|
1289 |
+ # Extract subdirectory from the argument. |
|
1290 |
+ xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` |
|
1291 |
+ if test "X$xdir" = "X$arg"; then |
|
1292 |
+ xdir= |
|
1293 |
+ else |
|
1294 |
+ xdir="$xdir/" |
|
1295 |
+ fi |
|
1296 |
+ |
|
1297 |
+ if test "$pic_object" != none; then |
|
1298 |
+ # Prepend the subdirectory the object is found in. |
|
1299 |
+ pic_object="$xdir$pic_object" |
|
1300 |
+ |
|
1301 |
+ if test "$prev" = dlfiles; then |
|
1302 |
+ if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then |
|
1303 |
+ dlfiles="$dlfiles $pic_object" |
|
1304 |
+ prev= |
|
1305 |
+ continue |
|
1306 |
+ else |
|
1307 |
+ # If libtool objects are unsupported, then we need to preload. |
|
1308 |
+ prev=dlprefiles |
|
1309 |
+ fi |
|
1310 |
+ fi |
|
1311 |
+ |
|
1312 |
+ # CHECK ME: I think I busted this. -Ossama |
|
1313 |
+ if test "$prev" = dlprefiles; then |
|
1314 |
+ # Preload the old-style object. |
|
1315 |
+ dlprefiles="$dlprefiles $pic_object" |
|
1316 |
+ prev= |
|
1317 |
+ fi |
|
1318 |
+ |
|
1319 |
+ # A PIC object. |
|
1320 |
+ libobjs="$libobjs $pic_object" |
|
1321 |
+ arg="$pic_object" |
|
1322 |
+ fi |
|
1323 |
+ |
|
1324 |
+ # Non-PIC object. |
|
1325 |
+ if test "$non_pic_object" != none; then |
|
1326 |
+ # Prepend the subdirectory the object is found in. |
|
1327 |
+ non_pic_object="$xdir$non_pic_object" |
|
1328 |
+ |
|
1329 |
+ # A standard non-PIC object |
|
1330 |
+ non_pic_objects="$non_pic_objects $non_pic_object" |
|
1331 |
+ if test -z "$pic_object" || test "$pic_object" = none ; then |
|
1332 |
+ arg="$non_pic_object" |
|
1333 |
+ fi |
|
1334 |
+ else |
|
1335 |
+ # If the PIC object exists, use it instead. |
|
1336 |
+ # $xdir was prepended to $pic_object above. |
|
1337 |
+ non_pic_object="$pic_object" |
|
1338 |
+ non_pic_objects="$non_pic_objects $non_pic_object" |
|
1339 |
+ fi |
|
1340 |
+ else |
|
1341 |
+ # Only an error if not doing a dry-run. |
|
1342 |
+ if test -z "$run"; then |
|
1343 |
+ $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 |
|
1344 |
+ exit $EXIT_FAILURE |
|
1345 |
+ else |
|
1346 |
+ # Dry-run case. |
|
1347 |
+ |
|
1348 |
+ # Extract subdirectory from the argument. |
|
1349 |
+ xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` |
|
1350 |
+ if test "X$xdir" = "X$arg"; then |
|
1351 |
+ xdir= |
|
1352 |
+ else |
|
1353 |
+ xdir="$xdir/" |
|
1354 |
+ fi |
|
1355 |
+ |
|
1356 |
+ pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` |
|
1357 |
+ non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` |
|
1358 |
+ libobjs="$libobjs $pic_object" |
|
1359 |
+ non_pic_objects="$non_pic_objects $non_pic_object" |
|
1360 |
+ fi |
|
1361 |
+ fi |
|
1362 |
+ done |
|
1363 |
+ else |
|
1364 |
+ $echo "$modename: link input file \`$save_arg' does not exist" |
|
1365 |
+ exit $EXIT_FAILURE |
|
1366 |
+ fi |
|
1367 |
+ arg=$save_arg |
|
1368 |
+ prev= |
|
1369 |
+ continue |
|
1370 |
+ ;; |
|
1249 | 1371 |
rpath | xrpath) |
1250 | 1372 |
# We need an absolute path. |
1251 | 1373 |
case $arg in |
1252 | 1374 |
[\\/]* | [A-Za-z]:[\\/]*) ;; |
1253 | 1375 |
*) |
1254 | 1376 |
$echo "$modename: only absolute run-paths are allowed" 1>&2 |
1255 |
- exit 1 |
|
1377 |
+ exit $EXIT_FAILURE |
|
1256 | 1378 |
;; |
1257 | 1379 |
esac |
1258 | 1380 |
if test "$prev" = rpath; then |
... | ... |
@@ -1284,13 +1756,33 @@ compiler." |
1284 | 1284 |
finalize_command="$finalize_command $wl$qarg" |
1285 | 1285 |
continue |
1286 | 1286 |
;; |
1287 |
+ xcclinker) |
|
1288 |
+ linker_flags="$linker_flags $qarg" |
|
1289 |
+ compiler_flags="$compiler_flags $qarg" |
|
1290 |
+ prev= |
|
1291 |
+ compile_command="$compile_command $qarg" |
|
1292 |
+ finalize_command="$finalize_command $qarg" |
|
1293 |
+ continue |
|
1294 |
+ ;; |
|
1295 |
+ shrext) |
|
1296 |
+ shrext_cmds="$arg" |
|
1297 |
+ prev= |
|
1298 |
+ continue |
|
1299 |
+ ;; |
|
1300 |
+ darwin_framework|darwin_framework_skip) |
|
1301 |
+ test "$prev" = "darwin_framework" && compiler_flags="$compiler_flags $arg" |
|
1302 |
+ compile_command="$compile_command $arg" |
|
1303 |
+ finalize_command="$finalize_command $arg" |
|
1304 |
+ prev= |
|
1305 |
+ continue |
|
1306 |
+ ;; |
|
1287 | 1307 |
*) |
1288 | 1308 |
eval "$prev=\"\$arg\"" |
1289 | 1309 |
prev= |
1290 | 1310 |
continue |
1291 | 1311 |
;; |
1292 | 1312 |
esac |
1293 |
- fi # test -n $prev |
|
1313 |
+ fi # test -n "$prev" |
|
1294 | 1314 |
|
1295 | 1315 |
prevarg="$arg" |
1296 | 1316 |
|
... | ... |
@@ -1332,7 +1824,7 @@ compiler." |
1332 | 1332 |
-export-symbols | -export-symbols-regex) |
1333 | 1333 |
if test -n "$export_symbols" || test -n "$export_symbols_regex"; then |
1334 | 1334 |
$echo "$modename: more than one -exported-symbols argument is not allowed" |
1335 |
- exit 1 |
|
1335 |
+ exit $EXIT_FAILURE |
|
1336 | 1336 |
fi |
1337 | 1337 |
if test "X$arg" = "X-export-symbols"; then |
1338 | 1338 |
prev=expsyms |
... | ... |
@@ -1342,11 +1834,28 @@ compiler." |
1342 | 1342 |
continue |
1343 | 1343 |
;; |
1344 | 1344 |
|
1345 |
+ -framework|-arch|-isysroot) |
|
1346 |
+ case " $CC " in |
|
1347 |
+ *" ${arg} ${1} "* | *" ${arg} ${1} "*) |
|
1348 |
+ prev=darwin_framework_skip ;; |
|
1349 |
+ *) compiler_flags="$compiler_flags $arg" |
|
1350 |
+ prev=darwin_framework ;; |
|
1351 |
+ esac |
|
1352 |
+ compile_command="$compile_command $arg" |
|
1353 |
+ finalize_command="$finalize_command $arg" |
|
1354 |
+ continue |
|
1355 |
+ ;; |
|
1356 |
+ |
|
1357 |
+ -inst-prefix-dir) |
|
1358 |
+ prev=inst_prefix |
|
1359 |
+ continue |
|
1360 |
+ ;; |
|
1361 |
+ |
|
1345 | 1362 |
# The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* |
1346 | 1363 |
# so, if we see these flags be careful not to treat them like -L |
1347 | 1364 |
-L[A-Z][A-Z]*:*) |
1348 | 1365 |
case $with_gcc/$host in |
1349 |
- no/*-*-irix* | no/*-*-nonstopux*) |
|
1366 |
+ no/*-*-irix* | /*-*-irix*) |
|
1350 | 1367 |
compile_command="$compile_command $arg" |
1351 | 1368 |
finalize_command="$finalize_command $arg" |
1352 | 1369 |
;; |
... | ... |
@@ -1363,7 +1872,8 @@ compiler." |
1363 | 1363 |
absdir=`cd "$dir" && pwd` |
1364 | 1364 |
if test -z "$absdir"; then |
1365 | 1365 |
$echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 |
1366 |
- exit 1 |
|
1366 |
+ absdir="$dir" |
|
1367 |
+ notinst_path="$notinst_path $dir" |
|
1367 | 1368 |
fi |
1368 | 1369 |
dir="$absdir" |
1369 | 1370 |
;; |
... | ... |
@@ -1377,10 +1887,15 @@ compiler." |
1377 | 1377 |
esac |
1378 | 1378 |
case $host in |
1379 | 1379 |
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) |
1380 |
+ testbindir=`$echo "X$dir" | $Xsed -e 's*/lib$*/bin*'` |
|
1380 | 1381 |
case :$dllsearchpath: in |
1381 | 1382 |
*":$dir:"*) ;; |
1382 | 1383 |
*) dllsearchpath="$dllsearchpath:$dir";; |
1383 | 1384 |
esac |
1385 |
+ case :$dllsearchpath: in |
|
1386 |
+ *":$testbindir:"*) ;; |
|
1387 |
+ *) dllsearchpath="$dllsearchpath:$testbindir";; |
|
1388 |
+ esac |
|
1384 | 1389 |
;; |
1385 | 1390 |
esac |
1386 | 1391 |
continue |
... | ... |
@@ -1389,43 +1904,98 @@ compiler." |
1389 | 1389 |
-l*) |
1390 | 1390 |
if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then |
1391 | 1391 |
case $host in |
1392 |
- *-*-cygwin* | *-*-pw32* | *-*-beos*) |
|
1392 |
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos*) |
|
1393 | 1393 |
# These systems don't actually have a C or math library (as such) |
1394 | 1394 |
continue |
1395 | 1395 |
;; |
1396 |
- *-*-mingw* | *-*-os2*) |
|
1396 |
+ *-*-os2*) |
|
1397 | 1397 |
# These systems don't actually have a C library (as such) |
1398 | 1398 |
test "X$arg" = "X-lc" && continue |
1399 | 1399 |
;; |
1400 |
- *-*-openbsd* | *-*-freebsd*) |
|
1400 |
+ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) |
|
1401 | 1401 |
# Do not include libc due to us having libc/libc_r. |
1402 | 1402 |
test "X$arg" = "X-lc" && continue |
1403 | 1403 |
;; |
1404 |
+ *-*-rhapsody* | *-*-darwin1.[012]) |
|
1405 |
+ # Rhapsody C and math libraries are in the System framework |
|
1406 |
+ deplibs="$deplibs -framework System" |
|
1407 |
+ continue |
|
1408 |
+ ;; |
|
1409 |
+ *-*-sco3.2v5* | *-*-sco5v6*) |
|
1410 |
+ # Causes problems with __ctype |
|
1411 |
+ test "X$arg" = "X-lc" && continue |
|
1412 |
+ ;; |
|
1413 |
+ *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) |
|
1414 |
+ # Compiler inserts libc in the correct place for threads to work |
|
1415 |
+ test "X$arg" = "X-lc" && continue |
|
1416 |
+ ;; |
|
1404 | 1417 |
esac |
1405 |
- # This change is required for -lc_r under FreeBSD / Tomasz Kojm |
|
1406 |
- #elif test "X$arg" = "X-lc_r"; then |
|
1407 |
- # case $host in |
|
1408 |
- #*-*-openbsd* | *-*-freebsd*) |
|
1409 |
- # # Do not include libc_r directly, use -pthread flag. |
|
1410 |
- # continue |
|
1411 |
- # ;; |
|
1412 |
- # esac |
|
1418 |
+ elif test "X$arg" = "X-lc_r"; then |
|
1419 |
+ case $host in |
|
1420 |
+ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) |
|
1421 |
+ # Do not include libc_r directly, use -pthread flag. |
|
1422 |
+ continue |
|
1423 |
+ ;; |
|
1424 |
+ esac |
|
1413 | 1425 |
fi |
1414 | 1426 |
deplibs="$deplibs $arg" |
1415 | 1427 |
continue |
1416 | 1428 |
;; |
1417 | 1429 |
|
1418 |
- # We need this change for old -pthread *BSD style / Tomasz Kojm |
|
1419 |
- -pthread) |
|
1420 |
- deplibs="$deplibs -pthread" |
|
1421 |
- continue |
|
1422 |
- ;; |
|
1430 |
+ # Tru64 UNIX uses -model [arg] to determine the layout of C++ |
|
1431 |
+ # classes, name mangling, and exception handling. |
|
1432 |
+ -model) |
|
1433 |
+ compile_command="$compile_command $arg" |
|
1434 |
+ compiler_flags="$compiler_flags $arg" |
|
1435 |
+ finalize_command="$finalize_command $arg" |
|
1436 |
+ prev=xcompiler |
|
1437 |
+ continue |
|
1438 |
+ ;; |
|
1439 |
+ |
|
1440 |
+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe) |
|
1441 |
+ compiler_flags="$compiler_flags $arg" |
|
1442 |
+ compile_command="$compile_command $arg" |
|
1443 |
+ finalize_command="$finalize_command $arg" |
|
1444 |
+ continue |
|
1445 |
+ ;; |
|
1423 | 1446 |
|
1424 | 1447 |
-module) |
1425 | 1448 |
module=yes |
1426 | 1449 |
continue |
1427 | 1450 |
;; |
1428 | 1451 |
|
1452 |
+ # -64, -mips[0-9] enable 64-bit mode on the SGI compiler |
|
1453 |
+ # -r[0-9][0-9]* specifies the processor on the SGI compiler |
|
1454 |
+ # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler |
|
1455 |
+ # +DA*, +DD* enable 64-bit mode on the HP compiler |
|
1456 |
+ # -q* pass through compiler args for the IBM compiler |
|
1457 |
+ # -m* pass through architecture-specific compiler args for GCC |
|
1458 |
+ # -m*, -t[45]*, -txscale* pass through architecture-specific |
|
1459 |
+ # compiler args for GCC |
|
1460 |
+ # -pg pass through profiling flag for GCC |
|
1461 |
+ # @file GCC response files |
|
1462 |
+ -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*|-pg| \ |
|
1463 |
+ -t[45]*|-txscale*|@*) |
|
1464 |
+ |
|
1465 |
+ # Unknown arguments in both finalize_command and compile_command need |
|
1466 |
+ # to be aesthetically quoted because they are evaled later. |
|
1467 |
+ arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` |
|
1468 |
+ case $arg in |
|
1469 |
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") |
|
1470 |
+ arg="\"$arg\"" |
|
1471 |
+ ;; |
|
1472 |
+ esac |
|
1473 |
+ compile_command="$compile_command $arg" |
|
1474 |
+ finalize_command="$finalize_command $arg" |
|
1475 |
+ compiler_flags="$compiler_flags $arg" |
|
1476 |
+ continue |
|
1477 |
+ ;; |
|
1478 |
+ |
|
1479 |
+ -shrext) |
|
1480 |
+ prev=shrext |
|
1481 |
+ continue |
|
1482 |
+ ;; |
|
1483 |
+ |
|
1429 | 1484 |
-no-fast-install) |
1430 | 1485 |
fast_install=no |
1431 | 1486 |
continue |
... | ... |
@@ -1450,8 +2020,18 @@ compiler." |
1450 | 1450 |
continue |
1451 | 1451 |
;; |
1452 | 1452 |
|
1453 |
+ -objectlist) |
|
1454 |
+ prev=objectlist |
|
1455 |
+ continue |
|
1456 |
+ ;; |
|
1457 |
+ |
|
1453 | 1458 |
-o) prev=output ;; |
1454 | 1459 |
|
1460 |
+ -precious-files-regex) |
|
1461 |
+ prev=precious_regex |
|
1462 |
+ continue |
|
1463 |
+ ;; |
|
1464 |
+ |
|
1455 | 1465 |
-release) |
1456 | 1466 |
prev=release |
1457 | 1467 |
continue |
... | ... |
@@ -1474,7 +2054,7 @@ compiler." |
1474 | 1474 |
[\\/]* | [A-Za-z]:[\\/]*) ;; |
1475 | 1475 |
*) |
1476 | 1476 |
$echo "$modename: only absolute run-paths are allowed" 1>&2 |
1477 |
- exit 1 |
|
1477 |
+ exit $EXIT_FAILURE |
|
1478 | 1478 |
;; |
1479 | 1479 |
esac |
1480 | 1480 |
case "$xrpath " in |
... | ... |
@@ -1502,6 +2082,11 @@ compiler." |
1502 | 1502 |
prev=vinfo |
1503 | 1503 |
continue |
1504 | 1504 |
;; |
1505 |
+ -version-number) |
|
1506 |
+ prev=vinfo |
|
1507 |
+ vinfo_number=yes |
|
1508 |
+ continue |
|
1509 |
+ ;; |
|
1505 | 1510 |
|
1506 | 1511 |
-Wc,*) |
1507 | 1512 |
args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` |
... | ... |
@@ -1550,6 +2135,11 @@ compiler." |
1550 | 1550 |
continue |
1551 | 1551 |
;; |
1552 | 1552 |
|
1553 |
+ -XCClinker) |
|
1554 |
+ prev=xcclinker |
|
1555 |
+ continue |
|
1556 |
+ ;; |
|
1557 |
+ |
|
1553 | 1558 |
# Some other compiler flag. |
1554 | 1559 |
-* | +*) |
1555 | 1560 |
# Unknown arguments in both finalize_command and compile_command need |
... | ... |
@@ -1562,29 +2152,106 @@ compiler." |
1562 | 1562 |
esac |
1563 | 1563 |
;; |
1564 | 1564 |
|
1565 |
- *.lo | *.$objext) |
|
1566 |
- # A library or standard object. |
|
1567 |
- if test "$prev" = dlfiles; then |
|
1568 |
- # This file was specified with -dlopen. |
|
1569 |
- if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then |
|
1570 |
- dlfiles="$dlfiles $arg" |
|
1571 |
- prev= |
|
1572 |
- continue |
|
1573 |
- else |
|
1574 |
- # If libtool objects are unsupported, then we need to preload. |
|
1575 |
- prev=dlprefiles |
|
1576 |
- fi |
|
1577 |
- fi |
|
1565 |
+ *.$objext) |
|
1566 |
+ # A standard object. |
|
1567 |
+ objs="$objs $arg" |
|
1568 |
+ ;; |
|
1578 | 1569 |
|
1579 |
- if test "$prev" = dlprefiles; then |
|
1580 |
- # Preload the old-style object. |
|
1581 |
- dlprefiles="$dlprefiles "`$echo "X$arg" | $Xsed -e "$lo2o"` |
|
1582 |
- prev= |
|
1583 |
- else |
|
1570 |
+ *.lo) |
|
1571 |
+ # A libtool-controlled object. |
|
1572 |
+ |
|
1573 |
+ # Check to see that this really is a libtool object. |
|
1574 |
+ if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then |
|
1575 |
+ pic_object= |
|
1576 |
+ non_pic_object= |
|
1577 |
+ |
|
1578 |
+ # Read the .lo file |
|
1579 |
+ # If there is no directory component, then add one. |
|
1584 | 1580 |
case $arg in |
1585 |
- *.lo) libobjs="$libobjs $arg" ;; |
|
1586 |
- *) objs="$objs $arg" ;; |
|
1581 |
+ */* | *\\*) . $arg ;; |
|
1582 |
+ *) . ./$arg ;; |
|
1587 | 1583 |
esac |
1584 |
+ |
|
1585 |
+ if test -z "$pic_object" || \ |
|
1586 |
+ test -z "$non_pic_object" || |
|
1587 |
+ test "$pic_object" = none && \ |
|
1588 |
+ test "$non_pic_object" = none; then |
|
1589 |
+ $echo "$modename: cannot find name of object for \`$arg'" 1>&2 |
|
1590 |
+ exit $EXIT_FAILURE |
|
1591 |
+ fi |
|
1592 |
+ |
|
1593 |
+ # Extract subdirectory from the argument. |
|
1594 |
+ xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` |
|
1595 |
+ if test "X$xdir" = "X$arg"; then |
|
1596 |
+ xdir= |
|
1597 |
+ else |
|
1598 |
+ xdir="$xdir/" |
|
1599 |
+ fi |
|
1600 |
+ |
|
1601 |
+ if test "$pic_object" != none; then |
|
1602 |
+ # Prepend the subdirectory the object is found in. |
|
1603 |
+ pic_object="$xdir$pic_object" |
|
1604 |
+ |
|
1605 |
+ if test "$prev" = dlfiles; then |
|
1606 |
+ if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then |
|
1607 |
+ dlfiles="$dlfiles $pic_object" |
|
1608 |
+ prev= |
|
1609 |
+ continue |
|
1610 |
+ else |
|
1611 |
+ # If libtool objects are unsupported, then we need to preload. |
|
1612 |
+ prev=dlprefiles |
|
1613 |
+ fi |
|
1614 |
+ fi |
|
1615 |
+ |
|
1616 |
+ # CHECK ME: I think I busted this. -Ossama |
|
1617 |
+ if test "$prev" = dlprefiles; then |
|
1618 |
+ # Preload the old-style object. |
|
1619 |
+ dlprefiles="$dlprefiles $pic_object" |
|
1620 |
+ prev= |
|
1621 |
+ fi |
|
1622 |
+ |
|
1623 |
+ # A PIC object. |
|
1624 |
+ libobjs="$libobjs $pic_object" |
|
1625 |
+ arg="$pic_object" |
|
1626 |
+ fi |
|
1627 |
+ |
|
1628 |
+ # Non-PIC object. |
|
1629 |
+ if test "$non_pic_object" != none; then |
|
1630 |
+ # Prepend the subdirectory the object is found in. |
|
1631 |
+ non_pic_object="$xdir$non_pic_object" |
|
1632 |
+ |
|
1633 |
+ # A standard non-PIC object |
|
1634 |
+ non_pic_objects="$non_pic_objects $non_pic_object" |
|
1635 |
+ if test -z "$pic_object" || test "$pic_object" = none ; then |
|
1636 |
+ arg="$non_pic_object" |
|
1637 |
+ fi |
|
1638 |
+ else |
|
1639 |
+ # If the PIC object exists, use it instead. |
|
1640 |
+ # $xdir was prepended to $pic_object above. |
|
1641 |
+ non_pic_object="$pic_object" |
|
1642 |
+ non_pic_objects="$non_pic_objects $non_pic_object" |
|
1643 |
+ fi |
|
1644 |
+ else |
|
1645 |
+ # Only an error if not doing a dry-run. |
|
1646 |
+ if test -z "$run"; then |
|
1647 |
+ $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 |
|
1648 |
+ exit $EXIT_FAILURE |
|
1649 |
+ else |
|
1650 |
+ # Dry-run case. |
|
1651 |
+ |
|
1652 |
+ # Extract subdirectory from the argument. |
|
1653 |
+ xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` |
|
1654 |
+ if test "X$xdir" = "X$arg"; then |
|
1655 |
+ xdir= |
|
1656 |
+ else |
|
1657 |
+ xdir="$xdir/" |
|
1658 |
+ fi |
|
1659 |
+ |
|
1660 |
+ pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` |
|
1661 |
+ non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` |
|
1662 |
+ libobjs="$libobjs $pic_object" |
|
1663 |
+ non_pic_objects="$non_pic_objects $non_pic_object" |
|
1664 |
+ fi |
|
1588 | 1665 |
fi |
1589 | 1666 |
;; |
1590 | 1667 |
|
... | ... |
@@ -1635,7 +2302,7 @@ compiler." |
1635 | 1635 |
if test -n "$prev"; then |
1636 | 1636 |
$echo "$modename: the \`$prevarg' option requires an argument" 1>&2 |
1637 | 1637 |
$echo "$help" 1>&2 |
1638 |
- exit 1 |
|
1638 |
+ exit $EXIT_FAILURE |
|
1639 | 1639 |
fi |
1640 | 1640 |
|
1641 | 1641 |
if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then |
... | ... |
@@ -1644,6 +2311,7 @@ compiler." |
1644 | 1644 |
finalize_command="$finalize_command $arg" |
1645 | 1645 |
fi |
1646 | 1646 |
|
1647 |
+ oldlibs= |
|
1647 | 1648 |
# calculate the name of the file, without its directory |
1648 | 1649 |
outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` |
1649 | 1650 |
libobjs_save="$libobjs" |
... | ... |
@@ -1664,12 +2332,12 @@ compiler." |
1664 | 1664 |
output_objdir="$output_objdir/$objdir" |
1665 | 1665 |
fi |
1666 | 1666 |
# Create the object directory. |
1667 |
- if test ! -d $output_objdir; then |
|
1667 |
+ if test ! -d "$output_objdir"; then |
|
1668 | 1668 |
$show "$mkdir $output_objdir" |
1669 | 1669 |
$run $mkdir $output_objdir |
1670 |
- status=$? |
|
1671 |
- if test $status -ne 0 && test ! -d $output_objdir; then |
|
1672 |
- exit $status |
|
1670 |
+ exit_status=$? |
|
1671 |
+ if test "$exit_status" -ne 0 && test ! -d "$output_objdir"; then |
|
1672 |
+ exit $exit_status |
|
1673 | 1673 |
fi |
1674 | 1674 |
fi |
1675 | 1675 |
|
... | ... |
@@ -1678,7 +2346,7 @@ compiler." |
1678 | 1678 |
"") |
1679 | 1679 |
$echo "$modename: you must specify an output file" 1>&2 |
1680 | 1680 |
$echo "$help" 1>&2 |
1681 |
- exit 1 |
|
1681 |
+ exit $EXIT_FAILURE |
|
1682 | 1682 |
;; |
1683 | 1683 |
*.$libext) linkmode=oldlib ;; |
1684 | 1684 |
*.lo | *.$objext) linkmode=obj ;; |
... | ... |
@@ -1686,7 +2354,17 @@ compiler." |
1686 | 1686 |
*) linkmode=prog ;; # Anything else should be a program. |
1687 | 1687 |
esac |
1688 | 1688 |
|
1689 |
+ case $host in |
|
1690 |
+ *cygwin* | *mingw* | *pw32*) |
|
1691 |
+ # don't eliminate duplications in $postdeps and $predeps |
|
1692 |
+ duplicate_compiler_generated_deps=yes |
|
1693 |
+ ;; |
|
1694 |
+ *) |
|
1695 |
+ duplicate_compiler_generated_deps=$duplicate_deps |
|
1696 |
+ ;; |
|
1697 |
+ esac |
|
1689 | 1698 |
specialdeplibs= |
1699 |
+ |
|
1690 | 1700 |
libs= |
1691 | 1701 |
# Find all interdependent deplibs by searching for libraries |
1692 | 1702 |
# that are linked more than once (e.g. -la -lb -la) |
... | ... |
@@ -1698,12 +2376,30 @@ compiler." |
1698 | 1698 |
fi |
1699 | 1699 |
libs="$libs $deplib" |
1700 | 1700 |
done |
1701 |
+ |
|
1702 |
+ if test "$linkmode" = lib; then |
|
1703 |
+ libs="$predeps $libs $compiler_lib_search_path $postdeps" |
|
1704 |
+ |
|
1705 |
+ # Compute libraries that are listed more than once in $predeps |
|
1706 |
+ # $postdeps and mark them as special (i.e., whose duplicates are |
|
1707 |
+ # not to be eliminated). |
|
1708 |
+ pre_post_deps= |
|
1709 |
+ if test "X$duplicate_compiler_generated_deps" = "Xyes" ; then |
|
1710 |
+ for pre_post_dep in $predeps $postdeps; do |
|
1711 |
+ case "$pre_post_deps " in |
|
1712 |
+ *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;; |
|
1713 |
+ esac |
|
1714 |
+ pre_post_deps="$pre_post_deps $pre_post_dep" |
|
1715 |
+ done |
|
1716 |
+ fi |
|
1717 |
+ pre_post_deps= |
|
1718 |
+ fi |
|
1719 |
+ |
|
1701 | 1720 |
deplibs= |
1702 | 1721 |
newdependency_libs= |
1703 | 1722 |
newlib_search_path= |
1704 | 1723 |
need_relink=no # whether we're linking any uninstalled libtool libraries |
1705 | 1724 |
notinst_deplibs= # not-installed libtool libraries |
1706 |
- notinst_path= # paths that contain not-installed libtool libraries |
|
1707 | 1725 |
case $linkmode in |
1708 | 1726 |
lib) |
1709 | 1727 |
passes="conv link" |
... | ... |
@@ -1712,7 +2408,7 @@ compiler." |
1712 | 1712 |
*.la) ;; |
1713 | 1713 |
*) |
1714 | 1714 |
$echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 |
1715 |
- exit 1 |
|
1715 |
+ exit $EXIT_FAILURE |
|
1716 | 1716 |
;; |
1717 | 1717 |
esac |
1718 | 1718 |
done |
... | ... |
@@ -1729,44 +2425,58 @@ compiler." |
1729 | 1729 |
;; |
1730 | 1730 |
esac |
1731 | 1731 |
for pass in $passes; do |
1732 |
- if test $linkmode = prog; then |
|
1733 |
- # Determine which files to process |
|
1732 |
+ if test "$linkmode,$pass" = "lib,link" || |
|
1733 |
+ test "$linkmode,$pass" = "prog,scan"; then |
|
1734 |
+ libs="$deplibs" |
|
1735 |
+ deplibs= |
|
1736 |
+ fi |
|
1737 |
+ if test "$linkmode" = prog; then |
|
1734 | 1738 |
case $pass in |
1735 |
- dlopen) |
|
1736 |
- libs="$dlfiles" |
|
1737 |
- save_deplibs="$deplibs" # Collect dlpreopened libraries |
|
1738 |
- deplibs= |
|
1739 |
- ;; |
|
1739 |
+ dlopen) libs="$dlfiles" ;; |
|
1740 | 1740 |
dlpreopen) libs="$dlprefiles" ;; |
1741 |
- link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; |
|
1741 |
+ link) |
|
1742 |
+ libs="$deplibs %DEPLIBS%" |
|
1743 |
+ test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs" |
|
1744 |
+ ;; |
|
1742 | 1745 |
esac |
1743 | 1746 |
fi |
1747 |
+ if test "$pass" = dlopen; then |
|
1748 |
+ # Collect dlpreopened libraries |
|
1749 |
+ save_deplibs="$deplibs" |
|
1750 |
+ deplibs= |
|
1751 |
+ fi |
|
1744 | 1752 |
for deplib in $libs; do |
1745 | 1753 |
lib= |
1746 | 1754 |
found=no |
1747 | 1755 |
case $deplib in |
1748 |
- # skip -pthread checking / Tomasz Kojm |
|
1749 |
- -pthread) |
|
1750 |
- deplibs="$deplib $deplibs" |
|
1751 |
- continue |
|
1752 |
- ;; |
|
1753 |
- -l*) |
|
1754 |
- if test $linkmode = oldlib && test $linkmode = obj; then |
|
1755 |
- $echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2 |
|
1756 |
- continue |
|
1756 |
+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe) |
|
1757 |
+ if test "$linkmode,$pass" = "prog,link"; then |
|
1758 |
+ compile_deplibs="$deplib $compile_deplibs" |
|
1759 |
+ finalize_deplibs="$deplib $finalize_deplibs" |
|
1760 |
+ else |
|
1761 |
+ compiler_flags="$compiler_flags $deplib" |
|
1757 | 1762 |
fi |
1758 |
- if test $pass = conv; then |
|
1759 |
- deplibs="$deplib $deplibs" |
|
1763 |
+ continue |
|
1764 |
+ ;; |
|
1765 |
+ -l*) |
|
1766 |
+ if test "$linkmode" != lib && test "$linkmode" != prog; then |
|
1767 |
+ $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2 |
|
1760 | 1768 |
continue |
1761 | 1769 |
fi |
1762 | 1770 |
name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` |
1763 | 1771 |
for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do |
1764 |
- # Search the libtool library |
|
1765 |
- lib="$searchdir/lib${name}.la" |
|
1766 |
- if test -f "$lib"; then |
|
1767 |
- found=yes |
|
1768 |
- break |
|
1769 |
- fi |
|
1772 |
+ for search_ext in .la $std_shrext .so .a; do |
|
1773 |
+ # Search the libtool library |
|
1774 |
+ lib="$searchdir/lib${name}${search_ext}" |
|
1775 |
+ if test -f "$lib"; then |
|
1776 |
+ if test "$search_ext" = ".la"; then |
|
1777 |
+ found=yes |
|
1778 |
+ else |
|
1779 |
+ found=no |
|
1780 |
+ fi |
|
1781 |
+ break 2 |
|
1782 |
+ fi |
|
1783 |
+ done |
|
1770 | 1784 |
done |
1771 | 1785 |
if test "$found" != yes; then |
1772 | 1786 |
# deplib doesn't seem to be a libtool library |
... | ... |
@@ -1775,40 +2485,76 @@ compiler." |
1775 | 1775 |
finalize_deplibs="$deplib $finalize_deplibs" |
1776 | 1776 |
else |
1777 | 1777 |
deplibs="$deplib $deplibs" |
1778 |
- test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs" |
|
1778 |
+ test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" |
|
1779 | 1779 |
fi |
1780 | 1780 |
continue |
1781 |
+ else # deplib is a libtool library |
|
1782 |
+ # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, |
|
1783 |
+ # We need to do some special things here, and not later. |
|
1784 |
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then |
|
1785 |
+ case " $predeps $postdeps " in |
|
1786 |
+ *" $deplib "*) |
|
1787 |
+ if (${SED} -e '2q' $lib | |
|
1788 |
+ grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then |
|
1789 |
+ library_names= |
|
1790 |
+ old_library= |
|
1791 |
+ case $lib in |
|
1792 |
+ */* | *\\*) . $lib ;; |
|
1793 |
+ *) . ./$lib ;; |
|
1794 |
+ esac |
|
1795 |
+ for l in $old_library $library_names; do |
|
1796 |
+ ll="$l" |
|
1797 |
+ done |
|
1798 |
+ if test "X$ll" = "X$old_library" ; then # only static version available |
|
1799 |
+ found=no |
|
1800 |
+ ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` |
|
1801 |
+ test "X$ladir" = "X$lib" && ladir="." |
|
1802 |
+ lib=$ladir/$old_library |
|
1803 |
+ if test "$linkmode,$pass" = "prog,link"; then |
|
1804 |
+ compile_deplibs="$deplib $compile_deplibs" |
|
1805 |
+ finalize_deplibs="$deplib $finalize_deplibs" |
|
1806 |
+ else |
|
1807 |
+ deplibs="$deplib $deplibs" |
|
1808 |
+ test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" |
|
1809 |
+ fi |
|
1810 |
+ continue |
|
1811 |
+ fi |
|
1812 |
+ fi |
|
1813 |
+ ;; |
|
1814 |
+ *) ;; |
|
1815 |
+ esac |
|
1816 |
+ fi |
|
1781 | 1817 |
fi |
1782 | 1818 |
;; # -l |
1783 | 1819 |
-L*) |
1784 | 1820 |
case $linkmode in |
1785 | 1821 |
lib) |
1786 | 1822 |
deplibs="$deplib $deplibs" |
1787 |
- test $pass = conv && continue |
|
1823 |
+ test "$pass" = conv && continue |
|
1788 | 1824 |
newdependency_libs="$deplib $newdependency_libs" |
1789 | 1825 |
newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` |
1790 | 1826 |
;; |
1791 | 1827 |
prog) |
1792 |
- if test $pass = conv; then |
|
1828 |
+ if test "$pass" = conv; then |
|
1793 | 1829 |
deplibs="$deplib $deplibs" |
1794 | 1830 |
continue |
1795 | 1831 |
fi |
1796 |
- if test $pass = scan; then |
|
1832 |
+ if test "$pass" = scan; then |
|
1797 | 1833 |
deplibs="$deplib $deplibs" |
1798 |
- newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` |
|
1799 | 1834 |
else |
1800 | 1835 |
compile_deplibs="$deplib $compile_deplibs" |
1801 | 1836 |
finalize_deplibs="$deplib $finalize_deplibs" |
1802 | 1837 |
fi |
1838 |
+ newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` |
|
1803 | 1839 |
;; |
1804 | 1840 |
*) |
1805 |
- $echo "$modename: warning: \`-L' is ignored for archives/objects: $deplib" 1>&2 |
|
1841 |
+ $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2 |
|
1806 | 1842 |
;; |
1807 | 1843 |
esac # linkmode |
1808 | 1844 |
continue |
1809 | 1845 |
;; # -L |
1810 | 1846 |
-R*) |
1811 |
- if test $pass = link; then |
|
1847 |
+ if test "$pass" = link; then |
|
1812 | 1848 |
dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` |
1813 | 1849 |
# Make sure the xrpath contains only unique directories. |
1814 | 1850 |
case "$xrpath " in |
... | ... |
@@ -1821,30 +2567,45 @@ compiler." |
1821 | 1821 |
;; |
1822 | 1822 |
*.la) lib="$deplib" ;; |
1823 | 1823 |
*.$libext) |
1824 |
- if test $pass = conv; then |
|
1824 |
+ if test "$pass" = conv; then |
|
1825 | 1825 |
deplibs="$deplib $deplibs" |
1826 | 1826 |
continue |
1827 | 1827 |
fi |
1828 | 1828 |
case $linkmode in |
1829 | 1829 |
lib) |
1830 |
- if test "$deplibs_check_method" != pass_all; then |
|
1831 |
- echo |
|
1832 |
- echo "*** Warning: Trying to link with static lib archive $deplib." |
|
1833 |
- echo "*** I have the capability to make that library automatically link in when" |
|
1834 |
- echo "*** you link to this library. But I can only do this if you have a" |
|
1835 |
- echo "*** shared version of the library, which you do not appear to have" |
|
1836 |
- echo "*** because the file extensions .$libext of this argument makes me believe" |
|
1837 |
- echo "*** that it is just a static archive that I should not used here." |
|
1830 |
+ valid_a_lib=no |
|
1831 |
+ case $deplibs_check_method in |
|
1832 |
+ match_pattern*) |
|
1833 |
+ set dummy $deplibs_check_method |
|
1834 |
+ match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` |
|
1835 |
+ if eval $echo \"$deplib\" 2>/dev/null \ |
|
1836 |
+ | $SED 10q \ |
|
1837 |
+ | $EGREP "$match_pattern_regex" > /dev/null; then |
|
1838 |
+ valid_a_lib=yes |
|
1839 |
+ fi |
|
1840 |
+ ;; |
|
1841 |
+ pass_all) |
|
1842 |
+ valid_a_lib=yes |
|
1843 |
+ ;; |
|
1844 |
+ esac |
|
1845 |
+ if test "$valid_a_lib" != yes; then |
|
1846 |
+ $echo |
|
1847 |
+ $echo "*** Warning: Trying to link with static lib archive $deplib." |
|
1848 |
+ $echo "*** I have the capability to make that library automatically link in when" |
|
1849 |
+ $echo "*** you link to this library. But I can only do this if you have a" |
|
1850 |
+ $echo "*** shared version of the library, which you do not appear to have" |
|
1851 |
+ $echo "*** because the file extensions .$libext of this argument makes me believe" |
|
1852 |
+ $echo "*** that it is just a static archive that I should not used here." |
|
1838 | 1853 |
else |
1839 |
- echo |
|
1840 |
- echo "*** Warning: Linking the shared library $output against the" |
|
1841 |
- echo "*** static library $deplib is not portable!" |
|
1854 |
+ $echo |
|
1855 |
+ $echo "*** Warning: Linking the shared library $output against the" |
|
1856 |
+ $echo "*** static library $deplib is not portable!" |
|
1842 | 1857 |
deplibs="$deplib $deplibs" |
1843 | 1858 |
fi |
1844 | 1859 |
continue |
1845 | 1860 |
;; |
1846 | 1861 |
prog) |
1847 |
- if test $pass != link; then |
|
1862 |
+ if test "$pass" != link; then |
|
1848 | 1863 |
deplibs="$deplib $deplibs" |
1849 | 1864 |
else |
1850 | 1865 |
compile_deplibs="$deplib $compile_deplibs" |
... | ... |
@@ -1855,14 +2616,18 @@ compiler." |
1855 | 1855 |
esac # linkmode |
1856 | 1856 |
;; # *.$libext |
1857 | 1857 |
*.lo | *.$objext) |
1858 |
- if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then |
|
1859 |
- # If there is no dlopen support or we're linking statically, |
|
1860 |
- # we need to preload. |
|
1861 |
- newdlprefiles="$newdlprefiles $deplib" |
|
1862 |
- compile_deplibs="$deplib $compile_deplibs" |
|
1863 |
- finalize_deplibs="$deplib $finalize_deplibs" |
|
1864 |
- else |
|
1865 |
- newdlfiles="$newdlfiles $deplib" |
|
1858 |
+ if test "$pass" = conv; then |
|
1859 |
+ deplibs="$deplib $deplibs" |
|
1860 |
+ elif test "$linkmode" = prog; then |
|
1861 |
+ if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then |
|
1862 |
+ # If there is no dlopen support or we're linking statically, |
|
1863 |
+ # we need to preload. |
|
1864 |
+ newdlprefiles="$newdlprefiles $deplib" |
|
1865 |
+ compile_deplibs="$deplib $compile_deplibs" |
|
1866 |
+ finalize_deplibs="$deplib $finalize_deplibs" |
|
1867 |
+ else |
|
1868 |
+ newdlfiles="$newdlfiles $deplib" |
|
1869 |
+ fi |
|
1866 | 1870 |
fi |
1867 | 1871 |
continue |
1868 | 1872 |
;; |
... | ... |
@@ -1871,17 +2636,17 @@ compiler." |
1871 | 1871 |
continue |
1872 | 1872 |
;; |
1873 | 1873 |
esac # case $deplib |
1874 |
- if test $found = yes || test -f "$lib"; then : |
|
1874 |
+ if test "$found" = yes || test -f "$lib"; then : |
|
1875 | 1875 |
else |
1876 |
- $echo "$modename: cannot find the library \`$lib'" 1>&2 |
|
1877 |
- exit 1 |
|
1876 |
+ $echo "$modename: cannot find the library \`$lib' or unhandled argument \`$deplib'" 1>&2 |
|
1877 |
+ exit $EXIT_FAILURE |
|
1878 | 1878 |
fi |
1879 | 1879 |
|
1880 | 1880 |
# Check to see that this really is a libtool archive. |
1881 |
- if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : |
|
1881 |
+ if (${SED} -e '2q' $lib | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : |
|
1882 | 1882 |
else |
1883 | 1883 |
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 |
1884 |
- exit 1 |
|
1884 |
+ exit $EXIT_FAILURE |
|
1885 | 1885 |
fi |
1886 | 1886 |
|
1887 | 1887 |
ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` |
... | ... |
@@ -1894,8 +2659,11 @@ compiler." |
1894 | 1894 |
library_names= |
1895 | 1895 |
old_library= |
1896 | 1896 |
# If the library was installed with an old release of libtool, |
1897 |
- # it will not redefine variable installed. |
|
1897 |
+ # it will not redefine variables installed, or shouldnotlink |
|
1898 | 1898 |
installed=yes |
1899 |
+ shouldnotlink=no |
|
1900 |
+ avoidtemprpath= |
|
1901 |
+ |
|
1899 | 1902 |
|
1900 | 1903 |
# Read the .la file |
1901 | 1904 |
case $lib in |
... | ... |
@@ -1905,19 +2673,18 @@ compiler." |
1905 | 1905 |
|
1906 | 1906 |
if test "$linkmode,$pass" = "lib,link" || |
1907 | 1907 |
test "$linkmode,$pass" = "prog,scan" || |
1908 |
- { test $linkmode = oldlib && test $linkmode = obj; }; then |
|
1909 |
- # Add dl[pre]opened files of deplib |
|
1908 |
+ { test "$linkmode" != prog && test "$linkmode" != lib; }; then |
|
1910 | 1909 |
test -n "$dlopen" && dlfiles="$dlfiles $dlopen" |
1911 | 1910 |
test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" |
1912 | 1911 |
fi |
1913 | 1912 |
|
1914 |
- if test $pass = conv; then |
|
1913 |
+ if test "$pass" = conv; then |
|
1915 | 1914 |
# Only check for convenience libraries |
1916 | 1915 |
deplibs="$lib $deplibs" |
1917 | 1916 |
if test -z "$libdir"; then |
1918 | 1917 |
if test -z "$old_library"; then |
1919 | 1918 |
$echo "$modename: cannot find name of link library for \`$lib'" 1>&2 |
1920 |
- exit 1 |
|
1919 |
+ exit $EXIT_FAILURE |
|
1921 | 1920 |
fi |
1922 | 1921 |
# It is a libtool convenience library, so add in its objects. |
1923 | 1922 |
convenience="$convenience $ladir/$objdir/$old_library" |
... | ... |
@@ -1932,13 +2699,14 @@ compiler." |
1932 | 1932 |
fi |
1933 | 1933 |
tmp_libs="$tmp_libs $deplib" |
1934 | 1934 |
done |
1935 |
- elif test $linkmode != prog && test $linkmode != lib; then |
|
1935 |
+ elif test "$linkmode" != prog && test "$linkmode" != lib; then |
|
1936 | 1936 |
$echo "$modename: \`$lib' is not a convenience library" 1>&2 |
1937 |
- exit 1 |
|
1937 |
+ exit $EXIT_FAILURE |
|
1938 | 1938 |
fi |
1939 | 1939 |
continue |
1940 | 1940 |
fi # $pass = conv |
1941 | 1941 |
|
1942 |
+ |
|
1942 | 1943 |
# Get the name of the library we link against. |
1943 | 1944 |
linklib= |
1944 | 1945 |
for l in $old_library $library_names; do |
... | ... |
@@ -1946,19 +2714,23 @@ compiler." |
1946 | 1946 |
done |
1947 | 1947 |
if test -z "$linklib"; then |
1948 | 1948 |
$echo "$modename: cannot find name of link library for \`$lib'" 1>&2 |
1949 |
- exit 1 |
|
1949 |
+ exit $EXIT_FAILURE |
|
1950 | 1950 |
fi |
1951 | 1951 |
|
1952 | 1952 |
# This library was specified with -dlopen. |
1953 |
- if test $pass = dlopen; then |
|
1953 |
+ if test "$pass" = dlopen; then |
|
1954 | 1954 |
if test -z "$libdir"; then |
1955 | 1955 |
$echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2 |
1956 |
- exit 1 |
|
1956 |
+ exit $EXIT_FAILURE |
|
1957 | 1957 |
fi |
1958 |
- if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then |
|
1958 |
+ if test -z "$dlname" || |
|
1959 |
+ test "$dlopen_support" != yes || |
|
1960 |
+ test "$build_libtool_libs" = no; then |
|
1959 | 1961 |
# If there is no dlname, no dlopen support or we're linking |
1960 |
- # statically, we need to preload. |
|
1961 |
- dlprefiles="$dlprefiles $lib" |
|
1962 |
+ # statically, we need to preload. We also need to preload any |
|
1963 |
+ # dependent libraries so libltdl's deplib preloader doesn't |
|
1964 |
+ # bomb out in the load deplibs phase. |
|
1965 |
+ dlprefiles="$dlprefiles $lib $dependency_libs" |
|
1962 | 1966 |
else |
1963 | 1967 |
newdlfiles="$newdlfiles $lib" |
1964 | 1968 |
fi |
... | ... |
@@ -1990,19 +2762,27 @@ compiler." |
1990 | 1990 |
dir="$libdir" |
1991 | 1991 |
absdir="$libdir" |
1992 | 1992 |
fi |
1993 |
+ test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes |
|
1993 | 1994 |
else |
1994 |
- dir="$ladir/$objdir" |
|
1995 |
- absdir="$abs_ladir/$objdir" |
|
1996 |
- # Remove this search path later |
|
1997 |
- notinst_path="$notinst_path $abs_ladir" |
|
1995 |
+ if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then |
|
1996 |
+ dir="$ladir" |
|
1997 |
+ absdir="$abs_ladir" |
|
1998 |
+ # Remove this search path later |
|
1999 |
+ notinst_path="$notinst_path $abs_ladir" |
|
2000 |
+ else |
|
2001 |
+ dir="$ladir/$objdir" |
|
2002 |
+ absdir="$abs_ladir/$objdir" |
|
2003 |
+ # Remove this search path later |
|
2004 |
+ notinst_path="$notinst_path $abs_ladir" |
|
2005 |
+ fi |
|
1998 | 2006 |
fi # $installed = yes |
1999 | 2007 |
name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` |
2000 | 2008 |
|
2001 | 2009 |
# This library was specified with -dlpreopen. |
2002 |
- if test $pass = dlpreopen; then |
|
2010 |
+ if test "$pass" = dlpreopen; then |
|
2003 | 2011 |
if test -z "$libdir"; then |
2004 | 2012 |
$echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 |
2005 |
- exit 1 |
|
2013 |
+ exit $EXIT_FAILURE |
|
2006 | 2014 |
fi |
2007 | 2015 |
# Prefer using a static library (so that no silly _DYNAMIC symbols |
2008 | 2016 |
# are required to link). |
... | ... |
@@ -2018,18 +2798,19 @@ compiler." |
2018 | 2018 |
|
2019 | 2019 |
if test -z "$libdir"; then |
2020 | 2020 |
# Link the convenience library |
2021 |
- if test $linkmode = lib; then |
|
2021 |
+ if test "$linkmode" = lib; then |
|
2022 | 2022 |
deplibs="$dir/$old_library $deplibs" |
2023 | 2023 |
elif test "$linkmode,$pass" = "prog,link"; then |
2024 | 2024 |
compile_deplibs="$dir/$old_library $compile_deplibs" |
2025 | 2025 |
finalize_deplibs="$dir/$old_library $finalize_deplibs" |
2026 | 2026 |
else |
2027 |
- deplibs="$lib $deplibs" |
|
2027 |
+ deplibs="$lib $deplibs" # used for prog,scan pass |
|
2028 | 2028 |
fi |
2029 | 2029 |
continue |
2030 | 2030 |
fi |
2031 | 2031 |
|
2032 |
- if test $linkmode = prog && test $pass != link; then |
|
2032 |
+ |
|
2033 |
+ if test "$linkmode" = prog && test "$pass" != link; then |
|
2033 | 2034 |
newlib_search_path="$newlib_search_path $ladir" |
2034 | 2035 |
deplibs="$lib $deplibs" |
2035 | 2036 |
|
... | ... |
@@ -2045,7 +2826,7 @@ compiler." |
2045 | 2045 |
-L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test |
2046 | 2046 |
esac |
2047 | 2047 |
# Need to link against all dependency_libs? |
2048 |
- if test $linkalldeplibs = yes; then |
|
2048 |
+ if test "$linkalldeplibs" = yes; then |
|
2049 | 2049 |
deplibs="$deplib $deplibs" |
2050 | 2050 |
else |
2051 | 2051 |
# Need to hardcode shared library paths |
... | ... |
@@ -2062,13 +2843,19 @@ compiler." |
2062 | 2062 |
continue |
2063 | 2063 |
fi # $linkmode = prog... |
2064 | 2064 |
|
2065 |
- link_static=no # Whether the deplib will be linked statically |
|
2066 |
- if test -n "$library_names" && |
|
2067 |
- { test "$prefer_static_libs" = no || test -z "$old_library"; }; then |
|
2068 |
- # Link against this shared library |
|
2065 |
+ if test "$linkmode,$pass" = "prog,link"; then |
|
2066 |
+ if test -n "$library_names" && |
|
2067 |
+ { test "$prefer_static_libs" = no || test -z "$old_library"; }; then |
|
2068 |
+ # We need to hardcode the library path |
|
2069 |
+ if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then |
|
2070 |
+ # Make sure the rpath contains only unique directories. |
|
2071 |
+ case "$temp_rpath " in |
|
2072 |
+ *" $dir "*) ;; |
|
2073 |
+ *" $absdir "*) ;; |
|
2074 |
+ *) temp_rpath="$temp_rpath $absdir" ;; |
|
2075 |
+ esac |
|
2076 |
+ fi |
|
2069 | 2077 |
|
2070 |
- if test "$linkmode,$pass" = "prog,link" || |
|
2071 |
- { test $linkmode = lib && test $hardcode_into_libs = yes; }; then |
|
2072 | 2078 |
# Hardcode the library path. |
2073 | 2079 |
# Skip directories that are in the system default run-time |
2074 | 2080 |
# search path. |
... | ... |
@@ -2090,17 +2877,6 @@ compiler." |
2090 | 2090 |
esac |
2091 | 2091 |
;; |
2092 | 2092 |
esac |
2093 |
- if test $linkmode = prog; then |
|
2094 |
- # We need to hardcode the library path |
|
2095 |
- if test -n "$shlibpath_var"; then |
|
2096 |
- # Make sure the rpath contains only unique directories. |
|
2097 |
- case "$temp_rpath " in |
|
2098 |
- *" $dir "*) ;; |
|
2099 |
- *" $absdir "*) ;; |
|
2100 |
- *) temp_rpath="$temp_rpath $dir" ;; |
|
2101 |
- esac |
|
2102 |
- fi |
|
2103 |
- fi |
|
2104 | 2093 |
fi # $linkmode,$pass = prog,link... |
2105 | 2094 |
|
2106 | 2095 |
if test "$alldeplibs" = yes && |
... | ... |
@@ -2110,11 +2886,56 @@ compiler." |
2110 | 2110 |
# We only need to search for static libraries |
2111 | 2111 |
continue |
2112 | 2112 |
fi |
2113 |
+ fi |
|
2113 | 2114 |
|
2115 |
+ link_static=no # Whether the deplib will be linked statically |
|
2116 |
+ use_static_libs=$prefer_static_libs |
|
2117 |
+ if test "$use_static_libs" = built && test "$installed" = yes ; then |
|
2118 |
+ use_static_libs=no |
|
2119 |
+ fi |
|
2120 |
+ if test -n "$library_names" && |
|
2121 |
+ { test "$use_static_libs" = no || test -z "$old_library"; }; then |
|
2114 | 2122 |
if test "$installed" = no; then |
2115 | 2123 |
notinst_deplibs="$notinst_deplibs $lib" |
2116 | 2124 |
need_relink=yes |
2117 | 2125 |
fi |
2126 |
+ # This is a shared library |
|
2127 |
+ |
|
2128 |
+ # Warn about portability, can't link against -module's on |
|
2129 |
+ # some systems (darwin) |
|
2130 |
+ if test "$shouldnotlink" = yes && test "$pass" = link ; then |
|
2131 |
+ $echo |
|
2132 |
+ if test "$linkmode" = prog; then |
|
2133 |
+ $echo "*** Warning: Linking the executable $output against the loadable module" |
|
2134 |
+ else |
|
2135 |
+ $echo "*** Warning: Linking the shared library $output against the loadable module" |
|
2136 |
+ fi |
|
2137 |
+ $echo "*** $linklib is not portable!" |
|
2138 |
+ fi |
|
2139 |
+ if test "$linkmode" = lib && |
|
2140 |
+ test "$hardcode_into_libs" = yes; then |
|
2141 |
+ # Hardcode the library path. |
|
2142 |
+ # Skip directories that are in the system default run-time |
|
2143 |
+ # search path. |
|
2144 |
+ case " $sys_lib_dlsearch_path " in |
|
2145 |
+ *" $absdir "*) ;; |
|
2146 |
+ *) |
|
2147 |
+ case "$compile_rpath " in |
|
2148 |
+ *" $absdir "*) ;; |
|
2149 |
+ *) compile_rpath="$compile_rpath $absdir" |
|
2150 |
+ esac |
|
2151 |
+ ;; |
|
2152 |
+ esac |
|
2153 |
+ case " $sys_lib_dlsearch_path " in |
|
2154 |
+ *" $libdir "*) ;; |
|
2155 |
+ *) |
|
2156 |
+ case "$finalize_rpath " in |
|
2157 |
+ *" $libdir "*) ;; |
|
2158 |
+ *) finalize_rpath="$finalize_rpath $libdir" |
|
2159 |
+ esac |
|
2160 |
+ ;; |
|
2161 |
+ esac |
|
2162 |
+ fi |
|
2118 | 2163 |
|
2119 | 2164 |
if test -n "$old_archive_from_expsyms_cmds"; then |
2120 | 2165 |
# figure out the soname |
... | ... |
@@ -2128,7 +2949,7 @@ compiler." |
2128 | 2128 |
elif test -n "$soname_spec"; then |
2129 | 2129 |
# bleh windows |
2130 | 2130 |
case $host in |
2131 |
- *cygwin*) |
|
2131 |
+ *cygwin* | mingw*) |
|
2132 | 2132 |
major=`expr $current - $age` |
2133 | 2133 |
versuffix="-$major" |
2134 | 2134 |
;; |
... | ... |
@@ -2140,17 +2961,18 @@ compiler." |
2140 | 2140 |
|
2141 | 2141 |
# Make a new name for the extract_expsyms_cmds to use |
2142 | 2142 |
soroot="$soname" |
2143 |
- soname=`echo $soroot | sed -e 's/^.*\///'` |
|
2144 |
- newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a" |
|
2143 |
+ soname=`$echo $soroot | ${SED} -e 's/^.*\///'` |
|
2144 |
+ newlib="libimp-`$echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a" |
|
2145 | 2145 |
|
2146 | 2146 |
# If the library has no export list, then create one now |
2147 | 2147 |
if test -f "$output_objdir/$soname-def"; then : |
2148 | 2148 |
else |
2149 | 2149 |
$show "extracting exported symbol list from \`$soname'" |
2150 | 2150 |
save_ifs="$IFS"; IFS='~' |
2151 |
- eval cmds=\"$extract_expsyms_cmds\" |
|
2151 |
+ cmds=$extract_expsyms_cmds |
|
2152 | 2152 |
for cmd in $cmds; do |
2153 | 2153 |
IFS="$save_ifs" |
2154 |
+ eval cmd=\"$cmd\" |
|
2154 | 2155 |
$show "$cmd" |
2155 | 2156 |
$run eval "$cmd" || exit $? |
2156 | 2157 |
done |
... | ... |
@@ -2161,9 +2983,10 @@ compiler." |
2161 | 2161 |
if test -f "$output_objdir/$newlib"; then :; else |
2162 | 2162 |
$show "generating import library for \`$soname'" |
2163 | 2163 |
save_ifs="$IFS"; IFS='~' |
2164 |
- eval cmds=\"$old_archive_from_expsyms_cmds\" |
|
2164 |
+ cmds=$old_archive_from_expsyms_cmds |
|
2165 | 2165 |
for cmd in $cmds; do |
2166 | 2166 |
IFS="$save_ifs" |
2167 |
+ eval cmd=\"$cmd\" |
|
2167 | 2168 |
$show "$cmd" |
2168 | 2169 |
$run eval "$cmd" || exit $? |
2169 | 2170 |
done |
... | ... |
@@ -2172,9 +2995,9 @@ compiler." |
2172 | 2172 |
# make sure the library variables are pointing to the new library |
2173 | 2173 |
dir=$output_objdir |
2174 | 2174 |
linklib=$newlib |
2175 |
- fi # test -n $old_archive_from_expsyms_cmds |
|
2175 |
+ fi # test -n "$old_archive_from_expsyms_cmds" |
|
2176 | 2176 |
|
2177 |
- if test $linkmode = prog || test "$mode" != relink; then |
|
2177 |
+ if test "$linkmode" = prog || test "$mode" != relink; then |
|
2178 | 2178 |
add_shlibpath= |
2179 | 2179 |
add_dir= |
2180 | 2180 |
add= |
... | ... |
@@ -2183,6 +3006,26 @@ compiler." |
2183 | 2183 |
immediate | unsupported) |
2184 | 2184 |
if test "$hardcode_direct" = no; then |
2185 | 2185 |
add="$dir/$linklib" |
2186 |
+ case $host in |
|
2187 |
+ *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; |
|
2188 |
+ *-*-sysv4*uw2*) add_dir="-L$dir" ;; |
|
2189 |
+ *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ |
|
2190 |
+ *-*-unixware7*) add_dir="-L$dir" ;; |
|
2191 |
+ *-*-darwin* ) |
|
2192 |
+ # if the lib is a module then we can not link against |
|
2193 |
+ # it, someone is ignoring the new warnings I added |
|
2194 |
+ if /usr/bin/file -L $add 2> /dev/null | |
|
2195 |
+ $EGREP ": [^:]* bundle" >/dev/null ; then |
|
2196 |
+ $echo "** Warning, lib $linklib is a module, not a shared library" |
|
2197 |
+ if test -z "$old_library" ; then |
|
2198 |
+ $echo |
|
2199 |
+ $echo "** And there doesn't seem to be a static archive available" |
|
2200 |
+ $echo "** The link will probably fail, sorry" |
|
2201 |
+ else |
|
2202 |
+ add="$dir/$old_library" |
|
2203 |
+ fi |
|
2204 |
+ fi |
|
2205 |
+ esac |
|
2186 | 2206 |
elif test "$hardcode_minus_L" = no; then |
2187 | 2207 |
case $host in |
2188 | 2208 |
*-*-sunos*) add_shlibpath="$dir" ;; |
... | ... |
@@ -2201,6 +3044,14 @@ compiler." |
2201 | 2201 |
add="$dir/$linklib" |
2202 | 2202 |
elif test "$hardcode_minus_L" = yes; then |
2203 | 2203 |
add_dir="-L$dir" |
2204 |
+ # Try looking first in the location we're being installed to. |
|
2205 |
+ if test -n "$inst_prefix_dir"; then |
|
2206 |
+ case $libdir in |
|
2207 |
+ [\\/]*) |
|
2208 |
+ add_dir="$add_dir -L$inst_prefix_dir$libdir" |
|
2209 |
+ ;; |
|
2210 |
+ esac |
|
2211 |
+ fi |
|
2204 | 2212 |
add="-l$name" |
2205 | 2213 |
elif test "$hardcode_shlibpath_var" = yes; then |
2206 | 2214 |
add_shlibpath="$dir" |
... | ... |
@@ -2214,7 +3065,7 @@ compiler." |
2214 | 2214 |
|
2215 | 2215 |
if test "$lib_linked" != yes; then |
2216 | 2216 |
$echo "$modename: configuration error: unsupported hardcode properties" |
2217 |
- exit 1 |
|
2217 |
+ exit $EXIT_FAILURE |
|
2218 | 2218 |
fi |
2219 | 2219 |
|
2220 | 2220 |
if test -n "$add_shlibpath"; then |
... | ... |
@@ -2223,7 +3074,7 @@ compiler." |
2223 | 2223 |
*) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; |
2224 | 2224 |
esac |
2225 | 2225 |
fi |
2226 |
- if test $linkmode = prog; then |
|
2226 |
+ if test "$linkmode" = prog; then |
|
2227 | 2227 |
test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" |
2228 | 2228 |
test -n "$add" && compile_deplibs="$add $compile_deplibs" |
2229 | 2229 |
else |
... | ... |
@@ -2240,7 +3091,7 @@ compiler." |
2240 | 2240 |
fi |
2241 | 2241 |
fi |
2242 | 2242 |
|
2243 |
- if test $linkmode = prog || test "$mode" = relink; then |
|
2243 |
+ if test "$linkmode" = prog || test "$mode" = relink; then |
|
2244 | 2244 |
add_shlibpath= |
2245 | 2245 |
add_dir= |
2246 | 2246 |
add= |
... | ... |
@@ -2256,13 +3107,28 @@ compiler." |
2256 | 2256 |
*) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; |
2257 | 2257 |
esac |
2258 | 2258 |
add="-l$name" |
2259 |
+ elif test "$hardcode_automatic" = yes; then |
|
2260 |
+ if test -n "$inst_prefix_dir" && |
|
2261 |
+ test -f "$inst_prefix_dir$libdir/$linklib" ; then |
|
2262 |
+ add="$inst_prefix_dir$libdir/$linklib" |
|
2263 |
+ else |
|
2264 |
+ add="$libdir/$linklib" |
|
2265 |
+ fi |
|
2259 | 2266 |
else |
2260 | 2267 |
# We cannot seem to hardcode it, guess we'll fake it. |
2261 | 2268 |
add_dir="-L$libdir" |
2269 |
+ # Try looking first in the location we're being installed to. |
|
2270 |
+ if test -n "$inst_prefix_dir"; then |
|
2271 |
+ case $libdir in |
|
2272 |
+ [\\/]*) |
|
2273 |
+ add_dir="$add_dir -L$inst_prefix_dir$libdir" |
|
2274 |
+ ;; |
|
2275 |
+ esac |
|
2276 |
+ fi |
|
2262 | 2277 |
add="-l$name" |
2263 | 2278 |
fi |
2264 | 2279 |
|
2265 |
- if test $linkmode = prog; then |
|
2280 |
+ if test "$linkmode" = prog; then |
|
2266 | 2281 |
test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" |
2267 | 2282 |
test -n "$add" && finalize_deplibs="$add $finalize_deplibs" |
2268 | 2283 |
else |
... | ... |
@@ -2270,16 +3136,7 @@ compiler." |
2270 | 2270 |
test -n "$add" && deplibs="$add $deplibs" |
2271 | 2271 |
fi |
2272 | 2272 |
fi |
2273 |
- elif test $linkmode = prog; then |
|
2274 |
- if test "$alldeplibs" = yes && |
|
2275 |
- { test "$deplibs_check_method" = pass_all || |
|
2276 |
- { test "$build_libtool_libs" = yes && |
|
2277 |
- test -n "$library_names"; }; }; then |
|
2278 |
- # We only need to search for static libraries |
|
2279 |
- continue |
|
2280 |
- fi |
|
2281 |
- |
|
2282 |
- # Try to link the static library |
|
2273 |
+ elif test "$linkmode" = prog; then |
|
2283 | 2274 |
# Here we assume that one of hardcode_direct or hardcode_minus_L |
2284 | 2275 |
# is not unsupported. This is valid on all known static and |
2285 | 2276 |
# shared platforms. |
... | ... |
@@ -2299,21 +3156,21 @@ compiler." |
2299 | 2299 |
|
2300 | 2300 |
# Just print a warning and add the library to dependency_libs so |
2301 | 2301 |
# that the program can be linked against the static library. |
2302 |
- echo |
|
2303 |
- echo "*** Warning: This system can not link to static lib archive $lib." |
|
2304 |
- echo "*** I have the capability to make that library automatically link in when" |
|
2305 |
- echo "*** you link to this library. But I can only do this if you have a" |
|
2306 |
- echo "*** shared version of the library, which you do not appear to have." |
|
2302 |
+ $echo |
|
2303 |
+ $echo "*** Warning: This system can not link to static lib archive $lib." |
|
2304 |
+ $echo "*** I have the capability to make that library automatically link in when" |
|
2305 |
+ $echo "*** you link to this library. But I can only do this if you have a" |
|
2306 |
+ $echo "*** shared version of the library, which you do not appear to have." |
|
2307 | 2307 |
if test "$module" = yes; then |
2308 |
- echo "*** But as you try to build a module library, libtool will still create " |
|
2309 |
- echo "*** a static module, that should work as long as the dlopening application" |
|
2310 |
- echo "*** is linked with the -dlopen flag to resolve symbols at runtime." |
|
2308 |
+ $echo "*** But as you try to build a module library, libtool will still create " |
|
2309 |
+ $echo "*** a static module, that should work as long as the dlopening application" |
|
2310 |
+ $echo "*** is linked with the -dlopen flag to resolve symbols at runtime." |
|
2311 | 2311 |
if test -z "$global_symbol_pipe"; then |
2312 |
- echo |
|
2313 |
- echo "*** However, this would only work if libtool was able to extract symbol" |
|
2314 |
- echo "*** lists from a program, using \`nm' or equivalent, but libtool could" |
|
2315 |
- echo "*** not find such a program. So, this module is probably useless." |
|
2316 |
- echo "*** \`nm' from GNU binutils and a full rebuild may help." |
|
2312 |
+ $echo |
|
2313 |
+ $echo "*** However, this would only work if libtool was able to extract symbol" |
|
2314 |
+ $echo "*** lists from a program, using \`nm' or equivalent, but libtool could" |
|
2315 |
+ $echo "*** not find such a program. So, this module is probably useless." |
|
2316 |
+ $echo "*** \`nm' from GNU binutils and a full rebuild may help." |
|
2317 | 2317 |
fi |
2318 | 2318 |
if test "$build_old_libs" = no; then |
2319 | 2319 |
build_libtool_libs=module |
... | ... |
@@ -2323,17 +3180,16 @@ compiler." |
2323 | 2323 |
fi |
2324 | 2324 |
fi |
2325 | 2325 |
else |
2326 |
- convenience="$convenience $dir/$old_library" |
|
2327 |
- old_convenience="$old_convenience $dir/$old_library" |
|
2328 | 2326 |
deplibs="$dir/$old_library $deplibs" |
2329 | 2327 |
link_static=yes |
2330 | 2328 |
fi |
2331 | 2329 |
fi # link shared/static library? |
2332 | 2330 |
|
2333 |
- if test $linkmode = lib; then |
|
2331 |
+ if test "$linkmode" = lib; then |
|
2334 | 2332 |
if test -n "$dependency_libs" && |
2335 |
- { test $hardcode_into_libs != yes || test $build_old_libs = yes || |
|
2336 |
- test $link_static = yes; }; then |
|
2333 |
+ { test "$hardcode_into_libs" != yes || |
|
2334 |
+ test "$build_old_libs" = yes || |
|
2335 |
+ test "$link_static" = yes; }; then |
|
2337 | 2336 |
# Extract -R from dependency_libs |
2338 | 2337 |
temp_deplibs= |
2339 | 2338 |
for libdir in $dependency_libs; do |
... | ... |
@@ -2364,7 +3220,7 @@ compiler." |
2364 | 2364 |
tmp_libs="$tmp_libs $deplib" |
2365 | 2365 |
done |
2366 | 2366 |
|
2367 |
- if test $link_all_deplibs != no; then |
|
2367 |
+ if test "$link_all_deplibs" != no; then |
|
2368 | 2368 |
# Add the search paths of all dependency libraries |
2369 | 2369 |
for deplib in $dependency_libs; do |
2370 | 2370 |
case $deplib in |
... | ... |
@@ -2384,38 +3240,83 @@ compiler." |
2384 | 2384 |
;; |
2385 | 2385 |
esac |
2386 | 2386 |
if grep "^installed=no" $deplib > /dev/null; then |
2387 |
- path="-L$absdir/$objdir" |
|
2387 |
+ path="$absdir/$objdir" |
|
2388 | 2388 |
else |
2389 |
- eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` |
|
2389 |
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` |
|
2390 | 2390 |
if test -z "$libdir"; then |
2391 | 2391 |
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 |
2392 |
- exit 1 |
|
2392 |
+ exit $EXIT_FAILURE |
|
2393 | 2393 |
fi |
2394 | 2394 |
if test "$absdir" != "$libdir"; then |
2395 | 2395 |
$echo "$modename: warning: \`$deplib' seems to be moved" 1>&2 |
2396 | 2396 |
fi |
2397 |
- path="-L$absdir" |
|
2397 |
+ path="$absdir" |
|
2398 | 2398 |
fi |
2399 |
+ depdepl= |
|
2400 |
+ case $host in |
|
2401 |
+ *-*-darwin*) |
|
2402 |
+ # we do not want to link against static libs, |
|
2403 |
+ # but need to link against shared |
|
2404 |
+ eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` |
|
2405 |
+ if test -n "$deplibrary_names" ; then |
|
2406 |
+ for tmp in $deplibrary_names ; do |
|
2407 |
+ depdepl=$tmp |
|
2408 |
+ done |
|
2409 |
+ if test -f "$path/$depdepl" ; then |
|
2410 |
+ depdepl="$path/$depdepl" |
|
2411 |
+ fi |
|
2412 |
+ # do not add paths which are already there |
|
2413 |
+ case " $newlib_search_path " in |
|
2414 |
+ *" $path "*) ;; |
|
2415 |
+ *) newlib_search_path="$newlib_search_path $path";; |
|
2416 |
+ esac |
|
2417 |
+ fi |
|
2418 |
+ path="" |
|
2419 |
+ ;; |
|
2420 |
+ *) |
|
2421 |
+ path="-L$path" |
|
2422 |
+ ;; |
|
2423 |
+ esac |
|
2424 |
+ ;; |
|
2425 |
+ -l*) |
|
2426 |
+ case $host in |
|
2427 |
+ *-*-darwin*) |
|
2428 |
+ # Again, we only want to link against shared libraries |
|
2429 |
+ eval tmp_libs=`$echo "X$deplib" | $Xsed -e "s,^\-l,,"` |
|
2430 |
+ for tmp in $newlib_search_path ; do |
|
2431 |
+ if test -f "$tmp/lib$tmp_libs.dylib" ; then |
|
2432 |
+ eval depdepl="$tmp/lib$tmp_libs.dylib" |
|
2433 |
+ break |
|
2434 |
+ fi |
|
2435 |
+ done |
|
2436 |
+ path="" |
|
2437 |
+ ;; |
|
2438 |
+ *) continue ;; |
|
2439 |
+ esac |
|
2399 | 2440 |
;; |
2400 | 2441 |
*) continue ;; |
2401 | 2442 |
esac |
2402 | 2443 |
case " $deplibs " in |
2403 | 2444 |
*" $path "*) ;; |
2404 |
- *) deplibs="$deplibs $path" ;; |
|
2445 |
+ *) deplibs="$path $deplibs" ;; |
|
2446 |
+ esac |
|
2447 |
+ case " $deplibs " in |
|
2448 |
+ *" $depdepl "*) ;; |
|
2449 |
+ *) deplibs="$depdepl $deplibs" ;; |
|
2405 | 2450 |
esac |
2406 | 2451 |
done |
2407 | 2452 |
fi # link_all_deplibs != no |
2408 | 2453 |
fi # linkmode = lib |
2409 | 2454 |
done # for deplib in $libs |
2410 |
- if test $pass = dlpreopen; then |
|
2455 |
+ dependency_libs="$newdependency_libs" |
|
2456 |
+ if test "$pass" = dlpreopen; then |
|
2411 | 2457 |
# Link the dlpreopened libraries before other libraries |
2412 | 2458 |
for deplib in $save_deplibs; do |
2413 | 2459 |
deplibs="$deplib $deplibs" |
2414 | 2460 |
done |
2415 | 2461 |
fi |
2416 |
- if test $pass != dlopen; then |
|
2417 |
- test $pass != scan && dependency_libs="$newdependency_libs" |
|
2418 |
- if test $pass != conv; then |
|
2462 |
+ if test "$pass" != dlopen; then |
|
2463 |
+ if test "$pass" != conv; then |
|
2419 | 2464 |
# Make sure lib_search_path contains only unique directories. |
2420 | 2465 |
lib_search_path= |
2421 | 2466 |
for dir in $newlib_search_path; do |
... | ... |
@@ -2437,9 +3338,30 @@ compiler." |
2437 | 2437 |
eval tmp_libs=\"\$$var\" |
2438 | 2438 |
new_libs= |
2439 | 2439 |
for deplib in $tmp_libs; do |
2440 |
+ # FIXME: Pedantically, this is the right thing to do, so |
|
2441 |
+ # that some nasty dependency loop isn't accidentally |
|
2442 |
+ # broken: |
|
2443 |
+ #new_libs="$deplib $new_libs" |
|
2444 |
+ # Pragmatically, this seems to cause very few problems in |
|
2445 |
+ # practice: |
|
2440 | 2446 |
case $deplib in |
2441 | 2447 |
-L*) new_libs="$deplib $new_libs" ;; |
2448 |
+ -R*) ;; |
|
2442 | 2449 |
*) |
2450 |
+ # And here is the reason: when a library appears more |
|
2451 |
+ # than once as an explicit dependence of a library, or |
|
2452 |
+ # is implicitly linked in more than once by the |
|
2453 |
+ # compiler, it is considered special, and multiple |
|
2454 |
+ # occurrences thereof are not removed. Compare this |
|
2455 |
+ # with having the same library being listed as a |
|
2456 |
+ # dependency of multiple other libraries: in this case, |
|
2457 |
+ # we know (pedantically, we assume) the library does not |
|
2458 |
+ # need to be listed more than once, so we keep only the |
|
2459 |
+ # last copy. This is not always right, but it is rare |
|
2460 |
+ # enough that we require users that really mean to play |
|
2461 |
+ # such unportable linking tricks to link the library |
|
2462 |
+ # using -Wl,-lname, so that libtool does not consider it |
|
2463 |
+ # for duplicate removal. |
|
2443 | 2464 |
case " $specialdeplibs " in |
2444 | 2465 |
*" $deplib "*) new_libs="$deplib $new_libs" ;; |
2445 | 2466 |
*) |
... | ... |
@@ -2467,19 +3389,32 @@ compiler." |
2467 | 2467 |
eval $var=\"$tmp_libs\" |
2468 | 2468 |
done # for var |
2469 | 2469 |
fi |
2470 |
- if test "$pass" = "conv" && |
|
2471 |
- { test "$linkmode" = "lib" || test "$linkmode" = "prog"; }; then |
|
2472 |
- libs="$deplibs" # reset libs |
|
2473 |
- deplibs= |
|
2474 |
- fi |
|
2470 |
+ # Last step: remove runtime libs from dependency_libs |
|
2471 |
+ # (they stay in deplibs) |
|
2472 |
+ tmp_libs= |
|
2473 |
+ for i in $dependency_libs ; do |
|
2474 |
+ case " $predeps $postdeps $compiler_lib_search_path " in |
|
2475 |
+ *" $i "*) |
|
2476 |
+ i="" |
|
2477 |
+ ;; |
|
2478 |
+ esac |
|
2479 |
+ if test -n "$i" ; then |
|
2480 |
+ tmp_libs="$tmp_libs $i" |
|
2481 |
+ fi |
|
2482 |
+ done |
|
2483 |
+ dependency_libs=$tmp_libs |
|
2475 | 2484 |
done # for pass |
2476 |
- if test $linkmode = prog; then |
|
2485 |
+ if test "$linkmode" = prog; then |
|
2477 | 2486 |
dlfiles="$newdlfiles" |
2478 | 2487 |
dlprefiles="$newdlprefiles" |
2479 | 2488 |
fi |
2480 | 2489 |
|
2481 | 2490 |
case $linkmode in |
2482 | 2491 |
oldlib) |
2492 |
+ if test -n "$deplibs"; then |
|
2493 |
+ $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 |
|
2494 |
+ fi |
|
2495 |
+ |
|
2483 | 2496 |
if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then |
2484 | 2497 |
$echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 |
2485 | 2498 |
fi |
... | ... |
@@ -2493,7 +3428,7 @@ compiler." |
2493 | 2493 |
fi |
2494 | 2494 |
|
2495 | 2495 |
if test -n "$vinfo"; then |
2496 |
- $echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2 |
|
2496 |
+ $echo "$modename: warning: \`-version-info/-version-number' is ignored for archives" 1>&2 |
|
2497 | 2497 |
fi |
2498 | 2498 |
|
2499 | 2499 |
if test -n "$release"; then |
... | ... |
@@ -2515,17 +3450,19 @@ compiler." |
2515 | 2515 |
case $outputname in |
2516 | 2516 |
lib*) |
2517 | 2517 |
name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` |
2518 |
+ eval shared_ext=\"$shrext_cmds\" |
|
2518 | 2519 |
eval libname=\"$libname_spec\" |
2519 | 2520 |
;; |
2520 | 2521 |
*) |
2521 | 2522 |
if test "$module" = no; then |
2522 | 2523 |
$echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2 |
2523 | 2524 |
$echo "$help" 1>&2 |
2524 |
- exit 1 |
|
2525 |
+ exit $EXIT_FAILURE |
|
2525 | 2526 |
fi |
2526 | 2527 |
if test "$need_lib_prefix" != no; then |
2527 | 2528 |
# Add the "lib" prefix for modules if required |
2528 | 2529 |
name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` |
2530 |
+ eval shared_ext=\"$shrext_cmds\" |
|
2529 | 2531 |
eval libname=\"$libname_spec\" |
2530 | 2532 |
else |
2531 | 2533 |
libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` |
... | ... |
@@ -2536,11 +3473,11 @@ compiler." |
2536 | 2536 |
if test -n "$objs"; then |
2537 | 2537 |
if test "$deplibs_check_method" != pass_all; then |
2538 | 2538 |
$echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1 |
2539 |
- exit 1 |
|
2539 |
+ exit $EXIT_FAILURE |
|
2540 | 2540 |
else |
2541 |
- echo |
|
2542 |
- echo "*** Warning: Linking the shared library $output against the non-libtool" |
|
2543 |
- echo "*** objects $objs is not portable!" |
|
2541 |
+ $echo |
|
2542 |
+ $echo "*** Warning: Linking the shared library $output against the non-libtool" |
|
2543 |
+ $echo "*** objects $objs is not portable!" |
|
2544 | 2544 |
libobjs="$libobjs $objs" |
2545 | 2545 |
fi |
2546 | 2546 |
fi |
... | ... |
@@ -2550,7 +3487,7 @@ compiler." |
2550 | 2550 |
fi |
2551 | 2551 |
|
2552 | 2552 |
set dummy $rpath |
2553 |
- if test $# -gt 2; then |
|
2553 |
+ if test "$#" -gt 2; then |
|
2554 | 2554 |
$echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2 |
2555 | 2555 |
fi |
2556 | 2556 |
install_libdir="$2" |
... | ... |
@@ -2559,14 +3496,16 @@ compiler." |
2559 | 2559 |
if test -z "$rpath"; then |
2560 | 2560 |
if test "$build_libtool_libs" = yes; then |
2561 | 2561 |
# Building a libtool convenience library. |
2562 |
- libext=al |
|
2562 |
+ # Some compilers have problems with a `.al' extension so |
|
2563 |
+ # convenience libraries should have the same extension an |
|
2564 |
+ # archive normally would. |
|
2563 | 2565 |
oldlibs="$output_objdir/$libname.$libext $oldlibs" |
2564 | 2566 |
build_libtool_libs=convenience |
2565 | 2567 |
build_old_libs=yes |
2566 | 2568 |
fi |
2567 | 2569 |
|
2568 | 2570 |
if test -n "$vinfo"; then |
2569 |
- $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2 |
|
2571 |
+ $echo "$modename: warning: \`-version-info/-version-number' is ignored for convenience libraries" 1>&2 |
|
2570 | 2572 |
fi |
2571 | 2573 |
|
2572 | 2574 |
if test -n "$release"; then |
... | ... |
@@ -2582,45 +3521,87 @@ compiler." |
2582 | 2582 |
if test -n "$8"; then |
2583 | 2583 |
$echo "$modename: too many parameters to \`-version-info'" 1>&2 |
2584 | 2584 |
$echo "$help" 1>&2 |
2585 |
- exit 1 |
|
2585 |
+ exit $EXIT_FAILURE |
|
2586 | 2586 |
fi |
2587 | 2587 |
|
2588 |
- current="$2" |
|
2589 |
- revision="$3" |
|
2590 |
- age="$4" |
|
2588 |
+ # convert absolute version numbers to libtool ages |
|
2589 |
+ # this retains compatibility with .la files and attempts |
|
2590 |
+ # to make the code below a bit more comprehensible |
|
2591 |
+ |
|
2592 |
+ case $vinfo_number in |
|
2593 |
+ yes) |
|
2594 |
+ number_major="$2" |
|
2595 |
+ number_minor="$3" |
|
2596 |
+ number_revision="$4" |
|
2597 |
+ # |
|
2598 |
+ # There are really only two kinds -- those that |
|
2599 |
+ # use the current revision as the major version |
|
2600 |
+ # and those that subtract age and use age as |
|
2601 |
+ # a minor version. But, then there is irix |
|
2602 |
+ # which has an extra 1 added just for fun |
|
2603 |
+ # |
|
2604 |
+ case $version_type in |
|
2605 |
+ darwin|linux|osf|windows) |
|
2606 |
+ current=`expr $number_major + $number_minor` |
|
2607 |
+ age="$number_minor" |
|
2608 |
+ revision="$number_revision" |
|
2609 |
+ ;; |
|
2610 |
+ freebsd-aout|freebsd-elf|sunos) |
|
2611 |
+ current="$number_major" |
|
2612 |
+ revision="$number_minor" |
|
2613 |
+ age="0" |
|
2614 |
+ ;; |
|
2615 |
+ irix|nonstopux) |
|
2616 |
+ current=`expr $number_major + $number_minor - 1` |
|
2617 |
+ age="$number_minor" |
|
2618 |
+ revision="$number_minor" |
|
2619 |
+ ;; |
|
2620 |
+ *) |
|
2621 |
+ $echo "$modename: unknown library version type \`$version_type'" 1>&2 |
|
2622 |
+ $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 |
|
2623 |
+ exit $EXIT_FAILURE |
|
2624 |
+ ;; |
|
2625 |
+ esac |
|
2626 |
+ ;; |
|
2627 |
+ no) |
|
2628 |
+ current="$2" |
|
2629 |
+ revision="$3" |
|
2630 |
+ age="$4" |
|
2631 |
+ ;; |
|
2632 |
+ esac |
|
2591 | 2633 |
|
2592 | 2634 |
# Check that each of the things are valid numbers. |
2593 | 2635 |
case $current in |
2594 |
- 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; |
|
2636 |
+ 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; |
|
2595 | 2637 |
*) |
2596 |
- $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2 |
|
2638 |
+ $echo "$modename: CURRENT \`$current' must be a nonnegative integer" 1>&2 |
|
2597 | 2639 |
$echo "$modename: \`$vinfo' is not valid version information" 1>&2 |
2598 |
- exit 1 |
|
2640 |
+ exit $EXIT_FAILURE |
|
2599 | 2641 |
;; |
2600 | 2642 |
esac |
2601 | 2643 |
|
2602 | 2644 |
case $revision in |
2603 |
- 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; |
|
2645 |
+ 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; |
|
2604 | 2646 |
*) |
2605 |
- $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2 |
|
2647 |
+ $echo "$modename: REVISION \`$revision' must be a nonnegative integer" 1>&2 |
|
2606 | 2648 |
$echo "$modename: \`$vinfo' is not valid version information" 1>&2 |
2607 |
- exit 1 |
|
2649 |
+ exit $EXIT_FAILURE |
|
2608 | 2650 |
;; |
2609 | 2651 |
esac |
2610 | 2652 |
|
2611 | 2653 |
case $age in |
2612 |
- 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; |
|
2654 |
+ 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; |
|
2613 | 2655 |
*) |
2614 |
- $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2 |
|
2656 |
+ $echo "$modename: AGE \`$age' must be a nonnegative integer" 1>&2 |
|
2615 | 2657 |
$echo "$modename: \`$vinfo' is not valid version information" 1>&2 |
2616 |
- exit 1 |
|
2658 |
+ exit $EXIT_FAILURE |
|
2617 | 2659 |
;; |
2618 | 2660 |
esac |
2619 | 2661 |
|
2620 |
- if test $age -gt $current; then |
|
2662 |
+ if test "$age" -gt "$current"; then |
|
2621 | 2663 |
$echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2 |
2622 | 2664 |
$echo "$modename: \`$vinfo' is not valid version information" 1>&2 |
2623 |
- exit 1 |
|
2665 |
+ exit $EXIT_FAILURE |
|
2624 | 2666 |
fi |
2625 | 2667 |
|
2626 | 2668 |
# Calculate the version variables. |
... | ... |
@@ -2637,7 +3618,7 @@ compiler." |
2637 | 2637 |
versuffix="$major.$age.$revision" |
2638 | 2638 |
# Darwin ld doesn't like 0 for these options... |
2639 | 2639 |
minor_current=`expr $current + 1` |
2640 |
- verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" |
|
2640 |
+ verstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision" |
|
2641 | 2641 |
;; |
2642 | 2642 |
|
2643 | 2643 |
freebsd-aout) |
... | ... |
@@ -2651,17 +3632,17 @@ compiler." |
2651 | 2651 |
;; |
2652 | 2652 |
|
2653 | 2653 |
irix | nonstopux) |
2654 |
+ major=`expr $current - $age + 1` |
|
2655 |
+ |
|
2654 | 2656 |
case $version_type in |
2655 | 2657 |
nonstopux) verstring_prefix=nonstopux ;; |
2656 | 2658 |
*) verstring_prefix=sgi ;; |
2657 | 2659 |
esac |
2658 | 2660 |
verstring="$verstring_prefix$major.$revision" |
2659 | 2661 |
|
2660 |
- major=`expr $current - $age + 1` |
|
2661 |
- |
|
2662 | 2662 |
# Add in all the interfaces that we are compatible with. |
2663 | 2663 |
loop=$revision |
2664 |
- while test $loop != 0; do |
|
2664 |
+ while test "$loop" -ne 0; do |
|
2665 | 2665 |
iface=`expr $revision - $loop` |
2666 | 2666 |
loop=`expr $loop - 1` |
2667 | 2667 |
verstring="$verstring_prefix$major.$iface:$verstring" |
... | ... |
@@ -2678,13 +3659,13 @@ compiler." |
2678 | 2678 |
;; |
2679 | 2679 |
|
2680 | 2680 |
osf) |
2681 |
- major=`expr $current - $age` |
|
2681 |
+ major=.`expr $current - $age` |
|
2682 | 2682 |
versuffix=".$current.$age.$revision" |
2683 | 2683 |
verstring="$current.$age.$revision" |
2684 | 2684 |
|
2685 | 2685 |
# Add in all the interfaces that we are compatible with. |
2686 | 2686 |
loop=$age |
2687 |
- while test $loop != 0; do |
|
2687 |
+ while test "$loop" -ne 0; do |
|
2688 | 2688 |
iface=`expr $current - $loop` |
2689 | 2689 |
loop=`expr $loop - 1` |
2690 | 2690 |
verstring="$verstring:${iface}.0" |
... | ... |
@@ -2708,20 +3689,19 @@ compiler." |
2708 | 2708 |
|
2709 | 2709 |
*) |
2710 | 2710 |
$echo "$modename: unknown library version type \`$version_type'" 1>&2 |
2711 |
- echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 |
|
2712 |
- exit 1 |
|
2711 |
+ $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 |
|
2712 |
+ exit $EXIT_FAILURE |
|
2713 | 2713 |
;; |
2714 | 2714 |
esac |
2715 | 2715 |
|
2716 | 2716 |
# Clear the version info if we defaulted, and they specified a release. |
2717 | 2717 |
if test -z "$vinfo" && test -n "$release"; then |
2718 | 2718 |
major= |
2719 |
- verstring="0.0" |
|
2720 | 2719 |
case $version_type in |
2721 | 2720 |
darwin) |
2722 | 2721 |
# we can't check for "0.0" in archive_cmds due to quoting |
2723 | 2722 |
# problems, so we reset it completely |
2724 |
- verstring="" |
|
2723 |
+ verstring= |
|
2725 | 2724 |
;; |
2726 | 2725 |
*) |
2727 | 2726 |
verstring="0.0" |
... | ... |
@@ -2755,9 +3735,30 @@ compiler." |
2755 | 2755 |
fi |
2756 | 2756 |
|
2757 | 2757 |
if test "$mode" != relink; then |
2758 |
- # Remove our outputs. |
|
2759 |
- $show "${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*" |
|
2760 |
- $run ${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.* |
|
2758 |
+ # Remove our outputs, but don't remove object files since they |
|
2759 |
+ # may have been created when compiling PIC objects. |
|
2760 |
+ removelist= |
|
2761 |
+ tempremovelist=`$echo "$output_objdir/*"` |
|
2762 |
+ for p in $tempremovelist; do |
|
2763 |
+ case $p in |
|
2764 |
+ *.$objext) |
|
2765 |
+ ;; |
|
2766 |
+ $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) |
|
2767 |
+ if test "X$precious_files_regex" != "X"; then |
|
2768 |
+ if echo $p | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 |
|
2769 |
+ then |
|
2770 |
+ continue |
|
2771 |
+ fi |
|
2772 |
+ fi |
|
2773 |
+ removelist="$removelist $p" |
|
2774 |
+ ;; |
|
2775 |
+ *) ;; |
|
2776 |
+ esac |
|
2777 |
+ done |
|
2778 |
+ if test -n "$removelist"; then |
|
2779 |
+ $show "${rm}r $removelist" |
|
2780 |
+ $run ${rm}r $removelist |
|
2781 |
+ fi |
|
2761 | 2782 |
fi |
2762 | 2783 |
|
2763 | 2784 |
# Now set the variables for building old libraries. |
... | ... |
@@ -2770,9 +3771,9 @@ compiler." |
2770 | 2770 |
|
2771 | 2771 |
# Eliminate all temporary directories. |
2772 | 2772 |
for path in $notinst_path; do |
2773 |
- lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'` |
|
2774 |
- deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'` |
|
2775 |
- dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'` |
|
2773 |
+ lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"` |
|
2774 |
+ deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"` |
|
2775 |
+ dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"` |
|
2776 | 2776 |
done |
2777 | 2777 |
|
2778 | 2778 |
if test -n "$xrpath"; then |
... | ... |
@@ -2785,7 +3786,7 @@ compiler." |
2785 | 2785 |
*) finalize_rpath="$finalize_rpath $libdir" ;; |
2786 | 2786 |
esac |
2787 | 2787 |
done |
2788 |
- if test $hardcode_into_libs != yes || test $build_old_libs = yes; then |
|
2788 |
+ if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then |
|
2789 | 2789 |
dependency_libs="$temp_xrpath $dependency_libs" |
2790 | 2790 |
fi |
2791 | 2791 |
fi |
... | ... |
@@ -2823,12 +3824,18 @@ compiler." |
2823 | 2823 |
*-*-netbsd*) |
2824 | 2824 |
# Don't link with libc until the a.out ld.so is fixed. |
2825 | 2825 |
;; |
2826 |
- *-*-openbsd* | *-*-freebsd*) |
|
2826 |
+ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) |
|
2827 | 2827 |
# Do not include libc due to us having libc/libc_r. |
2828 | 2828 |
;; |
2829 |
- *) |
|
2829 |
+ *-*-sco3.2v5* | *-*-sco5v6*) |
|
2830 |
+ # Causes problems with __ctype |
|
2831 |
+ ;; |
|
2832 |
+ *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) |
|
2833 |
+ # Compiler inserts libc in the correct place for threads to work |
|
2834 |
+ ;; |
|
2835 |
+ *) |
|
2830 | 2836 |
# Add libc to deplibs on all other systems if necessary. |
2831 |
- if test $build_libtool_need_lc = "yes"; then |
|
2837 |
+ if test "$build_libtool_need_lc" = "yes"; then |
|
2832 | 2838 |
deplibs="$deplibs -lc" |
2833 | 2839 |
fi |
2834 | 2840 |
;; |
... | ... |
@@ -2855,7 +3862,7 @@ compiler." |
2855 | 2855 |
# This might be a little naive. We might want to check |
2856 | 2856 |
# whether the library exists or not. But this is on |
2857 | 2857 |
# osf3 & osf4 and I'm not really sure... Just |
2858 |
- # implementing what was already the behaviour. |
|
2858 |
+ # implementing what was already the behavior. |
|
2859 | 2859 |
newdeplibs=$deplibs |
2860 | 2860 |
;; |
2861 | 2861 |
test_compile) |
... | ... |
@@ -2868,68 +3875,88 @@ compiler." |
2868 | 2868 |
int main() { return 0; } |
2869 | 2869 |
EOF |
2870 | 2870 |
$rm conftest |
2871 |
- $CC -o conftest conftest.c $deplibs |
|
2872 |
- if test $? -eq 0 ; then |
|
2871 |
+ $LTCC $LTCFLAGS -o conftest conftest.c $deplibs |
|
2872 |
+ if test "$?" -eq 0 ; then |
|
2873 | 2873 |
ldd_output=`ldd conftest` |
2874 | 2874 |
for i in $deplibs; do |
2875 |
- name="`expr $i : '-l\(.*\)'`" |
|
2875 |
+ name=`expr $i : '-l\(.*\)'` |
|
2876 | 2876 |
# If $name is empty we are operating on a -L argument. |
2877 |
- if test -n "$name" && test "$name" != "0"; then |
|
2878 |
- libname=`eval \\$echo \"$libname_spec\"` |
|
2879 |
- deplib_matches=`eval \\$echo \"$library_names_spec\"` |
|
2880 |
- set dummy $deplib_matches |
|
2881 |
- deplib_match=$2 |
|
2882 |
- if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then |
|
2883 |
- newdeplibs="$newdeplibs $i" |
|
2884 |
- else |
|
2885 |
- droppeddeps=yes |
|
2886 |
- echo |
|
2887 |
- echo "*** Warning: dynamic linker does not accept needed library $i." |
|
2888 |
- echo "*** I have the capability to make that library automatically link in when" |
|
2889 |
- echo "*** you link to this library. But I can only do this if you have a" |
|
2890 |
- echo "*** shared version of the library, which I believe you do not have" |
|
2891 |
- echo "*** because a test_compile did reveal that the linker did not use it for" |
|
2892 |
- echo "*** its dynamic dependency list that programs get resolved with at runtime." |
|
2877 |
+ if test "$name" != "" && test "$name" -ne "0"; then |
|
2878 |
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then |
|
2879 |
+ case " $predeps $postdeps " in |
|
2880 |
+ *" $i "*) |
|
2881 |
+ newdeplibs="$newdeplibs $i" |
|
2882 |
+ i="" |
|
2883 |
+ ;; |
|
2884 |
+ esac |
|
2885 |
+ fi |
|
2886 |
+ if test -n "$i" ; then |
|
2887 |
+ libname=`eval \\$echo \"$libname_spec\"` |
|
2888 |
+ deplib_matches=`eval \\$echo \"$library_names_spec\"` |
|
2889 |
+ set dummy $deplib_matches |
|
2890 |
+ deplib_match=$2 |
|
2891 |
+ if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then |
|
2892 |
+ newdeplibs="$newdeplibs $i" |
|
2893 |
+ else |
|
2894 |
+ droppeddeps=yes |
|
2895 |
+ $echo |
|
2896 |
+ $echo "*** Warning: dynamic linker does not accept needed library $i." |
|
2897 |
+ $echo "*** I have the capability to make that library automatically link in when" |
|
2898 |
+ $echo "*** you link to this library. But I can only do this if you have a" |
|
2899 |
+ $echo "*** shared version of the library, which I believe you do not have" |
|
2900 |
+ $echo "*** because a test_compile did reveal that the linker did not use it for" |
|
2901 |
+ $echo "*** its dynamic dependency list that programs get resolved with at runtime." |
|
2902 |
+ fi |
|
2893 | 2903 |
fi |
2894 | 2904 |
else |
2895 | 2905 |
newdeplibs="$newdeplibs $i" |
2896 | 2906 |
fi |
2897 | 2907 |
done |
2898 | 2908 |
else |
2899 |
- # Error occured in the first compile. Let's try to salvage |
|
2909 |
+ # Error occurred in the first compile. Let's try to salvage |
|
2900 | 2910 |
# the situation: Compile a separate program for each library. |
2901 | 2911 |
for i in $deplibs; do |
2902 |
- name="`expr $i : '-l\(.*\)'`" |
|
2903 |
- # If $name is empty we are operating on a -L argument. |
|
2904 |
- if test -n "$name" && test "$name" != "0"; then |
|
2912 |
+ name=`expr $i : '-l\(.*\)'` |
|
2913 |
+ # If $name is empty we are operating on a -L argument. |
|
2914 |
+ if test "$name" != "" && test "$name" != "0"; then |
|
2905 | 2915 |
$rm conftest |
2906 |
- $CC -o conftest conftest.c $i |
|
2916 |
+ $LTCC $LTCFLAGS -o conftest conftest.c $i |
|
2907 | 2917 |
# Did it work? |
2908 |
- if test $? -eq 0 ; then |
|
2918 |
+ if test "$?" -eq 0 ; then |
|
2909 | 2919 |
ldd_output=`ldd conftest` |
2910 |
- libname=`eval \\$echo \"$libname_spec\"` |
|
2911 |
- deplib_matches=`eval \\$echo \"$library_names_spec\"` |
|
2912 |
- set dummy $deplib_matches |
|
2913 |
- deplib_match=$2 |
|
2914 |
- if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then |
|
2915 |
- newdeplibs="$newdeplibs $i" |
|
2916 |
- else |
|
2917 |
- droppeddeps=yes |
|
2918 |
- echo |
|
2919 |
- echo "*** Warning: dynamic linker does not accept needed library $i." |
|
2920 |
- echo "*** I have the capability to make that library automatically link in when" |
|
2921 |
- echo "*** you link to this library. But I can only do this if you have a" |
|
2922 |
- echo "*** shared version of the library, which you do not appear to have" |
|
2923 |
- echo "*** because a test_compile did reveal that the linker did not use this one" |
|
2924 |
- echo "*** as a dynamic dependency that programs can get resolved with at runtime." |
|
2920 |
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then |
|
2921 |
+ case " $predeps $postdeps " in |
|
2922 |
+ *" $i "*) |
|
2923 |
+ newdeplibs="$newdeplibs $i" |
|
2924 |
+ i="" |
|
2925 |
+ ;; |
|
2926 |
+ esac |
|
2927 |
+ fi |
|
2928 |
+ if test -n "$i" ; then |
|
2929 |
+ libname=`eval \\$echo \"$libname_spec\"` |
|
2930 |
+ deplib_matches=`eval \\$echo \"$library_names_spec\"` |
|
2931 |
+ set dummy $deplib_matches |
|
2932 |
+ deplib_match=$2 |
|
2933 |
+ if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then |
|
2934 |
+ newdeplibs="$newdeplibs $i" |
|
2935 |
+ else |
|
2936 |
+ droppeddeps=yes |
|
2937 |
+ $echo |
|
2938 |
+ $echo "*** Warning: dynamic linker does not accept needed library $i." |
|
2939 |
+ $echo "*** I have the capability to make that library automatically link in when" |
|
2940 |
+ $echo "*** you link to this library. But I can only do this if you have a" |
|
2941 |
+ $echo "*** shared version of the library, which you do not appear to have" |
|
2942 |
+ $echo "*** because a test_compile did reveal that the linker did not use this one" |
|
2943 |
+ $echo "*** as a dynamic dependency that programs can get resolved with at runtime." |
|
2944 |
+ fi |
|
2925 | 2945 |
fi |
2926 | 2946 |
else |
2927 | 2947 |
droppeddeps=yes |
2928 |
- echo |
|
2929 |
- echo "*** Warning! Library $i is needed by this library but I was not able to" |
|
2930 |
- echo "*** make it link in! You will probably need to install it or some" |
|
2931 |
- echo "*** library that it depends on before this library will be fully" |
|
2932 |
- echo "*** functional. Installing it before continuing would be even better." |
|
2948 |
+ $echo |
|
2949 |
+ $echo "*** Warning! Library $i is needed by this library but I was not able to" |
|
2950 |
+ $echo "*** make it link in! You will probably need to install it or some" |
|
2951 |
+ $echo "*** library that it depends on before this library will be fully" |
|
2952 |
+ $echo "*** functional. Installing it before continuing would be even better." |
|
2933 | 2953 |
fi |
2934 | 2954 |
else |
2935 | 2955 |
newdeplibs="$newdeplibs $i" |
... | ... |
@@ -2941,13 +3968,22 @@ EOF |
2941 | 2941 |
set dummy $deplibs_check_method |
2942 | 2942 |
file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` |
2943 | 2943 |
for a_deplib in $deplibs; do |
2944 |
- name="`expr $a_deplib : '-l\(.*\)'`" |
|
2944 |
+ name=`expr $a_deplib : '-l\(.*\)'` |
|
2945 | 2945 |
# If $name is empty we are operating on a -L argument. |
2946 |
- if test -n "$name" && test "$name" != "0"; then |
|
2947 |
- libname=`eval \\$echo \"$libname_spec\"` |
|
2948 |
- for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do |
|
2949 |
- potential_libs=`ls $i/$libname[.-]* 2>/dev/null` |
|
2950 |
- for potent_lib in $potential_libs; do |
|
2946 |
+ if test "$name" != "" && test "$name" != "0"; then |
|
2947 |
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then |
|
2948 |
+ case " $predeps $postdeps " in |
|
2949 |
+ *" $a_deplib "*) |
|
2950 |
+ newdeplibs="$newdeplibs $a_deplib" |
|
2951 |
+ a_deplib="" |
|
2952 |
+ ;; |
|
2953 |
+ esac |
|
2954 |
+ fi |
|
2955 |
+ if test -n "$a_deplib" ; then |
|
2956 |
+ libname=`eval \\$echo \"$libname_spec\"` |
|
2957 |
+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do |
|
2958 |
+ potential_libs=`ls $i/$libname[.-]* 2>/dev/null` |
|
2959 |
+ for potent_lib in $potential_libs; do |
|
2951 | 2960 |
# Follow soft links. |
2952 | 2961 |
if ls -lLd "$potent_lib" 2>/dev/null \ |
2953 | 2962 |
| grep " -> " >/dev/null; then |
... | ... |
@@ -2960,34 +3996,35 @@ EOF |
2960 | 2960 |
# but so what? |
2961 | 2961 |
potlib="$potent_lib" |
2962 | 2962 |
while test -h "$potlib" 2>/dev/null; do |
2963 |
- potliblink=`ls -ld $potlib | sed 's/.* -> //'` |
|
2963 |
+ potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` |
|
2964 | 2964 |
case $potliblink in |
2965 | 2965 |
[\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; |
2966 | 2966 |
*) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; |
2967 | 2967 |
esac |
2968 | 2968 |
done |
2969 | 2969 |
if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ |
2970 |
- | sed 10q \ |
|
2971 |
- | egrep "$file_magic_regex" > /dev/null; then |
|
2970 |
+ | ${SED} 10q \ |
|
2971 |
+ | $EGREP "$file_magic_regex" > /dev/null; then |
|
2972 | 2972 |
newdeplibs="$newdeplibs $a_deplib" |
2973 | 2973 |
a_deplib="" |
2974 | 2974 |
break 2 |
2975 | 2975 |
fi |
2976 |
- done |
|
2977 |
- done |
|
2976 |
+ done |
|
2977 |
+ done |
|
2978 |
+ fi |
|
2978 | 2979 |
if test -n "$a_deplib" ; then |
2979 | 2980 |
droppeddeps=yes |
2980 |
- echo |
|
2981 |
- echo "*** Warning: linker path does not have real file for library $a_deplib." |
|
2982 |
- echo "*** I have the capability to make that library automatically link in when" |
|
2983 |
- echo "*** you link to this library. But I can only do this if you have a" |
|
2984 |
- echo "*** shared version of the library, which you do not appear to have" |
|
2985 |
- echo "*** because I did check the linker path looking for a file starting" |
|
2981 |
+ $echo |
|
2982 |
+ $echo "*** Warning: linker path does not have real file for library $a_deplib." |
|
2983 |
+ $echo "*** I have the capability to make that library automatically link in when" |
|
2984 |
+ $echo "*** you link to this library. But I can only do this if you have a" |
|
2985 |
+ $echo "*** shared version of the library, which you do not appear to have" |
|
2986 |
+ $echo "*** because I did check the linker path looking for a file starting" |
|
2986 | 2987 |
if test -z "$potlib" ; then |
2987 |
- echo "*** with $libname but no candidates were found. (...for file magic test)" |
|
2988 |
+ $echo "*** with $libname but no candidates were found. (...for file magic test)" |
|
2988 | 2989 |
else |
2989 |
- echo "*** with $libname and none of the candidates passed a file format test" |
|
2990 |
- echo "*** using a file magic. Last file checked: $potlib" |
|
2990 |
+ $echo "*** with $libname and none of the candidates passed a file format test" |
|
2991 |
+ $echo "*** using a file magic. Last file checked: $potlib" |
|
2991 | 2992 |
fi |
2992 | 2993 |
fi |
2993 | 2994 |
else |
... | ... |
@@ -3000,36 +4037,46 @@ EOF |
3000 | 3000 |
set dummy $deplibs_check_method |
3001 | 3001 |
match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` |
3002 | 3002 |
for a_deplib in $deplibs; do |
3003 |
- name="`expr $a_deplib : '-l\(.*\)'`" |
|
3003 |
+ name=`expr $a_deplib : '-l\(.*\)'` |
|
3004 | 3004 |
# If $name is empty we are operating on a -L argument. |
3005 | 3005 |
if test -n "$name" && test "$name" != "0"; then |
3006 |
- libname=`eval \\$echo \"$libname_spec\"` |
|
3007 |
- for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do |
|
3008 |
- potential_libs=`ls $i/$libname[.-]* 2>/dev/null` |
|
3009 |
- for potent_lib in $potential_libs; do |
|
3010 |
- potlib="$potent_lib" # see symlink-check below in file_magic test |
|
3011 |
- if eval echo \"$potent_lib\" 2>/dev/null \ |
|
3012 |
- | sed 10q \ |
|
3013 |
- | egrep "$match_pattern_regex" > /dev/null; then |
|
3014 |
- newdeplibs="$newdeplibs $a_deplib" |
|
3015 |
- a_deplib="" |
|
3016 |
- break 2 |
|
3017 |
- fi |
|
3006 |
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then |
|
3007 |
+ case " $predeps $postdeps " in |
|
3008 |
+ *" $a_deplib "*) |
|
3009 |
+ newdeplibs="$newdeplibs $a_deplib" |
|
3010 |
+ a_deplib="" |
|
3011 |
+ ;; |
|
3012 |
+ esac |
|
3013 |
+ fi |
|
3014 |
+ if test -n "$a_deplib" ; then |
|
3015 |
+ libname=`eval \\$echo \"$libname_spec\"` |
|
3016 |
+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do |
|
3017 |
+ potential_libs=`ls $i/$libname[.-]* 2>/dev/null` |
|
3018 |
+ for potent_lib in $potential_libs; do |
|
3019 |
+ potlib="$potent_lib" # see symlink-check above in file_magic test |
|
3020 |
+ if eval $echo \"$potent_lib\" 2>/dev/null \ |
|
3021 |
+ | ${SED} 10q \ |
|
3022 |
+ | $EGREP "$match_pattern_regex" > /dev/null; then |
|
3023 |
+ newdeplibs="$newdeplibs $a_deplib" |
|
3024 |
+ a_deplib="" |
|
3025 |
+ break 2 |
|
3026 |
+ fi |
|
3027 |
+ done |
|
3018 | 3028 |
done |
3019 |
- done |
|
3029 |
+ fi |
|
3020 | 3030 |
if test -n "$a_deplib" ; then |
3021 | 3031 |
droppeddeps=yes |
3022 |
- echo |
|
3023 |
- echo "*** Warning: linker path does not have real file for library $a_deplib." |
|
3024 |
- echo "*** I have the capability to make that library automatically link in when" |
|
3025 |
- echo "*** you link to this library. But I can only do this if you have a" |
|
3026 |
- echo "*** shared version of the library, which you do not appear to have" |
|
3027 |
- echo "*** because I did check the linker path looking for a file starting" |
|
3032 |
+ $echo |
|
3033 |
+ $echo "*** Warning: linker path does not have real file for library $a_deplib." |
|
3034 |
+ $echo "*** I have the capability to make that library automatically link in when" |
|
3035 |
+ $echo "*** you link to this library. But I can only do this if you have a" |
|
3036 |
+ $echo "*** shared version of the library, which you do not appear to have" |
|
3037 |
+ $echo "*** because I did check the linker path looking for a file starting" |
|
3028 | 3038 |
if test -z "$potlib" ; then |
3029 |
- echo "*** with $libname but no candidates were found. (...for regex pattern test)" |
|
3039 |
+ $echo "*** with $libname but no candidates were found. (...for regex pattern test)" |
|
3030 | 3040 |
else |
3031 |
- echo "*** with $libname and none of the candidates passed a file format test" |
|
3032 |
- echo "*** using a regex pattern. Last file checked: $potlib" |
|
3041 |
+ $echo "*** with $libname and none of the candidates passed a file format test" |
|
3042 |
+ $echo "*** using a regex pattern. Last file checked: $potlib" |
|
3033 | 3043 |
fi |
3034 | 3044 |
fi |
3035 | 3045 |
else |
... | ... |
@@ -3040,16 +4087,23 @@ EOF |
3040 | 3040 |
;; |
3041 | 3041 |
none | unknown | *) |
3042 | 3042 |
newdeplibs="" |
3043 |
- if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ |
|
3044 |
- -e 's/ -[LR][^ ]*//g' -e 's/[ ]//g' | |
|
3045 |
- grep . >/dev/null; then |
|
3046 |
- echo |
|
3043 |
+ tmp_deplibs=`$echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ |
|
3044 |
+ -e 's/ -[LR][^ ]*//g'` |
|
3045 |
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then |
|
3046 |
+ for i in $predeps $postdeps ; do |
|
3047 |
+ # can't use Xsed below, because $i might contain '/' |
|
3048 |
+ tmp_deplibs=`$echo "X $tmp_deplibs" | ${SED} -e "1s,^X,," -e "s,$i,,"` |
|
3049 |
+ done |
|
3050 |
+ fi |
|
3051 |
+ if $echo "X $tmp_deplibs" | $Xsed -e 's/[ ]//g' \ |
|
3052 |
+ | grep . >/dev/null; then |
|
3053 |
+ $echo |
|
3047 | 3054 |
if test "X$deplibs_check_method" = "Xnone"; then |
3048 |
- echo "*** Warning: inter-library dependencies are not supported in this platform." |
|
3055 |
+ $echo "*** Warning: inter-library dependencies are not supported in this platform." |
|
3049 | 3056 |
else |
3050 |
- echo "*** Warning: inter-library dependencies are not known to be supported." |
|
3057 |
+ $echo "*** Warning: inter-library dependencies are not known to be supported." |
|
3051 | 3058 |
fi |
3052 |
- echo "*** All declared inter-library dependencies are being dropped." |
|
3059 |
+ $echo "*** All declared inter-library dependencies are being dropped." |
|
3053 | 3060 |
droppeddeps=yes |
3054 | 3061 |
fi |
3055 | 3062 |
;; |
... | ... |
@@ -3069,17 +4123,17 @@ EOF |
3069 | 3069 |
|
3070 | 3070 |
if test "$droppeddeps" = yes; then |
3071 | 3071 |
if test "$module" = yes; then |
3072 |
- echo |
|
3073 |
- echo "*** Warning: libtool could not satisfy all declared inter-library" |
|
3074 |
- echo "*** dependencies of module $libname. Therefore, libtool will create" |
|
3075 |
- echo "*** a static module, that should work as long as the dlopening" |
|
3076 |
- echo "*** application is linked with the -dlopen flag." |
|
3072 |
+ $echo |
|
3073 |
+ $echo "*** Warning: libtool could not satisfy all declared inter-library" |
|
3074 |
+ $echo "*** dependencies of module $libname. Therefore, libtool will create" |
|
3075 |
+ $echo "*** a static module, that should work as long as the dlopening" |
|
3076 |
+ $echo "*** application is linked with the -dlopen flag." |
|
3077 | 3077 |
if test -z "$global_symbol_pipe"; then |
3078 |
- echo |
|
3079 |
- echo "*** However, this would only work if libtool was able to extract symbol" |
|
3080 |
- echo "*** lists from a program, using \`nm' or equivalent, but libtool could" |
|
3081 |
- echo "*** not find such a program. So, this module is probably useless." |
|
3082 |
- echo "*** \`nm' from GNU binutils and a full rebuild may help." |
|
3078 |
+ $echo |
|
3079 |
+ $echo "*** However, this would only work if libtool was able to extract symbol" |
|
3080 |
+ $echo "*** lists from a program, using \`nm' or equivalent, but libtool could" |
|
3081 |
+ $echo "*** not find such a program. So, this module is probably useless." |
|
3082 |
+ $echo "*** \`nm' from GNU binutils and a full rebuild may help." |
|
3083 | 3083 |
fi |
3084 | 3084 |
if test "$build_old_libs" = no; then |
3085 | 3085 |
oldlibs="$output_objdir/$libname.$libext" |
... | ... |
@@ -3089,16 +4143,16 @@ EOF |
3089 | 3089 |
build_libtool_libs=no |
3090 | 3090 |
fi |
3091 | 3091 |
else |
3092 |
- echo "*** The inter-library dependencies that have been dropped here will be" |
|
3093 |
- echo "*** automatically added whenever a program is linked with this library" |
|
3094 |
- echo "*** or is declared to -dlopen it." |
|
3095 |
- |
|
3096 |
- if test $allow_undefined = no; then |
|
3097 |
- echo |
|
3098 |
- echo "*** Since this library must not contain undefined symbols," |
|
3099 |
- echo "*** because either the platform does not support them or" |
|
3100 |
- echo "*** it was explicitly requested with -no-undefined," |
|
3101 |
- echo "*** libtool will only create a static version of it." |
|
3092 |
+ $echo "*** The inter-library dependencies that have been dropped here will be" |
|
3093 |
+ $echo "*** automatically added whenever a program is linked with this library" |
|
3094 |
+ $echo "*** or is declared to -dlopen it." |
|
3095 |
+ |
|
3096 |
+ if test "$allow_undefined" = no; then |
|
3097 |
+ $echo |
|
3098 |
+ $echo "*** Since this library must not contain undefined symbols," |
|
3099 |
+ $echo "*** because either the platform does not support them or" |
|
3100 |
+ $echo "*** it was explicitly requested with -no-undefined," |
|
3101 |
+ $echo "*** libtool will only create a static version of it." |
|
3102 | 3102 |
if test "$build_old_libs" = no; then |
3103 | 3103 |
oldlibs="$output_objdir/$libname.$libext" |
3104 | 3104 |
build_libtool_libs=module |
... | ... |
@@ -3113,6 +4167,35 @@ EOF |
3113 | 3113 |
deplibs=$newdeplibs |
3114 | 3114 |
fi |
3115 | 3115 |
|
3116 |
+ |
|
3117 |
+ # move library search paths that coincide with paths to not yet |
|
3118 |
+ # installed libraries to the beginning of the library search list |
|
3119 |
+ new_libs= |
|
3120 |
+ for path in $notinst_path; do |
|
3121 |
+ case " $new_libs " in |
|
3122 |
+ *" -L$path/$objdir "*) ;; |
|
3123 |
+ *) |
|
3124 |
+ case " $deplibs " in |
|
3125 |
+ *" -L$path/$objdir "*) |
|
3126 |
+ new_libs="$new_libs -L$path/$objdir" ;; |
|
3127 |
+ esac |
|
3128 |
+ ;; |
|
3129 |
+ esac |
|
3130 |
+ done |
|
3131 |
+ for deplib in $deplibs; do |
|
3132 |
+ case $deplib in |
|
3133 |
+ -L*) |
|
3134 |
+ case " $new_libs " in |
|
3135 |
+ *" $deplib "*) ;; |
|
3136 |
+ *) new_libs="$new_libs $deplib" ;; |
|
3137 |
+ esac |
|
3138 |
+ ;; |
|
3139 |
+ *) new_libs="$new_libs $deplib" ;; |
|
3140 |
+ esac |
|
3141 |
+ done |
|
3142 |
+ deplibs="$new_libs" |
|
3143 |
+ |
|
3144 |
+ |
|
3116 | 3145 |
# All the library-specific variables (install_libdir is set above). |
3117 | 3146 |
library_names= |
3118 | 3147 |
old_library= |
... | ... |
@@ -3120,7 +4203,7 @@ EOF |
3120 | 3120 |
|
3121 | 3121 |
# Test again, we may have decided not to build it any more |
3122 | 3122 |
if test "$build_libtool_libs" = yes; then |
3123 |
- if test $hardcode_into_libs = yes; then |
|
3123 |
+ if test "$hardcode_into_libs" = yes; then |
|
3124 | 3124 |
# Hardcode the library paths |
3125 | 3125 |
hardcode_libdirs= |
3126 | 3126 |
dep_rpath= |
... | ... |
@@ -3156,7 +4239,11 @@ EOF |
3156 | 3156 |
if test -n "$hardcode_libdir_separator" && |
3157 | 3157 |
test -n "$hardcode_libdirs"; then |
3158 | 3158 |
libdir="$hardcode_libdirs" |
3159 |
- eval dep_rpath=\"$hardcode_libdir_flag_spec\" |
|
3159 |
+ if test -n "$hardcode_libdir_flag_spec_ld"; then |
|
3160 |
+ eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" |
|
3161 |
+ else |
|
3162 |
+ eval dep_rpath=\"$hardcode_libdir_flag_spec\" |
|
3163 |
+ fi |
|
3160 | 3164 |
fi |
3161 | 3165 |
if test -n "$runpath_var" && test -n "$perm_rpath"; then |
3162 | 3166 |
# We should set the runpath_var. |
... | ... |
@@ -3176,6 +4263,7 @@ EOF |
3176 | 3176 |
fi |
3177 | 3177 |
|
3178 | 3178 |
# Get the real and link names of the library. |
3179 |
+ eval shared_ext=\"$shrext_cmds\" |
|
3179 | 3180 |
eval library_names=\"$library_names_spec\" |
3180 | 3181 |
set dummy $library_names |
3181 | 3182 |
realname="$2" |
... | ... |
@@ -3186,31 +4274,17 @@ EOF |
3186 | 3186 |
else |
3187 | 3187 |
soname="$realname" |
3188 | 3188 |
fi |
3189 |
- test -z "$dlname" && dlname=$soname |
|
3189 |
+ if test -z "$dlname"; then |
|
3190 |
+ dlname=$soname |
|
3191 |
+ fi |
|
3190 | 3192 |
|
3191 | 3193 |
lib="$output_objdir/$realname" |
3194 |
+ linknames= |
|
3192 | 3195 |
for link |
3193 | 3196 |
do |
3194 | 3197 |
linknames="$linknames $link" |
3195 | 3198 |
done |
3196 | 3199 |
|
3197 |
- # Ensure that we have .o objects for linkers which dislike .lo |
|
3198 |
- # (e.g. aix) in case we are running --disable-static |
|
3199 |
- for obj in $libobjs; do |
|
3200 |
- xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` |
|
3201 |
- if test "X$xdir" = "X$obj"; then |
|
3202 |
- xdir="." |
|
3203 |
- else |
|
3204 |
- xdir="$xdir" |
|
3205 |
- fi |
|
3206 |
- baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` |
|
3207 |
- oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` |
|
3208 |
- if test ! -f $xdir/$oldobj; then |
|
3209 |
- $show "(cd $xdir && ${LN_S} $baseobj $oldobj)" |
|
3210 |
- $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $? |
|
3211 |
- fi |
|
3212 |
- done |
|
3213 |
- |
|
3214 | 3200 |
# Use standard objects if they are pic |
3215 | 3201 |
test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` |
3216 | 3202 |
|
... | ... |
@@ -3220,17 +4294,29 @@ EOF |
3220 | 3220 |
$show "generating symbol list for \`$libname.la'" |
3221 | 3221 |
export_symbols="$output_objdir/$libname.exp" |
3222 | 3222 |
$run $rm $export_symbols |
3223 |
- eval cmds=\"$export_symbols_cmds\" |
|
3223 |
+ cmds=$export_symbols_cmds |
|
3224 | 3224 |
save_ifs="$IFS"; IFS='~' |
3225 | 3225 |
for cmd in $cmds; do |
3226 | 3226 |
IFS="$save_ifs" |
3227 |
- $show "$cmd" |
|
3228 |
- $run eval "$cmd" || exit $? |
|
3227 |
+ eval cmd=\"$cmd\" |
|
3228 |
+ if len=`expr "X$cmd" : ".*"` && |
|
3229 |
+ test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then |
|
3230 |
+ $show "$cmd" |
|
3231 |
+ $run eval "$cmd" || exit $? |
|
3232 |
+ skipped_export=false |
|
3233 |
+ else |
|
3234 |
+ # The command line is too long to execute in one step. |
|
3235 |
+ $show "using reloadable object file for export list..." |
|
3236 |
+ skipped_export=: |
|
3237 |
+ # Break out early, otherwise skipped_export may be |
|
3238 |
+ # set to false by a later but shorter cmd. |
|
3239 |
+ break |
|
3240 |
+ fi |
|
3229 | 3241 |
done |
3230 | 3242 |
IFS="$save_ifs" |
3231 | 3243 |
if test -n "$export_symbols_regex"; then |
3232 |
- $show "egrep -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\"" |
|
3233 |
- $run eval 'egrep -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' |
|
3244 |
+ $show "$EGREP -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\"" |
|
3245 |
+ $run eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' |
|
3234 | 3246 |
$show "$mv \"${export_symbols}T\" \"$export_symbols\"" |
3235 | 3247 |
$run eval '$mv "${export_symbols}T" "$export_symbols"' |
3236 | 3248 |
fi |
... | ... |
@@ -3241,46 +4327,30 @@ EOF |
3241 | 3241 |
$run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"' |
3242 | 3242 |
fi |
3243 | 3243 |
|
3244 |
+ tmp_deplibs= |
|
3245 |
+ for test_deplib in $deplibs; do |
|
3246 |
+ case " $convenience " in |
|
3247 |
+ *" $test_deplib "*) ;; |
|
3248 |
+ *) |
|
3249 |
+ tmp_deplibs="$tmp_deplibs $test_deplib" |
|
3250 |
+ ;; |
|
3251 |
+ esac |
|
3252 |
+ done |
|
3253 |
+ deplibs="$tmp_deplibs" |
|
3254 |
+ |
|
3244 | 3255 |
if test -n "$convenience"; then |
3245 | 3256 |
if test -n "$whole_archive_flag_spec"; then |
3257 |
+ save_libobjs=$libobjs |
|
3246 | 3258 |
eval libobjs=\"\$libobjs $whole_archive_flag_spec\" |
3247 | 3259 |
else |
3248 | 3260 |
gentop="$output_objdir/${outputname}x" |
3249 |
- $show "${rm}r $gentop" |
|
3250 |
- $run ${rm}r "$gentop" |
|
3251 |
- $show "mkdir $gentop" |
|
3252 |
- $run mkdir "$gentop" |
|
3253 |
- status=$? |
|
3254 |
- if test $status -ne 0 && test ! -d "$gentop"; then |
|
3255 |
- exit $status |
|
3256 |
- fi |
|
3257 | 3261 |
generated="$generated $gentop" |
3258 | 3262 |
|
3259 |
- for xlib in $convenience; do |
|
3260 |
- # Extract the objects. |
|
3261 |
- case $xlib in |
|
3262 |
- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; |
|
3263 |
- *) xabs=`pwd`"/$xlib" ;; |
|
3264 |
- esac |
|
3265 |
- xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` |
|
3266 |
- xdir="$gentop/$xlib" |
|
3267 |
- |
|
3268 |
- $show "${rm}r $xdir" |
|
3269 |
- $run ${rm}r "$xdir" |
|
3270 |
- $show "mkdir $xdir" |
|
3271 |
- $run mkdir "$xdir" |
|
3272 |
- status=$? |
|
3273 |
- if test $status -ne 0 && test ! -d "$xdir"; then |
|
3274 |
- exit $status |
|
3275 |
- fi |
|
3276 |
- $show "(cd $xdir && $AR x $xabs)" |
|
3277 |
- $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? |
|
3278 |
- |
|
3279 |
- libobjs="$libobjs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP` |
|
3280 |
- done |
|
3263 |
+ func_extract_archives $gentop $convenience |
|
3264 |
+ libobjs="$libobjs $func_extract_archives_result" |
|
3281 | 3265 |
fi |
3282 | 3266 |
fi |
3283 |
- |
|
3267 |
+ |
|
3284 | 3268 |
if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then |
3285 | 3269 |
eval flag=\"$thread_safe_flag_spec\" |
3286 | 3270 |
linker_flags="$linker_flags $flag" |
... | ... |
@@ -3292,23 +4362,175 @@ EOF |
3292 | 3292 |
fi |
3293 | 3293 |
|
3294 | 3294 |
# Do each of the archive commands. |
3295 |
+ if test "$module" = yes && test -n "$module_cmds" ; then |
|
3296 |
+ if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then |
|
3297 |
+ eval test_cmds=\"$module_expsym_cmds\" |
|
3298 |
+ cmds=$module_expsym_cmds |
|
3299 |
+ else |
|
3300 |
+ eval test_cmds=\"$module_cmds\" |
|
3301 |
+ cmds=$module_cmds |
|
3302 |
+ fi |
|
3303 |
+ else |
|
3295 | 3304 |
if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then |
3296 |
- eval cmds=\"$archive_expsym_cmds\" |
|
3305 |
+ eval test_cmds=\"$archive_expsym_cmds\" |
|
3306 |
+ cmds=$archive_expsym_cmds |
|
3297 | 3307 |
else |
3298 |
- eval cmds=\"$archive_cmds\" |
|
3308 |
+ eval test_cmds=\"$archive_cmds\" |
|
3309 |
+ cmds=$archive_cmds |
|
3310 |
+ fi |
|
3311 |
+ fi |
|
3312 |
+ |
|
3313 |
+ if test "X$skipped_export" != "X:" && |
|
3314 |
+ len=`expr "X$test_cmds" : ".*" 2>/dev/null` && |
|
3315 |
+ test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then |
|
3316 |
+ : |
|
3317 |
+ else |
|
3318 |
+ # The command line is too long to link in one step, link piecewise. |
|
3319 |
+ $echo "creating reloadable object files..." |
|
3320 |
+ |
|
3321 |
+ # Save the value of $output and $libobjs because we want to |
|
3322 |
+ # use them later. If we have whole_archive_flag_spec, we |
|
3323 |
+ # want to use save_libobjs as it was before |
|
3324 |
+ # whole_archive_flag_spec was expanded, because we can't |
|
3325 |
+ # assume the linker understands whole_archive_flag_spec. |
|
3326 |
+ # This may have to be revisited, in case too many |
|
3327 |
+ # convenience libraries get linked in and end up exceeding |
|
3328 |
+ # the spec. |
|
3329 |
+ if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then |
|
3330 |
+ save_libobjs=$libobjs |
|
3331 |
+ fi |
|
3332 |
+ save_output=$output |
|
3333 |
+ output_la=`$echo "X$output" | $Xsed -e "$basename"` |
|
3334 |
+ |
|
3335 |
+ # Clear the reloadable object creation command queue and |
|
3336 |
+ # initialize k to one. |
|
3337 |
+ test_cmds= |
|
3338 |
+ concat_cmds= |
|
3339 |
+ objlist= |
|
3340 |
+ delfiles= |
|
3341 |
+ last_robj= |
|
3342 |
+ k=1 |
|
3343 |
+ output=$output_objdir/$output_la-${k}.$objext |
|
3344 |
+ # Loop over the list of objects to be linked. |
|
3345 |
+ for obj in $save_libobjs |
|
3346 |
+ do |
|
3347 |
+ eval test_cmds=\"$reload_cmds $objlist $last_robj\" |
|
3348 |
+ if test "X$objlist" = X || |
|
3349 |
+ { len=`expr "X$test_cmds" : ".*" 2>/dev/null` && |
|
3350 |
+ test "$len" -le "$max_cmd_len"; }; then |
|
3351 |
+ objlist="$objlist $obj" |
|
3352 |
+ else |
|
3353 |
+ # The command $test_cmds is almost too long, add a |
|
3354 |
+ # command to the queue. |
|
3355 |
+ if test "$k" -eq 1 ; then |
|
3356 |
+ # The first file doesn't have a previous command to add. |
|
3357 |
+ eval concat_cmds=\"$reload_cmds $objlist $last_robj\" |
|
3358 |
+ else |
|
3359 |
+ # All subsequent reloadable object files will link in |
|
3360 |
+ # the last one created. |
|
3361 |
+ eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\" |
|
3362 |
+ fi |
|
3363 |
+ last_robj=$output_objdir/$output_la-${k}.$objext |
|
3364 |
+ k=`expr $k + 1` |
|
3365 |
+ output=$output_objdir/$output_la-${k}.$objext |
|
3366 |
+ objlist=$obj |
|
3367 |
+ len=1 |
|
3368 |
+ fi |
|
3369 |
+ done |
|
3370 |
+ # Handle the remaining objects by creating one last |
|
3371 |
+ # reloadable object file. All subsequent reloadable object |
|
3372 |
+ # files will link in the last one created. |
|
3373 |
+ test -z "$concat_cmds" || concat_cmds=$concat_cmds~ |
|
3374 |
+ eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" |
|
3375 |
+ |
|
3376 |
+ if ${skipped_export-false}; then |
|
3377 |
+ $show "generating symbol list for \`$libname.la'" |
|
3378 |
+ export_symbols="$output_objdir/$libname.exp" |
|
3379 |
+ $run $rm $export_symbols |
|
3380 |
+ libobjs=$output |
|
3381 |
+ # Append the command to create the export file. |
|
3382 |
+ eval concat_cmds=\"\$concat_cmds~$export_symbols_cmds\" |
|
3383 |
+ fi |
|
3384 |
+ |
|
3385 |
+ # Set up a command to remove the reloadable object files |
|
3386 |
+ # after they are used. |
|
3387 |
+ i=0 |
|
3388 |
+ while test "$i" -lt "$k" |
|
3389 |
+ do |
|
3390 |
+ i=`expr $i + 1` |
|
3391 |
+ delfiles="$delfiles $output_objdir/$output_la-${i}.$objext" |
|
3392 |
+ done |
|
3393 |
+ |
|
3394 |
+ $echo "creating a temporary reloadable object file: $output" |
|
3395 |
+ |
|
3396 |
+ # Loop through the commands generated above and execute them. |
|
3397 |
+ save_ifs="$IFS"; IFS='~' |
|
3398 |
+ for cmd in $concat_cmds; do |
|
3399 |
+ IFS="$save_ifs" |
|
3400 |
+ $show "$cmd" |
|
3401 |
+ $run eval "$cmd" || exit $? |
|
3402 |
+ done |
|
3403 |
+ IFS="$save_ifs" |
|
3404 |
+ |
|
3405 |
+ libobjs=$output |
|
3406 |
+ # Restore the value of output. |
|
3407 |
+ output=$save_output |
|
3408 |
+ |
|
3409 |
+ if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then |
|
3410 |
+ eval libobjs=\"\$libobjs $whole_archive_flag_spec\" |
|
3411 |
+ fi |
|
3412 |
+ # Expand the library linking commands again to reset the |
|
3413 |
+ # value of $libobjs for piecewise linking. |
|
3414 |
+ |
|
3415 |
+ # Do each of the archive commands. |
|
3416 |
+ if test "$module" = yes && test -n "$module_cmds" ; then |
|
3417 |
+ if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then |
|
3418 |
+ cmds=$module_expsym_cmds |
|
3419 |
+ else |
|
3420 |
+ cmds=$module_cmds |
|
3421 |
+ fi |
|
3422 |
+ else |
|
3423 |
+ if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then |
|
3424 |
+ cmds=$archive_expsym_cmds |
|
3425 |
+ else |
|
3426 |
+ cmds=$archive_cmds |
|
3427 |
+ fi |
|
3428 |
+ fi |
|
3429 |
+ |
|
3430 |
+ # Append the command to remove the reloadable object files |
|
3431 |
+ # to the just-reset $cmds. |
|
3432 |
+ eval cmds=\"\$cmds~\$rm $delfiles\" |
|
3299 | 3433 |
fi |
3300 | 3434 |
save_ifs="$IFS"; IFS='~' |
3301 | 3435 |
for cmd in $cmds; do |
3302 | 3436 |
IFS="$save_ifs" |
3437 |
+ eval cmd=\"$cmd\" |
|
3303 | 3438 |
$show "$cmd" |
3304 |
- $run eval "$cmd" || exit $? |
|
3439 |
+ $run eval "$cmd" || { |
|
3440 |
+ lt_exit=$? |
|
3441 |
+ |
|
3442 |
+ # Restore the uninstalled library and exit |
|
3443 |
+ if test "$mode" = relink; then |
|
3444 |
+ $run eval '(cd $output_objdir && $rm ${realname}T && $mv ${realname}U $realname)' |
|
3445 |
+ fi |
|
3446 |
+ |
|
3447 |
+ exit $lt_exit |
|
3448 |
+ } |
|
3305 | 3449 |
done |
3306 | 3450 |
IFS="$save_ifs" |
3307 | 3451 |
|
3308 | 3452 |
# Restore the uninstalled library and exit |
3309 | 3453 |
if test "$mode" = relink; then |
3310 | 3454 |
$run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $? |
3311 |
- exit 0 |
|
3455 |
+ |
|
3456 |
+ if test -n "$convenience"; then |
|
3457 |
+ if test -z "$whole_archive_flag_spec"; then |
|
3458 |
+ $show "${rm}r $gentop" |
|
3459 |
+ $run ${rm}r "$gentop" |
|
3460 |
+ fi |
|
3461 |
+ fi |
|
3462 |
+ |
|
3463 |
+ exit $EXIT_SUCCESS |
|
3312 | 3464 |
fi |
3313 | 3465 |
|
3314 | 3466 |
# Create links to the real library. |
... | ... |
@@ -3356,7 +4578,7 @@ EOF |
3356 | 3356 |
*.lo) |
3357 | 3357 |
if test -n "$objs$old_deplibs"; then |
3358 | 3358 |
$echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2 |
3359 |
- exit 1 |
|
3359 |
+ exit $EXIT_FAILURE |
|
3360 | 3360 |
fi |
3361 | 3361 |
libobj="$output" |
3362 | 3362 |
obj=`$echo "X$output" | $Xsed -e "$lo2o"` |
... | ... |
@@ -3385,38 +4607,10 @@ EOF |
3385 | 3385 |
eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\" |
3386 | 3386 |
else |
3387 | 3387 |
gentop="$output_objdir/${obj}x" |
3388 |
- $show "${rm}r $gentop" |
|
3389 |
- $run ${rm}r "$gentop" |
|
3390 |
- $show "mkdir $gentop" |
|
3391 |
- $run mkdir "$gentop" |
|
3392 |
- status=$? |
|
3393 |
- if test $status -ne 0 && test ! -d "$gentop"; then |
|
3394 |
- exit $status |
|
3395 |
- fi |
|
3396 | 3388 |
generated="$generated $gentop" |
3397 | 3389 |
|
3398 |
- for xlib in $convenience; do |
|
3399 |
- # Extract the objects. |
|
3400 |
- case $xlib in |
|
3401 |
- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; |
|
3402 |
- *) xabs=`pwd`"/$xlib" ;; |
|
3403 |
- esac |
|
3404 |
- xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` |
|
3405 |
- xdir="$gentop/$xlib" |
|
3406 |
- |
|
3407 |
- $show "${rm}r $xdir" |
|
3408 |
- $run ${rm}r "$xdir" |
|
3409 |
- $show "mkdir $xdir" |
|
3410 |
- $run mkdir "$xdir" |
|
3411 |
- status=$? |
|
3412 |
- if test $status -ne 0 && test ! -d "$xdir"; then |
|
3413 |
- exit $status |
|
3414 |
- fi |
|
3415 |
- $show "(cd $xdir && $AR x $xabs)" |
|
3416 |
- $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? |
|
3417 |
- |
|
3418 |
- reload_conv_objs="$reload_objs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP` |
|
3419 |
- done |
|
3390 |
+ func_extract_archives $gentop $convenience |
|
3391 |
+ reload_conv_objs="$reload_objs $func_extract_archives_result" |
|
3420 | 3392 |
fi |
3421 | 3393 |
fi |
3422 | 3394 |
|
... | ... |
@@ -3424,10 +4618,11 @@ EOF |
3424 | 3424 |
reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test |
3425 | 3425 |
|
3426 | 3426 |
output="$obj" |
3427 |
- eval cmds=\"$reload_cmds\" |
|
3427 |
+ cmds=$reload_cmds |
|
3428 | 3428 |
save_ifs="$IFS"; IFS='~' |
3429 | 3429 |
for cmd in $cmds; do |
3430 | 3430 |
IFS="$save_ifs" |
3431 |
+ eval cmd=\"$cmd\" |
|
3431 | 3432 |
$show "$cmd" |
3432 | 3433 |
$run eval "$cmd" || exit $? |
3433 | 3434 |
done |
... | ... |
@@ -3440,7 +4635,7 @@ EOF |
3440 | 3440 |
$run ${rm}r $gentop |
3441 | 3441 |
fi |
3442 | 3442 |
|
3443 |
- exit 0 |
|
3443 |
+ exit $EXIT_SUCCESS |
|
3444 | 3444 |
fi |
3445 | 3445 |
|
3446 | 3446 |
if test "$build_libtool_libs" != yes; then |
... | ... |
@@ -3451,37 +4646,24 @@ EOF |
3451 | 3451 |
|
3452 | 3452 |
# Create an invalid libtool object if no PIC, so that we don't |
3453 | 3453 |
# accidentally link it into a program. |
3454 |
- $show "echo timestamp > $libobj" |
|
3455 |
- $run eval "echo timestamp > $libobj" || exit $? |
|
3456 |
- exit 0 |
|
3454 |
+ # $show "echo timestamp > $libobj" |
|
3455 |
+ # $run eval "echo timestamp > $libobj" || exit $? |
|
3456 |
+ exit $EXIT_SUCCESS |
|
3457 | 3457 |
fi |
3458 | 3458 |
|
3459 | 3459 |
if test -n "$pic_flag" || test "$pic_mode" != default; then |
3460 | 3460 |
# Only do commands if we really have different PIC objects. |
3461 | 3461 |
reload_objs="$libobjs $reload_conv_objs" |
3462 | 3462 |
output="$libobj" |
3463 |
- eval cmds=\"$reload_cmds\" |
|
3463 |
+ cmds=$reload_cmds |
|
3464 | 3464 |
save_ifs="$IFS"; IFS='~' |
3465 | 3465 |
for cmd in $cmds; do |
3466 | 3466 |
IFS="$save_ifs" |
3467 |
+ eval cmd=\"$cmd\" |
|
3467 | 3468 |
$show "$cmd" |
3468 | 3469 |
$run eval "$cmd" || exit $? |
3469 | 3470 |
done |
3470 | 3471 |
IFS="$save_ifs" |
3471 |
- else |
|
3472 |
- # Just create a symlink. |
|
3473 |
- $show $rm $libobj |
|
3474 |
- $run $rm $libobj |
|
3475 |
- xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` |
|
3476 |
- if test "X$xdir" = "X$libobj"; then |
|
3477 |
- xdir="." |
|
3478 |
- else |
|
3479 |
- xdir="$xdir" |
|
3480 |
- fi |
|
3481 |
- baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'` |
|
3482 |
- oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` |
|
3483 |
- $show "(cd $xdir && $LN_S $oldobj $baseobj)" |
|
3484 |
- $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $? |
|
3485 | 3472 |
fi |
3486 | 3473 |
|
3487 | 3474 |
if test -n "$gentop"; then |
... | ... |
@@ -3489,12 +4671,12 @@ EOF |
3489 | 3489 |
$run ${rm}r $gentop |
3490 | 3490 |
fi |
3491 | 3491 |
|
3492 |
- exit 0 |
|
3492 |
+ exit $EXIT_SUCCESS |
|
3493 | 3493 |
;; |
3494 | 3494 |
|
3495 | 3495 |
prog) |
3496 | 3496 |
case $host in |
3497 |
- *cygwin*) output=`echo $output | sed -e 's,.exe$,,;s,$,.exe,'` ;; |
|
3497 |
+ *cygwin*) output=`$echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;; |
|
3498 | 3498 |
esac |
3499 | 3499 |
if test -n "$vinfo"; then |
3500 | 3500 |
$echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 |
... | ... |
@@ -3519,6 +4701,45 @@ EOF |
3519 | 3519 |
;; |
3520 | 3520 |
esac |
3521 | 3521 |
|
3522 |
+ case $host in |
|
3523 |
+ *darwin*) |
|
3524 |
+ # Don't allow lazy linking, it breaks C++ global constructors |
|
3525 |
+ if test "$tagname" = CXX ; then |
|
3526 |
+ compile_command="$compile_command ${wl}-bind_at_load" |
|
3527 |
+ finalize_command="$finalize_command ${wl}-bind_at_load" |
|
3528 |
+ fi |
|
3529 |
+ ;; |
|
3530 |
+ esac |
|
3531 |
+ |
|
3532 |
+ |
|
3533 |
+ # move library search paths that coincide with paths to not yet |
|
3534 |
+ # installed libraries to the beginning of the library search list |
|
3535 |
+ new_libs= |
|
3536 |
+ for path in $notinst_path; do |
|
3537 |
+ case " $new_libs " in |
|
3538 |
+ *" -L$path/$objdir "*) ;; |
|
3539 |
+ *) |
|
3540 |
+ case " $compile_deplibs " in |
|
3541 |
+ *" -L$path/$objdir "*) |
|
3542 |
+ new_libs="$new_libs -L$path/$objdir" ;; |
|
3543 |
+ esac |
|
3544 |
+ ;; |
|
3545 |
+ esac |
|
3546 |
+ done |
|
3547 |
+ for deplib in $compile_deplibs; do |
|
3548 |
+ case $deplib in |
|
3549 |
+ -L*) |
|
3550 |
+ case " $new_libs " in |
|
3551 |
+ *" $deplib "*) ;; |
|
3552 |
+ *) new_libs="$new_libs $deplib" ;; |
|
3553 |
+ esac |
|
3554 |
+ ;; |
|
3555 |
+ *) new_libs="$new_libs $deplib" ;; |
|
3556 |
+ esac |
|
3557 |
+ done |
|
3558 |
+ compile_deplibs="$new_libs" |
|
3559 |
+ |
|
3560 |
+ |
|
3522 | 3561 |
compile_command="$compile_command $compile_deplibs" |
3523 | 3562 |
finalize_command="$finalize_command $finalize_deplibs" |
3524 | 3563 |
|
... | ... |
@@ -3563,10 +4784,15 @@ EOF |
3563 | 3563 |
fi |
3564 | 3564 |
case $host in |
3565 | 3565 |
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) |
3566 |
+ testbindir=`$echo "X$libdir" | $Xsed -e 's*/lib$*/bin*'` |
|
3566 | 3567 |
case :$dllsearchpath: in |
3567 | 3568 |
*":$libdir:"*) ;; |
3568 | 3569 |
*) dllsearchpath="$dllsearchpath:$libdir";; |
3569 | 3570 |
esac |
3571 |
+ case :$dllsearchpath: in |
|
3572 |
+ *":$testbindir:"*) ;; |
|
3573 |
+ *) dllsearchpath="$dllsearchpath:$testbindir";; |
|
3574 |
+ esac |
|
3570 | 3575 |
;; |
3571 | 3576 |
esac |
3572 | 3577 |
done |
... | ... |
@@ -3669,31 +4895,43 @@ extern \"C\" { |
3669 | 3669 |
done |
3670 | 3670 |
|
3671 | 3671 |
if test -n "$exclude_expsyms"; then |
3672 |
- $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' |
|
3672 |
+ $run eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' |
|
3673 | 3673 |
$run eval '$mv "$nlist"T "$nlist"' |
3674 | 3674 |
fi |
3675 | 3675 |
|
3676 | 3676 |
if test -n "$export_symbols_regex"; then |
3677 |
- $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T' |
|
3677 |
+ $run eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' |
|
3678 | 3678 |
$run eval '$mv "$nlist"T "$nlist"' |
3679 | 3679 |
fi |
3680 | 3680 |
|
3681 | 3681 |
# Prepare the list of exported symbols |
3682 | 3682 |
if test -z "$export_symbols"; then |
3683 |
- export_symbols="$output_objdir/$output.exp" |
|
3683 |
+ export_symbols="$output_objdir/$outputname.exp" |
|
3684 | 3684 |
$run $rm $export_symbols |
3685 |
- $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' |
|
3685 |
+ $run eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' |
|
3686 |
+ case $host in |
|
3687 |
+ *cygwin* | *mingw* ) |
|
3688 |
+ $run eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' |
|
3689 |
+ $run eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' |
|
3690 |
+ ;; |
|
3691 |
+ esac |
|
3686 | 3692 |
else |
3687 |
- $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' |
|
3688 |
- $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T' |
|
3693 |
+ $run eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' |
|
3694 |
+ $run eval 'grep -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' |
|
3689 | 3695 |
$run eval 'mv "$nlist"T "$nlist"' |
3696 |
+ case $host in |
|
3697 |
+ *cygwin* | *mingw* ) |
|
3698 |
+ $run eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' |
|
3699 |
+ $run eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' |
|
3700 |
+ ;; |
|
3701 |
+ esac |
|
3690 | 3702 |
fi |
3691 | 3703 |
fi |
3692 | 3704 |
|
3693 | 3705 |
for arg in $dlprefiles; do |
3694 | 3706 |
$show "extracting global C symbols from \`$arg'" |
3695 |
- name=`echo "$arg" | sed -e 's%^.*/%%'` |
|
3696 |
- $run eval 'echo ": $name " >> "$nlist"' |
|
3707 |
+ name=`$echo "$arg" | ${SED} -e 's%^.*/%%'` |
|
3708 |
+ $run eval '$echo ": $name " >> "$nlist"' |
|
3697 | 3709 |
$run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" |
3698 | 3710 |
done |
3699 | 3711 |
|
... | ... |
@@ -3702,12 +4940,18 @@ extern \"C\" { |
3702 | 3702 |
test -f "$nlist" || : > "$nlist" |
3703 | 3703 |
|
3704 | 3704 |
if test -n "$exclude_expsyms"; then |
3705 |
- egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T |
|
3705 |
+ $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T |
|
3706 | 3706 |
$mv "$nlist"T "$nlist" |
3707 | 3707 |
fi |
3708 | 3708 |
|
3709 | 3709 |
# Try sorting and uniquifying the output. |
3710 |
- if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then |
|
3710 |
+ if grep -v "^: " < "$nlist" | |
|
3711 |
+ if sort -k 3 </dev/null >/dev/null 2>&1; then |
|
3712 |
+ sort -k 3 |
|
3713 |
+ else |
|
3714 |
+ sort +2 |
|
3715 |
+ fi | |
|
3716 |
+ uniq > "$nlist"S; then |
|
3711 | 3717 |
: |
3712 | 3718 |
else |
3713 | 3719 |
grep -v "^: " < "$nlist" > "$nlist"S |
... | ... |
@@ -3716,7 +4960,7 @@ extern \"C\" { |
3716 | 3716 |
if test -f "$nlist"S; then |
3717 | 3717 |
eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"' |
3718 | 3718 |
else |
3719 |
- echo '/* NONE */' >> "$output_objdir/$dlsyms" |
|
3719 |
+ $echo '/* NONE */' >> "$output_objdir/$dlsyms" |
|
3720 | 3720 |
fi |
3721 | 3721 |
|
3722 | 3722 |
$echo >> "$output_objdir/$dlsyms" "\ |
... | ... |
@@ -3731,7 +4975,26 @@ extern \"C\" { |
3731 | 3731 |
#endif |
3732 | 3732 |
|
3733 | 3733 |
/* The mapping between symbol names and symbols. */ |
3734 |
+" |
|
3735 |
+ |
|
3736 |
+ case $host in |
|
3737 |
+ *cygwin* | *mingw* ) |
|
3738 |
+ $echo >> "$output_objdir/$dlsyms" "\ |
|
3739 |
+/* DATA imports from DLLs on WIN32 can't be const, because |
|
3740 |
+ runtime relocations are performed -- see ld's documentation |
|
3741 |
+ on pseudo-relocs */ |
|
3742 |
+struct { |
|
3743 |
+" |
|
3744 |
+ ;; |
|
3745 |
+ * ) |
|
3746 |
+ $echo >> "$output_objdir/$dlsyms" "\ |
|
3734 | 3747 |
const struct { |
3748 |
+" |
|
3749 |
+ ;; |
|
3750 |
+ esac |
|
3751 |
+ |
|
3752 |
+ |
|
3753 |
+ $echo >> "$output_objdir/$dlsyms" "\ |
|
3735 | 3754 |
const char *name; |
3736 | 3755 |
lt_ptr address; |
3737 | 3756 |
} |
... | ... |
@@ -3768,30 +5031,43 @@ static const void *lt_preloaded_setup() { |
3768 | 3768 |
*-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) |
3769 | 3769 |
case "$compile_command " in |
3770 | 3770 |
*" -static "*) ;; |
3771 |
- *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";; |
|
3771 |
+ *) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND";; |
|
3772 | 3772 |
esac;; |
3773 | 3773 |
*-*-hpux*) |
3774 | 3774 |
case "$compile_command " in |
3775 | 3775 |
*" -static "*) ;; |
3776 |
- *) pic_flag_for_symtable=" $pic_flag -DPIC";; |
|
3776 |
+ *) pic_flag_for_symtable=" $pic_flag";; |
|
3777 | 3777 |
esac |
3778 | 3778 |
esac |
3779 | 3779 |
|
3780 | 3780 |
# Now compile the dynamic symbol file. |
3781 |
- $show "(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" |
|
3782 |
- $run eval '(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? |
|
3781 |
+ $show "(cd $output_objdir && $LTCC $LTCFLAGS -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" |
|
3782 |
+ $run eval '(cd $output_objdir && $LTCC $LTCFLAGS -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? |
|
3783 | 3783 |
|
3784 | 3784 |
# Clean up the generated files. |
3785 | 3785 |
$show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" |
3786 | 3786 |
$run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T" |
3787 | 3787 |
|
3788 | 3788 |
# Transform the symbol file into the correct name. |
3789 |
- compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` |
|
3790 |
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` |
|
3789 |
+ case $host in |
|
3790 |
+ *cygwin* | *mingw* ) |
|
3791 |
+ if test -f "$output_objdir/${outputname}.def" ; then |
|
3792 |
+ compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%"` |
|
3793 |
+ finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%"` |
|
3794 |
+ else |
|
3795 |
+ compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` |
|
3796 |
+ finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` |
|
3797 |
+ fi |
|
3798 |
+ ;; |
|
3799 |
+ * ) |
|
3800 |
+ compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` |
|
3801 |
+ finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` |
|
3802 |
+ ;; |
|
3803 |
+ esac |
|
3791 | 3804 |
;; |
3792 | 3805 |
*) |
3793 | 3806 |
$echo "$modename: unknown suffix for \`$dlsyms'" 1>&2 |
3794 |
- exit 1 |
|
3807 |
+ exit $EXIT_FAILURE |
|
3795 | 3808 |
;; |
3796 | 3809 |
esac |
3797 | 3810 |
else |
... | ... |
@@ -3804,7 +5080,7 @@ static const void *lt_preloaded_setup() { |
3804 | 3804 |
finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` |
3805 | 3805 |
fi |
3806 | 3806 |
|
3807 |
- if test $need_relink = no || test "$build_libtool_libs" != yes; then |
|
3807 |
+ if test "$need_relink" = no || test "$build_libtool_libs" != yes; then |
|
3808 | 3808 |
# Replace the output file specification. |
3809 | 3809 |
compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` |
3810 | 3810 |
link_command="$compile_command$compile_rpath" |
... | ... |
@@ -3812,7 +5088,7 @@ static const void *lt_preloaded_setup() { |
3812 | 3812 |
# We have no uninstalled library dependencies, so finalize right now. |
3813 | 3813 |
$show "$link_command" |
3814 | 3814 |
$run eval "$link_command" |
3815 |
- status=$? |
|
3815 |
+ exit_status=$? |
|
3816 | 3816 |
|
3817 | 3817 |
# Delete the generated files. |
3818 | 3818 |
if test -n "$dlsyms"; then |
... | ... |
@@ -3820,7 +5096,7 @@ static const void *lt_preloaded_setup() { |
3820 | 3820 |
$run $rm "$output_objdir/${outputname}S.${objext}" |
3821 | 3821 |
fi |
3822 | 3822 |
|
3823 |
- exit $status |
|
3823 |
+ exit $exit_status |
|
3824 | 3824 |
fi |
3825 | 3825 |
|
3826 | 3826 |
if test -n "$shlibpath_var"; then |
... | ... |
@@ -3879,7 +5155,7 @@ static const void *lt_preloaded_setup() { |
3879 | 3879 |
# Link the executable and exit |
3880 | 3880 |
$show "$link_command" |
3881 | 3881 |
$run eval "$link_command" || exit $? |
3882 |
- exit 0 |
|
3882 |
+ exit $EXIT_SUCCESS |
|
3883 | 3883 |
fi |
3884 | 3884 |
|
3885 | 3885 |
if test "$hardcode_action" = relink; then |
... | ... |
@@ -3934,10 +5210,10 @@ static const void *lt_preloaded_setup() { |
3934 | 3934 |
fi |
3935 | 3935 |
|
3936 | 3936 |
# Quote $echo for shipping. |
3937 |
- if test "X$echo" = "X$SHELL $0 --fallback-echo"; then |
|
3938 |
- case $0 in |
|
3939 |
- [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";; |
|
3940 |
- *) qecho="$SHELL `pwd`/$0 --fallback-echo";; |
|
3937 |
+ if test "X$echo" = "X$SHELL $progpath --fallback-echo"; then |
|
3938 |
+ case $progpath in |
|
3939 |
+ [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $progpath --fallback-echo";; |
|
3940 |
+ *) qecho="$SHELL `pwd`/$progpath --fallback-echo";; |
|
3941 | 3941 |
esac |
3942 | 3942 |
qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"` |
3943 | 3943 |
else |
... | ... |
@@ -3949,15 +5225,376 @@ static const void *lt_preloaded_setup() { |
3949 | 3949 |
# win32 will think the script is a binary if it has |
3950 | 3950 |
# a .exe suffix, so we strip it off here. |
3951 | 3951 |
case $output in |
3952 |
- *.exe) output=`echo $output|sed 's,.exe$,,'` ;; |
|
3952 |
+ *.exe) output=`$echo $output|${SED} 's,.exe$,,'` ;; |
|
3953 | 3953 |
esac |
3954 | 3954 |
# test for cygwin because mv fails w/o .exe extensions |
3955 | 3955 |
case $host in |
3956 |
- *cygwin*) exeext=.exe ;; |
|
3956 |
+ *cygwin*) |
|
3957 |
+ exeext=.exe |
|
3958 |
+ outputname=`$echo $outputname|${SED} 's,.exe$,,'` ;; |
|
3957 | 3959 |
*) exeext= ;; |
3958 | 3960 |
esac |
3959 |
- $rm $output |
|
3960 |
- trap "$rm $output; exit 1" 1 2 15 |
|
3961 |
+ case $host in |
|
3962 |
+ *cygwin* | *mingw* ) |
|
3963 |
+ output_name=`basename $output` |
|
3964 |
+ output_path=`dirname $output` |
|
3965 |
+ cwrappersource="$output_path/$objdir/lt-$output_name.c" |
|
3966 |
+ cwrapper="$output_path/$output_name.exe" |
|
3967 |
+ $rm $cwrappersource $cwrapper |
|
3968 |
+ trap "$rm $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 |
|
3969 |
+ |
|
3970 |
+ cat > $cwrappersource <<EOF |
|
3971 |
+ |
|
3972 |
+/* $cwrappersource - temporary wrapper executable for $objdir/$outputname |
|
3973 |
+ Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP |
|
3974 |
+ |
|
3975 |
+ The $output program cannot be directly executed until all the libtool |
|
3976 |
+ libraries that it depends on are installed. |
|
3977 |
+ |
|
3978 |
+ This wrapper executable should never be moved out of the build directory. |
|
3979 |
+ If it is, it will not operate correctly. |
|
3980 |
+ |
|
3981 |
+ Currently, it simply execs the wrapper *script* "/bin/sh $output", |
|
3982 |
+ but could eventually absorb all of the scripts functionality and |
|
3983 |
+ exec $objdir/$outputname directly. |
|
3984 |
+*/ |
|
3985 |
+EOF |
|
3986 |
+ cat >> $cwrappersource<<"EOF" |
|
3987 |
+#include <stdio.h> |
|
3988 |
+#include <stdlib.h> |
|
3989 |
+#include <unistd.h> |
|
3990 |
+#include <malloc.h> |
|
3991 |
+#include <stdarg.h> |
|
3992 |
+#include <assert.h> |
|
3993 |
+#include <string.h> |
|
3994 |
+#include <ctype.h> |
|
3995 |
+#include <sys/stat.h> |
|
3996 |
+ |
|
3997 |
+#if defined(PATH_MAX) |
|
3998 |
+# define LT_PATHMAX PATH_MAX |
|
3999 |
+#elif defined(MAXPATHLEN) |
|
4000 |
+# define LT_PATHMAX MAXPATHLEN |
|
4001 |
+#else |
|
4002 |
+# define LT_PATHMAX 1024 |
|
4003 |
+#endif |
|
4004 |
+ |
|
4005 |
+#ifndef DIR_SEPARATOR |
|
4006 |
+# define DIR_SEPARATOR '/' |
|
4007 |
+# define PATH_SEPARATOR ':' |
|
4008 |
+#endif |
|
4009 |
+ |
|
4010 |
+#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ |
|
4011 |
+ defined (__OS2__) |
|
4012 |
+# define HAVE_DOS_BASED_FILE_SYSTEM |
|
4013 |
+# ifndef DIR_SEPARATOR_2 |
|
4014 |
+# define DIR_SEPARATOR_2 '\\' |
|
4015 |
+# endif |
|
4016 |
+# ifndef PATH_SEPARATOR_2 |
|
4017 |
+# define PATH_SEPARATOR_2 ';' |
|
4018 |
+# endif |
|
4019 |
+#endif |
|
4020 |
+ |
|
4021 |
+#ifndef DIR_SEPARATOR_2 |
|
4022 |
+# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) |
|
4023 |
+#else /* DIR_SEPARATOR_2 */ |
|
4024 |
+# define IS_DIR_SEPARATOR(ch) \ |
|
4025 |
+ (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) |
|
4026 |
+#endif /* DIR_SEPARATOR_2 */ |
|
4027 |
+ |
|
4028 |
+#ifndef PATH_SEPARATOR_2 |
|
4029 |
+# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) |
|
4030 |
+#else /* PATH_SEPARATOR_2 */ |
|
4031 |
+# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) |
|
4032 |
+#endif /* PATH_SEPARATOR_2 */ |
|
4033 |
+ |
|
4034 |
+#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) |
|
4035 |
+#define XFREE(stale) do { \ |
|
4036 |
+ if (stale) { free ((void *) stale); stale = 0; } \ |
|
4037 |
+} while (0) |
|
4038 |
+ |
|
4039 |
+/* -DDEBUG is fairly common in CFLAGS. */ |
|
4040 |
+#undef DEBUG |
|
4041 |
+#if defined DEBUGWRAPPER |
|
4042 |
+# define DEBUG(format, ...) fprintf(stderr, format, __VA_ARGS__) |
|
4043 |
+#else |
|
4044 |
+# define DEBUG(format, ...) |
|
4045 |
+#endif |
|
4046 |
+ |
|
4047 |
+const char *program_name = NULL; |
|
4048 |
+ |
|
4049 |
+void * xmalloc (size_t num); |
|
4050 |
+char * xstrdup (const char *string); |
|
4051 |
+const char * base_name (const char *name); |
|
4052 |
+char * find_executable(const char *wrapper); |
|
4053 |
+int check_executable(const char *path); |
|
4054 |
+char * strendzap(char *str, const char *pat); |
|
4055 |
+void lt_fatal (const char *message, ...); |
|
4056 |
+ |
|
4057 |
+int |
|
4058 |
+main (int argc, char *argv[]) |
|
4059 |
+{ |
|
4060 |
+ char **newargz; |
|
4061 |
+ int i; |
|
4062 |
+ |
|
4063 |
+ program_name = (char *) xstrdup (base_name (argv[0])); |
|
4064 |
+ DEBUG("(main) argv[0] : %s\n",argv[0]); |
|
4065 |
+ DEBUG("(main) program_name : %s\n",program_name); |
|
4066 |
+ newargz = XMALLOC(char *, argc+2); |
|
4067 |
+EOF |
|
4068 |
+ |
|
4069 |
+ cat >> $cwrappersource <<EOF |
|
4070 |
+ newargz[0] = (char *) xstrdup("$SHELL"); |
|
4071 |
+EOF |
|
4072 |
+ |
|
4073 |
+ cat >> $cwrappersource <<"EOF" |
|
4074 |
+ newargz[1] = find_executable(argv[0]); |
|
4075 |
+ if (newargz[1] == NULL) |
|
4076 |
+ lt_fatal("Couldn't find %s", argv[0]); |
|
4077 |
+ DEBUG("(main) found exe at : %s\n",newargz[1]); |
|
4078 |
+ /* we know the script has the same name, without the .exe */ |
|
4079 |
+ /* so make sure newargz[1] doesn't end in .exe */ |
|
4080 |
+ strendzap(newargz[1],".exe"); |
|
4081 |
+ for (i = 1; i < argc; i++) |
|
4082 |
+ newargz[i+1] = xstrdup(argv[i]); |
|
4083 |
+ newargz[argc+1] = NULL; |
|
4084 |
+ |
|
4085 |
+ for (i=0; i<argc+1; i++) |
|
4086 |
+ { |
|
4087 |
+ DEBUG("(main) newargz[%d] : %s\n",i,newargz[i]); |
|
4088 |
+ ; |
|
4089 |
+ } |
|
4090 |
+ |
|
4091 |
+EOF |
|
4092 |
+ |
|
4093 |
+ case $host_os in |
|
4094 |
+ mingw*) |
|
4095 |
+ cat >> $cwrappersource <<EOF |
|
4096 |
+ execv("$SHELL",(char const **)newargz); |
|
4097 |
+EOF |
|
4098 |
+ ;; |
|
4099 |
+ *) |
|
4100 |
+ cat >> $cwrappersource <<EOF |
|
4101 |
+ execv("$SHELL",newargz); |
|
4102 |
+EOF |
|
4103 |
+ ;; |
|
4104 |
+ esac |
|
4105 |
+ |
|
4106 |
+ cat >> $cwrappersource <<"EOF" |
|
4107 |
+ return 127; |
|
4108 |
+} |
|
4109 |
+ |
|
4110 |
+void * |
|
4111 |
+xmalloc (size_t num) |
|
4112 |
+{ |
|
4113 |
+ void * p = (void *) malloc (num); |
|
4114 |
+ if (!p) |
|
4115 |
+ lt_fatal ("Memory exhausted"); |
|
4116 |
+ |
|
4117 |
+ return p; |
|
4118 |
+} |
|
4119 |
+ |
|
4120 |
+char * |
|
4121 |
+xstrdup (const char *string) |
|
4122 |
+{ |
|
4123 |
+ return string ? strcpy ((char *) xmalloc (strlen (string) + 1), string) : NULL |
|
4124 |
+; |
|
4125 |
+} |
|
4126 |
+ |
|
4127 |
+const char * |
|
4128 |
+base_name (const char *name) |
|
4129 |
+{ |
|
4130 |
+ const char *base; |
|
4131 |
+ |
|
4132 |
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM) |
|
4133 |
+ /* Skip over the disk name in MSDOS pathnames. */ |
|
4134 |
+ if (isalpha ((unsigned char)name[0]) && name[1] == ':') |
|
4135 |
+ name += 2; |
|
4136 |
+#endif |
|
4137 |
+ |
|
4138 |
+ for (base = name; *name; name++) |
|
4139 |
+ if (IS_DIR_SEPARATOR (*name)) |
|
4140 |
+ base = name + 1; |
|
4141 |
+ return base; |
|
4142 |
+} |
|
4143 |
+ |
|
4144 |
+int |
|
4145 |
+check_executable(const char * path) |
|
4146 |
+{ |
|
4147 |
+ struct stat st; |
|
4148 |
+ |
|
4149 |
+ DEBUG("(check_executable) : %s\n", path ? (*path ? path : "EMPTY!") : "NULL!"); |
|
4150 |
+ if ((!path) || (!*path)) |
|
4151 |
+ return 0; |
|
4152 |
+ |
|
4153 |
+ if ((stat (path, &st) >= 0) && |
|
4154 |
+ ( |
|
4155 |
+ /* MinGW & native WIN32 do not support S_IXOTH or S_IXGRP */ |
|
4156 |
+#if defined (S_IXOTH) |
|
4157 |
+ ((st.st_mode & S_IXOTH) == S_IXOTH) || |
|
4158 |
+#endif |
|
4159 |
+#if defined (S_IXGRP) |
|
4160 |
+ ((st.st_mode & S_IXGRP) == S_IXGRP) || |
|
4161 |
+#endif |
|
4162 |
+ ((st.st_mode & S_IXUSR) == S_IXUSR)) |
|
4163 |
+ ) |
|
4164 |
+ return 1; |
|
4165 |
+ else |
|
4166 |
+ return 0; |
|
4167 |
+} |
|
4168 |
+ |
|
4169 |
+/* Searches for the full path of the wrapper. Returns |
|
4170 |
+ newly allocated full path name if found, NULL otherwise */ |
|
4171 |
+char * |
|
4172 |
+find_executable (const char* wrapper) |
|
4173 |
+{ |
|
4174 |
+ int has_slash = 0; |
|
4175 |
+ const char* p; |
|
4176 |
+ const char* p_next; |
|
4177 |
+ /* static buffer for getcwd */ |
|
4178 |
+ char tmp[LT_PATHMAX + 1]; |
|
4179 |
+ int tmp_len; |
|
4180 |
+ char* concat_name; |
|
4181 |
+ |
|
4182 |
+ DEBUG("(find_executable) : %s\n", wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!"); |
|
4183 |
+ |
|
4184 |
+ if ((wrapper == NULL) || (*wrapper == '\0')) |
|
4185 |
+ return NULL; |
|
4186 |
+ |
|
4187 |
+ /* Absolute path? */ |
|
4188 |
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM) |
|
4189 |
+ if (isalpha ((unsigned char)wrapper[0]) && wrapper[1] == ':') |
|
4190 |
+ { |
|
4191 |
+ concat_name = xstrdup (wrapper); |
|
4192 |
+ if (check_executable(concat_name)) |
|
4193 |
+ return concat_name; |
|
4194 |
+ XFREE(concat_name); |
|
4195 |
+ } |
|
4196 |
+ else |
|
4197 |
+ { |
|
4198 |
+#endif |
|
4199 |
+ if (IS_DIR_SEPARATOR (wrapper[0])) |
|
4200 |
+ { |
|
4201 |
+ concat_name = xstrdup (wrapper); |
|
4202 |
+ if (check_executable(concat_name)) |
|
4203 |
+ return concat_name; |
|
4204 |
+ XFREE(concat_name); |
|
4205 |
+ } |
|
4206 |
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM) |
|
4207 |
+ } |
|
4208 |
+#endif |
|
4209 |
+ |
|
4210 |
+ for (p = wrapper; *p; p++) |
|
4211 |
+ if (*p == '/') |
|
4212 |
+ { |
|
4213 |
+ has_slash = 1; |
|
4214 |
+ break; |
|
4215 |
+ } |
|
4216 |
+ if (!has_slash) |
|
4217 |
+ { |
|
4218 |
+ /* no slashes; search PATH */ |
|
4219 |
+ const char* path = getenv ("PATH"); |
|
4220 |
+ if (path != NULL) |
|
4221 |
+ { |
|
4222 |
+ for (p = path; *p; p = p_next) |
|
4223 |
+ { |
|
4224 |
+ const char* q; |
|
4225 |
+ size_t p_len; |
|
4226 |
+ for (q = p; *q; q++) |
|
4227 |
+ if (IS_PATH_SEPARATOR(*q)) |
|
4228 |
+ break; |
|
4229 |
+ p_len = q - p; |
|
4230 |
+ p_next = (*q == '\0' ? q : q + 1); |
|
4231 |
+ if (p_len == 0) |
|
4232 |
+ { |
|
4233 |
+ /* empty path: current directory */ |
|
4234 |
+ if (getcwd (tmp, LT_PATHMAX) == NULL) |
|
4235 |
+ lt_fatal ("getcwd failed"); |
|
4236 |
+ tmp_len = strlen(tmp); |
|
4237 |
+ concat_name = XMALLOC(char, tmp_len + 1 + strlen(wrapper) + 1); |
|
4238 |
+ memcpy (concat_name, tmp, tmp_len); |
|
4239 |
+ concat_name[tmp_len] = '/'; |
|
4240 |
+ strcpy (concat_name + tmp_len + 1, wrapper); |
|
4241 |
+ } |
|
4242 |
+ else |
|
4243 |
+ { |
|
4244 |
+ concat_name = XMALLOC(char, p_len + 1 + strlen(wrapper) + 1); |
|
4245 |
+ memcpy (concat_name, p, p_len); |
|
4246 |
+ concat_name[p_len] = '/'; |
|
4247 |
+ strcpy (concat_name + p_len + 1, wrapper); |
|
4248 |
+ } |
|
4249 |
+ if (check_executable(concat_name)) |
|
4250 |
+ return concat_name; |
|
4251 |
+ XFREE(concat_name); |
|
4252 |
+ } |
|
4253 |
+ } |
|
4254 |
+ /* not found in PATH; assume curdir */ |
|
4255 |
+ } |
|
4256 |
+ /* Relative path | not found in path: prepend cwd */ |
|
4257 |
+ if (getcwd (tmp, LT_PATHMAX) == NULL) |
|
4258 |
+ lt_fatal ("getcwd failed"); |
|
4259 |
+ tmp_len = strlen(tmp); |
|
4260 |
+ concat_name = XMALLOC(char, tmp_len + 1 + strlen(wrapper) + 1); |
|
4261 |
+ memcpy (concat_name, tmp, tmp_len); |
|
4262 |
+ concat_name[tmp_len] = '/'; |
|
4263 |
+ strcpy (concat_name + tmp_len + 1, wrapper); |
|
4264 |
+ |
|
4265 |
+ if (check_executable(concat_name)) |
|
4266 |
+ return concat_name; |
|
4267 |
+ XFREE(concat_name); |
|
4268 |
+ return NULL; |
|
4269 |
+} |
|
4270 |
+ |
|
4271 |
+char * |
|
4272 |
+strendzap(char *str, const char *pat) |
|
4273 |
+{ |
|
4274 |
+ size_t len, patlen; |
|
4275 |
+ |
|
4276 |
+ assert(str != NULL); |
|
4277 |
+ assert(pat != NULL); |
|
4278 |
+ |
|
4279 |
+ len = strlen(str); |
|
4280 |
+ patlen = strlen(pat); |
|
4281 |
+ |
|
4282 |
+ if (patlen <= len) |
|
4283 |
+ { |
|
4284 |
+ str += len - patlen; |
|
4285 |
+ if (strcmp(str, pat) == 0) |
|
4286 |
+ *str = '\0'; |
|
4287 |
+ } |
|
4288 |
+ return str; |
|
4289 |
+} |
|
4290 |
+ |
|
4291 |
+static void |
|
4292 |
+lt_error_core (int exit_status, const char * mode, |
|
4293 |
+ const char * message, va_list ap) |
|
4294 |
+{ |
|
4295 |
+ fprintf (stderr, "%s: %s: ", program_name, mode); |
|
4296 |
+ vfprintf (stderr, message, ap); |
|
4297 |
+ fprintf (stderr, ".\n"); |
|
4298 |
+ |
|
4299 |
+ if (exit_status >= 0) |
|
4300 |
+ exit (exit_status); |
|
4301 |
+} |
|
4302 |
+ |
|
4303 |
+void |
|
4304 |
+lt_fatal (const char *message, ...) |
|
4305 |
+{ |
|
4306 |
+ va_list ap; |
|
4307 |
+ va_start (ap, message); |
|
4308 |
+ lt_error_core (EXIT_FAILURE, "FATAL", message, ap); |
|
4309 |
+ va_end (ap); |
|
4310 |
+} |
|
4311 |
+EOF |
|
4312 |
+ # we should really use a build-platform specific compiler |
|
4313 |
+ # here, but OTOH, the wrappers (shell script and this C one) |
|
4314 |
+ # are only useful if you want to execute the "real" binary. |
|
4315 |
+ # Since the "real" binary is built for $host, then this |
|
4316 |
+ # wrapper might as well be built for $host, too. |
|
4317 |
+ $run $LTCC $LTCFLAGS -s -o $cwrapper $cwrappersource |
|
4318 |
+ ;; |
|
4319 |
+ esac |
|
4320 |
+ $rm $output |
|
4321 |
+ trap "$rm $output; exit $EXIT_FAILURE" 1 2 15 |
|
3961 | 4322 |
|
3962 | 4323 |
$echo > $output "\ |
3963 | 4324 |
#! $SHELL |
... | ... |
@@ -3973,12 +5610,12 @@ static const void *lt_preloaded_setup() { |
3973 | 3973 |
|
3974 | 3974 |
# Sed substitution that helps us do robust quoting. It backslashifies |
3975 | 3975 |
# metacharacters that are still active within double-quoted strings. |
3976 |
-Xsed='sed -e 1s/^X//' |
|
3976 |
+Xsed='${SED} -e 1s/^X//' |
|
3977 | 3977 |
sed_quote_subst='$sed_quote_subst' |
3978 | 3978 |
|
3979 | 3979 |
# The HP-UX ksh and POSIX shell print the target directory to stdout |
3980 | 3980 |
# if CDPATH is set. |
3981 |
-if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi |
|
3981 |
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH |
|
3982 | 3982 |
|
3983 | 3983 |
relink_command=\"$relink_command\" |
3984 | 3984 |
|
... | ... |
@@ -4011,7 +5648,7 @@ else |
4011 | 4011 |
test \"x\$thisdir\" = \"x\$file\" && thisdir=. |
4012 | 4012 |
|
4013 | 4013 |
# Follow symbolic links until we get to the real thisdir. |
4014 |
- file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\` |
|
4014 |
+ file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\` |
|
4015 | 4015 |
while test -n \"\$file\"; do |
4016 | 4016 |
destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` |
4017 | 4017 |
|
... | ... |
@@ -4024,7 +5661,7 @@ else |
4024 | 4024 |
fi |
4025 | 4025 |
|
4026 | 4026 |
file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` |
4027 |
- file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\` |
|
4027 |
+ file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\` |
|
4028 | 4028 |
done |
4029 | 4029 |
|
4030 | 4030 |
# Try to get the absolute directory name. |
... | ... |
@@ -4033,12 +5670,12 @@ else |
4033 | 4033 |
" |
4034 | 4034 |
|
4035 | 4035 |
if test "$fast_install" = yes; then |
4036 |
- echo >> $output "\ |
|
4036 |
+ $echo >> $output "\ |
|
4037 | 4037 |
program=lt-'$outputname'$exeext |
4038 | 4038 |
progdir=\"\$thisdir/$objdir\" |
4039 | 4039 |
|
4040 | 4040 |
if test ! -f \"\$progdir/\$program\" || \\ |
4041 |
- { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\ |
|
4041 |
+ { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ |
|
4042 | 4042 |
test \"X\$file\" != \"X\$progdir/\$program\"; }; then |
4043 | 4043 |
|
4044 | 4044 |
file=\"\$\$-\$program\" |
... | ... |
@@ -4049,7 +5686,7 @@ else |
4049 | 4049 |
$rm \"\$progdir/\$file\" |
4050 | 4050 |
fi" |
4051 | 4051 |
|
4052 |
- echo >> $output "\ |
|
4052 |
+ $echo >> $output "\ |
|
4053 | 4053 |
|
4054 | 4054 |
# relink executable if necessary |
4055 | 4055 |
if test -n \"\$relink_command\"; then |
... | ... |
@@ -4057,7 +5694,7 @@ else |
4057 | 4057 |
else |
4058 | 4058 |
$echo \"\$relink_command_output\" >&2 |
4059 | 4059 |
$rm \"\$progdir/\$file\" |
4060 |
- exit 1 |
|
4060 |
+ exit $EXIT_FAILURE |
|
4061 | 4061 |
fi |
4062 | 4062 |
fi |
4063 | 4063 |
|
... | ... |
@@ -4067,13 +5704,13 @@ else |
4067 | 4067 |
$rm \"\$progdir/\$file\" |
4068 | 4068 |
fi" |
4069 | 4069 |
else |
4070 |
- echo >> $output "\ |
|
4070 |
+ $echo >> $output "\ |
|
4071 | 4071 |
program='$outputname' |
4072 | 4072 |
progdir=\"\$thisdir/$objdir\" |
4073 | 4073 |
" |
4074 | 4074 |
fi |
4075 | 4075 |
|
4076 |
- echo >> $output "\ |
|
4076 |
+ $echo >> $output "\ |
|
4077 | 4077 |
|
4078 | 4078 |
if test -f \"\$progdir/\$program\"; then" |
4079 | 4079 |
|
... | ... |
@@ -4104,47 +5741,35 @@ else |
4104 | 4104 |
# Run the actual program with our arguments. |
4105 | 4105 |
" |
4106 | 4106 |
case $host in |
4107 |
- # win32 systems need to use the prog path for dll |
|
4108 |
- # lookup to work |
|
4109 |
- *-*-cygwin* | *-*-pw32*) |
|
4110 |
- $echo >> $output "\ |
|
4111 |
- exec \$progdir/\$program \${1+\"\$@\"} |
|
4112 |
-" |
|
4113 |
- ;; |
|
4114 |
- |
|
4115 | 4107 |
# Backslashes separate directories on plain windows |
4116 | 4108 |
*-*-mingw | *-*-os2*) |
4117 | 4109 |
$echo >> $output "\ |
4118 |
- exec \$progdir\\\\\$program \${1+\"\$@\"} |
|
4110 |
+ exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} |
|
4119 | 4111 |
" |
4120 | 4112 |
;; |
4121 | 4113 |
|
4122 | 4114 |
*) |
4123 | 4115 |
$echo >> $output "\ |
4124 |
- # Export the path to the program. |
|
4125 |
- PATH=\"\$progdir:\$PATH\" |
|
4126 |
- export PATH |
|
4127 |
- |
|
4128 |
- exec \$program \${1+\"\$@\"} |
|
4116 |
+ exec \"\$progdir/\$program\" \${1+\"\$@\"} |
|
4129 | 4117 |
" |
4130 | 4118 |
;; |
4131 | 4119 |
esac |
4132 | 4120 |
$echo >> $output "\ |
4133 | 4121 |
\$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\" |
4134 |
- exit 1 |
|
4122 |
+ exit $EXIT_FAILURE |
|
4135 | 4123 |
fi |
4136 | 4124 |
else |
4137 | 4125 |
# The program doesn't exist. |
4138 |
- \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2 |
|
4126 |
+ \$echo \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2 |
|
4139 | 4127 |
\$echo \"This script is just a wrapper for \$program.\" 1>&2 |
4140 |
- echo \"See the $PACKAGE documentation for more information.\" 1>&2 |
|
4141 |
- exit 1 |
|
4128 |
+ $echo \"See the $PACKAGE documentation for more information.\" 1>&2 |
|
4129 |
+ exit $EXIT_FAILURE |
|
4142 | 4130 |
fi |
4143 | 4131 |
fi\ |
4144 | 4132 |
" |
4145 | 4133 |
chmod +x $output |
4146 | 4134 |
fi |
4147 |
- exit 0 |
|
4135 |
+ exit $EXIT_SUCCESS |
|
4148 | 4136 |
;; |
4149 | 4137 |
esac |
4150 | 4138 |
|
... | ... |
@@ -4160,74 +5785,130 @@ fi\ |
4160 | 4160 |
oldobjs="$libobjs_save" |
4161 | 4161 |
build_libtool_libs=no |
4162 | 4162 |
else |
4163 |
- oldobjs="$objs$old_deplibs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP` |
|
4163 |
+ oldobjs="$old_deplibs $non_pic_objects" |
|
4164 | 4164 |
fi |
4165 | 4165 |
addlibs="$old_convenience" |
4166 | 4166 |
fi |
4167 | 4167 |
|
4168 | 4168 |
if test -n "$addlibs"; then |
4169 | 4169 |
gentop="$output_objdir/${outputname}x" |
4170 |
- $show "${rm}r $gentop" |
|
4171 |
- $run ${rm}r "$gentop" |
|
4172 |
- $show "mkdir $gentop" |
|
4173 |
- $run mkdir "$gentop" |
|
4174 |
- status=$? |
|
4175 |
- if test $status -ne 0 && test ! -d "$gentop"; then |
|
4176 |
- exit $status |
|
4177 |
- fi |
|
4178 | 4170 |
generated="$generated $gentop" |
4179 | 4171 |
|
4180 |
- # Add in members from convenience archives. |
|
4181 |
- for xlib in $addlibs; do |
|
4182 |
- # Extract the objects. |
|
4183 |
- case $xlib in |
|
4184 |
- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; |
|
4185 |
- *) xabs=`pwd`"/$xlib" ;; |
|
4186 |
- esac |
|
4187 |
- xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` |
|
4188 |
- xdir="$gentop/$xlib" |
|
4189 |
- |
|
4190 |
- $show "${rm}r $xdir" |
|
4191 |
- $run ${rm}r "$xdir" |
|
4192 |
- $show "mkdir $xdir" |
|
4193 |
- $run mkdir "$xdir" |
|
4194 |
- status=$? |
|
4195 |
- if test $status -ne 0 && test ! -d "$xdir"; then |
|
4196 |
- exit $status |
|
4197 |
- fi |
|
4198 |
- $show "(cd $xdir && $AR x $xabs)" |
|
4199 |
- $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? |
|
4200 |
- |
|
4201 |
- oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print -o -name \*.lo -print | $NL2SP` |
|
4202 |
- done |
|
4172 |
+ func_extract_archives $gentop $addlibs |
|
4173 |
+ oldobjs="$oldobjs $func_extract_archives_result" |
|
4203 | 4174 |
fi |
4204 | 4175 |
|
4205 | 4176 |
# Do each command in the archive commands. |
4206 | 4177 |
if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then |
4207 |
- eval cmds=\"$old_archive_from_new_cmds\" |
|
4178 |
+ cmds=$old_archive_from_new_cmds |
|
4208 | 4179 |
else |
4209 |
- # Ensure that we have .o objects in place in case we decided |
|
4210 |
- # not to build a shared library, and have fallen back to building |
|
4211 |
- # static libs even though --disable-static was passed! |
|
4212 |
- for oldobj in $oldobjs; do |
|
4213 |
- if test ! -f $oldobj; then |
|
4214 |
- xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'` |
|
4215 |
- if test "X$xdir" = "X$oldobj"; then |
|
4216 |
- xdir="." |
|
4217 |
- else |
|
4218 |
- xdir="$xdir" |
|
4180 |
+ # POSIX demands no paths to be encoded in archives. We have |
|
4181 |
+ # to avoid creating archives with duplicate basenames if we |
|
4182 |
+ # might have to extract them afterwards, e.g., when creating a |
|
4183 |
+ # static archive out of a convenience library, or when linking |
|
4184 |
+ # the entirety of a libtool archive into another (currently |
|
4185 |
+ # not supported by libtool). |
|
4186 |
+ if (for obj in $oldobjs |
|
4187 |
+ do |
|
4188 |
+ $echo "X$obj" | $Xsed -e 's%^.*/%%' |
|
4189 |
+ done | sort | sort -uc >/dev/null 2>&1); then |
|
4190 |
+ : |
|
4191 |
+ else |
|
4192 |
+ $echo "copying selected object files to avoid basename conflicts..." |
|
4193 |
+ |
|
4194 |
+ if test -z "$gentop"; then |
|
4195 |
+ gentop="$output_objdir/${outputname}x" |
|
4196 |
+ generated="$generated $gentop" |
|
4197 |
+ |
|
4198 |
+ $show "${rm}r $gentop" |
|
4199 |
+ $run ${rm}r "$gentop" |
|
4200 |
+ $show "$mkdir $gentop" |
|
4201 |
+ $run $mkdir "$gentop" |
|
4202 |
+ exit_status=$? |
|
4203 |
+ if test "$exit_status" -ne 0 && test ! -d "$gentop"; then |
|
4204 |
+ exit $exit_status |
|
4219 | 4205 |
fi |
4220 |
- baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'` |
|
4221 |
- obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"` |
|
4222 |
- $show "(cd $xdir && ${LN_S} $obj $baseobj)" |
|
4223 |
- $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $? |
|
4224 | 4206 |
fi |
4225 |
- done |
|
4207 |
+ |
|
4208 |
+ save_oldobjs=$oldobjs |
|
4209 |
+ oldobjs= |
|
4210 |
+ counter=1 |
|
4211 |
+ for obj in $save_oldobjs |
|
4212 |
+ do |
|
4213 |
+ objbase=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` |
|
4214 |
+ case " $oldobjs " in |
|
4215 |
+ " ") oldobjs=$obj ;; |
|
4216 |
+ *[\ /]"$objbase "*) |
|
4217 |
+ while :; do |
|
4218 |
+ # Make sure we don't pick an alternate name that also |
|
4219 |
+ # overlaps. |
|
4220 |
+ newobj=lt$counter-$objbase |
|
4221 |
+ counter=`expr $counter + 1` |
|
4222 |
+ case " $oldobjs " in |
|
4223 |
+ *[\ /]"$newobj "*) ;; |
|
4224 |
+ *) if test ! -f "$gentop/$newobj"; then break; fi ;; |
|
4225 |
+ esac |
|
4226 |
+ done |
|
4227 |
+ $show "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" |
|
4228 |
+ $run ln "$obj" "$gentop/$newobj" || |
|
4229 |
+ $run cp "$obj" "$gentop/$newobj" |
|
4230 |
+ oldobjs="$oldobjs $gentop/$newobj" |
|
4231 |
+ ;; |
|
4232 |
+ *) oldobjs="$oldobjs $obj" ;; |
|
4233 |
+ esac |
|
4234 |
+ done |
|
4235 |
+ fi |
|
4226 | 4236 |
|
4227 | 4237 |
eval cmds=\"$old_archive_cmds\" |
4238 |
+ |
|
4239 |
+ if len=`expr "X$cmds" : ".*"` && |
|
4240 |
+ test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then |
|
4241 |
+ cmds=$old_archive_cmds |
|
4242 |
+ else |
|
4243 |
+ # the command line is too long to link in one step, link in parts |
|
4244 |
+ $echo "using piecewise archive linking..." |
|
4245 |
+ save_RANLIB=$RANLIB |
|
4246 |
+ RANLIB=: |
|
4247 |
+ objlist= |
|
4248 |
+ concat_cmds= |
|
4249 |
+ save_oldobjs=$oldobjs |
|
4250 |
+ |
|
4251 |
+ # Is there a better way of finding the last object in the list? |
|
4252 |
+ for obj in $save_oldobjs |
|
4253 |
+ do |
|
4254 |
+ last_oldobj=$obj |
|
4255 |
+ done |
|
4256 |
+ for obj in $save_oldobjs |
|
4257 |
+ do |
|
4258 |
+ oldobjs="$objlist $obj" |
|
4259 |
+ objlist="$objlist $obj" |
|
4260 |
+ eval test_cmds=\"$old_archive_cmds\" |
|
4261 |
+ if len=`expr "X$test_cmds" : ".*" 2>/dev/null` && |
|
4262 |
+ test "$len" -le "$max_cmd_len"; then |
|
4263 |
+ : |
|
4264 |
+ else |
|
4265 |
+ # the above command should be used before it gets too long |
|
4266 |
+ oldobjs=$objlist |
|
4267 |
+ if test "$obj" = "$last_oldobj" ; then |
|
4268 |
+ RANLIB=$save_RANLIB |
|
4269 |
+ fi |
|
4270 |
+ test -z "$concat_cmds" || concat_cmds=$concat_cmds~ |
|
4271 |
+ eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" |
|
4272 |
+ objlist= |
|
4273 |
+ fi |
|
4274 |
+ done |
|
4275 |
+ RANLIB=$save_RANLIB |
|
4276 |
+ oldobjs=$objlist |
|
4277 |
+ if test "X$oldobjs" = "X" ; then |
|
4278 |
+ eval cmds=\"\$concat_cmds\" |
|
4279 |
+ else |
|
4280 |
+ eval cmds=\"\$concat_cmds~\$old_archive_cmds\" |
|
4281 |
+ fi |
|
4282 |
+ fi |
|
4228 | 4283 |
fi |
4229 | 4284 |
save_ifs="$IFS"; IFS='~' |
4230 | 4285 |
for cmd in $cmds; do |
4286 |
+ eval cmd=\"$cmd\" |
|
4231 | 4287 |
IFS="$save_ifs" |
4232 | 4288 |
$show "$cmd" |
4233 | 4289 |
$run eval "$cmd" || exit $? |
... | ... |
@@ -4259,8 +5940,12 @@ fi\ |
4259 | 4259 |
fi |
4260 | 4260 |
done |
4261 | 4261 |
# Quote the link command for shipping. |
4262 |
- relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args)" |
|
4262 |
+ relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" |
|
4263 | 4263 |
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` |
4264 |
+ if test "$hardcode_automatic" = yes ; then |
|
4265 |
+ relink_command= |
|
4266 |
+ fi |
|
4267 |
+ |
|
4264 | 4268 |
|
4265 | 4269 |
# Only create the output if not a dry run. |
4266 | 4270 |
if test -z "$run"; then |
... | ... |
@@ -4276,10 +5961,10 @@ fi\ |
4276 | 4276 |
case $deplib in |
4277 | 4277 |
*.la) |
4278 | 4278 |
name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` |
4279 |
- eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` |
|
4279 |
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` |
|
4280 | 4280 |
if test -z "$libdir"; then |
4281 | 4281 |
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 |
4282 |
- exit 1 |
|
4282 |
+ exit $EXIT_FAILURE |
|
4283 | 4283 |
fi |
4284 | 4284 |
newdependency_libs="$newdependency_libs $libdir/$name" |
4285 | 4285 |
;; |
... | ... |
@@ -4290,10 +5975,10 @@ fi\ |
4290 | 4290 |
newdlfiles= |
4291 | 4291 |
for lib in $dlfiles; do |
4292 | 4292 |
name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` |
4293 |
- eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` |
|
4293 |
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` |
|
4294 | 4294 |
if test -z "$libdir"; then |
4295 | 4295 |
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 |
4296 |
- exit 1 |
|
4296 |
+ exit $EXIT_FAILURE |
|
4297 | 4297 |
fi |
4298 | 4298 |
newdlfiles="$newdlfiles $libdir/$name" |
4299 | 4299 |
done |
... | ... |
@@ -4301,20 +5986,39 @@ fi\ |
4301 | 4301 |
newdlprefiles= |
4302 | 4302 |
for lib in $dlprefiles; do |
4303 | 4303 |
name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` |
4304 |
- eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` |
|
4304 |
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` |
|
4305 | 4305 |
if test -z "$libdir"; then |
4306 | 4306 |
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 |
4307 |
- exit 1 |
|
4307 |
+ exit $EXIT_FAILURE |
|
4308 | 4308 |
fi |
4309 | 4309 |
newdlprefiles="$newdlprefiles $libdir/$name" |
4310 | 4310 |
done |
4311 | 4311 |
dlprefiles="$newdlprefiles" |
4312 |
+ else |
|
4313 |
+ newdlfiles= |
|
4314 |
+ for lib in $dlfiles; do |
|
4315 |
+ case $lib in |
|
4316 |
+ [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; |
|
4317 |
+ *) abs=`pwd`"/$lib" ;; |
|
4318 |
+ esac |
|
4319 |
+ newdlfiles="$newdlfiles $abs" |
|
4320 |
+ done |
|
4321 |
+ dlfiles="$newdlfiles" |
|
4322 |
+ newdlprefiles= |
|
4323 |
+ for lib in $dlprefiles; do |
|
4324 |
+ case $lib in |
|
4325 |
+ [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; |
|
4326 |
+ *) abs=`pwd`"/$lib" ;; |
|
4327 |
+ esac |
|
4328 |
+ newdlprefiles="$newdlprefiles $abs" |
|
4329 |
+ done |
|
4330 |
+ dlprefiles="$newdlprefiles" |
|
4312 | 4331 |
fi |
4313 | 4332 |
$rm $output |
4314 | 4333 |
# place dlname in correct position for cygwin |
4315 | 4334 |
tdlname=$dlname |
4316 | 4335 |
case $host,$output,$installed,$module,$dlname in |
4317 |
- *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; |
|
4336 |
+ *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; |
|
4318 | 4337 |
esac |
4319 | 4338 |
$echo > $output "\ |
4320 | 4339 |
# $outputname - a libtool library file |
... | ... |
@@ -4343,13 +6047,16 @@ revision=$revision |
4343 | 4343 |
# Is this an already installed library? |
4344 | 4344 |
installed=$installed |
4345 | 4345 |
|
4346 |
+# Should we warn about portability when linking against -modules? |
|
4347 |
+shouldnotlink=$module |
|
4348 |
+ |
|
4346 | 4349 |
# Files to dlopen/dlpreopen |
4347 | 4350 |
dlopen='$dlfiles' |
4348 | 4351 |
dlpreopen='$dlprefiles' |
4349 | 4352 |
|
4350 | 4353 |
# Directory that this library needs to be installed in: |
4351 | 4354 |
libdir='$install_libdir'" |
4352 |
- if test "$installed" = no && test $need_relink = yes; then |
|
4355 |
+ if test "$installed" = no && test "$need_relink" = yes; then |
|
4353 | 4356 |
$echo >> $output "\ |
4354 | 4357 |
relink_command=\"$relink_command\"" |
4355 | 4358 |
fi |
... | ... |
@@ -4362,7 +6069,7 @@ relink_command=\"$relink_command\"" |
4362 | 4362 |
$run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $? |
4363 | 4363 |
;; |
4364 | 4364 |
esac |
4365 |
- exit 0 |
|
4365 |
+ exit $EXIT_SUCCESS |
|
4366 | 4366 |
;; |
4367 | 4367 |
|
4368 | 4368 |
# libtool install mode |
... | ... |
@@ -4373,11 +6080,11 @@ relink_command=\"$relink_command\"" |
4373 | 4373 |
# install_prog (especially on Windows NT). |
4374 | 4374 |
if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || |
4375 | 4375 |
# Allow the use of GNU shtool's install command. |
4376 |
- $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then |
|
4376 |
+ $echo "X$nonopt" | grep shtool > /dev/null; then |
|
4377 | 4377 |
# Aesthetically quote it. |
4378 | 4378 |
arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"` |
4379 | 4379 |
case $arg in |
4380 |
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) |
|
4380 |
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") |
|
4381 | 4381 |
arg="\"$arg\"" |
4382 | 4382 |
;; |
4383 | 4383 |
esac |
... | ... |
@@ -4386,14 +6093,14 @@ relink_command=\"$relink_command\"" |
4386 | 4386 |
shift |
4387 | 4387 |
else |
4388 | 4388 |
install_prog= |
4389 |
- arg="$nonopt" |
|
4389 |
+ arg=$nonopt |
|
4390 | 4390 |
fi |
4391 | 4391 |
|
4392 | 4392 |
# The real first argument should be the name of the installation program. |
4393 | 4393 |
# Aesthetically quote it. |
4394 | 4394 |
arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` |
4395 | 4395 |
case $arg in |
4396 |
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) |
|
4396 |
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") |
|
4397 | 4397 |
arg="\"$arg\"" |
4398 | 4398 |
;; |
4399 | 4399 |
esac |
... | ... |
@@ -4411,28 +6118,31 @@ relink_command=\"$relink_command\"" |
4411 | 4411 |
do |
4412 | 4412 |
if test -n "$dest"; then |
4413 | 4413 |
files="$files $dest" |
4414 |
- dest="$arg" |
|
4414 |
+ dest=$arg |
|
4415 | 4415 |
continue |
4416 | 4416 |
fi |
4417 | 4417 |
|
4418 | 4418 |
case $arg in |
4419 | 4419 |
-d) isdir=yes ;; |
4420 |
- -f) prev="-f" ;; |
|
4421 |
- -g) prev="-g" ;; |
|
4422 |
- -m) prev="-m" ;; |
|
4423 |
- -o) prev="-o" ;; |
|
4420 |
+ -f) |
|
4421 |
+ case " $install_prog " in |
|
4422 |
+ *[\\\ /]cp\ *) ;; |
|
4423 |
+ *) prev=$arg ;; |
|
4424 |
+ esac |
|
4425 |
+ ;; |
|
4426 |
+ -g | -m | -o) prev=$arg ;; |
|
4424 | 4427 |
-s) |
4425 | 4428 |
stripme=" -s" |
4426 | 4429 |
continue |
4427 | 4430 |
;; |
4428 |
- -*) ;; |
|
4429 |
- |
|
4431 |
+ -*) |
|
4432 |
+ ;; |
|
4430 | 4433 |
*) |
4431 | 4434 |
# If the previous option needed an argument, then skip it. |
4432 | 4435 |
if test -n "$prev"; then |
4433 | 4436 |
prev= |
4434 | 4437 |
else |
4435 |
- dest="$arg" |
|
4438 |
+ dest=$arg |
|
4436 | 4439 |
continue |
4437 | 4440 |
fi |
4438 | 4441 |
;; |
... | ... |
@@ -4441,7 +6151,7 @@ relink_command=\"$relink_command\"" |
4441 | 4441 |
# Aesthetically quote the argument. |
4442 | 4442 |
arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` |
4443 | 4443 |
case $arg in |
4444 |
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) |
|
4444 |
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") |
|
4445 | 4445 |
arg="\"$arg\"" |
4446 | 4446 |
;; |
4447 | 4447 |
esac |
... | ... |
@@ -4451,13 +6161,13 @@ relink_command=\"$relink_command\"" |
4451 | 4451 |
if test -z "$install_prog"; then |
4452 | 4452 |
$echo "$modename: you must specify an install program" 1>&2 |
4453 | 4453 |
$echo "$help" 1>&2 |
4454 |
- exit 1 |
|
4454 |
+ exit $EXIT_FAILURE |
|
4455 | 4455 |
fi |
4456 | 4456 |
|
4457 | 4457 |
if test -n "$prev"; then |
4458 | 4458 |
$echo "$modename: the \`$prev' option requires an argument" 1>&2 |
4459 | 4459 |
$echo "$help" 1>&2 |
4460 |
- exit 1 |
|
4460 |
+ exit $EXIT_FAILURE |
|
4461 | 4461 |
fi |
4462 | 4462 |
|
4463 | 4463 |
if test -z "$files"; then |
... | ... |
@@ -4467,7 +6177,7 @@ relink_command=\"$relink_command\"" |
4467 | 4467 |
$echo "$modename: you must specify a destination" 1>&2 |
4468 | 4468 |
fi |
4469 | 4469 |
$echo "$help" 1>&2 |
4470 |
- exit 1 |
|
4470 |
+ exit $EXIT_FAILURE |
|
4471 | 4471 |
fi |
4472 | 4472 |
|
4473 | 4473 |
# Strip any trailing slash from the destination. |
... | ... |
@@ -4485,10 +6195,10 @@ relink_command=\"$relink_command\"" |
4485 | 4485 |
|
4486 | 4486 |
# Not a directory, so check to see that there is only one file specified. |
4487 | 4487 |
set dummy $files |
4488 |
- if test $# -gt 2; then |
|
4488 |
+ if test "$#" -gt 2; then |
|
4489 | 4489 |
$echo "$modename: \`$dest' is not a directory" 1>&2 |
4490 | 4490 |
$echo "$help" 1>&2 |
4491 |
- exit 1 |
|
4491 |
+ exit $EXIT_FAILURE |
|
4492 | 4492 |
fi |
4493 | 4493 |
fi |
4494 | 4494 |
case $destdir in |
... | ... |
@@ -4500,7 +6210,7 @@ relink_command=\"$relink_command\"" |
4500 | 4500 |
*) |
4501 | 4501 |
$echo "$modename: \`$destdir' must be an absolute directory name" 1>&2 |
4502 | 4502 |
$echo "$help" 1>&2 |
4503 |
- exit 1 |
|
4503 |
+ exit $EXIT_FAILURE |
|
4504 | 4504 |
;; |
4505 | 4505 |
esac |
4506 | 4506 |
done |
... | ... |
@@ -4525,11 +6235,11 @@ relink_command=\"$relink_command\"" |
4525 | 4525 |
|
4526 | 4526 |
*.la) |
4527 | 4527 |
# Check to see that this really is a libtool archive. |
4528 |
- if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : |
|
4528 |
+ if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : |
|
4529 | 4529 |
else |
4530 | 4530 |
$echo "$modename: \`$file' is not a valid libtool archive" 1>&2 |
4531 | 4531 |
$echo "$help" 1>&2 |
4532 |
- exit 1 |
|
4532 |
+ exit $EXIT_FAILURE |
|
4533 | 4533 |
fi |
4534 | 4534 |
|
4535 | 4535 |
library_names= |
... | ... |
@@ -4560,12 +6270,33 @@ relink_command=\"$relink_command\"" |
4560 | 4560 |
dir="$dir$objdir" |
4561 | 4561 |
|
4562 | 4562 |
if test -n "$relink_command"; then |
4563 |
+ # Determine the prefix the user has applied to our future dir. |
|
4564 |
+ inst_prefix_dir=`$echo "$destdir" | $SED "s%$libdir\$%%"` |
|
4565 |
+ |
|
4566 |
+ # Don't allow the user to place us outside of our expected |
|
4567 |
+ # location b/c this prevents finding dependent libraries that |
|
4568 |
+ # are installed to the same prefix. |
|
4569 |
+ # At present, this check doesn't affect windows .dll's that |
|
4570 |
+ # are installed into $libdir/../bin (currently, that works fine) |
|
4571 |
+ # but it's something to keep an eye on. |
|
4572 |
+ if test "$inst_prefix_dir" = "$destdir"; then |
|
4573 |
+ $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2 |
|
4574 |
+ exit $EXIT_FAILURE |
|
4575 |
+ fi |
|
4576 |
+ |
|
4577 |
+ if test -n "$inst_prefix_dir"; then |
|
4578 |
+ # Stick the inst_prefix_dir data into the link command. |
|
4579 |
+ relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` |
|
4580 |
+ else |
|
4581 |
+ relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%%"` |
|
4582 |
+ fi |
|
4583 |
+ |
|
4563 | 4584 |
$echo "$modename: warning: relinking \`$file'" 1>&2 |
4564 | 4585 |
$show "$relink_command" |
4565 | 4586 |
if $run eval "$relink_command"; then : |
4566 | 4587 |
else |
4567 | 4588 |
$echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 |
4568 |
- continue |
|
4589 |
+ exit $EXIT_FAILURE |
|
4569 | 4590 |
fi |
4570 | 4591 |
fi |
4571 | 4592 |
|
... | ... |
@@ -4587,25 +6318,38 @@ relink_command=\"$relink_command\"" |
4587 | 4587 |
$run eval "$striplib $destdir/$realname" || exit $? |
4588 | 4588 |
fi |
4589 | 4589 |
|
4590 |
- if test $# -gt 0; then |
|
4590 |
+ if test "$#" -gt 0; then |
|
4591 | 4591 |
# Delete the old symlinks, and create new ones. |
4592 |
+ # Try `ln -sf' first, because the `ln' binary might depend on |
|
4593 |
+ # the symlink we replace! Solaris /bin/ln does not understand -f, |
|
4594 |
+ # so we also need to try rm && ln -s. |
|
4592 | 4595 |
for linkname |
4593 | 4596 |
do |
4594 | 4597 |
if test "$linkname" != "$realname"; then |
4595 |
- $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" |
|
4596 |
- $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" |
|
4598 |
+ $show "(cd $destdir && { $LN_S -f $realname $linkname || { $rm $linkname && $LN_S $realname $linkname; }; })" |
|
4599 |
+ $run eval "(cd $destdir && { $LN_S -f $realname $linkname || { $rm $linkname && $LN_S $realname $linkname; }; })" |
|
4597 | 4600 |
fi |
4598 | 4601 |
done |
4599 | 4602 |
fi |
4600 | 4603 |
|
4601 | 4604 |
# Do each command in the postinstall commands. |
4602 | 4605 |
lib="$destdir/$realname" |
4603 |
- eval cmds=\"$postinstall_cmds\" |
|
4606 |
+ cmds=$postinstall_cmds |
|
4604 | 4607 |
save_ifs="$IFS"; IFS='~' |
4605 | 4608 |
for cmd in $cmds; do |
4606 | 4609 |
IFS="$save_ifs" |
4610 |
+ eval cmd=\"$cmd\" |
|
4607 | 4611 |
$show "$cmd" |
4608 |
- $run eval "$cmd" || exit $? |
|
4612 |
+ $run eval "$cmd" || { |
|
4613 |
+ lt_exit=$? |
|
4614 |
+ |
|
4615 |
+ # Restore the uninstalled library and exit |
|
4616 |
+ if test "$mode" = relink; then |
|
4617 |
+ $run eval '(cd $output_objdir && $rm ${realname}T && $mv ${realname}U $realname)' |
|
4618 |
+ fi |
|
4619 |
+ |
|
4620 |
+ exit $lt_exit |
|
4621 |
+ } |
|
4609 | 4622 |
done |
4610 | 4623 |
IFS="$save_ifs" |
4611 | 4624 |
fi |
... | ... |
@@ -4643,7 +6387,7 @@ relink_command=\"$relink_command\"" |
4643 | 4643 |
*) |
4644 | 4644 |
$echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2 |
4645 | 4645 |
$echo "$help" 1>&2 |
4646 |
- exit 1 |
|
4646 |
+ exit $EXIT_FAILURE |
|
4647 | 4647 |
;; |
4648 | 4648 |
esac |
4649 | 4649 |
|
... | ... |
@@ -4661,7 +6405,7 @@ relink_command=\"$relink_command\"" |
4661 | 4661 |
$show "$install_prog $staticobj $staticdest" |
4662 | 4662 |
$run eval "$install_prog \$staticobj \$staticdest" || exit $? |
4663 | 4663 |
fi |
4664 |
- exit 0 |
|
4664 |
+ exit $EXIT_SUCCESS |
|
4665 | 4665 |
;; |
4666 | 4666 |
|
4667 | 4667 |
*) |
... | ... |
@@ -4673,29 +6417,47 @@ relink_command=\"$relink_command\"" |
4673 | 4673 |
destfile="$destdir/$destfile" |
4674 | 4674 |
fi |
4675 | 4675 |
|
4676 |
+ # If the file is missing, and there is a .exe on the end, strip it |
|
4677 |
+ # because it is most likely a libtool script we actually want to |
|
4678 |
+ # install |
|
4679 |
+ stripped_ext="" |
|
4680 |
+ case $file in |
|
4681 |
+ *.exe) |
|
4682 |
+ if test ! -f "$file"; then |
|
4683 |
+ file=`$echo $file|${SED} 's,.exe$,,'` |
|
4684 |
+ stripped_ext=".exe" |
|
4685 |
+ fi |
|
4686 |
+ ;; |
|
4687 |
+ esac |
|
4688 |
+ |
|
4676 | 4689 |
# Do a test to see if this is really a libtool program. |
4677 | 4690 |
case $host in |
4678 | 4691 |
*cygwin*|*mingw*) |
4679 |
- wrapper=`echo $file | sed -e 's,.exe$,,'` |
|
4692 |
+ wrapper=`$echo $file | ${SED} -e 's,.exe$,,'` |
|
4680 | 4693 |
;; |
4681 | 4694 |
*) |
4682 | 4695 |
wrapper=$file |
4683 | 4696 |
;; |
4684 | 4697 |
esac |
4685 |
- if (sed -e '4q' $wrapper | egrep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then |
|
4698 |
+ if (${SED} -e '4q' $wrapper | grep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then |
|
4686 | 4699 |
notinst_deplibs= |
4687 | 4700 |
relink_command= |
4688 | 4701 |
|
4702 |
+ # Note that it is not necessary on cygwin/mingw to append a dot to |
|
4703 |
+ # foo even if both foo and FILE.exe exist: automatic-append-.exe |
|
4704 |
+ # behavior happens only for exec(3), not for open(2)! Also, sourcing |
|
4705 |
+ # `FILE.' does not work on cygwin managed mounts. |
|
4706 |
+ # |
|
4689 | 4707 |
# If there is no directory component, then add one. |
4690 |
- case $file in |
|
4691 |
- */* | *\\*) . $wrapper ;; |
|
4692 |
- *) . ./$wrapper ;; |
|
4708 |
+ case $wrapper in |
|
4709 |
+ */* | *\\*) . ${wrapper} ;; |
|
4710 |
+ *) . ./${wrapper} ;; |
|
4693 | 4711 |
esac |
4694 | 4712 |
|
4695 | 4713 |
# Check the variables that should have been set. |
4696 | 4714 |
if test -z "$notinst_deplibs"; then |
4697 | 4715 |
$echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2 |
4698 |
- exit 1 |
|
4716 |
+ exit $EXIT_FAILURE |
|
4699 | 4717 |
fi |
4700 | 4718 |
|
4701 | 4719 |
finalize=yes |
... | ... |
@@ -4717,24 +6479,22 @@ relink_command=\"$relink_command\"" |
4717 | 4717 |
done |
4718 | 4718 |
|
4719 | 4719 |
relink_command= |
4720 |
+ # Note that it is not necessary on cygwin/mingw to append a dot to |
|
4721 |
+ # foo even if both foo and FILE.exe exist: automatic-append-.exe |
|
4722 |
+ # behavior happens only for exec(3), not for open(2)! Also, sourcing |
|
4723 |
+ # `FILE.' does not work on cygwin managed mounts. |
|
4724 |
+ # |
|
4720 | 4725 |
# If there is no directory component, then add one. |
4721 |
- case $file in |
|
4722 |
- */* | *\\*) . $wrapper ;; |
|
4723 |
- *) . ./$wrapper ;; |
|
4726 |
+ case $wrapper in |
|
4727 |
+ */* | *\\*) . ${wrapper} ;; |
|
4728 |
+ *) . ./${wrapper} ;; |
|
4724 | 4729 |
esac |
4725 | 4730 |
|
4726 | 4731 |
outputname= |
4727 | 4732 |
if test "$fast_install" = no && test -n "$relink_command"; then |
4728 | 4733 |
if test "$finalize" = yes && test -z "$run"; then |
4729 |
- tmpdir="/tmp" |
|
4730 |
- test -n "$TMPDIR" && tmpdir="$TMPDIR" |
|
4731 |
- tmpdir="$tmpdir/libtool-$$" |
|
4732 |
- if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then : |
|
4733 |
- else |
|
4734 |
- $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 |
|
4735 |
- continue |
|
4736 |
- fi |
|
4737 |
- file=`$echo "X$file" | $Xsed -e 's%^.*/%%'` |
|
4734 |
+ tmpdir=`func_mktempdir` |
|
4735 |
+ file=`$echo "X$file$stripped_ext" | $Xsed -e 's%^.*/%%'` |
|
4738 | 4736 |
outputname="$tmpdir/$file" |
4739 | 4737 |
# Replace the output file specification. |
4740 | 4738 |
relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` |
... | ... |
@@ -4752,14 +6512,14 @@ relink_command=\"$relink_command\"" |
4752 | 4752 |
fi |
4753 | 4753 |
else |
4754 | 4754 |
# Install the binary that we compiled earlier. |
4755 |
- file=`$echo "X$file" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` |
|
4755 |
+ file=`$echo "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` |
|
4756 | 4756 |
fi |
4757 | 4757 |
fi |
4758 | 4758 |
|
4759 | 4759 |
# remove .exe since cygwin /usr/bin/install will append another |
4760 |
- # one anyways |
|
4760 |
+ # one anyway |
|
4761 | 4761 |
case $install_prog,$host in |
4762 |
- /usr/bin/install*,*cygwin*) |
|
4762 |
+ */usr/bin/install*,*cygwin*) |
|
4763 | 4763 |
case $file:$destfile in |
4764 | 4764 |
*.exe:*.exe) |
4765 | 4765 |
# this is ok |
... | ... |
@@ -4768,7 +6528,7 @@ relink_command=\"$relink_command\"" |
4768 | 4768 |
destfile=$destfile.exe |
4769 | 4769 |
;; |
4770 | 4770 |
*:*.exe) |
4771 |
- destfile=`echo $destfile | sed -e 's,.exe$,,'` |
|
4771 |
+ destfile=`$echo $destfile | ${SED} -e 's,.exe$,,'` |
|
4772 | 4772 |
;; |
4773 | 4773 |
esac |
4774 | 4774 |
;; |
... | ... |
@@ -4789,16 +6549,17 @@ relink_command=\"$relink_command\"" |
4789 | 4789 |
$show "$install_prog $file $oldlib" |
4790 | 4790 |
$run eval "$install_prog \$file \$oldlib" || exit $? |
4791 | 4791 |
|
4792 |
- if test -n "$stripme" && test -n "$striplib"; then |
|
4792 |
+ if test -n "$stripme" && test -n "$old_striplib"; then |
|
4793 | 4793 |
$show "$old_striplib $oldlib" |
4794 | 4794 |
$run eval "$old_striplib $oldlib" || exit $? |
4795 | 4795 |
fi |
4796 | 4796 |
|
4797 | 4797 |
# Do each command in the postinstall commands. |
4798 |
- eval cmds=\"$old_postinstall_cmds\" |
|
4798 |
+ cmds=$old_postinstall_cmds |
|
4799 | 4799 |
save_ifs="$IFS"; IFS='~' |
4800 | 4800 |
for cmd in $cmds; do |
4801 | 4801 |
IFS="$save_ifs" |
4802 |
+ eval cmd=\"$cmd\" |
|
4802 | 4803 |
$show "$cmd" |
4803 | 4804 |
$run eval "$cmd" || exit $? |
4804 | 4805 |
done |
... | ... |
@@ -4812,9 +6573,9 @@ relink_command=\"$relink_command\"" |
4812 | 4812 |
if test -n "$current_libdirs"; then |
4813 | 4813 |
# Maybe just do a dry run. |
4814 | 4814 |
test -n "$run" && current_libdirs=" -n$current_libdirs" |
4815 |
- exec_cmd='$SHELL $0 --finish$current_libdirs' |
|
4815 |
+ exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' |
|
4816 | 4816 |
else |
4817 |
- exit 0 |
|
4817 |
+ exit $EXIT_SUCCESS |
|
4818 | 4818 |
fi |
4819 | 4819 |
;; |
4820 | 4820 |
|
... | ... |
@@ -4833,10 +6594,11 @@ relink_command=\"$relink_command\"" |
4833 | 4833 |
for libdir in $libdirs; do |
4834 | 4834 |
if test -n "$finish_cmds"; then |
4835 | 4835 |
# Do each command in the finish commands. |
4836 |
- eval cmds=\"$finish_cmds\" |
|
4836 |
+ cmds=$finish_cmds |
|
4837 | 4837 |
save_ifs="$IFS"; IFS='~' |
4838 | 4838 |
for cmd in $cmds; do |
4839 | 4839 |
IFS="$save_ifs" |
4840 |
+ eval cmd=\"$cmd\" |
|
4840 | 4841 |
$show "$cmd" |
4841 | 4842 |
$run eval "$cmd" || admincmds="$admincmds |
4842 | 4843 |
$cmd" |
... | ... |
@@ -4853,43 +6615,43 @@ relink_command=\"$relink_command\"" |
4853 | 4853 |
fi |
4854 | 4854 |
|
4855 | 4855 |
# Exit here if they wanted silent mode. |
4856 |
- test "$show" = ":" && exit 0 |
|
4856 |
+ test "$show" = : && exit $EXIT_SUCCESS |
|
4857 | 4857 |
|
4858 |
- echo "----------------------------------------------------------------------" |
|
4859 |
- echo "Libraries have been installed in:" |
|
4858 |
+ $echo "X----------------------------------------------------------------------" | $Xsed |
|
4859 |
+ $echo "Libraries have been installed in:" |
|
4860 | 4860 |
for libdir in $libdirs; do |
4861 |
- echo " $libdir" |
|
4861 |
+ $echo " $libdir" |
|
4862 | 4862 |
done |
4863 |
- echo |
|
4864 |
- echo "If you ever happen to want to link against installed libraries" |
|
4865 |
- echo "in a given directory, LIBDIR, you must either use libtool, and" |
|
4866 |
- echo "specify the full pathname of the library, or use the \`-LLIBDIR'" |
|
4867 |
- echo "flag during linking and do at least one of the following:" |
|
4863 |
+ $echo |
|
4864 |
+ $echo "If you ever happen to want to link against installed libraries" |
|
4865 |
+ $echo "in a given directory, LIBDIR, you must either use libtool, and" |
|
4866 |
+ $echo "specify the full pathname of the library, or use the \`-LLIBDIR'" |
|
4867 |
+ $echo "flag during linking and do at least one of the following:" |
|
4868 | 4868 |
if test -n "$shlibpath_var"; then |
4869 |
- echo " - add LIBDIR to the \`$shlibpath_var' environment variable" |
|
4870 |
- echo " during execution" |
|
4869 |
+ $echo " - add LIBDIR to the \`$shlibpath_var' environment variable" |
|
4870 |
+ $echo " during execution" |
|
4871 | 4871 |
fi |
4872 | 4872 |
if test -n "$runpath_var"; then |
4873 |
- echo " - add LIBDIR to the \`$runpath_var' environment variable" |
|
4874 |
- echo " during linking" |
|
4873 |
+ $echo " - add LIBDIR to the \`$runpath_var' environment variable" |
|
4874 |
+ $echo " during linking" |
|
4875 | 4875 |
fi |
4876 | 4876 |
if test -n "$hardcode_libdir_flag_spec"; then |
4877 | 4877 |
libdir=LIBDIR |
4878 | 4878 |
eval flag=\"$hardcode_libdir_flag_spec\" |
4879 | 4879 |
|
4880 |
- echo " - use the \`$flag' linker flag" |
|
4880 |
+ $echo " - use the \`$flag' linker flag" |
|
4881 | 4881 |
fi |
4882 | 4882 |
if test -n "$admincmds"; then |
4883 |
- echo " - have your system administrator run these commands:$admincmds" |
|
4883 |
+ $echo " - have your system administrator run these commands:$admincmds" |
|
4884 | 4884 |
fi |
4885 | 4885 |
if test -f /etc/ld.so.conf; then |
4886 |
- echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" |
|
4886 |
+ $echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" |
|
4887 | 4887 |
fi |
4888 |
- echo |
|
4889 |
- echo "See any operating system documentation about shared libraries for" |
|
4890 |
- echo "more information, such as the ld(1) and ld.so(8) manual pages." |
|
4891 |
- echo "----------------------------------------------------------------------" |
|
4892 |
- exit 0 |
|
4888 |
+ $echo |
|
4889 |
+ $echo "See any operating system documentation about shared libraries for" |
|
4890 |
+ $echo "more information, such as the ld(1) and ld.so(8) manual pages." |
|
4891 |
+ $echo "X----------------------------------------------------------------------" | $Xsed |
|
4892 |
+ exit $EXIT_SUCCESS |
|
4893 | 4893 |
;; |
4894 | 4894 |
|
4895 | 4895 |
# libtool execute mode |
... | ... |
@@ -4901,7 +6663,7 @@ relink_command=\"$relink_command\"" |
4901 | 4901 |
if test -z "$cmd"; then |
4902 | 4902 |
$echo "$modename: you must specify a COMMAND" 1>&2 |
4903 | 4903 |
$echo "$help" |
4904 |
- exit 1 |
|
4904 |
+ exit $EXIT_FAILURE |
|
4905 | 4905 |
fi |
4906 | 4906 |
|
4907 | 4907 |
# Handle -dlopen flags immediately. |
... | ... |
@@ -4909,18 +6671,18 @@ relink_command=\"$relink_command\"" |
4909 | 4909 |
if test ! -f "$file"; then |
4910 | 4910 |
$echo "$modename: \`$file' is not a file" 1>&2 |
4911 | 4911 |
$echo "$help" 1>&2 |
4912 |
- exit 1 |
|
4912 |
+ exit $EXIT_FAILURE |
|
4913 | 4913 |
fi |
4914 | 4914 |
|
4915 | 4915 |
dir= |
4916 | 4916 |
case $file in |
4917 | 4917 |
*.la) |
4918 | 4918 |
# Check to see that this really is a libtool archive. |
4919 |
- if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : |
|
4919 |
+ if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : |
|
4920 | 4920 |
else |
4921 | 4921 |
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 |
4922 | 4922 |
$echo "$help" 1>&2 |
4923 |
- exit 1 |
|
4923 |
+ exit $EXIT_FAILURE |
|
4924 | 4924 |
fi |
4925 | 4925 |
|
4926 | 4926 |
# Read the libtool library. |
... | ... |
@@ -4947,7 +6709,7 @@ relink_command=\"$relink_command\"" |
4947 | 4947 |
dir="$dir/$objdir" |
4948 | 4948 |
else |
4949 | 4949 |
$echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2 |
4950 |
- exit 1 |
|
4950 |
+ exit $EXIT_FAILURE |
|
4951 | 4951 |
fi |
4952 | 4952 |
;; |
4953 | 4953 |
|
... | ... |
@@ -4987,7 +6749,7 @@ relink_command=\"$relink_command\"" |
4987 | 4987 |
-*) ;; |
4988 | 4988 |
*) |
4989 | 4989 |
# Do a test to see if this is really a libtool program. |
4990 |
- if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then |
|
4990 |
+ if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then |
|
4991 | 4991 |
# If there is no directory component, then add one. |
4992 | 4992 |
case $file in |
4993 | 4993 |
*/* | *\\*) . $file ;; |
... | ... |
@@ -5010,7 +6772,7 @@ relink_command=\"$relink_command\"" |
5010 | 5010 |
eval "export $shlibpath_var" |
5011 | 5011 |
fi |
5012 | 5012 |
|
5013 |
- # Restore saved enviroment variables |
|
5013 |
+ # Restore saved environment variables |
|
5014 | 5014 |
if test "${save_LC_ALL+set}" = set; then |
5015 | 5015 |
LC_ALL="$save_LC_ALL"; export LC_ALL |
5016 | 5016 |
fi |
... | ... |
@@ -5027,7 +6789,7 @@ relink_command=\"$relink_command\"" |
5027 | 5027 |
$echo "export $shlibpath_var" |
5028 | 5028 |
fi |
5029 | 5029 |
$echo "$cmd$args" |
5030 |
- exit 0 |
|
5030 |
+ exit $EXIT_SUCCESS |
|
5031 | 5031 |
fi |
5032 | 5032 |
;; |
5033 | 5033 |
|
... | ... |
@@ -5055,24 +6817,25 @@ relink_command=\"$relink_command\"" |
5055 | 5055 |
if test -z "$rm"; then |
5056 | 5056 |
$echo "$modename: you must specify an RM program" 1>&2 |
5057 | 5057 |
$echo "$help" 1>&2 |
5058 |
- exit 1 |
|
5058 |
+ exit $EXIT_FAILURE |
|
5059 | 5059 |
fi |
5060 | 5060 |
|
5061 | 5061 |
rmdirs= |
5062 | 5062 |
|
5063 |
+ origobjdir="$objdir" |
|
5063 | 5064 |
for file in $files; do |
5064 | 5065 |
dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` |
5065 | 5066 |
if test "X$dir" = "X$file"; then |
5066 | 5067 |
dir=. |
5067 |
- objdir="$objdir" |
|
5068 |
+ objdir="$origobjdir" |
|
5068 | 5069 |
else |
5069 |
- objdir="$dir/$objdir" |
|
5070 |
+ objdir="$dir/$origobjdir" |
|
5070 | 5071 |
fi |
5071 | 5072 |
name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` |
5072 |
- test $mode = uninstall && objdir="$dir" |
|
5073 |
+ test "$mode" = uninstall && objdir="$dir" |
|
5073 | 5074 |
|
5074 | 5075 |
# Remember objdir for removal later, being careful to avoid duplicates |
5075 |
- if test $mode = clean; then |
|
5076 |
+ if test "$mode" = clean; then |
|
5076 | 5077 |
case " $rmdirs " in |
5077 | 5078 |
*" $objdir "*) ;; |
5078 | 5079 |
*) rmdirs="$rmdirs $objdir" ;; |
... | ... |
@@ -5096,7 +6859,7 @@ relink_command=\"$relink_command\"" |
5096 | 5096 |
case $name in |
5097 | 5097 |
*.la) |
5098 | 5098 |
# Possibly a libtool archive, so verify it. |
5099 |
- if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then |
|
5099 |
+ if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then |
|
5100 | 5100 |
. $dir/$name |
5101 | 5101 |
|
5102 | 5102 |
# Delete the libtool libraries and symlinks. |
... | ... |
@@ -5104,18 +6867,27 @@ relink_command=\"$relink_command\"" |
5104 | 5104 |
rmfiles="$rmfiles $objdir/$n" |
5105 | 5105 |
done |
5106 | 5106 |
test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" |
5107 |
- test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" |
|
5108 | 5107 |
|
5109 |
- if test $mode = uninstall; then |
|
5108 |
+ case "$mode" in |
|
5109 |
+ clean) |
|
5110 |
+ case " $library_names " in |
|
5111 |
+ # " " in the beginning catches empty $dlname |
|
5112 |
+ *" $dlname "*) ;; |
|
5113 |
+ *) rmfiles="$rmfiles $objdir/$dlname" ;; |
|
5114 |
+ esac |
|
5115 |
+ test -n "$libdir" && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" |
|
5116 |
+ ;; |
|
5117 |
+ uninstall) |
|
5110 | 5118 |
if test -n "$library_names"; then |
5111 | 5119 |
# Do each command in the postuninstall commands. |
5112 |
- eval cmds=\"$postuninstall_cmds\" |
|
5120 |
+ cmds=$postuninstall_cmds |
|
5113 | 5121 |
save_ifs="$IFS"; IFS='~' |
5114 | 5122 |
for cmd in $cmds; do |
5115 | 5123 |
IFS="$save_ifs" |
5124 |
+ eval cmd=\"$cmd\" |
|
5116 | 5125 |
$show "$cmd" |
5117 | 5126 |
$run eval "$cmd" |
5118 |
- if test $? != 0 && test "$rmforce" != yes; then |
|
5127 |
+ if test "$?" -ne 0 && test "$rmforce" != yes; then |
|
5119 | 5128 |
exit_status=1 |
5120 | 5129 |
fi |
5121 | 5130 |
done |
... | ... |
@@ -5124,40 +6896,72 @@ relink_command=\"$relink_command\"" |
5124 | 5124 |
|
5125 | 5125 |
if test -n "$old_library"; then |
5126 | 5126 |
# Do each command in the old_postuninstall commands. |
5127 |
- eval cmds=\"$old_postuninstall_cmds\" |
|
5127 |
+ cmds=$old_postuninstall_cmds |
|
5128 | 5128 |
save_ifs="$IFS"; IFS='~' |
5129 | 5129 |
for cmd in $cmds; do |
5130 | 5130 |
IFS="$save_ifs" |
5131 |
+ eval cmd=\"$cmd\" |
|
5131 | 5132 |
$show "$cmd" |
5132 | 5133 |
$run eval "$cmd" |
5133 |
- if test $? != 0 && test "$rmforce" != yes; then |
|
5134 |
+ if test "$?" -ne 0 && test "$rmforce" != yes; then |
|
5134 | 5135 |
exit_status=1 |
5135 | 5136 |
fi |
5136 | 5137 |
done |
5137 | 5138 |
IFS="$save_ifs" |
5138 | 5139 |
fi |
5139 | 5140 |
# FIXME: should reinstall the best remaining shared library. |
5140 |
- fi |
|
5141 |
+ ;; |
|
5142 |
+ esac |
|
5141 | 5143 |
fi |
5142 | 5144 |
;; |
5143 | 5145 |
|
5144 | 5146 |
*.lo) |
5145 |
- if test "$build_old_libs" = yes; then |
|
5146 |
- oldobj=`$echo "X$name" | $Xsed -e "$lo2o"` |
|
5147 |
- rmfiles="$rmfiles $dir/$oldobj" |
|
5147 |
+ # Possibly a libtool object, so verify it. |
|
5148 |
+ if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then |
|
5149 |
+ |
|
5150 |
+ # Read the .lo file |
|
5151 |
+ . $dir/$name |
|
5152 |
+ |
|
5153 |
+ # Add PIC object to the list of files to remove. |
|
5154 |
+ if test -n "$pic_object" \ |
|
5155 |
+ && test "$pic_object" != none; then |
|
5156 |
+ rmfiles="$rmfiles $dir/$pic_object" |
|
5157 |
+ fi |
|
5158 |
+ |
|
5159 |
+ # Add non-PIC object to the list of files to remove. |
|
5160 |
+ if test -n "$non_pic_object" \ |
|
5161 |
+ && test "$non_pic_object" != none; then |
|
5162 |
+ rmfiles="$rmfiles $dir/$non_pic_object" |
|
5163 |
+ fi |
|
5148 | 5164 |
fi |
5149 | 5165 |
;; |
5150 | 5166 |
|
5151 | 5167 |
*) |
5152 |
- # Do a test to see if this is a libtool program. |
|
5153 |
- if test $mode = clean && |
|
5154 |
- (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then |
|
5155 |
- relink_command= |
|
5156 |
- . $dir/$file |
|
5168 |
+ if test "$mode" = clean ; then |
|
5169 |
+ noexename=$name |
|
5170 |
+ case $file in |
|
5171 |
+ *.exe) |
|
5172 |
+ file=`$echo $file|${SED} 's,.exe$,,'` |
|
5173 |
+ noexename=`$echo $name|${SED} 's,.exe$,,'` |
|
5174 |
+ # $file with .exe has already been added to rmfiles, |
|
5175 |
+ # add $file without .exe |
|
5176 |
+ rmfiles="$rmfiles $file" |
|
5177 |
+ ;; |
|
5178 |
+ esac |
|
5179 |
+ # Do a test to see if this is a libtool program. |
|
5180 |
+ if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then |
|
5181 |
+ relink_command= |
|
5182 |
+ . $dir/$noexename |
|
5157 | 5183 |
|
5158 |
- rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" |
|
5159 |
- if test "$fast_install" = yes && test -n "$relink_command"; then |
|
5160 |
- rmfiles="$rmfiles $objdir/lt-$name" |
|
5184 |
+ # note $name still contains .exe if it was in $file originally |
|
5185 |
+ # as does the version of $file that was added into $rmfiles |
|
5186 |
+ rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" |
|
5187 |
+ if test "$fast_install" = yes && test -n "$relink_command"; then |
|
5188 |
+ rmfiles="$rmfiles $objdir/lt-$name" |
|
5189 |
+ fi |
|
5190 |
+ if test "X$noexename" != "X$name" ; then |
|
5191 |
+ rmfiles="$rmfiles $objdir/lt-${noexename}.c" |
|
5192 |
+ fi |
|
5161 | 5193 |
fi |
5162 | 5194 |
fi |
5163 | 5195 |
;; |
... | ... |
@@ -5165,6 +6969,7 @@ relink_command=\"$relink_command\"" |
5165 | 5165 |
$show "$rm $rmfiles" |
5166 | 5166 |
$run $rm $rmfiles || exit_status=1 |
5167 | 5167 |
done |
5168 |
+ objdir="$origobjdir" |
|
5168 | 5169 |
|
5169 | 5170 |
# Try to remove the ${objdir}s in the directories where we deleted files |
5170 | 5171 |
for dir in $rmdirs; do |
... | ... |
@@ -5180,20 +6985,20 @@ relink_command=\"$relink_command\"" |
5180 | 5180 |
"") |
5181 | 5181 |
$echo "$modename: you must specify a MODE" 1>&2 |
5182 | 5182 |
$echo "$generic_help" 1>&2 |
5183 |
- exit 1 |
|
5183 |
+ exit $EXIT_FAILURE |
|
5184 | 5184 |
;; |
5185 | 5185 |
esac |
5186 | 5186 |
|
5187 | 5187 |
if test -z "$exec_cmd"; then |
5188 | 5188 |
$echo "$modename: invalid operation mode \`$mode'" 1>&2 |
5189 | 5189 |
$echo "$generic_help" 1>&2 |
5190 |
- exit 1 |
|
5190 |
+ exit $EXIT_FAILURE |
|
5191 | 5191 |
fi |
5192 | 5192 |
fi # test -z "$show_help" |
5193 | 5193 |
|
5194 | 5194 |
if test -n "$exec_cmd"; then |
5195 | 5195 |
eval exec $exec_cmd |
5196 |
- exit 1 |
|
5196 |
+ exit $EXIT_FAILURE |
|
5197 | 5197 |
fi |
5198 | 5198 |
|
5199 | 5199 |
# We need to display help for each of the modes. |
... | ... |
@@ -5212,6 +7017,7 @@ Provide generalized library-building support services. |
5212 | 5212 |
--mode=MODE use operation mode MODE [default=inferred from MODE-ARGS] |
5213 | 5213 |
--quiet same as \`--silent' |
5214 | 5214 |
--silent don't print informational messages |
5215 |
+ --tag=TAG use configuration variables from tag TAG |
|
5215 | 5216 |
--version print version information |
5216 | 5217 |
|
5217 | 5218 |
MODE must be one of the following: |
... | ... |
@@ -5225,8 +7031,10 @@ MODE must be one of the following: |
5225 | 5225 |
uninstall remove libraries from an installed directory |
5226 | 5226 |
|
5227 | 5227 |
MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for |
5228 |
-a more detailed description of MODE." |
|
5229 |
- exit 0 |
|
5228 |
+a more detailed description of MODE. |
|
5229 |
+ |
|
5230 |
+Report bugs to <bug-libtool@gnu.org>." |
|
5231 |
+ exit $EXIT_SUCCESS |
|
5230 | 5232 |
;; |
5231 | 5233 |
|
5232 | 5234 |
clean) |
... | ... |
@@ -5337,6 +7145,9 @@ The following components of LINK-COMMAND are treated specially: |
5337 | 5337 |
-no-install link a not-installable executable |
5338 | 5338 |
-no-undefined declare that a library does not refer to external symbols |
5339 | 5339 |
-o OUTPUT-FILE create OUTPUT-FILE from the specified objects |
5340 |
+ -objectlist FILE Use a list of object files found in FILE to specify objects |
|
5341 |
+ -precious-files-regex REGEX |
|
5342 |
+ don't remove output files matching REGEX |
|
5340 | 5343 |
-release RELEASE specify package release information |
5341 | 5344 |
-rpath LIBDIR the created library will eventually be installed in LIBDIR |
5342 | 5345 |
-R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries |
... | ... |
@@ -5378,14 +7189,33 @@ Otherwise, only FILE itself is deleted using RM." |
5378 | 5378 |
*) |
5379 | 5379 |
$echo "$modename: invalid operation mode \`$mode'" 1>&2 |
5380 | 5380 |
$echo "$help" 1>&2 |
5381 |
- exit 1 |
|
5381 |
+ exit $EXIT_FAILURE |
|
5382 | 5382 |
;; |
5383 | 5383 |
esac |
5384 | 5384 |
|
5385 |
-echo |
|
5385 |
+$echo |
|
5386 | 5386 |
$echo "Try \`$modename --help' for more information about other modes." |
5387 | 5387 |
|
5388 |
-exit 0 |
|
5388 |
+exit $? |
|
5389 |
+ |
|
5390 |
+# The TAGs below are defined such that we never get into a situation |
|
5391 |
+# in which we disable both kinds of libraries. Given conflicting |
|
5392 |
+# choices, we go for a static library, that is the most portable, |
|
5393 |
+# since we can't tell whether shared libraries were disabled because |
|
5394 |
+# the user asked for that or because the platform doesn't support |
|
5395 |
+# them. This is particularly important on AIX, because we don't |
|
5396 |
+# support having both static and shared libraries enabled at the same |
|
5397 |
+# time on that platform, so we default to a shared-only configuration. |
|
5398 |
+# If a disable-shared tag is given, we'll fallback to a static-only |
|
5399 |
+# configuration. But we'll never go from static-only to shared-only. |
|
5400 |
+ |
|
5401 |
+# ### BEGIN LIBTOOL TAG CONFIG: disable-shared |
|
5402 |
+disable_libs=shared |
|
5403 |
+# ### END LIBTOOL TAG CONFIG: disable-shared |
|
5404 |
+ |
|
5405 |
+# ### BEGIN LIBTOOL TAG CONFIG: disable-static |
|
5406 |
+disable_libs=static |
|
5407 |
+# ### END LIBTOOL TAG CONFIG: disable-static |
|
5389 | 5408 |
|
5390 | 5409 |
# Local Variables: |
5391 | 5410 |
# mode:shell-script |
... | ... |
@@ -5434,7 +7264,7 @@ AR_FLAGS="cru" |
5434 | 5434 |
LTCC="gcc" |
5435 | 5435 |
|
5436 | 5436 |
# LTCC compiler flags. |
5437 |
-LTCFLAGS="-D_FORTIFY_SOURCE=2 -fstack-protector -g3 -march=k8 -pedantic -W -Wall -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat=2 -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wno-unused-parameter -Wpointer-arith -Wshadow -Wstack-protector -Wstrict-prototypes -Wswitch -Wundef -Wwrite-strings " |
|
5437 |
+LTCFLAGS="-mfpmath=sse -msse -msse2 -m3dnow -mmmx -D_FORTIFY_SOURCE=2 -fstack-protector -march=k8 -pedantic -g3 -Wextra -Wall -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat=2 -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wno-unused-parameter -Wpointer-arith -Wshadow -Wstack-protector -Wstrict-prototypes -Wswitch -Wundef -Wwrite-strings" |
|
5438 | 5438 |
|
5439 | 5439 |
# A language-specific compiler. |
5440 | 5440 |
CC="g++" |
... | ... |
@@ -5674,7 +7504,7 @@ link_all_deplibs=no |
5674 | 5674 |
sys_lib_search_path_spec=" /usr/lib/gcc/x86_64-linux-gnu/4.1.2/ /usr/lib/gcc/x86_64-linux-gnu/4.1.2/ /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../../x86_64-linux-gnu/lib/x86_64-linux-gnu/4.1.2/ /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../../x86_64-linux-gnu/lib/ /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../x86_64-linux-gnu/4.1.2/ /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../ /lib/x86_64-linux-gnu/4.1.2/ /lib/ /usr/lib/x86_64-linux-gnu/4.1.2/ /usr/lib/" |
5675 | 5675 |
|
5676 | 5676 |
# Run-time system search path for libraries |
5677 |
-sys_lib_dlsearch_path_spec="/lib /usr/lib /usr/X11R6/lib " |
|
5677 |
+sys_lib_dlsearch_path_spec="/lib /usr/lib " |
|
5678 | 5678 |
|
5679 | 5679 |
# Fix the shell variable $srcfile for the compiler. |
5680 | 5680 |
fix_srcfile_path="" |
... | ... |
@@ -1,147 +1,566 @@ |
1 |
-/* |
|
2 |
- * HTML Entity & Encoding normalization. |
|
3 |
- * |
|
4 | ||
5 |
- * |
|
6 |
- * This program is free software; you can redistribute it and/or modify |
|
7 |
- * it under the terms of the GNU General Public License as published by |
|
8 |
- * the Free Software Foundation; either version 2 of the License, or |
|
9 |
- * (at your option) any later version. |
|
10 |
- * |
|
11 |
- * This program is distributed in the hope that it will be useful, |
|
12 |
- * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
13 |
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
14 |
- * GNU General Public License for more details. |
|
15 |
- * |
|
16 |
- * You should have received a copy of the GNU General Public License |
|
17 |
- * along with this program; if not, write to the Free Software |
|
18 |
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
|
19 |
- * MA 02110-1301, USA. |
|
20 |
- * |
|
21 |
- */ |
|
1 |
+/* TODO: include GPL headers */ |
|
22 | 2 |
#include <hashtab.h> |
23 | 3 |
static struct element entities_htable_elements[] = { |
24 |
-/* don't modify the order of elements here, an elements index is its hashcode, if you move it |
|
25 |
- * lookup won't work anymore correctly. |
|
26 |
- * You can safely change the value on the right.*/ |
|
4 |
+ {(const unsigned char*)"varpropto", 8733}, |
|
5 |
+ {(const unsigned char*)"ncong", 8775}, |
|
6 |
+ {(const unsigned char*)"grave", 96}, |
|
27 | 7 |
{NULL, 0}, |
8 |
+ {(const unsigned char*)"toea", 10536}, |
|
9 |
+ {(const unsigned char*)"map", 8614}, |
|
10 |
+ {(const unsigned char*)"nap", 8777}, |
|
11 |
+ {(const unsigned char*)"lap", 10885}, |
|
28 | 12 |
{NULL, 0}, |
13 |
+ {(const unsigned char*)"gap", 10886}, |
|
29 | 14 |
{NULL, 0}, |
30 |
- {(const unsigned char*)"asymp", 8776}, |
|
31 |
- {(const unsigned char*)"sup", 8835}, |
|
15 |
+ {(const unsigned char*)"twoheadrightarrow", 8608}, |
|
32 | 16 |
{NULL, 0}, |
17 |
+ {(const unsigned char*)"Ll", 8920}, |
|
18 |
+ {(const unsigned char*)"amalg", 10815}, |
|
19 |
+ {(const unsigned char*)"geqslant", 10878}, |
|
33 | 20 |
{NULL, 0}, |
21 |
+ {(const unsigned char*)"origof", 8886}, |
|
22 |
+ {(const unsigned char*)"Tab", 9}, |
|
34 | 23 |
{NULL, 0}, |
24 |
+ {(const unsigned char*)"leqslant", 10877}, |
|
25 |
+ {(const unsigned char*)"asympeq", 8781}, |
|
35 | 26 |
{NULL, 0}, |
36 | 27 |
{NULL, 0}, |
28 |
+ {(const unsigned char*)"sext", 10038}, |
|
29 |
+ {(const unsigned char*)"Wedge", 8896}, |
|
30 |
+ {(const unsigned char*)"sqcap", 8851}, |
|
31 |
+ {(const unsigned char*)"loang", 12312}, |
|
32 |
+ {(const unsigned char*)"ngeq", 8817}, |
|
37 | 33 |
{NULL, 0}, |
34 |
+ {(const unsigned char*)"NotLessTilde", 8820}, |
|
35 |
+ {(const unsigned char*)"nwArr", 8662}, |
|
38 | 36 |
{NULL, 0}, |
39 |
- {(const unsigned char*)"crarr", 8629}, |
|
37 |
+ {(const unsigned char*)"roang", 12313}, |
|
38 |
+ {(const unsigned char*)"Delta", 916}, |
|
39 |
+ {NULL, 0}, |
|
40 |
+ {(const unsigned char*)"swArr", 8665}, |
|
41 |
+ {NULL, 0}, |
|
42 |
+ {NULL, 0}, |
|
43 |
+ {NULL, 0}, |
|
44 |
+ {(const unsigned char*)"DifferentialD", 8518}, |
|
45 |
+ {(const unsigned char*)"gl", 8823}, |
|
46 |
+ {(const unsigned char*)"loz", 9674}, |
|
47 |
+ {(const unsigned char*)"Prime", 8243}, |
|
48 |
+ {(const unsigned char*)"ShortRightArrow", 8594}, |
|
49 |
+ {(const unsigned char*)"sigmaf", 962}, |
|
50 |
+ {(const unsigned char*)"ll", 8810}, |
|
51 |
+ {(const unsigned char*)"rx", 8478}, |
|
52 |
+ {NULL, 0}, |
|
53 |
+ {NULL, 0}, |
|
54 |
+ {(const unsigned char*)"circledS", 9416}, |
|
55 |
+ {NULL, 0}, |
|
56 |
+ {NULL, 0}, |
|
57 |
+ {NULL, 0}, |
|
58 |
+ {NULL, 0}, |
|
59 |
+ {(const unsigned char*)"notni", 8716}, |
|
60 |
+ {NULL, 0}, |
|
61 |
+ {(const unsigned char*)"wedge", 8743}, |
|
62 |
+ {NULL, 0}, |
|
63 |
+ {NULL, 0}, |
|
64 |
+ {NULL, 0}, |
|
65 |
+ {(const unsigned char*)"rightrightarrows", 8649}, |
|
66 |
+ {NULL, 0}, |
|
67 |
+ {NULL, 0}, |
|
68 |
+ {NULL, 0}, |
|
69 |
+ {(const unsigned char*)"delta", 948}, |
|
70 |
+ {NULL, 0}, |
|
71 |
+ {NULL, 0}, |
|
72 |
+ {(const unsigned char*)"ffllig", 64260}, |
|
73 |
+ {NULL, 0}, |
|
74 |
+ {NULL, 0}, |
|
75 |
+ {(const unsigned char*)"Bernoullis", 8492}, |
|
76 |
+ {(const unsigned char*)"djcy", 1106}, |
|
77 |
+ {NULL, 0}, |
|
78 |
+ {(const unsigned char*)"gjcy", 1107}, |
|
79 |
+ {(const unsigned char*)"prime", 8242}, |
|
80 |
+ {NULL, 0}, |
|
81 |
+ {NULL, 0}, |
|
82 |
+ {(const unsigned char*)"kjcy", 1116}, |
|
83 |
+ {(const unsigned char*)"ljcy", 1113}, |
|
84 |
+ {(const unsigned char*)"lmoustache", 9136}, |
|
85 |
+ {(const unsigned char*)"njcy", 1114}, |
|
86 |
+ {(const unsigned char*)"boxDl", 9558}, |
|
87 |
+ {(const unsigned char*)"clubs", 9827}, |
|
88 |
+ {(const unsigned char*)"Integral", 8747}, |
|
89 |
+ {NULL, 0}, |
|
90 |
+ {(const unsigned char*)"rmoustache", 9137}, |
|
91 |
+ {(const unsigned char*)"sol", 47}, |
|
92 |
+ {(const unsigned char*)"SquareSubset", 8847}, |
|
93 |
+ {NULL, 0}, |
|
94 |
+ {(const unsigned char*)"rect", 9645}, |
|
95 |
+ {(const unsigned char*)"sect", 167}, |
|
96 |
+ {(const unsigned char*)"VeryThinSpace", 8202}, |
|
97 |
+ {(const unsigned char*)"lesssim", 8818}, |
|
98 |
+ {NULL, 0}, |
|
99 |
+ {NULL, 0}, |
|
100 |
+ {NULL, 0}, |
|
101 |
+ {(const unsigned char*)"UnderBrace", 65080}, |
|
102 |
+ {NULL, 0}, |
|
103 |
+ {(const unsigned char*)"comp", 8705}, |
|
104 |
+ {(const unsigned char*)"mapstoup", 8613}, |
|
105 |
+ {NULL, 0}, |
|
106 |
+ {NULL, 0}, |
|
107 |
+ {NULL, 0}, |
|
108 |
+ {NULL, 0}, |
|
109 |
+ {(const unsigned char*)"circ", 710}, |
|
110 |
+ {(const unsigned char*)"complement", 8705}, |
|
111 |
+ {(const unsigned char*)"flat", 9837}, |
|
112 |
+ {NULL, 0}, |
|
113 |
+ {NULL, 0}, |
|
114 |
+ {NULL, 0}, |
|
115 |
+ {(const unsigned char*)"LowerLeftArrow", 8601}, |
|
116 |
+ {NULL, 0}, |
|
117 |
+ {(const unsigned char*)"cuesc", 8927}, |
|
118 |
+ {(const unsigned char*)"sce", 10928}, |
|
119 |
+ {NULL, 0}, |
|
120 |
+ {NULL, 0}, |
|
121 |
+ {NULL, 0}, |
|
122 |
+ {NULL, 0}, |
|
123 |
+ {(const unsigned char*)"euro", 8364}, |
|
124 |
+ {(const unsigned char*)"succcurlyeq", 8829}, |
|
125 |
+ {(const unsigned char*)"LeftCeiling", 8968}, |
|
126 |
+ {(const unsigned char*)"vprop", 8733}, |
|
127 |
+ {NULL, 0}, |
|
128 |
+ {NULL, 0}, |
|
129 |
+ {(const unsigned char*)"nexists", 8708}, |
|
130 |
+ {NULL, 0}, |
|
131 |
+ {NULL, 0}, |
|
132 |
+ {NULL, 0}, |
|
133 |
+ {NULL, 0}, |
|
134 |
+ {(const unsigned char*)"pitchfork", 8916}, |
|
135 |
+ {(const unsigned char*)"darr2", 8650}, |
|
136 |
+ {NULL, 0}, |
|
137 |
+ {(const unsigned char*)"Ubrcy", 1038}, |
|
138 |
+ {NULL, 0}, |
|
139 |
+ {NULL, 0}, |
|
140 |
+ {(const unsigned char*)"sqsupe", 8850}, |
|
141 |
+ {(const unsigned char*)"eparsl", 10723}, |
|
142 |
+ {NULL, 0}, |
|
143 |
+ {(const unsigned char*)"larr2", 8647}, |
|
144 |
+ {NULL, 0}, |
|
145 |
+ {NULL, 0}, |
|
146 |
+ {(const unsigned char*)"LeftUpVectorBar", 10584}, |
|
147 |
+ {(const unsigned char*)"sqsupseteq", 8850}, |
|
148 |
+ {NULL, 0}, |
|
149 |
+ {(const unsigned char*)"rarr2", 8649}, |
|
150 |
+ {NULL, 0}, |
|
151 |
+ {NULL, 0}, |
|
152 |
+ {(const unsigned char*)"uarr2", 8648}, |
|
153 |
+ {(const unsigned char*)"veeeq", 8794}, |
|
154 |
+ {NULL, 0}, |
|
155 |
+ {NULL, 0}, |
|
156 |
+ {NULL, 0}, |
|
157 |
+ {NULL, 0}, |
|
158 |
+ {(const unsigned char*)"AElig", 198}, |
|
159 |
+ {(const unsigned char*)"notnivb", 8958}, |
|
160 |
+ {NULL, 0}, |
|
161 |
+ {NULL, 0}, |
|
162 |
+ {NULL, 0}, |
|
163 |
+ {(const unsigned char*)"plusb", 8862}, |
|
164 |
+ {NULL, 0}, |
|
165 |
+ {NULL, 0}, |
|
166 |
+ {NULL, 0}, |
|
167 |
+ {(const unsigned char*)"DoubleRightTee", 8872}, |
|
168 |
+ {(const unsigned char*)"NotSquareSupersetEqual", 8931}, |
|
169 |
+ {(const unsigned char*)"hookrightarrow", 8618}, |
|
170 |
+ {(const unsigned char*)"ubrcy", 1118}, |
|
171 |
+ {NULL, 0}, |
|
172 |
+ {(const unsigned char*)"OElig", 338}, |
|
173 |
+ {NULL, 0}, |
|
174 |
+ {(const unsigned char*)"NotGreaterTilde", 8821}, |
|
175 |
+ {(const unsigned char*)"filig", 64257}, |
|
176 |
+ {(const unsigned char*)"nlt", 8814}, |
|
177 |
+ {(const unsigned char*)"Agr", 913}, |
|
178 |
+ {(const unsigned char*)"GreaterEqual", 8805}, |
|
179 |
+ {(const unsigned char*)"mldr", 8230}, |
|
180 |
+ {(const unsigned char*)"nldr", 8229}, |
|
181 |
+ {(const unsigned char*)"drcrop", 8972}, |
|
182 |
+ {(const unsigned char*)"Dgr", 916}, |
|
183 |
+ {(const unsigned char*)"Bgr", 914}, |
|
184 |
+ {(const unsigned char*)"Igr", 921}, |
|
185 |
+ {(const unsigned char*)"angmsd", 8737}, |
|
186 |
+ {(const unsigned char*)"trie", 8796}, |
|
187 |
+ {(const unsigned char*)"Kgr", 922}, |
|
188 |
+ {(const unsigned char*)"Ggr", 915}, |
|
189 |
+ {(const unsigned char*)"Mgr", 924}, |
|
190 |
+ {(const unsigned char*)"Egr", 917}, |
|
191 |
+ {(const unsigned char*)"Ogr", 927}, |
|
192 |
+ {(const unsigned char*)"Ngr", 925}, |
|
193 |
+ {(const unsigned char*)"Lgr", 923}, |
|
194 |
+ {(const unsigned char*)"Pgr", 928}, |
|
195 |
+ {(const unsigned char*)"Sgr", 931}, |
|
196 |
+ {(const unsigned char*)"cong", 8773}, |
|
197 |
+ {(const unsigned char*)"doteqdot", 8785}, |
|
198 |
+ {(const unsigned char*)"urcrop", 8974}, |
|
199 |
+ {(const unsigned char*)"Rgr", 929}, |
|
200 |
+ {(const unsigned char*)"Xgr", 926}, |
|
201 |
+ {(const unsigned char*)"Tgr", 932}, |
|
202 |
+ {(const unsigned char*)"Ugr", 933}, |
|
203 |
+ {NULL, 0}, |
|
204 |
+ {(const unsigned char*)"nless", 8814}, |
|
205 |
+ {(const unsigned char*)"LeftTee", 8867}, |
|
206 |
+ {(const unsigned char*)"OverBar", 175}, |
|
207 |
+ {(const unsigned char*)"Zgr", 918}, |
|
208 |
+ {(const unsigned char*)"agr", 945}, |
|
209 |
+ {(const unsigned char*)"bgr", 946}, |
|
210 |
+ {(const unsigned char*)"phis", 981}, |
|
211 |
+ {(const unsigned char*)"dgr", 948}, |
|
212 |
+ {(const unsigned char*)"intlarhk", 10775}, |
|
213 |
+ {(const unsigned char*)"boxplus", 8862}, |
|
214 |
+ {(const unsigned char*)"ggr", 947}, |
|
215 |
+ {(const unsigned char*)"egr", 949}, |
|
216 |
+ {(const unsigned char*)"nrtrie", 8941}, |
|
217 |
+ {(const unsigned char*)"rdldhar", 10601}, |
|
218 |
+ {(const unsigned char*)"lrcorner", 8991}, |
|
219 |
+ {(const unsigned char*)"igr", 953}, |
|
220 |
+ {(const unsigned char*)"lgr", 955}, |
|
221 |
+ {(const unsigned char*)"lhblk", 9604}, |
|
222 |
+ {(const unsigned char*)"ngr", 957}, |
|
223 |
+ {(const unsigned char*)"mgr", 956}, |
|
224 |
+ {(const unsigned char*)"kgr", 954}, |
|
225 |
+ {(const unsigned char*)"ogr", 959}, |
|
226 |
+ {(const unsigned char*)"urcorner", 8989}, |
|
227 |
+ {(const unsigned char*)"sgr", 963}, |
|
228 |
+ {(const unsigned char*)"boxUL", 9565}, |
|
229 |
+ {(const unsigned char*)"npolint", 10772}, |
|
230 |
+ {(const unsigned char*)"uhblk", 9600}, |
|
231 |
+ {(const unsigned char*)"rgr", 961}, |
|
232 |
+ {(const unsigned char*)"curarrm", 10556}, |
|
233 |
+ {(const unsigned char*)"pgr", 960}, |
|
234 |
+ {(const unsigned char*)"ruluhar", 10600}, |
|
235 |
+ {(const unsigned char*)"lbbrk", 12308}, |
|
236 |
+ {(const unsigned char*)"zgr", 950}, |
|
237 |
+ {(const unsigned char*)"tgr", 964}, |
|
238 |
+ {(const unsigned char*)"ugr", 965}, |
|
239 |
+ {NULL, 0}, |
|
240 |
+ {(const unsigned char*)"rbbrk", 12309}, |
|
241 |
+ {(const unsigned char*)"profline", 8978}, |
|
242 |
+ {NULL, 0}, |
|
243 |
+ {NULL, 0}, |
|
244 |
+ {(const unsigned char*)"rlm", 8207}, |
|
245 |
+ {(const unsigned char*)"OverBrace", 65079}, |
|
246 |
+ {(const unsigned char*)"xgr", 958}, |
|
247 |
+ {(const unsigned char*)"lsaquo", 8249}, |
|
248 |
+ {NULL, 0}, |
|
249 |
+ {(const unsigned char*)"nwarrow", 8598}, |
|
250 |
+ {(const unsigned char*)"Equilibrium", 8652}, |
|
251 |
+ {NULL, 0}, |
|
252 |
+ {(const unsigned char*)"rsaquo", 8250}, |
|
253 |
+ {NULL, 0}, |
|
254 |
+ {(const unsigned char*)"swarrow", 8601}, |
|
255 |
+ {NULL, 0}, |
|
256 |
+ {NULL, 0}, |
|
257 |
+ {NULL, 0}, |
|
258 |
+ {NULL, 0}, |
|
259 |
+ {NULL, 0}, |
|
260 |
+ {NULL, 0}, |
|
261 |
+ {NULL, 0}, |
|
262 |
+ {(const unsigned char*)"prec", 8826}, |
|
263 |
+ {(const unsigned char*)"ltrie", 8884}, |
|
264 |
+ {(const unsigned char*)"dharl", 8643}, |
|
265 |
+ {(const unsigned char*)"shortmid", 8739}, |
|
266 |
+ {NULL, 0}, |
|
267 |
+ {NULL, 0}, |
|
268 |
+ {(const unsigned char*)"nleftrightarrow", 8622}, |
|
269 |
+ {(const unsigned char*)"rtrie", 8885}, |
|
270 |
+ {(const unsigned char*)"Im", 8465}, |
|
271 |
+ {(const unsigned char*)"frown", 8994}, |
|
272 |
+ {NULL, 0}, |
|
273 |
+ {NULL, 0}, |
|
274 |
+ {NULL, 0}, |
|
275 |
+ {(const unsigned char*)"pertenk", 8241}, |
|
276 |
+ {NULL, 0}, |
|
277 |
+ {NULL, 0}, |
|
278 |
+ {(const unsigned char*)"lessgtr", 8822}, |
|
279 |
+ {(const unsigned char*)"bigvee", 8897}, |
|
280 |
+ {(const unsigned char*)"supseteq", 8839}, |
|
281 |
+ {(const unsigned char*)"uharl", 8639}, |
|
282 |
+ {NULL, 0}, |
|
283 |
+ {(const unsigned char*)"Longrightarrow", 10233}, |
|
284 |
+ {(const unsigned char*)"lrarr2", 8646}, |
|
285 |
+ {NULL, 0}, |
|
286 |
+ {(const unsigned char*)"wreath", 8768}, |
|
287 |
+ {NULL, 0}, |
|
288 |
+ {(const unsigned char*)"Updownarrow", 8661}, |
|
289 |
+ {NULL, 0}, |
|
290 |
+ {NULL, 0}, |
|
291 |
+ {NULL, 0}, |
|
292 |
+ {(const unsigned char*)"lessdot", 8918}, |
|
293 |
+ {NULL, 0}, |
|
294 |
+ {NULL, 0}, |
|
295 |
+ {NULL, 0}, |
|
296 |
+ {NULL, 0}, |
|
297 |
+ {NULL, 0}, |
|
298 |
+ {(const unsigned char*)"nlArr", 8653}, |
|
299 |
+ {(const unsigned char*)"SOFTcy", 1068}, |
|
300 |
+ {NULL, 0}, |
|
301 |
+ {(const unsigned char*)"Barwed", 8966}, |
|
302 |
+ {(const unsigned char*)"upharpoonleft", 8639}, |
|
303 |
+ {NULL, 0}, |
|
304 |
+ {NULL, 0}, |
|
305 |
+ {(const unsigned char*)"FilledVerySmallSquare", 9642}, |
|
306 |
+ {NULL, 0}, |
|
307 |
+ {NULL, 0}, |
|
308 |
+ {(const unsigned char*)"coprod", 8720}, |
|
309 |
+ {(const unsigned char*)"pm", 177}, |
|
310 |
+ {NULL, 0}, |
|
311 |
+ {(const unsigned char*)"nLeftarrow", 8653}, |
|
312 |
+ {NULL, 0}, |
|
313 |
+ {(const unsigned char*)"DScy", 1029}, |
|
314 |
+ {(const unsigned char*)"xlArr", 10232}, |
|
315 |
+ {(const unsigned char*)"longrightarrow", 10230}, |
|
316 |
+ {NULL, 0}, |
|
317 |
+ {NULL, 0}, |
|
318 |
+ {(const unsigned char*)"subseteq", 8838}, |
|
319 |
+ {NULL, 0}, |
|
320 |
+ {(const unsigned char*)"updownarrow", 8597}, |
|
321 |
+ {(const unsigned char*)"bsime", 8909}, |
|
322 |
+ {NULL, 0}, |
|
323 |
+ {NULL, 0}, |
|
324 |
+ {(const unsigned char*)"supsetneq", 8843}, |
|
325 |
+ {NULL, 0}, |
|
326 |
+ {NULL, 0}, |
|
327 |
+ {(const unsigned char*)"frac56", 8538}, |
|
328 |
+ {NULL, 0}, |
|
329 |
+ {(const unsigned char*)"TScy", 1062}, |
|
330 |
+ {NULL, 0}, |
|
331 |
+ {(const unsigned char*)"zeetrf", 8488}, |
|
332 |
+ {(const unsigned char*)"ogon", 731}, |
|
333 |
+ {(const unsigned char*)"barwed", 8965}, |
|
334 |
+ {(const unsigned char*)"nsime", 8772}, |
|
335 |
+ {NULL, 0}, |
|
336 |
+ {NULL, 0}, |
|
337 |
+ {NULL, 0}, |
|
338 |
+ {NULL, 0}, |
|
339 |
+ {NULL, 0}, |
|
340 |
+ {NULL, 0}, |
|
341 |
+ {NULL, 0}, |
|
342 |
+ {(const unsigned char*)"lEg", 10891}, |
|
343 |
+ {(const unsigned char*)"lrhar", 8651}, |
|
344 |
+ {NULL, 0}, |
|
345 |
+ {NULL, 0}, |
|
346 |
+ {NULL, 0}, |
|
347 |
+ {(const unsigned char*)"boxminus", 8863}, |
|
348 |
+ {(const unsigned char*)"ape", 8778}, |
|
349 |
+ {NULL, 0}, |
|
350 |
+ {(const unsigned char*)"divonx", 8903}, |
|
351 |
+ {(const unsigned char*)"hksearow", 10533}, |
|
352 |
+ {(const unsigned char*)"boxhD", 9573}, |
|
353 |
+ {(const unsigned char*)"NotLessEqual", 8816}, |
|
354 |
+ {(const unsigned char*)"ang90", 8735}, |
|
355 |
+ {(const unsigned char*)"sstarf", 8902}, |
|
356 |
+ {NULL, 0}, |
|
357 |
+ {NULL, 0}, |
|
358 |
+ {NULL, 0}, |
|
359 |
+ {NULL, 0}, |
|
360 |
+ {NULL, 0}, |
|
361 |
+ {NULL, 0}, |
|
362 |
+ {(const unsigned char*)"subsetneq", 8842}, |
|
363 |
+ {(const unsigned char*)"Darr", 8609}, |
|
364 |
+ {NULL, 0}, |
|
365 |
+ {(const unsigned char*)"curarr", 8631}, |
|
366 |
+ {NULL, 0}, |
|
367 |
+ {NULL, 0}, |
|
368 |
+ {NULL, 0}, |
|
369 |
+ {NULL, 0}, |
|
370 |
+ {(const unsigned char*)"real", 8476}, |
|
371 |
+ {(const unsigned char*)"Larr", 8606}, |
|
372 |
+ {(const unsigned char*)"CircleDot", 8857}, |
|
373 |
+ {NULL, 0}, |
|
374 |
+ {NULL, 0}, |
|
375 |
+ {NULL, 0}, |
|
376 |
+ {(const unsigned char*)"CircleTimes", 8855}, |
|
377 |
+ {(const unsigned char*)"Rarr", 8608}, |
|
378 |
+ {(const unsigned char*)"varpi", 982}, |
|
379 |
+ {(const unsigned char*)"SuchThat", 8715}, |
|
380 |
+ {(const unsigned char*)"Uarr", 8607}, |
|
381 |
+ {(const unsigned char*)"smeparsl", 10724}, |
|
382 |
+ {NULL, 0}, |
|
383 |
+ {(const unsigned char*)"orslope", 10839}, |
|
384 |
+ {(const unsigned char*)"cuwed", 8911}, |
|
385 |
+ {NULL, 0}, |
|
386 |
+ {NULL, 0}, |
|
387 |
+ {NULL, 0}, |
|
388 |
+ {(const unsigned char*)"Breve", 728}, |
|
389 |
+ {(const unsigned char*)"nwarr", 8598}, |
|
390 |
+ {NULL, 0}, |
|
391 |
+ {(const unsigned char*)"orv", 10843}, |
|
392 |
+ {(const unsigned char*)"zwj", 8205}, |
|
393 |
+ {(const unsigned char*)"swarr", 8601}, |
|
394 |
+ {NULL, 0}, |
|
395 |
+ {(const unsigned char*)"darr", 8595}, |
|
396 |
+ {(const unsigned char*)"gtrdot", 8919}, |
|
397 |
+ {(const unsigned char*)"precneqq", 10933}, |
|
398 |
+ {(const unsigned char*)"LessGreater", 8822}, |
|
399 |
+ {(const unsigned char*)"harr", 8596}, |
|
400 |
+ {(const unsigned char*)"UpperLeftArrow", 8598}, |
|
401 |
+ {(const unsigned char*)"Verbar", 8214}, |
|
402 |
+ {(const unsigned char*)"harrw", 8621}, |
|
403 |
+ {(const unsigned char*)"TildeTilde", 8776}, |
|
404 |
+ {(const unsigned char*)"larr", 8592}, |
|
405 |
+ {NULL, 0}, |
|
406 |
+ {(const unsigned char*)"succsim", 8831}, |
|
407 |
+ {(const unsigned char*)"rarrw", 8605}, |
|
408 |
+ {NULL, 0}, |
|
409 |
+ {(const unsigned char*)"rarr", 8594}, |
|
410 |
+ {(const unsigned char*)"prnE", 10933}, |
|
411 |
+ {(const unsigned char*)"Hat", 94}, |
|
412 |
+ {(const unsigned char*)"uarr", 8593}, |
|
413 |
+ {(const unsigned char*)"varr", 8597}, |
|
414 |
+ {NULL, 0}, |
|
415 |
+ {NULL, 0}, |
|
416 |
+ {NULL, 0}, |
|
417 |
+ {NULL, 0}, |
|
418 |
+ {(const unsigned char*)"boxvR", 9566}, |
|
419 |
+ {NULL, 0}, |
|
420 |
+ {(const unsigned char*)"micro", 181}, |
|
421 |
+ {(const unsigned char*)"breve", 728}, |
|
422 |
+ {NULL, 0}, |
|
423 |
+ {(const unsigned char*)"nequiv", 8802}, |
|
424 |
+ {NULL, 0}, |
|
425 |
+ {NULL, 0}, |
|
426 |
+ {NULL, 0}, |
|
427 |
+ {NULL, 0}, |
|
428 |
+ {NULL, 0}, |
|
429 |
+ {NULL, 0}, |
|
430 |
+ {NULL, 0}, |
|
431 |
+ {NULL, 0}, |
|
432 |
+ {(const unsigned char*)"verbar", 124}, |
|
433 |
+ {(const unsigned char*)"lopar", 10629}, |
|
434 |
+ {NULL, 0}, |
|
435 |
+ {NULL, 0}, |
|
436 |
+ {NULL, 0}, |
|
437 |
+ {(const unsigned char*)"frac35", 8535}, |
|
438 |
+ {(const unsigned char*)"RightArrow", 8594}, |
|
40 | 439 |
{(const unsigned char*)"copy", 169}, |
440 |
+ {(const unsigned char*)"ropar", 10630}, |
|
41 | 441 |
{NULL, 0}, |
42 | 442 |
{NULL, 0}, |
43 |
- {(const unsigned char*)"ensp", 8194}, |
|
44 | 443 |
{NULL, 0}, |
45 |
- {(const unsigned char*)"forall", 8704}, |
|
444 |
+ {(const unsigned char*)"nsubseteq", 8840}, |
|
46 | 445 |
{NULL, 0}, |
47 | 446 |
{NULL, 0}, |
48 | 447 |
{NULL, 0}, |
49 | 448 |
{NULL, 0}, |
50 |
- {(const unsigned char*)"theta", 952}, |
|
51 | 449 |
{NULL, 0}, |
52 | 450 |
{NULL, 0}, |
451 |
+ {(const unsigned char*)"nvlArr", 10498}, |
|
53 | 452 |
{NULL, 0}, |
54 | 453 |
{NULL, 0}, |
454 |
+ {(const unsigned char*)"setminus", 8726}, |
|
455 |
+ {(const unsigned char*)"boxvH", 9578}, |
|
456 |
+ {(const unsigned char*)"doteq", 8784}, |
|
55 | 457 |
{NULL, 0}, |
56 |
- {(const unsigned char*)"nbsp", 160}, |
|
57 | 458 |
{NULL, 0}, |
58 | 459 |
{NULL, 0}, |
460 |
+ {(const unsigned char*)"vartriangleleft", 8882}, |
|
59 | 461 |
{NULL, 0}, |
462 |
+ {(const unsigned char*)"RightTriangleBar", 10704}, |
|
463 |
+ {(const unsigned char*)"shy", 173}, |
|
464 |
+ {(const unsigned char*)"RightUpVectorBar", 10580}, |
|
60 | 465 |
{NULL, 0}, |
61 | 466 |
{NULL, 0}, |
62 |
- {(const unsigned char*)"plusmn", 177}, |
|
63 |
- {(const unsigned char*)"mdash", 8212}, |
|
64 |
- {(const unsigned char*)"Omicron", 927}, |
|
65 |
- {(const unsigned char*)"Mu", 924}, |
|
66 |
- {(const unsigned char*)"Nu", 925}, |
|
67 |
- {(const unsigned char*)"ndash", 8211}, |
|
68 | 467 |
{NULL, 0}, |
69 | 468 |
{NULL, 0}, |
469 |
+ {(const unsigned char*)"Kappa", 922}, |
|
70 | 470 |
{NULL, 0}, |
71 |
- {(const unsigned char*)"Chi", 935}, |
|
72 |
- {(const unsigned char*)"Pi", 928}, |
|
471 |
+ {(const unsigned char*)"leftrightarrows", 8646}, |
|
472 |
+ {(const unsigned char*)"sqsupset", 8848}, |
|
473 |
+ {(const unsigned char*)"rationals", 8474}, |
|
73 | 474 |
{NULL, 0}, |
74 | 475 |
{NULL, 0}, |
75 | 476 |
{NULL, 0}, |
76 |
- {(const unsigned char*)"ETH", 208}, |
|
77 | 477 |
{NULL, 0}, |
78 | 478 |
{NULL, 0}, |
479 |
+ {(const unsigned char*)"cent", 162}, |
|
79 | 480 |
{NULL, 0}, |
80 |
- {(const unsigned char*)"Xi", 926}, |
|
81 | 481 |
{NULL, 0}, |
82 | 482 |
{NULL, 0}, |
483 |
+ {(const unsigned char*)"lobrk", 12314}, |
|
83 | 484 |
{NULL, 0}, |
84 |
- {(const unsigned char*)"Phi", 934}, |
|
85 | 485 |
{NULL, 0}, |
486 |
+ {(const unsigned char*)"OverBracket", 9140}, |
|
86 | 487 |
{NULL, 0}, |
87 | 488 |
{NULL, 0}, |
489 |
+ {(const unsigned char*)"robrk", 12315}, |
|
490 |
+ {(const unsigned char*)"Fouriertrf", 8497}, |
|
88 | 491 |
{NULL, 0}, |
89 | 492 |
{NULL, 0}, |
90 | 493 |
{NULL, 0}, |
91 | 494 |
{NULL, 0}, |
92 | 495 |
{NULL, 0}, |
496 |
+ {(const unsigned char*)"blacktriangleleft", 9666}, |
|
497 |
+ {(const unsigned char*)"bumpe", 8783}, |
|
93 | 498 |
{NULL, 0}, |
94 |
- {(const unsigned char*)"bull", 8226}, |
|
95 | 499 |
{NULL, 0}, |
96 |
- {(const unsigned char*)"omicron", 959}, |
|
97 |
- {(const unsigned char*)"mu", 956}, |
|
98 |
- {(const unsigned char*)"nu", 957}, |
|
99 | 500 |
{NULL, 0}, |
100 |
- {(const unsigned char*)"or", 8744}, |
|
101 |
- {(const unsigned char*)"circ", 710}, |
|
102 |
- {(const unsigned char*)"ni", 8715}, |
|
103 |
- {(const unsigned char*)"chi", 967}, |
|
104 |
- {(const unsigned char*)"pi", 960}, |
|
501 |
+ {(const unsigned char*)"kappa", 954}, |
|
105 | 502 |
{NULL, 0}, |
106 | 503 |
{NULL, 0}, |
107 | 504 |
{NULL, 0}, |
108 | 505 |
{NULL, 0}, |
109 | 506 |
{NULL, 0}, |
507 |
+ {(const unsigned char*)"weierp", 8472}, |
|
110 | 508 |
{NULL, 0}, |
509 |
+ {(const unsigned char*)"intcal", 8890}, |
|
510 |
+ {(const unsigned char*)"rarrc", 10547}, |
|
111 | 511 |
{NULL, 0}, |
112 |
- {(const unsigned char*)"xi", 958}, |
|
113 | 512 |
{NULL, 0}, |
114 | 513 |
{NULL, 0}, |
514 |
+ {(const unsigned char*)"iiint", 8749}, |
|
115 | 515 |
{NULL, 0}, |
116 |
- {(const unsigned char*)"phi", 966}, |
|
516 |
+ {(const unsigned char*)"boxdr", 9484}, |
|
117 | 517 |
{NULL, 0}, |
118 | 518 |
{NULL, 0}, |
119 | 519 |
{NULL, 0}, |
520 |
+ {(const unsigned char*)"percnt", 37}, |
|
521 |
+ {(const unsigned char*)"top", 8868}, |
|
120 | 522 |
{NULL, 0}, |
523 |
+ {(const unsigned char*)"ffilig", 64259}, |
|
524 |
+ {(const unsigned char*)"notnivc", 8957}, |
|
121 | 525 |
{NULL, 0}, |
122 | 526 |
{NULL, 0}, |
527 |
+ {(const unsigned char*)"diams", 9830}, |
|
123 | 528 |
{NULL, 0}, |
529 |
+ {(const unsigned char*)"maltese", 10016}, |
|
530 |
+ {(const unsigned char*)"vartriangleright", 8883}, |
|
124 | 531 |
{NULL, 0}, |
125 | 532 |
{NULL, 0}, |
126 | 533 |
{NULL, 0}, |
127 |
- {(const unsigned char*)"thetasym", 977}, |
|
128 |
- {(const unsigned char*)"hearts", 9829}, |
|
129 | 534 |
{NULL, 0}, |
535 |
+ {(const unsigned char*)"OverParenthesis", 65077}, |
|
536 |
+ {(const unsigned char*)"nesear", 10536}, |
|
537 |
+ {(const unsigned char*)"LessFullEqual", 8806}, |
|
130 | 538 |
{NULL, 0}, |
539 |
+ {(const unsigned char*)"UpDownArrow", 8597}, |
|
540 |
+ {(const unsigned char*)"measuredangle", 8737}, |
|
131 | 541 |
{NULL, 0}, |
132 | 542 |
{NULL, 0}, |
133 | 543 |
{NULL, 0}, |
134 | 544 |
{NULL, 0}, |
135 | 545 |
{NULL, 0}, |
546 |
+ {(const unsigned char*)"Leftarrow", 8656}, |
|
547 |
+ {(const unsigned char*)"HumpDownHump", 8782}, |
|
548 |
+ {(const unsigned char*)"frac14", 188}, |
|
136 | 549 |
{NULL, 0}, |
550 |
+ {(const unsigned char*)"LeftUpVector", 8639}, |
|
551 |
+ {(const unsigned char*)"bigotimes", 10754}, |
|
552 |
+ {(const unsigned char*)"questeq", 8799}, |
|
137 | 553 |
{NULL, 0}, |
138 | 554 |
{NULL, 0}, |
139 | 555 |
{NULL, 0}, |
556 |
+ {(const unsigned char*)"GreaterFullEqual", 8807}, |
|
140 | 557 |
{NULL, 0}, |
558 |
+ {(const unsigned char*)"in", 8712}, |
|
141 | 559 |
{NULL, 0}, |
142 | 560 |
{NULL, 0}, |
143 | 561 |
{NULL, 0}, |
144 | 562 |
{NULL, 0}, |
563 |
+ {(const unsigned char*)"Del", 8711}, |
|
145 | 564 |
{NULL, 0}, |
146 | 565 |
{NULL, 0}, |
147 | 566 |
{NULL, 0}, |
... | ... |
@@ -153,24 +572,36 @@ static struct element entities_htable_elements[] = { |
153 | 153 |
{NULL, 0}, |
154 | 154 |
{NULL, 0}, |
155 | 155 |
{NULL, 0}, |
156 |
+ {(const unsigned char*)"CHcy", 1063}, |
|
157 |
+ {(const unsigned char*)"supne", 8843}, |
|
156 | 158 |
{NULL, 0}, |
159 |
+ {(const unsigned char*)"leftarrow", 8592}, |
|
160 |
+ {(const unsigned char*)"ges", 10878}, |
|
161 |
+ {(const unsigned char*)"bnot", 8976}, |
|
162 |
+ {(const unsigned char*)"mumap", 8888}, |
|
163 |
+ {(const unsigned char*)"LeftTriangleEqual", 8884}, |
|
164 |
+ {(const unsigned char*)"KHcy", 1061}, |
|
165 |
+ {(const unsigned char*)"les", 10877}, |
|
166 |
+ {(const unsigned char*)"xutri", 9651}, |
|
157 | 167 |
{NULL, 0}, |
168 |
+ {(const unsigned char*)"caron", 711}, |
|
158 | 169 |
{NULL, 0}, |
170 |
+ {(const unsigned char*)"EqualTilde", 8770}, |
|
171 |
+ {(const unsigned char*)"UnderBar", 818}, |
|
172 |
+ {(const unsigned char*)"SHcy", 1064}, |
|
159 | 173 |
{NULL, 0}, |
160 | 174 |
{NULL, 0}, |
161 | 175 |
{NULL, 0}, |
162 | 176 |
{NULL, 0}, |
163 | 177 |
{NULL, 0}, |
164 | 178 |
{NULL, 0}, |
165 |
- {(const unsigned char*)"nsub", 8836}, |
|
166 |
- {(const unsigned char*)"quot", 34}, |
|
167 |
- {(const unsigned char*)"there4", 8756}, |
|
179 |
+ {(const unsigned char*)"ZHcy", 1046}, |
|
180 |
+ {(const unsigned char*)"gel", 8923}, |
|
181 |
+ {(const unsigned char*)"Vee", 8897}, |
|
168 | 182 |
{NULL, 0}, |
169 | 183 |
{NULL, 0}, |
170 | 184 |
{NULL, 0}, |
171 | 185 |
{NULL, 0}, |
172 |
- {(const unsigned char*)"part", 8706}, |
|
173 |
- {(const unsigned char*)"sect", 167}, |
|
174 | 186 |
{NULL, 0}, |
175 | 187 |
{NULL, 0}, |
176 | 188 |
{NULL, 0}, |
... | ... |
@@ -180,231 +611,1288 @@ static struct element entities_htable_elements[] = { |
180 | 180 |
{NULL, 0}, |
181 | 181 |
{NULL, 0}, |
182 | 182 |
{NULL, 0}, |
183 |
- {(const unsigned char*)"euro", 8364}, |
|
184 |
- {(const unsigned char*)"tilde", 732}, |
|
185 |
- {(const unsigned char*)"Dagger", 8225}, |
|
183 |
+ {(const unsigned char*)"subne", 8842}, |
|
186 | 184 |
{NULL, 0}, |
185 |
+ {(const unsigned char*)"ngtr", 8815}, |
|
186 |
+ {(const unsigned char*)"isins", 8948}, |
|
187 | 187 |
{NULL, 0}, |
188 | 188 |
{NULL, 0}, |
189 |
+ {(const unsigned char*)"angle", 8736}, |
|
189 | 190 |
{NULL, 0}, |
190 | 191 |
{NULL, 0}, |
192 |
+ {(const unsigned char*)"ThinSpace", 8201}, |
|
193 |
+ {(const unsigned char*)"samalg", 8720}, |
|
191 | 194 |
{NULL, 0}, |
195 |
+ {(const unsigned char*)"supseteqq", 10950}, |
|
196 |
+ {(const unsigned char*)"SucceedsEqual", 10928}, |
|
192 | 197 |
{NULL, 0}, |
193 | 198 |
{NULL, 0}, |
194 | 199 |
{NULL, 0}, |
195 | 200 |
{NULL, 0}, |
196 |
- {(const unsigned char*)"thinsp", 8201}, |
|
197 |
- {(const unsigned char*)"loz", 9674}, |
|
201 |
+ {(const unsigned char*)"vee", 8744}, |
|
198 | 202 |
{NULL, 0}, |
199 |
- {(const unsigned char*)"sup3", 179}, |
|
203 |
+ {(const unsigned char*)"approxeq", 8778}, |
|
204 |
+ {(const unsigned char*)"leftarrowtail", 8610}, |
|
200 | 205 |
{NULL, 0}, |
201 | 206 |
{NULL, 0}, |
202 | 207 |
{NULL, 0}, |
208 |
+ {(const unsigned char*)"dHar", 10597}, |
|
209 |
+ {(const unsigned char*)"andand", 10837}, |
|
210 |
+ {(const unsigned char*)"dlarr", 8601}, |
|
203 | 211 |
{NULL, 0}, |
204 | 212 |
{NULL, 0}, |
205 | 213 |
{NULL, 0}, |
214 |
+ {(const unsigned char*)"circeq", 8791}, |
|
206 | 215 |
{NULL, 0}, |
207 |
- {(const unsigned char*)"curren", 164}, |
|
216 |
+ {(const unsigned char*)"Lsh", 8624}, |
|
217 |
+ {(const unsigned char*)"laquo", 171}, |
|
218 |
+ {(const unsigned char*)"coloneq", 8788}, |
|
219 |
+ {(const unsigned char*)"llarr", 8647}, |
|
220 |
+ {(const unsigned char*)"Int", 8748}, |
|
221 |
+ {(const unsigned char*)"nlarr", 8602}, |
|
222 |
+ {(const unsigned char*)"Rsh", 8625}, |
|
223 |
+ {(const unsigned char*)"varepsilon", 949}, |
|
224 |
+ {(const unsigned char*)"olarr", 8634}, |
|
225 |
+ {(const unsigned char*)"raquo", 187}, |
|
226 |
+ {(const unsigned char*)"slarr", 8592}, |
|
227 |
+ {(const unsigned char*)"rlarr", 8644}, |
|
228 |
+ {(const unsigned char*)"boxuR", 9560}, |
|
229 |
+ {(const unsigned char*)"minus", 8722}, |
|
230 |
+ {(const unsigned char*)"xlarr", 10229}, |
|
231 |
+ {(const unsigned char*)"lHar", 10594}, |
|
232 |
+ {(const unsigned char*)"rHar", 10596}, |
|
233 |
+ {(const unsigned char*)"subseteqq", 10949}, |
|
208 | 234 |
{NULL, 0}, |
235 |
+ {(const unsigned char*)"uHar", 10595}, |
|
236 |
+ {(const unsigned char*)"epsis", 1013}, |
|
209 | 237 |
{NULL, 0}, |
210 | 238 |
{NULL, 0}, |
211 | 239 |
{NULL, 0}, |
212 |
- {(const unsigned char*)"yen", 165}, |
|
213 | 240 |
{NULL, 0}, |
214 | 241 |
{NULL, 0}, |
215 | 242 |
{NULL, 0}, |
243 |
+ {(const unsigned char*)"ssetmn", 8726}, |
|
244 |
+ {(const unsigned char*)"equals", 61}, |
|
216 | 245 |
{NULL, 0}, |
217 |
- {(const unsigned char*)"dagger", 8224}, |
|
246 |
+ {(const unsigned char*)"NotExists", 8708}, |
|
247 |
+ {(const unsigned char*)"prnsim", 8936}, |
|
248 |
+ {(const unsigned char*)"lsh", 8624}, |
|
249 |
+ {(const unsigned char*)"curlyeqsucc", 8927}, |
|
218 | 250 |
{NULL, 0}, |
219 | 251 |
{NULL, 0}, |
252 |
+ {(const unsigned char*)"int", 8747}, |
|
220 | 253 |
{NULL, 0}, |
221 |
- {(const unsigned char*)"ordm", 186}, |
|
254 |
+ {(const unsigned char*)"rsh", 8625}, |
|
222 | 255 |
{NULL, 0}, |
223 | 256 |
{NULL, 0}, |
224 | 257 |
{NULL, 0}, |
225 |
- {(const unsigned char*)"lang", 9001}, |
|
258 |
+ {(const unsigned char*)"LessSlantEqual", 10877}, |
|
259 |
+ {(const unsigned char*)"DiacriticalDot", 729}, |
|
226 | 260 |
{NULL, 0}, |
261 |
+ {(const unsigned char*)"nvDash", 8877}, |
|
262 |
+ {(const unsigned char*)"prnap", 10937}, |
|
263 |
+ {(const unsigned char*)"ZeroWidthSpace", 8203}, |
|
227 | 264 |
{NULL, 0}, |
228 | 265 |
{NULL, 0}, |
229 | 266 |
{NULL, 0}, |
230 | 267 |
{NULL, 0}, |
231 |
- {(const unsigned char*)"rang", 9002}, |
|
232 |
- {(const unsigned char*)"Auml", 196}, |
|
233 | 268 |
{NULL, 0}, |
269 |
+ {(const unsigned char*)"oplus", 8853}, |
|
234 | 270 |
{NULL, 0}, |
235 | 271 |
{NULL, 0}, |
236 |
- {(const unsigned char*)"Euml", 203}, |
|
237 |
- {(const unsigned char*)"nbsp2", 160}, |
|
272 |
+ {(const unsigned char*)"middot", 183}, |
|
238 | 273 |
{NULL, 0}, |
239 |
- {(const unsigned char*)"Eta", 919}, |
|
240 |
- {(const unsigned char*)"Iuml", 207}, |
|
274 |
+ {(const unsigned char*)"emptyset", 8709}, |
|
275 |
+ {(const unsigned char*)"uplus", 8846}, |
|
241 | 276 |
{NULL, 0}, |
242 | 277 |
{NULL, 0}, |
243 | 278 |
{NULL, 0}, |
244 | 279 |
{NULL, 0}, |
245 |
- {(const unsigned char*)"Sigma", 931}, |
|
246 |
- {(const unsigned char*)"Agrave", 192}, |
|
247 |
- {(const unsigned char*)"Ouml", 214}, |
|
248 | 280 |
{NULL, 0}, |
249 |
- {(const unsigned char*)"Egrave", 200}, |
|
281 |
+ {(const unsigned char*)"boxhu", 9524}, |
|
250 | 282 |
{NULL, 0}, |
251 | 283 |
{NULL, 0}, |
252 |
- {(const unsigned char*)"Uuml", 220}, |
|
253 |
- {(const unsigned char*)"Igrave", 204}, |
|
284 |
+ {(const unsigned char*)"softcy", 1100}, |
|
254 | 285 |
{NULL, 0}, |
255 | 286 |
{NULL, 0}, |
256 |
- {(const unsigned char*)"sup2", 178}, |
|
257 |
- {(const unsigned char*)"nbsp3", 160}, |
|
258 | 287 |
{NULL, 0}, |
259 |
- {(const unsigned char*)"Ograve", 210}, |
|
260 | 288 |
{NULL, 0}, |
289 |
+ {(const unsigned char*)"squarf", 9642}, |
|
290 |
+ {(const unsigned char*)"TripleDot", 8411}, |
|
291 |
+ {(const unsigned char*)"DownTee", 8868}, |
|
292 |
+ {(const unsigned char*)"cir", 9675}, |
|
293 |
+ {(const unsigned char*)"expectation", 8496}, |
|
261 | 294 |
{NULL, 0}, |
262 |
- {(const unsigned char*)"Yuml", 376}, |
|
263 | 295 |
{NULL, 0}, |
264 |
- {(const unsigned char*)"auml", 228}, |
|
265 |
- {(const unsigned char*)"Ugrave", 217}, |
|
266 | 296 |
{NULL, 0}, |
267 | 297 |
{NULL, 0}, |
268 |
- {(const unsigned char*)"Beta", 914}, |
|
269 |
- {(const unsigned char*)"euml", 235}, |
|
298 |
+ {(const unsigned char*)"cirfnint", 10768}, |
|
299 |
+ {NULL, 0}, |
|
300 |
+ {NULL, 0}, |
|
301 |
+ {NULL, 0}, |
|
302 |
+ {(const unsigned char*)"sfrown", 8994}, |
|
303 |
+ {(const unsigned char*)"ntriangleright", 8939}, |
|
304 |
+ {NULL, 0}, |
|
305 |
+ {NULL, 0}, |
|
306 |
+ {NULL, 0}, |
|
307 |
+ {NULL, 0}, |
|
308 |
+ {NULL, 0}, |
|
309 |
+ {NULL, 0}, |
|
310 |
+ {NULL, 0}, |
|
311 |
+ {(const unsigned char*)"nisd", 8954}, |
|
312 |
+ {(const unsigned char*)"dash", 8208}, |
|
313 |
+ {NULL, 0}, |
|
314 |
+ {NULL, 0}, |
|
315 |
+ {(const unsigned char*)"nvHarr", 10500}, |
|
316 |
+ {NULL, 0}, |
|
317 |
+ {NULL, 0}, |
|
318 |
+ {(const unsigned char*)"hybull", 8259}, |
|
319 |
+ {(const unsigned char*)"RightArrowBar", 8677}, |
|
320 |
+ {(const unsigned char*)"leftrightsquigarrow", 8621}, |
|
321 |
+ {(const unsigned char*)"minusb", 8863}, |
|
322 |
+ {NULL, 0}, |
|
323 |
+ {(const unsigned char*)"frac38", 8540}, |
|
324 |
+ {NULL, 0}, |
|
325 |
+ {NULL, 0}, |
|
326 |
+ {NULL, 0}, |
|
327 |
+ {(const unsigned char*)"centerdot", 183}, |
|
328 |
+ {(const unsigned char*)"nwnear", 10535}, |
|
329 |
+ {NULL, 0}, |
|
330 |
+ {NULL, 0}, |
|
331 |
+ {NULL, 0}, |
|
332 |
+ {NULL, 0}, |
|
333 |
+ {(const unsigned char*)"larrpl", 10553}, |
|
334 |
+ {NULL, 0}, |
|
335 |
+ {NULL, 0}, |
|
336 |
+ {NULL, 0}, |
|
337 |
+ {(const unsigned char*)"hookleftarrow", 8617}, |
|
338 |
+ {(const unsigned char*)"hellip", 8230}, |
|
339 |
+ {(const unsigned char*)"rarrpl", 10565}, |
|
340 |
+ {(const unsigned char*)"mid", 8739}, |
|
341 |
+ {NULL, 0}, |
|
342 |
+ {(const unsigned char*)"oast", 8859}, |
|
343 |
+ {(const unsigned char*)"NotTildeTilde", 8777}, |
|
344 |
+ {NULL, 0}, |
|
345 |
+ {(const unsigned char*)"NotTilde", 8769}, |
|
346 |
+ {(const unsigned char*)"ohacgr", 974}, |
|
347 |
+ {(const unsigned char*)"marker", 9646}, |
|
348 |
+ {(const unsigned char*)"langle", 9001}, |
|
349 |
+ {NULL, 0}, |
|
350 |
+ {NULL, 0}, |
|
351 |
+ {NULL, 0}, |
|
352 |
+ {(const unsigned char*)"vellip", 8942}, |
|
353 |
+ {(const unsigned char*)"NotRightTriangleEqual", 8941}, |
|
354 |
+ {(const unsigned char*)"rangle", 9002}, |
|
355 |
+ {NULL, 0}, |
|
356 |
+ {NULL, 0}, |
|
357 |
+ {NULL, 0}, |
|
358 |
+ {(const unsigned char*)"gnsim", 8935}, |
|
359 |
+ {(const unsigned char*)"malt", 10016}, |
|
360 |
+ {(const unsigned char*)"times", 215}, |
|
361 |
+ {(const unsigned char*)"RightDownTeeVector", 10589}, |
|
362 |
+ {NULL, 0}, |
|
363 |
+ {(const unsigned char*)"lnsim", 8934}, |
|
364 |
+ {NULL, 0}, |
|
365 |
+ {NULL, 0}, |
|
366 |
+ {NULL, 0}, |
|
367 |
+ {(const unsigned char*)"preceq", 10927}, |
|
368 |
+ {(const unsigned char*)"equiv", 8801}, |
|
369 |
+ {(const unsigned char*)"geqq", 8807}, |
|
370 |
+ {NULL, 0}, |
|
371 |
+ {NULL, 0}, |
|
372 |
+ {NULL, 0}, |
|
373 |
+ {(const unsigned char*)"Iota", 921}, |
|
374 |
+ {(const unsigned char*)"leqq", 8806}, |
|
375 |
+ {NULL, 0}, |
|
376 |
+ {(const unsigned char*)"cuepr", 8926}, |
|
377 |
+ {NULL, 0}, |
|
378 |
+ {NULL, 0}, |
|
379 |
+ {NULL, 0}, |
|
380 |
+ {(const unsigned char*)"boxtimes", 8864}, |
|
381 |
+ {(const unsigned char*)"numero", 8470}, |
|
382 |
+ {(const unsigned char*)"setmn", 8726}, |
|
383 |
+ {NULL, 0}, |
|
384 |
+ {(const unsigned char*)"ForAll", 8704}, |
|
385 |
+ {NULL, 0}, |
|
386 |
+ {(const unsigned char*)"excl", 33}, |
|
387 |
+ {NULL, 0}, |
|
388 |
+ {NULL, 0}, |
|
389 |
+ {NULL, 0}, |
|
390 |
+ {(const unsigned char*)"bsol", 92}, |
|
391 |
+ {(const unsigned char*)"imof", 8887}, |
|
392 |
+ {(const unsigned char*)"dsol", 10742}, |
|
393 |
+ {(const unsigned char*)"ic", 8291}, |
|
394 |
+ {(const unsigned char*)"ReverseElement", 8715}, |
|
395 |
+ {(const unsigned char*)"Exists", 8707}, |
|
396 |
+ {NULL, 0}, |
|
397 |
+ {(const unsigned char*)"parsl", 11005}, |
|
398 |
+ {(const unsigned char*)"bprime", 8245}, |
|
399 |
+ {(const unsigned char*)"Ccedil", 199}, |
|
400 |
+ {(const unsigned char*)"sc", 8827}, |
|
401 |
+ {(const unsigned char*)"propto", 8733}, |
|
402 |
+ {NULL, 0}, |
|
403 |
+ {(const unsigned char*)"osol", 8856}, |
|
404 |
+ {(const unsigned char*)"RightVectorBar", 10579}, |
|
405 |
+ {(const unsigned char*)"iota", 953}, |
|
406 |
+ {(const unsigned char*)"boxDR", 9556}, |
|
407 |
+ {NULL, 0}, |
|
408 |
+ {NULL, 0}, |
|
409 |
+ {(const unsigned char*)"Theta", 920}, |
|
410 |
+ {(const unsigned char*)"lharu", 8636}, |
|
411 |
+ {(const unsigned char*)"Because", 8757}, |
|
412 |
+ {(const unsigned char*)"qprime", 8279}, |
|
413 |
+ {(const unsigned char*)"simrarr", 10610}, |
|
414 |
+ {NULL, 0}, |
|
415 |
+ {(const unsigned char*)"tprime", 8244}, |
|
416 |
+ {(const unsigned char*)"rharu", 8640}, |
|
417 |
+ {(const unsigned char*)"vprime", 8242}, |
|
418 |
+ {(const unsigned char*)"YUcy", 1070}, |
|
419 |
+ {(const unsigned char*)"plusmn", 177}, |
|
420 |
+ {NULL, 0}, |
|
421 |
+ {(const unsigned char*)"planckh", 8462}, |
|
422 |
+ {(const unsigned char*)"YIcy", 1031}, |
|
423 |
+ {NULL, 0}, |
|
424 |
+ {(const unsigned char*)"NotRightTriangle", 8939}, |
|
425 |
+ {(const unsigned char*)"becaus", 8757}, |
|
426 |
+ {NULL, 0}, |
|
427 |
+ {(const unsigned char*)"PrecedesEqual", 10927}, |
|
428 |
+ {NULL, 0}, |
|
429 |
+ {NULL, 0}, |
|
430 |
+ {(const unsigned char*)"nsupe", 8841}, |
|
431 |
+ {(const unsigned char*)"ccedil", 231}, |
|
432 |
+ {NULL, 0}, |
|
433 |
+ {NULL, 0}, |
|
434 |
+ {NULL, 0}, |
|
435 |
+ {NULL, 0}, |
|
436 |
+ {NULL, 0}, |
|
437 |
+ {NULL, 0}, |
|
438 |
+ {NULL, 0}, |
|
439 |
+ {NULL, 0}, |
|
440 |
+ {(const unsigned char*)"yacy", 1103}, |
|
441 |
+ {(const unsigned char*)"succnsim", 8937}, |
|
442 |
+ {(const unsigned char*)"theta", 952}, |
|
443 |
+ {(const unsigned char*)"because", 8757}, |
|
444 |
+ {(const unsigned char*)"pre", 10927}, |
|
445 |
+ {NULL, 0}, |
|
446 |
+ {(const unsigned char*)"sharp", 9839}, |
|
447 |
+ {NULL, 0}, |
|
270 | 448 |
{NULL, 0}, |
449 |
+ {NULL, 0}, |
|
450 |
+ {NULL, 0}, |
|
451 |
+ {NULL, 0}, |
|
452 |
+ {(const unsigned char*)"timesb", 8864}, |
|
453 |
+ {(const unsigned char*)"Longleftarrow", 10232}, |
|
454 |
+ {(const unsigned char*)"Sqrt", 8730}, |
|
455 |
+ {NULL, 0}, |
|
456 |
+ {NULL, 0}, |
|
457 |
+ {NULL, 0}, |
|
458 |
+ {NULL, 0}, |
|
459 |
+ {NULL, 0}, |
|
460 |
+ {NULL, 0}, |
|
461 |
+ {NULL, 0}, |
|
462 |
+ {NULL, 0}, |
|
463 |
+ {NULL, 0}, |
|
464 |
+ {(const unsigned char*)"Vert", 8214}, |
|
465 |
+ {NULL, 0}, |
|
466 |
+ {(const unsigned char*)"Rho", 929}, |
|
467 |
+ {NULL, 0}, |
|
468 |
+ {(const unsigned char*)"LeftDownTeeVector", 10593}, |
|
469 |
+ {(const unsigned char*)"erDot", 8787}, |
|
470 |
+ {NULL, 0}, |
|
471 |
+ {(const unsigned char*)"integers", 8484}, |
|
472 |
+ {(const unsigned char*)"Dot", 168}, |
|
473 |
+ {(const unsigned char*)"eqvparsl", 10725}, |
|
474 |
+ {NULL, 0}, |
|
475 |
+ {NULL, 0}, |
|
476 |
+ {(const unsigned char*)"efDot", 8786}, |
|
477 |
+ {NULL, 0}, |
|
478 |
+ {(const unsigned char*)"NewLine", 10}, |
|
479 |
+ {(const unsigned char*)"sbquo", 8218}, |
|
480 |
+ {NULL, 0}, |
|
481 |
+ {(const unsigned char*)"Diamond", 8900}, |
|
482 |
+ {(const unsigned char*)"Not", 10988}, |
|
483 |
+ {NULL, 0}, |
|
484 |
+ {(const unsigned char*)"Eta", 919}, |
|
485 |
+ {(const unsigned char*)"longleftarrow", 10229}, |
|
486 |
+ {NULL, 0}, |
|
487 |
+ {NULL, 0}, |
|
488 |
+ {(const unsigned char*)"starf", 9733}, |
|
489 |
+ {(const unsigned char*)"RoundImplies", 10608}, |
|
490 |
+ {(const unsigned char*)"RightAngleBracket", 9002}, |
|
491 |
+ {NULL, 0}, |
|
492 |
+ {(const unsigned char*)"diamondsuit", 9830}, |
|
493 |
+ {NULL, 0}, |
|
494 |
+ {NULL, 0}, |
|
495 |
+ {NULL, 0}, |
|
496 |
+ {(const unsigned char*)"vert", 124}, |
|
497 |
+ {(const unsigned char*)"eth", 240}, |
|
498 |
+ {(const unsigned char*)"NotReverseElement", 8716}, |
|
499 |
+ {(const unsigned char*)"Longleftrightarrow", 10234}, |
|
500 |
+ {(const unsigned char*)"ssmile", 8995}, |
|
501 |
+ {(const unsigned char*)"bot", 8869}, |
|
502 |
+ {(const unsigned char*)"supe", 8839}, |
|
503 |
+ {(const unsigned char*)"dot", 729}, |
|
504 |
+ {(const unsigned char*)"pointint", 10773}, |
|
505 |
+ {(const unsigned char*)"intercal", 8890}, |
|
506 |
+ {NULL, 0}, |
|
507 |
+ {NULL, 0}, |
|
508 |
+ {(const unsigned char*)"rho", 961}, |
|
509 |
+ {NULL, 0}, |
|
510 |
+ {(const unsigned char*)"primes", 8473}, |
|
511 |
+ {(const unsigned char*)"fllig", 64258}, |
|
512 |
+ {NULL, 0}, |
|
513 |
+ {(const unsigned char*)"diamond", 8900}, |
|
514 |
+ {(const unsigned char*)"not", 172}, |
|
515 |
+ {(const unsigned char*)"precapprox", 10935}, |
|
271 | 516 |
{(const unsigned char*)"eta", 951}, |
272 |
- {(const unsigned char*)"iuml", 239}, |
|
273 | 517 |
{NULL, 0}, |
274 |
- {(const unsigned char*)"darr", 8595}, |
|
518 |
+ {(const unsigned char*)"backprime", 8245}, |
|
519 |
+ {(const unsigned char*)"GreaterEqualLess", 8923}, |
|
275 | 520 |
{NULL, 0}, |
276 | 521 |
{NULL, 0}, |
277 |
- {(const unsigned char*)"sigma", 963}, |
|
278 |
- {(const unsigned char*)"harr", 8596}, |
|
279 |
- {(const unsigned char*)"ouml", 246}, |
|
280 |
- {(const unsigned char*)"cap", 8745}, |
|
281 |
- {(const unsigned char*)"egrave", 232}, |
|
282 |
- {(const unsigned char*)"larr", 8592}, |
|
522 |
+ {NULL, 0}, |
|
523 |
+ {(const unsigned char*)"RightTeeArrow", 8614}, |
|
524 |
+ {(const unsigned char*)"boxHd", 9572}, |
|
525 |
+ {(const unsigned char*)"Gammad", 988}, |
|
526 |
+ {NULL, 0}, |
|
527 |
+ {NULL, 0}, |
|
528 |
+ {(const unsigned char*)"Assign", 8788}, |
|
529 |
+ {(const unsigned char*)"squf", 9642}, |
|
530 |
+ {(const unsigned char*)"angzarr", 9084}, |
|
531 |
+ {(const unsigned char*)"longleftrightarrow", 10231}, |
|
532 |
+ {NULL, 0}, |
|
533 |
+ {(const unsigned char*)"pound", 163}, |
|
534 |
+ {(const unsigned char*)"topbot", 9014}, |
|
535 |
+ {(const unsigned char*)"twoheadleftarrow", 8606}, |
|
536 |
+ {(const unsigned char*)"Congruent", 8801}, |
|
537 |
+ {(const unsigned char*)"nshortparallel", 8742}, |
|
538 |
+ {(const unsigned char*)"LeftArrowRightArrow", 8646}, |
|
539 |
+ {NULL, 0}, |
|
540 |
+ {(const unsigned char*)"sube", 8838}, |
|
541 |
+ {NULL, 0}, |
|
542 |
+ {(const unsigned char*)"hamilt", 8459}, |
|
543 |
+ {NULL, 0}, |
|
544 |
+ {NULL, 0}, |
|
545 |
+ {(const unsigned char*)"harrcir", 10568}, |
|
546 |
+ {NULL, 0}, |
|
547 |
+ {NULL, 0}, |
|
548 |
+ {NULL, 0}, |
|
549 |
+ {NULL, 0}, |
|
550 |
+ {NULL, 0}, |
|
551 |
+ {NULL, 0}, |
|
552 |
+ {NULL, 0}, |
|
553 |
+ {(const unsigned char*)"boxV", 9553}, |
|
554 |
+ {NULL, 0}, |
|
555 |
+ {NULL, 0}, |
|
556 |
+ {(const unsigned char*)"gammad", 989}, |
|
557 |
+ {(const unsigned char*)"OpenCurlyDoubleQuote", 8220}, |
|
558 |
+ {NULL, 0}, |
|
559 |
+ {(const unsigned char*)"target", 8982}, |
|
560 |
+ {NULL, 0}, |
|
561 |
+ {NULL, 0}, |
|
562 |
+ {NULL, 0}, |
|
563 |
+ {NULL, 0}, |
|
564 |
+ {NULL, 0}, |
|
565 |
+ {NULL, 0}, |
|
566 |
+ {NULL, 0}, |
|
567 |
+ {NULL, 0}, |
|
568 |
+ {NULL, 0}, |
|
569 |
+ {NULL, 0}, |
|
570 |
+ {(const unsigned char*)"bigsqcup", 10758}, |
|
571 |
+ {NULL, 0}, |
|
572 |
+ {NULL, 0}, |
|
573 |
+ {NULL, 0}, |
|
574 |
+ {NULL, 0}, |
|
575 |
+ {NULL, 0}, |
|
576 |
+ {(const unsigned char*)"boxVr", 9567}, |
|
577 |
+ {NULL, 0}, |
|
578 |
+ {NULL, 0}, |
|
579 |
+ {(const unsigned char*)"eegr", 951}, |
|
580 |
+ {(const unsigned char*)"awint", 10769}, |
|
581 |
+ {(const unsigned char*)"EEacgr", 905}, |
|
582 |
+ {(const unsigned char*)"cwint", 8753}, |
|
583 |
+ {NULL, 0}, |
|
584 |
+ {NULL, 0}, |
|
585 |
+ {(const unsigned char*)"RightVector", 8640}, |
|
586 |
+ {NULL, 0}, |
|
587 |
+ {NULL, 0}, |
|
588 |
+ {NULL, 0}, |
|
589 |
+ {NULL, 0}, |
|
590 |
+ {(const unsigned char*)"Vvdash", 8874}, |
|
591 |
+ {NULL, 0}, |
|
592 |
+ {NULL, 0}, |
|
593 |
+ {NULL, 0}, |
|
594 |
+ {(const unsigned char*)"Aacute", 193}, |
|
595 |
+ {NULL, 0}, |
|
596 |
+ {NULL, 0}, |
|
597 |
+ {NULL, 0}, |
|
598 |
+ {(const unsigned char*)"Eacute", 201}, |
|
599 |
+ {NULL, 0}, |
|
600 |
+ {NULL, 0}, |
|
601 |
+ {NULL, 0}, |
|
602 |
+ {(const unsigned char*)"Iacute", 205}, |
|
603 |
+ {(const unsigned char*)"boxHU", 9577}, |
|
604 |
+ {(const unsigned char*)"daleth", 8504}, |
|
605 |
+ {(const unsigned char*)"olcross", 10683}, |
|
606 |
+ {(const unsigned char*)"eqcirc", 8790}, |
|
607 |
+ {NULL, 0}, |
|
608 |
+ {(const unsigned char*)"Oacute", 211}, |
|
609 |
+ {(const unsigned char*)"bigodot", 10752}, |
|
610 |
+ {(const unsigned char*)"notinva", 8713}, |
|
611 |
+ {(const unsigned char*)"LeftRightArrow", 8596}, |
|
612 |
+ {(const unsigned char*)"lozenge", 9674}, |
|
613 |
+ {NULL, 0}, |
|
614 |
+ {(const unsigned char*)"Uacute", 218}, |
|
615 |
+ {(const unsigned char*)"nvdash", 8876}, |
|
616 |
+ {NULL, 0}, |
|
617 |
+ {NULL, 0}, |
|
618 |
+ {(const unsigned char*)"Yacute", 221}, |
|
619 |
+ {(const unsigned char*)"boxvL", 9569}, |
|
620 |
+ {(const unsigned char*)"Bscr", 8492}, |
|
621 |
+ {NULL, 0}, |
|
622 |
+ {NULL, 0}, |
|
623 |
+ {(const unsigned char*)"Escr", 8496}, |
|
624 |
+ {(const unsigned char*)"Fscr", 8497}, |
|
625 |
+ {(const unsigned char*)"Hacek", 711}, |
|
626 |
+ {(const unsigned char*)"Hscr", 8459}, |
|
627 |
+ {(const unsigned char*)"Iscr", 8464}, |
|
628 |
+ {(const unsigned char*)"boxVh", 9579}, |
|
629 |
+ {(const unsigned char*)"aacute", 225}, |
|
630 |
+ {(const unsigned char*)"Lscr", 8466}, |
|
631 |
+ {(const unsigned char*)"Mscr", 8499}, |
|
632 |
+ {(const unsigned char*)"Downarrow", 8659}, |
|
633 |
+ {(const unsigned char*)"eacute", 233}, |
|
634 |
+ {(const unsigned char*)"iacute", 237}, |
|
635 |
+ {(const unsigned char*)"VerticalLine", 124}, |
|
636 |
+ {(const unsigned char*)"Rscr", 8475}, |
|
637 |
+ {(const unsigned char*)"ap", 8776}, |
|
638 |
+ {(const unsigned char*)"NegativeVeryThinSpace", 8203}, |
|
639 |
+ {(const unsigned char*)"LessTilde", 8818}, |
|
640 |
+ {(const unsigned char*)"oacute", 243}, |
|
641 |
+ {(const unsigned char*)"blk12", 9618}, |
|
642 |
+ {(const unsigned char*)"frac25", 8534}, |
|
643 |
+ {(const unsigned char*)"mp", 8723}, |
|
644 |
+ {(const unsigned char*)"fnof", 402}, |
|
645 |
+ {(const unsigned char*)"Conint", 8751}, |
|
646 |
+ {(const unsigned char*)"uacute", 250}, |
|
647 |
+ {(const unsigned char*)"dd", 8518}, |
|
648 |
+ {(const unsigned char*)"scsim", 8831}, |
|
649 |
+ {(const unsigned char*)"NotSucceeds", 8833}, |
|
650 |
+ {(const unsigned char*)"yacute", 253}, |
|
651 |
+ {NULL, 0}, |
|
652 |
+ {NULL, 0}, |
|
653 |
+ {(const unsigned char*)"wp", 8472}, |
|
654 |
+ {(const unsigned char*)"infin", 8734}, |
|
655 |
+ {(const unsigned char*)"escr", 8495}, |
|
656 |
+ {NULL, 0}, |
|
657 |
+ {(const unsigned char*)"DJcy", 1026}, |
|
658 |
+ {(const unsigned char*)"gscr", 8458}, |
|
659 |
+ {(const unsigned char*)"LowerRightArrow", 8600}, |
|
660 |
+ {(const unsigned char*)"GJcy", 1027}, |
|
661 |
+ {(const unsigned char*)"dzcy", 1119}, |
|
662 |
+ {(const unsigned char*)"brvbar", 166}, |
|
663 |
+ {(const unsigned char*)"sqcup", 8852}, |
|
664 |
+ {(const unsigned char*)"KJcy", 1036}, |
|
665 |
+ {(const unsigned char*)"LJcy", 1033}, |
|
666 |
+ {(const unsigned char*)"oscr", 8500}, |
|
667 |
+ {(const unsigned char*)"NJcy", 1034}, |
|
668 |
+ {(const unsigned char*)"ddagger", 8225}, |
|
669 |
+ {(const unsigned char*)"Agrave", 192}, |
|
670 |
+ {(const unsigned char*)"downarrow", 8595}, |
|
671 |
+ {NULL, 0}, |
|
672 |
+ {(const unsigned char*)"duhar", 10607}, |
|
673 |
+ {(const unsigned char*)"Egrave", 200}, |
|
674 |
+ {(const unsigned char*)"Oslash", 216}, |
|
675 |
+ {NULL, 0}, |
|
676 |
+ {(const unsigned char*)"preccurlyeq", 8828}, |
|
677 |
+ {(const unsigned char*)"Igrave", 204}, |
|
678 |
+ {(const unsigned char*)"conint", 8750}, |
|
679 |
+ {(const unsigned char*)"drbkarow", 10512}, |
|
680 |
+ {(const unsigned char*)"DownRightTeeVector", 10591}, |
|
681 |
+ {(const unsigned char*)"odot", 8857}, |
|
682 |
+ {NULL, 0}, |
|
683 |
+ {(const unsigned char*)"Ograve", 210}, |
|
684 |
+ {(const unsigned char*)"ldot", 8918}, |
|
685 |
+ {(const unsigned char*)"LeftAngleBracket", 9001}, |
|
686 |
+ {(const unsigned char*)"tdot", 8411}, |
|
687 |
+ {(const unsigned char*)"idiagr", 912}, |
|
688 |
+ {(const unsigned char*)"sdot", 8901}, |
|
689 |
+ {(const unsigned char*)"Ugrave", 217}, |
|
690 |
+ {(const unsigned char*)"triangleleft", 9667}, |
|
691 |
+ {NULL, 0}, |
|
692 |
+ {NULL, 0}, |
|
693 |
+ {NULL, 0}, |
|
694 |
+ {(const unsigned char*)"diam", 8900}, |
|
695 |
+ {(const unsigned char*)"commat", 64}, |
|
696 |
+ {(const unsigned char*)"udiagr", 944}, |
|
697 |
+ {(const unsigned char*)"larrb", 8676}, |
|
698 |
+ {(const unsigned char*)"hslash", 8463}, |
|
699 |
+ {(const unsigned char*)"rightleftarrows", 8644}, |
|
700 |
+ {(const unsigned char*)"succnapprox", 10938}, |
|
283 | 701 |
{(const unsigned char*)"agrave", 224}, |
284 |
- {(const unsigned char*)"uuml", 252}, |
|
285 |
- {(const unsigned char*)"real", 8476}, |
|
286 |
- {(const unsigned char*)"sum", 8721}, |
|
287 | 702 |
{NULL, 0}, |
288 |
- {(const unsigned char*)"piv", 982}, |
|
289 |
- {(const unsigned char*)"rarr", 8594}, |
|
290 |
- {(const unsigned char*)"sim", 8764}, |
|
291 |
- {(const unsigned char*)"uarr", 8593}, |
|
292 |
- {(const unsigned char*)"Zeta", 918}, |
|
293 |
- {(const unsigned char*)"zwj", 8205}, |
|
294 |
- {(const unsigned char*)"radic", 8730}, |
|
703 |
+ {(const unsigned char*)"egs", 10902}, |
|
704 |
+ {NULL, 0}, |
|
705 |
+ {(const unsigned char*)"egrave", 232}, |
|
706 |
+ {(const unsigned char*)"oslash", 248}, |
|
707 |
+ {NULL, 0}, |
|
708 |
+ {(const unsigned char*)"nge", 8817}, |
|
295 | 709 |
{(const unsigned char*)"igrave", 236}, |
296 |
- {(const unsigned char*)"Atilde", 195}, |
|
710 |
+ {(const unsigned char*)"hbar", 8463}, |
|
711 |
+ {NULL, 0}, |
|
712 |
+ {(const unsigned char*)"NestedLessLess", 8810}, |
|
713 |
+ {NULL, 0}, |
|
714 |
+ {(const unsigned char*)"nexist", 8708}, |
|
297 | 715 |
{(const unsigned char*)"ograve", 242}, |
716 |
+ {NULL, 0}, |
|
717 |
+ {(const unsigned char*)"ldquor", 8222}, |
|
718 |
+ {NULL, 0}, |
|
719 |
+ {NULL, 0}, |
|
720 |
+ {(const unsigned char*)"rdquor", 8221}, |
|
298 | 721 |
{(const unsigned char*)"ugrave", 249}, |
722 |
+ {(const unsigned char*)"div", 247}, |
|
723 |
+ {NULL, 0}, |
|
724 |
+ {NULL, 0}, |
|
725 |
+ {NULL, 0}, |
|
726 |
+ {NULL, 0}, |
|
727 |
+ {(const unsigned char*)"blacktriangledown", 9662}, |
|
728 |
+ {(const unsigned char*)"UpArrow", 8593}, |
|
729 |
+ {NULL, 0}, |
|
730 |
+ {NULL, 0}, |
|
731 |
+ {(const unsigned char*)"niv", 8715}, |
|
732 |
+ {(const unsigned char*)"llhard", 10603}, |
|
733 |
+ {(const unsigned char*)"boxdl", 9488}, |
|
734 |
+ {(const unsigned char*)"piv", 982}, |
|
735 |
+ {NULL, 0}, |
|
736 |
+ {(const unsigned char*)"NotPrecedes", 8832}, |
|
737 |
+ {(const unsigned char*)"lbarr", 10508}, |
|
738 |
+ {NULL, 0}, |
|
739 |
+ {(const unsigned char*)"andd", 10844}, |
|
740 |
+ {(const unsigned char*)"bigwedge", 8896}, |
|
741 |
+ {(const unsigned char*)"InvisibleTimes", 8290}, |
|
742 |
+ {NULL, 0}, |
|
743 |
+ {(const unsigned char*)"rbarr", 10509}, |
|
744 |
+ {NULL, 0}, |
|
745 |
+ {(const unsigned char*)"ApplyFunction", 8289}, |
|
746 |
+ {(const unsigned char*)"bottom", 8869}, |
|
747 |
+ {(const unsigned char*)"awconint", 8755}, |
|
748 |
+ {(const unsigned char*)"cwconint", 8754}, |
|
749 |
+ {NULL, 0}, |
|
750 |
+ {NULL, 0}, |
|
751 |
+ {NULL, 0}, |
|
752 |
+ {NULL, 0}, |
|
753 |
+ {NULL, 0}, |
|
754 |
+ {(const unsigned char*)"dwangle", 10662}, |
|
755 |
+ {(const unsigned char*)"rarrb", 8677}, |
|
756 |
+ {NULL, 0}, |
|
757 |
+ {NULL, 0}, |
|
299 | 758 |
{NULL, 0}, |
759 |
+ {NULL, 0}, |
|
760 |
+ {NULL, 0}, |
|
761 |
+ {NULL, 0}, |
|
762 |
+ {(const unsigned char*)"UpArrowBar", 10514}, |
|
763 |
+ {NULL, 0}, |
|
764 |
+ {NULL, 0}, |
|
765 |
+ {NULL, 0}, |
|
766 |
+ {NULL, 0}, |
|
767 |
+ {NULL, 0}, |
|
768 |
+ {NULL, 0}, |
|
769 |
+ {NULL, 0}, |
|
770 |
+ {NULL, 0}, |
|
771 |
+ {(const unsigned char*)"realine", 8475}, |
|
772 |
+ {(const unsigned char*)"uwangle", 10663}, |
|
773 |
+ {NULL, 0}, |
|
774 |
+ {NULL, 0}, |
|
775 |
+ {NULL, 0}, |
|
776 |
+ {NULL, 0}, |
|
777 |
+ {NULL, 0}, |
|
778 |
+ {(const unsigned char*)"lowbar", 95}, |
|
779 |
+ {NULL, 0}, |
|
780 |
+ {NULL, 0}, |
|
781 |
+ {(const unsigned char*)"Cayleys", 8493}, |
|
782 |
+ {NULL, 0}, |
|
783 |
+ {(const unsigned char*)"bigstar", 9733}, |
|
784 |
+ {(const unsigned char*)"isin", 8712}, |
|
785 |
+ {NULL, 0}, |
|
786 |
+ {NULL, 0}, |
|
787 |
+ {NULL, 0}, |
|
788 |
+ {NULL, 0}, |
|
789 |
+ {NULL, 0}, |
|
790 |
+ {NULL, 0}, |
|
791 |
+ {(const unsigned char*)"backepsilon", 1014}, |
|
792 |
+ {NULL, 0}, |
|
793 |
+ {NULL, 0}, |
|
794 |
+ {NULL, 0}, |
|
795 |
+ {NULL, 0}, |
|
796 |
+ {NULL, 0}, |
|
797 |
+ {(const unsigned char*)"OpenCurlyQuote", 8216}, |
|
798 |
+ {NULL, 0}, |
|
799 |
+ {(const unsigned char*)"Cross", 10799}, |
|
800 |
+ {NULL, 0}, |
|
801 |
+ {NULL, 0}, |
|
802 |
+ {NULL, 0}, |
|
803 |
+ {(const unsigned char*)"lesseqgtr", 8922}, |
|
804 |
+ {(const unsigned char*)"Upsi", 978}, |
|
805 |
+ {(const unsigned char*)"DoubleRightArrow", 8658}, |
|
806 |
+ {NULL, 0}, |
|
807 |
+ {NULL, 0}, |
|
808 |
+ {(const unsigned char*)"Laplacetrf", 8466}, |
|
809 |
+ {NULL, 0}, |
|
810 |
+ {NULL, 0}, |
|
811 |
+ {NULL, 0}, |
|
812 |
+ {NULL, 0}, |
|
813 |
+ {NULL, 0}, |
|
814 |
+ {NULL, 0}, |
|
815 |
+ {NULL, 0}, |
|
816 |
+ {(const unsigned char*)"bigcirc", 9711}, |
|
817 |
+ {NULL, 0}, |
|
818 |
+ {NULL, 0}, |
|
819 |
+ {(const unsigned char*)"epsi", 1013}, |
|
820 |
+ {(const unsigned char*)"LeftTeeVector", 10586}, |
|
821 |
+ {NULL, 0}, |
|
822 |
+ {NULL, 0}, |
|
823 |
+ {(const unsigned char*)"DoubleUpDownArrow", 8661}, |
|
824 |
+ {NULL, 0}, |
|
825 |
+ {(const unsigned char*)"DiacriticalGrave", 96}, |
|
826 |
+ {(const unsigned char*)"triangle", 9653}, |
|
827 |
+ {NULL, 0}, |
|
828 |
+ {(const unsigned char*)"permil", 8240}, |
|
829 |
+ {NULL, 0}, |
|
830 |
+ {(const unsigned char*)"lpargt", 10656}, |
|
831 |
+ {(const unsigned char*)"UpEquilibrium", 10606}, |
|
832 |
+ {(const unsigned char*)"backsimeq", 8909}, |
|
833 |
+ {(const unsigned char*)"Supset", 8913}, |
|
834 |
+ {(const unsigned char*)"boxUr", 9561}, |
|
835 |
+ {(const unsigned char*)"sccue", 8829}, |
|
836 |
+ {(const unsigned char*)"rpargt", 10644}, |
|
837 |
+ {(const unsigned char*)"cross", 10007}, |
|
838 |
+ {(const unsigned char*)"upsi", 965}, |
|
839 |
+ {NULL, 0}, |
|
840 |
+ {(const unsigned char*)"cularr", 8630}, |
|
841 |
+ {NULL, 0}, |
|
842 |
+ {NULL, 0}, |
|
843 |
+ {NULL, 0}, |
|
844 |
+ {NULL, 0}, |
|
845 |
+ {(const unsigned char*)"varkappa", 1008}, |
|
846 |
+ {(const unsigned char*)"half", 189}, |
|
847 |
+ {NULL, 0}, |
|
848 |
+ {NULL, 0}, |
|
849 |
+ {(const unsigned char*)"sfgr", 962}, |
|
850 |
+ {NULL, 0}, |
|
851 |
+ {NULL, 0}, |
|
852 |
+ {NULL, 0}, |
|
853 |
+ {NULL, 0}, |
|
854 |
+ {NULL, 0}, |
|
855 |
+ {NULL, 0}, |
|
856 |
+ {(const unsigned char*)"ImaginaryI", 8520}, |
|
857 |
+ {NULL, 0}, |
|
858 |
+ {NULL, 0}, |
|
859 |
+ {(const unsigned char*)"Tau", 932}, |
|
860 |
+ {(const unsigned char*)"bernou", 8492}, |
|
861 |
+ {(const unsigned char*)"DoubleLeftArrow", 8656}, |
|
862 |
+ {NULL, 0}, |
|
863 |
+ {NULL, 0}, |
|
864 |
+ {(const unsigned char*)"supset", 8835}, |
|
865 |
+ {NULL, 0}, |
|
866 |
+ {NULL, 0}, |
|
867 |
+ {NULL, 0}, |
|
868 |
+ {(const unsigned char*)"MediumSpace", 8287}, |
|
869 |
+ {NULL, 0}, |
|
870 |
+ {(const unsigned char*)"Subset", 8912}, |
|
871 |
+ {(const unsigned char*)"NegativeThickSpace", 8203}, |
|
872 |
+ {NULL, 0}, |
|
873 |
+ {NULL, 0}, |
|
874 |
+ {(const unsigned char*)"boxuL", 9563}, |
|
875 |
+ {NULL, 0}, |
|
876 |
+ {NULL, 0}, |
|
877 |
+ {(const unsigned char*)"notin", 8713}, |
|
878 |
+ {NULL, 0}, |
|
879 |
+ {(const unsigned char*)"Re", 8476}, |
|
880 |
+ {NULL, 0}, |
|
881 |
+ {(const unsigned char*)"nleq", 8816}, |
|
882 |
+ {(const unsigned char*)"nLeftrightarrow", 8654}, |
|
883 |
+ {NULL, 0}, |
|
884 |
+ {NULL, 0}, |
|
885 |
+ {(const unsigned char*)"Beta", 914}, |
|
886 |
+ {NULL, 0}, |
|
887 |
+ {NULL, 0}, |
|
888 |
+ {NULL, 0}, |
|
889 |
+ {(const unsigned char*)"dollar", 36}, |
|
890 |
+ {(const unsigned char*)"Product", 8719}, |
|
891 |
+ {(const unsigned char*)"tau", 964}, |
|
892 |
+ {NULL, 0}, |
|
893 |
+ {NULL, 0}, |
|
894 |
+ {NULL, 0}, |
|
895 |
+ {NULL, 0}, |
|
896 |
+ {NULL, 0}, |
|
897 |
+ {(const unsigned char*)"Poincareplane", 8460}, |
|
898 |
+ {(const unsigned char*)"ee", 8519}, |
|
899 |
+ {(const unsigned char*)"CenterDot", 183}, |
|
900 |
+ {(const unsigned char*)"Jsercy", 1032}, |
|
901 |
+ {(const unsigned char*)"ge", 8805}, |
|
902 |
+ {(const unsigned char*)"Rarrtl", 10518}, |
|
903 |
+ {(const unsigned char*)"subset", 8834}, |
|
904 |
+ {NULL, 0}, |
|
905 |
+ {(const unsigned char*)"le", 8804}, |
|
906 |
+ {NULL, 0}, |
|
907 |
+ {(const unsigned char*)"ne", 8800}, |
|
908 |
+ {(const unsigned char*)"mapstoleft", 8612}, |
|
909 |
+ {(const unsigned char*)"NotSucceedsSlantEqual", 8929}, |
|
910 |
+ {(const unsigned char*)"upsih", 978}, |
|
911 |
+ {(const unsigned char*)"cedil", 184}, |
|
912 |
+ {(const unsigned char*)"Zeta", 918}, |
|
913 |
+ {NULL, 0}, |
|
914 |
+ {NULL, 0}, |
|
915 |
+ {(const unsigned char*)"apos", 39}, |
|
916 |
+ {(const unsigned char*)"nsube", 8840}, |
|
300 | 917 |
{(const unsigned char*)"beta", 946}, |
301 |
- {(const unsigned char*)"lrm", 8206}, |
|
918 |
+ {(const unsigned char*)"frac78", 8542}, |
|
919 |
+ {(const unsigned char*)"nltri", 8938}, |
|
920 |
+ {(const unsigned char*)"iiiint", 10764}, |
|
302 | 921 |
{NULL, 0}, |
303 |
- {(const unsigned char*)"yuml", 255}, |
|
922 |
+ {(const unsigned char*)"veebar", 8891}, |
|
304 | 923 |
{NULL, 0}, |
305 | 924 |
{NULL, 0}, |
925 |
+ {(const unsigned char*)"RightTeeVector", 10587}, |
|
926 |
+ {(const unsigned char*)"Dagger", 8225}, |
|
927 |
+ {(const unsigned char*)"vltri", 8882}, |
|
928 |
+ {(const unsigned char*)"larrtl", 8610}, |
|
929 |
+ {(const unsigned char*)"iocy", 1105}, |
|
930 |
+ {(const unsigned char*)"dashv", 8867}, |
|
931 |
+ {(const unsigned char*)"frac12", 189}, |
|
932 |
+ {(const unsigned char*)"GreaterLess", 8823}, |
|
933 |
+ {(const unsigned char*)"jsercy", 1112}, |
|
934 |
+ {(const unsigned char*)"rarrtl", 8611}, |
|
935 |
+ {(const unsigned char*)"oline", 8254}, |
|
936 |
+ {(const unsigned char*)"sup3", 179}, |
|
937 |
+ {(const unsigned char*)"emsp13", 8196}, |
|
938 |
+ {(const unsigned char*)"asymp", 8776}, |
|
306 | 939 |
{NULL, 0}, |
307 | 940 |
{NULL, 0}, |
941 |
+ {(const unsigned char*)"zeta", 950}, |
|
942 |
+ {(const unsigned char*)"UpperRightArrow", 8599}, |
|
308 | 943 |
{NULL, 0}, |
309 |
- {(const unsigned char*)"prod", 8719}, |
|
310 |
- {(const unsigned char*)"Ntilde", 209}, |
|
311 |
- {(const unsigned char*)"Lambda", 923}, |
|
944 |
+ {(const unsigned char*)"smallsetminus", 8726}, |
|
945 |
+ {(const unsigned char*)"LeftUpTeeVector", 10592}, |
|
946 |
+ {NULL, 0}, |
|
947 |
+ {NULL, 0}, |
|
948 |
+ {(const unsigned char*)"dagger", 8224}, |
|
949 |
+ {NULL, 0}, |
|
950 |
+ {NULL, 0}, |
|
951 |
+ {NULL, 0}, |
|
952 |
+ {NULL, 0}, |
|
953 |
+ {NULL, 0}, |
|
954 |
+ {NULL, 0}, |
|
955 |
+ {NULL, 0}, |
|
956 |
+ {(const unsigned char*)"LeftDownVector", 8643}, |
|
957 |
+ {(const unsigned char*)"sime", 8771}, |
|
958 |
+ {(const unsigned char*)"precsim", 8830}, |
|
959 |
+ {(const unsigned char*)"MinusPlus", 8723}, |
|
960 |
+ {NULL, 0}, |
|
961 |
+ {NULL, 0}, |
|
962 |
+ {(const unsigned char*)"LeftVector", 8636}, |
|
963 |
+ {NULL, 0}, |
|
964 |
+ {(const unsigned char*)"profalar", 9006}, |
|
965 |
+ {(const unsigned char*)"dtri", 9663}, |
|
966 |
+ {(const unsigned char*)"between", 8812}, |
|
967 |
+ {NULL, 0}, |
|
968 |
+ {NULL, 0}, |
|
969 |
+ {(const unsigned char*)"hyphen", 8208}, |
|
970 |
+ {NULL, 0}, |
|
971 |
+ {(const unsigned char*)"NegativeThinSpace", 8203}, |
|
972 |
+ {(const unsigned char*)"downdownarrows", 8650}, |
|
973 |
+ {(const unsigned char*)"xmap", 10236}, |
|
974 |
+ {(const unsigned char*)"ltri", 9667}, |
|
975 |
+ {(const unsigned char*)"bdquo", 8222}, |
|
976 |
+ {(const unsigned char*)"notinvb", 8951}, |
|
977 |
+ {NULL, 0}, |
|
978 |
+ {NULL, 0}, |
|
979 |
+ {(const unsigned char*)"rtri", 9657}, |
|
980 |
+ {NULL, 0}, |
|
981 |
+ {NULL, 0}, |
|
982 |
+ {(const unsigned char*)"hoarr", 8703}, |
|
983 |
+ {(const unsigned char*)"plusdo", 8724}, |
|
984 |
+ {(const unsigned char*)"ldquo", 8220}, |
|
985 |
+ {(const unsigned char*)"bigoplus", 10753}, |
|
986 |
+ {(const unsigned char*)"loarr", 8701}, |
|
987 |
+ {(const unsigned char*)"natur", 9838}, |
|
988 |
+ {(const unsigned char*)"utri", 9653}, |
|
989 |
+ {NULL, 0}, |
|
990 |
+ {(const unsigned char*)"rdquo", 8221}, |
|
991 |
+ {NULL, 0}, |
|
992 |
+ {(const unsigned char*)"roarr", 8702}, |
|
993 |
+ {(const unsigned char*)"VerticalBar", 8739}, |
|
994 |
+ {NULL, 0}, |
|
995 |
+ {NULL, 0}, |
|
996 |
+ {(const unsigned char*)"NotPrecedesSlantEqual", 8928}, |
|
997 |
+ {NULL, 0}, |
|
998 |
+ {NULL, 0}, |
|
999 |
+ {NULL, 0}, |
|
1000 |
+ {NULL, 0}, |
|
1001 |
+ {NULL, 0}, |
|
1002 |
+ {NULL, 0}, |
|
1003 |
+ {(const unsigned char*)"imped", 437}, |
|
1004 |
+ {(const unsigned char*)"thinsp", 8201}, |
|
1005 |
+ {NULL, 0}, |
|
1006 |
+ {NULL, 0}, |
|
1007 |
+ {NULL, 0}, |
|
1008 |
+ {NULL, 0}, |
|
1009 |
+ {(const unsigned char*)"dArr", 8659}, |
|
1010 |
+ {(const unsigned char*)"dlcorn", 8990}, |
|
1011 |
+ {NULL, 0}, |
|
1012 |
+ {(const unsigned char*)"LeftUpDownVector", 10577}, |
|
1013 |
+ {(const unsigned char*)"hArr", 8660}, |
|
1014 |
+ {NULL, 0}, |
|
1015 |
+ {NULL, 0}, |
|
1016 |
+ {NULL, 0}, |
|
1017 |
+ {(const unsigned char*)"lArr", 8656}, |
|
1018 |
+ {(const unsigned char*)"ltimes", 8905}, |
|
1019 |
+ {NULL, 0}, |
|
1020 |
+ {(const unsigned char*)"rightharpoondown", 8641}, |
|
1021 |
+ {(const unsigned char*)"otimes", 8855}, |
|
1022 |
+ {(const unsigned char*)"RightTee", 8866}, |
|
1023 |
+ {(const unsigned char*)"rArr", 8658}, |
|
1024 |
+ {(const unsigned char*)"rtimes", 8906}, |
|
1025 |
+ {(const unsigned char*)"varsigma", 962}, |
|
1026 |
+ {(const unsigned char*)"uArr", 8657}, |
|
1027 |
+ {(const unsigned char*)"ulcorn", 8988}, |
|
1028 |
+ {(const unsigned char*)"vArr", 8661}, |
|
1029 |
+ {(const unsigned char*)"szlig", 223}, |
|
1030 |
+ {(const unsigned char*)"Vdash", 8873}, |
|
1031 |
+ {(const unsigned char*)"nspar", 8742}, |
|
1032 |
+ {(const unsigned char*)"bsim", 8765}, |
|
1033 |
+ {(const unsigned char*)"LeftTriangleBar", 10703}, |
|
1034 |
+ {NULL, 0}, |
|
1035 |
+ {NULL, 0}, |
|
1036 |
+ {(const unsigned char*)"gsim", 8819}, |
|
1037 |
+ {(const unsigned char*)"lcub", 123}, |
|
1038 |
+ {NULL, 0}, |
|
1039 |
+ {NULL, 0}, |
|
1040 |
+ {(const unsigned char*)"isinE", 8953}, |
|
1041 |
+ {(const unsigned char*)"lsim", 8818}, |
|
1042 |
+ {NULL, 0}, |
|
1043 |
+ {(const unsigned char*)"rcub", 125}, |
|
1044 |
+ {(const unsigned char*)"boxH", 9552}, |
|
1045 |
+ {NULL, 0}, |
|
1046 |
+ {(const unsigned char*)"nsim", 8769}, |
|
1047 |
+ {(const unsigned char*)"bkarow", 10509}, |
|
1048 |
+ {(const unsigned char*)"mdash", 8212}, |
|
1049 |
+ {(const unsigned char*)"odash", 8861}, |
|
1050 |
+ {(const unsigned char*)"clubsuit", 9827}, |
|
1051 |
+ {(const unsigned char*)"bigcup", 8899}, |
|
1052 |
+ {(const unsigned char*)"nwarhk", 10531}, |
|
1053 |
+ {(const unsigned char*)"boxDL", 9559}, |
|
1054 |
+ {(const unsigned char*)"ndash", 8211}, |
|
1055 |
+ {NULL, 0}, |
|
1056 |
+ {(const unsigned char*)"vdash", 8866}, |
|
1057 |
+ {(const unsigned char*)"swarhk", 10534}, |
|
1058 |
+ {NULL, 0}, |
|
1059 |
+ {NULL, 0}, |
|
1060 |
+ {(const unsigned char*)"blacklozenge", 10731}, |
|
1061 |
+ {NULL, 0}, |
|
1062 |
+ {NULL, 0}, |
|
1063 |
+ {NULL, 0}, |
|
1064 |
+ {(const unsigned char*)"DoubleLeftRightArrow", 8660}, |
|
1065 |
+ {NULL, 0}, |
|
1066 |
+ {(const unsigned char*)"naturals", 8469}, |
|
1067 |
+ {(const unsigned char*)"incare", 8453}, |
|
1068 |
+ {NULL, 0}, |
|
1069 |
+ {(const unsigned char*)"RightUpDownVector", 10575}, |
|
312 | 1070 |
{NULL, 0}, |
313 |
- {(const unsigned char*)"infin", 8734}, |
|
314 |
- {(const unsigned char*)"sup1", 185}, |
|
315 |
- {(const unsigned char*)"middot", 183}, |
|
316 |
- {(const unsigned char*)"Otilde", 213}, |
|
317 | 1071 |
{(const unsigned char*)"zwnj", 8204}, |
1072 |
+ {(const unsigned char*)"nprec", 8832}, |
|
318 | 1073 |
{NULL, 0}, |
319 | 1074 |
{NULL, 0}, |
1075 |
+ {(const unsigned char*)"circledast", 8859}, |
|
320 | 1076 |
{NULL, 0}, |
1077 |
+ {(const unsigned char*)"heartsuit", 9829}, |
|
1078 |
+ {(const unsigned char*)"esdot", 8784}, |
|
1079 |
+ {(const unsigned char*)"bigtriangledown", 9661}, |
|
1080 |
+ {(const unsigned char*)"Uparrow", 8657}, |
|
1081 |
+ {(const unsigned char*)"gsdot", 8919}, |
|
1082 |
+ {(const unsigned char*)"Coproduct", 8720}, |
|
321 | 1083 |
{NULL, 0}, |
1084 |
+ {(const unsigned char*)"circledcirc", 8858}, |
|
1085 |
+ {(const unsigned char*)"oint", 8750}, |
|
1086 |
+ {(const unsigned char*)"qint", 10764}, |
|
322 | 1087 |
{NULL, 0}, |
1088 |
+ {(const unsigned char*)"ldsh", 8626}, |
|
1089 |
+ {(const unsigned char*)"trade", 8482}, |
|
1090 |
+ {(const unsigned char*)"lrhar2", 8651}, |
|
1091 |
+ {(const unsigned char*)"larrhk", 8617}, |
|
1092 |
+ {(const unsigned char*)"tint", 8749}, |
|
323 | 1093 |
{NULL, 0}, |
324 |
- {(const unsigned char*)"zeta", 950}, |
|
325 |
- {(const unsigned char*)"Acirc", 194}, |
|
326 |
- {(const unsigned char*)"Kappa", 922}, |
|
1094 |
+ {(const unsigned char*)"rdsh", 8627}, |
|
1095 |
+ {(const unsigned char*)"psgr", 968}, |
|
1096 |
+ {(const unsigned char*)"rarrhk", 8618}, |
|
1097 |
+ {(const unsigned char*)"Psi", 936}, |
|
327 | 1098 |
{NULL, 0}, |
328 |
- {(const unsigned char*)"Ecirc", 202}, |
|
329 |
- {(const unsigned char*)"atilde", 227}, |
|
1099 |
+ {(const unsigned char*)"larrsim", 10611}, |
|
330 | 1100 |
{NULL, 0}, |
331 | 1101 |
{NULL, 0}, |
332 |
- {(const unsigned char*)"Icirc", 206}, |
|
333 |
- {(const unsigned char*)"rlm", 8207}, |
|
334 | 1102 |
{NULL, 0}, |
1103 |
+ {(const unsigned char*)"Epsilon", 917}, |
|
335 | 1104 |
{NULL, 0}, |
1105 |
+ {(const unsigned char*)"rarrsim", 10612}, |
|
1106 |
+ {(const unsigned char*)"male", 9794}, |
|
336 | 1107 |
{NULL, 0}, |
337 |
- {(const unsigned char*)"micro", 181}, |
|
338 |
- {(const unsigned char*)"sube", 8838}, |
|
339 |
- {(const unsigned char*)"Ocirc", 212}, |
|
340 | 1108 |
{NULL, 0}, |
341 |
- {(const unsigned char*)"ntilde", 241}, |
|
342 |
- {(const unsigned char*)"otilde", 245}, |
|
343 |
- {(const unsigned char*)"Rho", 929}, |
|
1109 |
+ {NULL, 0}, |
|
1110 |
+ {NULL, 0}, |
|
1111 |
+ {NULL, 0}, |
|
1112 |
+ {(const unsigned char*)"uparrow", 8593}, |
|
1113 |
+ {(const unsigned char*)"Scaron", 352}, |
|
1114 |
+ {NULL, 0}, |
|
1115 |
+ {NULL, 0}, |
|
1116 |
+ {NULL, 0}, |
|
1117 |
+ {NULL, 0}, |
|
1118 |
+ {NULL, 0}, |
|
1119 |
+ {(const unsigned char*)"Upsilon", 933}, |
|
1120 |
+ {NULL, 0}, |
|
1121 |
+ {(const unsigned char*)"hearts", 9829}, |
|
1122 |
+ {NULL, 0}, |
|
1123 |
+ {NULL, 0}, |
|
1124 |
+ {(const unsigned char*)"eqsim", 8770}, |
|
1125 |
+ {(const unsigned char*)"Sigma", 931}, |
|
1126 |
+ {(const unsigned char*)"Or", 10836}, |
|
1127 |
+ {(const unsigned char*)"UpArrowDownArrow", 8645}, |
|
1128 |
+ {(const unsigned char*)"twixt", 8812}, |
|
1129 |
+ {(const unsigned char*)"psi", 968}, |
|
1130 |
+ {NULL, 0}, |
|
1131 |
+ {(const unsigned char*)"nabla", 8711}, |
|
1132 |
+ {(const unsigned char*)"bowtie", 8904}, |
|
1133 |
+ {NULL, 0}, |
|
1134 |
+ {NULL, 0}, |
|
1135 |
+ {(const unsigned char*)"epsilon", 949}, |
|
1136 |
+ {NULL, 0}, |
|
1137 |
+ {(const unsigned char*)"GreaterSlantEqual", 10878}, |
|
1138 |
+ {(const unsigned char*)"NotLeftTriangleEqual", 8940}, |
|
1139 |
+ {(const unsigned char*)"apacir", 10863}, |
|
1140 |
+ {NULL, 0}, |
|
1141 |
+ {NULL, 0}, |
|
1142 |
+ {(const unsigned char*)"upharpoonright", 8638}, |
|
1143 |
+ {NULL, 0}, |
|
1144 |
+ {(const unsigned char*)"scaron", 353}, |
|
1145 |
+ {NULL, 0}, |
|
1146 |
+ {NULL, 0}, |
|
1147 |
+ {NULL, 0}, |
|
1148 |
+ {NULL, 0}, |
|
1149 |
+ {NULL, 0}, |
|
1150 |
+ {(const unsigned char*)"af", 8289}, |
|
1151 |
+ {(const unsigned char*)"upsilon", 965}, |
|
1152 |
+ {(const unsigned char*)"TildeEqual", 8771}, |
|
1153 |
+ {NULL, 0}, |
|
1154 |
+ {(const unsigned char*)"Lambda", 923}, |
|
1155 |
+ {(const unsigned char*)"neArr", 8663}, |
|
1156 |
+ {(const unsigned char*)"sigma", 963}, |
|
1157 |
+ {(const unsigned char*)"ETH", 208}, |
|
1158 |
+ {(const unsigned char*)"leftthreetimes", 8907}, |
|
1159 |
+ {(const unsigned char*)"seArr", 8664}, |
|
1160 |
+ {(const unsigned char*)"thicksim", 8764}, |
|
1161 |
+ {(const unsigned char*)"bigcap", 8898}, |
|
1162 |
+ {(const unsigned char*)"ang", 8736}, |
|
1163 |
+ {(const unsigned char*)"ldca", 10550}, |
|
1164 |
+ {(const unsigned char*)"rdca", 10551}, |
|
1165 |
+ {(const unsigned char*)"wr", 8768}, |
|
1166 |
+ {NULL, 0}, |
|
1167 |
+ {(const unsigned char*)"or", 8744}, |
|
1168 |
+ {(const unsigned char*)"pr", 8826}, |
|
1169 |
+ {NULL, 0}, |
|
1170 |
+ {NULL, 0}, |
|
1171 |
+ {NULL, 0}, |
|
1172 |
+ {(const unsigned char*)"triangleq", 8796}, |
|
1173 |
+ {NULL, 0}, |
|
1174 |
+ {NULL, 0}, |
|
1175 |
+ {NULL, 0}, |
|
1176 |
+ {NULL, 0}, |
|
1177 |
+ {NULL, 0}, |
|
1178 |
+ {NULL, 0}, |
|
1179 |
+ {(const unsigned char*)"gtrsim", 8819}, |
|
1180 |
+ {(const unsigned char*)"looparrowleft", 8619}, |
|
1181 |
+ {(const unsigned char*)"LongRightArrow", 10230}, |
|
1182 |
+ {(const unsigned char*)"nis", 8956}, |
|
1183 |
+ {(const unsigned char*)"Aring", 197}, |
|
1184 |
+ {(const unsigned char*)"LeftDownVectorBar", 10585}, |
|
1185 |
+ {(const unsigned char*)"NotTildeEqual", 8772}, |
|
344 | 1186 |
{(const unsigned char*)"lambda", 955}, |
345 |
- {(const unsigned char*)"Ucirc", 219}, |
|
1187 |
+ {(const unsigned char*)"larrlp", 8619}, |
|
1188 |
+ {(const unsigned char*)"leftharpoondown", 8637}, |
|
346 | 1189 |
{NULL, 0}, |
347 |
- {(const unsigned char*)"diams", 9830}, |
|
348 |
- {(const unsigned char*)"Tau", 932}, |
|
349 |
- {(const unsigned char*)"Aacute", 193}, |
|
350 | 1190 |
{NULL, 0}, |
1191 |
+ {(const unsigned char*)"sup2", 178}, |
|
351 | 1192 |
{NULL, 0}, |
1193 |
+ {(const unsigned char*)"rarrlp", 8620}, |
|
1194 |
+ {(const unsigned char*)"SmallCircle", 8728}, |
|
1195 |
+ {(const unsigned char*)"bNot", 10989}, |
|
352 | 1196 |
{NULL, 0}, |
353 |
- {(const unsigned char*)"Eacute", 201}, |
|
1197 |
+ {NULL, 0}, |
|
1198 |
+ {(const unsigned char*)"aleph", 8501}, |
|
1199 |
+ {(const unsigned char*)"blacktriangle", 9652}, |
|
1200 |
+ {NULL, 0}, |
|
1201 |
+ {(const unsigned char*)"circleddash", 8861}, |
|
1202 |
+ {NULL, 0}, |
|
1203 |
+ {NULL, 0}, |
|
1204 |
+ {(const unsigned char*)"rhov", 1009}, |
|
1205 |
+ {NULL, 0}, |
|
1206 |
+ {(const unsigned char*)"UpTee", 8869}, |
|
1207 |
+ {(const unsigned char*)"die", 168}, |
|
1208 |
+ {(const unsigned char*)"bump", 8782}, |
|
1209 |
+ {NULL, 0}, |
|
1210 |
+ {NULL, 0}, |
|
1211 |
+ {NULL, 0}, |
|
1212 |
+ {(const unsigned char*)"epar", 8917}, |
|
1213 |
+ {(const unsigned char*)"gnap", 10890}, |
|
1214 |
+ {(const unsigned char*)"RightFloor", 8971}, |
|
1215 |
+ {(const unsigned char*)"aring", 229}, |
|
1216 |
+ {NULL, 0}, |
|
1217 |
+ {(const unsigned char*)"lnap", 10889}, |
|
1218 |
+ {(const unsigned char*)"approx", 8776}, |
|
1219 |
+ {(const unsigned char*)"larrbfs", 10527}, |
|
1220 |
+ {(const unsigned char*)"lpar", 40}, |
|
1221 |
+ {(const unsigned char*)"npar", 8742}, |
|
1222 |
+ {(const unsigned char*)"gEl", 10892}, |
|
1223 |
+ {(const unsigned char*)"boxVl", 9570}, |
|
1224 |
+ {(const unsigned char*)"eqcolon", 8789}, |
|
1225 |
+ {(const unsigned char*)"rarrbfs", 10528}, |
|
1226 |
+ {(const unsigned char*)"rpar", 41}, |
|
1227 |
+ {(const unsigned char*)"spar", 8741}, |
|
1228 |
+ {(const unsigned char*)"thksim", 8764}, |
|
1229 |
+ {NULL, 0}, |
|
1230 |
+ {(const unsigned char*)"RightDownVectorBar", 10581}, |
|
1231 |
+ {NULL, 0}, |
|
1232 |
+ {(const unsigned char*)"para", 182}, |
|
1233 |
+ {(const unsigned char*)"thkap", 8776}, |
|
1234 |
+ {NULL, 0}, |
|
1235 |
+ {NULL, 0}, |
|
1236 |
+ {NULL, 0}, |
|
1237 |
+ {NULL, 0}, |
|
1238 |
+ {NULL, 0}, |
|
1239 |
+ {(const unsigned char*)"Superset", 8835}, |
|
1240 |
+ {NULL, 0}, |
|
1241 |
+ {(const unsigned char*)"ddarr", 8650}, |
|
1242 |
+ {NULL, 0}, |
|
1243 |
+ {NULL, 0}, |
|
1244 |
+ {NULL, 0}, |
|
1245 |
+ {NULL, 0}, |
|
1246 |
+ {NULL, 0}, |
|
1247 |
+ {(const unsigned char*)"Gamma", 915}, |
|
1248 |
+ {(const unsigned char*)"frac15", 8533}, |
|
1249 |
+ {(const unsigned char*)"kappav", 1008}, |
|
1250 |
+ {NULL, 0}, |
|
1251 |
+ {NULL, 0}, |
|
1252 |
+ {NULL, 0}, |
|
1253 |
+ {NULL, 0}, |
|
1254 |
+ {NULL, 0}, |
|
1255 |
+ {NULL, 0}, |
|
1256 |
+ {NULL, 0}, |
|
1257 |
+ {NULL, 0}, |
|
1258 |
+ {(const unsigned char*)"udarr", 8645}, |
|
1259 |
+ {(const unsigned char*)"Therefore", 8756}, |
|
1260 |
+ {(const unsigned char*)"hairsp", 8202}, |
|
1261 |
+ {NULL, 0}, |
|
1262 |
+ {NULL, 0}, |
|
1263 |
+ {(const unsigned char*)"CircleMinus", 8854}, |
|
1264 |
+ {NULL, 0}, |
|
1265 |
+ {NULL, 0}, |
|
1266 |
+ {NULL, 0}, |
|
1267 |
+ {(const unsigned char*)"ordf", 170}, |
|
1268 |
+ {(const unsigned char*)"VerticalTilde", 8768}, |
|
354 | 1269 |
{NULL, 0}, |
355 | 1270 |
{NULL, 0}, |
356 |
- {(const unsigned char*)"acirc", 226}, |
|
357 |
- {(const unsigned char*)"Iacute", 205}, |
|
358 |
- {(const unsigned char*)"kappa", 954}, |
|
359 |
- {(const unsigned char*)"pound", 163}, |
|
360 |
- {(const unsigned char*)"ecirc", 234}, |
|
361 |
- {(const unsigned char*)"frac14", 188}, |
|
362 | 1271 |
{NULL, 0}, |
363 |
- {(const unsigned char*)"Oacute", 211}, |
|
364 |
- {(const unsigned char*)"icirc", 238}, |
|
365 | 1272 |
{NULL, 0}, |
366 | 1273 |
{NULL, 0}, |
1274 |
+ {(const unsigned char*)"LeftVectorBar", 10578}, |
|
1275 |
+ {NULL, 0}, |
|
1276 |
+ {NULL, 0}, |
|
1277 |
+ {(const unsigned char*)"UnderBracket", 9141}, |
|
1278 |
+ {NULL, 0}, |
|
1279 |
+ {(const unsigned char*)"gamma", 947}, |
|
1280 |
+ {NULL, 0}, |
|
1281 |
+ {NULL, 0}, |
|
1282 |
+ {NULL, 0}, |
|
1283 |
+ {NULL, 0}, |
|
1284 |
+ {(const unsigned char*)"DoubleDot", 168}, |
|
367 | 1285 |
{(const unsigned char*)"lceil", 8968}, |
368 | 1286 |
{NULL, 0}, |
369 |
- {(const unsigned char*)"Uacute", 218}, |
|
370 |
- {(const unsigned char*)"ocirc", 244}, |
|
371 | 1287 |
{NULL, 0}, |
372 | 1288 |
{NULL, 0}, |
1289 |
+ {(const unsigned char*)"curlyeqprec", 8926}, |
|
1290 |
+ {(const unsigned char*)"varnothing", 8709}, |
|
1291 |
+ {(const unsigned char*)"nhpar", 10994}, |
|
1292 |
+ {(const unsigned char*)"therefore", 8756}, |
|
1293 |
+ {(const unsigned char*)"dlcrop", 8973}, |
|
373 | 1294 |
{(const unsigned char*)"rceil", 8969}, |
374 |
- {(const unsigned char*)"Yacute", 221}, |
|
375 |
- {(const unsigned char*)"rho", 961}, |
|
376 |
- {(const unsigned char*)"uml", 168}, |
|
377 |
- {(const unsigned char*)"ucirc", 251}, |
|
1295 |
+ {(const unsigned char*)"leftleftarrows", 8647}, |
|
1296 |
+ {(const unsigned char*)"vangrt", 10652}, |
|
378 | 1297 |
{NULL, 0}, |
1298 |
+ {(const unsigned char*)"lrm", 8206}, |
|
379 | 1299 |
{NULL, 0}, |
380 |
- {(const unsigned char*)"tau", 964}, |
|
381 |
- {(const unsigned char*)"aacute", 225}, |
|
382 | 1300 |
{NULL, 0}, |
383 | 1301 |
{NULL, 0}, |
384 | 1302 |
{NULL, 0}, |
385 |
- {(const unsigned char*)"eacute", 233}, |
|
1303 |
+ {(const unsigned char*)"curvearrowright", 8631}, |
|
1304 |
+ {(const unsigned char*)"thetas", 952}, |
|
1305 |
+ {(const unsigned char*)"PartialD", 8706}, |
|
1306 |
+ {(const unsigned char*)"nVDash", 8879}, |
|
1307 |
+ {(const unsigned char*)"wedgeq", 8793}, |
|
386 | 1308 |
{NULL, 0}, |
387 | 1309 |
{NULL, 0}, |
1310 |
+ {(const unsigned char*)"ulcrop", 8975}, |
|
388 | 1311 |
{NULL, 0}, |
389 |
- {(const unsigned char*)"iacute", 237}, |
|
1312 |
+ {NULL, 0}, |
|
1313 |
+ {NULL, 0}, |
|
1314 |
+ {NULL, 0}, |
|
1315 |
+ {(const unsigned char*)"zigrarr", 8669}, |
|
1316 |
+ {(const unsigned char*)"lozf", 10731}, |
|
1317 |
+ {(const unsigned char*)"sung", 9834}, |
|
1318 |
+ {NULL, 0}, |
|
1319 |
+ {NULL, 0}, |
|
1320 |
+ {NULL, 0}, |
|
1321 |
+ {(const unsigned char*)"iff", 8660}, |
|
1322 |
+ {(const unsigned char*)"xnis", 8955}, |
|
1323 |
+ {(const unsigned char*)"ring", 730}, |
|
1324 |
+ {(const unsigned char*)"dfisht", 10623}, |
|
1325 |
+ {NULL, 0}, |
|
1326 |
+ {NULL, 0}, |
|
1327 |
+ {NULL, 0}, |
|
1328 |
+ {(const unsigned char*)"nltrie", 8940}, |
|
1329 |
+ {(const unsigned char*)"llcorner", 8990}, |
|
1330 |
+ {NULL, 0}, |
|
1331 |
+ {(const unsigned char*)"lfisht", 10620}, |
|
1332 |
+ {(const unsigned char*)"ctdot", 8943}, |
|
1333 |
+ {(const unsigned char*)"dtdot", 8945}, |
|
1334 |
+ {(const unsigned char*)"CloseCurlyQuote", 8217}, |
|
1335 |
+ {(const unsigned char*)"par", 8741}, |
|
1336 |
+ {NULL, 0}, |
|
1337 |
+ {(const unsigned char*)"rfisht", 10621}, |
|
1338 |
+ {(const unsigned char*)"ulcorner", 8988}, |
|
1339 |
+ {NULL, 0}, |
|
1340 |
+ {(const unsigned char*)"ufisht", 10622}, |
|
1341 |
+ {NULL, 0}, |
|
1342 |
+ {(const unsigned char*)"notinvc", 8950}, |
|
1343 |
+ {(const unsigned char*)"orderof", 8500}, |
|
1344 |
+ {NULL, 0}, |
|
1345 |
+ {(const unsigned char*)"Rrightarrow", 8667}, |
|
1346 |
+ {(const unsigned char*)"emsp", 8195}, |
|
1347 |
+ {(const unsigned char*)"Chi", 935}, |
|
1348 |
+ {NULL, 0}, |
|
1349 |
+ {NULL, 0}, |
|
1350 |
+ {(const unsigned char*)"utdot", 8944}, |
|
1351 |
+ {(const unsigned char*)"bull", 8226}, |
|
1352 |
+ {NULL, 0}, |
|
1353 |
+ {(const unsigned char*)"khgr", 967}, |
|
1354 |
+ {(const unsigned char*)"ominus", 8854}, |
|
1355 |
+ {(const unsigned char*)"eqslantgtr", 10902}, |
|
1356 |
+ {(const unsigned char*)"multimap", 8888}, |
|
1357 |
+ {(const unsigned char*)"lowast", 8727}, |
|
1358 |
+ {(const unsigned char*)"ohgr", 969}, |
|
1359 |
+ {(const unsigned char*)"NotLess", 8814}, |
|
1360 |
+ {(const unsigned char*)"alefsym", 8501}, |
|
1361 |
+ {(const unsigned char*)"Phi", 934}, |
|
1362 |
+ {(const unsigned char*)"thgr", 952}, |
|
1363 |
+ {NULL, 0}, |
|
1364 |
+ {(const unsigned char*)"isinsv", 8947}, |
|
1365 |
+ {(const unsigned char*)"OHacgr", 911}, |
|
1366 |
+ {NULL, 0}, |
|
1367 |
+ {(const unsigned char*)"NotElement", 8713}, |
|
1368 |
+ {(const unsigned char*)"nearrow", 8599}, |
|
1369 |
+ {NULL, 0}, |
|
1370 |
+ {NULL, 0}, |
|
1371 |
+ {NULL, 0}, |
|
1372 |
+ {NULL, 0}, |
|
1373 |
+ {(const unsigned char*)"DoubleLeftTee", 10980}, |
|
1374 |
+ {(const unsigned char*)"nrightarrow", 8603}, |
|
1375 |
+ {NULL, 0}, |
|
1376 |
+ {(const unsigned char*)"searrow", 8600}, |
|
1377 |
+ {(const unsigned char*)"UpTeeArrow", 8613}, |
|
1378 |
+ {NULL, 0}, |
|
1379 |
+ {(const unsigned char*)"dbkarow", 10511}, |
|
1380 |
+ {(const unsigned char*)"period", 46}, |
|
1381 |
+ {(const unsigned char*)"Gg", 8921}, |
|
1382 |
+ {(const unsigned char*)"circledR", 174}, |
|
1383 |
+ {(const unsigned char*)"DownBreve", 785}, |
|
1384 |
+ {NULL, 0}, |
|
1385 |
+ {(const unsigned char*)"imagline", 8464}, |
|
1386 |
+ {(const unsigned char*)"gneq", 10888}, |
|
1387 |
+ {NULL, 0}, |
|
1388 |
+ {NULL, 0}, |
|
1389 |
+ {(const unsigned char*)"chi", 967}, |
|
1390 |
+ {NULL, 0}, |
|
1391 |
+ {(const unsigned char*)"lneq", 10887}, |
|
1392 |
+ {(const unsigned char*)"phi", 981}, |
|
1393 |
+ {NULL, 0}, |
|
1394 |
+ {(const unsigned char*)"spadesuit", 9824}, |
|
1395 |
+ {NULL, 0}, |
|
1396 |
+ {NULL, 0}, |
|
1397 |
+ {(const unsigned char*)"prsim", 8830}, |
|
1398 |
+ {(const unsigned char*)"Atilde", 195}, |
|
1399 |
+ {NULL, 0}, |
|
1400 |
+ {NULL, 0}, |
|
1401 |
+ {(const unsigned char*)"isinv", 8712}, |
|
1402 |
+ {(const unsigned char*)"rlarr2", 8644}, |
|
1403 |
+ {(const unsigned char*)"nrArr", 8655}, |
|
1404 |
+ {NULL, 0}, |
|
1405 |
+ {(const unsigned char*)"angst", 8491}, |
|
1406 |
+ {NULL, 0}, |
|
1407 |
+ {(const unsigned char*)"sdotb", 8865}, |
|
1408 |
+ {NULL, 0}, |
|
1409 |
+ {NULL, 0}, |
|
1410 |
+ {NULL, 0}, |
|
1411 |
+ {(const unsigned char*)"Ntilde", 209}, |
|
1412 |
+ {(const unsigned char*)"gg", 8811}, |
|
1413 |
+ {(const unsigned char*)"xrArr", 10233}, |
|
1414 |
+ {(const unsigned char*)"DoubleLongLeftRightArrow", 10234}, |
|
1415 |
+ {(const unsigned char*)"Otilde", 213}, |
|
1416 |
+ {NULL, 0}, |
|
1417 |
+ {(const unsigned char*)"lg", 8822}, |
|
1418 |
+ {(const unsigned char*)"LeftArrowBar", 8676}, |
|
1419 |
+ {(const unsigned char*)"thickapprox", 8776}, |
|
1420 |
+ {NULL, 0}, |
|
1421 |
+ {NULL, 0}, |
|
1422 |
+ {NULL, 0}, |
|
1423 |
+ {NULL, 0}, |
|
1424 |
+ {(const unsigned char*)"precnsim", 8936}, |
|
1425 |
+ {NULL, 0}, |
|
1426 |
+ {NULL, 0}, |
|
1427 |
+ {NULL, 0}, |
|
1428 |
+ {NULL, 0}, |
|
1429 |
+ {(const unsigned char*)"Element", 8712}, |
|
1430 |
+ {(const unsigned char*)"atilde", 227}, |
|
1431 |
+ {NULL, 0}, |
|
1432 |
+ {(const unsigned char*)"LessEqualGreater", 8922}, |
|
1433 |
+ {NULL, 0}, |
|
1434 |
+ {(const unsigned char*)"eqslantless", 10901}, |
|
1435 |
+ {(const unsigned char*)"EmptyVerySmallSquare", 9643}, |
|
1436 |
+ {(const unsigned char*)"phgr", 966}, |
|
1437 |
+ {(const unsigned char*)"epsiv", 949}, |
|
1438 |
+ {(const unsigned char*)"DoubleVerticalBar", 8741}, |
|
1439 |
+ {(const unsigned char*)"LeftTriangle", 8882}, |
|
390 | 1440 |
{NULL, 0}, |
391 | 1441 |
{(const unsigned char*)"spades", 9824}, |
1442 |
+ {(const unsigned char*)"frac23", 8532}, |
|
1443 |
+ {(const unsigned char*)"ntilde", 241}, |
|
1444 |
+ {(const unsigned char*)"otilde", 245}, |
|
392 | 1445 |
{NULL, 0}, |
1446 |
+ {(const unsigned char*)"sup1", 185}, |
|
1447 |
+ {(const unsigned char*)"GreaterGreater", 10914}, |
|
1448 |
+ {(const unsigned char*)"iecy", 1077}, |
|
1449 |
+ {(const unsigned char*)"NestedGreaterGreater", 8811}, |
|
1450 |
+ {(const unsigned char*)"lfloor", 8970}, |
|
1451 |
+ {(const unsigned char*)"SquareSubsetEqual", 8849}, |
|
393 | 1452 |
{NULL, 0}, |
394 |
- {(const unsigned char*)"prop", 8733}, |
|
395 |
- {(const unsigned char*)"oacute", 243}, |
|
396 |
- {(const unsigned char*)"frac34", 190}, |
|
1453 |
+ {(const unsigned char*)"acute", 180}, |
|
1454 |
+ {(const unsigned char*)"YAcy", 1071}, |
|
397 | 1455 |
{NULL, 0}, |
1456 |
+ {(const unsigned char*)"rfloor", 8971}, |
|
398 | 1457 |
{NULL, 0}, |
399 | 1458 |
{NULL, 0}, |
400 |
- {(const unsigned char*)"sigmaf", 962}, |
|
401 |
- {(const unsigned char*)"uacute", 250}, |
|
1459 |
+ {(const unsigned char*)"quest", 63}, |
|
402 | 1460 |
{NULL, 0}, |
1461 |
+ {(const unsigned char*)"rlhar", 8652}, |
|
403 | 1462 |
{NULL, 0}, |
404 | 1463 |
{NULL, 0}, |
405 |
- {(const unsigned char*)"yacute", 253}, |
|
406 | 1464 |
{NULL, 0}, |
407 |
- {(const unsigned char*)"THORN", 222}, |
|
408 | 1465 |
{NULL, 0}, |
409 | 1466 |
{NULL, 0}, |
410 | 1467 |
{NULL, 0}, |
... | ... |
@@ -413,23 +1901,49 @@ static struct element entities_htable_elements[] = { |
413 | 413 |
{NULL, 0}, |
414 | 414 |
{NULL, 0}, |
415 | 415 |
{NULL, 0}, |
416 |
+ {(const unsigned char*)"geq", 8805}, |
|
417 |
+ {(const unsigned char*)"CloseCurlyDoubleQuote", 8221}, |
|
418 |
+ {(const unsigned char*)"lsquor", 8218}, |
|
416 | 419 |
{NULL, 0}, |
420 |
+ {(const unsigned char*)"tshcy", 1115}, |
|
421 |
+ {(const unsigned char*)"leq", 8804}, |
|
422 |
+ {(const unsigned char*)"boxUl", 9564}, |
|
423 |
+ {(const unsigned char*)"lurdshar", 10570}, |
|
424 |
+ {(const unsigned char*)"rsquor", 8217}, |
|
425 |
+ {(const unsigned char*)"VerticalSeparator", 10072}, |
|
426 |
+ {(const unsigned char*)"boxdR", 9554}, |
|
417 | 427 |
{NULL, 0}, |
418 | 428 |
{NULL, 0}, |
419 | 429 |
{NULL, 0}, |
420 |
- {(const unsigned char*)"brvbar", 166}, |
|
430 |
+ {(const unsigned char*)"scap", 10936}, |
|
431 |
+ {(const unsigned char*)"hkswarow", 10534}, |
|
421 | 432 |
{NULL, 0}, |
433 |
+ {(const unsigned char*)"CapitalDifferentialD", 8517}, |
|
434 |
+ {(const unsigned char*)"NoBreak", 8288}, |
|
435 |
+ {(const unsigned char*)"lthree", 8907}, |
|
436 |
+ {(const unsigned char*)"bigtriangleup", 9651}, |
|
437 |
+ {(const unsigned char*)"elinters", 65533}, |
|
422 | 438 |
{NULL, 0}, |
439 |
+ {(const unsigned char*)"forall", 8704}, |
|
440 |
+ {(const unsigned char*)"NotGreater", 8815}, |
|
441 |
+ {(const unsigned char*)"rthree", 8908}, |
|
442 |
+ {(const unsigned char*)"Jukcy", 1028}, |
|
423 | 443 |
{NULL, 0}, |
444 |
+ {(const unsigned char*)"Iukcy", 1030}, |
|
424 | 445 |
{NULL, 0}, |
425 |
- {(const unsigned char*)"supe", 8839}, |
|
446 |
+ {(const unsigned char*)"gtreqqless", 10892}, |
|
426 | 447 |
{NULL, 0}, |
448 |
+ {(const unsigned char*)"UnderParenthesis", 65078}, |
|
427 | 449 |
{NULL, 0}, |
450 |
+ {(const unsigned char*)"nearr", 8599}, |
|
428 | 451 |
{NULL, 0}, |
429 | 452 |
{NULL, 0}, |
430 |
- {(const unsigned char*)"sdot", 8901}, |
|
431 |
- {(const unsigned char*)"Delta", 916}, |
|
432 |
- {(const unsigned char*)"aelig", 230}, |
|
453 |
+ {(const unsigned char*)"perp", 8869}, |
|
454 |
+ {(const unsigned char*)"bepsi", 1014}, |
|
455 |
+ {(const unsigned char*)"searr", 8600}, |
|
456 |
+ {(const unsigned char*)"iexcl", 161}, |
|
457 |
+ {(const unsigned char*)"LeftArrow", 8592}, |
|
458 |
+ {(const unsigned char*)"NegativeMediumSpace", 8203}, |
|
433 | 459 |
{NULL, 0}, |
434 | 460 |
{NULL, 0}, |
435 | 461 |
{NULL, 0}, |
... | ... |
@@ -438,16 +1952,29 @@ static struct element entities_htable_elements[] = { |
438 | 438 |
{NULL, 0}, |
439 | 439 |
{NULL, 0}, |
440 | 440 |
{NULL, 0}, |
441 |
+ {(const unsigned char*)"ast", 42}, |
|
441 | 442 |
{NULL, 0}, |
443 |
+ {(const unsigned char*)"lAarr", 8666}, |
|
444 |
+ {(const unsigned char*)"DownRightVectorBar", 10583}, |
|
445 |
+ {(const unsigned char*)"cuvee", 8910}, |
|
442 | 446 |
{NULL, 0}, |
443 |
- {(const unsigned char*)"szlig", 223}, |
|
447 |
+ {(const unsigned char*)"iukcy", 1110}, |
|
448 |
+ {(const unsigned char*)"jukcy", 1108}, |
|
449 |
+ {(const unsigned char*)"latail", 10521}, |
|
450 |
+ {(const unsigned char*)"disin", 8946}, |
|
444 | 451 |
{NULL, 0}, |
452 |
+ {(const unsigned char*)"rAarr", 8667}, |
|
453 |
+ {(const unsigned char*)"angsph", 8738}, |
|
445 | 454 |
{NULL, 0}, |
446 |
- {(const unsigned char*)"oelig", 339}, |
|
455 |
+ {(const unsigned char*)"InvisibleComma", 8291}, |
|
456 |
+ {(const unsigned char*)"ratail", 10522}, |
|
447 | 457 |
{NULL, 0}, |
448 | 458 |
{NULL, 0}, |
449 | 459 |
{NULL, 0}, |
450 |
- {(const unsigned char*)"int", 8747}, |
|
460 |
+ {(const unsigned char*)"supnE", 10956}, |
|
461 |
+ {(const unsigned char*)"ngt", 8815}, |
|
462 |
+ {(const unsigned char*)"order", 8500}, |
|
463 |
+ {(const unsigned char*)"divide", 247}, |
|
451 | 464 |
{NULL, 0}, |
452 | 465 |
{NULL, 0}, |
453 | 466 |
{NULL, 0}, |
... | ... |
@@ -458,63 +1985,321 @@ static struct element entities_htable_elements[] = { |
458 | 458 |
{NULL, 0}, |
459 | 459 |
{NULL, 0}, |
460 | 460 |
{NULL, 0}, |
461 |
+ {(const unsigned char*)"colon", 58}, |
|
461 | 462 |
{NULL, 0}, |
462 | 463 |
{NULL, 0}, |
463 |
- {(const unsigned char*)"delta", 948}, |
|
464 | 464 |
{NULL, 0}, |
465 | 465 |
{NULL, 0}, |
466 | 466 |
{NULL, 0}, |
467 | 467 |
{NULL, 0}, |
468 |
+ {(const unsigned char*)"CirclePlus", 8853}, |
|
469 |
+ {(const unsigned char*)"frac18", 8539}, |
|
470 |
+ {(const unsigned char*)"nsup", 8837}, |
|
468 | 471 |
{NULL, 0}, |
469 | 472 |
{NULL, 0}, |
470 | 473 |
{NULL, 0}, |
474 |
+ {(const unsigned char*)"intprod", 10812}, |
|
471 | 475 |
{NULL, 0}, |
472 | 476 |
{NULL, 0}, |
473 | 477 |
{NULL, 0}, |
474 | 478 |
{NULL, 0}, |
479 |
+ {(const unsigned char*)"And", 10835}, |
|
475 | 480 |
{NULL, 0}, |
481 |
+ {(const unsigned char*)"Cup", 8915}, |
|
476 | 482 |
{NULL, 0}, |
483 |
+ {(const unsigned char*)"nsimeq", 8772}, |
|
477 | 484 |
{NULL, 0}, |
485 |
+ {(const unsigned char*)"subnE", 10955}, |
|
478 | 486 |
{NULL, 0}, |
487 |
+ {(const unsigned char*)"SHCHcy", 1065}, |
|
479 | 488 |
{NULL, 0}, |
480 | 489 |
{NULL, 0}, |
481 | 490 |
{NULL, 0}, |
491 |
+ {(const unsigned char*)"LessLess", 10913}, |
|
482 | 492 |
{NULL, 0}, |
483 | 493 |
{NULL, 0}, |
484 |
- {(const unsigned char*)"lsaquo", 8249}, |
|
485 | 494 |
{NULL, 0}, |
486 |
- {(const unsigned char*)"para", 182}, |
|
495 |
+ {(const unsigned char*)"rightarrowtail", 8611}, |
|
496 |
+ {(const unsigned char*)"EEgr", 919}, |
|
497 |
+ {(const unsigned char*)"Sup", 8913}, |
|
487 | 498 |
{NULL, 0}, |
488 | 499 |
{NULL, 0}, |
489 | 500 |
{NULL, 0}, |
490 |
- {(const unsigned char*)"rsaquo", 8250}, |
|
491 | 501 |
{NULL, 0}, |
492 | 502 |
{NULL, 0}, |
493 | 503 |
{NULL, 0}, |
494 | 504 |
{NULL, 0}, |
505 |
+ {(const unsigned char*)"simeq", 8771}, |
|
506 |
+ {(const unsigned char*)"leftharpoonup", 8636}, |
|
495 | 507 |
{NULL, 0}, |
496 |
- {(const unsigned char*)"Omega", 937}, |
|
508 |
+ {(const unsigned char*)"boxhd", 9516}, |
|
497 | 509 |
{NULL, 0}, |
498 | 510 |
{NULL, 0}, |
499 |
- {(const unsigned char*)"oplus", 8853}, |
|
500 |
- {(const unsigned char*)"isin", 8712}, |
|
501 |
- {(const unsigned char*)"bdquo", 8222}, |
|
502 |
- {(const unsigned char*)"nabla", 8711}, |
|
511 |
+ {(const unsigned char*)"and", 8743}, |
|
512 |
+ {(const unsigned char*)"Cedilla", 184}, |
|
513 |
+ {(const unsigned char*)"cup", 8746}, |
|
503 | 514 |
{NULL, 0}, |
515 |
+ {(const unsigned char*)"ensp", 8194}, |
|
504 | 516 |
{NULL, 0}, |
505 |
- {(const unsigned char*)"cent", 162}, |
|
517 |
+ {NULL, 0}, |
|
518 |
+ {NULL, 0}, |
|
519 |
+ {(const unsigned char*)"gimel", 8503}, |
|
520 |
+ {NULL, 0}, |
|
521 |
+ {(const unsigned char*)"straightphi", 981}, |
|
522 |
+ {(const unsigned char*)"nbsp", 160}, |
|
523 |
+ {(const unsigned char*)"NotLessGreater", 8824}, |
|
524 |
+ {(const unsigned char*)"thetav", 977}, |
|
525 |
+ {NULL, 0}, |
|
526 |
+ {NULL, 0}, |
|
527 |
+ {NULL, 0}, |
|
528 |
+ {NULL, 0}, |
|
529 |
+ {(const unsigned char*)"sup", 8835}, |
|
530 |
+ {(const unsigned char*)"lsqb", 91}, |
|
531 |
+ {NULL, 0}, |
|
532 |
+ {(const unsigned char*)"check", 10003}, |
|
533 |
+ {(const unsigned char*)"Gt", 8811}, |
|
534 |
+ {(const unsigned char*)"boxv", 9474}, |
|
535 |
+ {(const unsigned char*)"rsqb", 93}, |
|
536 |
+ {(const unsigned char*)"Implies", 8658}, |
|
537 |
+ {(const unsigned char*)"shortparallel", 8741}, |
|
538 |
+ {(const unsigned char*)"Lt", 8810}, |
|
539 |
+ {NULL, 0}, |
|
540 |
+ {NULL, 0}, |
|
541 |
+ {(const unsigned char*)"Sub", 8912}, |
|
542 |
+ {NULL, 0}, |
|
543 |
+ {(const unsigned char*)"HARDcy", 1066}, |
|
544 |
+ {NULL, 0}, |
|
545 |
+ {NULL, 0}, |
|
546 |
+ {NULL, 0}, |
|
547 |
+ {NULL, 0}, |
|
548 |
+ {NULL, 0}, |
|
549 |
+ {NULL, 0}, |
|
550 |
+ {NULL, 0}, |
|
551 |
+ {NULL, 0}, |
|
552 |
+ {(const unsigned char*)"thorn", 254}, |
|
553 |
+ {NULL, 0}, |
|
554 |
+ {NULL, 0}, |
|
555 |
+ {NULL, 0}, |
|
556 |
+ {NULL, 0}, |
|
557 |
+ {(const unsigned char*)"boxvr", 9500}, |
|
558 |
+ {(const unsigned char*)"DD", 8517}, |
|
559 |
+ {NULL, 0}, |
|
560 |
+ {NULL, 0}, |
|
561 |
+ {NULL, 0}, |
|
562 |
+ {NULL, 0}, |
|
563 |
+ {(const unsigned char*)"nVdash", 8878}, |
|
564 |
+ {(const unsigned char*)"angrt", 8735}, |
|
565 |
+ {(const unsigned char*)"gt", 62}, |
|
566 |
+ {(const unsigned char*)"trianglerighteq", 8885}, |
|
567 |
+ {(const unsigned char*)"sub", 8834}, |
|
568 |
+ {(const unsigned char*)"it", 8290}, |
|
569 |
+ {NULL, 0}, |
|
570 |
+ {(const unsigned char*)"lt", 60}, |
|
571 |
+ {NULL, 0}, |
|
572 |
+ {NULL, 0}, |
|
573 |
+ {(const unsigned char*)"cudarrr", 10549}, |
|
574 |
+ {NULL, 0}, |
|
575 |
+ {NULL, 0}, |
|
576 |
+ {NULL, 0}, |
|
577 |
+ {NULL, 0}, |
|
578 |
+ {(const unsigned char*)"DZcy", 1039}, |
|
579 |
+ {NULL, 0}, |
|
580 |
+ {NULL, 0}, |
|
581 |
+ {NULL, 0}, |
|
582 |
+ {(const unsigned char*)"seswar", 10537}, |
|
583 |
+ {(const unsigned char*)"boxhU", 9576}, |
|
584 |
+ {NULL, 0}, |
|
585 |
+ {NULL, 0}, |
|
586 |
+ {NULL, 0}, |
|
587 |
+ {(const unsigned char*)"precnapprox", 10937}, |
|
588 |
+ {NULL, 0}, |
|
589 |
+ {(const unsigned char*)"fallingdotseq", 8786}, |
|
590 |
+ {NULL, 0}, |
|
591 |
+ {NULL, 0}, |
|
592 |
+ {NULL, 0}, |
|
593 |
+ {(const unsigned char*)"vartheta", 977}, |
|
594 |
+ {(const unsigned char*)"digamma", 989}, |
|
595 |
+ {NULL, 0}, |
|
596 |
+ {NULL, 0}, |
|
597 |
+ {NULL, 0}, |
|
598 |
+ {NULL, 0}, |
|
599 |
+ {(const unsigned char*)"Omicron", 927}, |
|
600 |
+ {(const unsigned char*)"oror", 10838}, |
|
601 |
+ {NULL, 0}, |
|
602 |
+ {(const unsigned char*)"DownLeftRightVector", 10576}, |
|
603 |
+ {(const unsigned char*)"NonBreakingSpace", 160}, |
|
604 |
+ {NULL, 0}, |
|
605 |
+ {NULL, 0}, |
|
606 |
+ {NULL, 0}, |
|
607 |
+ {(const unsigned char*)"NotVerticalBar", 8740}, |
|
608 |
+ {NULL, 0}, |
|
609 |
+ {(const unsigned char*)"boxvh", 9532}, |
|
610 |
+ {(const unsigned char*)"smile", 8995}, |
|
611 |
+ {NULL, 0}, |
|
612 |
+ {NULL, 0}, |
|
613 |
+ {NULL, 0}, |
|
614 |
+ {NULL, 0}, |
|
615 |
+ {(const unsigned char*)"Bumpeq", 8782}, |
|
616 |
+ {NULL, 0}, |
|
617 |
+ {NULL, 0}, |
|
618 |
+ {NULL, 0}, |
|
619 |
+ {NULL, 0}, |
|
620 |
+ {(const unsigned char*)"Proportion", 8759}, |
|
621 |
+ {(const unsigned char*)"eDot", 8785}, |
|
622 |
+ {NULL, 0}, |
|
623 |
+ {(const unsigned char*)"numsp", 8199}, |
|
624 |
+ {NULL, 0}, |
|
625 |
+ {(const unsigned char*)"ShortLeftArrow", 8592}, |
|
626 |
+ {NULL, 0}, |
|
627 |
+ {NULL, 0}, |
|
628 |
+ {NULL, 0}, |
|
629 |
+ {NULL, 0}, |
|
630 |
+ {NULL, 0}, |
|
631 |
+ {(const unsigned char*)"omicron", 959}, |
|
632 |
+ {(const unsigned char*)"realpart", 8476}, |
|
633 |
+ {NULL, 0}, |
|
634 |
+ {(const unsigned char*)"HumpEqual", 8783}, |
|
635 |
+ {(const unsigned char*)"RightDoubleBracket", 12315}, |
|
636 |
+ {NULL, 0}, |
|
637 |
+ {(const unsigned char*)"lhard", 8637}, |
|
638 |
+ {NULL, 0}, |
|
639 |
+ {(const unsigned char*)"Union", 8899}, |
|
640 |
+ {(const unsigned char*)"rhard", 8641}, |
|
641 |
+ {NULL, 0}, |
|
642 |
+ {NULL, 0}, |
|
643 |
+ {NULL, 0}, |
|
644 |
+ {(const unsigned char*)"topcir", 10993}, |
|
645 |
+ {NULL, 0}, |
|
646 |
+ {(const unsigned char*)"Copf", 8450}, |
|
647 |
+ {(const unsigned char*)"bumpeq", 8783}, |
|
648 |
+ {(const unsigned char*)"ntrianglelefteq", 8940}, |
|
506 | 649 |
{(const unsigned char*)"lsquo", 8216}, |
650 |
+ {(const unsigned char*)"drarr", 8600}, |
|
651 |
+ {(const unsigned char*)"erarr", 10609}, |
|
652 |
+ {(const unsigned char*)"crarr", 8629}, |
|
507 | 653 |
{NULL, 0}, |
654 |
+ {(const unsigned char*)"Hopf", 8461}, |
|
655 |
+ {(const unsigned char*)"rsquo", 8217}, |
|
508 | 656 |
{NULL, 0}, |
657 |
+ {(const unsigned char*)"Nopf", 8469}, |
|
658 |
+ {(const unsigned char*)"lrarr", 8646}, |
|
659 |
+ {(const unsigned char*)"Uarrocir", 10569}, |
|
660 |
+ {(const unsigned char*)"nrarr", 8603}, |
|
661 |
+ {(const unsigned char*)"backcong", 8780}, |
|
662 |
+ {(const unsigned char*)"orarr", 8635}, |
|
663 |
+ {(const unsigned char*)"RBarr", 10512}, |
|
664 |
+ {(const unsigned char*)"rrarr", 8649}, |
|
665 |
+ {(const unsigned char*)"srarr", 8594}, |
|
666 |
+ {(const unsigned char*)"Qopf", 8474}, |
|
667 |
+ {(const unsigned char*)"Ropf", 8477}, |
|
668 |
+ {(const unsigned char*)"trianglelefteq", 8884}, |
|
669 |
+ {(const unsigned char*)"Popf", 8473}, |
|
670 |
+ {(const unsigned char*)"xrarr", 10230}, |
|
509 | 671 |
{NULL, 0}, |
510 |
- {(const unsigned char*)"ldquo", 8220}, |
|
511 |
- {(const unsigned char*)"laquo", 171}, |
|
672 |
+ {(const unsigned char*)"Zopf", 8484}, |
|
673 |
+ {NULL, 0}, |
|
674 |
+ {NULL, 0}, |
|
675 |
+ {NULL, 0}, |
|
676 |
+ {NULL, 0}, |
|
677 |
+ {NULL, 0}, |
|
678 |
+ {NULL, 0}, |
|
679 |
+ {(const unsigned char*)"CupCap", 8781}, |
|
680 |
+ {NULL, 0}, |
|
681 |
+ {NULL, 0}, |
|
682 |
+ {NULL, 0}, |
|
683 |
+ {NULL, 0}, |
|
684 |
+ {(const unsigned char*)"comma", 44}, |
|
685 |
+ {(const unsigned char*)"Acy", 1040}, |
|
686 |
+ {(const unsigned char*)"Bcy", 1041}, |
|
687 |
+ {(const unsigned char*)"lBarr", 10510}, |
|
688 |
+ {(const unsigned char*)"HilbertSpace", 8459}, |
|
689 |
+ {(const unsigned char*)"Ecy", 1069}, |
|
690 |
+ {(const unsigned char*)"Fcy", 1060}, |
|
691 |
+ {(const unsigned char*)"Gcy", 1043}, |
|
692 |
+ {(const unsigned char*)"rBarr", 10511}, |
|
693 |
+ {(const unsigned char*)"Icy", 1048}, |
|
694 |
+ {(const unsigned char*)"Jcy", 1049}, |
|
695 |
+ {(const unsigned char*)"Kcy", 1050}, |
|
696 |
+ {(const unsigned char*)"Lcy", 1051}, |
|
697 |
+ {(const unsigned char*)"aelig", 230}, |
|
698 |
+ {(const unsigned char*)"Mcy", 1052}, |
|
699 |
+ {(const unsigned char*)"Ocy", 1054}, |
|
700 |
+ {(const unsigned char*)"Pcy", 1055}, |
|
701 |
+ {(const unsigned char*)"Ncy", 1053}, |
|
702 |
+ {(const unsigned char*)"Rcy", 1056}, |
|
703 |
+ {(const unsigned char*)"Scy", 1057}, |
|
704 |
+ {(const unsigned char*)"ShortUpArrow", 8593}, |
|
705 |
+ {(const unsigned char*)"Ucy", 1059}, |
|
706 |
+ {(const unsigned char*)"Vcy", 1042}, |
|
707 |
+ {(const unsigned char*)"Tcy", 1058}, |
|
708 |
+ {(const unsigned char*)"DiacriticalDoubleAcute", 733}, |
|
512 | 709 |
{(const unsigned char*)"Alpha", 913}, |
710 |
+ {(const unsigned char*)"Ycy", 1067}, |
|
711 |
+ {(const unsigned char*)"Zcy", 1047}, |
|
712 |
+ {(const unsigned char*)"nmid", 8740}, |
|
713 |
+ {(const unsigned char*)"NotSubsetEqual", 8840}, |
|
714 |
+ {(const unsigned char*)"ntrianglerighteq", 8941}, |
|
715 |
+ {(const unsigned char*)"straightepsilon", 1013}, |
|
716 |
+ {(const unsigned char*)"ddotseq", 10871}, |
|
717 |
+ {(const unsigned char*)"acy", 1072}, |
|
718 |
+ {(const unsigned char*)"bcy", 1073}, |
|
719 |
+ {NULL, 0}, |
|
720 |
+ {(const unsigned char*)"dcy", 1076}, |
|
721 |
+ {(const unsigned char*)"ecy", 1101}, |
|
722 |
+ {(const unsigned char*)"gnapprox", 10890}, |
|
723 |
+ {(const unsigned char*)"fcy", 1092}, |
|
724 |
+ {(const unsigned char*)"Dcy", 1044}, |
|
725 |
+ {(const unsigned char*)"icy", 1080}, |
|
726 |
+ {(const unsigned char*)"gcy", 1075}, |
|
727 |
+ {(const unsigned char*)"lnapprox", 10889}, |
|
728 |
+ {(const unsigned char*)"TildeFullEqual", 8773}, |
|
729 |
+ {(const unsigned char*)"jcy", 1081}, |
|
730 |
+ {(const unsigned char*)"kcy", 1082}, |
|
731 |
+ {(const unsigned char*)"lcy", 1083}, |
|
732 |
+ {(const unsigned char*)"ReverseUpEquilibrium", 10607}, |
|
733 |
+ {(const unsigned char*)"ncy", 1085}, |
|
734 |
+ {(const unsigned char*)"ocy", 1086}, |
|
735 |
+ {(const unsigned char*)"ocir", 8858}, |
|
736 |
+ {(const unsigned char*)"scy", 1089}, |
|
737 |
+ {(const unsigned char*)"rcy", 1088}, |
|
738 |
+ {(const unsigned char*)"pcy", 1087}, |
|
739 |
+ {(const unsigned char*)"mcy", 1084}, |
|
740 |
+ {(const unsigned char*)"ucy", 1091}, |
|
741 |
+ {(const unsigned char*)"alpha", 945}, |
|
742 |
+ {(const unsigned char*)"DoubleContourIntegral", 8751}, |
|
743 |
+ {(const unsigned char*)"zcy", 1079}, |
|
744 |
+ {(const unsigned char*)"nshortmid", 8740}, |
|
745 |
+ {(const unsigned char*)"ohm", 8486}, |
|
746 |
+ {(const unsigned char*)"tcy", 1090}, |
|
747 |
+ {(const unsigned char*)"ycy", 1099}, |
|
748 |
+ {(const unsigned char*)"vcy", 1074}, |
|
749 |
+ {(const unsigned char*)"sqsub", 8847}, |
|
750 |
+ {(const unsigned char*)"Udigr", 939}, |
|
751 |
+ {(const unsigned char*)"DownLeftTeeVector", 10590}, |
|
752 |
+ {(const unsigned char*)"udigr", 971}, |
|
753 |
+ {(const unsigned char*)"ecir", 8790}, |
|
754 |
+ {(const unsigned char*)"cularrp", 10557}, |
|
755 |
+ {(const unsigned char*)"idigr", 970}, |
|
756 |
+ {(const unsigned char*)"smid", 8739}, |
|
757 |
+ {(const unsigned char*)"Idigr", 938}, |
|
758 |
+ {NULL, 0}, |
|
759 |
+ {NULL, 0}, |
|
760 |
+ {(const unsigned char*)"DoubleLongLeftArrow", 10232}, |
|
761 |
+ {NULL, 0}, |
|
762 |
+ {(const unsigned char*)"SquareSupersetEqual", 8850}, |
|
763 |
+ {NULL, 0}, |
|
764 |
+ {NULL, 0}, |
|
765 |
+ {(const unsigned char*)"FilledSmallSquare", 9724}, |
|
766 |
+ {(const unsigned char*)"oelig", 339}, |
|
767 |
+ {(const unsigned char*)"NotGreaterLess", 8825}, |
|
768 |
+ {(const unsigned char*)"b.Gammad", 988}, |
|
513 | 769 |
{NULL, 0}, |
514 |
- {(const unsigned char*)"rsquo", 8217}, |
|
770 |
+ {(const unsigned char*)"rarrap", 10613}, |
|
515 | 771 |
{NULL, 0}, |
516 |
- {(const unsigned char*)"rdquo", 8221}, |
|
517 |
- {(const unsigned char*)"raquo", 187}, |
|
772 |
+ {(const unsigned char*)"cylcty", 9005}, |
|
773 |
+ {(const unsigned char*)"ContourIntegral", 8750}, |
|
774 |
+ {(const unsigned char*)"Intersection", 8898}, |
|
775 |
+ {(const unsigned char*)"acd", 8767}, |
|
518 | 776 |
{NULL, 0}, |
519 | 777 |
{NULL, 0}, |
520 | 778 |
{NULL, 0}, |
... | ... |
@@ -522,238 +2307,450 @@ static struct element entities_htable_elements[] = { |
522 | 522 |
{NULL, 0}, |
523 | 523 |
{NULL, 0}, |
524 | 524 |
{NULL, 0}, |
525 |
+ {(const unsigned char*)"fltns", 9649}, |
|
526 |
+ {(const unsigned char*)"Lleftarrow", 8666}, |
|
525 | 527 |
{NULL, 0}, |
526 |
- {(const unsigned char*)"ang", 8736}, |
|
527 | 528 |
{NULL, 0}, |
528 |
- {(const unsigned char*)"Iota", 921}, |
|
529 |
- {(const unsigned char*)"omega", 969}, |
|
529 |
+ {(const unsigned char*)"NotSupersetEqual", 8841}, |
|
530 | 530 |
{NULL, 0}, |
531 |
+ {(const unsigned char*)"nvinfin", 10718}, |
|
532 |
+ {(const unsigned char*)"Acirc", 194}, |
|
531 | 533 |
{NULL, 0}, |
532 |
- {(const unsigned char*)"deg", 176}, |
|
533 | 534 |
{NULL, 0}, |
535 |
+ {(const unsigned char*)"circlearrowleft", 8634}, |
|
536 |
+ {(const unsigned char*)"Ecirc", 202}, |
|
537 |
+ {(const unsigned char*)"Mu", 924}, |
|
538 |
+ {(const unsigned char*)"Nu", 925}, |
|
539 |
+ {(const unsigned char*)"complexes", 8450}, |
|
540 |
+ {(const unsigned char*)"Icirc", 206}, |
|
534 | 541 |
{NULL, 0}, |
542 |
+ {(const unsigned char*)"NotLeftTriangle", 8938}, |
|
543 |
+ {(const unsigned char*)"dotsquare", 8865}, |
|
535 | 544 |
{NULL, 0}, |
536 | 545 |
{NULL, 0}, |
546 |
+ {(const unsigned char*)"Ocirc", 212}, |
|
547 |
+ {(const unsigned char*)"swnwar", 10538}, |
|
548 |
+ {(const unsigned char*)"nsucc", 8833}, |
|
537 | 549 |
{NULL, 0}, |
538 |
- {(const unsigned char*)"Epsilon", 917}, |
|
550 |
+ {(const unsigned char*)"Pi", 928}, |
|
539 | 551 |
{NULL, 0}, |
552 |
+ {(const unsigned char*)"Ucirc", 219}, |
|
553 |
+ {(const unsigned char*)"squ", 9633}, |
|
554 |
+ {(const unsigned char*)"boxur", 9492}, |
|
555 |
+ {(const unsigned char*)"Xi", 926}, |
|
556 |
+ {(const unsigned char*)"there4", 8756}, |
|
557 |
+ {(const unsigned char*)"LeftRightVector", 10574}, |
|
540 | 558 |
{NULL, 0}, |
541 |
- {(const unsigned char*)"dArr", 8659}, |
|
542 | 559 |
{NULL, 0}, |
560 |
+ {(const unsigned char*)"nleftarrow", 8602}, |
|
561 |
+ {(const unsigned char*)"NotSquareSubsetEqual", 8930}, |
|
543 | 562 |
{NULL, 0}, |
544 |
- {(const unsigned char*)"alpha", 945}, |
|
545 |
- {(const unsigned char*)"hArr", 8660}, |
|
563 |
+ {NULL, 0}, |
|
564 |
+ {(const unsigned char*)"acirc", 226}, |
|
565 |
+ {(const unsigned char*)"leftrightharpoons", 8651}, |
|
566 |
+ {(const unsigned char*)"Omega", 937}, |
|
567 |
+ {(const unsigned char*)"Aacgr", 902}, |
|
568 |
+ {(const unsigned char*)"boxHD", 9574}, |
|
569 |
+ {(const unsigned char*)"ecirc", 234}, |
|
570 |
+ {(const unsigned char*)"nu", 957}, |
|
571 |
+ {(const unsigned char*)"nhArr", 8654}, |
|
572 |
+ {(const unsigned char*)"Mellintrf", 8499}, |
|
573 |
+ {(const unsigned char*)"icirc", 238}, |
|
574 |
+ {(const unsigned char*)"succ", 8827}, |
|
575 |
+ {(const unsigned char*)"mu", 956}, |
|
576 |
+ {NULL, 0}, |
|
577 |
+ {(const unsigned char*)"ni", 8715}, |
|
578 |
+ {(const unsigned char*)"ocirc", 244}, |
|
579 |
+ {(const unsigned char*)"pi", 960}, |
|
580 |
+ {(const unsigned char*)"DiacriticalAcute", 180}, |
|
581 |
+ {(const unsigned char*)"xhArr", 10234}, |
|
582 |
+ {(const unsigned char*)"curlyvee", 8910}, |
|
583 |
+ {(const unsigned char*)"deg", 176}, |
|
584 |
+ {(const unsigned char*)"ucirc", 251}, |
|
585 |
+ {(const unsigned char*)"yen", 165}, |
|
586 |
+ {NULL, 0}, |
|
587 |
+ {(const unsigned char*)"xi", 958}, |
|
588 |
+ {(const unsigned char*)"xcirc", 9711}, |
|
589 |
+ {(const unsigned char*)"IOcy", 1025}, |
|
590 |
+ {(const unsigned char*)"els", 10901}, |
|
591 |
+ {(const unsigned char*)"gE", 8807}, |
|
592 |
+ {(const unsigned char*)"leg", 8922}, |
|
593 |
+ {(const unsigned char*)"Iacgr", 906}, |
|
594 |
+ {(const unsigned char*)"LeftTeeArrow", 8612}, |
|
595 |
+ {(const unsigned char*)"dscy", 1109}, |
|
596 |
+ {(const unsigned char*)"SucceedsSlantEqual", 8829}, |
|
597 |
+ {(const unsigned char*)"fpartint", 10765}, |
|
598 |
+ {(const unsigned char*)"omega", 969}, |
|
599 |
+ {(const unsigned char*)"frac34", 190}, |
|
546 | 600 |
{(const unsigned char*)"reg", 174}, |
547 |
- {(const unsigned char*)"clubs", 9827}, |
|
548 |
- {(const unsigned char*)"alefsym", 8501}, |
|
549 |
- {(const unsigned char*)"lArr", 8656}, |
|
601 |
+ {(const unsigned char*)"ShortDownArrow", 8595}, |
|
602 |
+ {(const unsigned char*)"quot", 34}, |
|
603 |
+ {(const unsigned char*)"ell", 8467}, |
|
604 |
+ {(const unsigned char*)"circlearrowright", 8635}, |
|
605 |
+ {(const unsigned char*)"inodot", 305}, |
|
606 |
+ {(const unsigned char*)"xdtri", 9661}, |
|
607 |
+ {(const unsigned char*)"iacgr", 943}, |
|
608 |
+ {(const unsigned char*)"imagpart", 8465}, |
|
609 |
+ {(const unsigned char*)"ldrdhar", 10599}, |
|
610 |
+ {(const unsigned char*)"tscy", 1094}, |
|
611 |
+ {(const unsigned char*)"jnodot", 106}, |
|
612 |
+ {(const unsigned char*)"colone", 8788}, |
|
613 |
+ {(const unsigned char*)"Eacgr", 904}, |
|
614 |
+ {(const unsigned char*)"blk34", 9619}, |
|
615 |
+ {(const unsigned char*)"eacgr", 941}, |
|
616 |
+ {(const unsigned char*)"LongLeftArrow", 10229}, |
|
617 |
+ {(const unsigned char*)"lE", 8806}, |
|
618 |
+ {(const unsigned char*)"nsmid", 8740}, |
|
619 |
+ {(const unsigned char*)"uacgr", 973}, |
|
620 |
+ {(const unsigned char*)"boxVR", 9568}, |
|
550 | 621 |
{NULL, 0}, |
551 |
- {(const unsigned char*)"shy", 173}, |
|
552 | 622 |
{NULL, 0}, |
623 |
+ {(const unsigned char*)"Oacgr", 908}, |
|
624 |
+ {(const unsigned char*)"aacgr", 940}, |
|
625 |
+ {(const unsigned char*)"oacgr", 972}, |
|
626 |
+ {(const unsigned char*)"luruhar", 10598}, |
|
627 |
+ {(const unsigned char*)"ii", 8520}, |
|
553 | 628 |
{NULL, 0}, |
554 |
- {(const unsigned char*)"Upsilon", 933}, |
|
555 |
- {(const unsigned char*)"rArr", 8658}, |
|
556 |
- {(const unsigned char*)"lfloor", 8970}, |
|
557 |
- {(const unsigned char*)"Scaron", 352}, |
|
558 |
- {(const unsigned char*)"uArr", 8657}, |
|
559 |
- {(const unsigned char*)"emsp", 8195}, |
|
560 |
- {(const unsigned char*)"iota", 953}, |
|
629 |
+ {(const unsigned char*)"telrec", 8981}, |
|
561 | 630 |
{NULL, 0}, |
562 |
- {(const unsigned char*)"rfloor", 8971}, |
|
631 |
+ {(const unsigned char*)"DDotrahd", 10513}, |
|
632 |
+ {(const unsigned char*)"nle", 8816}, |
|
633 |
+ {(const unsigned char*)"gtrless", 8823}, |
|
563 | 634 |
{NULL, 0}, |
564 |
- {(const unsigned char*)"times", 215}, |
|
635 |
+ {(const unsigned char*)"midcir", 10992}, |
|
636 |
+ {(const unsigned char*)"DownArrowBar", 10515}, |
|
565 | 637 |
{NULL, 0}, |
638 |
+ {(const unsigned char*)"semi", 59}, |
|
639 |
+ {(const unsigned char*)"Uacgr", 910}, |
|
640 |
+ {(const unsigned char*)"lbrace", 123}, |
|
641 |
+ {(const unsigned char*)"phmmat", 8499}, |
|
566 | 642 |
{NULL, 0}, |
567 | 643 |
{NULL, 0}, |
568 | 644 |
{NULL, 0}, |
569 | 645 |
{NULL, 0}, |
570 |
- {(const unsigned char*)"epsilon", 949}, |
|
646 |
+ {(const unsigned char*)"rbrace", 125}, |
|
647 |
+ {(const unsigned char*)"NotCongruent", 8802}, |
|
571 | 648 |
{NULL, 0}, |
649 |
+ {(const unsigned char*)"shchcy", 1097}, |
|
572 | 650 |
{NULL, 0}, |
573 | 651 |
{NULL, 0}, |
574 | 652 |
{NULL, 0}, |
575 | 653 |
{NULL, 0}, |
576 |
- {(const unsigned char*)"empty", 8709}, |
|
577 | 654 |
{NULL, 0}, |
578 | 655 |
{NULL, 0}, |
579 | 656 |
{NULL, 0}, |
580 | 657 |
{NULL, 0}, |
581 | 658 |
{NULL, 0}, |
659 |
+ {(const unsigned char*)"simdot", 10858}, |
|
582 | 660 |
{NULL, 0}, |
583 |
- {(const unsigned char*)"thorn", 254}, |
|
584 | 661 |
{NULL, 0}, |
585 |
- {(const unsigned char*)"minus", 8722}, |
|
586 |
- {(const unsigned char*)"upsilon", 965}, |
|
587 | 662 |
{NULL, 0}, |
588 |
- {(const unsigned char*)"scaron", 353}, |
|
663 |
+ {(const unsigned char*)"cirmid", 10991}, |
|
589 | 664 |
{NULL, 0}, |
665 |
+ {(const unsigned char*)"SubsetEqual", 8838}, |
|
666 |
+ {(const unsigned char*)"female", 9792}, |
|
590 | 667 |
{NULL, 0}, |
591 | 668 |
{NULL, 0}, |
669 |
+ {(const unsigned char*)"nsc", 8833}, |
|
592 | 670 |
{NULL, 0}, |
593 |
- {(const unsigned char*)"Psi", 936}, |
|
594 | 671 |
{NULL, 0}, |
672 |
+ {(const unsigned char*)"boxVH", 9580}, |
|
595 | 673 |
{NULL, 0}, |
596 | 674 |
{NULL, 0}, |
675 |
+ {(const unsigned char*)"ldrushar", 10571}, |
|
676 |
+ {(const unsigned char*)"triangleright", 9657}, |
|
677 |
+ {(const unsigned char*)"gneqq", 8809}, |
|
597 | 678 |
{NULL, 0}, |
679 |
+ {(const unsigned char*)"DownArrow", 8595}, |
|
598 | 680 |
{NULL, 0}, |
599 |
- {(const unsigned char*)"permil", 8240}, |
|
681 |
+ {(const unsigned char*)"backsim", 8765}, |
|
682 |
+ {(const unsigned char*)"lneqq", 8808}, |
|
600 | 683 |
{NULL, 0}, |
601 | 684 |
{NULL, 0}, |
602 | 685 |
{NULL, 0}, |
603 | 686 |
{NULL, 0}, |
604 |
- {(const unsigned char*)"gt", 62}, |
|
687 |
+ {(const unsigned char*)"Sum", 8721}, |
|
605 | 688 |
{NULL, 0}, |
606 | 689 |
{NULL, 0}, |
607 |
- {(const unsigned char*)"trade", 8482}, |
|
608 | 690 |
{NULL, 0}, |
609 |
- {(const unsigned char*)"ge", 8805}, |
|
610 | 691 |
{NULL, 0}, |
611 | 692 |
{NULL, 0}, |
612 | 693 |
{NULL, 0}, |
613 | 694 |
{NULL, 0}, |
614 |
- {(const unsigned char*)"le", 8804}, |
|
615 | 695 |
{NULL, 0}, |
616 |
- {(const unsigned char*)"ne", 8800}, |
|
617 | 696 |
{NULL, 0}, |
618 | 697 |
{NULL, 0}, |
619 |
- {(const unsigned char*)"exist", 8707}, |
|
620 |
- {(const unsigned char*)"ordf", 170}, |
|
621 | 698 |
{NULL, 0}, |
622 |
- {(const unsigned char*)"hellip", 8230}, |
|
623 |
- {(const unsigned char*)"iexcl", 161}, |
|
624 |
- {(const unsigned char*)"Aring", 197}, |
|
625 |
- {(const unsigned char*)"psi", 968}, |
|
626 | 699 |
{NULL, 0}, |
627 |
- {(const unsigned char*)"frac12", 189}, |
|
700 |
+ {(const unsigned char*)"fflig", 64256}, |
|
628 | 701 |
{NULL, 0}, |
702 |
+ {(const unsigned char*)"hardcy", 1098}, |
|
703 |
+ {(const unsigned char*)"nsub", 8836}, |
|
629 | 704 |
{NULL, 0}, |
705 |
+ {(const unsigned char*)"napprox", 8777}, |
|
706 |
+ {(const unsigned char*)"caret", 8257}, |
|
630 | 707 |
{NULL, 0}, |
708 |
+ {(const unsigned char*)"succneqq", 10934}, |
|
709 |
+ {(const unsigned char*)"frac13", 8531}, |
|
631 | 710 |
{NULL, 0}, |
632 | 711 |
{NULL, 0}, |
633 |
- {(const unsigned char*)"oline", 8254}, |
|
634 | 712 |
{NULL, 0}, |
635 | 713 |
{NULL, 0}, |
636 |
- {(const unsigned char*)"apos ", 39}, |
|
714 |
+ {(const unsigned char*)"num", 35}, |
|
715 |
+ {(const unsigned char*)"emsp14", 8197}, |
|
637 | 716 |
{NULL, 0}, |
638 | 717 |
{NULL, 0}, |
639 |
- {(const unsigned char*)"upsih", 978}, |
|
640 |
- {(const unsigned char*)"frasl", 8260}, |
|
641 | 718 |
{NULL, 0}, |
642 |
- {(const unsigned char*)"Ccedil", 199}, |
|
719 |
+ {(const unsigned char*)"sum", 8721}, |
|
643 | 720 |
{NULL, 0}, |
721 |
+ {(const unsigned char*)"Cconint", 8752}, |
|
644 | 722 |
{NULL, 0}, |
723 |
+ {(const unsigned char*)"blacktriangleright", 9656}, |
|
645 | 724 |
{NULL, 0}, |
725 |
+ {(const unsigned char*)"SupersetEqual", 8839}, |
|
726 |
+ {(const unsigned char*)"sim", 8764}, |
|
646 | 727 |
{NULL, 0}, |
647 | 728 |
{NULL, 0}, |
729 |
+ {(const unsigned char*)"LeftFloor", 8970}, |
|
648 | 730 |
{NULL, 0}, |
731 |
+ {(const unsigned char*)"RightTriangleEqual", 8885}, |
|
649 | 732 |
{NULL, 0}, |
733 |
+ {(const unsigned char*)"boxDr", 9555}, |
|
650 | 734 |
{NULL, 0}, |
735 |
+ {(const unsigned char*)"plus", 43}, |
|
651 | 736 |
{NULL, 0}, |
652 | 737 |
{NULL, 0}, |
738 |
+ {(const unsigned char*)"phiv", 966}, |
|
653 | 739 |
{NULL, 0}, |
740 |
+ {(const unsigned char*)"npr", 8832}, |
|
741 |
+ {(const unsigned char*)"RightCeiling", 8969}, |
|
742 |
+ {(const unsigned char*)"phone", 9742}, |
|
654 | 743 |
{NULL, 0}, |
655 |
- {(const unsigned char*)"perp", 8869}, |
|
656 |
- {(const unsigned char*)"aring", 229}, |
|
657 |
- {(const unsigned char*)"Prime", 8243}, |
|
658 | 744 |
{NULL, 0}, |
745 |
+ {(const unsigned char*)"mnplus", 8723}, |
|
659 | 746 |
{NULL, 0}, |
747 |
+ {(const unsigned char*)"vDash", 8872}, |
|
660 | 748 |
{NULL, 0}, |
661 |
- {(const unsigned char*)"notin", 8713}, |
|
662 | 749 |
{NULL, 0}, |
663 | 750 |
{NULL, 0}, |
751 |
+ {(const unsigned char*)"isindot", 8949}, |
|
664 | 752 |
{NULL, 0}, |
665 | 753 |
{NULL, 0}, |
754 |
+ {(const unsigned char*)"PSgr", 936}, |
|
666 | 755 |
{NULL, 0}, |
667 |
- {(const unsigned char*)"AElig", 198}, |
|
668 | 756 |
{NULL, 0}, |
757 |
+ {(const unsigned char*)"ntriangleleft", 8938}, |
|
758 |
+ {(const unsigned char*)"image", 8465}, |
|
759 |
+ {NULL, 0}, |
|
760 |
+ {NULL, 0}, |
|
761 |
+ {NULL, 0}, |
|
762 |
+ {NULL, 0}, |
|
763 |
+ {NULL, 0}, |
|
764 |
+ {NULL, 0}, |
|
765 |
+ {NULL, 0}, |
|
766 |
+ {NULL, 0}, |
|
767 |
+ {(const unsigned char*)"boxh", 9472}, |
|
768 |
+ {NULL, 0}, |
|
769 |
+ {NULL, 0}, |
|
770 |
+ {NULL, 0}, |
|
771 |
+ {NULL, 0}, |
|
772 |
+ {NULL, 0}, |
|
773 |
+ {NULL, 0}, |
|
774 |
+ {(const unsigned char*)"RightDownVector", 8642}, |
|
775 |
+ {(const unsigned char*)"scpolint", 10771}, |
|
776 |
+ {(const unsigned char*)"boxdL", 9557}, |
|
777 |
+ {NULL, 0}, |
|
778 |
+ {NULL, 0}, |
|
779 |
+ {NULL, 0}, |
|
780 |
+ {NULL, 0}, |
|
781 |
+ {(const unsigned char*)"RightUpTeeVector", 10588}, |
|
782 |
+ {NULL, 0}, |
|
783 |
+ {(const unsigned char*)"TSHcy", 1035}, |
|
784 |
+ {(const unsigned char*)"longmapsto", 10236}, |
|
785 |
+ {(const unsigned char*)"doublebarwedge", 8966}, |
|
786 |
+ {(const unsigned char*)"frasl", 8260}, |
|
669 | 787 |
{NULL, 0}, |
788 |
+ {(const unsigned char*)"DoubleLongRightArrow", 10233}, |
|
789 |
+ {(const unsigned char*)"gnE", 8809}, |
|
670 | 790 |
{NULL, 0}, |
791 |
+ {(const unsigned char*)"lnE", 8808}, |
|
792 |
+ {NULL, 0}, |
|
793 |
+ {NULL, 0}, |
|
794 |
+ {NULL, 0}, |
|
795 |
+ {(const unsigned char*)"exponentiale", 8519}, |
|
796 |
+ {NULL, 0}, |
|
797 |
+ {(const unsigned char*)"larrfs", 10525}, |
|
798 |
+ {(const unsigned char*)"NotDoubleVerticalBar", 8742}, |
|
799 |
+ {NULL, 0}, |
|
800 |
+ {(const unsigned char*)"curlywedge", 8911}, |
|
801 |
+ {NULL, 0}, |
|
802 |
+ {NULL, 0}, |
|
803 |
+ {(const unsigned char*)"rarrfs", 10526}, |
|
804 |
+ {(const unsigned char*)"quatint", 10774}, |
|
805 |
+ {NULL, 0}, |
|
806 |
+ {(const unsigned char*)"frac58", 8541}, |
|
807 |
+ {NULL, 0}, |
|
808 |
+ {NULL, 0}, |
|
809 |
+ {NULL, 0}, |
|
810 |
+ {(const unsigned char*)"gtreqless", 8923}, |
|
811 |
+ {NULL, 0}, |
|
812 |
+ {NULL, 0}, |
|
813 |
+ {(const unsigned char*)"PrecedesSlantEqual", 8828}, |
|
814 |
+ {NULL, 0}, |
|
815 |
+ {(const unsigned char*)"DotEqual", 8784}, |
|
671 | 816 |
{(const unsigned char*)"iquest", 191}, |
672 |
- {(const unsigned char*)"ccedil", 231}, |
|
673 | 817 |
{NULL, 0}, |
674 | 818 |
{NULL, 0}, |
675 | 819 |
{NULL, 0}, |
676 | 820 |
{NULL, 0}, |
677 | 821 |
{NULL, 0}, |
678 |
- {(const unsigned char*)"divide", 247}, |
|
679 | 822 |
{NULL, 0}, |
680 | 823 |
{NULL, 0}, |
681 |
- {(const unsigned char*)"OElig", 338}, |
|
682 | 824 |
{NULL, 0}, |
683 |
- {(const unsigned char*)"image", 8465}, |
|
825 |
+ {(const unsigned char*)"NotEqual", 8800}, |
|
684 | 826 |
{NULL, 0}, |
827 |
+ {(const unsigned char*)"barwedge", 8965}, |
|
828 |
+ {(const unsigned char*)"b.gammad", 989}, |
|
685 | 829 |
{NULL, 0}, |
830 |
+ {(const unsigned char*)"block", 9608}, |
|
686 | 831 |
{NULL, 0}, |
832 |
+ {(const unsigned char*)"strns", 175}, |
|
687 | 833 |
{NULL, 0}, |
834 |
+ {(const unsigned char*)"prod", 8719}, |
|
835 |
+ {(const unsigned char*)"cupre", 8828}, |
|
688 | 836 |
{NULL, 0}, |
689 |
- {(const unsigned char*)"prime", 8242}, |
|
690 | 837 |
{NULL, 0}, |
691 |
- {(const unsigned char*)"Oslash", 216}, |
|
692 | 838 |
{NULL, 0}, |
839 |
+ {(const unsigned char*)"SquareUnion", 8852}, |
|
840 |
+ {(const unsigned char*)"Auml", 196}, |
|
693 | 841 |
{NULL, 0}, |
694 |
- {(const unsigned char*)"weierp", 8472}, |
|
842 |
+ {(const unsigned char*)"upuparrows", 8648}, |
|
695 | 843 |
{NULL, 0}, |
844 |
+ {(const unsigned char*)"Euml", 203}, |
|
845 |
+ {(const unsigned char*)"HorizontalLine", 9472}, |
|
696 | 846 |
{NULL, 0}, |
697 | 847 |
{NULL, 0}, |
848 |
+ {(const unsigned char*)"Iuml", 207}, |
|
849 |
+ {(const unsigned char*)"nvrArr", 10499}, |
|
850 |
+ {(const unsigned char*)"bullet", 8226}, |
|
851 |
+ {(const unsigned char*)"ClockwiseContourIntegral", 8754}, |
|
698 | 852 |
{NULL, 0}, |
699 |
- {(const unsigned char*)"fnof", 402}, |
|
700 |
- {(const unsigned char*)"cedil", 184}, |
|
853 |
+ {(const unsigned char*)"prop", 8733}, |
|
854 |
+ {(const unsigned char*)"Ouml", 214}, |
|
701 | 855 |
{NULL, 0}, |
702 |
- {(const unsigned char*)"eth", 240}, |
|
856 |
+ {(const unsigned char*)"chcy", 1095}, |
|
857 |
+ {(const unsigned char*)"quaternions", 8461}, |
|
858 |
+ {(const unsigned char*)"beth", 8502}, |
|
859 |
+ {(const unsigned char*)"macr", 175}, |
|
860 |
+ {(const unsigned char*)"Uuml", 220}, |
|
703 | 861 |
{NULL, 0}, |
704 | 862 |
{NULL, 0}, |
705 | 863 |
{NULL, 0}, |
864 |
+ {(const unsigned char*)"khcy", 1093}, |
|
865 |
+ {(const unsigned char*)"Star", 8902}, |
|
866 |
+ {(const unsigned char*)"copysr", 8471}, |
|
867 |
+ {(const unsigned char*)"Yuml", 376}, |
|
706 | 868 |
{NULL, 0}, |
869 |
+ {(const unsigned char*)"curren", 164}, |
|
707 | 870 |
{NULL, 0}, |
871 |
+ {(const unsigned char*)"Square", 9633}, |
|
872 |
+ {(const unsigned char*)"shcy", 1096}, |
|
873 |
+ {(const unsigned char*)"auml", 228}, |
|
708 | 874 |
{NULL, 0}, |
875 |
+ {(const unsigned char*)"boxUR", 9562}, |
|
876 |
+ {(const unsigned char*)"uml", 168}, |
|
877 |
+ {(const unsigned char*)"euml", 235}, |
|
709 | 878 |
{NULL, 0}, |
879 |
+ {(const unsigned char*)"zhcy", 1078}, |
|
880 |
+ {(const unsigned char*)"iuml", 239}, |
|
710 | 881 |
{NULL, 0}, |
711 |
- {(const unsigned char*)"not", 172}, |
|
712 |
- {(const unsigned char*)"sub", 8834}, |
|
882 |
+ {(const unsigned char*)"Backslash", 8726}, |
|
883 |
+ {(const unsigned char*)"square", 9633}, |
|
713 | 884 |
{NULL, 0}, |
885 |
+ {(const unsigned char*)"sqsube", 8849}, |
|
886 |
+ {(const unsigned char*)"ouml", 246}, |
|
714 | 887 |
{NULL, 0}, |
888 |
+ {(const unsigned char*)"Tilde", 8764}, |
|
715 | 889 |
{NULL, 0}, |
716 | 890 |
{NULL, 0}, |
891 |
+ {(const unsigned char*)"prap", 10935}, |
|
892 |
+ {(const unsigned char*)"uuml", 252}, |
|
893 |
+ {(const unsigned char*)"cire", 8791}, |
|
717 | 894 |
{NULL, 0}, |
718 |
- {(const unsigned char*)"equiv", 8801}, |
|
895 |
+ {(const unsigned char*)"dzigrarr", 10239}, |
|
896 |
+ {(const unsigned char*)"yuml", 255}, |
|
897 |
+ {(const unsigned char*)"star", 9734}, |
|
898 |
+ {(const unsigned char*)"sqsubseteq", 8849}, |
|
719 | 899 |
{NULL, 0}, |
720 | 900 |
{NULL, 0}, |
721 | 901 |
{NULL, 0}, |
902 |
+ {(const unsigned char*)"fork", 8916}, |
|
903 |
+ {(const unsigned char*)"supsetneqq", 10956}, |
|
722 | 904 |
{NULL, 0}, |
723 |
- {(const unsigned char*)"oslash", 248}, |
|
724 |
- {(const unsigned char*)"cong", 8773}, |
|
725 | 905 |
{NULL, 0}, |
726 | 906 |
{NULL, 0}, |
727 | 907 |
{NULL, 0}, |
728 |
- {(const unsigned char*)"otimes", 8855}, |
|
729 | 908 |
{NULL, 0}, |
909 |
+ {(const unsigned char*)"DoubleDownArrow", 8659}, |
|
730 | 910 |
{NULL, 0}, |
911 |
+ {(const unsigned char*)"dharr", 8642}, |
|
912 |
+ {(const unsigned char*)"lagran", 8466}, |
|
731 | 913 |
{NULL, 0}, |
732 |
- {(const unsigned char*)"lowast", 8727}, |
|
914 |
+ {(const unsigned char*)"lrhard", 10605}, |
|
733 | 915 |
{NULL, 0}, |
734 | 916 |
{NULL, 0}, |
735 | 917 |
{NULL, 0}, |
736 | 918 |
{NULL, 0}, |
919 |
+ {(const unsigned char*)"downharpoonleft", 8643}, |
|
920 |
+ {(const unsigned char*)"tilde", 732}, |
|
921 |
+ {(const unsigned char*)"nharr", 8622}, |
|
737 | 922 |
{NULL, 0}, |
738 | 923 |
{NULL, 0}, |
739 | 924 |
{NULL, 0}, |
740 | 925 |
{NULL, 0}, |
741 | 926 |
{NULL, 0}, |
927 |
+ {(const unsigned char*)"puncsp", 8200}, |
|
928 |
+ {(const unsigned char*)"uharr", 8638}, |
|
929 |
+ {(const unsigned char*)"boxHu", 9575}, |
|
930 |
+ {(const unsigned char*)"models", 8871}, |
|
931 |
+ {(const unsigned char*)"xharr", 10231}, |
|
932 |
+ {(const unsigned char*)"nparallel", 8742}, |
|
742 | 933 |
{NULL, 0}, |
934 |
+ {(const unsigned char*)"Proportional", 8733}, |
|
743 | 935 |
{NULL, 0}, |
936 |
+ {(const unsigned char*)"ltrif", 9666}, |
|
744 | 937 |
{NULL, 0}, |
938 |
+ {(const unsigned char*)"dtrif", 9662}, |
|
745 | 939 |
{NULL, 0}, |
746 | 940 |
{NULL, 0}, |
941 |
+ {(const unsigned char*)"subsetneqq", 10955}, |
|
942 |
+ {(const unsigned char*)"NotGreaterEqual", 8817}, |
|
943 |
+ {(const unsigned char*)"rtrif", 9656}, |
|
747 | 944 |
{NULL, 0}, |
945 |
+ {(const unsigned char*)"utrif", 9652}, |
|
946 |
+ {(const unsigned char*)"boxvl", 9508}, |
|
947 |
+ {(const unsigned char*)"curvearrowleft", 8630}, |
|
948 |
+ {(const unsigned char*)"lessapprox", 10885}, |
|
949 |
+ {(const unsigned char*)"scnE", 10934}, |
|
950 |
+ {(const unsigned char*)"thetasym", 977}, |
|
748 | 951 |
{NULL, 0}, |
749 |
- {(const unsigned char*)"Gamma", 915}, |
|
750 | 952 |
{NULL, 0}, |
953 |
+ {(const unsigned char*)"ExponentialE", 8519}, |
|
954 |
+ {(const unsigned char*)"andv", 10842}, |
|
751 | 955 |
{NULL, 0}, |
752 | 956 |
{NULL, 0}, |
957 |
+ {(const unsigned char*)"mapstodown", 8615}, |
|
753 | 958 |
{NULL, 0}, |
754 | 959 |
{NULL, 0}, |
960 |
+ {(const unsigned char*)"DownLeftVector", 8637}, |
|
961 |
+ {(const unsigned char*)"rightharpoonup", 8640}, |
|
962 |
+ {(const unsigned char*)"mapsto", 8614}, |
|
963 |
+ {(const unsigned char*)"Lang", 12298}, |
|
964 |
+ {(const unsigned char*)"SquareSuperset", 8848}, |
|
965 |
+ {(const unsigned char*)"rightsquigarrow", 8605}, |
|
755 | 966 |
{NULL, 0}, |
756 | 967 |
{NULL, 0}, |
968 |
+ {(const unsigned char*)"Rang", 12299}, |
|
757 | 969 |
{NULL, 0}, |
758 | 970 |
{NULL, 0}, |
759 | 971 |
{NULL, 0}, |
... | ... |
@@ -766,34 +2763,324 @@ static struct element entities_htable_elements[] = { |
766 | 766 |
{NULL, 0}, |
767 | 767 |
{NULL, 0}, |
768 | 768 |
{NULL, 0}, |
769 |
+ {(const unsigned char*)"sigmav", 962}, |
|
769 | 770 |
{NULL, 0}, |
770 | 771 |
{NULL, 0}, |
771 | 772 |
{NULL, 0}, |
773 |
+ {(const unsigned char*)"SquareIntersection", 8851}, |
|
772 | 774 |
{NULL, 0}, |
773 | 775 |
{NULL, 0}, |
774 |
- {(const unsigned char*)"sbquo", 8218}, |
|
776 |
+ {(const unsigned char*)"downharpoonright", 8642}, |
|
775 | 777 |
{NULL, 0}, |
776 | 778 |
{NULL, 0}, |
777 | 779 |
{NULL, 0}, |
778 | 780 |
{NULL, 0}, |
779 | 781 |
{NULL, 0}, |
782 |
+ {(const unsigned char*)"lang", 9001}, |
|
783 |
+ {(const unsigned char*)"compfn", 8728}, |
|
780 | 784 |
{NULL, 0}, |
781 |
- {(const unsigned char*)"gamma", 947}, |
|
782 |
- {(const unsigned char*)"and", 8743}, |
|
783 |
- {(const unsigned char*)"cup", 8746}, |
|
784 | 785 |
{NULL, 0}, |
785 | 786 |
{NULL, 0}, |
786 | 787 |
{NULL, 0}, |
787 |
- {(const unsigned char*)"Theta", 920}, |
|
788 |
+ {(const unsigned char*)"rang", 9002}, |
|
788 | 789 |
{NULL, 0}, |
790 |
+ {(const unsigned char*)"Leftrightarrow", 8660}, |
|
789 | 791 |
{NULL, 0}, |
790 | 792 |
{NULL, 0}, |
791 | 793 |
{NULL, 0}, |
794 |
+ {(const unsigned char*)"ReverseEquilibrium", 8651}, |
|
792 | 795 |
{NULL, 0}, |
796 |
+ {(const unsigned char*)"Rightarrow", 8658}, |
|
797 |
+ {(const unsigned char*)"planck", 8463}, |
|
793 | 798 |
{NULL, 0}, |
794 |
- {(const unsigned char*)"macr", 175}, |
|
795 |
- {(const unsigned char*)"acute", 180}, |
|
799 |
+ {NULL, 0}, |
|
800 |
+ {(const unsigned char*)"KHgr", 935}, |
|
801 |
+ {NULL, 0}, |
|
802 |
+ {NULL, 0}, |
|
803 |
+ {NULL, 0}, |
|
804 |
+ {(const unsigned char*)"OHgr", 937}, |
|
805 |
+ {(const unsigned char*)"PHgr", 934}, |
|
806 |
+ {NULL, 0}, |
|
807 |
+ {(const unsigned char*)"sqsup", 8848}, |
|
808 |
+ {NULL, 0}, |
|
809 |
+ {(const unsigned char*)"THgr", 920}, |
|
810 |
+ {NULL, 0}, |
|
811 |
+ {(const unsigned char*)"rppolint", 10770}, |
|
812 |
+ {NULL, 0}, |
|
813 |
+ {NULL, 0}, |
|
814 |
+ {(const unsigned char*)"gtrapprox", 10886}, |
|
815 |
+ {(const unsigned char*)"LongLeftRightArrow", 10231}, |
|
816 |
+ {NULL, 0}, |
|
817 |
+ {(const unsigned char*)"iinfin", 10716}, |
|
818 |
+ {NULL, 0}, |
|
819 |
+ {NULL, 0}, |
|
820 |
+ {(const unsigned char*)"frac16", 8537}, |
|
821 |
+ {NULL, 0}, |
|
822 |
+ {(const unsigned char*)"leftrightarrow", 8596}, |
|
823 |
+ {NULL, 0}, |
|
824 |
+ {NULL, 0}, |
|
825 |
+ {NULL, 0}, |
|
826 |
+ {NULL, 0}, |
|
827 |
+ {NULL, 0}, |
|
828 |
+ {(const unsigned char*)"rightarrow", 8594}, |
|
829 |
+ {(const unsigned char*)"risingdotseq", 8787}, |
|
830 |
+ {NULL, 0}, |
|
831 |
+ {(const unsigned char*)"blacksquare", 9642}, |
|
832 |
+ {NULL, 0}, |
|
833 |
+ {NULL, 0}, |
|
834 |
+ {NULL, 0}, |
|
835 |
+ {NULL, 0}, |
|
836 |
+ {NULL, 0}, |
|
837 |
+ {NULL, 0}, |
|
838 |
+ {NULL, 0}, |
|
839 |
+ {NULL, 0}, |
|
840 |
+ {(const unsigned char*)"DotDot", 8412}, |
|
841 |
+ {NULL, 0}, |
|
842 |
+ {NULL, 0}, |
|
843 |
+ {NULL, 0}, |
|
844 |
+ {NULL, 0}, |
|
845 |
+ {NULL, 0}, |
|
846 |
+ {(const unsigned char*)"radic", 8730}, |
|
847 |
+ {NULL, 0}, |
|
848 |
+ {NULL, 0}, |
|
849 |
+ {NULL, 0}, |
|
850 |
+ {NULL, 0}, |
|
851 |
+ {NULL, 0}, |
|
852 |
+ {(const unsigned char*)"nRightarrow", 8655}, |
|
853 |
+ {NULL, 0}, |
|
854 |
+ {(const unsigned char*)"reals", 8477}, |
|
855 |
+ {NULL, 0}, |
|
856 |
+ {NULL, 0}, |
|
857 |
+ {NULL, 0}, |
|
858 |
+ {NULL, 0}, |
|
859 |
+ {(const unsigned char*)"varphi", 966}, |
|
860 |
+ {NULL, 0}, |
|
861 |
+ {(const unsigned char*)"DownRightVector", 8641}, |
|
862 |
+ {(const unsigned char*)"Equal", 10869}, |
|
863 |
+ {(const unsigned char*)"NotCupCap", 8813}, |
|
864 |
+ {NULL, 0}, |
|
865 |
+ {NULL, 0}, |
|
866 |
+ {(const unsigned char*)"SucceedsTilde", 8831}, |
|
867 |
+ {NULL, 0}, |
|
868 |
+ {(const unsigned char*)"Succeeds", 8827}, |
|
869 |
+ {(const unsigned char*)"dotplus", 8724}, |
|
870 |
+ {NULL, 0}, |
|
871 |
+ {NULL, 0}, |
|
872 |
+ {NULL, 0}, |
|
873 |
+ {NULL, 0}, |
|
874 |
+ {(const unsigned char*)"notniva", 8716}, |
|
875 |
+ {NULL, 0}, |
|
876 |
+ {NULL, 0}, |
|
877 |
+ {NULL, 0}, |
|
878 |
+ {NULL, 0}, |
|
879 |
+ {NULL, 0}, |
|
880 |
+ {NULL, 0}, |
|
881 |
+ {NULL, 0}, |
|
882 |
+ {NULL, 0}, |
|
883 |
+ {NULL, 0}, |
|
884 |
+ {NULL, 0}, |
|
885 |
+ {(const unsigned char*)"looparrowright", 8620}, |
|
886 |
+ {(const unsigned char*)"ggg", 8921}, |
|
887 |
+ {(const unsigned char*)"EmptySmallSquare", 9723}, |
|
888 |
+ {NULL, 0}, |
|
889 |
+ {(const unsigned char*)"nrtri", 8939}, |
|
890 |
+ {NULL, 0}, |
|
891 |
+ {NULL, 0}, |
|
892 |
+ {(const unsigned char*)"oS", 9416}, |
|
893 |
+ {NULL, 0}, |
|
894 |
+ {NULL, 0}, |
|
895 |
+ {(const unsigned char*)"IEcy", 1045}, |
|
896 |
+ {NULL, 0}, |
|
897 |
+ {(const unsigned char*)"succeq", 10928}, |
|
898 |
+ {(const unsigned char*)"vrtri", 8883}, |
|
899 |
+ {(const unsigned char*)"DownTeeArrow", 8615}, |
|
900 |
+ {NULL, 0}, |
|
901 |
+ {(const unsigned char*)"frac45", 8536}, |
|
902 |
+ {NULL, 0}, |
|
903 |
+ {NULL, 0}, |
|
904 |
+ {NULL, 0}, |
|
905 |
+ {NULL, 0}, |
|
906 |
+ {NULL, 0}, |
|
907 |
+ {(const unsigned char*)"dblac", 733}, |
|
908 |
+ {NULL, 0}, |
|
909 |
+ {(const unsigned char*)"blk14", 9617}, |
|
910 |
+ {NULL, 0}, |
|
911 |
+ {(const unsigned char*)"lesseqqgtr", 10891}, |
|
912 |
+ {NULL, 0}, |
|
913 |
+ {NULL, 0}, |
|
914 |
+ {NULL, 0}, |
|
915 |
+ {(const unsigned char*)"yucy", 1102}, |
|
916 |
+ {NULL, 0}, |
|
917 |
+ {NULL, 0}, |
|
918 |
+ {NULL, 0}, |
|
919 |
+ {NULL, 0}, |
|
920 |
+ {NULL, 0}, |
|
921 |
+ {NULL, 0}, |
|
922 |
+ {(const unsigned char*)"yicy", 1111}, |
|
923 |
+ {NULL, 0}, |
|
924 |
+ {(const unsigned char*)"gne", 10888}, |
|
925 |
+ {NULL, 0}, |
|
926 |
+ {NULL, 0}, |
|
927 |
+ {NULL, 0}, |
|
928 |
+ {NULL, 0}, |
|
929 |
+ {(const unsigned char*)"udhar", 10606}, |
|
930 |
+ {(const unsigned char*)"UnionPlus", 8846}, |
|
931 |
+ {(const unsigned char*)"blank", 9251}, |
|
932 |
+ {(const unsigned char*)"lne", 10887}, |
|
933 |
+ {NULL, 0}, |
|
934 |
+ {NULL, 0}, |
|
935 |
+ {NULL, 0}, |
|
936 |
+ {NULL, 0}, |
|
937 |
+ {NULL, 0}, |
|
938 |
+ {(const unsigned char*)"NotTildeFullEqual", 8775}, |
|
939 |
+ {(const unsigned char*)"supE", 10950}, |
|
940 |
+ {NULL, 0}, |
|
941 |
+ {(const unsigned char*)"PlusMinus", 177}, |
|
942 |
+ {NULL, 0}, |
|
943 |
+ {NULL, 0}, |
|
944 |
+ {(const unsigned char*)"GreaterTilde", 8819}, |
|
945 |
+ {NULL, 0}, |
|
946 |
+ {NULL, 0}, |
|
947 |
+ {NULL, 0}, |
|
948 |
+ {(const unsigned char*)"duarr", 8693}, |
|
949 |
+ {NULL, 0}, |
|
950 |
+ {NULL, 0}, |
|
951 |
+ {NULL, 0}, |
|
952 |
+ {(const unsigned char*)"LeftDoubleBracket", 12314}, |
|
953 |
+ {NULL, 0}, |
|
954 |
+ {NULL, 0}, |
|
955 |
+ {(const unsigned char*)"CounterClockwiseContourIntegral", 8755}, |
|
956 |
+ {NULL, 0}, |
|
957 |
+ {NULL, 0}, |
|
958 |
+ {NULL, 0}, |
|
959 |
+ {NULL, 0}, |
|
960 |
+ {(const unsigned char*)"natural", 9838}, |
|
961 |
+ {NULL, 0}, |
|
962 |
+ {NULL, 0}, |
|
963 |
+ {NULL, 0}, |
|
964 |
+ {NULL, 0}, |
|
965 |
+ {(const unsigned char*)"uuarr", 8648}, |
|
966 |
+ {(const unsigned char*)"biguplus", 10756}, |
|
967 |
+ {NULL, 0}, |
|
968 |
+ {NULL, 0}, |
|
969 |
+ {NULL, 0}, |
|
970 |
+ {NULL, 0}, |
|
971 |
+ {NULL, 0}, |
|
972 |
+ {NULL, 0}, |
|
973 |
+ {(const unsigned char*)"DownLeftVectorBar", 10582}, |
|
974 |
+ {NULL, 0}, |
|
975 |
+ {NULL, 0}, |
|
976 |
+ {(const unsigned char*)"subE", 10949}, |
|
977 |
+ {NULL, 0}, |
|
978 |
+ {NULL, 0}, |
|
979 |
+ {(const unsigned char*)"part", 8706}, |
|
980 |
+ {(const unsigned char*)"drcorn", 8991}, |
|
981 |
+ {(const unsigned char*)"horbar", 8213}, |
|
982 |
+ {(const unsigned char*)"sbsol", 65128}, |
|
983 |
+ {(const unsigned char*)"varrho", 1009}, |
|
984 |
+ {NULL, 0}, |
|
985 |
+ {NULL, 0}, |
|
986 |
+ {(const unsigned char*)"cudarrl", 10552}, |
|
987 |
+ {NULL, 0}, |
|
988 |
+ {NULL, 0}, |
|
989 |
+ {(const unsigned char*)"boxul", 9496}, |
|
990 |
+ {NULL, 0}, |
|
991 |
+ {NULL, 0}, |
|
992 |
+ {NULL, 0}, |
|
993 |
+ {NULL, 0}, |
|
994 |
+ {NULL, 0}, |
|
995 |
+ {(const unsigned char*)"ordm", 186}, |
|
996 |
+ {NULL, 0}, |
|
997 |
+ {(const unsigned char*)"urcorn", 8989}, |
|
998 |
+ {NULL, 0}, |
|
999 |
+ {NULL, 0}, |
|
1000 |
+ {NULL, 0}, |
|
1001 |
+ {NULL, 0}, |
|
1002 |
+ {(const unsigned char*)"dotminus", 8760}, |
|
1003 |
+ {(const unsigned char*)"scnsim", 8937}, |
|
1004 |
+ {(const unsigned char*)"andslope", 10840}, |
|
1005 |
+ {(const unsigned char*)"Cfr", 8493}, |
|
1006 |
+ {NULL, 0}, |
|
1007 |
+ {NULL, 0}, |
|
1008 |
+ {(const unsigned char*)"rightthreetimes", 8908}, |
|
1009 |
+ {(const unsigned char*)"Hfr", 8460}, |
|
1010 |
+ {(const unsigned char*)"sqsubset", 8847}, |
|
1011 |
+ {(const unsigned char*)"lAtail", 10523}, |
|
1012 |
+ {(const unsigned char*)"rightleftharpoons", 8652}, |
|
1013 |
+ {(const unsigned char*)"Ifr", 8465}, |
|
1014 |
+ {(const unsigned char*)"infintie", 10717}, |
|
1015 |
+ {NULL, 0}, |
|
1016 |
+ {NULL, 0}, |
|
1017 |
+ {(const unsigned char*)"rAtail", 10524}, |
|
1018 |
+ {(const unsigned char*)"scnap", 10938}, |
|
1019 |
+ {(const unsigned char*)"lharul", 10602}, |
|
1020 |
+ {(const unsigned char*)"Rfr", 8476}, |
|
1021 |
+ {NULL, 0}, |
|
1022 |
+ {NULL, 0}, |
|
1023 |
+ {NULL, 0}, |
|
1024 |
+ {(const unsigned char*)"parallel", 8741}, |
|
1025 |
+ {(const unsigned char*)"rharul", 10604}, |
|
1026 |
+ {NULL, 0}, |
|
1027 |
+ {(const unsigned char*)"Zfr", 8488}, |
|
1028 |
+ {(const unsigned char*)"RuleDelayed", 10740}, |
|
1029 |
+ {NULL, 0}, |
|
1030 |
+ {NULL, 0}, |
|
1031 |
+ {NULL, 0}, |
|
1032 |
+ {NULL, 0}, |
|
1033 |
+ {(const unsigned char*)"RightArrowLeftArrow", 8644}, |
|
1034 |
+ {(const unsigned char*)"profsurf", 8979}, |
|
1035 |
+ {(const unsigned char*)"nsupseteq", 8841}, |
|
1036 |
+ {(const unsigned char*)"nearhk", 10532}, |
|
1037 |
+ {NULL, 0}, |
|
1038 |
+ {NULL, 0}, |
|
1039 |
+ {(const unsigned char*)"triangledown", 9663}, |
|
1040 |
+ {NULL, 0}, |
|
1041 |
+ {(const unsigned char*)"searhk", 10533}, |
|
1042 |
+ {(const unsigned char*)"empty", 8709}, |
|
1043 |
+ {NULL, 0}, |
|
1044 |
+ {(const unsigned char*)"DoubleUpArrow", 8657}, |
|
1045 |
+ {(const unsigned char*)"checkmark", 10003}, |
|
1046 |
+ {NULL, 0}, |
|
1047 |
+ {(const unsigned char*)"succapprox", 10936}, |
|
1048 |
+ {NULL, 0}, |
|
1049 |
+ {(const unsigned char*)"Cap", 8914}, |
|
1050 |
+ {(const unsigned char*)"RightTriangle", 8883}, |
|
1051 |
+ {NULL, 0}, |
|
1052 |
+ {(const unsigned char*)"tosa", 10537}, |
|
1053 |
+ {(const unsigned char*)"RightUpVector", 8638}, |
|
1054 |
+ {NULL, 0}, |
|
1055 |
+ {(const unsigned char*)"boxVL", 9571}, |
|
1056 |
+ {(const unsigned char*)"ecolon", 8789}, |
|
1057 |
+ {NULL, 0}, |
|
1058 |
+ {NULL, 0}, |
|
1059 |
+ {(const unsigned char*)"Map", 10501}, |
|
1060 |
+ {NULL, 0}, |
|
1061 |
+ {NULL, 0}, |
|
1062 |
+ {(const unsigned char*)"lbrack", 91}, |
|
1063 |
+ {(const unsigned char*)"THORN", 222}, |
|
1064 |
+ {(const unsigned char*)"DownArrowUpArrow", 8693}, |
|
1065 |
+ {NULL, 0}, |
|
1066 |
+ {NULL, 0}, |
|
1067 |
+ {NULL, 0}, |
|
1068 |
+ {(const unsigned char*)"rbrack", 93}, |
|
1069 |
+ {NULL, 0}, |
|
1070 |
+ {NULL, 0}, |
|
1071 |
+ {(const unsigned char*)"DiacriticalTilde", 732}, |
|
1072 |
+ {(const unsigned char*)"amp", 38}, |
|
1073 |
+ {(const unsigned char*)"rlhar2", 8652}, |
|
1074 |
+ {NULL, 0}, |
|
1075 |
+ {(const unsigned char*)"bcong", 8780}, |
|
1076 |
+ {NULL, 0}, |
|
1077 |
+ {NULL, 0}, |
|
1078 |
+ {(const unsigned char*)"exist", 8707}, |
|
1079 |
+ {(const unsigned char*)"ord", 10845}, |
|
1080 |
+ {NULL, 0}, |
|
1081 |
+ {(const unsigned char*)"cap", 8745}, |
|
1082 |
+ {(const unsigned char*)"eeacgr", 942}, |
|
1083 |
+ {(const unsigned char*)"PrecedesTilde", 8830}, |
|
1084 |
+ {(const unsigned char*)"divideontimes", 8903}, |
|
1085 |
+ {(const unsigned char*)"Precedes", 8826}, |
|
796 | 1086 |
}; |
797 | 1087 |
const struct hashtable entities_htable = { |
798 |
- entities_htable_elements, 769, 253, 615 |
|
1088 |
+ entities_htable_elements, 3079, 1643, 2463 |
|
799 | 1089 |
}; |
... | ... |
@@ -249,9 +249,10 @@ static int hashtab_grow(struct hashtable *s) |
249 | 249 |
if(s->htable[i].key && s->htable[i].key != DELETED_KEY) { |
250 | 250 |
struct element* element; |
251 | 251 |
size_t tries = 0; |
252 |
+ |
|
252 | 253 |
|
253 | 254 |
PROFILE_CALC_HASH(s); |
254 |
- idx = hash(s->htable[i].key, strlen((const char*)s->htable[i].key), s->capacity); |
|
255 |
+ idx = hash(s->htable[i].key, strlen((const char*)s->htable[i].key), new_capacity); |
|
255 | 256 |
element = &htable[idx]; |
256 | 257 |
|
257 | 258 |
while(element->key && tries <= new_capacity) { |
... | ... |
@@ -309,12 +310,12 @@ int hashtab_insert(struct hashtable *s,const unsigned char* key,const size_t len |
309 | 309 |
thekey = cli_malloc(len+1); |
310 | 310 |
if(!thekey) |
311 | 311 |
return CL_EMEM; |
312 |
- strncpy((char*)thekey,(const char*)key,len); |
|
312 |
+ strncpy((char*)thekey,(const char*)key,len+1); |
|
313 | 313 |
element->key = thekey; |
314 | 314 |
element->data = data; |
315 | 315 |
s->used++; |
316 | 316 |
if(s->used > s->maxfill) { |
317 |
- cli_dbgmsg("hashtab.c:Growing hashtable %x, because it has exceeded maxfill, old size:%ld\n",s->capacity); |
|
317 |
+ cli_dbgmsg("hashtab.c:Growing hashtable %p, because it has exceeded maxfill, old size:%ld\n",s,s->capacity); |
|
318 | 318 |
hashtab_grow(s); |
319 | 319 |
} |
320 | 320 |
return 0; |