Codebase list unrtf / upstream/0.21.8-clean
Imported Upstream version 0.21.8-clean Willi Mann 9 years ago
63 changed file(s) with 1880 addition(s) and 8603 deletion(s). Raw diff Collapse all Expand all
0 0.21.3:
0 0.1
1 - original version, known as "rtf2htm"
2 0.2
3 - first Linux version
4 0.3
5 - addition of hash storage for all strings
6 0.4
7 - support for a few HTML special exprs
8 0.5
9 - tables finally work
10 0.6
11 - addition of usage()
12 0.7
13 - added special chars, \tab, info group, <body>
14 0.8
15 - font table support
16 0.9.0
17 - images are stored to files
18 0.9.1
19 - pict files extensions a bit more accurate
20 0.9.2
21 - font size changes (\fs) more accurate.
22 0.9.3
23 - fixed bug regarding where <body> goes
24 0.9.4
25 - added -nopict option
26 0.9.5
27 - fixed table data printing.
28 0.9.6
29 - if >1 \cell in a group, font attrs affect all.
30 0.9.7
31 - Chunk class renamed Word
32
33 0.10.0
34 - input file type is checked, -echo renamed -dump
35 0.11.0
36 - addition of ANSI->HTML conversion, plus limited Mac->HTML
37 0.11.1
38 - unknown chars are printed as <!--0x##-->
39
40 0.12.0
41 - separated parser from word module
42 0.12.1
43 - added -version option
44 0.12.2
45 - backslash-newline is now \par
46 0.12.3
47 - added default font families (\fswiss etc)
48 0.12.4
49 - added blurb about program in the output HTML
50 0.12.5
51 - added recognition of files with ".RTF" ending, not just ".rtf"
52 0.12.6
53 - added charset tables for CP437 and CP850
54 0.12.7
55 - fixed bug preventing \'## sequences from being translated
56 0.12.8
57 - removed size limit for words, verified DJGPP compilation works.
58 0.12.9
59 - compilation bugfix, fixed author/date information
60 0.12.10
61 - added --simple switch for generating HTML without SPAN/DIV tags
62
63 0.13.0
64 - paragraph alignment added
65 0.13.1
66 - fix for words getting lost after \par
67 0.13.2
68 - fix for color table not being recognized
69
70 0.14.0
71 - separation of word and convert modules
72 0.14.1
73 - fixed color table indexing, added support for font background color.
74 0.14.2
75 - updated parsing mechanism
76 0.14.3
77 - fix for DIV nesting; fix for NS's hiding any table within a span.
78 0.14.4
79 - fix for color table parsing; added better underline/strikethru support.
80
81 0.15.0
82 - hashing of RTF keywords in convert.c; moved much code out of convert.c
83 0.15.1
84 - removed null entries from special.c to reduce program size
85 0.15.2
86 - removed no-op entries from hash in convert.c to reduce program size
87 0.15.3
88 - first 16-bit MSDOS executable
89 0.15.4
90 - fixed paragraph alignment not getting cleared by \pard
91 0.15.5
92 - updated code to produce as few paragraph alignment tags as possible
93
94 0.16.0
95 - added input buffering to improve speed
96 0.16.1
97 - bugfix for printing of debugging strings stored in command hash
98
99 0.17.0
100 - hyperlink support added
101 0.17.1
102 - added support for several font attributes e.g. smallcaps, caps, \expand
103 0.17.2
104 - added Amiga(TM) compilation support
105 0.17.3
106 - fixed problem in interpretation of RTF command words
107 0.17.4
108 - changed attr.c to use AttrStack (stack of stacks) paradigm
109 ----program renamed UnRTF----
110 0.17.5
111 - began implementation of output personalities; wrote HTML personality.
112 0.17.6
113 - added text and vt personalities
114 0.17.7
115 - began addition of PostScript(TM) and LaTeX and WPML output
116 0.17.8
117 - first fully commented version, removed "last change" lines
118 0.17.9
119 - fixed translation between character sets
120 0.17.10
121 - PS now supports underline, strikethrough, shadowed text
122 0.17.11
123 - PS now uses ISOLatin1Encoding
124 0.17.12
125 - PS now supports these fonts: Times,Courier,Symbol,Helvetica
126
127 ----program is now GNU UnRTF----
128 0.18.0
129 - updates to comments, documentation to reflect inclusion in GNU suite.
130 0.18.1
131 - updated manual
132
133 0.19.1
134 - new maintainers: minor fixes to prevent segmentation violations;
135 further special character code; minor cleanups
136 0.19.2
137 - updated some files;
138 0.19.3
139 - fix bug #225592: null pointer param in convert.c
140 0.19.4
141 - added unicode support
142 0.19.5
143 - removed defective PS support and non-free text files
144 more unicode support
145 improved symbol font support - no longer puts entities in latex output
146 Bug#266020 concerning double slashes fixed
147 Bug#269054 concerning Doctype fixed
148 Bug#287038 security breach fixed
149 (thanks to Joey Hess <joeyh@debian.org>)
150 0.19.6
151 - fix some latex problems
152 0.19.7
153 - updated FSF address
154 0.19.8
155 - minor fixes
156 0.19.9
157 - included verbose mode
158
159 0.20.0
160 - new build system by Claudio Fontana <claudio@gnu.org>
161 fixed creation date spelling and added support for accented characters
162 in titles from Laurent Monin
163 0.20.1
164 - minor fix in convert.c for Solaris System
165 0.20.2
166 - minor fix to unterminated comment output, added attr_get_param()
167 0.20.3
168 - Greek font support added, fix to UTF character processing
169 0.20.4
170 - nopict mode bug fixes
171 0.20.5
172 - added --noremap option, some html entity corrections, updated to GPL v3
173
174 0.21.3
175 -
1176 - added '--quiet' flag which suppresses leading comments in output
2177 - default directory for config files is now /usr/local/share/unrtf
3178 and this can be changed when configure is run at compilation time
9184 - major improvements in unicode handling
10185 - latex config file improved. Some Greek characters output properly.
11186 - troff_mm config file improved such that this option is now useful
12 0.21.2:
187 0.21.2
13188 - added feof() calls to fgets() and fgetchar() instances so end-of
14189 file is correctly determined under AIX
15190 - supplemented code to handle special characters specified with
19194 - definitions in html.config changed to ensure values of markup variables
20195 are enclosed in double quotes, e.g. size="3" instead of size=3. This
21196 is a first step towards supporting production of XHTML.
22 0.21.1:
197 0.21.1
23198 - fixed strings in unicode_to_string() (unicode.c) to be null
24199 terminated instead of newline terminated. This prevents spurious
25200 newline output after characters in Symbol font. It also overcomes a
55230 applied.
56231 0.21.5:
57232 - improved code for the unnested case and extended to more RTF commands
58
233 0.21.6:
234 - improved man page
235 - improved USAGE string
236 - fix to attr.c for clang compilation
237 0.21.7:
238 - improved code for creation of image files when RTF files containing
239 images processed
240 - prevent segmentation violations with RTF input containing corrupt
241 \info content
242 0.21.8:
243 - Changed bug reporting in unrtf.1
244 - Test file for newly supported EMF image type.
245 - Fixed all -Wall compilation warning
246 - Bogus test in op_translate_buffer() caused error messages and data
247 truncation
248 - cmd_maybe_ignore(): test next command presence in the cmd hashes
249 instead of listing locally the commands that should be processed
250 - Fix unrtf looping when closing any underlining except the basic (ul)
251 one
252 - Open Picture files in wb mode instead of w for Windows portability.
253 Fixes bug #21274
254 - html output doctype value needs to be quoted
255 - Skip binary data after \bin command
256 - Simplified shared string storage in hash.c and word.c: suppressed
257 the "index" value and replaced it by string address. Simpler
258 and faster. Other changes are making shared string refs const
259 - Better processing of \pict including addition of EMF type.
260 - Fix access overflow occurring while translating unicode data from
261 garbled or truncated file
262 - Fix buffer access overflow caused by truncated file
263 - Need to check word_string() output not NULL in cmd_maybe_ignore()
264 - String equality test while searching the command table for command
265 having parameter would access byte out of allocated memory
266 and produce potentially random result. Fixes AddressSanitizer
267 error found by Hanno Boeck
268 - String equality test while searching the command table for command
269 having parameter would access byte out of allocated memory
270 and produce potentially random result. Fixes AddressSanitizer
271 error found by Hanno Boeck
272 - Substitute appropriate prefix-depending paths in the man page prior
273 to installing
274 - Limit depth of group embedding to guard against malicious files with
275 thousands of consecutive {
276 - check index before access into month_strings array
277 - attr_get_param(): silence warning message in frequent and normal
278 case (Fabian Keil)
279 - attrstack_drop(): Properly drop the last stack element (Fabian Keil)
280 + get rid of unused variable in attrstack_push()
281 - hash_get_string(): Reject invalid indexes (author: Fabian Keil)
0 # Makefile.in generated by automake 1.14 from Makefile.am.
0 # Makefile.in generated by automake 1.13.4 from Makefile.am.
11 # @configure_input@
22
33 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
8282 DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \
8383 $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
8484 $(top_srcdir)/configure $(am__configure_deps) \
85 $(srcdir)/config.h.in COPYING config/compile \
86 config/config.guess config/config.sub config/depcomp \
87 config/install-sh config/missing $(top_srcdir)/config/compile \
85 $(srcdir)/config.h.in COPYING config/config.guess \
86 config/config.sub config/install-sh config/missing \
8887 $(top_srcdir)/config/config.guess \
8988 $(top_srcdir)/config/config.sub \
9089 $(top_srcdir)/config/install-sh $(top_srcdir)/config/missing
340339 $(am__aclocal_m4_deps):
341340
342341 config.h: stamp-h1
343 @test -f $@ || rm -f stamp-h1
344 @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
342 @if test ! -f $@; then rm -f stamp-h1; else :; fi
343 @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi
345344
346345 stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
347346 @rm -f stamp-h1
541540 $(am__post_remove_distdir)
542541
543542 dist-tarZ: distdir
544 @echo WARNING: "Support for shar distribution archives is" \
545 "deprecated." >&2
546 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
547543 tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
548544 $(am__post_remove_distdir)
549545
550546 dist-shar: distdir
551 @echo WARNING: "Support for distribution archives compressed with" \
552 "legacy program 'compress' is deprecated." >&2
553 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
554547 shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
555548 $(am__post_remove_distdir)
556549
+42
-102
NEWS less more
0 Overall changes for GNU UnRTF
1 ----------------------------------------
2 0.1: original version, known as "rtf2htm"
3 0.2: first Linux version
4 0.3: addition of hash storage for all strings
5 0.4: support for a few HTML special exprs
6 0.5: tables finally work
7 0.6: addition of usage()
8 0.7: added special chars, \tab, info group, <body>
9 0.8: font table support
10
11 0.9.0: images are stored to files
12 0.9.1: pict files extensions a bit more accurate
13 0.9.2: font size changes (\fs) more accurate.
14 0.9.3: fixed bug regarding where <body> goes
15 0.9.4: added -nopict option
16 0.9.5: fixed table data printing.
17 0.9.6: if >1 \cell in a group, font attrs affect all.
18 0.9.7: Chunk class renamed Word
19
20 0.10.0: input file type is checked, -echo renamed -dump
21 0.11.0: addition of ANSI->HTML conversion, plus limited Mac->HTML
22 0.11.1: unknown chars are printed as <!--0x##-->
23
24 0.12.0: separated parser from word module
25 0.12.1: added -version option
26 0.12.2: backslash-newline is now \par
27 0.12.3: added default font families (\fswiss etc)
28 0.12.4: added blurb about program in the output HTML
29 0.12.5: added recognition of files with ".RTF" ending, not just ".rtf"
30 0.12.6: added charset tables for CP437 and CP850
31 0.12.7: fixed bug preventing \'## sequences from being translated
32 0.12.8: removed size limit for words, verified DJGPP compilation works.
33 0.12.9: compilation bugfix, fixed author/date information
34 0.12.10: added --simple switch for generating HTML without SPAN/DIV tags
35
36 0.13.0: paragraph alignment added
37 0.13.1: fix for words getting lost after \par
38 0.13.2: fix for color table not being recognized
39
40 0.14.0: separation of word and convert modules
41 0.14.1: fixed color table indexing, added support for font background color.
42 0.14.2: updated parsing mechanism
43 0.14.3: fix for DIV nesting; fix for NS's hiding any table within a span.
44 0.14.4: fix for color table parsing; added better underline/strikethru support.
45
46 0.15.0: hashing of RTF keywords in convert.c; moved much code out of convert.c
47 0.15.1: removed null entries from special.c to reduce program size
48 0.15.2: removed no-op entries from hash in convert.c to reduce program size
49 0.15.3: first 16-bit MSDOS executable
50 0.15.4: fixed paragraph alignment not getting cleared by \pard
51 0.15.5: updated code to produce as few paragraph alignment tags as possible
52
53 0.16.0: added input buffering to improve speed
54 0.16.1: bugfix for printing of debugging strings stored in command hash
55
56 0.17.0: hyperlink support added
57 0.17.1: added support for several font attributes e.g. smallcaps, caps, \expand
58 0.17.2: added Amiga(TM) compilation support
59 0.17.3: fixed problem in interpretation of RTF command words
60 0.17.4: changed attr.c to use AttrStack (stack of stacks) paradigm
61 ----program renamed UnRTF----
62 0.17.5: began implementation of output personalities; wrote HTML personality.
63 0.17.6: added text and vt personalities
64 0.17.7: began addition of PostScript(TM) and LaTeX and WPML output
65 0.17.8: first fully commented version, removed "last change" lines
66 0.17.9: fixed translation between character sets
67 0.17.10: PS now supports underline, strikethrough, shadowed text
68 0.17.11: PS now uses ISOLatin1Encoding
69 0.17.12: PS now supports these fonts: Times,Courier,Symbol,Helvetica
70
71 ----program is now GNU UnRTF----
72 0.18.0: updates to comments, documentation to reflect inclusion in GNU suite.
73 0.18.1: updated manual
74
75 0.19.1: new maintainers: minor fixes to prevent segmentation violations;
76 further special character code; minor cleanups
77 0.19.2: updated some files;
78 0.19.3: fix bug #225592: null pointer param in convert.c
79 0.19.4: added unicode support
80 0.19.5: removed defective PS support and non-free text files
81 more unicode support
82 improved symbol font support - no longer puts entities in latex output
83 Bug#266020 concerning double slashes fixed
84 Bug#269054 concerning Doctype fixed
85 Bug#287038 security breach fixed
86 (thanks to Joey Hess <joeyh@debian.org>)
87 0.19.6: fix some latex problems
88 0.19.7: updated FSF address
89 0.19.8: minor fixes
90 0.19.9: included verbose mode
91 0.20.0: new build system by Claudio Fontana <claudio@gnu.org>
92 fixed creation date spelling and added support for accented characters
93 in titles from Laurent Monin
94 0.20.1: minor fix in convert.c for Solaris System
95 0.20.2: minor fix to unterminated comment output, added attr_get_param()
96 0.20.3: Greek font support added, fix to UTF character processing
97 0.20.4: nopict mode bug fixes
98 0.20.5: added --noremap option, some html entity corrections, updated to GPL v3
99
100 Note:
101 LaTeX is a system of macros for TeX by Leslie Lamport.
0 0.21.8:
1 Changed bug reporting in unrtf.1
2 Test file for newly supported EMF image type.
3 Fixed all -Wall compilation warning
4 Bogus test in op_translate_buffer() caused error messages and data
5 truncation
6 cmd_maybe_ignore(): test next command presence in the cmd hashes
7 instead of listing locally the commands that should be processed
8 Fix unrtf looping when closing any underlining except the basic (ul)
9 one
10 Open Picture files in wb mode instead of w for Windows portability.
11 Fixes bug #21274
12 html output doctype value needs to be quoted
13 Skip binary data after \bin command
14 Simplified shared string storage in hash.c and word.c: suppressed
15 the "index" value and replaced it by string address. Simpler
16 and faster. Other changes are making shared string refs const
17 Better processing of \pict including addition of EMF type.
18 Fix access overflow occurring while translating unicode data from
19 garbled or truncated file
20 Fix buffer access overflow caused by truncated file
21 Need to check word_string() output not NULL in cmd_maybe_ignore()
22 String equality test while searching the command table for command
23 having parameter would access byte out of allocated memory
24 and produce potentially random result. Fixes AddressSanitizer
25 error found by Hanno Boeck
26 String equality test while searching the command table for command
27 having parameter would access byte out of allocated memory
28 and produce potentially random result. Fixes AddressSanitizer
29 error found by Hanno Boeck
30 Substitute appropriate prefix-depending paths in the man page prior
31 to installing
32 Limit depth of group embedding to guard against malicious files with
33 thousands of consecutive {
34 check index before access into month_strings array
35 attr_get_param(): silence warning message in frequent and normal
36 case (Fabian Keil)
37 attrstack_drop(): Properly drop the last stack element (Fabian Keil)
38 + get rid of unused variable in attrstack_push()
39 hash_get_string(): Reject invalid indexes (author: Fabian Keil)
40 0.21.7:
41 improved creations of image files for images included in RTF files
0 # generated automatically by aclocal 1.14 -*- Autoconf -*-
0 # generated automatically by aclocal 1.13.4 -*- Autoconf -*-
11
22 # Copyright (C) 1996-2013 Free Software Foundation, Inc.
33
3131 # generated from the m4 files accompanying Automake X.Y.
3232 # (This private macro should not be called outside this file.)
3333 AC_DEFUN([AM_AUTOMAKE_VERSION],
34 [am__api_version='1.14'
34 [am__api_version='1.13'
3535 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
3636 dnl require some minimum version. Point them to the right macro.
37 m4_if([$1], [1.14], [],
37 m4_if([$1], [1.13.4], [],
3838 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
3939 ])
4040
5050 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
5151 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
5252 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
53 [AM_AUTOMAKE_VERSION([1.14])dnl
53 [AM_AUTOMAKE_VERSION([1.13.4])dnl
5454 m4_ifndef([AC_AUTOCONF_VERSION],
5555 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
5656 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
417417 # This macro actually does too much. Some checks are only needed if
418418 # your package does certain things. But this isn't really a big deal.
419419
420 dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
421 m4_define([AC_PROG_CC],
422 m4_defn([AC_PROG_CC])
423 [_AM_PROG_CC_C_O
424 ])
425
426420 # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
427421 # AM_INIT_AUTOMAKE([OPTIONS])
428422 # -----------------------------------------------
531525 AC_CONFIG_COMMANDS_PRE(dnl
532526 [m4_provide_if([_AM_COMPILER_EXEEXT],
533527 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
534
535 # POSIX will say in a future version that running "rm -f" with no argument
536 # is OK; and we want to be able to make that assumption in our Makefile
537 # recipes. So use an aggressive probe to check that the usage we want is
538 # actually supported "in the wild" to an acceptable degree.
539 # See automake bug#10828.
540 # To make any issue more visible, cause the running configure to be aborted
541 # by default if the 'rm' program in use doesn't match our expectations; the
542 # user can still override this though.
543 if rm -f && rm -fr && rm -rf; then : OK; else
544 cat >&2 <<'END'
545 Oops!
546
547 Your 'rm' program seems unable to run without file operands specified
548 on the command line, even when the '-f' option is present. This is contrary
549 to the behaviour of most rm programs out there, and not conforming with
550 the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
551
552 Please tell bug-automake@gnu.org about your system, including the value
553 of your $PATH and any error possibly output before this message. This
554 can help us improve future automake versions.
555
556 END
557 if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
558 echo 'Configuration will proceed anyway, since you have set the' >&2
559 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
560 echo >&2
561 else
562 cat >&2 <<'END'
563 Aborting the configuration process, to ensure you take notice of the issue.
564
565 You can download and install GNU coreutils to get an 'rm' implementation
566 that behaves properly: <http://www.gnu.org/software/coreutils/>.
567
568 If you want to complete the configuration process using your problematic
569 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
570 to "yes", and re-run configure.
571
572 END
573 AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
574 fi
575 fi])
528 ])
576529
577530 dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
578531 dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
579532 dnl mangled by Autoconf and run in a shell conditional statement.
580533 m4_define([_AC_COMPILER_EXEEXT],
581534 m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
535
582536
583537 # When config.status generates a header, we must update the stamp-h file.
584538 # This file resides in the same directory as the config header
797751 AC_DEFUN([_AM_IF_OPTION],
798752 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
799753
800 # Copyright (C) 1999-2013 Free Software Foundation, Inc.
801 #
802 # This file is free software; the Free Software Foundation
803 # gives unlimited permission to copy and/or distribute it,
804 # with or without modifications, as long as this notice is preserved.
805
806 # _AM_PROG_CC_C_O
807 # ---------------
808 # Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
809 # to automatically call this.
810 AC_DEFUN([_AM_PROG_CC_C_O],
811 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
812 AC_REQUIRE_AUX_FILE([compile])dnl
813 AC_LANG_PUSH([C])dnl
814 AC_CACHE_CHECK(
815 [whether $CC understands -c and -o together],
816 [am_cv_prog_cc_c_o],
817 [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
818 # Make sure it works both with $CC and with simple cc.
819 # Following AC_PROG_CC_C_O, we do the test twice because some
820 # compilers refuse to overwrite an existing .o file with -o,
821 # though they will create one.
822 am_cv_prog_cc_c_o=yes
823 for am_i in 1 2; do
824 if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
825 && test -f conftest2.$ac_objext; then
826 : OK
827 else
828 am_cv_prog_cc_c_o=no
829 break
830 fi
831 done
832 rm -f core conftest*
833 unset am_i])
834 if test "$am_cv_prog_cc_c_o" != yes; then
835 # Losing compiler, so override with the script.
836 # FIXME: It is wrong to rewrite CC.
837 # But if we don't then we get into trouble of one sort or another.
838 # A longer-term fix would be to have automake use am__CC in this case,
839 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
840 CC="$am_aux_dir/compile $CC"
841 fi
842 AC_LANG_POP([C])])
843
844 # For backward compatibility.
845 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
846
847 # Copyright (C) 2001-2013 Free Software Foundation, Inc.
848 #
849 # This file is free software; the Free Software Foundation
850 # gives unlimited permission to copy and/or distribute it,
851 # with or without modifications, as long as this notice is preserved.
852
853 # AM_RUN_LOG(COMMAND)
854 # -------------------
855 # Run COMMAND, save the exit status in ac_status, and log it.
856 # (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
857 AC_DEFUN([AM_RUN_LOG],
858 [{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
859 ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
860 ac_status=$?
861 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
862 (exit $ac_status); }])
863
864754 # Check to make sure that the build environment is sane. -*- Autoconf -*-
865755
866756 # Copyright (C) 1996-2013 Free Software Foundation, Inc.
+0
-375
charmaps/Makefile.in less more
0 # Makefile.in generated by automake 1.11.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
4 # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
5 # Inc.
6 # This Makefile.in is free software; the Free Software Foundation
7 # gives unlimited permission to copy and/or distribute it,
8 # with or without modifications, as long as this notice is preserved.
9
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
12 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
13 # PARTICULAR PURPOSE.
14
15 @SET_MAKE@
16
17 VPATH = @srcdir@
18 pkgdatadir = $(datadir)/@PACKAGE@
19 pkgincludedir = $(includedir)/@PACKAGE@
20 pkglibdir = $(libdir)/@PACKAGE@
21 pkglibexecdir = $(libexecdir)/@PACKAGE@
22 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
23 install_sh_DATA = $(install_sh) -c -m 644
24 install_sh_PROGRAM = $(install_sh) -c
25 install_sh_SCRIPT = $(install_sh) -c
26 INSTALL_HEADER = $(INSTALL_DATA)
27 transform = $(program_transform_name)
28 NORMAL_INSTALL = :
29 PRE_INSTALL = :
30 POST_INSTALL = :
31 NORMAL_UNINSTALL = :
32 PRE_UNINSTALL = :
33 POST_UNINSTALL = :
34 build_triplet = @build@
35 host_triplet = @host@
36 subdir = charmaps
37 DIST_COMMON = $(dist_outputs_DATA) $(srcdir)/Makefile.am \
38 $(srcdir)/Makefile.in
39 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
40 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
41 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
42 $(ACLOCAL_M4)
43 mkinstalldirs = $(install_sh) -d
44 CONFIG_HEADER = $(top_builddir)/config.h
45 CONFIG_CLEAN_FILES =
46 CONFIG_CLEAN_VPATH_FILES =
47 SOURCES =
48 DIST_SOURCES =
49 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
50 am__vpath_adj = case $$p in \
51 $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
52 *) f=$$p;; \
53 esac;
54 am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
55 am__install_max = 40
56 am__nobase_strip_setup = \
57 srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
58 am__nobase_strip = \
59 for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
60 am__nobase_list = $(am__nobase_strip_setup); \
61 for p in $$list; do echo "$$p $$p"; done | \
62 sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
63 $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
64 if (++n[$$2] == $(am__install_max)) \
65 { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
66 END { for (dir in files) print dir, files[dir] }'
67 am__base_list = \
68 sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
69 sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
70 am__installdirs = "$(DESTDIR)$(outputsdir)"
71 DATA = $(dist_outputs_DATA)
72 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
73 ACLOCAL = @ACLOCAL@
74 AMTAR = @AMTAR@
75 AUTOCONF = @AUTOCONF@
76 AUTOHEADER = @AUTOHEADER@
77 AUTOMAKE = @AUTOMAKE@
78 AWK = @AWK@
79 CC = @CC@
80 CCDEPMODE = @CCDEPMODE@
81 CFLAGS = @CFLAGS@
82 CPP = @CPP@
83 CPPFLAGS = @CPPFLAGS@
84 CYGPATH_W = @CYGPATH_W@
85 DEFS = @DEFS@
86 DEPDIR = @DEPDIR@
87 ECHO_C = @ECHO_C@
88 ECHO_N = @ECHO_N@
89 ECHO_T = @ECHO_T@
90 EGREP = @EGREP@
91 EXEEXT = @EXEEXT@
92 GREP = @GREP@
93 INSTALL = @INSTALL@
94 INSTALL_DATA = @INSTALL_DATA@
95 INSTALL_PROGRAM = @INSTALL_PROGRAM@
96 INSTALL_SCRIPT = @INSTALL_SCRIPT@
97 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
98 LDFLAGS = @LDFLAGS@
99 LIBOBJS = @LIBOBJS@
100 LIBS = @LIBS@
101 LTLIBOBJS = @LTLIBOBJS@
102 MAINT = @MAINT@
103 MAKEINFO = @MAKEINFO@
104 MKDIR_P = @MKDIR_P@
105 OBJEXT = @OBJEXT@
106 PACKAGE = @PACKAGE@
107 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
108 PACKAGE_NAME = @PACKAGE_NAME@
109 PACKAGE_STRING = @PACKAGE_STRING@
110 PACKAGE_TARNAME = @PACKAGE_TARNAME@
111 PACKAGE_VERSION = @PACKAGE_VERSION@
112 PATH_SEPARATOR = @PATH_SEPARATOR@
113 SET_MAKE = @SET_MAKE@
114 SHELL = @SHELL@
115 STRIP = @STRIP@
116 VERSION = @VERSION@
117 abs_builddir = @abs_builddir@
118 abs_srcdir = @abs_srcdir@
119 abs_top_builddir = @abs_top_builddir@
120 abs_top_srcdir = @abs_top_srcdir@
121 ac_ct_CC = @ac_ct_CC@
122 am__include = @am__include@
123 am__leading_dot = @am__leading_dot@
124 am__quote = @am__quote@
125 am__tar = @am__tar@
126 am__untar = @am__untar@
127 bindir = @bindir@
128 build = @build@
129 build_alias = @build_alias@
130 build_cpu = @build_cpu@
131 build_os = @build_os@
132 build_vendor = @build_vendor@
133 builddir = @builddir@
134 datadir = @datadir@
135 datarootdir = @datarootdir@
136 docdir = @docdir@
137 dvidir = @dvidir@
138 exec_prefix = @exec_prefix@
139 host = @host@
140 host_alias = @host_alias@
141 host_cpu = @host_cpu@
142 host_os = @host_os@
143 host_vendor = @host_vendor@
144 htmldir = @htmldir@
145 includedir = @includedir@
146 infodir = @infodir@
147 install_sh = @install_sh@
148 libdir = @libdir@
149 libexecdir = @libexecdir@
150 localedir = @localedir@
151 localstatedir = @localstatedir@
152 mandir = @mandir@
153 mkdir_p = @mkdir_p@
154 oldincludedir = @oldincludedir@
155 pdfdir = @pdfdir@
156 prefix = @prefix@
157 program_transform_name = @program_transform_name@
158 psdir = @psdir@
159 sbindir = @sbindir@
160 sharedstatedir = @sharedstatedir@
161 srcdir = @srcdir@
162 sysconfdir = @sysconfdir@
163 target_alias = @target_alias@
164 top_build_prefix = @top_build_prefix@
165 top_builddir = @top_builddir@
166 top_srcdir = @top_srcdir@
167 outputsdir = ${libdir}/${PACKAGE}
168 dist_outputs_DATA = SYMBOL.charmap
169 all: all-am
170
171 .SUFFIXES:
172 $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
173 @for dep in $?; do \
174 case '$(am__configure_deps)' in \
175 *$$dep*) \
176 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
177 && { if test -f $@; then exit 0; else break; fi; }; \
178 exit 1;; \
179 esac; \
180 done; \
181 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu charmaps/Makefile'; \
182 $(am__cd) $(top_srcdir) && \
183 $(AUTOMAKE) --gnu charmaps/Makefile
184 .PRECIOUS: Makefile
185 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
186 @case '$?' in \
187 *config.status*) \
188 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
189 *) \
190 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
191 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
192 esac;
193
194 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
195 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
196
197 $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
198 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
199 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
200 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
201 $(am__aclocal_m4_deps):
202 install-dist_outputsDATA: $(dist_outputs_DATA)
203 @$(NORMAL_INSTALL)
204 test -z "$(outputsdir)" || $(MKDIR_P) "$(DESTDIR)$(outputsdir)"
205 @list='$(dist_outputs_DATA)'; test -n "$(outputsdir)" || list=; \
206 for p in $$list; do \
207 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
208 echo "$$d$$p"; \
209 done | $(am__base_list) | \
210 while read files; do \
211 echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(outputsdir)'"; \
212 $(INSTALL_DATA) $$files "$(DESTDIR)$(outputsdir)" || exit $$?; \
213 done
214
215 uninstall-dist_outputsDATA:
216 @$(NORMAL_UNINSTALL)
217 @list='$(dist_outputs_DATA)'; test -n "$(outputsdir)" || list=; \
218 files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
219 test -n "$$files" || exit 0; \
220 echo " ( cd '$(DESTDIR)$(outputsdir)' && rm -f" $$files ")"; \
221 cd "$(DESTDIR)$(outputsdir)" && rm -f $$files
222 tags: TAGS
223 TAGS:
224
225 ctags: CTAGS
226 CTAGS:
227
228
229 distdir: $(DISTFILES)
230 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
231 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
232 list='$(DISTFILES)'; \
233 dist_files=`for file in $$list; do echo $$file; done | \
234 sed -e "s|^$$srcdirstrip/||;t" \
235 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
236 case $$dist_files in \
237 */*) $(MKDIR_P) `echo "$$dist_files" | \
238 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
239 sort -u` ;; \
240 esac; \
241 for file in $$dist_files; do \
242 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
243 if test -d $$d/$$file; then \
244 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
245 if test -d "$(distdir)/$$file"; then \
246 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
247 fi; \
248 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
249 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
250 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
251 fi; \
252 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
253 else \
254 test -f "$(distdir)/$$file" \
255 || cp -p $$d/$$file "$(distdir)/$$file" \
256 || exit 1; \
257 fi; \
258 done
259 check-am: all-am
260 check: check-am
261 all-am: Makefile $(DATA)
262 installdirs:
263 for dir in "$(DESTDIR)$(outputsdir)"; do \
264 test -z "$$dir" || $(MKDIR_P) "$$dir"; \
265 done
266 install: install-am
267 install-exec: install-exec-am
268 install-data: install-data-am
269 uninstall: uninstall-am
270
271 install-am: all-am
272 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
273
274 installcheck: installcheck-am
275 install-strip:
276 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
277 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
278 `test -z '$(STRIP)' || \
279 echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
280 mostlyclean-generic:
281
282 clean-generic:
283
284 distclean-generic:
285 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
286 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
287
288 maintainer-clean-generic:
289 @echo "This command is intended for maintainers to use"
290 @echo "it deletes files that may require special tools to rebuild."
291 clean: clean-am
292
293 clean-am: clean-generic mostlyclean-am
294
295 distclean: distclean-am
296 -rm -f Makefile
297 distclean-am: clean-am distclean-generic
298
299 dvi: dvi-am
300
301 dvi-am:
302
303 html: html-am
304
305 html-am:
306
307 info: info-am
308
309 info-am:
310
311 install-data-am: install-dist_outputsDATA
312
313 install-dvi: install-dvi-am
314
315 install-dvi-am:
316
317 install-exec-am:
318
319 install-html: install-html-am
320
321 install-html-am:
322
323 install-info: install-info-am
324
325 install-info-am:
326
327 install-man:
328
329 install-pdf: install-pdf-am
330
331 install-pdf-am:
332
333 install-ps: install-ps-am
334
335 install-ps-am:
336
337 installcheck-am:
338
339 maintainer-clean: maintainer-clean-am
340 -rm -f Makefile
341 maintainer-clean-am: distclean-am maintainer-clean-generic
342
343 mostlyclean: mostlyclean-am
344
345 mostlyclean-am: mostlyclean-generic
346
347 pdf: pdf-am
348
349 pdf-am:
350
351 ps: ps-am
352
353 ps-am:
354
355 uninstall-am: uninstall-dist_outputsDATA
356
357 .MAKE: install-am install-strip
358
359 .PHONY: all all-am check check-am clean clean-generic distclean \
360 distclean-generic distdir dvi dvi-am html html-am info info-am \
361 install install-am install-data install-data-am \
362 install-dist_outputsDATA install-dvi install-dvi-am \
363 install-exec install-exec-am install-html install-html-am \
364 install-info install-info-am install-man install-pdf \
365 install-pdf-am install-ps install-ps-am install-strip \
366 installcheck installcheck-am installdirs maintainer-clean \
367 maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
368 pdf-am ps ps-am uninstall uninstall-am \
369 uninstall-dist_outputsDATA
370
371
372 # Tell versions [3.59,3.63) of GNU make to not export all variables.
373 # Otherwise a system limit (for SysV at least) may be exceeded.
374 .NOEXPORT:
+0
-257
charmaps/SYMBOL.charmap.old less more
0 <U0000> /x00 NULL
1 <U0001> /x01 START OF HEADING
2 <U0002> /x02 START OF TEXT
3 <U0003> /x03 END OF TEXT
4 <U0004> /x04 END OF TRANSMISSION
5 <U0005> /x05 ENQUIRY
6 <U0006> /x06 ACKNOWLEDGE
7 <U0007> /x07 BELL
8 <U0008> /x08 BACKSPACE
9 <U0009> /x09 HORIZONTAL TABULATION
10 <U000A> /x0a LINE FEED
11 <U000B> /x0b VERTICAL TABULATION
12 <U000C> /x0c FORM FEED
13 <U000D> /x0d CARRIAGE RETURN
14 <U000E> /x0e SHIFT OUT
15 <U000F> /x0f SHIFT IN
16 <U0010> /x10 DATA LINK ESCAPE
17 <U0011> /x11 DEVICE CONTROL ONE
18 <U0012> /x12 DEVICE CONTROL TWO
19 <U0013> /x13 DEVICE CONTROL THREE
20 <U0014> /x14 DEVICE CONTROL FOUR
21 <U0015> /x15 NEGATIVE ACKNOWLEDGE
22 <U0016> /x16 SYNCHRONOUS IDLE
23 <U0017> /x17 END OF TRANSMISSION BLOCK
24 <U0018> /x18 CANCEL
25 <U0019> /x19 END OF MEDIUM
26 <U001A> /x1a SUBSTITUTE
27 <U001B> /x1b ESCAPE
28 <U001C> /x1c FILE SEPARATOR
29 <U001D> /x1d GROUP SEPARATOR
30 <U001E> /x1e RECORD SEPARATOR
31 <U001F> /x1f UNIT SEPARATOR
32 <U0020> /x20 SPACE
33 <U0021> /x21 EXCLAMATION MARK
34 <U0022> /x22 QUOTATION MARK
35 <U0023> /x23 NUMBER SIGN
36 <U0024> /x24 DOLLAR SIGN
37 <U0025> /x25 PERCENT SIGN
38 <U0026> /x26 AMPERSAND
39 <U0027> /x27 APOSTROPHE
40 <U0028> /x28 LEFT PARENTHESIS
41 <U0029> /x29 RIGHT PARENTHESIS
42 <U002A> /x2a ASTERISK
43 <U002B> /x2b PLUS SIGN
44 <U002C> /x2c COMMA
45 <U002D> /x2d HYPHEN-MINUS
46 <U002E> /x2e FULL STOP
47 <U002F> /x2f SOLIDUS
48 <U0030> /x30 DIGIT ZERO
49 <U0031> /x31 DIGIT ONE
50 <U0032> /x32 DIGIT TWO
51 <U0033> /x33 DIGIT THREE
52 <U0034> /x34 DIGIT FOUR
53 <U0035> /x35 DIGIT FIVE
54 <U0036> /x36 DIGIT SIX
55 <U0037> /x37 DIGIT SEVEN
56 <U0038> /x38 DIGIT EIGHT
57 <U0039> /x39 DIGIT NINE
58 <U003A> /x3a COLON
59 <U003B> /x3b SEMICOLON
60 <U003C> /x3c LESS-THAN SIGN
61 <U003D> /x3d EQUALS SIGN
62 <U003E> /x3e GREATER-THAN SIGN
63 <U003F> /x3f QUESTION MARK
64 <U2245> /x40 APPROXIMATELY EQUAL TO
65 <U0391> /x41 GREEK CAPITAL LETTER ALPHA
66 <U0392> /x42 GREEK CAPITAL LETTER BETA
67 <U03A7> /x43 GREEK CAPITAL LETTER CHI
68 <U0394> /x44 GREEK CAPITAL LETTER DELTA
69 <U0395> /x45 GREEK CAPITAL LETTER EPSILON
70 <U03A6> /x46 GREEK CAPITAL LETTER PHI
71 <U0393> /x47 GREEK CAPITAL LETTER GAMMA
72 <U0397> /x48 GREEK CAPITAL LETTER ETA
73 <U0399> /x49 GREEK CAPITAL LETTER IOTA
74 <U03D1> /x4a GREEK THETA SYMBOL
75 <U039A> /x4b GREEK CAPITAL LETTER KAPPA
76 <U039B> /x4c GREEK CAPITAL LETTER LAMBDA
77 <U039C> /x4d GREEK CAPITAL LETTER MU
78 <U039D> /x4e GREEK CAPITAL LETTER NU
79 <U039F> /x4f GREEK CAPITAL LETTER OMICRON
80 <U03A0> /x50 GREEK CAPITAL LETTER PI
81 <U0398> /x51 GREEK CAPITAL LETTER THETA
82 <U03A1> /x52 GREEK CAPITAL LETTER RHO
83 <U03A3> /x53 GREEK CAPITAL LETTER SIGMA
84 <U03A4> /x54 GREEK CAPITAL LETTER TAU
85 <U03A5> /x55 GREEK CAPITAL LETTER UPSILON
86 <U03C2> /x56 GREEK SMALL LETTER FINAL SIGMA
87 <U03A9> /x57 GREEK CAPITAL LETTER OMEGA
88 <U039E> /x58 GREEK CAPITAL LETTER XI
89 <U03A8> /x59 GREEK CAPITAL LETTER PSI
90 <U0396> /x5a GREEK CAPITAL LETTER ZETA
91 <U005B> /x5b LEFT SQUARE BRACKET
92 <U2234> /x5c THEREFORE
93 <U005D> /x5d RIGHT SQUARE BRACKET
94 <U22A5> /x5e UP TACK
95 <U005F> /x5f LOW LINE
96 <U203E> /x60 OVERLINE
97 <U03B1> /x61 GREEK SMALL LETTER ALPHA
98 <U03B2> /x62 GREEK SMALL LETTER BETA
99 <U03C7> /x63 GREEK SMALL LETTER CHI
100 <U03B4> /x64 GREEK SMALL LETTER DELTA
101 <U03B5> /x65 GREEK SMALL LETTER EPSILON
102 <U03C6> /x66 GREEK SMALL LETTER PHI
103 <U03B3> /x67 GREEK SMALL LETTER GAMMA
104 <U03B7> /x68 GREEK SMALL LETTER ETA
105 <U03B9> /x69 GREEK SMALL LETTER IOTA
106 <U0000> /x6a NULL
107 <U03BA> /x6b GREEK SMALL LETTER KAPPA
108 <U03BB> /x6c GREEK SMALL LETTER LAMBDA
109 <U03BC> /x6d GREEK SMALL LETTER MU
110 <U03BD> /x6e GREEK SMALL LETTER NU
111 <U03BF> /x6f GREEK SMALL LETTER OMICRON
112 <U03C0> /x70 GREEK SMALL LETTER PI
113 <U03B8> /x71 GREEK SMALL LETTER THETA
114 <U03C1> /x72 GREEK SMALL LETTER RHO
115 <U03C3> /x73 GREEK SMALL LETTER SIGMA
116 <U03C4> /x74 GREEK SMALL LETTER TAU
117 <U03C5> /x75 GREEK SMALL LETTER UPSILON
118 <U03D6> /x76 GREEK PI SYMBOL
119 <U03C9> /x77 GREEK SMALL LETTER OMEGA
120 <U03BE> /x78 GREEK SMALL LETTER XI
121 <U03C8> /x79 GREEK SMALL LETTER PSI
122 <U03B6> /x7a GREEK SMALL LETTER ZETA
123 <U007B> /x7b LEFT CURLY BRACKET
124 <U007C> /x7c VERTICAL LINE
125 <U007D> /x7d RIGHT CURLY BRACKET
126 <U223C> /x7e TILDE OPERATOR
127 <U0000> /x7f NULL
128 <U0000> /xc2/x80 NULL
129 <U0000> /xc2/x81 NULL
130 <U0000> /xc2/x82 NULL
131 <U0000> /xc2/x83 NULL
132 <U0000> /xc2/x84 NULL
133 <U0000> /xc2/x85 NULL
134 <U0000> /xc2/x86 NULL
135 <U0000> /xc2/x87 NULL
136 <U0000> /xc2/x88 NULL
137 <U0000> /xc2/x89 NULL
138 <U0000> /xc2/x8a NULL
139 <U0000> /xc2/x8b NULL
140 <U0000> /xc2/x8c NULL
141 <U0000> /xc2/x8d NULL
142 <U0000> /xc2/x8e NULL
143 <U0000> /xc2/x8f NULL
144 <U0000> /xc2/x90 NULL
145 <U0000> /xc2/x91 NULL
146 <U0000> /xc2/x92 NULL
147 <U0000> /xc2/x93 NULL
148 <U0000> /xc2/x94 NULL
149 <U0000> /xc2/x95 NULL
150 <U0000> /xc2/x96 NULL
151 <U0000> /xc2/x97 NULL
152 <U0000> /xc2/x98 NULL
153 <U0000> /xc2/x99 NULL
154 <U0000> /xc2/x9a NULL
155 <U0000> /xc2/x9b NULL
156 <U0000> /xc2/x9c NULL
157 <U0000> /xc2/x9d NULL
158 <U0000> /xc2/x9e NULL
159 <U0000> /xc2/x9f NULL
160 <U0000> /xc2/xa0 NULL
161 <U03D2> /xc2/xa1 GREEK UPSILON WITH HOOK SYMBOL
162 <U2032> /xc2/xa2 PRIME
163 <U2264> /xc2/xa3 LESS-THAN OR EQUAL TO
164 <U2044> /xc2/xa4 FRACTION SLASH
165 <U221E> /xc2/xa5 INFINITY
166 <U0192> /xc2/xa6 LATIN SMALL LETTER F WITH HOOK
167 <U2663> /xc2/xa7 BLACK CLUB SUIT
168 <U2666> /xc2/xa8 BLACK DIAMOND SUIT
169 <U2665> /xc2/xa9 BLACK HEART SUIT
170 <U2660> /xc2/xaa BLACK SPADE SUIT
171 <U2194> /xc2/xab LEFT RIGHT ARROW
172 <U2190> /xc2/xac LEFTWARDS ARROW
173 <U0000> /xc2/xad NULL
174 <U2192> /xc2/xae RIGHTWARDS ARROW
175 <U2193> /xc2/xaf DOWNWARDS ARROW
176 <U00B0> /xc2/xb0 DEGREE SIGN
177 <U00B1> /xc2/xb1 PLUS-MINUS SIGN
178 <U2033> /xc2/xb2 DOUBLE PRIME
179 <U2265> /xc2/xb3 GREATER-THAN OR EQUAL TO
180 <U00D7> /xc2/xb4 MULTIPLICATION SIGN
181 <U221D> /xc2/xb5 PROPORTIONAL TO
182 <U2202> /xc2/xb6 PARTIAL DIFFERENTIAL
183 <U2022> /xc2/xb7 BULLET
184 <U00F7> /xc2/xb8 DIVISION SIGN
185 <U2260> /xc2/xb9 NOT EQUAL TO
186 <U2261> /xc2/xba IDENTICAL TO
187 <U2248> /xc2/xbb ALMOST EQUAL TO
188 <U2026> /xc2/xbc HORIZONTAL ELLIPSIS
189 <U2502> /xc2/xbd BOX DRAWINGS LIGHT VERTICAL
190 <U2014> /xc2/xbe EM DASH
191 <U21B5> /xc2/xbf DOWNWARDS ARROW WITH CORNER LEFTWARDS
192 <U2135> /xc3/x80 ALEF SYMBOL
193 <U2111> /xc3/x81 BLACK-LETTER CAPITAL I
194 <U211C> /xc3/x82 BLACK-LETTER CAPITAL R
195 <U2118> /xc3/x83 SCRIPT CAPITAL P
196 <U2297> /xc3/x84 CIRCLED TIMES
197 <U2295> /xc3/x85 CIRCLED PLUS
198 <U2205> /xc3/x86 EMPTY SET
199 <U2229> /xc3/x87 INTERSECTION
200 <U222A> /xc3/x88 UNION
201 <U2283> /xc3/x89 SUPERSET OF
202 <U2287> /xc3/x8a SUPERSET OF OR EQUAL TO
203 <U2284> /xc3/x8b NOT A SUBSET OF
204 <U2282> /xc3/x8c SUBSET OF
205 <U2286> /xc3/x8d SUBSET OF OR EQUAL TO
206 <U2208> /xc3/x8e ELEMENT OF
207 <U2209> /xc3/x8f NOT AN ELEMENT OF
208 <U2220> /xc3/x90 ANGLE
209 <U2207> /xc3/x91 NABLA
210 <U00AE> /xc3/x92 REGISTERED SIGN
211 <U00A9> /xc3/x93 COPYRIGHT SIGN
212 <U2122> /xc3/x94 TRADE MARK SIGN
213 <U220F> /xc3/x95 N-ARY PRODUCT
214 <U221A> /xc3/x96 SQUARE ROOT
215 <U00B7> /xc3/x97 MIDDLE DOT
216 <U00AC> /xc3/x98 NOT SIGN
217 <U2227> /xc3/x99 LOGICAL AND
218 <U2228> /xc3/x9a LOGICAL OR
219 <U21D4> /xc3/x9b LEFT RIGHT DOUBLE ARROW
220 <U21D0> /xc3/x9c LEFTWARDS DOUBLE ARROW
221 <U21D1> /xc3/x9d UPWARDS DOUBLE ARROW
222 <U21D2> /xc3/x9e RIGHTWARDS DOUBLE ARROW
223 <U21D3> /xc3/x9f DOWNWARDS DOUBLE ARROW
224 <U25CA> /xc3/xa0 LOZENGE
225 <U2329> /xc3/xa1 LEFT-POINTING ANGLE BRACKET
226 <U00AE> /xc3/xa2 REGISTERED SIGN
227 <U00A9> /xc3/xa3 COPYRIGHT SIGN
228 <U2122> /xc3/xa4 TRADE MARK SIGN
229 <U2211> /xc3/xa5 N-ARY SUMMATION
230 <U00E5> /xc3/xa6 NULL
231 <U00E6> /xc3/xa7 NULL
232 <U00E7> /xc3/xa8 NULL
233 <U2308> /xc3/xa9 LEFT CEILING
234 <U007C> /xc3/xaa VERTICAL LINE
235 <U230A> /xc3/xab LEFT FLOOR
236 <U0000> /xc3/xac NULL
237 <U0000> /xc3/xad NULL
238 <U0000> /xc3/xae NULL
239 <U007C> /xc3/xaf VERTICAL LINE
240 <U00F0> /xc3/xb0 LATIN SMALL LETTER ETH
241 <U232A> /xc3/xb1 RIGHT-POINTING ANGLE BRACKET
242 <U222B> /xc3/xb2 INTEGRAL
243 <U0000> /xc3/xb3 NULL
244 <U0000> /xc3/xb4 NULL
245 <U0000> /xc3/xb5 NULL
246 <U0000> /xc3/xb6 NULL
247 <U0000> /xc3/xb7 NULL
248 <U0000> /xc3/xb8 NULL
249 <U2309> /xc3/xb9 RIGHT CEILING
250 <U007C> /xc3/xba VERTICAL LINE
251 <U230B> /xc3/xbb RIGHT FLOOR
252 <U0000> /xc3/xbc NULL
253 <U0000> /xc3/xbd NULL
254 <U0000> /xc3/xbe NULL
255 <U0000> /xc3/xbf NULL
256
+0
-347
config/compile less more
0 #! /bin/sh
1 # Wrapper for compilers which do not understand '-c -o'.
2
3 scriptversion=2012-10-14.11; # UTC
4
5 # Copyright (C) 1999-2013 Free Software Foundation, Inc.
6 # Written by Tom Tromey <tromey@cygnus.com>.
7 #
8 # This program is free software; you can redistribute it and/or modify
9 # it under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 2, or (at your option)
11 # any later version.
12 #
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
17 #
18 # You should have received a copy of the GNU General Public License
19 # along with this program. If not, see <http://www.gnu.org/licenses/>.
20
21 # As a special exception to the GNU General Public License, if you
22 # distribute this file as part of a program that contains a
23 # configuration script generated by Autoconf, you may include it under
24 # the same distribution terms that you use for the rest of that program.
25
26 # This file is maintained in Automake, please report
27 # bugs to <bug-automake@gnu.org> or send patches to
28 # <automake-patches@gnu.org>.
29
30 nl='
31 '
32
33 # We need space, tab and new line, in precisely that order. Quoting is
34 # there to prevent tools from complaining about whitespace usage.
35 IFS=" "" $nl"
36
37 file_conv=
38
39 # func_file_conv build_file lazy
40 # Convert a $build file to $host form and store it in $file
41 # Currently only supports Windows hosts. If the determined conversion
42 # type is listed in (the comma separated) LAZY, no conversion will
43 # take place.
44 func_file_conv ()
45 {
46 file=$1
47 case $file in
48 / | /[!/]*) # absolute file, and not a UNC file
49 if test -z "$file_conv"; then
50 # lazily determine how to convert abs files
51 case `uname -s` in
52 MINGW*)
53 file_conv=mingw
54 ;;
55 CYGWIN*)
56 file_conv=cygwin
57 ;;
58 *)
59 file_conv=wine
60 ;;
61 esac
62 fi
63 case $file_conv/,$2, in
64 *,$file_conv,*)
65 ;;
66 mingw/*)
67 file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
68 ;;
69 cygwin/*)
70 file=`cygpath -m "$file" || echo "$file"`
71 ;;
72 wine/*)
73 file=`winepath -w "$file" || echo "$file"`
74 ;;
75 esac
76 ;;
77 esac
78 }
79
80 # func_cl_dashL linkdir
81 # Make cl look for libraries in LINKDIR
82 func_cl_dashL ()
83 {
84 func_file_conv "$1"
85 if test -z "$lib_path"; then
86 lib_path=$file
87 else
88 lib_path="$lib_path;$file"
89 fi
90 linker_opts="$linker_opts -LIBPATH:$file"
91 }
92
93 # func_cl_dashl library
94 # Do a library search-path lookup for cl
95 func_cl_dashl ()
96 {
97 lib=$1
98 found=no
99 save_IFS=$IFS
100 IFS=';'
101 for dir in $lib_path $LIB
102 do
103 IFS=$save_IFS
104 if $shared && test -f "$dir/$lib.dll.lib"; then
105 found=yes
106 lib=$dir/$lib.dll.lib
107 break
108 fi
109 if test -f "$dir/$lib.lib"; then
110 found=yes
111 lib=$dir/$lib.lib
112 break
113 fi
114 if test -f "$dir/lib$lib.a"; then
115 found=yes
116 lib=$dir/lib$lib.a
117 break
118 fi
119 done
120 IFS=$save_IFS
121
122 if test "$found" != yes; then
123 lib=$lib.lib
124 fi
125 }
126
127 # func_cl_wrapper cl arg...
128 # Adjust compile command to suit cl
129 func_cl_wrapper ()
130 {
131 # Assume a capable shell
132 lib_path=
133 shared=:
134 linker_opts=
135 for arg
136 do
137 if test -n "$eat"; then
138 eat=
139 else
140 case $1 in
141 -o)
142 # configure might choose to run compile as 'compile cc -o foo foo.c'.
143 eat=1
144 case $2 in
145 *.o | *.[oO][bB][jJ])
146 func_file_conv "$2"
147 set x "$@" -Fo"$file"
148 shift
149 ;;
150 *)
151 func_file_conv "$2"
152 set x "$@" -Fe"$file"
153 shift
154 ;;
155 esac
156 ;;
157 -I)
158 eat=1
159 func_file_conv "$2" mingw
160 set x "$@" -I"$file"
161 shift
162 ;;
163 -I*)
164 func_file_conv "${1#-I}" mingw
165 set x "$@" -I"$file"
166 shift
167 ;;
168 -l)
169 eat=1
170 func_cl_dashl "$2"
171 set x "$@" "$lib"
172 shift
173 ;;
174 -l*)
175 func_cl_dashl "${1#-l}"
176 set x "$@" "$lib"
177 shift
178 ;;
179 -L)
180 eat=1
181 func_cl_dashL "$2"
182 ;;
183 -L*)
184 func_cl_dashL "${1#-L}"
185 ;;
186 -static)
187 shared=false
188 ;;
189 -Wl,*)
190 arg=${1#-Wl,}
191 save_ifs="$IFS"; IFS=','
192 for flag in $arg; do
193 IFS="$save_ifs"
194 linker_opts="$linker_opts $flag"
195 done
196 IFS="$save_ifs"
197 ;;
198 -Xlinker)
199 eat=1
200 linker_opts="$linker_opts $2"
201 ;;
202 -*)
203 set x "$@" "$1"
204 shift
205 ;;
206 *.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
207 func_file_conv "$1"
208 set x "$@" -Tp"$file"
209 shift
210 ;;
211 *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
212 func_file_conv "$1" mingw
213 set x "$@" "$file"
214 shift
215 ;;
216 *)
217 set x "$@" "$1"
218 shift
219 ;;
220 esac
221 fi
222 shift
223 done
224 if test -n "$linker_opts"; then
225 linker_opts="-link$linker_opts"
226 fi
227 exec "$@" $linker_opts
228 exit 1
229 }
230
231 eat=
232
233 case $1 in
234 '')
235 echo "$0: No command. Try '$0 --help' for more information." 1>&2
236 exit 1;
237 ;;
238 -h | --h*)
239 cat <<\EOF
240 Usage: compile [--help] [--version] PROGRAM [ARGS]
241
242 Wrapper for compilers which do not understand '-c -o'.
243 Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
244 arguments, and rename the output as expected.
245
246 If you are trying to build a whole package this is not the
247 right script to run: please start by reading the file 'INSTALL'.
248
249 Report bugs to <bug-automake@gnu.org>.
250 EOF
251 exit $?
252 ;;
253 -v | --v*)
254 echo "compile $scriptversion"
255 exit $?
256 ;;
257 cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
258 func_cl_wrapper "$@" # Doesn't return...
259 ;;
260 esac
261
262 ofile=
263 cfile=
264
265 for arg
266 do
267 if test -n "$eat"; then
268 eat=
269 else
270 case $1 in
271 -o)
272 # configure might choose to run compile as 'compile cc -o foo foo.c'.
273 # So we strip '-o arg' only if arg is an object.
274 eat=1
275 case $2 in
276 *.o | *.obj)
277 ofile=$2
278 ;;
279 *)
280 set x "$@" -o "$2"
281 shift
282 ;;
283 esac
284 ;;
285 *.c)
286 cfile=$1
287 set x "$@" "$1"
288 shift
289 ;;
290 *)
291 set x "$@" "$1"
292 shift
293 ;;
294 esac
295 fi
296 shift
297 done
298
299 if test -z "$ofile" || test -z "$cfile"; then
300 # If no '-o' option was seen then we might have been invoked from a
301 # pattern rule where we don't need one. That is ok -- this is a
302 # normal compilation that the losing compiler can handle. If no
303 # '.c' file was seen then we are probably linking. That is also
304 # ok.
305 exec "$@"
306 fi
307
308 # Name of file we expect compiler to create.
309 cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
310
311 # Create the lock directory.
312 # Note: use '[/\\:.-]' here to ensure that we don't use the same name
313 # that we are using for the .o file. Also, base the name on the expected
314 # object file name, since that is what matters with a parallel build.
315 lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
316 while true; do
317 if mkdir "$lockdir" >/dev/null 2>&1; then
318 break
319 fi
320 sleep 1
321 done
322 # FIXME: race condition here if user kills between mkdir and trap.
323 trap "rmdir '$lockdir'; exit 1" 1 2 15
324
325 # Run the compile.
326 "$@"
327 ret=$?
328
329 if test -f "$cofile"; then
330 test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
331 elif test -f "${cofile}bj"; then
332 test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
333 fi
334
335 rmdir "$lockdir"
336 exit $ret
337
338 # Local Variables:
339 # mode: shell-script
340 # sh-indentation: 2
341 # eval: (add-hook 'write-file-hooks 'time-stamp)
342 # time-stamp-start: "scriptversion="
343 # time-stamp-format: "%:y-%02m-%02d.%02H"
344 # time-stamp-time-zone: "UTC"
345 # time-stamp-end: "; # UTC"
346 # End:
+0
-1558
config/config.guess less more
0 #! /bin/sh
1 # Attempt to guess a canonical system name.
2 # Copyright 1992-2013 Free Software Foundation, Inc.
3
4 timestamp='2013-06-10'
5
6 # This file is free software; you can redistribute it and/or modify it
7 # under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 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, but
12 # WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 # 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, see <http://www.gnu.org/licenses/>.
18 #
19 # As a special exception to the GNU General Public License, if you
20 # distribute this file as part of a program that contains a
21 # configuration script generated by Autoconf, you may include it under
22 # the same distribution terms that you use for the rest of that
23 # program. This Exception is an additional permission under section 7
24 # of the GNU General Public License, version 3 ("GPLv3").
25 #
26 # Originally written by Per Bothner.
27 #
28 # You can get the latest version of this script from:
29 # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
30 #
31 # Please send patches with a ChangeLog entry to config-patches@gnu.org.
32
33
34 me=`echo "$0" | sed -e 's,.*/,,'`
35
36 usage="\
37 Usage: $0 [OPTION]
38
39 Output the configuration name of the system \`$me' is run on.
40
41 Operation modes:
42 -h, --help print this help, then exit
43 -t, --time-stamp print date of last modification, then exit
44 -v, --version print version number, then exit
45
46 Report bugs and patches to <config-patches@gnu.org>."
47
48 version="\
49 GNU config.guess ($timestamp)
50
51 Originally written by Per Bothner.
52 Copyright 1992-2013 Free Software Foundation, Inc.
53
54 This is free software; see the source for copying conditions. There is NO
55 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
56
57 help="
58 Try \`$me --help' for more information."
59
60 # Parse command line
61 while test $# -gt 0 ; do
62 case $1 in
63 --time-stamp | --time* | -t )
64 echo "$timestamp" ; exit ;;
65 --version | -v )
66 echo "$version" ; exit ;;
67 --help | --h* | -h )
68 echo "$usage"; exit ;;
69 -- ) # Stop option processing
70 shift; break ;;
71 - ) # Use stdin as input.
72 break ;;
73 -* )
74 echo "$me: invalid option $1$help" >&2
75 exit 1 ;;
76 * )
77 break ;;
78 esac
79 done
80
81 if test $# != 0; then
82 echo "$me: too many arguments$help" >&2
83 exit 1
84 fi
85
86 trap 'exit 1' 1 2 15
87
88 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
89 # compiler to aid in system detection is discouraged as it requires
90 # temporary files to be created and, as you can see below, it is a
91 # headache to deal with in a portable fashion.
92
93 # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
94 # use `HOST_CC' if defined, but it is deprecated.
95
96 # Portable tmp directory creation inspired by the Autoconf team.
97
98 set_cc_for_build='
99 trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
100 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
101 : ${TMPDIR=/tmp} ;
102 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
103 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
104 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
105 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
106 dummy=$tmp/dummy ;
107 tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
108 case $CC_FOR_BUILD,$HOST_CC,$CC in
109 ,,) echo "int x;" > $dummy.c ;
110 for c in cc gcc c89 c99 ; do
111 if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
112 CC_FOR_BUILD="$c"; break ;
113 fi ;
114 done ;
115 if test x"$CC_FOR_BUILD" = x ; then
116 CC_FOR_BUILD=no_compiler_found ;
117 fi
118 ;;
119 ,,*) CC_FOR_BUILD=$CC ;;
120 ,*,*) CC_FOR_BUILD=$HOST_CC ;;
121 esac ; set_cc_for_build= ;'
122
123 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
124 # (ghazi@noc.rutgers.edu 1994-08-24)
125 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
126 PATH=$PATH:/.attbin ; export PATH
127 fi
128
129 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
130 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
131 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
132 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
133
134 case "${UNAME_SYSTEM}" in
135 Linux|GNU|GNU/*)
136 # If the system lacks a compiler, then just pick glibc.
137 # We could probably try harder.
138 LIBC=gnu
139
140 eval $set_cc_for_build
141 cat <<-EOF > $dummy.c
142 #include <features.h>
143 #if defined(__UCLIBC__)
144 LIBC=uclibc
145 #elif defined(__dietlibc__)
146 LIBC=dietlibc
147 #else
148 LIBC=gnu
149 #endif
150 EOF
151 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
152 ;;
153 esac
154
155 # Note: order is significant - the case branches are not exclusive.
156
157 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
158 *:NetBSD:*:*)
159 # NetBSD (nbsd) targets should (where applicable) match one or
160 # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
161 # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
162 # switched to ELF, *-*-netbsd* would select the old
163 # object file format. This provides both forward
164 # compatibility and a consistent mechanism for selecting the
165 # object file format.
166 #
167 # Note: NetBSD doesn't particularly care about the vendor
168 # portion of the name. We always set it to "unknown".
169 sysctl="sysctl -n hw.machine_arch"
170 UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
171 /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
172 case "${UNAME_MACHINE_ARCH}" in
173 armeb) machine=armeb-unknown ;;
174 arm*) machine=arm-unknown ;;
175 sh3el) machine=shl-unknown ;;
176 sh3eb) machine=sh-unknown ;;
177 sh5el) machine=sh5le-unknown ;;
178 *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
179 esac
180 # The Operating System including object format, if it has switched
181 # to ELF recently, or will in the future.
182 case "${UNAME_MACHINE_ARCH}" in
183 arm*|i386|m68k|ns32k|sh3*|sparc|vax)
184 eval $set_cc_for_build
185 if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
186 | grep -q __ELF__
187 then
188 # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
189 # Return netbsd for either. FIX?
190 os=netbsd
191 else
192 os=netbsdelf
193 fi
194 ;;
195 *)
196 os=netbsd
197 ;;
198 esac
199 # The OS release
200 # Debian GNU/NetBSD machines have a different userland, and
201 # thus, need a distinct triplet. However, they do not need
202 # kernel version information, so it can be replaced with a
203 # suitable tag, in the style of linux-gnu.
204 case "${UNAME_VERSION}" in
205 Debian*)
206 release='-gnu'
207 ;;
208 *)
209 release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
210 ;;
211 esac
212 # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
213 # contains redundant information, the shorter form:
214 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
215 echo "${machine}-${os}${release}"
216 exit ;;
217 *:Bitrig:*:*)
218 UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
219 echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
220 exit ;;
221 *:OpenBSD:*:*)
222 UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
223 echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
224 exit ;;
225 *:ekkoBSD:*:*)
226 echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
227 exit ;;
228 *:SolidBSD:*:*)
229 echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
230 exit ;;
231 macppc:MirBSD:*:*)
232 echo powerpc-unknown-mirbsd${UNAME_RELEASE}
233 exit ;;
234 *:MirBSD:*:*)
235 echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
236 exit ;;
237 alpha:OSF1:*:*)
238 case $UNAME_RELEASE in
239 *4.0)
240 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
241 ;;
242 *5.*)
243 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
244 ;;
245 esac
246 # According to Compaq, /usr/sbin/psrinfo has been available on
247 # OSF/1 and Tru64 systems produced since 1995. I hope that
248 # covers most systems running today. This code pipes the CPU
249 # types through head -n 1, so we only detect the type of CPU 0.
250 ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
251 case "$ALPHA_CPU_TYPE" in
252 "EV4 (21064)")
253 UNAME_MACHINE="alpha" ;;
254 "EV4.5 (21064)")
255 UNAME_MACHINE="alpha" ;;
256 "LCA4 (21066/21068)")
257 UNAME_MACHINE="alpha" ;;
258 "EV5 (21164)")
259 UNAME_MACHINE="alphaev5" ;;
260 "EV5.6 (21164A)")
261 UNAME_MACHINE="alphaev56" ;;
262 "EV5.6 (21164PC)")
263 UNAME_MACHINE="alphapca56" ;;
264 "EV5.7 (21164PC)")
265 UNAME_MACHINE="alphapca57" ;;
266 "EV6 (21264)")
267 UNAME_MACHINE="alphaev6" ;;
268 "EV6.7 (21264A)")
269 UNAME_MACHINE="alphaev67" ;;
270 "EV6.8CB (21264C)")
271 UNAME_MACHINE="alphaev68" ;;
272 "EV6.8AL (21264B)")
273 UNAME_MACHINE="alphaev68" ;;
274 "EV6.8CX (21264D)")
275 UNAME_MACHINE="alphaev68" ;;
276 "EV6.9A (21264/EV69A)")
277 UNAME_MACHINE="alphaev69" ;;
278 "EV7 (21364)")
279 UNAME_MACHINE="alphaev7" ;;
280 "EV7.9 (21364A)")
281 UNAME_MACHINE="alphaev79" ;;
282 esac
283 # A Pn.n version is a patched version.
284 # A Vn.n version is a released version.
285 # A Tn.n version is a released field test version.
286 # A Xn.n version is an unreleased experimental baselevel.
287 # 1.2 uses "1.2" for uname -r.
288 echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
289 # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
290 exitcode=$?
291 trap '' 0
292 exit $exitcode ;;
293 Alpha\ *:Windows_NT*:*)
294 # How do we know it's Interix rather than the generic POSIX subsystem?
295 # Should we change UNAME_MACHINE based on the output of uname instead
296 # of the specific Alpha model?
297 echo alpha-pc-interix
298 exit ;;
299 21064:Windows_NT:50:3)
300 echo alpha-dec-winnt3.5
301 exit ;;
302 Amiga*:UNIX_System_V:4.0:*)
303 echo m68k-unknown-sysv4
304 exit ;;
305 *:[Aa]miga[Oo][Ss]:*:*)
306 echo ${UNAME_MACHINE}-unknown-amigaos
307 exit ;;
308 *:[Mm]orph[Oo][Ss]:*:*)
309 echo ${UNAME_MACHINE}-unknown-morphos
310 exit ;;
311 *:OS/390:*:*)
312 echo i370-ibm-openedition
313 exit ;;
314 *:z/VM:*:*)
315 echo s390-ibm-zvmoe
316 exit ;;
317 *:OS400:*:*)
318 echo powerpc-ibm-os400
319 exit ;;
320 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
321 echo arm-acorn-riscix${UNAME_RELEASE}
322 exit ;;
323 arm*:riscos:*:*|arm*:RISCOS:*:*)
324 echo arm-unknown-riscos
325 exit ;;
326 SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
327 echo hppa1.1-hitachi-hiuxmpp
328 exit ;;
329 Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
330 # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
331 if test "`(/bin/universe) 2>/dev/null`" = att ; then
332 echo pyramid-pyramid-sysv3
333 else
334 echo pyramid-pyramid-bsd
335 fi
336 exit ;;
337 NILE*:*:*:dcosx)
338 echo pyramid-pyramid-svr4
339 exit ;;
340 DRS?6000:unix:4.0:6*)
341 echo sparc-icl-nx6
342 exit ;;
343 DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
344 case `/usr/bin/uname -p` in
345 sparc) echo sparc-icl-nx7; exit ;;
346 esac ;;
347 s390x:SunOS:*:*)
348 echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
349 exit ;;
350 sun4H:SunOS:5.*:*)
351 echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
352 exit ;;
353 sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
354 echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
355 exit ;;
356 i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
357 echo i386-pc-auroraux${UNAME_RELEASE}
358 exit ;;
359 i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
360 eval $set_cc_for_build
361 SUN_ARCH="i386"
362 # If there is a compiler, see if it is configured for 64-bit objects.
363 # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
364 # This test works for both compilers.
365 if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
366 if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
367 (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
368 grep IS_64BIT_ARCH >/dev/null
369 then
370 SUN_ARCH="x86_64"
371 fi
372 fi
373 echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
374 exit ;;
375 sun4*:SunOS:6*:*)
376 # According to config.sub, this is the proper way to canonicalize
377 # SunOS6. Hard to guess exactly what SunOS6 will be like, but
378 # it's likely to be more like Solaris than SunOS4.
379 echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
380 exit ;;
381 sun4*:SunOS:*:*)
382 case "`/usr/bin/arch -k`" in
383 Series*|S4*)
384 UNAME_RELEASE=`uname -v`
385 ;;
386 esac
387 # Japanese Language versions have a version number like `4.1.3-JL'.
388 echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
389 exit ;;
390 sun3*:SunOS:*:*)
391 echo m68k-sun-sunos${UNAME_RELEASE}
392 exit ;;
393 sun*:*:4.2BSD:*)
394 UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
395 test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
396 case "`/bin/arch`" in
397 sun3)
398 echo m68k-sun-sunos${UNAME_RELEASE}
399 ;;
400 sun4)
401 echo sparc-sun-sunos${UNAME_RELEASE}
402 ;;
403 esac
404 exit ;;
405 aushp:SunOS:*:*)
406 echo sparc-auspex-sunos${UNAME_RELEASE}
407 exit ;;
408 # The situation for MiNT is a little confusing. The machine name
409 # can be virtually everything (everything which is not
410 # "atarist" or "atariste" at least should have a processor
411 # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
412 # to the lowercase version "mint" (or "freemint"). Finally
413 # the system name "TOS" denotes a system which is actually not
414 # MiNT. But MiNT is downward compatible to TOS, so this should
415 # be no problem.
416 atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
417 echo m68k-atari-mint${UNAME_RELEASE}
418 exit ;;
419 atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
420 echo m68k-atari-mint${UNAME_RELEASE}
421 exit ;;
422 *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
423 echo m68k-atari-mint${UNAME_RELEASE}
424 exit ;;
425 milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
426 echo m68k-milan-mint${UNAME_RELEASE}
427 exit ;;
428 hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
429 echo m68k-hades-mint${UNAME_RELEASE}
430 exit ;;
431 *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
432 echo m68k-unknown-mint${UNAME_RELEASE}
433 exit ;;
434 m68k:machten:*:*)
435 echo m68k-apple-machten${UNAME_RELEASE}
436 exit ;;
437 powerpc:machten:*:*)
438 echo powerpc-apple-machten${UNAME_RELEASE}
439 exit ;;
440 RISC*:Mach:*:*)
441 echo mips-dec-mach_bsd4.3
442 exit ;;
443 RISC*:ULTRIX:*:*)
444 echo mips-dec-ultrix${UNAME_RELEASE}
445 exit ;;
446 VAX*:ULTRIX*:*:*)
447 echo vax-dec-ultrix${UNAME_RELEASE}
448 exit ;;
449 2020:CLIX:*:* | 2430:CLIX:*:*)
450 echo clipper-intergraph-clix${UNAME_RELEASE}
451 exit ;;
452 mips:*:*:UMIPS | mips:*:*:RISCos)
453 eval $set_cc_for_build
454 sed 's/^ //' << EOF >$dummy.c
455 #ifdef __cplusplus
456 #include <stdio.h> /* for printf() prototype */
457 int main (int argc, char *argv[]) {
458 #else
459 int main (argc, argv) int argc; char *argv[]; {
460 #endif
461 #if defined (host_mips) && defined (MIPSEB)
462 #if defined (SYSTYPE_SYSV)
463 printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
464 #endif
465 #if defined (SYSTYPE_SVR4)
466 printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
467 #endif
468 #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
469 printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
470 #endif
471 #endif
472 exit (-1);
473 }
474 EOF
475 $CC_FOR_BUILD -o $dummy $dummy.c &&
476 dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
477 SYSTEM_NAME=`$dummy $dummyarg` &&
478 { echo "$SYSTEM_NAME"; exit; }
479 echo mips-mips-riscos${UNAME_RELEASE}
480 exit ;;
481 Motorola:PowerMAX_OS:*:*)
482 echo powerpc-motorola-powermax
483 exit ;;
484 Motorola:*:4.3:PL8-*)
485 echo powerpc-harris-powermax
486 exit ;;
487 Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
488 echo powerpc-harris-powermax
489 exit ;;
490 Night_Hawk:Power_UNIX:*:*)
491 echo powerpc-harris-powerunix
492 exit ;;
493 m88k:CX/UX:7*:*)
494 echo m88k-harris-cxux7
495 exit ;;
496 m88k:*:4*:R4*)
497 echo m88k-motorola-sysv4
498 exit ;;
499 m88k:*:3*:R3*)
500 echo m88k-motorola-sysv3
501 exit ;;
502 AViiON:dgux:*:*)
503 # DG/UX returns AViiON for all architectures
504 UNAME_PROCESSOR=`/usr/bin/uname -p`
505 if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
506 then
507 if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
508 [ ${TARGET_BINARY_INTERFACE}x = x ]
509 then
510 echo m88k-dg-dgux${UNAME_RELEASE}
511 else
512 echo m88k-dg-dguxbcs${UNAME_RELEASE}
513 fi
514 else
515 echo i586-dg-dgux${UNAME_RELEASE}
516 fi
517 exit ;;
518 M88*:DolphinOS:*:*) # DolphinOS (SVR3)
519 echo m88k-dolphin-sysv3
520 exit ;;
521 M88*:*:R3*:*)
522 # Delta 88k system running SVR3
523 echo m88k-motorola-sysv3
524 exit ;;
525 XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
526 echo m88k-tektronix-sysv3
527 exit ;;
528 Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
529 echo m68k-tektronix-bsd
530 exit ;;
531 *:IRIX*:*:*)
532 echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
533 exit ;;
534 ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
535 echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
536 exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
537 i*86:AIX:*:*)
538 echo i386-ibm-aix
539 exit ;;
540 ia64:AIX:*:*)
541 if [ -x /usr/bin/oslevel ] ; then
542 IBM_REV=`/usr/bin/oslevel`
543 else
544 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
545 fi
546 echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
547 exit ;;
548 *:AIX:2:3)
549 if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
550 eval $set_cc_for_build
551 sed 's/^ //' << EOF >$dummy.c
552 #include <sys/systemcfg.h>
553
554 main()
555 {
556 if (!__power_pc())
557 exit(1);
558 puts("powerpc-ibm-aix3.2.5");
559 exit(0);
560 }
561 EOF
562 if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
563 then
564 echo "$SYSTEM_NAME"
565 else
566 echo rs6000-ibm-aix3.2.5
567 fi
568 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
569 echo rs6000-ibm-aix3.2.4
570 else
571 echo rs6000-ibm-aix3.2
572 fi
573 exit ;;
574 *:AIX:*:[4567])
575 IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
576 if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
577 IBM_ARCH=rs6000
578 else
579 IBM_ARCH=powerpc
580 fi
581 if [ -x /usr/bin/oslevel ] ; then
582 IBM_REV=`/usr/bin/oslevel`
583 else
584 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
585 fi
586 echo ${IBM_ARCH}-ibm-aix${IBM_REV}
587 exit ;;
588 *:AIX:*:*)
589 echo rs6000-ibm-aix
590 exit ;;
591 ibmrt:4.4BSD:*|romp-ibm:BSD:*)
592 echo romp-ibm-bsd4.4
593 exit ;;
594 ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
595 echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
596 exit ;; # report: romp-ibm BSD 4.3
597 *:BOSX:*:*)
598 echo rs6000-bull-bosx
599 exit ;;
600 DPX/2?00:B.O.S.:*:*)
601 echo m68k-bull-sysv3
602 exit ;;
603 9000/[34]??:4.3bsd:1.*:*)
604 echo m68k-hp-bsd
605 exit ;;
606 hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
607 echo m68k-hp-bsd4.4
608 exit ;;
609 9000/[34678]??:HP-UX:*:*)
610 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
611 case "${UNAME_MACHINE}" in
612 9000/31? ) HP_ARCH=m68000 ;;
613 9000/[34]?? ) HP_ARCH=m68k ;;
614 9000/[678][0-9][0-9])
615 if [ -x /usr/bin/getconf ]; then
616 sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
617 sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
618 case "${sc_cpu_version}" in
619 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
620 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
621 532) # CPU_PA_RISC2_0
622 case "${sc_kernel_bits}" in
623 32) HP_ARCH="hppa2.0n" ;;
624 64) HP_ARCH="hppa2.0w" ;;
625 '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
626 esac ;;
627 esac
628 fi
629 if [ "${HP_ARCH}" = "" ]; then
630 eval $set_cc_for_build
631 sed 's/^ //' << EOF >$dummy.c
632
633 #define _HPUX_SOURCE
634 #include <stdlib.h>
635 #include <unistd.h>
636
637 int main ()
638 {
639 #if defined(_SC_KERNEL_BITS)
640 long bits = sysconf(_SC_KERNEL_BITS);
641 #endif
642 long cpu = sysconf (_SC_CPU_VERSION);
643
644 switch (cpu)
645 {
646 case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
647 case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
648 case CPU_PA_RISC2_0:
649 #if defined(_SC_KERNEL_BITS)
650 switch (bits)
651 {
652 case 64: puts ("hppa2.0w"); break;
653 case 32: puts ("hppa2.0n"); break;
654 default: puts ("hppa2.0"); break;
655 } break;
656 #else /* !defined(_SC_KERNEL_BITS) */
657 puts ("hppa2.0"); break;
658 #endif
659 default: puts ("hppa1.0"); break;
660 }
661 exit (0);
662 }
663 EOF
664 (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
665 test -z "$HP_ARCH" && HP_ARCH=hppa
666 fi ;;
667 esac
668 if [ ${HP_ARCH} = "hppa2.0w" ]
669 then
670 eval $set_cc_for_build
671
672 # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
673 # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
674 # generating 64-bit code. GNU and HP use different nomenclature:
675 #
676 # $ CC_FOR_BUILD=cc ./config.guess
677 # => hppa2.0w-hp-hpux11.23
678 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
679 # => hppa64-hp-hpux11.23
680
681 if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
682 grep -q __LP64__
683 then
684 HP_ARCH="hppa2.0w"
685 else
686 HP_ARCH="hppa64"
687 fi
688 fi
689 echo ${HP_ARCH}-hp-hpux${HPUX_REV}
690 exit ;;
691 ia64:HP-UX:*:*)
692 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
693 echo ia64-hp-hpux${HPUX_REV}
694 exit ;;
695 3050*:HI-UX:*:*)
696 eval $set_cc_for_build
697 sed 's/^ //' << EOF >$dummy.c
698 #include <unistd.h>
699 int
700 main ()
701 {
702 long cpu = sysconf (_SC_CPU_VERSION);
703 /* The order matters, because CPU_IS_HP_MC68K erroneously returns
704 true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
705 results, however. */
706 if (CPU_IS_PA_RISC (cpu))
707 {
708 switch (cpu)
709 {
710 case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
711 case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
712 case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
713 default: puts ("hppa-hitachi-hiuxwe2"); break;
714 }
715 }
716 else if (CPU_IS_HP_MC68K (cpu))
717 puts ("m68k-hitachi-hiuxwe2");
718 else puts ("unknown-hitachi-hiuxwe2");
719 exit (0);
720 }
721 EOF
722 $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
723 { echo "$SYSTEM_NAME"; exit; }
724 echo unknown-hitachi-hiuxwe2
725 exit ;;
726 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
727 echo hppa1.1-hp-bsd
728 exit ;;
729 9000/8??:4.3bsd:*:*)
730 echo hppa1.0-hp-bsd
731 exit ;;
732 *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
733 echo hppa1.0-hp-mpeix
734 exit ;;
735 hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
736 echo hppa1.1-hp-osf
737 exit ;;
738 hp8??:OSF1:*:*)
739 echo hppa1.0-hp-osf
740 exit ;;
741 i*86:OSF1:*:*)
742 if [ -x /usr/sbin/sysversion ] ; then
743 echo ${UNAME_MACHINE}-unknown-osf1mk
744 else
745 echo ${UNAME_MACHINE}-unknown-osf1
746 fi
747 exit ;;
748 parisc*:Lites*:*:*)
749 echo hppa1.1-hp-lites
750 exit ;;
751 C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
752 echo c1-convex-bsd
753 exit ;;
754 C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
755 if getsysinfo -f scalar_acc
756 then echo c32-convex-bsd
757 else echo c2-convex-bsd
758 fi
759 exit ;;
760 C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
761 echo c34-convex-bsd
762 exit ;;
763 C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
764 echo c38-convex-bsd
765 exit ;;
766 C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
767 echo c4-convex-bsd
768 exit ;;
769 CRAY*Y-MP:*:*:*)
770 echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
771 exit ;;
772 CRAY*[A-Z]90:*:*:*)
773 echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
774 | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
775 -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
776 -e 's/\.[^.]*$/.X/'
777 exit ;;
778 CRAY*TS:*:*:*)
779 echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
780 exit ;;
781 CRAY*T3E:*:*:*)
782 echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
783 exit ;;
784 CRAY*SV1:*:*:*)
785 echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
786 exit ;;
787 *:UNICOS/mp:*:*)
788 echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
789 exit ;;
790 F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
791 FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
792 FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
793 FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
794 echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
795 exit ;;
796 5000:UNIX_System_V:4.*:*)
797 FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
798 FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
799 echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
800 exit ;;
801 i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
802 echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
803 exit ;;
804 sparc*:BSD/OS:*:*)
805 echo sparc-unknown-bsdi${UNAME_RELEASE}
806 exit ;;
807 *:BSD/OS:*:*)
808 echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
809 exit ;;
810 *:FreeBSD:*:*)
811 UNAME_PROCESSOR=`/usr/bin/uname -p`
812 case ${UNAME_PROCESSOR} in
813 amd64)
814 echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
815 *)
816 echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
817 esac
818 exit ;;
819 i*:CYGWIN*:*)
820 echo ${UNAME_MACHINE}-pc-cygwin
821 exit ;;
822 *:MINGW64*:*)
823 echo ${UNAME_MACHINE}-pc-mingw64
824 exit ;;
825 *:MINGW*:*)
826 echo ${UNAME_MACHINE}-pc-mingw32
827 exit ;;
828 i*:MSYS*:*)
829 echo ${UNAME_MACHINE}-pc-msys
830 exit ;;
831 i*:windows32*:*)
832 # uname -m includes "-pc" on this system.
833 echo ${UNAME_MACHINE}-mingw32
834 exit ;;
835 i*:PW*:*)
836 echo ${UNAME_MACHINE}-pc-pw32
837 exit ;;
838 *:Interix*:*)
839 case ${UNAME_MACHINE} in
840 x86)
841 echo i586-pc-interix${UNAME_RELEASE}
842 exit ;;
843 authenticamd | genuineintel | EM64T)
844 echo x86_64-unknown-interix${UNAME_RELEASE}
845 exit ;;
846 IA64)
847 echo ia64-unknown-interix${UNAME_RELEASE}
848 exit ;;
849 esac ;;
850 [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
851 echo i${UNAME_MACHINE}-pc-mks
852 exit ;;
853 8664:Windows_NT:*)
854 echo x86_64-pc-mks
855 exit ;;
856 i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
857 # How do we know it's Interix rather than the generic POSIX subsystem?
858 # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
859 # UNAME_MACHINE based on the output of uname instead of i386?
860 echo i586-pc-interix
861 exit ;;
862 i*:UWIN*:*)
863 echo ${UNAME_MACHINE}-pc-uwin
864 exit ;;
865 amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
866 echo x86_64-unknown-cygwin
867 exit ;;
868 p*:CYGWIN*:*)
869 echo powerpcle-unknown-cygwin
870 exit ;;
871 prep*:SunOS:5.*:*)
872 echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
873 exit ;;
874 *:GNU:*:*)
875 # the GNU system
876 echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
877 exit ;;
878 *:GNU/*:*:*)
879 # other systems with GNU libc and userland
880 echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
881 exit ;;
882 i*86:Minix:*:*)
883 echo ${UNAME_MACHINE}-pc-minix
884 exit ;;
885 aarch64:Linux:*:*)
886 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
887 exit ;;
888 aarch64_be:Linux:*:*)
889 UNAME_MACHINE=aarch64_be
890 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
891 exit ;;
892 alpha:Linux:*:*)
893 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
894 EV5) UNAME_MACHINE=alphaev5 ;;
895 EV56) UNAME_MACHINE=alphaev56 ;;
896 PCA56) UNAME_MACHINE=alphapca56 ;;
897 PCA57) UNAME_MACHINE=alphapca56 ;;
898 EV6) UNAME_MACHINE=alphaev6 ;;
899 EV67) UNAME_MACHINE=alphaev67 ;;
900 EV68*) UNAME_MACHINE=alphaev68 ;;
901 esac
902 objdump --private-headers /bin/sh | grep -q ld.so.1
903 if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
904 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
905 exit ;;
906 arc:Linux:*:* | arceb:Linux:*:*)
907 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
908 exit ;;
909 arm*:Linux:*:*)
910 eval $set_cc_for_build
911 if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
912 | grep -q __ARM_EABI__
913 then
914 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
915 else
916 if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
917 | grep -q __ARM_PCS_VFP
918 then
919 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
920 else
921 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
922 fi
923 fi
924 exit ;;
925 avr32*:Linux:*:*)
926 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
927 exit ;;
928 cris:Linux:*:*)
929 echo ${UNAME_MACHINE}-axis-linux-${LIBC}
930 exit ;;
931 crisv32:Linux:*:*)
932 echo ${UNAME_MACHINE}-axis-linux-${LIBC}
933 exit ;;
934 frv:Linux:*:*)
935 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
936 exit ;;
937 hexagon:Linux:*:*)
938 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
939 exit ;;
940 i*86:Linux:*:*)
941 echo ${UNAME_MACHINE}-pc-linux-${LIBC}
942 exit ;;
943 ia64:Linux:*:*)
944 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
945 exit ;;
946 m32r*:Linux:*:*)
947 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
948 exit ;;
949 m68*:Linux:*:*)
950 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
951 exit ;;
952 mips:Linux:*:* | mips64:Linux:*:*)
953 eval $set_cc_for_build
954 sed 's/^ //' << EOF >$dummy.c
955 #undef CPU
956 #undef ${UNAME_MACHINE}
957 #undef ${UNAME_MACHINE}el
958 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
959 CPU=${UNAME_MACHINE}el
960 #else
961 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
962 CPU=${UNAME_MACHINE}
963 #else
964 CPU=
965 #endif
966 #endif
967 EOF
968 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
969 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
970 ;;
971 or1k:Linux:*:*)
972 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
973 exit ;;
974 or32:Linux:*:*)
975 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
976 exit ;;
977 padre:Linux:*:*)
978 echo sparc-unknown-linux-${LIBC}
979 exit ;;
980 parisc64:Linux:*:* | hppa64:Linux:*:*)
981 echo hppa64-unknown-linux-${LIBC}
982 exit ;;
983 parisc:Linux:*:* | hppa:Linux:*:*)
984 # Look for CPU level
985 case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
986 PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
987 PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
988 *) echo hppa-unknown-linux-${LIBC} ;;
989 esac
990 exit ;;
991 ppc64:Linux:*:*)
992 echo powerpc64-unknown-linux-${LIBC}
993 exit ;;
994 ppc:Linux:*:*)
995 echo powerpc-unknown-linux-${LIBC}
996 exit ;;
997 ppc64le:Linux:*:*)
998 echo powerpc64le-unknown-linux-${LIBC}
999 exit ;;
1000 ppcle:Linux:*:*)
1001 echo powerpcle-unknown-linux-${LIBC}
1002 exit ;;
1003 s390:Linux:*:* | s390x:Linux:*:*)
1004 echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
1005 exit ;;
1006 sh64*:Linux:*:*)
1007 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1008 exit ;;
1009 sh*:Linux:*:*)
1010 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1011 exit ;;
1012 sparc:Linux:*:* | sparc64:Linux:*:*)
1013 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1014 exit ;;
1015 tile*:Linux:*:*)
1016 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1017 exit ;;
1018 vax:Linux:*:*)
1019 echo ${UNAME_MACHINE}-dec-linux-${LIBC}
1020 exit ;;
1021 x86_64:Linux:*:*)
1022 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1023 exit ;;
1024 xtensa*:Linux:*:*)
1025 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1026 exit ;;
1027 i*86:DYNIX/ptx:4*:*)
1028 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1029 # earlier versions are messed up and put the nodename in both
1030 # sysname and nodename.
1031 echo i386-sequent-sysv4
1032 exit ;;
1033 i*86:UNIX_SV:4.2MP:2.*)
1034 # Unixware is an offshoot of SVR4, but it has its own version
1035 # number series starting with 2...
1036 # I am not positive that other SVR4 systems won't match this,
1037 # I just have to hope. -- rms.
1038 # Use sysv4.2uw... so that sysv4* matches it.
1039 echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1040 exit ;;
1041 i*86:OS/2:*:*)
1042 # If we were able to find `uname', then EMX Unix compatibility
1043 # is probably installed.
1044 echo ${UNAME_MACHINE}-pc-os2-emx
1045 exit ;;
1046 i*86:XTS-300:*:STOP)
1047 echo ${UNAME_MACHINE}-unknown-stop
1048 exit ;;
1049 i*86:atheos:*:*)
1050 echo ${UNAME_MACHINE}-unknown-atheos
1051 exit ;;
1052 i*86:syllable:*:*)
1053 echo ${UNAME_MACHINE}-pc-syllable
1054 exit ;;
1055 i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1056 echo i386-unknown-lynxos${UNAME_RELEASE}
1057 exit ;;
1058 i*86:*DOS:*:*)
1059 echo ${UNAME_MACHINE}-pc-msdosdjgpp
1060 exit ;;
1061 i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1062 UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1063 if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1064 echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1065 else
1066 echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1067 fi
1068 exit ;;
1069 i*86:*:5:[678]*)
1070 # UnixWare 7.x, OpenUNIX and OpenServer 6.
1071 case `/bin/uname -X | grep "^Machine"` in
1072 *486*) UNAME_MACHINE=i486 ;;
1073 *Pentium) UNAME_MACHINE=i586 ;;
1074 *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1075 esac
1076 echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1077 exit ;;
1078 i*86:*:3.2:*)
1079 if test -f /usr/options/cb.name; then
1080 UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1081 echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1082 elif /bin/uname -X 2>/dev/null >/dev/null ; then
1083 UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1084 (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1085 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1086 && UNAME_MACHINE=i586
1087 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1088 && UNAME_MACHINE=i686
1089 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1090 && UNAME_MACHINE=i686
1091 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1092 else
1093 echo ${UNAME_MACHINE}-pc-sysv32
1094 fi
1095 exit ;;
1096 pc:*:*:*)
1097 # Left here for compatibility:
1098 # uname -m prints for DJGPP always 'pc', but it prints nothing about
1099 # the processor, so we play safe by assuming i586.
1100 # Note: whatever this is, it MUST be the same as what config.sub
1101 # prints for the "djgpp" host, or else GDB configury will decide that
1102 # this is a cross-build.
1103 echo i586-pc-msdosdjgpp
1104 exit ;;
1105 Intel:Mach:3*:*)
1106 echo i386-pc-mach3
1107 exit ;;
1108 paragon:*:*:*)
1109 echo i860-intel-osf1
1110 exit ;;
1111 i860:*:4.*:*) # i860-SVR4
1112 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1113 echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1114 else # Add other i860-SVR4 vendors below as they are discovered.
1115 echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
1116 fi
1117 exit ;;
1118 mini*:CTIX:SYS*5:*)
1119 # "miniframe"
1120 echo m68010-convergent-sysv
1121 exit ;;
1122 mc68k:UNIX:SYSTEM5:3.51m)
1123 echo m68k-convergent-sysv
1124 exit ;;
1125 M680?0:D-NIX:5.3:*)
1126 echo m68k-diab-dnix
1127 exit ;;
1128 M68*:*:R3V[5678]*:*)
1129 test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1130 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
1131 OS_REL=''
1132 test -r /etc/.relid \
1133 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1134 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1135 && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1136 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1137 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1138 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1139 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1140 && { echo i486-ncr-sysv4; exit; } ;;
1141 NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1142 OS_REL='.3'
1143 test -r /etc/.relid \
1144 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1145 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1146 && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1147 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1148 && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
1149 /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1150 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1151 m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1152 echo m68k-unknown-lynxos${UNAME_RELEASE}
1153 exit ;;
1154 mc68030:UNIX_System_V:4.*:*)
1155 echo m68k-atari-sysv4
1156 exit ;;
1157 TSUNAMI:LynxOS:2.*:*)
1158 echo sparc-unknown-lynxos${UNAME_RELEASE}
1159 exit ;;
1160 rs6000:LynxOS:2.*:*)
1161 echo rs6000-unknown-lynxos${UNAME_RELEASE}
1162 exit ;;
1163 PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1164 echo powerpc-unknown-lynxos${UNAME_RELEASE}
1165 exit ;;
1166 SM[BE]S:UNIX_SV:*:*)
1167 echo mips-dde-sysv${UNAME_RELEASE}
1168 exit ;;
1169 RM*:ReliantUNIX-*:*:*)
1170 echo mips-sni-sysv4
1171 exit ;;
1172 RM*:SINIX-*:*:*)
1173 echo mips-sni-sysv4
1174 exit ;;
1175 *:SINIX-*:*:*)
1176 if uname -p 2>/dev/null >/dev/null ; then
1177 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1178 echo ${UNAME_MACHINE}-sni-sysv4
1179 else
1180 echo ns32k-sni-sysv
1181 fi
1182 exit ;;
1183 PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1184 # says <Richard.M.Bartel@ccMail.Census.GOV>
1185 echo i586-unisys-sysv4
1186 exit ;;
1187 *:UNIX_System_V:4*:FTX*)
1188 # From Gerald Hewes <hewes@openmarket.com>.
1189 # How about differentiating between stratus architectures? -djm
1190 echo hppa1.1-stratus-sysv4
1191 exit ;;
1192 *:*:*:FTX*)
1193 # From seanf@swdc.stratus.com.
1194 echo i860-stratus-sysv4
1195 exit ;;
1196 i*86:VOS:*:*)
1197 # From Paul.Green@stratus.com.
1198 echo ${UNAME_MACHINE}-stratus-vos
1199 exit ;;
1200 *:VOS:*:*)
1201 # From Paul.Green@stratus.com.
1202 echo hppa1.1-stratus-vos
1203 exit ;;
1204 mc68*:A/UX:*:*)
1205 echo m68k-apple-aux${UNAME_RELEASE}
1206 exit ;;
1207 news*:NEWS-OS:6*:*)
1208 echo mips-sony-newsos6
1209 exit ;;
1210 R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1211 if [ -d /usr/nec ]; then
1212 echo mips-nec-sysv${UNAME_RELEASE}
1213 else
1214 echo mips-unknown-sysv${UNAME_RELEASE}
1215 fi
1216 exit ;;
1217 BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
1218 echo powerpc-be-beos
1219 exit ;;
1220 BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
1221 echo powerpc-apple-beos
1222 exit ;;
1223 BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
1224 echo i586-pc-beos
1225 exit ;;
1226 BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
1227 echo i586-pc-haiku
1228 exit ;;
1229 x86_64:Haiku:*:*)
1230 echo x86_64-unknown-haiku
1231 exit ;;
1232 SX-4:SUPER-UX:*:*)
1233 echo sx4-nec-superux${UNAME_RELEASE}
1234 exit ;;
1235 SX-5:SUPER-UX:*:*)
1236 echo sx5-nec-superux${UNAME_RELEASE}
1237 exit ;;
1238 SX-6:SUPER-UX:*:*)
1239 echo sx6-nec-superux${UNAME_RELEASE}
1240 exit ;;
1241 SX-7:SUPER-UX:*:*)
1242 echo sx7-nec-superux${UNAME_RELEASE}
1243 exit ;;
1244 SX-8:SUPER-UX:*:*)
1245 echo sx8-nec-superux${UNAME_RELEASE}
1246 exit ;;
1247 SX-8R:SUPER-UX:*:*)
1248 echo sx8r-nec-superux${UNAME_RELEASE}
1249 exit ;;
1250 Power*:Rhapsody:*:*)
1251 echo powerpc-apple-rhapsody${UNAME_RELEASE}
1252 exit ;;
1253 *:Rhapsody:*:*)
1254 echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1255 exit ;;
1256 *:Darwin:*:*)
1257 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1258 eval $set_cc_for_build
1259 if test "$UNAME_PROCESSOR" = unknown ; then
1260 UNAME_PROCESSOR=powerpc
1261 fi
1262 if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1263 if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1264 (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
1265 grep IS_64BIT_ARCH >/dev/null
1266 then
1267 case $UNAME_PROCESSOR in
1268 i386) UNAME_PROCESSOR=x86_64 ;;
1269 powerpc) UNAME_PROCESSOR=powerpc64 ;;
1270 esac
1271 fi
1272 fi
1273 echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1274 exit ;;
1275 *:procnto*:*:* | *:QNX:[0123456789]*:*)
1276 UNAME_PROCESSOR=`uname -p`
1277 if test "$UNAME_PROCESSOR" = "x86"; then
1278 UNAME_PROCESSOR=i386
1279 UNAME_MACHINE=pc
1280 fi
1281 echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1282 exit ;;
1283 *:QNX:*:4*)
1284 echo i386-pc-qnx
1285 exit ;;
1286 NEO-?:NONSTOP_KERNEL:*:*)
1287 echo neo-tandem-nsk${UNAME_RELEASE}
1288 exit ;;
1289 NSE-*:NONSTOP_KERNEL:*:*)
1290 echo nse-tandem-nsk${UNAME_RELEASE}
1291 exit ;;
1292 NSR-?:NONSTOP_KERNEL:*:*)
1293 echo nsr-tandem-nsk${UNAME_RELEASE}
1294 exit ;;
1295 *:NonStop-UX:*:*)
1296 echo mips-compaq-nonstopux
1297 exit ;;
1298 BS2000:POSIX*:*:*)
1299 echo bs2000-siemens-sysv
1300 exit ;;
1301 DS/*:UNIX_System_V:*:*)
1302 echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1303 exit ;;
1304 *:Plan9:*:*)
1305 # "uname -m" is not consistent, so use $cputype instead. 386
1306 # is converted to i386 for consistency with other x86
1307 # operating systems.
1308 if test "$cputype" = "386"; then
1309 UNAME_MACHINE=i386
1310 else
1311 UNAME_MACHINE="$cputype"
1312 fi
1313 echo ${UNAME_MACHINE}-unknown-plan9
1314 exit ;;
1315 *:TOPS-10:*:*)
1316 echo pdp10-unknown-tops10
1317 exit ;;
1318 *:TENEX:*:*)
1319 echo pdp10-unknown-tenex
1320 exit ;;
1321 KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1322 echo pdp10-dec-tops20
1323 exit ;;
1324 XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1325 echo pdp10-xkl-tops20
1326 exit ;;
1327 *:TOPS-20:*:*)
1328 echo pdp10-unknown-tops20
1329 exit ;;
1330 *:ITS:*:*)
1331 echo pdp10-unknown-its
1332 exit ;;
1333 SEI:*:*:SEIUX)
1334 echo mips-sei-seiux${UNAME_RELEASE}
1335 exit ;;
1336 *:DragonFly:*:*)
1337 echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1338 exit ;;
1339 *:*VMS:*:*)
1340 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1341 case "${UNAME_MACHINE}" in
1342 A*) echo alpha-dec-vms ; exit ;;
1343 I*) echo ia64-dec-vms ; exit ;;
1344 V*) echo vax-dec-vms ; exit ;;
1345 esac ;;
1346 *:XENIX:*:SysV)
1347 echo i386-pc-xenix
1348 exit ;;
1349 i*86:skyos:*:*)
1350 echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
1351 exit ;;
1352 i*86:rdos:*:*)
1353 echo ${UNAME_MACHINE}-pc-rdos
1354 exit ;;
1355 i*86:AROS:*:*)
1356 echo ${UNAME_MACHINE}-pc-aros
1357 exit ;;
1358 x86_64:VMkernel:*:*)
1359 echo ${UNAME_MACHINE}-unknown-esx
1360 exit ;;
1361 esac
1362
1363 eval $set_cc_for_build
1364 cat >$dummy.c <<EOF
1365 #ifdef _SEQUENT_
1366 # include <sys/types.h>
1367 # include <sys/utsname.h>
1368 #endif
1369 main ()
1370 {
1371 #if defined (sony)
1372 #if defined (MIPSEB)
1373 /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
1374 I don't know.... */
1375 printf ("mips-sony-bsd\n"); exit (0);
1376 #else
1377 #include <sys/param.h>
1378 printf ("m68k-sony-newsos%s\n",
1379 #ifdef NEWSOS4
1380 "4"
1381 #else
1382 ""
1383 #endif
1384 ); exit (0);
1385 #endif
1386 #endif
1387
1388 #if defined (__arm) && defined (__acorn) && defined (__unix)
1389 printf ("arm-acorn-riscix\n"); exit (0);
1390 #endif
1391
1392 #if defined (hp300) && !defined (hpux)
1393 printf ("m68k-hp-bsd\n"); exit (0);
1394 #endif
1395
1396 #if defined (NeXT)
1397 #if !defined (__ARCHITECTURE__)
1398 #define __ARCHITECTURE__ "m68k"
1399 #endif
1400 int version;
1401 version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1402 if (version < 4)
1403 printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1404 else
1405 printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1406 exit (0);
1407 #endif
1408
1409 #if defined (MULTIMAX) || defined (n16)
1410 #if defined (UMAXV)
1411 printf ("ns32k-encore-sysv\n"); exit (0);
1412 #else
1413 #if defined (CMU)
1414 printf ("ns32k-encore-mach\n"); exit (0);
1415 #else
1416 printf ("ns32k-encore-bsd\n"); exit (0);
1417 #endif
1418 #endif
1419 #endif
1420
1421 #if defined (__386BSD__)
1422 printf ("i386-pc-bsd\n"); exit (0);
1423 #endif
1424
1425 #if defined (sequent)
1426 #if defined (i386)
1427 printf ("i386-sequent-dynix\n"); exit (0);
1428 #endif
1429 #if defined (ns32000)
1430 printf ("ns32k-sequent-dynix\n"); exit (0);
1431 #endif
1432 #endif
1433
1434 #if defined (_SEQUENT_)
1435 struct utsname un;
1436
1437 uname(&un);
1438
1439 if (strncmp(un.version, "V2", 2) == 0) {
1440 printf ("i386-sequent-ptx2\n"); exit (0);
1441 }
1442 if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1443 printf ("i386-sequent-ptx1\n"); exit (0);
1444 }
1445 printf ("i386-sequent-ptx\n"); exit (0);
1446
1447 #endif
1448
1449 #if defined (vax)
1450 # if !defined (ultrix)
1451 # include <sys/param.h>
1452 # if defined (BSD)
1453 # if BSD == 43
1454 printf ("vax-dec-bsd4.3\n"); exit (0);
1455 # else
1456 # if BSD == 199006
1457 printf ("vax-dec-bsd4.3reno\n"); exit (0);
1458 # else
1459 printf ("vax-dec-bsd\n"); exit (0);
1460 # endif
1461 # endif
1462 # else
1463 printf ("vax-dec-bsd\n"); exit (0);
1464 # endif
1465 # else
1466 printf ("vax-dec-ultrix\n"); exit (0);
1467 # endif
1468 #endif
1469
1470 #if defined (alliant) && defined (i860)
1471 printf ("i860-alliant-bsd\n"); exit (0);
1472 #endif
1473
1474 exit (1);
1475 }
1476 EOF
1477
1478 $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
1479 { echo "$SYSTEM_NAME"; exit; }
1480
1481 # Apollos put the system type in the environment.
1482
1483 test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1484
1485 # Convex versions that predate uname can use getsysinfo(1)
1486
1487 if [ -x /usr/convex/getsysinfo ]
1488 then
1489 case `getsysinfo -f cpu_type` in
1490 c1*)
1491 echo c1-convex-bsd
1492 exit ;;
1493 c2*)
1494 if getsysinfo -f scalar_acc
1495 then echo c32-convex-bsd
1496 else echo c2-convex-bsd
1497 fi
1498 exit ;;
1499 c34*)
1500 echo c34-convex-bsd
1501 exit ;;
1502 c38*)
1503 echo c38-convex-bsd
1504 exit ;;
1505 c4*)
1506 echo c4-convex-bsd
1507 exit ;;
1508 esac
1509 fi
1510
1511 cat >&2 <<EOF
1512 $0: unable to guess system type
1513
1514 This script, last modified $timestamp, has failed to recognize
1515 the operating system you are using. It is advised that you
1516 download the most up to date version of the config scripts from
1517
1518 http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
1519 and
1520 http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1521
1522 If the version you run ($0) is already up to date, please
1523 send the following data and any information you think might be
1524 pertinent to <config-patches@gnu.org> in order to provide the needed
1525 information to handle your system.
1526
1527 config.guess timestamp = $timestamp
1528
1529 uname -m = `(uname -m) 2>/dev/null || echo unknown`
1530 uname -r = `(uname -r) 2>/dev/null || echo unknown`
1531 uname -s = `(uname -s) 2>/dev/null || echo unknown`
1532 uname -v = `(uname -v) 2>/dev/null || echo unknown`
1533
1534 /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1535 /bin/uname -X = `(/bin/uname -X) 2>/dev/null`
1536
1537 hostinfo = `(hostinfo) 2>/dev/null`
1538 /bin/universe = `(/bin/universe) 2>/dev/null`
1539 /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
1540 /bin/arch = `(/bin/arch) 2>/dev/null`
1541 /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
1542 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1543
1544 UNAME_MACHINE = ${UNAME_MACHINE}
1545 UNAME_RELEASE = ${UNAME_RELEASE}
1546 UNAME_SYSTEM = ${UNAME_SYSTEM}
1547 UNAME_VERSION = ${UNAME_VERSION}
1548 EOF
1549
1550 exit 1
1551
1552 # Local variables:
1553 # eval: (add-hook 'write-file-hooks 'time-stamp)
1554 # time-stamp-start: "timestamp='"
1555 # time-stamp-format: "%:y-%02m-%02d"
1556 # time-stamp-end: "'"
1557 # End:
+0
-1788
config/config.sub less more
0 #! /bin/sh
1 # Configuration validation subroutine script.
2 # Copyright 1992-2013 Free Software Foundation, Inc.
3
4 timestamp='2013-04-24'
5
6 # This file is free software; you can redistribute it and/or modify it
7 # under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 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, but
12 # WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 # 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, see <http://www.gnu.org/licenses/>.
18 #
19 # As a special exception to the GNU General Public License, if you
20 # distribute this file as part of a program that contains a
21 # configuration script generated by Autoconf, you may include it under
22 # the same distribution terms that you use for the rest of that
23 # program. This Exception is an additional permission under section 7
24 # of the GNU General Public License, version 3 ("GPLv3").
25
26
27 # Please send patches with a ChangeLog entry to config-patches@gnu.org.
28 #
29 # Configuration subroutine to validate and canonicalize a configuration type.
30 # Supply the specified configuration type as an argument.
31 # If it is invalid, we print an error message on stderr and exit with code 1.
32 # Otherwise, we print the canonical config type on stdout and succeed.
33
34 # You can get the latest version of this script from:
35 # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
36
37 # This file is supposed to be the same for all GNU packages
38 # and recognize all the CPU types, system types and aliases
39 # that are meaningful with *any* GNU software.
40 # Each package is responsible for reporting which valid configurations
41 # it does not support. The user should be able to distinguish
42 # a failure to support a valid configuration from a meaningless
43 # configuration.
44
45 # The goal of this file is to map all the various variations of a given
46 # machine specification into a single specification in the form:
47 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
48 # or in some cases, the newer four-part form:
49 # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
50 # It is wrong to echo any other type of specification.
51
52 me=`echo "$0" | sed -e 's,.*/,,'`
53
54 usage="\
55 Usage: $0 [OPTION] CPU-MFR-OPSYS
56 $0 [OPTION] ALIAS
57
58 Canonicalize a configuration name.
59
60 Operation modes:
61 -h, --help print this help, then exit
62 -t, --time-stamp print date of last modification, then exit
63 -v, --version print version number, then exit
64
65 Report bugs and patches to <config-patches@gnu.org>."
66
67 version="\
68 GNU config.sub ($timestamp)
69
70 Copyright 1992-2013 Free Software Foundation, Inc.
71
72 This is free software; see the source for copying conditions. There is NO
73 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
74
75 help="
76 Try \`$me --help' for more information."
77
78 # Parse command line
79 while test $# -gt 0 ; do
80 case $1 in
81 --time-stamp | --time* | -t )
82 echo "$timestamp" ; exit ;;
83 --version | -v )
84 echo "$version" ; exit ;;
85 --help | --h* | -h )
86 echo "$usage"; exit ;;
87 -- ) # Stop option processing
88 shift; break ;;
89 - ) # Use stdin as input.
90 break ;;
91 -* )
92 echo "$me: invalid option $1$help"
93 exit 1 ;;
94
95 *local*)
96 # First pass through any local machine types.
97 echo $1
98 exit ;;
99
100 * )
101 break ;;
102 esac
103 done
104
105 case $# in
106 0) echo "$me: missing argument$help" >&2
107 exit 1;;
108 1) ;;
109 *) echo "$me: too many arguments$help" >&2
110 exit 1;;
111 esac
112
113 # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
114 # Here we must recognize all the valid KERNEL-OS combinations.
115 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
116 case $maybe_os in
117 nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
118 linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
119 knetbsd*-gnu* | netbsd*-gnu* | \
120 kopensolaris*-gnu* | \
121 storm-chaos* | os2-emx* | rtmk-nova*)
122 os=-$maybe_os
123 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
124 ;;
125 android-linux)
126 os=-linux-android
127 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
128 ;;
129 *)
130 basic_machine=`echo $1 | sed 's/-[^-]*$//'`
131 if [ $basic_machine != $1 ]
132 then os=`echo $1 | sed 's/.*-/-/'`
133 else os=; fi
134 ;;
135 esac
136
137 ### Let's recognize common machines as not being operating systems so
138 ### that things like config.sub decstation-3100 work. We also
139 ### recognize some manufacturers as not being operating systems, so we
140 ### can provide default operating systems below.
141 case $os in
142 -sun*os*)
143 # Prevent following clause from handling this invalid input.
144 ;;
145 -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
146 -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
147 -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
148 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
149 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
150 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
151 -apple | -axis | -knuth | -cray | -microblaze*)
152 os=
153 basic_machine=$1
154 ;;
155 -bluegene*)
156 os=-cnk
157 ;;
158 -sim | -cisco | -oki | -wec | -winbond)
159 os=
160 basic_machine=$1
161 ;;
162 -scout)
163 ;;
164 -wrs)
165 os=-vxworks
166 basic_machine=$1
167 ;;
168 -chorusos*)
169 os=-chorusos
170 basic_machine=$1
171 ;;
172 -chorusrdb)
173 os=-chorusrdb
174 basic_machine=$1
175 ;;
176 -hiux*)
177 os=-hiuxwe2
178 ;;
179 -sco6)
180 os=-sco5v6
181 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
182 ;;
183 -sco5)
184 os=-sco3.2v5
185 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
186 ;;
187 -sco4)
188 os=-sco3.2v4
189 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
190 ;;
191 -sco3.2.[4-9]*)
192 os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
193 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
194 ;;
195 -sco3.2v[4-9]*)
196 # Don't forget version if it is 3.2v4 or newer.
197 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
198 ;;
199 -sco5v6*)
200 # Don't forget version if it is 3.2v4 or newer.
201 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
202 ;;
203 -sco*)
204 os=-sco3.2v2
205 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
206 ;;
207 -udk*)
208 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
209 ;;
210 -isc)
211 os=-isc2.2
212 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
213 ;;
214 -clix*)
215 basic_machine=clipper-intergraph
216 ;;
217 -isc*)
218 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
219 ;;
220 -lynx*178)
221 os=-lynxos178
222 ;;
223 -lynx*5)
224 os=-lynxos5
225 ;;
226 -lynx*)
227 os=-lynxos
228 ;;
229 -ptx*)
230 basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
231 ;;
232 -windowsnt*)
233 os=`echo $os | sed -e 's/windowsnt/winnt/'`
234 ;;
235 -psos*)
236 os=-psos
237 ;;
238 -mint | -mint[0-9]*)
239 basic_machine=m68k-atari
240 os=-mint
241 ;;
242 esac
243
244 # Decode aliases for certain CPU-COMPANY combinations.
245 case $basic_machine in
246 # Recognize the basic CPU types without company name.
247 # Some are omitted here because they have special meanings below.
248 1750a | 580 \
249 | a29k \
250 | aarch64 | aarch64_be \
251 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
252 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
253 | am33_2.0 \
254 | arc | arceb \
255 | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
256 | avr | avr32 \
257 | be32 | be64 \
258 | bfin \
259 | c4x | clipper \
260 | d10v | d30v | dlx | dsp16xx \
261 | epiphany \
262 | fido | fr30 | frv \
263 | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
264 | hexagon \
265 | i370 | i860 | i960 | ia64 \
266 | ip2k | iq2000 \
267 | le32 | le64 \
268 | lm32 \
269 | m32c | m32r | m32rle | m68000 | m68k | m88k \
270 | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
271 | mips | mipsbe | mipseb | mipsel | mipsle \
272 | mips16 \
273 | mips64 | mips64el \
274 | mips64octeon | mips64octeonel \
275 | mips64orion | mips64orionel \
276 | mips64r5900 | mips64r5900el \
277 | mips64vr | mips64vrel \
278 | mips64vr4100 | mips64vr4100el \
279 | mips64vr4300 | mips64vr4300el \
280 | mips64vr5000 | mips64vr5000el \
281 | mips64vr5900 | mips64vr5900el \
282 | mipsisa32 | mipsisa32el \
283 | mipsisa32r2 | mipsisa32r2el \
284 | mipsisa64 | mipsisa64el \
285 | mipsisa64r2 | mipsisa64r2el \
286 | mipsisa64sb1 | mipsisa64sb1el \
287 | mipsisa64sr71k | mipsisa64sr71kel \
288 | mipsr5900 | mipsr5900el \
289 | mipstx39 | mipstx39el \
290 | mn10200 | mn10300 \
291 | moxie \
292 | mt \
293 | msp430 \
294 | nds32 | nds32le | nds32be \
295 | nios | nios2 | nios2eb | nios2el \
296 | ns16k | ns32k \
297 | open8 \
298 | or1k | or32 \
299 | pdp10 | pdp11 | pj | pjl \
300 | powerpc | powerpc64 | powerpc64le | powerpcle \
301 | pyramid \
302 | rl78 | rx \
303 | score \
304 | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
305 | sh64 | sh64le \
306 | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
307 | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
308 | spu \
309 | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
310 | ubicom32 \
311 | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
312 | we32k \
313 | x86 | xc16x | xstormy16 | xtensa \
314 | z8k | z80)
315 basic_machine=$basic_machine-unknown
316 ;;
317 c54x)
318 basic_machine=tic54x-unknown
319 ;;
320 c55x)
321 basic_machine=tic55x-unknown
322 ;;
323 c6x)
324 basic_machine=tic6x-unknown
325 ;;
326 m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
327 basic_machine=$basic_machine-unknown
328 os=-none
329 ;;
330 m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
331 ;;
332 ms1)
333 basic_machine=mt-unknown
334 ;;
335
336 strongarm | thumb | xscale)
337 basic_machine=arm-unknown
338 ;;
339 xgate)
340 basic_machine=$basic_machine-unknown
341 os=-none
342 ;;
343 xscaleeb)
344 basic_machine=armeb-unknown
345 ;;
346
347 xscaleel)
348 basic_machine=armel-unknown
349 ;;
350
351 # We use `pc' rather than `unknown'
352 # because (1) that's what they normally are, and
353 # (2) the word "unknown" tends to confuse beginning users.
354 i*86 | x86_64)
355 basic_machine=$basic_machine-pc
356 ;;
357 # Object if more than one company name word.
358 *-*-*)
359 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
360 exit 1
361 ;;
362 # Recognize the basic CPU types with company name.
363 580-* \
364 | a29k-* \
365 | aarch64-* | aarch64_be-* \
366 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
367 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
368 | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
369 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
370 | avr-* | avr32-* \
371 | be32-* | be64-* \
372 | bfin-* | bs2000-* \
373 | c[123]* | c30-* | [cjt]90-* | c4x-* \
374 | clipper-* | craynv-* | cydra-* \
375 | d10v-* | d30v-* | dlx-* \
376 | elxsi-* \
377 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
378 | h8300-* | h8500-* \
379 | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
380 | hexagon-* \
381 | i*86-* | i860-* | i960-* | ia64-* \
382 | ip2k-* | iq2000-* \
383 | le32-* | le64-* \
384 | lm32-* \
385 | m32c-* | m32r-* | m32rle-* \
386 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
387 | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
388 | microblaze-* | microblazeel-* \
389 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
390 | mips16-* \
391 | mips64-* | mips64el-* \
392 | mips64octeon-* | mips64octeonel-* \
393 | mips64orion-* | mips64orionel-* \
394 | mips64r5900-* | mips64r5900el-* \
395 | mips64vr-* | mips64vrel-* \
396 | mips64vr4100-* | mips64vr4100el-* \
397 | mips64vr4300-* | mips64vr4300el-* \
398 | mips64vr5000-* | mips64vr5000el-* \
399 | mips64vr5900-* | mips64vr5900el-* \
400 | mipsisa32-* | mipsisa32el-* \
401 | mipsisa32r2-* | mipsisa32r2el-* \
402 | mipsisa64-* | mipsisa64el-* \
403 | mipsisa64r2-* | mipsisa64r2el-* \
404 | mipsisa64sb1-* | mipsisa64sb1el-* \
405 | mipsisa64sr71k-* | mipsisa64sr71kel-* \
406 | mipsr5900-* | mipsr5900el-* \
407 | mipstx39-* | mipstx39el-* \
408 | mmix-* \
409 | mt-* \
410 | msp430-* \
411 | nds32-* | nds32le-* | nds32be-* \
412 | nios-* | nios2-* | nios2eb-* | nios2el-* \
413 | none-* | np1-* | ns16k-* | ns32k-* \
414 | open8-* \
415 | orion-* \
416 | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
417 | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
418 | pyramid-* \
419 | rl78-* | romp-* | rs6000-* | rx-* \
420 | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
421 | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
422 | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
423 | sparclite-* \
424 | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
425 | tahoe-* \
426 | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
427 | tile*-* \
428 | tron-* \
429 | ubicom32-* \
430 | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
431 | vax-* \
432 | we32k-* \
433 | x86-* | x86_64-* | xc16x-* | xps100-* \
434 | xstormy16-* | xtensa*-* \
435 | ymp-* \
436 | z8k-* | z80-*)
437 ;;
438 # Recognize the basic CPU types without company name, with glob match.
439 xtensa*)
440 basic_machine=$basic_machine-unknown
441 ;;
442 # Recognize the various machine names and aliases which stand
443 # for a CPU type and a company and sometimes even an OS.
444 386bsd)
445 basic_machine=i386-unknown
446 os=-bsd
447 ;;
448 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
449 basic_machine=m68000-att
450 ;;
451 3b*)
452 basic_machine=we32k-att
453 ;;
454 a29khif)
455 basic_machine=a29k-amd
456 os=-udi
457 ;;
458 abacus)
459 basic_machine=abacus-unknown
460 ;;
461 adobe68k)
462 basic_machine=m68010-adobe
463 os=-scout
464 ;;
465 alliant | fx80)
466 basic_machine=fx80-alliant
467 ;;
468 altos | altos3068)
469 basic_machine=m68k-altos
470 ;;
471 am29k)
472 basic_machine=a29k-none
473 os=-bsd
474 ;;
475 amd64)
476 basic_machine=x86_64-pc
477 ;;
478 amd64-*)
479 basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
480 ;;
481 amdahl)
482 basic_machine=580-amdahl
483 os=-sysv
484 ;;
485 amiga | amiga-*)
486 basic_machine=m68k-unknown
487 ;;
488 amigaos | amigados)
489 basic_machine=m68k-unknown
490 os=-amigaos
491 ;;
492 amigaunix | amix)
493 basic_machine=m68k-unknown
494 os=-sysv4
495 ;;
496 apollo68)
497 basic_machine=m68k-apollo
498 os=-sysv
499 ;;
500 apollo68bsd)
501 basic_machine=m68k-apollo
502 os=-bsd
503 ;;
504 aros)
505 basic_machine=i386-pc
506 os=-aros
507 ;;
508 aux)
509 basic_machine=m68k-apple
510 os=-aux
511 ;;
512 balance)
513 basic_machine=ns32k-sequent
514 os=-dynix
515 ;;
516 blackfin)
517 basic_machine=bfin-unknown
518 os=-linux
519 ;;
520 blackfin-*)
521 basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
522 os=-linux
523 ;;
524 bluegene*)
525 basic_machine=powerpc-ibm
526 os=-cnk
527 ;;
528 c54x-*)
529 basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
530 ;;
531 c55x-*)
532 basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
533 ;;
534 c6x-*)
535 basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
536 ;;
537 c90)
538 basic_machine=c90-cray
539 os=-unicos
540 ;;
541 cegcc)
542 basic_machine=arm-unknown
543 os=-cegcc
544 ;;
545 convex-c1)
546 basic_machine=c1-convex
547 os=-bsd
548 ;;
549 convex-c2)
550 basic_machine=c2-convex
551 os=-bsd
552 ;;
553 convex-c32)
554 basic_machine=c32-convex
555 os=-bsd
556 ;;
557 convex-c34)
558 basic_machine=c34-convex
559 os=-bsd
560 ;;
561 convex-c38)
562 basic_machine=c38-convex
563 os=-bsd
564 ;;
565 cray | j90)
566 basic_machine=j90-cray
567 os=-unicos
568 ;;
569 craynv)
570 basic_machine=craynv-cray
571 os=-unicosmp
572 ;;
573 cr16 | cr16-*)
574 basic_machine=cr16-unknown
575 os=-elf
576 ;;
577 crds | unos)
578 basic_machine=m68k-crds
579 ;;
580 crisv32 | crisv32-* | etraxfs*)
581 basic_machine=crisv32-axis
582 ;;
583 cris | cris-* | etrax*)
584 basic_machine=cris-axis
585 ;;
586 crx)
587 basic_machine=crx-unknown
588 os=-elf
589 ;;
590 da30 | da30-*)
591 basic_machine=m68k-da30
592 ;;
593 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
594 basic_machine=mips-dec
595 ;;
596 decsystem10* | dec10*)
597 basic_machine=pdp10-dec
598 os=-tops10
599 ;;
600 decsystem20* | dec20*)
601 basic_machine=pdp10-dec
602 os=-tops20
603 ;;
604 delta | 3300 | motorola-3300 | motorola-delta \
605 | 3300-motorola | delta-motorola)
606 basic_machine=m68k-motorola
607 ;;
608 delta88)
609 basic_machine=m88k-motorola
610 os=-sysv3
611 ;;
612 dicos)
613 basic_machine=i686-pc
614 os=-dicos
615 ;;
616 djgpp)
617 basic_machine=i586-pc
618 os=-msdosdjgpp
619 ;;
620 dpx20 | dpx20-*)
621 basic_machine=rs6000-bull
622 os=-bosx
623 ;;
624 dpx2* | dpx2*-bull)
625 basic_machine=m68k-bull
626 os=-sysv3
627 ;;
628 ebmon29k)
629 basic_machine=a29k-amd
630 os=-ebmon
631 ;;
632 elxsi)
633 basic_machine=elxsi-elxsi
634 os=-bsd
635 ;;
636 encore | umax | mmax)
637 basic_machine=ns32k-encore
638 ;;
639 es1800 | OSE68k | ose68k | ose | OSE)
640 basic_machine=m68k-ericsson
641 os=-ose
642 ;;
643 fx2800)
644 basic_machine=i860-alliant
645 ;;
646 genix)
647 basic_machine=ns32k-ns
648 ;;
649 gmicro)
650 basic_machine=tron-gmicro
651 os=-sysv
652 ;;
653 go32)
654 basic_machine=i386-pc
655 os=-go32
656 ;;
657 h3050r* | hiux*)
658 basic_machine=hppa1.1-hitachi
659 os=-hiuxwe2
660 ;;
661 h8300hms)
662 basic_machine=h8300-hitachi
663 os=-hms
664 ;;
665 h8300xray)
666 basic_machine=h8300-hitachi
667 os=-xray
668 ;;
669 h8500hms)
670 basic_machine=h8500-hitachi
671 os=-hms
672 ;;
673 harris)
674 basic_machine=m88k-harris
675 os=-sysv3
676 ;;
677 hp300-*)
678 basic_machine=m68k-hp
679 ;;
680 hp300bsd)
681 basic_machine=m68k-hp
682 os=-bsd
683 ;;
684 hp300hpux)
685 basic_machine=m68k-hp
686 os=-hpux
687 ;;
688 hp3k9[0-9][0-9] | hp9[0-9][0-9])
689 basic_machine=hppa1.0-hp
690 ;;
691 hp9k2[0-9][0-9] | hp9k31[0-9])
692 basic_machine=m68000-hp
693 ;;
694 hp9k3[2-9][0-9])
695 basic_machine=m68k-hp
696 ;;
697 hp9k6[0-9][0-9] | hp6[0-9][0-9])
698 basic_machine=hppa1.0-hp
699 ;;
700 hp9k7[0-79][0-9] | hp7[0-79][0-9])
701 basic_machine=hppa1.1-hp
702 ;;
703 hp9k78[0-9] | hp78[0-9])
704 # FIXME: really hppa2.0-hp
705 basic_machine=hppa1.1-hp
706 ;;
707 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
708 # FIXME: really hppa2.0-hp
709 basic_machine=hppa1.1-hp
710 ;;
711 hp9k8[0-9][13679] | hp8[0-9][13679])
712 basic_machine=hppa1.1-hp
713 ;;
714 hp9k8[0-9][0-9] | hp8[0-9][0-9])
715 basic_machine=hppa1.0-hp
716 ;;
717 hppa-next)
718 os=-nextstep3
719 ;;
720 hppaosf)
721 basic_machine=hppa1.1-hp
722 os=-osf
723 ;;
724 hppro)
725 basic_machine=hppa1.1-hp
726 os=-proelf
727 ;;
728 i370-ibm* | ibm*)
729 basic_machine=i370-ibm
730 ;;
731 i*86v32)
732 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
733 os=-sysv32
734 ;;
735 i*86v4*)
736 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
737 os=-sysv4
738 ;;
739 i*86v)
740 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
741 os=-sysv
742 ;;
743 i*86sol2)
744 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
745 os=-solaris2
746 ;;
747 i386mach)
748 basic_machine=i386-mach
749 os=-mach
750 ;;
751 i386-vsta | vsta)
752 basic_machine=i386-unknown
753 os=-vsta
754 ;;
755 iris | iris4d)
756 basic_machine=mips-sgi
757 case $os in
758 -irix*)
759 ;;
760 *)
761 os=-irix4
762 ;;
763 esac
764 ;;
765 isi68 | isi)
766 basic_machine=m68k-isi
767 os=-sysv
768 ;;
769 m68knommu)
770 basic_machine=m68k-unknown
771 os=-linux
772 ;;
773 m68knommu-*)
774 basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
775 os=-linux
776 ;;
777 m88k-omron*)
778 basic_machine=m88k-omron
779 ;;
780 magnum | m3230)
781 basic_machine=mips-mips
782 os=-sysv
783 ;;
784 merlin)
785 basic_machine=ns32k-utek
786 os=-sysv
787 ;;
788 microblaze*)
789 basic_machine=microblaze-xilinx
790 ;;
791 mingw64)
792 basic_machine=x86_64-pc
793 os=-mingw64
794 ;;
795 mingw32)
796 basic_machine=i386-pc
797 os=-mingw32
798 ;;
799 mingw32ce)
800 basic_machine=arm-unknown
801 os=-mingw32ce
802 ;;
803 miniframe)
804 basic_machine=m68000-convergent
805 ;;
806 *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
807 basic_machine=m68k-atari
808 os=-mint
809 ;;
810 mips3*-*)
811 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
812 ;;
813 mips3*)
814 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
815 ;;
816 monitor)
817 basic_machine=m68k-rom68k
818 os=-coff
819 ;;
820 morphos)
821 basic_machine=powerpc-unknown
822 os=-morphos
823 ;;
824 msdos)
825 basic_machine=i386-pc
826 os=-msdos
827 ;;
828 ms1-*)
829 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
830 ;;
831 msys)
832 basic_machine=i386-pc
833 os=-msys
834 ;;
835 mvs)
836 basic_machine=i370-ibm
837 os=-mvs
838 ;;
839 nacl)
840 basic_machine=le32-unknown
841 os=-nacl
842 ;;
843 ncr3000)
844 basic_machine=i486-ncr
845 os=-sysv4
846 ;;
847 netbsd386)
848 basic_machine=i386-unknown
849 os=-netbsd
850 ;;
851 netwinder)
852 basic_machine=armv4l-rebel
853 os=-linux
854 ;;
855 news | news700 | news800 | news900)
856 basic_machine=m68k-sony
857 os=-newsos
858 ;;
859 news1000)
860 basic_machine=m68030-sony
861 os=-newsos
862 ;;
863 news-3600 | risc-news)
864 basic_machine=mips-sony
865 os=-newsos
866 ;;
867 necv70)
868 basic_machine=v70-nec
869 os=-sysv
870 ;;
871 next | m*-next )
872 basic_machine=m68k-next
873 case $os in
874 -nextstep* )
875 ;;
876 -ns2*)
877 os=-nextstep2
878 ;;
879 *)
880 os=-nextstep3
881 ;;
882 esac
883 ;;
884 nh3000)
885 basic_machine=m68k-harris
886 os=-cxux
887 ;;
888 nh[45]000)
889 basic_machine=m88k-harris
890 os=-cxux
891 ;;
892 nindy960)
893 basic_machine=i960-intel
894 os=-nindy
895 ;;
896 mon960)
897 basic_machine=i960-intel
898 os=-mon960
899 ;;
900 nonstopux)
901 basic_machine=mips-compaq
902 os=-nonstopux
903 ;;
904 np1)
905 basic_machine=np1-gould
906 ;;
907 neo-tandem)
908 basic_machine=neo-tandem
909 ;;
910 nse-tandem)
911 basic_machine=nse-tandem
912 ;;
913 nsr-tandem)
914 basic_machine=nsr-tandem
915 ;;
916 op50n-* | op60c-*)
917 basic_machine=hppa1.1-oki
918 os=-proelf
919 ;;
920 openrisc | openrisc-*)
921 basic_machine=or32-unknown
922 ;;
923 os400)
924 basic_machine=powerpc-ibm
925 os=-os400
926 ;;
927 OSE68000 | ose68000)
928 basic_machine=m68000-ericsson
929 os=-ose
930 ;;
931 os68k)
932 basic_machine=m68k-none
933 os=-os68k
934 ;;
935 pa-hitachi)
936 basic_machine=hppa1.1-hitachi
937 os=-hiuxwe2
938 ;;
939 paragon)
940 basic_machine=i860-intel
941 os=-osf
942 ;;
943 parisc)
944 basic_machine=hppa-unknown
945 os=-linux
946 ;;
947 parisc-*)
948 basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
949 os=-linux
950 ;;
951 pbd)
952 basic_machine=sparc-tti
953 ;;
954 pbb)
955 basic_machine=m68k-tti
956 ;;
957 pc532 | pc532-*)
958 basic_machine=ns32k-pc532
959 ;;
960 pc98)
961 basic_machine=i386-pc
962 ;;
963 pc98-*)
964 basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
965 ;;
966 pentium | p5 | k5 | k6 | nexgen | viac3)
967 basic_machine=i586-pc
968 ;;
969 pentiumpro | p6 | 6x86 | athlon | athlon_*)
970 basic_machine=i686-pc
971 ;;
972 pentiumii | pentium2 | pentiumiii | pentium3)
973 basic_machine=i686-pc
974 ;;
975 pentium4)
976 basic_machine=i786-pc
977 ;;
978 pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
979 basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
980 ;;
981 pentiumpro-* | p6-* | 6x86-* | athlon-*)
982 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
983 ;;
984 pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
985 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
986 ;;
987 pentium4-*)
988 basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
989 ;;
990 pn)
991 basic_machine=pn-gould
992 ;;
993 power) basic_machine=power-ibm
994 ;;
995 ppc | ppcbe) basic_machine=powerpc-unknown
996 ;;
997 ppc-* | ppcbe-*)
998 basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
999 ;;
1000 ppcle | powerpclittle | ppc-le | powerpc-little)
1001 basic_machine=powerpcle-unknown
1002 ;;
1003 ppcle-* | powerpclittle-*)
1004 basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
1005 ;;
1006 ppc64) basic_machine=powerpc64-unknown
1007 ;;
1008 ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
1009 ;;
1010 ppc64le | powerpc64little | ppc64-le | powerpc64-little)
1011 basic_machine=powerpc64le-unknown
1012 ;;
1013 ppc64le-* | powerpc64little-*)
1014 basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
1015 ;;
1016 ps2)
1017 basic_machine=i386-ibm
1018 ;;
1019 pw32)
1020 basic_machine=i586-unknown
1021 os=-pw32
1022 ;;
1023 rdos | rdos64)
1024 basic_machine=x86_64-pc
1025 os=-rdos
1026 ;;
1027 rdos32)
1028 basic_machine=i386-pc
1029 os=-rdos
1030 ;;
1031 rom68k)
1032 basic_machine=m68k-rom68k
1033 os=-coff
1034 ;;
1035 rm[46]00)
1036 basic_machine=mips-siemens
1037 ;;
1038 rtpc | rtpc-*)
1039 basic_machine=romp-ibm
1040 ;;
1041 s390 | s390-*)
1042 basic_machine=s390-ibm
1043 ;;
1044 s390x | s390x-*)
1045 basic_machine=s390x-ibm
1046 ;;
1047 sa29200)
1048 basic_machine=a29k-amd
1049 os=-udi
1050 ;;
1051 sb1)
1052 basic_machine=mipsisa64sb1-unknown
1053 ;;
1054 sb1el)
1055 basic_machine=mipsisa64sb1el-unknown
1056 ;;
1057 sde)
1058 basic_machine=mipsisa32-sde
1059 os=-elf
1060 ;;
1061 sei)
1062 basic_machine=mips-sei
1063 os=-seiux
1064 ;;
1065 sequent)
1066 basic_machine=i386-sequent
1067 ;;
1068 sh)
1069 basic_machine=sh-hitachi
1070 os=-hms
1071 ;;
1072 sh5el)
1073 basic_machine=sh5le-unknown
1074 ;;
1075 sh64)
1076 basic_machine=sh64-unknown
1077 ;;
1078 sparclite-wrs | simso-wrs)
1079 basic_machine=sparclite-wrs
1080 os=-vxworks
1081 ;;
1082 sps7)
1083 basic_machine=m68k-bull
1084 os=-sysv2
1085 ;;
1086 spur)
1087 basic_machine=spur-unknown
1088 ;;
1089 st2000)
1090 basic_machine=m68k-tandem
1091 ;;
1092 stratus)
1093 basic_machine=i860-stratus
1094 os=-sysv4
1095 ;;
1096 strongarm-* | thumb-*)
1097 basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
1098 ;;
1099 sun2)
1100 basic_machine=m68000-sun
1101 ;;
1102 sun2os3)
1103 basic_machine=m68000-sun
1104 os=-sunos3
1105 ;;
1106 sun2os4)
1107 basic_machine=m68000-sun
1108 os=-sunos4
1109 ;;
1110 sun3os3)
1111 basic_machine=m68k-sun
1112 os=-sunos3
1113 ;;
1114 sun3os4)
1115 basic_machine=m68k-sun
1116 os=-sunos4
1117 ;;
1118 sun4os3)
1119 basic_machine=sparc-sun
1120 os=-sunos3
1121 ;;
1122 sun4os4)
1123 basic_machine=sparc-sun
1124 os=-sunos4
1125 ;;
1126 sun4sol2)
1127 basic_machine=sparc-sun
1128 os=-solaris2
1129 ;;
1130 sun3 | sun3-*)
1131 basic_machine=m68k-sun
1132 ;;
1133 sun4)
1134 basic_machine=sparc-sun
1135 ;;
1136 sun386 | sun386i | roadrunner)
1137 basic_machine=i386-sun
1138 ;;
1139 sv1)
1140 basic_machine=sv1-cray
1141 os=-unicos
1142 ;;
1143 symmetry)
1144 basic_machine=i386-sequent
1145 os=-dynix
1146 ;;
1147 t3e)
1148 basic_machine=alphaev5-cray
1149 os=-unicos
1150 ;;
1151 t90)
1152 basic_machine=t90-cray
1153 os=-unicos
1154 ;;
1155 tile*)
1156 basic_machine=$basic_machine-unknown
1157 os=-linux-gnu
1158 ;;
1159 tx39)
1160 basic_machine=mipstx39-unknown
1161 ;;
1162 tx39el)
1163 basic_machine=mipstx39el-unknown
1164 ;;
1165 toad1)
1166 basic_machine=pdp10-xkl
1167 os=-tops20
1168 ;;
1169 tower | tower-32)
1170 basic_machine=m68k-ncr
1171 ;;
1172 tpf)
1173 basic_machine=s390x-ibm
1174 os=-tpf
1175 ;;
1176 udi29k)
1177 basic_machine=a29k-amd
1178 os=-udi
1179 ;;
1180 ultra3)
1181 basic_machine=a29k-nyu
1182 os=-sym1
1183 ;;
1184 v810 | necv810)
1185 basic_machine=v810-nec
1186 os=-none
1187 ;;
1188 vaxv)
1189 basic_machine=vax-dec
1190 os=-sysv
1191 ;;
1192 vms)
1193 basic_machine=vax-dec
1194 os=-vms
1195 ;;
1196 vpp*|vx|vx-*)
1197 basic_machine=f301-fujitsu
1198 ;;
1199 vxworks960)
1200 basic_machine=i960-wrs
1201 os=-vxworks
1202 ;;
1203 vxworks68)
1204 basic_machine=m68k-wrs
1205 os=-vxworks
1206 ;;
1207 vxworks29k)
1208 basic_machine=a29k-wrs
1209 os=-vxworks
1210 ;;
1211 w65*)
1212 basic_machine=w65-wdc
1213 os=-none
1214 ;;
1215 w89k-*)
1216 basic_machine=hppa1.1-winbond
1217 os=-proelf
1218 ;;
1219 xbox)
1220 basic_machine=i686-pc
1221 os=-mingw32
1222 ;;
1223 xps | xps100)
1224 basic_machine=xps100-honeywell
1225 ;;
1226 xscale-* | xscalee[bl]-*)
1227 basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
1228 ;;
1229 ymp)
1230 basic_machine=ymp-cray
1231 os=-unicos
1232 ;;
1233 z8k-*-coff)
1234 basic_machine=z8k-unknown
1235 os=-sim
1236 ;;
1237 z80-*-coff)
1238 basic_machine=z80-unknown
1239 os=-sim
1240 ;;
1241 none)
1242 basic_machine=none-none
1243 os=-none
1244 ;;
1245
1246 # Here we handle the default manufacturer of certain CPU types. It is in
1247 # some cases the only manufacturer, in others, it is the most popular.
1248 w89k)
1249 basic_machine=hppa1.1-winbond
1250 ;;
1251 op50n)
1252 basic_machine=hppa1.1-oki
1253 ;;
1254 op60c)
1255 basic_machine=hppa1.1-oki
1256 ;;
1257 romp)
1258 basic_machine=romp-ibm
1259 ;;
1260 mmix)
1261 basic_machine=mmix-knuth
1262 ;;
1263 rs6000)
1264 basic_machine=rs6000-ibm
1265 ;;
1266 vax)
1267 basic_machine=vax-dec
1268 ;;
1269 pdp10)
1270 # there are many clones, so DEC is not a safe bet
1271 basic_machine=pdp10-unknown
1272 ;;
1273 pdp11)
1274 basic_machine=pdp11-dec
1275 ;;
1276 we32k)
1277 basic_machine=we32k-att
1278 ;;
1279 sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
1280 basic_machine=sh-unknown
1281 ;;
1282 sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1283 basic_machine=sparc-sun
1284 ;;
1285 cydra)
1286 basic_machine=cydra-cydrome
1287 ;;
1288 orion)
1289 basic_machine=orion-highlevel
1290 ;;
1291 orion105)
1292 basic_machine=clipper-highlevel
1293 ;;
1294 mac | mpw | mac-mpw)
1295 basic_machine=m68k-apple
1296 ;;
1297 pmac | pmac-mpw)
1298 basic_machine=powerpc-apple
1299 ;;
1300 *-unknown)
1301 # Make sure to match an already-canonicalized machine name.
1302 ;;
1303 *)
1304 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1305 exit 1
1306 ;;
1307 esac
1308
1309 # Here we canonicalize certain aliases for manufacturers.
1310 case $basic_machine in
1311 *-digital*)
1312 basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1313 ;;
1314 *-commodore*)
1315 basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1316 ;;
1317 *)
1318 ;;
1319 esac
1320
1321 # Decode manufacturer-specific aliases for certain operating systems.
1322
1323 if [ x"$os" != x"" ]
1324 then
1325 case $os in
1326 # First match some system type aliases
1327 # that might get confused with valid system types.
1328 # -solaris* is a basic system type, with this one exception.
1329 -auroraux)
1330 os=-auroraux
1331 ;;
1332 -solaris1 | -solaris1.*)
1333 os=`echo $os | sed -e 's|solaris1|sunos4|'`
1334 ;;
1335 -solaris)
1336 os=-solaris2
1337 ;;
1338 -svr4*)
1339 os=-sysv4
1340 ;;
1341 -unixware*)
1342 os=-sysv4.2uw
1343 ;;
1344 -gnu/linux*)
1345 os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1346 ;;
1347 # First accept the basic system types.
1348 # The portable systems comes first.
1349 # Each alternative MUST END IN A *, to match a version number.
1350 # -sysv* is not here because it comes later, after sysvr4.
1351 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1352 | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
1353 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
1354 | -sym* | -kopensolaris* | -plan9* \
1355 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1356 | -aos* | -aros* \
1357 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1358 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1359 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1360 | -bitrig* | -openbsd* | -solidbsd* \
1361 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1362 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1363 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1364 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1365 | -chorusos* | -chorusrdb* | -cegcc* \
1366 | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1367 | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
1368 | -linux-newlib* | -linux-musl* | -linux-uclibc* \
1369 | -uxpv* | -beos* | -mpeix* | -udk* \
1370 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1371 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1372 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1373 | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1374 | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1375 | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1376 | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
1377 # Remember, each alternative MUST END IN *, to match a version number.
1378 ;;
1379 -qnx*)
1380 case $basic_machine in
1381 x86-* | i*86-*)
1382 ;;
1383 *)
1384 os=-nto$os
1385 ;;
1386 esac
1387 ;;
1388 -nto-qnx*)
1389 ;;
1390 -nto*)
1391 os=`echo $os | sed -e 's|nto|nto-qnx|'`
1392 ;;
1393 -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1394 | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1395 | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1396 ;;
1397 -mac*)
1398 os=`echo $os | sed -e 's|mac|macos|'`
1399 ;;
1400 -linux-dietlibc)
1401 os=-linux-dietlibc
1402 ;;
1403 -linux*)
1404 os=`echo $os | sed -e 's|linux|linux-gnu|'`
1405 ;;
1406 -sunos5*)
1407 os=`echo $os | sed -e 's|sunos5|solaris2|'`
1408 ;;
1409 -sunos6*)
1410 os=`echo $os | sed -e 's|sunos6|solaris3|'`
1411 ;;
1412 -opened*)
1413 os=-openedition
1414 ;;
1415 -os400*)
1416 os=-os400
1417 ;;
1418 -wince*)
1419 os=-wince
1420 ;;
1421 -osfrose*)
1422 os=-osfrose
1423 ;;
1424 -osf*)
1425 os=-osf
1426 ;;
1427 -utek*)
1428 os=-bsd
1429 ;;
1430 -dynix*)
1431 os=-bsd
1432 ;;
1433 -acis*)
1434 os=-aos
1435 ;;
1436 -atheos*)
1437 os=-atheos
1438 ;;
1439 -syllable*)
1440 os=-syllable
1441 ;;
1442 -386bsd)
1443 os=-bsd
1444 ;;
1445 -ctix* | -uts*)
1446 os=-sysv
1447 ;;
1448 -nova*)
1449 os=-rtmk-nova
1450 ;;
1451 -ns2 )
1452 os=-nextstep2
1453 ;;
1454 -nsk*)
1455 os=-nsk
1456 ;;
1457 # Preserve the version number of sinix5.
1458 -sinix5.*)
1459 os=`echo $os | sed -e 's|sinix|sysv|'`
1460 ;;
1461 -sinix*)
1462 os=-sysv4
1463 ;;
1464 -tpf*)
1465 os=-tpf
1466 ;;
1467 -triton*)
1468 os=-sysv3
1469 ;;
1470 -oss*)
1471 os=-sysv3
1472 ;;
1473 -svr4)
1474 os=-sysv4
1475 ;;
1476 -svr3)
1477 os=-sysv3
1478 ;;
1479 -sysvr4)
1480 os=-sysv4
1481 ;;
1482 # This must come after -sysvr4.
1483 -sysv*)
1484 ;;
1485 -ose*)
1486 os=-ose
1487 ;;
1488 -es1800*)
1489 os=-ose
1490 ;;
1491 -xenix)
1492 os=-xenix
1493 ;;
1494 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1495 os=-mint
1496 ;;
1497 -aros*)
1498 os=-aros
1499 ;;
1500 -zvmoe)
1501 os=-zvmoe
1502 ;;
1503 -dicos*)
1504 os=-dicos
1505 ;;
1506 -nacl*)
1507 ;;
1508 -none)
1509 ;;
1510 *)
1511 # Get rid of the `-' at the beginning of $os.
1512 os=`echo $os | sed 's/[^-]*-//'`
1513 echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1514 exit 1
1515 ;;
1516 esac
1517 else
1518
1519 # Here we handle the default operating systems that come with various machines.
1520 # The value should be what the vendor currently ships out the door with their
1521 # machine or put another way, the most popular os provided with the machine.
1522
1523 # Note that if you're going to try to match "-MANUFACTURER" here (say,
1524 # "-sun"), then you have to tell the case statement up towards the top
1525 # that MANUFACTURER isn't an operating system. Otherwise, code above
1526 # will signal an error saying that MANUFACTURER isn't an operating
1527 # system, and we'll never get to this point.
1528
1529 case $basic_machine in
1530 score-*)
1531 os=-elf
1532 ;;
1533 spu-*)
1534 os=-elf
1535 ;;
1536 *-acorn)
1537 os=-riscix1.2
1538 ;;
1539 arm*-rebel)
1540 os=-linux
1541 ;;
1542 arm*-semi)
1543 os=-aout
1544 ;;
1545 c4x-* | tic4x-*)
1546 os=-coff
1547 ;;
1548 hexagon-*)
1549 os=-elf
1550 ;;
1551 tic54x-*)
1552 os=-coff
1553 ;;
1554 tic55x-*)
1555 os=-coff
1556 ;;
1557 tic6x-*)
1558 os=-coff
1559 ;;
1560 # This must come before the *-dec entry.
1561 pdp10-*)
1562 os=-tops20
1563 ;;
1564 pdp11-*)
1565 os=-none
1566 ;;
1567 *-dec | vax-*)
1568 os=-ultrix4.2
1569 ;;
1570 m68*-apollo)
1571 os=-domain
1572 ;;
1573 i386-sun)
1574 os=-sunos4.0.2
1575 ;;
1576 m68000-sun)
1577 os=-sunos3
1578 ;;
1579 m68*-cisco)
1580 os=-aout
1581 ;;
1582 mep-*)
1583 os=-elf
1584 ;;
1585 mips*-cisco)
1586 os=-elf
1587 ;;
1588 mips*-*)
1589 os=-elf
1590 ;;
1591 or1k-*)
1592 os=-elf
1593 ;;
1594 or32-*)
1595 os=-coff
1596 ;;
1597 *-tti) # must be before sparc entry or we get the wrong os.
1598 os=-sysv3
1599 ;;
1600 sparc-* | *-sun)
1601 os=-sunos4.1.1
1602 ;;
1603 *-be)
1604 os=-beos
1605 ;;
1606 *-haiku)
1607 os=-haiku
1608 ;;
1609 *-ibm)
1610 os=-aix
1611 ;;
1612 *-knuth)
1613 os=-mmixware
1614 ;;
1615 *-wec)
1616 os=-proelf
1617 ;;
1618 *-winbond)
1619 os=-proelf
1620 ;;
1621 *-oki)
1622 os=-proelf
1623 ;;
1624 *-hp)
1625 os=-hpux
1626 ;;
1627 *-hitachi)
1628 os=-hiux
1629 ;;
1630 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1631 os=-sysv
1632 ;;
1633 *-cbm)
1634 os=-amigaos
1635 ;;
1636 *-dg)
1637 os=-dgux
1638 ;;
1639 *-dolphin)
1640 os=-sysv3
1641 ;;
1642 m68k-ccur)
1643 os=-rtu
1644 ;;
1645 m88k-omron*)
1646 os=-luna
1647 ;;
1648 *-next )
1649 os=-nextstep
1650 ;;
1651 *-sequent)
1652 os=-ptx
1653 ;;
1654 *-crds)
1655 os=-unos
1656 ;;
1657 *-ns)
1658 os=-genix
1659 ;;
1660 i370-*)
1661 os=-mvs
1662 ;;
1663 *-next)
1664 os=-nextstep3
1665 ;;
1666 *-gould)
1667 os=-sysv
1668 ;;
1669 *-highlevel)
1670 os=-bsd
1671 ;;
1672 *-encore)
1673 os=-bsd
1674 ;;
1675 *-sgi)
1676 os=-irix
1677 ;;
1678 *-siemens)
1679 os=-sysv4
1680 ;;
1681 *-masscomp)
1682 os=-rtu
1683 ;;
1684 f30[01]-fujitsu | f700-fujitsu)
1685 os=-uxpv
1686 ;;
1687 *-rom68k)
1688 os=-coff
1689 ;;
1690 *-*bug)
1691 os=-coff
1692 ;;
1693 *-apple)
1694 os=-macos
1695 ;;
1696 *-atari*)
1697 os=-mint
1698 ;;
1699 *)
1700 os=-none
1701 ;;
1702 esac
1703 fi
1704
1705 # Here we handle the case where we know the os, and the CPU type, but not the
1706 # manufacturer. We pick the logical manufacturer.
1707 vendor=unknown
1708 case $basic_machine in
1709 *-unknown)
1710 case $os in
1711 -riscix*)
1712 vendor=acorn
1713 ;;
1714 -sunos*)
1715 vendor=sun
1716 ;;
1717 -cnk*|-aix*)
1718 vendor=ibm
1719 ;;
1720 -beos*)
1721 vendor=be
1722 ;;
1723 -hpux*)
1724 vendor=hp
1725 ;;
1726 -mpeix*)
1727 vendor=hp
1728 ;;
1729 -hiux*)
1730 vendor=hitachi
1731 ;;
1732 -unos*)
1733 vendor=crds
1734 ;;
1735 -dgux*)
1736 vendor=dg
1737 ;;
1738 -luna*)
1739 vendor=omron
1740 ;;
1741 -genix*)
1742 vendor=ns
1743 ;;
1744 -mvs* | -opened*)
1745 vendor=ibm
1746 ;;
1747 -os400*)
1748 vendor=ibm
1749 ;;
1750 -ptx*)
1751 vendor=sequent
1752 ;;
1753 -tpf*)
1754 vendor=ibm
1755 ;;
1756 -vxsim* | -vxworks* | -windiss*)
1757 vendor=wrs
1758 ;;
1759 -aux*)
1760 vendor=apple
1761 ;;
1762 -hms*)
1763 vendor=hitachi
1764 ;;
1765 -mpw* | -macos*)
1766 vendor=apple
1767 ;;
1768 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1769 vendor=atari
1770 ;;
1771 -vos*)
1772 vendor=stratus
1773 ;;
1774 esac
1775 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1776 ;;
1777 esac
1778
1779 echo $basic_machine$os
1780 exit
1781
1782 # Local variables:
1783 # eval: (add-hook 'write-file-hooks 'time-stamp)
1784 # time-stamp-start: "timestamp='"
1785 # time-stamp-format: "%:y-%02m-%02d"
1786 # time-stamp-end: "'"
1787 # End:
+0
-791
config/depcomp less more
0 #! /bin/sh
1 # depcomp - compile a program generating dependencies as side-effects
2
3 scriptversion=2013-05-30.07; # UTC
4
5 # Copyright (C) 1999-2013 Free Software Foundation, Inc.
6
7 # This program is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 2, or (at your option)
10 # any later version.
11
12 # This program is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 # GNU General Public License for more details.
16
17 # You should have received a copy of the GNU General Public License
18 # along with this program. If not, see <http://www.gnu.org/licenses/>.
19
20 # As a special exception to the GNU General Public License, if you
21 # distribute this file as part of a program that contains a
22 # configuration script generated by Autoconf, you may include it under
23 # the same distribution terms that you use for the rest of that program.
24
25 # Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
26
27 case $1 in
28 '')
29 echo "$0: No command. Try '$0 --help' for more information." 1>&2
30 exit 1;
31 ;;
32 -h | --h*)
33 cat <<\EOF
34 Usage: depcomp [--help] [--version] PROGRAM [ARGS]
35
36 Run PROGRAMS ARGS to compile a file, generating dependencies
37 as side-effects.
38
39 Environment variables:
40 depmode Dependency tracking mode.
41 source Source file read by 'PROGRAMS ARGS'.
42 object Object file output by 'PROGRAMS ARGS'.
43 DEPDIR directory where to store dependencies.
44 depfile Dependency file to output.
45 tmpdepfile Temporary file to use when outputting dependencies.
46 libtool Whether libtool is used (yes/no).
47
48 Report bugs to <bug-automake@gnu.org>.
49 EOF
50 exit $?
51 ;;
52 -v | --v*)
53 echo "depcomp $scriptversion"
54 exit $?
55 ;;
56 esac
57
58 # Get the directory component of the given path, and save it in the
59 # global variables '$dir'. Note that this directory component will
60 # be either empty or ending with a '/' character. This is deliberate.
61 set_dir_from ()
62 {
63 case $1 in
64 */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
65 *) dir=;;
66 esac
67 }
68
69 # Get the suffix-stripped basename of the given path, and save it the
70 # global variable '$base'.
71 set_base_from ()
72 {
73 base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
74 }
75
76 # If no dependency file was actually created by the compiler invocation,
77 # we still have to create a dummy depfile, to avoid errors with the
78 # Makefile "include basename.Plo" scheme.
79 make_dummy_depfile ()
80 {
81 echo "#dummy" > "$depfile"
82 }
83
84 # Factor out some common post-processing of the generated depfile.
85 # Requires the auxiliary global variable '$tmpdepfile' to be set.
86 aix_post_process_depfile ()
87 {
88 # If the compiler actually managed to produce a dependency file,
89 # post-process it.
90 if test -f "$tmpdepfile"; then
91 # Each line is of the form 'foo.o: dependency.h'.
92 # Do two passes, one to just change these to
93 # $object: dependency.h
94 # and one to simply output
95 # dependency.h:
96 # which is needed to avoid the deleted-header problem.
97 { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
98 sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
99 } > "$depfile"
100 rm -f "$tmpdepfile"
101 else
102 make_dummy_depfile
103 fi
104 }
105
106 # A tabulation character.
107 tab=' '
108 # A newline character.
109 nl='
110 '
111 # Character ranges might be problematic outside the C locale.
112 # These definitions help.
113 upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
114 lower=abcdefghijklmnopqrstuvwxyz
115 digits=0123456789
116 alpha=${upper}${lower}
117
118 if test -z "$depmode" || test -z "$source" || test -z "$object"; then
119 echo "depcomp: Variables source, object and depmode must be set" 1>&2
120 exit 1
121 fi
122
123 # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
124 depfile=${depfile-`echo "$object" |
125 sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
126 tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
127
128 rm -f "$tmpdepfile"
129
130 # Avoid interferences from the environment.
131 gccflag= dashmflag=
132
133 # Some modes work just like other modes, but use different flags. We
134 # parameterize here, but still list the modes in the big case below,
135 # to make depend.m4 easier to write. Note that we *cannot* use a case
136 # here, because this file can only contain one case statement.
137 if test "$depmode" = hp; then
138 # HP compiler uses -M and no extra arg.
139 gccflag=-M
140 depmode=gcc
141 fi
142
143 if test "$depmode" = dashXmstdout; then
144 # This is just like dashmstdout with a different argument.
145 dashmflag=-xM
146 depmode=dashmstdout
147 fi
148
149 cygpath_u="cygpath -u -f -"
150 if test "$depmode" = msvcmsys; then
151 # This is just like msvisualcpp but w/o cygpath translation.
152 # Just convert the backslash-escaped backslashes to single forward
153 # slashes to satisfy depend.m4
154 cygpath_u='sed s,\\\\,/,g'
155 depmode=msvisualcpp
156 fi
157
158 if test "$depmode" = msvc7msys; then
159 # This is just like msvc7 but w/o cygpath translation.
160 # Just convert the backslash-escaped backslashes to single forward
161 # slashes to satisfy depend.m4
162 cygpath_u='sed s,\\\\,/,g'
163 depmode=msvc7
164 fi
165
166 if test "$depmode" = xlc; then
167 # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
168 gccflag=-qmakedep=gcc,-MF
169 depmode=gcc
170 fi
171
172 case "$depmode" in
173 gcc3)
174 ## gcc 3 implements dependency tracking that does exactly what
175 ## we want. Yay! Note: for some reason libtool 1.4 doesn't like
176 ## it if -MD -MP comes after the -MF stuff. Hmm.
177 ## Unfortunately, FreeBSD c89 acceptance of flags depends upon
178 ## the command line argument order; so add the flags where they
179 ## appear in depend2.am. Note that the slowdown incurred here
180 ## affects only configure: in makefiles, %FASTDEP% shortcuts this.
181 for arg
182 do
183 case $arg in
184 -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
185 *) set fnord "$@" "$arg" ;;
186 esac
187 shift # fnord
188 shift # $arg
189 done
190 "$@"
191 stat=$?
192 if test $stat -ne 0; then
193 rm -f "$tmpdepfile"
194 exit $stat
195 fi
196 mv "$tmpdepfile" "$depfile"
197 ;;
198
199 gcc)
200 ## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
201 ## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
202 ## (see the conditional assignment to $gccflag above).
203 ## There are various ways to get dependency output from gcc. Here's
204 ## why we pick this rather obscure method:
205 ## - Don't want to use -MD because we'd like the dependencies to end
206 ## up in a subdir. Having to rename by hand is ugly.
207 ## (We might end up doing this anyway to support other compilers.)
208 ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
209 ## -MM, not -M (despite what the docs say). Also, it might not be
210 ## supported by the other compilers which use the 'gcc' depmode.
211 ## - Using -M directly means running the compiler twice (even worse
212 ## than renaming).
213 if test -z "$gccflag"; then
214 gccflag=-MD,
215 fi
216 "$@" -Wp,"$gccflag$tmpdepfile"
217 stat=$?
218 if test $stat -ne 0; then
219 rm -f "$tmpdepfile"
220 exit $stat
221 fi
222 rm -f "$depfile"
223 echo "$object : \\" > "$depfile"
224 # The second -e expression handles DOS-style file names with drive
225 # letters.
226 sed -e 's/^[^:]*: / /' \
227 -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
228 ## This next piece of magic avoids the "deleted header file" problem.
229 ## The problem is that when a header file which appears in a .P file
230 ## is deleted, the dependency causes make to die (because there is
231 ## typically no way to rebuild the header). We avoid this by adding
232 ## dummy dependencies for each header file. Too bad gcc doesn't do
233 ## this for us directly.
234 ## Some versions of gcc put a space before the ':'. On the theory
235 ## that the space means something, we add a space to the output as
236 ## well. hp depmode also adds that space, but also prefixes the VPATH
237 ## to the object. Take care to not repeat it in the output.
238 ## Some versions of the HPUX 10.20 sed can't process this invocation
239 ## correctly. Breaking it into two sed invocations is a workaround.
240 tr ' ' "$nl" < "$tmpdepfile" \
241 | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
242 | sed -e 's/$/ :/' >> "$depfile"
243 rm -f "$tmpdepfile"
244 ;;
245
246 hp)
247 # This case exists only to let depend.m4 do its work. It works by
248 # looking at the text of this script. This case will never be run,
249 # since it is checked for above.
250 exit 1
251 ;;
252
253 sgi)
254 if test "$libtool" = yes; then
255 "$@" "-Wp,-MDupdate,$tmpdepfile"
256 else
257 "$@" -MDupdate "$tmpdepfile"
258 fi
259 stat=$?
260 if test $stat -ne 0; then
261 rm -f "$tmpdepfile"
262 exit $stat
263 fi
264 rm -f "$depfile"
265
266 if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
267 echo "$object : \\" > "$depfile"
268 # Clip off the initial element (the dependent). Don't try to be
269 # clever and replace this with sed code, as IRIX sed won't handle
270 # lines with more than a fixed number of characters (4096 in
271 # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
272 # the IRIX cc adds comments like '#:fec' to the end of the
273 # dependency line.
274 tr ' ' "$nl" < "$tmpdepfile" \
275 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
276 | tr "$nl" ' ' >> "$depfile"
277 echo >> "$depfile"
278 # The second pass generates a dummy entry for each header file.
279 tr ' ' "$nl" < "$tmpdepfile" \
280 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
281 >> "$depfile"
282 else
283 make_dummy_depfile
284 fi
285 rm -f "$tmpdepfile"
286 ;;
287
288 xlc)
289 # This case exists only to let depend.m4 do its work. It works by
290 # looking at the text of this script. This case will never be run,
291 # since it is checked for above.
292 exit 1
293 ;;
294
295 aix)
296 # The C for AIX Compiler uses -M and outputs the dependencies
297 # in a .u file. In older versions, this file always lives in the
298 # current directory. Also, the AIX compiler puts '$object:' at the
299 # start of each line; $object doesn't have directory information.
300 # Version 6 uses the directory in both cases.
301 set_dir_from "$object"
302 set_base_from "$object"
303 if test "$libtool" = yes; then
304 tmpdepfile1=$dir$base.u
305 tmpdepfile2=$base.u
306 tmpdepfile3=$dir.libs/$base.u
307 "$@" -Wc,-M
308 else
309 tmpdepfile1=$dir$base.u
310 tmpdepfile2=$dir$base.u
311 tmpdepfile3=$dir$base.u
312 "$@" -M
313 fi
314 stat=$?
315 if test $stat -ne 0; then
316 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
317 exit $stat
318 fi
319
320 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
321 do
322 test -f "$tmpdepfile" && break
323 done
324 aix_post_process_depfile
325 ;;
326
327 tcc)
328 # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
329 # FIXME: That version still under development at the moment of writing.
330 # Make that this statement remains true also for stable, released
331 # versions.
332 # It will wrap lines (doesn't matter whether long or short) with a
333 # trailing '\', as in:
334 #
335 # foo.o : \
336 # foo.c \
337 # foo.h \
338 #
339 # It will put a trailing '\' even on the last line, and will use leading
340 # spaces rather than leading tabs (at least since its commit 0394caf7
341 # "Emit spaces for -MD").
342 "$@" -MD -MF "$tmpdepfile"
343 stat=$?
344 if test $stat -ne 0; then
345 rm -f "$tmpdepfile"
346 exit $stat
347 fi
348 rm -f "$depfile"
349 # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
350 # We have to change lines of the first kind to '$object: \'.
351 sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
352 # And for each line of the second kind, we have to emit a 'dep.h:'
353 # dummy dependency, to avoid the deleted-header problem.
354 sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
355 rm -f "$tmpdepfile"
356 ;;
357
358 ## The order of this option in the case statement is important, since the
359 ## shell code in configure will try each of these formats in the order
360 ## listed in this file. A plain '-MD' option would be understood by many
361 ## compilers, so we must ensure this comes after the gcc and icc options.
362 pgcc)
363 # Portland's C compiler understands '-MD'.
364 # Will always output deps to 'file.d' where file is the root name of the
365 # source file under compilation, even if file resides in a subdirectory.
366 # The object file name does not affect the name of the '.d' file.
367 # pgcc 10.2 will output
368 # foo.o: sub/foo.c sub/foo.h
369 # and will wrap long lines using '\' :
370 # foo.o: sub/foo.c ... \
371 # sub/foo.h ... \
372 # ...
373 set_dir_from "$object"
374 # Use the source, not the object, to determine the base name, since
375 # that's sadly what pgcc will do too.
376 set_base_from "$source"
377 tmpdepfile=$base.d
378
379 # For projects that build the same source file twice into different object
380 # files, the pgcc approach of using the *source* file root name can cause
381 # problems in parallel builds. Use a locking strategy to avoid stomping on
382 # the same $tmpdepfile.
383 lockdir=$base.d-lock
384 trap "
385 echo '$0: caught signal, cleaning up...' >&2
386 rmdir '$lockdir'
387 exit 1
388 " 1 2 13 15
389 numtries=100
390 i=$numtries
391 while test $i -gt 0; do
392 # mkdir is a portable test-and-set.
393 if mkdir "$lockdir" 2>/dev/null; then
394 # This process acquired the lock.
395 "$@" -MD
396 stat=$?
397 # Release the lock.
398 rmdir "$lockdir"
399 break
400 else
401 # If the lock is being held by a different process, wait
402 # until the winning process is done or we timeout.
403 while test -d "$lockdir" && test $i -gt 0; do
404 sleep 1
405 i=`expr $i - 1`
406 done
407 fi
408 i=`expr $i - 1`
409 done
410 trap - 1 2 13 15
411 if test $i -le 0; then
412 echo "$0: failed to acquire lock after $numtries attempts" >&2
413 echo "$0: check lockdir '$lockdir'" >&2
414 exit 1
415 fi
416
417 if test $stat -ne 0; then
418 rm -f "$tmpdepfile"
419 exit $stat
420 fi
421 rm -f "$depfile"
422 # Each line is of the form `foo.o: dependent.h',
423 # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
424 # Do two passes, one to just change these to
425 # `$object: dependent.h' and one to simply `dependent.h:'.
426 sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
427 # Some versions of the HPUX 10.20 sed can't process this invocation
428 # correctly. Breaking it into two sed invocations is a workaround.
429 sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
430 | sed -e 's/$/ :/' >> "$depfile"
431 rm -f "$tmpdepfile"
432 ;;
433
434 hp2)
435 # The "hp" stanza above does not work with aCC (C++) and HP's ia64
436 # compilers, which have integrated preprocessors. The correct option
437 # to use with these is +Maked; it writes dependencies to a file named
438 # 'foo.d', which lands next to the object file, wherever that
439 # happens to be.
440 # Much of this is similar to the tru64 case; see comments there.
441 set_dir_from "$object"
442 set_base_from "$object"
443 if test "$libtool" = yes; then
444 tmpdepfile1=$dir$base.d
445 tmpdepfile2=$dir.libs/$base.d
446 "$@" -Wc,+Maked
447 else
448 tmpdepfile1=$dir$base.d
449 tmpdepfile2=$dir$base.d
450 "$@" +Maked
451 fi
452 stat=$?
453 if test $stat -ne 0; then
454 rm -f "$tmpdepfile1" "$tmpdepfile2"
455 exit $stat
456 fi
457
458 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
459 do
460 test -f "$tmpdepfile" && break
461 done
462 if test -f "$tmpdepfile"; then
463 sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
464 # Add 'dependent.h:' lines.
465 sed -ne '2,${
466 s/^ *//
467 s/ \\*$//
468 s/$/:/
469 p
470 }' "$tmpdepfile" >> "$depfile"
471 else
472 make_dummy_depfile
473 fi
474 rm -f "$tmpdepfile" "$tmpdepfile2"
475 ;;
476
477 tru64)
478 # The Tru64 compiler uses -MD to generate dependencies as a side
479 # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
480 # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
481 # dependencies in 'foo.d' instead, so we check for that too.
482 # Subdirectories are respected.
483 set_dir_from "$object"
484 set_base_from "$object"
485
486 if test "$libtool" = yes; then
487 # Libtool generates 2 separate objects for the 2 libraries. These
488 # two compilations output dependencies in $dir.libs/$base.o.d and
489 # in $dir$base.o.d. We have to check for both files, because
490 # one of the two compilations can be disabled. We should prefer
491 # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
492 # automatically cleaned when .libs/ is deleted, while ignoring
493 # the former would cause a distcleancheck panic.
494 tmpdepfile1=$dir$base.o.d # libtool 1.5
495 tmpdepfile2=$dir.libs/$base.o.d # Likewise.
496 tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504
497 "$@" -Wc,-MD
498 else
499 tmpdepfile1=$dir$base.d
500 tmpdepfile2=$dir$base.d
501 tmpdepfile3=$dir$base.d
502 "$@" -MD
503 fi
504
505 stat=$?
506 if test $stat -ne 0; then
507 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
508 exit $stat
509 fi
510
511 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
512 do
513 test -f "$tmpdepfile" && break
514 done
515 # Same post-processing that is required for AIX mode.
516 aix_post_process_depfile
517 ;;
518
519 msvc7)
520 if test "$libtool" = yes; then
521 showIncludes=-Wc,-showIncludes
522 else
523 showIncludes=-showIncludes
524 fi
525 "$@" $showIncludes > "$tmpdepfile"
526 stat=$?
527 grep -v '^Note: including file: ' "$tmpdepfile"
528 if test $stat -ne 0; then
529 rm -f "$tmpdepfile"
530 exit $stat
531 fi
532 rm -f "$depfile"
533 echo "$object : \\" > "$depfile"
534 # The first sed program below extracts the file names and escapes
535 # backslashes for cygpath. The second sed program outputs the file
536 # name when reading, but also accumulates all include files in the
537 # hold buffer in order to output them again at the end. This only
538 # works with sed implementations that can handle large buffers.
539 sed < "$tmpdepfile" -n '
540 /^Note: including file: *\(.*\)/ {
541 s//\1/
542 s/\\/\\\\/g
543 p
544 }' | $cygpath_u | sort -u | sed -n '
545 s/ /\\ /g
546 s/\(.*\)/'"$tab"'\1 \\/p
547 s/.\(.*\) \\/\1:/
548 H
549 $ {
550 s/.*/'"$tab"'/
551 G
552 p
553 }' >> "$depfile"
554 echo >> "$depfile" # make sure the fragment doesn't end with a backslash
555 rm -f "$tmpdepfile"
556 ;;
557
558 msvc7msys)
559 # This case exists only to let depend.m4 do its work. It works by
560 # looking at the text of this script. This case will never be run,
561 # since it is checked for above.
562 exit 1
563 ;;
564
565 #nosideeffect)
566 # This comment above is used by automake to tell side-effect
567 # dependency tracking mechanisms from slower ones.
568
569 dashmstdout)
570 # Important note: in order to support this mode, a compiler *must*
571 # always write the preprocessed file to stdout, regardless of -o.
572 "$@" || exit $?
573
574 # Remove the call to Libtool.
575 if test "$libtool" = yes; then
576 while test "X$1" != 'X--mode=compile'; do
577 shift
578 done
579 shift
580 fi
581
582 # Remove '-o $object'.
583 IFS=" "
584 for arg
585 do
586 case $arg in
587 -o)
588 shift
589 ;;
590 $object)
591 shift
592 ;;
593 *)
594 set fnord "$@" "$arg"
595 shift # fnord
596 shift # $arg
597 ;;
598 esac
599 done
600
601 test -z "$dashmflag" && dashmflag=-M
602 # Require at least two characters before searching for ':'
603 # in the target name. This is to cope with DOS-style filenames:
604 # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
605 "$@" $dashmflag |
606 sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
607 rm -f "$depfile"
608 cat < "$tmpdepfile" > "$depfile"
609 # Some versions of the HPUX 10.20 sed can't process this sed invocation
610 # correctly. Breaking it into two sed invocations is a workaround.
611 tr ' ' "$nl" < "$tmpdepfile" \
612 | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
613 | sed -e 's/$/ :/' >> "$depfile"
614 rm -f "$tmpdepfile"
615 ;;
616
617 dashXmstdout)
618 # This case only exists to satisfy depend.m4. It is never actually
619 # run, as this mode is specially recognized in the preamble.
620 exit 1
621 ;;
622
623 makedepend)
624 "$@" || exit $?
625 # Remove any Libtool call
626 if test "$libtool" = yes; then
627 while test "X$1" != 'X--mode=compile'; do
628 shift
629 done
630 shift
631 fi
632 # X makedepend
633 shift
634 cleared=no eat=no
635 for arg
636 do
637 case $cleared in
638 no)
639 set ""; shift
640 cleared=yes ;;
641 esac
642 if test $eat = yes; then
643 eat=no
644 continue
645 fi
646 case "$arg" in
647 -D*|-I*)
648 set fnord "$@" "$arg"; shift ;;
649 # Strip any option that makedepend may not understand. Remove
650 # the object too, otherwise makedepend will parse it as a source file.
651 -arch)
652 eat=yes ;;
653 -*|$object)
654 ;;
655 *)
656 set fnord "$@" "$arg"; shift ;;
657 esac
658 done
659 obj_suffix=`echo "$object" | sed 's/^.*\././'`
660 touch "$tmpdepfile"
661 ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
662 rm -f "$depfile"
663 # makedepend may prepend the VPATH from the source file name to the object.
664 # No need to regex-escape $object, excess matching of '.' is harmless.
665 sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
666 # Some versions of the HPUX 10.20 sed can't process the last invocation
667 # correctly. Breaking it into two sed invocations is a workaround.
668 sed '1,2d' "$tmpdepfile" \
669 | tr ' ' "$nl" \
670 | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
671 | sed -e 's/$/ :/' >> "$depfile"
672 rm -f "$tmpdepfile" "$tmpdepfile".bak
673 ;;
674
675 cpp)
676 # Important note: in order to support this mode, a compiler *must*
677 # always write the preprocessed file to stdout.
678 "$@" || exit $?
679
680 # Remove the call to Libtool.
681 if test "$libtool" = yes; then
682 while test "X$1" != 'X--mode=compile'; do
683 shift
684 done
685 shift
686 fi
687
688 # Remove '-o $object'.
689 IFS=" "
690 for arg
691 do
692 case $arg in
693 -o)
694 shift
695 ;;
696 $object)
697 shift
698 ;;
699 *)
700 set fnord "$@" "$arg"
701 shift # fnord
702 shift # $arg
703 ;;
704 esac
705 done
706
707 "$@" -E \
708 | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
709 -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
710 | sed '$ s: \\$::' > "$tmpdepfile"
711 rm -f "$depfile"
712 echo "$object : \\" > "$depfile"
713 cat < "$tmpdepfile" >> "$depfile"
714 sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
715 rm -f "$tmpdepfile"
716 ;;
717
718 msvisualcpp)
719 # Important note: in order to support this mode, a compiler *must*
720 # always write the preprocessed file to stdout.
721 "$@" || exit $?
722
723 # Remove the call to Libtool.
724 if test "$libtool" = yes; then
725 while test "X$1" != 'X--mode=compile'; do
726 shift
727 done
728 shift
729 fi
730
731 IFS=" "
732 for arg
733 do
734 case "$arg" in
735 -o)
736 shift
737 ;;
738 $object)
739 shift
740 ;;
741 "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
742 set fnord "$@"
743 shift
744 shift
745 ;;
746 *)
747 set fnord "$@" "$arg"
748 shift
749 shift
750 ;;
751 esac
752 done
753 "$@" -E 2>/dev/null |
754 sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
755 rm -f "$depfile"
756 echo "$object : \\" > "$depfile"
757 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
758 echo "$tab" >> "$depfile"
759 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
760 rm -f "$tmpdepfile"
761 ;;
762
763 msvcmsys)
764 # This case exists only to let depend.m4 do its work. It works by
765 # looking at the text of this script. This case will never be run,
766 # since it is checked for above.
767 exit 1
768 ;;
769
770 none)
771 exec "$@"
772 ;;
773
774 *)
775 echo "Unknown depmode $depmode" 1>&2
776 exit 1
777 ;;
778 esac
779
780 exit 0
781
782 # Local Variables:
783 # mode: shell-script
784 # sh-indentation: 2
785 # eval: (add-hook 'write-file-hooks 'time-stamp)
786 # time-stamp-start: "scriptversion="
787 # time-stamp-format: "%:y-%02m-%02d.%02H"
788 # time-stamp-time-zone: "UTC"
789 # time-stamp-end: "; # UTC"
790 # End:
+0
-527
config/install-sh less more
0 #!/bin/sh
1 # install - install a program, script, or datafile
2
3 scriptversion=2011-11-20.07; # UTC
4
5 # This originates from X11R5 (mit/util/scripts/install.sh), which was
6 # later released in X11R6 (xc/config/util/install.sh) with the
7 # following copyright and license.
8 #
9 # Copyright (C) 1994 X Consortium
10 #
11 # Permission is hereby granted, free of charge, to any person obtaining a copy
12 # of this software and associated documentation files (the "Software"), to
13 # deal in the Software without restriction, including without limitation the
14 # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
15 # sell copies of the Software, and to permit persons to whom the Software is
16 # furnished to do so, subject to the following conditions:
17 #
18 # The above copyright notice and this permission notice shall be included in
19 # all copies or substantial portions of the Software.
20 #
21 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24 # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
25 # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
26 # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27 #
28 # Except as contained in this notice, the name of the X Consortium shall not
29 # be used in advertising or otherwise to promote the sale, use or other deal-
30 # ings in this Software without prior written authorization from the X Consor-
31 # tium.
32 #
33 #
34 # FSF changes to this file are in the public domain.
35 #
36 # Calling this script install-sh is preferred over install.sh, to prevent
37 # 'make' implicit rules from creating a file called install from it
38 # when there is no Makefile.
39 #
40 # This script is compatible with the BSD install script, but was written
41 # from scratch.
42
43 nl='
44 '
45 IFS=" "" $nl"
46
47 # set DOITPROG to echo to test this script
48
49 # Don't use :- since 4.3BSD and earlier shells don't like it.
50 doit=${DOITPROG-}
51 if test -z "$doit"; then
52 doit_exec=exec
53 else
54 doit_exec=$doit
55 fi
56
57 # Put in absolute file names if you don't have them in your path;
58 # or use environment vars.
59
60 chgrpprog=${CHGRPPROG-chgrp}
61 chmodprog=${CHMODPROG-chmod}
62 chownprog=${CHOWNPROG-chown}
63 cmpprog=${CMPPROG-cmp}
64 cpprog=${CPPROG-cp}
65 mkdirprog=${MKDIRPROG-mkdir}
66 mvprog=${MVPROG-mv}
67 rmprog=${RMPROG-rm}
68 stripprog=${STRIPPROG-strip}
69
70 posix_glob='?'
71 initialize_posix_glob='
72 test "$posix_glob" != "?" || {
73 if (set -f) 2>/dev/null; then
74 posix_glob=
75 else
76 posix_glob=:
77 fi
78 }
79 '
80
81 posix_mkdir=
82
83 # Desired mode of installed file.
84 mode=0755
85
86 chgrpcmd=
87 chmodcmd=$chmodprog
88 chowncmd=
89 mvcmd=$mvprog
90 rmcmd="$rmprog -f"
91 stripcmd=
92
93 src=
94 dst=
95 dir_arg=
96 dst_arg=
97
98 copy_on_change=false
99 no_target_directory=
100
101 usage="\
102 Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
103 or: $0 [OPTION]... SRCFILES... DIRECTORY
104 or: $0 [OPTION]... -t DIRECTORY SRCFILES...
105 or: $0 [OPTION]... -d DIRECTORIES...
106
107 In the 1st form, copy SRCFILE to DSTFILE.
108 In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
109 In the 4th, create DIRECTORIES.
110
111 Options:
112 --help display this help and exit.
113 --version display version info and exit.
114
115 -c (ignored)
116 -C install only if different (preserve the last data modification time)
117 -d create directories instead of installing files.
118 -g GROUP $chgrpprog installed files to GROUP.
119 -m MODE $chmodprog installed files to MODE.
120 -o USER $chownprog installed files to USER.
121 -s $stripprog installed files.
122 -t DIRECTORY install into DIRECTORY.
123 -T report an error if DSTFILE is a directory.
124
125 Environment variables override the default commands:
126 CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
127 RMPROG STRIPPROG
128 "
129
130 while test $# -ne 0; do
131 case $1 in
132 -c) ;;
133
134 -C) copy_on_change=true;;
135
136 -d) dir_arg=true;;
137
138 -g) chgrpcmd="$chgrpprog $2"
139 shift;;
140
141 --help) echo "$usage"; exit $?;;
142
143 -m) mode=$2
144 case $mode in
145 *' '* | *' '* | *'
146 '* | *'*'* | *'?'* | *'['*)
147 echo "$0: invalid mode: $mode" >&2
148 exit 1;;
149 esac
150 shift;;
151
152 -o) chowncmd="$chownprog $2"
153 shift;;
154
155 -s) stripcmd=$stripprog;;
156
157 -t) dst_arg=$2
158 # Protect names problematic for 'test' and other utilities.
159 case $dst_arg in
160 -* | [=\(\)!]) dst_arg=./$dst_arg;;
161 esac
162 shift;;
163
164 -T) no_target_directory=true;;
165
166 --version) echo "$0 $scriptversion"; exit $?;;
167
168 --) shift
169 break;;
170
171 -*) echo "$0: invalid option: $1" >&2
172 exit 1;;
173
174 *) break;;
175 esac
176 shift
177 done
178
179 if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
180 # When -d is used, all remaining arguments are directories to create.
181 # When -t is used, the destination is already specified.
182 # Otherwise, the last argument is the destination. Remove it from $@.
183 for arg
184 do
185 if test -n "$dst_arg"; then
186 # $@ is not empty: it contains at least $arg.
187 set fnord "$@" "$dst_arg"
188 shift # fnord
189 fi
190 shift # arg
191 dst_arg=$arg
192 # Protect names problematic for 'test' and other utilities.
193 case $dst_arg in
194 -* | [=\(\)!]) dst_arg=./$dst_arg;;
195 esac
196 done
197 fi
198
199 if test $# -eq 0; then
200 if test -z "$dir_arg"; then
201 echo "$0: no input file specified." >&2
202 exit 1
203 fi
204 # It's OK to call 'install-sh -d' without argument.
205 # This can happen when creating conditional directories.
206 exit 0
207 fi
208
209 if test -z "$dir_arg"; then
210 do_exit='(exit $ret); exit $ret'
211 trap "ret=129; $do_exit" 1
212 trap "ret=130; $do_exit" 2
213 trap "ret=141; $do_exit" 13
214 trap "ret=143; $do_exit" 15
215
216 # Set umask so as not to create temps with too-generous modes.
217 # However, 'strip' requires both read and write access to temps.
218 case $mode in
219 # Optimize common cases.
220 *644) cp_umask=133;;
221 *755) cp_umask=22;;
222
223 *[0-7])
224 if test -z "$stripcmd"; then
225 u_plus_rw=
226 else
227 u_plus_rw='% 200'
228 fi
229 cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
230 *)
231 if test -z "$stripcmd"; then
232 u_plus_rw=
233 else
234 u_plus_rw=,u+rw
235 fi
236 cp_umask=$mode$u_plus_rw;;
237 esac
238 fi
239
240 for src
241 do
242 # Protect names problematic for 'test' and other utilities.
243 case $src in
244 -* | [=\(\)!]) src=./$src;;
245 esac
246
247 if test -n "$dir_arg"; then
248 dst=$src
249 dstdir=$dst
250 test -d "$dstdir"
251 dstdir_status=$?
252 else
253
254 # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
255 # might cause directories to be created, which would be especially bad
256 # if $src (and thus $dsttmp) contains '*'.
257 if test ! -f "$src" && test ! -d "$src"; then
258 echo "$0: $src does not exist." >&2
259 exit 1
260 fi
261
262 if test -z "$dst_arg"; then
263 echo "$0: no destination specified." >&2
264 exit 1
265 fi
266 dst=$dst_arg
267
268 # If destination is a directory, append the input filename; won't work
269 # if double slashes aren't ignored.
270 if test -d "$dst"; then
271 if test -n "$no_target_directory"; then
272 echo "$0: $dst_arg: Is a directory" >&2
273 exit 1
274 fi
275 dstdir=$dst
276 dst=$dstdir/`basename "$src"`
277 dstdir_status=0
278 else
279 # Prefer dirname, but fall back on a substitute if dirname fails.
280 dstdir=`
281 (dirname "$dst") 2>/dev/null ||
282 expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
283 X"$dst" : 'X\(//\)[^/]' \| \
284 X"$dst" : 'X\(//\)$' \| \
285 X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
286 echo X"$dst" |
287 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
288 s//\1/
289 q
290 }
291 /^X\(\/\/\)[^/].*/{
292 s//\1/
293 q
294 }
295 /^X\(\/\/\)$/{
296 s//\1/
297 q
298 }
299 /^X\(\/\).*/{
300 s//\1/
301 q
302 }
303 s/.*/./; q'
304 `
305
306 test -d "$dstdir"
307 dstdir_status=$?
308 fi
309 fi
310
311 obsolete_mkdir_used=false
312
313 if test $dstdir_status != 0; then
314 case $posix_mkdir in
315 '')
316 # Create intermediate dirs using mode 755 as modified by the umask.
317 # This is like FreeBSD 'install' as of 1997-10-28.
318 umask=`umask`
319 case $stripcmd.$umask in
320 # Optimize common cases.
321 *[2367][2367]) mkdir_umask=$umask;;
322 .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
323
324 *[0-7])
325 mkdir_umask=`expr $umask + 22 \
326 - $umask % 100 % 40 + $umask % 20 \
327 - $umask % 10 % 4 + $umask % 2
328 `;;
329 *) mkdir_umask=$umask,go-w;;
330 esac
331
332 # With -d, create the new directory with the user-specified mode.
333 # Otherwise, rely on $mkdir_umask.
334 if test -n "$dir_arg"; then
335 mkdir_mode=-m$mode
336 else
337 mkdir_mode=
338 fi
339
340 posix_mkdir=false
341 case $umask in
342 *[123567][0-7][0-7])
343 # POSIX mkdir -p sets u+wx bits regardless of umask, which
344 # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
345 ;;
346 *)
347 tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
348 trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
349
350 if (umask $mkdir_umask &&
351 exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
352 then
353 if test -z "$dir_arg" || {
354 # Check for POSIX incompatibilities with -m.
355 # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
356 # other-writable bit of parent directory when it shouldn't.
357 # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
358 ls_ld_tmpdir=`ls -ld "$tmpdir"`
359 case $ls_ld_tmpdir in
360 d????-?r-*) different_mode=700;;
361 d????-?--*) different_mode=755;;
362 *) false;;
363 esac &&
364 $mkdirprog -m$different_mode -p -- "$tmpdir" && {
365 ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
366 test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
367 }
368 }
369 then posix_mkdir=:
370 fi
371 rmdir "$tmpdir/d" "$tmpdir"
372 else
373 # Remove any dirs left behind by ancient mkdir implementations.
374 rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
375 fi
376 trap '' 0;;
377 esac;;
378 esac
379
380 if
381 $posix_mkdir && (
382 umask $mkdir_umask &&
383 $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
384 )
385 then :
386 else
387
388 # The umask is ridiculous, or mkdir does not conform to POSIX,
389 # or it failed possibly due to a race condition. Create the
390 # directory the slow way, step by step, checking for races as we go.
391
392 case $dstdir in
393 /*) prefix='/';;
394 [-=\(\)!]*) prefix='./';;
395 *) prefix='';;
396 esac
397
398 eval "$initialize_posix_glob"
399
400 oIFS=$IFS
401 IFS=/
402 $posix_glob set -f
403 set fnord $dstdir
404 shift
405 $posix_glob set +f
406 IFS=$oIFS
407
408 prefixes=
409
410 for d
411 do
412 test X"$d" = X && continue
413
414 prefix=$prefix$d
415 if test -d "$prefix"; then
416 prefixes=
417 else
418 if $posix_mkdir; then
419 (umask=$mkdir_umask &&
420 $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
421 # Don't fail if two instances are running concurrently.
422 test -d "$prefix" || exit 1
423 else
424 case $prefix in
425 *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
426 *) qprefix=$prefix;;
427 esac
428 prefixes="$prefixes '$qprefix'"
429 fi
430 fi
431 prefix=$prefix/
432 done
433
434 if test -n "$prefixes"; then
435 # Don't fail if two instances are running concurrently.
436 (umask $mkdir_umask &&
437 eval "\$doit_exec \$mkdirprog $prefixes") ||
438 test -d "$dstdir" || exit 1
439 obsolete_mkdir_used=true
440 fi
441 fi
442 fi
443
444 if test -n "$dir_arg"; then
445 { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
446 { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
447 { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
448 test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
449 else
450
451 # Make a couple of temp file names in the proper directory.
452 dsttmp=$dstdir/_inst.$$_
453 rmtmp=$dstdir/_rm.$$_
454
455 # Trap to clean up those temp files at exit.
456 trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
457
458 # Copy the file name to the temp name.
459 (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
460
461 # and set any options; do chmod last to preserve setuid bits.
462 #
463 # If any of these fail, we abort the whole thing. If we want to
464 # ignore errors from any of these, just make sure not to ignore
465 # errors from the above "$doit $cpprog $src $dsttmp" command.
466 #
467 { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
468 { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
469 { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
470 { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
471
472 # If -C, don't bother to copy if it wouldn't change the file.
473 if $copy_on_change &&
474 old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
475 new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
476
477 eval "$initialize_posix_glob" &&
478 $posix_glob set -f &&
479 set X $old && old=:$2:$4:$5:$6 &&
480 set X $new && new=:$2:$4:$5:$6 &&
481 $posix_glob set +f &&
482
483 test "$old" = "$new" &&
484 $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
485 then
486 rm -f "$dsttmp"
487 else
488 # Rename the file to the real destination.
489 $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
490
491 # The rename failed, perhaps because mv can't rename something else
492 # to itself, or perhaps because mv is so ancient that it does not
493 # support -f.
494 {
495 # Now remove or move aside any old file at destination location.
496 # We try this two ways since rm can't unlink itself on some
497 # systems and the destination file might be busy for other
498 # reasons. In this case, the final cleanup might fail but the new
499 # file should still install successfully.
500 {
501 test ! -f "$dst" ||
502 $doit $rmcmd -f "$dst" 2>/dev/null ||
503 { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
504 { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
505 } ||
506 { echo "$0: cannot unlink or rename $dst" >&2
507 (exit 1); exit 1
508 }
509 } &&
510
511 # Now rename the file to the real destination.
512 $doit $mvcmd "$dsttmp" "$dst"
513 }
514 fi || exit 1
515
516 trap '' 0
517 fi
518 done
519
520 # Local variables:
521 # eval: (add-hook 'write-file-hooks 'time-stamp)
522 # time-stamp-start: "scriptversion="
523 # time-stamp-format: "%:y-%02m-%02d.%02H"
524 # time-stamp-time-zone: "UTC"
525 # time-stamp-end: "; # UTC"
526 # End:
+0
-215
config/missing less more
0 #! /bin/sh
1 # Common wrapper for a few potentially missing GNU programs.
2
3 scriptversion=2012-06-26.16; # UTC
4
5 # Copyright (C) 1996-2013 Free Software Foundation, Inc.
6 # Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
7
8 # This program is free software; you can redistribute it and/or modify
9 # it under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 2, or (at your option)
11 # any later version.
12
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
17
18 # You should have received a copy of the GNU General Public License
19 # along with this program. If not, see <http://www.gnu.org/licenses/>.
20
21 # As a special exception to the GNU General Public License, if you
22 # distribute this file as part of a program that contains a
23 # configuration script generated by Autoconf, you may include it under
24 # the same distribution terms that you use for the rest of that program.
25
26 if test $# -eq 0; then
27 echo 1>&2 "Try '$0 --help' for more information"
28 exit 1
29 fi
30
31 case $1 in
32
33 --is-lightweight)
34 # Used by our autoconf macros to check whether the available missing
35 # script is modern enough.
36 exit 0
37 ;;
38
39 --run)
40 # Back-compat with the calling convention used by older automake.
41 shift
42 ;;
43
44 -h|--h|--he|--hel|--help)
45 echo "\
46 $0 [OPTION]... PROGRAM [ARGUMENT]...
47
48 Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
49 to PROGRAM being missing or too old.
50
51 Options:
52 -h, --help display this help and exit
53 -v, --version output version information and exit
54
55 Supported PROGRAM values:
56 aclocal autoconf autoheader autom4te automake makeinfo
57 bison yacc flex lex help2man
58
59 Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
60 'g' are ignored when checking the name.
61
62 Send bug reports to <bug-automake@gnu.org>."
63 exit $?
64 ;;
65
66 -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
67 echo "missing $scriptversion (GNU Automake)"
68 exit $?
69 ;;
70
71 -*)
72 echo 1>&2 "$0: unknown '$1' option"
73 echo 1>&2 "Try '$0 --help' for more information"
74 exit 1
75 ;;
76
77 esac
78
79 # Run the given program, remember its exit status.
80 "$@"; st=$?
81
82 # If it succeeded, we are done.
83 test $st -eq 0 && exit 0
84
85 # Also exit now if we it failed (or wasn't found), and '--version' was
86 # passed; such an option is passed most likely to detect whether the
87 # program is present and works.
88 case $2 in --version|--help) exit $st;; esac
89
90 # Exit code 63 means version mismatch. This often happens when the user
91 # tries to use an ancient version of a tool on a file that requires a
92 # minimum version.
93 if test $st -eq 63; then
94 msg="probably too old"
95 elif test $st -eq 127; then
96 # Program was missing.
97 msg="missing on your system"
98 else
99 # Program was found and executed, but failed. Give up.
100 exit $st
101 fi
102
103 perl_URL=http://www.perl.org/
104 flex_URL=http://flex.sourceforge.net/
105 gnu_software_URL=http://www.gnu.org/software
106
107 program_details ()
108 {
109 case $1 in
110 aclocal|automake)
111 echo "The '$1' program is part of the GNU Automake package:"
112 echo "<$gnu_software_URL/automake>"
113 echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
114 echo "<$gnu_software_URL/autoconf>"
115 echo "<$gnu_software_URL/m4/>"
116 echo "<$perl_URL>"
117 ;;
118 autoconf|autom4te|autoheader)
119 echo "The '$1' program is part of the GNU Autoconf package:"
120 echo "<$gnu_software_URL/autoconf/>"
121 echo "It also requires GNU m4 and Perl in order to run:"
122 echo "<$gnu_software_URL/m4/>"
123 echo "<$perl_URL>"
124 ;;
125 esac
126 }
127
128 give_advice ()
129 {
130 # Normalize program name to check for.
131 normalized_program=`echo "$1" | sed '
132 s/^gnu-//; t
133 s/^gnu//; t
134 s/^g//; t'`
135
136 printf '%s\n' "'$1' is $msg."
137
138 configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
139 case $normalized_program in
140 autoconf*)
141 echo "You should only need it if you modified 'configure.ac',"
142 echo "or m4 files included by it."
143 program_details 'autoconf'
144 ;;
145 autoheader*)
146 echo "You should only need it if you modified 'acconfig.h' or"
147 echo "$configure_deps."
148 program_details 'autoheader'
149 ;;
150 automake*)
151 echo "You should only need it if you modified 'Makefile.am' or"
152 echo "$configure_deps."
153 program_details 'automake'
154 ;;
155 aclocal*)
156 echo "You should only need it if you modified 'acinclude.m4' or"
157 echo "$configure_deps."
158 program_details 'aclocal'
159 ;;
160 autom4te*)
161 echo "You might have modified some maintainer files that require"
162 echo "the 'automa4te' program to be rebuilt."
163 program_details 'autom4te'
164 ;;
165 bison*|yacc*)
166 echo "You should only need it if you modified a '.y' file."
167 echo "You may want to install the GNU Bison package:"
168 echo "<$gnu_software_URL/bison/>"
169 ;;
170 lex*|flex*)
171 echo "You should only need it if you modified a '.l' file."
172 echo "You may want to install the Fast Lexical Analyzer package:"
173 echo "<$flex_URL>"
174 ;;
175 help2man*)
176 echo "You should only need it if you modified a dependency" \
177 "of a man page."
178 echo "You may want to install the GNU Help2man package:"
179 echo "<$gnu_software_URL/help2man/>"
180 ;;
181 makeinfo*)
182 echo "You should only need it if you modified a '.texi' file, or"
183 echo "any other file indirectly affecting the aspect of the manual."
184 echo "You might want to install the Texinfo package:"
185 echo "<$gnu_software_URL/texinfo/>"
186 echo "The spurious makeinfo call might also be the consequence of"
187 echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
188 echo "want to install GNU make:"
189 echo "<$gnu_software_URL/make/>"
190 ;;
191 *)
192 echo "You might have modified some files without having the proper"
193 echo "tools for further handling them. Check the 'README' file, it"
194 echo "often tells you about the needed prerequisites for installing"
195 echo "this package. You may also peek at any GNU archive site, in"
196 echo "case some other package contains this missing '$1' program."
197 ;;
198 esac
199 }
200
201 give_advice "$1" | sed -e '1s/^/WARNING: /' \
202 -e '2,$s/^/ /' >&2
203
204 # Propagate the correct exit status (expected to be 127 for a program
205 # not found, 63 for a program that failed due to version mismatch).
206 exit $st
207
208 # Local variables:
209 # eval: (add-hook 'write-file-hooks 'time-stamp)
210 # time-stamp-start: "scriptversion="
211 # time-stamp-format: "%:y-%02m-%02d.%02H"
212 # time-stamp-time-zone: "UTC"
213 # time-stamp-end: "; # UTC"
214 # End:
+0
-127
config/test-driver less more
0 #! /bin/sh
1 # test-driver - basic testsuite driver script.
2
3 scriptversion=2012-06-27.10; # UTC
4
5 # Copyright (C) 2011-2013 Free Software Foundation, Inc.
6 #
7 # This program is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 2, or (at your option)
10 # any later version.
11 #
12 # This program is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 # GNU General Public License for more details.
16 #
17 # You should have received a copy of the GNU General Public License
18 # along with this program. If not, see <http://www.gnu.org/licenses/>.
19
20 # As a special exception to the GNU General Public License, if you
21 # distribute this file as part of a program that contains a
22 # configuration script generated by Autoconf, you may include it under
23 # the same distribution terms that you use for the rest of that program.
24
25 # This file is maintained in Automake, please report
26 # bugs to <bug-automake@gnu.org> or send patches to
27 # <automake-patches@gnu.org>.
28
29 # Make unconditional expansion of undefined variables an error. This
30 # helps a lot in preventing typo-related bugs.
31 set -u
32
33 usage_error ()
34 {
35 echo "$0: $*" >&2
36 print_usage >&2
37 exit 2
38 }
39
40 print_usage ()
41 {
42 cat <<END
43 Usage:
44 test-driver --test-name=NAME --log-file=PATH --trs-file=PATH
45 [--expect-failure={yes|no}] [--color-tests={yes|no}]
46 [--enable-hard-errors={yes|no}] [--] TEST-SCRIPT
47 The '--test-name', '--log-file' and '--trs-file' options are mandatory.
48 END
49 }
50
51 # TODO: better error handling in option parsing (in particular, ensure
52 # TODO: $log_file, $trs_file and $test_name are defined).
53 test_name= # Used for reporting.
54 log_file= # Where to save the output of the test script.
55 trs_file= # Where to save the metadata of the test run.
56 expect_failure=no
57 color_tests=no
58 enable_hard_errors=yes
59 while test $# -gt 0; do
60 case $1 in
61 --help) print_usage; exit $?;;
62 --version) echo "test-driver $scriptversion"; exit $?;;
63 --test-name) test_name=$2; shift;;
64 --log-file) log_file=$2; shift;;
65 --trs-file) trs_file=$2; shift;;
66 --color-tests) color_tests=$2; shift;;
67 --expect-failure) expect_failure=$2; shift;;
68 --enable-hard-errors) enable_hard_errors=$2; shift;;
69 --) shift; break;;
70 -*) usage_error "invalid option: '$1'";;
71 esac
72 shift
73 done
74
75 if test $color_tests = yes; then
76 # Keep this in sync with 'lib/am/check.am:$(am__tty_colors)'.
77 red='' # Red.
78 grn='' # Green.
79 lgn='' # Light green.
80 blu='' # Blue.
81 mgn='' # Magenta.
82 std='' # No color.
83 else
84 red= grn= lgn= blu= mgn= std=
85 fi
86
87 do_exit='rm -f $log_file $trs_file; (exit $st); exit $st'
88 trap "st=129; $do_exit" 1
89 trap "st=130; $do_exit" 2
90 trap "st=141; $do_exit" 13
91 trap "st=143; $do_exit" 15
92
93 # Test script is run here.
94 "$@" >$log_file 2>&1
95 estatus=$?
96 if test $enable_hard_errors = no && test $estatus -eq 99; then
97 estatus=1
98 fi
99
100 case $estatus:$expect_failure in
101 0:yes) col=$red res=XPASS recheck=yes gcopy=yes;;
102 0:*) col=$grn res=PASS recheck=no gcopy=no;;
103 77:*) col=$blu res=SKIP recheck=no gcopy=yes;;
104 99:*) col=$mgn res=ERROR recheck=yes gcopy=yes;;
105 *:yes) col=$lgn res=XFAIL recheck=no gcopy=yes;;
106 *:*) col=$red res=FAIL recheck=yes gcopy=yes;;
107 esac
108
109 # Report outcome to console.
110 echo "${col}${res}${std}: $test_name"
111
112 # Register the test result, and other relevant metadata.
113 echo ":test-result: $res" > $trs_file
114 echo ":global-test-result: $res" >> $trs_file
115 echo ":recheck: $recheck" >> $trs_file
116 echo ":copy-in-global-log: $gcopy" >> $trs_file
117
118 # Local Variables:
119 # mode: shell-script
120 # sh-indentation: 2
121 # eval: (add-hook 'write-file-hooks 'time-stamp)
122 # time-stamp-start: "scriptversion="
123 # time-stamp-format: "%:y-%02m-%02d.%02H"
124 # time-stamp-time-zone: "UTC"
125 # time-stamp-end: "; # UTC"
126 # End:
00 #! /bin/sh
11 # Guess values for system-dependent variables and create Makefiles.
2 # Generated by GNU Autoconf 2.69 for unrtf 0.21.5.
2 # Generated by GNU Autoconf 2.69 for unrtf 0.21.7.
33 #
44 # Report bugs to <bug-unrtf@gnu.org>.
55 #
579579 # Identity of this package.
580580 PACKAGE_NAME='unrtf'
581581 PACKAGE_TARNAME='unrtf'
582 PACKAGE_VERSION='0.21.5'
583 PACKAGE_STRING='unrtf 0.21.5'
582 PACKAGE_VERSION='0.21.7'
583 PACKAGE_STRING='unrtf 0.21.7'
584584 PACKAGE_BUGREPORT='bug-unrtf@gnu.org'
585585 PACKAGE_URL=''
586586
12771277 # Omit some internal or obsolete options to make the list less imposing.
12781278 # This message is too long to be a string in the A/UX 3.1 sh.
12791279 cat <<_ACEOF
1280 \`configure' configures unrtf 0.21.5 to adapt to many kinds of systems.
1280 \`configure' configures unrtf 0.21.7 to adapt to many kinds of systems.
12811281
12821282 Usage: $0 [OPTION]... [VAR=VALUE]...
12831283
13471347
13481348 if test -n "$ac_init_help"; then
13491349 case $ac_init_help in
1350 short | recursive ) echo "Configuration of unrtf 0.21.5:";;
1350 short | recursive ) echo "Configuration of unrtf 0.21.7:";;
13511351 esac
13521352 cat <<\_ACEOF
13531353
14411441 test -n "$ac_init_help" && exit $ac_status
14421442 if $ac_init_version; then
14431443 cat <<\_ACEOF
1444 unrtf configure 0.21.5
1444 unrtf configure 0.21.7
14451445 generated by GNU Autoconf 2.69
14461446
14471447 Copyright (C) 2012 Free Software Foundation, Inc.
18101810 This file contains any messages produced by compilers while
18111811 running configure, to aid debugging if configure makes a mistake.
18121812
1813 It was created by unrtf $as_me 0.21.5, which was
1813 It was created by unrtf $as_me 0.21.7, which was
18141814 generated by GNU Autoconf 2.69. Invocation command line was
18151815
18161816 $ $0 $@
21932193
21942194 # Initialize automake
21952195
2196 am__api_version='1.14'
2196 am__api_version='1.13'
21972197
21982198 # Find a good install program. We prefer a C program (faster),
21992199 # so one script is as good as another. But avoid the broken or
26792679
26802680 # Define the identity of the package.
26812681 PACKAGE='unrtf'
2682 VERSION='0.21.5'
2682 VERSION='0.21.7'
26832683
26842684
26852685 cat >>confdefs.h <<_ACEOF
27302730
27312731
27322732
2733 # POSIX will say in a future version that running "rm -f" with no argument
2734 # is OK; and we want to be able to make that assumption in our Makefile
2735 # recipes. So use an aggressive probe to check that the usage we want is
2736 # actually supported "in the wild" to an acceptable degree.
2737 # See automake bug#10828.
2738 # To make any issue more visible, cause the running configure to be aborted
2739 # by default if the 'rm' program in use doesn't match our expectations; the
2740 # user can still override this though.
2741 if rm -f && rm -fr && rm -rf; then : OK; else
2742 cat >&2 <<'END'
2743 Oops!
2744
2745 Your 'rm' program seems unable to run without file operands specified
2746 on the command line, even when the '-f' option is present. This is contrary
2747 to the behaviour of most rm programs out there, and not conforming with
2748 the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
2749
2750 Please tell bug-automake@gnu.org about your system, including the value
2751 of your $PATH and any error possibly output before this message. This
2752 can help us improve future automake versions.
2753
2754 END
2755 if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
2756 echo 'Configuration will proceed anyway, since you have set the' >&2
2757 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
2758 echo >&2
2759 else
2760 cat >&2 <<'END'
2761 Aborting the configuration process, to ensure you take notice of the issue.
2762
2763 You can download and install GNU coreutils to get an 'rm' implementation
2764 that behaves properly: <http://www.gnu.org/software/coreutils/>.
2765
2766 If you want to complete the configuration process using your problematic
2767 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
2768 to "yes", and re-run configure.
2769
2770 END
2771 as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
2772 fi
2773 fi
27742733
27752734 # AM_MAINTAINER_MODE is a controversial macro.
27762735 # I suggest you read this to understand what is going on:
35963555 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
35973556 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
35983557 ac_compiler_gnu=$ac_cv_c_compiler_gnu
3599
3600 ac_ext=c
3601 ac_cpp='$CPP $CPPFLAGS'
3602 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3603 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3604 ac_compiler_gnu=$ac_cv_c_compiler_gnu
3605 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
3606 $as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
3607 if ${am_cv_prog_cc_c_o+:} false; then :
3608 $as_echo_n "(cached) " >&6
3609 else
3610 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3611 /* end confdefs.h. */
3612
3613 int
3614 main ()
3615 {
3616
3617 ;
3618 return 0;
3619 }
3620 _ACEOF
3621 # Make sure it works both with $CC and with simple cc.
3622 # Following AC_PROG_CC_C_O, we do the test twice because some
3623 # compilers refuse to overwrite an existing .o file with -o,
3624 # though they will create one.
3625 am_cv_prog_cc_c_o=yes
3626 for am_i in 1 2; do
3627 if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
3628 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
3629 ac_status=$?
3630 echo "$as_me:$LINENO: \$? = $ac_status" >&5
3631 (exit $ac_status); } \
3632 && test -f conftest2.$ac_objext; then
3633 : OK
3634 else
3635 am_cv_prog_cc_c_o=no
3636 break
3637 fi
3638 done
3639 rm -f core conftest*
3640 unset am_i
3641 fi
3642 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
3643 $as_echo "$am_cv_prog_cc_c_o" >&6; }
3644 if test "$am_cv_prog_cc_c_o" != yes; then
3645 # Losing compiler, so override with the script.
3646 # FIXME: It is wrong to rewrite CC.
3647 # But if we don't then we get into trouble of one sort or another.
3648 # A longer-term fix would be to have automake use am__CC in this case,
3649 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
3650 CC="$am_aux_dir/compile $CC"
3651 fi
3652 ac_ext=c
3653 ac_cpp='$CPP $CPPFLAGS'
3654 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3655 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3656 ac_compiler_gnu=$ac_cv_c_compiler_gnu
3657
36583558 DEPDIR="${am__leading_dot}deps"
36593559
36603560 ac_config_commands="$ac_config_commands depfiles"
49644864 # report actual input values of CONFIG_FILES etc. instead of their
49654865 # values after options handling.
49664866 ac_log="
4967 This file was extended by unrtf $as_me 0.21.5, which was
4867 This file was extended by unrtf $as_me 0.21.7, which was
49684868 generated by GNU Autoconf 2.69. Invocation command line was
49694869
49704870 CONFIG_FILES = $CONFIG_FILES
50304930 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
50314931 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
50324932 ac_cs_version="\\
5033 unrtf config.status 0.21.5
4933 unrtf config.status 0.21.7
50344934 configured by $0, generated by GNU Autoconf 2.69,
50354935 with options \\"\$ac_cs_config\\"
50364936
11 # Process this file with autoconf to produce a configure script.
22
33 AC_PREREQ(2.59)
4 AC_INIT([unrtf], [0.21.5], [bug-unrtf@gnu.org])
4 AC_INIT([unrtf], [0.21.8], [bug-unrtf@gnu.org])
55 AC_CONFIG_SRCDIR([src/attr.c])
66 AC_CONFIG_AUX_DIR([config])
77 AC_CONFIG_HEADER([config.h])
00 dist_man1_MANS = unrtf.1
11
2 EXTRA_DIST = unrtf.1.in
3
4 unrtf.1: unrtf.1.in Makefile
5 sed -e 's!@DATADIR@!${datarootdir}/unrtf!g' < ${srcdir}/unrtf.1.in > unrtf.1
6
7 clean-local:
8 rm -f unrtf.1
0 # Makefile.in generated by automake 1.14 from Makefile.am.
0 # Makefile.in generated by automake 1.13.4 from Makefile.am.
11 # @configure_input@
22
33 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
386386 @echo "it deletes files that may require special tools to rebuild."
387387 clean: clean-am
388388
389 clean-am: clean-generic mostlyclean-am
389 clean-am: clean-generic clean-local mostlyclean-am
390390
391391 distclean: distclean-am
392392 -rm -f Makefile
454454
455455 .MAKE: install-am install-strip
456456
457 .PHONY: all all-am check check-am clean clean-generic cscopelist-am \
458 ctags-am distclean distclean-generic distdir dvi dvi-am html \
459 html-am info info-am install install-am install-data \
460 install-data-am install-dvi install-dvi-am install-exec \
461 install-exec-am install-html install-html-am install-info \
462 install-info-am install-man install-man1 install-pdf \
463 install-pdf-am install-ps install-ps-am install-strip \
464 installcheck installcheck-am installdirs maintainer-clean \
465 maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
466 pdf-am ps ps-am tags-am uninstall uninstall-am uninstall-man \
467 uninstall-man1
468
457 .PHONY: all all-am check check-am clean clean-generic clean-local \
458 cscopelist-am ctags-am distclean distclean-generic distdir dvi \
459 dvi-am html html-am info info-am install install-am \
460 install-data install-data-am install-dvi install-dvi-am \
461 install-exec install-exec-am install-html install-html-am \
462 install-info install-info-am install-man install-man1 \
463 install-pdf install-pdf-am install-ps install-ps-am \
464 install-strip installcheck installcheck-am installdirs \
465 maintainer-clean maintainer-clean-generic mostlyclean \
466 mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
467 uninstall-am uninstall-man uninstall-man1
468
469
470 unrtf.1: unrtf.1.in Makefile
471 sed -e 's!@DATADIR@!${datarootdir}/unrtf!g' < ${srcdir}/unrtf.1.in > unrtf.1
472
473 clean-local:
474 rm -f unrtf.1
469475
470476 # Tell versions [3.59,3.63) of GNU make to not export all variables.
471477 # Otherwise a system limit (for SysV at least) may be exceeded.
+0
-114
doc/unrtf.1 less more
0 .\" Copyright (C) 2000,2001,2004 by Zachary Smith
1 .\"
2 .\" Permission is granted to redistribute this file with UnRTF.
3 .\"
4 .TH UNRTF 1 "GNU UnRTF 0.21.3"
5 .SH NAME
6 UnRTF \- converts document in RTF format to other formats
7 .SH SYNOPSIS
8 .BI "unrtf [" options "] [" file... ]
9 .br
10 .sp
11 Options:
12 .BI [\-\-nopict]
13 .BI [\-\-noremap]
14 .BI [\-\-html]
15 .BI [\-\-text]
16 .BI [\-\-vt]
17 .BI [\-\-rtf]
18 .BI [\-\-latex]
19 .BI [\-\-help]
20 .BI [\-\-verbose]
21 .BI [\-\-quiet]
22 .BI [\-\-version]
23 .BI [\-P\ config_search_path]
24 .BI [\-t\ tags_file]
25 .br
26 .SH DESCRIPTION
27 The program
28 .B unrtf
29 is a converter from Rich Text Format (RTF) to a growing number
30 of document formats. At present it supports
31 Hypertext Markup Language (HTML), plain text, text with VT100 codes,
32 LaTeX, and RTF itself.
33 It is possible to produce troff files with macro calls; an example configuration
34 for troff and the mm macro package is provided.
35 All output formats except HTML are "alpha" i.e. limited and development
36 has just begun.
37 However with HTML, the program supports tables, fonts,
38 hyperlinks, and paragraph alignment. Font support includes
39 face and size changes, as well as
40 typical attributes such as italic, bold,
41 underlining, strikethrough, smallcaps, allcaps, expand, compress
42 and both foreground and background colors.
43 Images are always stored to separate files in the current
44 directory, or they can be ignored.
45 .P
46 Starting with version 0.21.0, all control of unrtf output is through
47 runtime configuration files. This makes it easy for users to fine-tune the
48 output, and/or define new output formats. The configuration files can
49 be read from the distributed ones, or from user files, searched for in the
50 .I config_search_path .
51 .P
52 Code page conversion is performed with the iconv(3) package.
53 .SH OPTIONS
54 .TP
55 \-\-nopict
56 disables the automatic storing of embedded pictures to
57 the current directory.
58 .TP
59 \-\-noremap
60 disables charset conversion (currently only works for 8-bit charsets).
61 .TP
62 \-\-html
63 selects HTML output (default).
64 .TP
65 \-\-rtf
66 selects RTF output. The resulting output will often be much smaller
67 than the input.
68 .TP
69 \-\-text
70 selects plain ASCII text output.
71 .TP
72 \-\-vt
73 selects text output with VT100 escape codes.
74 .TP
75 \-\-latex
76 selects output of a LaTeX document.
77 .TP
78 \-\-verbose
79 prints additional information.
80 .TP
81 \-\-quiet
82 suppress output of leading comments
83 .TP
84 \-\-version
85 prints the program version.
86 .TP
87 \-t tags_file
88 specifies the tags output configuration file to be used. The command
89 "unrtf -t html" is functionally identical to "unrtf --html". The
90 configuration files are a simple format. To change the behaviour of
91 unrtf, a local copy of a system configuration file can be be made and
92 edited. The most complete configuration file and hence the best starting
93 point is /usr/local/share/unrtf/html.conf.
94 .TP
95 \-P config_search_path
96 specifies the directories in which the configuration file for the specified
97 format will be sought. The path can be provided as a single directory
98 or a list of colon separated directories.
99 The default is /usr/local/share/unrtf/ where distributed output
100 configuration files are installed.
101 .SH FILES
102 .TP
103 /usr/local/share/unrtf/*.conf
104 - run time output configuration files.
105 .TP
106 /usr/local/share/unrtf/SYMBOL.charmap
107 - UTF encoding of the SYMBOL font
108 used in many RTF files. Unfortunately the iconv package does not include
109 font encodings. The format is identical to iconv code page files.
110 .SH WEBSITE
111 http://www.gnu.org/software/unrtf/unrtf.html
112 .SH NOTES
113 Report bugs in the program to daved@physiol.usyd.edu.au
0 .\" Copyright (C) 2000,2001,2004 by Zachary Smith
1 .\"
2 .\" Permission is granted to redistribute this file with UnRTF.
3 .\"
4 .TH UNRTF 1 "GNU UnRTF 0.21.6"
5 .SH NAME
6 UnRTF \- converts document in RTF format to other formats
7 .SH SYNOPSIS
8 .BI "unrtf [" options "] [" file... ]
9 .br
10 .sp
11 Options:
12 .BI [\-\-nopict]
13 .BI [\-\-noremap]
14 .BI [\-P\ \%config_search_path]
15 .BI [\-\-html]
16 .BI [\-\-text]
17 .BI [\-\-vt]
18 .BI [\-\-rtf]
19 .BI [\-\-latex]
20 .BI [\-\-help]
21 .BI [\-\-verbose]
22 .BI [\-\-quiet]
23 .BI [\-\-version]
24 .BI [\-t\ tags_file]
25 .br
26 .SH DESCRIPTION
27 The program
28 .B unrtf
29 is a converter from Rich Text Format (RTF) to a growing number
30 of document formats. At present it supports
31 Hypertext Markup Language (HTML), plain text, text with VT100 codes,
32 LaTeX, and RTF itself.
33 It is possible to produce troff files with macro calls; an example configuration
34 for troff and the mm macro package is provided.
35 All output formats except HTML are "alpha" i.e.\& limited and development
36 has just begun.
37 However with HTML, the program supports tables, fonts,
38 hyperlinks, and paragraph alignment. Font support includes
39 face and size changes, as well as
40 typical attributes such as italic, bold,
41 underlining, strikethrough, smallcaps, allcaps, expand, compress
42 and both foreground and background colors.
43 Images are always stored to separate files in the current
44 directory, or they can be ignored.
45 .P
46 Starting with version 0.21.0, all control of unrtf output is through
47 runtime configuration files. This makes it easy for users to fine-tune the
48 output, and/or define new output formats. The configuration files can
49 be read from the distributed ones, or from user files, searched for in the
50 .I config_search_path .
51 Note that the order of the -P and output arguments is important. The search
52 path must be set before any argument that will load a configuration file
53 if that file is not in the standard place.
54 .P
55 Code page conversion is performed with the iconv(3) package.
56 .SH OPTIONS
57 .TP
58 \-\-nopict
59 disables the automatic storing of embedded pictures to
60 the current directory.
61 .TP
62 \-\-noremap
63 disables charset conversion (currently only works for 8-bit charsets).
64 .TP
65 \-\-html
66 selects HTML output (default).
67 .TP
68 \-\-rtf
69 selects RTF output. The resulting output will often be much smaller
70 than the input.
71 .TP
72 \-\-text
73 selects plain ASCII text output.
74 .TP
75 \-\-vt
76 selects text output with VT100 escape codes.
77 .TP
78 \-\-latex
79 selects output of a LaTeX document.
80 .TP
81 \-\-verbose
82 prints additional information.
83 .TP
84 \-\-quiet
85 suppress output of leading comments
86 .TP
87 \-\-version
88 prints the program version.
89 .TP
90 \-t tags_file
91 specifies the tags output configuration file to be used. The command
92 "unrtf \-t html" is functionally identical to "unrtf \-\-html". The
93 configuration files are a simple format. To change the behaviour of
94 unrtf, a local copy of a system configuration file can be be made and
95 edited. The most complete configuration file and hence the best starting
96 point is @DATADIR@/html.conf.
97 .TP
98 \-P config_search_path
99 specifies the directories in which the configuration file for the specified
100 format will be sought. The path can be provided as a single directory
101 or a list of colon separated directories.
102 The default is @DATADIR@ where distributed output
103 configuration files are installed.
104 .SH FILES
105 .TP
106 @DATADIR@/*.conf
107 \[en] run time output configuration files.
108 .TP
109 @DATADIR@/SYMBOL.charmap
110 \[en] UTF encoding of the SYMBOL font
111 used in many RTF files. Unfortunately the iconv package does not include
112 font encodings. The format is identical to iconv code page files.
113 .SH WEBSITE
114 .UR http://\:www.gnu.org/\:software/\:unrtf/\:unrtf.html
115 .UE
116 .SH NOTES
117 Report bugs in the program to http://savannah.gnu.org/projects/unrtf/
0 # Makefile.in generated by automake 1.14 from Makefile.am.
0 # Makefile.in generated by automake 1.13.4 from Makefile.am.
11 # @configure_input@
22
33 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
44 -->
55
66 document_begin
7 <!DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN>
7 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
88 #Second test of comments
99 <html>
1010
+0
-735
outputs/html.conf.old less more
0 #Test of comments
1 comment_begin
2 <!--
3 comment_end
4 -->
5
6 document_begin
7 <!DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN>
8 #Second test of comments
9 <html>
10
11 document_end
12 </html>
13
14 header_begin
15 <head>
16
17 header_end
18 </head>
19
20 document_title_begin
21 <title>
22 document_title_end
23 </title>
24
25 document_author_begin
26 <!-- author:
27 document_author_end
28 -->
29
30 document_changedate_begin
31 <!-- changed:
32 document_changedate_end
33 -->
34
35 body_begin
36 <body>
37 body_end
38 </body>
39
40 paragraph_begin
41 <p>
42 paragraph_end
43 </p>
44
45 center_begin
46 <center>
47 center_end
48 </center>
49
50 justify_begin
51 <div align="justify">
52
53 justify_end
54 </div>
55
56 align_left_begin
57 <div align="left">
58
59 align_left_end
60 </div>
61
62 align_right_begin
63 <div align="right">
64
65 align_right_end
66 </div>
67
68 forced_space
69 &nbsp;
70 line_break
71 <br>
72
73 page_break
74 <p><hr><p>
75
76 hyperlink_begin
77 <a href="
78 hyperlink_end
79 ">hyperlink</a>
80 imagelink_begin
81 <img src="
82 imagelink_end
83 ">
84 table_begin
85 <table border="2">
86
87 table_end
88 </table>
89
90 table_row_begin
91 <tr>
92 table_row_end
93 </tr>
94
95 table_cell_begin
96 <td>
97 table_cell_end
98 </td>
99
100 font_begin
101 <font face="%">
102 font_end
103 </font>
104 fontsize_begin
105 <span style="font-size:%pt">
106 fontsize_end
107 </span>
108 fontsize8_begin
109 <font size="1">
110 fontsize8_end
111 </font>
112 fontsize10_begin
113 <font size="2">
114 fontsize10_end
115 </font>
116 fontsize12_begin
117 <font size="3">
118 fontsize12_end
119 </font>
120 fontsize14_begin
121 <font size="4">
122 fontsize14_end
123 </font>
124 fontsize18_begin
125 <font size="5">
126 fontsize18_end
127 </font>
128 fontsize24_begin
129 <font size="6">
130 fontsize24_end
131 </font>
132 smaller_begin
133 <small>
134 smaller_end
135 </small>
136 bigger_begin
137 <big>
138 bigger_end
139 </big>
140 foreground_begin
141 <font color="%">
142 foreground_end
143 </font>
144 background_begin
145 <span style="background:%">
146 background_end
147 </span>
148 bold_begin
149 <b>
150 bold_end
151 </b>
152 italic_begin
153 <i>
154 italic_end
155 </i>
156 underline_begin
157 <u>
158 underline_end
159 </u>
160 dbl_underline_begin
161 <u>
162 dbl_underline_end
163 </u>
164 superscript_begin
165 <sup>
166 superscript_end
167 </sup>
168 subscript_begin
169 <sub>
170 subscript_end
171 </sub>
172 strikethru_begin
173 <s>
174 strikethru_end
175 </s>
176 dbl_strikethru_begin
177 <s>
178 dbl_strikethru_end
179 </s>
180 emboss_begin
181 <span style="background:gray"><font color="black">
182 emboss_end
183 </font></span>
184 engrave_begin
185 <span style="background:gray"><font color="navyblue">
186 engrave_end
187 </font></span>
188 shadow_begin
189 <span style="background:gray">
190 shadow_end
191 </span>
192 outline_begin
193 <span style="background:gray">
194 outline_end
195 </span>
196 expand_begin
197 <span style="letter-spacing: %">
198 expand_end
199 </span>
200 pointlist_begin
201 <ol>
202
203 pointlist_end
204 </ol>
205
206 pointlist_item_begin
207 <li>
208 pointlist_item_end
209 </li>
210
211 numericlist_begin
212 <ul>
213
214 numericlist_end
215 </ul>
216
217 numericlist_item_begin
218 <li>
219 numericlist_item_end
220 </li>
221
222 unisymbol_print
223 &#%;
224 utf8_encoding
225 <meta http-equiv=\content-type\ content=\text/html charset=utf-8\>\n
226
227 <U22>
228 &quot;
229 <U26>
230 &amp;
231 60
232 &lt;
233 62
234 &gt;
235 173
236 &shy;
237 176
238 &deg;
239 177
240 &plusmn;
241 181
242 &mu;
243 215
244 &times;
245 913
246 &Alpha;
247 914
248 &Beta;
249 915
250 &Gamma;
251 916
252 &Delta;
253 917
254 &Epsilon;
255 918
256 &Zeta;
257 919
258 &Eta;
259 920
260 &Theta;
261 921
262 &Iota;
263 922
264 &Kappa;
265 923
266 &Lambda;
267 924
268 &Mu;
269 925
270 &Nu;
271 926
272 &Xi;
273 927
274 &Omicron;
275 928
276 &Pi;
277 929
278 &Rho;
279 931
280 &Sigma;
281 932
282 &Tau;
283 933
284 &Upsilon;
285 934
286 &Phi;
287 935
288 &Chi;
289 936
290 &Psi;
291 937
292 &Omega;
293 945
294 &alpha;
295 946
296 &beta;
297 947
298 &gamma;
299 948
300 &delta;
301 949
302 &epsilon;
303 950
304 &zeta;
305 951
306 &eta;
307 952
308 &theta;
309 953
310 &iota;
311 954
312 &kappa;
313 955
314 &lambda;
315 956
316 &mu;
317 957
318 &nu;
319 958
320 &xi;
321 959
322 &omicron;
323 960
324 &pi;
325 961
326 &rho;
327 962
328 &sigmaf;
329 963
330 &sigma;
331 964
332 &tau;
333 965
334 &upsilon;
335 966
336 &phi;
337 967
338 &chi;
339 968
340 &psi;
341 969
342 &omega;
343 977
344 &thetasym;
345 978
346 &upsih;
347 982
348 &piv;
349 8710
350 &Delta;
351 8730
352 &radic;
353 8801
354 &equiv;
355 8805
356 &ge;
357 57516
358 &Gamma;
359 57517
360 &Delta;
361 57518
362 &Theta;
363 57519
364 &Lambda;
365 57520
366 &Xi;
367 57521
368 &Pi;
369 57522
370 &Sigma;
371 57523
372 &Upsilon;
373 57524
374 &Phi;
375 57525
376 &Psi;
377 57526
378 &Omega;
379 57527
380 &alpha;
381 57528
382 &beta;
383 57529
384 &gamma;
385 57530
386 &delta;
387 57531
388 &epsilon;
389 57532
390 &zeta;
391 57533
392 &eta;
393 57534
394 &theta;
395 57535
396 &iota;
397 57536
398 &kappa;
399 57537
400 &lambda;
401 57538
402 &mu;
403 57539
404 &nu;
405 57540
406 &xi;
407 57541
408 &omicron;
409 57542
410 &pi;
411 57543
412 &rho;
413 57544
414 &sigma;
415 57545
416 &tau;
417 57546
418 &upsilon;
419 57547
420 &phi;
421 57548
422 &chi;
423 57549
424 &psi;
425 57550
426 &omega;
427 57551
428 &epsiv;
429 57552
430 &thetav;
431 57553
432 &piv;
433 57555
434 &sigmaf;
435 57556
436 &phiv;
437 57557
438 &delta;
439 61505
440 &Alpha;
441 61506
442 &Beta;
443 61507
444 &Chi;
445 61508
446 &Delta;
447 61509
448 &Epsilon;
449 61510
450 &Phi;
451 61511
452 &Gamma;
453 61512
454 &Eta;
455 61513
456 &Iota;
457 61514
458 &phiv;
459 61515
460 &Kappa;
461 61516
462 &Lambda;
463 61517
464 &Mu;
465 61518
466 &Nu;
467 61519
468 &Omicron;
469 61520
470 &Pi;
471 61521
472 &Theta;
473 61522
474 &Rho;
475 61523
476 &Sigma;
477 61524
478 &Tau;
479 61525
480 &Upsilon;
481 61526
482 &sigmaf;
483 61527
484 &Omega;
485 61528
486 &Xi;
487 61529
488 &Psi;
489 61530
490 &Zeta;
491 61537
492 &alpha;
493 61538
494 &beta;
495 61539
496 &chi;
497 61540
498 &delta;
499 61541
500 &epsilon;
501 61542
502 &phi;
503 61543
504 &gamma;
505 61544
506 &eta;
507 61545
508 &tau;
509 61546
510 &phiv;
511 61547
512 &kappa;
513 61548
514 &lambda;
515 61549
516 &mu;
517 61550
518 &nu;
519 61551
520 &omicron;
521 61552
522 &pi;
523 61553
524 &theta;
525 61554
526 &rho;
527 61555
528 &sigma;
529 61556
530 &tau;
531 61557
532 &upsilon;
533 61558
534 &piv;
535 61559
536 &omega;
537 61560
538 &xi;
539 61561
540 &psi;
541 61562
542 &zeta;
543 61600
544 &euro;
545 61601
546 &upsih;
547 61602
548 &prime;
549 61603
550 &le;
551 61604
552 &frasl;
553 61605
554 &infin;
555 61606
556 &fnof;
557 61607
558 &clubs;
559 61608
560 &diams;
561 61609
562 &hearts;
563 61610
564 &spades;
565 61611
566 &harr;
567 61612
568 &larr;
569 61613
570 &uarr;
571 61614
572 &rarr;
573 61615
574 &darr;
575 61616
576 &deg;
577 61617
578 &plusmn;
579 61618
580 &Prime;
581 61619
582 &ge;
583 61620
584 &times;
585 61621
586 &prop;
587 61622
588 &part;
589 61623
590 &bull;
591 61624
592 &divide;
593 61625
594 &ne;
595 61626
596 &equiv;
597 61627
598 &asymp;
599 61628
600 &hellip;
601 #61629 - vertical bar
602 61630
603 &mdash;
604 61631
605 &crarr;
606 61632
607 &alefsym;
608 61633
609 &image;
610 61634
611 &real;
612 61635
613 &weierp;
614 61636
615 &otimes;
616 61637
617 &oplus;
618 61638
619 &empty;
620 61639
621 &cap;
622 61640
623 &cup;
624 61641
625 &sup;
626 61642
627 &supe;
628 61643
629 &nsub;
630 61644
631 &sub;
632 61645
633 &sube;
634 61646
635 &isin;
636 61647
637 &notin;
638 61648
639 &ang;
640 61649
641 &nabla;
642 61650
643 &reg;
644 61651
645 &copy;
646 61652
647 &trade;
648 61653
649 &prod;
650 61654
651 &radic;
652 61655
653 &middot;
654 61656
655 &not;
656 61657
657 &and;
658 61658
659 &or;
660 61659
661 &hArr;
662 61660
663 &lArr;
664 61661
665 &uArr;
666 61662
667 &rArr;
668 61663
669 &dArr;
670 61664
671 &loz;
672 61665
673 &lang;
674 61666
675 &reg;
676 61667
677 &copy;
678 61668
679 &trade;
680 61669
681 &sum;
682 #61670
683 # large right parenthesis ceiling
684 #61671
685 # large parenthesis middle
686 #61672
687 # large left parenthesis floor
688 61673
689 # large left square bracket ceiling
690 &lceil;
691 #61674
692 # large left square bracket middle
693 61675
694 # large left square bracket floor
695 &lfloor;
696 #61676
697 # large left bracket ceiling
698 # 61677
699 # large left bracket middle
700 #61678
701 # large left bracket floor
702 #61679
703 # large vertical bar
704 #61680
705 # appears blank
706 61681
707 &rang;
708 61682
709 # integral
710 &int;
711 #61683
712 # large integral ceiling
713 #61684
714 # large integral middle
715 #61685
716 # large integral floor
717 #61686
718 # large right parenthesis ceiling
719 #61687
720 # large right parenthesis middle
721 #61688
722 # large right parenthesis floor
723 61689
724 # large right square bracket ceiling
725 &rceil;
726 #61690
727 # large right square bracket middle
728 61691
729 # large right square bracket floor
730 &rfloor;
731 #61692
732 # large right bracket middle
733 #61694
734 # large right bracket floot
+0
-22
patches/0001-Fix-manpage-section-specification.patch less more
0 From: Willi Mann <willi@wm1.at>
1 Date: Sun, 23 Dec 2012 17:35:41 +0100
2 Subject: Fix manpage section specification
3
4 This fixes a lintian warning
5 ---
6 doc/unrtf.1 | 2 +-
7 1 file changed, 1 insertion(+), 1 deletion(-)
8
9 diff --git a/doc/unrtf.1 b/doc/unrtf.1
10 index 5623c9c..9970c49 100644
11 --- a/doc/unrtf.1
12 +++ b/doc/unrtf.1
13 @@ -2,7 +2,7 @@
14 .\"
15 .\" Permission is granted to redistribute this file with UnRTF.
16 .\"
17 -.TH UNRTF "GNU UnRTF 0.21.0"
18 +.TH UNRTF 1 "GNU UnRTF 0.21.0"
19 .SH NAME
20 UnRTF \- converts document in RTF format to other formats
21 .SH SYNOPSIS
+0
-21
patches/0002-Hand-over-SHAREDIR-via-CPPFLAGS.patch less more
0 From: Willi Mann <willi@wm1.at>
1 Date: Sun, 23 Dec 2012 21:21:46 +0100
2 Subject: Hand over SHAREDIR via CPPFLAGS
3
4 ---
5 src/Makefile.am | 2 ++
6 1 file changed, 2 insertions(+)
7
8 diff --git a/src/Makefile.am b/src/Makefile.am
9 index d6017b3..83b1d34 100644
10 --- a/src/Makefile.am
11 +++ b/src/Makefile.am
12 @@ -3,6 +3,8 @@
13
14 bin_PROGRAMS = unrtf
15
16 +AM_CPPFLAGS = -DPKGDATADIR=\"$(pkgdatadir)\"
17 +
18 unrtf_SOURCES = attr.c attr.h \
19 convert.c convert.h \
20 defs.h \
+0
-21
patches/0003-Make-SHAREDIR-unrtf-default-path-for-output-format-c.patch less more
0 From: Willi Mann <willi@wm1.at>
1 Date: Sun, 23 Dec 2012 21:42:19 +0100
2 Subject: Make $SHAREDIR/unrtf default path for output format configuration
3
4 ---
5 src/main.h | 2 +-
6 1 file changed, 1 insertion(+), 1 deletion(-)
7
8 diff --git a/src/main.h b/src/main.h
9 index 4230d47..a84839b 100644
10 --- a/src/main.h
11 +++ b/src/main.h
12 @@ -47,7 +47,7 @@ extern int no_remap_mode;
13 #include "output.h"
14 #endif
15
16 -#define CONFIG_DIR "/usr/local/lib/unrtf/"
17 +#define CONFIG_DIR PKGDATADIR "/"
18 #define DEFAULT_OUTPUT "html"
19
20 extern OutputPersonality *op;
+0
-16
patches/0004-Place-output-config-files-in-sharedir-instead-of-lib.patch less more
0 From: Willi Mann <willi@wm1.at>
1 Date: Sun, 23 Dec 2012 21:44:58 +0100
2 Subject: Place output config files in sharedir instead of libdir
3
4 ---
5 outputs/Makefile.am | 2 +-
6 1 file changed, 1 insertion(+), 1 deletion(-)
7
8 diff --git a/outputs/Makefile.am b/outputs/Makefile.am
9 index 055b75e..3ddef1f 100644
10 --- a/outputs/Makefile.am
11 +++ b/outputs/Makefile.am
12 @@ -1,2 +1,2 @@
13 -outputsdir = ${libdir}/${PACKAGE}
14 +outputsdir = ${pkgdatadir}
15 dist_outputs_DATA = html.conf latex.conf rtf.conf text.conf vt.conf
+0
-22
patches/0005-Tell-unrtf-where-to-look-for-output-format-config-fi.patch less more
0 From: Willi Mann <willi@wm1.at>
1 Date: Tue, 25 Dec 2012 19:13:26 +0100
2 Subject: Tell unrtf where to look for output format config files while
3 running tests
4
5 ---
6 tests/Makefile.am | 2 +-
7 1 file changed, 1 insertion(+), 1 deletion(-)
8
9 diff --git a/tests/Makefile.am b/tests/Makefile.am
10 index e0dd83b..86fcd75 100644
11 --- a/tests/Makefile.am
12 +++ b/tests/Makefile.am
13 @@ -61,7 +61,7 @@ CLEANFILES = $(testresults_html) $(testresults_tex)
14 # add the test scripts and the test data to the distributed files
15 EXTRA_DIST = $(TESTS) $(testdata)
16
17 -TESTS_ENVIRONMENT = UNRTF=$(top_builddir)/src/unrtf
18 +TESTS_ENVIRONMENT = UNRTF=$(top_builddir)/src/unrtf UNRTF_SEARCH_PATH=$(top_builddir)/outputs/:$(top_builddir)/charmaps/
19
20 # ensure that the distributed scripts are executable before distribution.
21 # Could be necessary if checking out CVS.
+0
-19
patches/0006-Disable-latex-test-latex-output-is-broken.patch less more
0 From: Willi Mann <willi@wm1.at>
1 Date: Tue, 25 Dec 2012 19:59:41 +0100
2 Subject: Disable latex test - latex output is broken
3
4 ---
5 tests/Makefile.am | 2 +-
6 1 file changed, 1 insertion(+), 1 deletion(-)
7
8 diff --git a/tests/Makefile.am b/tests/Makefile.am
9 index 86fcd75..ea17293 100644
10 --- a/tests/Makefile.am
11 +++ b/tests/Makefile.am
12 @@ -1,5 +1,5 @@
13 # executable test scripts to perform
14 -TESTS = test_html.sh test_latex.sh
15 +TESTS = test_html.sh
16
17 # the data set for the tests
18 testdata = Greek1.rtf Greek2.rtf \
+0
-32
patches/0007-Get-fully-rid-of-hardcoded-local-lib-paths.patch less more
0 From: Willi Mann <willi@wm1.at>
1 Date: Wed, 26 Dec 2012 10:03:47 +0100
2 Subject: Get fully rid of hardcoded local/lib paths
3
4 ---
5 src/my_iconv.h | 2 +-
6 src/path.h | 2 +-
7 2 files changed, 2 insertions(+), 2 deletions(-)
8
9 diff --git a/src/my_iconv.h b/src/my_iconv.h
10 index 1ca8d26..ac42102 100644
11 --- a/src/my_iconv.h
12 +++ b/src/my_iconv.h
13 @@ -10,7 +10,7 @@
14 #define HAVE_ICONV_H
15 #endif
16
17 -#define CHARMAP_DIR "/usr/local/lib/unrtf/charmaps/"
18 +#define CHARMAP_DIR PKGDATADIR "/charmaps/"
19 #define char_table_size 256
20
21 typedef struct
22 diff --git a/src/path.h b/src/path.h
23 index 68a2167..f6c16d0 100644
24 --- a/src/path.h
25 +++ b/src/path.h
26 @@ -1,4 +1,4 @@
27 -#define DEFAULT_UNRTF_SEARCH_PATH "/usr/local/lib/unrtf/"
28 +#define DEFAULT_UNRTF_SEARCH_PATH PKGDATADIR "/"
29
30 char *search_path;
31 int n_path_dirs;
+0
-21
patches/0008-Ensure-that-the-picture-extracted-during-testing-is-.patch less more
0 From: Willi Mann <willi@wm1.at>
1 Date: Wed, 26 Dec 2012 10:12:07 +0100
2 Subject: Ensure that the picture extracted during testing is also cleaned
3
4 ---
5 tests/Makefile.am | 2 +-
6 1 file changed, 1 insertion(+), 1 deletion(-)
7
8 diff --git a/tests/Makefile.am b/tests/Makefile.am
9 index ea17293..4950e05 100644
10 --- a/tests/Makefile.am
11 +++ b/tests/Makefile.am
12 @@ -56,7 +56,7 @@ testresults_tex = Greek1.rtf.tex Greek2.rtf.tex \
13 unicode4.rtf.tex
14
15 # need to wipe out test results on make clean
16 -CLEANFILES = $(testresults_html) $(testresults_tex)
17 +CLEANFILES = $(testresults_html) $(testresults_tex) pict001.wmf
18
19 # add the test scripts and the test data to the distributed files
20 EXTRA_DIST = $(TESTS) $(testdata)
+0
-120
patches/0009-Update-test-file-set-to-ensure-proper-cleaning-of-te.patch less more
0 From: Willi Mann <willi@wm1.at>
1 Date: Wed, 26 Dec 2012 10:38:56 +0100
2 Subject: Update test file set to ensure proper cleaning of tests dir
3
4 ---
5 tests/Makefile.am | 80 ++++++++++++++++++++++++++++++++---------------------
6 1 file changed, 49 insertions(+), 31 deletions(-)
7
8 diff --git a/tests/Makefile.am b/tests/Makefile.am
9 index 4950e05..768a6d7 100644
10 --- a/tests/Makefile.am
11 +++ b/tests/Makefile.am
12 @@ -2,58 +2,76 @@
13 TESTS = test_html.sh
14
15 # the data set for the tests
16 -testdata = Greek1.rtf Greek2.rtf \
17 +testdata = accents.rtf \
18 ascii_decimal.rtf \
19 backslash.rtf \
20 + body.rtf \
21 borders_shading.rtf \
22 braces.rtf \
23 character_formatting.rtf \
24 chars.rtf \
25 columns.rtf \
26 + cp1251-russian-alphabet.rtf \
27 font_size.rtf \
28 font_styles.rtf \
29 + Greek1.rtf \
30 + Greek2.rtf \
31 lists.rtf \
32 paragraph_formatting.rtf \
33 + pict.rtf \
34 symbol.rtf \
35 text_color.rtf \
36 text_formatting.rtf \
37 + Turkish.rtf \
38 unicode4.rtf
39
40 # the result set for the html test
41 -testresults_html = Greek1.rtf.html Greek2.rtf.html \
42 +testresults_html = accents.rtf.html \
43 ascii_decimal.rtf.html \
44 - backslash.rtf.html \
45 - borders_shading.rtf.html \
46 - braces.rtf.html \
47 - character_formatting.rtf.html \
48 - chars.rtf.html \
49 - columns.rtf.html \
50 - font_size.rtf.html \
51 - font_styles.rtf.html \
52 - lists.rtf.html \
53 - paragraph_formatting.rtf.html \
54 - symbol.rtf.html \
55 - text_color.rtf.html \
56 - text_formatting.rtf.html \
57 - unicode4.rtf.html
58 + backslash.rtf.html \
59 + body.rtf.html \
60 + borders_shading.rtf.html \
61 + braces.rtf.html \
62 + character_formatting.rtf.html \
63 + chars.rtf.html \
64 + columns.rtf.html \
65 + cp1251-russian-alphabet.rtf.html \
66 + font_size.rtf.html \
67 + font_styles.rtf.html \
68 + Greek1.rtf.html \
69 + Greek2.rtf.html \
70 + lists.rtf.html \
71 + paragraph_formatting.rtf.html \
72 + pict.rtf.html \
73 + symbol.rtf.html \
74 + text_color.rtf.html \
75 + text_formatting.rtf.html \
76 + Turkish.rtf.html \
77 + unicode4.rtf.html
78
79 # the result set for the latex test
80 -testresults_tex = Greek1.rtf.tex Greek2.rtf.tex \
81 +testresults_tex = accents.rtf.tex \
82 ascii_decimal.rtf.tex \
83 - backslash.rtf.tex \
84 - borders_shading.rtf.tex \
85 - braces.rtf.tex \
86 - character_formatting.rtf.tex \
87 - chars.rtf.tex \
88 - columns.rtf.tex \
89 - font_size.rtf.tex \
90 - font_styles.rtf.tex \
91 - lists.rtf.tex \
92 - paragraph_formatting.rtf.tex \
93 - symbol.rtf.tex \
94 - text_color.rtf.tex \
95 - text_formatting.rtf.tex \
96 - unicode4.rtf.tex
97 + backslash.rtf.tex \
98 + body.rtf.tex \
99 + borders_shading.rtf.tex \
100 + braces.rtf.tex \
101 + character_formatting.rtf.tex \
102 + chars.rtf.tex \
103 + columns.rtf.tex \
104 + cp1251-russian-alphabet.rtf.tex \
105 + font_size.rtf.tex \
106 + font_styles.rtf.tex \
107 + Greek1.rtf.tex \
108 + Greek2.rtf.tex \
109 + lists.rtf.tex \
110 + paragraph_formatting.rtf.tex \
111 + pict.rtf.tex \
112 + symbol.rtf.tex \
113 + text_color.rtf.tex \
114 + text_formatting.rtf.tex \
115 + Turkish.rtf.tex \
116 + unicode4.rtf.tex
117
118 # need to wipe out test results on make clean
119 CLEANFILES = $(testresults_html) $(testresults_tex) pict001.wmf
0 # Makefile.in generated by automake 1.14 from Makefile.am.
0 # Makefile.in generated by automake 1.13.4 from Makefile.am.
11 # @configure_input@
22
33 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
0 # Makefile.in generated by automake 1.14 from Makefile.am.
0 # Makefile.in generated by automake 1.13.4 from Makefile.am.
11 # @configure_input@
22
33 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
376376 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
377377 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
378378 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
379 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
379 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
380380
381381 .c.obj:
382382 @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
383383 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
384384 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
385385 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
386 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
386 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
387387
388388 ID: $(am__tagged_files)
389389 $(am__define_uniq_tagged_files); mkid -fID $$unique
3838 * 09 Jun 13, peterli@salk.edu, added code to cope with bold/italic
3939 requests that are not properly nested
4040 * 27 Jun 13, peterli@salk.edu, improved efficiency of the unnested code
41 * 09 Dec 14, nicosr@free.frl, fix to return in attr_get_param for clang
4142 *--------------------------------------------------------------------*/
4243
4344 #ifdef HAVE_CONFIG_H
347348 int i;
348349 AttrStack *stack = stack_of_stacks_top;
349350 if (!stack) {
350 warning_handler("No stack to get attribute from");
351 return;
351 if (attr != ATTR_ENCODING) {
352 /*
353 * attr_get_param(ATTR_ENCODING) is always called
354 * called once without a stack being available.
355 */
356 warning_handler("No stack to get attribute from");
357 }
358 return NULL;
352359 }
353360
354361 i=stack->tos;
441448 attrstack_push ()
442449 {
443450 AttrStack *new_stack;
444 AttrStack *prev_stack;
445451
446452 new_stack = (AttrStack*) my_malloc (sizeof (AttrStack));
447453 memset ((void*) new_stack, 0, sizeof (AttrStack));
448
449 prev_stack = stack_of_stacks_top;
450454
451455 if (!stack_of_stacks) {
452456 stack_of_stacks = new_stack;
570574 while(prev_stack && prev_stack->next && prev_stack->next != stack)
571575 prev_stack = prev_stack->next;
572576
573 if (prev_stack) {
577 /* prev_stack == stack_of_stacks_top if there was only one
578 element. We'll be empty. Note that prev_stack can't be
579 actually NULL here, this would happen with an empty stack,
580 which would have been detected by the !stack test above.
581 */
582 if (prev_stack && (prev_stack != stack_of_stacks_top)) {
574583 stack_of_stacks_top = prev_stack;
575584 prev_stack->next = NULL;
576585 } else {
685694 va_list arguments;
686695
687696 if (string == NULL)
688 printf("");
697 ;
689698 else
690699 {
691700 va_start(arguments, string);
785794 *=======================================================================*/
786795
787796 Collection *
788 add_to_collection(Collection *col, int nr, char *text)
797 add_to_collection(Collection *col, int nr, const char *text)
789798 {
790799 Collection *c = col;
791800
830839 * Returns: NULL or found elemet.
831840 *=======================================================================*/
832841
833 char *
842 const char *
834843 get_from_collection(Collection *c, int nr)
835844 {
836845 while (c != NULL)
7171 typedef struct _c
7272 {
7373 int nr;
74 char *text;
74 const char *text;
7575 struct _c *next;
7676 } Collection;
7777
78 Collection *add_to_collection(Collection *col, int nr, char *text);
79 char *get_from_collection(Collection *c, int nr);
78 Collection *add_to_collection(Collection *col, int nr, const char *text);
79 const char *get_from_collection(Collection *c, int nr);
8080 void free_collection(Collection *c);
8181
8282 extern void attr_push(int attr, char* param);
8585 extern void attrstack_drop();
8686 extern void attrstack_express_all();
8787
88 extern int attr_find_pop(int findattr);
8889 extern int attr_pop(int attr);
8990
9091 extern int attr_read();
7676 more widely applied
7777 * 27 Jun 13, daved@physiol.usyd.edu.au: added a few more cmds to
7878 SUPPORT_UNNESTED
79 * 09 Dec 14, Michal Zalewski - changes in process_color_table, cmd_cf, cmd_cb
80 and cmd_highlight to protect against malformed RTF input
81 * 09 Dec 14, hanno@hboeck.de changes to avoid null pointers
82 * 11 Dec 14, daved@physiol.usyd.edu.au: changed handling of "*" command so
83 * that included pictures are not ignored
84 * 12 Dec 14, daved@physiol.usyd.edu.au: check that bogus month not in info
7985 *--------------------------------------------------------------------*/
8086
8187 #ifdef HAVE_CONFIG_H
95101 #endif
96102
97103 #ifdef HAVE_STRING_H
104 /* For strcasestr() */
105 #define __USE_GNU
98106 #include <string.h>
99107 #endif
100108
111119 #include "convert.h"
112120 #include "attr.h"
113121
122 typedef struct {
123 char *name;
124 int (*func)(Word*, int, char, int);
125 char *debug_print;
126 } HashItem;
127 static HashItem *find_command(const char *cmdpp, int *hasparamp, int *paramp);
114128
115129 extern int nopict_mode;
116130
162176 PICT_WB,
163177 PICT_JPEG,
164178 PICT_PNG,
179 PICT_EMF,
165180 };
166181 static int within_picture=FALSE;
182 static int within_picture_depth;
167183 static int picture_file_number=1;
168184 static char picture_path[255];
169185 static int picture_width;
173189 static int picture_wmetafile_type;
174190 static char *picture_wmetafile_type_str;
175191
192 static int within_citation=FALSE;
193
176194
177195 static int have_printed_body=FALSE;
178196 static int within_header=TRUE;
179197
180198
181 static char *hyperlink_base = NULL;
199 static const char *hyperlink_base = NULL;
182200
183201
184202 void starting_body();
185203 void starting_text();
186 void print_with_special_exprs (char *s);
204 void print_with_special_exprs (const char *s);
187205
188206 static int banner_printed=FALSE;
189207
251269 "Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto",
252270 "Septiembre","Octubre","Noviembre","Diciembre"
253271 #endif
254 #ifdef DEUTCH
255 "?","?","?","?","?","?","?","?",
256 "?","?","?","?"
272 #ifdef DEUTSCH /* daved - 0.21.6 */
273 "Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August",
274 "September", "Oktober", "November", "Dezember"
257275 #endif
258276 #ifdef PORTUGUES /* amaral - 0.19.2 */
259277 "Janeiro","Fevereiro","Marco","Abril","Maio","Junho","Julho","Agosto",
275293 {
276294 int year=0, month=0, day=0, hour=0, minute=0;
277295 CHECK_PARAM_NOT_NULL(w);
278 while (w) {
279 char *s = word_string (w);
296
297 while (w)
298 {
299 const char *s = word_string (w);
300 if (!s)
301 return;
280302 if (*s == '\\') {
281303 ++s;
282304 if (!strncmp (s, "yr", 2) && isdigit(s[2])) {
283305 year = atoi (&s[2]);
284306 }
285 else if (!strncmp (s, "mo", 2) && isdigit(s[2])) {
307 else if (!strncmp (s, "mo", 2) && isdigit(s[2]))
308 {
286309 month= atoi (&s[2]);
310 if(month > 12)
311 {
312 warning_handler("bogus month");
313 return;
314 }
287315 }
288316 else if (!strncmp (s, "dy", 2) && isdigit(s[2])) {
289317 day= atoi (&s[2]);
297325 }
298326 w=w->next;
299327 }
300 if (year && month && day) {
328 if (year && month > 0 && month <= 12 && day) {
301329 printf("%d %s %d ", day, month_strings[month-1], year);
302330 }
303331 if (hour && minute) {
519547 while (w) {
520548 int num;
521549 char name[BUFSIZ];
522 char *tmp;
523
524 if ((w2 = w->child)) {
550 const char *tmp;
551
552 if ((w2 = w->child))
553 {
525554 tmp = word_string(w2);
555 if(!tmp)
556 return;
526557 if (!strncmp("\\f", tmp, 2)) {
527558 num = atoi(&tmp[2]);
528559 name[0] = 0;
555586 }
556587
557588 /* Chop the gall-derned semicolon. */
558 if ((tmp = strchr(name, ';')))
559 *tmp = 0;
589 { char *t;
590 if ((t = strchr(name, ';')))
591 *t = 0;
592 }
560593
561594 font_table[total_fonts].num=num;
562595 font_table[total_fonts].name=my_strdup(name);
634667
635668 while(w) {
636669 if ((w2=w->child)) {
637 char *str = word_string (w2);
670 const char *str = word_string (w2);
638671
639672 if (debug_mode && str) {
640673 if (safe_printf(0, op->comment_begin)) fprintf(stderr, TOO_MANY_ARGS, "comment_begin");
663696
664697 while(w) {
665698 if ((w2=w->child)) {
666 char *str = word_string (w2);
699 const char *str = word_string (w2);
667700
668701 if (debug_mode && str) {
669702
696729 /* CHECK_PARAM_NOT_NULL(w); */
697730 if (!w) printf("AUTHOR'S COMMENT: \\info command is null!\n");
698731
699 while(w) {
732 while(w)
733 {
700734 child = w->child;
701735 if (child) {
702736 Word *w2;
703 char *s;
737 const char *s;
704738
705739 s = word_string(child);
740 if(!s)
741 return;
706742
707743 if (!inline_mode) {
708744 if (!strcmp("\\title", s)) {
710746 if (safe_printf(0, op->document_title_begin)) fprintf(stderr, TOO_MANY_ARGS, "document_title_begin");
711747 w2=child->next;
712748 while (w2) {
713 char *s2 = word_string(w2);
714 if (s2[0] != '\\')
749 const char *s2 = word_string(w2);
750 if (s2 && s2[0] != '\\')
715751 {
716752 print_with_special_exprs (s2);
717753 }
718 else
754 else if (s2 && s2[1] == '\'' && s2[2] && s2[3])
719755 {
720 if (s2[1] == '\'')
721 {
722 int ch = h2toi (&s2[2]);
723 accumulate_iconv_input(ch);
724 }
756 int ch = h2toi (&s2[2]);
757 accumulate_iconv_input(ch);
725758 }
726759
727760 w2 = w2->next;
733766 if (safe_printf(0, op->document_keywords_begin)) fprintf(stderr, TOO_MANY_ARGS, "document_keywords_begin");
734767 w2=child->next;
735768 while (w2) {
736 char *s2 = word_string(w2);
737 if (s2[0] != '\\')
769 const char *s2 = word_string(w2);
770 if (s2 && s2[0] != '\\')
738771 printf("%s,", s2);
739772 w2 = w2->next;
740773 }
744777 if (safe_printf(0, op->document_author_begin)) fprintf(stderr, TOO_MANY_ARGS, "document_author_begin");
745778 w2=child->next;
746779 while (w2) {
747 char *s2 = word_string(w2);
748 if (s2[0] != '\\')
780 const char *s2 = word_string(w2);
781 if (s2 && s2[0] != '\\')
749782 printf("%s", s2);
750783 w2 = w2->next;
751784 }
756789 printf("comments: ");
757790 w2=child->next;
758791 while (w2) {
759 char *s2 = word_string(w2);
760 if (s2[0] != '\\')
792 const char *s2 = word_string(w2);
793 if (s2 && s2[0] != '\\')
761794 printf("%s", s2);
762795 w2 = w2->next;
763796 }
808841 * we want to process the following.
809842 */
810843 if (!strcmp("\\hlinkbase", s)) {
811 char *linkstr = NULL;
844 const char *linkstr = NULL;
812845
813846 if (safe_printf(0, op->comment_begin)) fprintf(stderr, TOO_MANY_ARGS, "comment_begin");
814847 printf("hyperlink base: ");
866899 */
867900 r=g=b=0;
868901
869 while(w) {
870 char *s = word_string (w);
902 while(w)
903 {
904 const char *s = word_string (w);
905 if(s == 0 || total_colors >= MAX_COLORS)
906 break;
871907
872908 if (!strncmp("\\red",s,4)) {
873909 r = atoi(&s[4]);
917953 *=======================================================================*/
918954
919955 static int
920 cmd_cf (Word *w, int align, char has_param, int num) {
956 cmd_cf (Word *w, int align, char has_param, int num)
957 {
921958 char str[40];
922959
923 if (!has_param || num>=total_colors) {
960 if (!has_param || num<0 || num>=total_colors)
961 {
924962 warning_handler ("font color change attempted is invalid");
925963 }
926964 else
944982 *=======================================================================*/
945983
946984 static int
947 cmd_cb (Word *w, int align, char has_param, int num) {
985 cmd_cb (Word *w, int align, char has_param, int num)
986 {
948987 char str[40];
949988
950 if (!has_param || num>=total_colors) {
989 if (!has_param || num<0 || num>=total_colors)
990 {
951991 warning_handler ("font color change attempted is invalid");
952992 }
953993 else
10031043 child = w->child;
10041044 if (child) {
10051045 Word *w2;
1006 char *s;
1046 const char *s;
10071047
10081048 s = word_string(child);
1049 if (!s)
1050 return TRUE;
1051
10091052 #if 1 /* daved experimenting with fldrslt */
10101053 if(!strcmp("\\fldrslt", s))
10111054 return FALSE;
10171060 w2=child->next;
10181061 while (w2)
10191062 {
1020 char *s2 = word_string(w2);
1063 const char *s2 = word_string(w2);
10211064 if (s2 && !strcmp("\\fldinst", s2))
10221065 {
10231066 Word *w3;
1024 char *s;
1025 char *s4;
1067 const char *s;
1068 const char *s4;
10261069 Word *w4;
10271070 w3=w2->next;
10281071 s = word_string(w3);
10291072 if (s && !strcmp(s, "SYMBOL") )
10301073 {
10311074 w4=w3->next;
1032 while(w4 && !strcmp(word_string(w4), " "))
1075 while(w4 && word_string(w4) && !strcmp(word_string(w4), " "))
10331076 w4 = w4->next;
10341077 s4 = word_string(w4);
10351078 if (s4)
10361079 {
10371080 int char_num;
1038 char *string;
1081 const char *string;
10391082 char_num = atoi(s4);
10401083
10411084 string = op_translate_char(op,
10521095 if (w3) w3=w3->child;
10531096 while (w3)
10541097 {
1055 char *s3=word_string(w3);
1098 const char *s3=word_string(w3);
1099 if (s3 && !strcmp("EN.CITE", s3))
1100 {
1101 if(0)fprintf(stderr, "got EN.CITE\n");
1102 within_citation = TRUE;
1103 }
1104 if (within_citation)
1105 if(0)fprintf(stderr,"%s\n", s3);
10561106 if (s3 && !strcmp("HYPERLINK",s3)) {
10571107 Word *w4;
1058 char *s4;
1108 const char *s4;
10591109 w4=w3->next;
1060 while (w4 && !strcmp(" ", word_string(w4)))
1110 while (w4 && word_string(w4) && !strcmp(" ", word_string(w4)))
10611111 w4=w4->next;
10621112 if (w4) {
10631113 s4=word_string(w4);
11521202 {
11531203 char str[40];
11541204
1155 if (!has_param || num>=total_colors) {
1205 if (!has_param || num<0 || num>=total_colors)
1206 {
11561207 warning_handler ("font background color change attempted is invalid");
11571208 }
11581209 else
16361687 * Returns: Flag, true only if rest of Words on line should be ignored.
16371688 *=======================================================================*/
16381689
1639 static int cmd_ulnone (Word *w, int align, char has_param, int param) {
1640 int attr, more=TRUE;
1690 static int cmd_ulnone (Word *w, int align, char has_param, int param)
1691 {
16411692
16421693 #ifdef BINARY_ATTRS
16431694 attr_remove_underlining()) fprintf(stderr, TOO_MANY_ARGS, );
16441695 #else
16451696 do {
1646 attr = attr_read();
1697 int attr = attr_read();
16471698 if (attr==ATTR_UNDERLINE ||
16481699 attr==ATTR_DOT_UL ||
16491700 attr==ATTR_DASH_UL ||
16541705 attr==ATTR_THICK_UL ||
16551706 attr==ATTR_DOUBLE_UL)
16561707 {
1657 if (!attr_pop(ATTR_UNDERLINE))
1658 ;
1659 } else
1660 more=FALSE;
1661 } while(more);
1708 /* Top attr is some kind of underline. Pop it */
1709 if (!attr_pop(attr)) {
1710 /* ?? Have to break, else we're looping */
1711 break;
1712 }
1713 } else {
1714 /* Top attr not underline, done */
1715 break;
1716 }
1717 } while (1);
16621718 #endif
16631719 return FALSE;
16641720 }
18661922 return FALSE;
18671923 }
18681924
1925 /*========================================================================
1926 * Name: cmd_shppict
1927 * Purpose: Executes the \shppict command.
1928 * Args: Word, paragraph align info, and numeric param if any.
1929 * Returns: Flag, true only if rest of Words on line should be ignored.
1930 *=======================================================================*/
1931
1932 static int cmd_shppict (Word *w, int align, char has_param, int param)
1933 {
1934 return FALSE;
1935 }
18691936
18701937 /*========================================================================
18711938 * Name: cmd_up
18971964 short done=0;
18981965 long unicode_number = (long) param; /* On 16bit architectures int is too small to store unicode characters. - AF */
18991966 char tmp[12]; /* Number of characters that can be in int type (including '\0'). If int size is greater than 4 bytes change this value. - AF */
1900 char *alias;
1967 const char *alias;
19011968 #define DEBUG 0
19021969 #if DEBUG
19031970 char *str;
23012368 * Returns: Flag, true only if rest of Words on line should be ignored.
23022369 *=======================================================================*/
23032370
2304 static int cmd_ignore (Word *w, int align, char has_param, int param) {
2371 static int cmd_ignore (Word *w, int align, char has_param, int param)
2372 {
2373 return TRUE;
2374 }
2375
2376 /*========================================================================
2377 * Name: cmd_maybe_ignore
2378 * Purpose: Called when encountering {\* which specifies that the whole
2379 * group should be discarded if the immediately following command is
2380 * not known.
2381 * Args: Word, paragraph align info, and numeric param if any.
2382 * Returns: Flag, true only if rest of Words on line should be ignored.
2383 *=======================================================================*/
2384
2385 static int cmd_maybe_ignore (Word *w, int align, char has_param, int param)
2386 {
2387 /* If the next command is known, we let it decide what to do
2388 * (which may still be to discard the group. If it is not found
2389 * we return TRUE to discard the next elements.
2390 */
2391 if(w && w->next)
2392 {
2393 int hasparam, param;
2394 const char *s = word_string(w->next);
2395 if (s && s[0] == '\\' && find_command(s + 1, &hasparam, &param))
2396 return FALSE;
2397 }
2398
2399 return TRUE;
2400 }
2401
2402 /*========================================================================
2403 * Name: cmd_blipuid
2404 * Purpose: Dummy function to get rid of uid
2405 * Args: Word, paragraph align info, and numeric param if any.
2406 * Returns: Flag, true only if rest of Words on line should be ignored.
2407 *=======================================================================*/
2408
2409 static int cmd_blipuid (Word *w, int align, char has_param, int param)
2410 {
2411 CHECK_PARAM_NOT_NULL (w);
23052412 return TRUE;
23062413 }
23072414
23242431 * Returns: Flag, true only if rest of Words on line should be ignored.
23252432 *=======================================================================*/
23262433
2327 static int cmd_pict (Word *w, int align, char has_param, int param) {
2434 static int cmd_pict (Word *w, int align, char has_param, int param)
2435 {
23282436 within_picture=TRUE;
23292437 picture_width = picture_height = 0;
23302438 picture_type = PICT_WB;
23312439 return FALSE;
23322440 }
2441 /*========================================================================
2442 * Name: cmd_picprop
2443 * Purpose: Executes the \picprop
2444 * Args: Word, paragraph align info, and numeric param if any.
2445 * Returns: Flag, true only if rest of Words on line should be ignored.
2446 *=======================================================================*/
2447
2448 static int cmd_picprop (Word *w, int align, char has_param, int param)
2449 {
2450 return TRUE;
2451 }
2452
23332453
23342454 /*========================================================================
23352455 * Name: cmd_bin
23762496
23772497 static int cmd_pngblip (Word *w, int align, char has_param, int param) {
23782498 picture_type = PICT_PNG;
2499 return FALSE;
2500 }
2501
2502 /*========================================================================
2503 * Name: cmd_emfblip
2504 * Purpose: Executes the \emfblip command.
2505 * Args: Word, paragraph align info, and numeric param if any.
2506 * Returns: Flag, true only if rest of Words on line should be ignored.
2507 *=======================================================================*/
2508
2509 static int cmd_emfblip (Word *w, int align, char has_param, int param) {
2510 picture_type = PICT_EMF;
23792511 return FALSE;
23802512 }
23812513
24942626 }
24952627
24962628
2497 typedef struct {
2498 char *name;
2499 int (*func)(Word*, int, char, int);
2500 char *debug_print;
2501 } HashItem;
2502
2503
25042629 /* All of the possible commands that RTF might recognize. */
25052630 static HashItem hashArray_other [] = {
2631 /* 0.21.7
2632 * the "*" command was ignored in earlier versions, but included pictures
2633 * seem to often start with \*\shppict{\pict so if "*" is ignored, so is
2634 * the picture, so I have defined a new function "cmd_maybe_ignore" which
2635 * tests whether the next word is shppict and if so does not ignore what
2636 * follows. On simple tests this seems to work. - daved
2637 */
2638 #if 0
25062639 { "*", cmd_ignore, NULL },
2640 #else
2641 { "*", cmd_maybe_ignore, NULL },
2642 #endif
25072643 { "-", cmd_optional_hyphen, "optional hyphen" },
25082644 { "_", cmd_nonbreaking_hyphen, "nonbreaking hyphen" },
25092645 { "~", cmd_nonbreaking_space, NULL },
25182654 { "b", &cmd_b, NULL },
25192655 { "bullet", &cmd_bullet, NULL },
25202656 { "bin", &cmd_bin, "picture is binary" },
2657 { "blipuid", &cmd_blipuid, NULL },
25212658 #if 0
25222659 { "bgbdiag", NULL, NULL },
25232660 { "bgcross", NULL, NULL },
25752712 { "clmgf", NULL, NULL },
25762713 { "clmrg", NULL, NULL },
25772714 { "clshdng", NULL, NULL },
2715 { "cs", NULL, "character style (not implemented)"},
25782716 { NULL, NULL, NULL}
25792717 };
25802718 static HashItem hashArray_d [] = {
25912729 { "embo", &cmd_emboss, NULL },
25922730 { "expand", &cmd_expand, NULL },
25932731 { "expnd", &cmd_expand, NULL },
2732 { "emfblip", &cmd_emfblip, NULL },
25942733 { NULL, NULL, NULL}
25952734 };
25962735 static HashItem hashArray_f [] = {
26592798 { "pca", &cmd_pca , NULL },
26602799 { "pich", &cmd_pich, NULL },
26612800 { "pict", &cmd_pict, "picture" },
2801 { "picprop", &cmd_picprop, "picture properties" },
26622802 { "picw", &cmd_picw, NULL },
26632803 { "plain", &cmd_plain, NULL },
26642804 { "pngblip", &cmd_pngblip, NULL },
26652805 { "pnmetafile", &cmd_pnmetafile, NULL },
2806 { "emfblip", &cmd_emfblip, NULL },
26662807 #if 0
26672808 { "piccropb", NULL, NULL },
26682809 { "piccropl", NULL, NULL },
26942835 { "strikedl", &cmd_strikedl, NULL },
26952836 { "stylesheet", &cmd_ignore, "style sheet" },
26962837 { "shp", cmd_shp, "drawn shape" },
2838 { "shppict", &cmd_shppict, "shppict wrapper" },
26972839 #if 0
26982840 { "shading", NULL, NULL },
26992841 #endif
27712913 /*-------------------------------------------------------------------*/
27722914 /*-------------------------------------------------------------------*/
27732915
2916 /*========================================================================
2917 * Name: find_command
2918 * Purpose: Search command lists for input string and return handler and possible parameter
2919 * Args: cmdpp pointer to string with command and optional parameter.
2920 * ex: "\cmd ..." "\cmd123A..." "\cmd-2ABC..."
2921 * hasparamp: parameter existence flag (output)
2922 * paramp: parameter value if hasparamp is set
2923 * Returns: Pointer to command structure, or NULL
2924 *=======================================================================*/
2925
2926 static HashItem *find_command(const char *cmdpp, int *hasparamp, int *paramp)
2927 {
2928 HashItem *hip;
2929 int ch;
2930 const char *p; /* Start of parameter */
2931
2932 /* Look for a parameter */
2933 p = cmdpp;
2934 while (*p && (!isdigit(*p) && *p != '-'))
2935 p++;
2936 if (*p && (isdigit(*p) || *p == '-')) {
2937 *hasparamp = TRUE;
2938 *paramp = atoi(p);
2939 }
2940
2941 /* Generate a hash index */
2942 ch = tolower(*cmdpp);
2943 if (ch >= 'a' && ch <= 'z')
2944 hip = hash[ch - 'a'];
2945 else
2946 hip = hashArray_other;
2947
2948 if (!hip) {
2949 if (debug_mode) {
2950 if (safe_printf(0, op->comment_begin)) fprintf(stderr, TOO_MANY_ARGS, "comment_begin");
2951 printf("Unfamiliar RTF command: %s (HashIndex not found)", cmdpp);
2952 if (safe_printf(0, op->comment_end)) fprintf(stderr, TOO_MANY_ARGS, "comment_end");
2953 }
2954 return NULL;
2955 }
2956
2957 while (hip->name) {
2958 if (*hasparamp) {
2959 int len = p - cmdpp;
2960 /* Don't change the order of tests ! */
2961 if (!strncmp(cmdpp, hip->name, len) && hip->name[len] == 0)
2962 return hip;
2963 } else {
2964 if (!strcmp(cmdpp, hip->name))
2965 return hip;
2966
2967 }
2968 hip++;
2969 }
2970
2971 if (debug_mode) {
2972 if (safe_printf(0, op->comment_begin)) fprintf(stderr, TOO_MANY_ARGS, "comment_begin");
2973 printf("Unfamiliar RTF command: %s", cmdpp);
2974 if (safe_printf(0, op->comment_end)) fprintf(stderr, TOO_MANY_ARGS, "comment_end");
2975 }
2976 return NULL;
2977 }
27742978
27752979
27762980 /*-------------------------------------------------------------------*/
27922996 *=======================================================================*/
27932997
27942998 void
2795 print_with_special_exprs (char *s) {
2999 print_with_special_exprs (const char *s) {
27963000 int ch;
27973001 int state;
27983002
28173021 }
28183022
28193023 while ((ch=*s)) {
2820 char *post_trans = NULL;
3024 const char *post_trans = NULL;
28213025
28223026 if (simulate_allcaps || simulate_smallcaps)
28233027 ch = toupper (ch);
30653269 *=======================================================================*/
30663270
30673271 static void
3068 word_print_core (Word *w)
3069 {
3070 char *s;
3071 char *alias;
3272 word_print_core (Word *w, int groupdepth)
3273 {
3274 const char *s;
3275 const char *alias;
30723276 FILE *pictfile=NULL;
30733277 int is_cell_group=FALSE;
30743278 int paragraph_begined=FALSE;
30753279 int paragraph_align=ALIGN_LEFT;
30763280
3281 if (groupdepth > MAX_GROUP_DEPTH) {
3282 warning_handler ("Max group depth reached");
3283 return;
3284 }
30773285 CHECK_PARAM_NOT_NULL(w);
30783286
30793287 if (!coming_pars_that_are_tabular && within_table) {
31133321 }
31143322
31153323 /*----------------------------------------*/
3116 if (within_picture) {
3324 if (within_picture)
3325 {
3326 if (within_picture_depth == 0)
3327 within_picture_depth = groupdepth;
31173328 starting_body();
31183329 if (!pictfile && !nopict_mode) {
31193330 char *ext=NULL;
31253336 case PICT_PNG: ext="png"; break;
31263337 case PICT_DI: ext="dib"; break; /* Device independent bitmap=??? */
31273338 case PICT_PM: ext="pmm"; break; /* OS/2 metafile=??? */
3339 case PICT_EMF: ext="emf"; break; /* Enhanced MetaFile */
31283340 }
31293341 sprintf(picture_path, "pict%03d.%s",
31303342 picture_file_number++,ext);
3131 pictfile=fopen(picture_path,"w");
3343 pictfile=fopen(picture_path,"wb");
31323344 }
31333345
31343346 if (s[0]!=' ') {
3135 char *s2;
3347 const char *s2;
31363348 if (safe_printf(0, op->comment_begin)) fprintf(stderr, TOO_MANY_ARGS, "comment_begin");
31373349 printf("picture data found, ");
31383350 if (picture_wmetafile_type_str) {
31443356 if (safe_printf(0, op->comment_end)) fprintf(stderr, TOO_MANY_ARGS, "comment_end");
31453357 if (picture_width && picture_height && picture_bits_per_pixel) {
31463358 s2=s;
3147 while (*s2) {
3359 /* Convert hex char pairs. Guard against odd byte count from garbled file */
3360 while (*s2 && *(s2+1)) {
31483361 unsigned int tmp,value;
31493362 tmp=tolower(*s2++);
31503363 if (tmp>'9') tmp-=('a'-10);
32033416 }
32043417 /*---Handle RTF keywords---------------------------*/
32053418 else {
3206
3207 int done=FALSE;
32083419 s++;
32093420 /*----Paragraph alignment----------------------------------------------------*/
32103421 if (!strcmp ("ql", s))
32623473 }
32633474
32643475 /*----Special chars---------------------------------------------------------*/
3265 else if (*s == '\'') {
3476 else if (*s == '\'' && s[1] && s[2]) {
32663477 /* \'XX is a hex char code expression */
32673478
32683479 int ch = h2toi (&s[1]);
32713482 else
32723483 /*----Search the RTF command hash-------------------------------------------*/
32733484 {
3274 int ch;
3275 int index=0;
32763485 int have_param = FALSE, param = 0;
3277 HashItem *hip;
3278 char *p;
3279 int match = FALSE; /* Pacify gcc, st001906 - 0.19.6 */
3280
3281 /* Look for a parameter */
3282 p = s;
3283 while (*p && (!isdigit(*p) && *p != '-')) p++;
3284 if (*p && (isdigit(*p) || *p == '-')) {
3285 have_param = TRUE;
3286 param = atoi(p);
3287 }
3288
3289 /* Generate a hash index */
3290 ch = tolower(*s);
3291 if (ch >= 'a' && ch <= 'z')
3292 hip = hash[ch - 'a'];
3293 else
3294 hip = hashArray_other;
3295
3296 if (!hip) {
3297 if (debug_mode) {
3298 if (safe_printf(0, op->comment_begin)) fprintf(stderr, TOO_MANY_ARGS, "comment_begin");
3299 printf("Unfamiliar RTF command: %s (HashIndex not found)", s);
3486 HashItem *hip = find_command(s, &have_param, &param);
3487 if (hip) {
3488 int terminate_group;
3489
3490 if (hip->func) {
3491 terminate_group = hip->func (w,paragraph_align, have_param, param);
3492 /* daved - 0.19.4 - unicode support may need to skip only one word */
3493 if (terminate_group == SKIP_ONE_WORD)
3494 w=w->next;
3495 else
3496 if (terminate_group)
3497 while(w) w=w->next;
3498 }
3499
3500 if (hip->debug_print && debug_mode) {
3501 if (safe_printf(0, op->comment_begin))
3502 fprintf(stderr, TOO_MANY_ARGS, "comment_begin");
3503 printf("%s", hip->debug_print);
33003504 if (safe_printf(0, op->comment_end)) fprintf(stderr, TOO_MANY_ARGS, "comment_end");
33013505 }
3302 }
3303 else {
3304 while (!done) {
3305 match = FALSE;
3306
3307 if (have_param) {
3308 int len=p-s;
3309 if (!hip[index].name[len] && !strncmp(s, hip[index].name, len))
3310 match = TRUE;
3311 }
3312 else
3313 match = !strcmp(s, hip[index].name);
3314
3315 if (match) {
3316
3317 char *debug;
3318 int terminate_group;
3319
3320 if (hip[index].func) {
3321 //unicode
3322 terminate_group = hip[index].func (w,paragraph_align, have_param, param);
3323 /* daved - 0.19.4 - unicode support may need to skip only one word */
3324 if (terminate_group == SKIP_ONE_WORD)
3325 w=w->next;
3326 else
3327 if (terminate_group)
3328 while(w) w=w->next;
3329 }
3330
3331 debug=hip[index].debug_print;
3332
3333 if (debug && debug_mode) {
3334 if (safe_printf(0, op->comment_begin))
3335 fprintf(stderr, TOO_MANY_ARGS, "comment_begin");
3336 printf("%s", debug);
3337 if (safe_printf(0, op->comment_end)) fprintf(stderr, TOO_MANY_ARGS, "comment_end");
3338 }
3339
3340 done=TRUE;
3341 }
3342 else {
3343 index++;
3344 if (!hip[index].name)
3345 done = TRUE;
3346 }
3347 }
3348 }
3349 if (!match) {
3350 if (debug_mode) {
3351 if (safe_printf(0, op->comment_begin)) fprintf(stderr, TOO_MANY_ARGS, "comment_begin");
3352 printf("Unfamiliar RTF command: %s", s);
3353 if (safe_printf(0, op->comment_end)) fprintf(stderr, TOO_MANY_ARGS, "comment_end");
3354 }
3506
33553507 }
33563508 }
33573509 }
33683520 }
33693521
33703522 if (child)
3371 word_print_core (child);
3523 word_print_core (child, groupdepth+1);
33723524 }
33733525
33743526 if (w)
33753527 w = w->next;
33763528 }
33773529
3378 if (within_picture) {
3379 if(pictfile) {
3530 if (within_picture && within_picture_depth == groupdepth)
3531 {
3532 within_picture_depth = 0;
3533 if(pictfile)
3534 {
33803535 fclose(pictfile);
33813536 if (safe_printf(0, op->imagelink_begin)) fprintf(stderr, TOO_MANY_ARGS, "imagelink_begin");
33823537 printf("%s", picture_path);
34163571 }
34173572
34183573
3419
3420
34213574 /*========================================================================
34223575 * Name:
34233576 * Purpose:
34313584 CHECK_PARAM_NOT_NULL (w);
34323585
34333586 if (!inline_mode) {
3434 #if 1 /* AK3 - AF */
34353587 if (safe_printf(0, op->document_begin)) fprintf(stderr, TOO_MANY_ARGS, "document_begin");
34363588 if (safe_printf(0, op->header_begin)) fprintf(stderr, TOO_MANY_ARGS, "header_begin");
34373589 if (safe_printf(0, op->utf8_encoding)) fprintf(stderr, TOO_MANY_ARGS, "utf8_encoding");
3438 #else
3439 printf(op->document_begin);
3440 printf(op->header_begin);
3441 #endif
34423590 }
34433591
34443592 print_banner ();
34473595 have_printed_body=FALSE;
34483596 within_table=FALSE;
34493597 simulate_allcaps=FALSE;
3450 word_print_core (w);
3598 word_print_core (w, 1);
34513599 end_table();
34523600
34533601 if (!inline_mode) {
3454 #if 1 /* AK3 - AF */
34553602 if (safe_printf(0, op->body_end)) fprintf(stderr, TOO_MANY_ARGS, "body_end");
34563603 if (safe_printf(0, op->document_end)) fprintf(stderr, TOO_MANY_ARGS, "document_end");
3457 #else
3458 printf(op->body_end);
3459 printf(op->document_end);
3460 #endif
3461 }
3462 }
3604 }
3605 }
4242 * David Santinoli
4343 * 09 Nov 08, arkadiusz.firus@gmail.com: updated usage
4444 * 07 Oct 11, jf@dockes.org, added _DEFS_H_INCLUDED_
45 * 09 Dec 14, daved@physiol.usyd.edu.au, revised USAGE string to have -P
46 * before output selection args
4547 *--------------------------------------------------------------------*/
4648
4749
6769 #define SKIP_ONE_WORD 2
6870 #endif
6971
70 #define USAGE "unrtf [--version] [--verbose] [--help] [--nopict|-n] [--noremap] [--html] [--text] [--vt] [--latex] [--rtf] [-P config_search_path] [-t <file_with_tags>)] <filename>"
72 #define USAGE "unrtf [--version] [--verbose] [--help] [--nopict|-n] [--noremap] [-P config_search_path] [--html] [--text] [--vt] [--latex] [--rtf] [-t <file_with_tags>)] <filename>"
7173
7274
7375 /* Default names for RTF's default fonts */
2323 * Module name: hash
2424 * Author name: Zachary Smith
2525 * Create date: 01 Sep 00
26 * Purpose: Word-hash management. Words are put into a hash and an
27 * identifier is returned. This is used to save us from
26 * Purpose: shared string storage. This is used to save us from
2827 * doing multiple mallocs for recurring strings such as
2928 * 'the' and \par. This is not a big issue under Unix,
3029 * but it is under other OSes and anyway, waste not want not.
3837 * 29 Mar 05, daved@physiol.usyd.edu.au: changes requsted by ZT Smith
3938 * 06 Jan 06, marcossamaral@terra.com.br: changes hash_stats function
4039 * 16 Dec 07, daved@physiol.usyd.edu.au: updated to GPL v3
40 * Further: see VCS log
4141 *--------------------------------------------------------------------*/
4242
4343 #ifdef HAVE_CONFIG_H
5252 #include <string.h>
5353 #endif
5454
55 #ifdef HAVE_STDLIB_H
56 #include <stdlib.h>
57 #endif
58
5559 #include "error.h"
5660 #include "main.h"
5761 #include "malloc.h"
5963
6064 typedef struct _hi {
6165 struct _hi *next;
62 char *str;
63 unsigned long value;
66 char str[1];
6467 } HashItem;
6568
6669
67 /* Index by first char of string */
70 /* Index by first char of string not \ */
6871 static HashItem *hash[256];
69 static unsigned long hash_length[256];
70 static unsigned long hash_value=0;
71
72
73
74 /*========================================================================
75 * Name: hash_init
76 * Purpose: Clear the hash table.
77 * Args: None.
78 * Returns: None.
79 *=======================================================================*/
80
81 void
82 hash_init ()
83 {
84 int i;
85 for (i=0; i<256; i++) {
86 hash[i]=NULL;
87 hash_length[i]=0;
88 }
89 }
90
91
9272
9373 /*========================================================================
9474 * Name: hash_stats
10484 {
10585 int i;
10686 unsigned long total=0;
87 HashItem *hi;
10788 for (i=0; i<256; i++) {
108 total += hash_length[i];
89 hi = hash[i];
90 while (hi) {
91 total++;
92 hi = hi->next;
93 }
10994 }
110 return(total);
95 return total;
11196 }
11297
11398
123108 hashitem_new (char *str)
124109 {
125110 HashItem *hi;
126 unsigned long i;
127111
128 hi=(HashItem*) my_malloc(sizeof(HashItem));
112 /* We already have a char[1], so allocating strlen() does
113 yield space for the ending 0 */
114 unsigned int l = sizeof(HashItem)+strlen(str);
115 hi=(HashItem*) my_malloc(l);
129116 if (!hi)
130117 error_handler("Out of memory");
131 memset ((void*)hi, 0, sizeof (HashItem));
132
133 hi->str = my_strdup(str);
134
135 i = *str;
136 if (i=='\\') i=str[1];
137 i <<= 24;
138 hi->value = i | (hash_value++ & 0xffffff);
118 strcpy(hi->str, str);
139119 hi->next = NULL;
140
141 #if 0
142 if (debug_mode) {
143 printf ("<!-- storing val %08lx str %s -->\n",
144 hi->value, hi->str);
145 }
146 #endif
147120
148121 return hi;
149122 }
150123
151124
152125 /*========================================================================
153 * Name: hash_get_index
154 * Purpose: Given a string, returns the "index" i.e. the word identifier.
126 * Name: hash_store
127 * Purpose: Given a string, find or store it and return the address of
128 * the copy.
155129 * Args: String.
156 * Returns: Index.
130 * Returns: Address of readonly clone.
157131 *=======================================================================*/
158132
159 unsigned long
160 hash_get_index (char *str)
133 const char *
134 hash_store (char *str)
161135 {
162 #if 1 /* daved - 0.19.1 */
163 unsigned short index;
164 unsigned char ch;
165 #else
166 int index;
167 char ch;
168 #endif
136 unsigned char ch = (unsigned char)*str;
169137 HashItem *hi;
170138
171 #if 1 /* daved - 0.19.1 */
172 ch = (unsigned char)*str;
173 #else
174 ch = *str;
175 #endif
176139 if (ch=='\\' && *(str+1))
177140 ch = *(str+1);
178 index = ch;
179 hi = hash[index];
141 hi = hash[ch];
180142 while (hi) {
181 if (!strcmp(hi->str,str))
182 return hi->value;
183 hi=hi->next;
143 if (!strcmp(hi->str, str))
144 return hi->str;
145 hi = hi->next;
184146 }
185147 /* not in hash */
186 hi = hashitem_new (str);
187 hi->next = hash[index];
188 hash [index] = hi;
189 ++hash_length [index];
190 return hi->value;
148 hi = hashitem_new(str);
149 hi->next = hash[ch];
150 hash[ch] = hi;
151 return hi->str;
191152 }
192153
193
194 /*========================================================================
195 * Name: hash_get_string
196
197 * Purpose: Given the index (word identifier) returns the word string.
198 * Args: Index.
199 * Returns: String, or NULL if not found.
200 *=======================================================================*/
201
202 char*
203 hash_get_string (unsigned long value)
204 {
205 int index;
206 HashItem *hi;
207
208 index = value >> 24;
209 hi = hash[index];
210 while (hi) {
211 if (hi->value == value)
212 return hi->str;
213 hi=hi->next;
214 }
215 warning_handler("Word not in hash");
216 return NULL;
217 }
2626 * Module name: hash.h
2727 * Author name: Zachary Smith
2828 * Create date: 1 Sept 2000
29 * Purpose: Definitions for the hash module.
29 * Purpose: Shared string storage. This yields an approximate average 35%
30 * improvement of memory used for string storage against original file
31 * size (372 random rtfs from the internets, 200 MB). Some shrink a
32 * lot, some actually inflate.
3033 *----------------------------------------------------------------------
3134 * Changes:
3235 * 29 Mar 05, daved@physiol.usyd.edu.au: changes requested by ZT Smith
3336 * 06 Jan 06, marcossamaral@terra.com.br: changes hash_stats()
3437 * 16 Dec 07, daved@physiol.usyd.edu.au: updated to GPL v3
3538 * 07 Oct 11, jf@dockes.org, added _HASH_H_INCLUDED_
39 * Further: see VCS log
3640 *--------------------------------------------------------------------*/
3741
3842
39
40 extern void hash_init (void);
4143 extern unsigned long hash_stats (void);
42 extern unsigned long hash_get_index (char *);
43 extern char* hash_get_string (unsigned long );
44
45
44 /* Store/find string, returns address of stored copy */
45 extern const char *hash_store (char *);
4646
4747 #endif /* _HASH_H_INCLUDED_ */
217217 }
218218
219219
220 hash_init();
221220
222221 /* Program information */
223222 if (verbose_mode || debug_mode) {
262261 printf("\n");
263262 } else {
264263 /* Should we also optimize word before dump? - AF */
265 word = optimize_word(word);
264 word = optimize_word(word, 1);
266265 word_print(word);
267266 }
268267
2929 static char *
3030 get_code_str(FILE *f, iconv_t desc)
3131 {
32 unsigned char *icp, *ocp0, *ocp;
32 char *icp, *ocp0, *ocp;
3333 size_t ibytes, obytes;
3434 char *obuf;
3535
36 unsigned char *utf8 = get_unicode_utf8(f);
36 char *utf8 = get_unicode_utf8(f);
3737 if (utf8 == NULL || *utf8 == 0) {
38 /* fprintf(stderr, "get_code_str: NULL entry\n");*/
39 return NULL;
38 /* fprintf(stderr, "get_code_str: NULL entry\n");*/
39 return NULL;
4040 }
4141 #if 0 /* debug */
4242 fprintf(stderr, "get_code_str: utf8: ");
4949 ibytes = strlen(utf8);
5050 obuf = malloc(obytes);
5151 if (obuf == NULL)
52 return NULL;
52 return NULL;
5353 icp = utf8;
5454 ocp0 = ocp = obuf + 1;
5555 if (iconv(desc, &icp, &ibytes, &ocp, &obytes) == -1) {
56 /* fprintf(stderr, "unrtf: my_iconv: iconv error\n");*/
57 return NULL;
56 /* fprintf(stderr, "unrtf: my_iconv: iconv error\n");*/
57 return NULL;
5858 }
5959
6060 // Set 1st byte to length
6666 my_iconv_t
6767 my_iconv_open(const char *tocode, const char *fromcode)
6868 {
69 char *path = 0;
7069 FILE *f;
7170 my_iconv_t cd = MY_ICONV_T_CLEAR;
7271 int c, i;
112111 {
113112 int c, i;
114113 size_t result = 0;
115 char *obb = *outbuf;
116114 **outbuf = 0;
117115 if (cd.desc == (iconv_t) -1) {
118116 if (cd.char_table != NULL)
115115 * Args: OutputPersonality, encoding, character.
116116 * Returns: String.
117117 *=======================================================================*/
118 char *
118 const char *
119119 op_translate_char (OutputPersonality *op, char *encoding, int ch)
120120 {
121121 static my_iconv_t m_desc = MY_ICONV_T_CLEAR;
122122 static char *m_encoding = NULL;
123 char *result = NULL;
123 const char *result = NULL;
124124 static char output_buffer[2]={ 0, 0 };
125125
126126 CHECK_PARAM_NOT_NULL(op);
207207 char *out = 0;
208208 int outsz;
209209 if ((out = (char *)allocmem(out, 1, &outsz, 1000, 100000)) == NULL) {
210 fprintf(stderr, "unrtf: out of memory\n");
210 fprintf(stderr, "unrtf: out of memory (op_translate_buffer 1, %d)\n", outsz);
211211 return NULL;
212212 }
213213
214214 for (i = 0; i < wordcnt; i++) {
215215 char tbuf[2];
216 char *result;
216 const char *result;
217217 int incsz;
218218 int unicode = ntohl(*(int*)(buffer + 4 * i));
219219
234234 }
235235 }
236236 if (opos + incsz + 1 >= outsz) {
237 if ((out = (char *)allocmem(out, 1, &outsz, 1000, 100000))) {
238 fprintf(stderr, "unrtf: out of memory\n");
237 if ((out = (char *)allocmem(out, 1, &outsz, 1000, 100000)) == NULL) {
238 fprintf(stderr, "unrtf: out of memory (op_translate_buffer 2, %d)\n", outsz);
239239 return NULL;
240240 }
241241 }
328328 */
329329 if (size<9 && op->fontsize8_begin) {
330330 if (safe_printf(0, op->fontsize8_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize8_begin");
331 } else
332 if (size<11 && op->fontsize10_begin) {
331 } else if (size<11 && op->fontsize10_begin) {
333332 if (safe_printf(0, op->fontsize10_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize10_begin");
334 } else
335 if (size<13 && op->fontsize12_begin) {
333 } else if (size<13 && op->fontsize12_begin) {
336334 if (safe_printf(0, op->fontsize12_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize12_begin");
337 } else
338 if (size<16 && op->fontsize14_begin) {
335 } else if (size<16 && op->fontsize14_begin) {
339336 if (safe_printf(0, op->fontsize14_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize14_begin");
340 } else
341 if (size<21 && op->fontsize18_begin) {
337 } else if (size<21 && op->fontsize18_begin) {
342338 if (safe_printf(0, op->fontsize18_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize18_begin");
343 } else
344 if (size<30 && op->fontsize24_begin) {
339 } else if (size<30 && op->fontsize24_begin) {
345340 if (safe_printf(0, op->fontsize24_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize24_begin");
346 } else
347 if (size<42 && op->fontsize36_begin) {
341 } else if (size<42 && op->fontsize36_begin) {
348342 if (safe_printf(0, op->fontsize36_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize36_begin");
349 } else
350 if (size>40 && op->fontsize48_begin) {
343 } else if (size>40 && op->fontsize48_begin) {
351344 if (safe_printf(0, op->fontsize48_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize48_begin");
352 } else
353 /* If we can't even produce a good approximation,
354 * just try to get a font size near 12 point.
355 */
356 if (op->fontsize12_begin)
357 if (safe_printf(0, op->fontsize12_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize12_begin");
358 else
359 if (op->fontsize14_begin)
360 if (safe_printf(0, op->fontsize14_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize14_begin");
361 else
362 if (op->fontsize10_begin)
363 if (safe_printf(0, op->fontsize10_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize10_begin");
364 else
365 if (op->fontsize18_begin)
366 if (safe_printf(0, op->fontsize18_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize18_begin");
367 else
368 if (op->fontsize8_begin)
369 if (safe_printf(0, op->fontsize8_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize8_begin");
370 else
371 error_handler ("output personality lacks sufficient font size change capability");
345 } else {
346 /* If we can't even produce a good approximation,
347 * just try to get a font size near 12 point.
348 */
349 if (op->fontsize12_begin) {
350 if (safe_printf(0, op->fontsize12_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize12_begin");
351 } else if (op->fontsize14_begin) {
352 if (safe_printf(0, op->fontsize14_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize14_begin");
353 } else if (op->fontsize10_begin) {
354 if (safe_printf(0, op->fontsize10_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize10_begin");
355 } else if (op->fontsize18_begin) {
356 if (safe_printf(0, op->fontsize18_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize18_begin");
357 } else if (op->fontsize8_begin) {
358 if (safe_printf(0, op->fontsize8_begin)) fprintf(stderr, TOO_MANY_ARGS, "fontsize8_begin");
359 } else {
360 error_handler ("output personality lacks sufficient font size change capability");
361 }
362 }
372363 }
373364 }
374365 }
478469 } else
479470 if (size>40 && op->fontsize48_end) {
480471 if (safe_printf(0, op->fontsize48_end)) fprintf(stderr, TOO_MANY_ARGS, "fontsize48_end");
481 } else
472 } else {
482473 /* If we can't even produce a good approximation,
483474 * just try to get a font size near 12 point.
484475 */
485 if (op->fontsize12_end)
486 if (safe_printf(0, op->fontsize12_end)) fprintf(stderr, TOO_MANY_ARGS, "fontsize12_end");
487 else
488 if (op->fontsize14_end)
489 if (safe_printf(0, op->fontsize14_end)) fprintf(stderr, TOO_MANY_ARGS, "fontsize14_end");
490 else
491 if (op->fontsize10_end)
492 if (safe_printf(0, op->fontsize10_end)) fprintf(stderr, TOO_MANY_ARGS, "fontsize10_end");
493 else
494 if (op->fontsize18_end)
495 if (safe_printf(0, op->fontsize18_end)) fprintf(stderr, TOO_MANY_ARGS, "fontsize18_end");
496 else
497 if (op->fontsize8_end)
498 if (safe_printf(0, op->fontsize8_end)) fprintf(stderr, TOO_MANY_ARGS, "fontsize8_end");
499 else
500 error_handler ("output personality lacks sufficient font size change capability");
476 if (op->fontsize12_end) {
477 if (safe_printf(0, op->fontsize12_end)) fprintf(stderr, TOO_MANY_ARGS, "fontsize12_end");
478 } else if (op->fontsize14_end) {
479 if (safe_printf(0, op->fontsize14_end)) fprintf(stderr, TOO_MANY_ARGS, "fontsize14_end");
480 } else if (op->fontsize10_end) {
481 if (safe_printf(0, op->fontsize10_end)) fprintf(stderr, TOO_MANY_ARGS, "fontsize10_end");
482 } else if (op->fontsize18_end) {
483 if (safe_printf(0, op->fontsize18_end)) fprintf(stderr, TOO_MANY_ARGS, "fontsize18_end");
484 } else if (op->fontsize8_end) {
485 if (safe_printf(0, op->fontsize8_end)) fprintf(stderr, TOO_MANY_ARGS, "fontsize8_end");
486 } else {
487 error_handler ("output personality lacks sufficient font size change capability");
488 }
489 }
501490 }
502491 }
503492 }
523512 * Returns: Text alias or NULL if found nothing.
524513 *=======================================================================*/
525514
526 char *
515 const char *
527516 get_alias(OutputPersonality *op, int nr)
528517 {
529518 return get_from_collection((Collection *)op->aliases, nr);
245245
246246 extern OutputPersonality* op_create(void);
247247 extern void op_free (OutputPersonality*);
248 extern char *op_translate_char (OutputPersonality *op, char *encoding, int ch);
248 extern const char *op_translate_char (OutputPersonality *op, char *encoding, int ch);
249249 extern char *op_translate_buffer(OutputPersonality *op, char *buffer,
250250 int bytescnt);
251251
253253 extern void op_end_std_fontsize (OutputPersonality*, int);
254254
255255 void add_alias(OutputPersonality *op, int nr, char *text);
256 char *get_alias(OutputPersonality *op, int nr);
256 const char *get_alias(OutputPersonality *op, int nr);
257257
258258
259259 #endif /* _OUTPUT_H_INCLUDED_ */
175175 return ch;
176176 }
177177
178
179 /*========================================================================
180 * Name: my_skip
181 * Purpose: Skips the given number of characters.
182 * Args: Input file, number of characters.
183 * Returns: None.
184 *=======================================================================*/
185
186 static void my_skip (FILE *f, long n)
187 {
188 n += read_buf_index;
189 if (n >= 0 && n < read_buf_end)
190 {
191 read_buf_index = (int)n;
192 return;
193 }
194 read_buf_end = read_buf_index = 0;
195 if (fseek(f, n - read_buf_end, SEEK_CUR))
196 error_handler("Cannot seek");
197 return;
198 }
178199
179200 /* local to read_word */
180201 static char *input_str = NULL;
397418 my_unget_char(ch);
398419
399420 input_str[ix]=0;
421
422 if (!memcmp(input_str, "\\bin", 4) && isdigit(input_str[4]))
423 my_skip(f, atoi(input_str + 4));
424
400425 return ix;
401426 }
402427
1111 static int n_path_dirs;
1212 static struct path_dir topdir;
1313
14 char *search_in_path(char *name, char *suffix)
14 char *search_in_path(const char *name, char *suffix)
1515 {
1616 int maxplen = 0;
1717 int l;
1313
1414 extern int check_dirs();
1515 extern void show_dirs();
16 extern char *search_in_path(char *name, char *suffix);
16 extern char *search_in_path(const char *name, char *suffix);
1717
1818 #endif /* _PATH_H_INCLUDED_ */
4242 char *
4343 unicode_to_utf8(unsigned int uc)
4444 {
45 unsigned char *string;
45 unsigned char *string = NULL;
4646 if (uc < 0x7f)
4747 {
48 string = my_malloc(2 * sizeof(char));
48 string = (unsigned char *)my_malloc(2 * sizeof(char));
4949 string[0] = (unsigned char) uc;
5050 string[1] = '\0';
5151 }
5252 else if (uc < 0x7ff)
5353 {
54 string = my_malloc(3 * sizeof(char));
54 string = (unsigned char *)my_malloc(3 * sizeof(char));
5555 string[0] = (unsigned char) 192 + (uc / 64);
5656 string[1] = (unsigned char) 128 + (uc % 64);
5757 string[2] = '\0';
5858 }
5959 else if (uc < 0xffff)
6060 {
61 string = my_malloc(4 * sizeof(char));
61 string = (unsigned char *)my_malloc(4 * sizeof(char));
6262 string[0] = (unsigned char) 224 + (uc / (64 * 64));
6363 string[1] = (unsigned char) 128 + ((uc / 64) % 64);
6464 string[2] = (unsigned char) 128 + (uc % 64);
6666 }
6767 else if (uc < 0x1FFFFF)
6868 {
69 string = my_malloc(5 * sizeof(char));
69 string = (unsigned char *)my_malloc(5 * sizeof(char));
7070 string[0] = (unsigned char) 240 + (uc / (64 * 64 * 64));
7171 string[1] = (unsigned char) 128 + ((uc / (64 * 64)) % 64);
7272 string[2] = (unsigned char) 128 + ((uc / 64) % 64);
7575 }
7676 else if (uc < 0x3FFFFFF)
7777 {
78 string = my_malloc(6 * sizeof(char));
78 string = (unsigned char *)my_malloc(6 * sizeof(char));
7979 string[0] = (unsigned char) 248 + (uc / (64 * 64 * 64 * 64));
8080 string[1] = (unsigned char) 128 + ((uc / (64 * 64 * 64)) % 64);
8181 string[2] = (unsigned char) 128 + ((uc / (64 * 64)) % 64);
8585 }
8686 else if (uc < 0x7FFFFFFF)
8787 {
88 string = my_malloc(7 * sizeof(char));
88 string = (unsigned char *)my_malloc(7 * sizeof(char));
8989 string[0] = (unsigned char) 252 + (uc / (64 * 64 * 64 * 64 * 64));
9090 string[1] = (unsigned char) 128 + ((uc / (64 * 64 * 64 * 64)) % 64);
9191 string[2] = (unsigned char) 128 + ((uc / (64 * 64 * 64)) % 64);
9595 string[6] = '\0';
9696 }
9797
98 return string;
98 return (char *)string;
9999 }
100100
101101 /*========================================================================
111111 int
112112 get_unicode_int(FILE *file)
113113 {
114 int allocated = 5, len = 0, uc;
114 int allocated = 5, len = 0;
115115 char c, *unicode_number = my_malloc(allocated * sizeof(char));
116116
117117 c = fgetc(file);
162162 ADD_CHAR('\n');
163163 }
164164 else
165 if (c != '<' && c != '\\' || (c == '\\' && c2 == '\\'))
165 if ((c != '<' && c != '\\') || (c == '\\' && c2 == '\\'))
166166 {
167167 ADD_CHAR(c)
168168 }
6262
6363 /* Convert a two-char hexadecimal expression to an integer */
6464 int
65 h2toi (char *s) {
65 h2toi (const char *s) {
6666 int tmp;
6767 int ch;
6868 tmp = tolower(*s++);
3838 #include <stdio.h>
3939 #endif
4040
41 extern int h2toi (char *);
41 extern int h2toi (const char *);
4242
4343 void leave_line (FILE *f);
4444 extern char *concatenate (const char *, const char *);
8888 * Returns: String.
8989 *=======================================================================*/
9090
91 char *
91 const char *
9292 word_string (Word *w) {
93 char *str;
9493 CHECK_PARAM_NOT_NULL(w);
95 if (w->hash_index) str = hash_get_string (w->hash_index);
96 else str = NULL;
97 return str;
94 return w->str;
9895 }
9996
10097
116113 memset ((void*) w, 0, sizeof(Word));
117114 if (!w) error_handler ("cannot allocate a Word");
118115
119 if (str) w->hash_index = hash_get_index (str);
120 else w->hash_index = 0;
116 if (str) w->str = hash_store (str);
121117
122118 return w;
123119 }
124
125
126
127120
128121 /*========================================================================
129122 * Name: word_free
187180 void
188181 word_dump (Word *w)
189182 {
190 char *s;
183 const char *s;
191184
192185 CHECK_PARAM_NOT_NULL(w);
193186
221214 * Returns: Optimized word.
222215 *=======================================================================*/
223216 Word *
224 optimize_word(Word *w)
217 optimize_word(Word *w, int depth)
225218 {
226 char *s, *s1;
219 const char *s, *s1;
227220 int i = 0, len;
228221 Collection *c = NULL;
229222 Tag tags_to_opt[] = OPT_ARRAY;
230 Word *root = w, *w2;
231
223 Word *root = w, *w2 = 0;
224
225 if (depth > MAX_GROUP_DEPTH) {
226 /* Have to be reasonable at some point */
227 warning_handler ("Max group depth reached");
228 return w;
229 }
232230 for (; w != NULL; w = w->next)
233231 {
234232
235 if (s = word_string(w))
233 if ((s = word_string(w)))
236234 {
237235 for (i = 0; tags_to_opt[i].name[0] != '\0'; i++)
238236 {
263261 }
264262
265263 if (w->child != NULL)
266 w->child = optimize_word(w->child);
264 w->child = optimize_word(w->child, depth+1);
267265
268266 w2 = w;
269267 }
3636 *--------------------------------------------------------------------*/
3737
3838 typedef struct _w {
39 unsigned long hash_index;
39 const char *str;
4040 struct _w * next;
4141 struct _w * child;
4242 } Word;
4444 extern Word* word_new (char*);
4545 extern void word_free (Word*);
4646 extern Word* word_read (FILE*);
47 extern char* word_string (Word*);
47 extern const char* word_string (Word*);
4848 extern void word_dump (Word*);
4949 extern void word_print_html (Word*);
5050
51 extern Word* optimize_word(Word*);
51 #ifndef MAX_GROUP_DEPTH
52 #define MAX_GROUP_DEPTH 1000
53 #endif
54
55 extern Word* optimize_word(Word*, int depth);
5256
5357 typedef struct _t {
5458 char *name;
0 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
1 <HTML>
2 <HEAD>
3 <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=utf-8">
4 <TITLE></TITLE>
5 <META NAME="GENERATOR" CONTENT="LibreOffice 4.1.6.2 (Linux)">
6 <META NAME="CREATED" CONTENT="0;0">
7 <META NAME="CHANGED" CONTENT="0;0">
8 <STYLE TYPE="text/css">
9 <!--
10 @page { size: 8.5in 11in; margin-left: 1.25in; margin-right: 1.25in; margin-top: 1in; margin-bottom: 1in }
11 P { margin-bottom: 0.08in; direction: ltr; widows: 2; orphans: 2 }
12 P.western { font-family: "Bitstream Vera Serif", serif; font-size: 12pt; so-language: en-US }
13 P.cjk { font-family: "Bitstream Vera Serif"; font-size: 12pt; so-language: zxx }
14 P.ctl { font-family: "Bitstream Vera Serif"; font-size: 12pt }
15 -->
16 </STYLE>
17 </HEAD>
18 <BODY LANG="en-GB" DIR="LTR">
19 <P LANG="en-US" STYLE="margin-bottom: 0in"><BR>
20 </P>
21 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
22 Alpha</FONT></P>
23 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
24 Beta</FONT></P>
25 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
26 Chi</FONT></P>
27 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
28 Delta</FONT></P>
29 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
30 Epsilon</FONT></P>
31 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
32 Phi</FONT></P>
33 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
34 Gamma</FONT></P>
35 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
36 Eta</FONT></P>
37 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
38 Iota</FONT></P>
39 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
40 </FONT>
41 </P>
42 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
43 Kappa</FONT></P>
44 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
45 Lamba</FONT></P>
46 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
47 Mu</FONT></P>
48 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
49 Nu</FONT></P>
50 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
51 Omicron</FONT></P>
52 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
53 Pi</FONT></P>
54 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
55 Theta</FONT></P>
56 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
57 Rho</FONT></P>
58 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
59 Sigma</FONT></P>
60 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
61 Tau</FONT></P>
62 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
63 Upsilon</FONT></P>
64 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
65 sigmaf</FONT></P>
66 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
67 Omega</FONT></P>
68 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
69 Xi</FONT></P>
70 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
71 Psi</FONT></P>
72 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
73 Zeta</FONT></P>
74 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
75 </FONT>
76 </P>
77 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
78 </FONT>
79 </P>
80 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
81 </FONT>
82 </P>
83 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
84 </FONT>
85 </P>
86 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
87 </FONT>
88 </P>
89 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
90 </FONT>
91 </P>
92 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
93 alpha</FONT></P>
94 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
95 beta</FONT></P>
96 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
97 chi</FONT></P>
98 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
99 delta</FONT></P>
100 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
101 epsilon</FONT></P>
102 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
103 phi</FONT></P>
104 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
105 gamma</FONT></P>
106 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
107 eta</FONT></P>
108 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
109 tau</FONT></P>
110 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
111 </FONT>
112 </P>
113 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
114 kappa</FONT></P>
115 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
116 lambda</FONT></P>
117 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
118 mu</FONT></P>
119 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
120 nu</FONT></P>
121 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
122 omicron</FONT></P>
123 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
124 pi</FONT></P>
125 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
126 theta</FONT></P>
127 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
128 rho</FONT></P>
129 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
130 sigma</FONT></P>
131 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
132 tau</FONT></P>
133 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
134 upsilon</FONT></P>
135 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
136 piv</FONT></P>
137 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
138 omiga</FONT></P>
139 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
140 xi</FONT></P>
141 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
142 psi</FONT></P>
143 <P LANG="en-US" ALIGN=LEFT STYLE="margin-bottom: 0in"><FONT FACE="Bitstream Vera Sans, serif">-
144 zeta</FONT></P>
145 </BODY>
146 </HTML>
22
33 # the data set for the tests
44 testdata = \
5 Greek1.rtf \
6 Greek2.rtf \
7 Turkish.rtf \
85 accents.rtf \
96 ascii_decimal.rtf \
107 backslash.rtf \
1512 chars.rtf \
1613 columns.rtf \
1714 cp1251-russian-alphabet.rtf \
15 emfpict.rtf \
1816 font_size.rtf \
1917 font_styles.rtf \
18 Greek1.rtf \
19 Greek2.rtf \
2020 lists.rtf \
21 opensymbols.rtf \
2122 paragraph_formatting.rtf \
2223 pict.rtf \
24 pictNotIgnored.rtf \
2325 quotes.rtf \
2426 symbol.rtf \
2527 text_color.rtf \
2628 text_formatting.rtf \
27 unicode4.rtf
29 Turkish.rtf \
30 unicode4.rtf \
31 unnested.rtf
2832
2933 # the result set for the html test
3034 testresults_html = \
31 Greek1.rtf.html \
32 Greek2.rtf.html \
33 Turkish.rtf.html \
3435 accents.rtf.html \
3536 ascii_decimal.rtf.html \
3637 backslash.rtf.html \
4142 chars.rtf.html \
4243 columns.rtf.html \
4344 cp1251-russian-alphabet.rtf.html \
45 emfpict.rtf.html \
4446 font_size.rtf.html \
4547 font_styles.rtf.html \
48 Greek1.rtf.html \
49 Greek2.rtf.html \
4650 lists.rtf.html \
51 opensymbols.rtf.html \
4752 paragraph_formatting.rtf.html \
4853 pict.rtf.html \
54 pictNotIgnored.rtf.html \
4955 quotes.rtf.html \
5056 symbol.rtf.html \
5157 text_color.rtf.html \
5258 text_formatting.rtf.html \
53 unicode4.rtf.html
59 Turkish.rtf.html \
60 unicode4.rtf.html \
61 unnested.rtf.html
5462
5563 # the result set for the latex test
5664 testresults_tex = \
57 Greek1.rtf.tex \
58 Greek2.rtf.tex \
59 Turkish.rtf.tex \
6065 accents.rtf.tex \
6166 ascii_decimal.rtf.tex \
6267 backslash.rtf.tex \
6772 chars.rtf.tex \
6873 columns.rtf.tex \
6974 cp1251-russian-alphabet.rtf.tex \
75 emfpict.rtf.tex \
7076 font_size.rtf.tex \
7177 font_styles.rtf.tex \
78 Greek1.rtf.tex \
79 Greek2.rtf.tex \
7280 lists.rtf.tex \
81 pictNotIgnored.rtf.tex \
82 opensymbols.rtf.tex \
7383 paragraph_formatting.rtf.tex \
7484 pict.rtf.tex \
7585 quotes.rtf.tex \
7686 symbol.rtf.tex \
7787 text_color.rtf.tex \
7888 text_formatting.rtf.tex \
79 unicode4.rtf.tex
89 Turkish.rtf.tex \
90 unicode4.rtf.tex \
91 unnested.rtf.tex
8092
8193 # need to wipe out test results on make clean
82 CLEANFILES = $(testresults_html) $(testresults_tex) pict001.wmf
94 CLEANFILES = $(testresults_html) $(testresults_tex) pict0*.*
8395
8496 # add the test scripts and the test data to the distributed files
8597 EXTRA_DIST = $(TESTS) $(testdata)
0 # Makefile.in generated by automake 1.14 from Makefile.am.
0 # Makefile.in generated by automake 1.13.4 from Makefile.am.
11 # @configure_input@
22
33 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
414414
415415 # the data set for the tests
416416 testdata = \
417 Greek1.rtf \
418 Greek2.rtf \
419 Turkish.rtf \
420417 accents.rtf \
421418 ascii_decimal.rtf \
422419 backslash.rtf \
429426 cp1251-russian-alphabet.rtf \
430427 font_size.rtf \
431428 font_styles.rtf \
429 Greek1.rtf \
430 Greek2.rtf \
432431 lists.rtf \
432 opensymbols.rtf \
433433 paragraph_formatting.rtf \
434434 pict.rtf \
435 pictNotIgnored.rtf \
435436 quotes.rtf \
436437 symbol.rtf \
437438 text_color.rtf \
438439 text_formatting.rtf \
440 Turkish.rtf \
439441 unicode4.rtf
440442
441443
442444 # the result set for the html test
443445 testresults_html = \
444 Greek1.rtf.html \
445 Greek2.rtf.html \
446 Turkish.rtf.html \
447446 accents.rtf.html \
448447 ascii_decimal.rtf.html \
449448 backslash.rtf.html \
456455 cp1251-russian-alphabet.rtf.html \
457456 font_size.rtf.html \
458457 font_styles.rtf.html \
458 Greek1.rtf.html \
459 Greek2.rtf.html \
459460 lists.rtf.html \
461 opensymbols.rtf.html \
460462 paragraph_formatting.rtf.html \
461463 pict.rtf.html \
464 pictNotIgnored.rtf.html \
462465 quotes.rtf.html \
463466 symbol.rtf.html \
464467 text_color.rtf.html \
465468 text_formatting.rtf.html \
466 unicode4.rtf.html
469 Turkish.rtf.html \
470 unicode4.rtf.html \
471 unnested.rtf.html
467472
468473
469474 # the result set for the latex test
470475 testresults_tex = \
471 Greek1.rtf.tex \
472 Greek2.rtf.tex \
473 Turkish.rtf.tex \
474476 accents.rtf.tex \
475477 ascii_decimal.rtf.tex \
476478 backslash.rtf.tex \
483485 cp1251-russian-alphabet.rtf.tex \
484486 font_size.rtf.tex \
485487 font_styles.rtf.tex \
488 Greek1.rtf.tex \
489 Greek2.rtf.tex \
486490 lists.rtf.tex \
491 pictNotIgnored.rtf.tex \
492 opensymbols.rtf.tex \
487493 paragraph_formatting.rtf.tex \
488494 pict.rtf.tex \
489495 quotes.rtf.tex \
490496 symbol.rtf.tex \
491497 text_color.rtf.tex \
492498 text_formatting.rtf.tex \
493 unicode4.rtf.tex
499 Turkish.rtf.tex \
500 unicode4.rtf.tex \
501 unnested.rtf.tex
494502
495503
496504 # need to wipe out test results on make clean
497 CLEANFILES = $(testresults_html) $(testresults_tex) pict001.wmf
505 CLEANFILES = $(testresults_html) $(testresults_tex) pict0*.*
498506
499507 # add the test scripts and the test data to the distributed files
500508 EXTRA_DIST = $(TESTS) $(testdata)
0 {\rtf1\adeflang1025\ansi\ansicpg10000\uc1\adeff31507\deff0\stshfdbch31505\stshfloch31506\stshfhich31506\stshfbi31507\deflang1033\deflangfe1033\themelang1033\themelangfe1041\themelangcs0{\fonttbl{\f0\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f15\fbidi \fnil\fcharset78\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9;}
1 {\f34\fbidi \fnil\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria Math;}{\f38\fbidi \fnil\fcharset0\fprq2{\*\panose 020b0600040502020204}Lucida Grande{\*\falt Arial};}
2 {\flomajor\f31500\fbidi \fnil\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}{\fdbmajor\f31501\fbidi \fnil\fcharset78\fprq2 \'82\'6c\'82\'72 \'83\'53\'83\'56\'83\'62\'83\'4e;}
3 {\fhimajor\f31502\fbidi \fnil\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbimajor\f31503\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
4 {\flominor\f31504\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbminor\f31505\fbidi \fnil\fcharset78\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9;}
5 {\fhiminor\f31506\fbidi \fnil\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;}{\fbiminor\f31507\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f533\fbidi \fnil\fcharset238\fprq2 Times New Roman CE;}
6 {\f534\fbidi \fnil\fcharset204\fprq2 Times New Roman Cyr;}{\f536\fbidi \fnil\fcharset161\fprq2 Times New Roman Greek;}{\f537\fbidi \fnil\fcharset162\fprq2 Times New Roman Tur;}{\f538\fbidi \fnil\fcharset177\fprq2 Times New Roman (Hebrew);}
7 {\f539\fbidi \fnil\fcharset178\fprq2 Times New Roman (Arabid);}{\f540\fbidi \fnil\fcharset186\fprq2 Times New Roman Baltic;}{\f541\fbidi \fnil\fcharset163\fprq2 Times New Roman (Vietnamese);}
8 {\f685\fbidi \fnil\fcharset0\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9 Western;}{\f683\fbidi \fnil\fcharset238\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9 CE;}{\f684\fbidi \fnil\fcharset204\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9 Cyr;}
9 {\f686\fbidi \fnil\fcharset161\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9 Greek;}{\f687\fbidi \fnil\fcharset162\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9 Tur;}{\f690\fbidi \fnil\fcharset186\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9 Baltic;}
10 {\f873\fbidi \fnil\fcharset238\fprq2 Cambria Math CE;}{\f874\fbidi \fnil\fcharset204\fprq2 Cambria Math Cyr;}{\f876\fbidi \fnil\fcharset161\fprq2 Cambria Math Greek;}{\f877\fbidi \fnil\fcharset162\fprq2 Cambria Math Tur;}
11 {\f880\fbidi \fnil\fcharset186\fprq2 Cambria Math Baltic;}{\f881\fbidi \fnil\fcharset163\fprq2 Cambria Math (Vietnamese);}{\f913\fbidi \fnil\fcharset238\fprq2 Arial CE{\*\falt Arial};}{\f914\fbidi \fnil\fcharset204\fprq2 Arial Cyr{\*\falt Arial};}
12 {\f916\fbidi \fnil\fcharset161\fprq2 Arial Greek{\*\falt Arial};}{\f917\fbidi \fnil\fcharset162\fprq2 Arial Tur{\*\falt Arial};}{\f918\fbidi \fnil\fcharset177\fprq2 Arial (Hebrew){\*\falt Arial};}
13 {\f920\fbidi \fnil\fcharset186\fprq2 Arial Baltic{\*\falt Arial};}{\f921\fbidi \fnil\fcharset163\fprq2 Arial (Vietnamese){\*\falt Arial};}{\flomajor\f31508\fbidi \fnil\fcharset238\fprq2 Arial CE;}{\flomajor\f31509\fbidi \fnil\fcharset204\fprq2 Arial Cyr;}
14 {\flomajor\f31511\fbidi \fnil\fcharset161\fprq2 Arial Greek;}{\flomajor\f31512\fbidi \fnil\fcharset162\fprq2 Arial Tur;}{\flomajor\f31513\fbidi \fnil\fcharset177\fprq2 Arial (Hebrew);}{\flomajor\f31514\fbidi \fnil\fcharset178\fprq2 Arial (Arabid);}
15 {\flomajor\f31515\fbidi \fnil\fcharset186\fprq2 Arial Baltic;}{\flomajor\f31516\fbidi \fnil\fcharset163\fprq2 Arial (Vietnamese);}{\fdbmajor\f31520\fbidi \fnil\fcharset0\fprq2 \'82\'6c\'82\'72 \'83\'53\'83\'56\'83\'62\'83\'4e Western;}
16 {\fdbmajor\f31518\fbidi \fnil\fcharset238\fprq2 \'82\'6c\'82\'72 \'83\'53\'83\'56\'83\'62\'83\'4e CE;}{\fdbmajor\f31519\fbidi \fnil\fcharset204\fprq2 \'82\'6c\'82\'72 \'83\'53\'83\'56\'83\'62\'83\'4e Cyr;}
17 {\fdbmajor\f31521\fbidi \fnil\fcharset161\fprq2 \'82\'6c\'82\'72 \'83\'53\'83\'56\'83\'62\'83\'4e Greek;}{\fdbmajor\f31522\fbidi \fnil\fcharset162\fprq2 \'82\'6c\'82\'72 \'83\'53\'83\'56\'83\'62\'83\'4e Tur;}
18 {\fdbmajor\f31525\fbidi \fnil\fcharset186\fprq2 \'82\'6c\'82\'72 \'83\'53\'83\'56\'83\'62\'83\'4e Baltic;}{\fhimajor\f31528\fbidi \fnil\fcharset238\fprq2 Calibri CE;}{\fhimajor\f31529\fbidi \fnil\fcharset204\fprq2 Calibri Cyr;}
19 {\fhimajor\f31531\fbidi \fnil\fcharset161\fprq2 Calibri Greek;}{\fhimajor\f31532\fbidi \fnil\fcharset162\fprq2 Calibri Tur;}{\fhimajor\f31535\fbidi \fnil\fcharset186\fprq2 Calibri Baltic;}
20 {\fhimajor\f31536\fbidi \fnil\fcharset163\fprq2 Calibri (Vietnamese);}{\fbimajor\f31538\fbidi \fnil\fcharset238\fprq2 Times New Roman CE;}{\fbimajor\f31539\fbidi \fnil\fcharset204\fprq2 Times New Roman Cyr;}
21 {\fbimajor\f31541\fbidi \fnil\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \fnil\fcharset162\fprq2 Times New Roman Tur;}{\fbimajor\f31543\fbidi \fnil\fcharset177\fprq2 Times New Roman (Hebrew);}
22 {\fbimajor\f31544\fbidi \fnil\fcharset178\fprq2 Times New Roman (Arabid);}{\fbimajor\f31545\fbidi \fnil\fcharset186\fprq2 Times New Roman Baltic;}{\fbimajor\f31546\fbidi \fnil\fcharset163\fprq2 Times New Roman (Vietnamese);}
23 {\flominor\f31548\fbidi \fnil\fcharset238\fprq2 Times New Roman CE;}{\flominor\f31549\fbidi \fnil\fcharset204\fprq2 Times New Roman Cyr;}{\flominor\f31551\fbidi \fnil\fcharset161\fprq2 Times New Roman Greek;}
24 {\flominor\f31552\fbidi \fnil\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \fnil\fcharset177\fprq2 Times New Roman (Hebrew);}{\flominor\f31554\fbidi \fnil\fcharset178\fprq2 Times New Roman (Arabid);}
25 {\flominor\f31555\fbidi \fnil\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \fnil\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbminor\f31560\fbidi \fnil\fcharset0\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9 Western;}
26 {\fdbminor\f31558\fbidi \fnil\fcharset238\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9 CE;}{\fdbminor\f31559\fbidi \fnil\fcharset204\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9 Cyr;}
27 {\fdbminor\f31561\fbidi \fnil\fcharset161\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9 Greek;}{\fdbminor\f31562\fbidi \fnil\fcharset162\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9 Tur;}
28 {\fdbminor\f31565\fbidi \fnil\fcharset186\fprq2 \'82\'6c\'82\'72 \'96\'be\'92\'a9 Baltic;}{\fhiminor\f31568\fbidi \fnil\fcharset238\fprq2 Cambria CE;}{\fhiminor\f31569\fbidi \fnil\fcharset204\fprq2 Cambria Cyr;}
29 {\fhiminor\f31571\fbidi \fnil\fcharset161\fprq2 Cambria Greek;}{\fhiminor\f31572\fbidi \fnil\fcharset162\fprq2 Cambria Tur;}{\fhiminor\f31575\fbidi \fnil\fcharset186\fprq2 Cambria Baltic;}
30 {\fhiminor\f31576\fbidi \fnil\fcharset163\fprq2 Cambria (Vietnamese);}{\fbiminor\f31578\fbidi \fnil\fcharset238\fprq2 Times New Roman CE;}{\fbiminor\f31579\fbidi \fnil\fcharset204\fprq2 Times New Roman Cyr;}
31 {\fbiminor\f31581\fbidi \fnil\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \fnil\fcharset162\fprq2 Times New Roman Tur;}{\fbiminor\f31583\fbidi \fnil\fcharset177\fprq2 Times New Roman (Hebrew);}
32 {\fbiminor\f31584\fbidi \fnil\fcharset178\fprq2 Times New Roman (Arabid);}{\fbiminor\f31585\fbidi \fnil\fcharset186\fprq2 Times New Roman Baltic;}{\fbiminor\f31586\fbidi \fnil\fcharset163\fprq2 Times New Roman (Vietnamese);}}{\colortbl;\red0\green0\blue0;
33 \red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;
34 \red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\*\defchp \fs24\loch\af31506\hich\af31506\dbch\af31505 }{\*\defpap \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }
35 \noqfpromote {\stylesheet{\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs24\alang1033 \ltrch\fcs0 \fs24\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033
36 \snext0 \sqformat \spriority0 \styrsid12589696 Normal;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\*
37 \ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
38 \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs24\alang1033 \ltrch\fcs0 \fs24\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033
39 \snext11 \ssemihidden \sunhideused Normal Table;}{\s15\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs18\alang1033 \ltrch\fcs0
40 \fs18\lang1033\langfe1033\loch\f38\hich\af38\dbch\af31505\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext15 \slink16 \ssemihidden \sunhideused \styrsid12589696 Balloon Text;}{\*\cs16 \additive \rtlch\fcs1 \af38\afs18 \ltrch\fcs0 \f38\fs18
41 \sbasedon10 \slink15 \slocked \ssemihidden \styrsid12589696 Balloon Text Char;}}{\*\rsidtbl \rsid328727\rsid1007481\rsid4285452\rsid5048514\rsid8796731\rsid12207491\rsid12271160\rsid12589696\rsid14973042\rsid15337424\rsid16544540}{\mmathPr\mmathFont34
42 \mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim1}{\info{\author Lorna Daniels}{\operator Lorna Daniels}{\creatim\yr2014\mo9\dy25\hr14\min32}{\revtim\yr2014\mo9\dy25\hr14\min34}{\version5}{\edmins0}
43 {\nofpages1}{\nofwords804}{\nofchars4587}{\*\company university of otago}{\nofcharsws5381}{\vern49555}{\*\saveprevpict}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}
44 \paperw11900\paperh16840\margl1800\margr1127\margt709\margb568\gutter0\ltrsect
45 \ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont1\relyonvml0\donotembedlingdata0\grfdocevents0\validatexml1\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors1\noxlattoyen
46 \expshrtn\noultrlspc\dntblnsbdb\nospaceforul\formshade\horzdoc\dgmargin\dghspace180\dgvspace180\dghorigin1800\dgvorigin709\dghshow1\dgvshow1
47 \jexpand\viewkind1\viewscale148\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\allowfieldendsel\wrppunct
48 \asianbrkrule\rsidroot12589696\newtblstyruls\nogrowautofit\usenormstyforlist\noindnmbrts\felnbrelev\nocxsptable\indrlsweleven\noafcnsttbl\afelev\utinl\hwelev\spltpgpar\notcvasp\notbrkcnstfrctbl\notvatxbx\krnprsnet\cachedcolbal\outdisponlyhtml
49 \nouicompat \fet0{\*\wgrffmtfilter 2450}\nofeaturethrottle1\ilfomacatclnup0\ltrpar \sectd \ltrsect\linex0\headery708\footery708\colsx708\endnhere\sectlinegrid360\sectdefaultcl\sectrsid12589696\sftnbj {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang
50 {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}
51 {\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9
52 \pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\ql \li-567\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin-567\itap0\pararsid12589696 \rtlch\fcs1 \af31507\afs24\alang1033 \ltrch\fcs0
53 \fs24\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \b\f0\fs22\ul\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0
54 The effects of CaMKII inhibition on cardiac muscle contractility in }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \b\f0\fs22\ul\insrsid12589696\charrsid5774796 \hich\af0\dbch\af31505\loch\f0 the Z}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0
55 \b\f0\fs22\ul\insrsid12589696\charrsid9250047 \hich\af0\dbch\af31505\loch\f0 ucker diabetic}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \b\f0\fs22\ul\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0
56 \b\f0\fs22\ul\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 f}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \b\f0\fs22\ul\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 atty }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \b\f0\fs22\ul\insrsid12589696
57 \hich\af0\dbch\af31505\loch\f0 r}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \b\f0\fs22\ul\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 at}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \b\f0\fs22\ul\insrsid12589696
58 \par }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid16544540 \hich\af0\dbch\af31505\loch\f0 L.Daniels,}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid15337424 \hich\af0\dbch\af31505\loch\f0 }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0
59 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 R.Wallace,}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696\charrsid13634160 \hich\af0\dbch\af31505\loch\f0 }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696
60 \hich\af0\dbch\af31505\loch\f0 R.Lamberts, J.Erickson. Department of Physiology, School of Medicine, University of Otago, Dunedin 2014, New Zealand.}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696\charrsid13914484
61 \par }\pard \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12589696 {\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \b\f0\fs22\ul\insrsid12589696\charrsid3487841
62 \par }\pard \ltrpar\qj \li-567\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin-567\itap0\pararsid12589696 {\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 Background}{
63 \rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 -}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 The in\hich\af0\dbch\af31505\loch\f0
64 cidence of diabetes mellitus (DM) is growing rapidly, with 8 million people new}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 ly diagnosed globally each year}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0
65 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 . The landmark Framingham study showed that the incidence of heart failure}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0
66 (HF) is significantly higher in diabetic compared with age-matched cont\hich\af0\dbch\af31505\loch\f0 rols (CTRL) Kannel & McGee (1979). }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0
67 However, the underlying mechanisms that link DM to }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 HF}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0
68 are still unclear. Recent studies show that DM patients and mouse models of diabetes have an up-regulation of calmodulin-dependent protein kinase (CaMKII}{\mmath{\*\moMath {\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f876\fs22\insrsid12589696
69 \loch\af876\dbch\af31505\hich\f876 {\mr\mscr0\msty2 \u948\'e4}}}{\mmathPict{\*\shppict{\pict{\*\picprop\shplid1025{\sp{\sn shapeType}{\sv 75}}{\sp{\sn fFlipH}{\sv 0}}{\sp{\sn fFlipV}{\sv 0}}{\sp{\sn pictureTransparent}{\sv 16777215}}
70 {\sp{\sn fLine}{\sv 0}}{\sp{\sn fLayoutInCell}{\sv 1}}}\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw212\pich459\picwgoal120\pichgoal260\emfblip\bliptag1053057404
71 010000006c000000000000000000000017000000330000000000000000000000620200002905000020454d46000001007c020000080000000100000000000000
72 0000000000000000ec040000b103000040010000f000000000000000000000000000000000e2040080a90300110000000c000000080000000a00000010000000
73 0000000000000000090000001000000018000000340000000c0000001000000000000000000000000b00000010000000180000003400000051000000b0010000
74 0000000000000000170000003300000000000000000000000000000000000000060000000d00000050000000280000007800000038010000000000002000cc00
75 180000003400000028000000060000000d00000001002000000000003801000000000000000000000000000000000000ffffffffffffffffffffffffffffffff
76 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000ff
77 878787ff000000ffffffffffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffff838383ff9d9d9dffffffffffffffffff000000ffffffffff
78 ffffffff000000ffffffffffffffffff000000ffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffffffffffffe6e6e6ff0d0d0dff
79 ffffffffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0e00000014000000000000001000000014000000}
80 }{\nonshppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw6\pich13\picwgoal120\pichgoal260\macpict\bliptag1053057404\blipupi72
81 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
82 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
83 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
84 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
85 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
86 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
87 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
88 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
89 000000000000000d0006001102ff0c00fffe0000004800000048000000000000000d000600000000001e0001000a00000000000d00068200000001d200000001
90 00000000000000000000000000000001000000000000000000000000000040000000000000000000000000000000000000000000000d00060000030000000000
91 00000056726177200000000000000000000000006170706c00000400000004000006000d00480000004800000000013800010000000000000000000000000000
92 0000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
93 ffffffffffffffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffe6
94 e6e6ff0d0d0dffffffffffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffff000000ffffffffffffffffff000000ffffffffff83
95 8383ff9d9d9dffffffffffffffffff000000ffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffffffffffff000000ff878787ff000000ffff
96 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
97 ffffffffffffffffffffffffffff000700ae00700007000100010003000300040000000d000c00100006000600ba00ba00280006000110517569636b54696d65
98 aa20616e642061000028000600020d206465636f6d70726573736f720028000600001f617265206e656564656420746f20736565207468697320706963747572
99 652e000000a100e007ac00000000000007a86170706c022000006d6e74725247422058595a2007d900020019000b001a000b616373704150504c000000006170
100 706c000000000000000000000000000000000000f6d6000100000000d32d6170706c000000000000000000000000000000000000000000000000000000000000
101 00000000000000000000000000000000000b64657363000001080000006f6473636d000001780000056c63707274000006e400000038777470740000071c0000
102 00147258595a00000730000000146758595a00000744000000146258595a0000075800000014725452430000076c0000000e636861640000077c0000002c6254
103 52430000076c0000000e675452430000076c0000000e64657363000000000000001447656e65726963205247422050726f66696c650000000000000000000000
104 1447656e65726963205247422050726f66696c650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
105 0000000000006d6c7563000000000000001e0000000c736b534b00000028000001786872485200000028000001a06361455300000024000001c8707442520000
106 0026000001ec756b55410000002a0000021266724655000000280000023c7a685457000000160000026469744954000000280000027a6e624e4f000000260000
107 02a26b6f4b5200000016000002c86373435a00000022000002de6865494c0000001e00000300646544450000002c0000031e68754855000000280000034a7376
108 534500000026000002a27a68434e00000016000003726a614a500000001a00000388726f524f00000024000003a2656c475200000022000003c67074504f0000
109 0026000003e86e6c4e4c000000280000040e6573455300000026000003e874685448000000240000043674725452000000220000045a66694649000000280000
110 047c706c504c0000002c000004a47275525500000022000004d06172454700000026000004f2656e555300000026000005186461444b0000002e0000053e0056
111 01610065006f006200650063006e00fd0020005200470042002000700072006f00660069006c00470065006e006500720069010d006b00690020005200470042
112 002000700072006f00660069006c00500065007200660069006c0020005200470042002000670065006e00e800720069006300500065007200660069006c0020
113 005200470042002000470065006e00e9007200690063006f0417043004330430043b044c043d043804390020043f0440043e044404300439043b002000520047
114 004200500072006f00660069006c0020006700e9006e00e9007200690071007500650020005200560042901a75280020005200470042002082725f6963cf8ff0
115 00500072006f00660069006c006f0020005200470042002000670065006e0065007200690063006f00470065006e0065007200690073006b0020005200470042
116 002d00700072006f00660069006cc77cbc1800200052004700420020d504b85cd30cc77c004f006200650063006e00fd0020005200470042002000700072006f
117 00660069006c05e405e805d505e405d905dc0020005200470042002005db05dc05dc05d90041006c006c00670065006d00650069006e00650073002000520047
118 0042002d00500072006f00660069006c00c1006c00740061006c00e1006e006f00730020005200470042002000700072006f00660069006c666e901a00200052
119 00470042002063cf8ff065874ef64e00822c0020005200470042002030d730ed30d530a130a430eb00500072006f00660069006c002000520047004200200067
120 0065006e0065007200690063039303b503bd03b903ba03cc002003c003c103bf03c603af03bb002000520047004200500065007200660069006c002000520047
121 0042002000670065006e00e9007200690063006f0041006c00670065006d00650065006e0020005200470042002d00700072006f006600690065006c0e420e1b
122 0e230e440e1f0e250e4c002000520047004200200e170e310e480e270e440e1b00470065006e0065006c0020005200470042002000500072006f00660069006c
123 00690059006c00650069006e0065006e0020005200470042002d00700072006f006600690069006c00690055006e006900770065007200730061006c006e0079
124 002000700072006f00660069006c0020005200470042041e04310449043804390020043f0440043e04440438043b044c00200052004700420645064406410020
125 062a06390631064a0641002000520047004200200627064406390627064500470065006e00650072006900630020005200470042002000500072006f00660069
126 006c006500470065006e006500720065006c0020005200470042002d006200650073006b0072006900760065006c007300657465787400000000436f70797269
127 6768742032303037204170706c6520496e632e2c20616c6c207269676874732072657365727665642e0058595a20000000000000f35200010000000116cf5859
128 5a20000000000000744d00003dee000003d058595a200000000000005a750000ac730000173458595a20000000000000281a0000159f0000b836637572760000
129 00000000000101cd0000736633320000000000010c42000005defffff326000007920000fd91fffffba2fffffda3000003dc0000c06c00a100e000040000000200ff}}}}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 ) activity}
130 {\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 \hich\af0\dbch\af31505\loch\f0 Luo }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 et al., }{\rtlch\fcs1
131 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 (2013)}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 . CaMKII}{\mmath{\*\moMath {\rtlch\fcs1 \af0\afs22
132 \ltrch\fcs0 \i\f876\fs22\insrsid12589696 \loch\af876\dbch\af31505\hich\f876 {\mr\mscr0\msty2 \u948\'e4}}}{\mmathPict{\*\shppict{\pict{\*\picprop\shplid1025{\sp{\sn shapeType}{\sv 75}}{\sp{\sn fFlipH}{\sv 0}}
133 {\sp{\sn fFlipV}{\sv 0}}{\sp{\sn pictureTransparent}{\sv 16777215}}{\sp{\sn fLine}{\sv 0}}{\sp{\sn fLayoutInCell}{\sv 1}}}\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw212\pich459\picwgoal120\pichgoal260\emfblip\bliptag1882263267
134 010000006c000000000000000000000017000000330000000000000000000000620200002905000020454d46000001007c020000080000000100000000000000
135 0000000000000000ec040000b103000040010000f000000000000000000000000000000000e2040080a90300110000000c000000080000000a00000010000000
136 0000000000000000090000001000000018000000340000000c0000001000000000000000000000000b00000010000000180000003400000051000000b0010000
137 0000000000000000170000003300000000000000000000000000000000000000060000000d00000050000000280000007800000038010000000000002000cc00
138 180000003400000028000000060000000d00000001002000000000003801000000000000000000000000000000000000ffffffffffffffffffffffffffffffff
139 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000ff
140 878787ff000000ffffffffffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffff838383ff9d9d9dffffffffffffffffff000000ffffffffff
141 ffffffff000000ffffffffffffffffff000000ffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffffffffffffe6e6e6ff0d0d0dff
142 ffffffffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0e00000014000000000000001000000014000000}
143 }{\nonshppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw6\pich13\picwgoal120\pichgoal260\macpict\bliptag1882263267\blipupi72
144 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
145 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
146 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
147 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
148 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
149 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
150 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
151 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
152 000000000000000d0006001102ff0c00fffe0000004800000048000000000000000d000600000000001e0001000a00000000000d00068200000001d200000001
153 00000000000000000000000000000001000000000000000000000000000040000000000000000000000000000000000000000000000d00060000030000000000
154 00000056726177200000000000000000000000006170706c00000400000004000006000d00480000004800000000013800010000000000000000000000000000
155 0000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
156 ffffffffffffffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffe6
157 e6e6ff0d0d0dffffffffffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffff000000ffffffffffffffffff000000ffffffffff83
158 8383ff9d9d9dffffffffffffffffff000000ffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffffffffffff000000ff878787ff000000ffff
159 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
160 ffffffffffffffffffffffffffff000700ae00700007000100010003000300040000000d000c00100006000600ba00ba00280006000110517569636b54696d65
161 aa20616e642061000028000600020d206465636f6d70726573736f720028000600001f617265206e656564656420746f20736565207468697320706963747572
162 652e000000a100e007ac00000000000007a86170706c022000006d6e74725247422058595a2007d900020019000b001a000b616373704150504c000000006170
163 706c000000000000000000000000000000000000f6d6000100000000d32d6170706c000000000000000000000000000000000000000000000000000000000000
164 00000000000000000000000000000000000b64657363000001080000006f6473636d000001780000056c63707274000006e400000038777470740000071c0000
165 00147258595a00000730000000146758595a00000744000000146258595a0000075800000014725452430000076c0000000e636861640000077c0000002c6254
166 52430000076c0000000e675452430000076c0000000e64657363000000000000001447656e65726963205247422050726f66696c650000000000000000000000
167 1447656e65726963205247422050726f66696c650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
168 0000000000006d6c7563000000000000001e0000000c736b534b00000028000001786872485200000028000001a06361455300000024000001c8707442520000
169 0026000001ec756b55410000002a0000021266724655000000280000023c7a685457000000160000026469744954000000280000027a6e624e4f000000260000
170 02a26b6f4b5200000016000002c86373435a00000022000002de6865494c0000001e00000300646544450000002c0000031e68754855000000280000034a7376
171 534500000026000002a27a68434e00000016000003726a614a500000001a00000388726f524f00000024000003a2656c475200000022000003c67074504f0000
172 0026000003e86e6c4e4c000000280000040e6573455300000026000003e874685448000000240000043674725452000000220000045a66694649000000280000
173 047c706c504c0000002c000004a47275525500000022000004d06172454700000026000004f2656e555300000026000005186461444b0000002e0000053e0056
174 01610065006f006200650063006e00fd0020005200470042002000700072006f00660069006c00470065006e006500720069010d006b00690020005200470042
175 002000700072006f00660069006c00500065007200660069006c0020005200470042002000670065006e00e800720069006300500065007200660069006c0020
176 005200470042002000470065006e00e9007200690063006f0417043004330430043b044c043d043804390020043f0440043e044404300439043b002000520047
177 004200500072006f00660069006c0020006700e9006e00e9007200690071007500650020005200560042901a75280020005200470042002082725f6963cf8ff0
178 00500072006f00660069006c006f0020005200470042002000670065006e0065007200690063006f00470065006e0065007200690073006b0020005200470042
179 002d00700072006f00660069006cc77cbc1800200052004700420020d504b85cd30cc77c004f006200650063006e00fd0020005200470042002000700072006f
180 00660069006c05e405e805d505e405d905dc0020005200470042002005db05dc05dc05d90041006c006c00670065006d00650069006e00650073002000520047
181 0042002d00500072006f00660069006c00c1006c00740061006c00e1006e006f00730020005200470042002000700072006f00660069006c666e901a00200052
182 00470042002063cf8ff065874ef64e00822c0020005200470042002030d730ed30d530a130a430eb00500072006f00660069006c002000520047004200200067
183 0065006e0065007200690063039303b503bd03b903ba03cc002003c003c103bf03c603af03bb002000520047004200500065007200660069006c002000520047
184 0042002000670065006e00e9007200690063006f0041006c00670065006d00650065006e0020005200470042002d00700072006f006600690065006c0e420e1b
185 0e230e440e1f0e250e4c002000520047004200200e170e310e480e270e440e1b00470065006e0065006c0020005200470042002000500072006f00660069006c
186 00690059006c00650069006e0065006e0020005200470042002d00700072006f006600690069006c00690055006e006900770065007200730061006c006e0079
187 002000700072006f00660069006c0020005200470042041e04310449043804390020043f0440043e04440438043b044c00200052004700420645064406410020
188 062a06390631064a0641002000520047004200200627064406390627064500470065006e00650072006900630020005200470042002000500072006f00660069
189 006c006500470065006e006500720065006c0020005200470042002d006200650073006b0072006900760065006c007300657465787400000000436f70797269
190 6768742032303037204170706c6520496e632e2c20616c6c207269676874732072657365727665642e0058595a20000000000000f35200010000000116cf5859
191 5a20000000000000744d00003dee000003d058595a200000000000005a750000ac730000173458595a20000000000000281a0000159f0000b836637572760000
192 00000000000101cd0000736633320000000000010c42000005defffff326000007920000fd91fffffba2fffffda3000003dc0000c06c00a100e000040000000200ff}}}}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0
193 is a multifunction}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 al}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0
194 serine-thereonine kinase, which upon activation is involved in coordination of the ion channels and Ca}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\super\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 2+}{\rtlch\fcs1 \af0\afs22
195 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 handling proteins involved in excitation-contraction and excitation-transcription coupling in the myo\hich\af0\dbch\af31505\loch\f0 cardium. Excessive CaMKII}{\mmath
196 {\*\moMath {\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f876\fs22\insrsid12589696 \loch\af876\dbch\af31505\hich\f876 {\mr\mscr0\msty2 \u948\'e4}}}{\mmathPict{\*\shppict{\pict{\*\picprop\shplid1025{\sp{\sn shapeType}{\sv 75}}{\sp{\sn fFlipH}{\sv 0}}
197 {\sp{\sn fFlipV}{\sv 0}}{\sp{\sn pictureTransparent}{\sv 16777215}}{\sp{\sn fLine}{\sv 0}}{\sp{\sn fLayoutInCell}{\sv 1}}}\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw212\pich459\picwgoal120\pichgoal260\emfblip\bliptag730656928
198 010000006c000000000000000000000017000000330000000000000000000000620200002905000020454d46000001007c020000080000000100000000000000
199 0000000000000000ec040000b103000040010000f000000000000000000000000000000000e2040080a90300110000000c000000080000000a00000010000000
200 0000000000000000090000001000000018000000340000000c0000001000000000000000000000000b00000010000000180000003400000051000000b0010000
201 0000000000000000170000003300000000000000000000000000000000000000060000000d00000050000000280000007800000038010000000000002000cc00
202 180000003400000028000000060000000d00000001002000000000003801000000000000000000000000000000000000ffffffffffffffffffffffffffffffff
203 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000ff
204 878787ff000000ffffffffffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffff838383ff9d9d9dffffffffffffffffff000000ffffffffff
205 ffffffff000000ffffffffffffffffff000000ffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffffffffffffe6e6e6ff0d0d0dff
206 ffffffffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0e00000014000000000000001000000014000000}
207 }{\nonshppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw6\pich13\picwgoal120\pichgoal260\macpict\bliptag730656928\blipupi72
208 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
209 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
210 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
211 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
212 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
213 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
214 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
215 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
216 000000000000000d0006001102ff0c00fffe0000004800000048000000000000000d000600000000001e0001000a00000000000d00068200000001d200000001
217 00000000000000000000000000000001000000000000000000000000000040000000000000000000000000000000000000000000000d00060000030000000000
218 00000056726177200000000000000000000000006170706c00000400000004000006000d00480000004800000000013800010000000000000000000000000000
219 0000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
220 ffffffffffffffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffe6
221 e6e6ff0d0d0dffffffffffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffff000000ffffffffffffffffff000000ffffffffff83
222 8383ff9d9d9dffffffffffffffffff000000ffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffffffffffff000000ff878787ff000000ffff
223 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
224 ffffffffffffffffffffffffffff000700ae00700007000100010003000300040000000d000c00100006000600ba00ba00280006000110517569636b54696d65
225 aa20616e642061000028000600020d206465636f6d70726573736f720028000600001f617265206e656564656420746f20736565207468697320706963747572
226 652e000000a100e007ac00000000000007a86170706c022000006d6e74725247422058595a2007d900020019000b001a000b616373704150504c000000006170
227 706c000000000000000000000000000000000000f6d6000100000000d32d6170706c000000000000000000000000000000000000000000000000000000000000
228 00000000000000000000000000000000000b64657363000001080000006f6473636d000001780000056c63707274000006e400000038777470740000071c0000
229 00147258595a00000730000000146758595a00000744000000146258595a0000075800000014725452430000076c0000000e636861640000077c0000002c6254
230 52430000076c0000000e675452430000076c0000000e64657363000000000000001447656e65726963205247422050726f66696c650000000000000000000000
231 1447656e65726963205247422050726f66696c650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
232 0000000000006d6c7563000000000000001e0000000c736b534b00000028000001786872485200000028000001a06361455300000024000001c8707442520000
233 0026000001ec756b55410000002a0000021266724655000000280000023c7a685457000000160000026469744954000000280000027a6e624e4f000000260000
234 02a26b6f4b5200000016000002c86373435a00000022000002de6865494c0000001e00000300646544450000002c0000031e68754855000000280000034a7376
235 534500000026000002a27a68434e00000016000003726a614a500000001a00000388726f524f00000024000003a2656c475200000022000003c67074504f0000
236 0026000003e86e6c4e4c000000280000040e6573455300000026000003e874685448000000240000043674725452000000220000045a66694649000000280000
237 047c706c504c0000002c000004a47275525500000022000004d06172454700000026000004f2656e555300000026000005186461444b0000002e0000053e0056
238 01610065006f006200650063006e00fd0020005200470042002000700072006f00660069006c00470065006e006500720069010d006b00690020005200470042
239 002000700072006f00660069006c00500065007200660069006c0020005200470042002000670065006e00e800720069006300500065007200660069006c0020
240 005200470042002000470065006e00e9007200690063006f0417043004330430043b044c043d043804390020043f0440043e044404300439043b002000520047
241 004200500072006f00660069006c0020006700e9006e00e9007200690071007500650020005200560042901a75280020005200470042002082725f6963cf8ff0
242 00500072006f00660069006c006f0020005200470042002000670065006e0065007200690063006f00470065006e0065007200690073006b0020005200470042
243 002d00700072006f00660069006cc77cbc1800200052004700420020d504b85cd30cc77c004f006200650063006e00fd0020005200470042002000700072006f
244 00660069006c05e405e805d505e405d905dc0020005200470042002005db05dc05dc05d90041006c006c00670065006d00650069006e00650073002000520047
245 0042002d00500072006f00660069006c00c1006c00740061006c00e1006e006f00730020005200470042002000700072006f00660069006c666e901a00200052
246 00470042002063cf8ff065874ef64e00822c0020005200470042002030d730ed30d530a130a430eb00500072006f00660069006c002000520047004200200067
247 0065006e0065007200690063039303b503bd03b903ba03cc002003c003c103bf03c603af03bb002000520047004200500065007200660069006c002000520047
248 0042002000670065006e00e9007200690063006f0041006c00670065006d00650065006e0020005200470042002d00700072006f006600690065006c0e420e1b
249 0e230e440e1f0e250e4c002000520047004200200e170e310e480e270e440e1b00470065006e0065006c0020005200470042002000500072006f00660069006c
250 00690059006c00650069006e0065006e0020005200470042002d00700072006f006600690069006c00690055006e006900770065007200730061006c006e0079
251 002000700072006f00660069006c0020005200470042041e04310449043804390020043f0440043e04440438043b044c00200052004700420645064406410020
252 062a06390631064a0641002000520047004200200627064406390627064500470065006e00650072006900630020005200470042002000500072006f00660069
253 006c006500470065006e006500720065006c0020005200470042002d006200650073006b0072006900760065006c007300657465787400000000436f70797269
254 6768742032303037204170706c6520496e632e2c20616c6c207269676874732072657365727665642e0058595a20000000000000f35200010000000116cf5859
255 5a20000000000000744d00003dee000003d058595a200000000000005a750000ac730000173458595a20000000000000281a0000159f0000b836637572760000
256 00000000000101cd0000736633320000000000010c42000005defffff326000007920000fd91fffffba2fffffda3000003dc0000c06c00a100e000040000000200ff}}}}
257 {\mmathPict{\*\shppict{\pict{\*\picprop\shplid1025{\sp{\sn shapeType}{\sv 75}}{\sp{\sn fFlipH}{\sv 0}}{\sp{\sn fFlipV}{\sv 0}}{\sp{\sn pictureTransparent}{\sv 16777215}}{\sp{\sn fLine}{\sv 0}}{\sp{\sn fLayoutInCell}{\sv 1}}}
258 \picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw212\pich459\picwgoal120\pichgoal260\emfblip\bliptag600669787
259 010000006c000000000000000000000017000000330000000000000000000000620200002905000020454d46000001007c020000080000000100000000000000
260 0000000000000000ec040000b103000040010000f000000000000000000000000000000000e2040080a90300110000000c000000080000000a00000010000000
261 0000000000000000090000001000000018000000340000000c0000001000000000000000000000000b00000010000000180000003400000051000000b0010000
262 0000000000000000170000003300000000000000000000000000000000000000060000000d00000050000000280000007800000038010000000000002000cc00
263 180000003400000028000000060000000d00000001002000000000003801000000000000000000000000000000000000ffffffffffffffffffffffffffffffff
264 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000ff
265 878787ff000000ffffffffffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffff838383ff9d9d9dffffffffffffffffff000000ffffffffff
266 ffffffff000000ffffffffffffffffff000000ffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffffffffffffe6e6e6ff0d0d0dff
267 ffffffffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0e00000014000000000000001000000014000000}
268 }{\nonshppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw6\pich13\picwgoal120\pichgoal260\macpict\bliptag600669787\blipupi72
269 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
270 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
271 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
272 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
273 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
274 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
275 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
276 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
277 000000000000000d0006001102ff0c00fffe0000004800000048000000000000000d000600000000001e0001000a00000000000d00068200000001d200000001
278 00000000000000000000000000000001000000000000000000000000000040000000000000000000000000000000000000000000000d00060000030000000000
279 00000056726177200000000000000000000000006170706c00000400000004000006000d00480000004800000000013800010000000000000000000000000000
280 0000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
281 ffffffffffffffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffe6
282 e6e6ff0d0d0dffffffffffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffff000000ffffffffffffffffff000000ffffffffff83
283 8383ff9d9d9dffffffffffffffffff000000ffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffffffffffff000000ff878787ff000000ffff
284 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
285 ffffffffffffffffffffffffffff000700ae00700007000100010003000300040000000d000c00100006000600ba00ba00280006000110517569636b54696d65
286 aa20616e642061000028000600020d206465636f6d70726573736f720028000600001f617265206e656564656420746f20736565207468697320706963747572
287 652e000000a100e007ac00000000000007a86170706c022000006d6e74725247422058595a2007d900020019000b001a000b616373704150504c000000006170
288 706c000000000000000000000000000000000000f6d6000100000000d32d6170706c000000000000000000000000000000000000000000000000000000000000
289 00000000000000000000000000000000000b64657363000001080000006f6473636d000001780000056c63707274000006e400000038777470740000071c0000
290 00147258595a00000730000000146758595a00000744000000146258595a0000075800000014725452430000076c0000000e636861640000077c0000002c6254
291 52430000076c0000000e675452430000076c0000000e64657363000000000000001447656e65726963205247422050726f66696c650000000000000000000000
292 1447656e65726963205247422050726f66696c650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
293 0000000000006d6c7563000000000000001e0000000c736b534b00000028000001786872485200000028000001a06361455300000024000001c8707442520000
294 0026000001ec756b55410000002a0000021266724655000000280000023c7a685457000000160000026469744954000000280000027a6e624e4f000000260000
295 02a26b6f4b5200000016000002c86373435a00000022000002de6865494c0000001e00000300646544450000002c0000031e68754855000000280000034a7376
296 534500000026000002a27a68434e00000016000003726a614a500000001a00000388726f524f00000024000003a2656c475200000022000003c67074504f0000
297 0026000003e86e6c4e4c000000280000040e6573455300000026000003e874685448000000240000043674725452000000220000045a66694649000000280000
298 047c706c504c0000002c000004a47275525500000022000004d06172454700000026000004f2656e555300000026000005186461444b0000002e0000053e0056
299 01610065006f006200650063006e00fd0020005200470042002000700072006f00660069006c00470065006e006500720069010d006b00690020005200470042
300 002000700072006f00660069006c00500065007200660069006c0020005200470042002000670065006e00e800720069006300500065007200660069006c0020
301 005200470042002000470065006e00e9007200690063006f0417043004330430043b044c043d043804390020043f0440043e044404300439043b002000520047
302 004200500072006f00660069006c0020006700e9006e00e9007200690071007500650020005200560042901a75280020005200470042002082725f6963cf8ff0
303 00500072006f00660069006c006f0020005200470042002000670065006e0065007200690063006f00470065006e0065007200690073006b0020005200470042
304 002d00700072006f00660069006cc77cbc1800200052004700420020d504b85cd30cc77c004f006200650063006e00fd0020005200470042002000700072006f
305 00660069006c05e405e805d505e405d905dc0020005200470042002005db05dc05dc05d90041006c006c00670065006d00650069006e00650073002000520047
306 0042002d00500072006f00660069006c00c1006c00740061006c00e1006e006f00730020005200470042002000700072006f00660069006c666e901a00200052
307 00470042002063cf8ff065874ef64e00822c0020005200470042002030d730ed30d530a130a430eb00500072006f00660069006c002000520047004200200067
308 0065006e0065007200690063039303b503bd03b903ba03cc002003c003c103bf03c603af03bb002000520047004200500065007200660069006c002000520047
309 0042002000670065006e00e9007200690063006f0041006c00670065006d00650065006e0020005200470042002d00700072006f006600690065006c0e420e1b
310 0e230e440e1f0e250e4c002000520047004200200e170e310e480e270e440e1b00470065006e0065006c0020005200470042002000500072006f00660069006c
311 00690059006c00650069006e0065006e0020005200470042002d00700072006f006600690069006c00690055006e006900770065007200730061006c006e0079
312 002000700072006f00660069006c0020005200470042041e04310449043804390020043f0440043e04440438043b044c00200052004700420645064406410020
313 062a06390631064a0641002000520047004200200627064406390627064500470065006e00650072006900630020005200470042002000500072006f00660069
314 006c006500470065006e006500720065006c0020005200470042002d006200650073006b0072006900760065006c007300657465787400000000436f70797269
315 6768742032303037204170706c6520496e632e2c20616c6c207269676874732072657365727665642e0058595a20000000000000f35200010000000116cf5859
316 5a20000000000000744d00003dee000003d058595a200000000000005a750000ac730000173458595a20000000000000281a0000159f0000b836637572760000
317 00000000000101cd0000736633320000000000010c42000005defffff326000007920000fd91fffffba2fffffda3000003dc0000c06c00a100e000040000000200ff}}}}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 activation
318 \hich\af0\dbch\af31505\loch\f0 has been proposed to underlie arrhythmogenic events in the heart by promoting Ca}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\super\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 2+}{\rtlch\fcs1 \af0\afs22
319 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 leak from the sarcoplasmic reticulum}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid16544540 \hich\af0\dbch\af31505\loch\f0 Chelu }{\rtlch\fcs1 \af0\afs22
320 \ltrch\fcs0 \i\f0\fs22\insrsid16544540 \hich\af0\dbch\af31505\loch\f0 et al., }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid16544540 \hich\af0\dbch\af31505\loch\f0 (2009)}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841
321 \hich\af0\dbch\af31505\loch\f0 . Oxidative stress can lead to activation of CaMKII}{\mmath{\*\moMath {\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f876\fs22\insrsid12589696 \loch\af876\dbch\af31505\hich\f876 {\mr\mscr0\msty2 \u948\'e4}}}{\mmathPict{\*\shppict
322 {\pict{\*\picprop\shplid1025{\sp{\sn shapeType}{\sv 75}}{\sp{\sn fFlipH}{\sv 0}}{\sp{\sn fFlipV}{\sv 0}}{\sp{\sn pictureTransparent}{\sv 16777215}}{\sp{\sn fLine}{\sv 0}}{\sp{\sn fLayoutInCell}{\sv 1}}}
323 \picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw212\pich459\picwgoal120\pichgoal260\emfblip\bliptag444898296
324 010000006c000000000000000000000017000000330000000000000000000000620200002905000020454d46000001007c020000080000000100000000000000
325 0000000000000000ec040000b103000040010000f000000000000000000000000000000000e2040080a90300110000000c000000080000000a00000010000000
326 0000000000000000090000001000000018000000340000000c0000001000000000000000000000000b00000010000000180000003400000051000000b0010000
327 0000000000000000170000003300000000000000000000000000000000000000060000000d00000050000000280000007800000038010000000000002000cc00
328 180000003400000028000000060000000d00000001002000000000003801000000000000000000000000000000000000ffffffffffffffffffffffffffffffff
329 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000ff
330 878787ff000000ffffffffffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffff838383ff9d9d9dffffffffffffffffff000000ffffffffff
331 ffffffff000000ffffffffffffffffff000000ffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffffffffffffe6e6e6ff0d0d0dff
332 ffffffffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0e00000014000000000000001000000014000000}
333 }{\nonshppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw6\pich13\picwgoal120\pichgoal260\macpict\bliptag444898296\blipupi72
334 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
335 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
336 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
337 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
338 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
339 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
340 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
341 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
342 000000000000000d0006001102ff0c00fffe0000004800000048000000000000000d000600000000001e0001000a00000000000d00068200000001d200000001
343 00000000000000000000000000000001000000000000000000000000000040000000000000000000000000000000000000000000000d00060000030000000000
344 00000056726177200000000000000000000000006170706c00000400000004000006000d00480000004800000000013800010000000000000000000000000000
345 0000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
346 ffffffffffffffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffe6
347 e6e6ff0d0d0dffffffffffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffff000000ffffffffffffffffff000000ffffffffff83
348 8383ff9d9d9dffffffffffffffffff000000ffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffffffffffff000000ff878787ff000000ffff
349 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
350 ffffffffffffffffffffffffffff000700ae00700007000100010003000300040000000d000c00100006000600ba00ba00280006000110517569636b54696d65
351 aa20616e642061000028000600020d206465636f6d70726573736f720028000600001f617265206e656564656420746f20736565207468697320706963747572
352 652e000000a100e007ac00000000000007a86170706c022000006d6e74725247422058595a2007d900020019000b001a000b616373704150504c000000006170
353 706c000000000000000000000000000000000000f6d6000100000000d32d6170706c000000000000000000000000000000000000000000000000000000000000
354 00000000000000000000000000000000000b64657363000001080000006f6473636d000001780000056c63707274000006e400000038777470740000071c0000
355 00147258595a00000730000000146758595a00000744000000146258595a0000075800000014725452430000076c0000000e636861640000077c0000002c6254
356 52430000076c0000000e675452430000076c0000000e64657363000000000000001447656e65726963205247422050726f66696c650000000000000000000000
357 1447656e65726963205247422050726f66696c650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
358 0000000000006d6c7563000000000000001e0000000c736b534b00000028000001786872485200000028000001a06361455300000024000001c8707442520000
359 0026000001ec756b55410000002a0000021266724655000000280000023c7a685457000000160000026469744954000000280000027a6e624e4f000000260000
360 02a26b6f4b5200000016000002c86373435a00000022000002de6865494c0000001e00000300646544450000002c0000031e68754855000000280000034a7376
361 534500000026000002a27a68434e00000016000003726a614a500000001a00000388726f524f00000024000003a2656c475200000022000003c67074504f0000
362 0026000003e86e6c4e4c000000280000040e6573455300000026000003e874685448000000240000043674725452000000220000045a66694649000000280000
363 047c706c504c0000002c000004a47275525500000022000004d06172454700000026000004f2656e555300000026000005186461444b0000002e0000053e0056
364 01610065006f006200650063006e00fd0020005200470042002000700072006f00660069006c00470065006e006500720069010d006b00690020005200470042
365 002000700072006f00660069006c00500065007200660069006c0020005200470042002000670065006e00e800720069006300500065007200660069006c0020
366 005200470042002000470065006e00e9007200690063006f0417043004330430043b044c043d043804390020043f0440043e044404300439043b002000520047
367 004200500072006f00660069006c0020006700e9006e00e9007200690071007500650020005200560042901a75280020005200470042002082725f6963cf8ff0
368 00500072006f00660069006c006f0020005200470042002000670065006e0065007200690063006f00470065006e0065007200690073006b0020005200470042
369 002d00700072006f00660069006cc77cbc1800200052004700420020d504b85cd30cc77c004f006200650063006e00fd0020005200470042002000700072006f
370 00660069006c05e405e805d505e405d905dc0020005200470042002005db05dc05dc05d90041006c006c00670065006d00650069006e00650073002000520047
371 0042002d00500072006f00660069006c00c1006c00740061006c00e1006e006f00730020005200470042002000700072006f00660069006c666e901a00200052
372 00470042002063cf8ff065874ef64e00822c0020005200470042002030d730ed30d530a130a430eb00500072006f00660069006c002000520047004200200067
373 0065006e0065007200690063039303b503bd03b903ba03cc002003c003c103bf03c603af03bb002000520047004200500065007200660069006c002000520047
374 0042002000670065006e00e9007200690063006f0041006c00670065006d00650065006e0020005200470042002d00700072006f006600690065006c0e420e1b
375 0e230e440e1f0e250e4c002000520047004200200e170e310e480e270e440e1b00470065006e0065006c0020005200470042002000500072006f00660069006c
376 00690059006c00650069006e0065006e0020005200470042002d00700072006f006600690069006c00690055006e006900770065007200730061006c006e0079
377 002000700072006f00660069006c0020005200470042041e04310449043804390020043f0440043e04440438043b044c00200052004700420645064406410020
378 062a06390631064a0641002000520047004200200627064406390627064500470065006e00650072006900630020005200470042002000500072006f00660069
379 006c006500470065006e006500720065006c0020005200470042002d006200650073006b0072006900760065006c007300657465787400000000436f70797269
380 6768742032303037204170706c6520496e632e2c20616c6c207269676874732072657365727665642e0058595a20000000000000f35200010000000116cf5859
381 5a20000000000000744d00003dee000003d058595a200000000000005a750000ac730000173458595a20000000000000281a0000159f0000b836637572760000
382 00000000000101cd0000736633320000000000010c42000005defffff326000007920000fd91fffffba2fffffda3000003dc0000c06c00a100e000040000000200ff}}}}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0
383 , as can hyperglycemia through glycolysation (}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 O}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841
384 \hich\af0\dbch\af31505\loch\f0 -GlcNAc) of the\hich\af0\dbch\af31505\loch\f0 kinase}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid16544540 \hich\af0\dbch\af31505\loch\f0 Erickson }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid16544540
385 \hich\af0\dbch\af31505\loch\f0 et al., }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid16544540 \hich\af0\dbch\af31505\loch\f0 (2013)}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0
386 . Therefore the discovery that CaMKII}{\mmath{\*\moMath {\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f876\fs22\insrsid12589696 \loch\af876\dbch\af31505\hich\f876 {\mr\mscr0\msty2 \u948\'e4}}}{\mmathPict{\*\shppict
387 {\pict{\*\picprop\shplid1025{\sp{\sn shapeType}{\sv 75}}{\sp{\sn fFlipH}{\sv 0}}{\sp{\sn fFlipV}{\sv 0}}{\sp{\sn pictureTransparent}{\sv 16777215}}{\sp{\sn fLine}{\sv 0}}{\sp{\sn fLayoutInCell}{\sv 1}}}
388 \picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw212\pich459\picwgoal120\pichgoal260\emfblip\bliptag-497028934
389 010000006c000000000000000000000017000000330000000000000000000000620200002905000020454d46000001007c020000080000000100000000000000
390 0000000000000000ec040000b103000040010000f000000000000000000000000000000000e2040080a90300110000000c000000080000000a00000010000000
391 0000000000000000090000001000000018000000340000000c0000001000000000000000000000000b00000010000000180000003400000051000000b0010000
392 0000000000000000170000003300000000000000000000000000000000000000060000000d00000050000000280000007800000038010000000000002000cc00
393 180000003400000028000000060000000d00000001002000000000003801000000000000000000000000000000000000ffffffffffffffffffffffffffffffff
394 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000ff
395 878787ff000000ffffffffffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffff838383ff9d9d9dffffffffffffffffff000000ffffffffff
396 ffffffff000000ffffffffffffffffff000000ffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffffffffffffe6e6e6ff0d0d0dff
397 ffffffffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0e00000014000000000000001000000014000000}
398 }{\nonshppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw6\pich13\picwgoal120\pichgoal260\macpict\bliptag-497028934\blipupi72
399 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
400 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
401 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
402 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
403 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
404 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
405 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
406 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
407 000000000000000d0006001102ff0c00fffe0000004800000048000000000000000d000600000000001e0001000a00000000000d00068200000001d200000001
408 00000000000000000000000000000001000000000000000000000000000040000000000000000000000000000000000000000000000d00060000030000000000
409 00000056726177200000000000000000000000006170706c00000400000004000006000d00480000004800000000013800010000000000000000000000000000
410 0000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
411 ffffffffffffffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffe6
412 e6e6ff0d0d0dffffffffffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffff000000ffffffffffffffffff000000ffffffffff83
413 8383ff9d9d9dffffffffffffffffff000000ffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffffffffffff000000ff878787ff000000ffff
414 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
415 ffffffffffffffffffffffffffff000700ae00700007000100010003000300040000000d000c00100006000600ba00ba00280006000110517569636b54696d65
416 aa20616e642061000028000600020d206465636f6d70726573736f720028000600001f617265206e656564656420746f20736565207468697320706963747572
417 652e000000a100e007ac00000000000007a86170706c022000006d6e74725247422058595a2007d900020019000b001a000b616373704150504c000000006170
418 706c000000000000000000000000000000000000f6d6000100000000d32d6170706c000000000000000000000000000000000000000000000000000000000000
419 00000000000000000000000000000000000b64657363000001080000006f6473636d000001780000056c63707274000006e400000038777470740000071c0000
420 00147258595a00000730000000146758595a00000744000000146258595a0000075800000014725452430000076c0000000e636861640000077c0000002c6254
421 52430000076c0000000e675452430000076c0000000e64657363000000000000001447656e65726963205247422050726f66696c650000000000000000000000
422 1447656e65726963205247422050726f66696c650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
423 0000000000006d6c7563000000000000001e0000000c736b534b00000028000001786872485200000028000001a06361455300000024000001c8707442520000
424 0026000001ec756b55410000002a0000021266724655000000280000023c7a685457000000160000026469744954000000280000027a6e624e4f000000260000
425 02a26b6f4b5200000016000002c86373435a00000022000002de6865494c0000001e00000300646544450000002c0000031e68754855000000280000034a7376
426 534500000026000002a27a68434e00000016000003726a614a500000001a00000388726f524f00000024000003a2656c475200000022000003c67074504f0000
427 0026000003e86e6c4e4c000000280000040e6573455300000026000003e874685448000000240000043674725452000000220000045a66694649000000280000
428 047c706c504c0000002c000004a47275525500000022000004d06172454700000026000004f2656e555300000026000005186461444b0000002e0000053e0056
429 01610065006f006200650063006e00fd0020005200470042002000700072006f00660069006c00470065006e006500720069010d006b00690020005200470042
430 002000700072006f00660069006c00500065007200660069006c0020005200470042002000670065006e00e800720069006300500065007200660069006c0020
431 005200470042002000470065006e00e9007200690063006f0417043004330430043b044c043d043804390020043f0440043e044404300439043b002000520047
432 004200500072006f00660069006c0020006700e9006e00e9007200690071007500650020005200560042901a75280020005200470042002082725f6963cf8ff0
433 00500072006f00660069006c006f0020005200470042002000670065006e0065007200690063006f00470065006e0065007200690073006b0020005200470042
434 002d00700072006f00660069006cc77cbc1800200052004700420020d504b85cd30cc77c004f006200650063006e00fd0020005200470042002000700072006f
435 00660069006c05e405e805d505e405d905dc0020005200470042002005db05dc05dc05d90041006c006c00670065006d00650069006e00650073002000520047
436 0042002d00500072006f00660069006c00c1006c00740061006c00e1006e006f00730020005200470042002000700072006f00660069006c666e901a00200052
437 00470042002063cf8ff065874ef64e00822c0020005200470042002030d730ed30d530a130a430eb00500072006f00660069006c002000520047004200200067
438 0065006e0065007200690063039303b503bd03b903ba03cc002003c003c103bf03c603af03bb002000520047004200500065007200660069006c002000520047
439 0042002000670065006e00e9007200690063006f0041006c00670065006d00650065006e0020005200470042002d00700072006f006600690065006c0e420e1b
440 0e230e440e1f0e250e4c002000520047004200200e170e310e480e270e440e1b00470065006e0065006c0020005200470042002000500072006f00660069006c
441 00690059006c00650069006e0065006e0020005200470042002d00700072006f006600690069006c00690055006e006900770065007200730061006c006e0079
442 002000700072006f00660069006c0020005200470042041e04310449043804390020043f0440043e04440438043b044c00200052004700420645064406410020
443 062a06390631064a0641002000520047004200200627064406390627064500470065006e00650072006900630020005200470042002000500072006f00660069
444 006c006500470065006e006500720065006c0020005200470042002d006200650073006b0072006900760065006c007300657465787400000000436f70797269
445 6768742032303037204170706c6520496e632e2c20616c6c207269676874732072657365727665642e0058595a20000000000000f35200010000000116cf5859
446 5a20000000000000744d00003dee000003d058595a200000000000005a750000ac730000173458595a20000000000000281a0000159f0000b836637572760000
447 00000000000101cd0000736633320000000000010c42000005defffff326000007920000fd91fffffba2fffffda3000003dc0000c06c00a100e000040000000200ff}}}}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0
448 activity is increased in DM,}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 and that both oxidative stress and hyperglycaemia can also modulate }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0
449 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 CaMKII}{\mmath{\*\moMath {\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f876\fs22\insrsid12589696 \loch\af876\dbch\af31505\hich\f876 {\mr\mscr0\msty2 \u948\'e4}}}{\mmathPict{\*\shppict
450 {\pict{\*\picprop\shplid1025{\sp{\sn shapeType}{\sv 75}}{\sp{\sn fFlipH}{\sv 0}}{\sp{\sn fFlipV}{\sv 0}}{\sp{\sn pictureTransparent}{\sv 16777215}}{\sp{\sn fLine}{\sv 0}}{\sp{\sn fLayoutInCell}{\sv 1}}}
451 \picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw212\pich459\picwgoal120\pichgoal260\emfblip\bliptag-718654424
452 010000006c000000000000000000000017000000330000000000000000000000620200002905000020454d46000001007c020000080000000100000000000000
453 0000000000000000ec040000b103000040010000f000000000000000000000000000000000e2040080a90300110000000c000000080000000a00000010000000
454 0000000000000000090000001000000018000000340000000c0000001000000000000000000000000b00000010000000180000003400000051000000b0010000
455 0000000000000000170000003300000000000000000000000000000000000000060000000d00000050000000280000007800000038010000000000002000cc00
456 180000003400000028000000060000000d00000001002000000000003801000000000000000000000000000000000000ffffffffffffffffffffffffffffffff
457 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000ff
458 878787ff000000ffffffffffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffff838383ff9d9d9dffffffffffffffffff000000ffffffffff
459 ffffffff000000ffffffffffffffffff000000ffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffffffffffffe6e6e6ff0d0d0dff
460 ffffffffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0e00000014000000000000001000000014000000}
461 }{\nonshppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw6\pich13\picwgoal120\pichgoal260\macpict\bliptag-718654424\blipupi72
462 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
463 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
464 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
465 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
466 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
467 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
468 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
469 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
470 000000000000000d0006001102ff0c00fffe0000004800000048000000000000000d000600000000001e0001000a00000000000d00068200000001d200000001
471 00000000000000000000000000000001000000000000000000000000000040000000000000000000000000000000000000000000000d00060000030000000000
472 00000056726177200000000000000000000000006170706c00000400000004000006000d00480000004800000000013800010000000000000000000000000000
473 0000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
474 ffffffffffffffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffe6
475 e6e6ff0d0d0dffffffffffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffff000000ffffffffffffffffff000000ffffffffff83
476 8383ff9d9d9dffffffffffffffffff000000ffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffffffffffff000000ff878787ff000000ffff
477 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
478 ffffffffffffffffffffffffffff000700ae00700007000100010003000300040000000d000c00100006000600ba00ba00280006000110517569636b54696d65
479 aa20616e642061000028000600020d206465636f6d70726573736f720028000600001f617265206e656564656420746f20736565207468697320706963747572
480 652e000000a100e007ac00000000000007a86170706c022000006d6e74725247422058595a2007d900020019000b001a000b616373704150504c000000006170
481 706c000000000000000000000000000000000000f6d6000100000000d32d6170706c000000000000000000000000000000000000000000000000000000000000
482 00000000000000000000000000000000000b64657363000001080000006f6473636d000001780000056c63707274000006e400000038777470740000071c0000
483 00147258595a00000730000000146758595a00000744000000146258595a0000075800000014725452430000076c0000000e636861640000077c0000002c6254
484 52430000076c0000000e675452430000076c0000000e64657363000000000000001447656e65726963205247422050726f66696c650000000000000000000000
485 1447656e65726963205247422050726f66696c650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
486 0000000000006d6c7563000000000000001e0000000c736b534b00000028000001786872485200000028000001a06361455300000024000001c8707442520000
487 0026000001ec756b55410000002a0000021266724655000000280000023c7a685457000000160000026469744954000000280000027a6e624e4f000000260000
488 02a26b6f4b5200000016000002c86373435a00000022000002de6865494c0000001e00000300646544450000002c0000031e68754855000000280000034a7376
489 534500000026000002a27a68434e00000016000003726a614a500000001a00000388726f524f00000024000003a2656c475200000022000003c67074504f0000
490 0026000003e86e6c4e4c000000280000040e6573455300000026000003e874685448000000240000043674725452000000220000045a66694649000000280000
491 047c706c504c0000002c000004a47275525500000022000004d06172454700000026000004f2656e555300000026000005186461444b0000002e0000053e0056
492 01610065006f006200650063006e00fd0020005200470042002000700072006f00660069006c00470065006e006500720069010d006b00690020005200470042
493 002000700072006f00660069006c00500065007200660069006c0020005200470042002000670065006e00e800720069006300500065007200660069006c0020
494 005200470042002000470065006e00e9007200690063006f0417043004330430043b044c043d043804390020043f0440043e044404300439043b002000520047
495 004200500072006f00660069006c0020006700e9006e00e9007200690071007500650020005200560042901a75280020005200470042002082725f6963cf8ff0
496 00500072006f00660069006c006f0020005200470042002000670065006e0065007200690063006f00470065006e0065007200690073006b0020005200470042
497 002d00700072006f00660069006cc77cbc1800200052004700420020d504b85cd30cc77c004f006200650063006e00fd0020005200470042002000700072006f
498 00660069006c05e405e805d505e405d905dc0020005200470042002005db05dc05dc05d90041006c006c00670065006d00650069006e00650073002000520047
499 0042002d00500072006f00660069006c00c1006c00740061006c00e1006e006f00730020005200470042002000700072006f00660069006c666e901a00200052
500 00470042002063cf8ff065874ef64e00822c0020005200470042002030d730ed30d530a130a430eb00500072006f00660069006c002000520047004200200067
501 0065006e0065007200690063039303b503bd03b903ba03cc002003c003c103bf03c603af03bb002000520047004200500065007200660069006c002000520047
502 0042002000670065006e00e9007200690063006f0041006c00670065006d00650065006e0020005200470042002d00700072006f006600690065006c0e420e1b
503 0e230e440e1f0e250e4c002000520047004200200e170e310e480e270e440e1b00470065006e0065006c0020005200470042002000500072006f00660069006c
504 00690059006c00650069006e0065006e0020005200470042002d00700072006f006600690069006c00690055006e006900770065007200730061006c006e0079
505 002000700072006f00660069006c0020005200470042041e04310449043804390020043f0440043e04440438043b044c00200052004700420645064406410020
506 062a06390631064a0641002000520047004200200627064406390627064500470065006e00650072006900630020005200470042002000500072006f00660069
507 006c006500470065006e006500720065006c0020005200470042002d006200650073006b0072006900760065006c007300657465787400000000436f70797269
508 6768742032303037204170706c6520496e632e2c20616c6c207269676874732072657365727665642e0058595a20000000000000f35200010000000116cf5859
509 5a20000000000000744d00003dee000003d058595a200000000000005a750000ac730000173458595a20000000000000281a0000159f0000b836637572760000
510 00000000000101cd0000736633320000000000010c42000005defffff326000007920000fd91fffffba2fffffda3000003dc0000c06c00a100e000040000000200ff}}}}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 activity, }{\rtlch\fcs1
511 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 suggests a potential signaling role for oxidative stress and }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696\charrsid3487841
512 \hich\af0\dbch\af31505\loch\f0 O}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 -GlcNAc\hich\af0\dbch\af31505\loch\f0 in the diabetic heart.}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0
513 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0 It was hypothesized that inhibition of CaMKII}{\mmath{\*\moMath {\rtlch\fcs1 \af0\afs22
514 \ltrch\fcs0 \i\f876\fs22\insrsid12589696 \loch\af876\dbch\af31505\hich\f876 {\mr\mscr0\msty2 \u948\'e4}}}{\mmathPict{\*\shppict{\pict{\*\picprop\shplid1025{\sp{\sn shapeType}{\sv 75}}{\sp{\sn fFlipH}{\sv 0}}
515 {\sp{\sn fFlipV}{\sv 0}}{\sp{\sn pictureTransparent}{\sv 16777215}}{\sp{\sn fLine}{\sv 0}}{\sp{\sn fLayoutInCell}{\sv 1}}}\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0
516 \picw212\pich459\picwgoal120\pichgoal260\emfblip\bliptag-1445226070 010000006c000000000000000000000017000000330000000000000000000000620200002905000020454d46000001007c020000080000000100000000000000
517 0000000000000000ec040000b103000040010000f000000000000000000000000000000000e2040080a90300110000000c000000080000000a00000010000000
518 0000000000000000090000001000000018000000340000000c0000001000000000000000000000000b00000010000000180000003400000051000000b0010000
519 0000000000000000170000003300000000000000000000000000000000000000060000000d00000050000000280000007800000038010000000000002000cc00
520 180000003400000028000000060000000d00000001002000000000003801000000000000000000000000000000000000ffffffffffffffffffffffffffffffff
521 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000ff
522 878787ff000000ffffffffffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffff838383ff9d9d9dffffffffffffffffff000000ffffffffff
523 ffffffff000000ffffffffffffffffff000000ffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffffffffffffe6e6e6ff0d0d0dff
524 ffffffffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0e00000014000000000000001000000014000000}
525 }{\nonshppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw6\pich13\picwgoal120\pichgoal260\macpict\bliptag-1445226070\blipupi72
526 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
527 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
528 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
529 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
530 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
531 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
532 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
533 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
534 000000000000000d0006001102ff0c00fffe0000004800000048000000000000000d000600000000001e0001000a00000000000d00068200000001d200000001
535 00000000000000000000000000000001000000000000000000000000000040000000000000000000000000000000000000000000000d00060000030000000000
536 00000056726177200000000000000000000000006170706c00000400000004000006000d00480000004800000000013800010000000000000000000000000000
537 0000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
538 ffffffffffffffffffffffffffffffd3d3d3ff020202ff000000ffffffffffffffffffffffffff000000ffffffffffffffffff212121ffffffffffffffffffe6
539 e6e6ff0d0d0dffffffffffffffffffffffffffffffffff0c0c0cff1f1f1fffc2c2c2ffffffffffffffffff000000ffffffffffffffffff000000ffffffffff83
540 8383ff9d9d9dffffffffffffffffff000000ffffffffff333333fff2f2f2ffffffffffffffffff000000ffffffffffffffffff000000ff878787ff000000ffff
541 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
542 ffffffffffffffffffffffffffff000700ae00700007000100010003000300040000000d000c00100006000600ba00ba00280006000110517569636b54696d65
543 aa20616e642061000028000600020d206465636f6d70726573736f720028000600001f617265206e656564656420746f20736565207468697320706963747572
544 652e000000a100e007ac00000000000007a86170706c022000006d6e74725247422058595a2007d900020019000b001a000b616373704150504c000000006170
545 706c000000000000000000000000000000000000f6d6000100000000d32d6170706c000000000000000000000000000000000000000000000000000000000000
546 00000000000000000000000000000000000b64657363000001080000006f6473636d000001780000056c63707274000006e400000038777470740000071c0000
547 00147258595a00000730000000146758595a00000744000000146258595a0000075800000014725452430000076c0000000e636861640000077c0000002c6254
548 52430000076c0000000e675452430000076c0000000e64657363000000000000001447656e65726963205247422050726f66696c650000000000000000000000
549 1447656e65726963205247422050726f66696c650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
550 0000000000006d6c7563000000000000001e0000000c736b534b00000028000001786872485200000028000001a06361455300000024000001c8707442520000
551 0026000001ec756b55410000002a0000021266724655000000280000023c7a685457000000160000026469744954000000280000027a6e624e4f000000260000
552 02a26b6f4b5200000016000002c86373435a00000022000002de6865494c0000001e00000300646544450000002c0000031e68754855000000280000034a7376
553 534500000026000002a27a68434e00000016000003726a614a500000001a00000388726f524f00000024000003a2656c475200000022000003c67074504f0000
554 0026000003e86e6c4e4c000000280000040e6573455300000026000003e874685448000000240000043674725452000000220000045a66694649000000280000
555 047c706c504c0000002c000004a47275525500000022000004d06172454700000026000004f2656e555300000026000005186461444b0000002e0000053e0056
556 01610065006f006200650063006e00fd0020005200470042002000700072006f00660069006c00470065006e006500720069010d006b00690020005200470042
557 002000700072006f00660069006c00500065007200660069006c0020005200470042002000670065006e00e800720069006300500065007200660069006c0020
558 005200470042002000470065006e00e9007200690063006f0417043004330430043b044c043d043804390020043f0440043e044404300439043b002000520047
559 004200500072006f00660069006c0020006700e9006e00e9007200690071007500650020005200560042901a75280020005200470042002082725f6963cf8ff0
560 00500072006f00660069006c006f0020005200470042002000670065006e0065007200690063006f00470065006e0065007200690073006b0020005200470042
561 002d00700072006f00660069006cc77cbc1800200052004700420020d504b85cd30cc77c004f006200650063006e00fd0020005200470042002000700072006f
562 00660069006c05e405e805d505e405d905dc0020005200470042002005db05dc05dc05d90041006c006c00670065006d00650069006e00650073002000520047
563 0042002d00500072006f00660069006c00c1006c00740061006c00e1006e006f00730020005200470042002000700072006f00660069006c666e901a00200052
564 00470042002063cf8ff065874ef64e00822c0020005200470042002030d730ed30d530a130a430eb00500072006f00660069006c002000520047004200200067
565 0065006e0065007200690063039303b503bd03b903ba03cc002003c003c103bf03c603af03bb002000520047004200500065007200660069006c002000520047
566 0042002000670065006e00e9007200690063006f0041006c00670065006d00650065006e0020005200470042002d00700072006f006600690065006c0e420e1b
567 0e230e440e1f0e250e4c002000520047004200200e170e310e480e270e440e1b00470065006e0065006c0020005200470042002000500072006f00660069006c
568 00690059006c00650069006e0065006e0020005200470042002d00700072006f006600690069006c00690055006e006900770065007200730061006c006e0079
569 002000700072006f00660069006c0020005200470042041e04310449043804390020043f0440043e04440438043b044c00200052004700420645064406410020
570 062a06390631064a0641002000520047004200200627064406390627064500470065006e00650072006900630020005200470042002000500072006f00660069
571 006c006500470065006e006500720065006c0020005200470042002d006200650073006b0072006900760065006c007300657465787400000000436f70797269
572 6768742032303037204170706c6520496e632e2c20616c6c207269676874732072657365727665642e0058595a20000000000000f35200010000000116cf5859
573 5a20000000000000744d00003dee000003d058595a200000000000005a750000ac730000173458595a20000000000000281a0000159f0000b836637572760000
574 00000000000101cd0000736633320000000000010c42000005defffff326000007920000fd91fffffba2fffffda3000003dc0000c06c00a100e000040000000200ff}}}}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841 \hich\af0\dbch\af31505\loch\f0
575 activity will preserve muscle contractility in the zucker diabetic fatty rat}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 (ZDF)}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696\charrsid3487841
576 \hich\af0\dbch\af31505\loch\f0 heart. }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 Methods- }{\rtlch\fcs1
577 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 At 12, 16 and 20 weeks blood glucose was measured and also an echocardiography scan \hich\af0\dbch\af31505\loch\f0
578 for the assessment of cardiac function after the animal had been anesthetized with 3% isoflurane on ZDF (}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 n}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0
579 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 =10) and CTRL rats (}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 n}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696
580 \hich\af0\dbch\af31505\loch\f0 =10). At 20 weeks rats were anethetised with an overdose of pentobarbital (60mg/kg) and the heart extracted. The heart was mounte\hich\af0\dbch\af31505\loch\f0
581 d on a simplified Langendorff setup and perfused with Tyrode with 20mM butanedione monoxime. The right ventricle was opened up and a suitable cardiac muscle (trabeculae) dissected under a microscope. The trabeculae was attached between a force transducer
582 \hich\af0\dbch\af31505\loch\f0 a\hich\af0\dbch\af31505\loch\f0 nd micromanipulator, immersed in carbogenated Krebs-Henseleit solution and maintained at 37}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\super\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 o}
583 {\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 C. Measurements taken included: force frequency characteristics, sarcoplasmic reticulum Ca}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\super\insrsid12589696
584 \hich\af0\dbch\af31505\loch\f0 2+}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 load and maximal force in response to isoproterenol (10}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\super\insrsid12589696
585 \hich\af0\dbch\af31505\loch\f0 -8,-7,-6}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 ). Meas\hich\af0\dbch\af31505\loch\f0 urements were then repeated in the presence of inhibitors blocking CaMKII }{
586 \rtlch\fcs1 \af536\afs22 \ltrch\fcs0 \f536\fs22\insrsid12589696\charrsid13914484 \hich\af536\dbch\af31505\loch\f536 \hich\f536 (KN-93, 2\u956\'ec\loch\f536 mol/L).}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696\charrsid13914484
587 \hich\af0\dbch\af31505\loch\f0 }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 CTRL}{\rtlch\fcs1 \af536\afs22 \ltrch\fcs0 \f536\fs22\insrsid12589696\charrsid13914484 \hich\af536\dbch\af31505\loch\f536
588 \hich\f536 experiments were performed using the inactive analogue KN-92 (2\u956\'ec\loch\f536 mol/L).}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0
589 Sections of heart tissue from the right and left ventricle were also rapidly snap frozen in liquid nitrogen for later protein analysis of total, oxidized and }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0
590 O}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 -\hich\af0\dbch\af31505\loch\f0 GlcNAc CaMKII, or fixed in 4% formalin and later sectioned using a cryostat for staining of fibrosis (Masson\hich\f0 \rquote \loch\f0
591 s trichrome) and apoptosis (TUNEL). }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 Results-}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0
592 After 12 weeks, fasted blood glucose was 17.4mmol/L for the ZDF diabetic rats and 8.6mmol/L for the CT\hich\af0\dbch\af31505\loch\f0
593 RL rats. No significant differences were detected in heart function as measured by echocardiography at 12 weeks. However, at 16 weeks we observed changes in the E/\hich\af0\dbch\af31505\loch\f0
594 A ratio in the ZDF rat from 1.77 to 2.19 compared to 1.95 in the CTRL rats, indicating potential functional remodeling, in particular diastolic function, in the diabetic animals. We were able to measure force frequency, SR Ca}{\rtlch\fcs1 \af0\afs22
595 \ltrch\fcs0 \f0\fs22\super\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 2+}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 load and maximal force in re\hich\af0\dbch\af31505\loch\f0
596 sponse to cardiac stress in diabetic and non}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid15337424 -}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 diabetic animals, both with and without the CaMKII }{
597 \rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid16544540 \hich\af0\dbch\af31505\loch\f0 inhibitor KN-93 (see Figure 1.). Inhibition of CaMKII resulted }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid1007481 \hich\af0\dbch\af31505\loch\f0
598 in improved maximum rate of contraction}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696
599 \par }\pard \ltrpar\qj \li-567\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin-567\itap0\pararsid16544540 {\rtlch\fcs1 \af0\afs22\alang1024 \ltrch\fcs0 \f0\fs22\lang1024\langfe1024\noproof\insrsid16544540 \hich\af0\dbch\af31505\loch\f0
600 ximum}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 rate of contraction, as well as reduced relaxation }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid15337424
601 \par }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 time in the non-diabetic r\hich\af0\dbch\af31505\loch\f0 at heart. Indicating improved }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid15337424
602 \par }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 contractility and relaxation after CaMKII inhibition. Western }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid15337424
603 \par }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 blot analysis showed an up regulation of total CaMKII, }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid15337424
604 \par }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 oxidized, }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 O}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0
605 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 -GlcNAc CaMKII in the ZDF rat compared to the }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid15337424
606 \par }\pard \ltrpar\qj \li-567\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin-567\itap0\pararsid328727 {\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 CTRL rats. }{\rtlch\fcs1 \af0\afs22
607 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 Conclusion- }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 The results from this st\hich\af0\dbch\af31505\loch\f0 udy show that }{
608 \rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid14973042 \hich\af0\dbch\af31505\loch\f0 Figure here.
609 \par }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 the diabetic heart is predisposed to decreased cardiac function }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid14973042
610 \par }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 as diabetes develops, and that total, oxidized, and }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 O-}{
611 \rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid1007481 \hich\af0\dbch\af31505\loch\f0 GlcNAc }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid14973042
612 \par }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 modified CaMKII are up regulated in the diabetic heart. The }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid14973042
613 \par }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 results from our functional studies suggest a potenti\hich\af0\dbch\af31505\loch\f0 al therapeutic}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid14973042
614
615 \par }\pard \ltrpar\qj \li-567\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin-567\itap0\pararsid12207491 {\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0
616 role for CaMKII inhibitors in improving cardiac muscle \hich\af0\dbch\af31505\loch\f0 contractility in the diabetic heart. }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 References}{\rtlch\fcs1 \af0\afs22
617 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 - Anderson ME, Brown JH & Bers DM (2011) CaMKII in myocardial hypertrophy and heart failure. }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696
618 \hich\af0\dbch\af31505\loch\f0 Journal of Molecular Cell Cardiology}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \b\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 51}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696
619 \hich\af0\dbch\af31505\loch\f0 , 468-47\hich\af0\dbch\af31505\loch\f0 3. Kannel WB & McGee DL (1979) Diabetes and cardiovascular risk factors: the Framingham study. }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696
620 \hich\af0\dbch\af31505\loch\f0 Circulation}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \b\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 59}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0
621 , 8-13. Erickson JR, Pereira L, Wang L, Han G, Ferguson A, Dao K }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 et al., }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696
622 \hich\af0\dbch\af31505\loch\f0 (2013) Diabetic hyperglycaemia activates CaMKII and arrhythmias by }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 O}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0
623 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 -linked\hich\af0\dbch\af31505\loch\f0 glyocolysation. }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 Nature}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0
624 \b\f0\fs22\insrsid12589696 000}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 , 1-6. Luo M, Guan X, Luczak ED, Lang D, Kutschke W, Gao Z }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \i\f0\fs22\insrsid12589696
625 \hich\af0\dbch\af31505\loch\f0 et al., }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 (2013) Diabetes increases mortality after myocardial infarction by oxidizing CaMKII. }{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0
626 \i\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 The journal of clinical investigation}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \b\f0\fs22\insrsid12589696 \hich\af0\dbch\af31505\loch\f0 123}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid12589696
627 \hich\af0\dbch\af31505\loch\f0 , 1262-1274.}{\rtlch\fcs1 \af0\afs22 \ltrch\fcs0 \f0\fs22\insrsid8796731\charrsid328727
628 \par }{\*\themedata 504b0304140006000800000021009be8704ffc0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb6ac3301045f785fe83d0b6d8
629 72ba28a5d8cea28f5d1f8bf40306796c8bd823214d42f2f71d3b2e941202856e04d2ccbdf7cca85c1fc641ed3126e7a9d2abbcd00ac9fac65157e9cfcd4b76af
630 5562a006064f58e92326bdaeafafcacd316052a2a654e99e393c18936c8f23a4dc0724a9b43e8ec0728d9d0960b7d0a1b92d8a3b633d3112673c79e8ba7cc216
631 7603abe7833c9f4844aed5e3a96f8aaa348430380b2ca066aa9ab3ba8843ba20dc53f38b2e5bc87251cee6a97721dd2c09efb29ae81a541f10f90d46e1302c43
632 e2cff31548468bf965e633d1be6d9dc5c6dbdd28ebc867e3c5ec4f00abff89fece34f3dfd65f000000ffff0300504b030414000600080000002100a5d6a7e7c0
633 000000360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4fc7060a
634 bb0884a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b63095120f88d9
635 4fbc52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462a1a82f
636 e353bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f7468656d652f
637 7468656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b4b0d59
638 2c9c070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b4757e8
639 d3f729e245eb2b260a0238fd010000ffff0300504b030414000600080000002100215aa28421070000db1d0000160000007468656d652f7468656d652f746865
640 6d65312e786d6cec594f6f1b4514bf23f11d467b2fb113274da23a55ecd80db469a3d82dea71bc3bf64e33bbb39a1927f10db547242444411ca8c48d03022ab5
641 1297f269024550a47e05deccecae77e271939400153487d63bfb7b6fdefbbd3ff367af5c3d4a183a2042529e3683fa7bb5009134e4114d47cde076bf7b693540
642 52e134c28ca7a4194c880cae6ebcfbce15bcae62921004f2a95cc7cd20562a5b5f5890210c63f91ecf480aef865c2458c1a3182d44021f82de842d2cd66a2b0b
643 09a66980529c80da5bc3210d09ea6b95c146a1bcc3e03155520f844cf4b46ae248186cb45fd70839916d26d00166cd00e689f8619f1ca900312c15bc680635f3
644 172c6c5c59c0ebb9105373642b725df397cbe502d1fea299538c06e5a4f56e63edf256a9df00989ac5753a9d76a75eea33001c86e0a9b5a5aab3d15dadb70a9d
645 1590fd39abbb5d5bae355c7c45ffd28ccd6bad566b792db7c52a3520fbb331835fadad3436171dbc0159fcf20cbed1da6cb7571cbc0159fcca0cbe7b796da5e1
646 e20d286634dd9f41eb8076bbb9f61232e46cdb0b5f05f86a2d874f51900d6576e929863c55f3722dc1f7b8e8024003195634456a9291210e218bdb98d181a07a
647 02bc4e70e58d1d0ae5cc909e0bc950d04c35830f320c1531d5f7f2d9772f9f3d41c7f79f1edffff1f8c183e3fb3f58458ed4364e4755a917df7cfac7a38fd0ef
648 4fbe7ef1f0733f5e56f1bf7cfff1cf3f7de60742f94ccd79fec5e35f9f3e7efee527bf7dfbd003df14785085f7694224ba490ed11e4fc031c38a6b391988f349
649 f4634cab129be948e214eb593cfa3b2a76d0372798610fae455c06ef08681f3ee0b5f13dc7e05e2cc62a8fb7e3d9f53871803b9cb316175e16aeebb92a34f7c7
650 e9c83fb91857717b181ff8e66ee3d4896f679c41dfa43e95ed983866ee329c2a3c22295148bfe3fb8478f8ba4ba9c3eb0e0d05977ca8d05d8a5a987a29e9d381
651 934d53a16d9a405c263e0321de0e373b77508b339fd75be4c045425560e631be4f9843e3353c5638f1a9ece3845509bf8155ec33b237116115d7910a223d228c
652 a34e44a4f4c9dc12e06f25e8d7a175f8c3bec326898b148aeefb74dec09c57915b7cbf1de324f3617b348dabd8f7e53ea42846bb5cf9e03bdcad10fd0c71c0e9
653 dc70dfa1c409f7e9dde0361d39264d1344bf190b4f2caf11eee46f6fc286989856034ddde9d5094d5fd5b813e8dbb9e317d7b8a1553effea91c7ee37b5656f02
654 09be9ad93ed1a8e7e14eb6e73617117df3bbf3161ea7bb040a6276897adb9cdf36e7e03fdf9ce7d5f3c5b7e469178606adb74c76a36db6ddc9dc5df79032d653
655 13466e48b3f196b0f6445d18d472e6c449ca535816c34f5dc93081831b096c6490e0ea43aae25e8c33d8b4d703ad642473d52389322ee1b06886bdba351e36fe
656 ca1e3597f521c4760e89d50e8fecf0921e2ece1aa51a63d5c81c688b8996b482b34eb67439570abebdce64756dd49967ab1bd34c5374662b5dd6149b4339505e
657 ba0683259bb0a941b015029657e0ccafa786c30e6624d2bcdb1815613151f87b42947b6d1d8971446c889ce10a9b7513bb228566fcd3eed91c391f9b256b40da
658 e94698b4989f3f6724b950302519044f56134babb5c55274d80cd69617970314e2ac190ce1980b3f930c8226f53610b311dc15854ad8ac3db5164d914e3d5ef3
659 67551d6e2ee6148c53c699906a0bcbd8c6d0bcca43c5523d93b57f71b9a193ed621cf03493b359b1b40a29f2af5901a176434b864312aa6ab02b239a3bfb9877
660 423e5644f4e2e8100dd858ec61083f70aafd89a884db0a53d0fa01aed634dbe695db5bf34e53bdd032383b8e5916e3bc5beaab99a2e22cdcf493d206f354310f
661 7cf3da6e9c3bbf2bbae22fca956a1affcf5cd1cb015c1e2c453a0221dcec0a8c74a534032e54cca10b65310dbb02d67dd33b205be07a165e03f970bf6cfe17e4
662 40ff6f6bceea30650d6740b547474850584e542c08d985b664b2ef1465f57ce9b12a59aec86454c55c9959b307e480b0beee812bba070728865437dd246f0306
663 7732ffdce7bc820623bd47a9d69bd3c9caa5d3d6c03fbd71b1c50c4e9dd84be8fc2df82f4d2c57f7e9ea67e58d78b146561dd12fa6bba4465115cee2b7b6964f
664 f59a269c6501aeacb5b663cd78bcb85c1807519cf51806cbfd4c06574048ff03eb1f1521b31f2bf482dae77bd05b117c7bb0fc21c8ea4bbaab4106e906697f0d
665 60df63076d32695596da7ce7a3592b16eb0bdea896f39e205b5b7696789f93ec7213e54ee7d4e245929d33ec706dc7e6520d913d59a230342cce212630e62b57
666 f543141fdc83406fc195ff98d94f533283275307d9ae30d935e0d124ffc9a45d706dd6e9338c46b2748f0c118d8e8af347c9842d21fb79a4d8221bb416d38956
667 0a2ef90e0dae608ed7a276b52c85174f172e25ccccd0b24b617397e653001fc7f2c6ad8f7680b74dd67aad8bab608aa57f85b23318efa7cc7bf2392b65f6a0f8
668 ca40bd0665eae8d594e54c0179b389079f370586a357cff45f58746ca69b94ddf8130000ffff0300504b0304140006000800000021000dd1909fb60000001b01
669 0000270000007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f78277086f6fd3ba109126
670 dd88d0add40384e4350d363f2451eced0dae2c082e8761be9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89d93b64b060828e6f37ed
671 1567914b284d262452282e3198720e274a939cd08a54f980ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd5001996509affb3fd381a89
672 672f1f165dfe514173d9850528a2c6cce0239baa4c04ca5bbabac4df000000ffff0300504b01022d00140006000800000021009be8704ffc0000001c02000013
673 00000000000000000000000000000000005b436f6e74656e745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6a7e7c000000036010000
674 0b000000000000000000000000002d0100005f72656c732f2e72656c73504b01022d00140006000800000021006b799616830000008a0000001c000000000000
675 00000000000000160200007468656d652f7468656d652f7468656d654d616e616765722e786d6c504b01022d0014000600080000002100215aa28421070000db
676 1d00001600000000000000000000000000d30200007468656d652f7468656d652f7468656d65312e786d6c504b01022d00140006000800000021000dd1909fb6
677 0000001b0100002700000000000000000000000000280a00007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d010000230b00000000}
678 {\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d
679 617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d6169
680 6e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363
681 656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e}
682 {\*\latentstyles\lsdstimax276\lsdlockeddef0\lsdsemihiddendef1\lsdunhideuseddef1\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal;
683 \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 1;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 2;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 3;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 4;
684 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 5;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 6;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 7;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 8;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 9;
685 \lsdpriority39 \lsdlocked0 toc 1;\lsdpriority39 \lsdlocked0 toc 2;\lsdpriority39 \lsdlocked0 toc 3;\lsdpriority39 \lsdlocked0 toc 4;\lsdpriority39 \lsdlocked0 toc 5;\lsdpriority39 \lsdlocked0 toc 6;\lsdpriority39 \lsdlocked0 toc 7;
686 \lsdpriority39 \lsdlocked0 toc 8;\lsdpriority39 \lsdlocked0 toc 9;\lsdqformat1 \lsdpriority35 \lsdlocked0 caption;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority10 \lsdlocked0 Title;\lsdpriority1 \lsdlocked0 Default Paragraph Font;
687 \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority22 \lsdlocked0 Strong;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis;
688 \lsdsemihidden0 \lsdunhideused0 \lsdpriority59 \lsdlocked0 Table Grid;\lsdunhideused0 \lsdlocked0 Placeholder Text;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;
689 \lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid;
690 \lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1;
691 \lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2;
692 \lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading;
693 \lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 1;
694 \lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;
695 \lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdunhideused0 \lsdlocked0 Revision;
696 \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;
697 \lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;
698 \lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;
699 \lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 2;
700 \lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;
701 \lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;
702 \lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;
703 \lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 2;
704 \lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 3;
705 \lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;
706 \lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;
707 \lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 3;
708 \lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;
709 \lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 4;
710 \lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;
711 \lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;
712 \lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;
713 \lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 5;
714 \lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;
715 \lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;
716 \lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;
717 \lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 5;
718 \lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 6;
719 \lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;
720 \lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;
721 \lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 6;
722 \lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;
723 \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis;
724 \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;
725 \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdpriority37 \lsdlocked0 Bibliography;\lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;}}{\*\datastore 010001000200000008000000556e6b6e6f776e00000000000000000000060000
726 d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff090006000000000000000000000001000000010000000000000000100000feffffff00000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
727 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
728 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
729 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
730 fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
731 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
732 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
733 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
734 ffffffffffffffffffffffffffffffff5200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e50000000000000000000000006175
735 7f4069d8cf01feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
736 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000
737 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
738 0000000000000000000000000000000000000000000000000100010000000000}}
+0
-26
tests/opensymbols.rtf.html less more
0 <!DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN>
1 <html>
2 <head>
3 <meta http-equiv="content-type" content="text/html; charset=utf-8">
4 <!-- Translation from RTF performed by UnRTF, version 0.21.5 -->
5 <!--font table contains 9 fonts total-->
6 <meta name="author" content="Dave Davey">
7 <!--creation date: 12 January 2013 15:46 -->
8 <!--revision date: -->
9 <!--last printed: -->
10 <!--comments: LibreOffice-->
11 </head>
12 <body><font color="#000000"><font face="Liberation Serif"><font size="3">&larr;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
13 arrowleft<br>
14 </font></font></font><font color="#000000">&uarr;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
15 <font face="Liberation Sans">arrowup</font><br>
16 </font><font color="#000000">&rarr;<font face="Liberation Sans">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
17 arrowright</font><br>
18 </font><font color="#000000">&darr;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
19 <font face="Liberation Sans">arrowdown</font><br>
20 </font><font color="#000000">&harr;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
21 <font face="Liberation Sans">arrowboth</font><br>
22 </font><font color="#000000">&#8597;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
23 <font face="Liberation Sans">arrowupdown</font><br>
24 </font></body>
25 </html>
+0
-27
tests/opensymbols.rtf.tex less more
0 \documentclass[11pt]{article}
1 \title{}
2 % Translation from RTF performed by UnRTF, version 0.21.5
3 % font table contains 9 fonts total
4 \author{Dave Davey}
5 % creation date: 12 January 2013 15:46
6 % revision date:
7 % last printed:
8 % comments: LibreOffice
9
10
11 \begin{document}
12 \maketitle
13
14 \normalsize{
15 arrowleft\par
16 }
17 arrowup\par
18
19 arrowright\par
20
21 arrowdown\par
22
23 arrowboth\par
24
25 arrowupdown\par
26 \end{document}
94279427 8e9b6a2acc01feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
94289428 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000
94299429 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
9430 0000000000000000000000000000000000000000000000000105000000000000}}
9430 0000000000000000000000000000000000000000000000000105000000000000}}
+0
-291
tests/pictNotIgnored.rtf.html less more
0 <!DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN>
1 <html>
2 <head>
3 <meta http-equiv="content-type" content="text/html; charset=utf-8">
4 <!-- Translation from RTF performed by UnRTF, version 0.21.5 -->
5 <!--font table contains 95 fonts total-->
6 <!--creation date: 14 June 2011 10:04 -->
7 <!--revision date: 14 June 2011 10:11 -->
8 <!--total pages: 4-->
9 <!--total words: 740-->
10 <!--total chars: 3856-->
11 </head>
12 <body><span style="font-size:11pt"><font face="Times New Roman"><font size="2"><br>
13 <br>
14 <br>
15 </font></font><font face="Times New Roman"><span style="font-size:1pt"><br>
16 </span></font></span><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
17 </font></font><font face="Times New Roman"><font color="#000000">Fran&ccedil;ois NONAMES</font></font><font face="Times New Roman"><font size="3">&nbsp;
18 </font></font><font face="Times New Roman"><font color="#000000">MR NONAMES NONAMES<br>
19 </font></font><font face="Times New Roman"><span style="font-size:1pt"><font color="#000000"><br>
20 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
21 </font></font><font face="Times New Roman"><font color="#000000">NONAMES<br>
22 </font></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
23 </font></font><font face="Times New Roman"><font color="#000000">ZI la Nonames-Rue Bai&egrave;re</font></font><font face="Times New Roman"><font size="3">&nbsp;
24 </font></font><font face="Times New Roman"><font color="#000000">METAIRIE NO NAMES<br>
25 </font></font><font face="Times New Roman"><span style="font-size:1pt"><font color="#000000"><br>
26 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
27 </font></font><font face="Times New Roman"><font color="#000000">22000 Sometown<br>
28 </font></font><font face="Times New Roman"><span style="font-size:5pt"><font color="#000000"><br>
29 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
30 </font></font><font face="Times New Roman"><font color="#000000">33000 NONAMES<br>
31 </font></font><font face="Times New Roman"><font size="2"><font color="#000000"><br>
32 </font></font></font><font face="Times New Roman"><span style="font-size:1pt"><font color="#000000"><br>
33 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
34 </font></font><font face="Times New Roman"><font color="#000000">Email : nonames@nonames.fr</font></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
35 </font></font><font face="Times New Roman"><font color="#000000">Sometown le, 14/06/2011<br>
36 </font></font><font face="Times New Roman"><span style="font-size:1pt"><font color="#000000"><br>
37 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
38 </font></font><font face="Times New Roman"><font size="3"><font color="#000000">Devis N&deg; : </font></font></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
39 </font></font><b><i><font face="Times New Roman"><font size="3"><font color="#000000">IXX 20110614 001<br>
40 </font></font></font></i></b><b><i><font face="Times New Roman"><span style="font-size:1pt"><font color="#000000"><br>
41 </font></span></font></i></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
42 </font></font><font face="Times New Roman"><font size="1"><font color="#000000">Version : 20110614-1003_12.23 / 12.23<br>
43 </font></font></font><font face="Times New Roman"><font size="2"><font color="#000000"><br>
44 </font></font></font><font face="Times New Roman"><span style="font-size:2pt"><font color="#000000"><br>
45 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
46 </font></font><font face="Times New Roman"><font size="3"><font color="#000000">R&eacute;f. client : <br>
47 </font></font></font><font face="Times New Roman"><span style="font-size:3pt"><font color="#000000"><br>
48 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
49 </font></font><i><font face="Times New Roman"><font size="3"><font color="#000000">Madame, Monsieur,<br>
50 Nous vous prions de trouver ci-dessous notre proposition suivant votre demande :<br>
51 </font></font></font></i><i><font face="Times New Roman"><font size="2"><font color="#000000"><br>
52 <br>
53 <br>
54 </font></font></font></i><i><font face="Times New Roman"><span style="font-size:4pt"><font color="#000000"><br>
55 </font></span></font></i><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
56 </font></font><font face="Times New Roman"><font size="5"><font color="#000000">ECOABRI - 9,30 M<br>
57 </font></font></font><font face="Times New Roman"><span style="font-size:9pt"><font color="#000000"><br>
58 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
59 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">CARACTERISTIQUES GENERALES : <br>
60 </font></u></font></font></b><b><font face="Times New Roman"><span style="font-size:6pt"><u><font color="#000000"><br>
61 </font></u></span></font></b><div align="justify">
62 <font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
63 </font></font><i><font face="Times New Roman"><font size="3"><u>Serre de production :</u></font></font></i><i><font face="Times New Roman"><font size="3"> cette structure est destin&eacute;e &agrave; un usage de production (horticole ou mara&icirc;ch&egrave;re) et n&rsquo;est pas pr&eacute;vue pour recevoir du public. BN SERRES ne peut garantir que cette structure r&eacute;ponde aux normes ERP et d&eacute;gage toute responsabilit&eacute; en cas de r&eacute;ception du public par l&rsquo;utilisateur.<br>
64 </font></font></i></div>
65 <font face="Times New Roman"><font size="2"><br>
66 </font></font><font face="Times New Roman"><span style="font-size:1pt"><br>
67 </span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
68 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">Dimensions<br>
69 </font></u></font></font></b><b><font face="Times New Roman"><span style="font-size:7pt"><u><font color="#000000"><br>
70 </font></u></span></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
71 </font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">1 unit&eacute; de 1 chapelle de 9,30 m de large par 40,00 m de long.<br>
72 <br>
73 </font></font></font></b><b><font face="Times New Roman"><span style="font-size:6pt"><font color="#000000"><br>
74 </font></span></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
75 </font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">Soit une surface de : 372,00 m&sup2;<br>
76 </font></font></font></b><b><font face="Times New Roman"><font size="1"><font color="#000000"><br>
77 </font></font></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
78 </font></font><b><font face="Times New Roman"><font size="3">&gt; Fermes tous les&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
79 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
80 1,00 m<br>
81 &gt; Hauteur fa&icirc;tage&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
82 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
83 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
84 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
85 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
86 3,90 m</font></font></b><font face="MS Shell Dlg"><font size="1"><br>
87 </font></font><b><font face="Times New Roman"><font size="3">&gt; D&eacute;gagement &agrave; 0.50 m&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
88 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
89 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
90 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
91 2,05 m<br>
92 </font></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
93 </font></font><font face="Times New Roman"><font size="3"><font color="#000000"><br>
94 Armature pr&eacute;vue avec 5 lignes d'entretoises.<br>
95 La hauteur de passage maximale en fa&ccedil;ade est de 2.50m<br>
96 </font></font></font><i><font face="Times New Roman"><span style="font-size:9pt"><font color="#000000"><br>
97 </font></span></font></i><font face="Times New Roman"><span style="font-size:7pt"><br>
98 </span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
99 </font></font><b><font face="Times New Roman"><font size="3"><u>Hypoth&egrave;ses de calcul<br>
100 </u></font></font></b><div align="justify">
101 <b><font face="Times New Roman"><font size="3"><u><br>
102 </u></font></font></b></div>
103 <div align="justify">
104 <font face="Times New Roman"><font size="3">Ce mat&eacute;riel est conforme &agrave; la norme </font></font><b><font face="Times New Roman"><font size="3">EN 13031 classe B 5</font></font></b><font face="Times New Roman"><font size="3"> <br>
105 </font></font></div>
106 <div align="justify">
107 <font face="Times New Roman"><font size="3">Il est homologu&eacute; par un bureau de contr&ocirc;le ind&eacute;pendant pour la r&eacute;gion :<br>
108 <br>
109 </font></font></div>
110 <font face="Times New Roman"><font size="3">&gt; Neige : </font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">4</font></font></font></b><font face="Courier New"><span style="font-size:9pt"><font color="#000000"> </font></span></font><font face="Times New Roman"><font size="3"><font color="#000000">suivant la norme ENV 1991-2-3 d&rsquo;octobre 1997<br>
111 &gt; Vent : </font></font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">2 </font></font></font></b><font face="Times New Roman"><font size="3"><font color="#000000">suivant la norme ENV 1991-2-4 de septembre 2000<br>
112 &gt; Site : </font></font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">EXPOSE</font></font></font></b><font face="Times New Roman"><font size="3"><font color="#000000"><br>
113 &gt; Altitude maximum d&rsquo;implantation : </font></font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">702 m </font></font></font></b><font face="MS Shell Dlg"><font size="1"><font color="#000000"><br>
114 </font></font></font><font face="Times New Roman"><font size="3"><br>
115 </font></font><font face="Times New Roman"><font size="2"><br>
116 <br>
117 <br>
118 <br>
119 </font></font><font face="Times New Roman"><span style="font-size:3pt"><br>
120 </span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
121 </font></font><b><font face="Times New Roman"><font size="3"><u>Ancrage au sol :<br>
122 </u></font></font></b><font face="Times New Roman"><font size="3"><br>
123 </font></font><font face="Times New Roman"><font size="3"><u>Buttage au sol:<br>
124 </u></font></font><font face="Times New Roman"><font size="3">L&rsquo;armature est pos&eacute;e au sol, l&rsquo;ancrage est assur&eacute; par le </font></font><b><font face="Times New Roman"><font size="3">film de couverture butt</font></font></b>&eacute;<font face="Times New Roman"><font size="3">.<br>
125 </font></font><font face="Times New Roman"><font size="3">Les </font></font><b><font face="Times New Roman"><font size="3">croix</font></font></b><font face="Times New Roman"><font size="3">, reliant les arceaux aux entretoises au sol, p&eacute;n&egrave;trent d&rsquo;environ </font></font><b><font face="Times New Roman"><font size="3">12</font></font></b><font face="Times New Roman"><font size="3"> centim&egrave;tres.</font></font><font face="Times New Roman"><font size="3"><u><br>
126 </u></font></font><font face="Times New Roman"><font size="3"><br>
127 </font></font><font face="Times New Roman"><font size="2"><br>
128 <br>
129 </font></font><font face="Times New Roman"><span style="font-size:2pt"><br>
130 </span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
131 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">OSSATURE : <br>
132 </font></u></font></font></b><font face="Times New Roman"><font size="3"><font color="#000000"><br>
133 </font></font></font><b><font face="Times New Roman"><span style="font-size:3pt"><u><font color="#000000"><br>
134 </font></u></span></font></b><div align="justify">
135 <font face="Times New Roman"><font size="3"><font color="#000000">L&rsquo;ensemble de l&rsquo;ossature est r&eacute;alis&eacute; en tube acier galvanis&eacute; </font></font></font><font face="Times New Roman"><font size="3"><font color="#000000">Sendzimir</font></font></font><font face="Times New Roman"><font size="3"><font color="#000000"> </font></font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">Z275 (275 g/m</font></font></font></b><b><font face="Times New Roman"><font size="3"><font color="#000000"><sup>2</sup></font></font></font></b><b><font face="Times New Roman"><font size="3"><font color="#000000">)</font></font></font></b><font face="Times New Roman"><font size="3"><font color="#000000"> conforme aux normes </font></font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">NF EN 10 025, 10 326 et 10 327</font></font></font></b><font face="Times New Roman"><font size="3"><font color="#000000">. Toute la visserie et la boulonnerie est zingu&eacute;e et bichromat&eacute;e aux normes </font></font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">NF EN ISO 4017-4014-4032-4042</font></font></font></b><font face="Times New Roman"><font size="3"><font color="#000000">.<br>
136 <br>
137 </font></font></font></div>
138 <div align="justify">
139 <font face="Times New Roman"><font size="3"><font color="#000000">&gt; Arceaux de ferme en tube ovale </font></font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">70 &times; 42 mm</font></font></font></b><font face="Times New Roman"><font size="3"><font color="#000000"> issu d&rsquo;un tube rond </font></font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">diam&egrave;tre 60 mm</font></font></font></b><font face="Times New Roman"><font size="3"><font color="#000000"><br>
140 &gt; Entretoise en tube rond diam&egrave;tre</font></font></font><b><font face="Times New Roman"><font size="3"><font color="#000000"> 32 mm </font></font></font></b><font face="Times New Roman"><font size="3"><font color="#000000">et &eacute;l&eacute;ments </font></font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">d&rsquo;extr&eacute;mit&eacute;s renforc&eacute;s<br>
141 </font></font></font></b><font face="Times New Roman"><font size="3"><font color="#000000">&gt; Liaison des arches par croix &agrave; </font></font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">double point de soudure</font></font></font></b><font face="Times New Roman"><font size="3"><font color="#000000"><br>
142 </font></font></font></div>
143 <font face="Times New Roman"><font size="3"><br>
144 </font></font><i><font face="Times New Roman"><span style="font-size:9pt"><font color="#000000"><br>
145 </font></span></font></i><div align="justify">
146 <font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
147 </font></font><b><font face="Times New Roman"><font size="3"><u><br>
148 Stabilit&eacute; transversale et longitudinale </u></font></font></b><b><font face="Times New Roman"><font size="3">(Mod&egrave;le C)<br>
149 </font></font></b><font face="Times New Roman"><font size="3"><br>
150 </font></font></div>
151 <font face="Times New Roman"><font size="3"><br>
152 </font></font><font face="Times New Roman"><span style="font-size:4pt"><br>
153 </span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
154 </font></font><font face="Times New Roman"><font size="3"></font></font><font face="Times New Roman"><font size="3"><br>
155 </font></font><font face="Times New Roman"><font size="2"><br>
156 </font></font><font face="Times New Roman"><span style="font-size:2pt"><br>
157 </span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
158 </font></font><font face="Times New Roman"><font size="3"></font></font><font face="Times New Roman"><font size="3"><br>
159 </font></font><font face="Times New Roman"><font size="3"><p><hr><p>
160 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
161 </font></font><i><font face="Times New Roman"><span style="font-size:9pt"><font color="#000000"><br>
162 </font></span></font></i><font face="Times New Roman"><font size="3"><br>
163 </font></font><font face="Times New Roman"><font size="2"><br>
164 <br>
165 </font></font><font face="Times New Roman"><span style="font-size:7pt"><br>
166 </span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
167 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">COUVERTURE<br>
168 </font></u></font></font></b><b><font face="Times New Roman"><span style="font-size:5pt"><u><font color="#000000"><br>
169 </font></u></span></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
170 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">1 ligne de 40 m pour couverture Simple Paroi butt&eacute;e en bas sur toute la longueur<br>
171 </font></u></font></font></b><b><font face="Times New Roman"><span style="font-size:1pt"><u><font color="#000000"><br>
172 </font></u></span></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
173 </font></font><font face="Times New Roman"><font size="3"><font color="#000000"> - Habillage film SBE 250 microns vert 4 saisons<br>
174 </font></font></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
175 </font></font><font face="Times New Roman"><font size="3"><font color="#000000"> La couverture Simple Paroi repose sur des fils plastique NYLSTRONG<br>
176 La tension est assur&eacute;e par des attaches galvanis&eacute;es.<br>
177 </font></font></font><font face="Times New Roman"><font size="2"><font color="#000000"><br>
178 <br>
179 </font></font></font><font face="Times New Roman"><span style="font-size:5pt"><font color="#000000"><br>
180 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
181 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">LONGPAN : <br>
182 </font></u></font></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
183 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">1 ligne de 80 m de bardage identique &agrave; la toiture<br>
184 </font></u></font></font></b><b><font face="Times New Roman"><span style="font-size:1pt"><u><font color="#000000"><br>
185 </font></u></span></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
186 </font></font><font face="Times New Roman"><font size="3"><font color="#000000"> - Habillage identique &agrave; la toiture<br>
187 <br>
188 </font></font></font><font face="Times New Roman"><font size="2"><font color="#000000"><br>
189 <br>
190 </font></font></font><font face="Times New Roman"><span style="font-size:5pt"><font color="#000000"><br>
191 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
192 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">FACADES : <br>
193 </font></u></font></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
194 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">1 ensemble de 2 fa&ccedil;ades avec :<br>
195 </font></u></font></font></b><b><font face="Times New Roman"><span style="font-size:1pt"><u><font color="#000000"><br>
196 </font></u></span></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
197 </font></font><font face="Times New Roman"><font size="3"><font color="#000000"> - Bas de fa&ccedil;ade nu sans bardage<br>
198 - Haut de fa&ccedil;ade nu sans bardage sans habillage<br>
199 - La fixation du film de couverture sur les fermes d'extr&eacute;mit&eacute; est assur&eacute;e par un clip aluminium double<br>
200 </font></font></font><font face="Times New Roman"><font size="3"><font color="#000000"> permettant l&rsquo;installation de brise &ndash;vent non fourni ici</font></font></font><i><font face="Times New Roman"><span style="font-size:9pt"><font color="#000000"><br>
201 </font></span></font></i><font face="Times New Roman"><font size="2"><br>
202 <br>
203 </font></font><font face="Times New Roman"><span style="font-size:1pt"><br>
204 </span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
205 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">MONTAGE<br>
206 </font></u></font></font></b><b><font face="Times New Roman"><font size="2"><u><font color="#000000"><br>
207 </font></u></font></font></b><b><font face="Times New Roman"><span style="font-size:1pt"><u><font color="#000000"><br>
208 </font></u></span></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
209 </font></font><b><font face="Times New Roman"><font size="3"><font color="#000000">Non compris dans cette offre.<br>
210 </font></font></font></b><b><font face="Times New Roman"><font size="1"><font color="#000000"><br>
211 </font></font></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
212 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">D&Eacute;MARCHES ADMINISTRATIVES D'URBANISMES</font></u></font></font></b><font face="Times New Roman"><font size="3"><font color="#000000"><br>
213 </font></font></font><i><font face="Times New Roman"><font size="3"><font color="#000000">Les d&eacute;marches administratives d'urbanismes (d&eacute;claration de travaux ou permis de construire) restent &agrave; la charge du client.<br>
214 <br>
215 Le client s&rsquo;oblige &agrave; r&eacute;aliser toutes les d&eacute;marches administratives n&eacute;cessaires &agrave; son projet. En cas de montage par la soci&eacute;t&eacute; BN SERRES, celle-ci exigera une copie de l&rsquo;accord de permis de construire ou de travaux avant de d&eacute;marrer le chantier.</font></font></font></i><font face="Times New Roman"><font size="3"><font color="#000000"> </font></font></font><font face="MS Shell Dlg"><font size="1"><font color="#000000"><br>
216 </font></font></font><i><font face="Times New Roman"><span style="font-size:9pt"><font color="#000000"><br>
217 </font></span></font></i><font face="Times New Roman"><span style="font-size:1pt"><br>
218 </span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
219 </font></font><b><font face="Times New Roman"><span style="font-size:16pt"><u><font color="#000000">CONDITIONS DE L'OFFRE : <br>
220 </font></u></span></font></b><b><font face="Times New Roman"><span style="font-size:6pt"><u><font color="#000000"><br>
221 </font></u></span></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
222 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">Livraison : <br>
223 </font></u></font></font></b><b><font face="Times New Roman"><font size="2"><u><font color="#000000"><br>
224 </font></u></font></font></b><b><font face="Times New Roman"><span style="font-size:5pt"><u><font color="#000000"><br>
225 </font></u></span></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
226 </font></font><font face="Times New Roman"><font size="3"><font color="#000000">&gt;Transport compris par semi-remorque<br>
227 &gt; D&eacute;chargement &agrave; la charge du client<br>
228 &gt; Poids total du mat&eacute;riel : 2 521 kg<br>
229 </font></font></font><font face="Times New Roman"><span style="font-size:1pt"><font color="#000000"><br>
230 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
231 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">R&egrave;glement :<br>
232 </font></u></font></font></b><b><font face="Times New Roman"><font size="2"><u><font color="#000000"><br>
233 </font></u></font></font></b><b><font face="Times New Roman"><span style="font-size:7pt"><u><font color="#000000"><br>
234 </font></u></span></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
235 </font></font><font face="Times New Roman"><font size="3"><font color="#000000">&gt; Ch&egrave;que &agrave; 30 jours date de facture<br>
236 </font></font></font><font face="Times New Roman"><span style="font-size:5pt"><font color="#000000"><br>
237 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
238 </font></font><b><font face="Times New Roman"><font size="3"><u><font color="#000000">Facturation :<br>
239 </font></u></font></font></b><b><font face="Times New Roman"><span style="font-size:9pt"><u><font color="#000000"><br>
240 </font></u></span></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
241 </font></font><font face="Times New Roman"><font size="3"><font color="#000000">&gt; 20</font></font></font><font face="Times New Roman"><font size="3"><font color="#000000"> % &agrave; la commande<br>
242 </font></font></font><font face="Times New Roman"><font size="3"><font color="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
243 &gt; 80</font></font></font><font face="Times New Roman"><font size="3"><font color="#000000"> % &agrave; la livraison<br>
244 </font></font></font><font face="Times New Roman"><span style="font-size:9pt"><font color="#000000"><br>
245 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
246 </font></font><b><font face="Times New Roman"><span style="font-size:16pt"><u><font color="#000000">MONTANT DU DEVIS : <br>
247 </font></u></span></font></b><i><font face="Times New Roman"><font size="3"><font color="#000000"><br>
248 </font></font></font></i><font face="Times New Roman"><font size="3"><br>
249 </font></font><font face="Times New Roman"><span style="font-size:1pt"><br>
250 </span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
251 </font></font><i><font face="Times New Roman"><font size="3"><font color="#000000">Serre de 1 unit&eacute; de 1 chapelle de 9,30 m de large d'une surface de 372,00 m&sup2;<br>
252 </font></font></font></i><i><font face="Times New Roman"><span style="font-size:4pt"><font color="#000000"><br>
253 </font></span></font></i><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
254 </font></font><b><font face="Times New Roman"><font size="4"><font color="#000000">Montant H.T.</font></font></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;
255 </font></font><b><font face="Times New Roman"><font size="4"><font color="#000000">0 000,00</font></font></font></b><b><font face="Times New Roman"><font size="4"><font color="#000000"> &euro;<br>
256 </font></font></font></b><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
257 </font></font><font face="Times New Roman"><font size="4"><font color="#000000">T.V.A.19,60%</font></font></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;
258 </font></font><font face="Times New Roman"><font size="4"><font color="#000000">1&nbsp;000,20</font></font></font><font face="Times New Roman"><font size="4"><font color="#000000"> &euro;<br>
259 </font></font></font><font face="Times New Roman"><span style="font-size:1pt"><font color="#000000"><br>
260 </font></span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
261 </font></font><font face="Times New Roman"><font size="4"><font color="#000000">Total T.T.C.</font></font></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;
262 </font></font><font face="Times New Roman"><font size="4"><font color="#000000">00&nbsp;000,20</font></font></font><font face="Times New Roman"><font size="4"><font color="#000000"> &euro;<br>
263 </font></font></font><font face="Times New Roman"><span style="font-size:6pt"><font color="#000000"><br>
264 </font></span></font><div align="justify">
265 <font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
266 Nos prix sont garantis pendant une p&eacute;riode de 15 jours &agrave; compter de la date mentionn&eacute;e en ent&ecirc;te. Ils seront r&eacute;visables apr&egrave;s cette date en fonction des conditions &eacute;conomiques en vigueur.<br>
267 <br>
268 Le client reconna&icirc;t avoir pris connaissance des Conditions G&eacute;n&eacute;rales de Ventes situ&eacute;es au verso ou dans le document joint &agrave; cette offre pour les envois par e-mail et les accepte.<br>
269 </font></font></div>
270 <font face="Times New Roman"><font size="3"><br>
271 </font></font><div align="justify">
272 <font face="Times New Roman"><font size="3">Nous avons &eacute;tabli ce devis en respectant les donn&eacute;es que vous nous avez communiqu&eacute;es.<br>
273 <br>
274 Nous restons, cependant &agrave; votre enti&egrave;re disposition, pour tous renseignements compl&eacute;mentaires qui pourraient &ecirc;tre utiles &agrave; la bonne r&eacute;alisation de votre projet.<br>
275 <br>
276 Recevez, Madame, Monsieur, l&rsquo;expression de nos sinc&egrave;res salutations.</font></font><font face="MS Shell Dlg"><font size="1"><br>
277 </font></font></div>
278 <font face="Times New Roman"><font size="3"><br>
279 </font></font><font face="Times New Roman"><span style="font-size:1pt"><br>
280 </span></font><font face="Times New Roman"><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
281 </font></font><b><i><font face="Times New Roman"><font size="3"><font color="#000000">Fran&ccedil;ois NONAMES<br>
282 </font></font></font></i></b><b><i><font face="Times New Roman"><font size="3"><font color="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
283 T&eacute;l 06 12 34 56 78</font></font></font></i></b><b><i><font face="Times New Roman"><font size="3"><font color="#000000"><br>
284 </font></font></font></i></b><b><i><font face="Times New Roman"><font size="3"><font color="#000000"><br>
285 </font></font></font></i></b><div align="justify">
286 <font face="Times New Roman"><font size="3">Pour confirmer votre accord, merci de nous retourner ce devis dat&eacute; et sign&eacute;.</font></font><font face="MS Shell Dlg"><font size="1"><br>
287 </font></font></div>
288 <font face="Times New Roman"><font size="3"><br>
289 </font></font></body>
290 </html>
+0
-309
tests/pictNotIgnored.rtf.tex less more
0 \documentclass[11pt]{article}
1 \title{}
2 % Translation from RTF performed by UnRTF, version 0.21.5
3 % font table contains 95 fonts total
4 % creation date: 14 June 2011 10:04
5 % revision date: 14 June 2011 10:11
6 % total pages: 4
7 % total words: 740
8 % total chars: 3856
9
10
11 \begin{document}
12 \maketitle
13
14 \normalsize{\small{\par
15 \par
16 \par
17 }\tiny{\par
18 }}\normalsize{
19 }Fran\c{c}ois NONAMES\normalsize{
20 }MR NONAMES NONAMES\par
21 \tiny{\par
22 }\normalsize{
23 }NONAMES\par
24 \normalsize{
25 }ZI la Nonames-Rue Bai\`{e}re\normalsize{
26 }METAIRIE NO NAMES\par
27 \tiny{\par
28 }\normalsize{
29 }22000 Sometown\par
30 \tiny{\par
31 }\normalsize{
32 }33000 NONAMES\par
33 \small{\par
34 }\tiny{\par
35 }\normalsize{
36 }Email : nonames@nonames.fr\normalsize{
37 }Sometown le, 14/06/2011\par
38 \tiny{\par
39 }\normalsize{
40 }\normalsize{Devis N\o : }\normalsize{
41 }{\bf {\it \normalsize{IXX 20110614 001\par
42 }}}{\bf {\it \tiny{\par
43 }}}\normalsize{
44 }\tiny{Version : 20110614-1003\_12.23 / 12.23\par
45 }\small{\par
46 }\tiny{\par
47 }\normalsize{
48 }\normalsize{R\'{e}f. client : \par
49 }\tiny{\par
50 }\normalsize{
51 }{\it \normalsize{Madame, Monsieur,\par
52 Nous vous prions de trouver ci-dessous notre proposition suivant votre demande :\par
53 }}{\it \small{\par
54 \par
55 \par
56 }}{\it \tiny{\par
57 }}\normalsize{
58 }{\Large ECOABRI - 9,30 M\par
59 }\small{\par
60 }\normalsize{
61 }{\bf \normalsize{CARACTERISTIQUES GENERALES : \par
62
63 }}{\bf \tiny{\par
64
65 }}\normalsize{
66 }{\it \normalsize{Serre de production :
67 }}{\it \normalsize{ cette structure est destin\'{e}e \`{a} un usage de production (horticole ou mara\o{i}ch\`{e}re) et nest pas pr\'{e}vue pour recevoir du public. BN SERRES ne peut garantir que cette structure r\'{e}ponde aux normes ERP et d\'{e}gage toute responsabilit\'{e} en cas de r\'{e}ception du public par lutilisateur.\par
68 }}\small{\par
69 }\tiny{\par
70 }\normalsize{
71 }{\bf \normalsize{Dimensions\par
72
73 }}{\bf \tiny{\par
74
75 }}\normalsize{
76 }{\bf \normalsize{1 unit\'{e} de 1 chapelle de 9,30 m de large par 40,00 m de long.\par
77 \par
78 }}{\bf \tiny{\par
79 }}\normalsize{
80 }{\bf \normalsize{Soit une surface de : 372,00 m$^{2}$\par
81 }}{\bf \tiny{\par
82 }}\normalsize{
83 }{\bf \normalsize{> Fermes tous les
84
85 1,00 m\par
86 > Hauteur fa\o{i}tage
87
88
89
90
91 3,90 m}}\tiny{\par
92 }{\bf \normalsize{> D\'{e}gagement \`{a} 0.50 m
93
94
95
96 2,05 m\par
97 }}\normalsize{
98 }\normalsize{\par
99 Armature pr\'{e}vue avec 5 lignes d'entretoises.\par
100 La hauteur de passage maximale en fa\c{c}ade est de 2.50m\par
101 }{\it \small{\par
102 }}\tiny{\par
103 }\normalsize{
104 }{\bf \normalsize{Hypoth\`{e}ses de calcul\par
105
106 }}{\bf \normalsize{\par
107
108 }}\normalsize{Ce mat\'{e}riel est conforme \`{a} la norme }{\bf \normalsize{EN 13031 classe B 5}}\normalsize{ \par
109 }\normalsize{Il est homologu\'{e} par un bureau de contr\o{o}le ind\'{e}pendant pour la r\'{e}gion :\par
110 \par
111 }\normalsize{> Neige : }{\bf \normalsize{4}}\small{ }\normalsize{suivant la norme ENV 1991-2-3 doctobre 1997\par
112 > Vent : }{\bf \normalsize{2 }}\normalsize{suivant la norme ENV 1991-2-4 de septembre 2000\par
113 > Site : }{\bf \normalsize{EXPOSE}}\normalsize{\par
114 > Altitude maximum dimplantation : }{\bf \normalsize{702 m }}\tiny{\par
115 }\normalsize{\par
116 }\small{\par
117 \par
118 \par
119 \par
120 }\tiny{\par
121 }\normalsize{
122 }{\bf \normalsize{Ancrage au sol :\par
123
124 }}\normalsize{\par
125 }\normalsize{Buttage au sol:\par
126
127 }\normalsize{Larmature est pos\'{e}e au sol, lancrage est assur\'{e} par le }{\bf \normalsize{film de couverture butt}}\'{e}\normalsize{.\par
128 }\normalsize{Les }{\bf \normalsize{croix}}\normalsize{, reliant les arceaux aux entretoises au sol, p\'{e}n\`{e}trent denviron }{\bf \normalsize{12}}\normalsize{ centim\`{e}tres.}\normalsize{\par
129
130 }\normalsize{\par
131 }\small{\par
132 \par
133 }\tiny{\par
134 }\normalsize{
135 }{\bf \normalsize{OSSATURE : \par
136
137 }}\normalsize{\par
138 }{\bf \tiny{\par
139
140 }}\normalsize{Lensemble de lossature est r\'{e}alis\'{e} en tube acier galvanis\'{e} }\normalsize{Sendzimir}\normalsize{ }{\bf \normalsize{Z275 (275 g/m}}{\bf \normalsize{$^{2}$}}{\bf \normalsize{)}}\normalsize{ conforme aux normes }{\bf \normalsize{NF EN 10 025, 10 326 et 10 327}}\normalsize{. Toute la visserie et la boulonnerie est zingu\'{e}e et bichromat\'{e}e aux normes }{\bf \normalsize{NF EN ISO 4017-4014-4032-4042}}\normalsize{.\par
141 \par
142 }\normalsize{> Arceaux de ferme en tube ovale }{\bf \normalsize{70 \mult 42 mm}}\normalsize{ issu dun tube rond }{\bf \normalsize{diam\`{e}tre 60 mm}}\normalsize{\par
143 > Entretoise en tube rond diam\`{e}tre}{\bf \normalsize{ 32 mm }}\normalsize{et \'{e}l\'{e}ments }{\bf \normalsize{dextr\'{e}mit\'{e}s renforc\'{e}s\par
144 }}\normalsize{> Liaison des arches par croix \`{a} }{\bf \normalsize{double point de soudure}}\normalsize{\par
145 }\normalsize{\par
146 }{\it \small{\par
147 }}\normalsize{
148 }{\bf \normalsize{\par
149 Stabilit\'{e} transversale et longitudinale
150 }}{\bf \normalsize{(Mod\`{e}le C)\par
151 }}\normalsize{\par
152 }\normalsize{\par
153 }\tiny{\par
154 }\normalsize{
155 }\normalsize{}\normalsize{\par
156 }\small{\par
157 }\tiny{\par
158 }\normalsize{
159 }\normalsize{}\normalsize{\par
160 }\normalsize{\pagebreak
161 }{\it \small{\par
162 }}\normalsize{\par
163 }\small{\par
164 \par
165 }\tiny{\par
166 }\normalsize{
167 }{\bf \normalsize{COUVERTURE\par
168
169 }}{\bf \tiny{\par
170
171 }}\normalsize{
172 }{\bf \normalsize{1 ligne de 40 m pour couverture Simple Paroi butt\'{e}e en bas sur toute la longueur\par
173
174 }}{\bf \tiny{\par
175
176 }}\normalsize{
177 }\normalsize{ - Habillage film SBE 250 microns vert 4 saisons\par
178 }\normalsize{
179 }\normalsize{ La couverture Simple Paroi repose sur des fils plastique NYLSTRONG\par
180 La tension est assur\'{e}e par des attaches galvanis\'{e}es.\par
181 }\small{\par
182 \par
183 }\tiny{\par
184 }\normalsize{
185 }{\bf \normalsize{LONGPAN : \par
186
187 }}\normalsize{
188 }{\bf \normalsize{1 ligne de 80 m de bardage identique \`{a} la toiture\par
189
190 }}{\bf \tiny{\par
191
192 }}\normalsize{
193 }\normalsize{ - Habillage identique \`{a} la toiture\par
194 \par
195 }\small{\par
196 \par
197 }\tiny{\par
198 }\normalsize{
199 }{\bf \normalsize{FACADES : \par
200
201 }}\normalsize{
202 }{\bf \normalsize{1 ensemble de 2 fa\c{c}ades avec :\par
203
204 }}{\bf \tiny{\par
205
206 }}\normalsize{
207 }\normalsize{ - Bas de fa\c{c}ade nu sans bardage\par
208 - Haut de fa\c{c}ade nu sans bardage sans habillage\par
209 - La fixation du film de couverture sur les fermes d'extr\'{e}mit\'{e} est assur\'{e}e par un clip aluminium double\par
210 }\normalsize{ permettant linstallation de brise vent non fourni ici}{\it \small{\par
211 }}\small{\par
212 \par
213 }\tiny{\par
214 }\normalsize{
215 }{\bf \normalsize{MONTAGE\par
216
217 }}{\bf \small{\par
218
219 }}{\bf \tiny{\par
220
221 }}\normalsize{
222 }{\bf \normalsize{Non compris dans cette offre.\par
223 }}{\bf \tiny{\par
224 }}\normalsize{
225 }{\bf \normalsize{D\'{E}MARCHES ADMINISTRATIVES D'URBANISMES
226 }}\normalsize{\par
227 }{\it \normalsize{Les d\'{e}marches administratives d'urbanismes (d\'{e}claration de travaux ou permis de construire) restent \`{a} la charge du client.\par
228 \par
229 Le client soblige \`{a} r\'{e}aliser toutes les d\'{e}marches administratives n\'{e}cessaires \`{a} son projet. En cas de montage par la soci\'{e}t\'{e} BN SERRES, celle-ci exigera une copie de laccord de permis de construire ou de travaux avant de d\'{e}marrer le chantier.}}\normalsize{ }\tiny{\par
230 }{\it \small{\par
231 }}\tiny{\par
232 }\normalsize{
233 }{\bf {\Large CONDITIONS DE L'OFFRE : \par
234
235 }}{\bf \tiny{\par
236
237 }}\normalsize{
238 }{\bf \normalsize{Livraison : \par
239
240 }}{\bf \small{\par
241
242 }}{\bf \tiny{\par
243
244 }}\normalsize{
245 }\normalsize{>Transport compris par semi-remorque\par
246 > D\'{e}chargement \`{a} la charge du client\par
247 > Poids total du mat\'{e}riel : 2 521 kg\par
248 }\tiny{\par
249 }\normalsize{
250 }{\bf \normalsize{R\`{e}glement :\par
251
252 }}{\bf \small{\par
253
254 }}{\bf \tiny{\par
255
256 }}\normalsize{
257 }\normalsize{> Ch\`{e}que \`{a} 30 jours date de facture\par
258 }\tiny{\par
259 }\normalsize{
260 }{\bf \normalsize{Facturation :\par
261
262 }}{\bf \small{\par
263
264 }}\normalsize{
265 }\normalsize{> 20}\normalsize{ \% \`{a} la commande\par
266 }\normalsize{
267 > 80}\normalsize{ \% \`{a} la livraison\par
268 }\small{\par
269 }\normalsize{
270 }{\bf {\Large MONTANT DU DEVIS : \par
271
272 }}{\it \normalsize{\par
273 }}\normalsize{\par
274 }\tiny{\par
275 }\normalsize{
276 }{\it \normalsize{Serre de 1 unit\'{e} de 1 chapelle de 9,30 m de large d'une surface de 372,00 m$^{2}$\par
277 }}{\it \tiny{\par
278 }}\normalsize{
279 }{\bf {\large Montant H.T.}}\normalsize{
280 }{\bf {\large 0 000,00}}{\bf {\large ¬\par
281 }}\normalsize{
282 }{\large T.V.A.19,60\%}\normalsize{
283 }{\large 1000,20}{\large ¬\par
284 }\tiny{\par
285 }\normalsize{
286 }{\large Total T.T.C.}\normalsize{
287 }{\large 00000,20}{\large ¬\par
288 }\tiny{\par
289 }\normalsize{
290 Nos prix sont garantis pendant une p\'{e}riode de 15 jours \`{a} compter de la date mentionn\'{e}e en ent\o{e}te. Ils seront r\'{e}visables apr\`{e}s cette date en fonction des conditions \'{e}conomiques en vigueur.\par
291 \par
292 Le client reconna\o{i}t avoir pris connaissance des Conditions G\'{e}n\'{e}rales de Ventes situ\'{e}es au verso ou dans le document joint \`{a} cette offre pour les envois par e-mail et les accepte.\par
293 }\normalsize{\par
294 }\normalsize{Nous avons \'{e}tabli ce devis en respectant les donn\'{e}es que vous nous avez communiqu\'{e}es.\par
295 \par
296 Nous restons, cependant \`{a} votre enti\`{e}re disposition, pour tous renseignements compl\'{e}mentaires qui pourraient \o{e}tre utiles \`{a} la bonne r\'{e}alisation de votre projet.\par
297 \par
298 Recevez, Madame, Monsieur, lexpression de nos sinc\`{e}res salutations.}\tiny{\par
299 }\normalsize{\par
300 }\tiny{\par
301 }\normalsize{
302 }{\bf {\it \normalsize{Fran\c{c}ois NONAMES\par
303 }}}{\bf {\it \normalsize{
304 T\'{e}l 06 12 34 56 78}}}{\bf {\it \normalsize{\par
305 }}}{\bf {\it \normalsize{\par
306 }}}\normalsize{Pour confirmer votre accord, merci de nous retourner ce devis dat\'{e} et sign\'{e}.}\tiny{\par
307 }\normalsize{\par
308 }\end{document}
+0
-13
tests/unnested.rtf.html less more
0 <!DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN>
1 <html>
2 <head>
3 <meta http-equiv="content-type" content="text/html; charset=utf-8">
4 <!-- Translation from RTF performed by UnRTF, version 0.21.5 -->
5 <!--font table contains 0 fonts total-->
6 <!--invalid font number 0-->
7 </head>
8 <body><font size="3"><font color="#000000">Test of b0 unbolding<br>
9 </font></font><!--invalid font number 1-->
10 <span style="font-size:13pt"><font color="#1a1a1a">Normal text in a paragraph. I copied this structure from a RTF document created by Mac OSX, but changed the text. Most of the head matter and other flags are probably irrelevant, but included here for completeness. There is &nbsp;this funny flag too. <b><u>Here's some bold and underlined stuff.</u></b><u></u> Now bold and underline should both be off, although they are taken off in the same order they were put on instead of in nested fashion.<br>
11 </font></span></body>
12 </html>
+0
-16
tests/unnested.rtf.tex less more
0 \documentclass[11pt]{article}
1 \title{}
2 % Translation from RTF performed by UnRTF, version 0.21.5
3 % font table contains 0 fonts total
4 % invalid font number 0
5
6
7 \begin{document}
8 \maketitle
9
10 \normalsize{Test of b0 unbolding\par
11 }% invalid font number 1
12 {\large Normal text in a paragraph. I copied this structure from a RTF document created by Mac OSX, but changed the text. Most of the head matter and other flags are probably irrelevant, but included here for completeness. There is \:this funny flag too. {\bf Here's some bold and underlined stuff.
13 }
14 Now bold and underline should both be off, although they are taken off in the same order they were put on instead of in nested fashion.\par
15 }\end{document}