+commit c7d6e1668e94bb6418ea5769f4b186ac375a115d
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Fri Dec 13 10:45:34 2019 +0200
+
+ Fixed bug in the the algo for multiple isolates at different levels
+
+ lib/fribidi-bidi.c | 8 +-------
+ 1 file changed, 1 insertion(+), 7 deletions(-)
+
+commit 034c6e9a1d296286305f4cfd1e0072b879f52568
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Thu Oct 24 09:37:29 2019 +0300
+
+ Truncate isolate_level to FRIBIDI_BIDI_MAX_EXPLICIT_LEVEL
+
+ lib/fribidi-bidi.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+commit deb5884e9cb33913250079e863ff7a50800c77d4
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Mon Oct 21 23:08:12 2019 +0300
+
+ Fix misplaced external "C" position necessary for C++ compilation
+
+ lib/fribidi.h | 8 +++-----
+ 1 file changed, 3 insertions(+), 5 deletions(-)
+
+commit 79581cc93b26c84edf74c9b51511126e0aacec9e
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Sun Oct 13 11:49:25 2019 +0300
+
+ Updated the documentation for the undeprecated fribidi_log2vis()
+
+ lib/fribidi.h | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+commit d569512f20a9ad940b81bbac85f055b07729d760
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Sun Oct 13 11:26:20 2019 +0300
+
+ Some cleanup of my last dedeprecation changes.
+
+ lib/fribidi-deprecated.c | 13 -------------
+ lib/fribidi-deprecated.h | 16 ++++++++++++++++
+ lib/fribidi.h | 24 ++----------------------
+ 3 files changed, 18 insertions(+), 35 deletions(-)
+
+commit 88aff0e4dc58137cd68298244f72d2c683e39a28
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Sun Oct 13 11:18:50 2019 +0300
+
+ Undeprecated fribidi_remove_bidi_marks() and fribidi_log2vis().
+
+ - Fixes issue #86
+
+ bin/fribidi-main.c | 7 +-
+ lib/fribidi-deprecated.c | 232
+ --------------------------------------------------
+ lib/fribidi-deprecated.h | 85 -------------------
+ lib/fribidi.c | 233
+ ++++++++++++++++++++++++++++++++++++++++++++++++++-
+ lib/fribidi.h | 84 +++++++++++++++++++
+ 5 files changed, 319 insertions(+), 322 deletions(-)
+
+commit 9e5c3f630198793492352959c1e68ee4303b7c2a
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Sun Oct 13 11:03:08 2019 +0300
+
+ Added README.md to the distribution tarball (fixes #125)
+
+ Makefile.am | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit aac3845708969b9c4bc2874edc4950123595b1b4
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Fri Sep 27 18:18:56 2019 +0300
+
+ Bumped version to 1.0.7
+
+ NEWS | 5 +++++
+ configure.ac | 2 +-
+ meson.build | 2 +-
+ 3 files changed, 7 insertions(+), 2 deletions(-)
+
+commit 88bf9fe9933f46216c3757e27924a3006542ee8d
+Merge: 40d0f92 b4da58d
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Fri Sep 27 17:54:17 2019 +0300
+
+ Merge pull request #123 from bradleysepos/readme-symlink
+
+ Replace README symlink with plain text file.
+
+commit b4da58d10b840c75a85726f7c59a7d45f125d6db
+Author: Bradley Sepos <bradley@bradleysepos.com>
+Date: Fri Sep 27 09:41:19 2019 -0400
+
+ Replace README symlink with plain text file.
+
+ Fixes #114.
+
+ README | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 40d0f92ef68cfaa17d11a400756a09126ea2686a
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Fri Sep 27 08:03:47 2019 +0300
+
+ Bumped version to 1.0.6
+
+ NEWS | 11 +++++++++++
+ configure.ac | 2 +-
+ 2 files changed, 12 insertions(+), 1 deletion(-)
+
+commit 43a862abe811ca856f166cb91f128f283fd9accf
+Merge: 0f849e3 39344c7
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Fri Sep 27 07:51:34 2019 +0300
+
+ Merge pull request #118 from vtorri/master
+
+ add the EFL as users
+
+commit 39344c7f22fb25a41a1bab7d9b28314560deab84
+Author: Vincent Torri <vincent.torri@gmail.com>
+Date: Fri Sep 27 06:44:13 2019 +0200
+
+ add the EFL as users
+
+ USERS | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit 0f849e344d446934b4ecdbe9edc32abd29029731
+Merge: 49196f3 cae9d6e
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Fri Aug 23 10:26:56 2019 +0300
+
+ Merge pull request #113 from ebraminio/master
+
+ Avoid use of libc's bsearch for performance and portability reasons
+
+commit cae9d6efc86bfc0f948df7879d0a0a84a939fbbb
+Author: Ebrahim Byagowi <ebrahim@gnu.org>
+Date: Thu Aug 22 13:08:00 2019 +0430
+
+ Avoid use of libc's bsearch for performance and portability reasons
+
+ lib/fribidi-arabic.c | 22 +++++++++++++++++++++-
+ 1 file changed, 21 insertions(+), 1 deletion(-)
+
+commit 49196f3f98ad73881bf382ce0663279b4ebe34fb
+Merge: e40838a ec4b7f2
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Wed Jun 5 08:38:31 2019 +0300
+
+ Merge pull request #111 from michaelforney/param-qual
+
+ Make parameter qualifiers match between declaration and definition
+
+commit ec4b7f2790eaeea05e211399b41fd8f59697df29
+Author: Michael Forney <mforney@mforney.org>
+Date: Tue Jun 4 11:43:10 2019 -0700
+
+ Make parameter qualifiers match between declaration and definition
+
+ lib/fribidi-deprecated.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit e40838aa2e425befa446c2137f843a05a62d7ee2
+Author: Khaled Hosny <khaledhosny@eglug.org>
+Date: Sat May 25 12:44:54 2019 +0200
+
+ Blind fix for Pango build
+
+ https://github.com/fribidi/fribidi/pull/110#issuecomment-495896952
+
+ lib/fribidi-unicode.h | 2 +-
+ lib/fribidi.h | 2 --
+ 2 files changed, 1 insertion(+), 3 deletions(-)
+
+commit a4eac7ad01a66959708b299d5c5fec9a494fdf6f
+Merge: 852a148 e6ac42f
+Author: Khaled Hosny <khaledhosny@eglug.org>
+Date: Sat May 25 00:31:56 2019 +0200
+
+ Merge pull request #110 from CoffeeFlux/master
+
+ Properly export fribidi_unicode_version
+
+commit e6ac42f1da9f9e4e4e8e74290225e9e08a29b7cb
+Author: Ryan Lucia <ryan@luciaonline.net>
+Date: Fri May 24 17:11:25 2019 -0400
+
+ Properly export fribidi_unicode_version
+
+ lib/fribidi.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 852a148403066613ae2c086bbb2bebf31cab1e5d
+Merge: a784cea 7e986fd
+Author: Khaled Hosny <khaledhosny@eglug.org>
+Date: Sat May 4 06:13:14 2019 +0200
+
+ Merge pull request #107 from radarhere/travis
+
+ Updated Travis settings
+
+commit a784ceaa0891f96f1dacff7f83e1afc6834ddc86
+Author: Andrew Murray <radarhere@users.noreply.github.com>
+Date: Sat May 4 14:04:12 2019 +1000
+
+ Fixed typo
+
+ README.md | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 7e986fdfe4c49b469d430d420da653c2bef4936c
+Author: Andrew Murray <radarhere@users.noreply.github.com>
+Date: Sat May 4 14:08:01 2019 +1000
+
+ Removed sudo
+
+ .travis.yml | 2 --
+ 1 file changed, 2 deletions(-)
+
+commit 08f7dd401729dd5b0fd71e96c3692187dbedb1b2
+Author: Andrew Murray <radarhere@users.noreply.github.com>
+Date: Sat May 4 14:07:41 2019 +1000
+
+ Revert "travis.yml: Use the meson stable branch to workaround
+ regression"
+
+ This reverts commit a543e337909c7e4afaa54d5d76107983c438c75d.
+
+ .travis.yml | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+commit c8f4d228d0b470237070f145f2e24bd156f273d1
+Author: luz.paz <luzpaz@users.noreply.github.com>
+Date: Tue Apr 30 14:41:26 2019 -0400
+
+ Misc. source comment and documentation typo fixes
+
+ Found via `codespell -q 3 -S ./gen.tab`
+
+ NEWS | 2 +-
+ lib/fribidi-bidi.c | 2 +-
+ lib/fribidi-char-sets.h | 2 +-
+ lib/fribidi-common.h | 2 +-
+ 4 files changed, 4 insertions(+), 4 deletions(-)
+
+commit 58c6cb390a9a18c98b2cbaac555d8ea9352a9e4f
+Author: Ryan Lucia <ryan@luciaonline.net>
+Date: Sun Feb 3 11:51:17 2019 -0500
+
+ meson: Pass visibility args to test executable
+
+ test/unicode-conformance/meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 232044a18a0fc7e7f8bae87a6ddd00493a87aa7d
+Author: Ryan Lucia <ryan@luciaonline.net>
+Date: Sat Feb 2 15:33:55 2019 -0500
+
+ meson: Pass visibility args to the executables
+
+ bin/meson.build | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+commit e63fd0180cc46ec7fe0071f5293c9a520c25d1f3
+Author: Khaled Hosny <khaledhosny@eglug.org>
+Date: Wed Nov 14 21:40:40 2018 +0200
+
+ Depend on the generated headers explicitly
+
+ Otherwise building as subproject can feel if the header were not
+ already
+ generated.
+ https://mesonbuild.com/Wrap-best-practices-and-tips.html#declare-generated-headers-explicitly
+
+ lib/meson.build | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit c8fb314d9cab3e4803054eb9829373f014684dc0
+Author: Khaled Hosny <khaledhosny@eglug.org>
+Date: Sat Sep 8 01:28:38 2018 +0200
+
+ Add AppVeyor CI support
+
+ appveyor.yml | 24 ++++++++++++++++++++++++
+ 1 file changed, 24 insertions(+)
+
+commit a543e337909c7e4afaa54d5d76107983c438c75d
+Author: Nirbheek Chauhan <nirbheek@centricular.com>
+Date: Fri Oct 12 20:08:55 2018 +0530
+
+ travis.yml: Use the meson stable branch to workaround regression
+
+ meson: error: unrecognized arguments: -u --no-rebuild
+ --print-errorlogs
+ FAILED: meson-test
+
+ Upstream PR: https://github.com/mesonbuild/meson/pull/4259
+
+ .travis.yml | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+commit ea03c32ee8210c4f8c4a13a5c31f858775b1eb81
+Author: Nirbheek Chauhan <nirbheek@centricular.com>
+Date: Fri Oct 12 19:43:48 2018 +0530
+
+ meson: Declare libfribidi as a dependency for usage as a subproject
+
+ Needed for:
+
+ https://gitlab.gnome.org/GNOME/pango/merge_requests/22
+
+ https://gitlab.gnome.org/GNOME/gtk/merge_requests/232
+
+ lib/meson.build | 3 +++
+ meson.build | 2 +-
+ 2 files changed, 4 insertions(+), 1 deletion(-)
+
+commit ef3700f9c6845ce56d80607c5c667ca464466169
+Author: Chun-wei Fan <fanchunwei@src.gnome.org>
+Date: Thu Sep 13 18:12:15 2018 +0800
+
+ tests: Fix build on pre-C99 compilers
+
+ Make the tests also build on pre-c99 compilers, since the library
+ itself
+ builds on such compilers already.
+
+ test/unicode-conformance/BidiCharacterTest.c | 3 ++-
+ test/unicode-conformance/BidiTest.c | 3 ++-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+commit e66ddbd18df9db088c33ff080424a76bc65ac63b
+Author: Khaled Hosny <khaledhosny@eglug.org>
+Date: Fri Sep 7 23:11:53 2018 +0200
+
+ Build also with meson on Travis
+
+ .travis.yml | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+commit a6bc1a8b84bd75b6aafaa88946d5a6a0129312e7
+Author: Heiko Becker <heirecka@exherbo.org>
+Date: Fri Sep 7 20:57:11 2018 +0200
+
+ Build generator executables natively
+
+ They are run during the build and not installed in the end. Without
+ this one gets the following error from meson: "ERROR: Can not use
+ target gen-unicode-version as a generator because it is cross-built
+ and no exe wrapper is defined. You might want to set it to native
+ instead."
+
+ Closes #87.
+
+ gen.tab/meson.build | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+commit b534ab2642f694c3106d5bc8d0a8beae60bf60d3
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Sat Aug 18 20:37:22 2018 +0300
+
+ Removed HAVE_CONFIG_H from public API
+
+ bin/fribidi-benchmark.c | 5 +++++
+ bin/fribidi-main.c | 5 +++++
+ gen.tab/gen-arabic-shaping-tab.c | 4 ++++
+ gen.tab/gen-bidi-type-tab.c | 4 ++++
+ gen.tab/gen-brackets-tab.c | 4 ++++
+ gen.tab/gen-brackets-type-tab.c | 4 ++++
+ gen.tab/gen-joining-type-tab.c | 4 ++++
+ gen.tab/gen-mirroring-tab.c | 4 ++++
+ gen.tab/gen-unicode-version.c | 4 ++++
+ lib/bidi-types.h | 2 +-
+ lib/fribidi-arabic.c | 4 ++++
+ lib/fribidi-types.h | 4 ----
+ lib/joining-types.h | 2 +-
+ lib/run.h | 2 +-
+ 14 files changed, 45 insertions(+), 7 deletions(-)
+
+commit 46f52d588ab5382a10b68605359e14cc775c86fd
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Tue Jul 24 21:00:51 2018 +0300
+
+ Fixed bug PFRIBIDI_TYPE_PDF_LRI is undefined. Issue #69
+
+ - Fixed typos in symbol definitions when the following condition is
+ undefined in fribidi-bidi-types.h:
+
+ #if defined(__FRIBIDI_DOC) || (FRIBIDI_SIZEOF_INT+0 == 4 &&
+ !defined(__cplusplus))
+
+ lib/fribidi-bidi-types.h | 8 ++++----
+ lib/fribidi-bidi.c | 2 +-
+ 2 files changed, 5 insertions(+), 5 deletions(-)
+
+commit 5b6a16e8da12ae7ff482fbfa5a17b72bd518418f
+Author: Dov Grobgeld <dov.grobgeld@gmail.com>
+Date: Mon Jul 23 00:09:31 2018 +0300
+
+ Updated NEWS file.
+
+ NEWS | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
commit f245343730303bf7edd2af751d739f977466bf41
Author: Dov Grobgeld <dov.grobgeld@gmail.com>
Date: Mon Jul 23 00:04:19 2018 +0300
Reduce dynamic allocations by using arrays for all small arrays.
lib/fribidi-bidi.c | 64
- +++++++++++++++++++++++-------------------------
- lib/fribidi-deprecated.c | 44 ++++++++++++++++++++++++---------
+ +++++++++++++++++++++++++---------------------------
+ lib/fribidi-deprecated.c | 44 +++++++++++++++++++++++++++---------
2 files changed, 64 insertions(+), 44 deletions(-)
commit 902618192f1cdb4430e4f2dfc032d9fb36fccc5b
gen.tab/unidata/ArabicShaping.txt | 104 +++-
gen.tab/unidata/BidiBrackets.txt | 6 +-
- gen.tab/unidata/BidiMirroring.txt | 141 +++--
+ gen.tab/unidata/BidiMirroring.txt | 141 +++---
gen.tab/unidata/ReadMe.txt | 9 +-
gen.tab/unidata/UnicodeData.txt | 778
- +++++++++++++++++++++++--
+ +++++++++++++++++++++++++++--
test/unicode-conformance/BidiCharacterTest.txt | 6 +-
test/unicode-conformance/BidiTest.txt | 11 +-
7 files changed, 917 insertions(+), 138 deletions(-)
configure.ac | 20 ---
meson_options.txt | 2 -
test/unicode-conformance/Makefile.am | 2 -
- test/unicode-conformance/meson.build | 31 ++--
+ test/unicode-conformance/meson.build | 31 ++---
test/unicode-conformance/test-character.c | 218
- ++++++++++++++++-----------
+ ++++++++++++++++++------------
test/unicode-conformance/test.c | 242
- +++++++++++++++++++-----------
+ +++++++++++++++++++++-------------
6 files changed, 299 insertions(+), 216 deletions(-)
commit 565f83a13099dfdcec083f4d3e5293df4ed36e63
http://mesonbuild.com for more information.
- bin/meson.build | 27 ++++++++++
- doc/meson.build | 39 ++++++++++++++
- gen.tab/meson.build | 79 +++++++++++++++++++++++++++
- lib/meson.build | 75 ++++++++++++++++++++++++++
+ bin/meson.build | 27 +++++++++++
+ doc/meson.build | 39 +++++++++++++++
+ gen.tab/meson.build | 79
+ +++++++++++++++++++++++++++++++
+ lib/meson.build | 75 +++++++++++++++++++++++++++++
meson.build | 100
- +++++++++++++++++++++++++++++++++++
+ +++++++++++++++++++++++++++++++++++++++
meson_options.txt | 6 +++
- test/meson.build | 20 +++++++
- test/test-runner.py | 25 +++++++++
- test/unicode-conformance/meson.build | 19 +++++++
+ test/meson.build | 20 ++++++++
+ test/test-runner.py | 25 ++++++++++
+ test/unicode-conformance/meson.build | 19 ++++++++
9 files changed, 390 insertions(+)
commit 4c97999ad09f683560bfdf69b4539558401cad41
Makefile.am | 2 +-
bin/Makefile.am | 3 +--
- charset/Headers.mk | 8 ------
+ charset/Headers.mk | 8 -------
charset/Makefile.am | 36
- --------------------------
+ ------------------------------
configure.ac | 1 -
doc/Makefile.am | 6 -----
gen.tab/Makefile.am | 3 +--
lib/Headers.mk | 2 ++
- lib/Makefile.am | 20 +++++++++-----
+ lib/Makefile.am | 20 +++++++++++------
{charset => lib}/fribidi-char-sets-cap-rtl.c | 0
{charset => lib}/fribidi-char-sets-cap-rtl.h | 0
{charset => lib}/fribidi-char-sets-cp1255.c | 0
Fixes the rest of https://github.com/fribidi/fribidi/issues/35
- .travis.yml | 5 +-
+ .travis.yml | 5 +--
Makefile.am | 2 +-
README.md | 2 +-
- autogen.sh | 35 ++++++++++++++
+ autogen.sh | 35 +++++++++++++++
bootstrap | 154
- ------------------------------------------------------------
+ ----------------------------------------------------------------
5 files changed, 38 insertions(+), 160 deletions(-)
commit 3b5baaebf3dead4d2c1ed7a04278cc58b8c3fc85
Remove notes.org
notes.org | 318
- --------------------------------------------------------------
+ ------------------------------------------------------------------
1 file changed, 318 deletions(-)
commit 544b56553b94a2425f52f4b6c29f0a9abe403161
Update git.mk
- Makefile.am | 19 ++---
+ Makefile.am | 19 ++----
configure.ac | 2 +-
git.mk | 228
- ++++++++++++++++++++++++++++++++++++++++++++++++++++-------
+ +++++++++++++++++++++++++++++++++++++++++++++++++++++++--------
3 files changed, 207 insertions(+), 42 deletions(-)
commit 5a99e2895bcf50c0ee3bb9445e45b8cbff6ebc4d
m4_ax_prog_cc_for_build.m4 instead as suggested by Khaled.
configure.ac | 22 +-------
- gen.tab/Makefile.am | 20 +++----
+ gen.tab/Makefile.am | 20 ++++----
m4/m4_ax_prog_cc_for_build.m4 | 125
- ++++++++++++++++++++++++++++++++++++++++++
+ ++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 137 insertions(+), 30 deletions(-)
commit 4a732cf9d28228a0698e9c6fa76206874b6125dd
Misc warning fixes
- fribidi-vs-unicode/test-character.c | 22 ++++++------
+ fribidi-vs-unicode/test-character.c | 22 +++++++------
fribidi-vs-unicode/test.c | 6 ++--
lib/fribidi-bidi.c | 72
- +++++++++++++++++++------------------
+ +++++++++++++++++++++--------------------
lib/fribidi-brackets.c | 3 +-
4 files changed, 53 insertions(+), 50 deletions(-)
lib/fribidi-flags.h | 2 +-
lib/fribidi-joining-types.h | 4 +-
lib/fribidi-types.h | 96
- +++++++++--------------------------------
+ ++++++++++-----------------------------------
12 files changed, 48 insertions(+), 108 deletions(-)
commit c8e9c5d684f1ba15ca46e38493c995ad5be3646c
test.c and test-character.c .
fribidi-vs-unicode/test-character.c | 35
- ++++++++++++++++++----------------
+ +++++++++++++++++++----------------
fribidi-vs-unicode/test.c | 38
- ++++++++++++++++++++-----------------
+ +++++++++++++++++++++-----------------
lib/fribidi-bidi.c | 2 +-
lib/fribidi-bidi.h | 6 +++---
- lib/fribidi-deprecated.c | 27 ++++++++++++++++++++++----
- lib/fribidi-deprecated.h | 21 +++++++++++++++++---
+ lib/fribidi-deprecated.c | 27 +++++++++++++++++++++++----
+ lib/fribidi-deprecated.h | 21 ++++++++++++++++++---
6 files changed, 85 insertions(+), 44 deletions(-)
commit a0ab164431e18fa7cdf5b0a8ce4fcbe26f7b022b
Update README.md
HACKING | 2 -
- README | 158 +-------------------------------------------------------
+ README | 158
+ +-----------------------------------------------------------
README.md | 174
- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 175 insertions(+), 159 deletions(-)
commit 75c350705ef09e6505aa1080188b75a8b4fccc5e
Oops.
build/fribidi-vs-unicode/Makefile | 698
- --------------------------------------
+ ------------------------------------------
1 file changed, 698 deletions(-)
commit 7be4e8f87c77d0ff4bdbd1638768e8772d89f7b2
THANKS | 12 +-
bin/fribidi-benchmark.c | 2 +-
bin/fribidi-main.c | 2 +-
- charset/fribidi-char-sets-cap-rtl.c | 38 +-
+ charset/fribidi-char-sets-cap-rtl.c | 38 ++-
charset/fribidi-char-sets-cap-rtl.h | 2 +-
charset/fribidi-char-sets-cp1255.c | 2 +-
charset/fribidi-char-sets-cp1255.h | 2 +-
configure.ac | 11 +-
doc/Makefile.am | 3 +-
fribidi-vs-unicode/Makefile.am | 27 ++
- fribidi-vs-unicode/test-character.c | 409 ++++++++++++++++++++
- fribidi-vs-unicode/test.c | 391 +++++++++++++++++++
+ fribidi-vs-unicode/test-character.c | 409 +++++++++++++++++++++++
+ fribidi-vs-unicode/test.c | 391 ++++++++++++++++++++++
gen.tab/Makefile.am | 32 +-
gen.tab/gen-arabic-shaping-tab.c | 2 +-
gen.tab/gen-bidi-type-tab.c | 2 +-
- gen.tab/gen-brackets-tab.c | 345 +++++++++++++++++
- gen.tab/gen-brackets-type-tab.c | 238 ++++++++++++
+ gen.tab/gen-brackets-tab.c | 345 +++++++++++++++++++
+ gen.tab/gen-brackets-type-tab.c | 238 +++++++++++++
gen.tab/gen-joining-type-tab.c | 2 +-
gen.tab/gen-mirroring-tab.c | 2 +-
gen.tab/gen-unicode-version.c | 2 +-
lib/fribidi-bidi-types.c | 2 +-
lib/fribidi-bidi-types.h | 31 +-
lib/fribidi-bidi.c | 681
- +++++++++++++++++++++++++++++++---
+ ++++++++++++++++++++++++++++++++++----
lib/fribidi-bidi.h | 4 +-
lib/fribidi-brackets.c | 106 ++++++
lib/fribidi-brackets.h | 90 +++++
lib/fribidi-mem.c | 2 +-
lib/fribidi-mirroring.c | 4 +-
lib/fribidi-mirroring.h | 4 +-
- lib/fribidi-run.c | 77 +---
+ lib/fribidi-run.c | 77 ++---
lib/fribidi-shape.c | 2 +-
lib/fribidi-shape.h | 2 +-
lib/fribidi-types.h | 14 +-
Updated Unicode data tables to version 10.
- fribidi-vs-unicode/BidiCharacterTest.txt | 96437 ++++++
+ fribidi-vs-unicode/BidiCharacterTest.txt | 96437 +++++++
fribidi-vs-unicode/BidiTest.txt | 497588
- ++++++++++++++++++++++++++++
+ ++++++++++++++++++++++++++++++++
gen.tab/unidata/ArabicShaping.txt | 442 +-
gen.tab/unidata/BidiBrackets.txt | 185 +
gen.tab/unidata/BidiMirroring.txt | 38 +-
even build, better to clean up the unnecessary #if #else maze.
bin/fribidi-main.c | 61
- +-----------------------------------------------------
+ +---------------------------------------------------------
1 file changed, 1 insertion(+), 60 deletions(-)
commit e71e49f9645d21ab511723caf8c75e8d9880aacf
Makefile.am | 2 +-
build/fribidi-vs-unicode/Makefile | 698
- ++++++++++++++++++++++++++++++++++++++
+ ++++++++++++++++++++++++++++++++++++++++++
configure.ac | 3 +-
3 files changed, 701 insertions(+), 2 deletions(-)
I need to redo this without exposing full FriBidiRun struct.
lib/fribidi-bidi.c | 112
- ---------------------------------------------------
- lib/fribidi-bidi.h | 29 -------------
+ -------------------------------------------------------
+ lib/fribidi-bidi.h | 29 --------------
lib/fribidi-common.h | 14 ++-----
- lib/run.h | 11 +++++
+ lib/run.h | 11 ++++++
4 files changed, 15 insertions(+), 151 deletions(-)
commit 3cbee0b737393c631debeddd71fa631282f74a5c
fribidi-vs-unicode/test-character.c | 4 +-
fribidi-vs-unicode/test.c | 2 +-
notes.org | 149
- ++++++++++++++++++++++++++++++++++--
+ ++++++++++++++++++++++++++++++++++++++--
4 files changed, 147 insertions(+), 9 deletions(-)
commit 32a6cc7141052764065d7714240e782366a8e61b
Dov's work area for unicode63 development.
- fribidi-vs-unicode/BidiCharacterTest.txt | 96392 ++++++
+ fribidi-vs-unicode/BidiCharacterTest.txt | 96392 +++++++
fribidi-vs-unicode/BidiTest.txt | 497588
- ++++++++++++++++++++++++++++
+ ++++++++++++++++++++++++++++++++
fribidi-vs-unicode/SConstruct | 15 +
fribidi-vs-unicode/test-character.c | 379 +
fribidi-vs-unicode/test.c | 384 +
charset/fribidi-char-sets.c | 2 +-
doc/Makefile.am | 3 +-
gen.tab/gen-joining-type-tab.c | 4 +
- gen.tab/unidata/ArabicShaping.txt | 227 +++++++++++++++++++++++++--
+ gen.tab/unidata/ArabicShaping.txt | 227 ++++++++++++++++++++++++++++--
gen.tab/unidata/BidiMirroring.txt | 14 +-
gen.tab/unidata/ReadMe.txt | 8 +-
- gen.tab/unidata/UnicodeData.txt | 21 ++-
+ gen.tab/unidata/UnicodeData.txt | 21 +--
lib/common.h | 2 +-
lib/debug.h | 4 +
lib/fribidi-bidi-types-list.h | 4 +
lib/fribidi-bidi-types.h | 29 +++-
lib/fribidi-bidi.c | 301
- ++++++++++++++++++++++++++++++------
+ ++++++++++++++++++++++++++++++++++------
lib/fribidi-common.h | 1 +
lib/fribidi-deprecated.c | 1 +
lib/fribidi-run.c | 6 +-
lib/fribidi-unicode.h | 10 +-
test/Makefile.am | 4 +-
- test/test_CapRTL_isolate.input | 8 +
- test/test_CapRTL_isolate.reference | 8 +
+ test/test_CapRTL_isolate.input | 8 ++
+ test/test_CapRTL_isolate.reference | 8 ++
22 files changed, 613 insertions(+), 96 deletions(-)
commit 881b8d891cc61989ab8811b74d0e721f72bf913b
lib/fribidi-bidi.c | 1 -
lib/fribidi-joining.c | 1 -
lib/fribidi-mem.c | 140
- --------------------------------------------------
- lib/fribidi-run.c | 38 --------------
+ ------------------------------------------------------
+ lib/fribidi-run.c | 38 ---------------
lib/fribidi.c | 3 --
- lib/mem.h | 97 ----------------------------------
+ lib/mem.h | 97 -------------------------------------
8 files changed, 285 deletions(-)
commit 9d8c69b4aea7302391b1cafb3c1fa5c3d8c95198
it can be used e.g. with HarfBuzz.
lib/fribidi-bidi.c | 112
- +++++++++++++++++++++++++++++++++++++++++++++++++++
- lib/fribidi-bidi.h | 29 +++++++++++++
+ +++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ lib/fribidi-bidi.h | 29 ++++++++++++++
lib/fribidi-common.h | 14 +++++--
- lib/run.h | 11 -----
+ lib/run.h | 11 ------
4 files changed, 151 insertions(+), 15 deletions(-)
commit 7fd7d2badedffce5a3328301ba86204a24eed0a3
doc/Makefile.am | 2 +
gen.tab/Makefile.am | 2 +
git.mk | 224
- ++++++++++++++++++++++++++++++++++++++++++++++++++++
+ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
lib/Makefile.am | 2 +
test/Makefile.am | 2 +
8 files changed, 238 insertions(+)
Update Unicode data files to 6.1.0
- gen.tab/unidata/ArabicShaping.txt | 287 ++++++++------
+ gen.tab/unidata/ArabicShaping.txt | 287 ++++++++-------
gen.tab/unidata/BidiMirroring.txt | 28 +-
gen.tab/unidata/ReadMe.txt | 6 +-
gen.tab/unidata/UnicodeData.txt | 799
- ++++++++++++++++++++++++++++++++++++--
+ ++++++++++++++++++++++++++++++++++++++++--
4 files changed, 956 insertions(+), 164 deletions(-)
commit d39b179d8de65a19390e50cfb39bb36ae193d65b
gen.tab/unidata/BidiMirroring.txt | 27 +-
gen.tab/unidata/ReadMe.txt | 12 +-
gen.tab/unidata/UnicodeData.txt | 5261
- +++++++++++++++++++++++++++++++++----
+ +++++++++++++++++++++++++++++++++++++----
5 files changed, 4882 insertions(+), 498 deletions(-)
commit 6c535469bfbff7983f5052fa3cf6f8eb8dc2f26a
gen.tab/unidata/BidiMirroring.txt | 42 +-
gen.tab/unidata/ReadMe.txt | 10 +-
gen.tab/unidata/UnicodeData.txt | 1694
- ++++++++++++++++++++++++++++++++++++-
+ ++++++++++++++++++++++++++++++++++++++++-
lib/Makefile.am | 2 +-
lib/common.h | 10 +-
6 files changed, 1721 insertions(+), 71 deletions(-)
configure.ac | 9 ++--
fribidi.spec.in | 145
- --------------------------------------------------------
+ ------------------------------------------------------------
2 files changed, 4 insertions(+), 150 deletions(-)
commit 753ed9aed90f9d31e6ff404c0c7befadbfd18d23
gen.tab/unidata/BidiMirroring.txt | 42 +-
gen.tab/unidata/ReadMe.txt | 31 +-
gen.tab/unidata/UnicodeData.txt | 1493
- +++++++++++++++++++++++++++++++++++--
+ +++++++++++++++++++++++++++++++++++++++--
4 files changed, 1520 insertions(+), 91 deletions(-)
commit 105e8f3c8f67fcd5a1620f9a9059b550067c1ac0
Add an option --disable-deprecated.
- bin/fribidi-benchmark.c | 16 +++++++-------
+ bin/fribidi-benchmark.c | 16 ++++++++--------
bin/fribidi-main.c | 45
- +++++++++++++++++++++++-----------------
- charset/fribidi-char-sets.c | 16 +++++++-------
- configure.ac | 23 ++++++++++++++------
- gen.tab/gen-arabic-shaping-tab.c | 12 +++++------
- gen.tab/gen-bidi-type-tab.c | 12 +++++------
- gen.tab/gen-joining-type-tab.c | 12 +++++------
- gen.tab/gen-mirroring-tab.c | 12 +++++------
- gen.tab/gen-unicode-version.c | 12 +++++------
- gen.tab/packtab.c | 8 +++----
- lib/bidi-types.h | 8 +++----
- lib/common.h | 21 +++++++++----------
- lib/debug.h | 8 +++----
- lib/fribidi-arabic.c | 8 +++----
- lib/fribidi-bidi-types.c | 8 +++----
- lib/fribidi-bidi-types.h | 17 +++------------
- lib/fribidi-bidi.c | 8 +++----
- lib/fribidi-common.h | 18 ++++++++--------
- lib/fribidi-deprecated.c | 11 ++++++----
- lib/fribidi-deprecated.h | 30 ++++++++++++++++++++++++---
- lib/fribidi-joining-types.c | 8 +++----
- lib/fribidi-joining.c | 8 +++----
- lib/fribidi-mem.c | 12 ++++++-----
- lib/fribidi-run.c | 30 +++++++++++++--------------
- lib/fribidi-types.h | 39 +++++++++++++++++-----------------
- lib/fribidi-unicode.h | 33 +++++++----------------------
- lib/fribidi.c | 21 ++++++++++---------
- lib/fribidi.h | 13 +++++++-----
- lib/joining-types.h | 8 +++----
- lib/mem.h | 34 +++++++++++++++---------------
- lib/run.h | 8 +++----
+ +++++++++++++++++++++++++-------------------
+ charset/fribidi-char-sets.c | 16 ++++++++--------
+ configure.ac | 23 ++++++++++++++++------
+ gen.tab/gen-arabic-shaping-tab.c | 12 ++++++------
+ gen.tab/gen-bidi-type-tab.c | 12 ++++++------
+ gen.tab/gen-joining-type-tab.c | 12 ++++++------
+ gen.tab/gen-mirroring-tab.c | 12 ++++++------
+ gen.tab/gen-unicode-version.c | 12 ++++++------
+ gen.tab/packtab.c | 8 ++++----
+ lib/bidi-types.h | 8 ++++----
+ lib/common.h | 21 ++++++++++-----------
+ lib/debug.h | 8 ++++----
+ lib/fribidi-arabic.c | 8 ++++----
+ lib/fribidi-bidi-types.c | 8 ++++----
+ lib/fribidi-bidi-types.h | 17 +++--------------
+ lib/fribidi-bidi.c | 8 ++++----
+ lib/fribidi-common.h | 18 +++++++++---------
+ lib/fribidi-deprecated.c | 11 +++++++----
+ lib/fribidi-deprecated.h | 30 ++++++++++++++++++++++++++---
+ lib/fribidi-joining-types.c | 8 ++++----
+ lib/fribidi-joining.c | 8 ++++----
+ lib/fribidi-mem.c | 12 +++++++-----
+ lib/fribidi-run.c | 30 ++++++++++++++---------------
+ lib/fribidi-types.h | 39
+ +++++++++++++++++++-------------------
+ lib/fribidi-unicode.h | 33 +++++++-------------------------
+ lib/fribidi.c | 21 +++++++++++----------
+ lib/fribidi.h | 13 ++++++++-----
+ lib/joining-types.h | 8 ++++----
+ lib/mem.h | 34 ++++++++++++++++-----------------
+ lib/run.h | 8 ++++----
31 files changed, 269 insertions(+), 250 deletions(-)
commit 570efad0b961ad106a05f2dbabeedbed477ea161
configure.ac | 20 +--
doc/Makefile.am | 2 +-
gen.tab/Makefile.am | 16 +-
- gen.tab/gen-arabic-liga.sh | 9 +
+ gen.tab/gen-arabic-liga.sh | 9 ++
gen.tab/gen-arabic-shaping-tab.c | 310
- +++++++++++++++++++++++++++++++++++
+ +++++++++++++++++++++++++++++++++++++++
gen.tab/gen-bidi-type-tab.c | 12 +-
gen.tab/gen-joining-type-tab.c | 10 +-
gen.tab/gen-mirroring-tab.c | 12 +-
gen.tab/packtab.c | 1 +
lib/Headers.mk | 5 +-
lib/Makefile.am | 8 +-
- lib/arabic-misc.tab.i | 94 +++++++++++
+ lib/arabic-misc.tab.i | 94 ++++++++++++
lib/debug.h | 7 +-
- lib/fribidi-arabic.c | 190 +++++++++++++++++++++
- lib/fribidi-arabic.h | 88 ++++++++++
- lib/fribidi-bidi.c | 62 ++-----
+ lib/fribidi-arabic.c | 190 ++++++++++++++++++++++++
+ lib/fribidi-arabic.h | 88 +++++++++++
+ lib/fribidi-bidi.c | 62 ++------
lib/fribidi-bidi.h | 31 ++--
lib/fribidi-common.h | 29 +++-
lib/fribidi-config.h.in | 3 -
lib/fribidi-deprecated.c | 296
- +++++++++++++++++++++++++++++++++
- lib/fribidi-deprecated.h | 210 ++++++++++++++++++++++++
- lib/fribidi-env.c | 121 --------------
- lib/fribidi-env.h | 126 --------------
- lib/fribidi-flags.h | 78 +++++++++
+ +++++++++++++++++++++++++++++++++++++
+ lib/fribidi-deprecated.h | 210 ++++++++++++++++++++++++++
+ lib/fribidi-env.c | 121 ---------------
+ lib/fribidi-env.h | 126 ----------------
+ lib/fribidi-flags.h | 78 ++++++++++
lib/fribidi-joining-types.c | 10 +-
lib/fribidi-joining-types.h | 9 +-
lib/fribidi-joining.c | 40 +++--
lib/fribidi-mem.c | 8 +-
lib/fribidi-mirroring.c | 10 +-
lib/fribidi-run.c | 13 +-
- lib/{env.h => fribidi-shape.c} | 53 +++---
- lib/fribidi-shape.h | 77 +++++++++
+ lib/{env.h => fribidi-shape.c} | 53 ++++---
+ lib/fribidi-shape.h | 77 ++++++++++
lib/fribidi-types.h | 24 +--
lib/fribidi-unicode.h | 12 +-
- lib/fribidi.c | 213 +++---------------------
- lib/fribidi.h | 116 ++-----------
+ lib/fribidi.c | 213 ++++-----------------------
+ lib/fribidi.h | 116 ++-------------
lib/joining-types.h | 8 +-
test/test_UTF-8_persian.reference | 28 ++--
test/test_UTF-8_reordernsm.reference | 14 +-
.cvsignore | 1 +
Makefile.am | 7 ++--
- USERS | 4 +-
- bin/fribidi-benchmark.c | 17 ++++----
- bin/fribidi-bidi-types.c | 7 +++-
- bin/fribidi-caprtl2utf8.c | 17 ++++----
- bin/fribidi-main.c | 30 +++++++-------
+ USERS | 4 ++-
+ bin/fribidi-benchmark.c | 17 +++++----
+ bin/fribidi-bidi-types.c | 7 ++--
+ bin/fribidi-caprtl2utf8.c | 17 +++++----
+ bin/fribidi-main.c | 30 ++++++++--------
charset/fribidi-char-sets-cap-rtl.c | 78
- +++++++++++++++++++++----------------
- charset/fribidi-char-sets-utf8.c | 12 +++---
- configure.ac | 20 +++++-----
- gen.tab/gen-unicode-version.c | 33 ++++++++--------
- lib/fribidi-bidi.c | 10 ++---
- lib/fribidi-types.h | 10 ++---
- lib/fribidi.c | 8 ++--
+ ++++++++++++++++++++++++-----------------
+ charset/fribidi-char-sets-utf8.c | 12 +++----
+ configure.ac | 20 +++++------
+ gen.tab/gen-unicode-version.c | 33 ++++++++---------
+ lib/fribidi-bidi.c | 10 +++---
+ lib/fribidi-types.h | 10 +++---
+ lib/fribidi.c | 8 ++---
14 files changed, 138 insertions(+), 116 deletions(-)
commit 6f84aff9f7901178ef9e7e2e463a04e639b5a606
Updated to read version from BidiMirroring.txt, if not found in
ReadMe.txt.
- gen.tab/Makefile.am | 5 +--
+ gen.tab/Makefile.am | 5 ++--
gen.tab/gen-unicode-version.c | 75
- ++++++++++++++++++++++++++++---------------
+ +++++++++++++++++++++++++++++++----------------
gen.tab/unidata/ReadMe.txt | 3 --
3 files changed, 53 insertions(+), 30 deletions(-)
An integrated CapRTL to UTF-8 converter added.
bin/Makefile.am | 2 +-
- bin/fribidi-caprtl2utf8.c | 32 +++++++++++++++
+ bin/fribidi-caprtl2utf8.c | 32 ++++++++++++++++
test/caprtl2unicode.py | 102
- ----------------------------------------------
+ --------------------------------------------------
3 files changed, 33 insertions(+), 103 deletions(-)
commit 10a1d7d29e5fc41f27e6296382c6de9a82aa5a99
Unicode 4.1 character database update.
- gen.tab/unidata/ArabicShaping.txt | 105 ++-
+ gen.tab/unidata/ArabicShaping.txt | 105 +++-
gen.tab/unidata/BidiMirroring.txt | 39 +-
gen.tab/unidata/ReadMe.txt | 47 +-
gen.tab/unidata/UnicodeData.txt | 1383
- +++++++++++++++++++++++++++++++++++--
+ +++++++++++++++++++++++++++++++++++++++--
4 files changed, 1448 insertions(+), 126 deletions(-)
commit 004756f080f6bf20b27b61b419317a05a529227a
Better conversion table from CapRTL to Unicode.
charset/fribidi-char-sets-cap-rtl.c | 40
- +++++++++++++++++++++++++++----------
+ ++++++++++++++++++++++++++++++----------
1 file changed, 30 insertions(+), 10 deletions(-)
commit 294e001ae47168d63a2e7e7eaf7ede2a7a3dc1ae
Adding CapRTL to Unicode (UTF-8) convertor.
test/caprtl2unicode.py | 104
- +++++++++++++++++++++++++++++++++++++++++++++++++
+ +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 104 insertions(+)
commit 5db31e96f3c6b904325939e648a363cbcac56b14
which is a proposed changed to be applied for Unicode 4.1.
.indent.pro | 2 +-
- lib/fribidi-bidi.h | 17 +++---
- lib/fribidi-joining-types.h | 18 ++++--
+ lib/fribidi-bidi.h | 17 ++++---
+ lib/fribidi-joining-types.h | 18 ++++---
lib/fribidi-joining.c | 133
- ++++++++++++++++++++++++++------------------
- lib/fribidi-joining.h | 15 +++--
+ ++++++++++++++++++++++++++++--------------------
+ lib/fribidi-joining.h | 15 +++---
lib/fribidi-unicode.h | 14 ++---
lib/fribidi.c | 10 ++--
lib/fribidi.h | 8 +--
need str
anymore: they just need this bidi_types.
- lib/bidi-types.h | 8 +++----
- lib/common.h | 11 +++++++---
- lib/fribidi-bidi-types.h | 14 +++++++-----
+ lib/bidi-types.h | 8 +++-----
+ lib/common.h | 11 ++++++++---
+ lib/fribidi-bidi-types.h | 14 ++++++++-----
lib/fribidi-bidi.c | 55
- +++++++++++++++++++++---------------------------
- lib/fribidi-bidi.h | 43 ++++++-------------------------------
- lib/fribidi-joining.c | 17 +++++++++++----
- lib/fribidi-run.c | 15 ++++++-------
- lib/fribidi-unicode.h | 18 +++++++++++-----
- lib/fribidi.c | 20 +++++++++++++-----
- lib/run.h | 11 +++++-----
+ +++++++++++++++++++++++-----------------------------
+ lib/fribidi-bidi.h | 43 +++++++---------------------------------
+ lib/fribidi-joining.c | 17 ++++++++++++----
+ lib/fribidi-run.c | 15 +++++++-------
+ lib/fribidi-unicode.h | 18 ++++++++++++-----
+ lib/fribidi.c | 20 ++++++++++++++-----
+ lib/run.h | 11 +++++------
10 files changed, 104 insertions(+), 108 deletions(-)
commit b1a9af57fe88c46b5f9f7fd47db37895b3e58e78
breaking. Also calculate more reasonable levels for explicit marks
and BN.
- lib/fribidi-bidi-types.h | 13 ++++++-----
+ lib/fribidi-bidi-types.h | 13 +++++++-----
lib/fribidi-bidi.c | 56
- +++++++++++++++++++++++++++++++++++++-----------
- lib/fribidi-bidi.h | 30 ++++++++++++++++----------
- lib/fribidi-types.h | 10 ++++-----
- lib/fribidi.c | 10 ++++-----
+ ++++++++++++++++++++++++++++++++++++++++------------
+ lib/fribidi-bidi.h | 30 +++++++++++++++++-----------
+ lib/fribidi-types.h | 10 +++++-----
+ lib/fribidi.c | 10 ++++------
5 files changed, 79 insertions(+), 40 deletions(-)
commit 7ca6352ed7890ea20a23e6957c7cd4928c0fe7d1
charset/fribidi-char-sets-cap-rtl.c | 8 +-
configure.ac | 10 +--
gen.tab/Makefile.am | 16 +++-
- gen.tab/gen-bidi-type-tab.c | 9 +-
- gen.tab/gen-joining-type-tab.c | 9 +-
- gen.tab/gen-mirroring-tab.c | 9 +-
- gen.tab/gen-unicode-version.c | 9 +-
+ gen.tab/gen-bidi-type-tab.c | 9 ++-
+ gen.tab/gen-joining-type-tab.c | 9 ++-
+ gen.tab/gen-mirroring-tab.c | 9 ++-
+ gen.tab/gen-unicode-version.c | 9 ++-
lib/Makefile.am | 4 +-
lib/common.h | 10 ++-
lib/fribidi-bidi-types.c | 12 +--
- lib/fribidi-bidi-types.h | 68 +++++++++++----
- lib/fribidi-bidi.c | 119 +++++++++++++++-----------
- lib/fribidi-bidi.h | 94 +++++++++++++++------
+ lib/fribidi-bidi-types.h | 68 ++++++++++++-----
+ lib/fribidi-bidi.c | 119 ++++++++++++++++-------------
+ lib/fribidi-bidi.h | 94 ++++++++++++++++-------
lib/fribidi-joining-types-list.h | 10 +--
- lib/fribidi-joining-types.c | 30 ++++---
- lib/fribidi-joining-types.h | 124 ++++++++++++++++++++++-----
+ lib/fribidi-joining-types.c | 30 ++++----
+ lib/fribidi-joining-types.h | 124 +++++++++++++++++++++++++------
lib/fribidi-joining.c | 161
- ++++++++++++++++++++++++++++++++++++
- lib/fribidi-joining.h | 36 +++++++-
+ ++++++++++++++++++++++++++++++++++++++++
+ lib/fribidi-joining.h | 36 ++++++++-
lib/fribidi-mirroring.c | 14 ++--
- lib/fribidi-mirroring.h | 27 +++---
+ lib/fribidi-mirroring.h | 27 ++++---
lib/fribidi-types.h | 24 +++++-
- lib/fribidi.c | 97 +++++++++++++---------
+ lib/fribidi.c | 97 ++++++++++++++----------
lib/fribidi.def | 6 +-
- lib/fribidi.h | 93 ++++++++++++---------
- lib/joining-types.h | 9 +-
+ lib/fribidi.h | 93 +++++++++++++----------
+ lib/joining-types.h | 9 ++-
27 files changed, 734 insertions(+), 286 deletions(-)
commit 8a20d52ddb30e073762ec17afda2e1b9257be568
fribidi-bidi-type.[ch] merged into fribidi-bidi-types.[ch].
fribidi-joining-type.[ch] merged into fribidi-joining-types.[ch].
- charset/fribidi-char-sets-cap-rtl.c | 8 ++--
- configure.ac | 22 +++++++---
- doc/Makefile.am | 14 +++----
+ charset/fribidi-char-sets-cap-rtl.c | 8 ++---
+ configure.ac | 22 +++++++++---
+ doc/Makefile.am | 14 ++++----
lib/Headers.mk | 3 +-
- lib/Makefile.am | 2 -
+ lib/Makefile.am | 2 --
lib/fribidi-bidi-type.c | 80
- -------------------------------------
+ -----------------------------------------
lib/fribidi-bidi-type.h | 72
- ---------------------------------
- lib/fribidi-bidi-types.c | 69 ++++++++++++++++++++++++++------
- lib/fribidi-bidi-types.h | 34 +++++++++++++---
- lib/fribidi-bidi.c | 48 +++++-----------------
- lib/fribidi-bidi.h | 27 +++----------
+ -------------------------------------
+ lib/fribidi-bidi-types.c | 69
+ ++++++++++++++++++++++++++++-------
+ lib/fribidi-bidi-types.h | 34 +++++++++++++++---
+ lib/fribidi-bidi.c | 48 ++++++-------------------
+ lib/fribidi-bidi.h | 27 ++++----------
lib/fribidi-config.h.in | 3 ++
- lib/fribidi-joining-type.c | 56 --------------------------
- lib/fribidi-joining-type.h | 59 ---------------------------
- lib/fribidi-joining-types.c | 66 ++++++++++++++++++++++++------
- lib/fribidi-joining-types.h | 36 ++++++++++++++---
- lib/fribidi-mirroring.c | 34 ++++++++++++++--
- lib/fribidi-mirroring.h | 22 ++++++++--
- lib/fribidi-run.c | 8 ++--
- lib/fribidi.c | 11 ++---
- lib/fribidi.def | 18 +++++----
- lib/fribidi.h | 14 ++++---
+ lib/fribidi-joining-type.c | 56 -----------------------------
+ lib/fribidi-joining-type.h | 59 ------------------------------
+ lib/fribidi-joining-types.c | 66
+ +++++++++++++++++++++++++++-------
+ lib/fribidi-joining-types.h | 36 ++++++++++++++++---
+ lib/fribidi-mirroring.c | 34 ++++++++++++++++--
+ lib/fribidi-mirroring.h | 22 ++++++++++--
+ lib/fribidi-run.c | 8 ++---
+ lib/fribidi.c | 11 +++---
+ lib/fribidi.def | 18 ++++++----
+ lib/fribidi.h | 14 +++++---
22 files changed, 296 insertions(+), 410 deletions(-)
commit 5e32eff3de2d41d4a1674e28991eb82c1d00dd79
get_par_embedding_levels and reorder_line functions.
lib/bidi-types.h | 8 +++++---
- lib/fribidi-bidi-type.c | 24 +++++++++++++++++++---
- lib/fribidi-bidi-type.h | 19 +++++++++++++++---
+ lib/fribidi-bidi-type.c | 24 +++++++++++++++++++++---
+ lib/fribidi-bidi-type.h | 19 ++++++++++++++++---
lib/fribidi-bidi.c | 53
- ++++++++++++++++++++++++++++---------------------
- lib/fribidi-bidi.h | 33 +++++++++++++++++++++++-------
- lib/fribidi-run.c | 13 ++++++------
+ ++++++++++++++++++++++++++++++-----------------------
+ lib/fribidi-bidi.h | 33 ++++++++++++++++++++++++++-------
+ lib/fribidi-run.c | 13 +++++++------
lib/fribidi.c | 10 +++++-----
lib/run.h | 9 +++++----
8 files changed, 115 insertions(+), 54 deletions(-)
accompanying functions and macros.
.indent.pro | 3 +-
- TODO | 20 +-
+ TODO | 20 ++-
charset/Makefile.am | 10 +-
charset/fribidi-char-sets-cap-rtl.c | 8 +-
doc/Makefile.am | 10 +-
- gen.tab/Makefile.am | 92 ++++------
- gen.tab/gen-bidi-type-tab.c | 65 ++++---
+ gen.tab/Makefile.am | 92 ++++-------
+ gen.tab/gen-bidi-type-tab.c | 65 ++++----
gen.tab/gen-joining-type-tab.c | 355
- ++++++++++++++++++++++++++++++++++++
+ ++++++++++++++++++++++++++++++++++++++++
gen.tab/gen-mirroring-tab.c | 52 +++---
gen.tab/gen-unicode-version.c | 42 ++---
gen.tab/packtab.c | 16 +-
gen.tab/packtab.h | 2 +-
lib/Headers.mk | 7 +-
- lib/Makefile.am | 29 ++-
+ lib/Makefile.am | 29 +++-
lib/common.h | 12 +-
lib/debug.h | 11 +-
lib/env.h | 7 +-
lib/fribidi-bidi-type.c | 9 +-
lib/fribidi-bidi-types-list.h | 8 +-
lib/fribidi-bidi-types.c | 8 +-
- lib/fribidi-bidi-types.h | 140 +++++++-------
- lib/fribidi-joining-type.c | 56 ++++++
- lib/fribidi-joining-type.h | 59 ++++++
- lib/fribidi-joining-types-list.h | 50 +++++
- lib/fribidi-joining-types.c | 78 ++++++++
- lib/fribidi-joining-types.h | 143 +++++++++++++++
+ lib/fribidi-bidi-types.h | 140 ++++++++--------
+ lib/fribidi-joining-type.c | 56 +++++++
+ lib/fribidi-joining-type.h | 59 +++++++
+ lib/fribidi-joining-types-list.h | 50 ++++++
+ lib/fribidi-joining-types.c | 78 +++++++++
+ lib/fribidi-joining-types.h | 143 ++++++++++++++++
lib/fribidi-joining.c | 0
- lib/fribidi-joining.h | 50 +++++
+ lib/fribidi-joining.h | 50 ++++++
lib/fribidi-mirroring.c | 12 +-
lib/fribidi.def | 9 +-
- lib/joining-types.h | 58 ++++++
+ lib/joining-types.h | 58 +++++++
lib/run.h | 10 +-
32 files changed, 1147 insertions(+), 284 deletions(-)
Moreover,
packtab deals with tables with empty heads much better. Voila!
- bin/fribidi-main.c | 13 ++--
+ bin/fribidi-main.c | 13 +++--
charset/fribidi-char-sets.c | 7 ++-
configure.ac | 9 ++-
gen.tab/Makefile.am | 4 +-
gen.tab/gen-bidi-type-tab.c | 15 +++--
- gen.tab/gen-mirroring-tab.c | 99 +++++++++++++++++++----------
+ gen.tab/gen-mirroring-tab.c | 99 +++++++++++++++++++++-----------
gen.tab/packtab.c | 147
- ++++++++++++++++++++++++++++++++++----------
- gen.tab/packtab.h | 13 ++--
+ +++++++++++++++++++++++++++++++++++++-----------
+ gen.tab/packtab.h | 13 +++--
lib/fribidi-bidi-type.c | 14 ++---
- lib/fribidi-bidi-types.h | 10 +--
- lib/fribidi-mirroring.c | 48 +++------------
- lib/fribidi-types.h | 79 +++++++++++++-----------
+ lib/fribidi-bidi-types.h | 10 ++--
+ lib/fribidi-mirroring.c | 48 +++-------------
+ lib/fribidi-types.h | 79 ++++++++++++++------------
lib/fribidi.h | 8 +--
13 files changed, 276 insertions(+), 190 deletions(-)
AbiWord from CVS. The most important is the FRIBIDI_TYPE_PRIVATE in
fribidi-bidi-types.h
- bin/fribidi-main.c | 25 +++++++++++---
+ bin/fribidi-main.c | 25 ++++++++++++----
charset/Headers.mk | 8 +----
charset/fribidi-char-sets-cap-rtl.h | 8 +++--
charset/fribidi-char-sets-cp1255.h | 8 +++--
charset/fribidi-char-sets-cp1256.h | 8 +++--
charset/fribidi-char-sets-iso8859-6.h | 8 +++--
charset/fribidi-char-sets-iso8859-8.h | 8 +++--
- charset/fribidi-char-sets-list.h | 14 ++++----
+ charset/fribidi-char-sets-list.h | 14 ++++-----
charset/fribidi-char-sets-utf8.h | 8 +++--
- charset/fribidi-char-sets.c | 18 ++++++----
+ charset/fribidi-char-sets.c | 18 ++++++++----
charset/fribidi-char-sets.h | 13 ++------
- configure.ac | 18 ++++------
+ configure.ac | 18 ++++--------
doc/Makefile.am | 1 +
- lib/common.h | 28 ++++++++--------
- lib/debug.h | 10 +++---
+ lib/common.h | 28 +++++++++---------
+ lib/debug.h | 10 +++----
lib/fribidi-bidi-type.c | 62
- +++--------------------------------
- lib/fribidi-bidi-type.h | 39 ++--------------------
- lib/fribidi-bidi-types-list.h | 14 ++++----
- lib/fribidi-bidi-types.h | 35 +++++++++++---------
- lib/fribidi-bidi.h | 7 ++--
- lib/fribidi-common.h | 14 +++-----
- lib/fribidi-mirroring.c | 12 +++----
- lib/fribidi-mirroring.h | 12 +++----
- lib/fribidi-types.h | 26 +++++++--------
+ ++++-----------------------------------
+ lib/fribidi-bidi-type.h | 39 ++----------------------
+ lib/fribidi-bidi-types-list.h | 14 ++++-----
+ lib/fribidi-bidi-types.h | 35 ++++++++++++----------
+ lib/fribidi-bidi.h | 7 ++---
+ lib/fribidi-common.h | 14 ++++-----
+ lib/fribidi-mirroring.c | 12 ++++----
+ lib/fribidi-mirroring.h | 12 ++++----
+ lib/fribidi-types.h | 26 ++++++++--------
lib/fribidi.c | 8 ++---
lib/fribidi.def | 3 --
- lib/fribidi.h | 18 +++++++---
- lib/mem.h | 10 +++---
+ lib/fribidi.h | 18 ++++++++----
+ lib/mem.h | 10 +++----
28 files changed, 189 insertions(+), 254 deletions(-)
commit 7e382d2cc7f5c08bda7d0d7195b074d91811c5d7
.indent.pro | 4 +-
TODO | 2 +
lib/fribidi-bidi-types-list.h | 11 +-
- lib/fribidi-bidi-types.h | 134 +++++++++++-----
+ lib/fribidi-bidi-types.h | 134 ++++++++++++------
lib/fribidi-bidi.c | 314
- +++++++++++++++-----------------------
- lib/fribidi-bidi.h | 100 +++++-------
+ +++++++++++++++++-------------------------
+ lib/fribidi-bidi.h | 100 ++++++--------
lib/fribidi-mirroring.c | 9 +-
lib/fribidi-mirroring.h | 9 +-
- lib/fribidi.c | 170 ++++++++++++++++++++-
+ lib/fribidi.c | 170 ++++++++++++++++++++++-
lib/fribidi.def | 2 +-
- lib/fribidi.h | 95 +++++++++++-
- test/test_UTF-8_persian.reference | 16 +-
+ lib/fribidi.h | 95 ++++++++++++-
+ test/test_UTF-8_persian.reference | 16 +--
13 files changed, 541 insertions(+), 327 deletions(-)
commit 8fee958d0e10db5516f3897e6dc832ef56b13fcd
Isolating bidi reordering call, take 1.
lib/fribidi-bidi.c | 338
- ++++++++++++++++++-----------------------------------
+ ++++++++++++++++++++-------------------------------------
lib/fribidi-bidi.h | 14 +--
lib/fribidi-run.c | 39 ++++---
lib/run.h | 8 +-
Cleaning up here and there. Last lingers before adding joining.
- Makefile.am | 49 ++++--
+ Makefile.am | 49 ++++---
TODO | 9 +-
bin/fribidi-main.c | 12 +-
- bootstrap | 130 +++++++++++-----
+ bootstrap | 130 ++++++++++++------
charset/fribidi-char-sets-cap-rtl.c | 12 +-
configure.ac | 9 +-
- doc/Makefile.am | 18 ++-
+ doc/Makefile.am | 18 +--
gen.tab/.cvsignore | 4 +-
gen.tab/Makefile.am | 1 +
gen.tab/gen-bidi-type-tab.c | 20 +--
lib/Headers.mk | 2 +-
lib/fribidi-bidi-type.c | 17 ++-
- lib/fribidi-bidi-type.h | 23 +--
- lib/fribidi-bidi-types-list.h | 39 +++--
+ lib/fribidi-bidi-type.h | 23 ++--
+ lib/fribidi-bidi-types-list.h | 39 ++++--
lib/fribidi-bidi-types.c | 10 +-
lib/fribidi-bidi-types.h | 17 ++-
lib/fribidi-bidi.c | 297
- ++++++++++++++++++------------------
+ ++++++++++++++++++++--------------------
lib/fribidi-bidi.h | 28 +++-
lib/fribidi-common.h | 8 +-
lib/fribidi-config.h.in | 3 +
GNU Coding Standards applied and typos fixed.
- AUTHORS | 45
- +++++++++++++++++++++-
- Makefile.am | 10 ++---
- README | 26 +++++++------
- THANKS | 2 +-
- TODO | 41
- ++++++++++++++++++++
- bin/fribidi-main.c | 10 ++---
- charset/fribidi-char-sets-cap-rtl.c | 8 ++--
- configure.ac | 40
- ++++++++++---------
- doc/Makefile.am | 4 +-
- gen.tab/Makefile.am | 12 +++---
- gen.tab/gen-bidi-type-tab.c | 8 ++--
- gen.tab/gen-mirroring-tab.c | 8 ++--
- gen.tab/gen-unicode-version.c | 20 +++++++---
- lib/fribidi-bidi-type.c | 10 ++---
- ...bidi-types-list.h => fribidi-bidi-types-list.h} | 31 ++++++++-------
+ AUTHORS | 45
+ ++++++++++++++++++++++--
+ Makefile.am | 10 +++---
+ README | 26 +++++++-------
+ THANKS | 2 +-
+ TODO | 41
+ +++++++++++++++++++++
+ bin/fribidi-main.c | 10 +++---
+ charset/fribidi-char-sets-cap-rtl.c | 8 ++---
+ configure.ac | 40
+ +++++++++++----------
+ doc/Makefile.am | 4 +--
+ gen.tab/Makefile.am | 12 +++----
+ gen.tab/gen-bidi-type-tab.c | 8 ++---
+ gen.tab/gen-mirroring-tab.c | 8 ++---
+ gen.tab/gen-unicode-version.c | 20 +++++++----
+ lib/fribidi-bidi-type.c | 10 +++---
+ lib/{bidi-types-list.h => fribidi-bidi-types-list.h} | 31
+ +++++++++-------
15 files changed, 187 insertions(+), 88 deletions(-)
commit 339717751b86715f78bd9d02159813c29c650a0a
lib/Headers.mk | 1 +
lib/Makefile.am | 1 -
- lib/common.h | 10 +++---
+ lib/common.h | 10 ++++---
lib/debug.h | 8 ++---
- lib/fribidi-bidi-types.c | 10 +++---
+ lib/fribidi-bidi-types.c | 10 +++----
lib/fribidi-bidi.c | 84
- ++++++++++++++++++++++++------------------------
- lib/fribidi-common.h | 33 ++++++++++---------
+ ++++++++++++++++++++++++++--------------------------
+ lib/fribidi-common.h | 33 +++++++++++----------
lib/fribidi-config.h.in | 3 +-
- lib/fribidi.c | 20 ++++++------
+ lib/fribidi.c | 20 ++++++-------
lib/run.h | 8 ++---
10 files changed, 91 insertions(+), 87 deletions(-)
files
anymore. :-(
- gen.tab/unidata/ArabicShaping.txt | 240 +
- gen.tab/unidata/README | 1 +
- gen.tab/unidata/UnicodeData.txt | 15100
- +++++++++++++++++++
- gen.tab/unidata/extracted/DerivedBidiClass.txt | 1299 --
- .../unidata/extracted/DerivedDecompositionType.txt | 933 --
- gen.tab/unidata/extracted/DerivedJoiningType.txt | 215 -
+ gen.tab/unidata/ArabicShaping.txt | 240 +
+ gen.tab/unidata/README | 1 +
+ gen.tab/unidata/UnicodeData.txt | 15100
+ ++++++++++++++++++++
+ gen.tab/unidata/extracted/DerivedBidiClass.txt | 1299 --
+ .../unidata/extracted/DerivedDecompositionType.txt | 933 --
+ gen.tab/unidata/extracted/DerivedJoiningType.txt | 215 -
6 files changed, 15341 insertions(+), 2447 deletions(-)
commit 28f7f004848d56fb148290428ecff8ab3b568cdd
Make gen-mirroring-tab and gen-unicode-version work. gen.tab/
works now.
- Makefile.am | 10 ++--
+ Makefile.am | 10 +++--
bin/Makefile.am | 4 +-
bin/fribidi-benchmark.c | 16 ++++---
charset/fribidi-char-sets-cap-rtl.c | 16 +++----
charset/fribidi-char-sets.c | 8 ++--
gen.tab/Makefile.am | 95
- +++++++++++++++++++++++++++----------
+ ++++++++++++++++++++++++++++++-----------
gen.tab/gen-bidi-type-tab.c | 8 ++--
- gen.tab/gen-mirroring-tab.c | 10 ++--
- gen.tab/gen-unicode-version.c | 11 ++---
- lib/common.h | 20 ++++----
+ gen.tab/gen-mirroring-tab.c | 10 ++---
+ gen.tab/gen-unicode-version.c | 11 +++--
+ lib/common.h | 20 ++++-----
lib/fribidi-bidi-type.c | 7 ++-
- lib/fribidi-mem.c | 13 +++--
+ lib/fribidi-mem.c | 13 +++---
12 files changed, 137 insertions(+), 81 deletions(-)
commit 285b3de138e8a4f790fe07519c1a90d759a61598
bin/Makefile.am | 4 +-
charset/Makefile.am | 2 +-
- configure.ac | 29 ++++----
+ configure.ac | 29 +++++----
doc/Makefile.am | 2 +-
fribidi.pc.in | 2 +-
- gen.tab/Makefile.am | 52 +++++++++++++-
+ gen.tab/Makefile.am | 52 ++++++++++++++-
gen.tab/gen-bidi-type-tab.c | 163
- ++++++++++++++++++++++++++++++------------
- gen.tab/gen-mirroring-tab.c | 79 +++++++++++++-------
- gen.tab/gen-unicode-version.c | 48 ++++++-------
+ +++++++++++++++++++++++++++++++++-------------
+ gen.tab/gen-mirroring-tab.c | 79 ++++++++++++++--------
+ gen.tab/gen-unicode-version.c | 48 +++++++-------
gen.tab/packtab.c | 5 +-
gen.tab/packtab.h | 2 +-
- lib/Makefile.am | 31 +++-----
- lib/common.h | 48 +++++++------
+ lib/Makefile.am | 31 +++------
+ lib/common.h | 48 ++++++++------
lib/fribidi-bidi.h | 12 ++--
lib/fribidi-mirroring.c | 10 +--
lib/fribidi-mirroring.h | 10 +--
gen.tab/.cvsignore | 5 +-
gen.tab/Makefile.am | 6 +-
gen.tab/gen-bidi-type-tab.c | 10 +--
- gen.tab/gen-mirroring-tab.c | 8 +-
+ gen.tab/gen-mirroring-tab.c | 8 +--
gen.tab/gen-unicode-version.c | 170
- ++++++++++++++++++++++++++++++++++++++++++
+ ++++++++++++++++++++++++++++++++++++++++++++++
5 files changed, 187 insertions(+), 12 deletions(-)
commit 8bc4b0a145e828a6c9e90d18e4f06900291d1d3a
charset/fribidi-char-sets.c | 12 +-
gen.tab/Makefile.am | 9 ++
gen.tab/gen-bidi-type-tab.c | 298
- +++++++++++++++++++++-----------------------
- gen.tab/gen-mirroring-tab.c | 223 +++++++++++++++++++--------------
+ +++++++++++++++++++++++-------------------------
+ gen.tab/gen-mirroring-tab.c | 223 ++++++++++++++++++++----------------
gen.tab/packtab.c | 18 ++-
lib/bidi-types-list.h | 18 ++-
lib/common.h | 12 +-
lib/fribidi-bidi-type.c | 8 +-
- lib/fribidi-mirroring.h | 13 +-
+ lib/fribidi-mirroring.h | 13 ++-
13 files changed, 340 insertions(+), 294 deletions(-)
commit 4b03bbd7b4368cde918197875a83ff4661ca4857
doc/Makefile.am | 2 +
lib/Makefile.am | 8 +-
lib/bidi-type-table.i | 5228
- -----------------------------------
+ ---------------------------------------
lib/bidi-types-list.h | 11 +-
lib/bidi-types.h | 25 +-
lib/common.h | 10 +-
lib/bidi-types-list.h | 15 +-
lib/bidi-types.h | 20 +-
lib/common.h | 48 +-
- lib/debug.h | 66 +-
+ lib/debug.h | 66 ++-
lib/env.h | 10 +-
lib/fribidi-bidi-type.c | 37 +-
lib/fribidi-bidi-type.h | 33 +-
lib/fribidi-bidi-types.c | 12 +-
lib/fribidi-bidi-types.h | 50 +-
lib/fribidi-bidi.c | 1173
- +++++++++++++++++----------------
+ +++++++++++++++++++------------------
lib/fribidi-bidi.h | 19 +-
lib/fribidi-common.h | 29 +-
lib/fribidi-env.c | 17 +-
lib/fribidi-env.h | 27 +-
lib/fribidi-mem.c | 39 +-
lib/fribidi-mirroring.c | 24 +-
- lib/fribidi-run.c | 395 ++++++-----
+ lib/fribidi-run.c | 395 ++++++++-----
lib/fribidi-types.h | 10 +-
lib/fribidi.c | 10 +-
lib/fribidi.def | 13 +
Cleaning up exported symbols.
- THANKS | 23 +++++++++----------
+ THANKS | 23 +++++++++------------
bin/fribidi-main.c | 62
- ++++++++++++++++++++++++++--------------------------
- charset/Makefile.am | 13 +----------
+ ++++++++++++++++++++++++++++----------------------------
+ charset/Makefile.am | 13 +-----------
doc/Makefile.am | 1 +
- lib/Makefile.am | 16 +++++++-------
- lib/fribidi-common.h | 8 +++----
+ lib/Makefile.am | 16 +++++++--------
+ lib/fribidi-common.h | 8 ++++----
6 files changed, 55 insertions(+), 68 deletions(-)
commit 1fb4c69145a5222169e8b8f852807046a30d6870
lib/Makefile.am | 5 +-
lib/bidi-types.h | 12 +-
- lib/common.h | 23 +--
+ lib/common.h | 23 ++--
lib/env.h | 63 +++++++++
lib/fribidi-bidi-type.c | 8 +-
lib/fribidi-bidi-types.c | 8 +-
lib/fribidi-bidi-types.h | 8 +-
lib/fribidi-bidi.c | 357
- ++++++++---------------------------------------
+ ++++++++-------------------------------------------
lib/fribidi-env.c | 27 ++--
lib/fribidi-mem.c | 64 ++++++---
- lib/fribidi-run.c | 267 +++++++++++++++++++++++++++++++++++
+ lib/fribidi-run.c | 267 ++++++++++++++++++++++++++++++++++++++
lib/mem.h | 16 ++-
- lib/run.h | 86 ++++++++++++
+ lib/run.h | 86 +++++++++++++
13 files changed, 587 insertions(+), 357 deletions(-)
commit ac43f238748ad5b874089a8c27d8c1eb7150859d
First try to integrate c2man manual generation in build system.
- charset/Headers.mk | 21 ++++++++------
- charset/fribidi-char-sets-list.h | 10 +++++--
+ charset/Headers.mk | 21 +++++++++------
+ charset/fribidi-char-sets-list.h | 10 ++++---
doc/Makefile.am | 62
- ++++++++++++++++++++++++++++------------
- lib/Headers.mk | 16 ++++++++++-
+ ++++++++++++++++++++++++++++++--------------
+ lib/Headers.mk | 16 +++++++++++-
lib/bidi-types-list.h | 10 +++----
lib/common.h | 10 +++----
lib/debug.h | 8 +++---
lib/fribidi-begindecls.h | 2 ++
lib/fribidi-enddecls.h | 2 ++
- lib/fribidi-types.h | 14 ++++-----
+ lib/fribidi-types.h | 14 +++++-----
lib/mem.h | 8 +++---
11 files changed, 107 insertions(+), 56 deletions(-)
The ChangeLog from the old days.
ChangeLog.old | 703
- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 703 insertions(+)
commit 63d12e574eb5cfe95290b303bac0950c25afe397
Initial revision
- .cvsignore | 19 +
- .indent.pro | 19 +
- AUTHORS | 1 +
- COPYING | 504 ++
- HACKING | 7 +
- HISTORY | 34 +
- Makefile.am | 54 +
- NEWS | 18 +
- README | 152 +
- THANKS | 33 +
- TODO | 13 +
- bin/Makefile.am | 25 +
- bin/fribidi-benchmark.c | 278 ++
- bin/fribidi-main.c | 597 +++
- bin/getopt.c | 1268 +++++
- bin/getopt.h | 187 +
- bin/getopt1.c | 213 +
- bin/getopt_int.h | 145 +
- bootstrap | 110 +
- charset/Headers.mk | 9 +
- charset/Makefile.am | 48 +
- charset/fribidi-char-sets-cap-rtl.c | 336 ++
- charset/fribidi-char-sets-cap-rtl.h | 70 +
- charset/fribidi-char-sets-cp1255.c | 106 +
- charset/fribidi-char-sets-cp1255.h | 62 +
- charset/fribidi-char-sets-cp1256.c | 223 +
- charset/fribidi-char-sets-cp1256.h | 62 +
- charset/fribidi-char-sets-iso8859-6.c | 81 +
- charset/fribidi-char-sets-iso8859-6.h | 62 +
- charset/fribidi-char-sets-iso8859-8.c | 120 +
- charset/fribidi-char-sets-iso8859-8.h | 62 +
- charset/fribidi-char-sets-list.h | 56 +
- charset/fribidi-char-sets-utf8.c | 126 +
- charset/fribidi-char-sets-utf8.h | 66 +
- charset/fribidi-char-sets.c | 230 +
- charset/fribidi-char-sets.h | 125 +
- configure.ac | 208 +
- doc/Makefile.am | 27 +
- fribidi.pc.in | 13 +
- fribidi.spec.in | 145 +
- gen.tab/Makefile.am | 0
- gen.tab/gen-bidi-type-tab.c | 267 +
- gen.tab/gen-mirroring-tab.c | 152 +
- gen.tab/packtab.c | 364 ++
- gen.tab/packtab.h | 49 +
- gen.tab/unidata/BidiMirroring.txt | 525 ++
- gen.tab/unidata/ReadMe.txt | 40 +
- gen.tab/unidata/extracted/DerivedBidiClass.txt | 1299 +++++
- .../unidata/extracted/DerivedDecompositionType.txt | 933 ++++
- gen.tab/unidata/extracted/DerivedJoiningType.txt | 215 +
- lib/Headers.mk | 14 +
- lib/Makefile.am | 75 +
- lib/bidi-type-table.i | 5228
- ++++++++++++++++++++
- lib/bidi-types-list.h | 69 +
- lib/bidi-types.h | 78 +
- lib/common.h | 110 +
- lib/debug.h | 87 +
- lib/fribidi-begindecls.h | 1 +
- lib/fribidi-bidi-type.c | 79 +
- lib/fribidi-bidi-type.h | 74 +
- lib/fribidi-bidi-types.c | 76 +
- lib/fribidi-bidi-types.h | 278 ++
- lib/fribidi-bidi.c | 1424 ++++++
- lib/fribidi-bidi.h | 112 +
- lib/fribidi-common.h | 83 +
- lib/fribidi-config.h.in | 22 +
- lib/fribidi-enddecls.h | 1 +
- lib/fribidi-env.c | 107 +
- lib/fribidi-env.h | 125 +
- lib/fribidi-mem.c | 94 +
- lib/fribidi-mirroring.c | 90 +
- lib/fribidi-mirroring.h | 67 +
- lib/fribidi-types.h | 143 +
- lib/fribidi-unicode-version.h | 4 +
- lib/fribidi-unicode.h | 101 +
- lib/fribidi.c | 68 +
- lib/fribidi.h | 48 +
- lib/mem.h | 90 +
- lib/mirroring-table.i | 358 ++
- test/Makefile.am | 33 +
- test/run.tests | 74 +
- test/test_CapRTL_explicit.input | 13 +
- test/test_CapRTL_explicit.reference | 13 +
- test/test_CapRTL_implicit.input | 26 +
- test/test_CapRTL_implicit.reference | 26 +
- test/test_ISO8859-8_hebrew.input | 17 +
- test/test_ISO8859-8_hebrew.reference | 17 +
- test/test_UTF-8_persian.input | 14 +
- test/test_UTF-8_persian.reference | 14 +
- test/test_UTF-8_reordernsm.input | 7 +
- test/test_UTF-8_reordernsm.reference | 7 +
+ .cvsignore | 19 +
+ .indent.pro | 19 +
+ AUTHORS | 1 +
+ COPYING | 504 ++
+ HACKING | 7 +
+ HISTORY | 34 +
+ Makefile.am | 54 +
+ NEWS | 18 +
+ README | 152 +
+ THANKS | 33 +
+ TODO | 13 +
+ bin/Makefile.am | 25 +
+ bin/fribidi-benchmark.c | 278 ++
+ bin/fribidi-main.c | 597 +++
+ bin/getopt.c | 1268 +++++
+ bin/getopt.h | 187 +
+ bin/getopt1.c | 213 +
+ bin/getopt_int.h | 145 +
+ bootstrap | 110 +
+ charset/Headers.mk | 9 +
+ charset/Makefile.am | 48 +
+ charset/fribidi-char-sets-cap-rtl.c | 336 ++
+ charset/fribidi-char-sets-cap-rtl.h | 70 +
+ charset/fribidi-char-sets-cp1255.c | 106 +
+ charset/fribidi-char-sets-cp1255.h | 62 +
+ charset/fribidi-char-sets-cp1256.c | 223 +
+ charset/fribidi-char-sets-cp1256.h | 62 +
+ charset/fribidi-char-sets-iso8859-6.c | 81 +
+ charset/fribidi-char-sets-iso8859-6.h | 62 +
+ charset/fribidi-char-sets-iso8859-8.c | 120 +
+ charset/fribidi-char-sets-iso8859-8.h | 62 +
+ charset/fribidi-char-sets-list.h | 56 +
+ charset/fribidi-char-sets-utf8.c | 126 +
+ charset/fribidi-char-sets-utf8.h | 66 +
+ charset/fribidi-char-sets.c | 230 +
+ charset/fribidi-char-sets.h | 125 +
+ configure.ac | 208 +
+ doc/Makefile.am | 27 +
+ fribidi.pc.in | 13 +
+ fribidi.spec.in | 145 +
+ gen.tab/Makefile.am | 0
+ gen.tab/gen-bidi-type-tab.c | 267 ++
+ gen.tab/gen-mirroring-tab.c | 152 +
+ gen.tab/packtab.c | 364 ++
+ gen.tab/packtab.h | 49 +
+ gen.tab/unidata/BidiMirroring.txt | 525 +++
+ gen.tab/unidata/ReadMe.txt | 40 +
+ gen.tab/unidata/extracted/DerivedBidiClass.txt | 1299 +++++
+ .../unidata/extracted/DerivedDecompositionType.txt | 933 ++++
+ gen.tab/unidata/extracted/DerivedJoiningType.txt | 215 +
+ lib/Headers.mk | 14 +
+ lib/Makefile.am | 75 +
+ lib/bidi-type-table.i | 5228
+ +++++++++++++++++++++
+ lib/bidi-types-list.h | 69 +
+ lib/bidi-types.h | 78 +
+ lib/common.h | 110 +
+ lib/debug.h | 87 +
+ lib/fribidi-begindecls.h | 1 +
+ lib/fribidi-bidi-type.c | 79 +
+ lib/fribidi-bidi-type.h | 74 +
+ lib/fribidi-bidi-types.c | 76 +
+ lib/fribidi-bidi-types.h | 278 ++
+ lib/fribidi-bidi.c | 1424 ++++++
+ lib/fribidi-bidi.h | 112 +
+ lib/fribidi-common.h | 83 +
+ lib/fribidi-config.h.in | 22 +
+ lib/fribidi-enddecls.h | 1 +
+ lib/fribidi-env.c | 107 +
+ lib/fribidi-env.h | 125 +
+ lib/fribidi-mem.c | 94 +
+ lib/fribidi-mirroring.c | 90 +
+ lib/fribidi-mirroring.h | 67 +
+ lib/fribidi-types.h | 143 +
+ lib/fribidi-unicode-version.h | 4 +
+ lib/fribidi-unicode.h | 101 +
+ lib/fribidi.c | 68 +
+ lib/fribidi.h | 48 +
+ lib/mem.h | 90 +
+ lib/mirroring-table.i | 358 ++
+ test/Makefile.am | 33 +
+ test/run.tests | 74 +
+ test/test_CapRTL_explicit.input | 13 +
+ test/test_CapRTL_explicit.reference | 13 +
+ test/test_CapRTL_implicit.input | 26 +
+ test/test_CapRTL_implicit.reference | 26 +
+ test/test_ISO8859-8_hebrew.input | 17 +
+ test/test_ISO8859-8_hebrew.reference | 17 +
+ test/test_UTF-8_persian.input | 14 +
+ test/test_UTF-8_persian.reference | 14 +
+ test/test_UTF-8_reordernsm.input | 7 +
+ test/test_UTF-8_reordernsm.reference | 7 +
91 files changed, 19125 insertions(+)
EXTRA_DIST = autogen.sh ChangeLog.old \
meson.build meson_options.txt bin/meson.build doc/meson.build \
gen.tab/meson.build lib/meson.build test/meson.build \
- test/test-runner.py test/unicode-conformance/meson.build
+ test/test-runner.py test/unicode-conformance/meson.build \
+ README.md
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = @PACKAGE@.pc
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
$(RECURSIVE_CLEAN_TARGETS) \
$(am__extra_recursive_targets)
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
- cscope distdir dist dist-all distcheck
+ cscope distdir distdir-am dist dist-all distcheck
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
$(LISP)config.h.in
# Read a list of newline-separated strings from the standard input,
EXTRA_DIST = autogen.sh ChangeLog.old \
meson.build meson_options.txt bin/meson.build doc/meson.build \
gen.tab/meson.build lib/meson.build test/meson.build \
- test/test-runner.py test/unicode-conformance/meson.build
+ test/test-runner.py test/unicode-conformance/meson.build \
+ README.md
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = @PACKAGE@.pc
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);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
@case `sed 15q $(srcdir)/NEWS` in \
*"$(VERSION)"*) : ;; \
*) \
+Overview of changes between 1.0.7 and 1.0.8
+=============================================
+
+* A bug fix in the fribidi unicode algorithm for multiple isolate sequences.
+
+* Fixed a potential buffer overflow for a long sequence of isolate overrides characters
+
+
+Overview of changes between 1.0.6 and 1.0.7
+=============================================
+
+* This is a minor bugfix that removes symlinks and updates the meson version.
+
+Overview of changes between 1.0.5 and 1.0.6
+=============================================
+
+* This is a minor bugfix release that fixes a list of minor issues that have turned up during the last year.
+
+* Various compilation and cross compilation issues.
+
+* Various minor header cleanups.
+
+* Removed libc's bsearch for performance and portability reasons
+
Overview of changes between 1.0.4 and 1.0.5
=============================================
`fribidi_get_par_embedding_levels()` must be replaced with calls to
`fribidi_get_par_embedding_levels_ex()`. These function are not API
compatible. Calling the older function will use default values for
- the new bracket properties and will sometimes yield non-complient
+ the new bracket properties and will sometimes yield non-compliant
results.
Overview of changes between 0.19.6 and 0.19.7
-# 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 needs to be implemented. It is our hope that this library will stimulate more free software in the Middle Eastern countries.
-
-See [`HISTORY`](./HISTORY) on how the project started and evolved.
-
-
-## Audience
-
-It is our hope that this library will stimulate the implementation of Hebrew and
-Arabic support in lots of Free Software.
-
-GNU FriBidi is already being used in projects like Pango (resulting in [GTK+] and [GNOME] using GNU FriBidi), AbiWord, MLTerm, MPlayer, BiCon, and vlc.
-
-See [`USERS`](./USERS) for a list of projects using GNU FriBidi.
-
-
-## Dependencies
-
-GNU FriBidi does not depend on any other library. It uses either the GNU Build System or meson for build and installation.
-
-
-## Downloading
-
-The latest version of GNU FriBidi may be found at:
-<https://github.com/fribidi/fribidi>
-
-
-## Building
-
-Start with running the [`autogen.sh`](./autogen.sh) script and follow the
-instructions. Alternatively use `meson`.
-
-
-## 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
-### Commercial licensing
-
-For commercial licensing options, contact <fribidi.license@gmail.com>.
-
-## 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/>.
-
-The library uses Unicode (UTF-32) 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 UTF-32
-encoding. Data in these character sets must be converted into UTF-32 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.
-
-
-### Conformance Status
-
-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.
-
-
-### API
-
-The simplest way of accessing the API is through the convenience function `fribibidi_log2vis` which has the following signature:
-
-```c
-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 (`str`).
-* `pbase_dir` is the input and output base direction. If `pbase_dir ==
- FRIBIDI_TYPE_ON` then `fribidi_log2vis()` calculates the base direction on its
- own, according to the bidi algorithm.
-* `visual_str` is 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. Here,
- even numerical levels indicate LTR characters, and odd levels indicate RTL
- characters. The main use of this list is in interactive applications where,
- for example, the embedding level determines cursor display.
-
-If any of the output pointers is equal to `NULL`, then that information is not
-calculated.
-
-Note that a call to `fribidi_log2vis()` is a convenience function to calling the following three functions in order:
-
-1. `fribidi_get_bidi_types()`
-2. `fribidi_get_par_embedding_levels_ex()`
-3. `fribidi_reorder_line()`
-
-## How it looks like
-
-Have a look at [`test/`](./test) directory, to see some input and outputs.
-
-The `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 --help` to learn about usage.
-
-The command-line utility is known to have problems with line-breaking and
-logical-to-vertical/vertical-to-logical lists.
-
-
-## Bug Reports and Feedback
-
-Report bugs and general feedback at: <https://github.com/fribidi/fribidi/issues>
-
-The mailing list is the place for additional technical discussions and user
-questions: <https://lists.freedesktop.org/mailman/listinfo/fribidi>
-
-
-## Maintainers and Contributors
-
-* Dov Grobgeld <dov.grobgeld@gmail.com> - Original author and current maintainer
-* Behdad Esfahbod <behdad@gnu.org> - Author of most of the code
-
-See also [`AUTHORS`](./AUTHORS) and [`THANKS`](./THANKS) for the complete list
-of contributors.
-
-
-[Unicode Bidirectional Algorithm]: https://www.unicode.org/reports/tr9/
-[Unicode Reference Code]: https://www.unicode.org/reports/tr9/#Reference_Code
-[Mirroring]: https://www.unicode.org/reports/tr9/#Mirroring
-[GTK+]: https://www.gtk.org/
-[GNOME]: https://www.gnome.org/
-[GNU Lesser General Public License]: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html
+See README.md
--- /dev/null
+# 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 needs to be implemented. It is our hope that this library will stimulate more free software in the Middle Eastern countries.
+
+See [`HISTORY`](./HISTORY) on how the project started and evolved.
+
+
+## Audience
+
+It is our hope that this library will stimulate the implementation of Hebrew and
+Arabic support in lots of Free Software.
+
+GNU FriBidi is already being used in projects like Pango (resulting in [GTK+] and [GNOME] using GNU FriBidi), AbiWord, MLTerm, MPlayer, BiCon, and vlc.
+
+See [`USERS`](./USERS) for a list of projects using GNU FriBidi.
+
+
+## Dependencies
+
+GNU FriBidi does not depend on any other library. It uses either the GNU Build System or meson for build and installation.
+
+
+## Downloading
+
+The latest version of GNU FriBidi may be found at:
+<https://github.com/fribidi/fribidi>
+
+
+## Building
+
+Start with running the [`autogen.sh`](./autogen.sh) script and follow the
+instructions. Alternatively use `meson`.
+
+
+## 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+### Commercial licensing
+
+For commercial licensing options, contact <fribidi.license@gmail.com>.
+
+## 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/>.
+
+The library uses Unicode (UTF-32) 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 UTF-32
+encoding. Data in these character sets must be converted into UTF-32 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.
+
+
+### Conformance Status
+
+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.
+
+
+### API
+
+The simplest way of accessing the API is through the convenience function `fribidi_log2vis` which has the following signature:
+
+```c
+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 (`str`).
+* `pbase_dir` is the input and output base direction. If `pbase_dir ==
+ FRIBIDI_TYPE_ON` then `fribidi_log2vis()` calculates the base direction on its
+ own, according to the bidi algorithm.
+* `visual_str` is 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. Here,
+ even numerical levels indicate LTR characters, and odd levels indicate RTL
+ characters. The main use of this list is in interactive applications where,
+ for example, the embedding level determines cursor display.
+
+If any of the output pointers is equal to `NULL`, then that information is not
+calculated.
+
+Note that a call to `fribidi_log2vis()` is a convenience function to calling the following three functions in order:
+
+1. `fribidi_get_bidi_types()`
+2. `fribidi_get_par_embedding_levels_ex()`
+3. `fribidi_reorder_line()`
+
+## How it looks like
+
+Have a look at [`test/`](./test) directory, to see some input and outputs.
+
+The `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 --help` to learn about usage.
+
+The command-line utility is known to have problems with line-breaking and
+logical-to-vertical/vertical-to-logical lists.
+
+
+## Bug Reports and Feedback
+
+Report bugs and general feedback at: <https://github.com/fribidi/fribidi/issues>
+
+The mailing list is the place for additional technical discussions and user
+questions: <https://lists.freedesktop.org/mailman/listinfo/fribidi>
+
+
+## Maintainers and Contributors
+
+* Dov Grobgeld <dov.grobgeld@gmail.com> - Original author and current maintainer
+* Behdad Esfahbod <behdad@gnu.org> - Author of most of the code
+
+See also [`AUTHORS`](./AUTHORS) and [`THANKS`](./THANKS) for the complete list
+of contributors.
+
+
+[Unicode Bidirectional Algorithm]: https://www.unicode.org/reports/tr9/
+[Unicode Reference Code]: https://www.unicode.org/reports/tr9/#Reference_Code
+[Mirroring]: https://www.unicode.org/reports/tr9/#Mirroring
+[GTK+]: https://www.gtk.org/
+[GNOME]: https://www.gnome.org/
+[GNU Lesser General Public License]: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html
-# generated automatically by aclocal 1.15.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
[AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])])
])dnl PKG_HAVE_DEFINE_WITH_MODULES
-# Copyright (C) 2002-2017 Free Software Foundation, Inc.
+# Copyright (C) 2002-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# generated from the m4 files accompanying Automake X.Y.
# (This private macro should not be called outside this file.)
AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.15'
+[am__api_version='1.16'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.15.1], [],
+m4_if([$1], [1.16.1], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.15.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.1])dnl
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
-# Copyright (C) 2011-2017 Free Software Foundation, Inc.
+# Copyright (C) 2011-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# AM_CONDITIONAL -*- Autoconf -*-
-# Copyright (C) 1997-2017 Free Software Foundation, Inc.
+# Copyright (C) 1997-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
Usually this means the macro was only invoked conditionally.]])
fi])])
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Generate code to set up dependency tracking. -*- Autoconf -*-
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
#
# This file 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.
-
# _AM_OUTPUT_DEPENDENCY_COMMANDS
# ------------------------------
AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
# Older Autoconf quotes --file arguments for eval, but not when files
# are listed without --file. Let's play safe and only enable the eval
# if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
+ # TODO: see whether this extra hack can be removed once we start
+ # requiring Autoconf 2.70 or later.
+ AS_CASE([$CONFIG_FILES],
+ [*\'*], [eval set x "$CONFIG_FILES"],
+ [*], [set x $CONFIG_FILES])
shift
- for mf
+ # Used to flag and report bootstrapping failures.
+ am_rc=0
+ for am_mf
do
# Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named 'Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
+ am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile which includes
+ # dependency-tracking related rules and includes.
+ # Grep'ing the whole file directly is not great: AIX grep has a line
# limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`AS_DIRNAME("$mf")`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running 'make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "$am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`AS_DIRNAME(["$file"])`
- AS_MKDIR_P([$dirpart/$fdir])
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
+ sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
+ || continue
+ am_dirpart=`AS_DIRNAME(["$am_mf"])`
+ am_filepart=`AS_BASENAME(["$am_mf"])`
+ AM_RUN_LOG([cd "$am_dirpart" \
+ && sed -e '/# am--include-marker/d' "$am_filepart" \
+ | $MAKE -f - am--depfiles]) || am_rc=$?
done
+ if test $am_rc -ne 0; then
+ AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
+ for automatic dependency tracking. Try re-running configure with the
+ '--disable-dependency-tracking' option to at least be able to build
+ the package (albeit without support for automatic dependency tracking).])
+ fi
+ AS_UNSET([am_dirpart])
+ AS_UNSET([am_filepart])
+ AS_UNSET([am_mf])
+ AS_UNSET([am_rc])
+ rm -f conftest-deps.mk
}
])# _AM_OUTPUT_DEPENDENCY_COMMANDS
# -----------------------------
# This macro should only be invoked once -- use via AC_REQUIRE.
#
-# This code is only required when automatic dependency tracking
-# is enabled. FIXME. This creates each '.P' file that we will
-# need in order to bootstrap the dependency handling code.
+# This code is only required when automatic dependency tracking is enabled.
+# This creates each '.Po' and '.Plo' makefile fragment that we'll need in
+# order to bootstrap the dependency handling code.
AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
[AC_CONFIG_COMMANDS([depfiles],
[test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
- [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
-])
+ [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])])
# Do all the work for Automake. -*- Autoconf -*-
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
AC_REQUIRE([AC_PROG_MKDIR_P])dnl
# For better backward compatibility. To be removed once Automake 1.9.x
# dies out for good. For more background, see:
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
# We need awk for the "check" target (and possibly the TAP driver). The
# system "awk" is bad on some platforms.
Aborting the configuration process, to ensure you take notice of the issue.
You can download and install GNU coreutils to get an 'rm' implementation
-that behaves properly: <http://www.gnu.org/software/coreutils/>.
+that behaves properly: <https://www.gnu.org/software/coreutils/>.
If you want to complete the configuration process using your problematic
'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
done
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
fi
AC_SUBST([install_sh])])
-# Copyright (C) 2003-2017 Free Software Foundation, Inc.
+# Copyright (C) 2003-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Check to see how 'make' treats includes. -*- Autoconf -*-
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# AM_MAKE_INCLUDE()
# -----------------
-# Check to see how make treats includes.
+# Check whether make has an 'include' directive that can support all
+# the idioms we need for our automatic dependency tracking code.
AC_DEFUN([AM_MAKE_INCLUDE],
-[am_make=${MAKE-make}
-cat > confinc << 'END'
+[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive])
+cat > confinc.mk << 'END'
am__doit:
- @echo this is the am__doit target
+ @echo this is the am__doit target >confinc.out
.PHONY: am__doit
END
-# If we don't find an include directive, just comment out the code.
-AC_MSG_CHECKING([for style of include used by $am_make])
am__include="#"
am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from 'make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
- ;;
- esac
-fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
-rm -f confinc confmf
-])
+# BSD make does it like this.
+echo '.include "confinc.mk" # ignored' > confmf.BSD
+# Other make implementations (GNU, Solaris 10, AIX) do it like this.
+echo 'include confinc.mk # ignored' > confmf.GNU
+_am_result=no
+for s in GNU BSD; do
+ AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out])
+ AS_CASE([$?:`cat confinc.out 2>/dev/null`],
+ ['0:this is the am__doit target'],
+ [AS_CASE([$s],
+ [BSD], [am__include='.include' am__quote='"'],
+ [am__include='include' am__quote=''])])
+ if test "$am__include" != "#"; then
+ _am_result="yes ($s style)"
+ break
+ fi
+done
+rm -f confinc.* confmf.*
+AC_MSG_RESULT([${_am_result}])
+AC_SUBST([am__include])])
+AC_SUBST([am__quote])])
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
-# Copyright (C) 1997-2017 Free Software Foundation, Inc.
+# Copyright (C) 1997-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Helper functions for option handling. -*- Autoconf -*-
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
AC_DEFUN([_AM_IF_OPTION],
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# For backward compatibility.
AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Check to make sure that the build environment is sane. -*- Autoconf -*-
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
rm -f conftest.file
])
-# Copyright (C) 2009-2017 Free Software Foundation, Inc.
+# Copyright (C) 2009-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
])
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
AC_SUBST([INSTALL_STRIP_PROGRAM])])
-# Copyright (C) 2006-2017 Free Software Foundation, Inc.
+# Copyright (C) 2006-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Check how to create a tarball. -*- Autoconf -*-
-# Copyright (C) 2004-2017 Free Software Foundation, Inc.
+# Copyright (C) 2004-2018 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
-#!/bin/sh
+#! /bin/sh
# Wrapper for Microsoft lib.exe
me=ar-lib
scriptversion=2012-03-01.08; # UTC
-# Copyright (C) 2010-2017 Free Software Foundation, Inc.
+# Copyright (C) 2010-2018 Free Software Foundation, Inc.
# Written by Peter Rosin <peda@lysator.liu.se>.
#
# This program is free software; you can redistribute it and/or modify
# 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, see <http://www.gnu.org/licenses/>.
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/fribidi-benchmark.Po \
+ ./$(DEPDIR)/fribidi-bidi-types.Po \
+ ./$(DEPDIR)/fribidi-caprtl2utf8.Po ./$(DEPDIR)/fribidi-main.Po \
+ ./$(DEPDIR)/getopt.Po ./$(DEPDIR)/getopt1.Po
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
*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);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
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@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-benchmark.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-bidi-types.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-caprtl2utf8.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-main.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt1.Po@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+ @$(MKDIR_P) $(@D)
+ @echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
.c.o:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
clean-noinstPROGRAMS mostlyclean-am
distclean: distclean-am
- -rm -rf ./$(DEPDIR)
+ -rm -f ./$(DEPDIR)/fribidi-benchmark.Po
+ -rm -f ./$(DEPDIR)/fribidi-bidi-types.Po
+ -rm -f ./$(DEPDIR)/fribidi-caprtl2utf8.Po
+ -rm -f ./$(DEPDIR)/fribidi-main.Po
+ -rm -f ./$(DEPDIR)/getopt.Po
+ -rm -f ./$(DEPDIR)/getopt1.Po
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
installcheck-am: installcheck-binPROGRAMS
maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
+ -rm -f ./$(DEPDIR)/fribidi-benchmark.Po
+ -rm -f ./$(DEPDIR)/fribidi-bidi-types.Po
+ -rm -f ./$(DEPDIR)/fribidi-caprtl2utf8.Po
+ -rm -f ./$(DEPDIR)/fribidi-main.Po
+ -rm -f ./$(DEPDIR)/getopt.Po
+ -rm -f ./$(DEPDIR)/getopt1.Po
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
clean-binPROGRAMS clean-generic clean-libtool \
clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \
distclean-compile distclean-generic distclean-libtool \
#include <fribidi-deprecated.h>
#include <stdio.h>
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
#ifdef STDC_HEADERS
# include <stdlib.h>
# include <stddef.h>
#include <fribidi-deprecated.h>
#include <stdio.h>
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
#ifdef STDC_HEADERS
# include <stdlib.h>
# include <stddef.h>
/* Create a bidi string. */
base = input_base_direction;
-FRIBIDI_BEGIN_IGNORE_DEPRECATIONS
+
log2vis = fribidi_log2vis (logical, len, &base,
/* output */
visual, ltov, vtol, levels);
-FRIBIDI_END_IGNORE_DEPRECATIONS
+
if (log2vis)
{
printf ("%-*s => ", padding_width, S_);
/* Remove explicit marks, if asked for. */
-FRIBIDI_BEGIN_IGNORE_DEPRECATIONS
+
if (do_clean)
len =
fribidi_remove_bidi_marks (visual, len, ltov, vtol,
levels);
-FRIBIDI_END_IGNORE_DEPRECATIONS
if (show_visual)
{
fribidi = executable('fribidi',
'fribidi-main.c', 'getopt.c', 'getopt1.c', fribidi_unicode_version_h,
- c_args: ['-DHAVE_CONFIG_H'],
+ c_args: ['-DHAVE_CONFIG_H'] + visibility_args,
include_directories: incs,
link_with: libfribidi,
install: true)
executable('fribidi-benchmark',
'fribidi-benchmark.c', 'getopt.c', 'getopt1.c', fribidi_unicode_version_h,
- c_args: ['-DHAVE_CONFIG_H'],
+ c_args: ['-DHAVE_CONFIG_H'] + visibility_args,
include_directories: incs,
link_with: libfribidi,
install: false)
executable('fribidi-bidi-types',
'fribidi-bidi-types.c', fribidi_unicode_version_h,
- c_args: ['-DHAVE_CONFIG_H'],
+ c_args: ['-DHAVE_CONFIG_H'] + visibility_args,
include_directories: incs,
link_with: libfribidi,
install: false)
executable('fribidi-caprtl2utf8',
'fribidi-caprtl2utf8.c', fribidi_unicode_version_h,
- c_args: ['-DHAVE_CONFIG_H'],
+ c_args: ['-DHAVE_CONFIG_H'] + visibility_args,
include_directories: incs,
link_with: libfribidi,
install: false)
-#!/bin/sh
+#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
-scriptversion=2016-01-11.22; # UTC
+scriptversion=2018-03-07.03; # UTC
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
# 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, see <http://www.gnu.org/licenses/>.
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# Local Variables:
# mode: shell-script
# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
-#!/bin/sh
+#! /bin/sh
# Attempt to guess a canonical system name.
-# Copyright 1992-2017 Free Software Foundation, Inc.
+# Copyright 1992-2018 Free Software Foundation, Inc.
-timestamp='2017-08-08'
+timestamp='2018-08-29'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, see <http://www.gnu.org/licenses/>.
+# along with this program; if not, see <https://www.gnu.org/licenses/>.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
#
# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
+# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
#
# Please send patches to <config-patches@gnu.org>.
Output the configuration name of the system \`$me' is run on.
-Operation modes:
+Options:
-h, --help print this help, then exit
-t, --time-stamp print date of last modification, then exit
-v, --version print version number, then exit
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright 1992-2017 Free Software Foundation, Inc.
+Copyright 1992-2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
exit 1
fi
-trap 'exit 1' 1 2 15
-
# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
# compiler to aid in system detection is discouraged as it requires
# temporary files to be created and, as you can see below, it is a
# Portable tmp directory creation inspired by the Autoconf team.
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,) echo "int x;" > $dummy.c ;
- for c in cc gcc c89 c99 ; do
- if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
- CC_FOR_BUILD="$c"; break ;
- fi ;
- done ;
- if test x"$CC_FOR_BUILD" = x ; then
- CC_FOR_BUILD=no_compiler_found ;
- fi
- ;;
- ,,*) CC_FOR_BUILD=$CC ;;
- ,*,*) CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
+tmp=
+# shellcheck disable=SC2172
+trap 'test -z "$tmp" || rm -fr "$tmp"' 1 2 13 15
+trap 'exitcode=$?; test -z "$tmp" || rm -fr "$tmp"; exit $exitcode' 0
+
+set_cc_for_build() {
+ : "${TMPDIR=/tmp}"
+ # shellcheck disable=SC2039
+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
+ dummy=$tmp/dummy
+ case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in
+ ,,) echo "int x;" > "$dummy.c"
+ for driver in cc gcc c89 c99 ; do
+ if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
+ CC_FOR_BUILD="$driver"
+ break
+ fi
+ done
+ if test x"$CC_FOR_BUILD" = x ; then
+ CC_FOR_BUILD=no_compiler_found
+ fi
+ ;;
+ ,,*) CC_FOR_BUILD=$CC ;;
+ ,*,*) CC_FOR_BUILD=$HOST_CC ;;
+ esac
+}
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
+if test -f /.attbin/uname ; then
PATH=$PATH:/.attbin ; export PATH
fi
UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-case "${UNAME_SYSTEM}" in
+case "$UNAME_SYSTEM" in
Linux|GNU|GNU/*)
# If the system lacks a compiler, then just pick glibc.
# We could probably try harder.
LIBC=gnu
- eval $set_cc_for_build
- cat <<-EOF > $dummy.c
+ set_cc_for_build
+ cat <<-EOF > "$dummy.c"
#include <features.h>
#if defined(__UCLIBC__)
LIBC=uclibc
LIBC=gnu
#endif
EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
+ eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"
+
+ # If ldd exists, use it to detect musl libc.
+ if command -v ldd >/dev/null && \
+ ldd --version 2>&1 | grep -q ^musl
+ then
+ LIBC=musl
+ fi
;;
esac
# Note: order is significant - the case branches are not exclusive.
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
*:NetBSD:*:*)
# NetBSD (nbsd) targets should (where applicable) match one or
# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
# portion of the name. We always set it to "unknown".
sysctl="sysctl -n hw.machine_arch"
UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
- /sbin/$sysctl 2>/dev/null || \
- /usr/sbin/$sysctl 2>/dev/null || \
+ "/sbin/$sysctl" 2>/dev/null || \
+ "/usr/sbin/$sysctl" 2>/dev/null || \
echo unknown)`
- case "${UNAME_MACHINE_ARCH}" in
+ case "$UNAME_MACHINE_ARCH" in
armeb) machine=armeb-unknown ;;
arm*) machine=arm-unknown ;;
sh3el) machine=shl-unknown ;;
sh3eb) machine=sh-unknown ;;
sh5el) machine=sh5le-unknown ;;
earmv*)
- arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
- endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'`
- machine=${arch}${endian}-unknown
+ arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
+ endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
+ machine="${arch}${endian}"-unknown
;;
- *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
+ *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
esac
# The Operating System including object format, if it has switched
# to ELF recently (or will in the future) and ABI.
- case "${UNAME_MACHINE_ARCH}" in
+ case "$UNAME_MACHINE_ARCH" in
earm*)
os=netbsdelf
;;
arm*|i386|m68k|ns32k|sh3*|sparc|vax)
- eval $set_cc_for_build
+ set_cc_for_build
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ELF__
then
;;
esac
# Determine ABI tags.
- case "${UNAME_MACHINE_ARCH}" in
+ case "$UNAME_MACHINE_ARCH" in
earm*)
expr='s/^earmv[0-9]/-eabi/;s/eb$//'
- abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"`
+ abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
;;
esac
# The OS release
# thus, need a distinct triplet. However, they do not need
# kernel version information, so it can be replaced with a
# suitable tag, in the style of linux-gnu.
- case "${UNAME_VERSION}" in
+ case "$UNAME_VERSION" in
Debian*)
release='-gnu'
;;
*)
- release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2`
+ release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`
;;
esac
# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
# contains redundant information, the shorter form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
- echo "${machine}-${os}${release}${abi}"
+ echo "$machine-${os}${release}${abi-}"
exit ;;
*:Bitrig:*:*)
UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
- echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
+ echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
exit ;;
*:OpenBSD:*:*)
UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
- echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
+ echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
exit ;;
*:LibertyBSD:*:*)
UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
- echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE}
+ echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
+ exit ;;
+ *:MidnightBSD:*:*)
+ echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
exit ;;
*:ekkoBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
exit ;;
*:SolidBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
exit ;;
macppc:MirBSD:*:*)
- echo powerpc-unknown-mirbsd${UNAME_RELEASE}
+ echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
exit ;;
*:MirBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
exit ;;
*:Sortix:*:*)
- echo ${UNAME_MACHINE}-unknown-sortix
+ echo "$UNAME_MACHINE"-unknown-sortix
exit ;;
*:Redox:*:*)
- echo ${UNAME_MACHINE}-unknown-redox
+ echo "$UNAME_MACHINE"-unknown-redox
exit ;;
+ mips:OSF1:*.*)
+ echo mips-dec-osf1
+ exit ;;
alpha:OSF1:*:*)
case $UNAME_RELEASE in
*4.0)
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
+ echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`"
# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
exitcode=$?
trap '' 0
exit $exitcode ;;
- Alpha\ *:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # Should we change UNAME_MACHINE based on the output of uname instead
- # of the specific Alpha model?
- echo alpha-pc-interix
- exit ;;
- 21064:Windows_NT:50:3)
- echo alpha-dec-winnt3.5
- exit ;;
Amiga*:UNIX_System_V:4.0:*)
echo m68k-unknown-sysv4
exit ;;
*:[Aa]miga[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-amigaos
+ echo "$UNAME_MACHINE"-unknown-amigaos
exit ;;
*:[Mm]orph[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-morphos
+ echo "$UNAME_MACHINE"-unknown-morphos
exit ;;
*:OS/390:*:*)
echo i370-ibm-openedition
echo powerpc-ibm-os400
exit ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix${UNAME_RELEASE}
+ echo arm-acorn-riscix"$UNAME_RELEASE"
exit ;;
arm*:riscos:*:*|arm*:RISCOS:*:*)
echo arm-unknown-riscos
sparc) echo sparc-icl-nx7; exit ;;
esac ;;
s390x:SunOS:*:*)
- echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
exit ;;
sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
exit ;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
exit ;;
i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
- echo i386-pc-auroraux${UNAME_RELEASE}
+ echo i386-pc-auroraux"$UNAME_RELEASE"
exit ;;
i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
- eval $set_cc_for_build
- SUN_ARCH=i386
- # If there is a compiler, see if it is configured for 64-bit objects.
- # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
- # This test works for both compilers.
- if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
- if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- SUN_ARCH=x86_64
- fi
- fi
- echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ UNAME_REL="`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
+ case `isainfo -b` in
+ 32)
+ echo i386-pc-solaris2"$UNAME_REL"
+ ;;
+ 64)
+ echo x86_64-pc-solaris2"$UNAME_REL"
+ ;;
+ esac
exit ;;
sun4*:SunOS:6*:*)
# According to config.sub, this is the proper way to canonicalize
# SunOS6. Hard to guess exactly what SunOS6 will be like, but
# it's likely to be more like Solaris than SunOS4.
- echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
exit ;;
sun4*:SunOS:*:*)
case "`/usr/bin/arch -k`" in
;;
esac
# Japanese Language versions have a version number like `4.1.3-JL'.
- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
+ echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"
exit ;;
sun3*:SunOS:*:*)
- echo m68k-sun-sunos${UNAME_RELEASE}
+ echo m68k-sun-sunos"$UNAME_RELEASE"
exit ;;
sun*:*:4.2BSD:*)
UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
- test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3
+ test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
case "`/bin/arch`" in
sun3)
- echo m68k-sun-sunos${UNAME_RELEASE}
+ echo m68k-sun-sunos"$UNAME_RELEASE"
;;
sun4)
- echo sparc-sun-sunos${UNAME_RELEASE}
+ echo sparc-sun-sunos"$UNAME_RELEASE"
;;
esac
exit ;;
aushp:SunOS:*:*)
- echo sparc-auspex-sunos${UNAME_RELEASE}
+ echo sparc-auspex-sunos"$UNAME_RELEASE"
exit ;;
# The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not
# MiNT. But MiNT is downward compatible to TOS, so this should
# be no problem.
atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
+ echo m68k-atari-mint"$UNAME_RELEASE"
exit ;;
atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
+ echo m68k-atari-mint"$UNAME_RELEASE"
exit ;;
*falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
+ echo m68k-atari-mint"$UNAME_RELEASE"
exit ;;
milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint${UNAME_RELEASE}
+ echo m68k-milan-mint"$UNAME_RELEASE"
exit ;;
hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint${UNAME_RELEASE}
+ echo m68k-hades-mint"$UNAME_RELEASE"
exit ;;
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint${UNAME_RELEASE}
+ echo m68k-unknown-mint"$UNAME_RELEASE"
exit ;;
m68k:machten:*:*)
- echo m68k-apple-machten${UNAME_RELEASE}
+ echo m68k-apple-machten"$UNAME_RELEASE"
exit ;;
powerpc:machten:*:*)
- echo powerpc-apple-machten${UNAME_RELEASE}
+ echo powerpc-apple-machten"$UNAME_RELEASE"
exit ;;
RISC*:Mach:*:*)
echo mips-dec-mach_bsd4.3
exit ;;
RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix${UNAME_RELEASE}
+ echo mips-dec-ultrix"$UNAME_RELEASE"
exit ;;
VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix${UNAME_RELEASE}
+ echo vax-dec-ultrix"$UNAME_RELEASE"
exit ;;
2020:CLIX:*:* | 2430:CLIX:*:*)
- echo clipper-intergraph-clix${UNAME_RELEASE}
+ echo clipper-intergraph-clix"$UNAME_RELEASE"
exit ;;
mips:*:*:UMIPS | mips:*:*:RISCos)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
#ifdef __cplusplus
#include <stdio.h> /* for printf() prototype */
int main (int argc, char *argv[]) {
#endif
#if defined (host_mips) && defined (MIPSEB)
#if defined (SYSTYPE_SYSV)
- printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
+ printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
#endif
#if defined (SYSTYPE_SVR4)
- printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
+ printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
#endif
#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
- printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
+ printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
#endif
#endif
exit (-1);
}
EOF
- $CC_FOR_BUILD -o $dummy $dummy.c &&
- dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
- SYSTEM_NAME=`$dummy $dummyarg` &&
+ $CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
+ dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
+ SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
{ echo "$SYSTEM_NAME"; exit; }
- echo mips-mips-riscos${UNAME_RELEASE}
+ echo mips-mips-riscos"$UNAME_RELEASE"
exit ;;
Motorola:PowerMAX_OS:*:*)
echo powerpc-motorola-powermax
AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p`
- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+ if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]
then
- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
- [ ${TARGET_BINARY_INTERFACE}x = x ]
+ if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \
+ [ "$TARGET_BINARY_INTERFACE"x = x ]
then
- echo m88k-dg-dgux${UNAME_RELEASE}
+ echo m88k-dg-dgux"$UNAME_RELEASE"
else
- echo m88k-dg-dguxbcs${UNAME_RELEASE}
+ echo m88k-dg-dguxbcs"$UNAME_RELEASE"
fi
else
- echo i586-dg-dgux${UNAME_RELEASE}
+ echo i586-dg-dgux"$UNAME_RELEASE"
fi
exit ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3)
echo m68k-tektronix-bsd
exit ;;
*:IRIX*:*:*)
- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
+ echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"
exit ;;
????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
if [ -x /usr/bin/oslevel ] ; then
IBM_REV=`/usr/bin/oslevel`
else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
fi
- echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+ echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
exit ;;
*:AIX:2:3)
if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
#include <sys/systemcfg.h>
main()
exit(0);
}
EOF
- if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
+ if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
then
echo "$SYSTEM_NAME"
else
exit ;;
*:AIX:*:[4567])
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
- if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
+ if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000
else
IBM_ARCH=powerpc
IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
fi
- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
+ echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
exit ;;
*:AIX:*:*)
echo rs6000-ibm-aix
exit ;;
- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
+ ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
echo romp-ibm-bsd4.4
exit ;;
ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
+ echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to
exit ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*)
echo rs6000-bull-bosx
echo m68k-hp-bsd4.4
exit ;;
9000/[34678]??:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- case "${UNAME_MACHINE}" in
- 9000/31? ) HP_ARCH=m68000 ;;
- 9000/[34]?? ) HP_ARCH=m68k ;;
+ HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
+ case "$UNAME_MACHINE" in
+ 9000/31?) HP_ARCH=m68000 ;;
+ 9000/[34]??) HP_ARCH=m68k ;;
9000/[678][0-9][0-9])
if [ -x /usr/bin/getconf ]; then
sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
- case "${sc_cpu_version}" in
+ case "$sc_cpu_version" in
523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
532) # CPU_PA_RISC2_0
- case "${sc_kernel_bits}" in
+ case "$sc_kernel_bits" in
32) HP_ARCH=hppa2.0n ;;
64) HP_ARCH=hppa2.0w ;;
'') HP_ARCH=hppa2.0 ;; # HP-UX 10.20
esac ;;
esac
fi
- if [ "${HP_ARCH}" = "" ]; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ if [ "$HP_ARCH" = "" ]; then
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
#define _HPUX_SOURCE
#include <stdlib.h>
exit (0);
}
EOF
- (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
+ (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`
test -z "$HP_ARCH" && HP_ARCH=hppa
fi ;;
esac
- if [ ${HP_ARCH} = hppa2.0w ]
+ if [ "$HP_ARCH" = hppa2.0w ]
then
- eval $set_cc_for_build
+ set_cc_for_build
# hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
# 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
HP_ARCH=hppa64
fi
fi
- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
+ echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
exit ;;
ia64:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- echo ia64-hp-hpux${HPUX_REV}
+ HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
+ echo ia64-hp-hpux"$HPUX_REV"
exit ;;
3050*:HI-UX:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
#include <unistd.h>
int
main ()
exit (0);
}
EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
+ $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
{ echo "$SYSTEM_NAME"; exit; }
echo unknown-hitachi-hiuxwe2
exit ;;
- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
+ 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
echo hppa1.1-hp-bsd
exit ;;
9000/8??:4.3bsd:*:*)
*9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
echo hppa1.0-hp-mpeix
exit ;;
- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
+ hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
echo hppa1.1-hp-osf
exit ;;
hp8??:OSF1:*:*)
exit ;;
i*86:OSF1:*:*)
if [ -x /usr/sbin/sysversion ] ; then
- echo ${UNAME_MACHINE}-unknown-osf1mk
+ echo "$UNAME_MACHINE"-unknown-osf1mk
else
- echo ${UNAME_MACHINE}-unknown-osf1
+ echo "$UNAME_MACHINE"-unknown-osf1
fi
exit ;;
parisc*:Lites*:*:*)
echo c4-convex-bsd
exit ;;
CRAY*Y-MP:*:*:*)
- echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
exit ;;
CRAY*[A-Z]90:*:*:*)
- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
+ echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-e 's/\.[^.]*$/.X/'
exit ;;
CRAY*TS:*:*:*)
- echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
exit ;;
CRAY*T3E:*:*:*)
- echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
exit ;;
CRAY*SV1:*:*:*)
- echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
exit ;;
*:UNICOS/mp:*:*)
- echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
exit ;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+ FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit ;;
5000:UNIX_System_V:4.*:*)
FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
+ FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
exit ;;
sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi${UNAME_RELEASE}
+ echo sparc-unknown-bsdi"$UNAME_RELEASE"
exit ;;
*:BSD/OS:*:*)
- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
+ exit ;;
+ arm:FreeBSD:*:*)
+ UNAME_PROCESSOR=`uname -p`
+ set_cc_for_build
+ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ARM_PCS_VFP
+ then
+ echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi
+ else
+ echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf
+ fi
exit ;;
*:FreeBSD:*:*)
UNAME_PROCESSOR=`/usr/bin/uname -p`
- case ${UNAME_PROCESSOR} in
+ case "$UNAME_PROCESSOR" in
amd64)
UNAME_PROCESSOR=x86_64 ;;
i386)
UNAME_PROCESSOR=i586 ;;
esac
- echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+ echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
exit ;;
i*:CYGWIN*:*)
- echo ${UNAME_MACHINE}-pc-cygwin
+ echo "$UNAME_MACHINE"-pc-cygwin
exit ;;
*:MINGW64*:*)
- echo ${UNAME_MACHINE}-pc-mingw64
+ echo "$UNAME_MACHINE"-pc-mingw64
exit ;;
*:MINGW*:*)
- echo ${UNAME_MACHINE}-pc-mingw32
+ echo "$UNAME_MACHINE"-pc-mingw32
exit ;;
*:MSYS*:*)
- echo ${UNAME_MACHINE}-pc-msys
- exit ;;
- i*:windows32*:*)
- # uname -m includes "-pc" on this system.
- echo ${UNAME_MACHINE}-mingw32
+ echo "$UNAME_MACHINE"-pc-msys
exit ;;
i*:PW*:*)
- echo ${UNAME_MACHINE}-pc-pw32
+ echo "$UNAME_MACHINE"-pc-pw32
exit ;;
*:Interix*:*)
- case ${UNAME_MACHINE} in
+ case "$UNAME_MACHINE" in
x86)
- echo i586-pc-interix${UNAME_RELEASE}
+ echo i586-pc-interix"$UNAME_RELEASE"
exit ;;
authenticamd | genuineintel | EM64T)
- echo x86_64-unknown-interix${UNAME_RELEASE}
+ echo x86_64-unknown-interix"$UNAME_RELEASE"
exit ;;
IA64)
- echo ia64-unknown-interix${UNAME_RELEASE}
+ echo ia64-unknown-interix"$UNAME_RELEASE"
exit ;;
esac ;;
- [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
- echo i${UNAME_MACHINE}-pc-mks
- exit ;;
- 8664:Windows_NT:*)
- echo x86_64-pc-mks
- exit ;;
- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
- # UNAME_MACHINE based on the output of uname instead of i386?
- echo i586-pc-interix
- exit ;;
i*:UWIN*:*)
- echo ${UNAME_MACHINE}-pc-uwin
+ echo "$UNAME_MACHINE"-pc-uwin
exit ;;
amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
echo x86_64-unknown-cygwin
exit ;;
- p*:CYGWIN*:*)
- echo powerpcle-unknown-cygwin
- exit ;;
prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
exit ;;
*:GNU:*:*)
# the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+ echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"
exit ;;
*:GNU/*:*:*)
# other systems with GNU libc and userland
- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
+ echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
exit ;;
- i*86:Minix:*:*)
- echo ${UNAME_MACHINE}-pc-minix
+ *:Minix:*:*)
+ echo "$UNAME_MACHINE"-unknown-minix
exit ;;
aarch64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
aarch64_be:Linux:*:*)
UNAME_MACHINE=aarch64_be
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
alpha:Linux:*:*)
case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
esac
objdump --private-headers /bin/sh | grep -q ld.so.1
if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
arc:Linux:*:* | arceb:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
arm*:Linux:*:*)
- eval $set_cc_for_build
+ set_cc_for_build
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_EABI__
then
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
else
if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_PCS_VFP
then
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
else
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
fi
fi
exit ;;
avr32*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
cris:Linux:*:*)
- echo ${UNAME_MACHINE}-axis-linux-${LIBC}
+ echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
exit ;;
crisv32:Linux:*:*)
- echo ${UNAME_MACHINE}-axis-linux-${LIBC}
+ echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
exit ;;
e2k:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
frv:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
hexagon:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
i*86:Linux:*:*)
- echo ${UNAME_MACHINE}-pc-linux-${LIBC}
+ echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
exit ;;
ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
k1om:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
m32r*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
m68*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
mips:Linux:*:* | mips64:Linux:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
#undef CPU
#undef ${UNAME_MACHINE}
#undef ${UNAME_MACHINE}el
#endif
#endif
EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
+ eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`"
+ test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; }
;;
mips64el:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
openrisc*:Linux:*:*)
- echo or1k-unknown-linux-${LIBC}
+ echo or1k-unknown-linux-"$LIBC"
exit ;;
or32:Linux:*:* | or1k*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
padre:Linux:*:*)
- echo sparc-unknown-linux-${LIBC}
+ echo sparc-unknown-linux-"$LIBC"
exit ;;
parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-${LIBC}
+ echo hppa64-unknown-linux-"$LIBC"
exit ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
- PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
- *) echo hppa-unknown-linux-${LIBC} ;;
+ PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
+ PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
+ *) echo hppa-unknown-linux-"$LIBC" ;;
esac
exit ;;
ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-${LIBC}
+ echo powerpc64-unknown-linux-"$LIBC"
exit ;;
ppc:Linux:*:*)
- echo powerpc-unknown-linux-${LIBC}
+ echo powerpc-unknown-linux-"$LIBC"
exit ;;
ppc64le:Linux:*:*)
- echo powerpc64le-unknown-linux-${LIBC}
+ echo powerpc64le-unknown-linux-"$LIBC"
exit ;;
ppcle:Linux:*:*)
- echo powerpcle-unknown-linux-${LIBC}
+ echo powerpcle-unknown-linux-"$LIBC"
exit ;;
riscv32:Linux:*:* | riscv64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
s390:Linux:*:* | s390x:Linux:*:*)
- echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
+ echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
exit ;;
sh64*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
sh*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
sparc:Linux:*:* | sparc64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
tile*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
vax:Linux:*:*)
- echo ${UNAME_MACHINE}-dec-linux-${LIBC}
+ echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
exit ;;
x86_64:Linux:*:*)
- echo ${UNAME_MACHINE}-pc-linux-${LIBC}
+ echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
exit ;;
xtensa*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
# I am not positive that other SVR4 systems won't match this,
# I just have to hope. -- rms.
# Use sysv4.2uw... so that sysv4* matches it.
- echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+ echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
exit ;;
i*86:OS/2:*:*)
# If we were able to find `uname', then EMX Unix compatibility
# is probably installed.
- echo ${UNAME_MACHINE}-pc-os2-emx
+ echo "$UNAME_MACHINE"-pc-os2-emx
exit ;;
i*86:XTS-300:*:STOP)
- echo ${UNAME_MACHINE}-unknown-stop
+ echo "$UNAME_MACHINE"-unknown-stop
exit ;;
i*86:atheos:*:*)
- echo ${UNAME_MACHINE}-unknown-atheos
+ echo "$UNAME_MACHINE"-unknown-atheos
exit ;;
i*86:syllable:*:*)
- echo ${UNAME_MACHINE}-pc-syllable
+ echo "$UNAME_MACHINE"-pc-syllable
exit ;;
i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
- echo i386-unknown-lynxos${UNAME_RELEASE}
+ echo i386-unknown-lynxos"$UNAME_RELEASE"
exit ;;
i*86:*DOS:*:*)
- echo ${UNAME_MACHINE}-pc-msdosdjgpp
+ echo "$UNAME_MACHINE"-pc-msdosdjgpp
exit ;;
- i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
- UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
+ i*86:*:4.*:*)
+ UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
- echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
+ echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
else
- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+ echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
fi
exit ;;
i*86:*:5:[678]*)
*Pentium) UNAME_MACHINE=i586 ;;
*Pent*|*Celeron) UNAME_MACHINE=i686 ;;
esac
- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+ echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}"
exit ;;
i*86:*:3.2:*)
if test -f /usr/options/cb.name; then
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
- echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
+ echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL"
elif /bin/uname -X 2>/dev/null >/dev/null ; then
UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
&& UNAME_MACHINE=i686
(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686
- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
+ echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
else
- echo ${UNAME_MACHINE}-pc-sysv32
+ echo "$UNAME_MACHINE"-pc-sysv32
fi
exit ;;
pc:*:*:*)
exit ;;
i860:*:4.*:*) # i860-SVR4
if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
- echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
+ echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4
else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
+ echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4
fi
exit ;;
mini*:CTIX:SYS*5:*)
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& { echo i486-ncr-sysv4; exit; } ;;
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
+ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos${UNAME_RELEASE}
+ echo m68k-unknown-lynxos"$UNAME_RELEASE"
exit ;;
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
exit ;;
TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos${UNAME_RELEASE}
+ echo sparc-unknown-lynxos"$UNAME_RELEASE"
exit ;;
rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos${UNAME_RELEASE}
+ echo rs6000-unknown-lynxos"$UNAME_RELEASE"
exit ;;
PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
- echo powerpc-unknown-lynxos${UNAME_RELEASE}
+ echo powerpc-unknown-lynxos"$UNAME_RELEASE"
exit ;;
SM[BE]S:UNIX_SV:*:*)
- echo mips-dde-sysv${UNAME_RELEASE}
+ echo mips-dde-sysv"$UNAME_RELEASE"
exit ;;
RM*:ReliantUNIX-*:*:*)
echo mips-sni-sysv4
*:SINIX-*:*:*)
if uname -p 2>/dev/null >/dev/null ; then
UNAME_MACHINE=`(uname -p) 2>/dev/null`
- echo ${UNAME_MACHINE}-sni-sysv4
+ echo "$UNAME_MACHINE"-sni-sysv4
else
echo ns32k-sni-sysv
fi
exit ;;
i*86:VOS:*:*)
# From Paul.Green@stratus.com.
- echo ${UNAME_MACHINE}-stratus-vos
+ echo "$UNAME_MACHINE"-stratus-vos
exit ;;
*:VOS:*:*)
# From Paul.Green@stratus.com.
echo hppa1.1-stratus-vos
exit ;;
mc68*:A/UX:*:*)
- echo m68k-apple-aux${UNAME_RELEASE}
+ echo m68k-apple-aux"$UNAME_RELEASE"
exit ;;
news*:NEWS-OS:6*:*)
echo mips-sony-newsos6
exit ;;
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
if [ -d /usr/nec ]; then
- echo mips-nec-sysv${UNAME_RELEASE}
+ echo mips-nec-sysv"$UNAME_RELEASE"
else
- echo mips-unknown-sysv${UNAME_RELEASE}
+ echo mips-unknown-sysv"$UNAME_RELEASE"
fi
exit ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
echo x86_64-unknown-haiku
exit ;;
SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux${UNAME_RELEASE}
+ echo sx4-nec-superux"$UNAME_RELEASE"
exit ;;
SX-5:SUPER-UX:*:*)
- echo sx5-nec-superux${UNAME_RELEASE}
+ echo sx5-nec-superux"$UNAME_RELEASE"
exit ;;
SX-6:SUPER-UX:*:*)
- echo sx6-nec-superux${UNAME_RELEASE}
+ echo sx6-nec-superux"$UNAME_RELEASE"
exit ;;
SX-7:SUPER-UX:*:*)
- echo sx7-nec-superux${UNAME_RELEASE}
+ echo sx7-nec-superux"$UNAME_RELEASE"
exit ;;
SX-8:SUPER-UX:*:*)
- echo sx8-nec-superux${UNAME_RELEASE}
+ echo sx8-nec-superux"$UNAME_RELEASE"
exit ;;
SX-8R:SUPER-UX:*:*)
- echo sx8r-nec-superux${UNAME_RELEASE}
+ echo sx8r-nec-superux"$UNAME_RELEASE"
exit ;;
SX-ACE:SUPER-UX:*:*)
- echo sxace-nec-superux${UNAME_RELEASE}
+ echo sxace-nec-superux"$UNAME_RELEASE"
exit ;;
Power*:Rhapsody:*:*)
- echo powerpc-apple-rhapsody${UNAME_RELEASE}
+ echo powerpc-apple-rhapsody"$UNAME_RELEASE"
exit ;;
*:Rhapsody:*:*)
- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
exit ;;
*:Darwin:*:*)
UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
- eval $set_cc_for_build
+ set_cc_for_build
if test "$UNAME_PROCESSOR" = unknown ; then
UNAME_PROCESSOR=powerpc
fi
- if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
+ if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then
if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
# that Apple uses in portable devices.
UNAME_PROCESSOR=x86_64
fi
- echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+ echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
exit ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
UNAME_PROCESSOR=`uname -p`
UNAME_PROCESSOR=i386
UNAME_MACHINE=pc
fi
- echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
+ echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
exit ;;
*:QNX:*:4*)
echo i386-pc-qnx
exit ;;
NEO-*:NONSTOP_KERNEL:*:*)
- echo neo-tandem-nsk${UNAME_RELEASE}
+ echo neo-tandem-nsk"$UNAME_RELEASE"
exit ;;
NSE-*:NONSTOP_KERNEL:*:*)
- echo nse-tandem-nsk${UNAME_RELEASE}
+ echo nse-tandem-nsk"$UNAME_RELEASE"
exit ;;
NSR-*:NONSTOP_KERNEL:*:*)
- echo nsr-tandem-nsk${UNAME_RELEASE}
+ echo nsr-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
+ NSV-*:NONSTOP_KERNEL:*:*)
+ echo nsv-tandem-nsk"$UNAME_RELEASE"
exit ;;
NSX-*:NONSTOP_KERNEL:*:*)
- echo nsx-tandem-nsk${UNAME_RELEASE}
+ echo nsx-tandem-nsk"$UNAME_RELEASE"
exit ;;
*:NonStop-UX:*:*)
echo mips-compaq-nonstopux
echo bs2000-siemens-sysv
exit ;;
DS/*:UNIX_System_V:*:*)
- echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
exit ;;
*:Plan9:*:*)
# "uname -m" is not consistent, so use $cputype instead. 386
# is converted to i386 for consistency with other x86
# operating systems.
+ # shellcheck disable=SC2154
if test "$cputype" = 386; then
UNAME_MACHINE=i386
else
UNAME_MACHINE="$cputype"
fi
- echo ${UNAME_MACHINE}-unknown-plan9
+ echo "$UNAME_MACHINE"-unknown-plan9
exit ;;
*:TOPS-10:*:*)
echo pdp10-unknown-tops10
echo pdp10-unknown-its
exit ;;
SEI:*:*:SEIUX)
- echo mips-sei-seiux${UNAME_RELEASE}
+ echo mips-sei-seiux"$UNAME_RELEASE"
exit ;;
*:DragonFly:*:*)
- echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+ echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
exit ;;
*:*VMS:*:*)
UNAME_MACHINE=`(uname -p) 2>/dev/null`
- case "${UNAME_MACHINE}" in
+ case "$UNAME_MACHINE" in
A*) echo alpha-dec-vms ; exit ;;
I*) echo ia64-dec-vms ; exit ;;
V*) echo vax-dec-vms ; exit ;;
echo i386-pc-xenix
exit ;;
i*86:skyos:*:*)
- echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ .*$//'`
+ echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"
exit ;;
i*86:rdos:*:*)
- echo ${UNAME_MACHINE}-pc-rdos
+ echo "$UNAME_MACHINE"-pc-rdos
exit ;;
i*86:AROS:*:*)
- echo ${UNAME_MACHINE}-pc-aros
+ echo "$UNAME_MACHINE"-pc-aros
exit ;;
x86_64:VMkernel:*:*)
- echo ${UNAME_MACHINE}-unknown-esx
+ echo "$UNAME_MACHINE"-unknown-esx
exit ;;
amd64:Isilon\ OneFS:*:*)
echo x86_64-unknown-onefs
exit ;;
esac
+echo "$0: unable to guess system type" >&2
+
+case "$UNAME_MACHINE:$UNAME_SYSTEM" in
+ mips:Linux | mips64:Linux)
+ # If we got here on MIPS GNU/Linux, output extra information.
+ cat >&2 <<EOF
+
+NOTE: MIPS GNU/Linux systems require a C compiler to fully recognize
+the system type. Please install a C compiler and try again.
+EOF
+ ;;
+esac
+
cat >&2 <<EOF
-$0: unable to guess system type
This script (version $timestamp), has failed to recognize the
operating system you are using. If your script is old, overwrite *all*
copies of config.guess and config.sub with the latest versions from:
- http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
+ https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
and
- http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
+ https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
If $0 has already been updated, send the following data and any
information you think might be pertinent to config-patches@gnu.org to
/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
+UNAME_MACHINE = "$UNAME_MACHINE"
+UNAME_RELEASE = "$UNAME_RELEASE"
+UNAME_SYSTEM = "$UNAME_SYSTEM"
+UNAME_VERSION = "$UNAME_VERSION"
EOF
exit 1
# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "timestamp='"
# time-stamp-format: "%:y-%02m-%02d"
# time-stamp-end: "'"
-#!/bin/sh
+#! /bin/sh
# Configuration validation subroutine script.
-# Copyright 1992-2017 Free Software Foundation, Inc.
+# Copyright 1992-2018 Free Software Foundation, Inc.
-timestamp='2017-04-02'
+timestamp='2018-08-29'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, see <http://www.gnu.org/licenses/>.
+# along with this program; if not, see <https://www.gnu.org/licenses/>.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# Otherwise, we print the canonical config type on stdout and succeed.
# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
+# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
# This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases
Canonicalize a configuration name.
-Operation modes:
+Options:
-h, --help print this help, then exit
-t, --time-stamp print date of last modification, then exit
-v, --version print version number, then exit
version="\
GNU config.sub ($timestamp)
-Copyright 1992-2017 Free Software Foundation, Inc.
+Copyright 1992-2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
*local*)
# First pass through any local machine types.
- echo $1
+ echo "$1"
exit ;;
* )
exit 1;;
esac
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
- nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
- linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
- knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
- kopensolaris*-gnu* | cloudabi*-eabi* | \
- storm-chaos* | os2-emx* | rtmk-nova*)
- os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
- ;;
- android-linux)
- os=-linux-android
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
- ;;
- *)
- basic_machine=`echo $1 | sed 's/-[^-]*$//'`
- if [ $basic_machine != $1 ]
- then os=`echo $1 | sed 's/.*-/-/'`
- else os=; fi
- ;;
-esac
+# Split fields of configuration type
+IFS="-" read -r field1 field2 field3 field4 <<EOF
+$1
+EOF
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work. We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
- -sun*os*)
- # Prevent following clause from handling this invalid input.
- ;;
- -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
- -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
- -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
- -apple | -axis | -knuth | -cray | -microblaze*)
- os=
- basic_machine=$1
- ;;
- -bluegene*)
- os=-cnk
- ;;
- -sim | -cisco | -oki | -wec | -winbond)
- os=
- basic_machine=$1
- ;;
- -scout)
- ;;
- -wrs)
- os=-vxworks
- basic_machine=$1
- ;;
- -chorusos*)
- os=-chorusos
- basic_machine=$1
- ;;
- -chorusrdb)
- os=-chorusrdb
- basic_machine=$1
- ;;
- -hiux*)
- os=-hiuxwe2
- ;;
- -sco6)
- os=-sco5v6
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5)
- os=-sco3.2v5
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco4)
- os=-sco3.2v4
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2.[4-9]*)
- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2v[4-9]*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5v6*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco*)
- os=-sco3.2v2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -udk*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -isc)
- os=-isc2.2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -clix*)
- basic_machine=clipper-intergraph
- ;;
- -isc*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -lynx*178)
- os=-lynxos178
- ;;
- -lynx*5)
- os=-lynxos5
- ;;
- -lynx*)
- os=-lynxos
+# Separate into logical components for further validation
+case $1 in
+ *-*-*-*-*)
+ echo Invalid configuration \`"$1"\': more than four components >&2
+ exit 1
;;
- -ptx*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
+ *-*-*-*)
+ basic_machine=$field1-$field2
+ os=$field3-$field4
;;
- -windowsnt*)
- os=`echo $os | sed -e 's/windowsnt/winnt/'`
+ *-*-*)
+ # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
+ # parts
+ maybe_os=$field2-$field3
+ case $maybe_os in
+ nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \
+ | linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \
+ | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
+ | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
+ | storm-chaos* | os2-emx* | rtmk-nova*)
+ basic_machine=$field1
+ os=$maybe_os
+ ;;
+ android-linux)
+ basic_machine=$field1-unknown
+ os=linux-android
+ ;;
+ *)
+ basic_machine=$field1-$field2
+ os=$field3
+ ;;
+ esac
;;
- -psos*)
- os=-psos
+ *-*)
+ # A lone config we happen to match not fitting any patern
+ case $field1-$field2 in
+ decstation-3100)
+ basic_machine=mips-dec
+ os=
+ ;;
+ *-*)
+ # Second component is usually, but not always the OS
+ case $field2 in
+ # Prevent following clause from handling this valid os
+ sun*os*)
+ basic_machine=$field1
+ os=$field2
+ ;;
+ # Manufacturers
+ dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \
+ | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \
+ | unicom* | ibm* | next | hp | isi* | apollo | altos* \
+ | convergent* | ncr* | news | 32* | 3600* | 3100* \
+ | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \
+ | ultra | tti* | harris | dolphin | highlevel | gould \
+ | cbm | ns | masscomp | apple | axis | knuth | cray \
+ | microblaze* | sim | cisco \
+ | oki | wec | wrs | winbond)
+ basic_machine=$field1-$field2
+ os=
+ ;;
+ *)
+ basic_machine=$field1
+ os=$field2
+ ;;
+ esac
+ ;;
+ esac
;;
- -mint | -mint[0-9]*)
- basic_machine=m68k-atari
- os=-mint
+ *)
+ # Convert single-component short-hands not valid as part of
+ # multi-component configurations.
+ case $field1 in
+ 386bsd)
+ basic_machine=i386-pc
+ os=bsd
+ ;;
+ a29khif)
+ basic_machine=a29k-amd
+ os=udi
+ ;;
+ adobe68k)
+ basic_machine=m68010-adobe
+ os=scout
+ ;;
+ alliant)
+ basic_machine=fx80-alliant
+ os=
+ ;;
+ altos | altos3068)
+ basic_machine=m68k-altos
+ os=
+ ;;
+ am29k)
+ basic_machine=a29k-none
+ os=bsd
+ ;;
+ amdahl)
+ basic_machine=580-amdahl
+ os=sysv
+ ;;
+ amiga)
+ basic_machine=m68k-unknown
+ os=
+ ;;
+ amigaos | amigados)
+ basic_machine=m68k-unknown
+ os=amigaos
+ ;;
+ amigaunix | amix)
+ basic_machine=m68k-unknown
+ os=sysv4
+ ;;
+ apollo68)
+ basic_machine=m68k-apollo
+ os=sysv
+ ;;
+ apollo68bsd)
+ basic_machine=m68k-apollo
+ os=bsd
+ ;;
+ aros)
+ basic_machine=i386-pc
+ os=aros
+ ;;
+ aux)
+ basic_machine=m68k-apple
+ os=aux
+ ;;
+ balance)
+ basic_machine=ns32k-sequent
+ os=dynix
+ ;;
+ blackfin)
+ basic_machine=bfin-unknown
+ os=linux
+ ;;
+ cegcc)
+ basic_machine=arm-unknown
+ os=cegcc
+ ;;
+ convex-c1)
+ basic_machine=c1-convex
+ os=bsd
+ ;;
+ convex-c2)
+ basic_machine=c2-convex
+ os=bsd
+ ;;
+ convex-c32)
+ basic_machine=c32-convex
+ os=bsd
+ ;;
+ convex-c34)
+ basic_machine=c34-convex
+ os=bsd
+ ;;
+ convex-c38)
+ basic_machine=c38-convex
+ os=bsd
+ ;;
+ cray)
+ basic_machine=j90-cray
+ os=unicos
+ ;;
+ crds | unos)
+ basic_machine=m68k-crds
+ os=
+ ;;
+ da30)
+ basic_machine=m68k-da30
+ os=
+ ;;
+ decstation | pmax | pmin | dec3100 | decstatn)
+ basic_machine=mips-dec
+ os=
+ ;;
+ delta88)
+ basic_machine=m88k-motorola
+ os=sysv3
+ ;;
+ dicos)
+ basic_machine=i686-pc
+ os=dicos
+ ;;
+ djgpp)
+ basic_machine=i586-pc
+ os=msdosdjgpp
+ ;;
+ ebmon29k)
+ basic_machine=a29k-amd
+ os=ebmon
+ ;;
+ es1800 | OSE68k | ose68k | ose | OSE)
+ basic_machine=m68k-ericsson
+ os=ose
+ ;;
+ gmicro)
+ basic_machine=tron-gmicro
+ os=sysv
+ ;;
+ go32)
+ basic_machine=i386-pc
+ os=go32
+ ;;
+ h8300hms)
+ basic_machine=h8300-hitachi
+ os=hms
+ ;;
+ h8300xray)
+ basic_machine=h8300-hitachi
+ os=xray
+ ;;
+ h8500hms)
+ basic_machine=h8500-hitachi
+ os=hms
+ ;;
+ harris)
+ basic_machine=m88k-harris
+ os=sysv3
+ ;;
+ hp300)
+ basic_machine=m68k-hp
+ ;;
+ hp300bsd)
+ basic_machine=m68k-hp
+ os=bsd
+ ;;
+ hp300hpux)
+ basic_machine=m68k-hp
+ os=hpux
+ ;;
+ hppaosf)
+ basic_machine=hppa1.1-hp
+ os=osf
+ ;;
+ hppro)
+ basic_machine=hppa1.1-hp
+ os=proelf
+ ;;
+ i386mach)
+ basic_machine=i386-mach
+ os=mach
+ ;;
+ vsta)
+ basic_machine=i386-pc
+ os=vsta
+ ;;
+ isi68 | isi)
+ basic_machine=m68k-isi
+ os=sysv
+ ;;
+ m68knommu)
+ basic_machine=m68k-unknown
+ os=linux
+ ;;
+ magnum | m3230)
+ basic_machine=mips-mips
+ os=sysv
+ ;;
+ merlin)
+ basic_machine=ns32k-utek
+ os=sysv
+ ;;
+ mingw64)
+ basic_machine=x86_64-pc
+ os=mingw64
+ ;;
+ mingw32)
+ basic_machine=i686-pc
+ os=mingw32
+ ;;
+ mingw32ce)
+ basic_machine=arm-unknown
+ os=mingw32ce
+ ;;
+ monitor)
+ basic_machine=m68k-rom68k
+ os=coff
+ ;;
+ morphos)
+ basic_machine=powerpc-unknown
+ os=morphos
+ ;;
+ moxiebox)
+ basic_machine=moxie-unknown
+ os=moxiebox
+ ;;
+ msdos)
+ basic_machine=i386-pc
+ os=msdos
+ ;;
+ msys)
+ basic_machine=i686-pc
+ os=msys
+ ;;
+ mvs)
+ basic_machine=i370-ibm
+ os=mvs
+ ;;
+ nacl)
+ basic_machine=le32-unknown
+ os=nacl
+ ;;
+ ncr3000)
+ basic_machine=i486-ncr
+ os=sysv4
+ ;;
+ netbsd386)
+ basic_machine=i386-pc
+ os=netbsd
+ ;;
+ netwinder)
+ basic_machine=armv4l-rebel
+ os=linux
+ ;;
+ news | news700 | news800 | news900)
+ basic_machine=m68k-sony
+ os=newsos
+ ;;
+ news1000)
+ basic_machine=m68030-sony
+ os=newsos
+ ;;
+ necv70)
+ basic_machine=v70-nec
+ os=sysv
+ ;;
+ nh3000)
+ basic_machine=m68k-harris
+ os=cxux
+ ;;
+ nh[45]000)
+ basic_machine=m88k-harris
+ os=cxux
+ ;;
+ nindy960)
+ basic_machine=i960-intel
+ os=nindy
+ ;;
+ mon960)
+ basic_machine=i960-intel
+ os=mon960
+ ;;
+ nonstopux)
+ basic_machine=mips-compaq
+ os=nonstopux
+ ;;
+ os400)
+ basic_machine=powerpc-ibm
+ os=os400
+ ;;
+ OSE68000 | ose68000)
+ basic_machine=m68000-ericsson
+ os=ose
+ ;;
+ os68k)
+ basic_machine=m68k-none
+ os=os68k
+ ;;
+ paragon)
+ basic_machine=i860-intel
+ os=osf
+ ;;
+ parisc)
+ basic_machine=hppa-unknown
+ os=linux
+ ;;
+ pw32)
+ basic_machine=i586-unknown
+ os=pw32
+ ;;
+ rdos | rdos64)
+ basic_machine=x86_64-pc
+ os=rdos
+ ;;
+ rdos32)
+ basic_machine=i386-pc
+ os=rdos
+ ;;
+ rom68k)
+ basic_machine=m68k-rom68k
+ os=coff
+ ;;
+ sa29200)
+ basic_machine=a29k-amd
+ os=udi
+ ;;
+ sei)
+ basic_machine=mips-sei
+ os=seiux
+ ;;
+ sequent)
+ basic_machine=i386-sequent
+ os=
+ ;;
+ sps7)
+ basic_machine=m68k-bull
+ os=sysv2
+ ;;
+ st2000)
+ basic_machine=m68k-tandem
+ os=
+ ;;
+ stratus)
+ basic_machine=i860-stratus
+ os=sysv4
+ ;;
+ sun2)
+ basic_machine=m68000-sun
+ os=
+ ;;
+ sun2os3)
+ basic_machine=m68000-sun
+ os=sunos3
+ ;;
+ sun2os4)
+ basic_machine=m68000-sun
+ os=sunos4
+ ;;
+ sun3)
+ basic_machine=m68k-sun
+ os=
+ ;;
+ sun3os3)
+ basic_machine=m68k-sun
+ os=sunos3
+ ;;
+ sun3os4)
+ basic_machine=m68k-sun
+ os=sunos4
+ ;;
+ sun4)
+ basic_machine=sparc-sun
+ os=
+ ;;
+ sun4os3)
+ basic_machine=sparc-sun
+ os=sunos3
+ ;;
+ sun4os4)
+ basic_machine=sparc-sun
+ os=sunos4
+ ;;
+ sun4sol2)
+ basic_machine=sparc-sun
+ os=solaris2
+ ;;
+ sun386 | sun386i | roadrunner)
+ basic_machine=i386-sun
+ os=
+ ;;
+ sv1)
+ basic_machine=sv1-cray
+ os=unicos
+ ;;
+ symmetry)
+ basic_machine=i386-sequent
+ os=dynix
+ ;;
+ t3e)
+ basic_machine=alphaev5-cray
+ os=unicos
+ ;;
+ t90)
+ basic_machine=t90-cray
+ os=unicos
+ ;;
+ toad1)
+ basic_machine=pdp10-xkl
+ os=tops20
+ ;;
+ tpf)
+ basic_machine=s390x-ibm
+ os=tpf
+ ;;
+ udi29k)
+ basic_machine=a29k-amd
+ os=udi
+ ;;
+ ultra3)
+ basic_machine=a29k-nyu
+ os=sym1
+ ;;
+ v810 | necv810)
+ basic_machine=v810-nec
+ os=none
+ ;;
+ vaxv)
+ basic_machine=vax-dec
+ os=sysv
+ ;;
+ vms)
+ basic_machine=vax-dec
+ os=vms
+ ;;
+ vxworks960)
+ basic_machine=i960-wrs
+ os=vxworks
+ ;;
+ vxworks68)
+ basic_machine=m68k-wrs
+ os=vxworks
+ ;;
+ vxworks29k)
+ basic_machine=a29k-wrs
+ os=vxworks
+ ;;
+ xbox)
+ basic_machine=i686-pc
+ os=mingw32
+ ;;
+ ymp)
+ basic_machine=ymp-cray
+ os=unicos
+ ;;
+ *)
+ basic_machine=$1
+ os=
+ ;;
+ esac
;;
esac
-# Decode aliases for certain CPU-COMPANY combinations.
+# Decode 1-component or ad-hoc basic machines
case $basic_machine in
- # Recognize the basic CPU types without company name.
- # Some are omitted here because they have special meanings below.
- 1750a | 580 \
- | a29k \
- | aarch64 | aarch64_be \
- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
- | am33_2.0 \
- | arc | arceb \
- | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
- | avr | avr32 \
- | ba \
- | be32 | be64 \
- | bfin \
- | c4x | c8051 | clipper \
- | d10v | d30v | dlx | dsp16xx \
- | e2k | epiphany \
- | fido | fr30 | frv | ft32 \
- | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
- | hexagon \
- | i370 | i860 | i960 | ia16 | ia64 \
- | ip2k | iq2000 \
- | k1om \
- | le32 | le64 \
- | lm32 \
- | m32c | m32r | m32rle | m68000 | m68k | m88k \
- | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
- | mips | mipsbe | mipseb | mipsel | mipsle \
- | mips16 \
- | mips64 | mips64el \
- | mips64octeon | mips64octeonel \
- | mips64orion | mips64orionel \
- | mips64r5900 | mips64r5900el \
- | mips64vr | mips64vrel \
- | mips64vr4100 | mips64vr4100el \
- | mips64vr4300 | mips64vr4300el \
- | mips64vr5000 | mips64vr5000el \
- | mips64vr5900 | mips64vr5900el \
- | mipsisa32 | mipsisa32el \
- | mipsisa32r2 | mipsisa32r2el \
- | mipsisa32r6 | mipsisa32r6el \
- | mipsisa64 | mipsisa64el \
- | mipsisa64r2 | mipsisa64r2el \
- | mipsisa64r6 | mipsisa64r6el \
- | mipsisa64sb1 | mipsisa64sb1el \
- | mipsisa64sr71k | mipsisa64sr71kel \
- | mipsr5900 | mipsr5900el \
- | mipstx39 | mipstx39el \
- | mn10200 | mn10300 \
- | moxie \
- | mt \
- | msp430 \
- | nds32 | nds32le | nds32be \
- | nios | nios2 | nios2eb | nios2el \
- | ns16k | ns32k \
- | open8 | or1k | or1knd | or32 \
- | pdp10 | pdp11 | pj | pjl \
- | powerpc | powerpc64 | powerpc64le | powerpcle \
- | pru \
- | pyramid \
- | riscv32 | riscv64 \
- | rl78 | rx \
- | score \
- | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
- | sh64 | sh64le \
- | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
- | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
- | spu \
- | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
- | ubicom32 \
- | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
- | visium \
- | wasm32 \
- | we32k \
- | x86 | xc16x | xstormy16 | xtensa \
- | z8k | z80)
- basic_machine=$basic_machine-unknown
- ;;
- c54x)
- basic_machine=tic54x-unknown
- ;;
- c55x)
- basic_machine=tic55x-unknown
- ;;
- c6x)
- basic_machine=tic6x-unknown
- ;;
- leon|leon[3-9])
- basic_machine=sparc-$basic_machine
- ;;
- m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
- basic_machine=$basic_machine-unknown
- os=-none
+ # Here we handle the default manufacturer of certain CPU types. It is in
+ # some cases the only manufacturer, in others, it is the most popular.
+ w89k)
+ cpu=hppa1.1
+ vendor=winbond
;;
- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
+ op50n)
+ cpu=hppa1.1
+ vendor=oki
;;
- ms1)
- basic_machine=mt-unknown
+ op60c)
+ cpu=hppa1.1
+ vendor=oki
;;
-
- strongarm | thumb | xscale)
- basic_machine=arm-unknown
+ ibm*)
+ cpu=i370
+ vendor=ibm
;;
- xgate)
- basic_machine=$basic_machine-unknown
- os=-none
+ orion105)
+ cpu=clipper
+ vendor=highlevel
;;
- xscaleeb)
- basic_machine=armeb-unknown
+ mac | mpw | mac-mpw)
+ cpu=m68k
+ vendor=apple
;;
-
- xscaleel)
- basic_machine=armel-unknown
+ pmac | pmac-mpw)
+ cpu=powerpc
+ vendor=apple
;;
- # We use `pc' rather than `unknown'
- # because (1) that's what they normally are, and
- # (2) the word "unknown" tends to confuse beginning users.
- i*86 | x86_64)
- basic_machine=$basic_machine-pc
- ;;
- # Object if more than one company name word.
- *-*-*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
- # Recognize the basic CPU types with company name.
- 580-* \
- | a29k-* \
- | aarch64-* | aarch64_be-* \
- | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
- | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
- | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* | avr32-* \
- | ba-* \
- | be32-* | be64-* \
- | bfin-* | bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c4x-* \
- | c8051-* | clipper-* | craynv-* | cydra-* \
- | d10v-* | d30v-* | dlx-* \
- | e2k-* | elxsi-* \
- | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
- | h8300-* | h8500-* \
- | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
- | hexagon-* \
- | i*86-* | i860-* | i960-* | ia16-* | ia64-* \
- | ip2k-* | iq2000-* \
- | k1om-* \
- | le32-* | le64-* \
- | lm32-* \
- | m32c-* | m32r-* | m32rle-* \
- | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
- | microblaze-* | microblazeel-* \
- | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
- | mips16-* \
- | mips64-* | mips64el-* \
- | mips64octeon-* | mips64octeonel-* \
- | mips64orion-* | mips64orionel-* \
- | mips64r5900-* | mips64r5900el-* \
- | mips64vr-* | mips64vrel-* \
- | mips64vr4100-* | mips64vr4100el-* \
- | mips64vr4300-* | mips64vr4300el-* \
- | mips64vr5000-* | mips64vr5000el-* \
- | mips64vr5900-* | mips64vr5900el-* \
- | mipsisa32-* | mipsisa32el-* \
- | mipsisa32r2-* | mipsisa32r2el-* \
- | mipsisa32r6-* | mipsisa32r6el-* \
- | mipsisa64-* | mipsisa64el-* \
- | mipsisa64r2-* | mipsisa64r2el-* \
- | mipsisa64r6-* | mipsisa64r6el-* \
- | mipsisa64sb1-* | mipsisa64sb1el-* \
- | mipsisa64sr71k-* | mipsisa64sr71kel-* \
- | mipsr5900-* | mipsr5900el-* \
- | mipstx39-* | mipstx39el-* \
- | mmix-* \
- | mt-* \
- | msp430-* \
- | nds32-* | nds32le-* | nds32be-* \
- | nios-* | nios2-* | nios2eb-* | nios2el-* \
- | none-* | np1-* | ns16k-* | ns32k-* \
- | open8-* \
- | or1k*-* \
- | orion-* \
- | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
- | pru-* \
- | pyramid-* \
- | riscv32-* | riscv64-* \
- | rl78-* | romp-* | rs6000-* | rx-* \
- | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
- | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
- | sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
- | tahoe-* \
- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
- | tile*-* \
- | tron-* \
- | ubicom32-* \
- | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
- | vax-* \
- | visium-* \
- | wasm32-* \
- | we32k-* \
- | x86-* | x86_64-* | xc16x-* | xps100-* \
- | xstormy16-* | xtensa*-* \
- | ymp-* \
- | z8k-* | z80-*)
- ;;
- # Recognize the basic CPU types without company name, with glob match.
- xtensa*)
- basic_machine=$basic_machine-unknown
- ;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
- 386bsd)
- basic_machine=i386-unknown
- os=-bsd
- ;;
3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
- basic_machine=m68000-att
+ cpu=m68000
+ vendor=att
;;
3b*)
- basic_machine=we32k-att
- ;;
- a29khif)
- basic_machine=a29k-amd
- os=-udi
- ;;
- abacus)
- basic_machine=abacus-unknown
- ;;
- adobe68k)
- basic_machine=m68010-adobe
- os=-scout
- ;;
- alliant | fx80)
- basic_machine=fx80-alliant
- ;;
- altos | altos3068)
- basic_machine=m68k-altos
- ;;
- am29k)
- basic_machine=a29k-none
- os=-bsd
- ;;
- amd64)
- basic_machine=x86_64-pc
- ;;
- amd64-*)
- basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- amdahl)
- basic_machine=580-amdahl
- os=-sysv
- ;;
- amiga | amiga-*)
- basic_machine=m68k-unknown
- ;;
- amigaos | amigados)
- basic_machine=m68k-unknown
- os=-amigaos
- ;;
- amigaunix | amix)
- basic_machine=m68k-unknown
- os=-sysv4
- ;;
- apollo68)
- basic_machine=m68k-apollo
- os=-sysv
- ;;
- apollo68bsd)
- basic_machine=m68k-apollo
- os=-bsd
- ;;
- aros)
- basic_machine=i386-pc
- os=-aros
- ;;
- asmjs)
- basic_machine=asmjs-unknown
- ;;
- aux)
- basic_machine=m68k-apple
- os=-aux
- ;;
- balance)
- basic_machine=ns32k-sequent
- os=-dynix
- ;;
- blackfin)
- basic_machine=bfin-unknown
- os=-linux
- ;;
- blackfin-*)
- basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
+ cpu=we32k
+ vendor=att
;;
bluegene*)
- basic_machine=powerpc-ibm
- os=-cnk
- ;;
- c54x-*)
- basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- c55x-*)
- basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- c6x-*)
- basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- c90)
- basic_machine=c90-cray
- os=-unicos
- ;;
- cegcc)
- basic_machine=arm-unknown
- os=-cegcc
- ;;
- convex-c1)
- basic_machine=c1-convex
- os=-bsd
- ;;
- convex-c2)
- basic_machine=c2-convex
- os=-bsd
- ;;
- convex-c32)
- basic_machine=c32-convex
- os=-bsd
- ;;
- convex-c34)
- basic_machine=c34-convex
- os=-bsd
- ;;
- convex-c38)
- basic_machine=c38-convex
- os=-bsd
- ;;
- cray | j90)
- basic_machine=j90-cray
- os=-unicos
- ;;
- craynv)
- basic_machine=craynv-cray
- os=-unicosmp
- ;;
- cr16 | cr16-*)
- basic_machine=cr16-unknown
- os=-elf
- ;;
- crds | unos)
- basic_machine=m68k-crds
- ;;
- crisv32 | crisv32-* | etraxfs*)
- basic_machine=crisv32-axis
- ;;
- cris | cris-* | etrax*)
- basic_machine=cris-axis
- ;;
- crx)
- basic_machine=crx-unknown
- os=-elf
- ;;
- da30 | da30-*)
- basic_machine=m68k-da30
- ;;
- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
- basic_machine=mips-dec
+ cpu=powerpc
+ vendor=ibm
+ os=cnk
;;
decsystem10* | dec10*)
- basic_machine=pdp10-dec
- os=-tops10
+ cpu=pdp10
+ vendor=dec
+ os=tops10
;;
decsystem20* | dec20*)
- basic_machine=pdp10-dec
- os=-tops20
+ cpu=pdp10
+ vendor=dec
+ os=tops20
;;
delta | 3300 | motorola-3300 | motorola-delta \
| 3300-motorola | delta-motorola)
- basic_machine=m68k-motorola
+ cpu=m68k
+ vendor=motorola
;;
- delta88)
- basic_machine=m88k-motorola
- os=-sysv3
- ;;
- dicos)
- basic_machine=i686-pc
- os=-dicos
- ;;
- djgpp)
- basic_machine=i586-pc
- os=-msdosdjgpp
- ;;
- dpx20 | dpx20-*)
- basic_machine=rs6000-bull
- os=-bosx
- ;;
- dpx2* | dpx2*-bull)
- basic_machine=m68k-bull
- os=-sysv3
- ;;
- e500v[12])
- basic_machine=powerpc-unknown
- os=$os"spe"
- ;;
- e500v[12]-*)
- basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=$os"spe"
- ;;
- ebmon29k)
- basic_machine=a29k-amd
- os=-ebmon
- ;;
- elxsi)
- basic_machine=elxsi-elxsi
- os=-bsd
+ dpx2*)
+ cpu=m68k
+ vendor=bull
+ os=sysv3
;;
encore | umax | mmax)
- basic_machine=ns32k-encore
+ cpu=ns32k
+ vendor=encore
;;
- es1800 | OSE68k | ose68k | ose | OSE)
- basic_machine=m68k-ericsson
- os=-ose
+ elxsi)
+ cpu=elxsi
+ vendor=elxsi
+ os=${os:-bsd}
;;
fx2800)
- basic_machine=i860-alliant
+ cpu=i860
+ vendor=alliant
;;
genix)
- basic_machine=ns32k-ns
- ;;
- gmicro)
- basic_machine=tron-gmicro
- os=-sysv
- ;;
- go32)
- basic_machine=i386-pc
- os=-go32
+ cpu=ns32k
+ vendor=ns
;;
h3050r* | hiux*)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- h8300hms)
- basic_machine=h8300-hitachi
- os=-hms
- ;;
- h8300xray)
- basic_machine=h8300-hitachi
- os=-xray
- ;;
- h8500hms)
- basic_machine=h8500-hitachi
- os=-hms
- ;;
- harris)
- basic_machine=m88k-harris
- os=-sysv3
- ;;
- hp300-*)
- basic_machine=m68k-hp
- ;;
- hp300bsd)
- basic_machine=m68k-hp
- os=-bsd
- ;;
- hp300hpux)
- basic_machine=m68k-hp
- os=-hpux
+ cpu=hppa1.1
+ vendor=hitachi
+ os=hiuxwe2
;;
hp3k9[0-9][0-9] | hp9[0-9][0-9])
- basic_machine=hppa1.0-hp
+ cpu=hppa1.0
+ vendor=hp
;;
hp9k2[0-9][0-9] | hp9k31[0-9])
- basic_machine=m68000-hp
+ cpu=m68000
+ vendor=hp
;;
hp9k3[2-9][0-9])
- basic_machine=m68k-hp
+ cpu=m68k
+ vendor=hp
;;
hp9k6[0-9][0-9] | hp6[0-9][0-9])
- basic_machine=hppa1.0-hp
+ cpu=hppa1.0
+ vendor=hp
;;
hp9k7[0-79][0-9] | hp7[0-79][0-9])
- basic_machine=hppa1.1-hp
+ cpu=hppa1.1
+ vendor=hp
;;
hp9k78[0-9] | hp78[0-9])
# FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
+ cpu=hppa1.1
+ vendor=hp
;;
hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
# FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
+ cpu=hppa1.1
+ vendor=hp
;;
hp9k8[0-9][13679] | hp8[0-9][13679])
- basic_machine=hppa1.1-hp
+ cpu=hppa1.1
+ vendor=hp
;;
hp9k8[0-9][0-9] | hp8[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hppa-next)
- os=-nextstep3
- ;;
- hppaosf)
- basic_machine=hppa1.1-hp
- os=-osf
- ;;
- hppro)
- basic_machine=hppa1.1-hp
- os=-proelf
- ;;
- i370-ibm* | ibm*)
- basic_machine=i370-ibm
+ cpu=hppa1.0
+ vendor=hp
;;
i*86v32)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv32
+ cpu=`echo "$1" | sed -e 's/86.*/86/'`
+ vendor=pc
+ os=sysv32
;;
i*86v4*)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv4
+ cpu=`echo "$1" | sed -e 's/86.*/86/'`
+ vendor=pc
+ os=sysv4
;;
i*86v)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv
+ cpu=`echo "$1" | sed -e 's/86.*/86/'`
+ vendor=pc
+ os=sysv
;;
i*86sol2)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-solaris2
- ;;
- i386mach)
- basic_machine=i386-mach
- os=-mach
+ cpu=`echo "$1" | sed -e 's/86.*/86/'`
+ vendor=pc
+ os=solaris2
;;
- i386-vsta | vsta)
- basic_machine=i386-unknown
- os=-vsta
+ j90 | j90-cray)
+ cpu=j90
+ vendor=cray
+ os=${os:-unicos}
;;
iris | iris4d)
- basic_machine=mips-sgi
+ cpu=mips
+ vendor=sgi
case $os in
- -irix*)
+ irix*)
;;
*)
- os=-irix4
+ os=irix4
;;
esac
;;
- isi68 | isi)
- basic_machine=m68k-isi
- os=-sysv
- ;;
- leon-*|leon[3-9]-*)
- basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
- ;;
- m68knommu)
- basic_machine=m68k-unknown
- os=-linux
- ;;
- m68knommu-*)
- basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- m88k-omron*)
- basic_machine=m88k-omron
- ;;
- magnum | m3230)
- basic_machine=mips-mips
- os=-sysv
- ;;
- merlin)
- basic_machine=ns32k-utek
- os=-sysv
- ;;
- microblaze*)
- basic_machine=microblaze-xilinx
- ;;
- mingw64)
- basic_machine=x86_64-pc
- os=-mingw64
- ;;
- mingw32)
- basic_machine=i686-pc
- os=-mingw32
- ;;
- mingw32ce)
- basic_machine=arm-unknown
- os=-mingw32ce
- ;;
miniframe)
- basic_machine=m68000-convergent
- ;;
- *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
- mips3*-*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
- ;;
- mips3*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
- ;;
- monitor)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- morphos)
- basic_machine=powerpc-unknown
- os=-morphos
- ;;
- moxiebox)
- basic_machine=moxie-unknown
- os=-moxiebox
- ;;
- msdos)
- basic_machine=i386-pc
- os=-msdos
- ;;
- ms1-*)
- basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
- ;;
- msys)
- basic_machine=i686-pc
- os=-msys
- ;;
- mvs)
- basic_machine=i370-ibm
- os=-mvs
- ;;
- nacl)
- basic_machine=le32-unknown
- os=-nacl
+ cpu=m68000
+ vendor=convergent
;;
- ncr3000)
- basic_machine=i486-ncr
- os=-sysv4
- ;;
- netbsd386)
- basic_machine=i386-unknown
- os=-netbsd
- ;;
- netwinder)
- basic_machine=armv4l-rebel
- os=-linux
- ;;
- news | news700 | news800 | news900)
- basic_machine=m68k-sony
- os=-newsos
- ;;
- news1000)
- basic_machine=m68030-sony
- os=-newsos
+ *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
+ cpu=m68k
+ vendor=atari
+ os=mint
;;
news-3600 | risc-news)
- basic_machine=mips-sony
- os=-newsos
+ cpu=mips
+ vendor=sony
+ os=newsos
;;
- necv70)
- basic_machine=v70-nec
- os=-sysv
- ;;
- next | m*-next )
- basic_machine=m68k-next
+ next | m*-next)
+ cpu=m68k
+ vendor=next
case $os in
- -nextstep* )
+ nextstep* )
;;
- -ns2*)
- os=-nextstep2
+ ns2*)
+ os=nextstep2
;;
*)
- os=-nextstep3
+ os=nextstep3
;;
esac
;;
- nh3000)
- basic_machine=m68k-harris
- os=-cxux
- ;;
- nh[45]000)
- basic_machine=m88k-harris
- os=-cxux
- ;;
- nindy960)
- basic_machine=i960-intel
- os=-nindy
- ;;
- mon960)
- basic_machine=i960-intel
- os=-mon960
- ;;
- nonstopux)
- basic_machine=mips-compaq
- os=-nonstopux
- ;;
np1)
- basic_machine=np1-gould
- ;;
- neo-tandem)
- basic_machine=neo-tandem
- ;;
- nse-tandem)
- basic_machine=nse-tandem
- ;;
- nsr-tandem)
- basic_machine=nsr-tandem
- ;;
- nsx-tandem)
- basic_machine=nsx-tandem
+ cpu=np1
+ vendor=gould
;;
op50n-* | op60c-*)
- basic_machine=hppa1.1-oki
- os=-proelf
- ;;
- openrisc | openrisc-*)
- basic_machine=or32-unknown
- ;;
- os400)
- basic_machine=powerpc-ibm
- os=-os400
- ;;
- OSE68000 | ose68000)
- basic_machine=m68000-ericsson
- os=-ose
- ;;
- os68k)
- basic_machine=m68k-none
- os=-os68k
+ cpu=hppa1.1
+ vendor=oki
+ os=proelf
;;
pa-hitachi)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- paragon)
- basic_machine=i860-intel
- os=-osf
- ;;
- parisc)
- basic_machine=hppa-unknown
- os=-linux
- ;;
- parisc-*)
- basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
+ cpu=hppa1.1
+ vendor=hitachi
+ os=hiuxwe2
;;
pbd)
- basic_machine=sparc-tti
+ cpu=sparc
+ vendor=tti
;;
pbb)
- basic_machine=m68k-tti
- ;;
- pc532 | pc532-*)
- basic_machine=ns32k-pc532
+ cpu=m68k
+ vendor=tti
;;
- pc98)
- basic_machine=i386-pc
- ;;
- pc98-*)
- basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium | p5 | k5 | k6 | nexgen | viac3)
- basic_machine=i586-pc
- ;;
- pentiumpro | p6 | 6x86 | athlon | athlon_*)
- basic_machine=i686-pc
- ;;
- pentiumii | pentium2 | pentiumiii | pentium3)
- basic_machine=i686-pc
- ;;
- pentium4)
- basic_machine=i786-pc
- ;;
- pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumpro-* | p6-* | 6x86-* | athlon-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium4-*)
- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+ pc532)
+ cpu=ns32k
+ vendor=pc532
;;
pn)
- basic_machine=pn-gould
+ cpu=pn
+ vendor=gould
;;
- power) basic_machine=power-ibm
- ;;
- ppc | ppcbe) basic_machine=powerpc-unknown
- ;;
- ppc-* | ppcbe-*)
- basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppcle | powerpclittle)
- basic_machine=powerpcle-unknown
- ;;
- ppcle-* | powerpclittle-*)
- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64) basic_machine=powerpc64-unknown
- ;;
- ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64le | powerpc64little)
- basic_machine=powerpc64le-unknown
- ;;
- ppc64le-* | powerpc64little-*)
- basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
+ power)
+ cpu=power
+ vendor=ibm
;;
ps2)
- basic_machine=i386-ibm
- ;;
- pw32)
- basic_machine=i586-unknown
- os=-pw32
- ;;
- rdos | rdos64)
- basic_machine=x86_64-pc
- os=-rdos
- ;;
- rdos32)
- basic_machine=i386-pc
- os=-rdos
- ;;
- rom68k)
- basic_machine=m68k-rom68k
- os=-coff
+ cpu=i386
+ vendor=ibm
;;
rm[46]00)
- basic_machine=mips-siemens
+ cpu=mips
+ vendor=siemens
;;
rtpc | rtpc-*)
- basic_machine=romp-ibm
- ;;
- s390 | s390-*)
- basic_machine=s390-ibm
- ;;
- s390x | s390x-*)
- basic_machine=s390x-ibm
- ;;
- sa29200)
- basic_machine=a29k-amd
- os=-udi
- ;;
- sb1)
- basic_machine=mipsisa64sb1-unknown
- ;;
- sb1el)
- basic_machine=mipsisa64sb1el-unknown
+ cpu=romp
+ vendor=ibm
;;
sde)
- basic_machine=mipsisa32-sde
- os=-elf
+ cpu=mipsisa32
+ vendor=sde
+ os=${os:-elf}
;;
- sei)
- basic_machine=mips-sei
- os=-seiux
+ simso-wrs)
+ cpu=sparclite
+ vendor=wrs
+ os=vxworks
;;
- sequent)
- basic_machine=i386-sequent
+ tower | tower-32)
+ cpu=m68k
+ vendor=ncr
;;
- sh)
- basic_machine=sh-hitachi
- os=-hms
+ vpp*|vx|vx-*)
+ cpu=f301
+ vendor=fujitsu
;;
- sh5el)
- basic_machine=sh5le-unknown
+ w65)
+ cpu=w65
+ vendor=wdc
;;
- sh64)
- basic_machine=sh64-unknown
+ w89k-*)
+ cpu=hppa1.1
+ vendor=winbond
+ os=proelf
;;
- sparclite-wrs | simso-wrs)
- basic_machine=sparclite-wrs
- os=-vxworks
+ none)
+ cpu=none
+ vendor=none
;;
- sps7)
- basic_machine=m68k-bull
- os=-sysv2
+ leon|leon[3-9])
+ cpu=sparc
+ vendor=$basic_machine
;;
- spur)
- basic_machine=spur-unknown
+ leon-*|leon[3-9]-*)
+ cpu=sparc
+ vendor=`echo "$basic_machine" | sed 's/-.*//'`
;;
- st2000)
- basic_machine=m68k-tandem
+
+ *-*)
+ IFS="-" read -r cpu vendor <<EOF
+$basic_machine
+EOF
;;
- stratus)
- basic_machine=i860-stratus
- os=-sysv4
+ # We use `pc' rather than `unknown'
+ # because (1) that's what they normally are, and
+ # (2) the word "unknown" tends to confuse beginning users.
+ i*86 | x86_64)
+ cpu=$basic_machine
+ vendor=pc
;;
- strongarm-* | thumb-*)
- basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
+ # These rules are duplicated from below for sake of the special case above;
+ # i.e. things that normalized to x86 arches should also default to "pc"
+ pc98)
+ cpu=i386
+ vendor=pc
;;
- sun2)
- basic_machine=m68000-sun
+ x64 | amd64)
+ cpu=x86_64
+ vendor=pc
;;
- sun2os3)
- basic_machine=m68000-sun
- os=-sunos3
+ # Recognize the basic CPU types without company name.
+ *)
+ cpu=$basic_machine
+ vendor=unknown
;;
- sun2os4)
- basic_machine=m68000-sun
- os=-sunos4
+esac
+
+unset -v basic_machine
+
+# Decode basic machines in the full and proper CPU-Company form.
+case $cpu-$vendor in
+ # Here we handle the default manufacturer of certain CPU types in cannonical form. It is in
+ # some cases the only manufacturer, in others, it is the most popular.
+ craynv-unknown)
+ vendor=cray
+ os=${os:-unicosmp}
;;
- sun3os3)
- basic_machine=m68k-sun
- os=-sunos3
+ c90-unknown | c90-cray)
+ vendor=cray
+ os=${os:-unicos}
;;
- sun3os4)
- basic_machine=m68k-sun
- os=-sunos4
+ fx80-unknown)
+ vendor=alliant
;;
- sun4os3)
- basic_machine=sparc-sun
- os=-sunos3
+ romp-unknown)
+ vendor=ibm
;;
- sun4os4)
- basic_machine=sparc-sun
- os=-sunos4
+ mmix-unknown)
+ vendor=knuth
;;
- sun4sol2)
- basic_machine=sparc-sun
- os=-solaris2
+ microblaze-unknown | microblazeel-unknown)
+ vendor=xilinx
;;
- sun3 | sun3-*)
- basic_machine=m68k-sun
+ rs6000-unknown)
+ vendor=ibm
;;
- sun4)
- basic_machine=sparc-sun
+ vax-unknown)
+ vendor=dec
;;
- sun386 | sun386i | roadrunner)
- basic_machine=i386-sun
+ pdp11-unknown)
+ vendor=dec
;;
- sv1)
- basic_machine=sv1-cray
- os=-unicos
+ we32k-unknown)
+ vendor=att
;;
- symmetry)
- basic_machine=i386-sequent
- os=-dynix
+ cydra-unknown)
+ vendor=cydrome
;;
- t3e)
- basic_machine=alphaev5-cray
- os=-unicos
+ i370-ibm*)
+ vendor=ibm
;;
- t90)
- basic_machine=t90-cray
- os=-unicos
+ orion-unknown)
+ vendor=highlevel
;;
- tile*)
- basic_machine=$basic_machine-unknown
- os=-linux-gnu
+ xps-unknown | xps100-unknown)
+ cpu=xps100
+ vendor=honeywell
;;
- tx39)
- basic_machine=mipstx39-unknown
+
+ # Here we normalize CPU types with a missing or matching vendor
+ dpx20-unknown | dpx20-bull)
+ cpu=rs6000
+ vendor=bull
+ os=${os:-bosx}
;;
- tx39el)
- basic_machine=mipstx39el-unknown
+
+ # Here we normalize CPU types irrespective of the vendor
+ amd64-*)
+ cpu=x86_64
;;
- toad1)
- basic_machine=pdp10-xkl
- os=-tops20
+ blackfin-*)
+ cpu=bfin
+ os=linux
;;
- tower | tower-32)
- basic_machine=m68k-ncr
+ c54x-*)
+ cpu=tic54x
;;
- tpf)
- basic_machine=s390x-ibm
- os=-tpf
+ c55x-*)
+ cpu=tic55x
;;
- udi29k)
- basic_machine=a29k-amd
- os=-udi
+ c6x-*)
+ cpu=tic6x
;;
- ultra3)
- basic_machine=a29k-nyu
- os=-sym1
+ e500v[12]-*)
+ cpu=powerpc
+ os=$os"spe"
;;
- v810 | necv810)
- basic_machine=v810-nec
- os=-none
+ mips3*-*)
+ cpu=mips64
;;
- vaxv)
- basic_machine=vax-dec
- os=-sysv
+ ms1-*)
+ cpu=mt
;;
- vms)
- basic_machine=vax-dec
- os=-vms
+ m68knommu-*)
+ cpu=m68k
+ os=linux
;;
- vpp*|vx|vx-*)
- basic_machine=f301-fujitsu
+ m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*)
+ cpu=s12z
;;
- vxworks960)
- basic_machine=i960-wrs
- os=-vxworks
+ openrisc-*)
+ cpu=or32
;;
- vxworks68)
- basic_machine=m68k-wrs
- os=-vxworks
+ parisc-*)
+ cpu=hppa
+ os=linux
;;
- vxworks29k)
- basic_machine=a29k-wrs
- os=-vxworks
+ pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
+ cpu=i586
;;
- wasm32)
- basic_machine=wasm32-unknown
+ pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*)
+ cpu=i686
;;
- w65*)
- basic_machine=w65-wdc
- os=-none
+ pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
+ cpu=i686
;;
- w89k-*)
- basic_machine=hppa1.1-winbond
- os=-proelf
+ pentium4-*)
+ cpu=i786
;;
- xbox)
- basic_machine=i686-pc
- os=-mingw32
+ pc98-*)
+ cpu=i386
;;
- xps | xps100)
- basic_machine=xps100-honeywell
+ ppc-* | ppcbe-*)
+ cpu=powerpc
;;
- xscale-* | xscalee[bl]-*)
- basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
+ ppcle-* | powerpclittle-*)
+ cpu=powerpcle
;;
- ymp)
- basic_machine=ymp-cray
- os=-unicos
+ ppc64-*)
+ cpu=powerpc64
;;
- z8k-*-coff)
- basic_machine=z8k-unknown
- os=-sim
+ ppc64le-* | powerpc64little-*)
+ cpu=powerpc64le
;;
- z80-*-coff)
- basic_machine=z80-unknown
- os=-sim
+ sb1-*)
+ cpu=mipsisa64sb1
;;
- none)
- basic_machine=none-none
- os=-none
+ sb1el-*)
+ cpu=mipsisa64sb1el
;;
-
-# Here we handle the default manufacturer of certain CPU types. It is in
-# some cases the only manufacturer, in others, it is the most popular.
- w89k)
- basic_machine=hppa1.1-winbond
+ sh5e[lb]-*)
+ cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'`
;;
- op50n)
- basic_machine=hppa1.1-oki
+ spur-*)
+ cpu=spur
;;
- op60c)
- basic_machine=hppa1.1-oki
+ strongarm-* | thumb-*)
+ cpu=arm
;;
- romp)
- basic_machine=romp-ibm
+ tx39-*)
+ cpu=mipstx39
;;
- mmix)
- basic_machine=mmix-knuth
+ tx39el-*)
+ cpu=mipstx39el
;;
- rs6000)
- basic_machine=rs6000-ibm
+ x64-*)
+ cpu=x86_64
;;
- vax)
- basic_machine=vax-dec
+ xscale-* | xscalee[bl]-*)
+ cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
;;
- pdp10)
- # there are many clones, so DEC is not a safe bet
- basic_machine=pdp10-unknown
+
+ # Recognize the cannonical CPU Types that limit and/or modify the
+ # company names they are paired with.
+ cr16-*)
+ os=${os:-elf}
;;
- pdp11)
- basic_machine=pdp11-dec
+ crisv32-* | etraxfs*-*)
+ cpu=crisv32
+ vendor=axis
;;
- we32k)
- basic_machine=we32k-att
+ cris-* | etrax*-*)
+ cpu=cris
+ vendor=axis
;;
- sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
- basic_machine=sh-unknown
+ crx-*)
+ os=${os:-elf}
;;
- sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
- basic_machine=sparc-sun
+ neo-tandem)
+ cpu=neo
+ vendor=tandem
;;
- cydra)
- basic_machine=cydra-cydrome
+ nse-tandem)
+ cpu=nse
+ vendor=tandem
;;
- orion)
- basic_machine=orion-highlevel
+ nsr-tandem)
+ cpu=nsr
+ vendor=tandem
;;
- orion105)
- basic_machine=clipper-highlevel
+ nsv-tandem)
+ cpu=nsv
+ vendor=tandem
;;
- mac | mpw | mac-mpw)
- basic_machine=m68k-apple
+ nsx-tandem)
+ cpu=nsx
+ vendor=tandem
;;
- pmac | pmac-mpw)
- basic_machine=powerpc-apple
+ s390-*)
+ cpu=s390
+ vendor=ibm
+ ;;
+ s390x-*)
+ cpu=s390x
+ vendor=ibm
;;
- *-unknown)
- # Make sure to match an already-canonicalized machine name.
+ tile*-*)
+ os=${os:-linux-gnu}
;;
+
*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
+ # Recognize the cannonical CPU types that are allowed with any
+ # company name.
+ case $cpu in
+ 1750a | 580 \
+ | a29k \
+ | aarch64 | aarch64_be \
+ | abacus \
+ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \
+ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \
+ | alphapca5[67] | alpha64pca5[67] \
+ | am33_2.0 \
+ | arc | arceb \
+ | arm | arm[lb]e | arme[lb] | armv* \
+ | avr | avr32 \
+ | asmjs \
+ | ba \
+ | be32 | be64 \
+ | bfin | bs2000 \
+ | c[123]* | c30 | [cjt]90 | c4x \
+ | c8051 | clipper | craynv | csky | cydra \
+ | d10v | d30v | dlx | dsp16xx \
+ | e2k | elxsi | epiphany \
+ | f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \
+ | h8300 | h8500 \
+ | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+ | hexagon \
+ | i370 | i*86 | i860 | i960 | ia16 | ia64 \
+ | ip2k | iq2000 \
+ | k1om \
+ | le32 | le64 \
+ | lm32 \
+ | m32c | m32r | m32rle \
+ | m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k | v70 | w65 \
+ | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip \
+ | m88110 | m88k | maxq | mb | mcore | mep | metag \
+ | microblaze | microblazeel \
+ | mips | mipsbe | mipseb | mipsel | mipsle \
+ | mips16 \
+ | mips64 | mips64el \
+ | mips64octeon | mips64octeonel \
+ | mips64orion | mips64orionel \
+ | mips64r5900 | mips64r5900el \
+ | mips64vr | mips64vrel \
+ | mips64vr4100 | mips64vr4100el \
+ | mips64vr4300 | mips64vr4300el \
+ | mips64vr5000 | mips64vr5000el \
+ | mips64vr5900 | mips64vr5900el \
+ | mipsisa32 | mipsisa32el \
+ | mipsisa32r2 | mipsisa32r2el \
+ | mipsisa32r6 | mipsisa32r6el \
+ | mipsisa64 | mipsisa64el \
+ | mipsisa64r2 | mipsisa64r2el \
+ | mipsisa64r6 | mipsisa64r6el \
+ | mipsisa64sb1 | mipsisa64sb1el \
+ | mipsisa64sr71k | mipsisa64sr71kel \
+ | mipsr5900 | mipsr5900el \
+ | mipstx39 | mipstx39el \
+ | mmix \
+ | mn10200 | mn10300 \
+ | moxie \
+ | mt \
+ | msp430 \
+ | nds32 | nds32le | nds32be \
+ | nfp \
+ | nios | nios2 | nios2eb | nios2el \
+ | none | np1 | ns16k | ns32k \
+ | open8 \
+ | or1k* \
+ | or32 \
+ | orion \
+ | pdp10 | pdp11 | pj | pjl | pn | power \
+ | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \
+ | pru \
+ | pyramid \
+ | riscv | riscv32 | riscv64 \
+ | rl78 | romp | rs6000 | rx \
+ | score \
+ | sh | sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \
+ | sh[1234]e[lb] | sh[12345][lb]e | sh[23]ele | sh64 | sh64le \
+ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \
+ | sparclite \
+ | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
+ | spu \
+ | tahoe \
+ | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
+ | tron \
+ | ubicom32 \
+ | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
+ | vax \
+ | visium \
+ | wasm32 \
+ | we32k \
+ | x86 | x86_64 | xc16x | xgate | xps100 \
+ | xstormy16 | xtensa* \
+ | ymp \
+ | z8k | z80)
+ ;;
+
+ *)
+ echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2
+ exit 1
+ ;;
+ esac
;;
esac
# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
- *-digital*)
- basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
+case $vendor in
+ digital*)
+ vendor=dec
;;
- *-commodore*)
- basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
+ commodore*)
+ vendor=cbm
;;
*)
;;
# Decode manufacturer-specific aliases for certain operating systems.
-if [ x"$os" != x"" ]
+if [ x$os != x ]
then
case $os in
- # First match some system type aliases
- # that might get confused with valid system types.
- # -solaris* is a basic system type, with this one exception.
- -auroraux)
- os=-auroraux
+ # First match some system type aliases that might get confused
+ # with valid system types.
+ # solaris* is a basic system type, with this one exception.
+ auroraux)
+ os=auroraux
;;
- -solaris1 | -solaris1.*)
- os=`echo $os | sed -e 's|solaris1|sunos4|'`
+ bluegene*)
+ os=cnk
;;
- -solaris)
- os=-solaris2
+ solaris1 | solaris1.*)
+ os=`echo $os | sed -e 's|solaris1|sunos4|'`
;;
- -svr4*)
- os=-sysv4
+ solaris)
+ os=solaris2
;;
- -unixware*)
- os=-sysv4.2uw
+ unixware*)
+ os=sysv4.2uw
;;
- -gnu/linux*)
+ gnu/linux*)
os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
;;
- # First accept the basic system types.
+ # es1800 is here to avoid being matched by es* (a different OS)
+ es1800*)
+ os=ose
+ ;;
+ # Some version numbers need modification
+ chorusos*)
+ os=chorusos
+ ;;
+ isc)
+ os=isc2.2
+ ;;
+ sco6)
+ os=sco5v6
+ ;;
+ sco5)
+ os=sco3.2v5
+ ;;
+ sco4)
+ os=sco3.2v4
+ ;;
+ sco3.2.[4-9]*)
+ os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
+ ;;
+ sco3.2v[4-9]* | sco5v6*)
+ # Don't forget version if it is 3.2v4 or newer.
+ ;;
+ scout)
+ # Don't match below
+ ;;
+ sco*)
+ os=sco3.2v2
+ ;;
+ psos*)
+ os=psos
+ ;;
+ # Now accept the basic system types.
# The portable systems comes first.
- # Each alternative MUST END IN A *, to match a version number.
- # -sysv* is not here because it comes later, after sysvr4.
- -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
- | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
- | -sym* | -kopensolaris* | -plan9* \
- | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
- | -aos* | -aros* | -cloudabi* | -sortix* \
- | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
- | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
- | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
- | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
- | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
- | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
- | -linux-newlib* | -linux-musl* | -linux-uclibc* \
- | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
- | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
- | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
- | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
- | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
- | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*)
+ # Each alternative MUST end in a * to match a version number.
+ # sysv* is not here because it comes later, after sysvr4.
+ gnu* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
+ | *vms* | esix* | aix* | cnk* | sunos | sunos[34]*\
+ | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
+ | sym* | kopensolaris* | plan9* \
+ | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
+ | aos* | aros* | cloudabi* | sortix* \
+ | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
+ | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
+ | knetbsd* | mirbsd* | netbsd* \
+ | bitrig* | openbsd* | solidbsd* | libertybsd* \
+ | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \
+ | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
+ | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
+ | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \
+ | chorusrdb* | cegcc* | glidix* \
+ | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
+ | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \
+ | linux-newlib* | linux-musl* | linux-uclibc* \
+ | uxpv* | beos* | mpeix* | udk* | moxiebox* \
+ | interix* | uwin* | mks* | rhapsody* | darwin* \
+ | openstep* | oskit* | conix* | pw32* | nonstopux* \
+ | storm-chaos* | tops10* | tenex* | tops20* | its* \
+ | os2* | vos* | palmos* | uclinux* | nucleus* \
+ | morphos* | superux* | rtmk* | windiss* \
+ | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
+ | skyos* | haiku* | rdos* | toppers* | drops* | es* \
+ | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
+ | midnightbsd*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
- -qnx*)
- case $basic_machine in
- x86-* | i*86-*)
+ qnx*)
+ case $cpu in
+ x86 | i*86)
;;
*)
- os=-nto$os
+ os=nto-$os
;;
esac
;;
- -nto-qnx*)
+ hiux*)
+ os=hiuxwe2
;;
- -nto*)
- os=`echo $os | sed -e 's|nto|nto-qnx|'`
+ nto-qnx*)
;;
- -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
- | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
- | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
+ nto*)
+ os=`echo $os | sed -e 's|nto|nto-qnx|'`
;;
- -mac*)
- os=`echo $os | sed -e 's|mac|macos|'`
+ sim | xray | os68k* | v88r* \
+ | windows* | osx | abug | netware* | os9* \
+ | macos* | mpw* | magic* | mmixware* | mon960* | lnews*)
;;
- -linux-dietlibc)
- os=-linux-dietlibc
+ linux-dietlibc)
+ os=linux-dietlibc
;;
- -linux*)
+ linux*)
os=`echo $os | sed -e 's|linux|linux-gnu|'`
;;
- -sunos5*)
- os=`echo $os | sed -e 's|sunos5|solaris2|'`
+ lynx*178)
+ os=lynxos178
;;
- -sunos6*)
- os=`echo $os | sed -e 's|sunos6|solaris3|'`
+ lynx*5)
+ os=lynxos5
;;
- -opened*)
- os=-openedition
+ lynx*)
+ os=lynxos
;;
- -os400*)
- os=-os400
+ mac*)
+ os=`echo "$os" | sed -e 's|mac|macos|'`
;;
- -wince*)
- os=-wince
+ opened*)
+ os=openedition
;;
- -osfrose*)
- os=-osfrose
+ os400*)
+ os=os400
;;
- -osf*)
- os=-osf
+ sunos5*)
+ os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
;;
- -utek*)
- os=-bsd
+ sunos6*)
+ os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
;;
- -dynix*)
- os=-bsd
+ wince*)
+ os=wince
;;
- -acis*)
- os=-aos
+ utek*)
+ os=bsd
;;
- -atheos*)
- os=-atheos
+ dynix*)
+ os=bsd
;;
- -syllable*)
- os=-syllable
+ acis*)
+ os=aos
;;
- -386bsd)
- os=-bsd
+ atheos*)
+ os=atheos
;;
- -ctix* | -uts*)
- os=-sysv
+ syllable*)
+ os=syllable
+ ;;
+ 386bsd)
+ os=bsd
;;
- -nova*)
- os=-rtmk-nova
+ ctix* | uts*)
+ os=sysv
;;
- -ns2 )
- os=-nextstep2
+ nova*)
+ os=rtmk-nova
;;
- -nsk*)
- os=-nsk
+ ns2)
+ os=nextstep2
+ ;;
+ nsk*)
+ os=nsk
;;
# Preserve the version number of sinix5.
- -sinix5.*)
+ sinix5.*)
os=`echo $os | sed -e 's|sinix|sysv|'`
;;
- -sinix*)
- os=-sysv4
- ;;
- -tpf*)
- os=-tpf
+ sinix*)
+ os=sysv4
;;
- -triton*)
- os=-sysv3
+ tpf*)
+ os=tpf
;;
- -oss*)
- os=-sysv3
+ triton*)
+ os=sysv3
;;
- -svr4)
- os=-sysv4
+ oss*)
+ os=sysv3
;;
- -svr3)
- os=-sysv3
+ svr4*)
+ os=sysv4
;;
- -sysvr4)
- os=-sysv4
+ svr3)
+ os=sysv3
;;
- # This must come after -sysvr4.
- -sysv*)
+ sysvr4)
+ os=sysv4
;;
- -ose*)
- os=-ose
+ # This must come after sysvr4.
+ sysv*)
;;
- -es1800*)
- os=-ose
+ ose*)
+ os=ose
;;
- -xenix)
- os=-xenix
+ *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
+ os=mint
;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- os=-mint
+ zvmoe)
+ os=zvmoe
;;
- -aros*)
- os=-aros
+ dicos*)
+ os=dicos
;;
- -zvmoe)
- os=-zvmoe
+ pikeos*)
+ # Until real need of OS specific support for
+ # particular features comes up, bare metal
+ # configurations are quite functional.
+ case $cpu in
+ arm*)
+ os=eabi
+ ;;
+ *)
+ os=elf
+ ;;
+ esac
;;
- -dicos*)
- os=-dicos
+ nacl*)
;;
- -nacl*)
+ ios)
;;
- -ios)
+ none)
;;
- -none)
+ *-eabi)
;;
*)
- # Get rid of the `-' at the beginning of $os.
- os=`echo $os | sed 's/[^-]*-//'`
- echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
+ echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
exit 1
;;
esac
# will signal an error saying that MANUFACTURER isn't an operating
# system, and we'll never get to this point.
-case $basic_machine in
+case $cpu-$vendor in
score-*)
- os=-elf
+ os=elf
;;
spu-*)
- os=-elf
+ os=elf
;;
*-acorn)
- os=-riscix1.2
+ os=riscix1.2
;;
arm*-rebel)
- os=-linux
+ os=linux
;;
arm*-semi)
- os=-aout
+ os=aout
;;
c4x-* | tic4x-*)
- os=-coff
+ os=coff
;;
c8051-*)
- os=-elf
+ os=elf
+ ;;
+ clipper-intergraph)
+ os=clix
;;
hexagon-*)
- os=-elf
+ os=elf
;;
tic54x-*)
- os=-coff
+ os=coff
;;
tic55x-*)
- os=-coff
+ os=coff
;;
tic6x-*)
- os=-coff
+ os=coff
;;
# This must come before the *-dec entry.
pdp10-*)
- os=-tops20
+ os=tops20
;;
pdp11-*)
- os=-none
+ os=none
;;
*-dec | vax-*)
- os=-ultrix4.2
+ os=ultrix4.2
;;
m68*-apollo)
- os=-domain
+ os=domain
;;
i386-sun)
- os=-sunos4.0.2
+ os=sunos4.0.2
;;
m68000-sun)
- os=-sunos3
+ os=sunos3
;;
m68*-cisco)
- os=-aout
+ os=aout
;;
mep-*)
- os=-elf
+ os=elf
;;
mips*-cisco)
- os=-elf
+ os=elf
;;
mips*-*)
- os=-elf
+ os=elf
;;
or32-*)
- os=-coff
+ os=coff
;;
*-tti) # must be before sparc entry or we get the wrong os.
- os=-sysv3
+ os=sysv3
;;
sparc-* | *-sun)
- os=-sunos4.1.1
+ os=sunos4.1.1
;;
pru-*)
- os=-elf
+ os=elf
;;
*-be)
- os=-beos
- ;;
- *-haiku)
- os=-haiku
+ os=beos
;;
*-ibm)
- os=-aix
+ os=aix
;;
*-knuth)
- os=-mmixware
+ os=mmixware
;;
*-wec)
- os=-proelf
+ os=proelf
;;
*-winbond)
- os=-proelf
+ os=proelf
;;
*-oki)
- os=-proelf
+ os=proelf
;;
*-hp)
- os=-hpux
+ os=hpux
;;
*-hitachi)
- os=-hiux
+ os=hiux
;;
i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
- os=-sysv
+ os=sysv
;;
*-cbm)
- os=-amigaos
+ os=amigaos
;;
*-dg)
- os=-dgux
+ os=dgux
;;
*-dolphin)
- os=-sysv3
+ os=sysv3
;;
m68k-ccur)
- os=-rtu
+ os=rtu
;;
m88k-omron*)
- os=-luna
+ os=luna
;;
- *-next )
- os=-nextstep
+ *-next)
+ os=nextstep
;;
*-sequent)
- os=-ptx
+ os=ptx
;;
*-crds)
- os=-unos
+ os=unos
;;
*-ns)
- os=-genix
+ os=genix
;;
i370-*)
- os=-mvs
- ;;
- *-next)
- os=-nextstep3
+ os=mvs
;;
*-gould)
- os=-sysv
+ os=sysv
;;
*-highlevel)
- os=-bsd
+ os=bsd
;;
*-encore)
- os=-bsd
+ os=bsd
;;
*-sgi)
- os=-irix
+ os=irix
;;
*-siemens)
- os=-sysv4
+ os=sysv4
;;
*-masscomp)
- os=-rtu
+ os=rtu
;;
f30[01]-fujitsu | f700-fujitsu)
- os=-uxpv
+ os=uxpv
;;
*-rom68k)
- os=-coff
+ os=coff
;;
*-*bug)
- os=-coff
+ os=coff
;;
*-apple)
- os=-macos
+ os=macos
;;
*-atari*)
- os=-mint
+ os=mint
+ ;;
+ *-wrs)
+ os=vxworks
;;
*)
- os=-none
+ os=none
;;
esac
fi
# Here we handle the case where we know the os, and the CPU type, but not the
# manufacturer. We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
- *-unknown)
+case $vendor in
+ unknown)
case $os in
- -riscix*)
+ riscix*)
vendor=acorn
;;
- -sunos*)
+ sunos*)
vendor=sun
;;
- -cnk*|-aix*)
+ cnk*|-aix*)
vendor=ibm
;;
- -beos*)
+ beos*)
vendor=be
;;
- -hpux*)
+ hpux*)
vendor=hp
;;
- -mpeix*)
+ mpeix*)
vendor=hp
;;
- -hiux*)
+ hiux*)
vendor=hitachi
;;
- -unos*)
+ unos*)
vendor=crds
;;
- -dgux*)
+ dgux*)
vendor=dg
;;
- -luna*)
+ luna*)
vendor=omron
;;
- -genix*)
+ genix*)
vendor=ns
;;
- -mvs* | -opened*)
+ clix*)
+ vendor=intergraph
+ ;;
+ mvs* | opened*)
vendor=ibm
;;
- -os400*)
+ os400*)
vendor=ibm
;;
- -ptx*)
+ ptx*)
vendor=sequent
;;
- -tpf*)
+ tpf*)
vendor=ibm
;;
- -vxsim* | -vxworks* | -windiss*)
+ vxsim* | vxworks* | windiss*)
vendor=wrs
;;
- -aux*)
+ aux*)
vendor=apple
;;
- -hms*)
+ hms*)
vendor=hitachi
;;
- -mpw* | -macos*)
+ mpw* | macos*)
vendor=apple
;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+ *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
vendor=atari
;;
- -vos*)
+ vos*)
vendor=stratus
;;
esac
- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
;;
esac
-echo $basic_machine$os
+echo "$cpu-$vendor-$os"
exit
# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "timestamp='"
# time-stamp-format: "%:y-%02m-%02d"
# time-stamp-end: "'"
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for GNU FriBidi 1.0.5.
+# Generated by GNU Autoconf 2.69 for GNU FriBidi 1.0.8.
#
# Report bugs to <https://github.com/fribidi/fribidi/issues/new>.
#
# Identity of this package.
PACKAGE_NAME='GNU FriBidi'
PACKAGE_TARNAME='fribidi'
-PACKAGE_VERSION='1.0.5'
-PACKAGE_STRING='GNU FriBidi 1.0.5'
+PACKAGE_VERSION='1.0.8'
+PACKAGE_STRING='GNU FriBidi 1.0.8'
PACKAGE_BUGREPORT='https://github.com/fribidi/fribidi/issues/new'
PACKAGE_URL='http://fribidi.org/'
AMDEPBACKSLASH
AMDEP_FALSE
AMDEP_TRUE
-am__quote
am__include
DEPDIR
OBJEXT
PACKAGE_TARNAME
PACKAGE_NAME
PATH_SEPARATOR
-SHELL'
+SHELL
+am__quote'
ac_subst_files=''
ac_user_opts='
enable_option_checking
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures GNU FriBidi 1.0.5 to adapt to many kinds of systems.
+\`configure' configures GNU FriBidi 1.0.8 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of GNU FriBidi 1.0.5:";;
+ short | recursive ) echo "Configuration of GNU FriBidi 1.0.8:";;
esac
cat <<\_ACEOF
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-GNU FriBidi configure 1.0.5
+GNU FriBidi configure 1.0.8
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
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 $as_me 1.0.5, which was
+It was created by GNU FriBidi $as_me 1.0.8, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
-am__api_version='1.15'
+am__api_version='1.16'
ac_aux_dir=
for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
# Define the identity of the package.
PACKAGE='fribidi'
- VERSION='1.0.5'
+ VERSION='1.0.8'
# Some tools Automake needs.
# For better backward compatibility. To be removed once Automake 1.9.x
# dies out for good. For more background, see:
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
mkdir_p='$(MKDIR_P)'
# We need awk for the "check" target (and possibly the TAP driver). The
Aborting the configuration process, to ensure you take notice of the issue.
You can download and install GNU coreutils to get an 'rm' implementation
-that behaves properly: <http://www.gnu.org/software/coreutils/>.
+that behaves properly: <https://www.gnu.org/software/coreutils/>.
If you want to complete the configuration process using your problematic
'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
ac_config_commands="$ac_config_commands depfiles"
-
-am_make=${MAKE-make}
-cat > confinc << 'END'
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
+$as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; }
+cat > confinc.mk << 'END'
am__doit:
- @echo this is the am__doit target
+ @echo this is the am__doit target >confinc.out
.PHONY: am__doit
END
-# If we don't find an include directive, just comment out the code.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
-$as_echo_n "checking for style of include used by $am_make... " >&6; }
am__include="#"
am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from 'make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
+# BSD make does it like this.
+echo '.include "confinc.mk" # ignored' > confmf.BSD
+# Other make implementations (GNU, Solaris 10, AIX) do it like this.
+echo 'include confinc.mk # ignored' > confmf.GNU
+_am_result=no
+for s in GNU BSD; do
+ { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5
+ (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+ case $?:`cat confinc.out 2>/dev/null` in #(
+ '0:this is the am__doit target') :
+ case $s in #(
+ BSD) :
+ am__include='.include' am__quote='"' ;; #(
+ *) :
+ am__include='include' am__quote='' ;;
+esac ;; #(
+ *) :
;;
- esac
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
-$as_echo "$_am_result" >&6; }
-rm -f confinc confmf
+esac
+ if test "$am__include" != "#"; then
+ _am_result="yes ($s style)"
+ break
+ fi
+done
+rm -f confinc.* confmf.*
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
+$as_echo "${_am_result}" >&6; }
# Check whether --enable-dependency-tracking was given.
if test "${enable_dependency_tracking+set}" = set; then :
FRIBIDI_MAJOR_VERSION=1
FRIBIDI_MINOR_VERSION=0
-FRIBIDI_MICRO_VERSION=5
-FRIBIDI_VERSION=1.0.5
+FRIBIDI_MICRO_VERSION=8
+FRIBIDI_VERSION=1.0.8
FRIBIDI_INTERFACE_VERSION=4
FRIBIDI_INTERFACE_AGE=0
FRIBIDI_BINARY_AGE=4
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by GNU FriBidi $as_me 1.0.5, which was
+This file was extended by GNU FriBidi $as_me 1.0.8, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-GNU FriBidi config.status 1.0.5
+GNU FriBidi config.status 1.0.8
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
#
# INIT-COMMANDS
#
-AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
+AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"
# The HP-UX ksh and POSIX shell print the target directory to stdout
# Older Autoconf quotes --file arguments for eval, but not when files
# are listed without --file. Let's play safe and only enable the eval
# if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
+ # TODO: see whether this extra hack can be removed once we start
+ # requiring Autoconf 2.70 or later.
+ case $CONFIG_FILES in #(
+ *\'*) :
+ eval set x "$CONFIG_FILES" ;; #(
+ *) :
+ set x $CONFIG_FILES ;; #(
+ *) :
+ ;;
+esac
shift
- for mf
+ # Used to flag and report bootstrapping failures.
+ am_rc=0
+ for am_mf
do
# Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named 'Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
+ am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile which includes
+ # dependency-tracking related rules and includes.
+ # Grep'ing the whole file directly is not great: AIX grep has a line
# limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`$as_dirname -- "$mf" ||
-$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$mf" : 'X\(//\)[^/]' \| \
- X"$mf" : 'X\(//\)$' \| \
- X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$mf" |
+ sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
+ || continue
+ am_dirpart=`$as_dirname -- "$am_mf" ||
+$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$am_mf" : 'X\(//\)[^/]' \| \
+ X"$am_mf" : 'X\(//\)$' \| \
+ X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$am_mf" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
q
}
s/.*/./; q'`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running 'make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "$am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`$as_dirname -- "$file" ||
-$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$file" : 'X\(//\)[^/]' \| \
- X"$file" : 'X\(//\)$' \| \
- X"$file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
+ am_filepart=`$as_basename -- "$am_mf" ||
+$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \
+ X"$am_mf" : 'X\(//\)$' \| \
+ X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$am_mf" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
s//\1/
q
}
- /^X\(\/\/\)$/{
+ /^X\/\(\/\/\)$/{
s//\1/
q
}
- /^X\(\/\).*/{
+ /^X\/\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`
- as_dir=$dirpart/$fdir; as_fn_mkdir_p
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
+ { echo "$as_me:$LINENO: cd "$am_dirpart" \
+ && sed -e '/# am--include-marker/d' "$am_filepart" \
+ | $MAKE -f - am--depfiles" >&5
+ (cd "$am_dirpart" \
+ && sed -e '/# am--include-marker/d' "$am_filepart" \
+ | $MAKE -f - am--depfiles) >&5 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } || am_rc=$?
done
+ if test $am_rc -ne 0; then
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "Something went wrong bootstrapping makefile fragments
+ for automatic dependency tracking. Try re-running configure with the
+ '--disable-dependency-tracking' option to at least be able to build
+ the package (albeit without support for automatic dependency tracking).
+See \`config.log' for more details" "$LINENO" 5; }
+ fi
+ { am_dirpart=; unset am_dirpart;}
+ { am_filepart=; unset am_filepart;}
+ { am_mf=; unset am_mf;}
+ { am_rc=; unset am_rc;}
+ rm -f conftest-deps.mk
}
;;
"libtool":C)
dnl
m4_define(fribidi_major_version, 1)dnl
m4_define(fribidi_minor_version, 0)dnl
-m4_define(fribidi_micro_version, 5)dnl
+m4_define(fribidi_micro_version, 8)dnl
m4_define(fribidi_interface_version, 4)dnl
m4_define(fribidi_interface_age, 0)dnl
m4_define(fribidi_binary_age, 4)dnl
-#!/bin/sh
+#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
-scriptversion=2016-01-11.22; # UTC
+scriptversion=2018-03-07.03; # UTC
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
+# Copyright (C) 1999-2018 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
# 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, see <http://www.gnu.org/licenses/>.
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# Local Variables:
# mode: shell-script
# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
*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);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac;
$(top_srcdir)/lib/Headers.mk $(am__empty):
cscope cscopelist:
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
.\" 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 "19 February 2018" "c2man fribidi-char-sets.h" "Programmer's Manual"
+.TH "fribidi_charset_to_unicode" 3 "27 September 2019" "c2man fribidi-char-sets.h" "Programmer's Manual"
.SH "NAME"
fribidi_charset_to_unicode \- convert string to Unicode
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_debug_status" 3 "20 February 2018" "c2man fribidi-common.h" "Programmer's Manual"
+.TH "fribidi_debug_status" 3 "27 September 2019" "c2man fribidi-common.h" "Programmer's Manual"
.SH "NAME"
fribidi_debug_status \- get current debug state
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-bidi-types.h" "Programmer's Manual"
+.TH "fribidi_get_bidi_type" 3 "24 July 2018" "c2man fribidi-bidi-types.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_bidi_type \- get character bidi type
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-bidi-types.h" "Programmer's Manual"
+.TH "fribidi_get_bidi_type_name" 3 "24 July 2018" "c2man fribidi-bidi-types.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_bidi_type_name \- get bidi type name
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-bidi-types.h" "Programmer's Manual"
+.TH "fribidi_get_bidi_types" 3 "24 July 2018" "c2man fribidi-bidi-types.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_bidi_types \- get bidi types for an string of characters
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_get_bracket" 3 "19 February 2018" "c2man fribidi-brackets.h" "Programmer's Manual"
+.TH "fribidi_get_bracket" 3 "20 July 2018" "c2man fribidi-brackets.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_bracket \- get bracketed character
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_get_mirror_char(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_get_bracket_types" 3 "19 February 2018" "c2man fribidi-brackets.h" "Programmer's Manual"
+.TH "fribidi_get_bracket_types" 3 "20 July 2018" "c2man fribidi-brackets.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_bracket_types \- get bracketed characters
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_get_mirror_char(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-joining-types.h" "Programmer's Manual"
+.TH "fribidi_get_joining_type" 3 "20 July 2018" "c2man fribidi-joining-types.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_joining_type \- get character joining type
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_types(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-joining-types.h" "Programmer's Manual"
+.TH "fribidi_get_joining_type_name" 3 "20 July 2018" "c2man fribidi-joining-types.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_joining_type_name \- get joining type name
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-joining-types.h" "Programmer's Manual"
+.TH "fribidi_get_joining_types" 3 "20 July 2018" "c2man fribidi-joining-types.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_joining_types \- get joining types for an string of characters
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-mirroring.h" "Programmer's Manual"
+.TH "fribidi_get_mirror_char" 3 "20 July 2018" "c2man fribidi-mirroring.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_mirror_char \- get mirrored character
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-bidi.h" "Programmer's Manual"
+.TH "fribidi_get_par_direction" 3 "20 July 2018" "c2man fribidi-bidi.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_par_direction \- get base paragraph direction
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-deprecated.h" "Programmer's Manual"
+.TH "fribidi_get_par_embedding_levels" 3 "13 October 2019" "c2man fribidi-deprecated.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_par_embedding_levels \- get bidi embedding levels of a paragraph
.SH "SYNOPSIS"
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_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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_ex" 3 "19 February 2018" "c2man fribidi-bidi.h" "Programmer's Manual"
+.TH "fribidi_get_par_embedding_levels_ex" 3 "20 July 2018" "c2man fribidi-bidi.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_par_embedding_levels_ex \- get bidi embedding levels of a paragraph
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_get_type" 3 "19 February 2018" "c2man fribidi-deprecated.h" "Programmer's Manual"
+.TH "fribidi_get_type" 3 "13 October 2019" "c2man fribidi-deprecated.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_type \- get character bidi type
.SH "SYNOPSIS"
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_get_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-deprecated.h" "Programmer's Manual"
+.TH "fribidi_get_type_internal" 3 "13 October 2019" "c2man fribidi-deprecated.h" "Programmer's Manual"
.SH "NAME"
fribidi_get_type_internal \- get character bidi type
.SH "SYNOPSIS"
fribidi_set_reorder_nsm(3),
fribidi_log2vis_get_embedding_levels(3),
fribidi_get_type(3),
-fribidi_remove_bidi_marks(3),
-fribidi_log2vis(3),
fribidi_get_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_join_arabic" 3 "19 February 2018" "c2man fribidi-joining.h" "Programmer's Manual"
+.TH "fribidi_join_arabic" 3 "20 July 2018" "c2man fribidi-joining.h" "Programmer's Manual"
.SH "NAME"
fribidi_join_arabic \- do Arabic joining
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_get_joining_type(3),
fribidi_get_joining_types(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_log2vis" 3 "19 February 2018" "c2man fribidi-deprecated.h" "Programmer's Manual"
+.TH "fribidi_log2vis" 3 "13 October 2019" "c2man fribidi.h" "Programmer's Manual"
.SH "NAME"
fribidi_log2vis \- get visual string
.SH "SYNOPSIS"
fribidi_log2vis_get_embedding_levels(3),
fribidi_get_type(3),
fribidi_get_type_internal(3),
-fribidi_remove_bidi_marks(3),
-fribidi_get_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_get_joining_types(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-deprecated.h" "Programmer's Manual"
+.TH "fribidi_log2vis_get_embedding_levels" 3 "13 October 2019" "c2man fribidi-deprecated.h" "Programmer's Manual"
.SH "NAME"
fribidi_log2vis_get_embedding_levels \- get embedding levels
.SH "SYNOPSIS"
fribidi_set_reorder_nsm(3),
fribidi_get_type(3),
fribidi_get_type_internal(3),
-fribidi_remove_bidi_marks(3),
-fribidi_log2vis(3),
fribidi_get_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_mirroring_status" 3 "19 February 2018" "c2man fribidi-deprecated.h" "Programmer's Manual"
+.TH "fribidi_mirroring_status" 3 "13 October 2019" "c2man fribidi-deprecated.h" "Programmer's Manual"
.SH "NAME"
fribidi_mirroring_status \- get current mirroring status
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_parse_charset" 3 "19 February 2018" "c2man fribidi-char-sets.h" "Programmer's Manual"
+.TH "fribidi_parse_charset" 3 "27 September 2019" "c2man fribidi-char-sets.h" "Programmer's Manual"
.SH "NAME"
fribidi_parse_charset \- parse character set name
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-deprecated.h" "Programmer's Manual"
+.TH "fribidi_remove_bidi_marks" 3 "21 October 2019" "c2man fribidi.h" "Programmer's Manual"
.SH "NAME"
fribidi_remove_bidi_marks \- remove bidi marks out of an string
.SH "SYNOPSIS"
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 occurred (memory
allocation failure most probably).
fribidi_log2vis_get_embedding_levels(3),
fribidi_get_type(3),
fribidi_get_type_internal(3),
-fribidi_log2vis(3),
fribidi_get_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_reorder_line" 3 "19 February 2018" "c2man fribidi-bidi.h" "Programmer's Manual"
+.TH "fribidi_reorder_line" 3 "20 July 2018" "c2man fribidi-bidi.h" "Programmer's Manual"
.SH "NAME"
fribidi_reorder_line \- reorder a line of logical string to visual
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-deprecated.h" "Programmer's Manual"
+.TH "fribidi_reorder_nsm_status" 3 "13 October 2019" "c2man fribidi-deprecated.h" "Programmer's Manual"
.SH "NAME"
fribidi_reorder_nsm_status \- get current marks reordering status
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_set_debug" 3 "20 February 2018" "c2man fribidi-common.h" "Programmer's Manual"
+.TH "fribidi_set_debug" 3 "27 September 2019" "c2man fribidi-common.h" "Programmer's Manual"
.SH "NAME"
fribidi_set_debug \- set debug state
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_set_mirroring" 3 "19 February 2018" "c2man fribidi-deprecated.h" "Programmer's Manual"
+.TH "fribidi_set_mirroring" 3 "13 October 2019" "c2man fribidi-deprecated.h" "Programmer's Manual"
.SH "NAME"
fribidi_set_mirroring \- set mirroring on or off
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-deprecated.h" "Programmer's Manual"
+.TH "fribidi_set_reorder_nsm" 3 "13 October 2019" "c2man fribidi-deprecated.h" "Programmer's Manual"
.SH "NAME"
fribidi_set_reorder_nsm \- set marks reordering on or off
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_shape" 3 "19 February 2018" "c2man fribidi-shape.h" "Programmer's Manual"
+.TH "fribidi_shape" 3 "20 July 2018" "c2man fribidi-shape.h" "Programmer's Manual"
.SH "NAME"
fribidi_shape \- do bidi-aware shaping
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_get_mirror_char(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
-fribidi_get_bracket_types(3)
+fribidi_get_bracket_types(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_shape_arabic" 3 "19 February 2018" "c2man fribidi-arabic.h" "Programmer's Manual"
+.TH "fribidi_shape_arabic" 3 "20 July 2018" "c2man fribidi-arabic.h" "Programmer's Manual"
.SH "NAME"
fribidi_shape_arabic \- do Arabic shaping
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
.\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
-.TH "fribidi_shape_mirroring" 3 "19 February 2018" "c2man fribidi-mirroring.h" "Programmer's Manual"
+.TH "fribidi_shape_mirroring" 3 "20 July 2018" "c2man fribidi-mirroring.h" "Programmer's Manual"
.SH "NAME"
fribidi_shape_mirroring \- do mirroring shaping
.SH "SYNOPSIS"
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_get_mirror_char(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
.\" 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 "19 February 2018" "c2man fribidi-char-sets.h" "Programmer's Manual"
+.TH "fribidi_unicode_to_charset" 3 "27 September 2019" "c2man fribidi-char-sets.h" "Programmer's Manual"
.SH "NAME"
fribidi_unicode_to_charset \- convert string from Unicode
.SH "SYNOPSIS"
.SH "PARAMETERS"
.TP
.B "FriBidiCharSet char_set"
-Character set to conver to.
+Character set to convert to.
.sp
Possible values for a \fBFriBidiCharSet\fR are as follows:
.RS 0.75in
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_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
-fribidi_shape(3)
+fribidi_shape(3),
+fribidi_remove_bidi_marks(3)
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/gen-arabic-shaping-tab.Po \
+ ./$(DEPDIR)/gen-unicode-version.Po \
+ ./$(DEPDIR)/gen_bidi_type_tab-gen-bidi-type-tab.Po \
+ ./$(DEPDIR)/gen_bidi_type_tab-packtab.Po \
+ ./$(DEPDIR)/gen_brackets_tab-gen-brackets-tab.Po \
+ ./$(DEPDIR)/gen_brackets_tab-packtab.Po \
+ ./$(DEPDIR)/gen_brackets_type_tab-gen-brackets-type-tab.Po \
+ ./$(DEPDIR)/gen_brackets_type_tab-packtab.Po \
+ ./$(DEPDIR)/gen_joining_type_tab-gen-joining-type-tab.Po \
+ ./$(DEPDIR)/gen_joining_type_tab-packtab.Po \
+ ./$(DEPDIR)/gen_mirroring_tab-gen-mirroring-tab.Po \
+ ./$(DEPDIR)/gen_mirroring_tab-packtab.Po
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
*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);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
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-unicode-version.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_bidi_type_tab-gen-bidi-type-tab.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_bidi_type_tab-packtab.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_brackets_tab-gen-brackets-tab.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_brackets_tab-packtab.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_brackets_type_tab-gen-brackets-type-tab.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_brackets_type_tab-packtab.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_joining_type_tab-gen-joining-type-tab.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_joining_type_tab-packtab.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_mirroring_tab-gen-mirroring-tab.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_mirroring_tab-packtab.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen-arabic-shaping-tab.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen-unicode-version.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_bidi_type_tab-gen-bidi-type-tab.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_bidi_type_tab-packtab.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_brackets_tab-gen-brackets-tab.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_brackets_tab-packtab.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_brackets_type_tab-gen-brackets-type-tab.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_brackets_type_tab-packtab.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_joining_type_tab-gen-joining-type-tab.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_joining_type_tab-packtab.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_mirroring_tab-gen-mirroring-tab.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen_mirroring_tab-packtab.Po@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+ @$(MKDIR_P) $(@D)
+ @echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
.c.o:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
clean-am: clean-generic clean-libtool mostlyclean-am
distclean: distclean-am
- -rm -rf ./$(DEPDIR)
+ -rm -f ./$(DEPDIR)/gen-arabic-shaping-tab.Po
+ -rm -f ./$(DEPDIR)/gen-unicode-version.Po
+ -rm -f ./$(DEPDIR)/gen_bidi_type_tab-gen-bidi-type-tab.Po
+ -rm -f ./$(DEPDIR)/gen_bidi_type_tab-packtab.Po
+ -rm -f ./$(DEPDIR)/gen_brackets_tab-gen-brackets-tab.Po
+ -rm -f ./$(DEPDIR)/gen_brackets_tab-packtab.Po
+ -rm -f ./$(DEPDIR)/gen_brackets_type_tab-gen-brackets-type-tab.Po
+ -rm -f ./$(DEPDIR)/gen_brackets_type_tab-packtab.Po
+ -rm -f ./$(DEPDIR)/gen_joining_type_tab-gen-joining-type-tab.Po
+ -rm -f ./$(DEPDIR)/gen_joining_type_tab-packtab.Po
+ -rm -f ./$(DEPDIR)/gen_mirroring_tab-gen-mirroring-tab.Po
+ -rm -f ./$(DEPDIR)/gen_mirroring_tab-packtab.Po
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
installcheck-am:
maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
+ -rm -f ./$(DEPDIR)/gen-arabic-shaping-tab.Po
+ -rm -f ./$(DEPDIR)/gen-unicode-version.Po
+ -rm -f ./$(DEPDIR)/gen_bidi_type_tab-gen-bidi-type-tab.Po
+ -rm -f ./$(DEPDIR)/gen_bidi_type_tab-packtab.Po
+ -rm -f ./$(DEPDIR)/gen_brackets_tab-gen-brackets-tab.Po
+ -rm -f ./$(DEPDIR)/gen_brackets_tab-packtab.Po
+ -rm -f ./$(DEPDIR)/gen_brackets_type_tab-gen-brackets-type-tab.Po
+ -rm -f ./$(DEPDIR)/gen_brackets_type_tab-packtab.Po
+ -rm -f ./$(DEPDIR)/gen_joining_type_tab-gen-joining-type-tab.Po
+ -rm -f ./$(DEPDIR)/gen_joining_type_tab-packtab.Po
+ -rm -f ./$(DEPDIR)/gen_mirroring_tab-gen-mirroring-tab.Po
+ -rm -f ./$(DEPDIR)/gen_mirroring_tab-packtab.Po
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
- clean-libtool cscopelist-am ctags ctags-am 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 tags-am uninstall uninstall-am
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
+ clean-generic clean-libtool cscopelist-am ctags ctags-am \
+ 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 tags-am uninstall uninstall-am
.PRECIOUS: Makefile
#include <fribidi-unicode.h>
#include <stdio.h>
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
#ifdef STDC_HEADERS
# include <stdlib.h>
# include <stddef.h>
#include <fribidi-unicode.h>
#include <stdio.h>
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
#ifdef STDC_HEADERS
# include <stdlib.h>
# include <stddef.h>
#include <fribidi-unicode.h>
#include <stdio.h>
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
#ifdef STDC_HEADERS
# include <stdlib.h>
# include <stddef.h>
#include <fribidi-unicode.h>
#include <stdio.h>
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
#ifdef STDC_HEADERS
# include <stdlib.h>
# include <stddef.h>
#include <fribidi-unicode.h>
#include <stdio.h>
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
#ifdef STDC_HEADERS
# include <stdlib.h>
# include <stddef.h>
#include <fribidi-unicode.h>
#include <stdio.h>
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
#ifdef STDC_HEADERS
# include <stdlib.h>
# include <stddef.h>
#include <common.h>
#include <stdio.h>
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
#ifdef STDC_HEADERS
# include <stdlib.h>
# include <stddef.h>
'gen-unicode-version.c',
include_directories: incs,
c_args: native_args,
- install: false)
+ install: false,
+ native: true)
fribidi_unicode_version_h = custom_target('fribidi-unicode-version.h',
input: files('unidata/ReadMe.txt', 'unidata/BidiMirroring.txt'),
gen_prog_src, 'packtab.c',
include_directories: incs,
c_args: native_args,
- install: false)
+ install: false,
+ native: true)
tab_inc_file = custom_target(gen_prog_name,
input: gen_prog_inputs,
#!/bin/sh
# install - install a program, script, or datafile
-scriptversion=2016-01-11.22; # UTC
+scriptversion=2018-03-11.20; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
fi
dst=$dst_arg
- # If destination is a directory, append the input filename; won't work
- # if double slashes aren't ignored.
+ # If destination is a directory, append the input filename.
if test -d "$dst"; then
if test "$is_target_a_directory" = never; then
echo "$0: $dst_arg: Is a directory" >&2
exit 1
fi
dstdir=$dst
- dst=$dstdir/`basename "$src"`
+ dstbase=`basename "$src"`
+ case $dst in
+ */) dst=$dst$dstbase;;
+ *) dst=$dst/$dstbase;;
+ esac
dstdir_status=0
else
dstdir=`dirname "$dst"`
fi
fi
+ case $dstdir in
+ */) dstdirslash=$dstdir;;
+ *) dstdirslash=$dstdir/;;
+ esac
+
obsolete_mkdir_used=false
if test $dstdir_status != 0; then
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
;;
*)
+ # Note that $RANDOM variable is not portable (e.g. dash); Use it
+ # here however when possible just to lower collision chance.
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
+ trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
+
+ # Because "mkdir -p" follows existing symlinks and we likely work
+ # directly in world-writeable /tmp, make sure that the '$tmpdir'
+ # directory is successfully created first before we actually test
+ # 'mkdir -p' feature.
if (umask $mkdir_umask &&
- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
+ $mkdirprog $mkdir_mode "$tmpdir" &&
+ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/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-writable 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"`
+ test_tmpdir="$tmpdir/a"
+ ls_ld_tmpdir=`ls -ld "$test_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"`
+ $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
+ ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
}
}
then posix_mkdir=:
fi
- rmdir "$tmpdir/d" "$tmpdir"
+ rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
else
# Remove any dirs left behind by ancient mkdir implementations.
- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
+ rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
fi
trap '' 0;;
esac;;
else
# Make a couple of temp file names in the proper directory.
- dsttmp=$dstdir/_inst.$$_
- rmtmp=$dstdir/_rm.$$_
+ dsttmp=${dstdirslash}_inst.$$_
+ rmtmp=${dstdirslash}_rm.$$_
# Trap to clean up those temp files at exit.
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
done
# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/fribidi-arabic.Plo \
+ ./$(DEPDIR)/fribidi-bidi-types.Plo \
+ ./$(DEPDIR)/fribidi-bidi.Plo ./$(DEPDIR)/fribidi-brackets.Plo \
+ ./$(DEPDIR)/fribidi-char-sets-cap-rtl.Plo \
+ ./$(DEPDIR)/fribidi-char-sets-cp1255.Plo \
+ ./$(DEPDIR)/fribidi-char-sets-cp1256.Plo \
+ ./$(DEPDIR)/fribidi-char-sets-iso8859-6.Plo \
+ ./$(DEPDIR)/fribidi-char-sets-iso8859-8.Plo \
+ ./$(DEPDIR)/fribidi-char-sets-utf8.Plo \
+ ./$(DEPDIR)/fribidi-char-sets.Plo \
+ ./$(DEPDIR)/fribidi-deprecated.Plo \
+ ./$(DEPDIR)/fribidi-joining-types.Plo \
+ ./$(DEPDIR)/fribidi-joining.Plo \
+ ./$(DEPDIR)/fribidi-mirroring.Plo ./$(DEPDIR)/fribidi-run.Plo \
+ ./$(DEPDIR)/fribidi-shape.Plo ./$(DEPDIR)/fribidi.Plo
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
*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);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac;
$(srcdir)/Headers.mk $(am__empty):
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-brackets.Plo@am__quote@
-@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@
-@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-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@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-arabic.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-bidi-types.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-bidi.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-brackets.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets-cap-rtl.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets-cp1255.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets-cp1256.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets-iso8859-6.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets-iso8859-8.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets-utf8.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-char-sets.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-deprecated.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-joining-types.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-joining.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-mirroring.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-run.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi-shape.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fribidi.Plo@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+ @$(MKDIR_P) $(@D)
+ @echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
.c.o:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
mostlyclean-am
distclean: distclean-am
- -rm -rf ./$(DEPDIR)
+ -rm -f ./$(DEPDIR)/fribidi-arabic.Plo
+ -rm -f ./$(DEPDIR)/fribidi-bidi-types.Plo
+ -rm -f ./$(DEPDIR)/fribidi-bidi.Plo
+ -rm -f ./$(DEPDIR)/fribidi-brackets.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets-cap-rtl.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets-cp1255.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets-cp1256.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets-iso8859-6.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets-iso8859-8.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets-utf8.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets.Plo
+ -rm -f ./$(DEPDIR)/fribidi-deprecated.Plo
+ -rm -f ./$(DEPDIR)/fribidi-joining-types.Plo
+ -rm -f ./$(DEPDIR)/fribidi-joining.Plo
+ -rm -f ./$(DEPDIR)/fribidi-mirroring.Plo
+ -rm -f ./$(DEPDIR)/fribidi-run.Plo
+ -rm -f ./$(DEPDIR)/fribidi-shape.Plo
+ -rm -f ./$(DEPDIR)/fribidi.Plo
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
installcheck-am:
maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
+ -rm -f ./$(DEPDIR)/fribidi-arabic.Plo
+ -rm -f ./$(DEPDIR)/fribidi-bidi-types.Plo
+ -rm -f ./$(DEPDIR)/fribidi-bidi.Plo
+ -rm -f ./$(DEPDIR)/fribidi-brackets.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets-cap-rtl.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets-cp1255.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets-cp1256.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets-iso8859-6.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets-iso8859-8.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets-utf8.Plo
+ -rm -f ./$(DEPDIR)/fribidi-char-sets.Plo
+ -rm -f ./$(DEPDIR)/fribidi-deprecated.Plo
+ -rm -f ./$(DEPDIR)/fribidi-joining-types.Plo
+ -rm -f ./$(DEPDIR)/fribidi-joining.Plo
+ -rm -f ./$(DEPDIR)/fribidi-mirroring.Plo
+ -rm -f ./$(DEPDIR)/fribidi-run.Plo
+ -rm -f ./$(DEPDIR)/fribidi-shape.Plo
+ -rm -f ./$(DEPDIR)/fribidi.Plo
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
.MAKE: all check install install-am install-strip
-.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
- clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \
- ctags-am distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
+ clean-generic clean-libLTLIBRARIES clean-libtool cscopelist-am \
+ ctags ctags-am 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 \
/* arabic-shaping.tab.i
- * generated by gen-arabic-shaping-tab (GNU FriBidi 1.0.1)
+ * generated by gen-arabic-shaping-tab (GNU FriBidi 1.0)
* from the files UnicodeData.txt, (null) of Unicode version 10.0.0. */
/*
/* bidi-type.tab.i
- * generated by gen-bidi-type-tab (GNU FriBidi 1.0.1)
+ * generated by gen-bidi-type-tab (GNU FriBidi 1.0)
* from the file UnicodeData.txt of Unicode version 10.0.0. */
#define PACKTAB_UINT8 uint8_t
#ifndef _BIDI_TYPES_H
#define _BIDI_TYPES_H
-#include "common.h"
+#include "fribidi-common.h"
#include <fribidi-types.h>
#include <fribidi-bidi-types.h>
/* brackets-type.tab.i
- * generated by gen-brackets-type-tab (GNU FriBidi 1.0.1)
+ * generated by gen-brackets-type-tab (GNU FriBidi 1.0)
* from the file BidiBrackets.txt of Unicode version 10.0.0. */
#define PACKTAB_UINT8 uint8_t
/* brackets.tab.i
- * generated by gen-brackets-tab (GNU FriBidi 1.0.1)
+ * generated by gen-brackets-tab (GNU FriBidi 1.0)
* from the file BidiBrackets.txt of Unicode version 10.0.0. */
#define PACKTAB_UINT8 uint8_t
#include "common.h"
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
#ifdef HAVE_STDLIB_H
# include <stdlib.h>
#endif
0;
}
+static void *
+fribidi_bsearch (const void *key, const void *base,
+ unsigned int nmemb, unsigned int size,
+ int (*compar)(const void *_key, const void *_item))
+{
+ int min = 0, max = (int) nmemb - 1;
+ while (min <= max)
+ {
+ int mid = ((unsigned int) min + (unsigned int) max) / 2;
+ const void *p = (const void *) (((const char *) base) + (mid * size));
+ int c = compar (key, p);
+ if (c < 0)
+ max = mid - 1;
+ else if (c > 0)
+ min = mid + 1;
+ else
+ return (void *) p;
+ }
+ return NULL;
+}
static FriBidiChar
find_pair_match (const PairMap *table, int size, FriBidiChar first, FriBidiChar second)
x.pair[0] = first;
x.pair[1] = second;
x.to = 0;
- match = bsearch (&x, table, size, sizeof (table[0]), comp_PairMap);
+ match = fribidi_bsearch (&x, table, size, sizeof (table[0]), comp_PairMap);
return match ? match->to : 0;
}
# define FRIBIDI_TYPE_LRO FRIBIDI_TYPE_LRO_VAL
# define FRIBIDI_TYPE_RLO FRIBIDI_TYPE_RLO_VAL
# define FRIBIDI_TYPE_PDF FRIBIDI_TYPE_PDF_VAL
-# define FRIBIDI_TYPE_LRI FRIBIDI_TYPE_PDF_LRI
-# define FRIBIDI_TYPE_RLI FRIBIDI_TYPE_PDF_RLI
-# define FRIBIDI_TYPE_FSI FRIBIDI_TYPE_PDF_FSI
-# define FRIBIDI_TYPE_PDI FRIBIDI_TYPE_PDF_PDI
+# define FRIBIDI_TYPE_LRI FRIBIDI_TYPE_LRI_VAL
+# define FRIBIDI_TYPE_RLI FRIBIDI_TYPE_RLI_VAL
+# define FRIBIDI_TYPE_FSI FRIBIDI_TYPE_FSI_VAL
+# define FRIBIDI_TYPE_PDI FRIBIDI_TYPE_PDI_VAL
typedef uint32_t FriBidiParType;
# define FRIBIDI_PAR_LTR FRIBIDI_TYPE_LTR_VAL
{
FriBidiCharType ppp_type = RL_TYPE (ppp);
- if (ppp_type == _FRIBIDI_TYPE_SENTINEL)
+ if (ppp_type == FRIBIDI_TYPE_SENTINEL)
break;
/* Note that when sweeping forward we continue one run
* define macros for push and pop the status in to / out of the stack
*-------------------------------------------------------------------------*/
-/* There are a few little points in pushing into and poping from the status
+/* There are a few little points in pushing into and popping from the status
stack:
1. when the embedding level is not valid (more than
FRIBIDI_BIDI_MAX_EXPLICIT_LEVEL=125), you must reject it, and not to push
FriBidiLevel *embedding_levels
)
{
- FriBidiLevel base_level_per_iso_level[FRIBIDI_BIDI_MAX_EXPLICIT_LEVEL];
FriBidiLevel base_level, max_level = 0;
FriBidiParType base_dir;
FriBidiRun *main_run_list = NULL, *explicits_list = NULL, *pp;
DBG2 (" base level : %c", fribidi_char_from_level (base_level));
DBG2 (" base dir : %s", fribidi_get_bidi_type_name (base_dir));
- base_level_per_iso_level[0] = base_level;
-
# if DEBUG
if UNLIKELY
(fribidi_debug_status ())
}
RL_LEVEL (pp) = level;
- RL_ISOLATE_LEVEL (pp) = isolate_level++;
- base_level_per_iso_level[isolate_level] = new_level;
+ RL_ISOLATE_LEVEL (pp) = isolate_level;
+ if (isolate_level < FRIBIDI_BIDI_MAX_EXPLICIT_LEVEL-1)
+ isolate_level++;
if (!FRIBIDI_IS_NEUTRAL (override))
RL_TYPE (pp) = override;
FriBidiPairingNode *ppairs = pairing_nodes;
while (ppairs)
{
- int iso_level = ppairs->open->isolate_level;
- int embedding_level = base_level_per_iso_level[iso_level];
+ int embedding_level = ppairs->open->level;
/* Find matching strong. */
fribidi_boolean found = false;
compare with the preceding strong to establish whether
to apply N0c1 (opposite) or N0c2 embedding */
RL_TYPE(ppairs->open) = RL_TYPE(ppairs->close) = prec_strong_level % 2 ? FRIBIDI_TYPE_RTL : FRIBIDI_TYPE_LTR;
- RL_LEVEL(ppairs->open) = RL_LEVEL(ppairs->close) = prec_strong_level;
found = true;
break;
}
* Returns: The length of the new string.
*/
FRIBIDI_ENTRY FriBidiStrIndex fribidi_unicode_to_charset (
- FriBidiCharSet char_set, /* character set to conver to */
+ FriBidiCharSet char_set, /* character set to convert to */
const FriBidiChar *us, /* input Unicode string */
FriBidiStrIndex len, /* input string length */
char *s /* output string encoded in char_set */
* The dllimport is needed here mostly for the fribidi_version_info variable,
* for functions it's not required. Probably needs more fine-tuning if
* someone starts building fribidi as static library with MSVC. We'll cross
- * that brige when we get there. */
+ * that bridge when we get there. */
# define FRIBIDI_ENTRY __declspec(dllimport) extern
# else
# define FRIBIDI_ENTRY extern
-FRIBIDI_ENTRY FriBidiLevel
-fribidi_log2vis_get_embedding_levels (
- const FriBidiCharType *bidi_types, /* input list of bidi types as returned by
- fribidi_get_bidi_types() */
- const FriBidiStrIndex len, /* input string length of the paragraph */
- FriBidiParType *pbase_dir, /* requested and resolved paragraph
- * base direction */
- FriBidiLevel *embedding_levels /* output list of embedding levels */
-)
-{
- return fribidi_get_par_embedding_levels_ex (bidi_types, NULL, len, pbase_dir, embedding_levels);
-}
-
FRIBIDI_ENTRY FriBidiCharType
fribidi_get_type (
FriBidiChar ch /* input character */
}
-
-FRIBIDI_ENTRY FriBidiStrIndex
-fribidi_remove_bidi_marks (
- FriBidiChar *str,
- const FriBidiStrIndex len,
- FriBidiStrIndex *positions_to_this,
- FriBidiStrIndex *position_from_this_list,
- FriBidiLevel *embedding_levels
-)
-{
- register FriBidiStrIndex i, j = 0;
- fribidi_boolean private_from_this = false;
- fribidi_boolean status = false;
-
- if UNLIKELY
- (len == 0)
- {
- status = true;
- goto out;
- }
-
- DBG ("in fribidi_remove_bidi_marks");
-
- fribidi_assert (str);
-
- /* If to_this is not NULL, we must have from_this as well. If it is
- not given by the caller, we have to make a private instance of it. */
- if (positions_to_this && !position_from_this_list)
- {
- position_from_this_list = fribidi_malloc (sizeof
- (position_from_this_list[0]) *
- len);
- if UNLIKELY
- (!position_from_this_list) goto out;
- private_from_this = true;
- for (i = 0; i < len; i++)
- position_from_this_list[positions_to_this[i]] = i;
- }
-
- for (i = 0; i < len; i++)
- if (!FRIBIDI_IS_EXPLICIT_OR_BN (fribidi_get_bidi_type (str[i]))
- && !FRIBIDI_IS_ISOLATE (fribidi_get_bidi_type (str[i]))
- && str[i] != FRIBIDI_CHAR_LRM && str[i] != FRIBIDI_CHAR_RLM)
- {
- str[j] = str[i];
- if (embedding_levels)
- embedding_levels[j] = embedding_levels[i];
- if (position_from_this_list)
- position_from_this_list[j] = position_from_this_list[i];
- j++;
- }
-
- /* Convert the from_this list to to_this */
- if (positions_to_this)
- {
- for (i = 0; i < len; i++)
- positions_to_this[i] = -1;
- for (i = 0; i < len; i++)
- positions_to_this[position_from_this_list[i]] = i;
- }
-
- status = true;
-
-out:
-
- if (private_from_this)
- fribidi_free (position_from_this_list);
-
- return status ? j : -1;
-}
-
-/* Local array size, used for stack-based local arrays */
-#define LOCAL_LIST_SIZE 128
-
-FRIBIDI_ENTRY FriBidiLevel
-fribidi_log2vis (
- /* input */
- const FriBidiChar *str,
- FriBidiStrIndex len,
- /* input and output */
- FriBidiParType *pbase_dir,
- /* output */
- FriBidiChar *visual_str,
- FriBidiStrIndex *positions_L_to_V,
- FriBidiStrIndex *positions_V_to_L,
- FriBidiLevel *embedding_levels
-)
-{
- register FriBidiStrIndex i;
- FriBidiLevel max_level = 0;
- fribidi_boolean private_V_to_L = false;
- fribidi_boolean private_embedding_levels = false;
- fribidi_boolean status = false;
- FriBidiArabicProp local_ar_props[LOCAL_LIST_SIZE];
- FriBidiArabicProp *ar_props = NULL;
- FriBidiLevel local_embedding_levels[LOCAL_LIST_SIZE];
- FriBidiCharType local_bidi_types[LOCAL_LIST_SIZE];
- FriBidiCharType *bidi_types = NULL;
- FriBidiBracketType local_bracket_types[LOCAL_LIST_SIZE];
- FriBidiBracketType *bracket_types = NULL;
- FriBidiStrIndex local_positions_V_to_L[LOCAL_LIST_SIZE];
-
- if UNLIKELY
- (len == 0)
- {
- status = true;
- goto out;
- }
-
- DBG ("in fribidi_log2vis");
-
- fribidi_assert (str);
- fribidi_assert (pbase_dir);
-
- if (len < LOCAL_LIST_SIZE)
- bidi_types = local_bidi_types;
- else
- bidi_types = fribidi_malloc (len * sizeof bidi_types[0]);
- if (!bidi_types)
- goto out;
-
- fribidi_get_bidi_types (str, len, bidi_types);
-
- if (len < LOCAL_LIST_SIZE)
- bracket_types = local_bracket_types;
- else
- bracket_types = fribidi_malloc (len * sizeof bracket_types[0]);
-
- if (!bracket_types)
- goto out;
-
- fribidi_get_bracket_types (str, len, bidi_types,
- /* output */
- bracket_types);
- if (!embedding_levels)
- {
- if (len < LOCAL_LIST_SIZE)
- embedding_levels = local_embedding_levels;
- else
- embedding_levels = fribidi_malloc (len * sizeof embedding_levels[0]);
- if (!embedding_levels)
- goto out;
- private_embedding_levels = true;
- }
-
- max_level = fribidi_get_par_embedding_levels_ex (bidi_types,
- bracket_types,
- len,
- pbase_dir,
- embedding_levels) - 1;
- if UNLIKELY
- (max_level < 0) goto out;
-
- /* If l2v is to be calculated we must have v2l as well. If it is not
- given by the caller, we have to make a private instance of it. */
- if (positions_L_to_V && !positions_V_to_L)
- {
- if (len < LOCAL_LIST_SIZE)
- positions_V_to_L = local_positions_V_to_L;
- else
- positions_V_to_L =
- (FriBidiStrIndex *) fribidi_malloc (sizeof (FriBidiStrIndex) * len);
- if (!positions_V_to_L)
- goto out;
- private_V_to_L = true;
- }
-
- /* Set up the ordering array to identity order */
- if (positions_V_to_L)
- {
- for (i = 0; i < len; i++)
- positions_V_to_L[i] = i;
- }
-
-
- if (visual_str)
- {
- /* Using memcpy instead
- for (i = len - 1; i >= 0; i--)
- visual_str[i] = str[i];
- */
- memcpy (visual_str, str, len * sizeof (*visual_str));
-
- /* Arabic joining */
- if (len < LOCAL_LIST_SIZE)
- ar_props = local_ar_props;
- else
- ar_props = fribidi_malloc (len * sizeof ar_props[0]);
- fribidi_get_joining_types (str, len, ar_props);
- fribidi_join_arabic (bidi_types, len, embedding_levels, ar_props);
-
- fribidi_shape (flags, embedding_levels, len, ar_props, visual_str);
- }
-
- /* line breaking goes here, but we assume one line in this function */
-
- /* and this should be called once per line, but again, we assume one
- * line in this deprecated function */
- status =
- fribidi_reorder_line (flags, bidi_types, len, 0, *pbase_dir,
- embedding_levels, visual_str,
- positions_V_to_L);
-
- /* Convert the v2l list to l2v */
- if (positions_L_to_V)
- {
- for (i = 0; i < len; i++)
- positions_L_to_V[i] = -1;
- for (i = 0; i < len; i++)
- positions_L_to_V[positions_V_to_L[i]] = i;
- }
-
-out:
-
- if (private_V_to_L && positions_V_to_L != local_positions_V_to_L)
- fribidi_free (positions_V_to_L);
-
- if (private_embedding_levels && embedding_levels != local_embedding_levels)
- fribidi_free (embedding_levels);
-
- if (ar_props && ar_props != local_ar_props)
- fribidi_free (ar_props);
-
- if (bidi_types && bidi_types != local_bidi_types)
- fribidi_free (bidi_types);
-
- if (bracket_types && bracket_types != local_bracket_types)
- fribidi_free (bracket_types);
-
- return status ? max_level + 1 : 0;
-}
-
FRIBIDI_ENTRY FriBidiLevel
fribidi_get_par_embedding_levels (
/* input */
FriBidiChar ch /* input character */
) FRIBIDI_GNUC_DEPRECATED;
-/* fribidi_remove_bidi_marks - remove bidi marks out of an string
- *
- * 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.
- *
- * Returns: New length of the string, or \-1 if an error occurred (memory
- * allocation failure most probably).
- */
-FRIBIDI_ENTRY FriBidiStrIndex
-fribidi_remove_bidi_marks (
- FriBidiChar *str, /* input string to clean */
- const FriBidiStrIndex len, /* input string length */
- FriBidiStrIndex *positions_to_this, /* list mapping positions to the
- order used in str */
- FriBidiStrIndex *position_from_this_list, /* list mapping positions from the
- order used in str */
- FriBidiLevel *embedding_levels /* list of embedding levels */
-)
- FRIBIDI_GNUC_WARN_UNUSED FRIBIDI_GNUC_DEPRECATED;
-
-
-/* fribidi_log2vis - get visual string
- *
- * 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.
- *
- * Returns: Maximum level found plus one, or zero if any error occurred
- * (memory allocation failure most probably).
- */
- FRIBIDI_ENTRY FriBidiLevel fribidi_log2vis (
- const FriBidiChar *str, /* input logical string */
- const FriBidiStrIndex len, /* input string length */
- FriBidiParType *pbase_dir, /* requested and resolved paragraph
- * base direction */
- FriBidiChar *visual_str, /* output visual string */
- FriBidiStrIndex *positions_L_to_V, /* output mapping from logical to
- * visual string positions */
- FriBidiStrIndex *positions_V_to_L, /* output mapping from visual string
- * back to the logical string
- * positions */
- FriBidiLevel *embedding_levels /* output list of embedding levels */
-)
- FRIBIDI_GNUC_WARN_UNUSED FRIBIDI_GNUC_DEPRECATED;
-
-
/* fribidi_get_par_embedding_levels - get bidi embedding levels of a paragraph
*
* Deprecated interface to fribidi_get_par_embedding_levels_ex(). Refer to
#ifndef _FRIBIDI_TYPES_H
#define _FRIBIDI_TYPES_H
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
#include "fribidi-common.h"
#include "fribidi-begindecls.h"
/* fribidi-unicode-version.h
- * generated by gen-unicode-version (GNU FriBidi 1.0.1)
+ * generated by gen-unicode-version (GNU FriBidi 1.0)
* from the file ReadMe.txt */
#define FRIBIDI_UNICODE_VERSION "10.0.0"
#define FRIBIDI_UNICODE_MAJOR_VERSION 10
#define FRIBIDI_UNICODE_MINOR_VERSION 0
#define FRIBIDI_UNICODE_MICRO_VERSION 0
+#define FRIBIDI_UNICODE_NAMESPACE(SYMBOL) \
+ FRIBIDI_NAMESPACE(SYMBOL##_unicode_10_0_0)
+#define FRIBIDI_UNICODE_PRIVATESPACE(SYMBOL) \
+ FRIBIDI_PRIVATESPACE(SYMBOL##_unicode_10_0_0)
/* End of generated fribidi-unicode-version.h */
/* An string containing the version the Unicode standard implemented,
* in the form of "x.y.z", or "unknown". */
-extern const char *fribidi_unicode_version;
+FRIBIDI_ENTRY const char *fribidi_unicode_version;
/* Unicode Bidirectional Algorithm definitions: */
#endif
}
+FRIBIDI_ENTRY FriBidiStrIndex
+fribidi_remove_bidi_marks (
+ FriBidiChar *str,
+ const FriBidiStrIndex len,
+ FriBidiStrIndex *positions_to_this,
+ FriBidiStrIndex *position_from_this_list,
+ FriBidiLevel *embedding_levels
+)
+{
+ register FriBidiStrIndex i, j = 0;
+ fribidi_boolean private_from_this = false;
+ fribidi_boolean status = false;
+
+ if UNLIKELY
+ (len == 0)
+ {
+ status = true;
+ goto out;
+ }
+
+ DBG ("in fribidi_remove_bidi_marks");
+
+ fribidi_assert (str);
+
+ /* If to_this is not NULL, we must have from_this as well. If it is
+ not given by the caller, we have to make a private instance of it. */
+ if (positions_to_this && !position_from_this_list)
+ {
+ position_from_this_list = fribidi_malloc (sizeof
+ (position_from_this_list[0]) *
+ len);
+ if UNLIKELY
+ (!position_from_this_list) goto out;
+ private_from_this = true;
+ for (i = 0; i < len; i++)
+ position_from_this_list[positions_to_this[i]] = i;
+ }
+
+ for (i = 0; i < len; i++)
+ if (!FRIBIDI_IS_EXPLICIT_OR_BN (fribidi_get_bidi_type (str[i]))
+ && !FRIBIDI_IS_ISOLATE (fribidi_get_bidi_type (str[i]))
+ && str[i] != FRIBIDI_CHAR_LRM && str[i] != FRIBIDI_CHAR_RLM)
+ {
+ str[j] = str[i];
+ if (embedding_levels)
+ embedding_levels[j] = embedding_levels[i];
+ if (position_from_this_list)
+ position_from_this_list[j] = position_from_this_list[i];
+ j++;
+ }
+
+ /* Convert the from_this list to to_this */
+ if (positions_to_this)
+ {
+ for (i = 0; i < len; i++)
+ positions_to_this[i] = -1;
+ for (i = 0; i < len; i++)
+ positions_to_this[position_from_this_list[i]] = i;
+ }
+
+ status = true;
+
+out:
+
+ if (private_from_this)
+ fribidi_free (position_from_this_list);
+
+ return status ? j : -1;
+}
+
+/* Local array size, used for stack-based local arrays */
+#define LOCAL_LIST_SIZE 128
+static FriBidiFlags flags = FRIBIDI_FLAGS_DEFAULT | FRIBIDI_FLAGS_ARABIC;
+
+
+FRIBIDI_ENTRY FriBidiLevel
+fribidi_log2vis (
+ /* input */
+ const FriBidiChar *str,
+ const FriBidiStrIndex len,
+ /* input and output */
+ FriBidiParType *pbase_dir,
+ /* output */
+ FriBidiChar *visual_str,
+ FriBidiStrIndex *positions_L_to_V,
+ FriBidiStrIndex *positions_V_to_L,
+ FriBidiLevel *embedding_levels
+)
+{
+ register FriBidiStrIndex i;
+ FriBidiLevel max_level = 0;
+ fribidi_boolean private_V_to_L = false;
+ fribidi_boolean private_embedding_levels = false;
+ fribidi_boolean status = false;
+ FriBidiArabicProp local_ar_props[LOCAL_LIST_SIZE];
+ FriBidiArabicProp *ar_props = NULL;
+ FriBidiLevel local_embedding_levels[LOCAL_LIST_SIZE];
+ FriBidiCharType local_bidi_types[LOCAL_LIST_SIZE];
+ FriBidiCharType *bidi_types = NULL;
+ FriBidiBracketType local_bracket_types[LOCAL_LIST_SIZE];
+ FriBidiBracketType *bracket_types = NULL;
+ FriBidiStrIndex local_positions_V_to_L[LOCAL_LIST_SIZE];
+
+ if UNLIKELY
+ (len == 0)
+ {
+ status = true;
+ goto out;
+ }
+
+ DBG ("in fribidi_log2vis");
+
+ fribidi_assert (str);
+ fribidi_assert (pbase_dir);
+ if (len < LOCAL_LIST_SIZE)
+ bidi_types = local_bidi_types;
+ else
+ bidi_types = fribidi_malloc (len * sizeof bidi_types[0]);
+ if (!bidi_types)
+ goto out;
+
+ fribidi_get_bidi_types (str, len, bidi_types);
+
+ if (len < LOCAL_LIST_SIZE)
+ bracket_types = local_bracket_types;
+ else
+ bracket_types = fribidi_malloc (len * sizeof bracket_types[0]);
+
+ if (!bracket_types)
+ goto out;
+
+ fribidi_get_bracket_types (str, len, bidi_types,
+ /* output */
+ bracket_types);
+ if (!embedding_levels)
+ {
+ if (len < LOCAL_LIST_SIZE)
+ embedding_levels = local_embedding_levels;
+ else
+ embedding_levels = fribidi_malloc (len * sizeof embedding_levels[0]);
+ if (!embedding_levels)
+ goto out;
+ private_embedding_levels = true;
+ }
+
+ max_level = fribidi_get_par_embedding_levels_ex (bidi_types,
+ bracket_types,
+ len,
+ pbase_dir,
+ embedding_levels) - 1;
+ if UNLIKELY
+ (max_level < 0) goto out;
+
+ /* If l2v is to be calculated we must have v2l as well. If it is not
+ given by the caller, we have to make a private instance of it. */
+ if (positions_L_to_V && !positions_V_to_L)
+ {
+ if (len < LOCAL_LIST_SIZE)
+ positions_V_to_L = local_positions_V_to_L;
+ else
+ positions_V_to_L =
+ (FriBidiStrIndex *) fribidi_malloc (sizeof (FriBidiStrIndex) * len);
+ if (!positions_V_to_L)
+ goto out;
+ private_V_to_L = true;
+ }
+
+ /* Set up the ordering array to identity order */
+ if (positions_V_to_L)
+ {
+ for (i = 0; i < len; i++)
+ positions_V_to_L[i] = i;
+ }
+
+
+ if (visual_str)
+ {
+ /* Using memcpy instead
+ for (i = len - 1; i >= 0; i--)
+ visual_str[i] = str[i];
+ */
+ memcpy (visual_str, str, len * sizeof (*visual_str));
+
+ /* Arabic joining */
+ if (len < LOCAL_LIST_SIZE)
+ ar_props = local_ar_props;
+ else
+ ar_props = fribidi_malloc (len * sizeof ar_props[0]);
+ fribidi_get_joining_types (str, len, ar_props);
+ fribidi_join_arabic (bidi_types, len, embedding_levels, ar_props);
+
+ fribidi_shape (flags, embedding_levels, len, ar_props, visual_str);
+ }
+
+ /* line breaking goes here, but we assume one line in this function */
+
+ /* and this should be called once per line, but again, we assume one
+ * line in this deprecated function */
+ status =
+ fribidi_reorder_line (flags, bidi_types, len, 0, *pbase_dir,
+ embedding_levels, visual_str,
+ positions_V_to_L);
+
+ /* Convert the v2l list to l2v */
+ if (positions_L_to_V)
+ {
+ for (i = 0; i < len; i++)
+ positions_L_to_V[i] = -1;
+ for (i = 0; i < len; i++)
+ positions_L_to_V[positions_V_to_L[i]] = i;
+ }
+
+out:
+
+ if (private_V_to_L && positions_V_to_L != local_positions_V_to_L)
+ fribidi_free (positions_V_to_L);
+
+ if (private_embedding_levels && embedding_levels != local_embedding_levels)
+ fribidi_free (embedding_levels);
+
+ if (ar_props && ar_props != local_ar_props)
+ fribidi_free (ar_props);
+
+ if (bidi_types && bidi_types != local_bidi_types)
+ fribidi_free (bidi_types);
+
+ if (bracket_types && bracket_types != local_bracket_types)
+ fribidi_free (bracket_types);
+
+ return status ? max_level + 1 : 0;
+}
const char *fribidi_unicode_version = FRIBIDI_UNICODE_VERSION;
".\n\n"
"Copyright (C) 2004 Sharif FarsiWeb, Inc.\n"
"Copyright (C) 2001, 2002, 2004, 2005 Behdad Esfahbod\n"
- "Copyright (C) 1999, 2000, 2017 Dov Grobgeld\n"
+ "Copyright (C) 1999, 2000, 2017, 2018, 2019 Dov Grobgeld\n"
FRIBIDI_NAME " comes with NO WARRANTY, to the extent permitted by law.\n"
"You may redistribute copies of " FRIBIDI_NAME " under\n"
"the terms of the GNU Lesser General Public License.\n"
#include "fribidi-shape.h"
#include "fribidi-char-sets.h"
+#include "fribidi-begindecls.h"
+
+/* fribidi_remove_bidi_marks - remove bidi marks out of an string
+ *
+ * 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.
+ *
+ * Returns: New length of the string, or \-1 if an error occurred (memory
+ * allocation failure most probably).
+ */
+FRIBIDI_ENTRY FriBidiStrIndex
+fribidi_remove_bidi_marks (
+ FriBidiChar *str, /* input string to clean */
+ const FriBidiStrIndex len, /* input string length */
+ FriBidiStrIndex *positions_to_this, /* list mapping positions to the
+ order used in str */
+ FriBidiStrIndex *position_from_this_list, /* list mapping positions from the
+ order used in str */
+ FriBidiLevel *embedding_levels /* list of embedding levels */
+);
+
+
+/* fribidi_log2vis - get visual string
+ *
+ * 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.
+ *
+ * Note that this function handles one-line paragraphs. For multi-
+ * paragraph texts it is necessary to first split the text into
+ * separate paragraphs and then carry over the resolved pbase_dir
+ * between the subsequent invocations.
+ *
+ * Returns: Maximum level found plus one, or zero if any error occurred
+ * (memory allocation failure most probably).
+ */
+FRIBIDI_ENTRY FriBidiLevel fribidi_log2vis (
+ const FriBidiChar *str, /* input logical string */
+ const FriBidiStrIndex len, /* input string length */
+ FriBidiParType *pbase_dir, /* requested and resolved paragraph
+ * base direction */
+ FriBidiChar *visual_str, /* output visual string */
+ FriBidiStrIndex *positions_L_to_V, /* output mapping from logical to
+ * visual string positions */
+ FriBidiStrIndex *positions_V_to_L, /* output mapping from visual string
+ * back to the logical string
+ * positions */
+ FriBidiLevel *embedding_levels /* output list of embedding levels */
+);
#ifdef FRIBIDI_NO_DEPRECATED
#else
#endif /* !FRIBIDI_NO_DEPRECATED */
-#include "fribidi-begindecls.h"
-
-
-
/* An string containing the version information of the library. */
FRIBIDI_ENTRY const char *fribidi_version_info;
/* joining-type.tab.i
- * generated by gen-joining-type-tab (GNU FriBidi 1.0.1)
+ * generated by gen-joining-type-tab (GNU FriBidi 1.0)
* from the files UnicodeData.txt, ArabicShaping.txt of Unicode version 10.0.0. */
#define PACKTAB_UINT8 uint8_t
#ifndef _JOINING_TYPES_H
#define _JOINING_TYPES_H
-#include "common.h"
+#include "fribidi-common.h"
#include <fribidi-types.h>
#include <fribidi-joining-types.h>
version: libversion,
soversion: soversion,
install: true)
+
+libfribidi_dep = declare_dependency(link_with: libfribidi,
+ include_directories: incs,
+ sources: [fribidi_unicode_version_h, fribidi_config_h])
/* mirroring.tab.i
- * generated by gen-mirroring-tab (GNU FriBidi 1.0.1)
+ * generated by gen-mirroring-tab (GNU FriBidi 1.0)
* from the file BidiMirroring.txt of Unicode version 10.0.0. */
#define PACKTAB_UINT8 uint8_t
#ifndef _RUN_H
#define _RUN_H
-#include "common.h"
+#include "fribidi-common.h"
#include <fribidi-common.h>
# a configuration failure hint, and exit.
func_fatal_configuration ()
{
- func__fatal_error ${1+"$@"} \
+ func_fatal_error ${1+"$@"} \
"See the $PACKAGE documentation for more information." \
"Fatal configuration error."
}
-project('fribidi', 'c', version: '1.0.5',
+project('fribidi', 'c', version: '1.0.8',
meson_version : '>= 0.44')
# New release:
# write config.h
config_h = configure_file(output: 'config.h', configuration: cdata)
-incs = include_directories('.', 'lib')
+incs = include_directories('.', 'lib', 'gen.tab')
subdir('gen.tab')
subdir('lib')
-#!/bin/sh
+#! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
-scriptversion=2016-01-11.22; # UTC
+scriptversion=2018-03-07.03; # UTC
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
# 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, see <http://www.gnu.org/licenses/>.
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
exit $st
fi
-perl_URL=http://www.perl.org/
-flex_URL=http://flex.sourceforge.net/
-gnu_software_URL=http://www.gnu.org/software
+perl_URL=https://www.perl.org/
+flex_URL=https://github.com/westes/flex
+gnu_software_URL=https://www.gnu.org/software
program_details ()
{
exit $st
# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
-#!/bin/sh
+#! /bin/sh
# test-driver - basic testsuite driver script.
-scriptversion=2016-01-11.22; # UTC
+scriptversion=2018-03-07.03; # UTC
-# Copyright (C) 2011-2017 Free Software Foundation, Inc.
+# Copyright (C) 2011-2018 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
# 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, see <http://www.gnu.org/licenses/>.
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# Local Variables:
# mode: shell-script
# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
$(RECURSIVE_CLEAN_TARGETS) \
$(am__extra_recursive_targets)
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
- check recheck distdir
+ check recheck distdir distdir-am
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
*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);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
fi; \
$$success || exit 1
-check-TESTS:
+check-TESTS: $(check_SCRIPTS)
@list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list
@list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list
@test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \
@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT)
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
die ("Failed opening %s\n", filename);
while (!feof(channel)) {
+ int len;
fgets(line, LINE_SIZE, channel);
- int len = strlen(line);
+ len = strlen(line);
if (len == LINE_SIZE-1)
die("LINE_SIZE=%d too small at line %d!\n", LINE_SIZE, line_no);
die ("Failed opening %s\n", filename);
while (!feof(channel)) {
+ int len;
fgets(line, LINE_SIZE, channel);
- int len = strlen(line);
+ len = strlen(line);
if (len == LINE_SIZE-1)
die("LINE_SIZE too small at line %d!\n", line_no);
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/BidiCharacterTest.Po \
+ ./$(DEPDIR)/BidiTest.Po
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
*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);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BidiCharacterTest.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BidiTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BidiCharacterTest.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BidiTest.Po@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+ @$(MKDIR_P) $(@D)
+ @echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
.c.o:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
fi; \
$$success || exit 1
-check-TESTS:
+check-TESTS: $(check_PROGRAMS)
@list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list
@list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list
@test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TXT_LOG_DRIVER_FLAGS) $(TXT_LOG_DRIVER_FLAGS) -- $(TXT_LOG_COMPILE) \
@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT)
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
mostlyclean-am
distclean: distclean-am
- -rm -rf ./$(DEPDIR)
+ -rm -f ./$(DEPDIR)/BidiCharacterTest.Po
+ -rm -f ./$(DEPDIR)/BidiTest.Po
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
installcheck-am:
maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
+ -rm -f ./$(DEPDIR)/BidiCharacterTest.Po
+ -rm -f ./$(DEPDIR)/BidiTest.Po
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
.MAKE: check-am install-am install-strip
-.PHONY: CTAGS GTAGS TAGS all all-am check check-TESTS check-am clean \
- clean-checkPROGRAMS clean-generic clean-libtool cscopelist-am \
- ctags ctags-am 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 \
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-TESTS \
+ check-am clean clean-checkPROGRAMS clean-generic clean-libtool \
+ cscopelist-am ctags ctags-am 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 \
recheck tags tags-am uninstall uninstall-am
foreach t : tests
exe = executable(t[0],
t[1], fribidi_unicode_version_h,
- c_args: ['-DHAVE_CONFIG_H'],
+ c_args: ['-DHAVE_CONFIG_H'] + visibility_args,
include_directories: incs,
link_with: libfribidi)
test(t[0], exe, args: files('@0@.txt'.format(t[0])))