Commit Graph

317 Commits

Author SHA1 Message Date
Behdad Esfahbod 978ace6fbb Improve _hb_popcount()
Support 128bit type.
2018-02-16 16:08:45 -08:00
Behdad Esfahbod 94d32d1b83 Enable C99 if available
Hopefully we can now mix-and-match code and declaration in the C test files.
2018-02-16 15:36:20 -08:00
Khaled Hosny 0b94d590d9 Rename --with-stdcpp → --with-libstdc++
Also improve wording a bit and fix make check in --with-libstdc++=yes.
2018-02-12 12:37:41 -07:00
Ebrahim Byagowi 2efc896550
Add --with-stdcpp for ossfuzzer and mupdf use (#770) 2018-02-12 12:00:07 +03:30
Behdad Esfahbod d0f3e7f597 [util] Use setlinebuf() if present
To work around mysterious bug on OS X.

Fixes https://github.com/harfbuzz/harfbuzz/issues/727
2018-02-10 12:46:11 -06:00
Garret Rieger 0853260e99 Configure automake to run the new subset tests. 2018-02-04 12:57:33 -08:00
Behdad Esfahbod fcb8be1a38 [configure] Fix wording
Fixes https://github.com/harfbuzz/harfbuzz/issues/741
2018-02-04 12:38:18 -05:00
Khaled Hosny cf943f682b Correctly show documentation build status
Correctly show if building documentation is enabled or not in configure
summary.

Fixes https://github.com/harfbuzz/harfbuzz/issues/741
2018-02-04 12:36:37 -05:00
Behdad Esfahbod f0b700db39 1.7.5 2018-01-30 11:52:11 -08:00
Ebrahim Byagowi 00806149b9
Improve avoiding C++ linkage, definition creation and cmake tests (#710) 2018-01-19 01:12:31 +03:30
Behdad Esfahbod 22d8c765e7 Disable C++11
To better catch errors locally.
2018-01-12 09:46:38 +01:00
Behdad Esfahbod 6db0b17c4c [test] Move test handling to sundirectories 2018-01-10 05:40:43 +01:00
Behdad Esfahbod 504f913654 [test] Simplify test runner
Always pass hb-shape as first argument to run-tests.py.

Also require automake 1.13.
2018-01-10 02:50:49 +01:00
Behdad Esfahbod 0473d95e27 [ft] Use FT_Done_MM_Var() if available 2018-01-08 10:07:46 +00:00
Romain Ouabdelkader 3db1d34264 link with CoreFoundation when using CoreText 2018-01-02 07:22:53 -08:00
Behdad Esfahbod 007a2a4317 1.7.4 2017-12-20 12:09:00 -05:00
Behdad Esfahbod b5bbb791d3 1.7.3 2017-12-18 09:18:51 -05:00
Olivier Blin 0fd89dc61c [hb-ft] Fix build when Multiple Master font support is disabled in freetype
FT_Set_Var_Blend_Coordinates() is not available when "Multiple Master
font interface" is disabled in freetype's modules.cfg
2017-12-04 10:52:06 -08:00
Behdad Esfahbod 843f7f7035 1.7.2 2017-12-04 09:01:43 -08:00
ebraminio 7c6937e7c7
Move all references of old url to the new address (#622) 2017-11-20 14:49:22 -05:00
Behdad Esfahbod f93c6f8bfa 1.7.1 2017-11-14 11:13:11 -08:00
Behdad Esfahbod e5d7098892 1.7.0 2017-11-13 09:42:37 -08:00
Behdad Esfahbod 601126ad40 [configure] Fix gobject default value in help output
Fixes https://github.com/behdad/harfbuzz/issues/607
2017-11-03 20:34:11 -04:00
Behdad Esfahbod 919b4b76a7 Make c++11 optional
Fixes https://github.com/behdad/harfbuzz/issues/585
2017-10-27 10:29:25 -06:00
Behdad Esfahbod 223686d64f 1.6.3 2017-10-26 12:52:02 -06:00
Behdad Esfahbod 3b7388aab6 1.6.2 2017-10-23 14:35:16 -04:00
Behdad Esfahbod 0ca915efc3 1.6.1 2017-10-22 17:38:33 -04:00
Behdad Esfahbod 2075008f3e Use C++11 2017-10-15 12:12:10 +02:00
Behdad Esfahbod 25846cc39f 1.6.0 2017-10-13 16:30:33 +02:00
ebraminio dfeccd073a Remove nmake port of harfbuzz (#562) 2017-10-12 10:41:47 +02:00
Behdad Esfahbod 3ca69c8c32 Use strtod_l() to correctly parse decimal numbers in French & other locales
Test with, eg.:
$ LC_ALL=fr_FR.utf-8 ./hb-view NotoSansArabic-VF.ttf بهداد --variations wght=1.2
2017-09-14 20:50:35 -04:00
Behdad Esfahbod a984e0c4d9 1.5.1 2017-09-05 11:18:35 -07:00
Behdad Esfahbod e8b364b860 1.5.0 2017-08-23 15:00:45 -07:00
Behdad Esfahbod 7917792f01 1.4.8 2017-08-08 13:17:03 -07:00
Behdad Esfahbod fc15e60ead 1.4.7 2017-07-18 11:24:42 -07:00
Behdad Esfahbod 141b33de9a 1.4.6 2017-04-23 16:19:13 -07:00
Behdad Esfahbod 60e2586f76 1.4.5 2017-03-10 23:02:28 -08:00
Behdad Esfahbod 8e42c3cb2b 1.4.4 2017-03-05 13:54:56 -08:00
Behdad Esfahbod 6685d281d6 1.4.3 2017-02-25 11:35:05 -08:00
Behdad Esfahbod 6af6c1114a 1.4.2 2017-01-23 18:35:00 -08:00
Behdad Esfahbod af596a5655 1.4.1 2017-01-05 20:24:41 -08:00
Behdad Esfahbod 53543f8b3e Ship UCDN and use it by default
So we are not relying on version of Unicode data in glib...

Fixes https://github.com/behdad/harfbuzz/issues/386
Fixes https://github.com/behdad/harfbuzz/issues/388
2017-01-05 20:12:32 -08:00
Behdad Esfahbod f339706947 1.4.0 2017-01-05 01:27:49 -08:00
Mike Hommey 1c98ff87c7 Support building with older glib versions
It is desirable to be able to build against older versions of glib.

fd7a245 changed the configure check to require glib > 2.38 for
G_TEST_DIST. Before that, version 2.16 was required, but in fact,
since aafe395, G_PASTE is being used, which was introduced in 2.19.1.
And since 0ef179e2, hb-glib uses GBytes, which were introduced in
2.31.10.

2.19.1 is rather old, but 2.38 is rather new. For Firefox, building
against 2.22 is still supported, although we could probably get away
with bumping that to 2.28. Either way, GBytes is not available.

Arguably, if you build against a glib that doesn't support GBytes,
you're not going to use the hb_glib_blob_create function, so we hide
the function when building against such a glib.

As for G_TEST_DIST, when building against versions of glib that don't
support it, we can fallback to the previous behavior, which, AIUI, was
just making the test not work when building in a separate directory.
2016-12-18 01:37:07 -06:00
Behdad Esfahbod 42c8142531 [GX] Fix build with older FreeType 2016-12-16 19:06:26 -06:00
Behdad Esfahbod b843c6d8b6 1.3.4 2016-12-05 13:45:15 -08:00
Behdad Esfahbod 966ac7ecd3 1.3.3 2016-10-26 16:17:15 +02:00
Behdad Esfahbod 118164293c Fix "make distcheck" 2016-10-26 16:04:30 +02:00
Behdad Esfahbod 331c46c79b Fix configure on iOS
Fixes https://github.com/behdad/harfbuzz/issues/342
2016-10-11 13:48:23 -07:00
Behdad Esfahbod 7201fdd0a8 LFS (large file system?) support in hb-*shap*, hb-view
Fixes https://github.com/behdad/harfbuzz/issues/336
2016-10-04 14:53:17 -07:00
Behdad Esfahbod fd7a245d35 Require glib >= 2.38.0 for G_TEST_DIST 2016-09-27 17:56:35 +02:00
Behdad Esfahbod f73a87d9a8 1.3.2 2016-09-27 13:50:54 +02:00
Phil Krylov f16bf6c2da Allow building with graphite2 without pkg-config (#318) 2016-09-27 12:38:49 +02:00
Behdad Esfahbod d22ab6cf04 1.3.1 2016-09-07 14:28:47 -07:00
Khaled Hosny dd31fc9f7e Don’t build UCDN support when building with GLib (#296)
Regression from: b424b6c372.
2016-07-22 17:43:00 -07:00
Behdad Esfahbod a732e00ea4 1.3.0 2016-07-21 01:58:00 -07:00
Behdad Esfahbod a93078a0ec Change bugreport URL to github
That's where everything is happening these days.
2016-06-06 15:58:41 -07:00
Behdad Esfahbod a5b7b0dd45 1.2.7 2016-05-02 10:44:13 +02:00
Behdad Esfahbod 00ea66f357 1.2.6 2016-04-08 13:51:01 -07:00
Behdad Esfahbod a0331b55f7 1.2.5 2016-04-04 16:35:07 -07:00
Behdad Esfahbod 0251b0cc5c 1.2.4 2016-03-17 14:37:11 -07:00
Behdad Esfahbod fef5dd9a72 Merge pull request #232 from c0nk/wip-icu
Add --with-icu=builtin option; fix compile error
2016-03-12 19:15:15 -08:00
Behdad Esfahbod 01ea9eaac3 [build] Use tar-ustar instead of tar-pax
The default tar-v7 is not good enough for us (99 char filename
limit), so I have had bumped to tar-pax.  We got one complaint
that someone's tar couldn't handle tar-pax.  Set to tar-ustar
which is ~13 years earlier than tar-pax and is good enough for us.
2016-03-11 18:50:02 -08:00
Kal Conley b424b6c372 Add --with-icu=builtin configure option 2016-02-26 00:35:15 +01:00
Behdad Esfahbod 75568b0a7f 1.2.3 2016-02-25 12:26:26 +09:00
Behdad Esfahbod b30a971bf7 1.2.2 2016-02-24 17:32:22 +09:00
Behdad Esfahbod dabf32a5ad 1.2.1 2016-02-23 15:38:43 +09:00
Behdad Esfahbod 27847cab12 1.2.0 2016-02-19 15:56:50 +07:00
Chun-wei Fan c679285455 build: Build the DirectWrite sources if requested
This adds to the autotools build system so that the (experimental)
DirectWrite support for HarfBuzz is built (and dist'ed).
2016-02-03 20:14:42 +08:00
Chun-wei Fan d7b6636e5e build: Support Visual Studio builds using NMake
This adds a set of NMake Makefiles that can be used to build HarfBuzz, from
the standard basic build building the minimal HarfBuzz DLL (consisting
of OpenType, fallback and Uniscribe support only), to a full fledged build
consisting of GLib and FreeType support, as well as building the utilities,
the test programs in src/ and test/api, and HarfBuzz-ICU and
HarfBuzz-GObject, and up to building the introspection files.  This means a
flexible build mechanism is supported here, so anything that is supported
for a Windows build (code-wise), should all be supported by this build
system.

As in an earlier commit, the source listings are shared with the autotools
builds with the various Makefile.sources in src/, src/hb-ucdn and util/, and
this set of NMake Makefiles will transform these lists into the form they
want.

In the current form, all the test programs in test/api pass, and this has
been checked successfully with 'make -j8 distcheck'.
2016-02-03 18:14:30 +08:00
Behdad Esfahbod 11441291bb 1.1.3 2016-01-11 13:16:35 +00:00
Behdad Esfahbod d44d52bd0d 1.1.2 2015-11-26 19:35:43 -05:00
Behdad Esfahbod b24e93e3a4 1.1.1 2015-11-24 13:18:20 -06:00
Behdad Esfahbod e1118aeac3 1.1.0 2015-11-18 23:52:51 -08:00
Behdad Esfahbod 19300183a6 [fuzzing] Add build system 2015-11-05 23:08:50 -08:00
Behdad Esfahbod 86cadc2cd4 1.0.6 2015-10-15 20:25:29 -03:00
Behdad Esfahbod ab17052924 1.0.5 2015-10-13 10:55:33 -03:00
Behdad Esfahbod 432ffc47a4 1.0.4 2015-09-30 22:51:16 +01:00
Behdad Esfahbod 7f54053974 1.0.3 2015-09-01 17:03:50 +01:00
Behdad Esfahbod 5783e05f81 [docs] Move docs/reference/ contents into docs/ 2015-08-31 19:18:10 +01:00
Behdad Esfahbod 789b89ef71 1.0.2 2015-08-19 13:39:57 +01:00
Behdad Esfahbod 539a610e2e Add Libs.private and Requires.private to harfbuzz.pc
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=64501
2015-08-11 12:58:49 +02:00
Behdad Esfahbod 9002c27b2f 1.0.1 2015-07-27 12:17:54 +02:00
Behdad Esfahbod 260442346a 1.0.0 2015-07-26 23:39:10 +02:00
Behdad Esfahbod 2ed6be6670 0.9.42 2015-07-26 19:29:53 +02:00
Behdad Esfahbod a6446d44e6 0.9.41 2015-06-18 11:14:56 -07:00
Behdad Esfahbod fe97b65a54 [utils] Add hb-fc-list
This is a tool that lists all fonts that can render a given string.
It uses hb_shape() to do so, and as such is aware of HarfBuzz's
normalizer.
2015-04-09 19:16:57 -07:00
Behdad Esfahbod e3671b8f8b 0.9.40 2015-03-20 18:03:02 -04:00
Behdad Esfahbod 02a04e6afb 0.9.39 2015-03-04 12:32:03 -08:00
Behdad Esfahbod 28f5e0b2f4 0.9.38 2015-01-23 12:45:35 -08:00
Behdad Esfahbod 350f3a02ce [ft] Add hb_ft_face_create_referenced() and hb_ft_font_create_referenced()
When I originally wrote hb-ft, FreeType objects did not support reference
counting.  As such, hb_ft_face_create() and hb_ft_font_create() had a
"destroy" callback and client was responsible for making sure FT_Face is
kept around as long as the hb-font/face are alive.

However, since this was not clearly documented, some clienets didn't
correctly did that.  In particular, some clients assumed that it's safe
to destroy FT_Face and then hb_face_t.  This, indeed, used to work, until
45fd9424c7, which make face destroy access
font tables.

Now, I fixed that issue in 395b35903e since
the access was not needed, but the problem remains that not all clients
handle this correctly.  See:

  https://bugs.freedesktop.org/show_bug.cgi?id=86300

Fortunately, FT_Reference_Face() was added to FreeType in 2010, and so we
can use it now.  Originally I wanted to change hb_ft_face_create() and
hb_ft_font_create() to reference the face if destroy==NULL was passed in.
That would improve pretty much all clients, with little undesired effects.
Except that FreeType itself, when compiled with HarfBuzz support, calls
hb_ft_font_create() with destroy==NULL and saves the resulting hb-font on
the ft-face (why does it not free it immediately?).  Making hb-face
reference ft-face causes a cycling reference there.  At least, that's my
current understanding.

At any rate, a cleaner approach, even if it means all clients will need a
change, is to introduce brand new API.  Which this commit does.

Some comments added to hb-ft.h, hoping to make future clients make better
choices.

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=75299
2014-12-28 17:59:28 -08:00
Behdad Esfahbod 9a3b74884b Remove redundant check for FT_Face_GetCharVariantIndex
We require FreeType >= 2.8.3.  This symbol was introduced earlier
than that.
2014-12-28 17:27:39 -08:00
Behdad Esfahbod 1226b2e930 Fix FreeType version check 2014-12-28 17:04:23 -08:00
Behdad Esfahbod 66e37409b3 0.9.37 2014-12-17 12:09:17 -08:00
Behdad Esfahbod c0e95abc5f 0.9.36 2014-11-20 14:42:24 -08:00
Behdad Esfahbod cd5a1149d9 0.9.35 2014-08-13 12:43:34 -04:00
Behdad Esfahbod 91c2c0fd2b 0.9.34 2014-08-02 19:24:55 -04:00
Behdad Esfahbod 8c1bdb46fa 0.9.33 2014-07-22 18:02:11 -04:00
Behdad Esfahbod 66f30915b1 0.9.32 2014-07-17 16:05:47 -04:00
Behdad Esfahbod a18897f87c 0.9.31 2014-07-16 16:02:15 -04:00