meson.build


Log

Author Commit Date CI Message
Khaled Hosny aee123fc 2022-05-20T21:07:25 4.3.0
Khaled Hosny f7aee78e 2022-04-24T05:47:57 4.2.1
Khaled Hosny 9d5730b9 2022-03-30T15:08:34 4.2.0
Khaled Hosny c36844d6 2022-03-23T07:20:59 4.1.0
Khaled Hosny 1f79ba94 2022-03-11T20:19:04 4.0.1
Khaled Hosny 8d1b000a 2022-03-01T21:27:32 4.0.0
James Hilliard 256dcde1 2022-02-21T00:07:03 [meson] handle multiple element ICU DEFS
Chun-wei Fan f0573d84 2022-02-17T14:39:31 meson: Clean up finding ICU-UC on Visual Studio Nowadays Meson has much better CMake support which we can use to find dependencies on Visual Studio builds (and Visual Studio 2017 and later provides CMake as an optional install item), so we can use it to help us find ICU-UC on Visual Studio builds, since CMake has built-in support for finding it by the components we need for some time.
Chun-wei Fan 561e8ba8 2022-02-17T14:19:35 meson: Cleanup finding FreeType on Visual Studio Nowadays, CMake is much better supported with Meson and is a common tool on Windows (it is even an optionally-installed item for Visual Studio 2017+), so make use of that to find FreeType. The package to search for, however, is `freetype` instead of `freetype2`.
Khaled Hosny 74ebfc64 2022-02-08T22:44:11 [meson] Update cairo subproject Update to the current master branch so that is has cairo_user_font_face_set_render_color_glyph_func(). I had to disable optimized builds on win[32|64] crossbuild setups because they are now broken in the CI (something about cairo defining _FORTIFY_SOURCE for optimized builds that MingW does not like).
Behdad Esfahbod 8f519d55 2022-02-08T13:28:00 [meson] Put back Experimental-API infrastructure Just unused for now.
Khaled Hosny cf288213 2022-02-08T19:03:17 [meson] fix building with Cairo subproject We can’t pass internal (subproject) dependency to cpp.has_function(), so we manually hard-code the result.
Behdad Esfahbod cfc06c24 2022-02-05T13:31:05 [util/draw] Render color glyphs if cairo API available
Behdad Esfahbod e0ac6c58 2022-02-02T18:57:12 Remove remaining traces of HB_EXPERIMENTAL_API
Khaled Hosny 0a129961 2022-02-13T00:30:50 3.4.0
Chun-wei Fan 3d22dae5 2022-02-10T16:30:36 meson.build: Only use get_variable() on icu_dep with pkgconfig We might have found ICU via the .lib names, and get_variable() is only available for pkg-config deps.
Khaled Hosny ac46c324 2022-02-06T15:41:18 3.3.2
Khaled Hosny 45df2595 2022-01-31T23:06:10 3.3.1
Khaled Hosny 98da3306 2022-01-31T18:12:01 3.3.0
Hugo Beauzée-Luyssen 17cd4457 2022-01-19T11:53:02 meson: Enable big objects support when building for windows Fix cross compilation when targetting win64
James Hilliard daab4bf6 2022-01-17T18:28:39 [meson] add icu DEFS required for compilation In some cases we need to add additionl defs to build against icu if icu has certain options configured. ICU warns about this when building: *** WARNING: You must set the following flags before code compiled against this ICU will function properly: -DU_DISABLE_RENAMING=1 We can fetch these flags from the icu pkgconfig and add them if required. This fixes symbol errors if ICU is built without renaming.
Jussi Pakkanen 726b1a8b 2022-01-13T18:30:52 Convert fallback kwargs to [provide] entries.
Behdad Esfahbod a45a6305 2022-01-08T15:47:33 Fix unintentional locale dependency (#3358) Avoid unintentional locale dependency hb_variation_to_string uses sprintf with %g, which will produce a locale-dependent decimal point, which is not desired here. The output is supposed to be compatible with CSS syntax, and that always uses '.' for the decimal point. Fix this by changing the per-thread locale to "C" around sprintf call. Fixes https://github.com/harfbuzz/harfbuzz/issues/3355 Fixes https://github.com/harfbuzz/harfbuzz/pull/3357 Fixes https://github.com/harfbuzz/harfbuzz/pull/3358 Co-authored-by: Matthias Clasen <mclasen@redhat.com>
Khaled Hosny be91d291 2021-12-12T04:45:54 3.2.0
Khaled Hosny 549e2b70 2021-12-01T03:16:26 Revert "Remove direct link to dwrite from meson scripts" This reverts commit 6ea6c581edb3cecf1b4b42854e37b40d6d067cd3.
Khaled Hosny 8aed5c21 2021-11-26T17:54:18 3.1.2
Khaled Hosny 69d8f27c 2021-11-20T17:09:15 [meson] Require 0.55.0 We implicitly require it for building ragel subproject. This new version requirement should satisfied in both Fedora 33 and Debian bullseye, and not be too cutting edge for us.
Khaled Hosny cd5c6cd0 2021-11-08T06:59:55 3.1.1
Khaled Hosny 77eeec53 2021-11-03T23:31:03 3.1.0
Cameron Cawley 6ea6c581 2021-09-24T22:05:29 Remove direct link to dwrite from meson scripts
Khaled Hosny 792ca307 2021-10-05T19:00:29 [meson] Add graphite2 option and deprecate graphite Fixes https://github.com/harfbuzz/harfbuzz/issues/3241 Should be better handled when we can use https://github.com/mesonbuild/meson/pull/9184
Khaled Hosny 9c387e20 2021-09-17T21:32:30 3.0.0
Khaled Hosny 22cbd038 2021-09-14T12:34:25 [meson] Add ragel subproject If ragel 6.10 is not found, build it from source. Seems to work, except that ragel uses exceptions and we configure HarfBuzz build to not use exceptions, and I can’t find away to enable exceptions only for the ragel subproject. I had to remove cpp_eh=none from default options and try to disable exceptions in MSVC manually (other compilers are already handled).
Khaled Hosny 7e9ac8fe 2021-09-14T07:07:00 [meson] Require ragel 6.10 Ragel 7 is also not stable from upstream's point of view. This uses “version” argument find_program(), which was introduced in meson 0.52.0, so I raised the minimum required meson version accordingly.
Khaled Hosny 505df5ab 2021-09-07T13:46:08 2.9.1
Khaled Hosny 9aa6f8a9 2021-08-18T09:32:04 2.9.0
Khaled Hosny 63e15eac 2021-07-08T22:46:33 2.8.2
Khaled Hosny b37f03f1 2021-05-04T02:07:06 2.8.1
Hans Petter Jansson 8298c2f9 2021-04-23T18:37:58 [hb-view] Use Chafa for terminal graphics if available This produces high-quality terminal graphics using symbols or sixels according to the detected terminal capabilities. Fixes #2430.
Khaled Hosny 743baf35 2021-03-22T15:51:17 [build] Don’t look for FontConfig We don’t currently use it anywhere. It was used briefly for the hb-fc-list tool, but this tool have not been built since 2015: commit cd042fc8c4a3984c3647cd22a27c34f00636f6e8 Author: Behdad Esfahbod <behdad@behdad.org> Date: Thu Jun 18 10:55:13 2015 -0700 [util] Disable hb-fc-list for now Until I figure out what to do about the API, and finalize the tool.
Khaled Hosny 03538e87 2021-03-16T19:28:35 2.8.0
Behdad Esfahbod c2fc2aa4 2020-06-29T01:49:28 [atomic] Remove Solaris intrinsics
Behdad Esfahbod 7099a6dc 2020-06-29T01:47:37 [atomic] Remove old Intel primitives implementation
Behdad Esfahbod 711c241f 2020-06-29T01:40:30 m[mutex] Remove busyloop mutex implemenation Don't know why I ever added this. :)
Khaled Hosny 68d2e1b2 2021-01-21T14:39:19 [meson] Disable benchmark feature by default It downloads a dependency from the internet, and in the same time not used anywhere (one needs to explicitly call ninja benchmark), not even on the CI (not sure if it that would make much sense since it does not seem to ever fail).
Khaled Hosny b6f47af5 2021-01-21T14:34:01 [meson] Report more options in the summary
Khaled Hosny 7236c7e2 2020-12-27T01:59:00 2.7.4
Khaled Hosny 71a3b54f 2020-12-23T15:33:15 2.7.3
Xavier Claessens e2ba0e00 2020-10-03T21:34:24 meson: Fix check for cairo and cairo-ft dependencies When cairo comes from a subproject fallback it should still take cairo-ft dependency, otherwise it miss freetype2 cflags. Also update wrap file to use upstream repository now that meson support has been merged. This requires Meson >= 0.54.0 because cairo itself requires that version and we use the new `fallback: 'cairo'` syntax without specifying a variable name because cairo does not provide a variable name for cairo-ft.
Khaled Hosny 9c98b2b9 2020-08-29T00:39:42 2.7.2
Ebrahim Byagowi 05ef75c5 2020-08-13T20:52:03 2.7.1
Ebrahim Byagowi 0a02f1e7 2020-08-13T15:33:39 [meson] Abort if GDI/Uniscribe headers couldn't be found
Ebrahim Byagowi 24b42002 2020-08-13T09:06:39 [meson] Avoid using has_headers as that has added in 0.50.0
Ebrahim Byagowi 6e32145d 2020-08-13T00:13:06 [meson] Make compatbile with 0.47.0
Ebrahim Byagowi 58209c86 2020-08-12T23:04:26 [meson] Make compatbile with 0.49.0 Contains a just put together summary feature polyfill and workaround to broken ternary operator.
Ebrahim Byagowi ef2e3803 2020-08-12T00:50:33 Revert "Remove cmake-config support of HarfBuzz" This reverts commit 75efa893433b6f352c28bda9d0a92683244900aa.
Ebrahim Byagowi 34a05320 2020-08-04T15:14:59 [meson] minor note
Ebrahim Byagowi 75efa893 2020-07-30T01:17:42 Remove cmake-config support of HarfBuzz Reverts d38f37b2 as discussed in #2316
Ebrahim Byagowi 97079a7c 2020-08-02T12:34:21 [meson] Pass cpp_eh=none and cpp_rtti=false as default options If we want to support a build with exception handling and RTTI We should reflect that on library(..., link_language: 'c') also so for now it is ok to just set it here to get MSVC support also and we can remove hard coded flags later upon request. One other concern over just relying on it is on when harfbuzz is used as a subproject and the parent project hasn't provided the same options, that should be resolved first I think. Closes #2584
Ebrahim Byagowi 749e2754 2020-08-02T12:21:51 [meson] remove useless note about -fvisibility-inlines-hidden It was put there as current situation of autotools but msys2 is ok with the flag, if something like is needed for other it can handled as a local patch.
Ebrahim Byagowi a01c7a38 2020-07-25T12:27:31 2.7.0
Ebrahim Byagowi f9ac6ddb 2020-07-22T17:53:04 [meson] Rename 'gtk_doc' option to 'docs'
Ebrahim Byagowi 8cbdb6fa 2020-07-15T13:32:57 [meson] Don't enable benchmark under the conditions ever As we don't want to make headache for packagers as we don't want to enable it when --auto-features=enabled is used.
Ebrahim Byagowi dc981fe9 2020-07-15T13:15:27 [meson] Merge gdi and uniscribe They are the same thing obviously
Ebrahim Byagowi f62f4e38 2020-07-08T00:26:40 [meson] minor on gdi, dwrite and icu
Ebrahim Byagowi 69a1e07a 2020-07-08T03:12:09 [meson] don't enable benchmark if is in nodownload wrap mode Fixes #2551
Ebrahim Byagowi 747f65f9 2020-07-07T11:37:16 [meson] Remove HAVE_OT and HAVE_FALLBACK No need as 1e8fdd2 and 23768a9
Ebrahim Byagowi e1c35ca5 2020-07-06T22:29:11 [meson] rename the section As Behdad's comment
Ebrahim Byagowi ddb103ea 2020-07-06T22:27:39 [meson] minor
Khaled Hosny dc684103 2020-07-06T14:48:37 [meson] Set the default wrap mode to nofallback This, I believe, will prevent any automatic use of subprojects be default and will only look for dependencies on the system. https://mesonbuild.com/Subprojects.html#commandline-options
Ebrahim Byagowi 52199349 2020-07-06T16:30:59 [meson] mark meson as tested tested in a CI bot that in a `-Dcoretext=enabled` build, `build/util/hb-shape --shaper=ot` works fine.
Ebrahim Byagowi a08ba46d 2020-07-06T00:31:42 [meson] move meson version so can be referenced easier
Ebrahim Byagowi 6d3d0ebb 2020-07-06T00:26:07 Remove .tarball-revision generation from meson dist Toward making release tarball identical to git checkout now that we are moving to meson.
Ebrahim Byagowi 38fa9249 2020-07-03T11:44:44 [meson] revert 020b182 as meson fails when there is cyclic dependency
Ebrahim Byagowi 42d039cc 2020-07-03T04:32:32 [meson] minor
Ebrahim Byagowi f2a80ab2 2020-07-03T04:28:08 [meson] use null_dep idiom
Ebrahim Byagowi 05ab073d 2020-07-02T23:54:09 [meson] Improve the way cairo-ft availability is checked
Ebrahim Byagowi aadcd3ed 2020-07-01T14:31:33 [meson] use dependency's has_headers to make pulled cairo has ft support
Ebrahim Byagowi 020b182c 2020-07-01T14:22:46 [meson] try freetype without harfbuzz just as a last resort
Xavier Claessens 01fa55e8 2020-06-24T15:56:09 meson: Allow freetype and cairo subprojects to fail If their respective option is set to 'auto' configuration of the fallback subproject should be allowed to fail for any reason.
Xavier Claessens 00c652ad 2020-06-24T14:11:32 meson: Fallback to cairo subproject when option is 'auto'
Xavier Claessens 571365df 2020-06-24T14:11:07 meson: Simplify check for cairo library and headers
Xavier Claessens c4bbe89b 2020-06-24T13:40:55 meson: Fallback to freetype2 subproject when option is 'auto' But disable harfbuzz support when configuring freetype2 subproject to avoid dependency cycle.
Xavier Claessens 33252ce5 2020-06-24T13:40:32 meson: Simplify check for freetype2 library and headers
Ebrahim Byagowi f3f9205f 2020-07-01T03:01:25 [meson] Assume cairo_ft always available when cairo isn't from pkgconfig
Ebrahim Byagowi 702847aa 2020-06-29T00:39:43 [meson] Turn benchmark to a feature
Ebrahim Byagowi 1536271f 2020-06-28T13:35:13 Don't check roundf availability in cmake and meson
Ebrahim Byagowi 95b1081b 2020-06-09T17:37:36 Add performance benchmark for shaping, get extents and draw
Ebrahim Byagowi 53b0a183 2020-06-22T18:04:01 Remove concept of stable/unstable from build tools We never practiced the concept of stable and unstable releases, let's remove the code and always use the stable scheme.
Ebrahim Byagowi e4203c14 2020-06-22T05:03:27 2.6.8
Ebrahim Byagowi 8c84fee2 2020-06-22T04:04:40 Update build systems status messages
Ebrahim Byagowi a6bcc577 2020-06-20T14:19:12 [meson] don't `add_dist_script` when we are subproject Happens when harfbuzz is used as a meson subproject, `ERROR: add_dist_script may not be used in a subproject.`
Ebrahim Byagowi 03bd3efa 2020-06-19T10:32:46 [meson] Write git revision to .tarball-revision on dist tarball
Ebrahim Byagowi 62de2f74 2020-06-11T19:09:24 [meson] Remove spaces before named parameter colons meson documentations sometimes adds the space and sometimes don't and we aren't adding it most of the times unconsciously so let's the cases and be consistent.
Ebrahim Byagowi b8454c3d 2020-06-11T18:32:13 [meson] use if blocks to separate different dependencies
Ebrahim Byagowi ebab4b86 2020-06-10T16:52:32 [meson] Implement disabled state for cairo/freetype/icu 'disabled' wasn't implemented for some of the features so they were getting found even with explicit -Dfeature=disabled, this implements it. Run the following command to test this change and check whether 'disabled' was actually effective, meson build -Dglib=disabled -Dgobject=disabled -Dcairo=disabled -Dfontconfig=disabled -Dicu=disabled -Dfreetype=disabled -Dintrospection=disabled -Dgtk_doc=disabled This is useful when one wants to integrate harfbuzz into another project via meson's subproject mechanism.
Ebrahim Byagowi 22048d55 2020-06-05T04:09:07 [meson] Add -Bsymbolic-functions
Ebrahim Byagowi 65462c4b 2020-06-05T01:08:08 minor, improve the need for graphite comment
Christoph Reiter 03bd6ead 2020-06-03T23:52:10 [meson] Only pass required dependencies to everything Instead of passing dependencies as required we used one giant shared dependency list containing all dependencies for every library/executable. While this kinda works, the specified deps are also used for generating the pkg-config files and this leads to lots of Requires.private and Libs.private entries which aren't really needed. This removes the "deps" array and replaces it with a few smaller ones and makes sure the public libraries only get passed the dependencies actually needed. Fixes #2441
Ebrahim Byagowi fb46a32e 2020-06-03T12:54:26 2.6.7