forked from organicmaps/organicmaps
Add fribidi library.
Correct drawable string in yg::gl::GeometryBatcher.
This commit is contained in:
parent
9644ad16b2
commit
9fa2f1dbdd
159 changed files with 93255 additions and 8 deletions
|
@ -1,8 +1,8 @@
|
|||
# Projct that includes all third party projects.
|
||||
# Project that includes all third party projects.
|
||||
|
||||
TEMPLATE = subdirs
|
||||
|
||||
SUBDIRS = expat freetype
|
||||
SUBDIRS = expat freetype fribidi
|
||||
|
||||
!iphonesimulator-g++42 {
|
||||
!iphonedevice-g++42 {
|
||||
|
|
40
3party/fribidi/AUTHORS
Normal file
40
3party/fribidi/AUTHORS
Normal file
|
@ -0,0 +1,40 @@
|
|||
behdad: Behdad Esfahbod <behdad@gnu.org>
|
||||
#
|
||||
# Behdad Esfahbod is the only author that actually codes these days. He
|
||||
# maintains the package too. He has revised all of the code written by
|
||||
# others, and has written much of the code himself. He's listed (or should
|
||||
# be listed) on every file in the package as one of the authors. Behdad
|
||||
# designs, implements, documents, maintains, ...
|
||||
#
|
||||
|
||||
dov-g: Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
#
|
||||
# Dov Grobgeld originally wrote FriBidi. The 0.1.* releases were all done
|
||||
# by him. After that, Dov rarely touched the code, but contributed ideas.
|
||||
# All files that he has originally authored have him listed as an author in
|
||||
# the header of the file.
|
||||
#
|
||||
|
||||
roozbeh: Roozbeh Pournader <roozbeh@gnu.org>
|
||||
#
|
||||
# Roozbeh Pournader hasn't contributed much code to FriBidi personally; but
|
||||
# has maintained, promoted, and supported the project for a while. He has
|
||||
# helped with making GNU FriBidi standards compliant, and has sometimes
|
||||
# lobbied with the Unicode Consortium when needed. Roozbeh was supposed to
|
||||
# be a co-maintainer of GNU FriBidi, but he's not doing that yet.
|
||||
#
|
||||
|
||||
|
||||
#
|
||||
# Note: Other people have contributed significant amounts of code, but
|
||||
# usually the code has faded out because of restructuring and redesigning
|
||||
# things around GNU FriBidi. As an example, the FriBidiEnv patch by Omer
|
||||
# Zak, made itself into FriBidi CVS for a couple of years, but was finally
|
||||
# implemented in a better way by Behdad.
|
||||
#
|
||||
# Note: GNU getopt is distributed with and used in GNU FriBidi under bin/, but
|
||||
# is not part of GNU FriBidi.
|
||||
#
|
||||
# Note: Parts of the Unicode Character Database are distributed with and used
|
||||
# in GNU FriBidi under gen.tab/unidata/, but are not part of GNU FriBidi.
|
||||
#
|
504
3party/fribidi/COPYING
Normal file
504
3party/fribidi/COPYING
Normal file
|
@ -0,0 +1,504 @@
|
|||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
|
||||
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
[This is the first released version of the Lesser GPL. It also counts
|
||||
as the successor of the GNU Library Public License, version 2, hence
|
||||
the version number 2.1.]
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
Licenses are intended to guarantee your freedom to share and change
|
||||
free software--to make sure the software is free for all its users.
|
||||
|
||||
This license, the Lesser General Public License, applies to some
|
||||
specially designated software packages--typically libraries--of the
|
||||
Free Software Foundation and other authors who decide to use it. You
|
||||
can use it too, but we suggest you first think carefully about whether
|
||||
this license or the ordinary General Public License is the better
|
||||
strategy to use in any particular case, based on the explanations below.
|
||||
|
||||
When we speak of free software, we are referring to freedom of use,
|
||||
not price. Our General Public Licenses are designed to make sure that
|
||||
you have the freedom to distribute copies of free software (and charge
|
||||
for this service if you wish); that you receive source code or can get
|
||||
it if you want it; that you can change the software and use pieces of
|
||||
it in new free programs; and that you are informed that you can do
|
||||
these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
distributors to deny you these rights or to ask you to surrender these
|
||||
rights. These restrictions translate to certain responsibilities for
|
||||
you if you distribute copies of the library or if you modify it.
|
||||
|
||||
For example, if you distribute copies of the library, whether gratis
|
||||
or for a fee, you must give the recipients all the rights that we gave
|
||||
you. You must make sure that they, too, receive or can get the source
|
||||
code. If you link other code with the library, you must provide
|
||||
complete object files to the recipients, so that they can relink them
|
||||
with the library after making changes to the library and recompiling
|
||||
it. And you must show them these terms so they know their rights.
|
||||
|
||||
We protect your rights with a two-step method: (1) we copyright the
|
||||
library, and (2) we offer you this license, which gives you legal
|
||||
permission to copy, distribute and/or modify the library.
|
||||
|
||||
To protect each distributor, we want to make it very clear that
|
||||
there is no warranty for the free library. Also, if the library is
|
||||
modified by someone else and passed on, the recipients should know
|
||||
that what they have is not the original version, so that the original
|
||||
author's reputation will not be affected by problems that might be
|
||||
introduced by others.
|
||||
|
||||
Finally, software patents pose a constant threat to the existence of
|
||||
any free program. We wish to make sure that a company cannot
|
||||
effectively restrict the users of a free program by obtaining a
|
||||
restrictive license from a patent holder. Therefore, we insist that
|
||||
any patent license obtained for a version of the library must be
|
||||
consistent with the full freedom of use specified in this license.
|
||||
|
||||
Most GNU software, including some libraries, is covered by the
|
||||
ordinary GNU General Public License. This license, the GNU Lesser
|
||||
General Public License, applies to certain designated libraries, and
|
||||
is quite different from the ordinary General Public License. We use
|
||||
this license for certain libraries in order to permit linking those
|
||||
libraries into non-free programs.
|
||||
|
||||
When a program is linked with a library, whether statically or using
|
||||
a shared library, the combination of the two is legally speaking a
|
||||
combined work, a derivative of the original library. The ordinary
|
||||
General Public License therefore permits such linking only if the
|
||||
entire combination fits its criteria of freedom. The Lesser General
|
||||
Public License permits more lax criteria for linking other code with
|
||||
the library.
|
||||
|
||||
We call this license the "Lesser" General Public License because it
|
||||
does Less to protect the user's freedom than the ordinary General
|
||||
Public License. It also provides other free software developers Less
|
||||
of an advantage over competing non-free programs. These disadvantages
|
||||
are the reason we use the ordinary General Public License for many
|
||||
libraries. However, the Lesser license provides advantages in certain
|
||||
special circumstances.
|
||||
|
||||
For example, on rare occasions, there may be a special need to
|
||||
encourage the widest possible use of a certain library, so that it becomes
|
||||
a de-facto standard. To achieve this, non-free programs must be
|
||||
allowed to use the library. A more frequent case is that a free
|
||||
library does the same job as widely used non-free libraries. In this
|
||||
case, there is little to gain by limiting the free library to free
|
||||
software only, so we use the Lesser General Public License.
|
||||
|
||||
In other cases, permission to use a particular library in non-free
|
||||
programs enables a greater number of people to use a large body of
|
||||
free software. For example, permission to use the GNU C Library in
|
||||
non-free programs enables many more people to use the whole GNU
|
||||
operating system, as well as its variant, the GNU/Linux operating
|
||||
system.
|
||||
|
||||
Although the Lesser General Public License is Less protective of the
|
||||
users' freedom, it does ensure that the user of a program that is
|
||||
linked with the Library has the freedom and the wherewithal to run
|
||||
that program using a modified version of the Library.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow. Pay close attention to the difference between a
|
||||
"work based on the library" and a "work that uses the library". The
|
||||
former contains code derived from the library, whereas the latter must
|
||||
be combined with the library in order to run.
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License Agreement applies to any software library or other
|
||||
program which contains a notice placed by the copyright holder or
|
||||
other authorized party saying it may be distributed under the terms of
|
||||
this Lesser General Public License (also called "this License").
|
||||
Each licensee is addressed as "you".
|
||||
|
||||
A "library" means a collection of software functions and/or data
|
||||
prepared so as to be conveniently linked with application programs
|
||||
(which use some of those functions and data) to form executables.
|
||||
|
||||
The "Library", below, refers to any such software library or work
|
||||
which has been distributed under these terms. A "work based on the
|
||||
Library" means either the Library or any derivative work under
|
||||
copyright law: that is to say, a work containing the Library or a
|
||||
portion of it, either verbatim or with modifications and/or translated
|
||||
straightforwardly into another language. (Hereinafter, translation is
|
||||
included without limitation in the term "modification".)
|
||||
|
||||
"Source code" for a work means the preferred form of the work for
|
||||
making modifications to it. For a library, complete source code means
|
||||
all the source code for all modules it contains, plus any associated
|
||||
interface definition files, plus the scripts used to control compilation
|
||||
and installation of the library.
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running a program using the Library is not restricted, and output from
|
||||
such a program is covered only if its contents constitute a work based
|
||||
on the Library (independent of the use of the Library in a tool for
|
||||
writing it). Whether that is true depends on what the Library does
|
||||
and what the program that uses the Library does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Library's
|
||||
complete source code as you receive it, in any medium, provided that
|
||||
you conspicuously and appropriately publish on each copy an
|
||||
appropriate copyright notice and disclaimer of warranty; keep intact
|
||||
all the notices that refer to this License and to the absence of any
|
||||
warranty; and distribute a copy of this License along with the
|
||||
Library.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy,
|
||||
and you may at your option offer warranty protection in exchange for a
|
||||
fee.
|
||||
|
||||
2. You may modify your copy or copies of the Library or any portion
|
||||
of it, thus forming a work based on the Library, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) The modified work must itself be a software library.
|
||||
|
||||
b) You must cause the files modified to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
c) You must cause the whole of the work to be licensed at no
|
||||
charge to all third parties under the terms of this License.
|
||||
|
||||
d) If a facility in the modified Library refers to a function or a
|
||||
table of data to be supplied by an application program that uses
|
||||
the facility, other than as an argument passed when the facility
|
||||
is invoked, then you must make a good faith effort to ensure that,
|
||||
in the event an application does not supply such function or
|
||||
table, the facility still operates, and performs whatever part of
|
||||
its purpose remains meaningful.
|
||||
|
||||
(For example, a function in a library to compute square roots has
|
||||
a purpose that is entirely well-defined independent of the
|
||||
application. Therefore, Subsection 2d requires that any
|
||||
application-supplied function or table used by this function must
|
||||
be optional: if the application does not supply it, the square
|
||||
root function must still compute square roots.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Library,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Library, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote
|
||||
it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Library.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Library
|
||||
with the Library (or with a work based on the Library) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may opt to apply the terms of the ordinary GNU General Public
|
||||
License instead of this License to a given copy of the Library. To do
|
||||
this, you must alter all the notices that refer to this License, so
|
||||
that they refer to the ordinary GNU General Public License, version 2,
|
||||
instead of to this License. (If a newer version than version 2 of the
|
||||
ordinary GNU General Public License has appeared, then you can specify
|
||||
that version instead if you wish.) Do not make any other change in
|
||||
these notices.
|
||||
|
||||
Once this change is made in a given copy, it is irreversible for
|
||||
that copy, so the ordinary GNU General Public License applies to all
|
||||
subsequent copies and derivative works made from that copy.
|
||||
|
||||
This option is useful when you wish to copy part of the code of
|
||||
the Library into a program that is not a library.
|
||||
|
||||
4. You may copy and distribute the Library (or a portion or
|
||||
derivative of it, under Section 2) in object code or executable form
|
||||
under the terms of Sections 1 and 2 above provided that you accompany
|
||||
it with the complete corresponding machine-readable source code, which
|
||||
must be distributed under the terms of Sections 1 and 2 above on a
|
||||
medium customarily used for software interchange.
|
||||
|
||||
If distribution of object code is made by offering access to copy
|
||||
from a designated place, then offering equivalent access to copy the
|
||||
source code from the same place satisfies the requirement to
|
||||
distribute the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
5. A program that contains no derivative of any portion of the
|
||||
Library, but is designed to work with the Library by being compiled or
|
||||
linked with it, is called a "work that uses the Library". Such a
|
||||
work, in isolation, is not a derivative work of the Library, and
|
||||
therefore falls outside the scope of this License.
|
||||
|
||||
However, linking a "work that uses the Library" with the Library
|
||||
creates an executable that is a derivative of the Library (because it
|
||||
contains portions of the Library), rather than a "work that uses the
|
||||
library". The executable is therefore covered by this License.
|
||||
Section 6 states terms for distribution of such executables.
|
||||
|
||||
When a "work that uses the Library" uses material from a header file
|
||||
that is part of the Library, the object code for the work may be a
|
||||
derivative work of the Library even though the source code is not.
|
||||
Whether this is true is especially significant if the work can be
|
||||
linked without the Library, or if the work is itself a library. The
|
||||
threshold for this to be true is not precisely defined by law.
|
||||
|
||||
If such an object file uses only numerical parameters, data
|
||||
structure layouts and accessors, and small macros and small inline
|
||||
functions (ten lines or less in length), then the use of the object
|
||||
file is unrestricted, regardless of whether it is legally a derivative
|
||||
work. (Executables containing this object code plus portions of the
|
||||
Library will still fall under Section 6.)
|
||||
|
||||
Otherwise, if the work is a derivative of the Library, you may
|
||||
distribute the object code for the work under the terms of Section 6.
|
||||
Any executables containing that work also fall under Section 6,
|
||||
whether or not they are linked directly with the Library itself.
|
||||
|
||||
6. As an exception to the Sections above, you may also combine or
|
||||
link a "work that uses the Library" with the Library to produce a
|
||||
work containing portions of the Library, and distribute that work
|
||||
under terms of your choice, provided that the terms permit
|
||||
modification of the work for the customer's own use and reverse
|
||||
engineering for debugging such modifications.
|
||||
|
||||
You must give prominent notice with each copy of the work that the
|
||||
Library is used in it and that the Library and its use are covered by
|
||||
this License. You must supply a copy of this License. If the work
|
||||
during execution displays copyright notices, you must include the
|
||||
copyright notice for the Library among them, as well as a reference
|
||||
directing the user to the copy of this License. Also, you must do one
|
||||
of these things:
|
||||
|
||||
a) Accompany the work with the complete corresponding
|
||||
machine-readable source code for the Library including whatever
|
||||
changes were used in the work (which must be distributed under
|
||||
Sections 1 and 2 above); and, if the work is an executable linked
|
||||
with the Library, with the complete machine-readable "work that
|
||||
uses the Library", as object code and/or source code, so that the
|
||||
user can modify the Library and then relink to produce a modified
|
||||
executable containing the modified Library. (It is understood
|
||||
that the user who changes the contents of definitions files in the
|
||||
Library will not necessarily be able to recompile the application
|
||||
to use the modified definitions.)
|
||||
|
||||
b) Use a suitable shared library mechanism for linking with the
|
||||
Library. A suitable mechanism is one that (1) uses at run time a
|
||||
copy of the library already present on the user's computer system,
|
||||
rather than copying library functions into the executable, and (2)
|
||||
will operate properly with a modified version of the library, if
|
||||
the user installs one, as long as the modified version is
|
||||
interface-compatible with the version that the work was made with.
|
||||
|
||||
c) Accompany the work with a written offer, valid for at
|
||||
least three years, to give the same user the materials
|
||||
specified in Subsection 6a, above, for a charge no more
|
||||
than the cost of performing this distribution.
|
||||
|
||||
d) If distribution of the work is made by offering access to copy
|
||||
from a designated place, offer equivalent access to copy the above
|
||||
specified materials from the same place.
|
||||
|
||||
e) Verify that the user has already received a copy of these
|
||||
materials or that you have already sent this user a copy.
|
||||
|
||||
For an executable, the required form of the "work that uses the
|
||||
Library" must include any data and utility programs needed for
|
||||
reproducing the executable from it. However, as a special exception,
|
||||
the materials to be distributed need not include anything that is
|
||||
normally distributed (in either source or binary form) with the major
|
||||
components (compiler, kernel, and so on) of the operating system on
|
||||
which the executable runs, unless that component itself accompanies
|
||||
the executable.
|
||||
|
||||
It may happen that this requirement contradicts the license
|
||||
restrictions of other proprietary libraries that do not normally
|
||||
accompany the operating system. Such a contradiction means you cannot
|
||||
use both them and the Library together in an executable that you
|
||||
distribute.
|
||||
|
||||
7. You may place library facilities that are a work based on the
|
||||
Library side-by-side in a single library together with other library
|
||||
facilities not covered by this License, and distribute such a combined
|
||||
library, provided that the separate distribution of the work based on
|
||||
the Library and of the other library facilities is otherwise
|
||||
permitted, and provided that you do these two things:
|
||||
|
||||
a) Accompany the combined library with a copy of the same work
|
||||
based on the Library, uncombined with any other library
|
||||
facilities. This must be distributed under the terms of the
|
||||
Sections above.
|
||||
|
||||
b) Give prominent notice with the combined library of the fact
|
||||
that part of it is a work based on the Library, and explaining
|
||||
where to find the accompanying uncombined form of the same work.
|
||||
|
||||
8. You may not copy, modify, sublicense, link with, or distribute
|
||||
the Library except as expressly provided under this License. Any
|
||||
attempt otherwise to copy, modify, sublicense, link with, or
|
||||
distribute the Library is void, and will automatically terminate your
|
||||
rights under this License. However, parties who have received copies,
|
||||
or rights, from you under this License will not have their licenses
|
||||
terminated so long as such parties remain in full compliance.
|
||||
|
||||
9. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Library or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Library (or any work based on the
|
||||
Library), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Library or works based on it.
|
||||
|
||||
10. Each time you redistribute the Library (or any work based on the
|
||||
Library), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute, link with or modify the Library
|
||||
subject to these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties with
|
||||
this License.
|
||||
|
||||
11. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Library at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Library by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Library.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under any
|
||||
particular circumstance, the balance of the section is intended to apply,
|
||||
and the section as a whole is intended to apply in other circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
12. If the distribution and/or use of the Library is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Library under this License may add
|
||||
an explicit geographical distribution limitation excluding those countries,
|
||||
so that distribution is permitted only in or among countries not thus
|
||||
excluded. In such case, this License incorporates the limitation as if
|
||||
written in the body of this License.
|
||||
|
||||
13. The Free Software Foundation may publish revised and/or new
|
||||
versions of the Lesser General Public License from time to time.
|
||||
Such new versions will be similar in spirit to the present version,
|
||||
but may differ in detail to address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Library
|
||||
specifies a version number of this License which applies to it and
|
||||
"any later version", you have the option of following the terms and
|
||||
conditions either of that version or of any later version published by
|
||||
the Free Software Foundation. If the Library does not specify a
|
||||
license version number, you may choose any version ever published by
|
||||
the Free Software Foundation.
|
||||
|
||||
14. If you wish to incorporate parts of the Library into other free
|
||||
programs whose distribution conditions are incompatible with these,
|
||||
write to the author to ask for permission. For software which is
|
||||
copyrighted by the Free Software Foundation, write to the Free
|
||||
Software Foundation; we sometimes make exceptions for this. Our
|
||||
decision will be guided by the two goals of preserving the free status
|
||||
of all derivatives of our free software and of promoting the sharing
|
||||
and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
|
||||
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
|
||||
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
|
||||
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
|
||||
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
|
||||
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
|
||||
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
|
||||
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
|
||||
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
|
||||
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
|
||||
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
|
||||
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
|
||||
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Libraries
|
||||
|
||||
If you develop a new library, and you want it to be of the greatest
|
||||
possible use to the public, we recommend making it free software that
|
||||
everyone can redistribute and change. You can do so by permitting
|
||||
redistribution under these terms (or, alternatively, under the terms of the
|
||||
ordinary General Public License).
|
||||
|
||||
To apply these terms, attach the following notices to the library. It is
|
||||
safest to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least the
|
||||
"copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the library's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the library, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the
|
||||
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1990
|
||||
Ty Coon, President of Vice
|
||||
|
||||
That's all there is to it!
|
||||
|
||||
|
894
3party/fribidi/ChangeLog
Normal file
894
3party/fribidi/ChangeLog
Normal file
|
@ -0,0 +1,894 @@
|
|||
2009-03-26 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* NEWS, configure.ac: NEWS, configure.ac: Released GNU FriBidi
|
||||
0.19.2.
|
||||
|
||||
2009-03-26 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/arabic-misc.tab.i: Bugzilla – Bug 20887 Problem with
|
||||
handling a certain sequence of arabic characters in fribidi 0.19.1
|
||||
|
||||
Fix typo in ligature table.
|
||||
|
||||
2008-12-30 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* USERS: Add AbsoluteTelnet.
|
||||
|
||||
2008-11-24 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-bidi-types.h: Fix typos.
|
||||
|
||||
2008-04-22 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* charset/fribidi-char-sets-cp1255.c: Handle RLM/LRM in CP1255
|
||||
charset converter. (#15328, Artyom)
|
||||
|
||||
2008-04-08 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/unidata/ArabicShaping.txt,
|
||||
gen.tab/unidata/BidiMirroring.txt, gen.tab/unidata/ReadMe.txt,
|
||||
gen.tab/unidata/UnicodeData.txt, lib/Makefile.am, lib/common.h:
|
||||
Update to Unicode Character Database 5.1.0
|
||||
|
||||
2008-01-15 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* NEWS, README, configure.ac: Released GNU FriBidi 0.19.1.
|
||||
|
||||
2008-01-15 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac: Remove RPM versioning cruft.
|
||||
|
||||
2008-01-15 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac, fribidi.spec.in: Remove spec file. Nobody uses
|
||||
upstream spec files these days.
|
||||
|
||||
2007-06-07 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* TODO: Add remaining issues before a release can be made.
|
||||
|
||||
2007-04-05 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-arabic.c: Avoid non-const struct initializer.
|
||||
|
||||
2007-04-05 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/common.h: Make sure we err if stringize is not available.
|
||||
|
||||
2007-04-05 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/common.h, lib/fribidi-common.h: Check for (defined(WIN32)) ||
|
||||
(defined(_WIN32_WCE)) to detect WinCE too
|
||||
|
||||
2007-03-15 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-bidi.c: Skip explicits-list reinsertion if list is
|
||||
empty.
|
||||
|
||||
2006-07-21 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/unidata/ArabicShaping.txt,
|
||||
gen.tab/unidata/BidiMirroring.txt, gen.tab/unidata/ReadMe.txt,
|
||||
gen.tab/unidata/UnicodeData.txt: Update to Unicode Character
|
||||
Database 5.0.0.
|
||||
|
||||
2006-06-13 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* USERS: Add Nokia 9110 Hebrew Support package.
|
||||
|
||||
2006-06-01 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-deprecated.c: More comments.
|
||||
|
||||
2006-06-01 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-deprecated.c: Note about line-breaking.
|
||||
|
||||
2006-04-28 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/Makefile.am: Use -no-undefined unconditionally.
|
||||
|
||||
2006-01-31 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac, bin/fribidi-benchmark.c, bin/fribidi-main.c,
|
||||
charset/fribidi-char-sets.c, gen.tab/gen-arabic-shaping-tab.c,
|
||||
gen.tab/gen-bidi-type-tab.c, gen.tab/gen-joining-type-tab.c,
|
||||
gen.tab/gen-mirroring-tab.c, gen.tab/gen-unicode-version.c,
|
||||
gen.tab/packtab.c, lib/bidi-types.h, lib/common.h, lib/debug.h,
|
||||
lib/fribidi-arabic.c, lib/fribidi-bidi-types.c,
|
||||
lib/fribidi-bidi-types.h, lib/fribidi-bidi.c, lib/fribidi-common.h,
|
||||
lib/fribidi-deprecated.c, lib/fribidi-deprecated.h,
|
||||
lib/fribidi-joining-types.c, lib/fribidi-joining.c,
|
||||
lib/fribidi-mem.c, lib/fribidi-run.c, lib/fribidi-types.h,
|
||||
lib/fribidi-unicode.h, lib/fribidi.c, lib/fribidi.h,
|
||||
lib/joining-types.h, lib/mem.h, lib/run.h: Add an option
|
||||
--disable-deprecated.
|
||||
|
||||
2006-01-22 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* charset/fribidi-char-sets-cap-rtl.c, lib/debug.h, lib/run.h: Add
|
||||
extra braces to shut gcc warnings up.
|
||||
|
||||
2006-01-22 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* bin/fribidi-main.c: Shut gcc warnings up.
|
||||
|
||||
2006-01-22 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-deprecated.c: Use memcpy for duplicating str.
|
||||
|
||||
2006-01-22 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/common.h: Include string.h.
|
||||
|
||||
2006-01-21 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* USERS: Added HebrewService.
|
||||
|
||||
2006-01-14 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-deprecated.c, lib/fribidi-deprecated.h,
|
||||
lib/fribidi-shape.h, lib/fribidi.def: Added
|
||||
fribidi_get_type_internal as a deprecated symbol.
|
||||
|
||||
2005-11-23 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* USERS: Added Nano-X.
|
||||
|
||||
2005-11-15 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* test/Makefile.am: Set TESTS_ENVIRONMENT=/bin/sh to avoid problem
|
||||
when running with \r\n line endings on Linux.
|
||||
|
||||
2005-11-09 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/gen-bidi-type-tab.c: Added a FIXME about not handling
|
||||
First..Last ranges in UnicodeData.txt.
|
||||
|
||||
2005-11-03 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* HACKING, TODO, configure.ac, bin/fribidi-main.c, doc/Makefile.am,
|
||||
gen.tab/Makefile.am, gen.tab/gen-arabic-liga.sh,
|
||||
gen.tab/gen-arabic-shaping-tab.c, gen.tab/gen-bidi-type-tab.c,
|
||||
gen.tab/gen-joining-type-tab.c, gen.tab/gen-mirroring-tab.c,
|
||||
gen.tab/gen-unicode-version.c, gen.tab/packtab.c, lib/Headers.mk,
|
||||
lib/Makefile.am, lib/arabic-misc.tab.i, lib/debug.h, lib/env.h,
|
||||
lib/fribidi-arabic.c, lib/fribidi-arabic.h, lib/fribidi-bidi.c,
|
||||
lib/fribidi-bidi.h, lib/fribidi-common.h, lib/fribidi-config.h.in,
|
||||
lib/fribidi-deprecated.c, lib/fribidi-deprecated.h,
|
||||
lib/fribidi-env.c, lib/fribidi-env.h, lib/fribidi-flags.h,
|
||||
lib/fribidi-joining-types.c, lib/fribidi-joining-types.h,
|
||||
lib/fribidi-joining.c, lib/fribidi-mem.c, lib/fribidi-mirroring.c,
|
||||
lib/fribidi-run.c, lib/fribidi-shape.c, lib/fribidi-shape.h,
|
||||
lib/fribidi-types.h, lib/fribidi-unicode.h, lib/fribidi.c,
|
||||
lib/fribidi.h, lib/joining-types.h,
|
||||
test/test_UTF-8_persian.reference,
|
||||
test/test_UTF-8_reordernsm.reference: Arabic shaping support added.
|
||||
|
||||
2005-09-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac: Replaced bug URL.
|
||||
|
||||
2005-09-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* test/Makefile.am: Use sed instead of $(SED).
|
||||
|
||||
2005-09-24 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* USERS: Updated and annotated.
|
||||
|
||||
2005-09-24 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* USERS: Moved BiCon up, since it's an easy sample to study.
|
||||
|
||||
2005-09-04 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac, bin/fribidi-benchmark.c: Better handling of
|
||||
sys/times.h. Also, don't pass -pedantic to gcc.
|
||||
|
||||
2005-09-04 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi.def: Added fribidi_version_info.
|
||||
|
||||
2005-09-04 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* bin/fribidi-bidi-types.c: Use capital hex digits.
|
||||
|
||||
2005-08-27 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* bootstrap: Small change to not run libtool if the package doesn't
|
||||
use it.
|
||||
|
||||
2005-08-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* Makefile.am: Minor.
|
||||
|
||||
2005-08-22 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* CVSROOT/cvsignore: Added vi swap files: .*.swp
|
||||
|
||||
2005-08-10 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* TODO: Couple items added ;).
|
||||
|
||||
2005-07-30 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* .cvsignore, Makefile.am, USERS, configure.ac,
|
||||
bin/fribidi-benchmark.c, bin/fribidi-bidi-types.c,
|
||||
bin/fribidi-caprtl2utf8.c, bin/fribidi-main.c,
|
||||
charset/fribidi-char-sets-cap-rtl.c,
|
||||
charset/fribidi-char-sets-utf8.c, gen.tab/gen-unicode-version.c,
|
||||
lib/fribidi-bidi.c, lib/fribidi-types.h, lib/fribidi.c: Small
|
||||
changes to shut gcc warnings up.
|
||||
|
||||
2005-06-08 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* README, THANKS, TODO: Small edits.
|
||||
|
||||
2005-06-07 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* TODO, USERS, configure.ac: Misc fixes.
|
||||
|
||||
2005-06-07 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/Makefile.am, gen.tab/gen-unicode-version.c,
|
||||
gen.tab/unidata/ReadMe.txt: In Unicode 4.1.0, the ReadMe.txt
|
||||
doesn't contain the Unicode version anymore. Updated to read
|
||||
version from BidiMirroring.txt, if not found in ReadMe.txt.
|
||||
|
||||
2005-06-07 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/gen-bidi-type-tab.c, gen.tab/gen-joining-type-tab.c,
|
||||
gen.tab/gen-mirroring-tab.c: Extra space removed!
|
||||
|
||||
2005-06-07 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* THANKS: Small fixes.
|
||||
|
||||
2005-06-07 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* bin/Makefile.am, bin/fribidi-caprtl2utf8.c,
|
||||
test/caprtl2unicode.py: An integrated CapRTL to UTF-8 converter
|
||||
added.
|
||||
|
||||
2005-06-07 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* bin/Makefile.am, bin/fribidi-bidi-types.c: Added. Enumerates
|
||||
bidi char types into stdout.
|
||||
|
||||
2005-06-07 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/unidata/ArabicShaping.txt,
|
||||
gen.tab/unidata/BidiMirroring.txt, gen.tab/unidata/ReadMe.txt,
|
||||
gen.tab/unidata/UnicodeData.txt: Unicode 4.1 character database
|
||||
update.
|
||||
|
||||
2005-01-10 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* charset/fribidi-char-sets-cap-rtl.c: Better conversion table from
|
||||
CapRTL to Unicode.
|
||||
|
||||
2005-01-09 Roozbeh Pournader <roozbeh@gnu.org>
|
||||
|
||||
* AUTHORS: Made the wording a little more formal, removed jokes and
|
||||
sad stories.
|
||||
|
||||
2005-01-08 behnam
|
||||
|
||||
* test/caprtl2unicode.py: Correcting the table.
|
||||
|
||||
2005-01-08 behnam
|
||||
|
||||
* test/caprtl2unicode.py: Clearing some typos.
|
||||
|
||||
2005-01-05 behnam
|
||||
|
||||
* test/caprtl2unicode.py: Adding CapRTL to Unicode (UTF-8)
|
||||
convertor.
|
||||
|
||||
2004-10-29 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* USERS: Added Geresh.
|
||||
|
||||
2004-09-28 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-mirroring.c, lib/fribidi-mirroring.h: Minor change in
|
||||
comments: Using "Authors(s)" in the file header.
|
||||
|
||||
2004-08-27 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* Makefile.am, TODO, USERS, configure.ac,
|
||||
gen.tab/gen-bidi-type-tab.c, gen.tab/gen-joining-type-tab.c,
|
||||
gen.tab/gen-mirroring-tab.c, gen.tab/gen-unicode-version.c: Here
|
||||
and there small improvements.
|
||||
|
||||
2004-07-16 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* USERS: Added. List of projects using FriBidi.
|
||||
|
||||
2004-07-03 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* test/Makefile.am: Added test_UTF-8_reordernsm to Makefile.
|
||||
|
||||
2004-07-03 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* AUTHORS, TODO, configure.ac, gen.tab/Makefile.am,
|
||||
lib/Makefile.am, lib/fribidi-types.h: Here and there fixes, found
|
||||
by trying to compile on sf.net Compile Farm!
|
||||
|
||||
2004-07-03 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* HACKING: Well, just testing new maildiff script.
|
||||
|
||||
2004-07-03 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* CVSROOT/checkoutlist: Renamed syncmail to maildiff
|
||||
|
||||
2004-07-03 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* CVSROOT/syncmail: Renamed syncmail to notifymail, updated to new
|
||||
CVS (1.12) loginfo syntax.
|
||||
|
||||
2004-07-03 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* CVSROOT/loginfo, CVSROOT/maildiff: Renamed syncmail to maildiff,
|
||||
updated to new CVS (1.12) loginfo syntax.
|
||||
|
||||
2004-07-03 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* TODO: Another TODO item added.
|
||||
|
||||
2004-07-03 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* TODO: Boring addition of new TODO items :-(.
|
||||
|
||||
2004-06-28 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* CVSROOT/config, CVSROOT/loginfo: Added #fdo-commits through CIA
|
||||
report.
|
||||
|
||||
2004-06-23 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* bin/fribidi-main.c, lib/fribidi-common.h: Two small fixes to make
|
||||
compilation with -DDONT_HAVE_FRIBIDI_CONFIG_H go on.
|
||||
|
||||
2004-06-21 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* .indent.pro, lib/fribidi-bidi.h, lib/fribidi-joining-types.h,
|
||||
lib/fribidi-joining.c, lib/fribidi-joining.h,
|
||||
lib/fribidi-unicode.h, lib/fribidi.c, lib/fribidi.h: Reimplemented
|
||||
Arabic joining. Hopefullly it's conforming to the standard now,
|
||||
with the exception that we assume "level run" instead of
|
||||
"directional run", which is a proposed changed to be applied for
|
||||
Unicode 4.1.
|
||||
|
||||
2004-06-21 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/bidi-types.h, lib/common.h, lib/fribidi-bidi-types.h,
|
||||
lib/fribidi-bidi.c, lib/fribidi-bidi.h, lib/fribidi-joining.c,
|
||||
lib/fribidi-run.c, lib/fribidi-unicode.h, lib/fribidi.c, lib/run.h:
|
||||
We need bidi_types all over the place (in joining, in shaping,
|
||||
...), so make them mandatory. As a consequence, many of our
|
||||
functions don't need str anymore: they just need this bidi_types.
|
||||
|
||||
2004-06-21 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-bidi.c, lib/fribidi-bidi.h, lib/fribidi.c: Fixed a
|
||||
bug in fribidi_log2vis(), also changed fribidi_reorder_line() api
|
||||
to allow not passing visual_str, by passing str instead.
|
||||
|
||||
2004-06-18 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-bidi.c, test/Makefile.am,
|
||||
test/test_CapRTL_explicit.input,
|
||||
test/test_CapRTL_explicit.reference: Rever back to our old level
|
||||
setting for BN and explicits. The new method was buggy. A test
|
||||
case added to capture that.
|
||||
|
||||
2004-06-18 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-bidi-types.h, lib/fribidi-bidi.c, lib/fribidi-bidi.h,
|
||||
lib/fribidi-types.h, lib/fribidi.c: Fixed good catch by Mark Davis
|
||||
that rule L1 is partly done after line breaking. Also calculate
|
||||
more reasonable levels for explicit marks and BN.
|
||||
|
||||
2004-06-15 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/Makefile.am, lib/Makefile.am, lib/fribidi-bidi-types.h:
|
||||
Oh, no need to add tables for general category Cf, it can roughly
|
||||
be obtained by doing JOINING_TYPE_T - BIDI_TYPE_NSM...
|
||||
|
||||
2004-06-15 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* .indent.pro, TODO, configure.ac,
|
||||
charset/fribidi-char-sets-cap-rtl.c, gen.tab/Makefile.am,
|
||||
gen.tab/gen-bidi-type-tab.c, gen.tab/gen-joining-type-tab.c,
|
||||
gen.tab/gen-mirroring-tab.c, gen.tab/gen-unicode-version.c,
|
||||
lib/Makefile.am, lib/common.h, lib/fribidi-bidi-types.c,
|
||||
lib/fribidi-bidi-types.h, lib/fribidi-bidi.c, lib/fribidi-bidi.h,
|
||||
lib/fribidi-joining-types-list.h, lib/fribidi-joining-types.c,
|
||||
lib/fribidi-joining-types.h, lib/fribidi-joining.c,
|
||||
lib/fribidi-joining.h, lib/fribidi-mirroring.c,
|
||||
lib/fribidi-mirroring.h, lib/fribidi-types.h, lib/fribidi.c,
|
||||
lib/fribidi.def, lib/fribidi.h, lib/joining-types.h: Arabic joining
|
||||
is almost complete. Going for Shaping.
|
||||
|
||||
2004-06-15 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* test/test_UTF-8_persian.input, test/test_UTF-8_persian.reference:
|
||||
Oops, I changed Persian Yeh to Arabic Yeh last time :">.
|
||||
|
||||
2004-06-15 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* test/test_UTF-8_persian.input, test/test_UTF-8_persian.reference:
|
||||
Replace Arabic Yeh with Persian Yeh.
|
||||
|
||||
2004-06-14 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac, charset/fribidi-char-sets-cap-rtl.c,
|
||||
doc/Makefile.am, lib/Headers.mk, lib/Makefile.am,
|
||||
lib/fribidi-bidi-type.c, lib/fribidi-bidi-type.h,
|
||||
lib/fribidi-bidi-types.c, lib/fribidi-bidi-types.h,
|
||||
lib/fribidi-bidi.c, lib/fribidi-bidi.h, lib/fribidi-config.h.in,
|
||||
lib/fribidi-joining-type.c, lib/fribidi-joining-type.h,
|
||||
lib/fribidi-joining-types.c, lib/fribidi-joining-types.h,
|
||||
lib/fribidi-mirroring.c, lib/fribidi-mirroring.h,
|
||||
lib/fribidi-run.c, lib/fribidi.c, lib/fribidi.def, lib/fribidi.h:
|
||||
fribidi-bidi-type.[ch] merged into fribidi-bidi-types.[ch].
|
||||
fribidi-joining-type.[ch] merged into fribidi-joining-types.[ch].
|
||||
|
||||
2004-06-14 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/bidi-types.h, lib/fribidi-bidi-type.c,
|
||||
lib/fribidi-bidi-type.h, lib/fribidi-bidi.c, lib/fribidi-bidi.h,
|
||||
lib/fribidi-run.c, lib/fribidi.c, lib/run.h: fribidi_get_bidi_types
|
||||
is back. Allow passing bidi types to get_par_embedding_levels and
|
||||
reorder_line functions.
|
||||
|
||||
2004-06-13 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* .indent.pro, TODO, charset/Makefile.am,
|
||||
charset/fribidi-char-sets-cap-rtl.c, doc/Makefile.am,
|
||||
gen.tab/Makefile.am, gen.tab/gen-bidi-type-tab.c,
|
||||
gen.tab/gen-joining-type-tab.c, gen.tab/gen-mirroring-tab.c,
|
||||
gen.tab/gen-unicode-version.c, gen.tab/packtab.c,
|
||||
gen.tab/packtab.h, lib/Headers.mk, lib/Makefile.am, lib/common.h,
|
||||
lib/debug.h, lib/env.h, lib/fribidi-bidi-type.c,
|
||||
lib/fribidi-bidi-types-list.h, lib/fribidi-bidi-types.c,
|
||||
lib/fribidi-bidi-types.h, lib/fribidi-joining-type.c,
|
||||
lib/fribidi-joining-type.h, lib/fribidi-joining-types-list.h,
|
||||
lib/fribidi-joining-types.c, lib/fribidi-joining-types.h,
|
||||
lib/fribidi-joining.c, lib/fribidi-joining.h,
|
||||
lib/fribidi-mirroring.c, lib/fribidi.def, lib/joining-types.h,
|
||||
lib/run.h: First joining stuff checked in. Generate joining table
|
||||
using my beloved packtab, in gen-joining-type-tab.c. Defined
|
||||
FriBidiJoiningType type and wrote accompanying functions and
|
||||
macros.
|
||||
|
||||
2004-06-09 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac, bin/fribidi-main.c, charset/fribidi-char-sets.c,
|
||||
gen.tab/Makefile.am, gen.tab/gen-bidi-type-tab.c,
|
||||
gen.tab/gen-mirroring-tab.c, gen.tab/packtab.c, gen.tab/packtab.h,
|
||||
lib/fribidi-bidi-type.c, lib/fribidi-bidi-types.h,
|
||||
lib/fribidi-mirroring.c, lib/fribidi-types.h, lib/fribidi.h: Wow!!!
|
||||
I use the wonderful packtab to compress the mirroring table now!
|
||||
It gives an smaller and faster table than the old binary search
|
||||
one! Moreover, packtab deals with tables with empty heads much
|
||||
better. Voila!
|
||||
|
||||
2004-06-09 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac, bin/fribidi-main.c, charset/Headers.mk,
|
||||
charset/fribidi-char-sets-cap-rtl.h,
|
||||
charset/fribidi-char-sets-cp1255.h,
|
||||
charset/fribidi-char-sets-cp1256.h,
|
||||
charset/fribidi-char-sets-iso8859-6.h,
|
||||
charset/fribidi-char-sets-iso8859-8.h,
|
||||
charset/fribidi-char-sets-list.h, charset/fribidi-char-sets-utf8.h,
|
||||
charset/fribidi-char-sets.c, charset/fribidi-char-sets.h,
|
||||
doc/Makefile.am, lib/common.h, lib/debug.h,
|
||||
lib/fribidi-bidi-type.c, lib/fribidi-bidi-type.h,
|
||||
lib/fribidi-bidi-types-list.h, lib/fribidi-bidi-types.h,
|
||||
lib/fribidi-bidi.h, lib/fribidi-common.h, lib/fribidi-mirroring.c,
|
||||
lib/fribidi-mirroring.h, lib/fribidi-types.h, lib/fribidi.c,
|
||||
lib/fribidi.def, lib/fribidi.h, lib/mem.h: Redundant and
|
||||
compatibility stuff removed. A few macros added, to compile
|
||||
AbiWord from CVS. The most important is the FRIBIDI_TYPE_PRIVATE
|
||||
in fribidi-bidi-types.h
|
||||
|
||||
2004-06-09 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* bin/fribidi-benchmark.c, bin/fribidi-main.c,
|
||||
lib/fribidi-bidi-type.h, lib/fribidi.h: Not serious changed. Going
|
||||
to remove easy-to-replace compatibility stuff.
|
||||
|
||||
2004-06-07 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* .cvsignore, .indent.pro, TODO, lib/fribidi-bidi-types-list.h,
|
||||
lib/fribidi-bidi-types.h, lib/fribidi-bidi.c, lib/fribidi-bidi.h,
|
||||
lib/fribidi-mirroring.c, lib/fribidi-mirroring.h, lib/fribidi.c,
|
||||
lib/fribidi.def, lib/fribidi.h, test/test_UTF-8_persian.reference:
|
||||
Finally done with the clean API for bidi functionality. The API is
|
||||
not final yet, but does the job. Also define FriBidiCharType as an
|
||||
enum if possible. Added type FriBidiParType for paragraph
|
||||
direction types.
|
||||
|
||||
2004-06-04 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-bidi.c, lib/fribidi-bidi.h, lib/fribidi-run.c,
|
||||
lib/run.h: Isolating bidi reordering call, take 1.
|
||||
|
||||
2004-06-04 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* doc/Makefile.am: Anyone seen my log ;-).
|
||||
|
||||
2004-06-04 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* Makefile.am, TODO, bootstrap, configure.ac, bin/fribidi-main.c,
|
||||
charset/fribidi-char-sets-cap-rtl.c, doc/Makefile.am,
|
||||
gen.tab/.cvsignore, gen.tab/Makefile.am,
|
||||
gen.tab/gen-bidi-type-tab.c, lib/Headers.mk,
|
||||
lib/fribidi-bidi-type.c, lib/fribidi-bidi-type.h,
|
||||
lib/fribidi-bidi-types-list.h, lib/fribidi-bidi-types.c,
|
||||
lib/fribidi-bidi-types.h, lib/fribidi-bidi.c, lib/fribidi-bidi.h,
|
||||
lib/fribidi-common.h, lib/fribidi-config.h.in, lib/fribidi.def:
|
||||
Cleaning up here and there. Last lingers before adding joining.
|
||||
|
||||
2004-05-31 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* AUTHORS, Makefile.am, README, THANKS, TODO, configure.ac,
|
||||
bin/fribidi-main.c, charset/fribidi-char-sets-cap-rtl.c,
|
||||
doc/Makefile.am, gen.tab/Makefile.am, gen.tab/gen-bidi-type-tab.c,
|
||||
gen.tab/gen-mirroring-tab.c, gen.tab/gen-unicode-version.c,
|
||||
lib/bidi-types-list.h, lib/fribidi-bidi-type.c,
|
||||
lib/fribidi-bidi-types-list.h: GNU Coding Standards applied and
|
||||
typos fixed.
|
||||
|
||||
2004-05-31 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/Headers.mk, lib/Makefile.am, lib/common.h, lib/debug.h,
|
||||
lib/fribidi-bidi-types.c, lib/fribidi-bidi.c, lib/fribidi-common.h,
|
||||
lib/fribidi-config.h.in, lib/fribidi.c, lib/run.h: GNU Coding
|
||||
Standards applied where appropriate.
|
||||
|
||||
2004-05-31 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/unidata/README: To be moved to gen.tab/
|
||||
|
||||
2004-05-31 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/unidata/ArabicShaping.txt, gen.tab/unidata/README,
|
||||
gen.tab/unidata/UnicodeData.txt: We need UnicodeData.txt for
|
||||
shaping tables, so seems like we are forced to use the big fat huge
|
||||
UnicodeData.txt, so no need to used extracted/Derived files
|
||||
anymore. :-(
|
||||
|
||||
2004-05-29 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-mirroring.c, lib/fribidi-mirroring.h, lib/fribidi.c:
|
||||
Tweaked the headers again. According to GNU GPL now.
|
||||
|
||||
2004-05-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/Makefile.am: Ok, now DLL build works with Cygwin. Still
|
||||
remains to test with Mingw.
|
||||
|
||||
2004-05-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac: Ok, seems like there are a few bits wrong in Pango,
|
||||
and I simply copied :">.
|
||||
|
||||
2004-05-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac: Seems like using $build_os instead of broken $host
|
||||
should fix the problem.
|
||||
|
||||
2004-05-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac: Trying to build DLL on Cygwin.
|
||||
|
||||
2004-05-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-common.h: Define extra GNU function attributes only
|
||||
if using GLIB.
|
||||
|
||||
2004-05-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* bin/Makefile.am, bin/gettext.h: Added a dummy gettext.h that
|
||||
simply defines "gettext" to null.
|
||||
|
||||
2004-05-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/Makefile.am: Another oops. You know, it's 7:30 in the
|
||||
morning!
|
||||
|
||||
2004-05-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/Makefile.am: My oops. Sorry.
|
||||
|
||||
2004-05-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/Makefile.am: Added $(EXEEXT) to binaries we build and
|
||||
run, to make cygwin-safe.
|
||||
|
||||
2004-05-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* Makefile.am: Moved gen.tab to the first subdir.
|
||||
|
||||
2004-05-24 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* AUTHORS, HACKING, doc/Makefile.am, gen.tab/gen-bidi-type-tab.c,
|
||||
gen.tab/gen-mirroring-tab.c, gen.tab/gen-unicode-version.c: Small
|
||||
fixes.
|
||||
|
||||
2004-05-22 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* TODO, gen.tab/gen-bidi-type-tab.c: When reading
|
||||
DerivedBidiClass.txt, should only default to L.
|
||||
|
||||
2004-05-22 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* Makefile.am, bin/Makefile.am, bin/fribidi-benchmark.c,
|
||||
charset/fribidi-char-sets-cap-rtl.c, charset/fribidi-char-sets.c,
|
||||
gen.tab/Makefile.am, gen.tab/gen-bidi-type-tab.c,
|
||||
gen.tab/gen-mirroring-tab.c, gen.tab/gen-unicode-version.c,
|
||||
lib/common.h, lib/fribidi-bidi-type.c, lib/fribidi-mem.c: Make
|
||||
gen-mirroring-tab and gen-unicode-version work. gen.tab/ works
|
||||
now.
|
||||
|
||||
2004-05-22 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac, fribidi.pc.in, bin/Makefile.am,
|
||||
charset/Makefile.am, doc/Makefile.am, gen.tab/Makefile.am,
|
||||
gen.tab/gen-bidi-type-tab.c, gen.tab/gen-mirroring-tab.c,
|
||||
gen.tab/gen-unicode-version.c, gen.tab/packtab.c,
|
||||
gen.tab/packtab.h, lib/Makefile.am, lib/common.h,
|
||||
lib/fribidi-bidi.h, lib/fribidi-mirroring.c,
|
||||
lib/fribidi-mirroring.h: Making gen-bidi-tab work, and more clean
|
||||
up.
|
||||
|
||||
2004-05-12 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/.cvsignore, gen.tab/Makefile.am,
|
||||
gen.tab/gen-bidi-type-tab.c, gen.tab/gen-mirroring-tab.c,
|
||||
gen.tab/gen-unicode-version.c: gen-unicode-version is operational
|
||||
now.
|
||||
|
||||
2004-05-12 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* gen.tab/gen-bidi-type-tab.c, lib/.cvsignore, lib/Makefile.am,
|
||||
lib/common.h, lib/fribidi-bidi-type.c, lib/fribidi-common.h,
|
||||
lib/fribidi-unicode.h: Better handling with Unicode info.
|
||||
|
||||
2004-05-12 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* doc/.cvsignore, lib/.cvsignore, lib/fribidi-unicode-version.h:
|
||||
Updated .cvsignore files.
|
||||
|
||||
2004-05-12 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* .indent.pro, TODO, bootstrap, bin/fribidi-main.c,
|
||||
charset/fribidi-char-sets.c, gen.tab/Makefile.am,
|
||||
gen.tab/gen-bidi-type-tab.c, gen.tab/gen-mirroring-tab.c,
|
||||
gen.tab/packtab.c, lib/bidi-types-list.h, lib/common.h,
|
||||
lib/fribidi-bidi-type.c, lib/fribidi-mirroring.h: Updated the
|
||||
gen.tab to work again. Other fixes here and there.
|
||||
|
||||
2004-05-07 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* Makefile.am, TODO, configure.ac, bin/fribidi-main.c,
|
||||
charset/fribidi-char-sets-cap-rtl.c, doc/Makefile.am,
|
||||
lib/Makefile.am, lib/bidi-type-table.i, lib/bidi-types-list.h,
|
||||
lib/bidi-types.h, lib/common.h, lib/debug.h,
|
||||
lib/fribidi-bidi-type.c, lib/fribidi-bidi.c, lib/fribidi-common.h,
|
||||
lib/fribidi-mem.c, lib/fribidi-mirroring.c, lib/fribidi-types.h,
|
||||
lib/fribidi-unicode.h, lib/fribidi.c, lib/mem.h,
|
||||
lib/mirroring-table.i: Cleaning here and there. We may be ready
|
||||
for a release tonight :).
|
||||
|
||||
2004-05-05 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* TODO, configure.ac: More TODO. And change autoconf requirement
|
||||
to 2.56 from 2.59.
|
||||
|
||||
2004-05-03 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* .indent.pro, TODO, configure.ac, bin/fribidi-benchmark.c,
|
||||
bin/fribidi-main.c, charset/fribidi-char-sets-cap-rtl.c,
|
||||
charset/fribidi-char-sets-cp1255.c,
|
||||
charset/fribidi-char-sets-cp1256.c,
|
||||
charset/fribidi-char-sets-iso8859-6.c,
|
||||
charset/fribidi-char-sets-iso8859-8.c,
|
||||
charset/fribidi-char-sets-utf8.c, charset/fribidi-char-sets.c,
|
||||
charset/fribidi-char-sets.h, doc/Makefile.am, lib/Headers.mk,
|
||||
lib/Makefile.am, lib/bidi-type-table.i, lib/bidi-types-list.h,
|
||||
lib/bidi-types.h, lib/common.h, lib/debug.h, lib/env.h,
|
||||
lib/fribidi-bidi-type.c, lib/fribidi-bidi-type.h,
|
||||
lib/fribidi-bidi-types.c, lib/fribidi-bidi-types.h,
|
||||
lib/fribidi-bidi.c, lib/fribidi-bidi.h, lib/fribidi-common.h,
|
||||
lib/fribidi-env.c, lib/fribidi-env.h, lib/fribidi-mem.c,
|
||||
lib/fribidi-mirroring.c, lib/fribidi-run.c, lib/fribidi-types.h,
|
||||
lib/fribidi.c, lib/fribidi.def, lib/mem.h, lib/mirroring-table.i,
|
||||
lib/run.h, test/run.tests: Changed the run data structure from a
|
||||
double-terminated deque, to a circular deque with a single
|
||||
sentinel. To debug that, also added some assert stuff, added
|
||||
function attributes, deprecated old interfaces, and humm, that it
|
||||
for now.
|
||||
|
||||
2004-04-28 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* THANKS, bin/fribidi-main.c, charset/Makefile.am, doc/Makefile.am,
|
||||
lib/Makefile.am, lib/fribidi-common.h: Cleaning up exported
|
||||
symbols.
|
||||
|
||||
2004-04-28 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/Makefile.am, lib/bidi-types.h, lib/common.h, lib/env.h,
|
||||
lib/fribidi-bidi-type.c, lib/fribidi-bidi-types.c,
|
||||
lib/fribidi-bidi-types.h, lib/fribidi-bidi.c, lib/fribidi-env.c,
|
||||
lib/fribidi-mem.c, lib/fribidi-run.c, lib/mem.h, lib/run.h: Added
|
||||
FriBidiRun type, private for now. Moved all library-wide static
|
||||
variables to env.h.
|
||||
|
||||
2004-04-27 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* doc/Makefile.am, lib/common.h, lib/fribidi-mirroring.c: Nothing
|
||||
really important.
|
||||
|
||||
2004-04-27 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* charset/Headers.mk, charset/fribidi-char-sets-list.h,
|
||||
doc/Makefile.am, lib/Headers.mk, lib/bidi-types-list.h,
|
||||
lib/common.h, lib/debug.h, lib/fribidi-begindecls.h,
|
||||
lib/fribidi-enddecls.h, lib/fribidi-types.h, lib/mem.h: First try
|
||||
to integrate c2man manual generation in build system.
|
||||
|
||||
2004-04-27 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-mirroring.c, lib/fribidi-mirroring.h: Header changed
|
||||
so RCS header and Authors follow the copyright notice.
|
||||
|
||||
2004-04-27 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* TODO: New items added. Should be cleared before the release.
|
||||
|
||||
2004-04-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* bin/.cvsignore, gen.tab/.cvsignore, lib/.cvsignore: More
|
||||
.cvsignore's added.
|
||||
|
||||
2004-04-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* Makefile.am, configure.ac: Renamed subdir tablegen to gentable.
|
||||
|
||||
2004-04-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* lib/fribidi-bidi.c, lib/fribidi.c: More recovery after the
|
||||
unintentionaly rm -f *.c!
|
||||
|
||||
2004-04-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* configure.ac, lib/fribidi-bidi.c, lib/fribidi-mem.c: No #ifdef or
|
||||
#ifndef when possible. #if or #if ! is a better way most of the
|
||||
times. See the examples in source.
|
||||
|
||||
2004-04-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* CVSROOT/syncmail: dos2unix'ed.
|
||||
|
||||
2004-04-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* ChangeLog.old: The ChangeLog from the old days.
|
||||
|
||||
2004-04-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* AUTHORS, bootstrap, configure.ac, .cvsignore, .indent.pro,
|
||||
COPYING, HACKING, HISTORY, Makefile.am, NEWS, README, THANKS, TODO,
|
||||
fribidi.pc.in, fribidi.spec.in, bin/Makefile.am,
|
||||
bin/fribidi-benchmark.c, bin/fribidi-main.c, bin/getopt.c,
|
||||
bin/getopt.h, bin/getopt1.c, bin/getopt_int.h, charset/Headers.mk,
|
||||
charset/Makefile.am, charset/fribidi-char-sets-cap-rtl.c,
|
||||
charset/fribidi-char-sets-cap-rtl.h,
|
||||
charset/fribidi-char-sets-cp1255.c,
|
||||
charset/fribidi-char-sets-cp1255.h,
|
||||
charset/fribidi-char-sets-cp1256.c,
|
||||
charset/fribidi-char-sets-cp1256.h,
|
||||
charset/fribidi-char-sets-iso8859-6.c,
|
||||
charset/fribidi-char-sets-iso8859-6.h,
|
||||
charset/fribidi-char-sets-iso8859-8.c,
|
||||
charset/fribidi-char-sets-iso8859-8.h,
|
||||
charset/fribidi-char-sets-list.h, charset/fribidi-char-sets-utf8.c,
|
||||
charset/fribidi-char-sets-utf8.h, charset/fribidi-char-sets.c,
|
||||
charset/fribidi-char-sets.h, doc/Makefile.am, gen.tab/Makefile.am,
|
||||
gen.tab/gen-bidi-type-tab.c, gen.tab/gen-mirroring-tab.c,
|
||||
gen.tab/packtab.c, gen.tab/packtab.h,
|
||||
gen.tab/unidata/BidiMirroring.txt, gen.tab/unidata/ReadMe.txt,
|
||||
lib/Headers.mk, lib/Makefile.am, lib/bidi-type-table.i,
|
||||
lib/bidi-types-list.h, lib/bidi-types.h, lib/common.h, lib/debug.h,
|
||||
lib/fribidi-begindecls.h, lib/fribidi-bidi-type.c,
|
||||
lib/fribidi-bidi-type.h, lib/fribidi-bidi-types.c,
|
||||
lib/fribidi-bidi-types.h, lib/fribidi-bidi.c, lib/fribidi-bidi.h,
|
||||
lib/fribidi-common.h, lib/fribidi-config.h.in,
|
||||
lib/fribidi-enddecls.h, lib/fribidi-env.c, lib/fribidi-env.h,
|
||||
lib/fribidi-mem.c, lib/fribidi-mirroring.c,
|
||||
lib/fribidi-mirroring.h, lib/fribidi-types.h,
|
||||
lib/fribidi-unicode-version.h, lib/fribidi-unicode.h,
|
||||
lib/fribidi.c, lib/fribidi.h, lib/mem.h, lib/mirroring-table.i,
|
||||
test/Makefile.am, test/run.tests, test/test_CapRTL_explicit.input,
|
||||
test/test_CapRTL_explicit.reference,
|
||||
test/test_CapRTL_implicit.input,
|
||||
test/test_CapRTL_implicit.reference,
|
||||
test/test_ISO8859-8_hebrew.input,
|
||||
test/test_ISO8859-8_hebrew.reference,
|
||||
test/test_UTF-8_persian.input, test/test_UTF-8_persian.reference,
|
||||
test/test_UTF-8_reordernsm.input,
|
||||
test/test_UTF-8_reordernsm.reference: Initial checkin into
|
||||
FreeDesktop repository. After major restructuring and
|
||||
improvements.
|
||||
|
||||
2004-04-25 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* AUTHORS, bootstrap, configure.ac, .cvsignore, .indent.pro,
|
||||
COPYING, HACKING, HISTORY, Makefile.am, NEWS, README, THANKS, TODO,
|
||||
fribidi.pc.in, fribidi.spec.in, bin/Makefile.am,
|
||||
bin/fribidi-benchmark.c, bin/fribidi-main.c, bin/getopt.c,
|
||||
bin/getopt.h, bin/getopt1.c, bin/getopt_int.h, charset/Headers.mk,
|
||||
charset/Makefile.am, charset/fribidi-char-sets-cap-rtl.c,
|
||||
charset/fribidi-char-sets-cap-rtl.h,
|
||||
charset/fribidi-char-sets-cp1255.c,
|
||||
charset/fribidi-char-sets-cp1255.h,
|
||||
charset/fribidi-char-sets-cp1256.c,
|
||||
charset/fribidi-char-sets-cp1256.h,
|
||||
charset/fribidi-char-sets-iso8859-6.c,
|
||||
charset/fribidi-char-sets-iso8859-6.h,
|
||||
charset/fribidi-char-sets-iso8859-8.c,
|
||||
charset/fribidi-char-sets-iso8859-8.h,
|
||||
charset/fribidi-char-sets-list.h, charset/fribidi-char-sets-utf8.c,
|
||||
charset/fribidi-char-sets-utf8.h, charset/fribidi-char-sets.c,
|
||||
charset/fribidi-char-sets.h, doc/Makefile.am, gen.tab/Makefile.am,
|
||||
gen.tab/gen-bidi-type-tab.c, gen.tab/gen-mirroring-tab.c,
|
||||
gen.tab/packtab.c, gen.tab/packtab.h,
|
||||
gen.tab/unidata/BidiMirroring.txt, gen.tab/unidata/ReadMe.txt,
|
||||
lib/Headers.mk, lib/Makefile.am, lib/bidi-type-table.i,
|
||||
lib/bidi-types-list.h, lib/bidi-types.h, lib/common.h, lib/debug.h,
|
||||
lib/fribidi-begindecls.h, lib/fribidi-bidi-type.c,
|
||||
lib/fribidi-bidi-type.h, lib/fribidi-bidi-types.c,
|
||||
lib/fribidi-bidi-types.h, lib/fribidi-bidi.c, lib/fribidi-bidi.h,
|
||||
lib/fribidi-common.h, lib/fribidi-config.h.in,
|
||||
lib/fribidi-enddecls.h, lib/fribidi-env.c, lib/fribidi-env.h,
|
||||
lib/fribidi-mem.c, lib/fribidi-mirroring.c,
|
||||
lib/fribidi-mirroring.h, lib/fribidi-types.h,
|
||||
lib/fribidi-unicode-version.h, lib/fribidi-unicode.h,
|
||||
lib/fribidi.c, lib/fribidi.h, lib/mem.h, lib/mirroring-table.i,
|
||||
test/Makefile.am, test/run.tests, test/test_CapRTL_explicit.input,
|
||||
test/test_CapRTL_explicit.reference,
|
||||
test/test_CapRTL_implicit.input,
|
||||
test/test_CapRTL_implicit.reference,
|
||||
test/test_ISO8859-8_hebrew.input,
|
||||
test/test_ISO8859-8_hebrew.reference,
|
||||
test/test_UTF-8_persian.input, test/test_UTF-8_persian.reference,
|
||||
test/test_UTF-8_reordernsm.input,
|
||||
test/test_UTF-8_reordernsm.reference: Initial revision
|
||||
|
||||
2004-04-21 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* CVSROOT/checkoutlist, CVSROOT/loginfo, CVSROOT/syncmail:
|
||||
fribidi-commit list notification added.
|
||||
|
||||
2004-04-10 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* CVSROOT/cvsignore: Added *~ and *.tmp.
|
||||
|
||||
2004-04-07 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* CVSROOT/cvsignore: Added with defaults for autotools projects.
|
||||
|
||||
2004-03-13 Behdad Esfahbod <behdad@gnu.org>
|
||||
|
||||
* CVSROOT/checkoutlist, CVSROOT/commitinfo, CVSROOT/config,
|
||||
CVSROOT/cvswrappers, CVSROOT/editinfo, CVSROOT/loginfo,
|
||||
CVSROOT/modules, CVSROOT/notify, CVSROOT/rcsinfo, CVSROOT/taginfo,
|
||||
CVSROOT/verifymsg: initial checkin
|
||||
|
||||
For older changes see ChangeLog.old
|
703
3party/fribidi/ChangeLog.old
Normal file
703
3party/fribidi/ChangeLog.old
Normal file
|
@ -0,0 +1,703 @@
|
|||
2002-12-22 Behdad Esfahbod <fribidi@behdad.org>
|
||||
* Makefile.am: Added fribidi_types.i to
|
||||
libfribidiinc_HEADERS, to fix bug reported by Omer Zak.
|
||||
|
||||
2002-12-10 Behdad Esfahbod <fribidi@behdad.org>
|
||||
* Created CVSROOT entries.
|
||||
|
||||
2002-08-07 Behdad Esfahbod <fribidi@behdad.org>
|
||||
* AUTHORS: Added Tomas Frydrych <tomas@frydrych.uklinux.net>.
|
||||
* READMY: Moved AbiWord to applications that use fribidi.
|
||||
* fribidi.h: Removed #include "fribidi_mem.h".
|
||||
* fribidi_config.h: Added to CVS, to make MSVC builds from CVS
|
||||
possible.
|
||||
* win/*: Added to CVS.
|
||||
|
||||
2002-08-01 Behdad Esfahbod <fribidi@behdad.org>
|
||||
* *.c, *.h, fribidi_config.h.in, configure.in, acconfig.h: Applied
|
||||
and completed the patch from Tomas Frydrych, to add FRIBIDI_EXPORT
|
||||
and FRIBIDI_API symbols. These symbols are needed for ports of
|
||||
fribidi to Windows and other platforms.
|
||||
* fribidi_char_sets.i, fribidi_types.i: Added.
|
||||
|
||||
2002-06-17 Behdad Esfahbod <fribidi@behdad.org>
|
||||
* fribidi_unicode.h: Set Unicode chars based on sizeof FriBidiChar.
|
||||
Now if one changes FriBidiChar to 16bit, and regenerate char_type
|
||||
tables, they will be 16bit too.
|
||||
|
||||
2002-05-19 Behdad Esfahbod <fribidi@behdad.org>
|
||||
* Fribidi 0.10.4 released.
|
||||
* configure.in: Changed version information.
|
||||
|
||||
2002-05-18 Behdad Esfahbod <fribidi@behdad.org>
|
||||
* packtab.c: Updated the search and output generating routines,
|
||||
to use select among int8, int16 and int32 types, this helps to
|
||||
compress better, and generate fewer symbols.
|
||||
|
||||
2002-05-16 Behdad Esfahbod <fribidi@behdad.org>
|
||||
* fribidi_wcwidth.c: Updated to latest source of 2002-05-08.
|
||||
* fribidi_wcwidth.i: Added, fribidi_wcwidth.c includes this to reduces
|
||||
changes needed in fribidi_wcwidth.c.
|
||||
* fribidi_mem.h, fribidi_types.h, *.c: Common type names like int32,
|
||||
boolean, ..., changed name to have fribidi prefix.
|
||||
* .indent.pro: Updated type names.
|
||||
* fribidi_char_sets_utf8.c: Fixed to support 4-byte length utf-8
|
||||
sequences.
|
||||
|
||||
2002-05-04 Behdad Esfahbod <fribidi@behdad.org>
|
||||
* fribidi_wcwidth.c: Updated to latest source of 2002-05-03.
|
||||
|
||||
2002-04-07 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* unidata/*, fribidi_unicode.h, fribidi_wcwidth.c: Update to
|
||||
Unicode 3.2.
|
||||
* configure.in: Version information updated.
|
||||
* fribidi.c: Version information changed to contain Unicode version too.
|
||||
* 0.10.3 released.
|
||||
|
||||
2002-03-25 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi.c: Fixed a bug introduced in adding L3 rule.
|
||||
|
||||
2002-03-15 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* 0.10.2 released.
|
||||
* configure.in: Changed version to 0.10.2.
|
||||
|
||||
2002-03-15 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* packtab.c: Updated the output generating routine, to generate much
|
||||
fewer symbols, to reduce the relocation time (suggested by Owen
|
||||
Taylor).
|
||||
|
||||
2002-03-15 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi.c, fribidi.h: Applied the patch from
|
||||
Dominique Unruh <dominique@unruh.de> to reorder the NSM character
|
||||
to follow their base character (rule L3), fribidi_reorder_nsm_status(),
|
||||
fribidi_set_reorder_nsm() added.
|
||||
* fribidi_main.c: Option --reordernsm added, also --test sets
|
||||
--reordernsm.
|
||||
* TODO: Done task for rule L3 removed.
|
||||
* AUTHORS: Dominique Unruh <dominique@unruh.de> added.
|
||||
* tests/test_UTF-8_nsmreorder.input,
|
||||
tests/test_UTF-8_nsmreorder.reference: Added.
|
||||
* NEWS: Updated, will be used to reflect each release News.
|
||||
|
||||
2002-03-12 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi.spec.in: Small cleanup.
|
||||
|
||||
2002-03-08 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* Makefile.am: Small cleanup.
|
||||
* bootstrap: automake options removed, added in Makefile.am.
|
||||
|
||||
2002-01-25 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* Makefile.am: Added fribidi.spec to distribution, to be able to make
|
||||
RPMs from released distribution with 'rpm -tb'.
|
||||
* fribidi.c: Added 'do { ... } while (0)' stuff around #defined codes.
|
||||
|
||||
2002-01-23 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi_create_char_types.c, fribidi_create_mirroring.c: Changed
|
||||
to use sprintf() instead of snprintf().
|
||||
|
||||
2002-01-04 Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* FriBidi 0.10.1 released.
|
||||
* configure.in: Changed the version to 0.10.1.
|
||||
|
||||
2002-01-18 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* configure.in, fribidi.spec.in: Clean up, different version components
|
||||
defined, rpm names changed from fribidi to fribidi{majorversion}.
|
||||
|
||||
2002-01-14 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi.c: Rewrote run_length_encode_types() main loop.
|
||||
|
||||
2002-01-12 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi.spec.in: Define RPM serial version as interface version.
|
||||
* TODO: New tasks added.
|
||||
|
||||
2002-01-11 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* packtab.c: Fixed the bug Owen Taylor <otaylor@redhat.com>, defines
|
||||
internal arrays as "static const" in output.
|
||||
* fribidi_create_char_types.c, fribidi_create_mirroring.c: Fixed to
|
||||
add "#ifndef ... #define ..." stuff around output.
|
||||
|
||||
2002-01-10 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* configure.in: Changed the version to 0.10.1pre.
|
||||
* TODO: Done tasks removed.
|
||||
* *.h: "extern C" stuff added.
|
||||
* fribidi-config.in: Include path changed from @includedir@/fribidi
|
||||
to @includedir@.
|
||||
* fribidi.c: Set FRIBIDI_CHUNK_SIZE according to MEM_OPTIMIZED flag
|
||||
to 16 or 128.
|
||||
* fribidi.c, fribidi_unicode.h, conformance/test: Do not set
|
||||
MAX_LEVEL to 15 if flag DEBUG defined, renamed to
|
||||
UNI_MAX_BIDI_LEVEL and moved to fribidi_unicode.h, should not check
|
||||
fribidi with debug-enabled reference code anymore. Updated
|
||||
conformance/test to reflect this change.
|
||||
* README: Sample input and output removed, refered to tests directory
|
||||
* fribidi_config.h.in: Added, configure creates fribidi_config.h from
|
||||
this.
|
||||
* fribidi.spec.in: Added, configure creates fribidi.spec from this.
|
||||
It can be used to create RPM packages.
|
||||
|
||||
2002-01-04 Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* FriBidi 0.10.0 released.
|
||||
* configure.in: Changed the version to 0.10.0.
|
||||
|
||||
2002-01-02 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* bootstrap: automake option -a added
|
||||
* fribidi_types.h: FriBidiStrIndex type changed from uint16 to int.
|
||||
FriBidiLevel introduced, as uint8 to hold the type for bidi levels.
|
||||
* fribidi.c, fribidi.h, fribidi_utils.c, fribidi_main.c: Updated to
|
||||
use FriBidiLeveli and FriBidiStrIndex.
|
||||
* fribidi.h, fribidi.c: fribidi_remove_explicits() replaced by
|
||||
fribidi_remove_bidi_marks() which also updates l2v, v2l and levels.
|
||||
* fribidi.h, fribidi_char_type.c: fribidi_get_types() added.
|
||||
* wcwidth.c: Replaced by fribidi_wcwidth.c.
|
||||
* fribidi_wcwidth.c: Markus Kuhn's implementation of wcwidth(),
|
||||
updated to use fribidi's types.
|
||||
* fribidi.pc.in: Added, input file for pkgconfig support.
|
||||
* configure.in, Makefile.am: Updated to make fribidi.pc, which
|
||||
pkgconfig needs.
|
||||
* AUTHORS: Abel Cheung <maddog@linux.org.hk> added, has implemented
|
||||
pkgconfig support.
|
||||
* fribidi_char_sets.h, fribidi_char_sets.c: Check for macro
|
||||
FRIBIDI_INTERFACE_1 to define fribidi_*_to_unicode functions with
|
||||
interface version 1.
|
||||
* Makefile.am: A small dependency problem fixed.
|
||||
* unidata/README: Added, Unicode disclaimer.
|
||||
* Makefile.am: unidata/README, unidata/UnicodeData.txt,
|
||||
BidiMirroring.txt: Added to distribution files.
|
||||
* Removed wget mechanism for autogetting the Unicode data files.
|
||||
|
||||
2001-12-31 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* configure.in: Check for sed added.
|
||||
* Makefile.am: Scripts fixed to work with sh (not bash).
|
||||
|
||||
2001-12-14 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi_get_type.c: Removed, replaced by fribidi_char_type.c and
|
||||
fribidi_mirroring.c.
|
||||
* Makefile.noglib, fribidi_mini_glib.c, fribidi_mini_glib.h: removed,
|
||||
no glib dependency, replaced by fribidi_mem.c, and fribidi_mem.h.
|
||||
* fribidi_tables.i: Removed, replaced by fribidi_tab_mirroring.i,
|
||||
fribidi_tab_char_type_2.i, and fribidi_tab_char_type_9.i.
|
||||
* unidata/CreateGetType.pl: Removed, replaced by
|
||||
fribidi_create_mirroring.c, and fribidi_create_char_types.c.
|
||||
* tests/test-CapRTL, tests/test-CapRTL.reference: Removed, replaced by
|
||||
tests/test_CapRTL_implicit.input, and
|
||||
tests/test_CapRTL_implicit.reference.
|
||||
* tests/test-explicit, tests/test-explicit.reference: Removed, replaced
|
||||
by tests/test_CapRTL_explicit.input, and
|
||||
tests/test_CapRTL_explicit.reference.
|
||||
* tests/test-hebrew, tests/test-hebrew.reference: Removed, replaced by
|
||||
tests/test_ISO8859-8_hebrew.input, and
|
||||
tests/test_ISO8859-8_hebrew.reference.
|
||||
* tests/test_CapRTL_implicit.input,
|
||||
tests/test_CapRTL_implicit.reference,
|
||||
tests/test_CapRTL_explicit.input,
|
||||
tests/test_CapRTL_explicit.reference,
|
||||
tests/test_ISO8859-8_hebrew.input,
|
||||
tests/test_ISO8859-8_hebrew.reference,
|
||||
tests/test_UTF-8_persian.input,
|
||||
tests/test_UTF-8_persian.reference: Added.
|
||||
* wcwidth.c: Added, determines a characters width, to break lines.
|
||||
* fribidi_create_mirroring.c: Added, creates fribidi_tab_mirroring.i
|
||||
from unidata/BidiMirroring.txt
|
||||
* fribidi_create_char_types.c: Added, creates fribidi_tab_char_type_*.i
|
||||
from unidata/UnicodeData.txt
|
||||
* fribidi_tab_mirroring.i: Added, mirroring table.
|
||||
* fribidi_tab_char_type_2.i, fribidi_tab_char_type_9.i: Added, as
|
||||
default character type tables, one optimized for speed, one for
|
||||
space, MEM_OPTIMIZED flag will decide which one to use.
|
||||
* fribidi_mirroring.c: Added, #includes fribidi_tab_mirroring.i.
|
||||
* fribidi_char_type.c: Added, #includes one of
|
||||
'fribidi_tab_char_type_*.i'.
|
||||
* fribidi_mem.c, fribidi_mem.h: Added, define some types and functions
|
||||
that was previously defined by glib.
|
||||
* fribidi_unicode.h: Added, Unicode-dependent definitions moved here.
|
||||
* packtab.c, packtab.h: Added, fribidi_create_char_type.c uses these,
|
||||
to compress the types table.
|
||||
|
||||
* AUTHORS: Markus Kuhn added, as he has wrote wcwidth.c.
|
||||
* INSTALL: "Building without glib" material removed.
|
||||
* TODO: Updated, done tasks removed, new tasks added.
|
||||
* NEWS: Updated, compile farm results added.
|
||||
* Makefile.am: Lots of changes, to recent changes, new special
|
||||
target fribidi_tab_char_type_N.i added, which N is replaced with
|
||||
a digit between 2 and 9, and makes a table with compress level N.
|
||||
* acinclude.m4: glib material removed.
|
||||
* configure.in: VERISON update, INTERFACE_VERSION added. glib
|
||||
material removed, fribidi_tab_char_types_N.i configuration added,
|
||||
option --without-charsets added. Also creates fribidi_config.h.
|
||||
* fribidi-config.in: A small bug fixed, to set the --cflags output
|
||||
correctly, glib material removed.
|
||||
* fribidi.h: Preprocessor material added for easier link with c++
|
||||
codes, new headers included.
|
||||
* fribidi_benchmark.c: Character set dependency removed, uses no
|
||||
charset code.
|
||||
* fribidi_char_sets*.c, fribidi_char_sets*.h: Preprocessor material
|
||||
added to reflect the effect of --without-charsets configure option.
|
||||
* fribidi_char_sets_utf8.c, fribidi_char_sets_utf8.h: Unused code
|
||||
removed.
|
||||
* fribidi_main.c: Changed to reflect the effect of --without-charsets
|
||||
configure option, and use iconv if no charsets. Option --nobreak
|
||||
added for no line breaks. Line break code rewrote to break correctly
|
||||
in UTF-8 mode.
|
||||
* fribidi_types.h: In definition of FriBidiChar values, states that
|
||||
sign bit is reserved for user's private use, FRIBIDI_TYPE_PRIVATE
|
||||
macro defined to check for this.
|
||||
* run.tests: Changed to test fribidi with all test files in tests/
|
||||
directory, and also automatically extract the character set from
|
||||
the test's name.
|
||||
* *.c, *.h: glib material replaced with their equivalents: gchar
|
||||
replaced with char, gint replaced by int, ...
|
||||
|
||||
2001-12-11 Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* FriBidi 0.9.1 released.
|
||||
* configure.in: changed the version to 0.9.1.
|
||||
|
||||
2001-12-10 Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* fribidi.c: fixed a memory boundary bug (fix by Hidetoshi Tajima
|
||||
<hidetoshi.tajima@sun.com>).
|
||||
* INSTALL: added a comment for how to install from CVS (suggested by
|
||||
Omer Zak); cleaned up some vertical spacing.
|
||||
* ChangeLog: changed Behdad's address to 'bamdad.org'.
|
||||
|
||||
2001-08-23 Behdad Esfahbod <behdad@sharif.edu>
|
||||
* acinclude.m4, ltmain.sh, ltmain.in, ltconfig: Updated with
|
||||
libtool-1.4 to configure under latest cygwin.
|
||||
|
||||
2001-05-29 Behdad Esfahbod <behdad@sharif.edu>
|
||||
* fribidi_get_type.c: Updated to use new 'fribidi_tables.i'.
|
||||
* fribidi_utils.c: very small code cleanup.
|
||||
|
||||
2001-05-29 Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* unidata/CreateGetType.pl, fribidi_tables.i, Makefile.am: Updated
|
||||
for Unicode 3.1. Replace PropList parsing with UnicodeData parsing.
|
||||
Unassigned characters are now treated as specified in Table 3-7 of
|
||||
UAX #9.
|
||||
* unidata/PropList.txt: removed.
|
||||
* unidata/UnicodeData.txt: added.
|
||||
|
||||
2001-05-22 Behdad Esfahbod <behdad@sharif.edu>
|
||||
* fribidi_char_sets_utf8.c: Fixed a little bug in utf-8 -> unicode
|
||||
converter.
|
||||
|
||||
2001-05-16 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi.c: Fixed a bug in rule W1, that caused W5 not to work
|
||||
properly when adjacent to a NSM.
|
||||
|
||||
2001-05-06 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi_types.h: Changed to use #define instead of enum's
|
||||
work properly with machines with 16bit ints.
|
||||
|
||||
2001-04-13 Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* configure.in: Added Owen Taylor's patch to make warnings on
|
||||
by default.
|
||||
|
||||
2001-04-12 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* configure.in, Makefile.am: Changed to use getopt.* if no glibc.
|
||||
* getopt.c, getopt.h, getopt1.c: Added to be used if no glibc.
|
||||
|
||||
2001-04-11 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* acinclude.m4: Added macro definitions of libtool.
|
||||
* configure.in, Makefile.am: Changed to use fribidi_mini_glib
|
||||
whenever glib library not found.
|
||||
* TODO: Removed done tasks.
|
||||
|
||||
2001-04-11 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi_char_sets_*.c: Fixed bugs introduced in guchar to gchar
|
||||
conversion.
|
||||
|
||||
2001-04-10 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* *.c/*.h: Changed all "guchar"s to "gchar" and neede casts done.
|
||||
* Makefile.am: Added MAINTAINERCLEANFILES to remove files
|
||||
"configure", "config.h.in", "Makefile.in", "aclocal.m4" by
|
||||
maintainer-clean target.
|
||||
|
||||
2001-04-07 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi_main.c, fribidi_benchmark.c: Check for HAVE_CONFIG_H flag.
|
||||
|
||||
2001-04-03 Behdad Esfahbod <behdad@sharif.edu>
|
||||
* fribidi_mini_glib.h, fribidi_mini_glib.c: Added functions
|
||||
for working with MemChunks, some more definitions of glib added.
|
||||
* fribidi.c: No more dependency on FRIBIDI_USE_MINI_GLIB flag.
|
||||
|
||||
2001-04-01 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* Makefile.noglib: fribidi_types.c added to sources.
|
||||
* fribidi.c: Fixed a bug in free_rl_list() when USE_SIMPLE_MALLOC
|
||||
was set, that caused core dumps.
|
||||
* fribidi_main.c: Option --nomirror added.
|
||||
* fribidi_mini_glib.h: Fixed a bug that caused core dumps, the bug
|
||||
was in macro definition #define g_new(T, n) malloc(n * sizeof(T)),
|
||||
that caused g_new(X, n + 1) allocate (n + (1 * sizeof(X))) instead
|
||||
of ((n + 1) * sizeof(X))!, that should be
|
||||
#define g_new(T, n) malloc((n) * sizeof(T)).
|
||||
* fribidi_mini_glib.h: Does not set USE_SIMPLE_ALLOC anymore.
|
||||
* fribidi.c: Use g_malloc when FRIBIDI_USE_MINI_GLIB is set, but
|
||||
still use the free_type_link_list, for efficiency.
|
||||
|
||||
2001-03-31 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi_benchmark.c: #included <stdarg.h>, to compile under cygwin.
|
||||
* fribidi.c, fribidi.h: Changed fribidi_log2vis_get_embedding_levels()
|
||||
to return TRUE if successful and FALSE otherwise.
|
||||
* fribidi.c: Function bidi_string_strlen() removed, because we
|
||||
have not assumed that a fribidi string is ended with char 0.
|
||||
Fixed all the bugs that roozbeh found and some more. Some more
|
||||
debug information added. All internal functions defined as static.
|
||||
* fribidi_main.c: Set to do not allocate visual array, if --novisual
|
||||
options set.
|
||||
* .indent.par: Added, it helps program "indent" to change the
|
||||
appearance of sources to GNU style, each typedef should be added
|
||||
to this file too.
|
||||
|
||||
2001-03-31 Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* fribidi.c, fribidi_benchmark.c, fribidi_char_set_cap_rtl.c:
|
||||
removed some unused variables.
|
||||
* fribidi_char_sets*.c, fribidi_main.c: #included <string.h>.
|
||||
* fribidi.c, fribidi_char_sets_cap_rtl.c: added some comment lines
|
||||
to places that bugs probably exist. find with searching for "--RP".
|
||||
* COPYING.LIB: renamed to COPYING (based on a recent suggestion on
|
||||
GNU web site).
|
||||
* bootstrap: removed lines that suppressed warnings about missing
|
||||
COPYING.
|
||||
|
||||
2001-03-30 Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* Makefile.noglib: replaced by a new version from Dan Kenigsberg
|
||||
<danken@cs.technion.ac.il>.
|
||||
* AUTHORS: added Dan Kenigsberg.
|
||||
* '*.c', '*.h': changed all "//" comments to "/* */" pairs.
|
||||
|
||||
2001-03-30 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi.c, fribidi.h: Changed fribidi_log2vis() to return TRUE
|
||||
if successful and FALSE otherwise.
|
||||
* fribidi_main.c, fribidi_benchmark.c: Changed to use getopt library,
|
||||
to handle command line parameters better.
|
||||
* fribidi_main.c: Changed to if COLUMNS enviroment variable is
|
||||
defined, use its value for text width.
|
||||
|
||||
2001-03-29 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi.c, fribidi_char_sets.h, fribidi_char_sets_cap_rtl.c,
|
||||
fribidi_main.c, tests/test-CapRTL, tests/test-CapRTL.reference,
|
||||
tests/test-hebrew, tests/test-hebrew.reference: Fixed a bug in
|
||||
--clean that didn't remove RLM and LRM, and updated tests to reflect
|
||||
this change.
|
||||
* fribidi_main.c: Options --wltr and --wrtl added.
|
||||
* TODO: A recently done task removed.
|
||||
|
||||
2001-03-29 Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* fribidi-0.9.0: fribidi-0.9.0 released.
|
||||
|
||||
2001-03-28 Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* bootstrap: swapped 'aclocal' and 'autoheader'. do not warn for
|
||||
missing COPYING.
|
||||
* COPYING: removed.
|
||||
* COPYING.LIB: added.
|
||||
* README, *.h, *.c, unidata/CreateGetType.pl: changes to reflect LGPL.
|
||||
* Makefile.am: added 'bootstrap' to distribution.
|
||||
|
||||
2001-03-28 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* Makefile.am: New target "fribidi_tables.i" defined to download
|
||||
"unidata/BidiMirroring.txt" and "unidata/PropList.txt" if not
|
||||
available, and call "unidata/CreateGetType.pl" if needed to update
|
||||
"fribidi_tables.i".
|
||||
* fribidi_types.h, fribidi_types.c, fribidi_get_type.c,
|
||||
unidata/CreateGetType.pl: Define symbol MEM_OPTIMIZED added to
|
||||
make Dov happy :-), if MEM_OPTIMIZED defined, fribidi_tables.i
|
||||
entries will be guint8 instead of gint to free 27KB extra memory
|
||||
that was used to make fribidi use bitmasks, the overhead will be
|
||||
three array lookups instead of two, in fribidi_get_type().
|
||||
* fribidi_main.c: Options --verbose and --basedir added.
|
||||
Options --test and --caprtl updated.
|
||||
* conformance/test_gen.c: File name changed to
|
||||
conformance/test_gen_explicit.c
|
||||
* run.tests: Make to work with "make test" and "make check" when
|
||||
making from other directories.
|
||||
* fribidi.c: Rule L1 ("Reset the embedding levels") moved from
|
||||
fribidi_log2vis() to fribidi_analyse_string(), to affect
|
||||
fribidi_log2vis_get_embedding_levels() too. New functions
|
||||
fribidi_mirroring_status() and fribidi_set_mirroring() added to
|
||||
turn on or off mirroring (Rule L3). Changed to warn about too long
|
||||
strings only if at least one of position_L_to_V_list or
|
||||
position_V_to_L_list is asked.
|
||||
* fribidi.h: Updated to reflect new functions in fribidi.c,
|
||||
#include "config.h" removed, and added to each .c file that use it,
|
||||
because config.h should not be included by other apps/libs.
|
||||
* fribidi.c, fribidi_main.c, fribidi_benchmark.c: #included "config.h",
|
||||
Now, --version options shows the options that library is compiled
|
||||
with (DEBUG, MEM_OPTIMIZED, USE_SIMPLE_MALLOC, FRIBIDI_USE_MINI_GLIB).
|
||||
* fribidi_types.h, fribidi.c, fribidi.h, fribidi_utils.c: TypeDefined
|
||||
FriBidiStrIndex as guint16 and used for the type of
|
||||
position_L_to_V_list and postition_V_to_L_list arrays.
|
||||
|
||||
2001-03-27 Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* fribidi.h: Removed definition of PACKAGE and VERSION. #included
|
||||
"config.h"
|
||||
* Makefile.am: Make "make dist" work.
|
||||
|
||||
2001-03-27 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi.c, fribidi_types.h: Some bugs introduced in the last
|
||||
changes removed, "Resolving weak types" rewritten, no known
|
||||
conformance bugs. Defined macros for external use, changed their
|
||||
name to have a prefix of FRIBIDI_.
|
||||
* fribidi.c, fribidi.h: Function fribidi_remove_explicits() added
|
||||
to remove the explicit marks from a fribidi string.
|
||||
* fribidi.c: Fixed a bug that caused position_l_to_v and
|
||||
position_v_to_l not to calculated correctly.
|
||||
* fribidi.h: Defined symbols PACKAGE and VERSION manually, autoconf
|
||||
should set them, but I don't know how to.
|
||||
* fribidi_char_sets.c, fribidi_char_sets.h, fribidi_char_sets_*:
|
||||
Each charset moved to a pair of .c/.h file. CapRTL defined as a
|
||||
character set for testing with the reference implementation, with
|
||||
explicit marks escape strings, beware that it differs from the old
|
||||
capital rtl, it is a character set, only for test, with the property
|
||||
that contains all character types in ascii characters. Some
|
||||
functions defined to make charset conversion easy. An interface
|
||||
designed for adding new charsets.
|
||||
* fribidi_main.c: API revised, many new options added,
|
||||
Default charset changed to UTF-8
|
||||
Option --caprtl simulates the old style (same as --charset CapRTL)
|
||||
Option --test simulates the old test_fribidi (same as --fill
|
||||
--showinput --clean)
|
||||
Option --clean now works for all charsets.
|
||||
Option --fill implementated.
|
||||
Options --version, --showinput, --ltov, --vtol, --levels, --changes,
|
||||
--novisual, --charsetdesc added.
|
||||
Now use the charset conventions, lots of code removed.
|
||||
* test_fribidi.c: Got removed! `fribidi --test' should be used
|
||||
instead.
|
||||
* fribidi_benchmark: Explicit support added, now benchmarks with
|
||||
two strings, one without explicit marks and one with them.
|
||||
* run.tests, tests/test-CapRTL, tests/test-CapRTL.reference,
|
||||
tests/test-explicit, tests/test-explicit.reference,
|
||||
tests/test-hebrew, tests/test-hebrew.reference: New test datas
|
||||
added, for better testing of weak types and explicit support. Test
|
||||
outputs updated for the new CapRTL character set. Test output for
|
||||
test-hebrew added.
|
||||
* Makefile.in, Makefile.am: Updated to use fribidi instead of
|
||||
test_fribidi for test targets. New files added.
|
||||
* TODO: Some done tasks removed, some new tasks added!
|
||||
|
||||
2001-03-09 Dov Grobgeld <dov@orbotech.orbotech.co.il>
|
||||
* fribidi_mini_glib.c, fribidi_mini_glib.h: Applied patch
|
||||
received from Dan Kenigsberg <danken@cs.technion.ac.il> that
|
||||
allows compiling fribidi without glib if the flag
|
||||
FRIBIDI_USE_MINI_GLIB is turned on. This option is currently
|
||||
turned on when compiling through Makefile.noglib .
|
||||
* TODO: Added the task of making autoconf automatically turn
|
||||
on FRIBIDI_USE_MINI_GLIB if glib isn't found.
|
||||
|
||||
2001-03-07 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi.c: Removed dead codes, many parts rewritten more efficient,
|
||||
including Resolving Neutrals, Resolving Implicit Levels and ....
|
||||
* fribidi_types.h: Almost redefined, to use bitfields for char types,
|
||||
and many macros defined for efficient querying about char types.
|
||||
Some unused char types removed, also char types L, R, N converted
|
||||
to LTR, RTL and ON everywhere.
|
||||
* CreateGetType.pl: Changed to define tables as arrays of
|
||||
FriBidiCharType instead of guchar.
|
||||
* conformance/: Updated some scripts for automatic testing with
|
||||
reference implementation.
|
||||
|
||||
2001-02-19 Behdad Esfahbod <behdad@bamdad.org>
|
||||
* fribidi.c: Added support for all explicit marks (embeddings and
|
||||
overrides), it means rules X1 .. X10 of specification.
|
||||
* fribidi.c: Added support for L1 rule of specification, it's
|
||||
resetting the char type of some characters, just before reordering.
|
||||
* fribidi.c: Added 'AL' to types that change the paragraph embedding
|
||||
level, it previously only checked for 'R'.
|
||||
* fribidi.c: Define symbol NO_STDIO changed to DEBUG, to turn on or
|
||||
off all debug codes compile time, also a function fribidi_set_debug,
|
||||
turns on and off the debug output generations in run time.
|
||||
* fribidi.c: Added some more debug information, all debug informations
|
||||
revised and go to stderr now.
|
||||
* fribidi.c: Fixed a bug in rule W5, that is when some european
|
||||
terminators are between some arabic letters and some european
|
||||
numbers.
|
||||
* fribidi_main.c: Added support for inputting explicit marks, in
|
||||
CapRTL charset mode.
|
||||
* fribidi_main.c: Added command line option for debug mode.
|
||||
* fribidi_main.c: Fixed a small bug that would annoy when the size
|
||||
of original string may be different to the derived one.
|
||||
* fribidi_main.c: Fixed a small bug in padding when the size of the
|
||||
out string was more than the page width.
|
||||
* fribidi_types.h: Added some types needed for debug info.
|
||||
|
||||
2001-02-19 Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* CreateGetType.pl: changed to use BidiMirroring.txt instead
|
||||
of UnicodeData.txt.
|
||||
|
||||
2000-11-12 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Released fribidi-0.1.15.
|
||||
* fribidi.c: [OZ] Applied Owen Taylor's patch from 2000-07-19 to
|
||||
fribidi.c. The patch affects pp->prev rules for the last element
|
||||
in cases W3 and W7.
|
||||
* fribidi.c: [OZ] fribidi_log2vis() and
|
||||
fribidi_log2vis_get_embedding_levels() now check for len==0 and if
|
||||
so, they return immediately (instead of getting stuck).
|
||||
* fribidi.c: [OZ] new_type_link() is now declared as
|
||||
new_type_link(void) to prevent a compiler error message.
|
||||
* fribidi.c: [OZ] The positions of the is_v2l_map and len
|
||||
arguments in fribidi_map_range() prototype were switched around,
|
||||
to conform to actual use in the source code file.
|
||||
* fribidi.c: [OZ] The first argument to fribidi_is_char_rtl() was
|
||||
changed from gint8 to guint8, to conform to data type returned by
|
||||
fribidi_log2vis().
|
||||
* fribidi.c: [OZ] bidi_string_strlen() now uses gint rather than int.
|
||||
* fribidi.c: [OZ] bidi_string_reverse() now uses gint rather than int.
|
||||
* fribidi.c: [OZ] int16_array_reverse() is now guint16_array_reverse().
|
||||
* fribidi.c: Added define symbols NO_STDIO, FRIBIDI_MAX_STRING_LENGTH,
|
||||
USE_SIMPLE_MALLOC that may be used to effect what code is being
|
||||
generated.
|
||||
* fribidi_char_sets.h, fribidi_char_sets.c: Added Omer Zaks more
|
||||
general ut8 to unicode and unicode to ut8 functions.
|
||||
* fribidi.c: [OZ] Replaced int to gint to better support embedded
|
||||
libraries.
|
||||
* Applied lots of code contributed by Omer Zak <omerz@actcom.co.il>
|
||||
detailed above.
|
||||
|
||||
|
||||
2000-10-14 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
|
||||
* Released fribidi-0.1.14.
|
||||
|
||||
* CreateGetType.pl, fribidi_tables.i: Applied a patch received
|
||||
from Roozbeh Pournader <roozbeh@sina.sharif.ac.ir> (who has got
|
||||
quite some courage sending an email from Iran to Israel) which
|
||||
updates the character tables according to UnicodeData-3.0.1.txt .
|
||||
|
||||
* fribidi_char_sets.c: Cleaned up the mess and made it compile!
|
||||
|
||||
2000-10-09 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Released fribidi-0.1.13 .
|
||||
* acinclude.m4: Added file including a m4 macro for glib-2.0
|
||||
as suggested by Owen Taylor.
|
||||
* Makefile.am: Added acinclude.m4 to extra sources.
|
||||
* configure.in: Changed it to use new macro.
|
||||
|
||||
2000-05-19 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* fribidi_char_sets.c: Added support for the LRM and RLM
|
||||
characters for the iso-8859-8 converts at unused positions
|
||||
0xFE and 0xFF .
|
||||
* CreateGetType.pl, fribidi.c, fribidi_tables.i, fribidi_types.h:
|
||||
Updated the algorithms to be consistance with the latest Unicode
|
||||
Technical Report #9 release. Still no explicit overrides, but
|
||||
hopefully the implicit algorithm now works according to the
|
||||
specification.
|
||||
* CreateGetType.pl, fribidi_tables.i: Overwrote the character
|
||||
bidi-assignment of all non-assigned characters within blocks with
|
||||
the property of the previous character in order to create a few
|
||||
more reused secondary lookup character tables.
|
||||
* CreateGetType.pl, fribidi.c, fribidi_tables.i: Added Owen
|
||||
Taylor's speed patch that speeds up fribidi by a factor of 4!
|
||||
Owen's patch consists of two parts. The first part is a double
|
||||
table lookup scheme for accessing the character properties,
|
||||
replacing the old binary search. The second part is a reuse of the
|
||||
links in the character properties linked list in order to minimize
|
||||
mallocs.
|
||||
|
||||
2000-05-02 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Released fribidi-0.1.11 .
|
||||
* Fixed one remaining bug in Makefile.am.
|
||||
|
||||
2000-04-27 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Released fribidi-0.1.10 .
|
||||
* Added libtool configuration added by Manish Singh.
|
||||
* Added sevaral arabic charset converts contributed by Pablo
|
||||
Saratxaga.
|
||||
|
||||
2000-03-20 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Released fribidi-0.1.9 .
|
||||
|
||||
2000-02-22 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* fribidi_types.h: Changed basic type FriBidiChar to guint32
|
||||
which corresponds to UCS4, which is more reasonable to use.
|
||||
|
||||
2000-02-21 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* tests/test-capital-rtl: Added new tests to check percentage
|
||||
signs and updated tests.reference to reflect this.
|
||||
* fribidi.c(fribidi_analyse_string): Added the rule
|
||||
EN,ET=>EN,EN which takes care of the problem of percentage
|
||||
signs were put in the wrong place.
|
||||
|
||||
2000-02-20 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* fribidi.c: Fixed several memory leaks found by Owen Taylor.
|
||||
|
||||
2000-01-01 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Added documentation of the utility functions to fribidi.h .
|
||||
|
||||
1999-12-24 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Added new function fribidi_is_char_rtl() that uses the
|
||||
embedding levels or the base dir to determine the resolved
|
||||
direction of a character.
|
||||
* Added new function fribidi_xpos_resolve() to fribidi_utils
|
||||
that is needed in an gui interaction to resolve a mouse event
|
||||
to the proper logical and visual positions.
|
||||
|
||||
|
||||
1999-12-21 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Added patches for UTF8 support contributed by raphael@cs.uky.edu.
|
||||
|
||||
1999-12-05 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Added two new types FRIBIDI_TYPE_WL and FRIBIDI_TYPE_WR that
|
||||
indicate weak directions. These directions are used if no strong
|
||||
direction is found in the string.
|
||||
* Changed analyse_string() to return base_type FRIBIDI_TYPE_N if
|
||||
the base direction cannot be determined. It is then up to a higher
|
||||
level protocol to determine the base direction.
|
||||
|
||||
1999-11-22 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Released version 0.1.7.
|
||||
* Added arabic support contributed by Pablo Saratxaga.
|
||||
|
||||
1999-06-20 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Created file fribidi_utils.c which will be used for common
|
||||
patterns that are common in Bidi supported programs.
|
||||
|
||||
1999-04-28 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Fixed bug in fribidi_log2vis which occured if only the v2l
|
||||
array was requested and not the l2v array.
|
||||
* Fixed bug in test_fribidi when using option test_vtol .
|
||||
* Changed types in call to fribidi_log2vis to be more memory
|
||||
conservative.
|
||||
* Added single character translation functions to fribidi_char_sets.
|
||||
|
||||
1999-04-10 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Changed building to use glib-config as glib-1.2 is now released.
|
||||
* Added some short cut optimizations.
|
||||
* Cleaned up the TYPE_RULE_C macro and used in in lots of places.
|
||||
|
||||
1999-02-09 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Added ./ to the execution of test_fribidi in run.tests.
|
||||
|
||||
1999-02-08 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Released 0.1.3 to match the perl module FriBidi.
|
||||
* Added length paramater to fribidi_unicode_to_iso8859_8().
|
||||
* Fixed bug in fribidi.c related to zero length strings.
|
||||
* Released 0.1.2.
|
||||
* Added options -ltr and -rtl to fribidi to force LTR and RTL
|
||||
directions.
|
||||
* Added function fribidi_log2vis_get_embedding_levels() which
|
||||
just returns an array of embedding levels.
|
||||
* Added benchmark program.
|
||||
* Added new check in test_fribidi that checks the changes
|
||||
calculation.
|
||||
* Changed interface to fribidi_log2vis() to include length of
|
||||
string on input and the embedding level of output.
|
||||
* Added function fribidi_find_string_changes() which finds the
|
||||
bounding box of the changes between two FriBidiStrings.
|
||||
|
||||
1999-01-19 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Added the option -bol to fribidi_main.c to print out stuff
|
||||
in the beginning of a line.
|
||||
|
||||
1999-01-14 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Released version 0.1.1
|
||||
* Added program fribidi as a command line interface to the library.
|
||||
|
||||
1999-01-13 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Added flag -nopad to test_fribidi to make it not insert spaces.
|
||||
* Make P1 rules (ES and CS) work only if the span of the ES or
|
||||
the CS is 1. This is the same as in Hebrew Windoze.
|
||||
* Replaced all the ET rules with the simpler ET,EN=>EN,EN
|
||||
* Added `gtk-config --cflags` and `gtk-config -ldflags` to Makefile.am.
|
||||
* Made test_fribidi read from stdin if no file given.
|
||||
* Added options -outputonly to test_fribidi.
|
||||
|
||||
1999-01-11 Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* First Release!
|
291
3party/fribidi/INSTALL
Normal file
291
3party/fribidi/INSTALL
Normal file
|
@ -0,0 +1,291 @@
|
|||
Installation Instructions
|
||||
*************************
|
||||
|
||||
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
|
||||
2006, 2007, 2008 Free Software Foundation, Inc.
|
||||
|
||||
This file is free documentation; the Free Software Foundation gives
|
||||
unlimited permission to copy, distribute and modify it.
|
||||
|
||||
Basic Installation
|
||||
==================
|
||||
|
||||
Briefly, the shell commands `./configure; make; make install' should
|
||||
configure, build, and install this package. The following
|
||||
more-detailed instructions are generic; see the `README' file for
|
||||
instructions specific to this package.
|
||||
|
||||
The `configure' shell script attempts to guess correct values for
|
||||
various system-dependent variables used during compilation. It uses
|
||||
those values to create a `Makefile' in each directory of the package.
|
||||
It may also create one or more `.h' files containing system-dependent
|
||||
definitions. Finally, it creates a shell script `config.status' that
|
||||
you can run in the future to recreate the current configuration, and a
|
||||
file `config.log' containing compiler output (useful mainly for
|
||||
debugging `configure').
|
||||
|
||||
It can also use an optional file (typically called `config.cache'
|
||||
and enabled with `--cache-file=config.cache' or simply `-C') that saves
|
||||
the results of its tests to speed up reconfiguring. Caching is
|
||||
disabled by default to prevent problems with accidental use of stale
|
||||
cache files.
|
||||
|
||||
If you need to do unusual things to compile the package, please try
|
||||
to figure out how `configure' could check whether to do them, and mail
|
||||
diffs or instructions to the address given in the `README' so they can
|
||||
be considered for the next release. If you are using the cache, and at
|
||||
some point `config.cache' contains results you don't want to keep, you
|
||||
may remove or edit it.
|
||||
|
||||
The file `configure.ac' (or `configure.in') is used to create
|
||||
`configure' by a program called `autoconf'. You need `configure.ac' if
|
||||
you want to change it or regenerate `configure' using a newer version
|
||||
of `autoconf'.
|
||||
|
||||
The simplest way to compile this package is:
|
||||
|
||||
1. `cd' to the directory containing the package's source code and type
|
||||
`./configure' to configure the package for your system.
|
||||
|
||||
Running `configure' might take a while. While running, it prints
|
||||
some messages telling which features it is checking for.
|
||||
|
||||
2. Type `make' to compile the package.
|
||||
|
||||
3. Optionally, type `make check' to run any self-tests that come with
|
||||
the package.
|
||||
|
||||
4. Type `make install' to install the programs and any data files and
|
||||
documentation.
|
||||
|
||||
5. You can remove the program binaries and object files from the
|
||||
source code directory by typing `make clean'. To also remove the
|
||||
files that `configure' created (so you can compile the package for
|
||||
a different kind of computer), type `make distclean'. There is
|
||||
also a `make maintainer-clean' target, but that is intended mainly
|
||||
for the package's developers. If you use it, you may have to get
|
||||
all sorts of other programs in order to regenerate files that came
|
||||
with the distribution.
|
||||
|
||||
6. Often, you can also type `make uninstall' to remove the installed
|
||||
files again.
|
||||
|
||||
Compilers and Options
|
||||
=====================
|
||||
|
||||
Some systems require unusual options for compilation or linking that
|
||||
the `configure' script does not know about. Run `./configure --help'
|
||||
for details on some of the pertinent environment variables.
|
||||
|
||||
You can give `configure' initial values for configuration parameters
|
||||
by setting variables in the command line or in the environment. Here
|
||||
is an example:
|
||||
|
||||
./configure CC=c99 CFLAGS=-g LIBS=-lposix
|
||||
|
||||
*Note Defining Variables::, for more details.
|
||||
|
||||
Compiling For Multiple Architectures
|
||||
====================================
|
||||
|
||||
You can compile the package for more than one kind of computer at the
|
||||
same time, by placing the object files for each architecture in their
|
||||
own directory. To do this, you can use GNU `make'. `cd' to the
|
||||
directory where you want the object files and executables to go and run
|
||||
the `configure' script. `configure' automatically checks for the
|
||||
source code in the directory that `configure' is in and in `..'.
|
||||
|
||||
With a non-GNU `make', it is safer to compile the package for one
|
||||
architecture at a time in the source code directory. After you have
|
||||
installed the package for one architecture, use `make distclean' before
|
||||
reconfiguring for another architecture.
|
||||
|
||||
On MacOS X 10.5 and later systems, you can create libraries and
|
||||
executables that work on multiple system types--known as "fat" or
|
||||
"universal" binaries--by specifying multiple `-arch' options to the
|
||||
compiler but only a single `-arch' option to the preprocessor. Like
|
||||
this:
|
||||
|
||||
./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
|
||||
CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
|
||||
CPP="gcc -E" CXXCPP="g++ -E"
|
||||
|
||||
This is not guaranteed to produce working output in all cases, you
|
||||
may have to build one architecture at a time and combine the results
|
||||
using the `lipo' tool if you have problems.
|
||||
|
||||
Installation Names
|
||||
==================
|
||||
|
||||
By default, `make install' installs the package's commands under
|
||||
`/usr/local/bin', include files under `/usr/local/include', etc. You
|
||||
can specify an installation prefix other than `/usr/local' by giving
|
||||
`configure' the option `--prefix=PREFIX'.
|
||||
|
||||
You can specify separate installation prefixes for
|
||||
architecture-specific files and architecture-independent files. If you
|
||||
pass the option `--exec-prefix=PREFIX' to `configure', the package uses
|
||||
PREFIX as the prefix for installing programs and libraries.
|
||||
Documentation and other data files still use the regular prefix.
|
||||
|
||||
In addition, if you use an unusual directory layout you can give
|
||||
options like `--bindir=DIR' to specify different values for particular
|
||||
kinds of files. Run `configure --help' for a list of the directories
|
||||
you can set and what kinds of files go in them.
|
||||
|
||||
If the package supports it, you can cause programs to be installed
|
||||
with an extra prefix or suffix on their names by giving `configure' the
|
||||
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
|
||||
|
||||
Optional Features
|
||||
=================
|
||||
|
||||
Some packages pay attention to `--enable-FEATURE' options to
|
||||
`configure', where FEATURE indicates an optional part of the package.
|
||||
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
||||
is something like `gnu-as' or `x' (for the X Window System). The
|
||||
`README' should mention any `--enable-' and `--with-' options that the
|
||||
package recognizes.
|
||||
|
||||
For packages that use the X Window System, `configure' can usually
|
||||
find the X include and library files automatically, but if it doesn't,
|
||||
you can use the `configure' options `--x-includes=DIR' and
|
||||
`--x-libraries=DIR' to specify their locations.
|
||||
|
||||
Particular systems
|
||||
==================
|
||||
|
||||
On HP-UX, the default C compiler is not ANSI C compatible. If GNU
|
||||
CC is not installed, it is recommended to use the following options in
|
||||
order to use an ANSI C compiler:
|
||||
|
||||
./configure CC="cc -Ae"
|
||||
|
||||
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
|
||||
|
||||
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
|
||||
parse its `<wchar.h>' header file. The option `-nodtk' can be used as
|
||||
a workaround. If GNU CC is not installed, it is therefore recommended
|
||||
to try
|
||||
|
||||
./configure CC="cc"
|
||||
|
||||
and if that doesn't work, try
|
||||
|
||||
./configure CC="cc -nodtk"
|
||||
|
||||
Specifying the System Type
|
||||
==========================
|
||||
|
||||
There may be some features `configure' cannot figure out
|
||||
automatically, but needs to determine by the type of machine the package
|
||||
will run on. Usually, assuming the package is built to be run on the
|
||||
_same_ architectures, `configure' can figure that out, but if it prints
|
||||
a message saying it cannot guess the machine type, give it the
|
||||
`--build=TYPE' option. TYPE can either be a short name for the system
|
||||
type, such as `sun4', or a canonical name which has the form:
|
||||
|
||||
CPU-COMPANY-SYSTEM
|
||||
|
||||
where SYSTEM can have one of these forms:
|
||||
|
||||
OS KERNEL-OS
|
||||
|
||||
See the file `config.sub' for the possible values of each field. If
|
||||
`config.sub' isn't included in this package, then this package doesn't
|
||||
need to know the machine type.
|
||||
|
||||
If you are _building_ compiler tools for cross-compiling, you should
|
||||
use the option `--target=TYPE' to select the type of system they will
|
||||
produce code for.
|
||||
|
||||
If you want to _use_ a cross compiler, that generates code for a
|
||||
platform different from the build platform, you should specify the
|
||||
"host" platform (i.e., that on which the generated programs will
|
||||
eventually be run) with `--host=TYPE'.
|
||||
|
||||
Sharing Defaults
|
||||
================
|
||||
|
||||
If you want to set default values for `configure' scripts to share,
|
||||
you can create a site shell script called `config.site' that gives
|
||||
default values for variables like `CC', `cache_file', and `prefix'.
|
||||
`configure' looks for `PREFIX/share/config.site' if it exists, then
|
||||
`PREFIX/etc/config.site' if it exists. Or, you can set the
|
||||
`CONFIG_SITE' environment variable to the location of the site script.
|
||||
A warning: not all `configure' scripts look for a site script.
|
||||
|
||||
Defining Variables
|
||||
==================
|
||||
|
||||
Variables not defined in a site shell script can be set in the
|
||||
environment passed to `configure'. However, some packages may run
|
||||
configure again during the build, and the customized values of these
|
||||
variables may be lost. In order to avoid this problem, you should set
|
||||
them in the `configure' command line, using `VAR=value'. For example:
|
||||
|
||||
./configure CC=/usr/local2/bin/gcc
|
||||
|
||||
causes the specified `gcc' to be used as the C compiler (unless it is
|
||||
overridden in the site shell script).
|
||||
|
||||
Unfortunately, this technique does not work for `CONFIG_SHELL' due to
|
||||
an Autoconf bug. Until the bug is fixed you can use this workaround:
|
||||
|
||||
CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
|
||||
|
||||
`configure' Invocation
|
||||
======================
|
||||
|
||||
`configure' recognizes the following options to control how it
|
||||
operates.
|
||||
|
||||
`--help'
|
||||
`-h'
|
||||
Print a summary of all of the options to `configure', and exit.
|
||||
|
||||
`--help=short'
|
||||
`--help=recursive'
|
||||
Print a summary of the options unique to this package's
|
||||
`configure', and exit. The `short' variant lists options used
|
||||
only in the top level, while the `recursive' variant lists options
|
||||
also present in any nested packages.
|
||||
|
||||
`--version'
|
||||
`-V'
|
||||
Print the version of Autoconf used to generate the `configure'
|
||||
script, and exit.
|
||||
|
||||
`--cache-file=FILE'
|
||||
Enable the cache: use and save the results of the tests in FILE,
|
||||
traditionally `config.cache'. FILE defaults to `/dev/null' to
|
||||
disable caching.
|
||||
|
||||
`--config-cache'
|
||||
`-C'
|
||||
Alias for `--cache-file=config.cache'.
|
||||
|
||||
`--quiet'
|
||||
`--silent'
|
||||
`-q'
|
||||
Do not print messages saying which checks are being made. To
|
||||
suppress all normal output, redirect it to `/dev/null' (any error
|
||||
messages will still be shown).
|
||||
|
||||
`--srcdir=DIR'
|
||||
Look for the package's source code in directory DIR. Usually
|
||||
`configure' can determine that directory automatically.
|
||||
|
||||
`--prefix=DIR'
|
||||
Use DIR as the installation prefix. *Note Installation Names::
|
||||
for more details, including other options available for fine-tuning
|
||||
the installation locations.
|
||||
|
||||
`--no-create'
|
||||
`-n'
|
||||
Run the configure checks, but stop before creating any output
|
||||
files.
|
||||
|
||||
`configure' also accepts some other, not widely useful, options. Run
|
||||
`configure --help' for more details.
|
||||
|
76
3party/fribidi/Makefile.am
Normal file
76
3party/fribidi/Makefile.am
Normal file
|
@ -0,0 +1,76 @@
|
|||
## -*- Automake -*-
|
||||
## Process this file with automake to produce Makefile.in
|
||||
##############################################################################
|
||||
## $Id: Makefile.am,v 1.10 2005/08/25 18:35:34 behdad Exp $
|
||||
## $Author: behdad $
|
||||
## $Date: 2005/08/25 18:35:34 $
|
||||
## $Revision: 1.10 $
|
||||
## $Source: /cvs/fribidi/fribidi2/Makefile.am,v $
|
||||
##############################################################################
|
||||
|
||||
## The order of subdirs is important, don't change without a reason.
|
||||
SUBDIRS = gen.tab charset lib bin doc test
|
||||
|
||||
EXTRA_DIST = bootstrap ChangeLog.old
|
||||
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
pkgconfig_DATA = @PACKAGE@.pc
|
||||
|
||||
BUILT_SOURCES = lib/fribidi-unicode-version.h
|
||||
lib/fribidi-unicode-version.h:
|
||||
(cd lib && $(MAKE) $(AM_MAKEFLAGS) fribidi-unicode-version.h)
|
||||
|
||||
MAINTAINERCLEANFILES = \
|
||||
$(srcdir)/INSTALL \
|
||||
$(srcdir)/aclocal.m4 \
|
||||
$(srcdir)/autoscan.log \
|
||||
$(srcdir)/compile \
|
||||
$(srcdir)/config.guess \
|
||||
$(srcdir)/config.h.in \
|
||||
$(srcdir)/config.sub \
|
||||
$(srcdir)/configure.scan \
|
||||
$(srcdir)/depcomp \
|
||||
$(srcdir)/install-sh \
|
||||
$(srcdir)/ltmain.sh \
|
||||
$(srcdir)/missing \
|
||||
$(srcdir)/mkinstalldirs \
|
||||
`find "$(srcdir)" -type f -name Makefile.in -print` \
|
||||
`find "$(srcdir)" -type f -name "*~" -print` \
|
||||
`$(srcdir)/bootstrap --write-configure`
|
||||
# The last line above is a horrible hack.
|
||||
# GNU Coding Standards recommends that `make maintainer-clean' should not
|
||||
# remove the configure script.
|
||||
# We instead make configure call bootstrap.
|
||||
|
||||
# Indent all C source and header files, using indent(1):
|
||||
|
||||
indent: $(srcdir)/.indent.pro
|
||||
cd "$(srcdir)" && \
|
||||
find . -mindepth 2 -type f -name "*.[ch]" -print | \
|
||||
xargs ./missing --run indent
|
||||
|
||||
.PHONY: indent
|
||||
|
||||
# Creating ChangeLog from CVS log, using cvs2cl(1):
|
||||
|
||||
MAINTAINERCLEANFILES += ChangeLog ChangeLog.bak
|
||||
|
||||
EXTRA_DIST += ChangeLog
|
||||
|
||||
ChangeLog: $(srcdir)/ChangeLog
|
||||
|
||||
$(srcdir)/ChangeLog:
|
||||
@if test -d "$(srcdir)/CVS"; then \
|
||||
(cd "$(srcdir)" && \
|
||||
./missing --run cvs2cl --stdout --utc --FSF -U AUTHORS) > $@.tmp \
|
||||
&& echo "For older changes see ChangeLog.old" >> $@.tmp && mv -f $@.tmp $@ \
|
||||
|| ($(RM) $@.tmp; \
|
||||
echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
|
||||
(test -f $@ || echo cvs2cl is required to generate this file >> $@)); \
|
||||
else \
|
||||
test -f $@ || \
|
||||
(echo A CVS checkout and cvs2cl is required to generate ChangeLog >&2 && \
|
||||
echo A CVS checkout and cvs2cl is required to generate this file >> $@); \
|
||||
fi
|
||||
|
||||
.PHONY: ChangeLog $(srcdir)/ChangeLog
|
750
3party/fribidi/Makefile.in
Normal file
750
3party/fribidi/Makefile.in
Normal file
|
@ -0,0 +1,750 @@
|
|||
# Makefile.in generated by automake 1.10.2 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
##############################################################################
|
||||
##############################################################################
|
||||
|
||||
VPATH = @srcdir@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
subdir = .
|
||||
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
|
||||
$(srcdir)/Makefile.in $(srcdir)/config.h.in \
|
||||
$(srcdir)/fribidi.pc.in $(top_srcdir)/configure AUTHORS \
|
||||
COPYING ChangeLog INSTALL NEWS THANKS TODO config.guess \
|
||||
config.sub depcomp install-sh ltmain.sh missing
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
|
||||
configure.lineno config.status.lineno
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = config.h
|
||||
CONFIG_CLEAN_FILES = fribidi.pc
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
|
||||
html-recursive info-recursive install-data-recursive \
|
||||
install-dvi-recursive install-exec-recursive \
|
||||
install-html-recursive install-info-recursive \
|
||||
install-pdf-recursive install-ps-recursive install-recursive \
|
||||
installcheck-recursive installdirs-recursive pdf-recursive \
|
||||
ps-recursive uninstall-recursive
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(pkgconfigdir)"
|
||||
pkgconfigDATA_INSTALL = $(INSTALL_DATA)
|
||||
DATA = $(pkgconfig_DATA)
|
||||
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
|
||||
distclean-recursive maintainer-clean-recursive
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DIST_SUBDIRS = $(SUBDIRS)
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
distdir = $(PACKAGE)-$(VERSION)
|
||||
top_distdir = $(distdir)
|
||||
am__remove_distdir = \
|
||||
{ test ! -d $(distdir) \
|
||||
|| { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
|
||||
&& rm -fr $(distdir); }; }
|
||||
DIST_ARCHIVES = $(distdir).tar.gz
|
||||
GZIP_ENV = --best
|
||||
distuninstallcheck_listfiles = find . -type f -print
|
||||
distcleancheck_listfiles = find . -type f -print
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMTAR = @AMTAR@
|
||||
AR = @AR@
|
||||
AS = @AS@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
FGREP = @FGREP@
|
||||
FRIBIDI_BINARY_AGE = @FRIBIDI_BINARY_AGE@
|
||||
FRIBIDI_CHARSETS = @FRIBIDI_CHARSETS@
|
||||
FRIBIDI_INTERFACE_AGE = @FRIBIDI_INTERFACE_AGE@
|
||||
FRIBIDI_INTERFACE_VERSION = @FRIBIDI_INTERFACE_VERSION@
|
||||
FRIBIDI_MAJOR_VERSION = @FRIBIDI_MAJOR_VERSION@
|
||||
FRIBIDI_MICRO_VERSION = @FRIBIDI_MICRO_VERSION@
|
||||
FRIBIDI_MINOR_VERSION = @FRIBIDI_MINOR_VERSION@
|
||||
FRIBIDI_NO_DEPRECATED = @FRIBIDI_NO_DEPRECATED@
|
||||
FRIBIDI_USE_GLIB = @FRIBIDI_USE_GLIB@
|
||||
FRIBIDI_VERSION = @FRIBIDI_VERSION@
|
||||
GLIB_CFLAGS = @GLIB_CFLAGS@
|
||||
GLIB_LIBS = @GLIB_LIBS@
|
||||
GREP = @GREP@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@
|
||||
LT_VERSION_INFO = @LT_VERSION_INFO@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MISC_CFLAGS = @MISC_CFLAGS@
|
||||
MISC_LIBS = @MISC_LIBS@
|
||||
MISC_PACKAGES = @MISC_PACKAGES@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
SIZEOF_INT = @SIZEOF_INT@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
lt_ECHO = @lt_ECHO@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
SUBDIRS = gen.tab charset lib bin doc test
|
||||
EXTRA_DIST = bootstrap ChangeLog.old ChangeLog
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
pkgconfig_DATA = @PACKAGE@.pc
|
||||
BUILT_SOURCES = lib/fribidi-unicode-version.h
|
||||
|
||||
# Creating ChangeLog from CVS log, using cvs2cl(1):
|
||||
MAINTAINERCLEANFILES = $(srcdir)/INSTALL $(srcdir)/aclocal.m4 \
|
||||
$(srcdir)/autoscan.log $(srcdir)/compile \
|
||||
$(srcdir)/config.guess $(srcdir)/config.h.in \
|
||||
$(srcdir)/config.sub $(srcdir)/configure.scan \
|
||||
$(srcdir)/depcomp $(srcdir)/install-sh $(srcdir)/ltmain.sh \
|
||||
$(srcdir)/missing $(srcdir)/mkinstalldirs `find "$(srcdir)" \
|
||||
-type f -name Makefile.in -print` `find "$(srcdir)" -type f \
|
||||
-name "*~" -print` `$(srcdir)/bootstrap --write-configure` \
|
||||
ChangeLog ChangeLog.bak
|
||||
all: $(BUILT_SOURCES) config.h
|
||||
$(MAKE) $(AM_MAKEFLAGS) all-recursive
|
||||
|
||||
.SUFFIXES:
|
||||
am--refresh:
|
||||
@:
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
echo ' cd $(srcdir) && $(AUTOMAKE) --gnits '; \
|
||||
cd $(srcdir) && $(AUTOMAKE) --gnits \
|
||||
&& exit 0; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnits Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
echo ' $(SHELL) ./config.status'; \
|
||||
$(SHELL) ./config.status;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
$(SHELL) ./config.status --recheck
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(srcdir) && $(AUTOCONF)
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
||||
|
||||
config.h: stamp-h1
|
||||
@if test ! -f $@; then \
|
||||
rm -f stamp-h1; \
|
||||
$(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
|
||||
else :; fi
|
||||
|
||||
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
|
||||
@rm -f stamp-h1
|
||||
cd $(top_builddir) && $(SHELL) ./config.status config.h
|
||||
$(srcdir)/config.h.in: $(am__configure_deps)
|
||||
cd $(top_srcdir) && $(AUTOHEADER)
|
||||
rm -f stamp-h1
|
||||
touch $@
|
||||
|
||||
distclean-hdr:
|
||||
-rm -f config.h stamp-h1
|
||||
fribidi.pc: $(top_builddir)/config.status $(srcdir)/fribidi.pc.in
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
|
||||
distclean-libtool:
|
||||
-rm -f libtool config.lt
|
||||
install-pkgconfigDATA: $(pkgconfig_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
|
||||
@list='$(pkgconfig_DATA)'; for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(pkgconfigDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgconfigdir)/$$f'"; \
|
||||
$(pkgconfigDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgconfigdir)/$$f"; \
|
||||
done
|
||||
|
||||
uninstall-pkgconfigDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(pkgconfig_DATA)'; for p in $$list; do \
|
||||
f=$(am__strip_dir) \
|
||||
echo " rm -f '$(DESTDIR)$(pkgconfigdir)/$$f'"; \
|
||||
rm -f "$(DESTDIR)$(pkgconfigdir)/$$f"; \
|
||||
done
|
||||
|
||||
# This directory's subdirectories are mostly independent; you can cd
|
||||
# into them and run `make' without going through this Makefile.
|
||||
# To change the values of `make' variables: instead of editing Makefiles,
|
||||
# (1) if the variable is set in `config.status', edit `config.status'
|
||||
# (which will cause the Makefiles to be regenerated when you run `make');
|
||||
# (2) otherwise, pass the desired values on the `make' command line.
|
||||
$(RECURSIVE_TARGETS):
|
||||
@failcom='exit 1'; \
|
||||
for f in x $$MAKEFLAGS; do \
|
||||
case $$f in \
|
||||
*=* | --[!k]*);; \
|
||||
*k*) failcom='fail=yes';; \
|
||||
esac; \
|
||||
done; \
|
||||
dot_seen=no; \
|
||||
target=`echo $@ | sed s/-recursive//`; \
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
echo "Making $$target in $$subdir"; \
|
||||
if test "$$subdir" = "."; then \
|
||||
dot_seen=yes; \
|
||||
local_target="$$target-am"; \
|
||||
else \
|
||||
local_target="$$target"; \
|
||||
fi; \
|
||||
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
||||
|| eval $$failcom; \
|
||||
done; \
|
||||
if test "$$dot_seen" = "no"; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
||||
fi; test -z "$$fail"
|
||||
|
||||
$(RECURSIVE_CLEAN_TARGETS):
|
||||
@failcom='exit 1'; \
|
||||
for f in x $$MAKEFLAGS; do \
|
||||
case $$f in \
|
||||
*=* | --[!k]*);; \
|
||||
*k*) failcom='fail=yes';; \
|
||||
esac; \
|
||||
done; \
|
||||
dot_seen=no; \
|
||||
case "$@" in \
|
||||
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
||||
*) list='$(SUBDIRS)' ;; \
|
||||
esac; \
|
||||
rev=''; for subdir in $$list; do \
|
||||
if test "$$subdir" = "."; then :; else \
|
||||
rev="$$subdir $$rev"; \
|
||||
fi; \
|
||||
done; \
|
||||
rev="$$rev ."; \
|
||||
target=`echo $@ | sed s/-recursive//`; \
|
||||
for subdir in $$rev; do \
|
||||
echo "Making $$target in $$subdir"; \
|
||||
if test "$$subdir" = "."; then \
|
||||
local_target="$$target-am"; \
|
||||
else \
|
||||
local_target="$$target"; \
|
||||
fi; \
|
||||
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
||||
|| eval $$failcom; \
|
||||
done && test -z "$$fail"
|
||||
tags-recursive:
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
|
||||
done
|
||||
ctags-recursive:
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
|
||||
done
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
|
||||
include_option=--etags-include; \
|
||||
empty_fix=.; \
|
||||
else \
|
||||
include_option=--include; \
|
||||
empty_fix=; \
|
||||
fi; \
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test ! -f $$subdir/TAGS || \
|
||||
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
|
||||
fi; \
|
||||
done; \
|
||||
list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& cd $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) $$here
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@case `sed 15q $(srcdir)/NEWS` in \
|
||||
*"$(VERSION)"*) : ;; \
|
||||
*) \
|
||||
echo "NEWS not updated; not releasing" 1>&2; \
|
||||
exit 1;; \
|
||||
esac
|
||||
$(am__remove_distdir)
|
||||
test -d $(distdir) || mkdir $(distdir)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test -d "$(distdir)/$$subdir" \
|
||||
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|
||||
|| exit 1; \
|
||||
distdir=`$(am__cd) $(distdir) && pwd`; \
|
||||
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
|
||||
(cd $$subdir && \
|
||||
$(MAKE) $(AM_MAKEFLAGS) \
|
||||
top_distdir="$$top_distdir" \
|
||||
distdir="$$distdir/$$subdir" \
|
||||
am__remove_distdir=: \
|
||||
am__skip_length_check=: \
|
||||
distdir) \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
-find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
|
||||
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
|
||||
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
|
||||
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|
||||
|| chmod -R a+r $(distdir)
|
||||
dist-gzip: distdir
|
||||
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist-bzip2: distdir
|
||||
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist-lzma: distdir
|
||||
tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist-tarZ: distdir
|
||||
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist-shar: distdir
|
||||
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist-zip: distdir
|
||||
-rm -f $(distdir).zip
|
||||
zip -rq $(distdir).zip $(distdir)
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist dist-all: distdir
|
||||
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||
$(am__remove_distdir)
|
||||
|
||||
# This target untars the dist file and tries a VPATH configuration. Then
|
||||
# it guarantees that the distribution is self-contained by making another
|
||||
# tarfile.
|
||||
distcheck: dist
|
||||
case '$(DIST_ARCHIVES)' in \
|
||||
*.tar.gz*) \
|
||||
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
|
||||
*.tar.bz2*) \
|
||||
bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
|
||||
*.tar.lzma*) \
|
||||
unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\
|
||||
*.tar.Z*) \
|
||||
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
|
||||
*.shar.gz*) \
|
||||
GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
|
||||
*.zip*) \
|
||||
unzip $(distdir).zip ;;\
|
||||
esac
|
||||
chmod -R a-w $(distdir); chmod a+w $(distdir)
|
||||
mkdir $(distdir)/_build
|
||||
mkdir $(distdir)/_inst
|
||||
chmod a-w $(distdir)
|
||||
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
|
||||
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
|
||||
&& cd $(distdir)/_build \
|
||||
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
|
||||
$(DISTCHECK_CONFIGURE_FLAGS) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) check \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) install \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) uninstall \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
|
||||
distuninstallcheck \
|
||||
&& chmod -R a-w "$$dc_install_base" \
|
||||
&& ({ \
|
||||
(cd ../.. && umask 077 && mkdir "$$dc_destdir") \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
|
||||
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
|
||||
} || { rm -rf "$$dc_destdir"; exit 1; }) \
|
||||
&& rm -rf "$$dc_destdir" \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) dist \
|
||||
&& rm -rf $(DIST_ARCHIVES) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck
|
||||
$(am__remove_distdir)
|
||||
@(echo "$(distdir) archives ready for distribution: "; \
|
||||
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
|
||||
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
|
||||
distuninstallcheck:
|
||||
@cd $(distuninstallcheck_dir) \
|
||||
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|
||||
|| { echo "ERROR: files left after uninstall:" ; \
|
||||
if test -n "$(DESTDIR)"; then \
|
||||
echo " (check DESTDIR support)"; \
|
||||
fi ; \
|
||||
$(distuninstallcheck_listfiles) ; \
|
||||
exit 1; } >&2
|
||||
distcleancheck: distclean
|
||||
@if test '$(srcdir)' = . ; then \
|
||||
echo "ERROR: distcleancheck can only run from a VPATH build" ; \
|
||||
exit 1 ; \
|
||||
fi
|
||||
@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
|
||||
|| { echo "ERROR: files left in build directory after distclean:" ; \
|
||||
$(distcleancheck_listfiles) ; \
|
||||
exit 1; } >&2
|
||||
check-am: all-am
|
||||
check: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) check-recursive
|
||||
all-am: Makefile $(DATA) config.h
|
||||
installdirs: installdirs-recursive
|
||||
installdirs-am:
|
||||
for dir in "$(DESTDIR)$(pkgconfigdir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) install-recursive
|
||||
install-exec: install-exec-recursive
|
||||
install-data: install-data-recursive
|
||||
uninstall: uninstall-recursive
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-recursive
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
|
||||
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
|
||||
clean: clean-recursive
|
||||
|
||||
clean-am: clean-generic clean-libtool mostlyclean-am
|
||||
|
||||
distclean: distclean-recursive
|
||||
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic distclean-hdr \
|
||||
distclean-libtool distclean-tags
|
||||
|
||||
dvi: dvi-recursive
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-recursive
|
||||
|
||||
info: info-recursive
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-pkgconfigDATA
|
||||
|
||||
install-dvi: install-dvi-recursive
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-recursive
|
||||
|
||||
install-info: install-info-recursive
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-recursive
|
||||
|
||||
install-ps: install-ps-recursive
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-recursive
|
||||
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
||||
-rm -rf $(top_srcdir)/autom4te.cache
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-recursive
|
||||
|
||||
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
|
||||
|
||||
pdf: pdf-recursive
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-recursive
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-pkgconfigDATA
|
||||
|
||||
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
|
||||
install-strip
|
||||
|
||||
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
|
||||
all all-am am--refresh check check-am clean clean-generic \
|
||||
clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
|
||||
dist-gzip dist-lzma dist-shar dist-tarZ dist-zip distcheck \
|
||||
distclean distclean-generic distclean-hdr distclean-libtool \
|
||||
distclean-tags distcleancheck distdir distuninstallcheck dvi \
|
||||
dvi-am html html-am info info-am install install-am \
|
||||
install-data install-data-am install-dvi install-dvi-am \
|
||||
install-exec install-exec-am install-html install-html-am \
|
||||
install-info install-info-am install-man install-pdf \
|
||||
install-pdf-am install-pkgconfigDATA install-ps install-ps-am \
|
||||
install-strip installcheck installcheck-am installdirs \
|
||||
installdirs-am maintainer-clean maintainer-clean-generic \
|
||||
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
|
||||
ps ps-am tags tags-recursive uninstall uninstall-am \
|
||||
uninstall-pkgconfigDATA
|
||||
|
||||
lib/fribidi-unicode-version.h:
|
||||
(cd lib && $(MAKE) $(AM_MAKEFLAGS) fribidi-unicode-version.h)
|
||||
# The last line above is a horrible hack.
|
||||
# GNU Coding Standards recommends that `make maintainer-clean' should not
|
||||
# remove the configure script.
|
||||
# We instead make configure call bootstrap.
|
||||
|
||||
# Indent all C source and header files, using indent(1):
|
||||
|
||||
indent: $(srcdir)/.indent.pro
|
||||
cd "$(srcdir)" && \
|
||||
find . -mindepth 2 -type f -name "*.[ch]" -print | \
|
||||
xargs ./missing --run indent
|
||||
|
||||
.PHONY: indent
|
||||
|
||||
ChangeLog: $(srcdir)/ChangeLog
|
||||
|
||||
$(srcdir)/ChangeLog:
|
||||
@if test -d "$(srcdir)/CVS"; then \
|
||||
(cd "$(srcdir)" && \
|
||||
./missing --run cvs2cl --stdout --utc --FSF -U AUTHORS) > $@.tmp \
|
||||
&& echo "For older changes see ChangeLog.old" >> $@.tmp && mv -f $@.tmp $@ \
|
||||
|| ($(RM) $@.tmp; \
|
||||
echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
|
||||
(test -f $@ || echo cvs2cl is required to generate this file >> $@)); \
|
||||
else \
|
||||
test -f $@ || \
|
||||
(echo A CVS checkout and cvs2cl is required to generate ChangeLog >&2 && \
|
||||
echo A CVS checkout and cvs2cl is required to generate this file >> $@); \
|
||||
fi
|
||||
|
||||
.PHONY: ChangeLog $(srcdir)/ChangeLog
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
52
3party/fribidi/NEWS
Normal file
52
3party/fribidi/NEWS
Normal file
|
@ -0,0 +1,52 @@
|
|||
Overview of changes between 0.19.1 and 0.19.2
|
||||
=============================================
|
||||
* Update to Unicode Character Database 5.1.0
|
||||
* Fixed bug in Arabic ligature table (bug #208870)
|
||||
* Handle RLM/LRM in CP1255 charset converter. (bug #15328, Artyom)
|
||||
|
||||
Overview of changes between 0.10.9 and 0.19.1
|
||||
=============================================
|
||||
* This is the first release of the fribidi2 module in CVS, mostly
|
||||
developed in 2004 and 2005.
|
||||
* Support for Arabic joining/shaping added.
|
||||
* API for correct handling of multi-line paragraphs added.
|
||||
* Restructured code base.
|
||||
* Supposed to be fully API/ABI compatible with 0.10 releases.
|
||||
Please report if it is not.
|
||||
|
||||
Overview of changes between 0.10.8 and 0.10.9
|
||||
=============================================
|
||||
* Minor bugfix.
|
||||
|
||||
Overview of changes between 0.10.7 and 0.10.8
|
||||
=============================================
|
||||
* Update to Unicode Character Database 5.0.0
|
||||
|
||||
Overview of changes between 0.10.6 and 0.10.7
|
||||
=============================================
|
||||
* Nothing really. Just to fix my mess with 0.10.6 release (that never left
|
||||
the door.)
|
||||
|
||||
Overview of changes between 0.10.5 and 0.10.6
|
||||
=============================================
|
||||
* Fixed type sizes when stdint.h is not available.
|
||||
|
||||
Overview of changes between 0.10.4 and 0.10.5
|
||||
=============================================
|
||||
* Unicode 4.1.0 character database used.
|
||||
* Fixed type sizes on 64-bit architectures.
|
||||
* We've become GNU FriBidi. Note capitalization please.
|
||||
* We have moved to http://fribidi.org/, hosted on freedesktop.org.
|
||||
|
||||
Overview of changes between 0.10.2 and 0.10.4
|
||||
=============================================
|
||||
* Unicode 3.2 data files used.
|
||||
|
||||
Overview of changes between 0.10.1 and 0.10.2
|
||||
=============================================
|
||||
* Rule L3 of UAX#9 implemented. Now fribidi implements the whole Unicode
|
||||
BiDi Algorithm.
|
||||
* The autogenerated table files now contain much fewer symbols, which reduces
|
||||
the relocation time of the library.
|
||||
|
||||
See ChangeLog for more descriptive list of changes.
|
153
3party/fribidi/README
Normal file
153
3party/fribidi/README
Normal file
|
@ -0,0 +1,153 @@
|
|||
This is GNU FriBidi
|
||||
The Free Implementation of the Unicode Bidirectional Algorithm.
|
||||
|
||||
Background
|
||||
==========
|
||||
|
||||
One of the missing links stopping the penetration of free software in Middle
|
||||
East is the lack of support for the Arabic and Hebrew alphabets. In order to
|
||||
have proper Arabic and Hebrew support, the BiDi algorithm should have been
|
||||
implemented. It is our hope that this library will stimulate more free
|
||||
software in the Middle Eastern countries.
|
||||
|
||||
Audience
|
||||
========
|
||||
|
||||
It is our hope that this library will stimulate the implementation of Hebrew
|
||||
and Arabic in lots of free software. Here is a small list of projects that
|
||||
would benefit from the use of the GNU FriBidi library, but of course there are
|
||||
many more: Wine, Mozilla, Qt, KDE, lynx, OpenOffice.
|
||||
|
||||
GNU FriBidi is already being used in projects like Pango (resulting in GTK+
|
||||
and GNOME using GNU FriBidi), AbiWord, MLTerm, MPlayer, and BiCon.
|
||||
|
||||
Dependencies
|
||||
============
|
||||
|
||||
Currently GNU FriBidi does not depend on any other library, but uses Glib if
|
||||
available. It uses GNU Build System for build and installation on POSIX
|
||||
systems.
|
||||
|
||||
Downloading
|
||||
===========
|
||||
|
||||
The latest version of GNU FriBidi may be found at:
|
||||
|
||||
http://fribidi.org/
|
||||
|
||||
Building
|
||||
========
|
||||
|
||||
See INSTALL for a description of how to build and install GNU FriBidi.
|
||||
|
||||
License
|
||||
=========
|
||||
|
||||
GNU FriBidi is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public License
|
||||
as published by the Free Software Foundation; either version 2.1
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
GNU FriBidi is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License
|
||||
along with GNU FriBidi, in a file named COPYING; if not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
Boston, MA 02111-1307 USA
|
||||
|
||||
For licensing issues, contact <license@farsiweb.info>.
|
||||
|
||||
Implementation
|
||||
==============
|
||||
|
||||
The library implements the algorithm described in the "Unicode Standard
|
||||
Annex #9, The Bidirectional Algorithm", available at
|
||||
http://www.unicode.org/unicode/reports/tr9/. GNU Fribidi has been tested
|
||||
exhaustively against the Unicode Reference Code, and to the best of our
|
||||
knowledge, it completely conforms to the specification, always producing
|
||||
the same result as the Reference Code.
|
||||
|
||||
The library uses Unicode (UTF32) entirely. The character properties are
|
||||
automatically extracted from the Unicode data files, available from:
|
||||
|
||||
http://www.unicode.org/Public/UNIDATA/
|
||||
|
||||
This means that every Unicode character is treated in strict accordance
|
||||
with the Unicode specification.
|
||||
|
||||
There is a limited support for character set conversion from/to the UTF32
|
||||
encoding. Data in these character sets must be converted into UTF32 before
|
||||
the library may be used. iconv(3) can always do a better job on that, so you
|
||||
may find that the character sets conversion code is typically turned off on
|
||||
POSIX machines.
|
||||
|
||||
The reordering of characters is typically done through the function:
|
||||
|
||||
fribidi_boolean
|
||||
fribidi_log2vis(/* input */
|
||||
FriBidiChar *str,
|
||||
FriBidiStrIndex len,
|
||||
FriBidiCharType *pbase_dir,
|
||||
/* output */
|
||||
FriBidiChar *visual_str,
|
||||
FriBidiStrIndex *position_L_to_V_list,
|
||||
FriBidiStrIndex *position_V_to_L_list,
|
||||
FriBidiLevel *embedding_level_list
|
||||
)
|
||||
|
||||
|
||||
where
|
||||
str is the Unicode input string
|
||||
len is the length of the unicode string
|
||||
pbase_dir is the input and output base direction. If
|
||||
base == FRIBIDI_TYPE_ON then fribidi_log2vis
|
||||
calculates the base direction on its own
|
||||
according to the BiDi algorithm.
|
||||
visual_str The reordered output unicode string.
|
||||
position_L_to_V_list Maps the positions in the logical string to
|
||||
positions in the visual string.
|
||||
position_V_to_L_list Maps the positions in the visual string to
|
||||
the positions in the logical string.
|
||||
embedding_level_list Returns the classification of each character. Even
|
||||
levels indicate LTR characters, and odd levels
|
||||
indicate RTL characters. The main use of this
|
||||
list is in interactive applications when the
|
||||
embedding e.g. level determines cursor display.
|
||||
|
||||
In any of the output pointers == NULL, then that information is not
|
||||
calculated.
|
||||
|
||||
How it looks like
|
||||
=================
|
||||
|
||||
Have a look at tests directory, to see some input and outputs, which
|
||||
CapRTL charset means that CAPITAL letters are right to left, and digits
|
||||
6, 7, 8, 9 are Arabic digits, try 'fribidi --charsetdesc CapRTL' for the
|
||||
full description.
|
||||
|
||||
Executable
|
||||
==========
|
||||
|
||||
There is also a command-line utilitity called fribidi that loops over
|
||||
the text of a file and performs the BiDi algorithm on each line, also
|
||||
used for testing the algorithm. Run fribidi with the --help option to
|
||||
learn about usage. The command-line utility is known to have problems
|
||||
with line-breaking and ltov/vtol lists.
|
||||
|
||||
Bugs and comments
|
||||
=================
|
||||
|
||||
Report GNU FriBidi bugs at:
|
||||
|
||||
http://fribidi.org/bug
|
||||
|
||||
And send your comments to:
|
||||
|
||||
fribidi@freedesktop.org
|
||||
|
||||
|
||||
Behdad Esfahbod
|
||||
behdad@gnu.org
|
30
3party/fribidi/THANKS
Normal file
30
3party/fribidi/THANKS
Normal file
|
@ -0,0 +1,30 @@
|
|||
Thanks to:
|
||||
|
||||
Behnam Esfahbod <behnam@esfahbod.info>
|
||||
* Testing and auditing code.
|
||||
|
||||
|
||||
And for the previous versions of FriBidi (pre 2002), thanks to:
|
||||
|
||||
|
||||
Tomas Frydrych <tomas@frydrych.uklinux.net>
|
||||
* Contirbuted patches for compiling GNU FriBidi under other OSes.
|
||||
|
||||
Dov Grobgeld <dov@imagic.weizmann.ac.il>
|
||||
* Initial author, and maintainer before the 0.9 releases.
|
||||
|
||||
Franck Portaneri
|
||||
* For the Mozilla BiDi languges support document;
|
||||
|
||||
Roozbeh Pournader <roozbeh@sharif.edu>
|
||||
* Fixed things here and there.
|
||||
|
||||
Pablo Saratxaga <pablo@mandrakesoft.com>
|
||||
* Contributed several Arabic charset converters.
|
||||
|
||||
Owen Tayler <otaylor@redhat.com>
|
||||
* Contributed very important memory leak and speed patches.
|
||||
|
||||
Omer Zak <omerz@actcom.co.il>
|
||||
* Contributed several bug fixes, and several considerations for
|
||||
embedded systems.
|
88
3party/fribidi/TODO
Normal file
88
3party/fribidi/TODO
Normal file
|
@ -0,0 +1,88 @@
|
|||
Before release:
|
||||
|
||||
* Use gtk-doc?
|
||||
|
||||
* Implement fribidi_wcwidth()?
|
||||
|
||||
* Port fribidi-main.c to new API.
|
||||
|
||||
* help2man.
|
||||
|
||||
Implementation issues:
|
||||
|
||||
* Add API to get and pass on TypeLink*, to not allocate bidi levels.
|
||||
Something like that. Also the UTF-8 stuff from pango/mini-fribidi.
|
||||
|
||||
* Explore vis2log.
|
||||
|
||||
* Clean caprtl2utf8 to do arbitrary charset conversion?
|
||||
|
||||
* add --output-charset.
|
||||
|
||||
* Update README, etc...
|
||||
|
||||
* Mix __attr... with DLLIMPORT?
|
||||
|
||||
* Update all files headers/footers. For c/h files, lib/fribidi-mirroring.[ch]
|
||||
is always the reference.
|
||||
|
||||
* In fribidi_main.c reorder after line break.
|
||||
|
||||
* Change fribidi-main cmd-line parameters: --mirror --no-mirror... change the
|
||||
defaults too.
|
||||
|
||||
* Add an option to fribidi_main.c to assume two consecutive returns as
|
||||
paragraph separators.
|
||||
|
||||
* Add more tests. For:
|
||||
- Checking that not removing explicit marks in analyze is not changing the
|
||||
output in anyway.
|
||||
- Tests with BN. Right now ^ is BN in CapRTL scheme.
|
||||
- Test tables.
|
||||
|
||||
* indent: support function attributes and _PARAMS like things. Also
|
||||
FRIBIDI_BEGIN_DECLS, and LIKELY.
|
||||
|
||||
* Cleanup gen.tab/gen-*.c files.
|
||||
|
||||
* Override pkgincludedir and append interface version. Should we go the GNOME
|
||||
parallel install way?
|
||||
|
||||
* c2man: parse Author and Copyright from the whole file.
|
||||
|
||||
* Write texinfo documentation.
|
||||
|
||||
* Set up gnu.org web pages, and update the entry in Free Software Directory.
|
||||
|
||||
* Use gengetopt.
|
||||
|
||||
* Add FriBidiEnv functionality at compile time. Also, ifdef out the memory
|
||||
cleanup stuff if asked to fail on memory allocation failure (xmalloc). When
|
||||
this is done, FRIBIDI_GNUC_WARN_UNUSEDS can be turned off conditionally.
|
||||
|
||||
* Generate HTML and DVI documentation.
|
||||
|
||||
* Rewrite fribidi.spec.in
|
||||
|
||||
* Add make rules for lib/$(BUILT_SOURCES) to depend on gen.tab/ stuff?
|
||||
|
||||
* When called in interactive mode, fribidi cmd-line should greet, write
|
||||
about copyrtight stuff, and shared-libs' version and Unicode version.
|
||||
|
||||
* Configure gen.tab/ with host=build to avoid cross-compiling table
|
||||
generators.
|
||||
|
||||
* Replace test/run.tests with something better, Makefile foo, etc.
|
||||
|
||||
* Clean up README and NEWS, and check all files' headers. Write
|
||||
gen.tab/README. Also add UniData license file.
|
||||
|
||||
From GNU Coding Standards:
|
||||
|
||||
* The distribution should contain a file named `README' which gives the name
|
||||
of the package, and a general description of what it does. It is also good
|
||||
to explain the purpose of each of the first-level subdirectories in the
|
||||
package, if there are any. The `README' file should either state the version
|
||||
number of the package, or refer to where in the package it can be found.
|
||||
|
||||
* Add ^L to all sources.
|
8982
3party/fribidi/aclocal.m4
vendored
Normal file
8982
3party/fribidi/aclocal.m4
vendored
Normal file
File diff suppressed because it is too large
Load diff
25
3party/fribidi/bin/Makefile.am
Normal file
25
3party/fribidi/bin/Makefile.am
Normal file
|
@ -0,0 +1,25 @@
|
|||
bin_PROGRAMS = fribidi
|
||||
|
||||
noinst_PROGRAMS = fribidi-benchmark fribidi-bidi-types fribidi-caprtl2utf8
|
||||
|
||||
getopt_SOURCES = getopt.c getopt1.c getopt_int.h getopt.h gettext.h
|
||||
|
||||
fribidi_SOURCES = fribidi-main.c $(getopt_SOURCES)
|
||||
|
||||
fribidi_benchmark_SOURCES = fribidi-benchmark.c $(getopt_SOURCES)
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_builddir)/lib \
|
||||
-I$(top_srcdir)/lib \
|
||||
-I$(top_srcdir)/charset \
|
||||
$(MISC_CFLAGS)
|
||||
|
||||
LDADD = $(top_builddir)/lib/libfribidi.la $(MISC_LIBS)
|
||||
|
||||
if FRIBIDI_CHARSETS
|
||||
else # !FRIBIDI_CHARSETS
|
||||
LDADD += $(top_builddir)/charset/libfribidi-char-sets.la
|
||||
endif # !FRIBIDI_CHARSETS
|
||||
|
||||
$(top_builddir)/lib/libfribidi.la:
|
||||
cd $(top_builddir)/lib && $(MAKE) $(AM_MAKEFLAGS) libfribidi.la
|
556
3party/fribidi/bin/Makefile.in
Normal file
556
3party/fribidi/bin/Makefile.in
Normal file
|
@ -0,0 +1,556 @@
|
|||
# Makefile.in generated by automake 1.10.2 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
VPATH = @srcdir@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
bin_PROGRAMS = fribidi$(EXEEXT)
|
||||
noinst_PROGRAMS = fribidi-benchmark$(EXEEXT) \
|
||||
fribidi-bidi-types$(EXEEXT) fribidi-caprtl2utf8$(EXEEXT)
|
||||
@FRIBIDI_CHARSETS_FALSE@am__append_1 = $(top_builddir)/charset/libfribidi-char-sets.la
|
||||
subdir = bin
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
am__installdirs = "$(DESTDIR)$(bindir)"
|
||||
binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
|
||||
PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS)
|
||||
am__objects_1 = getopt.$(OBJEXT) getopt1.$(OBJEXT)
|
||||
am_fribidi_OBJECTS = fribidi-main.$(OBJEXT) $(am__objects_1)
|
||||
fribidi_OBJECTS = $(am_fribidi_OBJECTS)
|
||||
fribidi_LDADD = $(LDADD)
|
||||
am__DEPENDENCIES_1 =
|
||||
fribidi_DEPENDENCIES = $(top_builddir)/lib/libfribidi.la \
|
||||
$(am__DEPENDENCIES_1) $(am__append_1)
|
||||
am_fribidi_benchmark_OBJECTS = fribidi-benchmark.$(OBJEXT) \
|
||||
$(am__objects_1)
|
||||
fribidi_benchmark_OBJECTS = $(am_fribidi_benchmark_OBJECTS)
|
||||
fribidi_benchmark_LDADD = $(LDADD)
|
||||
fribidi_benchmark_DEPENDENCIES = $(top_builddir)/lib/libfribidi.la \
|
||||
$(am__DEPENDENCIES_1) $(am__append_1)
|
||||
fribidi_bidi_types_SOURCES = fribidi-bidi-types.c
|
||||
fribidi_bidi_types_OBJECTS = fribidi-bidi-types.$(OBJEXT)
|
||||
fribidi_bidi_types_LDADD = $(LDADD)
|
||||
fribidi_bidi_types_DEPENDENCIES = $(top_builddir)/lib/libfribidi.la \
|
||||
$(am__DEPENDENCIES_1) $(am__append_1)
|
||||
fribidi_caprtl2utf8_SOURCES = fribidi-caprtl2utf8.c
|
||||
fribidi_caprtl2utf8_OBJECTS = fribidi-caprtl2utf8.$(OBJEXT)
|
||||
fribidi_caprtl2utf8_LDADD = $(LDADD)
|
||||
fribidi_caprtl2utf8_DEPENDENCIES = $(top_builddir)/lib/libfribidi.la \
|
||||
$(am__DEPENDENCIES_1) $(am__append_1)
|
||||
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
CCLD = $(CC)
|
||||
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
|
||||
$(LDFLAGS) -o $@
|
||||
SOURCES = $(fribidi_SOURCES) $(fribidi_benchmark_SOURCES) \
|
||||
fribidi-bidi-types.c fribidi-caprtl2utf8.c
|
||||
DIST_SOURCES = $(fribidi_SOURCES) $(fribidi_benchmark_SOURCES) \
|
||||
fribidi-bidi-types.c fribidi-caprtl2utf8.c
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMTAR = @AMTAR@
|
||||
AR = @AR@
|
||||
AS = @AS@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
FGREP = @FGREP@
|
||||
FRIBIDI_BINARY_AGE = @FRIBIDI_BINARY_AGE@
|
||||
FRIBIDI_CHARSETS = @FRIBIDI_CHARSETS@
|
||||
FRIBIDI_INTERFACE_AGE = @FRIBIDI_INTERFACE_AGE@
|
||||
FRIBIDI_INTERFACE_VERSION = @FRIBIDI_INTERFACE_VERSION@
|
||||
FRIBIDI_MAJOR_VERSION = @FRIBIDI_MAJOR_VERSION@
|
||||
FRIBIDI_MICRO_VERSION = @FRIBIDI_MICRO_VERSION@
|
||||
FRIBIDI_MINOR_VERSION = @FRIBIDI_MINOR_VERSION@
|
||||
FRIBIDI_NO_DEPRECATED = @FRIBIDI_NO_DEPRECATED@
|
||||
FRIBIDI_USE_GLIB = @FRIBIDI_USE_GLIB@
|
||||
FRIBIDI_VERSION = @FRIBIDI_VERSION@
|
||||
GLIB_CFLAGS = @GLIB_CFLAGS@
|
||||
GLIB_LIBS = @GLIB_LIBS@
|
||||
GREP = @GREP@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@
|
||||
LT_VERSION_INFO = @LT_VERSION_INFO@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MISC_CFLAGS = @MISC_CFLAGS@
|
||||
MISC_LIBS = @MISC_LIBS@
|
||||
MISC_PACKAGES = @MISC_PACKAGES@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
SIZEOF_INT = @SIZEOF_INT@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
lt_ECHO = @lt_ECHO@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
getopt_SOURCES = getopt.c getopt1.c getopt_int.h getopt.h gettext.h
|
||||
fribidi_SOURCES = fribidi-main.c $(getopt_SOURCES)
|
||||
fribidi_benchmark_SOURCES = fribidi-benchmark.c $(getopt_SOURCES)
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_builddir)/lib \
|
||||
-I$(top_srcdir)/lib \
|
||||
-I$(top_srcdir)/charset \
|
||||
$(MISC_CFLAGS)
|
||||
|
||||
LDADD = $(top_builddir)/lib/libfribidi.la $(MISC_LIBS) $(am__append_1)
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .c .lo .o .obj
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits bin/Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnits bin/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
install-binPROGRAMS: $(bin_PROGRAMS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
|
||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
||||
p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
|
||||
if test -f $$p \
|
||||
|| test -f $$p1 \
|
||||
; then \
|
||||
f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
|
||||
echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
|
||||
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-binPROGRAMS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
||||
f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
|
||||
echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
|
||||
rm -f "$(DESTDIR)$(bindir)/$$f"; \
|
||||
done
|
||||
|
||||
clean-binPROGRAMS:
|
||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
||||
f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
|
||||
echo " rm -f $$p $$f"; \
|
||||
rm -f $$p $$f ; \
|
||||
done
|
||||
|
||||
installcheck-binPROGRAMS: $(bin_PROGRAMS)
|
||||
bad=0; pid=$$$$; list="$(bin_PROGRAMS)"; for p in $$list; do \
|
||||
case ' $(AM_INSTALLCHECK_STD_OPTIONS_EXEMPT) ' in \
|
||||
*" $$p "* | *" $(srcdir)/$$p "*) continue;; \
|
||||
esac; \
|
||||
f=`echo "$$p" | \
|
||||
sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
|
||||
for opt in --help --version; do \
|
||||
if "$(DESTDIR)$(bindir)/$$f" $$opt >c$${pid}_.out \
|
||||
2>c$${pid}_.err </dev/null \
|
||||
&& test -n "`cat c$${pid}_.out`" \
|
||||
&& test -z "`cat c$${pid}_.err`"; then :; \
|
||||
else echo "$$f does not support $$opt" 1>&2; bad=1; fi; \
|
||||
done; \
|
||||
done; rm -f c$${pid}_.???; exit $$bad
|
||||
|
||||
clean-noinstPROGRAMS:
|
||||
@list='$(noinst_PROGRAMS)'; for p in $$list; do \
|
||||
f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
|
||||
echo " rm -f $$p $$f"; \
|
||||
rm -f $$p $$f ; \
|
||||
done
|
||||
fribidi$(EXEEXT): $(fribidi_OBJECTS) $(fribidi_DEPENDENCIES)
|
||||
@rm -f fribidi$(EXEEXT)
|
||||
$(LINK) $(fribidi_OBJECTS) $(fribidi_LDADD) $(LIBS)
|
||||
fribidi-benchmark$(EXEEXT): $(fribidi_benchmark_OBJECTS) $(fribidi_benchmark_DEPENDENCIES)
|
||||
@rm -f fribidi-benchmark$(EXEEXT)
|
||||
$(LINK) $(fribidi_benchmark_OBJECTS) $(fribidi_benchmark_LDADD) $(LIBS)
|
||||
fribidi-bidi-types$(EXEEXT): $(fribidi_bidi_types_OBJECTS) $(fribidi_bidi_types_DEPENDENCIES)
|
||||
@rm -f fribidi-bidi-types$(EXEEXT)
|
||||
$(LINK) $(fribidi_bidi_types_OBJECTS) $(fribidi_bidi_types_LDADD) $(LIBS)
|
||||
fribidi-caprtl2utf8$(EXEEXT): $(fribidi_caprtl2utf8_OBJECTS) $(fribidi_caprtl2utf8_DEPENDENCIES)
|
||||
@rm -f fribidi-caprtl2utf8$(EXEEXT)
|
||||
$(LINK) $(fribidi_caprtl2utf8_OBJECTS) $(fribidi_caprtl2utf8_LDADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-benchmark.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-bidi-types.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-caprtl2utf8.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-main.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt1.Po@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
||||
|
||||
.c.obj:
|
||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
||||
|
||||
.c.lo:
|
||||
@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& cd $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) $$here
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(PROGRAMS)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(bindir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-binPROGRAMS clean-generic clean-libtool \
|
||||
clean-noinstPROGRAMS mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-exec-am: install-binPROGRAMS
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
installcheck-am: installcheck-binPROGRAMS
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
||||
mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-binPROGRAMS
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
|
||||
clean-generic clean-libtool clean-noinstPROGRAMS ctags \
|
||||
distclean distclean-compile distclean-generic \
|
||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||
html-am info info-am install install-am install-binPROGRAMS \
|
||||
install-data install-data-am install-dvi install-dvi-am \
|
||||
install-exec install-exec-am install-html install-html-am \
|
||||
install-info install-info-am install-man install-pdf \
|
||||
install-pdf-am install-ps install-ps-am install-strip \
|
||||
installcheck installcheck-am installcheck-binPROGRAMS \
|
||||
installdirs maintainer-clean maintainer-clean-generic \
|
||||
mostlyclean mostlyclean-compile mostlyclean-generic \
|
||||
mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
|
||||
uninstall-am uninstall-binPROGRAMS
|
||||
|
||||
|
||||
$(top_builddir)/lib/libfribidi.la:
|
||||
cd $(top_builddir)/lib && $(MAKE) $(AM_MAKEFLAGS) libfribidi.la
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
285
3party/fribidi/bin/fribidi-benchmark.c
Normal file
285
3party/fribidi/bin/fribidi-benchmark.c
Normal file
|
@ -0,0 +1,285 @@
|
|||
/* FriBidi
|
||||
* fribidi-benchmark.c - command line benchmark tool for libfribidi
|
||||
*
|
||||
* $Id: fribidi-benchmark.c,v 1.7 2006/01/31 03:23:12 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2006/01/31 03:23:12 $
|
||||
* $Revision: 1.7 $
|
||||
* $Source: /cvs/fribidi/fribidi2/bin/fribidi-benchmark.c,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#if STDC_HEADERS+0
|
||||
# include <stdlib.h>
|
||||
# include <stddef.h>
|
||||
#else
|
||||
# if HAVE_STDLIB_H
|
||||
# include <stdlib.h>
|
||||
# endif
|
||||
#endif
|
||||
#if HAVE_STRING_H+0
|
||||
# if !STDC_HEADERS && HAVE_MEMORY_H
|
||||
# include <memory.h>
|
||||
# endif
|
||||
# include <string.h>
|
||||
#endif
|
||||
#if HAVE_STRINGS_H+0
|
||||
# include <strings.h>
|
||||
#endif
|
||||
#if HAVE_SYS_TIMES_H+0
|
||||
# include <sys/times.h>
|
||||
#endif
|
||||
|
||||
#include "getopt.h"
|
||||
|
||||
#define appname "fribidi_benchmark"
|
||||
|
||||
#define MAX_STR_LEN 1000
|
||||
#define NUM_ITER 2000
|
||||
|
||||
static void
|
||||
die2 (
|
||||
const char *fmt,
|
||||
const char *arg
|
||||
)
|
||||
{
|
||||
fprintf (stderr, "%s: ", appname);
|
||||
if (fmt)
|
||||
fprintf (stderr, fmt, arg);
|
||||
fprintf (stderr, "Try `%s --help' for more information.\n", appname);
|
||||
exit (-1);
|
||||
}
|
||||
|
||||
#define TEST_STRING \
|
||||
"a THE QUICK -123,456 (FOX JUMPS ) DOG the quick !1@7#4&5^ over the dog " \
|
||||
"123,456 OVER THE 5%+ 4.0 LAZY"
|
||||
#define TEST_STRING_EXPLICIT \
|
||||
"this is _LJUST_o a _lsimple _Rte%ST_o th_oat HAS A _LPDF missing" \
|
||||
"AnD hOw_L AbOuT, 123,987 tHiS_o a GO_oOD - _L_oTE_oST. " \
|
||||
"here_L is_o_o_o _R a good one_o And _r 123,987_LT_oHE_R next_o oNE:" \
|
||||
"_R_r and the last _LONE_o IS THE _rbest _lONE and" \
|
||||
"a _L_L_L_LL_L_L_L_L_L_L_L_L_Rbug_o_o_o_o_o_o" \
|
||||
"_R_r and the last _LONE_o IS THE _rbest _lONE and" \
|
||||
"A REAL BIG_l_o BUG! _L _l_r_R_L_laslaj siw_o_Rlkj sslk" \
|
||||
"a _L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_L_Rbug" \
|
||||
"here_L is_o_o_o _R ab one_o _r 123,987_LT_oHE_R t_o oNE:" \
|
||||
|
||||
static void
|
||||
help (
|
||||
void
|
||||
)
|
||||
{
|
||||
printf
|
||||
("Usage: " appname " [OPTION]...\n"
|
||||
"A program for benchmarking the speed of the " FRIBIDI_NAME
|
||||
" library.\n" "\n"
|
||||
" -h, --help Display this information and exit\n"
|
||||
" -V, --version Display version information and exit\n"
|
||||
" -n, --niter N Number of iterations. Default is %d.\n"
|
||||
"\nReport bugs online at\n<" FRIBIDI_BUGREPORT ">.\n", NUM_ITER);
|
||||
exit (0);
|
||||
}
|
||||
|
||||
static void
|
||||
version (
|
||||
void
|
||||
)
|
||||
{
|
||||
printf (appname " %s", fribidi_version_info);
|
||||
exit (0);
|
||||
}
|
||||
|
||||
static double
|
||||
utime (
|
||||
void
|
||||
)
|
||||
{
|
||||
struct tms tb;
|
||||
#if HAVE_SYS_TIMES_H+0
|
||||
times (&tb);
|
||||
return 0.01 * tb.tms_utime;
|
||||
#else
|
||||
#warning Please fill in here to use other functions for determining time.
|
||||
#endif
|
||||
}
|
||||
|
||||
static void
|
||||
benchmark (
|
||||
const char *S_,
|
||||
int niter
|
||||
)
|
||||
{
|
||||
int len, i;
|
||||
FriBidiChar us[MAX_STR_LEN], out_us[MAX_STR_LEN];
|
||||
FriBidiStrIndex positionLtoV[MAX_STR_LEN], positionVtoL[MAX_STR_LEN];
|
||||
FriBidiLevel embedding_list[MAX_STR_LEN];
|
||||
FriBidiParType base;
|
||||
double time0, time1;
|
||||
|
||||
{
|
||||
int j;
|
||||
len = strlen (S_);
|
||||
for (i = 0, j = 0; i < len; i++)
|
||||
{
|
||||
if (S_[i] == '_')
|
||||
switch (S_[++i])
|
||||
{
|
||||
case '>':
|
||||
us[j++] = FRIBIDI_CHAR_LRM;
|
||||
break;
|
||||
case '<':
|
||||
us[j++] = FRIBIDI_CHAR_RLM;
|
||||
break;
|
||||
case 'l':
|
||||
us[j++] = FRIBIDI_CHAR_LRE;
|
||||
break;
|
||||
case 'r':
|
||||
us[j++] = FRIBIDI_CHAR_RLE;
|
||||
break;
|
||||
case 'L':
|
||||
us[j++] = FRIBIDI_CHAR_LRO;
|
||||
break;
|
||||
case 'R':
|
||||
us[j++] = FRIBIDI_CHAR_RLO;
|
||||
break;
|
||||
case 'o':
|
||||
us[j++] = FRIBIDI_CHAR_PDF;
|
||||
break;
|
||||
case '_':
|
||||
us[j++] = '_';
|
||||
break;
|
||||
default:
|
||||
us[j++] = '_';
|
||||
i--;
|
||||
break;
|
||||
}
|
||||
else
|
||||
us[j++] = S_[i];
|
||||
if (us[j] >= 'A' && us[j] <= 'F')
|
||||
us[j] += FRIBIDI_CHAR_ARABIC_ALEF - 'A';
|
||||
else if (us[j] >= 'G' && us[j] <= 'Z')
|
||||
us[j] += FRIBIDI_CHAR_HEBREW_ALEF - 'G';
|
||||
else if (us[j] >= '6' && us[j] <= '9')
|
||||
us[j] += FRIBIDI_CHAR_ARABIC_ZERO - '0';
|
||||
}
|
||||
len = j;
|
||||
}
|
||||
|
||||
/* Start timer */
|
||||
time0 = utime ();
|
||||
|
||||
for (i = 0; i < niter; i++)
|
||||
{
|
||||
/* Create a bidi string */
|
||||
base = FRIBIDI_PAR_ON;
|
||||
if (!fribidi_log2vis (us, len, &base,
|
||||
/* output */
|
||||
out_us, positionVtoL, positionLtoV,
|
||||
embedding_list))
|
||||
die2
|
||||
("something failed in fribidi_log2vis.\n"
|
||||
"perhaps memory allocation failure.", NULL);
|
||||
}
|
||||
|
||||
/* stop timer */
|
||||
time1 = utime ();
|
||||
|
||||
/* output result */
|
||||
printf ("Length = %d\n", len);
|
||||
printf ("Iterations = %d\n", niter);
|
||||
printf ("%d len*iterations in %f seconds\n", len * niter, time1 - time0);
|
||||
printf ("= %.0f kilo.length.iterations/second\n",
|
||||
1.0 * len * niter / 1000 / (time1 - time0));
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
int
|
||||
main (
|
||||
int argc,
|
||||
char *argv[]
|
||||
)
|
||||
{
|
||||
int niter = NUM_ITER;
|
||||
|
||||
/* Parse the command line */
|
||||
argv[0] = appname;
|
||||
while (1)
|
||||
{
|
||||
int option_index = 0, c;
|
||||
static struct option long_options[] = {
|
||||
{"help", 0, 0, 'h'},
|
||||
{"version", 0, 0, 'V'},
|
||||
{"niter", 0, 0, 'n'},
|
||||
{0, 0, 0, 0}
|
||||
};
|
||||
|
||||
c = getopt_long (argc, argv, "hVn:", long_options, &option_index);
|
||||
if (c == -1)
|
||||
break;
|
||||
|
||||
switch (c)
|
||||
{
|
||||
case 0:
|
||||
break;
|
||||
case 'h':
|
||||
help ();
|
||||
break;
|
||||
case 'V':
|
||||
version ();
|
||||
break;
|
||||
case 'n':
|
||||
niter = atoi (optarg);
|
||||
if (niter <= 0)
|
||||
die2 ("invalid number of iterations `%s'\n", optarg);
|
||||
break;
|
||||
case ':':
|
||||
case '?':
|
||||
die2 (NULL, NULL);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
printf ("* Without explicit marks:\n");
|
||||
benchmark (TEST_STRING, niter);
|
||||
printf ("\n");
|
||||
printf ("* With explicit marks:\n");
|
||||
benchmark (TEST_STRING_EXPLICIT, niter);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
17
3party/fribidi/bin/fribidi-bidi-types.c
Normal file
17
3party/fribidi/bin/fribidi-bidi-types.c
Normal file
|
@ -0,0 +1,17 @@
|
|||
#include <stdio.h>
|
||||
#include <fribidi.h>
|
||||
|
||||
int
|
||||
main (
|
||||
void
|
||||
)
|
||||
{
|
||||
|
||||
FriBidiChar c;
|
||||
|
||||
for (c = 0; c < FRIBIDI_UNICODE_CHARS; c++)
|
||||
printf ("0x%04lX %s\n", (long) c,
|
||||
fribidi_get_bidi_type_name (fribidi_get_bidi_type (c)));
|
||||
|
||||
return 0;
|
||||
}
|
35
3party/fribidi/bin/fribidi-caprtl2utf8.c
Normal file
35
3party/fribidi/bin/fribidi-caprtl2utf8.c
Normal file
|
@ -0,0 +1,35 @@
|
|||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <fribidi.h>
|
||||
|
||||
char buf[BUFSIZ];
|
||||
FriBidiChar ubuf[BUFSIZ];
|
||||
|
||||
int
|
||||
main (
|
||||
void
|
||||
)
|
||||
{
|
||||
FriBidiCharSet caprtl = fribidi_parse_charset ("CapRTL");
|
||||
FriBidiCharSet utf8 = fribidi_parse_charset ("UTF-8");
|
||||
|
||||
while (fgets (buf, sizeof buf, stdin))
|
||||
{
|
||||
char eol[5];
|
||||
|
||||
FriBidiStrIndex len = strlen (buf);
|
||||
while (len && (buf[len - 1] == '\n' || buf[len - 1] == '\r'))
|
||||
len--;
|
||||
strncpy (eol, buf + len, sizeof eol);
|
||||
buf[len] = 0;
|
||||
|
||||
len = fribidi_charset_to_unicode (caprtl, buf, len, ubuf);
|
||||
fprintf (stderr, "%d\n", len);
|
||||
len = fribidi_unicode_to_charset (utf8, ubuf, len, buf);
|
||||
|
||||
buf[len] = 0;
|
||||
printf ("%s%s", buf, eol);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
622
3party/fribidi/bin/fribidi-main.c
Normal file
622
3party/fribidi/bin/fribidi-main.c
Normal file
|
@ -0,0 +1,622 @@
|
|||
/* FriBidi
|
||||
* fribidi-main.c - command line program for libfribidi
|
||||
*
|
||||
* $Id: fribidi-main.c,v 1.15 2006/01/31 03:23:12 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2006/01/31 03:23:12 $
|
||||
* $Revision: 1.15 $
|
||||
* $Source: /cvs/fribidi/fribidi2/bin/fribidi-main.c,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi.h>
|
||||
#if FRIBIDI_CHARSETS+0
|
||||
#else
|
||||
# if FRIBIDI_MAIN_USE_ICONV_H
|
||||
# include <iconv.h>
|
||||
# else /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
# include <fribidi-char-sets.h>
|
||||
# endif /* FRIBIDI_MAIN_USE_ICONV_H */
|
||||
#endif /* !FRIBIDI_CHARSETS */
|
||||
|
||||
#include <stdio.h>
|
||||
#if STDC_HEADERS+0
|
||||
# include <stdlib.h>
|
||||
# include <stddef.h>
|
||||
#else
|
||||
# if HAVE_STDLIB_H
|
||||
# include <stdlib.h>
|
||||
# endif
|
||||
#endif
|
||||
#if HAVE_STRING_H+0
|
||||
# if STDC_HEADERS && HAVE_MEMORY_H
|
||||
# else
|
||||
# include <memory.h>
|
||||
# endif
|
||||
# include <string.h>
|
||||
#endif
|
||||
#if HAVE_STRINGS_H+0
|
||||
# include <strings.h>
|
||||
#endif
|
||||
|
||||
#include "getopt.h"
|
||||
|
||||
#define appname "fribidi"
|
||||
|
||||
#define MAX_STR_LEN 65000
|
||||
|
||||
|
||||
#define ALLOCATE(tp,ln) ((tp *) fribidi_malloc (sizeof (tp) * (ln)))
|
||||
|
||||
static void
|
||||
die2 (
|
||||
const char *fmt,
|
||||
const char *arg
|
||||
)
|
||||
{
|
||||
fprintf (stderr, "%s: ", appname);
|
||||
if (fmt)
|
||||
fprintf (stderr, fmt, arg);
|
||||
fprintf (stderr, "Try `%s --help' for more information.\n", appname);
|
||||
exit (-1);
|
||||
}
|
||||
|
||||
#define die1(msg) die2("%s", msg)
|
||||
|
||||
fribidi_boolean do_break, do_pad, do_mirror, do_reorder_nsm, do_clean;
|
||||
fribidi_boolean show_input, show_visual, show_basedir;
|
||||
fribidi_boolean show_ltov, show_vtol, show_levels;
|
||||
int text_width;
|
||||
const char *char_set;
|
||||
const char *bol_text, *eol_text;
|
||||
FriBidiParType input_base_direction;
|
||||
#if FRIBIDI_MAIN_USE_ICONV_H+0
|
||||
iconv_t to_ucs4, from_ucs4;
|
||||
#else /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
int char_set_num;
|
||||
#endif /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
|
||||
static void
|
||||
help (
|
||||
void
|
||||
)
|
||||
{
|
||||
/* Break help string into little ones, to assure ISO C89 conformance */
|
||||
printf ("Usage: " appname " [OPTION]... [FILE]...\n"
|
||||
"A command line interface for the " FRIBIDI_NAME " library.\n"
|
||||
"Convert a logical string to visual.\n"
|
||||
"\n"
|
||||
" -h, --help Display this information and exit\n"
|
||||
" -V, --version Display version information and exit\n"
|
||||
" -v, --verbose Verbose mode, same as --basedir --ltov --vtol\n"
|
||||
" --levels --changes\n");
|
||||
printf (" -d, --debug Output debug information\n"
|
||||
" -t, --test Test " FRIBIDI_NAME
|
||||
", same as --clean --nobreak\n"
|
||||
" --showinput --reordernsm\n");
|
||||
#if FRIBIDI_MAIN_USE_ICONV_H+0
|
||||
printf (" -c, --charset CS Specify character set, default is %s.\n"
|
||||
" CS should be a valid iconv character set name\n",
|
||||
char_set);
|
||||
#else /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
printf (" -c, --charset CS Specify character set, default is %s\n"
|
||||
" --charsetdesc CS Show descriptions for character set CS and exit\n"
|
||||
" --caprtl Old style: set character set to CapRTL\n",
|
||||
char_set);
|
||||
#endif /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
printf (" --showinput Output the input string too\n"
|
||||
" --nopad Do not right justify RTL lines\n"
|
||||
" --nobreak Do not break long lines\n"
|
||||
" -w, --width W Screen width for padding, default is %d, but if\n"
|
||||
" enviroment variable COLUMNS is defined, its value\n"
|
||||
" will be used, --width overrides both of them.\n",
|
||||
text_width);
|
||||
printf
|
||||
(" -B, --bol BOL Output string BOL before the visual string\n"
|
||||
" -E, --eol EOL Output string EOL after the visual string\n"
|
||||
" --rtl Force base direction to RTL\n"
|
||||
" --ltr Force base direction to LTR\n"
|
||||
" --wrtl Set base direction to RTL if no strong character found\n");
|
||||
printf
|
||||
(" --wltr Set base direction to LTR if no strong character found\n"
|
||||
" (default)\n"
|
||||
" --nomirror Turn mirroring off, to do it later\n"
|
||||
" --reordernsm Reorder NSM sequences to follow their base character\n"
|
||||
" --clean Remove explicit format codes in visual string\n"
|
||||
" output, currently does not affect other outputs\n"
|
||||
" --basedir Output Base Direction\n");
|
||||
printf (" --ltov Output Logical to Visual position map\n"
|
||||
" --vtol Output Visual to Logical position map\n"
|
||||
" --levels Output Embedding Levels\n"
|
||||
" --novisual Do not output the visual string, to be used with\n"
|
||||
" --basedir, --ltov, --vtol, --levels, --changes\n");
|
||||
printf (" All string indexes are zero based\n" "\n" "Output:\n"
|
||||
" For each line of input, output something like this:\n"
|
||||
" [input-str` => '][BOL][[padding space]visual-str][EOL]\n"
|
||||
" [\\n base-dir][\\n ltov-map][\\n vtol-map][\\n levels][\\n changes]\n");
|
||||
|
||||
#if FRIBIDI_MAIN_USE_ICONV_H+0
|
||||
#else
|
||||
{
|
||||
int i;
|
||||
printf ("\n" "Available character sets:\n");
|
||||
for (i = 1; i <= FRIBIDI_CHAR_SETS_NUM; i++)
|
||||
printf (" * %-10s: %-25s%1s\n",
|
||||
fribidi_char_set_name (i), fribidi_char_set_title (i),
|
||||
(fribidi_char_set_desc (i) ? "X" : ""));
|
||||
printf
|
||||
(" X: Character set has descriptions, use --charsetdesc to see\n");
|
||||
}
|
||||
#endif /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
|
||||
printf ("\nReport bugs online at\n<" FRIBIDI_BUGREPORT ">.\n");
|
||||
exit (0);
|
||||
}
|
||||
|
||||
static void
|
||||
version (
|
||||
void
|
||||
)
|
||||
{
|
||||
printf (appname " %s", fribidi_version_info);
|
||||
exit (0);
|
||||
}
|
||||
|
||||
static char *
|
||||
my_fribidi_strdup (
|
||||
char *s
|
||||
)
|
||||
{
|
||||
char *m;
|
||||
|
||||
m = fribidi_malloc (strlen (s) + 1);
|
||||
if (!m)
|
||||
return NULL;
|
||||
|
||||
strcpy (m, s);
|
||||
|
||||
return m;
|
||||
}
|
||||
|
||||
int
|
||||
main (
|
||||
int argc,
|
||||
char *argv[]
|
||||
)
|
||||
{
|
||||
int exit_val;
|
||||
fribidi_boolean file_found;
|
||||
char *s;
|
||||
FILE *IN;
|
||||
|
||||
text_width = 80;
|
||||
do_break = true;
|
||||
do_pad = true;
|
||||
do_mirror = true;
|
||||
do_clean = false;
|
||||
do_reorder_nsm = false;
|
||||
show_input = false;
|
||||
show_visual = true;
|
||||
show_basedir = false;
|
||||
show_ltov = false;
|
||||
show_vtol = false;
|
||||
show_levels = false;
|
||||
char_set = "UTF-8";
|
||||
bol_text = NULL;
|
||||
eol_text = NULL;
|
||||
input_base_direction = FRIBIDI_PAR_ON;
|
||||
|
||||
if ((s = (char *) getenv ("COLUMNS")))
|
||||
{
|
||||
int i;
|
||||
|
||||
i = atoi (s);
|
||||
if (i > 0)
|
||||
text_width = i;
|
||||
}
|
||||
|
||||
#define CHARSETDESC 257
|
||||
#define CAPRTL 258
|
||||
|
||||
/* Parse the command line with getopt library */
|
||||
/* Must set argv[0], getopt uses it to generate error messages */
|
||||
argv[0] = appname;
|
||||
while (1)
|
||||
{
|
||||
int option_index = 0, c;
|
||||
static struct option long_options[] = {
|
||||
{"help", 0, 0, 'h'},
|
||||
{"version", 0, 0, 'V'},
|
||||
{"verbose", 0, 0, 'v'},
|
||||
{"debug", 0, 0, 'd'},
|
||||
{"test", 0, 0, 't'},
|
||||
{"charset", 1, 0, 'c'},
|
||||
#if FRIBIDI_MAIN_USE_ICONV_H+0
|
||||
#else
|
||||
{"charsetdesc", 1, 0, CHARSETDESC},
|
||||
{"caprtl", 0, 0, CAPRTL},
|
||||
#endif /* FRIBIDI_MAIN_USE_ICONV_H */
|
||||
{"showinput", 0, (int *) (void *) &show_input, true},
|
||||
{"nopad", 0, (int *) (void *) &do_pad, false},
|
||||
{"nobreak", 0, (int *) (void *) &do_break, false},
|
||||
{"width", 1, 0, 'w'},
|
||||
{"bol", 1, 0, 'B'},
|
||||
{"eol", 1, 0, 'E'},
|
||||
{"nomirror", 0, (int *) (void *) &do_mirror, false},
|
||||
{"reordernsm", 0, (int *) (void *) &do_reorder_nsm, true},
|
||||
{"clean", 0, (int *) (void *) &do_clean, true},
|
||||
{"ltr", 0, (int *) (void *) &input_base_direction, FRIBIDI_PAR_LTR},
|
||||
{"rtl", 0, (int *) (void *) &input_base_direction, FRIBIDI_PAR_RTL},
|
||||
{"wltr", 0, (int *) (void *) &input_base_direction,
|
||||
FRIBIDI_PAR_WLTR},
|
||||
{"wrtl", 0, (int *) (void *) &input_base_direction,
|
||||
FRIBIDI_PAR_WRTL},
|
||||
{"basedir", 0, (int *) (void *) &show_basedir, true},
|
||||
{"ltov", 0, (int *) (void *) &show_ltov, true},
|
||||
{"vtol", 0, (int *) (void *) &show_vtol, true},
|
||||
{"levels", 0, (int *) (void *) &show_levels, true},
|
||||
{"novisual", 0, (int *) (void *) &show_visual, false},
|
||||
{0, 0, 0, 0}
|
||||
};
|
||||
|
||||
c =
|
||||
getopt_long (argc, argv, "hVvdtc:w:B:E:", long_options,
|
||||
&option_index);
|
||||
if (c == -1)
|
||||
break;
|
||||
|
||||
switch (c)
|
||||
{
|
||||
case 0:
|
||||
break;
|
||||
case 'h':
|
||||
help ();
|
||||
break;
|
||||
case 'V':
|
||||
version ();
|
||||
break;
|
||||
case 'v':
|
||||
show_basedir = show_ltov = show_vtol = show_levels = true;
|
||||
break;
|
||||
case 'w':
|
||||
text_width = atoi (optarg);
|
||||
if (text_width <= 0)
|
||||
die2 ("invalid screen width `%s'\n", optarg);
|
||||
break;
|
||||
case 'B':
|
||||
bol_text = optarg;
|
||||
break;
|
||||
case 'E':
|
||||
eol_text = optarg;
|
||||
break;
|
||||
case 'd':
|
||||
if (!fribidi_set_debug (true))
|
||||
die1
|
||||
("lib" FRIBIDI
|
||||
" must be compiled with DEBUG option to enable\nturn debug info on.\n");
|
||||
break;
|
||||
case 't':
|
||||
do_clean = show_input = do_reorder_nsm = true;
|
||||
do_break = false;
|
||||
break;
|
||||
case 'c':
|
||||
char_set = my_fribidi_strdup (optarg);
|
||||
if (!char_set)
|
||||
die1 ("memory allocation failed for char_set!");
|
||||
break;
|
||||
#if FRIBIDI_MAIN_USE_ICONV_H+0
|
||||
#else
|
||||
case CAPRTL:
|
||||
char_set = "CapRTL";
|
||||
break;
|
||||
case CHARSETDESC:
|
||||
char_set = optarg;
|
||||
char_set_num = fribidi_parse_charset (char_set);
|
||||
if (!char_set_num)
|
||||
die2 ("unrecognized character set `%s'\n", char_set);
|
||||
if (!fribidi_char_set_desc (char_set_num))
|
||||
die2 ("no description available for character set `%s'\n",
|
||||
fribidi_char_set_name (char_set_num));
|
||||
else
|
||||
printf ("Descriptions for character set %s:\n"
|
||||
"\n" "%s", fribidi_char_set_title (char_set_num),
|
||||
fribidi_char_set_desc (char_set_num));
|
||||
exit (0);
|
||||
break;
|
||||
#endif /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
case ':':
|
||||
case '?':
|
||||
die2 (NULL, NULL);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
#if FRIBIDI_MAIN_USE_ICONV_H+0
|
||||
to_ucs4 = iconv_open ("WCHAR_T", char_set);
|
||||
from_ucs4 = iconv_open (char_set, "WCHAR_T");
|
||||
#else /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
char_set_num = fribidi_parse_charset (char_set);
|
||||
#endif /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
|
||||
#if FRIBIDI_MAIN_USE_ICONV_H+0
|
||||
if (to_ucs4 == (iconv_t) (-1) || from_ucs4 == (iconv_t) (-1))
|
||||
#else /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
if (!char_set_num)
|
||||
#endif /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
die2 ("unrecognized character set `%s'\n", char_set);
|
||||
|
||||
fribidi_set_mirroring (do_mirror);
|
||||
fribidi_set_reorder_nsm (do_reorder_nsm);
|
||||
exit_val = 0;
|
||||
file_found = false;
|
||||
while (optind < argc || !file_found)
|
||||
{
|
||||
const char *filename;
|
||||
|
||||
filename = optind < argc ? argv[optind++] : "-";
|
||||
file_found = true;
|
||||
|
||||
/* Open the infile for reading */
|
||||
if (filename[0] == '-' && !filename[1])
|
||||
{
|
||||
IN = stdin;
|
||||
}
|
||||
else
|
||||
{
|
||||
IN = fopen (filename, "r");
|
||||
if (!IN)
|
||||
{
|
||||
fprintf (stderr, "%s: %s: no such file or directory\n",
|
||||
appname, filename);
|
||||
exit_val = 1;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
/* Read and process input one line at a time */
|
||||
{
|
||||
char S_[MAX_STR_LEN];
|
||||
int padding_width, break_width;
|
||||
|
||||
padding_width = show_input ? (text_width - 10) / 2 : text_width;
|
||||
break_width = do_break ? padding_width : 3 * MAX_STR_LEN;
|
||||
|
||||
while (fgets (S_, sizeof (S_) - 1, IN))
|
||||
{
|
||||
const char *new_line, *nl_found;
|
||||
FriBidiChar logical[MAX_STR_LEN];
|
||||
char outstring[MAX_STR_LEN];
|
||||
FriBidiParType base;
|
||||
FriBidiStrIndex len;
|
||||
|
||||
nl_found = "";
|
||||
S_[sizeof (S_) - 1] = 0;
|
||||
len = strlen (S_);
|
||||
/* chop */
|
||||
if (S_[len - 1] == '\n')
|
||||
{
|
||||
len--;
|
||||
S_[len] = '\0';
|
||||
new_line = "\n";
|
||||
}
|
||||
else
|
||||
new_line = "";
|
||||
/* TODO: handle \r */
|
||||
|
||||
#if FRIBIDI_MAIN_USE_ICONV_H+0
|
||||
{
|
||||
char *st = S_, *ust = (char *) logical;
|
||||
int in_len = (int) len;
|
||||
len = sizeof logical;
|
||||
iconv (to_ucs4, &st, &in_len, &ust, (int *) &len);
|
||||
len = (FriBidiChar *) ust - logical;
|
||||
}
|
||||
#else /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
len = fribidi_charset_to_unicode (char_set_num, S_, len, logical);
|
||||
#endif /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
|
||||
{
|
||||
FriBidiChar *visual;
|
||||
FriBidiStrIndex *ltov, *vtol;
|
||||
FriBidiLevel *levels;
|
||||
FriBidiStrIndex new_len;
|
||||
fribidi_boolean log2vis;
|
||||
|
||||
visual = show_visual ? ALLOCATE (FriBidiChar,
|
||||
len + 1
|
||||
) : NULL;
|
||||
ltov = show_ltov ? ALLOCATE (FriBidiStrIndex,
|
||||
len + 1
|
||||
) : NULL;
|
||||
vtol = show_vtol ? ALLOCATE (FriBidiStrIndex,
|
||||
len + 1
|
||||
) : NULL;
|
||||
levels = show_levels ? ALLOCATE (FriBidiLevel,
|
||||
len + 1
|
||||
) : NULL;
|
||||
|
||||
/* Create a bidi string. */
|
||||
base = input_base_direction;
|
||||
log2vis = fribidi_log2vis (logical, len, &base,
|
||||
/* output */
|
||||
visual, ltov, vtol, levels);
|
||||
if (log2vis)
|
||||
{
|
||||
|
||||
if (show_input)
|
||||
printf ("%-*s => ", padding_width, S_);
|
||||
|
||||
new_len = len;
|
||||
|
||||
/* Remove explicit marks, if asked for. */
|
||||
if (do_clean)
|
||||
len =
|
||||
fribidi_remove_bidi_marks (visual, len, ltov, vtol,
|
||||
levels);
|
||||
|
||||
if (show_visual)
|
||||
{
|
||||
printf ("%s", nl_found);
|
||||
|
||||
if (bol_text)
|
||||
printf ("%s", bol_text);
|
||||
|
||||
/* Convert it to input charset and print. */
|
||||
{
|
||||
FriBidiStrIndex idx, st;
|
||||
for (idx = 0; idx < len;)
|
||||
{
|
||||
FriBidiStrIndex wid, inlen;
|
||||
|
||||
wid = break_width;
|
||||
st = idx;
|
||||
#if FRIBIDI_MAIN_USE_ICONV_H+0
|
||||
#else
|
||||
if (char_set_num != FRIBIDI_CHAR_SET_CAP_RTL)
|
||||
#endif /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
while (wid > 0 && idx < len)
|
||||
{
|
||||
wid -=
|
||||
FRIBIDI_IS_EXPLICIT_OR_BN_OR_NSM
|
||||
(fribidi_get_bidi_type (visual[idx])) ? 0
|
||||
: 1;
|
||||
idx++;
|
||||
}
|
||||
#if FRIBIDI_MAIN_USE_ICONV_H+0
|
||||
#else
|
||||
else
|
||||
while (wid > 0 && idx < len)
|
||||
{
|
||||
wid--;
|
||||
idx++;
|
||||
}
|
||||
#endif /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
if (wid < 0 && idx > st + 1)
|
||||
idx--;
|
||||
inlen = idx - st;
|
||||
|
||||
#if FRIBIDI_MAIN_USE_ICONV_H+0
|
||||
{
|
||||
char *str = outstring, *ust =
|
||||
(char *) (visual + st);
|
||||
int in_len = inlen * sizeof visual[0];
|
||||
new_len = sizeof outstring;
|
||||
iconv (from_ucs4, &ust, &in_len, &str,
|
||||
(int *) &new_len);
|
||||
*str = '\0';
|
||||
new_len = str - outstring;
|
||||
}
|
||||
#else /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
new_len =
|
||||
fribidi_unicode_to_charset (char_set_num,
|
||||
visual + st, inlen,
|
||||
outstring);
|
||||
#endif /* !FRIBIDI_MAIN_USE_ICONV_H */
|
||||
if (FRIBIDI_IS_RTL (base))
|
||||
printf ("%*s",
|
||||
(int) (do_pad ? (padding_width +
|
||||
strlen (outstring) -
|
||||
(break_width -
|
||||
wid)) : 0),
|
||||
outstring);
|
||||
else
|
||||
printf ("%s", outstring);
|
||||
if (idx < len)
|
||||
printf ("\n");
|
||||
}
|
||||
}
|
||||
if (eol_text)
|
||||
printf ("%s", eol_text);
|
||||
|
||||
nl_found = "\n";
|
||||
}
|
||||
if (show_basedir)
|
||||
{
|
||||
printf ("%s", nl_found);
|
||||
printf ("Base direction: %s",
|
||||
(FRIBIDI_DIR_TO_LEVEL (base) ? "R" : "L"));
|
||||
nl_found = "\n";
|
||||
}
|
||||
if (show_ltov)
|
||||
{
|
||||
FriBidiStrIndex i;
|
||||
|
||||
printf ("%s", nl_found);
|
||||
for (i = 0; i < len; i++)
|
||||
printf ("%ld ", (long) ltov[i]);
|
||||
nl_found = "\n";
|
||||
}
|
||||
if (show_vtol)
|
||||
{
|
||||
FriBidiStrIndex i;
|
||||
|
||||
printf ("%s", nl_found);
|
||||
for (i = 0; i < len; i++)
|
||||
printf ("%ld ", (long) vtol[i]);
|
||||
nl_found = "\n";
|
||||
}
|
||||
if (show_levels)
|
||||
{
|
||||
FriBidiStrIndex i;
|
||||
|
||||
printf ("%s", nl_found);
|
||||
for (i = 0; i < len; i++)
|
||||
printf ("%d ", (int) levels[i]);
|
||||
nl_found = "\n";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
exit_val = 2;
|
||||
}
|
||||
|
||||
if (show_visual)
|
||||
free (visual);
|
||||
if (show_ltov)
|
||||
free (ltov);
|
||||
if (show_vtol)
|
||||
free (vtol);
|
||||
if (show_levels)
|
||||
free (levels);
|
||||
}
|
||||
|
||||
if (*nl_found)
|
||||
printf (new_line);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return exit_val;
|
||||
}
|
||||
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
1268
3party/fribidi/bin/getopt.c
Normal file
1268
3party/fribidi/bin/getopt.c
Normal file
File diff suppressed because it is too large
Load diff
187
3party/fribidi/bin/getopt.h
Normal file
187
3party/fribidi/bin/getopt.h
Normal file
|
@ -0,0 +1,187 @@
|
|||
/* Declarations for getopt.
|
||||
Copyright (C) 1989-1994,1996-1999,2001,2003,2004
|
||||
Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#ifndef _GETOPT_H
|
||||
|
||||
#ifndef __need_getopt
|
||||
# define _GETOPT_H 1
|
||||
#endif
|
||||
|
||||
/* If __GNU_LIBRARY__ is not already defined, either we are being used
|
||||
standalone, or this is the first header included in the source file.
|
||||
If we are being used with glibc, we need to include <features.h>, but
|
||||
that does not exist if we are standalone. So: if __GNU_LIBRARY__ is
|
||||
not defined, include <ctype.h>, which will pull in <features.h> for us
|
||||
if it's from glibc. (Why ctype.h? It's guaranteed to exist and it
|
||||
doesn't flood the namespace with stuff the way some other headers do.) */
|
||||
#if !defined __GNU_LIBRARY__
|
||||
# include <ctype.h>
|
||||
#endif
|
||||
|
||||
#ifndef __THROW
|
||||
# ifndef __GNUC_PREREQ
|
||||
# define __GNUC_PREREQ(maj, min) (0)
|
||||
# endif
|
||||
# if defined __cplusplus && __GNUC_PREREQ (2,8)
|
||||
# define __THROW throw ()
|
||||
# else
|
||||
# define __THROW
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
/* For communication from `getopt' to the caller.
|
||||
When `getopt' finds an option that takes an argument,
|
||||
the argument value is returned here.
|
||||
Also, when `ordering' is RETURN_IN_ORDER,
|
||||
each non-option ARGV-element is returned here. */
|
||||
|
||||
extern char *optarg;
|
||||
|
||||
/* Index in ARGV of the next element to be scanned.
|
||||
This is used for communication to and from the caller
|
||||
and for communication between successive calls to `getopt'.
|
||||
|
||||
On entry to `getopt', zero means this is the first call; initialize.
|
||||
|
||||
When `getopt' returns -1, this is the index of the first of the
|
||||
non-option elements that the caller should itself scan.
|
||||
|
||||
Otherwise, `optind' communicates from one call to the next
|
||||
how much of ARGV has been scanned so far. */
|
||||
|
||||
extern int optind;
|
||||
|
||||
/* Callers store zero here to inhibit the error message `getopt' prints
|
||||
for unrecognized options. */
|
||||
|
||||
extern int opterr;
|
||||
|
||||
/* Set to an option character which was unrecognized. */
|
||||
|
||||
extern int optopt;
|
||||
|
||||
#ifndef __need_getopt
|
||||
/* Describe the long-named options requested by the application.
|
||||
The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
|
||||
of `struct option' terminated by an element containing a name which is
|
||||
zero.
|
||||
|
||||
The field `has_arg' is:
|
||||
no_argument (or 0) if the option does not take an argument,
|
||||
required_argument (or 1) if the option requires an argument,
|
||||
optional_argument (or 2) if the option takes an optional argument.
|
||||
|
||||
If the field `flag' is not NULL, it points to a variable that is set
|
||||
to the value given in the field `val' when the option is found, but
|
||||
left unchanged if the option is not found.
|
||||
|
||||
To have a long-named option do something other than set an `int' to
|
||||
a compiled-in constant, such as set a value from `optarg', set the
|
||||
option's `flag' field to zero and its `val' field to a nonzero
|
||||
value (the equivalent single-letter option character, if there is
|
||||
one). For long options that have a zero `flag' field, `getopt'
|
||||
returns the contents of the `val' field. */
|
||||
|
||||
struct option
|
||||
{
|
||||
const char *name;
|
||||
/* has_arg can't be an enum because some compilers complain about
|
||||
type mismatches in all the code that assumes it is an int. */
|
||||
int has_arg;
|
||||
int *flag;
|
||||
int val;
|
||||
};
|
||||
|
||||
/* Names for the values of the `has_arg' field of `struct option'. */
|
||||
|
||||
# define no_argument 0
|
||||
# define required_argument 1
|
||||
# define optional_argument 2
|
||||
#endif /* need getopt */
|
||||
|
||||
|
||||
/* Get definitions and prototypes for functions to process the
|
||||
arguments in ARGV (ARGC of them, minus the program name) for
|
||||
options given in OPTS.
|
||||
|
||||
Return the option character from OPTS just read. Return -1 when
|
||||
there are no more options. For unrecognized options, or options
|
||||
missing arguments, `optopt' is set to the option letter, and '?' is
|
||||
returned.
|
||||
|
||||
The OPTS string is a list of characters which are recognized option
|
||||
letters, optionally followed by colons, specifying that that letter
|
||||
takes an argument, to be placed in `optarg'.
|
||||
|
||||
If a letter in OPTS is followed by two colons, its argument is
|
||||
optional. This behavior is specific to the GNU `getopt'.
|
||||
|
||||
The argument `--' causes premature termination of argument
|
||||
scanning, explicitly telling `getopt' that there are no more
|
||||
options.
|
||||
|
||||
If OPTS begins with `--', then non-option arguments are treated as
|
||||
arguments to the option '\0'. This behavior is specific to the GNU
|
||||
`getopt'. */
|
||||
|
||||
#ifdef __GNU_LIBRARY__
|
||||
/* Many other libraries have conflicting prototypes for getopt, with
|
||||
differences in the consts, in stdlib.h. To avoid compilation
|
||||
errors, only prototype getopt for the GNU C library. */
|
||||
extern int getopt (
|
||||
int ___argc,
|
||||
char *const *___argv,
|
||||
const char *__shortopts
|
||||
) __THROW;
|
||||
#else /* not __GNU_LIBRARY__ */
|
||||
extern int getopt (
|
||||
);
|
||||
#endif /* __GNU_LIBRARY__ */
|
||||
|
||||
#ifndef __need_getopt
|
||||
extern int getopt_long (
|
||||
int ___argc,
|
||||
char *const *___argv,
|
||||
const char *__shortopts,
|
||||
const struct option *__longopts,
|
||||
int *__longind
|
||||
) __THROW;
|
||||
extern int getopt_long_only (
|
||||
int ___argc,
|
||||
char *const *___argv,
|
||||
const char *__shortopts,
|
||||
const struct option *__longopts,
|
||||
int *__longind
|
||||
) __THROW;
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Make sure we later can get all the definitions and declarations. */
|
||||
#undef __need_getopt
|
||||
|
||||
#endif /* getopt.h */
|
213
3party/fribidi/bin/getopt1.c
Normal file
213
3party/fribidi/bin/getopt1.c
Normal file
|
@ -0,0 +1,213 @@
|
|||
/* getopt_long and getopt_long_only entry points for GNU getopt.
|
||||
Copyright (C) 1987,88,89,90,91,92,93,94,96,97,98,2004
|
||||
Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#ifdef _LIBC
|
||||
# include <getopt.h>
|
||||
#else
|
||||
# include "getopt.h"
|
||||
#endif
|
||||
#include "getopt_int.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
/* Comment out all this code if we are using the GNU C Library, and are not
|
||||
actually compiling the library itself. This code is part of the GNU C
|
||||
Library, but also included in many other GNU distributions. Compiling
|
||||
and linking in this code is a waste when using the GNU C library
|
||||
(especially if it is a shared library). Rather than having every GNU
|
||||
program understand `configure --with-gnu-libc' and omit the object files,
|
||||
it is simpler to just do this in the source for each such file. */
|
||||
|
||||
#define GETOPT_INTERFACE_VERSION 2
|
||||
#if !defined _LIBC && defined __GLIBC__ && __GLIBC__ >= 2
|
||||
#include <gnu-versions.h>
|
||||
#if _GNU_GETOPT_INTERFACE_VERSION == GETOPT_INTERFACE_VERSION
|
||||
#define ELIDE_CODE
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef ELIDE_CODE
|
||||
|
||||
|
||||
/* This needs to come after some library #include
|
||||
to get __GNU_LIBRARY__ defined. */
|
||||
#ifdef __GNU_LIBRARY__
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
|
||||
#ifndef NULL
|
||||
#define NULL 0
|
||||
#endif
|
||||
|
||||
int
|
||||
getopt_long (
|
||||
int argc,
|
||||
char *const *argv,
|
||||
const char *options,
|
||||
const struct option *long_options,
|
||||
int *opt_index
|
||||
)
|
||||
{
|
||||
return _getopt_internal (argc, argv, options, long_options, opt_index, 0);
|
||||
}
|
||||
|
||||
int
|
||||
_getopt_long_r (
|
||||
int argc,
|
||||
char *const *argv,
|
||||
const char *options,
|
||||
const struct option *long_options,
|
||||
int *opt_index,
|
||||
struct _getopt_data *d
|
||||
)
|
||||
{
|
||||
return _getopt_internal_r (argc, argv, options, long_options, opt_index,
|
||||
0, d);
|
||||
}
|
||||
|
||||
/* Like getopt_long, but '-' as well as '--' can indicate a long option.
|
||||
If an option that starts with '-' (not '--') doesn't match a long option,
|
||||
but does match a short option, it is parsed as a short option
|
||||
instead. */
|
||||
|
||||
int
|
||||
getopt_long_only (
|
||||
int argc,
|
||||
char *const *argv,
|
||||
const char *options,
|
||||
const struct option *long_options,
|
||||
int *opt_index
|
||||
)
|
||||
{
|
||||
return _getopt_internal (argc, argv, options, long_options, opt_index, 1);
|
||||
}
|
||||
|
||||
int
|
||||
_getopt_long_only_r (
|
||||
int argc,
|
||||
char *const *argv,
|
||||
const char *options,
|
||||
const struct option *long_options,
|
||||
int *opt_index,
|
||||
struct _getopt_data *d
|
||||
)
|
||||
{
|
||||
return _getopt_internal_r (argc, argv, options, long_options, opt_index,
|
||||
1, d);
|
||||
}
|
||||
|
||||
#endif /* Not ELIDE_CODE. */
|
||||
|
||||
#ifdef TEST
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
int
|
||||
main (
|
||||
int argc,
|
||||
char **argv
|
||||
)
|
||||
{
|
||||
int c;
|
||||
int digit_optind = 0;
|
||||
|
||||
while (1)
|
||||
{
|
||||
int this_option_optind = optind ? optind : 1;
|
||||
int option_index = 0;
|
||||
static struct option long_options[] = {
|
||||
{"add", 1, 0, 0},
|
||||
{"append", 0, 0, 0},
|
||||
{"delete", 1, 0, 0},
|
||||
{"verbose", 0, 0, 0},
|
||||
{"create", 0, 0, 0},
|
||||
{"file", 1, 0, 0},
|
||||
{0, 0, 0, 0}
|
||||
};
|
||||
|
||||
c = getopt_long (argc, argv, "abc:d:0123456789",
|
||||
long_options, &option_index);
|
||||
if (c == -1)
|
||||
break;
|
||||
|
||||
switch (c)
|
||||
{
|
||||
case 0:
|
||||
printf ("option %s", long_options[option_index].name);
|
||||
if (optarg)
|
||||
printf (" with arg %s", optarg);
|
||||
printf ("\n");
|
||||
break;
|
||||
|
||||
case '0':
|
||||
case '1':
|
||||
case '2':
|
||||
case '3':
|
||||
case '4':
|
||||
case '5':
|
||||
case '6':
|
||||
case '7':
|
||||
case '8':
|
||||
case '9':
|
||||
if (digit_optind != 0 && digit_optind != this_option_optind)
|
||||
printf ("digits occur in two different argv-elements.\n");
|
||||
digit_optind = this_option_optind;
|
||||
printf ("option %c\n", c);
|
||||
break;
|
||||
|
||||
case 'a':
|
||||
printf ("option a\n");
|
||||
break;
|
||||
|
||||
case 'b':
|
||||
printf ("option b\n");
|
||||
break;
|
||||
|
||||
case 'c':
|
||||
printf ("option c with value `%s'\n", optarg);
|
||||
break;
|
||||
|
||||
case 'd':
|
||||
printf ("option d with value `%s'\n", optarg);
|
||||
break;
|
||||
|
||||
case '?':
|
||||
break;
|
||||
|
||||
default:
|
||||
printf ("?? getopt returned character code 0%o ??\n", c);
|
||||
}
|
||||
}
|
||||
|
||||
if (optind < argc)
|
||||
{
|
||||
printf ("non-option ARGV-elements: ");
|
||||
while (optind < argc)
|
||||
printf ("%s ", argv[optind++]);
|
||||
printf ("\n");
|
||||
}
|
||||
|
||||
exit (0);
|
||||
}
|
||||
|
||||
#endif /* TEST */
|
145
3party/fribidi/bin/getopt_int.h
Normal file
145
3party/fribidi/bin/getopt_int.h
Normal file
|
@ -0,0 +1,145 @@
|
|||
/* Internal declarations for getopt.
|
||||
Copyright (C) 1989-1994,1996-1999,2001,2003,2004
|
||||
Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#ifndef _GETOPT_INT_H
|
||||
#define _GETOPT_INT_H 1
|
||||
|
||||
extern int _getopt_internal (
|
||||
int ___argc,
|
||||
char *const *___argv,
|
||||
const char *__shortopts,
|
||||
const struct option *__longopts,
|
||||
int *__longind,
|
||||
int __long_only
|
||||
);
|
||||
|
||||
|
||||
/* Reentrant versions which can handle parsing multiple argument
|
||||
vectors at the same time. */
|
||||
|
||||
/* Data type for reentrant functions. */
|
||||
struct _getopt_data
|
||||
{
|
||||
/* These have exactly the same meaning as the corresponding global
|
||||
variables, except that they are used for the reentrant
|
||||
versions of getopt. */
|
||||
int optind;
|
||||
int opterr;
|
||||
int optopt;
|
||||
char *optarg;
|
||||
|
||||
/* Internal members. */
|
||||
|
||||
/* True if the internal members have been initialized. */
|
||||
int __initialized;
|
||||
|
||||
/* The next char to be scanned in the option-element
|
||||
in which the last option character we returned was found.
|
||||
This allows us to pick up the scan where we left off.
|
||||
|
||||
If this is zero, or a null string, it means resume the scan
|
||||
by advancing to the next ARGV-element. */
|
||||
char *__nextchar;
|
||||
|
||||
/* Describe how to deal with options that follow non-option ARGV-elements.
|
||||
|
||||
If the caller did not specify anything,
|
||||
the default is REQUIRE_ORDER if the environment variable
|
||||
POSIXLY_CORRECT is defined, PERMUTE otherwise.
|
||||
|
||||
REQUIRE_ORDER means don't recognize them as options;
|
||||
stop option processing when the first non-option is seen.
|
||||
This is what Unix does.
|
||||
This mode of operation is selected by either setting the environment
|
||||
variable POSIXLY_CORRECT, or using `+' as the first character
|
||||
of the list of option characters.
|
||||
|
||||
PERMUTE is the default. We permute the contents of ARGV as we
|
||||
scan, so that eventually all the non-options are at the end.
|
||||
This allows options to be given in any order, even with programs
|
||||
that were not written to expect this.
|
||||
|
||||
RETURN_IN_ORDER is an option available to programs that were
|
||||
written to expect options and other ARGV-elements in any order
|
||||
and that care about the ordering of the two. We describe each
|
||||
non-option ARGV-element as if it were the argument of an option
|
||||
with character code 1. Using `-' as the first character of the
|
||||
list of option characters selects this mode of operation.
|
||||
|
||||
The special argument `--' forces an end of option-scanning regardless
|
||||
of the value of `ordering'. In the case of RETURN_IN_ORDER, only
|
||||
`--' can cause `getopt' to return -1 with `optind' != ARGC. */
|
||||
|
||||
enum
|
||||
{
|
||||
REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER
|
||||
} __ordering;
|
||||
|
||||
/* If the POSIXLY_CORRECT environment variable is set. */
|
||||
int __posixly_correct;
|
||||
|
||||
|
||||
/* Handle permutation of arguments. */
|
||||
|
||||
/* Describe the part of ARGV that contains non-options that have
|
||||
been skipped. `first_nonopt' is the index in ARGV of the first
|
||||
of them; `last_nonopt' is the index after the last of them. */
|
||||
|
||||
int __first_nonopt;
|
||||
int __last_nonopt;
|
||||
|
||||
#if defined _LIBC && defined USE_NONOPTION_FLAGS
|
||||
int __nonoption_flags_max_len;
|
||||
int __nonoption_flags_len;
|
||||
# endif
|
||||
};
|
||||
|
||||
/* The initializer is necessary to set OPTIND and OPTERR to their
|
||||
default values and to clear the initialization flag. */
|
||||
#define _GETOPT_DATA_INITIALIZER { 1, 1 }
|
||||
|
||||
extern int _getopt_internal_r (
|
||||
int ___argc,
|
||||
char *const *___argv,
|
||||
const char *__shortopts,
|
||||
const struct option *__longopts,
|
||||
int *__longind,
|
||||
int __long_only,
|
||||
struct _getopt_data *__data
|
||||
);
|
||||
|
||||
extern int _getopt_long_r (
|
||||
int ___argc,
|
||||
char *const *___argv,
|
||||
const char *__shortopts,
|
||||
const struct option *__longopts,
|
||||
int *__longind,
|
||||
struct _getopt_data *__data
|
||||
);
|
||||
|
||||
extern int _getopt_long_only_r (
|
||||
int ___argc,
|
||||
char *const *___argv,
|
||||
const char *__shortopts,
|
||||
const struct option *__longopts,
|
||||
int *__longind,
|
||||
struct _getopt_data *__data
|
||||
);
|
||||
|
||||
#endif /* getopt_int.h */
|
2
3party/fribidi/bin/gettext.h
Normal file
2
3party/fribidi/bin/gettext.h
Normal file
|
@ -0,0 +1,2 @@
|
|||
#undef gettext
|
||||
#define gettext
|
161
3party/fribidi/bootstrap
Normal file
161
3party/fribidi/bootstrap
Normal file
|
@ -0,0 +1,161 @@
|
|||
#! /bin/sh
|
||||
##############################################################################
|
||||
# $Id: bootstrap,v 1.4 2005/08/27 10:21:51 behdad Exp $
|
||||
# $Author: behdad
|
||||
# $Date: 2005/08/27 10:21:51 $
|
||||
# $Revision: 1.4 $
|
||||
# $Source: /cvs/fribidi/fribidi2/bootstrap,v $
|
||||
##############################################################################
|
||||
# -*- Bootstrap -*-
|
||||
# Run this file to produce a configure script.
|
||||
|
||||
DEFAULT_BOOTSTRAPFLAGS="--force --install --autoreconf=auto"
|
||||
DEFAULT_CONFIGUREFLAGS="--enable-maintainer-mode --enable-compile-warnings"
|
||||
|
||||
OLDDIR=`pwd`
|
||||
|
||||
# move to source dir
|
||||
DIR=`echo $0 | sed 's,[^/]*$,,'`
|
||||
test -n "$DIR" && cd "$DIR"
|
||||
|
||||
if test "$1" = --write-configure; then
|
||||
test -f configure && \
|
||||
((echo '#! /bin/sh
|
||||
DIR=`echo $0 | sed "s,[^/]*\$,,"`
|
||||
exec ${DIR}bootstrap --configure -- "$@"' > configure \
|
||||
&& chmod a+x configure) || \
|
||||
echo Failed writing to configure >&2)
|
||||
|
||||
exit $?
|
||||
fi
|
||||
|
||||
# check if we are invoked as configure, or bootstrap
|
||||
BASE=`echo $0 | sed 's,.*/,,'`
|
||||
if test "$BASE" = "configure"; then
|
||||
CONFIG=--config
|
||||
EXTRA_CONFIGUREFLAGS=$@
|
||||
else # bootstrap
|
||||
EXTRA_BOOTSTRAPFLAGS=$*
|
||||
fi
|
||||
|
||||
for arg in $DEFAULT_BOOTSTRAPFLAGS $BOOTSTRAPFLAGS $EXTRA_BOOTSTRAPFLAGS
|
||||
do
|
||||
if test -n "$DASHDASHFLAGS"; then
|
||||
DASHDASHFLAGS="$DASHDASHFLAGS $arg"
|
||||
else
|
||||
case $arg in
|
||||
-h|--h|--he|--hel|--help)
|
||||
HELP=--help ;;
|
||||
-V|--vers|--versi|--versio|--version)
|
||||
VERSION=--version ;;
|
||||
-v|--verb|--verbo|--verbos|--verbose)
|
||||
VERBOSE=--verbose ;;
|
||||
-d|--de|--deb|--debu|--debug)
|
||||
DEBUG=--debug ;;
|
||||
-W|--w|--wa|--war|--warn|--warni|--warnin|--warning|--warnings|--warnings=yes|--warnings=all)
|
||||
WARNS=--warnings=all ;;
|
||||
--no-w|--no-wa|--no-war|--no-warn|--no-warni|--no-warnin|--no-warning|--no-warnings|--warn=no|--warning=no|--warnings=no)
|
||||
WARNS=--warnings=none ;;
|
||||
--w=*|--wa=*|--war=*|--warn=*|--warni=*|--warnin=*|--warning=*|--warnings=*)
|
||||
WARNS=$arg ;;
|
||||
-f|--f|--fo|--for|--forc|--force|--forced|--force=yes|--force-missing)
|
||||
FORCE=--force ;;
|
||||
--no-f|--no-fo|--no-for|--no-forc|--no-force|--no-forced|--force=no)
|
||||
FORCE=--no-force ;;
|
||||
-i|--i|--in|--ins|--inst|--insta|--instal|--install|--install=yes|-a|--add-missing)
|
||||
INSTALL=--install ;;
|
||||
--no-i|--no-in|--no-ins|--no-inst|--no-insta|--no-instal|--no-install|--install=no)
|
||||
INSTALL= ;;
|
||||
-s|--s|--sy|--sym|--syml|--symli|--symlin|--symlink|--symlink=yes|--no-copy|--copy=no)
|
||||
SYMLINK=--symlink ;;
|
||||
--no-s|--no-sy|--no-sym|--no-syml|--no-symli|--no-symlin|--no-symlink|--symlink=no|--copy|--copy=yes)
|
||||
SYMLINK= ;;
|
||||
-m|--m|--ma|--mak|--make|--make=yes)
|
||||
MAKE=--make
|
||||
CONFIG=--configure ;;
|
||||
--no-m|--no-ma|--no-mak|--no-make|--make=no)
|
||||
MAKE= ;;
|
||||
-c|--c|--co|--con|--conf|--confi|--config|--configu|--configur|--configure|--configure=yes)
|
||||
CONFIG=--configure ;;
|
||||
--no-c|--no-co|--no-con|--no-conf|--no-confi|--no-config|--no-configu|--no-configur|--no-configure|--configure=no)
|
||||
CONFIG= ;;
|
||||
-n|--dr|--dry|--dry-|--dry-r|--dry-ru|--dry-run)
|
||||
DRYRUN=echo ;;
|
||||
--auto|--autoreconf=auto)
|
||||
AUTORECONF=auto ;;
|
||||
--autoreconf|--autoreconf=yes)
|
||||
AUTORECONF=yes ;;
|
||||
--no-autoreconf|--autoreconf=no)
|
||||
AUTORECONF= ;;
|
||||
--)
|
||||
DASHDASHFLAGS=" " ;;
|
||||
*)
|
||||
echo Ignoring unknown parameter $arg
|
||||
esac
|
||||
fi
|
||||
done
|
||||
|
||||
test -z "$SYMLINK" && COPY=--copy
|
||||
test -n "$INSTALL" && ADDMISSING=--add-missing
|
||||
|
||||
# use autoreconf if possible, just check for version 2+
|
||||
if test "$AUTORECONF" = auto; then
|
||||
case `autoreconf --version 2>/dev/null` in
|
||||
*"autoreconf (GNU Autoconf) 2."* )
|
||||
echo Usable autoreconf found, running
|
||||
;;
|
||||
*)
|
||||
AUTORECONF=
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if test -n "$AUTORECONF"; then
|
||||
$DRYRUN autoreconf $HELP $VERSION $VERBOSE $DEBUG $FORCE $INSTALL $SYMLINK $MAKE $WARNS $AUTORECONFFLAGS || exit $?
|
||||
else
|
||||
|
||||
# add files 'config.guess', 'config.sub', 'ltconfig', 'ltmain.sh'
|
||||
test -f Makefile.am && MY_LIBTOOLIZEFLAGS=--automake
|
||||
|
||||
if grep -q '^ *AC_PROG_LIBTOOL' configure.ac configure.in 2>/dev/null; then
|
||||
$DRYRUN libtoolize $HELP $VERSION $COPY $DEBUG $FORCE $MY_LIBTOOLIZEFLAGS $LIBTOOLIZEFLAGS || exit $?
|
||||
fi
|
||||
|
||||
# generate 'aclocal.m4'
|
||||
if test -f configure.ac -o configure.in; then
|
||||
$DRYRUN aclocal $HELP $VERSION $VERBOSE $FORCE $ACLOCALFLAGS || exit $?
|
||||
fi
|
||||
|
||||
# generate 'config.h.in'
|
||||
if test -f configure.ac -o configure.in; then
|
||||
$DRYRUN autoheader $HELP $VERSION $VERBOSE $DEBUG $FORCE $WARNS $AUTOHEADERFLAGS || exit $?
|
||||
fi
|
||||
|
||||
# generate Makefile.in's from Makefile.am's
|
||||
if test -f Makefile.am; then
|
||||
$DRYRUN automake $HELP $VERSION $VERBOSE $ADDMISSING $COPY $FORCE $WARNS $AUTOMAKEFLAGS || exit $?
|
||||
fi
|
||||
|
||||
# generate configure from configure.ac
|
||||
if test -f configure.ac -o -f configure.in; then
|
||||
$DRYRUN autoconf $HELP $VERSION $VERBOSE $DEBUG $FORCE $WARNS $AUTOCONFFLAGS || exit $?
|
||||
fi
|
||||
|
||||
fi # !AUTOCONF
|
||||
|
||||
# move to build dir
|
||||
cd $OLDDIR
|
||||
|
||||
# configure
|
||||
if test -n "$CONFIG"; then
|
||||
if test -f ${DIR}configure; then
|
||||
$DRYRUN ${DIR}configure $HELP $VERSION $DEFAULT_CONFIGUREFLAGS $CONFIGUREFLAGS $DASHDASHFLAGS $EXTRA_CONFIGUREFLAGS || exit $?
|
||||
fi
|
||||
fi
|
||||
|
||||
# make
|
||||
if test -n "$MAKE"; then
|
||||
if test -f Makefile; then
|
||||
$DRYRUN make $MAKEFLAGS || exit $?
|
||||
fi
|
||||
fi
|
43
3party/fribidi/charset/Makefile.am
Normal file
43
3party/fribidi/charset/Makefile.am
Normal file
|
@ -0,0 +1,43 @@
|
|||
noinst_LTLIBRARIES = libfribidi-char-sets.la
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_builddir)/lib \
|
||||
-I$(top_srcdir)/lib \
|
||||
$(MISC_CFLAGS)
|
||||
|
||||
pkginclude_HEADERS =
|
||||
|
||||
libfribidi_char_sets_la_LDFLAGS =
|
||||
libfribidi_char_sets_la_LIBADD = $(GLIB_LIBS)
|
||||
|
||||
if FRIBIDI_CHARSETS
|
||||
|
||||
include Headers.mk
|
||||
pkginclude_HEADERS += $(libfribidi_char_sets_la_headers)
|
||||
|
||||
else # !FRIBIDI_CHARSETS
|
||||
|
||||
libfribidi_char_sets_la_LDFLAGS += -static
|
||||
|
||||
endif # !FRIBIDI_CHARSETS
|
||||
|
||||
libfribidi_char_sets_la_SOURCES = \
|
||||
fribidi-char-sets.c \
|
||||
fribidi-char-sets-cap-rtl.c \
|
||||
fribidi-char-sets-cp1255.c \
|
||||
fribidi-char-sets-cp1256.c \
|
||||
fribidi-char-sets-iso8859-6.c \
|
||||
fribidi-char-sets-iso8859-8.c \
|
||||
fribidi-char-sets-utf8.c \
|
||||
fribidi-char-sets-cap-rtl.h \
|
||||
fribidi-char-sets-cp1255.h \
|
||||
fribidi-char-sets-cp1256.h \
|
||||
fribidi-char-sets-iso8859-6.h \
|
||||
fribidi-char-sets-iso8859-8.h \
|
||||
fribidi-char-sets-utf8.h
|
||||
|
||||
$(top_builddir)/config.h: $(top_srcdir)/config.h.in
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) config.h
|
||||
|
||||
$(top_builddir)/lib/fribidi-config.h: $(top_srcdir)/lib/fribidi-config.h.in
|
||||
cd $(top_builddir)/lib && $(MAKE) $(AM_MAKEFLAGS) fribidi-config.h
|
542
3party/fribidi/charset/Makefile.in
Normal file
542
3party/fribidi/charset/Makefile.in
Normal file
|
@ -0,0 +1,542 @@
|
|||
# Makefile.in generated by automake 1.10.2 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
|
||||
VPATH = @srcdir@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
DIST_COMMON = $(am__pkginclude_HEADERS_DIST) $(srcdir)/Headers.mk \
|
||||
$(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
@FRIBIDI_CHARSETS_TRUE@am__append_1 = $(libfribidi_char_sets_la_headers)
|
||||
@FRIBIDI_CHARSETS_FALSE@am__append_2 = -static
|
||||
subdir = charset
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
LTLIBRARIES = $(noinst_LTLIBRARIES)
|
||||
am__DEPENDENCIES_1 =
|
||||
libfribidi_char_sets_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
|
||||
am_libfribidi_char_sets_la_OBJECTS = fribidi-char-sets.lo \
|
||||
fribidi-char-sets-cap-rtl.lo fribidi-char-sets-cp1255.lo \
|
||||
fribidi-char-sets-cp1256.lo fribidi-char-sets-iso8859-6.lo \
|
||||
fribidi-char-sets-iso8859-8.lo fribidi-char-sets-utf8.lo
|
||||
libfribidi_char_sets_la_OBJECTS = \
|
||||
$(am_libfribidi_char_sets_la_OBJECTS)
|
||||
libfribidi_char_sets_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||
$(libfribidi_char_sets_la_LDFLAGS) $(LDFLAGS) -o $@
|
||||
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
CCLD = $(CC)
|
||||
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
|
||||
$(LDFLAGS) -o $@
|
||||
SOURCES = $(libfribidi_char_sets_la_SOURCES)
|
||||
DIST_SOURCES = $(libfribidi_char_sets_la_SOURCES)
|
||||
am__pkginclude_HEADERS_DIST = fribidi-char-sets.h \
|
||||
fribidi-char-sets-list.h
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(pkgincludedir)"
|
||||
pkgincludeHEADERS_INSTALL = $(INSTALL_HEADER)
|
||||
HEADERS = $(pkginclude_HEADERS)
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMTAR = @AMTAR@
|
||||
AR = @AR@
|
||||
AS = @AS@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
FGREP = @FGREP@
|
||||
FRIBIDI_BINARY_AGE = @FRIBIDI_BINARY_AGE@
|
||||
FRIBIDI_CHARSETS = @FRIBIDI_CHARSETS@
|
||||
FRIBIDI_INTERFACE_AGE = @FRIBIDI_INTERFACE_AGE@
|
||||
FRIBIDI_INTERFACE_VERSION = @FRIBIDI_INTERFACE_VERSION@
|
||||
FRIBIDI_MAJOR_VERSION = @FRIBIDI_MAJOR_VERSION@
|
||||
FRIBIDI_MICRO_VERSION = @FRIBIDI_MICRO_VERSION@
|
||||
FRIBIDI_MINOR_VERSION = @FRIBIDI_MINOR_VERSION@
|
||||
FRIBIDI_NO_DEPRECATED = @FRIBIDI_NO_DEPRECATED@
|
||||
FRIBIDI_USE_GLIB = @FRIBIDI_USE_GLIB@
|
||||
FRIBIDI_VERSION = @FRIBIDI_VERSION@
|
||||
GLIB_CFLAGS = @GLIB_CFLAGS@
|
||||
GLIB_LIBS = @GLIB_LIBS@
|
||||
GREP = @GREP@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@
|
||||
LT_VERSION_INFO = @LT_VERSION_INFO@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MISC_CFLAGS = @MISC_CFLAGS@
|
||||
MISC_LIBS = @MISC_LIBS@
|
||||
MISC_PACKAGES = @MISC_PACKAGES@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
SIZEOF_INT = @SIZEOF_INT@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
lt_ECHO = @lt_ECHO@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
noinst_LTLIBRARIES = libfribidi-char-sets.la
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_builddir)/lib \
|
||||
-I$(top_srcdir)/lib \
|
||||
$(MISC_CFLAGS)
|
||||
|
||||
pkginclude_HEADERS = $(am__append_1)
|
||||
libfribidi_char_sets_la_LDFLAGS = $(am__append_2)
|
||||
libfribidi_char_sets_la_LIBADD = $(GLIB_LIBS)
|
||||
@FRIBIDI_CHARSETS_TRUE@libfribidi_char_sets_la_headers = \
|
||||
@FRIBIDI_CHARSETS_TRUE@ fribidi-char-sets.h \
|
||||
@FRIBIDI_CHARSETS_TRUE@ fribidi-char-sets-list.h
|
||||
|
||||
@FRIBIDI_CHARSETS_TRUE@libfribidi_char_sets_la_symbols = \
|
||||
@FRIBIDI_CHARSETS_TRUE@ fribidi_charset_to_unicode \
|
||||
@FRIBIDI_CHARSETS_TRUE@ fribidi_unicode_to_charset \
|
||||
@FRIBIDI_CHARSETS_TRUE@ fribidi_parse_charset
|
||||
|
||||
libfribidi_char_sets_la_SOURCES = \
|
||||
fribidi-char-sets.c \
|
||||
fribidi-char-sets-cap-rtl.c \
|
||||
fribidi-char-sets-cp1255.c \
|
||||
fribidi-char-sets-cp1256.c \
|
||||
fribidi-char-sets-iso8859-6.c \
|
||||
fribidi-char-sets-iso8859-8.c \
|
||||
fribidi-char-sets-utf8.c \
|
||||
fribidi-char-sets-cap-rtl.h \
|
||||
fribidi-char-sets-cp1255.h \
|
||||
fribidi-char-sets-cp1256.h \
|
||||
fribidi-char-sets-iso8859-6.h \
|
||||
fribidi-char-sets-iso8859-8.h \
|
||||
fribidi-char-sets-utf8.h
|
||||
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .c .lo .o .obj
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/Headers.mk $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits charset/Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnits charset/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
clean-noinstLTLIBRARIES:
|
||||
-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
|
||||
@list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" != "$$p" || dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libfribidi-char-sets.la: $(libfribidi_char_sets_la_OBJECTS) $(libfribidi_char_sets_la_DEPENDENCIES)
|
||||
$(libfribidi_char_sets_la_LINK) $(libfribidi_char_sets_la_OBJECTS) $(libfribidi_char_sets_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets-cap-rtl.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets-cp1255.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets-cp1256.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets-iso8859-6.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets-iso8859-8.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets-utf8.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets.Plo@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
||||
|
||||
.c.obj:
|
||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
||||
|
||||
.c.lo:
|
||||
@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
install-pkgincludeHEADERS: $(pkginclude_HEADERS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(pkgincludedir)" || $(MKDIR_P) "$(DESTDIR)$(pkgincludedir)"
|
||||
@list='$(pkginclude_HEADERS)'; for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(pkgincludeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgincludedir)/$$f'"; \
|
||||
$(pkgincludeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgincludedir)/$$f"; \
|
||||
done
|
||||
|
||||
uninstall-pkgincludeHEADERS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(pkginclude_HEADERS)'; for p in $$list; do \
|
||||
f=$(am__strip_dir) \
|
||||
echo " rm -f '$(DESTDIR)$(pkgincludedir)/$$f'"; \
|
||||
rm -f "$(DESTDIR)$(pkgincludedir)/$$f"; \
|
||||
done
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& cd $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) $$here
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(LTLIBRARIES) $(HEADERS)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(pkgincludedir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-pkgincludeHEADERS
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
||||
mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-pkgincludeHEADERS
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool clean-noinstLTLIBRARIES ctags distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-info install-info-am install-man \
|
||||
install-pdf install-pdf-am install-pkgincludeHEADERS \
|
||||
install-ps install-ps-am install-strip installcheck \
|
||||
installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags uninstall uninstall-am uninstall-pkgincludeHEADERS
|
||||
|
||||
|
||||
$(top_builddir)/config.h: $(top_srcdir)/config.h.in
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) config.h
|
||||
|
||||
$(top_builddir)/lib/fribidi-config.h: $(top_srcdir)/lib/fribidi-config.h.in
|
||||
cd $(top_builddir)/lib && $(MAKE) $(AM_MAKEFLAGS) fribidi-config.h
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
342
3party/fribidi/charset/fribidi-char-sets-cap-rtl.c
Normal file
342
3party/fribidi/charset/fribidi-char-sets-cap-rtl.c
Normal file
|
@ -0,0 +1,342 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets-cap-rtl.c - CapRTL character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets-cap-rtl.c,v 1.12 2006/01/22 10:12:17 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2006/01/22 10:12:17 $
|
||||
* $Revision: 1.12 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-cap-rtl.c,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi-char-sets-cap-rtl.h>
|
||||
|
||||
#include <fribidi-unicode.h>
|
||||
#include <fribidi-mirroring.h>
|
||||
#include <fribidi-bidi-types.h>
|
||||
|
||||
#include <bidi-types.h>
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
enum
|
||||
{
|
||||
# define _FRIBIDI_ADD_TYPE(TYPE,SYMBOL) TYPE = FRIBIDI_TYPE_##TYPE,
|
||||
# include "fribidi-bidi-types-list.h"
|
||||
# undef _FRIBIDI_ADD_TYPE
|
||||
_FRIBIDI_MAX_TYPES_VALUE
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
# define _FRIBIDI_ADD_TYPE(TYPE,SYMBOL) DUMMY_##TYPE,
|
||||
# include "fribidi-bidi-types-list.h"
|
||||
# undef _FRIBIDI_ADD_TYPE
|
||||
_FRIBIDI_NUM_TYPES
|
||||
};
|
||||
|
||||
static FriBidiCharType CapRTLCharTypes[] = {
|
||||
/* *INDENT-OFF* */
|
||||
ON, ON, ON, ON, LTR,RTL,ON, ON, ON, ON, ON, ON, ON, BS, RLO,RLE, /* 00-0f */
|
||||
LRO,LRE,PDF,WS, ON, ON, ON, ON, ON, ON, ON, ON, ON, ON, ON, ON, /* 10-1f */
|
||||
WS, ON, ON, ON, ET, ON, ON, ON, ON, ON, ON, ET, CS, ON, ES, ES, /* 20-2f */
|
||||
EN, EN, EN, EN, EN, EN, AN, AN, AN, AN, CS, ON, ON, ON, ON, ON, /* 30-3f */
|
||||
RTL,AL, AL, AL, AL, AL, AL, RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL, /* 40-4f */
|
||||
RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,ON, BS, ON, BN, ON, /* 50-5f */
|
||||
NSM,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, /* 60-6f */
|
||||
LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,ON, SS, ON, WS, ON, /* 70-7f */
|
||||
/* *INDENT-ON* */
|
||||
};
|
||||
|
||||
#define CAPRTL_CHARS (int)(sizeof CapRTLCharTypes / sizeof CapRTLCharTypes[0])
|
||||
|
||||
static FriBidiChar *caprtl_to_unicode = NULL;
|
||||
|
||||
static void
|
||||
init_cap_rtl (
|
||||
void
|
||||
)
|
||||
{
|
||||
int request[_FRIBIDI_NUM_TYPES];
|
||||
FriBidiCharType to_type[_FRIBIDI_NUM_TYPES];
|
||||
int num_types = 0, count = 0;
|
||||
FriBidiCharType i;
|
||||
char mark[CAPRTL_CHARS];
|
||||
|
||||
caprtl_to_unicode =
|
||||
(FriBidiChar *) fribidi_malloc (CAPRTL_CHARS *
|
||||
sizeof caprtl_to_unicode[0]);
|
||||
for (i = 0; i < CAPRTL_CHARS; i++)
|
||||
if (CapRTLCharTypes[i] == fribidi_get_bidi_type (i))
|
||||
{
|
||||
caprtl_to_unicode[i] = i;
|
||||
mark[i] = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
int j;
|
||||
|
||||
caprtl_to_unicode[i] = FRIBIDI_UNICODE_CHARS;
|
||||
mark[i] = 0;
|
||||
if (fribidi_get_mirror_char (i, NULL))
|
||||
{
|
||||
DBG ("warning: I could not map mirroring character map to itself in CapRTL");
|
||||
}
|
||||
|
||||
for (j = 0; j < num_types; j++)
|
||||
if (to_type[j] == CapRTLCharTypes[i])
|
||||
break;
|
||||
if (j == num_types)
|
||||
{
|
||||
num_types++;
|
||||
to_type[j] = CapRTLCharTypes[i];
|
||||
request[j] = 0;
|
||||
}
|
||||
request[j]++;
|
||||
count++;
|
||||
}
|
||||
for (i = 0; i < 0x10000 && count; i++) /* Assign BMP chars to CapRTL entries */
|
||||
if (!fribidi_get_mirror_char (i, NULL) && !(i < CAPRTL_CHARS && mark[i]))
|
||||
{
|
||||
int j, k;
|
||||
FriBidiCharType t = fribidi_get_bidi_type (i);
|
||||
for (j = 0; j < num_types; j++)
|
||||
if (to_type[j] == t)
|
||||
break;
|
||||
if (!request[j]) /* Do not need this type */
|
||||
continue;
|
||||
for (k = 0; k < CAPRTL_CHARS; k++)
|
||||
if (caprtl_to_unicode[k] == FRIBIDI_UNICODE_CHARS
|
||||
&& to_type[j] == CapRTLCharTypes[k])
|
||||
{
|
||||
request[j]--;
|
||||
count--;
|
||||
caprtl_to_unicode[k] = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (count)
|
||||
{
|
||||
int j;
|
||||
|
||||
DBG ("warning: could not find a mapping for CapRTL to Unicode:");
|
||||
for (j = 0; j < num_types; j++)
|
||||
if (request[j])
|
||||
{
|
||||
DBG2 (" need this type: %s", fribidi_get_bidi_type_name (to_type[j]));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static char
|
||||
fribidi_unicode_to_cap_rtl_c (
|
||||
/* input */
|
||||
FriBidiChar uch
|
||||
)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (!caprtl_to_unicode)
|
||||
init_cap_rtl ();
|
||||
|
||||
for (i = 0; i < CAPRTL_CHARS; i++)
|
||||
if (uch == caprtl_to_unicode[i])
|
||||
return (unsigned char) i;
|
||||
return '?';
|
||||
}
|
||||
|
||||
FriBidiStrIndex
|
||||
fribidi_cap_rtl_to_unicode (
|
||||
/* input */
|
||||
const char *s,
|
||||
FriBidiStrIndex len,
|
||||
/* output */
|
||||
FriBidiChar *us
|
||||
)
|
||||
{
|
||||
FriBidiStrIndex i, j;
|
||||
|
||||
if (!caprtl_to_unicode)
|
||||
init_cap_rtl ();
|
||||
|
||||
j = 0;
|
||||
for (i = 0; i < len; i++)
|
||||
{
|
||||
char ch;
|
||||
|
||||
ch = s[i];
|
||||
if (ch == '_')
|
||||
{
|
||||
switch (ch = s[++i])
|
||||
{
|
||||
case '>':
|
||||
us[j++] = FRIBIDI_CHAR_LRM;
|
||||
break;
|
||||
case '<':
|
||||
us[j++] = FRIBIDI_CHAR_RLM;
|
||||
break;
|
||||
case 'l':
|
||||
us[j++] = FRIBIDI_CHAR_LRE;
|
||||
break;
|
||||
case 'r':
|
||||
us[j++] = FRIBIDI_CHAR_RLE;
|
||||
break;
|
||||
case 'o':
|
||||
us[j++] = FRIBIDI_CHAR_PDF;
|
||||
break;
|
||||
case 'L':
|
||||
us[j++] = FRIBIDI_CHAR_LRO;
|
||||
break;
|
||||
case 'R':
|
||||
us[j++] = FRIBIDI_CHAR_RLO;
|
||||
break;
|
||||
case '_':
|
||||
us[j++] = '_';
|
||||
break;
|
||||
default:
|
||||
us[j++] = '_';
|
||||
i--;
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
us[j++] = caprtl_to_unicode[(int) s[i]];
|
||||
}
|
||||
|
||||
return j;
|
||||
}
|
||||
|
||||
FriBidiStrIndex
|
||||
fribidi_unicode_to_cap_rtl (
|
||||
/* input */
|
||||
const FriBidiChar *us,
|
||||
FriBidiStrIndex len,
|
||||
/* output */
|
||||
char *s
|
||||
)
|
||||
{
|
||||
FriBidiStrIndex i;
|
||||
int j;
|
||||
|
||||
j = 0;
|
||||
for (i = 0; i < len; i++)
|
||||
{
|
||||
FriBidiChar ch = us[i];
|
||||
if (!FRIBIDI_IS_EXPLICIT (fribidi_get_bidi_type (ch)) && ch != '_'
|
||||
&& ch != FRIBIDI_CHAR_LRM && ch != FRIBIDI_CHAR_RLM)
|
||||
s[j++] = fribidi_unicode_to_cap_rtl_c (ch);
|
||||
else
|
||||
{
|
||||
s[j++] = '_';
|
||||
switch (ch)
|
||||
{
|
||||
case FRIBIDI_CHAR_LRM:
|
||||
s[j++] = '>';
|
||||
break;
|
||||
case FRIBIDI_CHAR_RLM:
|
||||
s[j++] = '<';
|
||||
break;
|
||||
case FRIBIDI_CHAR_LRE:
|
||||
s[j++] = 'l';
|
||||
break;
|
||||
case FRIBIDI_CHAR_RLE:
|
||||
s[j++] = 'r';
|
||||
break;
|
||||
case FRIBIDI_CHAR_PDF:
|
||||
s[j++] = 'o';
|
||||
break;
|
||||
case FRIBIDI_CHAR_LRO:
|
||||
s[j++] = 'L';
|
||||
break;
|
||||
case FRIBIDI_CHAR_RLO:
|
||||
s[j++] = 'R';
|
||||
break;
|
||||
case '_':
|
||||
s[j++] = '_';
|
||||
break;
|
||||
default:
|
||||
j--;
|
||||
if (ch < 256)
|
||||
s[j++] = fribidi_unicode_to_cap_rtl_c (ch);
|
||||
else
|
||||
s[j++] = '?';
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
s[j] = 0;
|
||||
|
||||
return j;
|
||||
}
|
||||
|
||||
const char *
|
||||
fribidi_char_set_desc_cap_rtl (
|
||||
void
|
||||
)
|
||||
{
|
||||
static char *s = 0;
|
||||
int l, i, j;
|
||||
|
||||
if (s)
|
||||
return s;
|
||||
|
||||
l = 10000;
|
||||
s = (char *) fribidi_malloc (l);
|
||||
i = 0;
|
||||
i += sprintf (s + i, /*l - i, */
|
||||
"CapRTL is a character set for testing with the reference\n"
|
||||
"implementation, with explicit marks escape strings, and\n"
|
||||
"the property that contains all unicode character types in\n"
|
||||
"ASCII range 1-127.\n"
|
||||
"\n"
|
||||
"Warning: CapRTL character types are subject to change.\n"
|
||||
"\n" "CapRTL's character types:\n");
|
||||
for (j = 0; j < CAPRTL_CHARS; j++)
|
||||
{
|
||||
if (j % 4 == 0)
|
||||
s[i++] = '\n';
|
||||
i += sprintf (s + i, /*l - i, */ " * 0x%02x %c%c %-3s ", j,
|
||||
j < 0x20 ? '^' : ' ',
|
||||
j < 0x20 ? j + '@' : j < 0x7f ? j : ' ',
|
||||
fribidi_get_bidi_type_name (CapRTLCharTypes[j]));
|
||||
}
|
||||
i += sprintf (s + i, /*l - i, */
|
||||
"\n\n"
|
||||
"Escape sequences:\n"
|
||||
" Character `_' is used to escape explicit marks. The list is:\n"
|
||||
" * _> LRM\n" " * _< RLM\n"
|
||||
" * _l LRE\n" " * _r RLE\n"
|
||||
" * _L LRO\n" " * _R RLO\n"
|
||||
" * _o PDF\n" " * __ `_' itself\n" "\n");
|
||||
return s;
|
||||
}
|
||||
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
72
3party/fribidi/charset/fribidi-char-sets-cap-rtl.h
Normal file
72
3party/fribidi/charset/fribidi-char-sets-cap-rtl.h
Normal file
|
@ -0,0 +1,72 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets-cap-rtl.h - CapRTL character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets-cap-rtl.h,v 1.2 2004/06/09 14:59:21 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2004/06/09 14:59:21 $
|
||||
* $Revision: 1.2 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-cap-rtl.h,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#ifndef _FRIBIDI_CHAR_SETS_CAP_RTL_H
|
||||
#define _FRIBIDI_CHAR_SETS_CAP_RTL_H
|
||||
|
||||
#include "fribidi-common.h"
|
||||
|
||||
#include "fribidi-types.h"
|
||||
|
||||
#include "fribidi-begindecls.h"
|
||||
|
||||
#define fribidi_char_set_name_cap_rtl "CapRTL"
|
||||
#define fribidi_char_set_title_cap_rtl "CapRTL (Test)"
|
||||
|
||||
#define fribidi_char_set_desc_cap_rtl FRIBIDI_NAMESPACE(char_set_desc_cap_rtl)
|
||||
const char *fribidi_char_set_desc_cap_rtl (
|
||||
void
|
||||
);
|
||||
|
||||
#define fribidi_cap_rtl_to_unicode FRIBIDI_NAMESPACE(cap_rtl_to_unicode)
|
||||
FriBidiStrIndex fribidi_cap_rtl_to_unicode (
|
||||
const char *s,
|
||||
FriBidiStrIndex length,
|
||||
FriBidiChar *us
|
||||
);
|
||||
|
||||
#define fribidi_unicode_to_cap_rtl FRIBIDI_NAMESPACE(unicode_to_cap_rtl)
|
||||
FriBidiStrIndex fribidi_unicode_to_cap_rtl (
|
||||
const FriBidiChar *us,
|
||||
FriBidiStrIndex length,
|
||||
char *s
|
||||
);
|
||||
|
||||
#include "fribidi-enddecls.h"
|
||||
|
||||
#endif /* !_FRIBIDI_CHAR_SETS_CAP_RTL_H */
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
116
3party/fribidi/charset/fribidi-char-sets-cp1255.c
Normal file
116
3party/fribidi/charset/fribidi-char-sets-cp1255.c
Normal file
|
@ -0,0 +1,116 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets-cp1255.c - CP1255 character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets-cp1255.c,v 1.3 2008-04-22 19:50:46 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2008-04-22 19:50:46 $
|
||||
* $Revision: 1.3 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-cp1255.c,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi-char-sets-cp1255.h>
|
||||
|
||||
#define ISO_ALEF 0xE0
|
||||
#define ISO_TAV 0xFA
|
||||
#define CP1255_SHEVA 0xC0
|
||||
#define CP1255_SOF_PASUQ 0xD3
|
||||
#define CP1255_DOUBLE_VAV 0xD4
|
||||
#define CP1255_GERSHAYIM 0xD8
|
||||
#define CP1255_LRM 0xFD
|
||||
#define CP1255_RLM 0xFE
|
||||
|
||||
#define UNI_ALEF 0x05D0
|
||||
#define UNI_TAV 0x05EA
|
||||
#define UNI_SHEVA 0x05B0
|
||||
#define UNI_SOF_PASUQ 0x05C3
|
||||
#define UNI_DOUBLE_VAV 0x05F0
|
||||
#define UNI_GERSHAYIM 0x05F4
|
||||
#define UNI_LRM 0x200E
|
||||
#define UNI_RLM 0x200F
|
||||
|
||||
static FriBidiChar fribidi_cp1255_to_unicode_tab[] = { /* 0x80-0xBF */
|
||||
0x20AC, 0x0081, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
|
||||
0x02C6, 0x2030, 0x008a, 0x2039, 0x008c, 0x008d, 0x008e, 0x008f,
|
||||
0x0090, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
|
||||
0x02DC, 0x2122, 0x009a, 0x203A, 0x009c, 0x009d, 0x009e, 0x009f,
|
||||
0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x20AA, 0x00A5, 0x00A6, 0x00A7,
|
||||
0x00A8, 0x00A9, 0x00D7, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
|
||||
0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
|
||||
0x00B8, 0x00B9, 0x00F7, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF
|
||||
};
|
||||
|
||||
FriBidiChar
|
||||
fribidi_cp1255_to_unicode_c (
|
||||
/* input */
|
||||
char sch
|
||||
)
|
||||
{
|
||||
register unsigned char ch = (unsigned char) sch;
|
||||
if (ch >= ISO_ALEF && ch <= ISO_TAV)
|
||||
return ch - ISO_ALEF + UNI_ALEF;
|
||||
else if (ch >= CP1255_SHEVA && ch <= CP1255_SOF_PASUQ)
|
||||
return ch - CP1255_SHEVA + UNI_SHEVA;
|
||||
else if (ch >= CP1255_DOUBLE_VAV && ch <= CP1255_GERSHAYIM)
|
||||
return ch - CP1255_DOUBLE_VAV + UNI_DOUBLE_VAV;
|
||||
/* cp1256 specific chars */
|
||||
else if (ch >= 0x80 && ch <= 0xbf)
|
||||
return fribidi_cp1255_to_unicode_tab[ch - 0x80];
|
||||
else if (ch == CP1255_LRM || ch == CP1255_RLM)
|
||||
return ch - CP1255_LRM + UNI_LRM;
|
||||
/* treat LRM/LRM charrectes correctly */
|
||||
else
|
||||
return ch;
|
||||
}
|
||||
|
||||
char
|
||||
fribidi_unicode_to_cp1255_c (
|
||||
/* input */
|
||||
FriBidiChar uch
|
||||
)
|
||||
{
|
||||
if (uch >= UNI_ALEF && uch <= UNI_TAV)
|
||||
return (char) (uch - UNI_ALEF + ISO_ALEF);
|
||||
if (uch >= UNI_SHEVA && uch <= UNI_SOF_PASUQ)
|
||||
return (char) (uch - UNI_SHEVA + CP1255_SHEVA);
|
||||
if (uch >= UNI_DOUBLE_VAV && uch <= UNI_GERSHAYIM)
|
||||
return (char) (uch - UNI_DOUBLE_VAV + CP1255_DOUBLE_VAV);
|
||||
/* TODO: handle pre-composed and presentation chars */
|
||||
if (uch == UNI_LRM || uch==UNI_RLM)
|
||||
return (char) (uch - UNI_LRM + CP1255_LRM);
|
||||
/* Treat LRM/RLM charrecters correctly */
|
||||
else if (uch < 256)
|
||||
return (char) uch;
|
||||
else
|
||||
return '?';
|
||||
}
|
||||
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
64
3party/fribidi/charset/fribidi-char-sets-cp1255.h
Normal file
64
3party/fribidi/charset/fribidi-char-sets-cp1255.h
Normal file
|
@ -0,0 +1,64 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets-cp1255.h - CP1255 character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets-cp1255.h,v 1.2 2004/06/09 14:59:21 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2004/06/09 14:59:21 $
|
||||
* $Revision: 1.2 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-cp1255.h,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#ifndef _FRIBIDI_CHAR_SETS_CP1255_H
|
||||
#define _FRIBIDI_CHAR_SETS_CP1255_H
|
||||
|
||||
#include "fribidi-common.h"
|
||||
|
||||
#include "fribidi-types.h"
|
||||
|
||||
#include "fribidi-begindecls.h"
|
||||
|
||||
#define fribidi_char_set_name_cp1255 "CP1255"
|
||||
#define fribidi_char_set_title_cp1255 "CP1255 (MS Hebrew/Yiddish)"
|
||||
#define fribidi_char_set_desc_cp1255 NULL
|
||||
|
||||
#define fribidi_cp1255_to_unicode_c FRIBIDI_NAMESPACE(cp1255_to_unicode_c)
|
||||
FriBidiChar fribidi_cp1255_to_unicode_c (
|
||||
char ch
|
||||
);
|
||||
|
||||
#define fribidi_unicode_to_cp1255_c FRIBIDI_NAMESPACE(unicode_to_cp1255_c)
|
||||
char fribidi_unicode_to_cp1255_c (
|
||||
FriBidiChar uch
|
||||
);
|
||||
|
||||
#include "fribidi-enddecls.h"
|
||||
|
||||
#endif /* !_FRIBIDI_CHAR_SETS_CP1255_H */
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
223
3party/fribidi/charset/fribidi-char-sets-cp1256.c
Normal file
223
3party/fribidi/charset/fribidi-char-sets-cp1256.c
Normal file
|
@ -0,0 +1,223 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets-cp1256.c - CP1256 character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets-cp1256.c,v 1.2 2004/05/03 22:05:19 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2004/05/03 22:05:19 $
|
||||
* $Revision: 1.2 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-cp1256.c,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi-char-sets-cp1256.h>
|
||||
|
||||
#define ISO_HAMZA 0xc1
|
||||
#define CP1256_DAD 0xD6
|
||||
|
||||
#define UNI_HAMZA 0x0621
|
||||
#define UNI_DAD 0x0636
|
||||
|
||||
static FriBidiChar fribidi_cp1256_to_unicode_tab[] = { /* 0x80-0xFF */
|
||||
0x20AC, 0x067E, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
|
||||
0x02C6, 0x2030, 0x0679, 0x2039, 0x0152, 0x0686, 0x0698, 0x0688,
|
||||
0x06AF, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
|
||||
0x06A9, 0x2122, 0x0691, 0x203A, 0x0153, 0x200C, 0x200D, 0x06BA,
|
||||
0x00A0, 0x060C, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
|
||||
0x00A8, 0x00A9, 0x06BE, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
|
||||
0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
|
||||
0x00B8, 0x00B9, 0x061B, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x061F,
|
||||
0x06C1, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,
|
||||
0x0628, 0x0629, 0x062A, 0x062B, 0x062C, 0x062D, 0x062E, 0x062F,
|
||||
0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x00D7,
|
||||
0x0637, 0x0638, 0x0639, 0x063A, 0x0640, 0x0641, 0x0642, 0x0643,
|
||||
0x00E0, 0x0644, 0x00E2, 0x0645, 0x0646, 0x0647, 0x0648, 0x00E7,
|
||||
0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x0649, 0x064A, 0x00EE, 0x00EF,
|
||||
0x064B, 0x064C, 0x064D, 0x064E, 0x00F4, 0x064F, 0x0650, 0x00F7,
|
||||
0x0651, 0x00F9, 0x0652, 0x00FB, 0x00FC, 0x200E, 0x200F, 0x00ff
|
||||
};
|
||||
|
||||
FriBidiChar
|
||||
fribidi_cp1256_to_unicode_c (
|
||||
/* input */
|
||||
char sch
|
||||
)
|
||||
{
|
||||
register unsigned char ch = (unsigned char) sch;
|
||||
if (ch >= 0x80)
|
||||
return fribidi_cp1256_to_unicode_tab[ch - 0x80];
|
||||
else
|
||||
return ch;
|
||||
}
|
||||
|
||||
char
|
||||
fribidi_unicode_to_cp1256_c (
|
||||
/* input */
|
||||
FriBidiChar uch
|
||||
)
|
||||
{
|
||||
if (uch < 256)
|
||||
return (char) uch;
|
||||
if (uch >= UNI_HAMZA && uch <= UNI_DAD)
|
||||
return (char) (uch - UNI_HAMZA + ISO_HAMZA);
|
||||
else
|
||||
switch (uch)
|
||||
{
|
||||
case 0x0152:
|
||||
return (char) 0x8c;
|
||||
case 0x0153:
|
||||
return (char) 0x9c;
|
||||
case 0x0192:
|
||||
return (char) 0x83;
|
||||
case 0x02C6:
|
||||
return (char) 0x88;
|
||||
case 0x060C:
|
||||
return (char) 0xA1;
|
||||
case 0x061B:
|
||||
return (char) 0xBA;
|
||||
case 0x061F:
|
||||
return (char) 0xBF;
|
||||
case 0x0637:
|
||||
return (char) 0xD8;
|
||||
case 0x0638:
|
||||
return (char) 0xD9;
|
||||
case 0x0639:
|
||||
return (char) 0xDA;
|
||||
case 0x063A:
|
||||
return (char) 0xDB;
|
||||
case 0x0640:
|
||||
return (char) 0xDC;
|
||||
case 0x0641:
|
||||
return (char) 0xDD;
|
||||
case 0x0642:
|
||||
return (char) 0xDE;
|
||||
case 0x0643:
|
||||
return (char) 0xDF;
|
||||
case 0x0644:
|
||||
return (char) 0xE1;
|
||||
case 0x0645:
|
||||
return (char) 0xE3;
|
||||
case 0x0646:
|
||||
return (char) 0xE4;
|
||||
case 0x0647:
|
||||
return (char) 0xE5;
|
||||
case 0x0648:
|
||||
return (char) 0xE6;
|
||||
case 0x0649:
|
||||
return (char) 0xEC;
|
||||
case 0x064A:
|
||||
return (char) 0xED;
|
||||
case 0x064B:
|
||||
return (char) 0xF0;
|
||||
case 0x064C:
|
||||
return (char) 0xF1;
|
||||
case 0x064D:
|
||||
return (char) 0xF2;
|
||||
case 0x064E:
|
||||
return (char) 0xF3;
|
||||
case 0x064F:
|
||||
return (char) 0xF5;
|
||||
case 0x0650:
|
||||
return (char) 0xF6;
|
||||
case 0x0651:
|
||||
return (char) 0xF8;
|
||||
case 0x0652:
|
||||
return (char) 0xFA;
|
||||
case 0x0679:
|
||||
return (char) 0x8A;
|
||||
case 0x067E:
|
||||
return (char) 0x81;
|
||||
case 0x0686:
|
||||
return (char) 0x8D;
|
||||
case 0x0688:
|
||||
return (char) 0x8F;
|
||||
case 0x0691:
|
||||
return (char) 0x9A;
|
||||
case 0x0698:
|
||||
return (char) 0x8E;
|
||||
case 0x06A9:
|
||||
return (char) 0x98;
|
||||
case 0x06AF:
|
||||
return (char) 0x90;
|
||||
case 0x06BA:
|
||||
return (char) 0x9F;
|
||||
case 0x06BE:
|
||||
return (char) 0xAA;
|
||||
case 0x06C1:
|
||||
return (char) 0xC0;
|
||||
case 0x200C:
|
||||
return (char) 0x9D;
|
||||
case 0x200D:
|
||||
return (char) 0x9E;
|
||||
case 0x200E:
|
||||
return (char) 0xFD;
|
||||
case 0x200F:
|
||||
return (char) 0xFE;
|
||||
case 0x2013:
|
||||
return (char) 0x96;
|
||||
case 0x2014:
|
||||
return (char) 0x97;
|
||||
case 0x2018:
|
||||
return (char) 0x91;
|
||||
case 0x2019:
|
||||
return (char) 0x92;
|
||||
case 0x201A:
|
||||
return (char) 0x82;
|
||||
case 0x201C:
|
||||
return (char) 0x93;
|
||||
case 0x201D:
|
||||
return (char) 0x94;
|
||||
case 0x201E:
|
||||
return (char) 0x84;
|
||||
case 0x2020:
|
||||
return (char) 0x86;
|
||||
case 0x2021:
|
||||
return (char) 0x87;
|
||||
case 0x2022:
|
||||
return (char) 0x95;
|
||||
case 0x2026:
|
||||
return (char) 0x85;
|
||||
case 0x2030:
|
||||
return (char) 0x89;
|
||||
case 0x2039:
|
||||
return (char) 0x8B;
|
||||
case 0x203A:
|
||||
return (char) 0x9B;
|
||||
case 0x20AC:
|
||||
return (char) 0x80;
|
||||
case 0x2122:
|
||||
return (char) 0x99;
|
||||
|
||||
default:
|
||||
return '?';
|
||||
}
|
||||
}
|
||||
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
64
3party/fribidi/charset/fribidi-char-sets-cp1256.h
Normal file
64
3party/fribidi/charset/fribidi-char-sets-cp1256.h
Normal file
|
@ -0,0 +1,64 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets-cp1256.h - CP1256 character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets-cp1256.h,v 1.2 2004/06/09 14:59:21 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2004/06/09 14:59:21 $
|
||||
* $Revision: 1.2 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-cp1256.h,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#ifndef _FRIBIDI_CHAR_SETS_CP1256_H
|
||||
#define _FRIBIDI_CHAR_SETS_CP1256_H
|
||||
|
||||
#include "fribidi-common.h"
|
||||
|
||||
#include "fribidi-types.h"
|
||||
|
||||
#include "fribidi-begindecls.h"
|
||||
|
||||
#define fribidi_char_set_name_cp1256 "CP1256"
|
||||
#define fribidi_char_set_title_cp1256 "CP1256 (MS Arabic)"
|
||||
#define fribidi_char_set_desc_cp1256 NULL
|
||||
|
||||
#define fribidi_cp1256_to_unicode_c FRIBIDI_NAMESPACE(cp1256_to_unicode_c)
|
||||
FriBidiChar fribidi_cp1256_to_unicode_c (
|
||||
char ch
|
||||
);
|
||||
|
||||
#define fribidi_unicode_to_cp1256_c FRIBIDI_NAMESPACE(unicode_to_cp1256_c)
|
||||
char fribidi_unicode_to_cp1256_c (
|
||||
FriBidiChar uch
|
||||
);
|
||||
|
||||
#include "fribidi-enddecls.h"
|
||||
|
||||
#endif /* !_FRIBIDI_CHAR_SETS_CP1256_H */
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
81
3party/fribidi/charset/fribidi-char-sets-iso8859-6.c
Normal file
81
3party/fribidi/charset/fribidi-char-sets-iso8859-6.c
Normal file
|
@ -0,0 +1,81 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets-iso8859-6.c - ISO8859-6 character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets-iso8859-6.c,v 1.2 2004/05/03 22:05:19 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2004/05/03 22:05:19 $
|
||||
* $Revision: 1.2 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-iso8859-6.c,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi-char-sets-iso8859-6.h>
|
||||
|
||||
#define ISO_HAMZA 0xc1
|
||||
#define ISO_SUKUN 0xf2
|
||||
|
||||
#define UNI_HAMZA 0x0621
|
||||
#define UNI_SUKUN 0x0652
|
||||
|
||||
FriBidiChar
|
||||
fribidi_iso8859_6_to_unicode_c (
|
||||
/* input */
|
||||
char sch
|
||||
)
|
||||
{
|
||||
register unsigned char ch = (unsigned char) sch;
|
||||
if (ch >= ISO_HAMZA && ch <= ISO_SUKUN)
|
||||
return ch - ISO_HAMZA + UNI_HAMZA;
|
||||
else
|
||||
return ch;
|
||||
}
|
||||
|
||||
char
|
||||
fribidi_unicode_to_iso8859_6_c (
|
||||
/* input */
|
||||
FriBidiChar uch
|
||||
)
|
||||
{
|
||||
if (uch >= UNI_HAMZA && uch <= UNI_SUKUN)
|
||||
return (char) (uch - UNI_HAMZA + ISO_HAMZA);
|
||||
else if (uch < 256)
|
||||
return (char) uch;
|
||||
else if (uch == 0x060c)
|
||||
return (char) 0xac;
|
||||
else if (uch == 0x061b)
|
||||
return (char) 0xbb;
|
||||
else if (uch == 0x061f)
|
||||
return (char) 0xbf;
|
||||
else
|
||||
return '?';
|
||||
}
|
||||
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
64
3party/fribidi/charset/fribidi-char-sets-iso8859-6.h
Normal file
64
3party/fribidi/charset/fribidi-char-sets-iso8859-6.h
Normal file
|
@ -0,0 +1,64 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets-iso8859-6.h - ISO8859-6 character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets-iso8859-6.h,v 1.2 2004/06/09 14:59:21 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2004/06/09 14:59:21 $
|
||||
* $Revision: 1.2 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-iso8859-6.h,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#ifndef _FRIBIDI_CHAR_SETS_ISO8859_6_H
|
||||
#define _FRIBIDI_CHAR_SETS_ISO8859_6_H
|
||||
|
||||
#include "fribidi-common.h"
|
||||
|
||||
#include "fribidi-types.h"
|
||||
|
||||
#include "fribidi-begindecls.h"
|
||||
|
||||
#define fribidi_char_set_name_iso8859_6 "ISO8859-6"
|
||||
#define fribidi_char_set_title_iso8859_6 "ISO8859-6 (Arabic)"
|
||||
#define fribidi_char_set_desc_iso8859_6 NULL
|
||||
|
||||
#define fribidi_iso8859_6_to_unicode_c FRIBIDI_NAMESPACE(iso8859_6_to_unicode_c)
|
||||
FriBidiChar fribidi_iso8859_6_to_unicode_c (
|
||||
char ch
|
||||
);
|
||||
|
||||
#define fribidi_unicode_to_iso8859_6_c FRIBIDI_NAMESPACE(unicode_to_iso8859_6_c)
|
||||
char fribidi_unicode_to_iso8859_6_c (
|
||||
FriBidiChar uch
|
||||
);
|
||||
|
||||
#include "fribidi-enddecls.h"
|
||||
|
||||
#endif /* !_FRIBIDI_CHAR_SETS_ISO8859_6_H */
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
120
3party/fribidi/charset/fribidi-char-sets-iso8859-8.c
Normal file
120
3party/fribidi/charset/fribidi-char-sets-iso8859-8.c
Normal file
|
@ -0,0 +1,120 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets-iso8859-8.c - ISO8859-8 character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets-iso8859-8.c,v 1.2 2004/05/03 22:05:19 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2004/05/03 22:05:19 $
|
||||
* $Revision: 1.2 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-iso8859-8.c,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi-char-sets-iso8859-8.h>
|
||||
|
||||
#include <fribidi-unicode.h>
|
||||
|
||||
/* The following are proposed extensions to ISO8859-8. */
|
||||
#define ISO_8859_8_LRM 0xFD
|
||||
#define ISO_8859_8_RLM 0xFE
|
||||
#define ISO_8859_8_LRE 0xFB
|
||||
#define ISO_8859_8_RLE 0xFC
|
||||
#define ISO_8859_8_PDF 0xDD
|
||||
#define ISO_8859_8_LRO 0xDB
|
||||
#define ISO_8859_8_RLO 0xDC
|
||||
#define ISO_ALEF 0xE0
|
||||
#define ISO_TAV 0xFA
|
||||
|
||||
#define UNI_ALEF 0x05D0
|
||||
#define UNI_TAV 0x05EA
|
||||
|
||||
FriBidiChar
|
||||
fribidi_iso8859_8_to_unicode_c (
|
||||
/* input */
|
||||
char sch
|
||||
)
|
||||
{
|
||||
register unsigned char ch = (unsigned char) sch;
|
||||
if (ch < ISO_8859_8_LRO)
|
||||
return ch;
|
||||
else if (ch >= ISO_ALEF && ch <= ISO_TAV)
|
||||
return ch - ISO_ALEF + UNI_ALEF;
|
||||
switch (ch)
|
||||
{
|
||||
case ISO_8859_8_RLM:
|
||||
return FRIBIDI_CHAR_RLM;
|
||||
case ISO_8859_8_LRM:
|
||||
return FRIBIDI_CHAR_LRM;
|
||||
case ISO_8859_8_RLO:
|
||||
return FRIBIDI_CHAR_RLO;
|
||||
case ISO_8859_8_LRO:
|
||||
return FRIBIDI_CHAR_LRO;
|
||||
case ISO_8859_8_RLE:
|
||||
return FRIBIDI_CHAR_RLE;
|
||||
case ISO_8859_8_LRE:
|
||||
return FRIBIDI_CHAR_LRE;
|
||||
case ISO_8859_8_PDF:
|
||||
return FRIBIDI_CHAR_PDF;
|
||||
default:
|
||||
return '?';
|
||||
}
|
||||
}
|
||||
|
||||
char
|
||||
fribidi_unicode_to_iso8859_8_c (
|
||||
/* input */
|
||||
FriBidiChar uch
|
||||
)
|
||||
{
|
||||
if (uch < 128)
|
||||
return (char) uch;
|
||||
if (uch >= UNI_ALEF && uch <= UNI_TAV)
|
||||
return (char) (uch - UNI_ALEF + ISO_ALEF);
|
||||
switch (uch)
|
||||
{
|
||||
case FRIBIDI_CHAR_RLM:
|
||||
return (char) ISO_8859_8_RLM;
|
||||
case FRIBIDI_CHAR_LRM:
|
||||
return (char) ISO_8859_8_LRM;
|
||||
case FRIBIDI_CHAR_RLO:
|
||||
return (char) ISO_8859_8_RLO;
|
||||
case FRIBIDI_CHAR_LRO:
|
||||
return (char) ISO_8859_8_LRO;
|
||||
case FRIBIDI_CHAR_RLE:
|
||||
return (char) ISO_8859_8_RLE;
|
||||
case FRIBIDI_CHAR_LRE:
|
||||
return (char) ISO_8859_8_LRE;
|
||||
case FRIBIDI_CHAR_PDF:
|
||||
return (char) ISO_8859_8_PDF;
|
||||
}
|
||||
return '?';
|
||||
}
|
||||
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
64
3party/fribidi/charset/fribidi-char-sets-iso8859-8.h
Normal file
64
3party/fribidi/charset/fribidi-char-sets-iso8859-8.h
Normal file
|
@ -0,0 +1,64 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets-iso8859-8.h - ISO8859-8 character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets-iso8859-8.h,v 1.2 2004/06/09 14:59:21 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2004/06/09 14:59:21 $
|
||||
* $Revision: 1.2 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-iso8859-8.h,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#ifndef _FRIBIDI_CHAR_SETS_ISO8859_8_H
|
||||
#define _FRIBIDI_CHAR_SETS_ISO8859_8_H
|
||||
|
||||
#include "fribidi-common.h"
|
||||
|
||||
#include "fribidi-types.h"
|
||||
|
||||
#include "fribidi-begindecls.h"
|
||||
|
||||
#define fribidi_char_set_name_iso8859_8 "ISO8859-8"
|
||||
#define fribidi_char_set_title_iso8859_8 "ISO8859-8 (Hebrew)"
|
||||
#define fribidi_char_set_desc_iso8859_8 NULL
|
||||
|
||||
#define fribidi_iso8859_8_to_unicode_c FRIBIDI_NAMESPACE(iso8859_8_to_unicode_c)
|
||||
FriBidiChar fribidi_iso8859_8_to_unicode_c (
|
||||
char ch
|
||||
);
|
||||
|
||||
#define fribidi_unicode_to_iso8859_8_c FRIBIDI_NAMESPACE(unicode_to_iso8859_8_c)
|
||||
char fribidi_unicode_to_iso8859_8_c (
|
||||
FriBidiChar uch
|
||||
);
|
||||
|
||||
#include "fribidi-enddecls.h"
|
||||
|
||||
#endif /* !_FRIBIDI_CHAR_SETS_ISO8859_8_H */
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
60
3party/fribidi/charset/fribidi-char-sets-list.h
Normal file
60
3party/fribidi/charset/fribidi-char-sets-list.h
Normal file
|
@ -0,0 +1,60 @@
|
|||
#ifndef __FRIBIDI_DOC
|
||||
/* FriBidi
|
||||
* fribidi-char-sets-list.h - list of supported character sets
|
||||
*
|
||||
* $Id: fribidi-char-sets-list.h,v 1.3 2004/06/09 14:59:21 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2004/06/09 14:59:21 $
|
||||
* $Revision: 1.3 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-list.h,v $
|
||||
*
|
||||
* Author:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc.
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
/* *INDENT-OFF* */
|
||||
|
||||
/* The order of types in this list should not be important at compile time,
|
||||
* but apparently it should not be changed after compilation! */
|
||||
#endif /* !__FRIBIDI_DOC */
|
||||
#ifdef _FRIBIDI_ADD_CHAR_SET
|
||||
# define _FRIBIDI_ADD_CHAR_SET_OTHERS _FRIBIDI_ADD_CHAR_SET
|
||||
# define _FRIBIDI_ADD_CHAR_SET_ONE2ONE _FRIBIDI_ADD_CHAR_SET
|
||||
#endif /* _FRIBIDI_ADD_CHAR_SET */
|
||||
#ifdef _FRIBIDI_ADD_CHAR_SET_OTHERS
|
||||
_FRIBIDI_ADD_CHAR_SET_OTHERS (UTF8, utf8) /* UTF-8 (Unicode) */
|
||||
_FRIBIDI_ADD_CHAR_SET_OTHERS (CAP_RTL, cap_rtl) /* CapRTL (Test) */
|
||||
#endif /* _FRIBIDI_ADD_CHAR_SET_OTHERS */
|
||||
#ifdef _FRIBIDI_ADD_CHAR_SET_ONE2ONE
|
||||
_FRIBIDI_ADD_CHAR_SET_ONE2ONE (ISO8859_6, iso8859_6) /* ISO8859-6 (Arabic) */
|
||||
_FRIBIDI_ADD_CHAR_SET_ONE2ONE (ISO8859_8, iso8859_8) /* ISO8859-8 (Hebrew) */
|
||||
_FRIBIDI_ADD_CHAR_SET_ONE2ONE (CP1255, cp1255) /* CP1255 (MS Hebrew/Yiddish) */
|
||||
_FRIBIDI_ADD_CHAR_SET_ONE2ONE (CP1256, cp1256) /* CP1256 (MS Arabic) */
|
||||
#endif /* _FRIBIDI_ADD_CHAR_SET_ONE2ONE */
|
||||
#ifdef _FRIBIDI_ADD_CHAR_SET
|
||||
# undef _FRIBIDI_ADD_CHAR_SET_OTHERS
|
||||
# undef _FRIBIDI_ADD_CHAR_SET_ONE2ONE
|
||||
#endif /* _FRIBIDI_ADD_CHAR_SET */
|
||||
|
||||
#ifndef __FRIBIDI_DOC
|
||||
/* *INDENT-ON* */
|
||||
#endif /* !__FRIBIDI_DOC */
|
126
3party/fribidi/charset/fribidi-char-sets-utf8.c
Normal file
126
3party/fribidi/charset/fribidi-char-sets-utf8.c
Normal file
|
@ -0,0 +1,126 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets-utf8.c - UTF-8 character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets-utf8.c,v 1.3 2005/07/30 09:06:28 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2005/07/30 09:06:28 $
|
||||
* $Revision: 1.3 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-utf8.c,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi-char-sets-utf8.h>
|
||||
|
||||
#include <fribidi-unicode.h>
|
||||
|
||||
FriBidiStrIndex
|
||||
fribidi_utf8_to_unicode (
|
||||
/* input */
|
||||
const char *ss,
|
||||
FriBidiStrIndex len,
|
||||
/* output */
|
||||
FriBidiChar *us
|
||||
)
|
||||
{
|
||||
FriBidiStrIndex length;
|
||||
const unsigned char *s = (unsigned const char *) ss;
|
||||
const unsigned char *t = s;
|
||||
|
||||
length = 0;
|
||||
while ((FriBidiStrIndex) (s - t) < len)
|
||||
{
|
||||
register unsigned char ch = *s;
|
||||
if (ch <= 0x7f) /* one byte */
|
||||
{
|
||||
*us++ = *s++;
|
||||
}
|
||||
else if (ch <= 0xdf) /* 2 byte */
|
||||
{
|
||||
*us++ = ((*s & 0x1f) << 6) + (*(s + 1) & 0x3f);
|
||||
s += 2;
|
||||
}
|
||||
else /* 3 byte */
|
||||
{
|
||||
*us++ =
|
||||
((int) (*s & 0x0f) << 12) +
|
||||
((*(s + 1) & 0x3f) << 6) + (*(s + 2) & 0x3f);
|
||||
s += 3;
|
||||
}
|
||||
length++;
|
||||
}
|
||||
return (length);
|
||||
}
|
||||
|
||||
FriBidiStrIndex
|
||||
fribidi_unicode_to_utf8 (
|
||||
/* input */
|
||||
const FriBidiChar *us,
|
||||
FriBidiStrIndex len,
|
||||
/* output */
|
||||
char *ss
|
||||
)
|
||||
{
|
||||
FriBidiStrIndex i;
|
||||
unsigned char *s = (unsigned char *) ss;
|
||||
unsigned char *t = s;
|
||||
|
||||
for (i = 0; i < len; i++)
|
||||
{
|
||||
FriBidiChar mychar = us[i];
|
||||
if (mychar <= 0x7F)
|
||||
{ /* 7 sig bits */
|
||||
*t++ = mychar;
|
||||
}
|
||||
else if (mychar <= 0x7FF)
|
||||
{ /* 11 sig bits */
|
||||
*t++ = 0xC0 | (unsigned char) (mychar >> 6); /* upper 5 bits */
|
||||
*t++ = 0x80 | (unsigned char) (mychar & 0x3F); /* lower 6 bits */
|
||||
}
|
||||
else if (mychar <= 0xFFFF)
|
||||
{ /* 16 sig bits */
|
||||
*t++ = 0xE0 | (unsigned char) (mychar >> 12); /* upper 4 bits */
|
||||
*t++ = 0x80 | (unsigned char) ((mychar >> 6) & 0x3F); /* next 6 bits */
|
||||
*t++ = 0x80 | (unsigned char) (mychar & 0x3F); /* lowest 6 bits */
|
||||
}
|
||||
else if (mychar < FRIBIDI_UNICODE_CHARS)
|
||||
{ /* 21 sig bits */
|
||||
*t++ = 0xF0 | (unsigned char) ((mychar >> 18) & 0x07); /* upper 3 bits */
|
||||
*t++ = 0x80 | (unsigned char) ((mychar >> 12) & 0x3F); /* next 6 bits */
|
||||
*t++ = 0x80 | (unsigned char) ((mychar >> 6) & 0x3F); /* next 6 bits */
|
||||
*t++ = 0x80 | (unsigned char) (mychar & 0x3F); /* lowest 6 bits */
|
||||
}
|
||||
}
|
||||
*t = 0;
|
||||
|
||||
return (t - s);
|
||||
}
|
||||
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
68
3party/fribidi/charset/fribidi-char-sets-utf8.h
Normal file
68
3party/fribidi/charset/fribidi-char-sets-utf8.h
Normal file
|
@ -0,0 +1,68 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets-utf8.h - UTF-8 character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets-utf8.h,v 1.2 2004/06/09 14:59:21 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2004/06/09 14:59:21 $
|
||||
* $Revision: 1.2 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets-utf8.h,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#ifndef _FRIBIDI_CHAR_SETS_UTF8_H
|
||||
#define _FRIBIDI_CHAR_SETS_UTF8_H
|
||||
|
||||
#include "fribidi-common.h"
|
||||
|
||||
#include "fribidi-types.h"
|
||||
|
||||
#include "fribidi-begindecls.h"
|
||||
|
||||
#define fribidi_char_set_name_utf8 "UTF-8"
|
||||
#define fribidi_char_set_title_utf8 "UTF-8 (Unicode)"
|
||||
#define fribidi_char_set_desc_utf8 NULL
|
||||
|
||||
#define fribidi_utf8_to_unicode FRIBIDI_NAMESPACE(utf8_to_unicode)
|
||||
FriBidiStrIndex fribidi_utf8_to_unicode (
|
||||
const char *s,
|
||||
FriBidiStrIndex length,
|
||||
FriBidiChar *us
|
||||
);
|
||||
|
||||
#define fribidi_unicode_to_utf8 FRIBIDI_NAMESPACE(unicode_to_utf8)
|
||||
FriBidiStrIndex fribidi_unicode_to_utf8 (
|
||||
const FriBidiChar *us,
|
||||
FriBidiStrIndex length,
|
||||
char *s
|
||||
);
|
||||
|
||||
#include "fribidi-enddecls.h"
|
||||
|
||||
#endif /* !_FRIBIDI_CHAR_SETS_UTF8_H */
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
237
3party/fribidi/charset/fribidi-char-sets.c
Normal file
237
3party/fribidi/charset/fribidi-char-sets.c
Normal file
|
@ -0,0 +1,237 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets.c - character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets.c,v 1.7 2006/01/31 03:23:12 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2006/01/31 03:23:12 $
|
||||
* $Revision: 1.7 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets.c,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi-char-sets.h>
|
||||
|
||||
#include "fribidi-char-sets-cap-rtl.h"
|
||||
#include "fribidi-char-sets-utf8.h"
|
||||
#include "fribidi-char-sets-iso8859-6.h"
|
||||
#include "fribidi-char-sets-cp1256.h"
|
||||
#include "fribidi-char-sets-iso8859-8.h"
|
||||
#include "fribidi-char-sets-cp1255.h"
|
||||
|
||||
typedef struct
|
||||
{
|
||||
FriBidiChar (
|
||||
*charset_to_unicode_c
|
||||
) (
|
||||
char ch
|
||||
);
|
||||
|
||||
FriBidiStrIndex (
|
||||
*charset_to_unicode
|
||||
) (
|
||||
const char *s,
|
||||
FriBidiStrIndex len,
|
||||
FriBidiChar *us
|
||||
);
|
||||
|
||||
char (
|
||||
*unicode_to_charset_c
|
||||
) (
|
||||
FriBidiChar uch
|
||||
);
|
||||
|
||||
FriBidiStrIndex (
|
||||
*unicode_to_charset
|
||||
) (
|
||||
const FriBidiChar *us,
|
||||
FriBidiStrIndex len,
|
||||
char *s
|
||||
);
|
||||
|
||||
const char *name;
|
||||
|
||||
const char *title;
|
||||
|
||||
const char *(
|
||||
*desc
|
||||
) (
|
||||
void
|
||||
);
|
||||
}
|
||||
FriBidiCharSetHandler;
|
||||
|
||||
static FriBidiCharSetHandler char_sets[FRIBIDI_CHAR_SETS_NUM + 1] = {
|
||||
{NULL, NULL, NULL, NULL, "N/A", "Character set not available", NULL},
|
||||
# define _FRIBIDI_ADD_CHAR_SET_ONE2ONE(CHAR_SET, char_set) \
|
||||
{ \
|
||||
fribidi_##char_set##_to_unicode_c, \
|
||||
NULL, \
|
||||
fribidi_unicode_to_##char_set##_c, \
|
||||
NULL, \
|
||||
fribidi_char_set_name_##char_set, \
|
||||
fribidi_char_set_title_##char_set, \
|
||||
fribidi_char_set_desc_##char_set \
|
||||
},
|
||||
# define _FRIBIDI_ADD_CHAR_SET_OTHERS(CHAR_SET, char_set) \
|
||||
{ \
|
||||
NULL, \
|
||||
fribidi_##char_set##_to_unicode, \
|
||||
NULL, \
|
||||
fribidi_unicode_to_##char_set, \
|
||||
fribidi_char_set_name_##char_set, \
|
||||
fribidi_char_set_title_##char_set, \
|
||||
fribidi_char_set_desc_##char_set \
|
||||
},
|
||||
# include <fribidi-char-sets-list.h>
|
||||
# undef _FRIBIDI_ADD_CHAR_SET_OTHERS
|
||||
# undef _FRIBIDI_ADD_CHAR_SET_ONE2ONE
|
||||
};
|
||||
|
||||
#if FRIBIDI_USE_GLIB+0
|
||||
# include <glib/gstrfuncs.h>
|
||||
# define fribidi_strcasecmp g_ascii_strcasecmp
|
||||
#else /* !FRIBIDI_USE_GLIB */
|
||||
static char
|
||||
toupper (
|
||||
/* input */
|
||||
char c
|
||||
)
|
||||
{
|
||||
return c < 'a' || c > 'z' ? c : c + 'A' - 'a';
|
||||
}
|
||||
|
||||
static int
|
||||
fribidi_strcasecmp (
|
||||
/* input */
|
||||
const char *s1,
|
||||
const char *s2
|
||||
)
|
||||
{
|
||||
while (*s1 && toupper (*s1) == toupper (*s2))
|
||||
{
|
||||
s1++;
|
||||
s2++;
|
||||
}
|
||||
return toupper (*s1) - toupper (*s2);
|
||||
}
|
||||
#endif /* !FRIBIDI_USE_GLIB */
|
||||
|
||||
FRIBIDI_ENTRY FriBidiCharSet
|
||||
fribidi_parse_charset (
|
||||
/* input */
|
||||
const char *s
|
||||
)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = FRIBIDI_CHAR_SETS_NUM; i; i--)
|
||||
if (fribidi_strcasecmp (s, char_sets[i].name) == 0)
|
||||
return i;
|
||||
|
||||
return FRIBIDI_CHAR_SET_NOT_FOUND;
|
||||
}
|
||||
|
||||
FRIBIDI_ENTRY FriBidiStrIndex
|
||||
fribidi_charset_to_unicode (
|
||||
/* input */
|
||||
FriBidiCharSet char_set,
|
||||
const char *s,
|
||||
FriBidiStrIndex len,
|
||||
/* output */
|
||||
FriBidiChar *us
|
||||
)
|
||||
{
|
||||
if (char_sets[char_set].charset_to_unicode)
|
||||
return (*char_sets[char_set].charset_to_unicode) (s, len, us);
|
||||
else if (char_sets[char_set].charset_to_unicode_c)
|
||||
{
|
||||
register FriBidiStrIndex l;
|
||||
for (l = len; l; l--)
|
||||
*us++ = (*char_sets[char_set].charset_to_unicode_c) (*s++);
|
||||
return len;
|
||||
}
|
||||
else
|
||||
return 0;
|
||||
}
|
||||
|
||||
FRIBIDI_ENTRY FriBidiStrIndex
|
||||
fribidi_unicode_to_charset (
|
||||
/* input */
|
||||
FriBidiCharSet char_set,
|
||||
const FriBidiChar *us,
|
||||
FriBidiStrIndex len,
|
||||
/* output */
|
||||
char *s
|
||||
)
|
||||
{
|
||||
if (char_sets[char_set].unicode_to_charset)
|
||||
return (*char_sets[char_set].unicode_to_charset) (us, len, s);
|
||||
else if (char_sets[char_set].unicode_to_charset_c)
|
||||
{
|
||||
register FriBidiStrIndex l;
|
||||
for (l = len; l; l--)
|
||||
*s++ = (*char_sets[char_set].unicode_to_charset_c) (*us++);
|
||||
*s = '\0';
|
||||
return len;
|
||||
}
|
||||
else
|
||||
return 0;
|
||||
}
|
||||
|
||||
FRIBIDI_ENTRY const char *
|
||||
fribidi_char_set_name (
|
||||
/* input */
|
||||
FriBidiCharSet char_set
|
||||
)
|
||||
{
|
||||
return char_sets[char_set].name ? char_sets[char_set].name : "";
|
||||
}
|
||||
|
||||
FRIBIDI_ENTRY const char *
|
||||
fribidi_char_set_title (
|
||||
/* input */
|
||||
FriBidiCharSet char_set
|
||||
)
|
||||
{
|
||||
return char_sets[char_set].title ? char_sets[char_set].
|
||||
title : fribidi_char_set_name (char_set);
|
||||
}
|
||||
|
||||
FRIBIDI_ENTRY const char *
|
||||
fribidi_char_set_desc (
|
||||
/* input */
|
||||
FriBidiCharSet char_set
|
||||
)
|
||||
{
|
||||
return char_sets[char_set].desc ? char_sets[char_set].desc () : NULL;
|
||||
}
|
||||
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
118
3party/fribidi/charset/fribidi-char-sets.h
Normal file
118
3party/fribidi/charset/fribidi-char-sets.h
Normal file
|
@ -0,0 +1,118 @@
|
|||
/* FriBidi
|
||||
* fribidi-char-sets.h - character set conversion routines
|
||||
*
|
||||
* $Id: fribidi-char-sets.h,v 1.3 2004/06/09 14:59:21 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2004/06/09 14:59:21 $
|
||||
* $Revision: 1.3 $
|
||||
* $Source: /cvs/fribidi/fribidi2/charset/fribidi-char-sets.h,v $
|
||||
*
|
||||
* Authors:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
* Dov Grobgeld, 1999, 2000
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002 Behdad Esfahbod
|
||||
* Copyright (C) 1999,2000 Dov Grobgeld
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
#ifndef _FRIBIDI_CHAR_SETS_H
|
||||
#define _FRIBIDI_CHAR_SETS_H
|
||||
|
||||
#include "fribidi-common.h"
|
||||
|
||||
#include "fribidi-types.h"
|
||||
|
||||
#include "fribidi-begindecls.h"
|
||||
|
||||
typedef enum
|
||||
{
|
||||
_FRIBIDI_CHAR_SET_NOT_FOUND,
|
||||
# define _FRIBIDI_ADD_CHAR_SET(CHAR_SET, char_set) FRIBIDI_CHAR_SET_##CHAR_SET,
|
||||
# include "fribidi-char-sets-list.h"
|
||||
# undef _FRIBIDI_ADD_CHAR_SET
|
||||
_FRIBIDI_CHAR_SETS_NUM_PLUS_ONE
|
||||
}
|
||||
FriBidiCharSet;
|
||||
|
||||
#define FRIBIDI_CHAR_SET_NOT_FOUND _FRIBIDI_CHAR_SET_NOT_FOUND
|
||||
#define FRIBIDI_CHAR_SETS_NUM (_FRIBIDI_CHAR_SETS_NUM_PLUS_ONE - 1)
|
||||
|
||||
|
||||
#define fribidi_charset_to_unicode FRIBIDI_NAMESPACE(charset_to_unicode)
|
||||
/* fribidi_charset_to_unicode - convert string to Unicode
|
||||
*
|
||||
* This function converts an string from a character set, to a Unicode string.
|
||||
*
|
||||
* Returns: The length of the new string.
|
||||
*/
|
||||
FRIBIDI_ENTRY FriBidiStrIndex fribidi_charset_to_unicode (
|
||||
FriBidiCharSet char_set, /* character set to convert from */
|
||||
const char *s, /* input string encoded in char_set */
|
||||
FriBidiStrIndex len, /* input string length */
|
||||
FriBidiChar *us /* output Unicode string */
|
||||
);
|
||||
|
||||
#define fribidi_unicode_to_charset FRIBIDI_NAMESPACE(unicode_to_charset)
|
||||
/* fribidi_unicode_to_charset - convert string from Unicode
|
||||
*
|
||||
* This function converts a Unicode string to an string in another character
|
||||
* set. It also null-terminates the output string.
|
||||
*
|
||||
* Returns: The length of the new string.
|
||||
*/
|
||||
FRIBIDI_ENTRY FriBidiStrIndex fribidi_unicode_to_charset (
|
||||
FriBidiCharSet char_set, /* character set to conver to */
|
||||
const FriBidiChar *us, /* input Unicode string */
|
||||
FriBidiStrIndex len, /* input string length */
|
||||
char *s /* output string encoded in char_set */
|
||||
);
|
||||
|
||||
#define fribidi_parse_charset FRIBIDI_NAMESPACE(parse_charset)
|
||||
/* fribidi_parse_charset - parse character set name
|
||||
*
|
||||
* Returns: The character set named s, or FRIBIDI_CHAR_SET_NOT_FOUND if the
|
||||
* character set is not available.
|
||||
*/
|
||||
FRIBIDI_ENTRY FriBidiCharSet fribidi_parse_charset (
|
||||
const char *s /* input name of the character set */
|
||||
);
|
||||
|
||||
|
||||
#define fribidi_char_set_name FRIBIDI_NAMESPACE(char_set_name)
|
||||
FRIBIDI_ENTRY const char *fribidi_char_set_name (
|
||||
FriBidiCharSet char_set
|
||||
);
|
||||
|
||||
#define fribidi_char_set_title FRIBIDI_NAMESPACE(char_set_title)
|
||||
FRIBIDI_ENTRY const char *fribidi_char_set_title (
|
||||
FriBidiCharSet char_set
|
||||
);
|
||||
|
||||
#define fribidi_char_set_desc FRIBIDI_NAMESPACE(char_set_desc)
|
||||
FRIBIDI_ENTRY const char *fribidi_char_set_desc (
|
||||
FriBidiCharSet char_set
|
||||
);
|
||||
|
||||
#include "fribidi-enddecls.h"
|
||||
|
||||
#endif /* !_FRIBIDI_CHAR_SETS_H */
|
||||
/* Editor directions:
|
||||
* vim:textwidth=78:tabstop=8:shiftwidth=2:autoindent:cindent
|
||||
*/
|
1542
3party/fribidi/config.guess
vendored
Normal file
1542
3party/fribidi/config.guess
vendored
Normal file
File diff suppressed because it is too large
Load diff
104
3party/fribidi/config.h.in
Normal file
104
3party/fribidi/config.h.in
Normal file
|
@ -0,0 +1,104 @@
|
|||
/* config.h.in. Generated from configure.ac by autoheader. */
|
||||
|
||||
/* Define to 1 if you want to include debug code in the library */
|
||||
#undef DEBUG
|
||||
|
||||
/* Define to 1 if you have the <asm/page.h> header file. */
|
||||
#undef HAVE_ASM_PAGE_H
|
||||
|
||||
/* Define to 1 if you have the <dlfcn.h> header file. */
|
||||
#undef HAVE_DLFCN_H
|
||||
|
||||
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||
#undef HAVE_INTTYPES_H
|
||||
|
||||
/* Define to 1 if you have the `memmove' function. */
|
||||
#undef HAVE_MEMMOVE
|
||||
|
||||
/* Define to 1 if you have the <memory.h> header file. */
|
||||
#undef HAVE_MEMORY_H
|
||||
|
||||
/* Define to 1 if you have the `memset' function. */
|
||||
#undef HAVE_MEMSET
|
||||
|
||||
/* Define to 1 if you have the <stdint.h> header file. */
|
||||
#undef HAVE_STDINT_H
|
||||
|
||||
/* Define to 1 if you have the <stdlib.h> header file. */
|
||||
#undef HAVE_STDLIB_H
|
||||
|
||||
/* Define to 1 if you have the `strdup' function. */
|
||||
#undef HAVE_STRDUP
|
||||
|
||||
/* Define to 1 if cpp supports the ANSI # stringizing operator. */
|
||||
#undef HAVE_STRINGIZE
|
||||
|
||||
/* Define to 1 if you have the <strings.h> header file. */
|
||||
#undef HAVE_STRINGS_H
|
||||
|
||||
/* Define to 1 if you have the <string.h> header file. */
|
||||
#undef HAVE_STRING_H
|
||||
|
||||
/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||
#undef HAVE_SYS_STAT_H
|
||||
|
||||
/* Define to 1 if you have the <sys/times.h> header file. */
|
||||
#undef HAVE_SYS_TIMES_H
|
||||
|
||||
/* Define to 1 if you have the <sys/types.h> header file. */
|
||||
#undef HAVE_SYS_TYPES_H
|
||||
|
||||
/* Define to 1 if you have the <unistd.h> header file. */
|
||||
#undef HAVE_UNISTD_H
|
||||
|
||||
/* Define to 1 if you have the <wchar.h> header file. */
|
||||
#undef HAVE_WCHAR_H
|
||||
|
||||
/* Define to the sub-directory in which libtool stores uninstalled libraries.
|
||||
*/
|
||||
#undef LT_OBJDIR
|
||||
|
||||
/* Name of package */
|
||||
#undef PACKAGE
|
||||
|
||||
/* Define to the address where bug reports for this package should be sent. */
|
||||
#undef PACKAGE_BUGREPORT
|
||||
|
||||
/* Define to the full name of this package. */
|
||||
#undef PACKAGE_NAME
|
||||
|
||||
/* Define to the full name and version of this package. */
|
||||
#undef PACKAGE_STRING
|
||||
|
||||
/* Define to the one symbol short name of this package. */
|
||||
#undef PACKAGE_TARNAME
|
||||
|
||||
/* Define to the version of this package. */
|
||||
#undef PACKAGE_VERSION
|
||||
|
||||
/* Define as the return type of signal handlers (`int' or `void'). */
|
||||
#undef RETSIGTYPE
|
||||
|
||||
/* The size of `int', as computed by sizeof. */
|
||||
#undef SIZEOF_INT
|
||||
|
||||
/* The size of `short', as computed by sizeof. */
|
||||
#undef SIZEOF_SHORT
|
||||
|
||||
/* The size of `void *', as computed by sizeof. */
|
||||
#undef SIZEOF_VOID_P
|
||||
|
||||
/* The size of `wchar_t', as computed by sizeof. */
|
||||
#undef SIZEOF_WCHAR_T
|
||||
|
||||
/* Define to 1 if you have the ANSI C header files. */
|
||||
#undef STDC_HEADERS
|
||||
|
||||
/* Define to 1 if you want to use simple mallocs instead of memory chunks */
|
||||
#undef USE_SIMPLE_MALLOC
|
||||
|
||||
/* Version number of package */
|
||||
#undef VERSION
|
||||
|
||||
/* Define to empty if `const' does not conform to ANSI C. */
|
||||
#undef const
|
273
3party/fribidi/config.log
Normal file
273
3party/fribidi/config.log
Normal file
|
@ -0,0 +1,273 @@
|
|||
This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by GNU FriBidi configure 0.19.2, which was
|
||||
generated by GNU Autoconf 2.63. Invocation command line was
|
||||
|
||||
$ ./configure install
|
||||
|
||||
## --------- ##
|
||||
## Platform. ##
|
||||
## --------- ##
|
||||
|
||||
hostname = Viktor-PC
|
||||
uname -m = i686
|
||||
uname -r = 1.0.12(0.46/3/2)
|
||||
uname -s = MINGW32_NT-6.0
|
||||
uname -v = 2010-02-05 01:08
|
||||
|
||||
/usr/bin/uname -p = unknown
|
||||
/bin/uname -X = unknown
|
||||
|
||||
/bin/arch = unknown
|
||||
/usr/bin/arch -k = unknown
|
||||
/usr/convex/getsysinfo = unknown
|
||||
/usr/bin/hostinfo = unknown
|
||||
/bin/machine = unknown
|
||||
/usr/bin/oslevel = unknown
|
||||
/bin/universe = unknown
|
||||
|
||||
PATH: /c/Users/Viktor/bin
|
||||
PATH: .
|
||||
PATH: /usr/local/bin
|
||||
PATH: /mingw/bin
|
||||
PATH: /bin
|
||||
PATH: /c/Perl/site/bin
|
||||
PATH: /c/Perl/bin
|
||||
PATH: /c/Program Files/NVIDIA Corporation/PhysX/Common
|
||||
PATH: /c/Program Files/Intel/VTune/Shared/Bin
|
||||
PATH: /c/mapnik-0.7.1/lib
|
||||
PATH: /c/Python26/Scripts
|
||||
PATH: /c/Python26/
|
||||
PATH: /c/Program Files/Intel/VTune/CGGlbCache
|
||||
PATH: /c/Program Files/Intel/VTune/Analyzer/Bin
|
||||
PATH: /c/Program Files/PC Connectivity Solution/
|
||||
PATH: /c/Windows/system32
|
||||
PATH: /c/Windows
|
||||
PATH: /c/Windows/System32/Wbem
|
||||
PATH: /c/Program Files/CyberLink/Power2Go
|
||||
PATH: /c/Program Files/Microsoft SQL Server/90/Tools/binn/
|
||||
PATH: /c/Program Files/Common Files/Compuware
|
||||
PATH: /c/Program Files/TortoiseSVN/bin
|
||||
PATH: /c/Program Files/Common Files/Intel/Shared Files/IDVC
|
||||
PATH: /c/Program Files/TortoiseGit/bin
|
||||
PATH: /c/Users/Viktor/AppData/Roaming/Python/Scripts
|
||||
PATH: /c/mapnik-0.7.1/lib
|
||||
|
||||
|
||||
## ----------- ##
|
||||
## Core tests. ##
|
||||
## ----------- ##
|
||||
|
||||
configure:2116: checking for a BSD-compatible install
|
||||
configure:2184: result: ./install-sh -c
|
||||
configure:2195: checking whether build environment is sane
|
||||
configure:2238: result: yes
|
||||
configure:2263: checking for a thread-safe mkdir -p
|
||||
configure:2302: result: /bin/mkdir -p
|
||||
configure:2315: checking for gawk
|
||||
configure:2331: found /bin/gawk
|
||||
configure:2342: result: gawk
|
||||
configure:2353: checking whether make sets $(MAKE)
|
||||
configure:2379: result: no
|
||||
configure:2592: checking for install-gcc
|
||||
configure:2622: result: no
|
||||
configure:2632: checking for gcc
|
||||
configure:2662: result: no
|
||||
configure:2685: checking for install-cc
|
||||
configure:2715: result: no
|
||||
configure:2725: checking for cc
|
||||
configure:2772: result: no
|
||||
configure:2784: checking for install-cl.exe
|
||||
configure:2814: result: no
|
||||
configure:2828: checking for cl.exe
|
||||
configure:2858: result: no
|
||||
configure:2882: error: in `/d/projects/omim/3party/fribidi':
|
||||
configure:2885: error: no acceptable C compiler found in $PATH
|
||||
See `config.log' for more details.
|
||||
|
||||
## ---------------- ##
|
||||
## Cache variables. ##
|
||||
## ---------------- ##
|
||||
|
||||
ac_cv_env_CC_set=
|
||||
ac_cv_env_CC_value=
|
||||
ac_cv_env_CFLAGS_set=
|
||||
ac_cv_env_CFLAGS_value=
|
||||
ac_cv_env_CPPFLAGS_set=
|
||||
ac_cv_env_CPPFLAGS_value=
|
||||
ac_cv_env_CPP_set=
|
||||
ac_cv_env_CPP_value=
|
||||
ac_cv_env_GLIB_CFLAGS_set=
|
||||
ac_cv_env_GLIB_CFLAGS_value=
|
||||
ac_cv_env_GLIB_LIBS_set=
|
||||
ac_cv_env_GLIB_LIBS_value=
|
||||
ac_cv_env_LDFLAGS_set=
|
||||
ac_cv_env_LDFLAGS_value=
|
||||
ac_cv_env_LIBS_set=
|
||||
ac_cv_env_LIBS_value=
|
||||
ac_cv_env_PKG_CONFIG_set=
|
||||
ac_cv_env_PKG_CONFIG_value=
|
||||
ac_cv_env_build_alias_set=set
|
||||
ac_cv_env_build_alias_value=install
|
||||
ac_cv_env_host_alias_set=set
|
||||
ac_cv_env_host_alias_value=install
|
||||
ac_cv_env_target_alias_set=set
|
||||
ac_cv_env_target_alias_value=install
|
||||
ac_cv_path_mkdir=/bin/mkdir
|
||||
ac_cv_prog_AWK=gawk
|
||||
ac_cv_prog_make_make_set=no
|
||||
|
||||
## ----------------- ##
|
||||
## Output variables. ##
|
||||
## ----------------- ##
|
||||
|
||||
ACLOCAL='${SHELL} /d/projects/omim/3party/fribidi/missing --run aclocal-1.10'
|
||||
AMDEPBACKSLASH=''
|
||||
AMDEP_FALSE=''
|
||||
AMDEP_TRUE=''
|
||||
AMTAR='${SHELL} /d/projects/omim/3party/fribidi/missing --run tar'
|
||||
AR=''
|
||||
AS=''
|
||||
AUTOCONF='${SHELL} /d/projects/omim/3party/fribidi/missing --run autoconf'
|
||||
AUTOHEADER='${SHELL} /d/projects/omim/3party/fribidi/missing --run autoheader'
|
||||
AUTOMAKE='${SHELL} /d/projects/omim/3party/fribidi/missing --run automake-1.10'
|
||||
AWK='gawk'
|
||||
CC=''
|
||||
CCDEPMODE=''
|
||||
CFLAGS=''
|
||||
CPP=''
|
||||
CPPFLAGS=''
|
||||
CYGPATH_W='echo'
|
||||
DEFS=''
|
||||
DEPDIR=''
|
||||
DLLTOOL=''
|
||||
DSYMUTIL=''
|
||||
DUMPBIN=''
|
||||
ECHO_C=''
|
||||
ECHO_N='-n'
|
||||
ECHO_T=''
|
||||
EGREP=''
|
||||
EXEEXT=''
|
||||
FGREP=''
|
||||
FRIBIDI_BINARY_AGE='3'
|
||||
FRIBIDI_CHARSETS=''
|
||||
FRIBIDI_CHARSETS_FALSE=''
|
||||
FRIBIDI_CHARSETS_TRUE=''
|
||||
FRIBIDI_INTERFACE_AGE='1'
|
||||
FRIBIDI_INTERFACE_VERSION='3'
|
||||
FRIBIDI_MAJOR_VERSION='0'
|
||||
FRIBIDI_MICRO_VERSION='2'
|
||||
FRIBIDI_MINOR_VERSION='19'
|
||||
FRIBIDI_NO_DEPRECATED=''
|
||||
FRIBIDI_USE_GLIB=''
|
||||
FRIBIDI_USE_GLIB_FALSE=''
|
||||
FRIBIDI_USE_GLIB_TRUE=''
|
||||
FRIBIDI_VERSION='0.19.2'
|
||||
GLIB_CFLAGS=''
|
||||
GLIB_LIBS=''
|
||||
GREP=''
|
||||
INSTALL_DATA='${INSTALL} -m 644'
|
||||
INSTALL_PROGRAM='${INSTALL}'
|
||||
INSTALL_SCRIPT='${INSTALL}'
|
||||
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
|
||||
LD=''
|
||||
LDFLAGS=''
|
||||
LIBOBJS=''
|
||||
LIBS=''
|
||||
LIBTOOL=''
|
||||
LIPO=''
|
||||
LN_S=''
|
||||
LTLIBOBJS=''
|
||||
LT_CURRENT_MINUS_AGE='0'
|
||||
LT_VERSION_INFO='3:1:3'
|
||||
MAKEINFO='${SHELL} /d/projects/omim/3party/fribidi/missing --run makeinfo'
|
||||
MISC_CFLAGS=''
|
||||
MISC_LIBS=''
|
||||
MISC_PACKAGES=''
|
||||
MKDIR_P='/bin/mkdir -p'
|
||||
NM=''
|
||||
NMEDIT=''
|
||||
OBJDUMP=''
|
||||
OBJEXT=''
|
||||
OS_WIN32_FALSE=''
|
||||
OS_WIN32_TRUE=''
|
||||
OTOOL64=''
|
||||
OTOOL=''
|
||||
PACKAGE='fribidi'
|
||||
PACKAGE_BUGREPORT='http://fribidi.org/bug'
|
||||
PACKAGE_NAME='GNU FriBidi'
|
||||
PACKAGE_STRING='GNU FriBidi 0.19.2'
|
||||
PACKAGE_TARNAME='fribidi'
|
||||
PACKAGE_VERSION='0.19.2'
|
||||
PATH_SEPARATOR=':'
|
||||
PKG_CONFIG=''
|
||||
PLATFORM_WIN32_FALSE=''
|
||||
PLATFORM_WIN32_TRUE=''
|
||||
RANLIB=''
|
||||
SED=''
|
||||
SET_MAKE='MAKE=make'
|
||||
SHELL='/bin/sh'
|
||||
SIZEOF_INT=''
|
||||
STRIP=''
|
||||
VERSION='0.19.2'
|
||||
ac_ct_CC=''
|
||||
ac_ct_DUMPBIN=''
|
||||
am__fastdepCC_FALSE=''
|
||||
am__fastdepCC_TRUE=''
|
||||
am__include=''
|
||||
am__isrc=''
|
||||
am__leading_dot='.'
|
||||
am__quote=''
|
||||
am__tar='${AMTAR} chof - "$$tardir"'
|
||||
am__untar='${AMTAR} xf -'
|
||||
bindir='${exec_prefix}/bin'
|
||||
build='install'
|
||||
build_alias='install'
|
||||
build_cpu=''
|
||||
build_os=''
|
||||
build_vendor=''
|
||||
datadir='${datarootdir}'
|
||||
datarootdir='${prefix}/share'
|
||||
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
|
||||
dvidir='${docdir}'
|
||||
exec_prefix='NONE'
|
||||
host='install'
|
||||
host_alias='install'
|
||||
host_cpu=''
|
||||
host_os=''
|
||||
host_vendor=''
|
||||
htmldir='${docdir}'
|
||||
includedir='${prefix}/include'
|
||||
infodir='${datarootdir}/info'
|
||||
install_sh='$(SHELL) /d/projects/omim/3party/fribidi/install-sh'
|
||||
libdir='${exec_prefix}/lib'
|
||||
libexecdir='${exec_prefix}/libexec'
|
||||
localedir='${datarootdir}/locale'
|
||||
localstatedir='${prefix}/var'
|
||||
lt_ECHO='echo'
|
||||
mandir='${datarootdir}/man'
|
||||
mkdir_p='/bin/mkdir -p'
|
||||
oldincludedir='/usr/include'
|
||||
pdfdir='${docdir}'
|
||||
prefix='NONE'
|
||||
program_transform_name='s,x,x,'
|
||||
psdir='${docdir}'
|
||||
sbindir='${exec_prefix}/sbin'
|
||||
sharedstatedir='${prefix}/com'
|
||||
sysconfdir='${prefix}/etc'
|
||||
target_alias='install'
|
||||
|
||||
## ----------- ##
|
||||
## confdefs.h. ##
|
||||
## ----------- ##
|
||||
|
||||
#define PACKAGE_NAME "GNU FriBidi"
|
||||
#define PACKAGE_TARNAME "fribidi"
|
||||
#define PACKAGE_VERSION "0.19.2"
|
||||
#define PACKAGE_STRING "GNU FriBidi 0.19.2"
|
||||
#define PACKAGE_BUGREPORT "http://fribidi.org/bug"
|
||||
#define PACKAGE "fribidi"
|
||||
#define VERSION "0.19.2"
|
||||
|
||||
configure: exit 1
|
1677
3party/fribidi/config.sub
vendored
Normal file
1677
3party/fribidi/config.sub
vendored
Normal file
File diff suppressed because it is too large
Load diff
16375
3party/fribidi/configure
vendored
Normal file
16375
3party/fribidi/configure
vendored
Normal file
File diff suppressed because it is too large
Load diff
211
3party/fribidi/configure.ac
Normal file
211
3party/fribidi/configure.ac
Normal file
|
@ -0,0 +1,211 @@
|
|||
## -*- Autoconf -*-
|
||||
## Process this file with autoconf to produce a configure script.
|
||||
## Use autoupdate to update this file for newer versions of autoconf.
|
||||
## Use autoscan to check if you need to add something to this file.
|
||||
##############################################################################
|
||||
## $Id: configure.ac,v 1.28 2009-03-26 22:37:29 behdad Exp $
|
||||
## $Auther: behdad $
|
||||
## $Date: 2009-03-26 22:37:29 $
|
||||
## $Revision: 1.28 $
|
||||
## $Source: /cvs/fribidi/fribidi2/configure.ac,v $
|
||||
##############################################################################
|
||||
|
||||
AC_PREREQ(2.56)
|
||||
|
||||
dnl Define different version variables.
|
||||
dnl
|
||||
dnl Making releases:
|
||||
dnl FRIBIDI_MICRO_VERSION++;
|
||||
dnl FRIBIDI_INTERFACE_AGE++;
|
||||
dnl
|
||||
dnl If any functions have been added:
|
||||
dnl FRIBIDI_INTERFACE_AGE = 0;
|
||||
dnl FRIBIDI_INTERFACE_VERSION++;
|
||||
dnl FRIBIDI_BINARY_AGE++;
|
||||
dnl
|
||||
dnl If binary backwards compatibility has been broken:
|
||||
dnl FRIBIDI_BINARY_AGE = FRIBIDI_INTERFACE_AGE = 0;
|
||||
dnl
|
||||
m4_define(fribidi_major_version, 0)dnl
|
||||
m4_define(fribidi_minor_version, 19)dnl
|
||||
m4_define(fribidi_micro_version, 2)dnl
|
||||
m4_define(fribidi_interface_version, 3)dnl
|
||||
m4_define(fribidi_interface_age, 1)dnl
|
||||
m4_define(fribidi_binary_age, 3)dnl
|
||||
dnl
|
||||
m4_define(fribidi_version,
|
||||
m4_if(m4_eval(fribidi_micro_version()),0,
|
||||
fribidi_major_version.fribidi_minor_version,
|
||||
fribidi_major_version.fribidi_minor_version.fribidi_micro_version))dnl
|
||||
|
||||
AC_INIT([GNU FriBidi],fribidi_version(),[http://fribidi.org/bug])
|
||||
AC_REVISION([$Id: configure.ac,v 1.28 2009-03-26 22:37:29 behdad Exp $])
|
||||
AC_CONFIG_SRCDIR(lib/fribidi.h)
|
||||
AC_CONFIG_HEADERS(config.h)
|
||||
AM_INIT_AUTOMAKE([gnits])
|
||||
|
||||
FRIBIDI_MAJOR_VERSION=fribidi_major_version()
|
||||
FRIBIDI_MINOR_VERSION=fribidi_minor_version()
|
||||
FRIBIDI_MICRO_VERSION=fribidi_micro_version()
|
||||
FRIBIDI_VERSION=fribidi_version()
|
||||
FRIBIDI_INTERFACE_VERSION=fribidi_interface_version()
|
||||
FRIBIDI_INTERFACE_AGE=fribidi_interface_age()
|
||||
FRIBIDI_BINARY_AGE=fribidi_binary_age()
|
||||
|
||||
AC_SUBST(FRIBIDI_MAJOR_VERSION)
|
||||
AC_SUBST(FRIBIDI_MINOR_VERSION)
|
||||
AC_SUBST(FRIBIDI_MICRO_VERSION)
|
||||
AC_SUBST(FRIBIDI_VERSION)
|
||||
AC_SUBST(FRIBIDI_INTERFACE_VERSION)
|
||||
AC_SUBST(FRIBIDI_INTERFACE_AGE)
|
||||
AC_SUBST(FRIBIDI_BINARY_AGE)
|
||||
|
||||
dnl libtool versioning.
|
||||
m4_define(lt_current, fribidi_interface_version())dnl
|
||||
m4_define(lt_revision, fribidi_interface_age())dnl
|
||||
m4_define(lt_age, fribidi_binary_age())dnl
|
||||
LT_VERSION_INFO=lt_current():lt_revision():lt_age()
|
||||
LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)
|
||||
|
||||
AC_SUBST(LT_VERSION_INFO)
|
||||
AC_SUBST(LT_CURRENT_MINUS_AGE)
|
||||
|
||||
dnl ==========================================================================
|
||||
|
||||
# Checks for programs.
|
||||
AC_PROG_CC
|
||||
AC_PROG_INSTALL
|
||||
AC_LIBTOOL_WIN32_DLL
|
||||
AC_PROG_LIBTOOL
|
||||
AC_MSG_CHECKING([for native Win32])
|
||||
case $build_os in
|
||||
mingw*) os_win32=yes ;;
|
||||
*) os_win32=no ;;
|
||||
esac
|
||||
AC_MSG_RESULT([$os_win32])
|
||||
AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
|
||||
AC_MSG_CHECKING([for some Win32 platform])
|
||||
case $build_os in
|
||||
mingw*|cygwin*) platform_win32=yes ;;
|
||||
*) platform_win32=no ;;
|
||||
esac
|
||||
AC_MSG_RESULT([$platform_win32])
|
||||
AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
|
||||
|
||||
|
||||
# Checks for header files.
|
||||
AC_HEADER_STDC
|
||||
AC_CHECK_HEADERS([stdlib.h string.h strings.h inttypes.h wchar.h asm/page.h sys/times.h])
|
||||
|
||||
# Checks for typedefs and structures.
|
||||
AC_C_CONST
|
||||
AC_C_STRINGIZE
|
||||
AC_CHECK_SIZEOF(int)
|
||||
SIZEOF_INT=$ac_cv_sizeof_int
|
||||
AC_SUBST(SIZEOF_INT)
|
||||
AC_CHECK_SIZEOF(short)
|
||||
AC_CHECK_SIZEOF(void *)
|
||||
AC_CHECK_SIZEOF(wchar_t)
|
||||
|
||||
# Checks for compiler characteristics.
|
||||
changequote(,)dnl
|
||||
if test "x$GCC" = "xyes"; then
|
||||
CFLAGS="$CFLAGS -Wall -ansi "
|
||||
fi
|
||||
changequote([,])dnl
|
||||
|
||||
# Checks for library functions.
|
||||
AC_CHECK_FUNCS([memmove memset strdup])
|
||||
AC_TYPE_SIGNAL
|
||||
|
||||
# Checks for configure options
|
||||
|
||||
# --enable-debug
|
||||
m4_define(debug_default,
|
||||
m4_if(m4_eval(fribidi_minor_version() % 2),1,yes,no))
|
||||
AC_ARG_ENABLE(debug,
|
||||
AC_HELP_STRING([--enable-debug],
|
||||
[turn on debugging @<:@default=debug_default()@:>@]),,
|
||||
enable_debug=debug_default())
|
||||
if test x$enable_debug = xyes; then
|
||||
AC_DEFINE(DEBUG,1,
|
||||
[Define to 1 if you want to include debug code in the library])
|
||||
fi
|
||||
|
||||
# --disable-deprecated
|
||||
AC_ARG_ENABLE(deprecated,
|
||||
AC_HELP_STRING([--disable-deprecated],
|
||||
[do not build deprecated functionality]))
|
||||
if test x$enable_deprecated = xno; then
|
||||
FRIBIDI_NO_DEPRECATED=1
|
||||
else
|
||||
FRIBIDI_NO_DEPRECATED=0
|
||||
fi
|
||||
AC_SUBST(FRIBIDI_NO_DEPRECATED)
|
||||
|
||||
# --enable-malloc
|
||||
AC_ARG_ENABLE(malloc,
|
||||
AC_HELP_STRING([--enable-malloc],
|
||||
[use simple malloc instead of memory chunks]))
|
||||
if test x$enable_malloc = xyes; then
|
||||
AC_DEFINE(USE_SIMPLE_MALLOC,1,
|
||||
[Define to 1 if you want to use simple mallocs instead of memory chunks])
|
||||
fi
|
||||
|
||||
# --disable-charsets
|
||||
AC_ARG_ENABLE(charsets,
|
||||
AC_HELP_STRING([--disable-charsets],
|
||||
[exclude charset conversion routines from library]))
|
||||
if test x$enable_charsets = xno; then
|
||||
FRIBIDI_CHARSETS=0
|
||||
else
|
||||
FRIBIDI_CHARSETS=1
|
||||
fi
|
||||
AC_SUBST(FRIBIDI_CHARSETS)
|
||||
AM_CONDITIONAL(FRIBIDI_CHARSETS, test x$FRIBIDI_CHARSETS = x1)
|
||||
|
||||
# --with[out]-glib
|
||||
AC_ARG_WITH(glib,
|
||||
AC_HELP_STRING([--with-glib=@<:@no/auto/yes@:>@],
|
||||
[use Glib @<:@default=auto@:>@]))
|
||||
GLIB_PACKAGE=glib-2.0
|
||||
GLIB_MINVERSION=2.4
|
||||
GLIB_LIBS=
|
||||
GLIB_CFLAGS=
|
||||
if test x$with_glib = xyes; then
|
||||
PKG_CHECK_MODULES(GLIB,$GLIB_PACKAGE >= $GLIB_MINVERSION)
|
||||
FRIBIDI_USE_GLIB=1
|
||||
else
|
||||
if test x$with_glib = xno; then
|
||||
FRIBIDI_USE_GLIB=0
|
||||
else
|
||||
PKG_CHECK_MODULES(GLIB,$GLIB_PACKAGE >= $GLIB_MINVERSION,
|
||||
FRIBIDI_USE_GLIB=1,
|
||||
FRIBIDI_USE_GLIB=0)
|
||||
fi
|
||||
fi
|
||||
if test x$FRIBIDI_USE_GLIB = x0; then
|
||||
GLIB_PACKAGE=
|
||||
fi
|
||||
AC_SUBST(FRIBIDI_USE_GLIB)
|
||||
AM_CONDITIONAL(FRIBIDI_USE_GLIB, test x$FRIBIDI_USE_GLIB = x1)
|
||||
|
||||
|
||||
MISC_CFLAGS="$GLIB_CFLAGS"
|
||||
MISC_LIBS="$GLIB_LIBS"
|
||||
MISC_PACKAGES="$GLIB_PACKAGE"
|
||||
AC_SUBST(MISC_CFLAGS)
|
||||
AC_SUBST(MISC_LIBS)
|
||||
AC_SUBST(MISC_PACKAGES)
|
||||
|
||||
# Generate output
|
||||
AC_CONFIG_FILES([fribidi.pc
|
||||
lib/fribidi-config.h
|
||||
Makefile
|
||||
charset/Makefile
|
||||
gen.tab/Makefile
|
||||
lib/Makefile
|
||||
bin/Makefile
|
||||
doc/Makefile
|
||||
test/Makefile])
|
||||
AC_OUTPUT
|
589
3party/fribidi/depcomp
Normal file
589
3party/fribidi/depcomp
Normal file
|
@ -0,0 +1,589 @@
|
|||
#! /bin/sh
|
||||
# depcomp - compile a program generating dependencies as side-effects
|
||||
|
||||
scriptversion=2007-03-29.01
|
||||
|
||||
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007 Free Software
|
||||
# Foundation, Inc.
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
# 02110-1301, USA.
|
||||
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
|
||||
|
||||
case $1 in
|
||||
'')
|
||||
echo "$0: No command. Try \`$0 --help' for more information." 1>&2
|
||||
exit 1;
|
||||
;;
|
||||
-h | --h*)
|
||||
cat <<\EOF
|
||||
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
|
||||
|
||||
Run PROGRAMS ARGS to compile a file, generating dependencies
|
||||
as side-effects.
|
||||
|
||||
Environment variables:
|
||||
depmode Dependency tracking mode.
|
||||
source Source file read by `PROGRAMS ARGS'.
|
||||
object Object file output by `PROGRAMS ARGS'.
|
||||
DEPDIR directory where to store dependencies.
|
||||
depfile Dependency file to output.
|
||||
tmpdepfile Temporary file to use when outputing dependencies.
|
||||
libtool Whether libtool is used (yes/no).
|
||||
|
||||
Report bugs to <bug-automake@gnu.org>.
|
||||
EOF
|
||||
exit $?
|
||||
;;
|
||||
-v | --v*)
|
||||
echo "depcomp $scriptversion"
|
||||
exit $?
|
||||
;;
|
||||
esac
|
||||
|
||||
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
|
||||
echo "depcomp: Variables source, object and depmode must be set" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
|
||||
depfile=${depfile-`echo "$object" |
|
||||
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
|
||||
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
|
||||
|
||||
rm -f "$tmpdepfile"
|
||||
|
||||
# Some modes work just like other modes, but use different flags. We
|
||||
# parameterize here, but still list the modes in the big case below,
|
||||
# to make depend.m4 easier to write. Note that we *cannot* use a case
|
||||
# here, because this file can only contain one case statement.
|
||||
if test "$depmode" = hp; then
|
||||
# HP compiler uses -M and no extra arg.
|
||||
gccflag=-M
|
||||
depmode=gcc
|
||||
fi
|
||||
|
||||
if test "$depmode" = dashXmstdout; then
|
||||
# This is just like dashmstdout with a different argument.
|
||||
dashmflag=-xM
|
||||
depmode=dashmstdout
|
||||
fi
|
||||
|
||||
case "$depmode" in
|
||||
gcc3)
|
||||
## gcc 3 implements dependency tracking that does exactly what
|
||||
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
|
||||
## it if -MD -MP comes after the -MF stuff. Hmm.
|
||||
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
|
||||
## the command line argument order; so add the flags where they
|
||||
## appear in depend2.am. Note that the slowdown incurred here
|
||||
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
|
||||
*) set fnord "$@" "$arg" ;;
|
||||
esac
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
done
|
||||
"$@"
|
||||
stat=$?
|
||||
if test $stat -eq 0; then :
|
||||
else
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
mv "$tmpdepfile" "$depfile"
|
||||
;;
|
||||
|
||||
gcc)
|
||||
## There are various ways to get dependency output from gcc. Here's
|
||||
## why we pick this rather obscure method:
|
||||
## - Don't want to use -MD because we'd like the dependencies to end
|
||||
## up in a subdir. Having to rename by hand is ugly.
|
||||
## (We might end up doing this anyway to support other compilers.)
|
||||
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
|
||||
## -MM, not -M (despite what the docs say).
|
||||
## - Using -M directly means running the compiler twice (even worse
|
||||
## than renaming).
|
||||
if test -z "$gccflag"; then
|
||||
gccflag=-MD,
|
||||
fi
|
||||
"$@" -Wp,"$gccflag$tmpdepfile"
|
||||
stat=$?
|
||||
if test $stat -eq 0; then :
|
||||
else
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
|
||||
## The second -e expression handles DOS-style file names with drive letters.
|
||||
sed -e 's/^[^:]*: / /' \
|
||||
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
|
||||
## This next piece of magic avoids the `deleted header file' problem.
|
||||
## The problem is that when a header file which appears in a .P file
|
||||
## is deleted, the dependency causes make to die (because there is
|
||||
## typically no way to rebuild the header). We avoid this by adding
|
||||
## dummy dependencies for each header file. Too bad gcc doesn't do
|
||||
## this for us directly.
|
||||
tr ' ' '
|
||||
' < "$tmpdepfile" |
|
||||
## Some versions of gcc put a space before the `:'. On the theory
|
||||
## that the space means something, we add a space to the output as
|
||||
## well.
|
||||
## Some versions of the HPUX 10.20 sed can't process this invocation
|
||||
## correctly. Breaking it into two sed invocations is a workaround.
|
||||
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
hp)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
sgi)
|
||||
if test "$libtool" = yes; then
|
||||
"$@" "-Wp,-MDupdate,$tmpdepfile"
|
||||
else
|
||||
"$@" -MDupdate "$tmpdepfile"
|
||||
fi
|
||||
stat=$?
|
||||
if test $stat -eq 0; then :
|
||||
else
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
|
||||
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
|
||||
echo "$object : \\" > "$depfile"
|
||||
|
||||
# Clip off the initial element (the dependent). Don't try to be
|
||||
# clever and replace this with sed code, as IRIX sed won't handle
|
||||
# lines with more than a fixed number of characters (4096 in
|
||||
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
|
||||
# the IRIX cc adds comments like `#:fec' to the end of the
|
||||
# dependency line.
|
||||
tr ' ' '
|
||||
' < "$tmpdepfile" \
|
||||
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
|
||||
tr '
|
||||
' ' ' >> $depfile
|
||||
echo >> $depfile
|
||||
|
||||
# The second pass generates a dummy entry for each header file.
|
||||
tr ' ' '
|
||||
' < "$tmpdepfile" \
|
||||
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
|
||||
>> $depfile
|
||||
else
|
||||
# The sourcefile does not contain any dependencies, so just
|
||||
# store a dummy comment line, to avoid errors with the Makefile
|
||||
# "include basename.Plo" scheme.
|
||||
echo "#dummy" > "$depfile"
|
||||
fi
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
aix)
|
||||
# The C for AIX Compiler uses -M and outputs the dependencies
|
||||
# in a .u file. In older versions, this file always lives in the
|
||||
# current directory. Also, the AIX compiler puts `$object:' at the
|
||||
# start of each line; $object doesn't have directory information.
|
||||
# Version 6 uses the directory in both cases.
|
||||
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
|
||||
test "x$dir" = "x$object" && dir=
|
||||
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
|
||||
if test "$libtool" = yes; then
|
||||
tmpdepfile1=$dir$base.u
|
||||
tmpdepfile2=$base.u
|
||||
tmpdepfile3=$dir.libs/$base.u
|
||||
"$@" -Wc,-M
|
||||
else
|
||||
tmpdepfile1=$dir$base.u
|
||||
tmpdepfile2=$dir$base.u
|
||||
tmpdepfile3=$dir$base.u
|
||||
"$@" -M
|
||||
fi
|
||||
stat=$?
|
||||
|
||||
if test $stat -eq 0; then :
|
||||
else
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
if test -f "$tmpdepfile"; then
|
||||
# Each line is of the form `foo.o: dependent.h'.
|
||||
# Do two passes, one to just change these to
|
||||
# `$object: dependent.h' and one to simply `dependent.h:'.
|
||||
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
|
||||
# That's a tab and a space in the [].
|
||||
sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
|
||||
else
|
||||
# The sourcefile does not contain any dependencies, so just
|
||||
# store a dummy comment line, to avoid errors with the Makefile
|
||||
# "include basename.Plo" scheme.
|
||||
echo "#dummy" > "$depfile"
|
||||
fi
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
icc)
|
||||
# Intel's C compiler understands `-MD -MF file'. However on
|
||||
# icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
|
||||
# ICC 7.0 will fill foo.d with something like
|
||||
# foo.o: sub/foo.c
|
||||
# foo.o: sub/foo.h
|
||||
# which is wrong. We want:
|
||||
# sub/foo.o: sub/foo.c
|
||||
# sub/foo.o: sub/foo.h
|
||||
# sub/foo.c:
|
||||
# sub/foo.h:
|
||||
# ICC 7.1 will output
|
||||
# foo.o: sub/foo.c sub/foo.h
|
||||
# and will wrap long lines using \ :
|
||||
# foo.o: sub/foo.c ... \
|
||||
# sub/foo.h ... \
|
||||
# ...
|
||||
|
||||
"$@" -MD -MF "$tmpdepfile"
|
||||
stat=$?
|
||||
if test $stat -eq 0; then :
|
||||
else
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
# Each line is of the form `foo.o: dependent.h',
|
||||
# or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
|
||||
# Do two passes, one to just change these to
|
||||
# `$object: dependent.h' and one to simply `dependent.h:'.
|
||||
sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
|
||||
# Some versions of the HPUX 10.20 sed can't process this invocation
|
||||
# correctly. Breaking it into two sed invocations is a workaround.
|
||||
sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
|
||||
sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
hp2)
|
||||
# The "hp" stanza above does not work with aCC (C++) and HP's ia64
|
||||
# compilers, which have integrated preprocessors. The correct option
|
||||
# to use with these is +Maked; it writes dependencies to a file named
|
||||
# 'foo.d', which lands next to the object file, wherever that
|
||||
# happens to be.
|
||||
# Much of this is similar to the tru64 case; see comments there.
|
||||
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
|
||||
test "x$dir" = "x$object" && dir=
|
||||
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
|
||||
if test "$libtool" = yes; then
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir.libs/$base.d
|
||||
"$@" -Wc,+Maked
|
||||
else
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir$base.d
|
||||
"$@" +Maked
|
||||
fi
|
||||
stat=$?
|
||||
if test $stat -eq 0; then :
|
||||
else
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
if test -f "$tmpdepfile"; then
|
||||
sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
|
||||
# Add `dependent.h:' lines.
|
||||
sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
|
||||
else
|
||||
echo "#dummy" > "$depfile"
|
||||
fi
|
||||
rm -f "$tmpdepfile" "$tmpdepfile2"
|
||||
;;
|
||||
|
||||
tru64)
|
||||
# The Tru64 compiler uses -MD to generate dependencies as a side
|
||||
# effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
|
||||
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
|
||||
# dependencies in `foo.d' instead, so we check for that too.
|
||||
# Subdirectories are respected.
|
||||
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
|
||||
test "x$dir" = "x$object" && dir=
|
||||
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
|
||||
|
||||
if test "$libtool" = yes; then
|
||||
# With Tru64 cc, shared objects can also be used to make a
|
||||
# static library. This mechanism is used in libtool 1.4 series to
|
||||
# handle both shared and static libraries in a single compilation.
|
||||
# With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
|
||||
#
|
||||
# With libtool 1.5 this exception was removed, and libtool now
|
||||
# generates 2 separate objects for the 2 libraries. These two
|
||||
# compilations output dependencies in $dir.libs/$base.o.d and
|
||||
# in $dir$base.o.d. We have to check for both files, because
|
||||
# one of the two compilations can be disabled. We should prefer
|
||||
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
|
||||
# automatically cleaned when .libs/ is deleted, while ignoring
|
||||
# the former would cause a distcleancheck panic.
|
||||
tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
|
||||
tmpdepfile2=$dir$base.o.d # libtool 1.5
|
||||
tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
|
||||
tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
|
||||
"$@" -Wc,-MD
|
||||
else
|
||||
tmpdepfile1=$dir$base.o.d
|
||||
tmpdepfile2=$dir$base.d
|
||||
tmpdepfile3=$dir$base.d
|
||||
tmpdepfile4=$dir$base.d
|
||||
"$@" -MD
|
||||
fi
|
||||
|
||||
stat=$?
|
||||
if test $stat -eq 0; then :
|
||||
else
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
if test -f "$tmpdepfile"; then
|
||||
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
|
||||
# That's a tab and a space in the [].
|
||||
sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
|
||||
else
|
||||
echo "#dummy" > "$depfile"
|
||||
fi
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
#nosideeffect)
|
||||
# This comment above is used by automake to tell side-effect
|
||||
# dependency tracking mechanisms from slower ones.
|
||||
|
||||
dashmstdout)
|
||||
# Important note: in order to support this mode, a compiler *must*
|
||||
# always write the preprocessed file to stdout, regardless of -o.
|
||||
"$@" || exit $?
|
||||
|
||||
# Remove the call to Libtool.
|
||||
if test "$libtool" = yes; then
|
||||
while test $1 != '--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
|
||||
# Remove `-o $object'.
|
||||
IFS=" "
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-o)
|
||||
shift
|
||||
;;
|
||||
$object)
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
test -z "$dashmflag" && dashmflag=-M
|
||||
# Require at least two characters before searching for `:'
|
||||
# in the target name. This is to cope with DOS-style filenames:
|
||||
# a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
|
||||
"$@" $dashmflag |
|
||||
sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
|
||||
rm -f "$depfile"
|
||||
cat < "$tmpdepfile" > "$depfile"
|
||||
tr ' ' '
|
||||
' < "$tmpdepfile" | \
|
||||
## Some versions of the HPUX 10.20 sed can't process this invocation
|
||||
## correctly. Breaking it into two sed invocations is a workaround.
|
||||
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
dashXmstdout)
|
||||
# This case only exists to satisfy depend.m4. It is never actually
|
||||
# run, as this mode is specially recognized in the preamble.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
makedepend)
|
||||
"$@" || exit $?
|
||||
# Remove any Libtool call
|
||||
if test "$libtool" = yes; then
|
||||
while test $1 != '--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
# X makedepend
|
||||
shift
|
||||
cleared=no
|
||||
for arg in "$@"; do
|
||||
case $cleared in
|
||||
no)
|
||||
set ""; shift
|
||||
cleared=yes ;;
|
||||
esac
|
||||
case "$arg" in
|
||||
-D*|-I*)
|
||||
set fnord "$@" "$arg"; shift ;;
|
||||
# Strip any option that makedepend may not understand. Remove
|
||||
# the object too, otherwise makedepend will parse it as a source file.
|
||||
-*|$object)
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"; shift ;;
|
||||
esac
|
||||
done
|
||||
obj_suffix="`echo $object | sed 's/^.*\././'`"
|
||||
touch "$tmpdepfile"
|
||||
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
|
||||
rm -f "$depfile"
|
||||
cat < "$tmpdepfile" > "$depfile"
|
||||
sed '1,2d' "$tmpdepfile" | tr ' ' '
|
||||
' | \
|
||||
## Some versions of the HPUX 10.20 sed can't process this invocation
|
||||
## correctly. Breaking it into two sed invocations is a workaround.
|
||||
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile" "$tmpdepfile".bak
|
||||
;;
|
||||
|
||||
cpp)
|
||||
# Important note: in order to support this mode, a compiler *must*
|
||||
# always write the preprocessed file to stdout.
|
||||
"$@" || exit $?
|
||||
|
||||
# Remove the call to Libtool.
|
||||
if test "$libtool" = yes; then
|
||||
while test $1 != '--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
|
||||
# Remove `-o $object'.
|
||||
IFS=" "
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-o)
|
||||
shift
|
||||
;;
|
||||
$object)
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
"$@" -E |
|
||||
sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
|
||||
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
|
||||
sed '$ s: \\$::' > "$tmpdepfile"
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
cat < "$tmpdepfile" >> "$depfile"
|
||||
sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
msvisualcpp)
|
||||
# Important note: in order to support this mode, a compiler *must*
|
||||
# always write the preprocessed file to stdout, regardless of -o,
|
||||
# because we must use -o when running libtool.
|
||||
"$@" || exit $?
|
||||
IFS=" "
|
||||
for arg
|
||||
do
|
||||
case "$arg" in
|
||||
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
|
||||
set fnord "$@"
|
||||
shift
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"
|
||||
shift
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
done
|
||||
"$@" -E |
|
||||
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
. "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
|
||||
echo " " >> "$depfile"
|
||||
. "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
none)
|
||||
exec "$@"
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Unknown depmode $depmode" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
# Local Variables:
|
||||
# mode: shell-script
|
||||
# sh-indentation: 2
|
||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-end: "$"
|
||||
# End:
|
63
3party/fribidi/doc/Makefile.am
Normal file
63
3party/fribidi/doc/Makefile.am
Normal file
|
@ -0,0 +1,63 @@
|
|||
dist_man_MANS =
|
||||
dist_noinst_MANS =
|
||||
EXTRA_DIST =
|
||||
MOSTLYCLEANFILES =
|
||||
MAINTAINERCLEANFILES =
|
||||
|
||||
# man3
|
||||
|
||||
includepath =
|
||||
includevpath =
|
||||
headers =
|
||||
inst_symbols =
|
||||
noinst_symbols =
|
||||
|
||||
include $(top_srcdir)/charset/Headers.mk
|
||||
headers += $(libfribidi_char_sets_la_headers)
|
||||
includepath += -I$(top_srcdir)/charset
|
||||
includevpath += :$(top_srcdir)/charset
|
||||
if FRIBIDI_CHARSETS
|
||||
inst_symbols += $(libfribidi_char_sets_la_symbols)
|
||||
else # !FRIBIDI_CHARSETS
|
||||
noinst_symbols += $(libfribidi_char_sets_la_symbols)
|
||||
endif # !FRIBIDI_CHARSETS
|
||||
|
||||
# The lib/Headers.mk stuff should come after all optional stuff.
|
||||
include $(top_srcdir)/lib/Headers.mk
|
||||
headers += $(libfribidi_la_headers)
|
||||
includepath += -I$(top_builddir)/lib -I$(top_srcdir)/lib
|
||||
includevpath += :$(top_builddir)/lib:$(top_srcdir)/lib
|
||||
inst_symbols += $(libfribidi_la_symbols)
|
||||
|
||||
dist_man_MANS += $(inst_symbols:=.3)
|
||||
dist_noinst_MANS += $(noinst_symbols:=.3)
|
||||
EXTRA_DIST += c2man.stamp
|
||||
MOSTLYCLEANFILES += c2man.stamp.tmp
|
||||
MAINTAINERCLEANFILES += $(man3) c2man.stamp
|
||||
|
||||
man3 = $(dist_man_MANS) $(dist_noinst_MANS)
|
||||
|
||||
C2MANFLAGS = $(includepath) \
|
||||
-D__FRIBIDI_DOC \
|
||||
-DDONT_HAVE_FRIBIDI_CONFIG_H \
|
||||
-M "Programmer's Manual" \
|
||||
-m "$(PACKAGE_NAME) $(PACKAGE_VERSION)"
|
||||
|
||||
VPATH += $(includevpath)
|
||||
|
||||
c2man.stamp: $(headers)
|
||||
@$(RM) $@.tmp
|
||||
@touch $@.tmp
|
||||
@($(LN_S) $^ . || cp $^ .)
|
||||
@echo Running c2man
|
||||
@$(top_srcdir)/missing --run c2man -T n $(C2MANFLAGS) $(headers) 2>&1 \
|
||||
|| true
|
||||
@$(RM) $(headers)
|
||||
@mv $@.tmp $@
|
||||
|
||||
$(man3): c2man.stamp
|
||||
@if ! test -f $@; then \
|
||||
$(RM) $<; \
|
||||
$(MAKE) $(AM_MAKEFLAGS) $<;\
|
||||
fi
|
||||
@touch $@
|
477
3party/fribidi/doc/Makefile.in
Normal file
477
3party/fribidi/doc/Makefile.in
Normal file
|
@ -0,0 +1,477 @@
|
|||
# Makefile.in generated by automake 1.10.2 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
DIST_COMMON = $(dist_man_MANS) $(srcdir)/Makefile.am \
|
||||
$(srcdir)/Makefile.in $(top_srcdir)/charset/Headers.mk \
|
||||
$(top_srcdir)/lib/Headers.mk
|
||||
@FRIBIDI_CHARSETS_TRUE@am__append_1 = $(libfribidi_char_sets_la_symbols)
|
||||
@FRIBIDI_CHARSETS_FALSE@am__append_2 = $(libfribidi_char_sets_la_symbols)
|
||||
subdir = doc
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
man3dir = $(mandir)/man3
|
||||
am__installdirs = "$(DESTDIR)$(man3dir)"
|
||||
NROFF = nroff
|
||||
MANS = $(dist_man_MANS)
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
VPATH = @srcdir@ $(includevpath)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMTAR = @AMTAR@
|
||||
AR = @AR@
|
||||
AS = @AS@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
FGREP = @FGREP@
|
||||
FRIBIDI_BINARY_AGE = @FRIBIDI_BINARY_AGE@
|
||||
FRIBIDI_CHARSETS = @FRIBIDI_CHARSETS@
|
||||
FRIBIDI_INTERFACE_AGE = @FRIBIDI_INTERFACE_AGE@
|
||||
FRIBIDI_INTERFACE_VERSION = @FRIBIDI_INTERFACE_VERSION@
|
||||
FRIBIDI_MAJOR_VERSION = @FRIBIDI_MAJOR_VERSION@
|
||||
FRIBIDI_MICRO_VERSION = @FRIBIDI_MICRO_VERSION@
|
||||
FRIBIDI_MINOR_VERSION = @FRIBIDI_MINOR_VERSION@
|
||||
FRIBIDI_NO_DEPRECATED = @FRIBIDI_NO_DEPRECATED@
|
||||
FRIBIDI_USE_GLIB = @FRIBIDI_USE_GLIB@
|
||||
FRIBIDI_VERSION = @FRIBIDI_VERSION@
|
||||
GLIB_CFLAGS = @GLIB_CFLAGS@
|
||||
GLIB_LIBS = @GLIB_LIBS@
|
||||
GREP = @GREP@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@
|
||||
LT_VERSION_INFO = @LT_VERSION_INFO@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MISC_CFLAGS = @MISC_CFLAGS@
|
||||
MISC_LIBS = @MISC_LIBS@
|
||||
MISC_PACKAGES = @MISC_PACKAGES@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
SIZEOF_INT = @SIZEOF_INT@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
lt_ECHO = @lt_ECHO@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
dist_man_MANS = $(inst_symbols:=.3)
|
||||
dist_noinst_MANS = $(noinst_symbols:=.3)
|
||||
EXTRA_DIST = c2man.stamp
|
||||
MOSTLYCLEANFILES = c2man.stamp.tmp
|
||||
MAINTAINERCLEANFILES = $(man3) c2man.stamp
|
||||
|
||||
# man3
|
||||
includepath = -I$(top_srcdir)/charset -I$(top_builddir)/lib \
|
||||
-I$(top_srcdir)/lib
|
||||
includevpath = :$(top_srcdir)/charset \
|
||||
:$(top_builddir)/lib:$(top_srcdir)/lib
|
||||
|
||||
# The lib/Headers.mk stuff should come after all optional stuff.
|
||||
headers = $(libfribidi_char_sets_la_headers) $(libfribidi_la_headers)
|
||||
inst_symbols = $(am__append_1) $(libfribidi_la_symbols)
|
||||
noinst_symbols = $(am__append_2)
|
||||
libfribidi_char_sets_la_headers = \
|
||||
fribidi-char-sets.h \
|
||||
fribidi-char-sets-list.h
|
||||
|
||||
libfribidi_char_sets_la_symbols = \
|
||||
fribidi_charset_to_unicode \
|
||||
fribidi_unicode_to_charset \
|
||||
fribidi_parse_charset
|
||||
|
||||
libfribidi_la_headers = \
|
||||
fribidi-arabic.h \
|
||||
fribidi-begindecls.h \
|
||||
fribidi-bidi.h \
|
||||
fribidi-bidi-types.h \
|
||||
fribidi-bidi-types-list.h \
|
||||
fribidi-common.h \
|
||||
fribidi-deprecated.h \
|
||||
fribidi-enddecls.h \
|
||||
fribidi-flags.h \
|
||||
fribidi-joining.h \
|
||||
fribidi-joining-types.h \
|
||||
fribidi-joining-types-list.h \
|
||||
fribidi-mirroring.h \
|
||||
fribidi-shape.h \
|
||||
fribidi-types.h \
|
||||
fribidi-unicode.h \
|
||||
fribidi-unicode-version.h \
|
||||
fribidi.h
|
||||
|
||||
# fribidi.h should be the last entry in the list above.
|
||||
libfribidi_la_symbols = $(shell cat $(top_srcdir)/lib/fribidi.def)
|
||||
man3 = $(dist_man_MANS) $(dist_noinst_MANS)
|
||||
C2MANFLAGS = $(includepath) \
|
||||
-D__FRIBIDI_DOC \
|
||||
-DDONT_HAVE_FRIBIDI_CONFIG_H \
|
||||
-M "Programmer's Manual" \
|
||||
-m "$(PACKAGE_NAME) $(PACKAGE_VERSION)"
|
||||
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/charset/Headers.mk $(top_srcdir)/lib/Headers.mk $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits doc/Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnits doc/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
install-man3: $(man3_MANS) $(man_MANS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(man3dir)" || $(MKDIR_P) "$(DESTDIR)$(man3dir)"
|
||||
@list='$(man3_MANS) $(dist_man3_MANS) $(nodist_man3_MANS)'; \
|
||||
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
|
||||
for i in $$l2; do \
|
||||
case "$$i" in \
|
||||
*.3*) list="$$list $$i" ;; \
|
||||
esac; \
|
||||
done; \
|
||||
for i in $$list; do \
|
||||
if test -f $$i; then file=$$i; \
|
||||
else file=$(srcdir)/$$i; fi; \
|
||||
ext=`echo $$i | sed -e 's/^.*\\.//'`; \
|
||||
case "$$ext" in \
|
||||
3*) ;; \
|
||||
*) ext='3' ;; \
|
||||
esac; \
|
||||
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
||||
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
||||
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
||||
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man3dir)/$$inst'"; \
|
||||
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man3dir)/$$inst"; \
|
||||
done
|
||||
uninstall-man3:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(man3_MANS) $(dist_man3_MANS) $(nodist_man3_MANS)'; \
|
||||
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
|
||||
for i in $$l2; do \
|
||||
case "$$i" in \
|
||||
*.3*) list="$$list $$i" ;; \
|
||||
esac; \
|
||||
done; \
|
||||
for i in $$list; do \
|
||||
ext=`echo $$i | sed -e 's/^.*\\.//'`; \
|
||||
case "$$ext" in \
|
||||
3*) ;; \
|
||||
*) ext='3' ;; \
|
||||
esac; \
|
||||
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
||||
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
||||
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
||||
echo " rm -f '$(DESTDIR)$(man3dir)/$$inst'"; \
|
||||
rm -f "$(DESTDIR)$(man3dir)/$$inst"; \
|
||||
done
|
||||
tags: TAGS
|
||||
TAGS:
|
||||
|
||||
ctags: CTAGS
|
||||
CTAGS:
|
||||
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(MANS)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(man3dir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-man
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-man: install-man3
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-man
|
||||
|
||||
uninstall-man: uninstall-man3
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
|
||||
distclean distclean-generic distclean-libtool distdir dvi \
|
||||
dvi-am html html-am info info-am install install-am \
|
||||
install-data install-data-am install-dvi install-dvi-am \
|
||||
install-exec install-exec-am install-html install-html-am \
|
||||
install-info install-info-am install-man install-man3 \
|
||||
install-pdf install-pdf-am install-ps install-ps-am \
|
||||
install-strip installcheck installcheck-am installdirs \
|
||||
maintainer-clean maintainer-clean-generic mostlyclean \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
uninstall uninstall-am uninstall-man uninstall-man3
|
||||
|
||||
|
||||
c2man.stamp: $(headers)
|
||||
@$(RM) $@.tmp
|
||||
@touch $@.tmp
|
||||
@($(LN_S) $^ . || cp $^ .)
|
||||
@echo Running c2man
|
||||
@$(top_srcdir)/missing --run c2man -T n $(C2MANFLAGS) $(headers) 2>&1 \
|
||||
|| true
|
||||
@$(RM) $(headers)
|
||||
@mv $@.tmp $@
|
||||
|
||||
$(man3): c2man.stamp
|
||||
@if ! test -f $@; then \
|
||||
$(RM) $<; \
|
||||
$(MAKE) $(AM_MAKEFLAGS) $<;\
|
||||
fi
|
||||
@touch $@
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
0
3party/fribidi/doc/c2man.stamp
Normal file
0
3party/fribidi/doc/c2man.stamp
Normal file
94
3party/fribidi/doc/fribidi_charset_to_unicode.3
Normal file
94
3party/fribidi/doc/fribidi_charset_to_unicode.3
Normal file
|
@ -0,0 +1,94 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_charset_to_unicode" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_charset_to_unicode \- convert string to Unicode
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiStrIndex fribidi_charset_to_unicode
|
||||
.br
|
||||
(
|
||||
.br
|
||||
FriBidiCharSet char_set,
|
||||
.br
|
||||
const char *s,
|
||||
.br
|
||||
FriBidiStrIndex len,
|
||||
.br
|
||||
FriBidiChar *us
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "FriBidiCharSet char_set"
|
||||
Character set to convert from.
|
||||
.sp
|
||||
Possible values for a \fBFriBidiCharSet\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_CHAR_SET_ISO8859_6'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_UTF8\fR
|
||||
UTF-8 (Unicode).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_CAP_RTL\fR
|
||||
CapRTL (Test).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_ISO8859_6\fR
|
||||
ISO8859-6 (Arabic).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_ISO8859_8\fR
|
||||
ISO8859-8 (Hebrew).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_CP1255\fR
|
||||
CP1255 (MS Hebrew/Yiddish).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_CP1256\fR
|
||||
CP1256 (MS Arabic).
|
||||
.RE
|
||||
.PD
|
||||
.TP
|
||||
.B "const char *s"
|
||||
Input string encoded in char_set.
|
||||
.TP
|
||||
.B "FriBidiStrIndex len"
|
||||
Input string length.
|
||||
.TP
|
||||
.B "FriBidiChar *us"
|
||||
Output Unicode string.
|
||||
.SH "DESCRIPTION"
|
||||
This function converts an string from a character set, to a Unicode string.
|
||||
.SH "RETURNS"
|
||||
The length of the new string.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
41
3party/fribidi/doc/fribidi_debug_status.3
Normal file
41
3party/fribidi/doc/fribidi_debug_status.3
Normal file
|
@ -0,0 +1,41 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_debug_status" 3 "5 April 2007" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_debug_status \- FRIBIDI_BEGIN_DECLS should be used at the beginning of your declarations,
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
int fribidi_debug_status(void);
|
||||
.ft R
|
||||
.SH "DESCRIPTION"
|
||||
So that C++ compilers don't mangle their names. Use FRIBIDI_END_DECLS at
|
||||
the end of C declarations.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
118
3party/fribidi/doc/fribidi_get_bidi_type.3
Normal file
118
3party/fribidi/doc/fribidi_get_bidi_type.3
Normal file
|
@ -0,0 +1,118 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_get_bidi_type" 3 "24 November 2008" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_get_bidi_type \- get character bidi type
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiCharType fribidi_get_bidi_type(FriBidiChar ch);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "FriBidiChar ch"
|
||||
Input character.
|
||||
.SH "DESCRIPTION"
|
||||
This function returns the bidi type of a character as defined in Table 3.7
|
||||
Bidirectional Character Types of the Unicode Bidirectional Algorithm
|
||||
available at
|
||||
http://www.unicode.org/reports/tr9/#Bidirectional_Character_Types, using
|
||||
data provided in file UnicodeData.txt of the Unicode Character Database
|
||||
available at http://www.unicode.org/Public/UNIDATA/UnicodeData.txt.
|
||||
|
||||
There are a few macros defined in fribidi-bidi-types.h for querying a bidi
|
||||
type.
|
||||
.SH "RETURNS"
|
||||
Possible values for a \fBFriBidiCharType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_TYPE_LTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LTR\fR
|
||||
Left-To-Right letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RTL\fR
|
||||
Right-To-Left letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AL\fR
|
||||
Arabic Letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_EN\fR
|
||||
European Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AN\fR
|
||||
Arabic Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ES\fR
|
||||
European number Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ET\fR
|
||||
European number Terminator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_CS\fR
|
||||
Common Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_NSM\fR
|
||||
Non Spacing Mark.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BN\fR
|
||||
Boundary Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BS\fR
|
||||
Block Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_SS\fR
|
||||
Segment Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_WS\fR
|
||||
WhiteSpace.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ON\fR
|
||||
Other Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRE\fR
|
||||
Left-to-Right Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLE\fR
|
||||
Right-to-Left Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRO\fR
|
||||
Left-to-Right Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLO\fR
|
||||
Right-to-Left Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_PDF\fR
|
||||
Pop Directional Flag.
|
||||
.RE
|
||||
.PD
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
116
3party/fribidi/doc/fribidi_get_bidi_type_name.3
Normal file
116
3party/fribidi/doc/fribidi_get_bidi_type_name.3
Normal file
|
@ -0,0 +1,116 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_get_bidi_type_name" 3 "24 November 2008" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_get_bidi_type_name \- get bidi type name
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
const char *fribidi_get_bidi_type_name(FriBidiCharType t);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "FriBidiCharType t"
|
||||
Input bidi type.
|
||||
.sp
|
||||
Possible values for a \fBFriBidiCharType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_TYPE_LTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LTR\fR
|
||||
Left-To-Right letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RTL\fR
|
||||
Right-To-Left letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AL\fR
|
||||
Arabic Letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_EN\fR
|
||||
European Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AN\fR
|
||||
Arabic Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ES\fR
|
||||
European number Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ET\fR
|
||||
European number Terminator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_CS\fR
|
||||
Common Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_NSM\fR
|
||||
Non Spacing Mark.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BN\fR
|
||||
Boundary Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BS\fR
|
||||
Block Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_SS\fR
|
||||
Segment Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_WS\fR
|
||||
WhiteSpace.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ON\fR
|
||||
Other Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRE\fR
|
||||
Left-to-Right Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLE\fR
|
||||
Right-to-Left Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRO\fR
|
||||
Left-to-Right Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLO\fR
|
||||
Right-to-Left Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_PDF\fR
|
||||
Pop Directional Flag.
|
||||
.RE
|
||||
.PD
|
||||
.SH "DESCRIPTION"
|
||||
This function returns the bidi type name of a character type. The
|
||||
returned string is a static string and should not be freed.
|
||||
|
||||
The type names are the same as ones defined in Table 3.7 Bidirectional
|
||||
Character Types of the Unicode Bidirectional Algorithm available at
|
||||
http://www.unicode.org/reports/tr9/#Bidirectional_Character_Types, with a
|
||||
few modifications: L->LTR, R->RTL, B->BS, S->SS.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
128
3party/fribidi/doc/fribidi_get_bidi_types.3
Normal file
128
3party/fribidi/doc/fribidi_get_bidi_types.3
Normal file
|
@ -0,0 +1,128 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_get_bidi_types" 3 "24 November 2008" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_get_bidi_types \- get bidi types for an string of characters
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
void fribidi_get_bidi_types
|
||||
.br
|
||||
(
|
||||
.br
|
||||
const FriBidiChar *str,
|
||||
.br
|
||||
const FriBidiStrIndex len,
|
||||
.br
|
||||
FriBidiCharType *btypes
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "const FriBidiChar *str"
|
||||
Input string.
|
||||
.TP
|
||||
.B "const FriBidiStrIndex len"
|
||||
Input string length.
|
||||
.TP
|
||||
.B "FriBidiCharType *btypes"
|
||||
Output bidi types.
|
||||
.sp
|
||||
Possible values for a \fBFriBidiCharType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_TYPE_LTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LTR\fR
|
||||
Left-To-Right letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RTL\fR
|
||||
Right-To-Left letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AL\fR
|
||||
Arabic Letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_EN\fR
|
||||
European Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AN\fR
|
||||
Arabic Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ES\fR
|
||||
European number Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ET\fR
|
||||
European number Terminator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_CS\fR
|
||||
Common Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_NSM\fR
|
||||
Non Spacing Mark.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BN\fR
|
||||
Boundary Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BS\fR
|
||||
Block Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_SS\fR
|
||||
Segment Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_WS\fR
|
||||
WhiteSpace.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ON\fR
|
||||
Other Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRE\fR
|
||||
Left-to-Right Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLE\fR
|
||||
Right-to-Left Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRO\fR
|
||||
Left-to-Right Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLO\fR
|
||||
Right-to-Left Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_PDF\fR
|
||||
Pop Directional Flag.
|
||||
.RE
|
||||
.PD
|
||||
.SH "DESCRIPTION"
|
||||
This function finds the bidi types of an string of characters. See
|
||||
fribidi_get_bidi_type() for more information about the bidi types returned
|
||||
by this function.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
83
3party/fribidi/doc/fribidi_get_joining_type.3
Normal file
83
3party/fribidi/doc/fribidi_get_joining_type.3
Normal file
|
@ -0,0 +1,83 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_get_joining_type" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_get_joining_type \- get character joining type
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiJoiningType fribidi_get_joining_type(FriBidiChar ch);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "FriBidiChar ch"
|
||||
Input character.
|
||||
.SH "DESCRIPTION"
|
||||
This function returns the joining type of a character as defined in Table
|
||||
8-2 Primary Arabic Joining Classes of the Unicode standard available at
|
||||
http://www.unicode.org/versions/Unicode4.0.0/ch08.pdf#G7462, using data
|
||||
provided in file ArabicShaping.txt and UnicodeData.txt of the Unicode
|
||||
Character Database available at
|
||||
http://www.unicode.org/Public/UNIDATA/ArabicShaping.txt and
|
||||
http://www.unicode.org/Public/UNIDATA/UnicodeData.txt.
|
||||
|
||||
There are a few macros defined in fribidi-joining-types.h for querying a
|
||||
joining type.
|
||||
.SH "RETURNS"
|
||||
Possible values for a \fBFriBidiJoiningType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_JOINING_TYPE_U'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_U\fR
|
||||
NUn-joining, e.g. Full Stop.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_R\fR
|
||||
Right-joining, e.g. Arabic Letter Dal.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_D\fR
|
||||
Dual-joining, e.g. Arabic Letter Ain.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_C\fR
|
||||
Join-Causing, e.g. Tatweel, ZWJ.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_T\fR
|
||||
Transparent, e.g. Arabic Fatha.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_L\fR
|
||||
Left-joining, i.e. Fictional.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_G\fR
|
||||
IGnored, e.g. LRE, RLE, ZWNBSP.
|
||||
.RE
|
||||
.PD
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
79
3party/fribidi/doc/fribidi_get_joining_type_name.3
Normal file
79
3party/fribidi/doc/fribidi_get_joining_type_name.3
Normal file
|
@ -0,0 +1,79 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_get_joining_type_name" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_get_joining_type_name \- get joining type name
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
const char *fribidi_get_joining_type_name(FriBidiJoiningType j);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "FriBidiJoiningType j"
|
||||
Input joining type.
|
||||
.sp
|
||||
Possible values for a \fBFriBidiJoiningType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_JOINING_TYPE_U'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_U\fR
|
||||
NUn-joining, e.g. Full Stop.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_R\fR
|
||||
Right-joining, e.g. Arabic Letter Dal.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_D\fR
|
||||
Dual-joining, e.g. Arabic Letter Ain.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_C\fR
|
||||
Join-Causing, e.g. Tatweel, ZWJ.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_T\fR
|
||||
Transparent, e.g. Arabic Fatha.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_L\fR
|
||||
Left-joining, i.e. Fictional.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_G\fR
|
||||
IGnored, e.g. LRE, RLE, ZWNBSP.
|
||||
.RE
|
||||
.PD
|
||||
.SH "DESCRIPTION"
|
||||
This function returns the joining type name of a joining type. The
|
||||
returned string is a static string and should not be freed.
|
||||
|
||||
The type names are the same as ones defined in Table 8-2 Primary Arabic
|
||||
Joining Classes of the Unicode standard available at
|
||||
http://www.unicode.org/versions/Unicode4.0.0/ch08.pdf#G7462.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
92
3party/fribidi/doc/fribidi_get_joining_types.3
Normal file
92
3party/fribidi/doc/fribidi_get_joining_types.3
Normal file
|
@ -0,0 +1,92 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_get_joining_types" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_get_joining_types \- get joining types for an string of characters
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
void fribidi_get_joining_types
|
||||
.br
|
||||
(
|
||||
.br
|
||||
const FriBidiChar *str,
|
||||
.br
|
||||
const FriBidiStrIndex len,
|
||||
.br
|
||||
FriBidiJoiningType *jtypes
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "const FriBidiChar *str"
|
||||
Input string.
|
||||
.TP
|
||||
.B "const FriBidiStrIndex len"
|
||||
Input string length.
|
||||
.TP
|
||||
.B "FriBidiJoiningType *jtypes"
|
||||
Output joining types.
|
||||
.sp
|
||||
Possible values for a \fBFriBidiJoiningType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_JOINING_TYPE_U'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_U\fR
|
||||
NUn-joining, e.g. Full Stop.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_R\fR
|
||||
Right-joining, e.g. Arabic Letter Dal.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_D\fR
|
||||
Dual-joining, e.g. Arabic Letter Ain.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_C\fR
|
||||
Join-Causing, e.g. Tatweel, ZWJ.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_T\fR
|
||||
Transparent, e.g. Arabic Fatha.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_L\fR
|
||||
Left-joining, i.e. Fictional.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_JOINING_TYPE_G\fR
|
||||
IGnored, e.g. LRE, RLE, ZWNBSP.
|
||||
.RE
|
||||
.PD
|
||||
.SH "DESCRIPTION"
|
||||
This function finds the joining types of an string of characters. See
|
||||
fribidi_get_joining_type for more information about the joining types
|
||||
returned by this function.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
64
3party/fribidi/doc/fribidi_get_mirror_char.3
Normal file
64
3party/fribidi/doc/fribidi_get_mirror_char.3
Normal file
|
@ -0,0 +1,64 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_get_mirror_char" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_get_mirror_char \- get mirrored character
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
fribidi_boolean fribidi_get_mirror_char
|
||||
.br
|
||||
(
|
||||
.br
|
||||
FriBidiChar ch,
|
||||
.br
|
||||
FriBidiChar *mirrored_ch
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "FriBidiChar ch"
|
||||
Input character.
|
||||
.TP
|
||||
.B "FriBidiChar *mirrored_ch"
|
||||
Output mirrored character.
|
||||
.SH "DESCRIPTION"
|
||||
This function finds the mirrored equivalent of a character as defined in
|
||||
the file BidiMirroring.txt of the Unicode Character Database available at
|
||||
http://www.unicode.org/Public/UNIDATA/BidiMirroring.txt.
|
||||
|
||||
If the input character is a declared as a mirroring character in the
|
||||
Unicode standard and has a mirrored equivalent. The matching mirrored
|
||||
character is put in the output, otherwise the input character itself is
|
||||
put.
|
||||
.SH "RETURNS"
|
||||
If the character has a mirroring equivalent or not.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
160
3party/fribidi/doc/fribidi_get_par_direction.3
Normal file
160
3party/fribidi/doc/fribidi_get_par_direction.3
Normal file
|
@ -0,0 +1,160 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_get_par_direction" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_get_par_direction \- get base paragraph direction
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiParType fribidi_get_par_direction
|
||||
.br
|
||||
(
|
||||
.br
|
||||
const FriBidiCharType *bidi_types,
|
||||
.br
|
||||
const FriBidiStrIndex len
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "const FriBidiCharType *bidi_types"
|
||||
Input list of bidi types as returned by
|
||||
fribidi_get_bidi_types().
|
||||
.sp
|
||||
Possible values for a \fBconst FriBidiCharType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_TYPE_LTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LTR\fR
|
||||
Left-To-Right letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RTL\fR
|
||||
Right-To-Left letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AL\fR
|
||||
Arabic Letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_EN\fR
|
||||
European Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AN\fR
|
||||
Arabic Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ES\fR
|
||||
European number Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ET\fR
|
||||
European number Terminator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_CS\fR
|
||||
Common Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_NSM\fR
|
||||
Non Spacing Mark.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BN\fR
|
||||
Boundary Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BS\fR
|
||||
Block Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_SS\fR
|
||||
Segment Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_WS\fR
|
||||
WhiteSpace.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ON\fR
|
||||
Other Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRE\fR
|
||||
Left-to-Right Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLE\fR
|
||||
Right-to-Left Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRO\fR
|
||||
Left-to-Right Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLO\fR
|
||||
Right-to-Left Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_PDF\fR
|
||||
Pop Directional Flag.
|
||||
.RE
|
||||
.PD
|
||||
.TP
|
||||
.B "const FriBidiStrIndex len"
|
||||
Input string length.
|
||||
.SH "DESCRIPTION"
|
||||
This function finds the base direction of a single paragraph,
|
||||
as defined by rule P2 of the Unicode Bidirectional Algorithm available at
|
||||
http://www.unicode.org/reports/tr9/#P2.
|
||||
|
||||
You typically do not need this function as
|
||||
fribidi_get_par_embedding_levels() knows how to compute base direction
|
||||
itself, but you may need this to implement a more sophisticated paragraph
|
||||
direction handling. Note that you can pass more than a paragraph to this
|
||||
function and the direction of the first non-neutral paragraph is returned,
|
||||
which is a very good heuristic to set direction of the neutral paragraphs
|
||||
at the beginning of text. For other neutral paragraphs, you better use the
|
||||
direction of the previous paragraph.
|
||||
.SH "RETURNS"
|
||||
Base pargraph direction. No weak paragraph direction is returned,
|
||||
only LTR, RTL, or ON.
|
||||
.sp
|
||||
Possible values for a \fBFriBidiParType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_PAR_WLTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_LTR\fR
|
||||
Left-To-Right paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_RTL\fR
|
||||
Right-To-Left paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_ON\fR
|
||||
DirectiOn-Neutral paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_WLTR\fR
|
||||
Weak Left To Right paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_WRTL\fR
|
||||
Weak Right To Left paragraph.
|
||||
.RE
|
||||
.PD
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
168
3party/fribidi/doc/fribidi_get_par_embedding_levels.3
Normal file
168
3party/fribidi/doc/fribidi_get_par_embedding_levels.3
Normal file
|
@ -0,0 +1,168 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_get_par_embedding_levels" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_get_par_embedding_levels \- get bidi embedding levels of a paragraph
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiLevel fribidi_get_par_embedding_levels
|
||||
.br
|
||||
(
|
||||
.br
|
||||
const FriBidiCharType *bidi_types,
|
||||
.br
|
||||
const FriBidiStrIndex len,
|
||||
.br
|
||||
FriBidiParType *pbase_dir,
|
||||
.br
|
||||
FriBidiLevel *embedding_levels
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "const FriBidiCharType *bidi_types"
|
||||
Input list of bidi types as returned by
|
||||
fribidi_get_bidi_types().
|
||||
.sp
|
||||
Possible values for a \fBconst FriBidiCharType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_TYPE_LTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LTR\fR
|
||||
Left-To-Right letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RTL\fR
|
||||
Right-To-Left letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AL\fR
|
||||
Arabic Letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_EN\fR
|
||||
European Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AN\fR
|
||||
Arabic Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ES\fR
|
||||
European number Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ET\fR
|
||||
European number Terminator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_CS\fR
|
||||
Common Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_NSM\fR
|
||||
Non Spacing Mark.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BN\fR
|
||||
Boundary Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BS\fR
|
||||
Block Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_SS\fR
|
||||
Segment Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_WS\fR
|
||||
WhiteSpace.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ON\fR
|
||||
Other Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRE\fR
|
||||
Left-to-Right Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLE\fR
|
||||
Right-to-Left Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRO\fR
|
||||
Left-to-Right Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLO\fR
|
||||
Right-to-Left Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_PDF\fR
|
||||
Pop Directional Flag.
|
||||
.RE
|
||||
.PD
|
||||
.TP
|
||||
.B "const FriBidiStrIndex len"
|
||||
Input string length of the paragraph.
|
||||
.TP
|
||||
.B "FriBidiParType *pbase_dir"
|
||||
Requested and resolved paragraph
|
||||
base direction.
|
||||
.sp
|
||||
Possible values for a \fBFriBidiParType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_PAR_WLTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_LTR\fR
|
||||
Left-To-Right paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_RTL\fR
|
||||
Right-To-Left paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_ON\fR
|
||||
DirectiOn-Neutral paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_WLTR\fR
|
||||
Weak Left To Right paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_WRTL\fR
|
||||
Weak Right To Left paragraph.
|
||||
.RE
|
||||
.PD
|
||||
.TP
|
||||
.B "FriBidiLevel *embedding_levels"
|
||||
Output list of embedding levels.
|
||||
.SH "DESCRIPTION"
|
||||
This function finds the bidi embedding levels of a single paragraph,
|
||||
as defined by the Unicode Bidirectional Algorithm available at
|
||||
http://www.unicode.org/reports/tr9/. This function implements rules P2 to
|
||||
I1 inclusive, and parts 1 to 3 of L1, except for rule X9 which is
|
||||
implemented in fribidi_remove_bidi_marks(). Part 4 of L1 is implemented
|
||||
in fribidi_reorder_line().
|
||||
|
||||
There are a few macros defined in fribidi-bidi-types.h to work with this
|
||||
embedding levels.
|
||||
.SH "RETURNS"
|
||||
Maximum level found plus one, or zero if any error occured
|
||||
(memory allocation failure most probably).
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
110
3party/fribidi/doc/fribidi_get_type.3
Normal file
110
3party/fribidi/doc/fribidi_get_type.3
Normal file
|
@ -0,0 +1,110 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_get_type" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_get_type \- get character bidi type
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiCharType fribidi_get_type(FriBidiChar ch);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "FriBidiChar ch"
|
||||
Input character.
|
||||
.SH "DESCRIPTION"
|
||||
Deprecated. Replaced by fribidi_get_bidi_type.
|
||||
.SH "RETURNS"
|
||||
Possible values for a \fBFriBidiCharType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_TYPE_LTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LTR\fR
|
||||
Left-To-Right letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RTL\fR
|
||||
Right-To-Left letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AL\fR
|
||||
Arabic Letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_EN\fR
|
||||
European Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AN\fR
|
||||
Arabic Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ES\fR
|
||||
European number Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ET\fR
|
||||
European number Terminator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_CS\fR
|
||||
Common Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_NSM\fR
|
||||
Non Spacing Mark.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BN\fR
|
||||
Boundary Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BS\fR
|
||||
Block Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_SS\fR
|
||||
Segment Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_WS\fR
|
||||
WhiteSpace.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ON\fR
|
||||
Other Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRE\fR
|
||||
Left-to-Right Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLE\fR
|
||||
Right-to-Left Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRO\fR
|
||||
Left-to-Right Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLO\fR
|
||||
Right-to-Left Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_PDF\fR
|
||||
Pop Directional Flag.
|
||||
.RE
|
||||
.PD
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
110
3party/fribidi/doc/fribidi_get_type_internal.3
Normal file
110
3party/fribidi/doc/fribidi_get_type_internal.3
Normal file
|
@ -0,0 +1,110 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_get_type_internal" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_get_type_internal \- get character bidi type
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiCharType fribidi_get_type_internal(FriBidiChar ch);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "FriBidiChar ch"
|
||||
Input character.
|
||||
.SH "DESCRIPTION"
|
||||
Deprecated. Replaced by fribidi_get_bidi_type.
|
||||
.SH "RETURNS"
|
||||
Possible values for a \fBFriBidiCharType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_TYPE_LTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LTR\fR
|
||||
Left-To-Right letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RTL\fR
|
||||
Right-To-Left letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AL\fR
|
||||
Arabic Letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_EN\fR
|
||||
European Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AN\fR
|
||||
Arabic Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ES\fR
|
||||
European number Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ET\fR
|
||||
European number Terminator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_CS\fR
|
||||
Common Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_NSM\fR
|
||||
Non Spacing Mark.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BN\fR
|
||||
Boundary Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BS\fR
|
||||
Block Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_SS\fR
|
||||
Segment Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_WS\fR
|
||||
WhiteSpace.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ON\fR
|
||||
Other Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRE\fR
|
||||
Left-to-Right Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLE\fR
|
||||
Right-to-Left Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRO\fR
|
||||
Left-to-Right Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLO\fR
|
||||
Right-to-Left Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_PDF\fR
|
||||
Pop Directional Flag.
|
||||
.RE
|
||||
.PD
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
152
3party/fribidi/doc/fribidi_join_arabic.3
Normal file
152
3party/fribidi/doc/fribidi_join_arabic.3
Normal file
|
@ -0,0 +1,152 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_join_arabic" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_join_arabic \- do Arabic joining
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
void fribidi_join_arabic
|
||||
.br
|
||||
(
|
||||
.br
|
||||
const FriBidiCharType *bidi_types,
|
||||
.br
|
||||
const FriBidiStrIndex len,
|
||||
.br
|
||||
const FriBidiLevel *embedding_levels,
|
||||
.br
|
||||
FriBidiArabicProp *ar_props
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "const FriBidiCharType *bidi_types"
|
||||
Input list of bidi types as
|
||||
returned by
|
||||
fribidi_get_bidi_types().
|
||||
.sp
|
||||
Possible values for a \fBconst FriBidiCharType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_TYPE_LTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LTR\fR
|
||||
Left-To-Right letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RTL\fR
|
||||
Right-To-Left letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AL\fR
|
||||
Arabic Letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_EN\fR
|
||||
European Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AN\fR
|
||||
Arabic Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ES\fR
|
||||
European number Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ET\fR
|
||||
European number Terminator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_CS\fR
|
||||
Common Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_NSM\fR
|
||||
Non Spacing Mark.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BN\fR
|
||||
Boundary Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BS\fR
|
||||
Block Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_SS\fR
|
||||
Segment Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_WS\fR
|
||||
WhiteSpace.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ON\fR
|
||||
Other Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRE\fR
|
||||
Left-to-Right Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLE\fR
|
||||
Right-to-Left Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRO\fR
|
||||
Left-to-Right Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLO\fR
|
||||
Right-to-Left Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_PDF\fR
|
||||
Pop Directional Flag.
|
||||
.RE
|
||||
.PD
|
||||
.TP
|
||||
.B "const FriBidiStrIndex len"
|
||||
Input string length.
|
||||
.TP
|
||||
.B "const FriBidiLevel *embedding_levels"
|
||||
Input list of embedding
|
||||
levels, as returned by
|
||||
fribidi_get_par_embedding_levels.
|
||||
.TP
|
||||
.B "FriBidiArabicProp *ar_props"
|
||||
Arabic properties to analyze, initilized by
|
||||
joining types, as returned by
|
||||
fribidi_get_joining_types.
|
||||
.SH "DESCRIPTION"
|
||||
This function does the Arabic joining algorithm. Means, given Arabic
|
||||
joining types of the characters in ar_props (don't worry,
|
||||
FriBidiJoiningType can be casted to FriBidiArabicProp automagically), this
|
||||
function modifies this properties to grasp the effect of neighboring
|
||||
characters. You probably need this information later to do Arabic shaping.
|
||||
|
||||
This function implements rules R1 to R7 inclusive (all rules) of the Arabic
|
||||
Cursive Joining algorithm of the Unicode standard as available at
|
||||
http://www.unicode.org/versions/Unicode4.0.0/ch08.pdf#G7462. It also
|
||||
interacts correctly with the bidirection algorithm as defined in Section
|
||||
.br
|
||||
3.5 Shaping of the Unicode Bidirectional Algorithm available at
|
||||
http://www.unicode.org/reports/tr9/#Shaping.
|
||||
|
||||
There are a few macros defined in fribidi-joining-types.h for querying the
|
||||
Arabic properties computed by this function.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
120
3party/fribidi/doc/fribidi_log2vis.3
Normal file
120
3party/fribidi/doc/fribidi_log2vis.3
Normal file
|
@ -0,0 +1,120 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_log2vis" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_log2vis \- get visual string
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiLevel fribidi_log2vis
|
||||
.br
|
||||
(
|
||||
.br
|
||||
const FriBidiChar *str,
|
||||
.br
|
||||
const FriBidiStrIndex len,
|
||||
.br
|
||||
FriBidiParType *pbase_dir,
|
||||
.br
|
||||
FriBidiChar *visual_str,
|
||||
.br
|
||||
FriBidiStrIndex *positions_L_to_V,
|
||||
.br
|
||||
FriBidiStrIndex *positions_V_to_L,
|
||||
.br
|
||||
FriBidiLevel *embedding_levels
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "const FriBidiChar *str"
|
||||
Input logical string.
|
||||
.TP
|
||||
.B "const FriBidiStrIndex len"
|
||||
Input string length.
|
||||
.TP
|
||||
.B "FriBidiParType *pbase_dir"
|
||||
Requested and resolved paragraph
|
||||
base direction.
|
||||
.sp
|
||||
Possible values for a \fBFriBidiParType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_PAR_WLTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_LTR\fR
|
||||
Left-To-Right paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_RTL\fR
|
||||
Right-To-Left paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_ON\fR
|
||||
DirectiOn-Neutral paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_WLTR\fR
|
||||
Weak Left To Right paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_WRTL\fR
|
||||
Weak Right To Left paragraph.
|
||||
.RE
|
||||
.PD
|
||||
.TP
|
||||
.B "FriBidiChar *visual_str"
|
||||
Output visual string.
|
||||
.TP
|
||||
.B "FriBidiStrIndex *positions_L_to_V"
|
||||
Output mapping from logical to
|
||||
visual string positions.
|
||||
.TP
|
||||
.B "FriBidiStrIndex *positions_V_to_L"
|
||||
Output mapping from visual string
|
||||
back to the logical string
|
||||
positions.
|
||||
.TP
|
||||
.B "FriBidiLevel *embedding_levels"
|
||||
Output list of embedding levels.
|
||||
.SH "DESCRIPTION"
|
||||
This function converts the logical input string to the visual output
|
||||
strings as specified by the Unicode Bidirectional Algorithm. As a side
|
||||
effect it also generates mapping lists between the two strings, and the
|
||||
list of embedding levels as defined by the algorithm.
|
||||
|
||||
If NULL is passed as any of the the lists, the list is ignored and not
|
||||
filled.
|
||||
|
||||
This function is obsolete because it only handles one-line paragraphs.
|
||||
Please consider using other functions instead. Deprecated.
|
||||
.SH "RETURNS"
|
||||
Maximum level found plus one, or zero if any error occured
|
||||
(memory allocation failure most probably).
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
157
3party/fribidi/doc/fribidi_log2vis_get_embedding_levels.3
Normal file
157
3party/fribidi/doc/fribidi_log2vis_get_embedding_levels.3
Normal file
|
@ -0,0 +1,157 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_log2vis_get_embedding_levels" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_log2vis_get_embedding_levels \- get embedding levels
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiLevel fribidi_log2vis_get_embedding_levels
|
||||
.br
|
||||
(
|
||||
.br
|
||||
const FriBidiCharType *bidi_types,
|
||||
.br
|
||||
const FriBidiStrIndex len,
|
||||
.br
|
||||
FriBidiParType *pbase_dir,
|
||||
.br
|
||||
FriBidiLevel *embedding_levels
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "const FriBidiCharType *bidi_types"
|
||||
Input list of bidi types as returned by
|
||||
fribidi_get_bidi_types().
|
||||
.sp
|
||||
Possible values for a \fBconst FriBidiCharType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_TYPE_LTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LTR\fR
|
||||
Left-To-Right letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RTL\fR
|
||||
Right-To-Left letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AL\fR
|
||||
Arabic Letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_EN\fR
|
||||
European Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AN\fR
|
||||
Arabic Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ES\fR
|
||||
European number Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ET\fR
|
||||
European number Terminator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_CS\fR
|
||||
Common Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_NSM\fR
|
||||
Non Spacing Mark.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BN\fR
|
||||
Boundary Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BS\fR
|
||||
Block Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_SS\fR
|
||||
Segment Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_WS\fR
|
||||
WhiteSpace.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ON\fR
|
||||
Other Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRE\fR
|
||||
Left-to-Right Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLE\fR
|
||||
Right-to-Left Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRO\fR
|
||||
Left-to-Right Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLO\fR
|
||||
Right-to-Left Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_PDF\fR
|
||||
Pop Directional Flag.
|
||||
.RE
|
||||
.PD
|
||||
.TP
|
||||
.B "const FriBidiStrIndex len"
|
||||
Input string length of the paragraph.
|
||||
.TP
|
||||
.B "FriBidiParType *pbase_dir"
|
||||
Requested and resolved paragraph
|
||||
base direction.
|
||||
.sp
|
||||
Possible values for a \fBFriBidiParType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_PAR_WLTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_LTR\fR
|
||||
Left-To-Right paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_RTL\fR
|
||||
Right-To-Left paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_ON\fR
|
||||
DirectiOn-Neutral paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_WLTR\fR
|
||||
Weak Left To Right paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_WRTL\fR
|
||||
Weak Right To Left paragraph.
|
||||
.RE
|
||||
.PD
|
||||
.TP
|
||||
.B "FriBidiLevel *embedding_levels"
|
||||
Output list of embedding levels.
|
||||
.SH "DESCRIPTION"
|
||||
Deprecated. Replaced by fribidi_get_par_embedding_levels.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
40
3party/fribidi/doc/fribidi_mirroring_status.3
Normal file
40
3party/fribidi/doc/fribidi_mirroring_status.3
Normal file
|
@ -0,0 +1,40 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_mirroring_status" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_mirroring_status \- get current mirroring status
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
fribidi_boolean fribidi_mirroring_status(void);
|
||||
.ft R
|
||||
.SH "DESCRIPTION"
|
||||
This function is deprecated and only used with other deprecated functions.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
74
3party/fribidi/doc/fribidi_parse_charset.3
Normal file
74
3party/fribidi/doc/fribidi_parse_charset.3
Normal file
|
@ -0,0 +1,74 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_parse_charset" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_parse_charset \- parse character set name
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiCharSet fribidi_parse_charset(const char *s);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "const char *s"
|
||||
Input name of the character set.
|
||||
.SH "DESCRIPTION"
|
||||
Parse character set name.
|
||||
.SH "RETURNS"
|
||||
The character set named s, or FRIBIDI_CHAR_SET_NOT_FOUND if the
|
||||
character set is not available.
|
||||
.sp
|
||||
Possible values for a \fBFriBidiCharSet\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_CHAR_SET_ISO8859_6'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_UTF8\fR
|
||||
UTF-8 (Unicode).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_CAP_RTL\fR
|
||||
CapRTL (Test).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_ISO8859_6\fR
|
||||
ISO8859-6 (Arabic).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_ISO8859_8\fR
|
||||
ISO8859-8 (Hebrew).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_CP1255\fR
|
||||
CP1255 (MS Hebrew/Yiddish).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_CP1256\fR
|
||||
CP1256 (MS Arabic).
|
||||
.RE
|
||||
.PD
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
92
3party/fribidi/doc/fribidi_remove_bidi_marks.3
Normal file
92
3party/fribidi/doc/fribidi_remove_bidi_marks.3
Normal file
|
@ -0,0 +1,92 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_remove_bidi_marks" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_remove_bidi_marks \- remove bidi marks out of an string
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiStrIndex fribidi_remove_bidi_marks
|
||||
.br
|
||||
(
|
||||
.br
|
||||
FriBidiChar *str,
|
||||
.br
|
||||
const FriBidiStrIndex len,
|
||||
.br
|
||||
FriBidiStrIndex *positions_to_this,
|
||||
.br
|
||||
FriBidiStrIndex *position_from_this_list,
|
||||
.br
|
||||
FriBidiLevel *embedding_levels
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "FriBidiChar *str"
|
||||
Input string to clean.
|
||||
.TP
|
||||
.B "const FriBidiStrIndex len"
|
||||
Input string length.
|
||||
.TP
|
||||
.B "FriBidiStrIndex *positions_to_this"
|
||||
List mapping positions to the
|
||||
order used in str.
|
||||
.TP
|
||||
.B "FriBidiStrIndex *position_from_this_list"
|
||||
List mapping positions from the
|
||||
order used in str.
|
||||
.TP
|
||||
.B "FriBidiLevel *embedding_levels"
|
||||
List of embedding levels.
|
||||
.SH "DESCRIPTION"
|
||||
This function removes the bidi and boundary-neutral marks out of an string
|
||||
and the accompanying lists. It implements rule X9 of the Unicode
|
||||
Bidirectional Algorithm available at
|
||||
http://www.unicode.org/reports/tr9/#X9, with the exception that it removes
|
||||
U+200E LEFT-TO-RIGHT MARK and U+200F RIGHT-TO-LEFT MARK too.
|
||||
|
||||
If any of the input lists are NULL, the list is skipped. If str is the
|
||||
visual string, then positions_to_this is positions_L_to_V and
|
||||
position_from_this_list is positions_V_to_L; if str is the logical
|
||||
string, the other way. Moreover, the position maps should be filled with
|
||||
valid entries.
|
||||
|
||||
A position map pointing to a removed character is filled with -1. By the
|
||||
way, you should not use embedding_levels if str is visual string.
|
||||
|
||||
For best results this function should be run on a whole paragraph, not
|
||||
lines; but feel free to do otherwise if you know what you are doing.
|
||||
Deprecated. Use fribidi_remove_special_chars instead.
|
||||
.SH "RETURNS"
|
||||
New length of the string, or -1 if an error occured (memory
|
||||
allocation failure most probably).
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
206
3party/fribidi/doc/fribidi_reorder_line.3
Normal file
206
3party/fribidi/doc/fribidi_reorder_line.3
Normal file
|
@ -0,0 +1,206 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_reorder_line" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_reorder_line \- reorder a line of logical string to visual
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiLevel fribidi_reorder_line
|
||||
.br
|
||||
(
|
||||
.br
|
||||
FriBidiFlags flags,
|
||||
.br
|
||||
const FriBidiCharType *bidi_types,
|
||||
.br
|
||||
const FriBidiStrIndex len,
|
||||
.br
|
||||
const FriBidiStrIndex off,
|
||||
.br
|
||||
const FriBidiParType base_dir,
|
||||
.br
|
||||
FriBidiLevel *embedding_levels,
|
||||
.br
|
||||
FriBidiChar *visual_str,
|
||||
.br
|
||||
FriBidiStrIndex *map
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "FriBidiFlags flags"
|
||||
Reorder flags.
|
||||
.TP
|
||||
.B "const FriBidiCharType *bidi_types"
|
||||
Input list of bidi types as returned by
|
||||
fribidi_get_bidi_types().
|
||||
.sp
|
||||
Possible values for a \fBconst FriBidiCharType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_TYPE_LTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LTR\fR
|
||||
Left-To-Right letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RTL\fR
|
||||
Right-To-Left letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AL\fR
|
||||
Arabic Letter.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_EN\fR
|
||||
European Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_AN\fR
|
||||
Arabic Numeral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ES\fR
|
||||
European number Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ET\fR
|
||||
European number Terminator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_CS\fR
|
||||
Common Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_NSM\fR
|
||||
Non Spacing Mark.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BN\fR
|
||||
Boundary Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_BS\fR
|
||||
Block Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_SS\fR
|
||||
Segment Separator.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_WS\fR
|
||||
WhiteSpace.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_ON\fR
|
||||
Other Neutral.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRE\fR
|
||||
Left-to-Right Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLE\fR
|
||||
Right-to-Left Embedding.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_LRO\fR
|
||||
Left-to-Right Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_RLO\fR
|
||||
Right-to-Left Override.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_TYPE_PDF\fR
|
||||
Pop Directional Flag.
|
||||
.RE
|
||||
.PD
|
||||
.TP
|
||||
.B "const FriBidiStrIndex len"
|
||||
Input length of the line.
|
||||
.TP
|
||||
.B "const FriBidiStrIndex off"
|
||||
Input offset of the beginning of the line
|
||||
in the paragraph.
|
||||
.TP
|
||||
.B "const FriBidiParType base_dir"
|
||||
Resolved paragraph base direction.
|
||||
.sp
|
||||
Possible values for a \fBconst FriBidiParType\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_PAR_WLTR'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_LTR\fR
|
||||
Left-To-Right paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_RTL\fR
|
||||
Right-To-Left paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_ON\fR
|
||||
DirectiOn-Neutral paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_WLTR\fR
|
||||
Weak Left To Right paragraph.
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_PAR_WRTL\fR
|
||||
Weak Right To Left paragraph.
|
||||
.RE
|
||||
.PD
|
||||
.TP
|
||||
.B "FriBidiLevel *embedding_levels"
|
||||
Input list of embedding levels,
|
||||
as returned by
|
||||
fribidi_get_par_embedding_levels.
|
||||
.TP
|
||||
.B "FriBidiChar *visual_str"
|
||||
Visual string to reorder.
|
||||
.TP
|
||||
.B "FriBidiStrIndex *map"
|
||||
A map of string indices which is reordered
|
||||
to reflect where each glyph ends up.
|
||||
.SH "DESCRIPTION"
|
||||
This function reorders the characters in a line of text from logical to
|
||||
final visual order. This function implements part 4 of rule L1, and rules
|
||||
L2 and L3 of the Unicode Bidirectional Algorithm available at
|
||||
http://www.unicode.org/reports/tr9/#Reordering_Resolved_Levels.
|
||||
|
||||
As a side effect it also sets position maps if not NULL.
|
||||
|
||||
You should provide the resolved paragraph direction and embedding levels as
|
||||
set by fribidi_get_par_embedding_levels(). Also note that the embedding
|
||||
levels may change a bit. To be exact, the embedding level of any sequence
|
||||
of white space at the end of line is reset to the paragraph embedding level
|
||||
(That is part 4 of rule L1).
|
||||
|
||||
Note that the bidi types and embedding levels are not reordered. You can
|
||||
reorder these (or any other) arrays using the map later. The user is
|
||||
responsible to initialize map to something sensible, like an identity
|
||||
mapping, or pass NULL if no map is needed.
|
||||
|
||||
There is an optional part to this function, which is whether non-spacing
|
||||
marks for right-to-left parts of the text should be reordered to come after
|
||||
their base characters in the visual string or not. Most rendering engines
|
||||
expect this behavior, but console-based systems for example do not like it.
|
||||
This is controlled by the FRIBIDI_FLAG_REORDER_NSM flag. The flag is on
|
||||
in FRIBIDI_FLAGS_DEFAULT.
|
||||
.SH "RETURNS"
|
||||
Maximum level found in this line plus one, or zero if any error
|
||||
occured (memory allocation failure most probably).
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
40
3party/fribidi/doc/fribidi_reorder_nsm_status.3
Normal file
40
3party/fribidi/doc/fribidi_reorder_nsm_status.3
Normal file
|
@ -0,0 +1,40 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_reorder_nsm_status" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_reorder_nsm_status \- get current marks reordering status
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
fribidi_boolean fribidi_reorder_nsm_status(void);
|
||||
.ft R
|
||||
.SH "DESCRIPTION"
|
||||
This function is deprecated and only used with other deprecated functions.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
0
3party/fribidi/doc/fribidi_set_debug.3
Normal file
0
3party/fribidi/doc/fribidi_set_debug.3
Normal file
54
3party/fribidi/doc/fribidi_set_mirroring.3
Normal file
54
3party/fribidi/doc/fribidi_set_mirroring.3
Normal file
|
@ -0,0 +1,54 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_set_mirroring" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_set_mirroring \- set mirroring on or off
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
fribidi_boolean fribidi_set_mirroring(fribidi_boolean state);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "fribidi_boolean state"
|
||||
New state to set.
|
||||
.SH "DESCRIPTION"
|
||||
This function is used to turn character mirroring on or off.
|
||||
Character mirroring is the act of replacing a mirrorable glyph
|
||||
(character), eg. Left paranthesis, with the matching glyph,
|
||||
eg. Right paranthesis, in a right-to-left resolved context.
|
||||
If your rendering engine does mirroring itself, you may want to
|
||||
turn it off here.
|
||||
|
||||
This flag is on by default.
|
||||
This function is deprecated and only used with other deprecated functions.
|
||||
.SH "RETURNS"
|
||||
The new mirroring status.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
56
3party/fribidi/doc/fribidi_set_reorder_nsm.3
Normal file
56
3party/fribidi/doc/fribidi_set_reorder_nsm.3
Normal file
|
@ -0,0 +1,56 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_set_reorder_nsm" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_set_reorder_nsm \- set marks reordering on or off
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
fribidi_boolean fribidi_set_reorder_nsm(fribidi_boolean state);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "fribidi_boolean state"
|
||||
New state to set.
|
||||
.SH "DESCRIPTION"
|
||||
This function is used to turn non-spacing marks reordering on or
|
||||
off. Reordering non-spacing marks is the act of placing non-spacing
|
||||
marks (bidi class NSM) after their base character in a right-to-left
|
||||
resolved context. If your rendering engine expects non-spacing marks
|
||||
always after the base character in the memory representation of the
|
||||
visual string, you need this option on. An example of where people
|
||||
may need it off is when rendering in the console when non-spacing
|
||||
marks cannot be applied on top of the base character.
|
||||
|
||||
This flag is on by default.
|
||||
This function is deprecated and only used with other deprecated functions.
|
||||
.SH "RETURNS"
|
||||
The new marks reordering status.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
85
3party/fribidi/doc/fribidi_shape.3
Normal file
85
3party/fribidi/doc/fribidi_shape.3
Normal file
|
@ -0,0 +1,85 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_shape" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_shape \- do bidi-aware shaping
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
void fribidi_shape
|
||||
.br
|
||||
(
|
||||
.br
|
||||
FriBidiFlags flags,
|
||||
.br
|
||||
const FriBidiLevel *embedding_levels,
|
||||
.br
|
||||
const FriBidiStrIndex len,
|
||||
.br
|
||||
FriBidiArabicProp *ar_props,
|
||||
.br
|
||||
FriBidiChar *str
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "FriBidiFlags flags"
|
||||
Shaping flags.
|
||||
.TP
|
||||
.B "const FriBidiLevel *embedding_levels"
|
||||
Input list of embedding
|
||||
levels, as returned by
|
||||
fribidi_get_par_embedding_levels.
|
||||
.TP
|
||||
.B "const FriBidiStrIndex len"
|
||||
Input string length.
|
||||
.TP
|
||||
.B "FriBidiArabicProp *ar_props"
|
||||
Input/output Arabic properties as
|
||||
computed by fribidi_join_arabic.
|
||||
.TP
|
||||
.B "FriBidiChar *str"
|
||||
String to shape.
|
||||
.SH "DESCRIPTION"
|
||||
This function does all shaping work that depends on the resolved embedding
|
||||
levels of the characters. Currently it does mirroring and Arabic shaping,
|
||||
but the list may grow in the future. This function is a wrapper around
|
||||
fribidi_shape_mirroring and fribidi_shape_arabic.
|
||||
|
||||
The flags parameter specifies which shapings are applied. The only flags
|
||||
affecting the functionality of this function are those beginning with
|
||||
FRIBIDI_FLAG_SHAPE_. Of these, only FRIBIDI_FLAG_SHAPE_MIRRORING is on
|
||||
in FRIBIDI_FLAGS_DEFAULT. For details of the Arabic-specific flags see
|
||||
fribidi_shape_arabic. If ar_props is NULL, no Arabic shaping is performed.
|
||||
|
||||
Feel free to do your own shaping before or after calling this function,
|
||||
but you should take care of embedding levels yourself then.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3)
|
67
3party/fribidi/doc/fribidi_shape_mirroring.3
Normal file
67
3party/fribidi/doc/fribidi_shape_mirroring.3
Normal file
|
@ -0,0 +1,67 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_shape_mirroring" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_shape_mirroring \- do mirroring shaping
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
void fribidi_shape_mirroring
|
||||
.br
|
||||
(
|
||||
.br
|
||||
const FriBidiLevel *embedding_levels,
|
||||
.br
|
||||
const FriBidiStrIndex len,
|
||||
.br
|
||||
FriBidiChar *str
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "const FriBidiLevel *embedding_levels"
|
||||
Input list of embedding
|
||||
levels, as returned by
|
||||
fribidi_get_par_embedding_levels.
|
||||
.TP
|
||||
.B "const FriBidiStrIndex len"
|
||||
Input string length.
|
||||
.TP
|
||||
.B "FriBidiChar *str"
|
||||
String to shape.
|
||||
.SH "DESCRIPTION"
|
||||
This functions replaces mirroring characters on right-to-left embeddings in
|
||||
string with their mirrored equivalent as returned by
|
||||
fribidi_get_mirror_char().
|
||||
|
||||
This function implements rule L4 of the Unicode Bidirectional Algorithm
|
||||
available at http://www.unicode.org/reports/tr9/#L4.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_unicode_to_charset(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape(3)
|
95
3party/fribidi/doc/fribidi_unicode_to_charset.3
Normal file
95
3party/fribidi/doc/fribidi_unicode_to_charset.3
Normal file
|
@ -0,0 +1,95 @@
|
|||
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
|
||||
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
|
||||
.TH "fribidi_unicode_to_charset" 3 "30 January 2006" "GNU FriBidi 0.19.2" "Programmer's Manual"
|
||||
.SH "NAME"
|
||||
fribidi_unicode_to_charset \- convert string from Unicode
|
||||
.SH "SYNOPSIS"
|
||||
.ft B
|
||||
#include <fribidi.h>
|
||||
.sp
|
||||
FriBidiStrIndex fribidi_unicode_to_charset
|
||||
.br
|
||||
(
|
||||
.br
|
||||
FriBidiCharSet char_set,
|
||||
.br
|
||||
const FriBidiChar *us,
|
||||
.br
|
||||
FriBidiStrIndex len,
|
||||
.br
|
||||
char *s
|
||||
.br
|
||||
);
|
||||
.ft R
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
.B "FriBidiCharSet char_set"
|
||||
Character set to conver to.
|
||||
.sp
|
||||
Possible values for a \fBFriBidiCharSet\fR are as follows:
|
||||
.RS 0.75in
|
||||
.PD 0
|
||||
.ft B
|
||||
.nr TL \w'FRIBIDI_CHAR_SET_ISO8859_6'u+0.2i
|
||||
.ft R
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_UTF8\fR
|
||||
UTF-8 (Unicode).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_CAP_RTL\fR
|
||||
CapRTL (Test).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_ISO8859_6\fR
|
||||
ISO8859-6 (Arabic).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_ISO8859_8\fR
|
||||
ISO8859-8 (Hebrew).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_CP1255\fR
|
||||
CP1255 (MS Hebrew/Yiddish).
|
||||
.TP \n(TLu
|
||||
\fBFRIBIDI_CHAR_SET_CP1256\fR
|
||||
CP1256 (MS Arabic).
|
||||
.RE
|
||||
.PD
|
||||
.TP
|
||||
.B "const FriBidiChar *us"
|
||||
Input Unicode string.
|
||||
.TP
|
||||
.B "FriBidiStrIndex len"
|
||||
Input string length.
|
||||
.TP
|
||||
.B "char *s"
|
||||
Output string encoded in char_set.
|
||||
.SH "DESCRIPTION"
|
||||
This function converts a Unicode string to an string in another character
|
||||
set. It also null-terminates the output string.
|
||||
.SH "RETURNS"
|
||||
The length of the new string.
|
||||
.SH "SEE ALSO"
|
||||
fribidi_charset_to_unicode(3),
|
||||
fribidi_parse_charset(3),
|
||||
fribidi_shape_arabic(3),
|
||||
fribidi_get_par_direction(3),
|
||||
fribidi_get_par_embedding_levels(3),
|
||||
fribidi_reorder_line(3),
|
||||
fribidi_get_bidi_type(3),
|
||||
fribidi_get_bidi_types(3),
|
||||
fribidi_get_bidi_type_name(3),
|
||||
fribidi_debug_status(3),
|
||||
fribidi_mirroring_status(3),
|
||||
fribidi_set_mirroring(3),
|
||||
fribidi_reorder_nsm_status(3),
|
||||
fribidi_set_reorder_nsm(3),
|
||||
fribidi_log2vis_get_embedding_levels(3),
|
||||
fribidi_get_type(3),
|
||||
fribidi_get_type_internal(3),
|
||||
fribidi_remove_bidi_marks(3),
|
||||
fribidi_log2vis(3),
|
||||
fribidi_join_arabic(3),
|
||||
fribidi_get_joining_type(3),
|
||||
fribidi_get_joining_types(3),
|
||||
fribidi_get_joining_type_name(3),
|
||||
fribidi_get_mirror_char(3),
|
||||
fribidi_shape_mirroring(3),
|
||||
fribidi_shape(3)
|
0
3party/fribidi/doc/fribidi_unicode_version.3
Normal file
0
3party/fribidi/doc/fribidi_unicode_version.3
Normal file
0
3party/fribidi/doc/fribidi_version_info.3
Normal file
0
3party/fribidi/doc/fribidi_version_info.3
Normal file
13
3party/fribidi/fribidi.pc.in
Normal file
13
3party/fribidi/fribidi.pc.in
Normal file
|
@ -0,0 +1,13 @@
|
|||
# @configure_input@
|
||||
|
||||
prefix=@prefix@
|
||||
exec_prefix=@exec_prefix@
|
||||
libdir=@libdir@
|
||||
includedir=@includedir@
|
||||
|
||||
Name: @PACKAGE_NAME@
|
||||
Description: Unicode Bidirectional Algorithm Library
|
||||
Requires: @MISC_PACKAGES@
|
||||
Version: @VERSION@
|
||||
Libs: -L${libdir} -lfribidi
|
||||
Cflags: -I${includedir}/@PACKAGE@
|
51
3party/fribidi/fribidi.pro
Normal file
51
3party/fribidi/fribidi.pro
Normal file
|
@ -0,0 +1,51 @@
|
|||
# fribidi library for unicode bidirectional algorithm
|
||||
|
||||
TEMPLATE = lib
|
||||
CONFIG += staticlib
|
||||
|
||||
INCLUDEPATH += ./lib
|
||||
|
||||
ROOT_DIR = ../..
|
||||
DEPENDENCIES =
|
||||
|
||||
include($$ROOT_DIR/common.pri)
|
||||
|
||||
HEADERS += \
|
||||
lib/run.h \
|
||||
lib/mem.h \
|
||||
lib/joining-types.h \
|
||||
lib/fribidi-unicode-version.h \
|
||||
lib/fribidi-unicode.h \
|
||||
lib/fribidi-types.h \
|
||||
lib/fribidi-shape.h \
|
||||
lib/fribidi-mirroring.h \
|
||||
lib/fribidi-joining-types-list.h \
|
||||
lib/fribidi-joining-types.h \
|
||||
lib/fribidi-joining.h \
|
||||
lib/fribidi-flags.h \
|
||||
lib/fribidi-enddecls.h \
|
||||
lib/fribidi-deprecated.h \
|
||||
lib/fribidi-config.h \
|
||||
lib/fribidi-common.h \
|
||||
lib/fribidi-bidi-types-list.h \
|
||||
lib/fribidi-bidi-types.h \
|
||||
lib/fribidi-bidi.h \
|
||||
lib/fribidi-begindecls.h \
|
||||
lib/fribidi-arabic.h \
|
||||
lib/fribidi.h \
|
||||
lib/debug.h \
|
||||
lib/common.h \
|
||||
lib/bidi-types.h
|
||||
|
||||
SOURCES += \
|
||||
lib/fribidi-shape.c \
|
||||
lib/fribidi-run.c \
|
||||
lib/fribidi-mirroring.c \
|
||||
lib/fribidi-mem.c \
|
||||
lib/fribidi-joining-types.c \
|
||||
lib/fribidi-joining.c \
|
||||
lib/fribidi-deprecated.c \
|
||||
lib/fribidi-bidi-types.c \
|
||||
lib/fribidi-bidi.c \
|
||||
lib/fribidi-arabic.c \
|
||||
lib/fribidi.c
|
125
3party/fribidi/gen.tab/Makefile.am
Normal file
125
3party/fribidi/gen.tab/Makefile.am
Normal file
|
@ -0,0 +1,125 @@
|
|||
EXTRA_PROGRAMS = \
|
||||
gen-unicode-version \
|
||||
gen-bidi-type-tab \
|
||||
gen-joining-type-tab \
|
||||
gen-arabic-shaping-tab \
|
||||
gen-mirroring-tab
|
||||
|
||||
gen_unicode_version_SOURCES = gen-unicode-version.c
|
||||
gen_bidi_type_tab_SOURCES = gen-bidi-type-tab.c packtab.c packtab.h
|
||||
gen_joining_type_tab_SOURCES = gen-joining-type-tab.c packtab.c packtab.h
|
||||
gen_arabic_shaping_tab_SOURCES = gen-arabic-shaping-tab.c
|
||||
gen_mirroring_tab_SOURCES = gen-mirroring-tab.c packtab.c packtab.h
|
||||
|
||||
CLEANFILES = $(EXTRA_PROGRAMS)
|
||||
DISTCLEANFILES =
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_builddir)/lib \
|
||||
-I$(top_srcdir)/lib \
|
||||
-I$(top_srcdir)/charset \
|
||||
$(MISC_CFLAGS)
|
||||
|
||||
LDADD = $(MISC_LIBS)
|
||||
|
||||
VPATH += \
|
||||
$(builddir)/unidata \
|
||||
$(builddir)/unidata/extracted \
|
||||
$(srcdir)/unidata \
|
||||
$(srcdir)/unidata/extracted \
|
||||
$(top_builddir)/lib
|
||||
|
||||
|
||||
UCD_FILES = \
|
||||
unidata/ReadMe.txt \
|
||||
unidata/UnicodeData.txt \
|
||||
unidata/BidiMirroring.txt \
|
||||
unidata/ArabicShaping.txt
|
||||
|
||||
EXTRA_DIST = $(UCD_FILES)
|
||||
|
||||
COMPRESSION = 2
|
||||
|
||||
# generate bidi-type.tab.i
|
||||
|
||||
gen_bidi_type_tab = gen-bidi-type-tab$(EXEEXT)
|
||||
|
||||
derived_bidi-type.tab.i: \
|
||||
DerivedBidiClass.txt \
|
||||
fribidi-unicode-version.h \
|
||||
$(gen_bidi_type_tab_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(gen_bidi_type_tab)
|
||||
./$(gen_bidi_type_tab) $(COMPRESSION) $^ > $@ \
|
||||
|| ($(RM) $@ && false)
|
||||
|
||||
bidi-type.tab.i: \
|
||||
UnicodeData.txt \
|
||||
fribidi-unicode-version.h \
|
||||
$(gen_bidi_type_tab_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(gen_bidi_type_tab)
|
||||
./$(gen_bidi_type_tab) $(COMPRESSION) $^ > $@ \
|
||||
|| ($(RM) $@ && false)
|
||||
|
||||
DISTCLEANFILES += derived_bidi-type.tab.i
|
||||
|
||||
# generate joining-type.tab.i
|
||||
|
||||
gen_joining_type_tab = gen-joining-type-tab$(EXEEXT)
|
||||
|
||||
joining-type.tab.i: \
|
||||
UnicodeData.txt \
|
||||
ArabicShaping.txt \
|
||||
fribidi-unicode-version.h \
|
||||
$(gen_joining_type_tab_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(gen_joining_type_tab)
|
||||
./$(gen_joining_type_tab) $(COMPRESSION) $^ > $@ \
|
||||
|| ($(RM) $@ && false)
|
||||
|
||||
# generate arabic-shaping.tab.i
|
||||
|
||||
gen_arabic_shaping_tab = gen-arabic-shaping-tab$(EXEEXT)
|
||||
|
||||
arabic-shaping.tab.i: \
|
||||
UnicodeData.txt \
|
||||
fribidi-unicode-version.h \
|
||||
$(gen_arabic_shaping_tab_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(gen_arabic_shaping_tab)
|
||||
./$(gen_arabic_shaping_tab) $(COMPRESSION) $^ > $@ \
|
||||
|| ($(RM) $@ && false)
|
||||
|
||||
# generate mirroring.tab.i
|
||||
|
||||
gen_mirroring_tab = gen-mirroring-tab$(EXEEXT)
|
||||
|
||||
mirroring.tab.i: \
|
||||
BidiMirroring.txt \
|
||||
fribidi-unicode-version.h \
|
||||
$(gen_mirroring_tab_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(gen_mirroring_tab)
|
||||
./$(gen_mirroring_tab) $(COMPRESSION) $^ > $@ \
|
||||
|| ($(RM) $@ && false)
|
||||
|
||||
# generate fribidi-unicode-version.h
|
||||
|
||||
gen_unicode_version = gen-unicode-version$(EXEEXT)
|
||||
|
||||
fribidi-unicode-version.h: \
|
||||
ReadMe.txt \
|
||||
BidiMirroring.txt \
|
||||
$(gen_unicode_version_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(gen_unicode_version)
|
||||
./$(gen_unicode_version) $^ > $@ \
|
||||
|| ($(RM) $@ && false)
|
||||
|
||||
# generate all generators:
|
||||
gen: $(EXTRA_PROGRAMS)
|
||||
|
||||
$(top_builddir)/config.h: $(top_srcdir)/config.h.in
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) config.h
|
||||
|
||||
$(top_builddir)/lib/fribidi-config.h: $(top_srcdir)/lib/fribidi-config.h.in
|
||||
cd $(top_builddir)/lib && $(MAKE) $(AM_MAKEFLAGS) fribidi-config.h
|
||||
|
||||
.PHONY: gen
|
||||
|
||||
.DELETE_ON_ERROR:
|
590
3party/fribidi/gen.tab/Makefile.in
Normal file
590
3party/fribidi/gen.tab/Makefile.in
Normal file
|
@ -0,0 +1,590 @@
|
|||
# Makefile.in generated by automake 1.10.2 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
EXTRA_PROGRAMS = gen-unicode-version$(EXEEXT) \
|
||||
gen-bidi-type-tab$(EXEEXT) gen-joining-type-tab$(EXEEXT) \
|
||||
gen-arabic-shaping-tab$(EXEEXT) gen-mirroring-tab$(EXEEXT)
|
||||
subdir = gen.tab
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
am_gen_arabic_shaping_tab_OBJECTS = gen-arabic-shaping-tab.$(OBJEXT)
|
||||
gen_arabic_shaping_tab_OBJECTS = $(am_gen_arabic_shaping_tab_OBJECTS)
|
||||
gen_arabic_shaping_tab_LDADD = $(LDADD)
|
||||
am__DEPENDENCIES_1 =
|
||||
gen_arabic_shaping_tab_DEPENDENCIES = $(am__DEPENDENCIES_1)
|
||||
am_gen_bidi_type_tab_OBJECTS = gen-bidi-type-tab.$(OBJEXT) \
|
||||
packtab.$(OBJEXT)
|
||||
gen_bidi_type_tab_OBJECTS = $(am_gen_bidi_type_tab_OBJECTS)
|
||||
gen_bidi_type_tab_LDADD = $(LDADD)
|
||||
gen_bidi_type_tab_DEPENDENCIES = $(am__DEPENDENCIES_1)
|
||||
am_gen_joining_type_tab_OBJECTS = gen-joining-type-tab.$(OBJEXT) \
|
||||
packtab.$(OBJEXT)
|
||||
gen_joining_type_tab_OBJECTS = $(am_gen_joining_type_tab_OBJECTS)
|
||||
gen_joining_type_tab_LDADD = $(LDADD)
|
||||
gen_joining_type_tab_DEPENDENCIES = $(am__DEPENDENCIES_1)
|
||||
am_gen_mirroring_tab_OBJECTS = gen-mirroring-tab.$(OBJEXT) \
|
||||
packtab.$(OBJEXT)
|
||||
gen_mirroring_tab_OBJECTS = $(am_gen_mirroring_tab_OBJECTS)
|
||||
gen_mirroring_tab_LDADD = $(LDADD)
|
||||
gen_mirroring_tab_DEPENDENCIES = $(am__DEPENDENCIES_1)
|
||||
am_gen_unicode_version_OBJECTS = gen-unicode-version.$(OBJEXT)
|
||||
gen_unicode_version_OBJECTS = $(am_gen_unicode_version_OBJECTS)
|
||||
gen_unicode_version_LDADD = $(LDADD)
|
||||
gen_unicode_version_DEPENDENCIES = $(am__DEPENDENCIES_1)
|
||||
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
CCLD = $(CC)
|
||||
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
|
||||
$(LDFLAGS) -o $@
|
||||
SOURCES = $(gen_arabic_shaping_tab_SOURCES) \
|
||||
$(gen_bidi_type_tab_SOURCES) $(gen_joining_type_tab_SOURCES) \
|
||||
$(gen_mirroring_tab_SOURCES) $(gen_unicode_version_SOURCES)
|
||||
DIST_SOURCES = $(gen_arabic_shaping_tab_SOURCES) \
|
||||
$(gen_bidi_type_tab_SOURCES) $(gen_joining_type_tab_SOURCES) \
|
||||
$(gen_mirroring_tab_SOURCES) $(gen_unicode_version_SOURCES)
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
VPATH = @srcdir@ $(builddir)/unidata $(builddir)/unidata/extracted \
|
||||
$(srcdir)/unidata $(srcdir)/unidata/extracted \
|
||||
$(top_builddir)/lib
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMTAR = @AMTAR@
|
||||
AR = @AR@
|
||||
AS = @AS@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
FGREP = @FGREP@
|
||||
FRIBIDI_BINARY_AGE = @FRIBIDI_BINARY_AGE@
|
||||
FRIBIDI_CHARSETS = @FRIBIDI_CHARSETS@
|
||||
FRIBIDI_INTERFACE_AGE = @FRIBIDI_INTERFACE_AGE@
|
||||
FRIBIDI_INTERFACE_VERSION = @FRIBIDI_INTERFACE_VERSION@
|
||||
FRIBIDI_MAJOR_VERSION = @FRIBIDI_MAJOR_VERSION@
|
||||
FRIBIDI_MICRO_VERSION = @FRIBIDI_MICRO_VERSION@
|
||||
FRIBIDI_MINOR_VERSION = @FRIBIDI_MINOR_VERSION@
|
||||
FRIBIDI_NO_DEPRECATED = @FRIBIDI_NO_DEPRECATED@
|
||||
FRIBIDI_USE_GLIB = @FRIBIDI_USE_GLIB@
|
||||
FRIBIDI_VERSION = @FRIBIDI_VERSION@
|
||||
GLIB_CFLAGS = @GLIB_CFLAGS@
|
||||
GLIB_LIBS = @GLIB_LIBS@
|
||||
GREP = @GREP@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@
|
||||
LT_VERSION_INFO = @LT_VERSION_INFO@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MISC_CFLAGS = @MISC_CFLAGS@
|
||||
MISC_LIBS = @MISC_LIBS@
|
||||
MISC_PACKAGES = @MISC_PACKAGES@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
SIZEOF_INT = @SIZEOF_INT@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
lt_ECHO = @lt_ECHO@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
gen_unicode_version_SOURCES = gen-unicode-version.c
|
||||
gen_bidi_type_tab_SOURCES = gen-bidi-type-tab.c packtab.c packtab.h
|
||||
gen_joining_type_tab_SOURCES = gen-joining-type-tab.c packtab.c packtab.h
|
||||
gen_arabic_shaping_tab_SOURCES = gen-arabic-shaping-tab.c
|
||||
gen_mirroring_tab_SOURCES = gen-mirroring-tab.c packtab.c packtab.h
|
||||
CLEANFILES = $(EXTRA_PROGRAMS)
|
||||
DISTCLEANFILES = derived_bidi-type.tab.i
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_builddir)/lib \
|
||||
-I$(top_srcdir)/lib \
|
||||
-I$(top_srcdir)/charset \
|
||||
$(MISC_CFLAGS)
|
||||
|
||||
LDADD = $(MISC_LIBS)
|
||||
UCD_FILES = \
|
||||
unidata/ReadMe.txt \
|
||||
unidata/UnicodeData.txt \
|
||||
unidata/BidiMirroring.txt \
|
||||
unidata/ArabicShaping.txt
|
||||
|
||||
EXTRA_DIST = $(UCD_FILES)
|
||||
COMPRESSION = 2
|
||||
|
||||
# generate bidi-type.tab.i
|
||||
gen_bidi_type_tab = gen-bidi-type-tab$(EXEEXT)
|
||||
|
||||
# generate joining-type.tab.i
|
||||
gen_joining_type_tab = gen-joining-type-tab$(EXEEXT)
|
||||
|
||||
# generate arabic-shaping.tab.i
|
||||
gen_arabic_shaping_tab = gen-arabic-shaping-tab$(EXEEXT)
|
||||
|
||||
# generate mirroring.tab.i
|
||||
gen_mirroring_tab = gen-mirroring-tab$(EXEEXT)
|
||||
|
||||
# generate fribidi-unicode-version.h
|
||||
gen_unicode_version = gen-unicode-version$(EXEEXT)
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .c .lo .o .obj
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits gen.tab/Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnits gen.tab/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
gen-arabic-shaping-tab$(EXEEXT): $(gen_arabic_shaping_tab_OBJECTS) $(gen_arabic_shaping_tab_DEPENDENCIES)
|
||||
@rm -f gen-arabic-shaping-tab$(EXEEXT)
|
||||
$(LINK) $(gen_arabic_shaping_tab_OBJECTS) $(gen_arabic_shaping_tab_LDADD) $(LIBS)
|
||||
gen-bidi-type-tab$(EXEEXT): $(gen_bidi_type_tab_OBJECTS) $(gen_bidi_type_tab_DEPENDENCIES)
|
||||
@rm -f gen-bidi-type-tab$(EXEEXT)
|
||||
$(LINK) $(gen_bidi_type_tab_OBJECTS) $(gen_bidi_type_tab_LDADD) $(LIBS)
|
||||
gen-joining-type-tab$(EXEEXT): $(gen_joining_type_tab_OBJECTS) $(gen_joining_type_tab_DEPENDENCIES)
|
||||
@rm -f gen-joining-type-tab$(EXEEXT)
|
||||
$(LINK) $(gen_joining_type_tab_OBJECTS) $(gen_joining_type_tab_LDADD) $(LIBS)
|
||||
gen-mirroring-tab$(EXEEXT): $(gen_mirroring_tab_OBJECTS) $(gen_mirroring_tab_DEPENDENCIES)
|
||||
@rm -f gen-mirroring-tab$(EXEEXT)
|
||||
$(LINK) $(gen_mirroring_tab_OBJECTS) $(gen_mirroring_tab_LDADD) $(LIBS)
|
||||
gen-unicode-version$(EXEEXT): $(gen_unicode_version_OBJECTS) $(gen_unicode_version_DEPENDENCIES)
|
||||
@rm -f gen-unicode-version$(EXEEXT)
|
||||
$(LINK) $(gen_unicode_version_OBJECTS) $(gen_unicode_version_LDADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen-arabic-shaping-tab.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen-bidi-type-tab.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen-joining-type-tab.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen-mirroring-tab.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen-unicode-version.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/packtab.Po@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
||||
|
||||
.c.obj:
|
||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
||||
|
||||
.c.lo:
|
||||
@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& cd $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) $$here
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile
|
||||
installdirs:
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
||||
mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am:
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool ctags distclean distclean-compile \
|
||||
distclean-generic distclean-libtool distclean-tags distdir dvi \
|
||||
dvi-am html html-am info info-am install install-am \
|
||||
install-data install-data-am install-dvi install-dvi-am \
|
||||
install-exec install-exec-am install-html install-html-am \
|
||||
install-info install-info-am install-man install-pdf \
|
||||
install-pdf-am install-ps install-ps-am install-strip \
|
||||
installcheck installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags uninstall uninstall-am
|
||||
|
||||
|
||||
derived_bidi-type.tab.i: \
|
||||
DerivedBidiClass.txt \
|
||||
fribidi-unicode-version.h \
|
||||
$(gen_bidi_type_tab_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(gen_bidi_type_tab)
|
||||
./$(gen_bidi_type_tab) $(COMPRESSION) $^ > $@ \
|
||||
|| ($(RM) $@ && false)
|
||||
|
||||
bidi-type.tab.i: \
|
||||
UnicodeData.txt \
|
||||
fribidi-unicode-version.h \
|
||||
$(gen_bidi_type_tab_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(gen_bidi_type_tab)
|
||||
./$(gen_bidi_type_tab) $(COMPRESSION) $^ > $@ \
|
||||
|| ($(RM) $@ && false)
|
||||
|
||||
joining-type.tab.i: \
|
||||
UnicodeData.txt \
|
||||
ArabicShaping.txt \
|
||||
fribidi-unicode-version.h \
|
||||
$(gen_joining_type_tab_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(gen_joining_type_tab)
|
||||
./$(gen_joining_type_tab) $(COMPRESSION) $^ > $@ \
|
||||
|| ($(RM) $@ && false)
|
||||
|
||||
arabic-shaping.tab.i: \
|
||||
UnicodeData.txt \
|
||||
fribidi-unicode-version.h \
|
||||
$(gen_arabic_shaping_tab_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(gen_arabic_shaping_tab)
|
||||
./$(gen_arabic_shaping_tab) $(COMPRESSION) $^ > $@ \
|
||||
|| ($(RM) $@ && false)
|
||||
|
||||
mirroring.tab.i: \
|
||||
BidiMirroring.txt \
|
||||
fribidi-unicode-version.h \
|
||||
$(gen_mirroring_tab_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(gen_mirroring_tab)
|
||||
./$(gen_mirroring_tab) $(COMPRESSION) $^ > $@ \
|
||||
|| ($(RM) $@ && false)
|
||||
|
||||
fribidi-unicode-version.h: \
|
||||
ReadMe.txt \
|
||||
BidiMirroring.txt \
|
||||
$(gen_unicode_version_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(gen_unicode_version)
|
||||
./$(gen_unicode_version) $^ > $@ \
|
||||
|| ($(RM) $@ && false)
|
||||
|
||||
# generate all generators:
|
||||
gen: $(EXTRA_PROGRAMS)
|
||||
|
||||
$(top_builddir)/config.h: $(top_srcdir)/config.h.in
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) config.h
|
||||
|
||||
$(top_builddir)/lib/fribidi-config.h: $(top_srcdir)/lib/fribidi-config.h.in
|
||||
cd $(top_builddir)/lib && $(MAKE) $(AM_MAKEFLAGS) fribidi-config.h
|
||||
|
||||
.PHONY: gen
|
||||
|
||||
.DELETE_ON_ERROR:
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
310
3party/fribidi/gen.tab/gen-arabic-shaping-tab.c
Normal file
310
3party/fribidi/gen.tab/gen-arabic-shaping-tab.c
Normal file
|
@ -0,0 +1,310 @@
|
|||
/* FriBidi
|
||||
* gen-arabic-shaping-tab.c - generate arabic-shaping.tab.i
|
||||
*
|
||||
* $Id: gen-arabic-shaping-tab.c,v 1.2 2006/01/31 03:23:12 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2006/01/31 03:23:12 $
|
||||
* $Revision: 1.2 $
|
||||
* $Source: /cvs/fribidi/fribidi2/gen.tab/gen-arabic-shaping-tab.c,v $
|
||||
*
|
||||
* Author:
|
||||
* Behdad Esfahbod, 2004, 2005
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2004, 2005 Behdad Esfahbod
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi-unicode.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#if STDC_HEADERS+0
|
||||
# include <stdlib.h>
|
||||
# include <stddef.h>
|
||||
#else
|
||||
# if HAVE_STDLIB_H
|
||||
# include <stdlib.h>
|
||||
# endif
|
||||
#endif
|
||||
#if HAVE_STRING_H+0
|
||||
# if !STDC_HEADERS && HAVE_MEMORY_H
|
||||
# include <memory.h>
|
||||
# endif
|
||||
# include <string.h>
|
||||
#endif
|
||||
#if HAVE_STRINGS_H+0
|
||||
# include <strings.h>
|
||||
#endif
|
||||
|
||||
#include "packtab.h"
|
||||
|
||||
#define appname "gen-arabic-shaping-tab"
|
||||
#define outputname "arabic-shaping.tab.i"
|
||||
|
||||
static void
|
||||
die (
|
||||
const char *msg
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": %s\n", msg);
|
||||
exit (1);
|
||||
}
|
||||
|
||||
static void
|
||||
die2 (
|
||||
const char *fmt,
|
||||
const char *p
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": ");
|
||||
fprintf (stderr, fmt, p);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
static void
|
||||
die3 (
|
||||
const char *fmt,
|
||||
const char *p,
|
||||
const char *q
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": ");
|
||||
fprintf (stderr, fmt, p, q);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
static void
|
||||
die3l (
|
||||
const char *fmt,
|
||||
unsigned long l,
|
||||
const char *p
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": ");
|
||||
fprintf (stderr, fmt, l, p);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
static const char *arabic_shaping_tags[] = {
|
||||
"isolated",
|
||||
"final",
|
||||
"initial",
|
||||
"medial",
|
||||
NULL
|
||||
};
|
||||
|
||||
static int
|
||||
shape_is (
|
||||
const char *s,
|
||||
const char *type_list[]
|
||||
)
|
||||
{
|
||||
const char **p = type_list;
|
||||
for (; *p; p++)
|
||||
if (!strcmp (s, p[0]))
|
||||
return p - type_list;
|
||||
return -1;
|
||||
}
|
||||
|
||||
#define table_name "ArShap"
|
||||
#define macro_name "FRIBIDI_GET_ARABIC_SHAPE_PRES"
|
||||
|
||||
#define START_CHAR 0x600
|
||||
#define END_CHAR 0x700
|
||||
|
||||
static FriBidiChar table[FRIBIDI_UNICODE_CHARS][4];
|
||||
static char buf[4000];
|
||||
static char tag[sizeof (buf)], buf2[sizeof (buf)];
|
||||
static FriBidiChar minshaped, maxshaped;
|
||||
|
||||
static void
|
||||
clear_tab (
|
||||
void
|
||||
)
|
||||
{
|
||||
register FriBidiChar c;
|
||||
register int shape;
|
||||
|
||||
for (c = 0; c < FRIBIDI_UNICODE_CHARS; c++)
|
||||
for (shape = 0; shape < 4; shape++)
|
||||
table[c][shape] = c;
|
||||
}
|
||||
|
||||
static void
|
||||
init (
|
||||
void
|
||||
)
|
||||
{
|
||||
minshaped = FRIBIDI_UNICODE_CHARS;
|
||||
maxshaped = 0;
|
||||
|
||||
clear_tab ();
|
||||
}
|
||||
|
||||
static void
|
||||
read_unicode_data_txt (
|
||||
FILE *f
|
||||
)
|
||||
{
|
||||
unsigned long c, unshaped, l;
|
||||
|
||||
l = 0;
|
||||
while (fgets (buf, sizeof buf, f))
|
||||
{
|
||||
int i, shape;
|
||||
const char *s = buf;
|
||||
|
||||
l++;
|
||||
|
||||
while (*s == ' ')
|
||||
s++;
|
||||
|
||||
if (*s == '#' || *s == '\0' || *s == '\n')
|
||||
continue;
|
||||
|
||||
i = sscanf (s, "%lx;%*[^;];%*[^;];%*[^;];%*[^;];<%[^;> ]> %lx %[^; ]", &c, tag, &unshaped, buf2);
|
||||
|
||||
if (i != 3)
|
||||
continue;
|
||||
|
||||
if (i != 3 || c >= FRIBIDI_UNICODE_CHARS || unshaped >= FRIBIDI_UNICODE_CHARS)
|
||||
die3l ("UnicodeData.txt: invalid input at line %ld: %s", l, s);
|
||||
|
||||
shape = shape_is (tag, arabic_shaping_tags);
|
||||
if (shape >= 0)
|
||||
{
|
||||
table[unshaped][shape] = c;
|
||||
if (unshaped < minshaped)
|
||||
minshaped = unshaped;
|
||||
if (unshaped > maxshaped)
|
||||
maxshaped = unshaped;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
read_data (
|
||||
const char *data_file_type[],
|
||||
const char *data_file_name[]
|
||||
)
|
||||
{
|
||||
FILE *f;
|
||||
|
||||
for (; data_file_name[0] && data_file_type[0];
|
||||
data_file_name++, data_file_type++)
|
||||
{
|
||||
fprintf (stderr, "Reading `%s'\n", data_file_name[0]);
|
||||
if (!(f = fopen (data_file_name[0], "rt")))
|
||||
die2 ("error: cannot open `%s' for reading", data_file_name[0]);
|
||||
|
||||
if (!strcmp (data_file_type[0], "UnicodeData.txt"))
|
||||
read_unicode_data_txt (f);
|
||||
else
|
||||
die2 ("error: unknown data-file type %s", data_file_type[0]);
|
||||
|
||||
fclose (f);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static void
|
||||
gen_arabic_shaping_tab (
|
||||
int max_depth /* currently unused */,
|
||||
const char *data_file_type[]
|
||||
)
|
||||
{
|
||||
register FriBidiChar c;
|
||||
register int shape;
|
||||
|
||||
if (maxshaped < minshaped)
|
||||
die ("error: no shaping pair found, something wrong with reading input");
|
||||
|
||||
fprintf (stderr,
|
||||
"Generating `" outputname "', it may take up to a few minutes\n");
|
||||
printf ("/* " outputname "\n * generated by " appname " (" FRIBIDI_NAME " "
|
||||
FRIBIDI_VERSION ")\n" " * from the files %s, %s of Unicode version "
|
||||
FRIBIDI_UNICODE_VERSION ". */\n\n", data_file_type[0],
|
||||
data_file_type[1]);
|
||||
|
||||
printf ("/*\n"
|
||||
" use %s(key,shape) to access your table\n\n"
|
||||
" required memory: %ld\n"
|
||||
" */\n\n",
|
||||
macro_name, (long)(maxshaped - minshaped + 1) * 4 * sizeof (FriBidiChar));
|
||||
|
||||
printf ("\n" "/* *IND" "ENT-OFF* */\n\n");
|
||||
|
||||
printf ("static const FriBidiChar %s[%d][%d] = {\n", table_name, maxshaped - minshaped + 1, 4);
|
||||
for (c = minshaped; c <= maxshaped; c++)
|
||||
{
|
||||
printf (" {");
|
||||
for (shape = 0; shape < 4; shape++)
|
||||
printf ("0x%04lx,", (unsigned long)table[c][shape]);
|
||||
printf ("},\n");
|
||||
}
|
||||
|
||||
|
||||
printf ("};\n\n");
|
||||
|
||||
printf ("/* *IND" "ENT-ON* */\n\n");
|
||||
|
||||
printf ("#ifndef FRIBIDI_ACCESS_SHAPE_TABLE\n"
|
||||
"# define FRIBIDI_ACCESS_SHAPE_TABLE(table,min,max,x,shape) \\\n"
|
||||
" (((x)<(min)||(x)>(max))?(x):(table)[(x)-(min)][(shape)])\n"
|
||||
"#endif\n\n");
|
||||
printf ("#define %s(x,shape) "
|
||||
"FRIBIDI_ACCESS_SHAPE_TABLE(%s, 0x%04lx, 0x%04lx, (x), (shape))\n\n",
|
||||
macro_name, table_name, (unsigned long)minshaped, (unsigned long)maxshaped);
|
||||
|
||||
printf ("/* End of generated " outputname " */\n");
|
||||
}
|
||||
|
||||
int
|
||||
main (
|
||||
int argc,
|
||||
const char **argv
|
||||
)
|
||||
{
|
||||
const char *data_file_type[] =
|
||||
{ "UnicodeData.txt", NULL };
|
||||
|
||||
if (argc < 3)
|
||||
die3 ("usage:\n " appname " max-depth /path/to/%s /path/to/%s [junk...]",
|
||||
data_file_type[0], data_file_type[1]);
|
||||
|
||||
{
|
||||
int max_depth = atoi (argv[1]);
|
||||
const char *data_file_name[] = { NULL, NULL };
|
||||
data_file_name[0] = argv[2];
|
||||
|
||||
if (max_depth < 2)
|
||||
die ("invalid depth");
|
||||
|
||||
init ();
|
||||
read_data (data_file_type, data_file_name);
|
||||
gen_arabic_shaping_tab (max_depth, data_file_type);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
367
3party/fribidi/gen.tab/gen-bidi-type-tab.c
Normal file
367
3party/fribidi/gen.tab/gen-bidi-type-tab.c
Normal file
|
@ -0,0 +1,367 @@
|
|||
/* FriBidi
|
||||
* gen-bidi-type-tab.c - generate bidi-type.tab.i
|
||||
*
|
||||
* $Id: gen-bidi-type-tab.c,v 1.18 2006/01/31 03:23:12 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2006/01/31 03:23:12 $
|
||||
* $Revision: 1.18 $
|
||||
* $Source: /cvs/fribidi/fribidi2/gen.tab/gen-bidi-type-tab.c,v $
|
||||
*
|
||||
* Author:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002,2004 Behdad Esfahbod
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi-unicode.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#if STDC_HEADERS+0
|
||||
# include <stdlib.h>
|
||||
# include <stddef.h>
|
||||
#else
|
||||
# if HAVE_STDLIB_H
|
||||
# include <stdlib.h>
|
||||
# endif
|
||||
#endif
|
||||
#if HAVE_STRING_H+0
|
||||
# if !STDC_HEADERS && HAVE_MEMORY_H
|
||||
# include <memory.h>
|
||||
# endif
|
||||
# include <string.h>
|
||||
#endif
|
||||
#if HAVE_STRINGS_H+0
|
||||
# include <strings.h>
|
||||
#endif
|
||||
|
||||
#include "packtab.h"
|
||||
|
||||
#define appname "gen-bidi-type-tab"
|
||||
#define outputname "bidi-type.tab.i"
|
||||
|
||||
static void
|
||||
die (
|
||||
const char *msg
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": %s\n", msg);
|
||||
exit (1);
|
||||
}
|
||||
|
||||
static void
|
||||
die2 (
|
||||
const char *fmt,
|
||||
const char *p
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": ");
|
||||
fprintf (stderr, fmt, p);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
static void
|
||||
die3 (
|
||||
const char *fmt,
|
||||
unsigned long l,
|
||||
const char *p
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": ");
|
||||
fprintf (stderr, fmt, l, p);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
enum FriBidiCharTypeLinearEnumOffsetOne
|
||||
{
|
||||
# define _FRIBIDI_ADD_TYPE(TYPE,SYMBOL) TYPE,
|
||||
# define _FRIBIDI_ADD_ALIAS(TYPE1,TYPE2) TYPE1 = TYPE2,
|
||||
# include <fribidi-bidi-types-list.h>
|
||||
# undef _FRIBIDI_ADD_ALIAS
|
||||
# undef _FRIBIDI_ADD_TYPE
|
||||
NUM_TYPES
|
||||
};
|
||||
|
||||
struct
|
||||
{
|
||||
const char *name;
|
||||
int key;
|
||||
}
|
||||
type_names[] =
|
||||
{
|
||||
# define _FRIBIDI_ADD_TYPE(TYPE,SYMBOL) {STRINGIZE(TYPE), TYPE},
|
||||
# define _FRIBIDI_ADD_ALIAS(TYPE1,TYPE2) _FRIBIDI_ADD_TYPE(TYPE1, SYMBOL)
|
||||
# include <fribidi-bidi-types-list.h>
|
||||
# undef _FRIBIDI_ADD_ALIAS
|
||||
# undef _FRIBIDI_ADD_TYPE
|
||||
};
|
||||
|
||||
#define type_names_count (sizeof (type_names) / sizeof (type_names[0]))
|
||||
|
||||
static const char *names[type_names_count];
|
||||
|
||||
static char
|
||||
get_type (
|
||||
const char *s
|
||||
)
|
||||
{
|
||||
unsigned int i;
|
||||
|
||||
for (i = 0; i < type_names_count; i++)
|
||||
if (!strcmp (s, type_names[i].name))
|
||||
return type_names[i].key;
|
||||
die2 ("bidi type name `%s' not found", s);
|
||||
return 0;
|
||||
}
|
||||
|
||||
#define table_name "Bid"
|
||||
#define macro_name "FRIBIDI_GET_BIDI_TYPE"
|
||||
|
||||
static signed int table[FRIBIDI_UNICODE_CHARS];
|
||||
static char buf[4000];
|
||||
static char tp[sizeof (buf)];
|
||||
|
||||
static void
|
||||
init (
|
||||
void
|
||||
)
|
||||
{
|
||||
register int i;
|
||||
|
||||
for (i = 0; i < type_names_count; i++)
|
||||
names[i] = 0;
|
||||
for (i = type_names_count - 1; i >= 0; i--)
|
||||
names[type_names[i].key] = type_names[i].name;
|
||||
}
|
||||
|
||||
static void
|
||||
clear_tab (
|
||||
void
|
||||
)
|
||||
{
|
||||
register FriBidiChar c;
|
||||
|
||||
for (c = 0; c < FRIBIDI_UNICODE_CHARS; c++)
|
||||
table[c] = LTR;
|
||||
}
|
||||
|
||||
static void
|
||||
init_tab_unicode_data_txt (
|
||||
void
|
||||
)
|
||||
{
|
||||
register FriBidiChar c;
|
||||
|
||||
clear_tab ();
|
||||
|
||||
for (c = 0x0590; c < 0x0600; c++)
|
||||
table[c] = RTL;
|
||||
for (c = 0x07C0; c < 0x0900; c++)
|
||||
table[c] = RTL;
|
||||
for (c = 0xFB1D; c < 0xFB50; c++)
|
||||
table[c] = RTL;
|
||||
|
||||
for (c = 0x0600; c < 0x07C0; c++)
|
||||
table[c] = AL;
|
||||
for (c = 0xFB50; c < 0xFDD0; c++)
|
||||
table[c] = AL;
|
||||
for (c = 0xFDF0; c < 0xFE00; c++)
|
||||
table[c] = AL;
|
||||
for (c = 0xFE70; c < 0xFF00; c++)
|
||||
table[c] = AL;
|
||||
|
||||
for (c = 0x2060; c < 0x2070; c++)
|
||||
table[c] = BN;
|
||||
for (c = 0xFDD0; c < 0xFDF0; c++)
|
||||
table[c] = BN;
|
||||
for (c = 0xFFF0; c < 0xFFF9; c++)
|
||||
table[c] = BN;
|
||||
for (c = 0xFFFF; c < FRIBIDI_UNICODE_CHARS; c += 0x10000)
|
||||
table[c - 1] = table[c] = BN;
|
||||
|
||||
if (FRIBIDI_UNICODE_CHARS > 0x10000)
|
||||
{
|
||||
for (c = 0x10800; c < 0x11000; c++)
|
||||
table[c] = RTL;
|
||||
|
||||
for (c = 0xE0000; c < 0xE1000; c++)
|
||||
table[c] = BN;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
init_tab_derived_bidi_class_txt (
|
||||
void
|
||||
)
|
||||
{
|
||||
clear_tab ();
|
||||
}
|
||||
|
||||
static void
|
||||
read_unicode_data_txt (
|
||||
FILE *f
|
||||
)
|
||||
{
|
||||
unsigned long c, l;
|
||||
|
||||
init_tab_unicode_data_txt ();
|
||||
|
||||
l = 0;
|
||||
while (fgets (buf, sizeof buf, f))
|
||||
{
|
||||
int i;
|
||||
const char *s = buf;
|
||||
|
||||
l++;
|
||||
|
||||
while (*s == ' ')
|
||||
s++;
|
||||
|
||||
if (s[0] == '#' || s[0] == '\0' || s[0] == '\n')
|
||||
continue;
|
||||
|
||||
i = sscanf (s, "%lx;%*[^;];%*[^;];%*[^;];%[^; ]", &c, tp);
|
||||
if (i != 2 || c >= FRIBIDI_UNICODE_CHARS)
|
||||
die3 ("invalid input at line %ld: %s", l, s);
|
||||
|
||||
/* FIXME: We don't handle First..Last parts of UnicodeData.txt,
|
||||
* but it works, since all those are LTR. */
|
||||
table[c] = get_type (tp);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
read_derived_bidi_class_txt (
|
||||
FILE *f
|
||||
)
|
||||
{
|
||||
unsigned long c, c2, l;
|
||||
|
||||
init_tab_derived_bidi_class_txt ();
|
||||
|
||||
l = 0;
|
||||
while (fgets (buf, sizeof buf, f))
|
||||
{
|
||||
int i;
|
||||
register char typ;
|
||||
const char *s = buf;
|
||||
|
||||
l++;
|
||||
|
||||
while (*s == ' ')
|
||||
s++;
|
||||
|
||||
if (s[0] == '#' || s[0] == '\0' || s[0] == '\n')
|
||||
continue;
|
||||
|
||||
i = sscanf (s, "%lx ; %[^; ]", &c, tp);
|
||||
if (i == 2)
|
||||
c2 = c;
|
||||
else
|
||||
i = sscanf (s, "%lx..%lx ; %[^; ]", &c, &c2, tp) - 1;
|
||||
|
||||
if (i != 2 || c > c2 || c2 >= FRIBIDI_UNICODE_CHARS)
|
||||
die3 ("invalid input at line %ld: %s", l, s);
|
||||
|
||||
typ = get_type (tp);
|
||||
for (; c <= c2; c++)
|
||||
table[c] = typ;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
read_data (
|
||||
const char *data_file_type,
|
||||
const char *data_file_name
|
||||
)
|
||||
{
|
||||
FILE *f;
|
||||
|
||||
fprintf (stderr, "Reading `%s'\n", data_file_name);
|
||||
if (!(f = fopen (data_file_name, "rt")))
|
||||
die2 ("error: cannot open `%s' for reading", data_file_name);
|
||||
|
||||
if (!strcmp (data_file_type, "UnicodeData.txt"))
|
||||
read_unicode_data_txt (f);
|
||||
else if (!strcmp (data_file_type, "DerivedBidiClass.txt"))
|
||||
read_derived_bidi_class_txt (f);
|
||||
else
|
||||
die2 ("error: unknown data-file type %s", data_file_type);
|
||||
|
||||
fclose (f);
|
||||
}
|
||||
|
||||
static void
|
||||
gen_bidi_type_tab (
|
||||
int max_depth,
|
||||
const char *data_file_type
|
||||
)
|
||||
{
|
||||
fprintf (stderr,
|
||||
"Generating `" outputname "', it may take up to a few minutes\n");
|
||||
printf ("/* " outputname "\n * generated by " appname " (" FRIBIDI_NAME " "
|
||||
FRIBIDI_VERSION ")\n" " * from the file %s of Unicode version "
|
||||
FRIBIDI_UNICODE_VERSION ". */\n\n", data_file_type);
|
||||
|
||||
printf ("#define PACKTAB_UINT8 fribidi_uint8\n"
|
||||
"#define PACKTAB_UINT16 fribidi_uint16\n"
|
||||
"#define PACKTAB_UINT32 fribidi_uint32\n\n");
|
||||
|
||||
if (!pack_table
|
||||
(table, FRIBIDI_UNICODE_CHARS, 1, LTR, max_depth, 3, names,
|
||||
"unsigned char", table_name, macro_name, stdout))
|
||||
die ("error: insufficient memory, decrease max_depth");
|
||||
|
||||
printf ("#undef PACKTAB_UINT8\n"
|
||||
"#undef PACKTAB_UINT16\n" "#undef PACKTAB_UINT32\n\n");
|
||||
|
||||
printf ("/* End of generated " outputname " */\n");
|
||||
}
|
||||
|
||||
int
|
||||
main (
|
||||
int argc,
|
||||
const char **argv
|
||||
)
|
||||
{
|
||||
const char *data_file_type = "UnicodeData.txt";
|
||||
|
||||
if (argc < 3)
|
||||
die2 ("usage:\n " appname " max-depth /path/to/%s [junk...]",
|
||||
data_file_type);
|
||||
|
||||
{
|
||||
int max_depth = atoi (argv[1]);
|
||||
const char *data_file_name = argv[2];
|
||||
|
||||
if (max_depth < 2)
|
||||
die ("invalid depth");
|
||||
|
||||
init ();
|
||||
read_data (data_file_type, data_file_name);
|
||||
gen_bidi_type_tab (max_depth, data_file_type);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
360
3party/fribidi/gen.tab/gen-joining-type-tab.c
Normal file
360
3party/fribidi/gen.tab/gen-joining-type-tab.c
Normal file
|
@ -0,0 +1,360 @@
|
|||
/* FriBidi
|
||||
* gen-joining-type-tab.c - generate joining-type.tab.i
|
||||
*
|
||||
* $Id: gen-joining-type-tab.c,v 1.6 2006/01/31 03:23:12 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2006/01/31 03:23:12 $
|
||||
* $Revision: 1.6 $
|
||||
* $Source: /cvs/fribidi/fribidi2/gen.tab/gen-joining-type-tab.c,v $
|
||||
*
|
||||
* Author:
|
||||
* Behdad Esfahbod, 2004
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2004 Behdad Esfahbod
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi-unicode.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#if STDC_HEADERS+0
|
||||
# include <stdlib.h>
|
||||
# include <stddef.h>
|
||||
#else
|
||||
# if HAVE_STDLIB_H
|
||||
# include <stdlib.h>
|
||||
# endif
|
||||
#endif
|
||||
#if HAVE_STRING_H+0
|
||||
# if !STDC_HEADERS && HAVE_MEMORY_H
|
||||
# include <memory.h>
|
||||
# endif
|
||||
# include <string.h>
|
||||
#endif
|
||||
#if HAVE_STRINGS_H+0
|
||||
# include <strings.h>
|
||||
#endif
|
||||
|
||||
#include "packtab.h"
|
||||
|
||||
#define appname "gen-joining-type-tab"
|
||||
#define outputname "joining-type.tab.i"
|
||||
|
||||
static void
|
||||
die (
|
||||
const char *msg
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": %s\n", msg);
|
||||
exit (1);
|
||||
}
|
||||
|
||||
static void
|
||||
die2 (
|
||||
const char *fmt,
|
||||
const char *p
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": ");
|
||||
fprintf (stderr, fmt, p);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
static void
|
||||
die3 (
|
||||
const char *fmt,
|
||||
const char *p,
|
||||
const char *q
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": ");
|
||||
fprintf (stderr, fmt, p, q);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
static void
|
||||
die3l (
|
||||
const char *fmt,
|
||||
unsigned long l,
|
||||
const char *p
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": ");
|
||||
fprintf (stderr, fmt, l, p);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
enum FriBidiJoiningLinearEnumOffsetOne
|
||||
{
|
||||
# define _FRIBIDI_ADD_TYPE(TYPE,SYMBOL) TYPE,
|
||||
# include <fribidi-joining-types-list.h>
|
||||
# undef _FRIBIDI_ADD_TYPE
|
||||
NUM_TYPES
|
||||
};
|
||||
|
||||
struct
|
||||
{
|
||||
const char *name;
|
||||
int key;
|
||||
}
|
||||
type_names[] =
|
||||
{
|
||||
# define _FRIBIDI_ADD_TYPE(TYPE,SYMBOL) {STRINGIZE(TYPE), TYPE},
|
||||
# include <fribidi-joining-types-list.h>
|
||||
# undef _FRIBIDI_ADD_TYPE
|
||||
};
|
||||
|
||||
#define type_names_count (sizeof (type_names) / sizeof (type_names[0]))
|
||||
|
||||
static const char *names[type_names_count];
|
||||
|
||||
static char
|
||||
get_type (
|
||||
const char *s
|
||||
)
|
||||
{
|
||||
unsigned int i;
|
||||
|
||||
for (i = 0; i < type_names_count; i++)
|
||||
if (!strcmp (s, type_names[i].name))
|
||||
return type_names[i].key;
|
||||
die2 ("joining type name `%s' not found", s);
|
||||
return -1;
|
||||
}
|
||||
|
||||
static const char *ignored_bidi_types[] = {
|
||||
"BN",
|
||||
"LRE",
|
||||
"RLE",
|
||||
"LRO",
|
||||
"RLO",
|
||||
"PDF",
|
||||
NULL
|
||||
};
|
||||
|
||||
static const char *transparent_general_categories[] = {
|
||||
"Mn",
|
||||
"Cf",
|
||||
NULL
|
||||
};
|
||||
|
||||
static const char *
|
||||
type_is (
|
||||
const char *s,
|
||||
const char *type_list[]
|
||||
)
|
||||
{
|
||||
for (; type_list[0]; type_list++)
|
||||
if (!strcmp (s, type_list[0]))
|
||||
return type_list[0];
|
||||
return NULL;
|
||||
}
|
||||
|
||||
#define table_name "Joi"
|
||||
#define macro_name "FRIBIDI_GET_JOINING_TYPE"
|
||||
|
||||
static signed int table[FRIBIDI_UNICODE_CHARS];
|
||||
static char buf[4000];
|
||||
static char tp[sizeof (buf)], tp_gen[sizeof (buf)], tp_bidi[sizeof (buf)];
|
||||
|
||||
static void
|
||||
clear_tab (
|
||||
void
|
||||
)
|
||||
{
|
||||
register FriBidiChar c;
|
||||
|
||||
for (c = 0; c < FRIBIDI_UNICODE_CHARS; c++)
|
||||
table[c] = U;
|
||||
}
|
||||
|
||||
static void
|
||||
init (
|
||||
void
|
||||
)
|
||||
{
|
||||
register int i;
|
||||
|
||||
for (i = 0; i < type_names_count; i++)
|
||||
names[i] = 0;
|
||||
for (i = type_names_count - 1; i >= 0; i--)
|
||||
names[type_names[i].key] = type_names[i].name;
|
||||
|
||||
clear_tab ();
|
||||
}
|
||||
|
||||
static void
|
||||
read_unicode_data_txt (
|
||||
FILE *f
|
||||
)
|
||||
{
|
||||
unsigned long c, l;
|
||||
|
||||
l = 0;
|
||||
while (fgets (buf, sizeof buf, f))
|
||||
{
|
||||
int i;
|
||||
const char *s = buf;
|
||||
|
||||
l++;
|
||||
|
||||
while (*s == ' ')
|
||||
s++;
|
||||
|
||||
if (*s == '#' || *s == '\0' || *s == '\n')
|
||||
continue;
|
||||
|
||||
i = sscanf (s, "%lx;%*[^;];%[^; ];%*[^;];%[^; ]", &c, tp_gen, tp_bidi);
|
||||
if (i != 3 || c >= FRIBIDI_UNICODE_CHARS)
|
||||
die3l ("UnicodeData.txt: invalid input at line %ld: %s", l, s);
|
||||
|
||||
if (type_is (tp_bidi, ignored_bidi_types))
|
||||
table[c] = G;
|
||||
if (type_is (tp_gen, transparent_general_categories))
|
||||
table[c] = T;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
read_arabic_shaping_txt (
|
||||
FILE *f
|
||||
)
|
||||
{
|
||||
unsigned long c, c2, l;
|
||||
|
||||
l = 0;
|
||||
while (fgets (buf, sizeof buf, f))
|
||||
{
|
||||
int i;
|
||||
register char typ;
|
||||
const char *s = buf;
|
||||
|
||||
l++;
|
||||
|
||||
while (*s == ' ')
|
||||
s++;
|
||||
|
||||
if (*s == '#' || *s == '\0' || *s == '\n')
|
||||
continue;
|
||||
|
||||
i = sscanf (s, "%lx ; %*[^;]; %[^; ]", &c, tp);
|
||||
if (i == 2)
|
||||
c2 = c;
|
||||
else
|
||||
i = sscanf (s, "%lx..%lx ; %*[^;]; %[^; ]", &c, &c2, tp) - 1;
|
||||
|
||||
if (i != 2 || c > c2 || c2 >= FRIBIDI_UNICODE_CHARS)
|
||||
die3l ("ArabicShaping.txt: invalid input at line %ld: %s", l, s);
|
||||
|
||||
typ = get_type (tp);
|
||||
for (; c <= c2; c++)
|
||||
table[c] = typ;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
read_data (
|
||||
const char *data_file_type[],
|
||||
const char *data_file_name[]
|
||||
)
|
||||
{
|
||||
FILE *f;
|
||||
|
||||
for (; data_file_name[0] && data_file_type[0];
|
||||
data_file_name++, data_file_type++)
|
||||
{
|
||||
fprintf (stderr, "Reading `%s'\n", data_file_name[0]);
|
||||
if (!(f = fopen (data_file_name[0], "rt")))
|
||||
die2 ("error: cannot open `%s' for reading", data_file_name[0]);
|
||||
|
||||
if (!strcmp (data_file_type[0], "UnicodeData.txt"))
|
||||
read_unicode_data_txt (f);
|
||||
else if (!strcmp (data_file_type[0], "ArabicShaping.txt"))
|
||||
read_arabic_shaping_txt (f);
|
||||
else
|
||||
die2 ("error: unknown data-file type %s", data_file_type[0]);
|
||||
|
||||
fclose (f);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static void
|
||||
gen_joining_type_tab (
|
||||
int max_depth,
|
||||
const char *data_file_type[]
|
||||
)
|
||||
{
|
||||
fprintf (stderr,
|
||||
"Generating `" outputname "', it may take up to a few minutes\n");
|
||||
printf ("/* " outputname "\n * generated by " appname " (" FRIBIDI_NAME " "
|
||||
FRIBIDI_VERSION ")\n" " * from the files %s, %s of Unicode version "
|
||||
FRIBIDI_UNICODE_VERSION ". */\n\n", data_file_type[0],
|
||||
data_file_type[1]);
|
||||
|
||||
printf ("#define PACKTAB_UINT8 fribidi_uint8\n"
|
||||
"#define PACKTAB_UINT16 fribidi_uint16\n"
|
||||
"#define PACKTAB_UINT32 fribidi_uint32\n\n");
|
||||
|
||||
if (!pack_table
|
||||
(table, FRIBIDI_UNICODE_CHARS, 1, U, max_depth, 1, names,
|
||||
"unsigned char", table_name, macro_name, stdout))
|
||||
die ("error: insufficient memory, decrease max_depth");
|
||||
|
||||
printf ("#undef PACKTAB_UINT8\n"
|
||||
"#undef PACKTAB_UINT16\n" "#undef PACKTAB_UINT32\n\n");
|
||||
|
||||
printf ("/* End of generated " outputname " */\n");
|
||||
}
|
||||
|
||||
int
|
||||
main (
|
||||
int argc,
|
||||
const char **argv
|
||||
)
|
||||
{
|
||||
const char *data_file_type[] =
|
||||
{ "UnicodeData.txt", "ArabicShaping.txt", NULL };
|
||||
|
||||
if (argc < 4)
|
||||
die3 ("usage:\n " appname " max-depth /path/to/%s /path/to/%s [junk...]",
|
||||
data_file_type[0], data_file_type[1]);
|
||||
|
||||
{
|
||||
int max_depth = atoi (argv[1]);
|
||||
const char *data_file_name[] = { NULL, NULL, NULL };
|
||||
data_file_name[0] = argv[2];
|
||||
data_file_name[1] = argv[3];
|
||||
|
||||
if (max_depth < 2)
|
||||
die ("invalid depth");
|
||||
|
||||
init ();
|
||||
read_data (data_file_type, data_file_name);
|
||||
gen_joining_type_tab (max_depth, data_file_type);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
249
3party/fribidi/gen.tab/gen-mirroring-tab.c
Normal file
249
3party/fribidi/gen.tab/gen-mirroring-tab.c
Normal file
|
@ -0,0 +1,249 @@
|
|||
/* FriBidi
|
||||
* gen-mirroring-tab.c - generate mirroring.tab.i
|
||||
*
|
||||
* $Id: gen-mirroring-tab.c,v 1.14 2006/01/31 03:23:12 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2006/01/31 03:23:12 $
|
||||
* $Revision: 1.14 $
|
||||
* $Source: /cvs/fribidi/fribidi2/gen.tab/gen-mirroring-tab.c,v $
|
||||
*
|
||||
* Author:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2001,2002,2004 Behdad Esfahbod
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <fribidi-unicode.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#if STDC_HEADERS+0
|
||||
# include <stdlib.h>
|
||||
# include <stddef.h>
|
||||
#else
|
||||
# if HAVE_STDLIB_H
|
||||
# include <stdlib.h>
|
||||
# endif
|
||||
#endif
|
||||
#if HAVE_STRING_H+0
|
||||
# if !STDC_HEADERS && HAVE_MEMORY_H
|
||||
# include <memory.h>
|
||||
# endif
|
||||
# include <string.h>
|
||||
#endif
|
||||
#if HAVE_STRINGS_H+0
|
||||
# include <strings.h>
|
||||
#endif
|
||||
|
||||
#include "packtab.h"
|
||||
|
||||
#define appname "gen-mirroring-tab"
|
||||
#define outputname "mirroring.tab.i"
|
||||
|
||||
static void
|
||||
die (
|
||||
const char *msg
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": %s\n", msg);
|
||||
exit (1);
|
||||
}
|
||||
|
||||
static void
|
||||
die2 (
|
||||
const char *fmt,
|
||||
const char *p
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": ");
|
||||
fprintf (stderr, fmt, p);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
static void
|
||||
die4 (
|
||||
const char *fmt,
|
||||
unsigned long l,
|
||||
unsigned long p,
|
||||
unsigned long q
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": ");
|
||||
fprintf (stderr, fmt, l, p, q);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
#define table_name "Mir"
|
||||
#define macro_name "FRIBIDI_GET_MIRRORING"
|
||||
|
||||
static signed int table[FRIBIDI_UNICODE_CHARS];
|
||||
static char buf[4000];
|
||||
static signed long max_dist;
|
||||
|
||||
static void
|
||||
init (
|
||||
void
|
||||
)
|
||||
{
|
||||
max_dist = 0;
|
||||
}
|
||||
|
||||
static void
|
||||
clear_tab (
|
||||
void
|
||||
)
|
||||
{
|
||||
register FriBidiChar c;
|
||||
|
||||
for (c = 0; c < FRIBIDI_UNICODE_CHARS; c++)
|
||||
table[c] = 0;
|
||||
}
|
||||
|
||||
static void
|
||||
init_tab_mirroring_txt (
|
||||
void
|
||||
)
|
||||
{
|
||||
clear_tab ();
|
||||
}
|
||||
|
||||
static void
|
||||
read_bidi_mirroring_txt (
|
||||
FILE *f
|
||||
)
|
||||
{
|
||||
unsigned long l;
|
||||
|
||||
init_tab_mirroring_txt ();
|
||||
|
||||
l = 0;
|
||||
while (fgets (buf, sizeof buf, f))
|
||||
{
|
||||
unsigned long i, j;
|
||||
signed long dist;
|
||||
int k;
|
||||
const char *s = buf;
|
||||
|
||||
l++;
|
||||
|
||||
while (*s == ' ')
|
||||
s++;
|
||||
|
||||
if (s[0] == '#' || s[0] == '\0' || s[0] == '\n')
|
||||
continue;
|
||||
|
||||
k = sscanf (s, "%lx; %lx", &i, &j);
|
||||
if (k != 2 || i >= FRIBIDI_UNICODE_CHARS || j >= FRIBIDI_UNICODE_CHARS)
|
||||
die4 ("invalid pair in input at line %ld: %04lX, %04lX", l, i, j);
|
||||
dist = ((signed long) j - (signed long) i);
|
||||
table[i] = dist;
|
||||
if (dist > max_dist)
|
||||
max_dist = dist;
|
||||
else if (-dist > max_dist)
|
||||
max_dist = -dist;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
read_data (
|
||||
const char *data_file_type,
|
||||
const char *data_file_name
|
||||
)
|
||||
{
|
||||
FILE *f;
|
||||
|
||||
fprintf (stderr, "Reading `%s'\n", data_file_name);
|
||||
if (!(f = fopen (data_file_name, "rt")))
|
||||
die2 ("error: cannot open `%s' for reading", data_file_name);
|
||||
|
||||
if (!strcmp (data_file_type, "BidiMirroring.txt"))
|
||||
read_bidi_mirroring_txt (f);
|
||||
else
|
||||
die2 ("error: unknown data-file-type %s", data_file_type);
|
||||
|
||||
fclose (f);
|
||||
}
|
||||
|
||||
static void
|
||||
gen_mirroring_tab (
|
||||
int max_depth,
|
||||
const char *data_file_type
|
||||
)
|
||||
{
|
||||
int key_bytes;
|
||||
const char *key_type;
|
||||
|
||||
fprintf (stderr,
|
||||
"Generating `" outputname "', it may take up to a few minutes\n");
|
||||
printf ("/* " outputname "\n * generated by " appname " (" FRIBIDI_NAME " "
|
||||
FRIBIDI_VERSION ")\n" " * from the file %s of Unicode version "
|
||||
FRIBIDI_UNICODE_VERSION ". */\n\n", data_file_type);
|
||||
|
||||
printf ("#define PACKTAB_UINT8 fribidi_uint8\n"
|
||||
"#define PACKTAB_UINT16 fribidi_uint16\n"
|
||||
"#define PACKTAB_UINT32 fribidi_uint32\n\n");
|
||||
|
||||
key_bytes = max_dist <= 0x7f ? 1 : max_dist < 0x7fff ? 2 : 4;
|
||||
key_type = key_bytes == 1 ? "fribidi_int8" : key_bytes == 2 ?
|
||||
"fribidi_int16" : "fribidi_int32";
|
||||
|
||||
if (!pack_table
|
||||
(table, FRIBIDI_UNICODE_CHARS, key_bytes, 0, max_depth, 1, NULL,
|
||||
key_type, table_name, macro_name "_DELTA", stdout))
|
||||
die ("error: insufficient memory, decrease max_depth");
|
||||
|
||||
printf ("#undef PACKTAB_UINT8\n"
|
||||
"#undef PACKTAB_UINT16\n" "#undef PACKTAB_UINT32\n\n");
|
||||
|
||||
printf ("#define " macro_name "(x) ((x) + " macro_name "_DELTA(x))\n\n");
|
||||
|
||||
printf ("/* End of generated " outputname " */\n");
|
||||
}
|
||||
|
||||
int
|
||||
main (
|
||||
int argc,
|
||||
const char **argv
|
||||
)
|
||||
{
|
||||
const char *data_file_type = "BidiMirroring.txt";
|
||||
|
||||
if (argc < 3)
|
||||
die2 ("usage:\n " appname " max-depth /path/to/%s [junk...]",
|
||||
data_file_type);
|
||||
|
||||
{
|
||||
int max_depth = atoi (argv[1]);
|
||||
const char *data_file_name = argv[2];
|
||||
|
||||
if (max_depth < 2)
|
||||
die ("invalid depth");
|
||||
|
||||
init ();
|
||||
read_data (data_file_type, data_file_name);
|
||||
gen_mirroring_tab (max_depth, data_file_type);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
206
3party/fribidi/gen.tab/gen-unicode-version.c
Normal file
206
3party/fribidi/gen.tab/gen-unicode-version.c
Normal file
|
@ -0,0 +1,206 @@
|
|||
/* FriBidi
|
||||
* gen-unicode-version.c - generate fribidi-unicode-version.h
|
||||
*
|
||||
* $Id: gen-unicode-version.c,v 1.12 2006/01/31 03:23:12 behdad Exp $
|
||||
* $Author: behdad $
|
||||
* $Date: 2006/01/31 03:23:12 $
|
||||
* $Revision: 1.12 $
|
||||
* $Source: /cvs/fribidi/fribidi2/gen.tab/gen-unicode-version.c,v $
|
||||
*
|
||||
* Author:
|
||||
* Behdad Esfahbod, 2001, 2002, 2004
|
||||
*
|
||||
* Copyright (C) 2004 Sharif FarsiWeb, Inc
|
||||
* Copyright (C) 2004 Behdad Esfahbod
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <license@farsiweb.info>.
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#if STDC_HEADERS+0
|
||||
# include <stdlib.h>
|
||||
# include <stddef.h>
|
||||
#else
|
||||
# if HAVE_STDLIB_H
|
||||
# include <stdlib.h>
|
||||
# endif
|
||||
#endif
|
||||
#if HAVE_STRING_H+0
|
||||
# if !STDC_HEADERS && HAVE_MEMORY_H
|
||||
# include <memory.h>
|
||||
# endif
|
||||
# include <string.h>
|
||||
#endif
|
||||
#if HAVE_STRINGS_H+0
|
||||
# include <strings.h>
|
||||
#endif
|
||||
|
||||
#include "packtab.h"
|
||||
|
||||
#define appname "gen-unicode-version"
|
||||
#define outputname "fribidi-unicode-version.h"
|
||||
|
||||
static void
|
||||
die (
|
||||
const char *msg
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": %s\n", msg);
|
||||
exit (1);
|
||||
}
|
||||
|
||||
static void
|
||||
die2 (
|
||||
const char *fmt,
|
||||
const char *p
|
||||
)
|
||||
{
|
||||
fprintf (stderr, appname ": ");
|
||||
fprintf (stderr, fmt, p);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
int version_major, version_minor, version_micro;
|
||||
char unicode_version[100];
|
||||
char buf[4000];
|
||||
|
||||
static void
|
||||
init (
|
||||
void
|
||||
)
|
||||
{
|
||||
version_major = version_minor = version_micro = 0;
|
||||
strcpy (unicode_version, "(unknown)");
|
||||
}
|
||||
|
||||
#define READ_VERSION(prefix) ((where = strstr(buf, prefix)) && \
|
||||
(3 == sscanf (where, \
|
||||
prefix"%d.%d.%d", &version_major, &version_minor, &version_micro)))
|
||||
|
||||
static int
|
||||
read_file (
|
||||
FILE *f
|
||||
)
|
||||
{
|
||||
int found = 0;
|
||||
|
||||
version_micro = 0;
|
||||
|
||||
while (fgets (buf, sizeof buf, f))
|
||||
{
|
||||
const char *where;
|
||||
|
||||
if (READ_VERSION ("Version ") || READ_VERSION ("Unicode "))
|
||||
{
|
||||
found = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!found)
|
||||
return 0;
|
||||
|
||||
sprintf (unicode_version, "%d.%d.%d", version_major, version_minor,
|
||||
version_micro);
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int
|
||||
read_data (
|
||||
const char *data_file_type,
|
||||
const char *data_file_name
|
||||
)
|
||||
{
|
||||
FILE *f;
|
||||
int status;
|
||||
|
||||
fprintf (stderr, "Reading `%s'\n", data_file_name);
|
||||
if (!(f = fopen (data_file_name, "rt")))
|
||||
die2 ("error: cannot open `%s' for reading", data_file_name);
|
||||
|
||||
status = read_file (f);
|
||||
|
||||
fclose (f);
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
static void
|
||||
gen_unicode_version (
|
||||
const char *data_file_type
|
||||
)
|
||||
{
|
||||
fprintf (stderr, "Generating `" outputname "'\n");
|
||||
printf ("/* " outputname "\n * generated by " appname " (" FRIBIDI_NAME " "
|
||||
FRIBIDI_VERSION ")\n" " * from the file %s */\n\n", data_file_type);
|
||||
|
||||
printf ("#define FRIBIDI_UNICODE_VERSION \"%s\"\n"
|
||||
"#define FRIBIDI_UNICODE_MAJOR_VERSION %d\n"
|
||||
"#define FRIBIDI_UNICODE_MINOR_VERSION %d\n"
|
||||
"#define FRIBIDI_UNICODE_MICRO_VERSION %d\n"
|
||||
"#define FRIBIDI_UNICODE_NAMESPACE(SYMBOL) \\\n"
|
||||
" FRIBIDI_NAMESPACE(SYMBOL##_unicode_%d_%d_%d)\n"
|
||||
"#define FRIBIDI_UNICODE_PRIVATESPACE(SYMBOL) \\\n"
|
||||
" FRIBIDI_PRIVATESPACE(SYMBOL##_unicode_%d_%d_%d)\n"
|
||||
"\n",
|
||||
unicode_version,
|
||||
version_major, version_minor, version_micro,
|
||||
version_major, version_minor, version_micro,
|
||||
version_major, version_minor, version_micro);
|
||||
|
||||
printf ("/* End of generated " outputname " */\n");
|
||||
}
|
||||
|
||||
int
|
||||
main (
|
||||
int argc,
|
||||
const char **argv
|
||||
)
|
||||
{
|
||||
const char *data_file_type;
|
||||
int i;
|
||||
int found = 0;
|
||||
|
||||
if (argc < 2)
|
||||
die ("usage:\n " appname
|
||||
" /path/to/a/UCD/file [/path/to/more/UCD/files ...]");
|
||||
|
||||
{
|
||||
const char *data_file_name;
|
||||
|
||||
init ();
|
||||
for (i = 1; i < argc && !found; i++)
|
||||
{
|
||||
data_file_name = argv[i];
|
||||
data_file_type = strrchr (data_file_name, '/');
|
||||
if (data_file_type)
|
||||
data_file_type++;
|
||||
else
|
||||
data_file_type = data_file_name;
|
||||
found = read_data (data_file_type, data_file_name);
|
||||
}
|
||||
if (!found)
|
||||
die ("error: version not found");
|
||||
gen_unicode_version (data_file_type);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
443
3party/fribidi/gen.tab/packtab.c
Normal file
443
3party/fribidi/gen.tab/packtab.c
Normal file
|
@ -0,0 +1,443 @@
|
|||
/* PackTab - Pack a static table
|
||||
* Copyright (C) 2001 Behdad Esfahbod.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <fwpg@sharif.edu>.
|
||||
*/
|
||||
|
||||
/*
|
||||
8 <= N <= 2^21
|
||||
int key
|
||||
1 <= max_depth <= 21
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H+0
|
||||
# include <config.h>
|
||||
#endif /* HAVE_CONFIG_H */
|
||||
|
||||
#include <stdio.h>
|
||||
#if STDC_HEADERS+0
|
||||
# include <stdlib.h>
|
||||
# include <stddef.h>
|
||||
#else
|
||||
# if HAVE_STDLIB_H
|
||||
# include <stdlib.h>
|
||||
# endif
|
||||
#endif
|
||||
#if HAVE_STRING_H+0
|
||||
# if !STDC_HEADERS && HAVE_MEMORY_H
|
||||
# include <memory.h>
|
||||
# endif
|
||||
# include <string.h>
|
||||
#endif
|
||||
#if HAVE_STRINGS_H+0
|
||||
# include <strings.h>
|
||||
#endif
|
||||
|
||||
#include "packtab.h"
|
||||
|
||||
typedef signed int uni_table[1024 * 1024 * 2];
|
||||
static int n, a, max_depth, digits, tab_width, per_row;
|
||||
static long N;
|
||||
signed int def_key;
|
||||
static uni_table temp, x, perm, *tab;
|
||||
static long pow[22], cluster, cmpcluster;
|
||||
static const char *const *name, *key_type_name, *table_name, *macro_name;
|
||||
static FILE *f;
|
||||
|
||||
static long
|
||||
most_binary (
|
||||
long min,
|
||||
long max
|
||||
)
|
||||
{
|
||||
/* min should be less than max */
|
||||
register int i, ii;
|
||||
|
||||
if (min == max)
|
||||
return max;
|
||||
|
||||
for (i = 21; max < pow[i]; i--)
|
||||
;
|
||||
ii = i;
|
||||
while (i && !((min ^ max) & pow[i]))
|
||||
i--;
|
||||
|
||||
if (ii == i)
|
||||
{
|
||||
/* min is less than half of max */
|
||||
for (i = 21 - 1; min < pow[i]; i--)
|
||||
;
|
||||
i++;
|
||||
return pow[i];
|
||||
}
|
||||
|
||||
return max & (pow[i] - 1);
|
||||
}
|
||||
|
||||
static void
|
||||
init (
|
||||
const signed int *table
|
||||
)
|
||||
{
|
||||
register int i;
|
||||
|
||||
/* initialize powers of two */
|
||||
pow[0] = 1;
|
||||
for (i = 1; i <= 21; i++)
|
||||
pow[i] = pow[i - 1] << 1;
|
||||
|
||||
/* reduce number of elements to get a more binary number */
|
||||
{
|
||||
long essen;
|
||||
|
||||
/* find number of essential items */
|
||||
essen = N - 1;
|
||||
while (essen && table[essen] == def_key)
|
||||
essen--;
|
||||
essen++;
|
||||
|
||||
N = most_binary (essen, N);
|
||||
}
|
||||
|
||||
for (n = 21; N % pow[n]; n--)
|
||||
;
|
||||
digits = (n + 3) / 4;
|
||||
for (i = 6; i; i--)
|
||||
if (pow[i] * (tab_width + 1) < 80)
|
||||
break;
|
||||
per_row = pow[i];
|
||||
}
|
||||
|
||||
static int
|
||||
compare (
|
||||
const void *r,
|
||||
const void *s
|
||||
)
|
||||
{
|
||||
int i;
|
||||
for (i = 0; i < cmpcluster; i++)
|
||||
if (((int *) r)[i] != ((int *) s)[i])
|
||||
return ((int *) r)[i] - ((int *) s)[i];
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int lev, best_lev, p[22], best_p[22], nn;
|
||||
static long c[22], best_c[22], s, best_s;
|
||||
static long t[22], best_t[22], clusters[22], best_cluster[22];
|
||||
|
||||
static void
|
||||
found (
|
||||
void
|
||||
)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (s < best_s)
|
||||
{
|
||||
best_s = s;
|
||||
best_lev = lev;
|
||||
for (i = 0; i <= lev; i++)
|
||||
{
|
||||
best_p[i] = p[i];
|
||||
best_c[i] = c[i];
|
||||
best_t[i] = t[i];
|
||||
best_cluster[i] = clusters[i];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
bt (
|
||||
int node_size
|
||||
)
|
||||
{
|
||||
long i, j, k, y, sbak;
|
||||
long key_bytes;
|
||||
|
||||
if (t[lev] == 1)
|
||||
{
|
||||
found ();
|
||||
return;
|
||||
}
|
||||
if (lev == max_depth)
|
||||
return;
|
||||
|
||||
for (i = 1 - t[lev] % 2; i <= nn + (t[lev] >> nn) % 2; i++)
|
||||
{
|
||||
nn -= (p[lev] = i);
|
||||
clusters[lev] = cluster = (i && nn >= 0) ? pow[i] : t[lev];
|
||||
cmpcluster = cluster + 1;
|
||||
|
||||
t[lev + 1] = (t[lev] - 1) / cluster + 1;
|
||||
for (j = 0; j < t[lev + 1]; j++)
|
||||
{
|
||||
memmove (temp + j * cmpcluster, tab[lev] + j * cluster,
|
||||
cluster * sizeof (tab[lev][0]));
|
||||
temp[j * cmpcluster + cluster] = j;
|
||||
}
|
||||
qsort (temp, t[lev + 1], cmpcluster * sizeof (temp[0]), compare);
|
||||
for (j = 0; j < t[lev + 1]; j++)
|
||||
{
|
||||
perm[j] = temp[j * cmpcluster + cluster];
|
||||
temp[j * cmpcluster + cluster] = 0;
|
||||
}
|
||||
k = 1;
|
||||
y = 0;
|
||||
tab[lev + 1][perm[0]] = perm[0];
|
||||
for (j = 1; j < t[lev + 1]; j++)
|
||||
{
|
||||
if (compare (temp + y, temp + y + cmpcluster))
|
||||
{
|
||||
k++;
|
||||
tab[lev + 1][perm[j]] = perm[j];
|
||||
}
|
||||
else
|
||||
tab[lev + 1][perm[j]] = tab[lev + 1][perm[j - 1]];
|
||||
y += cmpcluster;
|
||||
}
|
||||
sbak = s;
|
||||
s += k * node_size * cluster;
|
||||
c[lev] = k;
|
||||
|
||||
if (s >= best_s)
|
||||
{
|
||||
s = sbak;
|
||||
nn += i;
|
||||
return;
|
||||
}
|
||||
|
||||
key_bytes = k * cluster;
|
||||
key_bytes = key_bytes < 0xff ? 1 : key_bytes < 0xffff ? 2 : 4;
|
||||
lev++;
|
||||
bt (key_bytes);
|
||||
lev--;
|
||||
|
||||
s = sbak;
|
||||
nn += i;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
solve (
|
||||
void
|
||||
)
|
||||
{
|
||||
best_lev = max_depth + 2;
|
||||
best_s = N * a * 2;
|
||||
lev = 0;
|
||||
s = 0;
|
||||
nn = n;
|
||||
t[0] = N;
|
||||
bt (a);
|
||||
}
|
||||
|
||||
static void
|
||||
write_array (
|
||||
long max_key
|
||||
)
|
||||
{
|
||||
int i, j, k, y, ii, ofs;
|
||||
const char *key_type;
|
||||
|
||||
if (best_t[lev] == 1)
|
||||
return;
|
||||
|
||||
nn -= (i = best_p[lev]);
|
||||
cluster = best_cluster[lev];
|
||||
cmpcluster = cluster + 1;
|
||||
|
||||
t[lev + 1] = best_t[lev + 1];
|
||||
for (j = 0; j < t[lev + 1]; j++)
|
||||
{
|
||||
memmove (temp + j * cmpcluster, tab[lev] + j * cluster,
|
||||
cluster * sizeof (tab[lev][0]));
|
||||
temp[j * cmpcluster + cluster] = j;
|
||||
}
|
||||
qsort (temp, t[lev + 1], cmpcluster * sizeof (temp[0]), compare);
|
||||
for (j = 0; j < t[lev + 1]; j++)
|
||||
{
|
||||
perm[j] = temp[j * cmpcluster + cluster];
|
||||
temp[j * cmpcluster + cluster] = 0;
|
||||
}
|
||||
k = 1;
|
||||
y = 0;
|
||||
tab[lev + 1][perm[0]] = x[0] = perm[0];
|
||||
for (j = 1; j < t[lev + 1]; j++)
|
||||
{
|
||||
if (compare (temp + y, temp + y + cmpcluster))
|
||||
{
|
||||
x[k] = perm[j];
|
||||
tab[lev + 1][perm[j]] = x[k];
|
||||
k++;
|
||||
}
|
||||
else
|
||||
tab[lev + 1][perm[j]] = tab[lev + 1][perm[j - 1]];
|
||||
y += cmpcluster;
|
||||
}
|
||||
|
||||
i = 0;
|
||||
for (ii = 1; ii < k; ii++)
|
||||
if (x[ii] < x[i])
|
||||
i = ii;
|
||||
|
||||
key_type = !lev ? key_type_name :
|
||||
max_key <= 0xff ? "PACKTAB_UINT8" :
|
||||
max_key <= 0xffff ? "PACKTAB_UINT16" : "PACKTAB_UINT32";
|
||||
fprintf (f, "static const %s %sLev%d[%ld*%d] = {", key_type, table_name,
|
||||
best_lev - lev - 1, cluster, k);
|
||||
ofs = 0;
|
||||
for (ii = 0; ii < k; ii++)
|
||||
{
|
||||
int kk, jj;
|
||||
fprintf (f, "\n#define %sLev%d_%0*lX 0x%0X", table_name,
|
||||
best_lev - lev - 1, digits, x[i] * pow[n - nn], ofs);
|
||||
kk = x[i] * cluster;
|
||||
if (!lev)
|
||||
if (name)
|
||||
for (j = 0; j < cluster; j++)
|
||||
{
|
||||
if (!(j % per_row) && j != cluster - 1)
|
||||
fprintf (f, "\n ");
|
||||
fprintf (f, "%*s,", tab_width, name[tab[lev][kk++]]);
|
||||
}
|
||||
else
|
||||
for (j = 0; j < cluster; j++)
|
||||
{
|
||||
if (!(j % per_row) && j != cluster - 1)
|
||||
fprintf (f, "\n ");
|
||||
fprintf (f, "%*d,", tab_width, tab[lev][kk++]);
|
||||
}
|
||||
else
|
||||
for (j = 0; j < cluster; j++, kk++)
|
||||
fprintf (f, "\n %sLev%d_%0*lX, /* %0*lX..%0*lX */", table_name,
|
||||
best_lev - lev, digits,
|
||||
tab[lev][kk] * pow[n - nn - best_p[lev]], digits,
|
||||
x[i] * pow[n - nn] + j * pow[n - nn - best_p[lev]], digits,
|
||||
x[i] * pow[n - nn] + (j + 1) * pow[n - nn - best_p[lev]] -
|
||||
1);
|
||||
ofs += cluster;
|
||||
jj = i;
|
||||
for (j = 0; j < k; j++)
|
||||
if (x[j] > x[i] && (x[j] < x[jj] || jj == i))
|
||||
jj = j;
|
||||
i = jj;
|
||||
}
|
||||
fprintf (f, "\n};\n\n");
|
||||
lev++;
|
||||
write_array (cluster * k);
|
||||
lev--;
|
||||
}
|
||||
|
||||
static void
|
||||
write_source (
|
||||
void
|
||||
)
|
||||
{
|
||||
int i, j;
|
||||
|
||||
lev = 0;
|
||||
s = 0;
|
||||
nn = n;
|
||||
t[0] = N;
|
||||
fprintf (f, "\n" "/* *IND" "ENT-OFF* */\n\n");
|
||||
write_array (0);
|
||||
fprintf (f, "/* *IND" "ENT-ON* */\n\n");
|
||||
|
||||
fprintf (f, "#define %s(x) \\\n", macro_name);
|
||||
fprintf (f, "\t((x) >= 0x%lx ? ", N);
|
||||
if (name)
|
||||
fprintf (f, "%s", name[def_key]);
|
||||
else
|
||||
fprintf (f, "%d", def_key);
|
||||
fprintf (f, " : ");
|
||||
j = 0;
|
||||
for (i = best_lev - 1; i >= 0; i--)
|
||||
{
|
||||
fprintf (f, " \\\n\t%sLev%d[((x)", table_name, i);
|
||||
if (j != 0)
|
||||
fprintf (f, " >> %d", j);
|
||||
if (i)
|
||||
fprintf (f, " & 0x%02lx) +", pow[best_p[best_lev - 1 - i]] - 1);
|
||||
j += best_p[best_lev - 1 - i];
|
||||
}
|
||||
fprintf (f, ")");
|
||||
for (i = 0; i < best_lev; i++)
|
||||
fprintf (f, "]");
|
||||
fprintf (f, ")\n\n");
|
||||
}
|
||||
|
||||
static void
|
||||
write_out (
|
||||
void
|
||||
)
|
||||
{
|
||||
int i;
|
||||
fprintf (f, "/*\n"
|
||||
" generated by packtab.c version %d\n\n"
|
||||
" use %s(key) to access your table\n\n"
|
||||
" assumed sizeof(%s): %d\n"
|
||||
" required memory: %ld\n"
|
||||
" lookups: %d\n"
|
||||
" partition shape: %s",
|
||||
packtab_version, macro_name, key_type_name, a, best_s, best_lev,
|
||||
table_name);
|
||||
for (i = best_lev - 1; i >= 0; i--)
|
||||
fprintf (f, "[%ld]", best_cluster[i]);
|
||||
fprintf (f, "\n" " different table entries:");
|
||||
for (i = best_lev - 1; i >= 0; i--)
|
||||
fprintf (f, " %ld", best_c[i]);
|
||||
fprintf (f, "\n*/\n");
|
||||
write_source ();
|
||||
}
|
||||
|
||||
int
|
||||
pack_table (
|
||||
const signed int *base,
|
||||
long key_num,
|
||||
int key_size,
|
||||
signed int default_key,
|
||||
int p_max_depth,
|
||||
int p_tab_width,
|
||||
const char *const *p_name,
|
||||
const char *p_key_type_name,
|
||||
const char *p_table_name,
|
||||
const char *p_macro_name,
|
||||
FILE *out
|
||||
)
|
||||
{
|
||||
N = key_num;
|
||||
a = key_size;
|
||||
def_key = default_key;
|
||||
max_depth = p_max_depth;
|
||||
tab_width = p_tab_width;
|
||||
name = p_name;
|
||||
key_type_name = p_key_type_name;
|
||||
table_name = p_table_name;
|
||||
macro_name = p_macro_name;
|
||||
f = out;
|
||||
init (base);
|
||||
if (!(tab = malloc ((n + 1) * sizeof (tab[0]))))
|
||||
return 0;
|
||||
memmove (tab[0], base, N * sizeof (base[0]));
|
||||
solve ();
|
||||
write_out ();
|
||||
free (tab);
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* End of packtab.c */
|
50
3party/fribidi/gen.tab/packtab.h
Normal file
50
3party/fribidi/gen.tab/packtab.h
Normal file
|
@ -0,0 +1,50 @@
|
|||
/* PackTab - Pack a static table
|
||||
* Copyright (C) 2001 Behdad Esfahbod.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this library, in a file named COPYING; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307, USA
|
||||
*
|
||||
* For licensing issues, contact <fwpg@sharif.edu>.
|
||||
*/
|
||||
|
||||
#ifndef PACKTAB_H
|
||||
#define PACKTAB_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#define packtab_version 3
|
||||
|
||||
int pack_table (
|
||||
const signed int *base,
|
||||
long key_num,
|
||||
int key_size,
|
||||
signed int default_key,
|
||||
int max_depth,
|
||||
int tab_width,
|
||||
const char *const *name,
|
||||
const char *key_type_name,
|
||||
const char *table_name,
|
||||
const char *macro_name,
|
||||
FILE *out
|
||||
);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* PACKTAB_H */
|
362
3party/fribidi/gen.tab/unidata/ArabicShaping.txt
Normal file
362
3party/fribidi/gen.tab/unidata/ArabicShaping.txt
Normal file
|
@ -0,0 +1,362 @@
|
|||
# ArabicShaping-5.1.0.txt
|
||||
# Date: 2008-03-20, 17:39:00 PDT [KW]
|
||||
#
|
||||
# This file is a normative contributory data file in the
|
||||
# Unicode Character Database.
|
||||
#
|
||||
# Copyright (c) 1991-2008 Unicode, Inc.
|
||||
# For terms of use, see http://www.unicode.org/terms_of_use.html
|
||||
#
|
||||
# This file defines the shaping classes for Arabic and Syriac
|
||||
# positional shaping, repeating in machine readable form the
|
||||
# information printed in Tables 8-3, 8-7, 8-8, 8-11, 8-12, and
|
||||
# 8-13 of The Unicode Standard, Version 5.0.
|
||||
#
|
||||
# See sections 8.2 and 8.3 of The Unicode Standard, Version 5.0
|
||||
# for more information.
|
||||
#
|
||||
# Each line contains four fields, separated by a semicolon.
|
||||
#
|
||||
# Field 0: the code point, in 4-digit hexadecimal
|
||||
# form, of an Arabic or Syriac character.
|
||||
# Field 1: gives a short schematic name for that character,
|
||||
# abbreviated from the normative Unicode character name.
|
||||
# Field 2: defines the joining type (property name: Joining_Type)
|
||||
# R Right_Joining
|
||||
# L Left_Joining
|
||||
# D Dual_Joining
|
||||
# C Join_Causing
|
||||
# U Non_Joining
|
||||
# T Transparent
|
||||
# See the Arabic block description for more information on these types.
|
||||
# Field 3: defines the joining group (property name: Joining_Group)
|
||||
#
|
||||
# The values of the joining group are based schematically on character
|
||||
# names. Where a schematic character name consists of two or more parts separated
|
||||
# by spaces, the formal Joining_Group property value, as specified in
|
||||
# PropertyValueAliases.txt, consists of the same name parts joined by
|
||||
# underscores. Hence, the entry:
|
||||
#
|
||||
# 0629; TEH MARBUTA; R; TEH MARBUTA
|
||||
#
|
||||
# corresponds to [Joining_Group = Teh_Marbuta].
|
||||
#
|
||||
# Note: For historical reasons, the property value [Joining_Group = Hamza_On_Heh_Goal]
|
||||
# is anachronistically named. It used to apply to both of the following characters
|
||||
# in earlier versions of the standard:
|
||||
#
|
||||
# U+06C2 ARABIC LETTER HEH GOAL WITH HAMZA ABOVE
|
||||
# U+06C3 ARABIC LETTER TEH MARBUTA GOAL
|
||||
#
|
||||
# However, it currently applies only to U+06C3, and *not* to U+06C2.
|
||||
# To avoid destabilizing existing Joining_Group property aliases, the
|
||||
# value Hamza_On_Heh_Goal has not been changed, despite the fact that it
|
||||
# no longer applies to Hamza On Heh Goal, but only to Teh Marbuta Goal.
|
||||
#
|
||||
# Note: Code points that are not explicitly listed in this file are
|
||||
# either of joining type T or U:
|
||||
#
|
||||
# - Those that not explicitly listed that are of General Category Mn, Me, or Cf
|
||||
# have joining type T.
|
||||
# - All others not explicitly listed have type U.
|
||||
#
|
||||
# For an explicit listing of characters of joining type T, see
|
||||
# the derived property file DerivedJoiningType.txt.
|
||||
#
|
||||
# There are currently no characters of type L defined in Unicode.
|
||||
#
|
||||
# #############################################################
|
||||
|
||||
# Unicode; Schematic Name; Joining Type; Joining Group
|
||||
|
||||
# Arabic characters
|
||||
|
||||
0600; ARABIC NUMBER SIGN; U; No_Joining_Group
|
||||
0601; ARABIC SIGN SANAH; U; No_Joining_Group
|
||||
0602; ARABIC FOOTNOTE MARKER; U; No_Joining_Group
|
||||
0603; ARABIC SIGN SAFHA; U; No_Joining_Group
|
||||
0608; ARABIC RAY; U; No_Joining_Group
|
||||
060B; AFGHANI SIGN; U; No_Joining_Group
|
||||
0621; HAMZA; U; No_Joining_Group
|
||||
0622; MADDA ON ALEF; R; ALEF
|
||||
0623; HAMZA ON ALEF; R; ALEF
|
||||
0624; HAMZA ON WAW; R; WAW
|
||||
0625; HAMZA UNDER ALEF; R; ALEF
|
||||
0626; HAMZA ON YEH; D; YEH
|
||||
0627; ALEF; R; ALEF
|
||||
0628; BEH; D; BEH
|
||||
0629; TEH MARBUTA; R; TEH MARBUTA
|
||||
062A; TEH; D; BEH
|
||||
062B; THEH; D; BEH
|
||||
062C; JEEM; D; HAH
|
||||
062D; HAH; D; HAH
|
||||
062E; KHAH; D; HAH
|
||||
062F; DAL; R; DAL
|
||||
0630; THAL; R; DAL
|
||||
0631; REH; R; REH
|
||||
0632; ZAIN; R; REH
|
||||
0633; SEEN; D; SEEN
|
||||
0634; SHEEN; D; SEEN
|
||||
0635; SAD; D; SAD
|
||||
0636; DAD; D; SAD
|
||||
0637; TAH; D; TAH
|
||||
0638; ZAH; D; TAH
|
||||
0639; AIN; D; AIN
|
||||
063A; GHAIN; D; AIN
|
||||
063B; KEHEH WITH 2 DOTS ABOVE; D; GAF
|
||||
063C; KEHEH WITH 3 DOTS BELOW; D; GAF
|
||||
063D; FARSI YEH WITH INVERTED V; D; YEH
|
||||
063E; FARSI YEH WITH 2 DOTS ABOVE; D; YEH
|
||||
063F; FARSI YEH WITH 3 DOTS ABOVE; D; YEH
|
||||
0640; TATWEEL; C; No_Joining_Group
|
||||
0641; FEH; D; FEH
|
||||
0642; QAF; D; QAF
|
||||
0643; KAF; D; KAF
|
||||
0644; LAM; D; LAM
|
||||
0645; MEEM; D; MEEM
|
||||
0646; NOON; D; NOON
|
||||
0647; HEH; D; HEH
|
||||
0648; WAW; R; WAW
|
||||
0649; ALEF MAKSURA; D; YEH
|
||||
064A; YEH; D; YEH
|
||||
066E; DOTLESS BEH; D; BEH
|
||||
066F; DOTLESS QAF; D; QAF
|
||||
0671; HAMZAT WASL ON ALEF; R; ALEF
|
||||
0672; WAVY HAMZA ON ALEF; R; ALEF
|
||||
0673; WAVY HAMZA UNDER ALEF; R; ALEF
|
||||
0674; HIGH HAMZA; U; No_Joining_Group
|
||||
0675; HIGH HAMZA ALEF; R; ALEF
|
||||
0676; HIGH HAMZA WAW; R; WAW
|
||||
0677; HIGH HAMZA WAW WITH DAMMA; R; WAW
|
||||
0678; HIGH HAMZA YEH; D; YEH
|
||||
0679; TEH WITH SMALL TAH; D; BEH
|
||||
067A; TEH WITH 2 DOTS VERTICAL ABOVE; D; BEH
|
||||
067B; BEH WITH 2 DOTS VERTICAL BELOW; D; BEH
|
||||
067C; TEH WITH RING; D; BEH
|
||||
067D; TEH WITH 3 DOTS ABOVE DOWNWARD; D; BEH
|
||||
067E; TEH WITH 3 DOTS BELOW; D; BEH
|
||||
067F; TEH WITH 4 DOTS ABOVE; D; BEH
|
||||
0680; BEH WITH 4 DOTS BELOW; D; BEH
|
||||
0681; HAMZA ON HAH; D; HAH
|
||||
0682; HAH WITH 2 DOTS VERTICAL ABOVE; D; HAH
|
||||
0683; HAH WITH MIDDLE 2 DOTS; D; HAH
|
||||
0684; HAH WITH MIDDLE 2 DOTS VERTICAL; D; HAH
|
||||
0685; HAH WITH 3 DOTS ABOVE; D; HAH
|
||||
0686; HAH WITH MIDDLE 3 DOTS DOWNWARD; D; HAH
|
||||
0687; HAH WITH MIDDLE 4 DOTS; D; HAH
|
||||
0688; DAL WITH SMALL TAH; R; DAL
|
||||
0689; DAL WITH RING; R; DAL
|
||||
068A; DAL WITH DOT BELOW; R; DAL
|
||||
068B; DAL WITH DOT BELOW AND SMALL TAH; R; DAL
|
||||
068C; DAL WITH 2 DOTS ABOVE; R; DAL
|
||||
068D; DAL WITH 2 DOTS BELOW; R; DAL
|
||||
068E; DAL WITH 3 DOTS ABOVE; R; DAL
|
||||
068F; DAL WITH 3 DOTS ABOVE DOWNWARD; R; DAL
|
||||
0690; DAL WITH 4 DOTS ABOVE; R; DAL
|
||||
0691; REH WITH SMALL TAH; R; REH
|
||||
0692; REH WITH SMALL V; R; REH
|
||||
0693; REH WITH RING; R; REH
|
||||
0694; REH WITH DOT BELOW; R; REH
|
||||
0695; REH WITH SMALL V BELOW; R; REH
|
||||
0696; REH WITH DOT BELOW AND DOT ABOVE; R; REH
|
||||
0697; REH WITH 2 DOTS ABOVE; R; REH
|
||||
0698; REH WITH 3 DOTS ABOVE; R; REH
|
||||
0699; REH WITH 4 DOTS ABOVE; R; REH
|
||||
069A; SEEN WITH DOT BELOW AND DOT ABOVE; D; SEEN
|
||||
069B; SEEN WITH 3 DOTS BELOW; D; SEEN
|
||||
069C; SEEN WITH 3 DOTS BELOW AND 3 DOTS ABOVE; D; SEEN
|
||||
069D; SAD WITH 2 DOTS BELOW; D; SAD
|
||||
069E; SAD WITH 3 DOTS ABOVE; D; SAD
|
||||
069F; TAH WITH 3 DOTS ABOVE; D; TAH
|
||||
06A0; AIN WITH 3 DOTS ABOVE; D; AIN
|
||||
06A1; DOTLESS FEH; D; FEH
|
||||
06A2; FEH WITH DOT MOVED BELOW; D; FEH
|
||||
06A3; FEH WITH DOT BELOW; D; FEH
|
||||
06A4; FEH WITH 3 DOTS ABOVE; D; FEH
|
||||
06A5; FEH WITH 3 DOTS BELOW; D; FEH
|
||||
06A6; FEH WITH 4 DOTS ABOVE; D; FEH
|
||||
06A7; QAF WITH DOT ABOVE; D; QAF
|
||||
06A8; QAF WITH 3 DOTS ABOVE; D; QAF
|
||||
06A9; KEHEH; D; GAF
|
||||
06AA; SWASH KAF; D; SWASH KAF
|
||||
06AB; KAF WITH RING; D; GAF
|
||||
06AC; KAF WITH DOT ABOVE; D; KAF
|
||||
06AD; KAF WITH 3 DOTS ABOVE; D; KAF
|
||||
06AE; KAF WITH 3 DOTS BELOW; D; KAF
|
||||
06AF; GAF; D; GAF
|
||||
06B0; GAF WITH RING; D; GAF
|
||||
06B1; GAF WITH 2 DOTS ABOVE; D; GAF
|
||||
06B2; GAF WITH 2 DOTS BELOW; D; GAF
|
||||
06B3; GAF WITH 2 DOTS VERTICAL BELOW; D; GAF
|
||||
06B4; GAF WITH 3 DOTS ABOVE; D; GAF
|
||||
06B5; LAM WITH SMALL V; D; LAM
|
||||
06B6; LAM WITH DOT ABOVE; D; LAM
|
||||
06B7; LAM WITH 3 DOTS ABOVE; D; LAM
|
||||
06B8; LAM WITH 3 DOTS BELOW; D; LAM
|
||||
06B9; NOON WITH DOT BELOW; D; NOON
|
||||
06BA; DOTLESS NOON; D; NOON
|
||||
06BB; DOTLESS NOON WITH SMALL TAH; D; NOON
|
||||
06BC; NOON WITH RING; D; NOON
|
||||
06BD; NOON WITH 3 DOTS ABOVE; D; NOON
|
||||
06BE; KNOTTED HEH; D; KNOTTED HEH
|
||||
06BF; HAH WITH MIDDLE 3 DOTS DOWNWARD AND DOT ABOVE; D; HAH
|
||||
06C0; HAMZA ON HEH; R; TEH MARBUTA
|
||||
06C1; HEH GOAL; D; HEH GOAL
|
||||
06C2; HAMZA ON HEH GOAL; D; HEH GOAL
|
||||
06C3; TEH MARBUTA GOAL; R; HAMZA ON HEH GOAL
|
||||
06C4; WAW WITH RING; R; WAW
|
||||
06C5; WAW WITH BAR; R; WAW
|
||||
06C6; WAW WITH SMALL V; R; WAW
|
||||
06C7; WAW WITH DAMMA; R; WAW
|
||||
06C8; WAW WITH ALEF ABOVE; R; WAW
|
||||
06C9; WAW WITH INVERTED SMALL V; R; WAW
|
||||
06CA; WAW WITH 2 DOTS ABOVE; R; WAW
|
||||
06CB; WAW WITH 3 DOTS ABOVE; R; WAW
|
||||
06CC; DOTLESS YEH; D; YEH
|
||||
06CD; YEH WITH TAIL; R; YEH WITH TAIL
|
||||
06CE; YEH WITH SMALL V; D; YEH
|
||||
06CF; WAW WITH DOT ABOVE; R; WAW
|
||||
06D0; YEH WITH 2 DOTS VERTICAL BELOW; D; YEH
|
||||
06D1; YEH WITH 3 DOTS BELOW; D; YEH
|
||||
06D2; YEH BARREE; R; YEH BARREE
|
||||
06D3; HAMZA ON YEH BARREE; R; YEH BARREE
|
||||
06D5; AE; R; TEH MARBUTA
|
||||
06DD; ARABIC END OF AYAH; U; No_Joining_Group
|
||||
06EE; DAL WITH INVERTED V; R; DAL
|
||||
06EF; REH WITH INVERTED V; R; REH
|
||||
06FA; SEEN WITH DOT BELOW AND 3 DOTS ABOVE; D; SEEN
|
||||
06FB; DAD WITH DOT BELOW; D; SAD
|
||||
06FC; GHAIN WITH DOT BELOW; D; AIN
|
||||
06FF; HEH WITH INVERTED V; D; KNOTTED HEH
|
||||
|
||||
# Syriac characters
|
||||
|
||||
0710; ALAPH; R; ALAPH
|
||||
0712; BETH; D; BETH
|
||||
0713; GAMAL; D; GAMAL
|
||||
0714; GAMAL GARSHUNI; D; GAMAL
|
||||
0715; DALATH; R; DALATH RISH
|
||||
0716; DOTLESS DALATH RISH; R; DALATH RISH
|
||||
0717; HE; R; HE
|
||||
0718; WAW; R; SYRIAC WAW
|
||||
0719; ZAIN; R; ZAIN
|
||||
071A; HETH; D; HETH
|
||||
071B; TETH; D; TETH
|
||||
071C; TETH GARSHUNI; D; TETH
|
||||
071D; YUDH; D; YUDH
|
||||
071E; YUDH HE; R; YUDH HE
|
||||
071F; KAPH; D; KAPH
|
||||
0720; LAMADH; D; LAMADH
|
||||
0721; MIM; D; MIM
|
||||
0722; NUN; D; NUN
|
||||
0723; SEMKATH; D; SEMKATH
|
||||
0724; FINAL SEMKATH; D; FINAL SEMKATH
|
||||
0725; E; D; E
|
||||
0726; PE; D; PE
|
||||
0727; REVERSED PE; D; REVERSED PE
|
||||
0728; SADHE; R; SADHE
|
||||
0729; QAPH; D; QAPH
|
||||
072A; RISH; R; DALATH RISH
|
||||
072B; SHIN; D; SHIN
|
||||
072C; TAW; R; TAW
|
||||
072D; PERSIAN BHETH; D; BETH
|
||||
072E; PERSIAN GHAMAL; D; GAMAL
|
||||
072F; PERSIAN DHALATH; R; DALATH RISH
|
||||
074D; SOGDIAN ZHAIN; R; ZHAIN
|
||||
074E; SOGDIAN KHAPH; D; KHAPH
|
||||
074F; SOGDIAN FE; D; FE
|
||||
|
||||
# Arabic supplement characters
|
||||
|
||||
0750; BEH WITH 3 DOTS HORIZONTALLY BELOW; D; BEH
|
||||
0751; BEH WITH DOT BELOW AND 3 DOTS ABOVE; D; BEH
|
||||
0752; BEH WITH 3 DOTS POINTING UPWARDS BELOW; D; BEH
|
||||
0753; BEH WITH 3 DOTS POINTING UPWARDS BELOW AND 2 DOTS ABOVE; D; BEH
|
||||
0754; BEH WITH 2 DOTS BELOW AND DOT ABOVE; D; BEH
|
||||
0755; BEH WITH INVERTED SMALL V BELOW; D; BEH
|
||||
0756; BEH WITH SMALL V; D; BEH
|
||||
0757; HAH WITH 2 DOTS ABOVE; D; HAH
|
||||
0758; HAH WITH 3 DOTS POINTING UPWARDS BELOW; D; HAH
|
||||
0759; DAL WITH 2 DOTS VERTICALLY BELOW AND SMALL TAH; R; DAL
|
||||
075A; DAL WITH INVERTED SMALL V BELOW; R; DAL
|
||||
075B; REH WITH STROKE; R; REH
|
||||
075C; SEEN WITH 4 DOTS ABOVE; D; SEEN
|
||||
075D; AIN WITH 2 DOTS ABOVE; D; AIN
|
||||
075E; AIN WITH 3 DOTS POINTING DOWNWARDS ABOVE; D; AIN
|
||||
075F; AIN WITH 2 DOTS VERTICALLY ABOVE; D; AIN
|
||||
0760; FEH WITH 2 DOTS BELOW; D; FEH
|
||||
0761; FEH WITH 3 DOTS POINTING UPWARDS BELOW; D; FEH
|
||||
0762; KEHEH WITH DOT ABOVE; D; GAF
|
||||
0763; KEHEH WITH 3 DOTS ABOVE; D; GAF
|
||||
0764; KEHEH WITH 3 DOTS POINTING UPWARDS BELOW; D; GAF
|
||||
0765; MEEM WITH DOT ABOVE; D; MEEM
|
||||
0766; MEEM WITH DOT BELOW; D; MEEM
|
||||
0767; NOON WITH 2 DOTS BELOW; D; NOON
|
||||
0768; NOON WITH SMALL TAH; D; NOON
|
||||
0769; NOON WITH SMALL V; D; NOON
|
||||
076A; LAM WITH BAR; D; LAM
|
||||
076B; REH WITH 2 DOTS VERTICALLY ABOVE; R; REH
|
||||
076C; REH WITH HAMZA ABOVE; R; REH
|
||||
076D; SEEN WITH 2 DOTS VERTICALLY ABOVE; D; SEEN
|
||||
076E; HAH WITH SMALL TAH BELOW; D; HAH
|
||||
076F; HAH WITH SMALL TAH AND 2 DOTS; D; HAH
|
||||
0770; SEEN WITH SMALL TAH AND 2 DOTS; D; SEEN
|
||||
0771; REH WITH SMALL TAH AND 2 DOTS; R; REH
|
||||
0772; HAH WITH SMALL TAH ABOVE; D; HAH
|
||||
0773; ALEF WITH DIGIT TWO ABOVE; R; ALEF
|
||||
0774; ALEF WITH DIGIT THREE ABOVE; R; ALEF
|
||||
0775; DOTLESS YEH WITH DIGIT TWO ABOVE; D; YEH
|
||||
0776; DOTLESS YEH WITH DIGIT THREE ABOVE; D; YEH
|
||||
0777; DOTLESS YEH WITH DIGIT FOUR BELOW; D; YEH
|
||||
0778; WAW WITH DIGIT TWO ABOVE; R; WAW
|
||||
0779; WAW WITH DIGIT THREE ABOVE; R; WAW
|
||||
077A; YEH BARREE WITH DIGIT TWO ABOVE; D; BURUSHASKI YEH BARREE
|
||||
077B; YEH BARREE WITH DIGIT THREE ABOVE; D; BURUSHASKI YEH BARREE
|
||||
077C; HAH WITH DIGIT FOUR BELOW; D; HAH
|
||||
077D; SEEN WITH DIGIT FOUR ABOVE; D; SEEN
|
||||
077E; SEEN WITH INVERTED V; D; SEEN
|
||||
077F; KAF WITH 2 DOTS ABOVE; D; KAF
|
||||
|
||||
# N'Ko Characters
|
||||
|
||||
07CA; NKO A; D; No_Joining_Group
|
||||
07CB; NKO EE; D; No_Joining_Group
|
||||
07CC; NKO I; D; No_Joining_Group
|
||||
07CD; NKO E; D; No_Joining_Group
|
||||
07CE; NKO U; D; No_Joining_Group
|
||||
07CF; NKO OO; D; No_Joining_Group
|
||||
07D0; NKO O; D; No_Joining_Group
|
||||
07D1; NKO DAGBASINNA; D; No_Joining_Group
|
||||
07D2; NKO N; D; No_Joining_Group
|
||||
07D3; NKO BA; D; No_Joining_Group
|
||||
07D4; NKO PA; D; No_Joining_Group
|
||||
07D5; NKO TA; D; No_Joining_Group
|
||||
07D6; NKO JA; D; No_Joining_Group
|
||||
07D7; NKO CHA; D; No_Joining_Group
|
||||
07D8; NKO DA; D; No_Joining_Group
|
||||
07D9; NKO RA; D; No_Joining_Group
|
||||
07DA; NKO RRA; D; No_Joining_Group
|
||||
07DB; NKO SA; D; No_Joining_Group
|
||||
07DC; NKO GBA; D; No_Joining_Group
|
||||
07DD; NKO FA; D; No_Joining_Group
|
||||
07DE; NKO KA; D; No_Joining_Group
|
||||
07DF; NKO LA; D; No_Joining_Group
|
||||
07E0; NKO NA WOLOSO; D; No_Joining_Group
|
||||
07E1; NKO MA; D; No_Joining_Group
|
||||
07E2; NKO NYA; D; No_Joining_Group
|
||||
07E3; NKO NA; D; No_Joining_Group
|
||||
07E4; NKO HA; D; No_Joining_Group
|
||||
07E5; NKO WA; D; No_Joining_Group
|
||||
07E6; NKO YA; D; No_Joining_Group
|
||||
07E7; NKO NYA WOLOSO; D; No_Joining_Group
|
||||
07E8; NKO JONA JA; D; No_Joining_Group
|
||||
07E9; NKO JONA CHA; D; No_Joining_Group
|
||||
07EA; NKO JONA RA; D; No_Joining_Group
|
||||
07FA; NKO LAJANYALAN; C; No_Joining_Group
|
||||
|
||||
# Other
|
||||
|
||||
200D; ZERO WIDTH JOINER; C; No_Joining_Group
|
||||
200C; ZERO WIDTH NON-JOINER; U; No_Joining_Group
|
||||
|
||||
# EOF
|
588
3party/fribidi/gen.tab/unidata/BidiMirroring.txt
Normal file
588
3party/fribidi/gen.tab/unidata/BidiMirroring.txt
Normal file
|
@ -0,0 +1,588 @@
|
|||
# BidiMirroring-5.1.0.txt
|
||||
# Date: 2008-03-28, 10:22:00 PDT [KW]
|
||||
#
|
||||
# Bidi_Mirroring_Glyph Property
|
||||
#
|
||||
# This file is an informative contributory data file in the
|
||||
# Unicode Character Database.
|
||||
#
|
||||
# Copyright (c) 1991-2008 Unicode, Inc.
|
||||
# For terms of use, see http://www.unicode.org/terms_of_use.html
|
||||
#
|
||||
# This data file lists characters that have the mirrored property
|
||||
# where there is another Unicode character that typically has a glyph
|
||||
# that is the mirror image of the original character's glyph.
|
||||
# The repertoire covered by the file is Unicode 5.1.0.
|
||||
#
|
||||
# The file contains a list of lines with mappings from one code point
|
||||
# to another one for character-based mirroring.
|
||||
# Note that for "real" mirroring, a rendering engine needs to select
|
||||
# appropriate alternative glyphs, and that many Unicode characters do not
|
||||
# have a mirror-image Unicode character.
|
||||
#
|
||||
# Each mapping line contains two fields, separated by a semicolon (';').
|
||||
# Each of the two fields contains a code point represented as a
|
||||
# variable-length hexadecimal value with 4 to 6 digits.
|
||||
# A comment indicates where the characters are "BEST FIT" mirroring.
|
||||
#
|
||||
# Code points with the "mirrored" property but no appropriate mirrors are
|
||||
# listed as comments at the end of the file.
|
||||
#
|
||||
# For information on bidi mirroring, see UAX #9: Bidirectional Algorithm,
|
||||
# at http://www.unicode.org/unicode/reports/tr9/
|
||||
#
|
||||
# This file was originally created by Markus Scherer.
|
||||
# Extended for Unicode 3.2, 4.0, 4.1, 5.0, and 5.1 by Ken Whistler.
|
||||
#
|
||||
# ############################################################
|
||||
|
||||
0028; 0029 # LEFT PARENTHESIS
|
||||
0029; 0028 # RIGHT PARENTHESIS
|
||||
003C; 003E # LESS-THAN SIGN
|
||||
003E; 003C # GREATER-THAN SIGN
|
||||
005B; 005D # LEFT SQUARE BRACKET
|
||||
005D; 005B # RIGHT SQUARE BRACKET
|
||||
007B; 007D # LEFT CURLY BRACKET
|
||||
007D; 007B # RIGHT CURLY BRACKET
|
||||
00AB; 00BB # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
00BB; 00AB # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
|
||||
0F3A; 0F3B # TIBETAN MARK GUG RTAGS GYON
|
||||
0F3B; 0F3A # TIBETAN MARK GUG RTAGS GYAS
|
||||
0F3C; 0F3D # TIBETAN MARK ANG KHANG GYON
|
||||
0F3D; 0F3C # TIBETAN MARK ANG KHANG GYAS
|
||||
169B; 169C # OGHAM FEATHER MARK
|
||||
169C; 169B # OGHAM REVERSED FEATHER MARK
|
||||
2039; 203A # SINGLE LEFT-POINTING ANGLE QUOTATION MARK
|
||||
203A; 2039 # SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
|
||||
2045; 2046 # LEFT SQUARE BRACKET WITH QUILL
|
||||
2046; 2045 # RIGHT SQUARE BRACKET WITH QUILL
|
||||
207D; 207E # SUPERSCRIPT LEFT PARENTHESIS
|
||||
207E; 207D # SUPERSCRIPT RIGHT PARENTHESIS
|
||||
208D; 208E # SUBSCRIPT LEFT PARENTHESIS
|
||||
208E; 208D # SUBSCRIPT RIGHT PARENTHESIS
|
||||
2208; 220B # ELEMENT OF
|
||||
2209; 220C # NOT AN ELEMENT OF
|
||||
220A; 220D # SMALL ELEMENT OF
|
||||
220B; 2208 # CONTAINS AS MEMBER
|
||||
220C; 2209 # DOES NOT CONTAIN AS MEMBER
|
||||
220D; 220A # SMALL CONTAINS AS MEMBER
|
||||
2215; 29F5 # DIVISION SLASH
|
||||
223C; 223D # TILDE OPERATOR
|
||||
223D; 223C # REVERSED TILDE
|
||||
2243; 22CD # ASYMPTOTICALLY EQUAL TO
|
||||
2252; 2253 # APPROXIMATELY EQUAL TO OR THE IMAGE OF
|
||||
2253; 2252 # IMAGE OF OR APPROXIMATELY EQUAL TO
|
||||
2254; 2255 # COLON EQUALS
|
||||
2255; 2254 # EQUALS COLON
|
||||
2264; 2265 # LESS-THAN OR EQUAL TO
|
||||
2265; 2264 # GREATER-THAN OR EQUAL TO
|
||||
2266; 2267 # LESS-THAN OVER EQUAL TO
|
||||
2267; 2266 # GREATER-THAN OVER EQUAL TO
|
||||
2268; 2269 # [BEST FIT] LESS-THAN BUT NOT EQUAL TO
|
||||
2269; 2268 # [BEST FIT] GREATER-THAN BUT NOT EQUAL TO
|
||||
226A; 226B # MUCH LESS-THAN
|
||||
226B; 226A # MUCH GREATER-THAN
|
||||
226E; 226F # [BEST FIT] NOT LESS-THAN
|
||||
226F; 226E # [BEST FIT] NOT GREATER-THAN
|
||||
2270; 2271 # [BEST FIT] NEITHER LESS-THAN NOR EQUAL TO
|
||||
2271; 2270 # [BEST FIT] NEITHER GREATER-THAN NOR EQUAL TO
|
||||
2272; 2273 # [BEST FIT] LESS-THAN OR EQUIVALENT TO
|
||||
2273; 2272 # [BEST FIT] GREATER-THAN OR EQUIVALENT TO
|
||||
2274; 2275 # [BEST FIT] NEITHER LESS-THAN NOR EQUIVALENT TO
|
||||
2275; 2274 # [BEST FIT] NEITHER GREATER-THAN NOR EQUIVALENT TO
|
||||
2276; 2277 # LESS-THAN OR GREATER-THAN
|
||||
2277; 2276 # GREATER-THAN OR LESS-THAN
|
||||
2278; 2279 # [BEST FIT] NEITHER LESS-THAN NOR GREATER-THAN
|
||||
2279; 2278 # [BEST FIT] NEITHER GREATER-THAN NOR LESS-THAN
|
||||
227A; 227B # PRECEDES
|
||||
227B; 227A # SUCCEEDS
|
||||
227C; 227D # PRECEDES OR EQUAL TO
|
||||
227D; 227C # SUCCEEDS OR EQUAL TO
|
||||
227E; 227F # [BEST FIT] PRECEDES OR EQUIVALENT TO
|
||||
227F; 227E # [BEST FIT] SUCCEEDS OR EQUIVALENT TO
|
||||
2280; 2281 # [BEST FIT] DOES NOT PRECEDE
|
||||
2281; 2280 # [BEST FIT] DOES NOT SUCCEED
|
||||
2282; 2283 # SUBSET OF
|
||||
2283; 2282 # SUPERSET OF
|
||||
2284; 2285 # [BEST FIT] NOT A SUBSET OF
|
||||
2285; 2284 # [BEST FIT] NOT A SUPERSET OF
|
||||
2286; 2287 # SUBSET OF OR EQUAL TO
|
||||
2287; 2286 # SUPERSET OF OR EQUAL TO
|
||||
2288; 2289 # [BEST FIT] NEITHER A SUBSET OF NOR EQUAL TO
|
||||
2289; 2288 # [BEST FIT] NEITHER A SUPERSET OF NOR EQUAL TO
|
||||
228A; 228B # [BEST FIT] SUBSET OF WITH NOT EQUAL TO
|
||||
228B; 228A # [BEST FIT] SUPERSET OF WITH NOT EQUAL TO
|
||||
228F; 2290 # SQUARE IMAGE OF
|
||||
2290; 228F # SQUARE ORIGINAL OF
|
||||
2291; 2292 # SQUARE IMAGE OF OR EQUAL TO
|
||||
2292; 2291 # SQUARE ORIGINAL OF OR EQUAL TO
|
||||
2298; 29B8 # CIRCLED DIVISION SLASH
|
||||
22A2; 22A3 # RIGHT TACK
|
||||
22A3; 22A2 # LEFT TACK
|
||||
22A6; 2ADE # ASSERTION
|
||||
22A8; 2AE4 # TRUE
|
||||
22A9; 2AE3 # FORCES
|
||||
22AB; 2AE5 # DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE
|
||||
22B0; 22B1 # PRECEDES UNDER RELATION
|
||||
22B1; 22B0 # SUCCEEDS UNDER RELATION
|
||||
22B2; 22B3 # NORMAL SUBGROUP OF
|
||||
22B3; 22B2 # CONTAINS AS NORMAL SUBGROUP
|
||||
22B4; 22B5 # NORMAL SUBGROUP OF OR EQUAL TO
|
||||
22B5; 22B4 # CONTAINS AS NORMAL SUBGROUP OR EQUAL TO
|
||||
22B6; 22B7 # ORIGINAL OF
|
||||
22B7; 22B6 # IMAGE OF
|
||||
22C9; 22CA # LEFT NORMAL FACTOR SEMIDIRECT PRODUCT
|
||||
22CA; 22C9 # RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT
|
||||
22CB; 22CC # LEFT SEMIDIRECT PRODUCT
|
||||
22CC; 22CB # RIGHT SEMIDIRECT PRODUCT
|
||||
22CD; 2243 # REVERSED TILDE EQUALS
|
||||
22D0; 22D1 # DOUBLE SUBSET
|
||||
22D1; 22D0 # DOUBLE SUPERSET
|
||||
22D6; 22D7 # LESS-THAN WITH DOT
|
||||
22D7; 22D6 # GREATER-THAN WITH DOT
|
||||
22D8; 22D9 # VERY MUCH LESS-THAN
|
||||
22D9; 22D8 # VERY MUCH GREATER-THAN
|
||||
22DA; 22DB # LESS-THAN EQUAL TO OR GREATER-THAN
|
||||
22DB; 22DA # GREATER-THAN EQUAL TO OR LESS-THAN
|
||||
22DC; 22DD # EQUAL TO OR LESS-THAN
|
||||
22DD; 22DC # EQUAL TO OR GREATER-THAN
|
||||
22DE; 22DF # EQUAL TO OR PRECEDES
|
||||
22DF; 22DE # EQUAL TO OR SUCCEEDS
|
||||
22E0; 22E1 # [BEST FIT] DOES NOT PRECEDE OR EQUAL
|
||||
22E1; 22E0 # [BEST FIT] DOES NOT SUCCEED OR EQUAL
|
||||
22E2; 22E3 # [BEST FIT] NOT SQUARE IMAGE OF OR EQUAL TO
|
||||
22E3; 22E2 # [BEST FIT] NOT SQUARE ORIGINAL OF OR EQUAL TO
|
||||
22E4; 22E5 # [BEST FIT] SQUARE IMAGE OF OR NOT EQUAL TO
|
||||
22E5; 22E4 # [BEST FIT] SQUARE ORIGINAL OF OR NOT EQUAL TO
|
||||
22E6; 22E7 # [BEST FIT] LESS-THAN BUT NOT EQUIVALENT TO
|
||||
22E7; 22E6 # [BEST FIT] GREATER-THAN BUT NOT EQUIVALENT TO
|
||||
22E8; 22E9 # [BEST FIT] PRECEDES BUT NOT EQUIVALENT TO
|
||||
22E9; 22E8 # [BEST FIT] SUCCEEDS BUT NOT EQUIVALENT TO
|
||||
22EA; 22EB # [BEST FIT] NOT NORMAL SUBGROUP OF
|
||||
22EB; 22EA # [BEST FIT] DOES NOT CONTAIN AS NORMAL SUBGROUP
|
||||
22EC; 22ED # [BEST FIT] NOT NORMAL SUBGROUP OF OR EQUAL TO
|
||||
22ED; 22EC # [BEST FIT] DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL
|
||||
22F0; 22F1 # UP RIGHT DIAGONAL ELLIPSIS
|
||||
22F1; 22F0 # DOWN RIGHT DIAGONAL ELLIPSIS
|
||||
22F2; 22FA # ELEMENT OF WITH LONG HORIZONTAL STROKE
|
||||
22F3; 22FB # ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE
|
||||
22F4; 22FC # SMALL ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE
|
||||
22F6; 22FD # ELEMENT OF WITH OVERBAR
|
||||
22F7; 22FE # SMALL ELEMENT OF WITH OVERBAR
|
||||
22FA; 22F2 # CONTAINS WITH LONG HORIZONTAL STROKE
|
||||
22FB; 22F3 # CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE
|
||||
22FC; 22F4 # SMALL CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE
|
||||
22FD; 22F6 # CONTAINS WITH OVERBAR
|
||||
22FE; 22F7 # SMALL CONTAINS WITH OVERBAR
|
||||
2308; 2309 # LEFT CEILING
|
||||
2309; 2308 # RIGHT CEILING
|
||||
230A; 230B # LEFT FLOOR
|
||||
230B; 230A # RIGHT FLOOR
|
||||
2329; 232A # LEFT-POINTING ANGLE BRACKET
|
||||
232A; 2329 # RIGHT-POINTING ANGLE BRACKET
|
||||
2768; 2769 # MEDIUM LEFT PARENTHESIS ORNAMENT
|
||||
2769; 2768 # MEDIUM RIGHT PARENTHESIS ORNAMENT
|
||||
276A; 276B # MEDIUM FLATTENED LEFT PARENTHESIS ORNAMENT
|
||||
276B; 276A # MEDIUM FLATTENED RIGHT PARENTHESIS ORNAMENT
|
||||
276C; 276D # MEDIUM LEFT-POINTING ANGLE BRACKET ORNAMENT
|
||||
276D; 276C # MEDIUM RIGHT-POINTING ANGLE BRACKET ORNAMENT
|
||||
276E; 276F # HEAVY LEFT-POINTING ANGLE QUOTATION MARK ORNAMENT
|
||||
276F; 276E # HEAVY RIGHT-POINTING ANGLE QUOTATION MARK ORNAMENT
|
||||
2770; 2771 # HEAVY LEFT-POINTING ANGLE BRACKET ORNAMENT
|
||||
2771; 2770 # HEAVY RIGHT-POINTING ANGLE BRACKET ORNAMENT
|
||||
2772; 2773 # LIGHT LEFT TORTOISE SHELL BRACKET
|
||||
2773; 2772 # LIGHT RIGHT TORTOISE SHELL BRACKET
|
||||
2774; 2775 # MEDIUM LEFT CURLY BRACKET ORNAMENT
|
||||
2775; 2774 # MEDIUM RIGHT CURLY BRACKET ORNAMENT
|
||||
27C3; 27C4 # OPEN SUBSET
|
||||
27C4; 27C3 # OPEN SUPERSET
|
||||
27C5; 27C6 # LEFT S-SHAPED BAG DELIMITER
|
||||
27C6; 27C5 # RIGHT S-SHAPED BAG DELIMITER
|
||||
27C8; 27C9 # REVERSE SOLIDUS PRECEDING SUBSET
|
||||
27C9; 27C8 # SUPERSET PRECEDING SOLIDUS
|
||||
27D5; 27D6 # LEFT OUTER JOIN
|
||||
27D6; 27D5 # RIGHT OUTER JOIN
|
||||
27DD; 27DE # LONG RIGHT TACK
|
||||
27DE; 27DD # LONG LEFT TACK
|
||||
27E2; 27E3 # WHITE CONCAVE-SIDED DIAMOND WITH LEFTWARDS TICK
|
||||
27E3; 27E2 # WHITE CONCAVE-SIDED DIAMOND WITH RIGHTWARDS TICK
|
||||
27E4; 27E5 # WHITE SQUARE WITH LEFTWARDS TICK
|
||||
27E5; 27E4 # WHITE SQUARE WITH RIGHTWARDS TICK
|
||||
27E6; 27E7 # MATHEMATICAL LEFT WHITE SQUARE BRACKET
|
||||
27E7; 27E6 # MATHEMATICAL RIGHT WHITE SQUARE BRACKET
|
||||
27E8; 27E9 # MATHEMATICAL LEFT ANGLE BRACKET
|
||||
27E9; 27E8 # MATHEMATICAL RIGHT ANGLE BRACKET
|
||||
27EA; 27EB # MATHEMATICAL LEFT DOUBLE ANGLE BRACKET
|
||||
27EB; 27EA # MATHEMATICAL RIGHT DOUBLE ANGLE BRACKET
|
||||
27EC; 27ED # MATHEMATICAL LEFT WHITE TORTOISE SHELL BRACKET
|
||||
27ED; 27EC # MATHEMATICAL RIGHT WHITE TORTOISE SHELL BRACKET
|
||||
27EE; 27EF # MATHEMATICAL LEFT FLATTENED PARENTHESIS
|
||||
27EF; 27EE # MATHEMATICAL RIGHT FLATTENED PARENTHESIS
|
||||
2983; 2984 # LEFT WHITE CURLY BRACKET
|
||||
2984; 2983 # RIGHT WHITE CURLY BRACKET
|
||||
2985; 2986 # LEFT WHITE PARENTHESIS
|
||||
2986; 2985 # RIGHT WHITE PARENTHESIS
|
||||
2987; 2988 # Z NOTATION LEFT IMAGE BRACKET
|
||||
2988; 2987 # Z NOTATION RIGHT IMAGE BRACKET
|
||||
2989; 298A # Z NOTATION LEFT BINDING BRACKET
|
||||
298A; 2989 # Z NOTATION RIGHT BINDING BRACKET
|
||||
298B; 298C # LEFT SQUARE BRACKET WITH UNDERBAR
|
||||
298C; 298B # RIGHT SQUARE BRACKET WITH UNDERBAR
|
||||
298D; 2990 # LEFT SQUARE BRACKET WITH TICK IN TOP CORNER
|
||||
298E; 298F # RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER
|
||||
298F; 298E # LEFT SQUARE BRACKET WITH TICK IN BOTTOM CORNER
|
||||
2990; 298D # RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER
|
||||
2991; 2992 # LEFT ANGLE BRACKET WITH DOT
|
||||
2992; 2991 # RIGHT ANGLE BRACKET WITH DOT
|
||||
2993; 2994 # LEFT ARC LESS-THAN BRACKET
|
||||
2994; 2993 # RIGHT ARC GREATER-THAN BRACKET
|
||||
2995; 2996 # DOUBLE LEFT ARC GREATER-THAN BRACKET
|
||||
2996; 2995 # DOUBLE RIGHT ARC LESS-THAN BRACKET
|
||||
2997; 2998 # LEFT BLACK TORTOISE SHELL BRACKET
|
||||
2998; 2997 # RIGHT BLACK TORTOISE SHELL BRACKET
|
||||
29B8; 2298 # CIRCLED REVERSE SOLIDUS
|
||||
29C0; 29C1 # CIRCLED LESS-THAN
|
||||
29C1; 29C0 # CIRCLED GREATER-THAN
|
||||
29C4; 29C5 # SQUARED RISING DIAGONAL SLASH
|
||||
29C5; 29C4 # SQUARED FALLING DIAGONAL SLASH
|
||||
29CF; 29D0 # LEFT TRIANGLE BESIDE VERTICAL BAR
|
||||
29D0; 29CF # VERTICAL BAR BESIDE RIGHT TRIANGLE
|
||||
29D1; 29D2 # BOWTIE WITH LEFT HALF BLACK
|
||||
29D2; 29D1 # BOWTIE WITH RIGHT HALF BLACK
|
||||
29D4; 29D5 # TIMES WITH LEFT HALF BLACK
|
||||
29D5; 29D4 # TIMES WITH RIGHT HALF BLACK
|
||||
29D8; 29D9 # LEFT WIGGLY FENCE
|
||||
29D9; 29D8 # RIGHT WIGGLY FENCE
|
||||
29DA; 29DB # LEFT DOUBLE WIGGLY FENCE
|
||||
29DB; 29DA # RIGHT DOUBLE WIGGLY FENCE
|
||||
29F5; 2215 # REVERSE SOLIDUS OPERATOR
|
||||
29F8; 29F9 # BIG SOLIDUS
|
||||
29F9; 29F8 # BIG REVERSE SOLIDUS
|
||||
29FC; 29FD # LEFT-POINTING CURVED ANGLE BRACKET
|
||||
29FD; 29FC # RIGHT-POINTING CURVED ANGLE BRACKET
|
||||
2A2B; 2A2C # MINUS SIGN WITH FALLING DOTS
|
||||
2A2C; 2A2B # MINUS SIGN WITH RISING DOTS
|
||||
2A2D; 2A2E # PLUS SIGN IN LEFT HALF CIRCLE
|
||||
2A2E; 2A2D # PLUS SIGN IN RIGHT HALF CIRCLE
|
||||
2A34; 2A35 # MULTIPLICATION SIGN IN LEFT HALF CIRCLE
|
||||
2A35; 2A34 # MULTIPLICATION SIGN IN RIGHT HALF CIRCLE
|
||||
2A3C; 2A3D # INTERIOR PRODUCT
|
||||
2A3D; 2A3C # RIGHTHAND INTERIOR PRODUCT
|
||||
2A64; 2A65 # Z NOTATION DOMAIN ANTIRESTRICTION
|
||||
2A65; 2A64 # Z NOTATION RANGE ANTIRESTRICTION
|
||||
2A79; 2A7A # LESS-THAN WITH CIRCLE INSIDE
|
||||
2A7A; 2A79 # GREATER-THAN WITH CIRCLE INSIDE
|
||||
2A7D; 2A7E # LESS-THAN OR SLANTED EQUAL TO
|
||||
2A7E; 2A7D # GREATER-THAN OR SLANTED EQUAL TO
|
||||
2A7F; 2A80 # LESS-THAN OR SLANTED EQUAL TO WITH DOT INSIDE
|
||||
2A80; 2A7F # GREATER-THAN OR SLANTED EQUAL TO WITH DOT INSIDE
|
||||
2A81; 2A82 # LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE
|
||||
2A82; 2A81 # GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE
|
||||
2A83; 2A84 # LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE RIGHT
|
||||
2A84; 2A83 # GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE LEFT
|
||||
2A8B; 2A8C # LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE GREATER-THAN
|
||||
2A8C; 2A8B # GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE LESS-THAN
|
||||
2A91; 2A92 # LESS-THAN ABOVE GREATER-THAN ABOVE DOUBLE-LINE EQUAL
|
||||
2A92; 2A91 # GREATER-THAN ABOVE LESS-THAN ABOVE DOUBLE-LINE EQUAL
|
||||
2A93; 2A94 # LESS-THAN ABOVE SLANTED EQUAL ABOVE GREATER-THAN ABOVE SLANTED EQUAL
|
||||
2A94; 2A93 # GREATER-THAN ABOVE SLANTED EQUAL ABOVE LESS-THAN ABOVE SLANTED EQUAL
|
||||
2A95; 2A96 # SLANTED EQUAL TO OR LESS-THAN
|
||||
2A96; 2A95 # SLANTED EQUAL TO OR GREATER-THAN
|
||||
2A97; 2A98 # SLANTED EQUAL TO OR LESS-THAN WITH DOT INSIDE
|
||||
2A98; 2A97 # SLANTED EQUAL TO OR GREATER-THAN WITH DOT INSIDE
|
||||
2A99; 2A9A # DOUBLE-LINE EQUAL TO OR LESS-THAN
|
||||
2A9A; 2A99 # DOUBLE-LINE EQUAL TO OR GREATER-THAN
|
||||
2A9B; 2A9C # DOUBLE-LINE SLANTED EQUAL TO OR LESS-THAN
|
||||
2A9C; 2A9B # DOUBLE-LINE SLANTED EQUAL TO OR GREATER-THAN
|
||||
2AA1; 2AA2 # DOUBLE NESTED LESS-THAN
|
||||
2AA2; 2AA1 # DOUBLE NESTED GREATER-THAN
|
||||
2AA6; 2AA7 # LESS-THAN CLOSED BY CURVE
|
||||
2AA7; 2AA6 # GREATER-THAN CLOSED BY CURVE
|
||||
2AA8; 2AA9 # LESS-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL
|
||||
2AA9; 2AA8 # GREATER-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL
|
||||
2AAA; 2AAB # SMALLER THAN
|
||||
2AAB; 2AAA # LARGER THAN
|
||||
2AAC; 2AAD # SMALLER THAN OR EQUAL TO
|
||||
2AAD; 2AAC # LARGER THAN OR EQUAL TO
|
||||
2AAF; 2AB0 # PRECEDES ABOVE SINGLE-LINE EQUALS SIGN
|
||||
2AB0; 2AAF # SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN
|
||||
2AB3; 2AB4 # PRECEDES ABOVE EQUALS SIGN
|
||||
2AB4; 2AB3 # SUCCEEDS ABOVE EQUALS SIGN
|
||||
2ABB; 2ABC # DOUBLE PRECEDES
|
||||
2ABC; 2ABB # DOUBLE SUCCEEDS
|
||||
2ABD; 2ABE # SUBSET WITH DOT
|
||||
2ABE; 2ABD # SUPERSET WITH DOT
|
||||
2ABF; 2AC0 # SUBSET WITH PLUS SIGN BELOW
|
||||
2AC0; 2ABF # SUPERSET WITH PLUS SIGN BELOW
|
||||
2AC1; 2AC2 # SUBSET WITH MULTIPLICATION SIGN BELOW
|
||||
2AC2; 2AC1 # SUPERSET WITH MULTIPLICATION SIGN BELOW
|
||||
2AC3; 2AC4 # SUBSET OF OR EQUAL TO WITH DOT ABOVE
|
||||
2AC4; 2AC3 # SUPERSET OF OR EQUAL TO WITH DOT ABOVE
|
||||
2AC5; 2AC6 # SUBSET OF ABOVE EQUALS SIGN
|
||||
2AC6; 2AC5 # SUPERSET OF ABOVE EQUALS SIGN
|
||||
2ACD; 2ACE # SQUARE LEFT OPEN BOX OPERATOR
|
||||
2ACE; 2ACD # SQUARE RIGHT OPEN BOX OPERATOR
|
||||
2ACF; 2AD0 # CLOSED SUBSET
|
||||
2AD0; 2ACF # CLOSED SUPERSET
|
||||
2AD1; 2AD2 # CLOSED SUBSET OR EQUAL TO
|
||||
2AD2; 2AD1 # CLOSED SUPERSET OR EQUAL TO
|
||||
2AD3; 2AD4 # SUBSET ABOVE SUPERSET
|
||||
2AD4; 2AD3 # SUPERSET ABOVE SUBSET
|
||||
2AD5; 2AD6 # SUBSET ABOVE SUBSET
|
||||
2AD6; 2AD5 # SUPERSET ABOVE SUPERSET
|
||||
2ADE; 22A6 # SHORT LEFT TACK
|
||||
2AE3; 22A9 # DOUBLE VERTICAL BAR LEFT TURNSTILE
|
||||
2AE4; 22A8 # VERTICAL BAR DOUBLE LEFT TURNSTILE
|
||||
2AE5; 22AB # DOUBLE VERTICAL BAR DOUBLE LEFT TURNSTILE
|
||||
2AEC; 2AED # DOUBLE STROKE NOT SIGN
|
||||
2AED; 2AEC # REVERSED DOUBLE STROKE NOT SIGN
|
||||
2AF7; 2AF8 # TRIPLE NESTED LESS-THAN
|
||||
2AF8; 2AF7 # TRIPLE NESTED GREATER-THAN
|
||||
2AF9; 2AFA # DOUBLE-LINE SLANTED LESS-THAN OR EQUAL TO
|
||||
2AFA; 2AF9 # DOUBLE-LINE SLANTED GREATER-THAN OR EQUAL TO
|
||||
2E02; 2E03 # LEFT SUBSTITUTION BRACKET
|
||||
2E03; 2E02 # RIGHT SUBSTITUTION BRACKET
|
||||
2E04; 2E05 # LEFT DOTTED SUBSTITUTION BRACKET
|
||||
2E05; 2E04 # RIGHT DOTTED SUBSTITUTION BRACKET
|
||||
2E09; 2E0A # LEFT TRANSPOSITION BRACKET
|
||||
2E0A; 2E09 # RIGHT TRANSPOSITION BRACKET
|
||||
2E0C; 2E0D # LEFT RAISED OMISSION BRACKET
|
||||
2E0D; 2E0C # RIGHT RAISED OMISSION BRACKET
|
||||
2E1C; 2E1D # LEFT LOW PARAPHRASE BRACKET
|
||||
2E1D; 2E1C # RIGHT LOW PARAPHRASE BRACKET
|
||||
2E20; 2E21 # LEFT VERTICAL BAR WITH QUILL
|
||||
2E21; 2E20 # RIGHT VERTICAL BAR WITH QUILL
|
||||
2E22; 2E23 # TOP LEFT HALF BRACKET
|
||||
2E23; 2E22 # TOP RIGHT HALF BRACKET
|
||||
2E24; 2E25 # BOTTOM LEFT HALF BRACKET
|
||||
2E25; 2E24 # BOTTOM RIGHT HALF BRACKET
|
||||
2E26; 2E27 # LEFT SIDEWAYS U BRACKET
|
||||
2E27; 2E26 # RIGHT SIDEWAYS U BRACKET
|
||||
2E28; 2E29 # LEFT DOUBLE PARENTHESIS
|
||||
2E29; 2E28 # RIGHT DOUBLE PARENTHESIS
|
||||
3008; 3009 # LEFT ANGLE BRACKET
|
||||
3009; 3008 # RIGHT ANGLE BRACKET
|
||||
300A; 300B # LEFT DOUBLE ANGLE BRACKET
|
||||
300B; 300A # RIGHT DOUBLE ANGLE BRACKET
|
||||
300C; 300D # [BEST FIT] LEFT CORNER BRACKET
|
||||
300D; 300C # [BEST FIT] RIGHT CORNER BRACKET
|
||||
300E; 300F # [BEST FIT] LEFT WHITE CORNER BRACKET
|
||||
300F; 300E # [BEST FIT] RIGHT WHITE CORNER BRACKET
|
||||
3010; 3011 # LEFT BLACK LENTICULAR BRACKET
|
||||
3011; 3010 # RIGHT BLACK LENTICULAR BRACKET
|
||||
3014; 3015 # LEFT TORTOISE SHELL BRACKET
|
||||
3015; 3014 # RIGHT TORTOISE SHELL BRACKET
|
||||
3016; 3017 # LEFT WHITE LENTICULAR BRACKET
|
||||
3017; 3016 # RIGHT WHITE LENTICULAR BRACKET
|
||||
3018; 3019 # LEFT WHITE TORTOISE SHELL BRACKET
|
||||
3019; 3018 # RIGHT WHITE TORTOISE SHELL BRACKET
|
||||
301A; 301B # LEFT WHITE SQUARE BRACKET
|
||||
301B; 301A # RIGHT WHITE SQUARE BRACKET
|
||||
FE59; FE5A # SMALL LEFT PARENTHESIS
|
||||
FE5A; FE59 # SMALL RIGHT PARENTHESIS
|
||||
FE5B; FE5C # SMALL LEFT CURLY BRACKET
|
||||
FE5C; FE5B # SMALL RIGHT CURLY BRACKET
|
||||
FE5D; FE5E # SMALL LEFT TORTOISE SHELL BRACKET
|
||||
FE5E; FE5D # SMALL RIGHT TORTOISE SHELL BRACKET
|
||||
FE64; FE65 # SMALL LESS-THAN SIGN
|
||||
FE65; FE64 # SMALL GREATER-THAN SIGN
|
||||
FF08; FF09 # FULLWIDTH LEFT PARENTHESIS
|
||||
FF09; FF08 # FULLWIDTH RIGHT PARENTHESIS
|
||||
FF1C; FF1E # FULLWIDTH LESS-THAN SIGN
|
||||
FF1E; FF1C # FULLWIDTH GREATER-THAN SIGN
|
||||
FF3B; FF3D # FULLWIDTH LEFT SQUARE BRACKET
|
||||
FF3D; FF3B # FULLWIDTH RIGHT SQUARE BRACKET
|
||||
FF5B; FF5D # FULLWIDTH LEFT CURLY BRACKET
|
||||
FF5D; FF5B # FULLWIDTH RIGHT CURLY BRACKET
|
||||
FF5F; FF60 # FULLWIDTH LEFT WHITE PARENTHESIS
|
||||
FF60; FF5F # FULLWIDTH RIGHT WHITE PARENTHESIS
|
||||
FF62; FF63 # [BEST FIT] HALFWIDTH LEFT CORNER BRACKET
|
||||
FF63; FF62 # [BEST FIT] HALFWIDTH RIGHT CORNER BRACKET
|
||||
|
||||
# The following characters have no appropriate mirroring character.
|
||||
# For these characters it is up to the rendering system
|
||||
# to provide mirrored glyphs.
|
||||
|
||||
# 2140; DOUBLE-STRUCK N-ARY SUMMATION
|
||||
# 2201; COMPLEMENT
|
||||
# 2202; PARTIAL DIFFERENTIAL
|
||||
# 2203; THERE EXISTS
|
||||
# 2204; THERE DOES NOT EXIST
|
||||
# 2211; N-ARY SUMMATION
|
||||
# 2216; SET MINUS
|
||||
# 221A; SQUARE ROOT
|
||||
# 221B; CUBE ROOT
|
||||
# 221C; FOURTH ROOT
|
||||
# 221D; PROPORTIONAL TO
|
||||
# 221F; RIGHT ANGLE
|
||||
# 2220; ANGLE
|
||||
# 2221; MEASURED ANGLE
|
||||
# 2222; SPHERICAL ANGLE
|
||||
# 2224; DOES NOT DIVIDE
|
||||
# 2226; NOT PARALLEL TO
|
||||
# 222B; INTEGRAL
|
||||
# 222C; DOUBLE INTEGRAL
|
||||
# 222D; TRIPLE INTEGRAL
|
||||
# 222E; CONTOUR INTEGRAL
|
||||
# 222F; SURFACE INTEGRAL
|
||||
# 2230; VOLUME INTEGRAL
|
||||
# 2231; CLOCKWISE INTEGRAL
|
||||
# 2232; CLOCKWISE CONTOUR INTEGRAL
|
||||
# 2233; ANTICLOCKWISE CONTOUR INTEGRAL
|
||||
# 2239; EXCESS
|
||||
# 223B; HOMOTHETIC
|
||||
# 223E; INVERTED LAZY S
|
||||
# 223F; SINE WAVE
|
||||
# 2240; WREATH PRODUCT
|
||||
# 2241; NOT TILDE
|
||||
# 2242; MINUS TILDE
|
||||
# 2244; NOT ASYMPTOTICALLY EQUAL TO
|
||||
# 2245; APPROXIMATELY EQUAL TO
|
||||
# 2246; APPROXIMATELY BUT NOT ACTUALLY EQUAL TO
|
||||
# 2247; NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO
|
||||
# 2248; ALMOST EQUAL TO
|
||||
# 2249; NOT ALMOST EQUAL TO
|
||||
# 224A; ALMOST EQUAL OR EQUAL TO
|
||||
# 224B; TRIPLE TILDE
|
||||
# 224C; ALL EQUAL TO
|
||||
# 225F; QUESTIONED EQUAL TO
|
||||
# 2260; NOT EQUAL TO
|
||||
# 2262; NOT IDENTICAL TO
|
||||
# 228C; MULTISET
|
||||
# 22A7; MODELS
|
||||
# 22AA; TRIPLE VERTICAL BAR RIGHT TURNSTILE
|
||||
# 22AC; DOES NOT PROVE
|
||||
# 22AD; NOT TRUE
|
||||
# 22AE; DOES NOT FORCE
|
||||
# 22AF; NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE
|
||||
# 22B8; MULTIMAP
|
||||
# 22BE; RIGHT ANGLE WITH ARC
|
||||
# 22BF; RIGHT TRIANGLE
|
||||
# 22F5; ELEMENT OF WITH DOT ABOVE
|
||||
# 22F8; ELEMENT OF WITH UNDERBAR
|
||||
# 22F9; ELEMENT OF WITH TWO HORIZONTAL STROKES
|
||||
# 22FF; Z NOTATION BAG MEMBERSHIP
|
||||
# 2320; TOP HALF INTEGRAL
|
||||
# 2321; BOTTOM HALF INTEGRAL
|
||||
# 27CC; LONG DIVISION
|
||||
# 27C0; THREE DIMENSIONAL ANGLE
|
||||
# 27D3; LOWER RIGHT CORNER WITH DOT
|
||||
# 27D4; UPPER LEFT CORNER WITH DOT
|
||||
# 27DC; LEFT MULTIMAP
|
||||
# 299B; MEASURED ANGLE OPENING LEFT
|
||||
# 299C; RIGHT ANGLE VARIANT WITH SQUARE
|
||||
# 299D; MEASURED RIGHT ANGLE WITH DOT
|
||||
# 299E; ANGLE WITH S INSIDE
|
||||
# 299F; ACUTE ANGLE
|
||||
# 29A0; SPHERICAL ANGLE OPENING LEFT
|
||||
# 29A1; SPHERICAL ANGLE OPENING UP
|
||||
# 29A2; TURNED ANGLE
|
||||
# 29A3; REVERSED ANGLE
|
||||
# 29A4; ANGLE WITH UNDERBAR
|
||||
# 29A5; REVERSED ANGLE WITH UNDERBAR
|
||||
# 29A6; OBLIQUE ANGLE OPENING UP
|
||||
# 29A7; OBLIQUE ANGLE OPENING DOWN
|
||||
# 29A8; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND RIGHT
|
||||
# 29A9; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND LEFT
|
||||
# 29AA; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND RIGHT
|
||||
# 29AB; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND LEFT
|
||||
# 29AC; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND UP
|
||||
# 29AD; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND UP
|
||||
# 29AE; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND DOWN
|
||||
# 29AF; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND DOWN
|
||||
# 29C2; CIRCLE WITH SMALL CIRCLE TO THE RIGHT
|
||||
# 29C3; CIRCLE WITH TWO HORIZONTAL STROKES TO THE RIGHT
|
||||
# 29C9; TWO JOINED SQUARES
|
||||
# 29CE; RIGHT TRIANGLE ABOVE LEFT TRIANGLE
|
||||
# 29DC; INCOMPLETE INFINITY
|
||||
# 29E1; INCREASES AS
|
||||
# 29E3; EQUALS SIGN AND SLANTED PARALLEL
|
||||
# 29E4; EQUALS SIGN AND SLANTED PARALLEL WITH TILDE ABOVE
|
||||
# 29E5; IDENTICAL TO AND SLANTED PARALLEL
|
||||
# 29E8; DOWN-POINTING TRIANGLE WITH LEFT HALF BLACK
|
||||
# 29E9; DOWN-POINTING TRIANGLE WITH RIGHT HALF BLACK
|
||||
# 29F4; RULE-DELAYED
|
||||
# 29F6; SOLIDUS WITH OVERBAR
|
||||
# 29F7; REVERSE SOLIDUS WITH HORIZONTAL STROKE
|
||||
# 2A0A; MODULO TWO SUM
|
||||
# 2A0B; SUMMATION WITH INTEGRAL
|
||||
# 2A0C; QUADRUPLE INTEGRAL OPERATOR
|
||||
# 2A0D; FINITE PART INTEGRAL
|
||||
# 2A0E; INTEGRAL WITH DOUBLE STROKE
|
||||
# 2A0F; INTEGRAL AVERAGE WITH SLASH
|
||||
# 2A10; CIRCULATION FUNCTION
|
||||
# 2A11; ANTICLOCKWISE INTEGRATION
|
||||
# 2A12; LINE INTEGRATION WITH RECTANGULAR PATH AROUND POLE
|
||||
# 2A13; LINE INTEGRATION WITH SEMICIRCULAR PATH AROUND POLE
|
||||
# 2A14; LINE INTEGRATION NOT INCLUDING THE POLE
|
||||
# 2A15; INTEGRAL AROUND A POINT OPERATOR
|
||||
# 2A16; QUATERNION INTEGRAL OPERATOR
|
||||
# 2A17; INTEGRAL WITH LEFTWARDS ARROW WITH HOOK
|
||||
# 2A18; INTEGRAL WITH TIMES SIGN
|
||||
# 2A19; INTEGRAL WITH INTERSECTION
|
||||
# 2A1A; INTEGRAL WITH UNION
|
||||
# 2A1B; INTEGRAL WITH OVERBAR
|
||||
# 2A1C; INTEGRAL WITH UNDERBAR
|
||||
# 2A1E; LARGE LEFT TRIANGLE OPERATOR
|
||||
# 2A1F; Z NOTATION SCHEMA COMPOSITION
|
||||
# 2A20; Z NOTATION SCHEMA PIPING
|
||||
# 2A21; Z NOTATION SCHEMA PROJECTION
|
||||
# 2A24; PLUS SIGN WITH TILDE ABOVE
|
||||
# 2A26; PLUS SIGN WITH TILDE BELOW
|
||||
# 2A29; MINUS SIGN WITH COMMA ABOVE
|
||||
# 2A3E; Z NOTATION RELATIONAL COMPOSITION
|
||||
# 2A57; SLOPING LARGE OR
|
||||
# 2A58; SLOPING LARGE AND
|
||||
# 2A6A; TILDE OPERATOR WITH DOT ABOVE
|
||||
# 2A6B; TILDE OPERATOR WITH RISING DOTS
|
||||
# 2A6C; SIMILAR MINUS SIMILAR
|
||||
# 2A6D; CONGRUENT WITH DOT ABOVE
|
||||
# 2A6F; ALMOST EQUAL TO WITH CIRCUMFLEX ACCENT
|
||||
# 2A70; APPROXIMATELY EQUAL OR EQUAL TO
|
||||
# 2A73; EQUALS SIGN ABOVE TILDE OPERATOR
|
||||
# 2A74; DOUBLE COLON EQUAL
|
||||
# 2A7B; LESS-THAN WITH QUESTION MARK ABOVE
|
||||
# 2A7C; GREATER-THAN WITH QUESTION MARK ABOVE
|
||||
# 2A85; LESS-THAN OR APPROXIMATE
|
||||
# 2A86; GREATER-THAN OR APPROXIMATE
|
||||
# 2A87; LESS-THAN AND SINGLE-LINE NOT EQUAL TO
|
||||
# 2A88; GREATER-THAN AND SINGLE-LINE NOT EQUAL TO
|
||||
# 2A89; LESS-THAN AND NOT APPROXIMATE
|
||||
# 2A8A; GREATER-THAN AND NOT APPROXIMATE
|
||||
# 2A8D; LESS-THAN ABOVE SIMILAR OR EQUAL
|
||||
# 2A8E; GREATER-THAN ABOVE SIMILAR OR EQUAL
|
||||
# 2A8F; LESS-THAN ABOVE SIMILAR ABOVE GREATER-THAN
|
||||
# 2A90; GREATER-THAN ABOVE SIMILAR ABOVE LESS-THAN
|
||||
# 2A9D; SIMILAR OR LESS-THAN
|
||||
# 2A9E; SIMILAR OR GREATER-THAN
|
||||
# 2A9F; SIMILAR ABOVE LESS-THAN ABOVE EQUALS SIGN
|
||||
# 2AA0; SIMILAR ABOVE GREATER-THAN ABOVE EQUALS SIGN
|
||||
# 2AA3; DOUBLE NESTED LESS-THAN WITH UNDERBAR
|
||||
# 2AB1; PRECEDES ABOVE SINGLE-LINE NOT EQUAL TO
|
||||
# 2AB2; SUCCEEDS ABOVE SINGLE-LINE NOT EQUAL TO
|
||||
# 2AB5; PRECEDES ABOVE NOT EQUAL TO
|
||||
# 2AB6; SUCCEEDS ABOVE NOT EQUAL TO
|
||||
# 2AB7; PRECEDES ABOVE ALMOST EQUAL TO
|
||||
# 2AB8; SUCCEEDS ABOVE ALMOST EQUAL TO
|
||||
# 2AB9; PRECEDES ABOVE NOT ALMOST EQUAL TO
|
||||
# 2ABA; SUCCEEDS ABOVE NOT ALMOST EQUAL TO
|
||||
# 2AC7; SUBSET OF ABOVE TILDE OPERATOR
|
||||
# 2AC8; SUPERSET OF ABOVE TILDE OPERATOR
|
||||
# 2AC9; SUBSET OF ABOVE ALMOST EQUAL TO
|
||||
# 2ACA; SUPERSET OF ABOVE ALMOST EQUAL TO
|
||||
# 2ACB; SUBSET OF ABOVE NOT EQUAL TO
|
||||
# 2ACC; SUPERSET OF ABOVE NOT EQUAL TO
|
||||
# 2ADC; FORKING
|
||||
# 2AE2; VERTICAL BAR TRIPLE RIGHT TURNSTILE
|
||||
# 2AE6; LONG DASH FROM LEFT MEMBER OF DOUBLE VERTICAL
|
||||
# 2AEE; DOES NOT DIVIDE WITH REVERSED NEGATION SLASH
|
||||
# 2AF3; PARALLEL WITH TILDE OPERATOR
|
||||
# 2AFB; TRIPLE SOLIDUS BINARY RELATION
|
||||
# 2AFD; DOUBLE SOLIDUS OPERATOR
|
||||
# 1D6DB; MATHEMATICAL BOLD PARTIAL DIFFERENTIAL
|
||||
# 1D715; MATHEMATICAL ITALIC PARTIAL DIFFERENTIAL
|
||||
# 1D74F; MATHEMATICAL BOLD ITALIC PARTIAL DIFFERENTIAL
|
||||
# 1D789; MATHEMATICAL SANS-SERIF BOLD PARTIAL DIFFERENTIAL
|
||||
# 1D7C3; MATHEMATICAL SANS-SERIF BOLD ITALIC PARTIAL DIFFERENTIAL
|
||||
|
||||
# EOF
|
15
3party/fribidi/gen.tab/unidata/ReadMe.txt
Normal file
15
3party/fribidi/gen.tab/unidata/ReadMe.txt
Normal file
|
@ -0,0 +1,15 @@
|
|||
# Date: 2008-03-31, 13:48:00 PDT [KW]
|
||||
#
|
||||
# Unicode Character Database
|
||||
# Copyright (c) 1991-2008 Unicode, Inc.
|
||||
# For terms of use, see http://www.unicode.org/terms_of_use.html
|
||||
#
|
||||
# For documentation, see UCD.html, NamesList.html,
|
||||
# UAX #38, "Unicode Han Database (Unihan)," and
|
||||
# UAX #44, "Unicode Character Database."
|
||||
#
|
||||
|
||||
This directory contains final contributory data files
|
||||
for the Unicode Character Database (UCD) for Unicode 5.1.0.
|
||||
|
||||
|
19336
3party/fribidi/gen.tab/unidata/UnicodeData.txt
Normal file
19336
3party/fribidi/gen.tab/unidata/UnicodeData.txt
Normal file
File diff suppressed because it is too large
Load diff
519
3party/fribidi/install-sh
Normal file
519
3party/fribidi/install-sh
Normal file
|
@ -0,0 +1,519 @@
|
|||
#!/bin/sh
|
||||
# install - install a program, script, or datafile
|
||||
|
||||
scriptversion=2006-12-25.00
|
||||
|
||||
# This originates from X11R5 (mit/util/scripts/install.sh), which was
|
||||
# later released in X11R6 (xc/config/util/install.sh) with the
|
||||
# following copyright and license.
|
||||
#
|
||||
# Copyright (C) 1994 X Consortium
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to
|
||||
# deal in the Software without restriction, including without limitation the
|
||||
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
# sell copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
|
||||
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
#
|
||||
# Except as contained in this notice, the name of the X Consortium shall not
|
||||
# be used in advertising or otherwise to promote the sale, use or other deal-
|
||||
# ings in this Software without prior written authorization from the X Consor-
|
||||
# tium.
|
||||
#
|
||||
#
|
||||
# FSF changes to this file are in the public domain.
|
||||
#
|
||||
# Calling this script install-sh is preferred over install.sh, to prevent
|
||||
# `make' implicit rules from creating a file called install from it
|
||||
# when there is no Makefile.
|
||||
#
|
||||
# This script is compatible with the BSD install script, but was written
|
||||
# from scratch.
|
||||
|
||||
nl='
|
||||
'
|
||||
IFS=" "" $nl"
|
||||
|
||||
# set DOITPROG to echo to test this script
|
||||
|
||||
# Don't use :- since 4.3BSD and earlier shells don't like it.
|
||||
doit=${DOITPROG-}
|
||||
if test -z "$doit"; then
|
||||
doit_exec=exec
|
||||
else
|
||||
doit_exec=$doit
|
||||
fi
|
||||
|
||||
# Put in absolute file names if you don't have them in your path;
|
||||
# or use environment vars.
|
||||
|
||||
chgrpprog=${CHGRPPROG-chgrp}
|
||||
chmodprog=${CHMODPROG-chmod}
|
||||
chownprog=${CHOWNPROG-chown}
|
||||
cmpprog=${CMPPROG-cmp}
|
||||
cpprog=${CPPROG-cp}
|
||||
mkdirprog=${MKDIRPROG-mkdir}
|
||||
mvprog=${MVPROG-mv}
|
||||
rmprog=${RMPROG-rm}
|
||||
stripprog=${STRIPPROG-strip}
|
||||
|
||||
posix_glob='?'
|
||||
initialize_posix_glob='
|
||||
test "$posix_glob" != "?" || {
|
||||
if (set -f) 2>/dev/null; then
|
||||
posix_glob=
|
||||
else
|
||||
posix_glob=:
|
||||
fi
|
||||
}
|
||||
'
|
||||
|
||||
posix_mkdir=
|
||||
|
||||
# Desired mode of installed file.
|
||||
mode=0755
|
||||
|
||||
chgrpcmd=
|
||||
chmodcmd=$chmodprog
|
||||
chowncmd=
|
||||
mvcmd=$mvprog
|
||||
rmcmd="$rmprog -f"
|
||||
stripcmd=
|
||||
|
||||
src=
|
||||
dst=
|
||||
dir_arg=
|
||||
dst_arg=
|
||||
|
||||
copy_on_change=false
|
||||
no_target_directory=
|
||||
|
||||
usage="\
|
||||
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
|
||||
or: $0 [OPTION]... SRCFILES... DIRECTORY
|
||||
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
|
||||
or: $0 [OPTION]... -d DIRECTORIES...
|
||||
|
||||
In the 1st form, copy SRCFILE to DSTFILE.
|
||||
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
|
||||
In the 4th, create DIRECTORIES.
|
||||
|
||||
Options:
|
||||
--help display this help and exit.
|
||||
--version display version info and exit.
|
||||
|
||||
-c (ignored)
|
||||
-C install only if different (preserve the last data modification time)
|
||||
-d create directories instead of installing files.
|
||||
-g GROUP $chgrpprog installed files to GROUP.
|
||||
-m MODE $chmodprog installed files to MODE.
|
||||
-o USER $chownprog installed files to USER.
|
||||
-s $stripprog installed files.
|
||||
-t DIRECTORY install into DIRECTORY.
|
||||
-T report an error if DSTFILE is a directory.
|
||||
|
||||
Environment variables override the default commands:
|
||||
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
|
||||
RMPROG STRIPPROG
|
||||
"
|
||||
|
||||
while test $# -ne 0; do
|
||||
case $1 in
|
||||
-c) ;;
|
||||
|
||||
-C) copy_on_change=true;;
|
||||
|
||||
-d) dir_arg=true;;
|
||||
|
||||
-g) chgrpcmd="$chgrpprog $2"
|
||||
shift;;
|
||||
|
||||
--help) echo "$usage"; exit $?;;
|
||||
|
||||
-m) mode=$2
|
||||
case $mode in
|
||||
*' '* | *' '* | *'
|
||||
'* | *'*'* | *'?'* | *'['*)
|
||||
echo "$0: invalid mode: $mode" >&2
|
||||
exit 1;;
|
||||
esac
|
||||
shift;;
|
||||
|
||||
-o) chowncmd="$chownprog $2"
|
||||
shift;;
|
||||
|
||||
-s) stripcmd=$stripprog;;
|
||||
|
||||
-t) dst_arg=$2
|
||||
shift;;
|
||||
|
||||
-T) no_target_directory=true;;
|
||||
|
||||
--version) echo "$0 $scriptversion"; exit $?;;
|
||||
|
||||
--) shift
|
||||
break;;
|
||||
|
||||
-*) echo "$0: invalid option: $1" >&2
|
||||
exit 1;;
|
||||
|
||||
*) break;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
|
||||
# When -d is used, all remaining arguments are directories to create.
|
||||
# When -t is used, the destination is already specified.
|
||||
# Otherwise, the last argument is the destination. Remove it from $@.
|
||||
for arg
|
||||
do
|
||||
if test -n "$dst_arg"; then
|
||||
# $@ is not empty: it contains at least $arg.
|
||||
set fnord "$@" "$dst_arg"
|
||||
shift # fnord
|
||||
fi
|
||||
shift # arg
|
||||
dst_arg=$arg
|
||||
done
|
||||
fi
|
||||
|
||||
if test $# -eq 0; then
|
||||
if test -z "$dir_arg"; then
|
||||
echo "$0: no input file specified." >&2
|
||||
exit 1
|
||||
fi
|
||||
# It's OK to call `install-sh -d' without argument.
|
||||
# This can happen when creating conditional directories.
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if test -z "$dir_arg"; then
|
||||
trap '(exit $?); exit' 1 2 13 15
|
||||
|
||||
# Set umask so as not to create temps with too-generous modes.
|
||||
# However, 'strip' requires both read and write access to temps.
|
||||
case $mode in
|
||||
# Optimize common cases.
|
||||
*644) cp_umask=133;;
|
||||
*755) cp_umask=22;;
|
||||
|
||||
*[0-7])
|
||||
if test -z "$stripcmd"; then
|
||||
u_plus_rw=
|
||||
else
|
||||
u_plus_rw='% 200'
|
||||
fi
|
||||
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
|
||||
*)
|
||||
if test -z "$stripcmd"; then
|
||||
u_plus_rw=
|
||||
else
|
||||
u_plus_rw=,u+rw
|
||||
fi
|
||||
cp_umask=$mode$u_plus_rw;;
|
||||
esac
|
||||
fi
|
||||
|
||||
for src
|
||||
do
|
||||
# Protect names starting with `-'.
|
||||
case $src in
|
||||
-*) src=./$src;;
|
||||
esac
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
dst=$src
|
||||
dstdir=$dst
|
||||
test -d "$dstdir"
|
||||
dstdir_status=$?
|
||||
else
|
||||
|
||||
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
|
||||
# might cause directories to be created, which would be especially bad
|
||||
# if $src (and thus $dsttmp) contains '*'.
|
||||
if test ! -f "$src" && test ! -d "$src"; then
|
||||
echo "$0: $src does not exist." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test -z "$dst_arg"; then
|
||||
echo "$0: no destination specified." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
dst=$dst_arg
|
||||
# Protect names starting with `-'.
|
||||
case $dst in
|
||||
-*) dst=./$dst;;
|
||||
esac
|
||||
|
||||
# If destination is a directory, append the input filename; won't work
|
||||
# if double slashes aren't ignored.
|
||||
if test -d "$dst"; then
|
||||
if test -n "$no_target_directory"; then
|
||||
echo "$0: $dst_arg: Is a directory" >&2
|
||||
exit 1
|
||||
fi
|
||||
dstdir=$dst
|
||||
dst=$dstdir/`basename "$src"`
|
||||
dstdir_status=0
|
||||
else
|
||||
# Prefer dirname, but fall back on a substitute if dirname fails.
|
||||
dstdir=`
|
||||
(dirname "$dst") 2>/dev/null ||
|
||||
expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
|
||||
X"$dst" : 'X\(//\)[^/]' \| \
|
||||
X"$dst" : 'X\(//\)$' \| \
|
||||
X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
|
||||
echo X"$dst" |
|
||||
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
|
||||
s//\1/
|
||||
q
|
||||
}
|
||||
/^X\(\/\/\)[^/].*/{
|
||||
s//\1/
|
||||
q
|
||||
}
|
||||
/^X\(\/\/\)$/{
|
||||
s//\1/
|
||||
q
|
||||
}
|
||||
/^X\(\/\).*/{
|
||||
s//\1/
|
||||
q
|
||||
}
|
||||
s/.*/./; q'
|
||||
`
|
||||
|
||||
test -d "$dstdir"
|
||||
dstdir_status=$?
|
||||
fi
|
||||
fi
|
||||
|
||||
obsolete_mkdir_used=false
|
||||
|
||||
if test $dstdir_status != 0; then
|
||||
case $posix_mkdir in
|
||||
'')
|
||||
# Create intermediate dirs using mode 755 as modified by the umask.
|
||||
# This is like FreeBSD 'install' as of 1997-10-28.
|
||||
umask=`umask`
|
||||
case $stripcmd.$umask in
|
||||
# Optimize common cases.
|
||||
*[2367][2367]) mkdir_umask=$umask;;
|
||||
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
|
||||
|
||||
*[0-7])
|
||||
mkdir_umask=`expr $umask + 22 \
|
||||
- $umask % 100 % 40 + $umask % 20 \
|
||||
- $umask % 10 % 4 + $umask % 2
|
||||
`;;
|
||||
*) mkdir_umask=$umask,go-w;;
|
||||
esac
|
||||
|
||||
# With -d, create the new directory with the user-specified mode.
|
||||
# Otherwise, rely on $mkdir_umask.
|
||||
if test -n "$dir_arg"; then
|
||||
mkdir_mode=-m$mode
|
||||
else
|
||||
mkdir_mode=
|
||||
fi
|
||||
|
||||
posix_mkdir=false
|
||||
case $umask in
|
||||
*[123567][0-7][0-7])
|
||||
# POSIX mkdir -p sets u+wx bits regardless of umask, which
|
||||
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
|
||||
;;
|
||||
*)
|
||||
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
|
||||
trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
|
||||
|
||||
if (umask $mkdir_umask &&
|
||||
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
|
||||
then
|
||||
if test -z "$dir_arg" || {
|
||||
# Check for POSIX incompatibilities with -m.
|
||||
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
|
||||
# other-writeable bit of parent directory when it shouldn't.
|
||||
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
|
||||
ls_ld_tmpdir=`ls -ld "$tmpdir"`
|
||||
case $ls_ld_tmpdir in
|
||||
d????-?r-*) different_mode=700;;
|
||||
d????-?--*) different_mode=755;;
|
||||
*) false;;
|
||||
esac &&
|
||||
$mkdirprog -m$different_mode -p -- "$tmpdir" && {
|
||||
ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
|
||||
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
|
||||
}
|
||||
}
|
||||
then posix_mkdir=:
|
||||
fi
|
||||
rmdir "$tmpdir/d" "$tmpdir"
|
||||
else
|
||||
# Remove any dirs left behind by ancient mkdir implementations.
|
||||
rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
|
||||
fi
|
||||
trap '' 0;;
|
||||
esac;;
|
||||
esac
|
||||
|
||||
if
|
||||
$posix_mkdir && (
|
||||
umask $mkdir_umask &&
|
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
|
||||
)
|
||||
then :
|
||||
else
|
||||
|
||||
# The umask is ridiculous, or mkdir does not conform to POSIX,
|
||||
# or it failed possibly due to a race condition. Create the
|
||||
# directory the slow way, step by step, checking for races as we go.
|
||||
|
||||
case $dstdir in
|
||||
/*) prefix='/';;
|
||||
-*) prefix='./';;
|
||||
*) prefix='';;
|
||||
esac
|
||||
|
||||
eval "$initialize_posix_glob"
|
||||
|
||||
oIFS=$IFS
|
||||
IFS=/
|
||||
$posix_glob set -f
|
||||
set fnord $dstdir
|
||||
shift
|
||||
$posix_glob set +f
|
||||
IFS=$oIFS
|
||||
|
||||
prefixes=
|
||||
|
||||
for d
|
||||
do
|
||||
test -z "$d" && continue
|
||||
|
||||
prefix=$prefix$d
|
||||
if test -d "$prefix"; then
|
||||
prefixes=
|
||||
else
|
||||
if $posix_mkdir; then
|
||||
(umask=$mkdir_umask &&
|
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
|
||||
# Don't fail if two instances are running concurrently.
|
||||
test -d "$prefix" || exit 1
|
||||
else
|
||||
case $prefix in
|
||||
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
|
||||
*) qprefix=$prefix;;
|
||||
esac
|
||||
prefixes="$prefixes '$qprefix'"
|
||||
fi
|
||||
fi
|
||||
prefix=$prefix/
|
||||
done
|
||||
|
||||
if test -n "$prefixes"; then
|
||||
# Don't fail if two instances are running concurrently.
|
||||
(umask $mkdir_umask &&
|
||||
eval "\$doit_exec \$mkdirprog $prefixes") ||
|
||||
test -d "$dstdir" || exit 1
|
||||
obsolete_mkdir_used=true
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
|
||||
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
|
||||
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
|
||||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
|
||||
else
|
||||
|
||||
# Make a couple of temp file names in the proper directory.
|
||||
dsttmp=$dstdir/_inst.$$_
|
||||
rmtmp=$dstdir/_rm.$$_
|
||||
|
||||
# Trap to clean up those temp files at exit.
|
||||
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
|
||||
|
||||
# Copy the file name to the temp name.
|
||||
(umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
|
||||
|
||||
# and set any options; do chmod last to preserve setuid bits.
|
||||
#
|
||||
# If any of these fail, we abort the whole thing. If we want to
|
||||
# ignore errors from any of these, just make sure not to ignore
|
||||
# errors from the above "$doit $cpprog $src $dsttmp" command.
|
||||
#
|
||||
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
|
||||
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
|
||||
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
|
||||
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
|
||||
|
||||
# If -C, don't bother to copy if it wouldn't change the file.
|
||||
if $copy_on_change &&
|
||||
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
|
||||
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
|
||||
|
||||
eval "$initialize_posix_glob" &&
|
||||
$posix_glob set -f &&
|
||||
set X $old && old=:$2:$4:$5:$6 &&
|
||||
set X $new && new=:$2:$4:$5:$6 &&
|
||||
$posix_glob set +f &&
|
||||
|
||||
test "$old" = "$new" &&
|
||||
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
|
||||
then
|
||||
rm -f "$dsttmp"
|
||||
else
|
||||
# Rename the file to the real destination.
|
||||
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
|
||||
|
||||
# The rename failed, perhaps because mv can't rename something else
|
||||
# to itself, or perhaps because mv is so ancient that it does not
|
||||
# support -f.
|
||||
{
|
||||
# Now remove or move aside any old file at destination location.
|
||||
# We try this two ways since rm can't unlink itself on some
|
||||
# systems and the destination file might be busy for other
|
||||
# reasons. In this case, the final cleanup might fail but the new
|
||||
# file should still install successfully.
|
||||
{
|
||||
test ! -f "$dst" ||
|
||||
$doit $rmcmd -f "$dst" 2>/dev/null ||
|
||||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
|
||||
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
|
||||
} ||
|
||||
{ echo "$0: cannot unlink or rename $dst" >&2
|
||||
(exit 1); exit 1
|
||||
}
|
||||
} &&
|
||||
|
||||
# Now rename the file to the real destination.
|
||||
$doit $mvcmd "$dsttmp" "$dst"
|
||||
}
|
||||
fi || exit 1
|
||||
|
||||
trap '' 0
|
||||
fi
|
||||
done
|
||||
|
||||
# Local variables:
|
||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-end: "$"
|
||||
# End:
|
82
3party/fribidi/lib/Makefile.am
Normal file
82
3party/fribidi/lib/Makefile.am
Normal file
|
@ -0,0 +1,82 @@
|
|||
EXTRA_DIST = fribidi.def
|
||||
|
||||
lib_LTLIBRARIES = libfribidi.la
|
||||
|
||||
AM_CPPFLAGS = $(MISC_CFLAGS)
|
||||
|
||||
libfribidi_la_LDFLAGS = -no-undefined -version-info $(LT_VERSION_INFO) -export-symbols-regex "^fribidi_.*"
|
||||
libfribidi_la_LIBADD = $(MISC_LIBS)
|
||||
libfribidi_la_DEPENDENCIES =
|
||||
|
||||
if OS_WIN32
|
||||
libfribidi_la_LDFLAGS += -export-symbols $(srcdir)/fribidi.def
|
||||
endif # OS_WIN32
|
||||
|
||||
if FRIBIDI_CHARSETS
|
||||
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/charset
|
||||
libfribidi_la_LIBADD += $(top_builddir)/charset/libfribidi-char-sets.la
|
||||
libfribidi_la_DEPENDENCIES += $(top_builddir)/charset/libfribidi-char-sets.la
|
||||
|
||||
$(top_builddir)/charset/libfribidi-char-sets.la:
|
||||
cd $(top_builddir)/lib && $(MAKE) $(AM_MAKEFLAGS) libfribidi-char-sets.la
|
||||
|
||||
endif # FRIBIDI_CHARSETS
|
||||
|
||||
include Headers.mk
|
||||
pkginclude_HEADERS = $(libfribidi_la_headers)
|
||||
nodist_pkginclude_HEADERS = fribidi-config.h
|
||||
|
||||
libfribidi_la_SOURCES = \
|
||||
arabic-misc.tab.i \
|
||||
arabic-shaping.tab.i \
|
||||
bidi-type.tab.i \
|
||||
bidi-types.h \
|
||||
common.h \
|
||||
debug.h \
|
||||
fribidi.c \
|
||||
fribidi-arabic.c \
|
||||
fribidi-bidi.c \
|
||||
fribidi-bidi-types.c \
|
||||
fribidi-deprecated.c \
|
||||
fribidi-joining.c \
|
||||
fribidi-joining-types.c \
|
||||
fribidi-mem.c \
|
||||
fribidi-mirroring.c \
|
||||
fribidi-run.c \
|
||||
fribidi-shape.c \
|
||||
joining-type.tab.i \
|
||||
joining-types.h \
|
||||
mem.h \
|
||||
mirroring.tab.i \
|
||||
run.h
|
||||
|
||||
GENERATEDSOURCES = \
|
||||
fribidi-unicode-version.h \
|
||||
arabic-shaping.tab.i \
|
||||
bidi-type.tab.i \
|
||||
joining-type.tab.i \
|
||||
mirroring.tab.i
|
||||
|
||||
BUILT_SOURCES = \
|
||||
$(GENERATEDSOURCES) \
|
||||
fribidi-config.h
|
||||
|
||||
$(GENERATEDSOURCES):
|
||||
@(cd $(top_builddir)/gen.tab && \
|
||||
$(MAKE) $(AM_MAKEFLAGS) $@) && \
|
||||
(test -f $@ || mv $(top_builddir)/gen.tab/$@ .)
|
||||
|
||||
# re-generate all built sources:
|
||||
gen:
|
||||
@(cd $(top_builddir)/gen.tab && \
|
||||
$(MAKE) $(AM_MAKEFLAGS) $@) && \
|
||||
$(RM) $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(BUILT_SOURCES)
|
||||
|
||||
MAINTAINERCLEANFILES = $(BUILT_SOURCES)
|
||||
|
||||
$(top_builddir)/config.h: $(top_srcdir)/config.h.in
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) config.h
|
||||
|
||||
.PHONY: gen
|
643
3party/fribidi/lib/Makefile.in
Normal file
643
3party/fribidi/lib/Makefile.in
Normal file
|
@ -0,0 +1,643 @@
|
|||
# Makefile.in generated by automake 1.10.2 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
|
||||
VPATH = @srcdir@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
@OS_WIN32_TRUE@am__append_1 = -export-symbols $(srcdir)/fribidi.def
|
||||
@FRIBIDI_CHARSETS_TRUE@am__append_2 = -I$(top_srcdir)/charset
|
||||
@FRIBIDI_CHARSETS_TRUE@am__append_3 = $(top_builddir)/charset/libfribidi-char-sets.la
|
||||
@FRIBIDI_CHARSETS_TRUE@am__append_4 = $(top_builddir)/charset/libfribidi-char-sets.la
|
||||
DIST_COMMON = $(pkginclude_HEADERS) $(srcdir)/Headers.mk \
|
||||
$(srcdir)/Makefile.am $(srcdir)/Makefile.in \
|
||||
$(srcdir)/fribidi-config.h.in
|
||||
subdir = lib
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/config.h
|
||||
CONFIG_CLEAN_FILES = fribidi-config.h
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgincludedir)" \
|
||||
"$(DESTDIR)$(pkgincludedir)"
|
||||
libLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(lib_LTLIBRARIES)
|
||||
am__DEPENDENCIES_1 =
|
||||
am_libfribidi_la_OBJECTS = fribidi.lo fribidi-arabic.lo \
|
||||
fribidi-bidi.lo fribidi-bidi-types.lo fribidi-deprecated.lo \
|
||||
fribidi-joining.lo fribidi-joining-types.lo fribidi-mem.lo \
|
||||
fribidi-mirroring.lo fribidi-run.lo fribidi-shape.lo
|
||||
libfribidi_la_OBJECTS = $(am_libfribidi_la_OBJECTS)
|
||||
libfribidi_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||
$(libfribidi_la_LDFLAGS) $(LDFLAGS) -o $@
|
||||
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
CCLD = $(CC)
|
||||
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
|
||||
$(LDFLAGS) -o $@
|
||||
SOURCES = $(libfribidi_la_SOURCES)
|
||||
DIST_SOURCES = $(libfribidi_la_SOURCES)
|
||||
nodist_pkgincludeHEADERS_INSTALL = $(INSTALL_HEADER)
|
||||
pkgincludeHEADERS_INSTALL = $(INSTALL_HEADER)
|
||||
HEADERS = $(nodist_pkginclude_HEADERS) $(pkginclude_HEADERS)
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMTAR = @AMTAR@
|
||||
AR = @AR@
|
||||
AS = @AS@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
FGREP = @FGREP@
|
||||
FRIBIDI_BINARY_AGE = @FRIBIDI_BINARY_AGE@
|
||||
FRIBIDI_CHARSETS = @FRIBIDI_CHARSETS@
|
||||
FRIBIDI_INTERFACE_AGE = @FRIBIDI_INTERFACE_AGE@
|
||||
FRIBIDI_INTERFACE_VERSION = @FRIBIDI_INTERFACE_VERSION@
|
||||
FRIBIDI_MAJOR_VERSION = @FRIBIDI_MAJOR_VERSION@
|
||||
FRIBIDI_MICRO_VERSION = @FRIBIDI_MICRO_VERSION@
|
||||
FRIBIDI_MINOR_VERSION = @FRIBIDI_MINOR_VERSION@
|
||||
FRIBIDI_NO_DEPRECATED = @FRIBIDI_NO_DEPRECATED@
|
||||
FRIBIDI_USE_GLIB = @FRIBIDI_USE_GLIB@
|
||||
FRIBIDI_VERSION = @FRIBIDI_VERSION@
|
||||
GLIB_CFLAGS = @GLIB_CFLAGS@
|
||||
GLIB_LIBS = @GLIB_LIBS@
|
||||
GREP = @GREP@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@
|
||||
LT_VERSION_INFO = @LT_VERSION_INFO@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MISC_CFLAGS = @MISC_CFLAGS@
|
||||
MISC_LIBS = @MISC_LIBS@
|
||||
MISC_PACKAGES = @MISC_PACKAGES@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
SIZEOF_INT = @SIZEOF_INT@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
lt_ECHO = @lt_ECHO@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
EXTRA_DIST = fribidi.def
|
||||
lib_LTLIBRARIES = libfribidi.la
|
||||
AM_CPPFLAGS = $(MISC_CFLAGS) $(am__append_2)
|
||||
libfribidi_la_LDFLAGS = -no-undefined -version-info $(LT_VERSION_INFO) \
|
||||
-export-symbols-regex "^fribidi_.*" $(am__append_1)
|
||||
libfribidi_la_LIBADD = $(MISC_LIBS) $(am__append_3)
|
||||
libfribidi_la_DEPENDENCIES = $(am__append_4)
|
||||
libfribidi_la_headers = \
|
||||
fribidi-arabic.h \
|
||||
fribidi-begindecls.h \
|
||||
fribidi-bidi.h \
|
||||
fribidi-bidi-types.h \
|
||||
fribidi-bidi-types-list.h \
|
||||
fribidi-common.h \
|
||||
fribidi-deprecated.h \
|
||||
fribidi-enddecls.h \
|
||||
fribidi-flags.h \
|
||||
fribidi-joining.h \
|
||||
fribidi-joining-types.h \
|
||||
fribidi-joining-types-list.h \
|
||||
fribidi-mirroring.h \
|
||||
fribidi-shape.h \
|
||||
fribidi-types.h \
|
||||
fribidi-unicode.h \
|
||||
fribidi-unicode-version.h \
|
||||
fribidi.h
|
||||
|
||||
# fribidi.h should be the last entry in the list above.
|
||||
libfribidi_la_symbols = $(shell cat $(top_srcdir)/lib/fribidi.def)
|
||||
pkginclude_HEADERS = $(libfribidi_la_headers)
|
||||
nodist_pkginclude_HEADERS = fribidi-config.h
|
||||
libfribidi_la_SOURCES = \
|
||||
arabic-misc.tab.i \
|
||||
arabic-shaping.tab.i \
|
||||
bidi-type.tab.i \
|
||||
bidi-types.h \
|
||||
common.h \
|
||||
debug.h \
|
||||
fribidi.c \
|
||||
fribidi-arabic.c \
|
||||
fribidi-bidi.c \
|
||||
fribidi-bidi-types.c \
|
||||
fribidi-deprecated.c \
|
||||
fribidi-joining.c \
|
||||
fribidi-joining-types.c \
|
||||
fribidi-mem.c \
|
||||
fribidi-mirroring.c \
|
||||
fribidi-run.c \
|
||||
fribidi-shape.c \
|
||||
joining-type.tab.i \
|
||||
joining-types.h \
|
||||
mem.h \
|
||||
mirroring.tab.i \
|
||||
run.h
|
||||
|
||||
GENERATEDSOURCES = \
|
||||
fribidi-unicode-version.h \
|
||||
arabic-shaping.tab.i \
|
||||
bidi-type.tab.i \
|
||||
joining-type.tab.i \
|
||||
mirroring.tab.i
|
||||
|
||||
BUILT_SOURCES = \
|
||||
$(GENERATEDSOURCES) \
|
||||
fribidi-config.h
|
||||
|
||||
MAINTAINERCLEANFILES = $(BUILT_SOURCES)
|
||||
all: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .c .lo .o .obj
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/Headers.mk $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits lib/Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnits lib/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
fribidi-config.h: $(top_builddir)/config.status $(srcdir)/fribidi-config.h.in
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
|
||||
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-libLTLIBRARIES:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
p=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
|
||||
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
|
||||
done
|
||||
|
||||
clean-libLTLIBRARIES:
|
||||
-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" != "$$p" || dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libfribidi.la: $(libfribidi_la_OBJECTS) $(libfribidi_la_DEPENDENCIES)
|
||||
$(libfribidi_la_LINK) -rpath $(libdir) $(libfribidi_la_OBJECTS) $(libfribidi_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-arabic.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-bidi-types.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-bidi.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-deprecated.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-joining-types.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-joining.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-mem.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-mirroring.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-run.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-shape.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi.Plo@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
||||
|
||||
.c.obj:
|
||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
||||
|
||||
.c.lo:
|
||||
@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
install-nodist_pkgincludeHEADERS: $(nodist_pkginclude_HEADERS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(pkgincludedir)" || $(MKDIR_P) "$(DESTDIR)$(pkgincludedir)"
|
||||
@list='$(nodist_pkginclude_HEADERS)'; for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(nodist_pkgincludeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgincludedir)/$$f'"; \
|
||||
$(nodist_pkgincludeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgincludedir)/$$f"; \
|
||||
done
|
||||
|
||||
uninstall-nodist_pkgincludeHEADERS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(nodist_pkginclude_HEADERS)'; for p in $$list; do \
|
||||
f=$(am__strip_dir) \
|
||||
echo " rm -f '$(DESTDIR)$(pkgincludedir)/$$f'"; \
|
||||
rm -f "$(DESTDIR)$(pkgincludedir)/$$f"; \
|
||||
done
|
||||
install-pkgincludeHEADERS: $(pkginclude_HEADERS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(pkgincludedir)" || $(MKDIR_P) "$(DESTDIR)$(pkgincludedir)"
|
||||
@list='$(pkginclude_HEADERS)'; for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(pkgincludeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgincludedir)/$$f'"; \
|
||||
$(pkgincludeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgincludedir)/$$f"; \
|
||||
done
|
||||
|
||||
uninstall-pkgincludeHEADERS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(pkginclude_HEADERS)'; for p in $$list; do \
|
||||
f=$(am__strip_dir) \
|
||||
echo " rm -f '$(DESTDIR)$(pkgincludedir)/$$f'"; \
|
||||
rm -f "$(DESTDIR)$(pkgincludedir)/$$f"; \
|
||||
done
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& cd $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) $$here
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) check-am
|
||||
all-am: Makefile $(LTLIBRARIES) $(HEADERS)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgincludedir)" "$(DESTDIR)$(pkgincludedir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
|
||||
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-nodist_pkgincludeHEADERS \
|
||||
install-pkgincludeHEADERS
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-exec-am: install-libLTLIBRARIES
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
||||
mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-libLTLIBRARIES \
|
||||
uninstall-nodist_pkgincludeHEADERS uninstall-pkgincludeHEADERS
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libLTLIBRARIES clean-libtool ctags distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-info install-info-am \
|
||||
install-libLTLIBRARIES install-man \
|
||||
install-nodist_pkgincludeHEADERS install-pdf install-pdf-am \
|
||||
install-pkgincludeHEADERS install-ps install-ps-am \
|
||||
install-strip installcheck installcheck-am installdirs \
|
||||
maintainer-clean maintainer-clean-generic mostlyclean \
|
||||
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
|
||||
pdf pdf-am ps ps-am tags uninstall uninstall-am \
|
||||
uninstall-libLTLIBRARIES uninstall-nodist_pkgincludeHEADERS \
|
||||
uninstall-pkgincludeHEADERS
|
||||
|
||||
|
||||
@FRIBIDI_CHARSETS_TRUE@$(top_builddir)/charset/libfribidi-char-sets.la:
|
||||
@FRIBIDI_CHARSETS_TRUE@ cd $(top_builddir)/lib && $(MAKE) $(AM_MAKEFLAGS) libfribidi-char-sets.la
|
||||
|
||||
$(GENERATEDSOURCES):
|
||||
@(cd $(top_builddir)/gen.tab && \
|
||||
$(MAKE) $(AM_MAKEFLAGS) $@) && \
|
||||
(test -f $@ || mv $(top_builddir)/gen.tab/$@ .)
|
||||
|
||||
# re-generate all built sources:
|
||||
gen:
|
||||
@(cd $(top_builddir)/gen.tab && \
|
||||
$(MAKE) $(AM_MAKEFLAGS) $@) && \
|
||||
$(RM) $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(BUILT_SOURCES)
|
||||
|
||||
$(top_builddir)/config.h: $(top_srcdir)/config.h.in
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) config.h
|
||||
|
||||
.PHONY: gen
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
94
3party/fribidi/lib/arabic-misc.tab.i
Normal file
94
3party/fribidi/lib/arabic-misc.tab.i
Normal file
|
@ -0,0 +1,94 @@
|
|||
/* The tables in this file should all be sorted on their first item. */
|
||||
|
||||
/* *INDENT-OFF* */
|
||||
|
||||
const PairMap mandatory_liga_table[] = {
|
||||
{{0xFEDF, 0xFE82}, 0xFEF5},
|
||||
{{0xFEDF, 0xFE84}, 0xFEF7},
|
||||
{{0xFEDF, 0xFE88}, 0xFEF9},
|
||||
{{0xFEDF, 0xFE8E}, 0xFEFB},
|
||||
{{0xFEE0, 0xFE82}, 0xFEF6},
|
||||
{{0xFEE0, 0xFE84}, 0xFEF8},
|
||||
{{0xFEE0, 0xFE88}, 0xFEFA},
|
||||
{{0xFEE0, 0xFE8E}, 0xFEFC},
|
||||
};
|
||||
|
||||
|
||||
const PairMap console_liga_table[] = {
|
||||
{{0x0640, 0xFC60}, 0xFCF2},
|
||||
{{0x0640, 0xFC61}, 0xFCF3},
|
||||
{{0x0640, 0xFC62}, 0xFCF4},
|
||||
{{0x0640, 0xFE70}, 0xFE71},
|
||||
{{0x0640, 0xFE76}, 0xFE77},
|
||||
{{0x0640, 0xFE78}, 0xFE79},
|
||||
{{0x0640, 0xFE7A}, 0xFE7B},
|
||||
{{0x0640, 0xFE7C}, 0xFE7D},
|
||||
{{0x0640, 0xFE7E}, 0xFE7F},
|
||||
{{0xFBE8, 0x0654}, 0xFE8B},
|
||||
{{0xFBE9, 0x0654}, 0xFE8C},
|
||||
{{0xFBFC, 0x0654}, 0xFE89},
|
||||
{{0xFBFC, 0x0670}, 0xFC5D},
|
||||
{{0xFBFD, 0x0654}, 0xFE8A},
|
||||
{{0xFBFD, 0x0670}, 0xFC90},
|
||||
{{0xFE7C, 0x0670}, 0xFC63},
|
||||
{{0xFE7C, 0xFE72}, 0xFC5E},
|
||||
{{0xFE7C, 0xFE74}, 0xFC5F},
|
||||
{{0xFE7C, 0xFE76}, 0xFC60},
|
||||
{{0xFE7C, 0xFE78}, 0xFC61},
|
||||
{{0xFE7C, 0xFE7A}, 0xFC62},
|
||||
{{0xFE7D, 0xFE76}, 0xFCF2},
|
||||
{{0xFE7D, 0xFE77}, 0xFCF2},
|
||||
{{0xFE7D, 0xFE78}, 0xFCF3},
|
||||
{{0xFE7D, 0xFE79}, 0xFCF3},
|
||||
{{0xFE7D, 0xFE7A}, 0xFCF4},
|
||||
{{0xFE7D, 0xFE7B}, 0xFCF4},
|
||||
{{0xFE8D, 0x0653}, 0xFE81},
|
||||
{{0xFE8D, 0x0654}, 0xFE83},
|
||||
{{0xFE8D, 0x0655}, 0xFE87},
|
||||
{{0xFE8D, 0xFE70}, 0xFD3D},
|
||||
{{0xFE8E, 0x0653}, 0xFE82},
|
||||
{{0xFE8E, 0x0654}, 0xFE84},
|
||||
{{0xFE8E, 0x0655}, 0xFE88},
|
||||
{{0xFE8E, 0xFE70}, 0xFD3C},
|
||||
{{0xFEE9, 0x0654}, 0xFBA4},
|
||||
{{0xFEEA, 0x0654}, 0xFBA5},
|
||||
{{0xFEED, 0x0654}, 0xFE85},
|
||||
{{0xFEEE, 0x0654}, 0xFE86},
|
||||
{{0xFEEF, 0x0654}, 0xFE89},
|
||||
{{0xFEEF, 0x0670}, 0xFC5D},
|
||||
{{0xFEF0, 0x0654}, 0xFE8A},
|
||||
{{0xFEF0, 0x0670}, 0xFC90},
|
||||
{{0xFEF1, 0x0654}, 0xFE89},
|
||||
{{0xFEF1, 0x0670}, 0xFC5D},
|
||||
{{0xFEF2, 0x0654}, 0xFE8A},
|
||||
{{0xFEF2, 0x0670}, 0xFC90},
|
||||
{{0xFEF3, 0x0654}, 0xFE8B},
|
||||
{{0xFEF4, 0x0654}, 0xFE8C},
|
||||
{{0xFEFB, 0x0653}, 0xFEF5},
|
||||
{{0xFEFB, 0x0654}, 0xFEF7},
|
||||
{{0xFEFB, 0x0655}, 0xFEF9},
|
||||
{{0xFEFC, 0x0653}, 0xFEF6},
|
||||
{{0xFEFC, 0x0654}, 0xFEF8},
|
||||
{{0xFEFC, 0x0655}, 0xFEFA},
|
||||
};
|
||||
|
||||
|
||||
static const FriBidiChar NSMShap[][4] = {
|
||||
{0xFE70, 0xFE71, 0xFE70, 0xFE71,},
|
||||
{0xFE72, 0xFE72, 0xFE72, 0xFE72,},
|
||||
{0xFE74, 0xFE74, 0xFE74, 0xFE74,},
|
||||
{0xFE76, 0xFE77, 0xFE76, 0xFE77,},
|
||||
{0xFE78, 0xFE79, 0xFE78, 0xFE79,},
|
||||
{0xFE7A, 0xFE7B, 0xFE7A, 0xFE7B,},
|
||||
{0xFE7C, 0xFE7D, 0xFE7C, 0xFE7D,},
|
||||
{0xFE7E, 0xFE7F, 0xFE7E, 0xFE7F,},
|
||||
};
|
||||
|
||||
/* *INDENT-ON* */
|
||||
|
||||
#ifndef FRIBIDI_ACCESS_SHAPE_TABLE
|
||||
# define FRIBIDI_ACCESS_SHAPE_TABLE(table,min,max,x,shape) \
|
||||
(((x)<(min)||(x)>(max))?(x):(table)[(x)-(min)][(shape)])
|
||||
#endif
|
||||
|
||||
#define FRIBIDI_GET_ARABIC_SHAPE_NSM(x,shape) FRIBIDI_ACCESS_SHAPE_TABLE(NSMShap, 0x064B, 0x0652, (x), (shape))
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue