|
549e2b70
|
2021-12-01T03:16:26
|
|
Revert "Remove direct link to dwrite from meson scripts"
This reverts commit 6ea6c581edb3cecf1b4b42854e37b40d6d067cd3.
|
|
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.
|
|
459e485b
|
2021-11-02T09:36:12
|
|
[meta] Remove otherwise-empty test-meta
|
|
c30f6834
|
2021-11-01T22:29:14
|
|
[map] Add 5 methods
|
|
dcd18da6
|
2021-11-01T20:55:30
|
|
[set] Add standard the 5 standard methods & tests
|
|
11135150
|
2021-11-01T20:23:12
|
|
[vector] Move test code into separate file
|
|
6ea6c581
|
2021-09-24T22:05:29
|
|
Remove direct link to dwrite from meson scripts
|
|
f55d8347
|
2021-10-14T13:39:45
|
|
[subset] Move struct DeltaSetIndexMap into hb-ot-var-common.hh
Also fix naming issues in review comments
|
|
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
|
|
a59e7ec9
|
2021-09-15T14:02:52
|
|
[meson] Add ragel_subproject option
Add an option to build fallback ragel subproject when no suitable ragel
version is found, and make it off by default since most builder don’t
need ragel at all.
Fixes https://github.com/harfbuzz/harfbuzz/issues/3208 (hopefully)
|
|
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).
|
|
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.
|
|
9b390f8c
|
2021-08-15T12:34:55
|
|
[set] Move page_t into hb-bit-page.hh
|
|
5f801da9
|
2021-07-27T20:54:19
|
|
[hb-ms-features] Move code out of header file
|
|
832f2b59
|
2020-11-10T16:15:37
|
|
[subset] Refactor _subset () to reduce nesting and eliminate the use of 'goto'.
|
|
5d3511e5
|
2020-11-05T10:34:26
|
|
[subset] Change compute_distances() to use a priority queue.
|
|
7b9e23f2
|
2021-02-10T23:37:43
|
|
[introspection] Fix g-ir-scanner syntax errors
Fixes https://github.com/harfbuzz/harfbuzz/issues/2851
|
|
d9e0244c
|
2021-02-02T16:04:44
|
|
remove duplicate file names
|
|
59721c2f
|
2021-01-29T11:34:59
|
|
[use] Move data table into same compilation unit
|
|
d9b167da
|
2021-01-28T20:40:42
|
|
[use] Remove hb-ot-shape-complex-use.hh
Inline into ragel machine.
|
|
675b6c29
|
2021-01-28T20:17:33
|
|
[indic/khmer/myanmar/use] Remove unused dump-*-data programs
In prep for streamlining tables.
|
|
e8e9fd95
|
2021-01-15T18:52:57
|
|
[syllabic] Add hb-ot-shape-complex-syllabic.cc/hh
Empty for now.
Part of https://github.com/harfbuzz/harfbuzz/issues/1810
|
|
3c5b7886
|
2021-01-15T19:26:04
|
|
Revert "Avoid category duplication between C++ and Ragel"
This reverts commit 67ea8133d3fa82b3365cd917fb266ba752f16169.
Merged accidentally on https://github.com/harfbuzz/harfbuzz/pull/2726
|
|
67ea8133
|
2020-10-17T14:37:22
|
|
Avoid category duplication between C++ and Ragel
|
|
5f32fdff
|
2020-11-24T01:29:24
|
|
meson: use meson.current_source_dir() instead of @CURRENT_SOURCE_DIR@
@CURRENT_SOURCE_DIR@ is not listed as a valid string substitution
for custom targets in the Meson reference, and in practice
it does not get substituted when using the vs2019 backend.
|
|
2604201a
|
2020-09-24T21:00:34
|
|
src/meson.build: allow introspection when cross-compiling
introspection can be enabled when cross-compiling on certains conditions
(for example it is supported by buildroot) so, as suggested by
Tim-Philipp Müller, disable it by default for cross builds unless the
option was explicitly enabled by the user
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
5aff8310
|
2020-09-07T10:55:33
|
|
[build] generate hb-version.h once at configure time with Meson
Currently with Meson hb-version.h is generated during the build without
any explicit dependencies which can result in build failures due races
over the file.
Change this to be generated at configure time, so that the file is always
generated once before the build itself.
Closes #2667
|
|
bc1c93fb
|
2020-09-07T17:11:17
|
|
[build] No need to pass source directory to gen-hb-version
The input file is by definition in the source directory, so dirname()
that instead of needing the directory to be passed.
Needed because a follow-up commit will change when this is called, and the
source directory isn't trivially available at that point.
|
|
fe6381d9
|
2020-09-01T03:44:01
|
|
[build] Minor
|
|
a4f3a752
|
2020-09-01T03:21:12
|
|
[build] hb-directwrite needs a C++ linker
|
|
253a8f7a
|
2020-08-13T09:23:29
|
|
[meson] Another approach to skip tests incompatible with MSVC
|
|
411b426c
|
2020-08-13T01:23:46
|
|
[meson] minor
|
|
6e32145d
|
2020-08-13T00:13:06
|
|
[meson] Make compatbile with 0.47.0
|
|
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.
|
|
eea9b59f
|
2020-08-12T06:40:23
|
|
[meson] fix generating introspection
Only libharfbuzz_gobject is introspectable, not libharfbuzz. Therefore,
it makes no sense to target the latter for introspection: it should
instead be listed as a dependency.
|
|
7bffb5d7
|
2020-08-11T19:24:46
|
|
Generate `has_arabic_joining`
|
|
ef2e3803
|
2020-08-12T00:50:33
|
|
Revert "Remove cmake-config support of HarfBuzz"
This reverts commit 75efa893433b6f352c28bda9d0a92683244900aa.
|
|
75efa893
|
2020-07-30T01:17:42
|
|
Remove cmake-config support of HarfBuzz
Reverts d38f37b2 as discussed in #2316
|
|
11bb8aa8
|
2020-08-02T00:47:21
|
|
[meson] limit check-libstdc++ check to 0.55
library(..., link_language: 'c') is introduced in 0.55 but we were relying on this anyway
assuming b_asneeded being true on meson.
#2614
|
|
9d3fbe05
|
2020-07-30T14:54:00
|
|
[meson] Add darwin versions to library()
We now have,
$ otool -L src/libharfbuzz.dylib
src/libharfbuzz.dylib:
@rpath/libharfbuzz.0.dylib (compatibility version 0.0.0, current version 0.0.0)
And with the change should we get
$ otool -L src/libharfbuzz.dylib
src/libharfbuzz.dylib:
@rpath/libharfbuzz.0.dylib (compatibility version 20700.0.0, current version 20700.0.0)
|
|
c33e8006
|
2020-07-14T19:29:58
|
|
[fuzz] Implement failing allocator
|
|
60959b08
|
2020-07-14T20:28:06
|
|
[meson] execute find_program('gen-ragel-artifacts.py') only once
should rename the script also
|
|
5c8e1bd2
|
2020-07-14T17:47:10
|
|
[meson] Don't allow introspection on static library
|
|
122a2897
|
2020-07-05T22:45:11
|
|
[aat] Remove lcar support
Very low use, only two distinct font files, Apple Chancery.ttf and Hoefler Text.ttc
have it so it really doesn't worth the size addition and so, but one may argue that
whole ligature caret is low use but guess we better to encourage GDEF one anyway.
|
|
a3b9b94b
|
2020-07-06T00:05:21
|
|
[style] Remove fdsc support (#2541)
It isn't exposed yet and low use between Apple fonts,
32 fdsc table vs 767 OS/2 tables, even Apple doesn't
support it anymore per Ned.
|
|
44444822
|
2020-07-02T17:46:56
|
|
meson: Pin harfbuzz in .pc files to the built version
This ensures that we link -subset, -icu and -gobject with a matching
version of the main library.
|
|
3adcf398
|
2020-07-02T16:41:22
|
|
meson: Make Requires in .pc files match autotools
Libreoffice tries to use only harfbuzz-icu.pc and assumes this includes
-lharfbuzz.
|
|
359dbc97
|
2020-07-04T12:28:06
|
|
[meson] Use the recommended way to generate harfbuzz.cc
As https://github.com/harfbuzz/harfbuzz/pull/2532
|
|
a7e82e4f
|
2020-07-04T12:04:41
|
|
[meson] use the recommended way to generate hb-version.h
As https://github.com/harfbuzz/harfbuzz/pull/2532
|
|
404ecc25
|
2020-07-04T03:13:32
|
|
[meson] use basename in check scripts now that meson passes dir also
|
|
785a9a8f
|
2020-07-04T02:08:30
|
|
[meson] use the recommended way to generate ragel headers
As described in https://github.com/mesonbuild/meson/issues/7156#issuecomment-629622827
|
|
42d039cc
|
2020-07-03T04:32:32
|
|
[meson] minor
|
|
f2a80ab2
|
2020-07-03T04:28:08
|
|
[meson] use null_dep idiom
|
|
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.
|
|
47a0fbec
|
2020-06-21T02:34:59
|
|
[meson] Mark longer tests with slow
So one can skip them easily by `meson test -Cbuild --no-suite slow`
|
|
4e7cb7e2
|
2020-06-12T01:38:16
|
|
minor, fix lists sorting
|
|
b88f1096
|
2020-06-09T20:06:50
|
|
meson: Export symbols for a DLL when not building statically
`default_library` might be 'both', in which case we will fail to link
when building with MSVC.
|
|
0151da23
|
2020-06-06T01:48:23
|
|
[meson] Remove with_libstdcxx build option
This was done in #770 but no indication of anyone is using it,
let's remove it from our meson port and we can just don't care about
it in autotools port after the migration to meson.
|
|
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
|
|
d54de568
|
2020-04-21T16:33:50
|
|
[style] Adopt with meson
|
|
d67553d1
|
2020-06-04T12:31:57
|
|
[meson] fix with_libstdcxx effect
oops
|
|
029ecf32
|
2020-06-04T03:31:15
|
|
[meson] Fix gen-hb-version.py run
It gets complicated apparently when executed in the dist process, let's use raw
names now that we are operating in the script folder anyway.
|
|
870304df
|
2020-06-04T03:19:53
|
|
[meson] Remove amalgam build option
Fixes #2444
|
|
b8320340
|
2020-06-03T23:40:57
|
|
[meson] fix gen script input
matters more when harfbuzz is a subproject
|
|
a9d13463
|
2020-05-30T14:17:56
|
|
[meson] Categorize tests using `suite: [...]`
So one can run a category of interested tests like
meson test -Cbuild --suite aots --suite src --print-errorlogs
Intead issuing particular tests which also is possible like
meson test -Cbuild test-shape --print-errorlogs
|
|
7250adee
|
2020-05-29T12:34:30
|
|
[tests] Port check scripts to python
|
|
e3af529e
|
2020-05-23T22:13:32
|
|
[meson] update generated headers only when the result is different
This way it won't ruin incremental builds.
We need a better way to declare source altering tasks
https://github.com/mesonbuild/meson/issues/7156
yet this is good enough despite being not idiomatic.
It is however not that smooth yet as the change may is detected on the
next meson run. One of course can issue ./gen-ragel-artifacts.py
manually for better experience before running meson.
|
|
887aa021
|
2020-05-21T20:02:47
|
|
[meson] Use find_program for locating python script
Apparently that is the simplest and supported way of finding python scripts.
|
|
d9177a59
|
2020-05-21T19:34:56
|
|
[meson] Use a c linker for on Windows also
Using a C linker was limited to non-Windows as 20a840c7, let's
revisit this while transition to meson.
Packagers easily override that via the option and use a C++ linker
if needed.
|
|
cc53fd15
|
2020-05-21T19:33:18
|
|
[meson] Normalize options names
As https://github.com/harfbuzz/harfbuzz/pull/2412#discussion_r426275027
|
|
a9e8328a
|
2020-05-21T16:28:24
|
|
[meson] Add build configuration summary just like autotools
|
|
f7562672
|
2020-05-21T17:01:04
|
|
[meson] Use / instead join_paths
We need some of the very recent features of meson, let's use the new features also
|
|
4fc6189a
|
2020-04-21T12:19:16
|
|
[meson] Generate harfbuzz.cc, hb-version.h and ragel artifacts
|
|
b19f927f
|
2020-05-16T09:27:05
|
|
meson: error out if introspection is enabled but gobject isn't
In case a user passed -Dintrospection=enabled the build would just ignore
it by default because gobject defaults to disabled and the introspection build
gets skipped.
Instead, if introspection is explicitly enabled but gobject is for some reason
missing error out.
Fixes #2404
|
|
bb095e1b
|
2020-05-10T22:00:05
|
|
[meson] make -subset target dependent to deps to get libm dependency
|
|
eea99d7b
|
2020-05-10T14:46:16
|
|
[meson] Let name_prefix of exported libraries the default
meson complains about this and it is the default per #2256
Fixes #2256
|
|
2ac42220
|
2020-05-10T14:20:27
|
|
[meson] specify preferred linker to avoid stdc++ linking
|
|
15083c24
|
2020-05-10T14:12:20
|
|
[meson] Reenable make check-symbols compatible with gcov
|
|
68905542
|
2020-04-28T14:56:47
|
|
[ci/meson] temporarily disable check-symbols
will enable again
|
|
6881939f
|
2020-04-23T10:08:45
|
|
src: meson: Reindent after last changes
|
|
e18858c6
|
2020-04-23T10:06:20
|
|
src: Don't build tests when they are disabled
|
|
750bb73e
|
2020-04-21T01:13:13
|
|
[meson] Add an experimental-api option
|
|
fb3acdbc
|
2020-04-19T14:57:04
|
|
meson: only install gobject/icu headers if the features are enabled
|
|
ad5dcda0
|
2020-04-19T14:53:05
|
|
meson: install hb-icu.h header
|
|
c6b3f73b
|
2020-04-19T00:54:24
|
|
[meson] Make harfbuzz-icu separate module optout-able
|
|
8ae06c94
|
2020-04-18T20:22:45
|
|
meson: build a separate library for harfbuzz-icu
This adds a seperate library like with autotools.
This also fixes the ico feature option which was just set to required:false
when disabled instead of really disabling it.
Disabling is still broken with msvc because it then tries to find the library
another way, but that's broken for all other deps as well so I left it as is.
For tests only test-unicode.c is using icu specific functions so split it out
into its own category which depends on harfbuzz-icu.
Fixes #2338
|
|
dced2fbe
|
2020-04-18T14:37:03
|
|
meson: complete introspection build config
Pass the same config to gobject-introspection as with cmake/autotools.
This makes sure the c-include and package name is included in the gir
and also fixes the build because of the missing HB_AAT_H* defines.
Fixes #2336
|
|
18fc9197
|
2020-03-26T13:34:28
|
|
[meson] Run check-symbols.sh and check-static-inits.sh correctly
* Search src/ build directory for objects in check-static-inits.sh
* Find .def files in src/ build directory in src/check-symbols.sh
* Pass builddir also in autotools also, we may just remove libs passing after autotools removal
* Move harfbuzz_subset_def target so can be referenced as a check-static-inits.sh dependency
|
|
f0ce56bb
|
2020-03-24T22:53:38
|
|
[meson] Don't compile test-bimap on msvc either
MSVC doens't like its NullPool,
test-bimap.cc.obj : error LNK2019: unresolved external symbol "unsigned __int64 const * const _hb_NullPool" (?_hb_NullPool@@3QB_KB) referenced in function
|
|
22f311e1
|
2020-03-24T22:43:02
|
|
[meson] Don't compile noinst_programs in msvc for now
|
|
7054b122
|
2020-03-24T22:35:41
|
|
[meson] Mark rest of non-install executables explicitly
|
|
e8808c1c
|
2020-03-24T19:15:09
|
|
[meson] Minor, replace tabs with spaces
|
|
2db82791
|
2020-03-24T18:55:56
|
|
[meson] Don't compile test-{algs,iter,meta} on msvc
|
|
3385afac
|
2020-03-24T18:55:01
|
|
[meson] Don't run check-includes if is amalgam build
|
|
6a8a1dc5
|
2020-03-24T16:04:33
|
|
[meson] Port src/ binary artifacts to meson
|
|
93b3e302
|
2020-03-14T11:27:50
|
|
[meson] fix icu-related linking errors in test with amalgam build
test-unicode.c:960: undefined reference to `hb_icu_get_unicode_funcs'
test-unicode.c:961: undefined reference to `hb_icu_get_unicode_funcs'
For now add the icu sources to libharfbuzz also for the amalgam
build, later we need to have a separate harfbuzz-icu module and
link against that, and/or generate harfbuzz.cc.
|
|
838346c5
|
2020-03-13T18:01:17
|
|
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.
|
|
4b4d5c29
|
2020-03-13T16:00:09
|
|
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.
|
|
8d425ed4
|
2020-03-13T12:15:28
|
|
meson: Fix harfbuzz-gobject builds without introspection
Make the `sources:` field reflect the items depending on whether introspection
is being built
|
|
3341d534
|
2020-03-13T12:07:06
|
|
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
|