Chun-wei Fan
838346c54a
meson: Support GDI integration
...
...and supersede the configuration option uniscribe with gdi, as Uniscribe is
tightly tied to GDI. This means that enabling GDI would also mean enabling
Uniscribe.
2020-03-13 14:30:17 +03:30
Chun-wei Fan
9d0e6aef8a
Meson: Look harder for Cairo on Visual Studio
...
Since Cairo's build system for Visual Studio does not generate pkg-config files
for us, look for cairo.h and cairo.lib manually if the pkg-config files cannot
be found.
Also look for cairo-ft more carefully: ensure that we have cairo-ft.h, and one
of its symbols can be found in the same cairo.lib that we previously found.
2020-03-13 14:30:17 +03:30
Chun-wei Fan
5efce600ab
Meson: Try harder to look for ICU on Visual Studio
...
ICU's Visual Studio build files do not generate pkg-config files for us, unless
it is built with Cygwin instead of the project files. If pkg-config files for
ICU cannot be found, look for its headers and .lib manually.
2020-03-13 14:30:17 +03:30
Chun-wei Fan
7baa8e0dbe
meson: Updates to Uniscribe and DirectWrite build support
...
Update the DirectWrite support to look for dwrite_1.h, and give the green light
for both the DirectWrite and Uniscribe build options.
2020-03-13 14:30:17 +03:30
Chun-wei Fan
733414b286
meson: Try harder to find FreeType on Visual Studio
...
If we can't find FreeType via pkg-config or CMake, try looking for it manually,
before we attempt to build it as a fallback.
2020-03-13 14:30:17 +03:30
Chun-wei Fan
4b4d5c295d
src/meson.build: Some cleanups for Visual Studio builds
...
We don't actually need the .def files (vs_module_defs) entry when we are
building DLLs with Visual Studio as long as we have HB_DLL_EXPORT defined.
Plus, to maintain compatibility with the CMake builds, for Visual Studio builds
we do not prefix the libraries with 'lib', nor have a '-0' suffix for the DLL
file name.
2020-03-13 14:30:17 +03:30
Chun-wei Fan
da95a8c239
Shaping tests: Skip FreeType tests if support not present
...
HarfBuzz could have been built without FreeType, so we skip the test
when hb-shape reports that the font function `ft' is unknown
2020-03-13 14:30:17 +03:30
Chun-wei Fan
91ca17e1fd
src/hb-gobject-enums.cc.tmpl: Replace © with (C)
...
This was, we also avoid Visual Studio compiler warnings C4828 as that sign is
not favored when /utf-8 is enabled, which is the norm nowadays as Visual Studio
2015 or later is required to build harfbuzz nowadays.
2020-03-13 14:30:17 +03:30
Chun-wei Fan
62fb6738d5
Fix gen-def for harefbuzz-gobject
...
The © sign is causing issues for the script, so replace those with (C)
2020-03-13 14:30:17 +03:30
Chun-wei Fan
8d425ed446
meson: Fix harfbuzz-gobject builds without introspection
...
Make the `sources:` field reflect the items depending on whether introspection
is being built
2020-03-13 14:30:17 +03:30
Chun-wei Fan
3341d5346e
meson: Don't apply -DHB_DLL_EXPORT to all targets
...
Only have it apply to the libraries when they are not built statically on
Visual Studio
2020-03-13 14:30:17 +03:30
Ebrahim Byagowi
a224f4179f
Turn more of simple dagger chains to foreach
...
Less noise, as was agreed before and applied 385741d
also
2020-03-13 08:33:34 +03:30
Ebrahim Byagowi
755a77d660
Move outline draw API behind HB_EXPERIMENTAL_API directive
2020-03-13 08:25:53 +03:30
Ebrahim Byagowi
dfab7a2546
[cmake] Bring it back to release tarball
2020-03-12 21:51:36 +03:30
Ebrahim Byagowi
e860000db5
[cmake] Suggest Meson port in CMake
2020-03-12 21:51:36 +03:30
Ebrahim Byagowi
b1c3d0b8b0
[cmake] cleanup
2020-03-12 21:51:36 +03:30
Ebrahim Byagowi
cc63eb66ce
[editorconfig] Add meson config
2020-03-12 14:53:26 +03:30
Ebrahim Byagowi
1dd3896688
[meson] Make it work on autotools dist
2020-03-12 14:49:40 +03:30
Ebrahim Byagowi
47a047bd16
[ci] Remove the not used azure-pipelines.yml
...
We will use GitHub Actions instead, same infrastructure anyway, or even better, CircleCI's Windows support
2020-03-12 14:47:40 +03:30
Garret Rieger
834a224a50
[subset] Put a limit on the number of lookup indices that can be visited during closures
...
Fixes https://crbug.com/oss-fuzz/21025
2020-03-12 13:32:36 +03:30
Ebrahim Byagowi
31218b41c6
[meson] Explicit state C++11 for older compilers
...
Needed as https://circleci.com/gh/harfbuzz/harfbuzz/132417
2020-03-12 00:25:48 +03:30
Ebrahim Byagowi
749cf378e8
[meson] test meson's own unity feature also
2020-03-12 00:25:48 +03:30
Ebrahim Byagowi
f8c8be0564
[meson] Add amalgam build option
2020-03-12 00:25:48 +03:30
Ebrahim Byagowi
365d2d3cc3
[meson] Add needed compiler flags
2020-03-11 23:09:48 +03:30
Ebrahim Byagowi
12df69e59c
Minor, delete not needed cmake testing file
2020-03-11 21:52:43 +03:30
Ebrahim Byagowi
943bfeda53
[meson] Enable more of the subset tests
2020-03-11 21:49:26 +03:30
Ebrahim Byagowi
c494d7abcd
Remove cmake testing and add meson build bot
...
CMake tests are broken anyway as py3 changes so let's get rid of them
2020-03-11 20:15:10 +03:30
Ebrahim Byagowi
1c3f80ba13
[meson] Minor updates
2020-03-11 20:15:10 +03:30
Aaron Boxer
68f982415b
meson: update to latest master
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
535186fd84
meson: provide a harfbuzz-config for use from CMake
...
See #822 and #1437 .
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
6afa7e1c36
meson: update harfbuzz version
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
f1e5f4a784
meson: tests: shaping: add aots tests
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
84725fb005
meson: tests: shaping: add missing in-house tests
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
8fc66dbf9f
meson: tests: subset: no need to check for 'which' command any more
...
Test runner script now handles that.
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
0976300be4
meson: pin glib wrap to 2.58.1 release
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
0fcf098206
meson: fix linking on MSVC
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
4a47f1aabc
meson: suppress some spurious compiler warnings with MSVC
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
7eaf3754dc
meson: update for changes in master
...
And remove header files from sources list, Meson figures
out header dependencies by itself (via the compiler).
2020-03-11 19:18:57 +03:30
Khaled Hosny
04438554c8
meson: Update build files after rebase
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
618584e923
meson: rename incbase to incconfig
...
Makes it clearer what it's for: config.h. See #4 .
2020-03-11 19:18:57 +03:30
Khaled Hosny
14b5c774c2
meson: Fix include directory when used as subproject
...
HarfBuzz headers are under src/ not the root directory, without using
incsrc no headers will be found by the dependent project. I think
incbase is superfluous, it should be replaced by incsrc or dropped.
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
6abe7983ed
meson: add g-i introspection
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
6147df337e
meson: add option to disable tests
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
d230a02048
meson: generate .def file for MSVC symbol export on the fly
...
Fix symbol export with MSVC when features are disabled,
such as GLib. We need to generate the list of exported
symbols on the fly to make sure we only export symbols
that are actually available.
Needs some minor modifications to the gen-def.py script:
- accept header list also via command line args; we can't
pass things to a configure_file() command via the environment
in Meson.
- strip any leading 'src/' from library filename. This might
be there because in Meson the script might be called from
the top-level directory and not the current source directory.
Remove .def files again which had been checked in for earlier
versions of the Meson port.
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
4840c8237e
meson: add option and build system plumbing for CoreText on macOS/iOS
...
Untested though.
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
83ebbe4ade
meson: add option and build system plumbing for DirectWrite on Windows
...
Untested though.
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
b7796a5d69
meson: add option and build system plumbing for uniscribe on Windows
...
Untested though.
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
c81290b0c1
meson: add feature option for internal ucdn lib
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
49ba211a9d
meson: add options to enable/disable various features
...
And fix build without GLib. Fixes #2 .
2020-03-11 19:18:57 +03:30
Tim-Philipp Müller
c5f2e5e5ab
meson: use proxy-libintl from frida
2020-03-11 19:18:57 +03:30