summaryrefslogtreecommitdiff
path: root/meson.build
Commit message (Collapse)AuthorAgeFilesLines
* Reduce overlinkingMatthias Clasen2019-07-091-3/+5
| | | | | Only link libpangoxft and libpangocairo against xft and cairo.
* meson: Use 'standard' option namesMatthias Clasen2019-07-011-1/+1
| | | | | | | | Use 'gtk_doc' for documentation and 'introspection' for, well, introspection. This matches what the rest of the stack does. Fixes https://gitlab.gnome.org/GNOME/pango/issues/364
* Merge branch 'replace-deprecated-hb-api' into 'master'Matthias Clasen2019-07-011-1/+1
|\ | | | | | | | | Replace deprecated Harfbuzz API See merge request GNOME/pango!39
| * Require Harfbuzz 2.0Emmanuele Bassi2019-01-041-1/+1
| | | | | | | | We're going to use newer API to replace deprecated calls.
* | Fix building glib as subprojectMatthias Clasen2019-05-251-1/+3
| | | | | | | | | | | | This is necessary now, since we bumped the glib req beyond what the stable gnom eruntime currently provides.
* | Bump the GLib reqMatthias Clasen2019-05-251-1/+1
|/ | | | Require GLib 2.59.2, for G_TYPE_UNICODE_SCRIPT.
* Bump version to 1.43Matthias Clasen2018-11-191-1/+1
| | | | We're going to add new api, so add version markers etc.
* meson: Set the compatibility version correctly on macOSNirbheek Chauhan2018-10-121-6/+2
| | | | | | Requires the latest Meson. Closes https://gitlab.gnome.org/GNOME/pango/issues/320
* meson: Add subproject fallbacks for most dependenciesNirbheek Chauhan2018-10-121-18/+63
| | | | | | | | | | | | | | | | glib, fribidi, harfbuzz, fontconfig, freetype, cairo + small fixes when building as a subproject Only fribidi and glib have been added as wraps because the rest are not upstream yet and can be found at: https://github.com/centricular/harfbuzz https://github.com/centricular/fontconfig https://github.com/centricular/cairo https://github.com/centricular/freetype2 They need testing on non-Linux platforms.
* meson: fix build on osxIgnacio Casal Quinteiro2018-10-041-0/+2
| | | | Fixes https://gitlab.gnome.org/GNOME/pango/issues/324
* Merge branch 'add-private' into 'master'Khaled Hosny2018-10-031-1/+1
|\ | | | | | | | | Use non-deprecated API for adding instance private data See merge request GNOME/pango!18
| * Require GLib >= 2.38Emmanuele Bassi2018-08-301-1/+1
| | | | | | | | | | We want to use G_ADD_PRIVATE, so we need a slightly less ancient version of GLib than 2.34.
* | build: Generate pkg-config filesEmmanuele Bassi2018-08-301-39/+1
| | | | | | | | | | | | | | | | | | Instead of using templates, ask Meson to generate the pkgconfig files for us. This ensures that the generated files are: - always valid - always up to date with the build - only built when needed without convoluted checks
* | build: Use Meson functions for argument checkingEmmanuele Bassi2018-08-301-10/+2
| | | | | | | | | | | | We can ask Meson to check compiler and linker arguments and return us the list of arguments it found, instead of checking one at a time, or none at all.
* | build: Add variable for the Pango versioned spaceEmmanuele Bassi2018-08-301-1/+2
| | | | | | | | | | | | | | | | We have the API version and we build the inclusion path from it, but we should have a variable with the versioned namespace ('pango' + API version) and build paths using join_paths() instead. We're also going to use the versioned namespace elsewhere soon.
* | Bump up the dependency on MesonEmmanuele Bassi2018-08-301-1/+1
|/
* 1.42.31.42.3Matthias Clasen2018-07-301-1/+1
|
* 1.42.21.42.2Matthias Clasen2018-07-181-1/+1
|
* Rename pango-view/ dir to utils/Behdad Esfahbod2018-07-081-1/+1
|
* build: Correct Darwin linker optionsPhilip Chimento2018-05-221-1/+1
| | | | | | The Darwin linker doesn't want equal signs here. Closes: #304
* build: Bump required harfbuzz versionKalev Lember2018-05-071-1/+1
| | | | We use hb_variation_t that was added in harfbuzz 1.4.2.
* Use non-deprecated libthai API when availableKhaled Hosny2018-04-111-0/+4
| | | | I’m assuming the new API is thread-safe as claimed.
* 1.42.11.42.1Matthias Clasen2018-04-071-1/+1
|
* build: Add fallbacks for finding non-GNOME deps on MSVCChun-wei Fan2018-03-301-7/+140
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Many of Pango's dependencies do not support a build system for Visual Studio that would generate the pkg-config files for them, so we need to try to look for them using cc.has_header() and cc.find_library() for them, namely for Cairo, FreeType, FontConfig and HarfBuzz as fallbacks. For Cairo, things are more complicated as there are multiple build options and configurations for it, so we need to check for those that we need after we find the Cairo headers and libraries by: -Including the respective headers (for cairo-win32.h, cairo-ps.h, cairo-pdf.h, cairo-quartz.h and cairo-xlib.h, since these features must have been enabled when Cairo is built and installed in order for those headers to be succesfully included) -For pangocairo with FreeType support, we need to check whether the FontConfig support is built into Cairo as well, as FontConfig support is actually required in Cairo for this. -For Cairo/PNG output surface support, check whether Cairo is built with PNG output surface support. We also need to update how pangocairo.pc and pangoft2 are generated: -On builds where pkg-config files can be found for cairo, freetype, fontconfig and/or harfbuzz: Generate it with "Requires: pango <depedencies>" as before, otherwise for MSVC builds where we find these libraries manually, we don't put these packages under "Requires:..." or "Requires.private:...", but instead put them under "Libs:", linking to each dep as -l<.lib file name> This is so that pangocairo.pc and pangooft2.pc can be correctly used by items that need to make use of it, such as g-ir-scanner. https://bugzilla.gnome.org/show_bug.cgi?id=783274
* meson: Check for HarfBuzz and FontConfig for PangoFT2Chun-wei Fan2018-03-301-4/+15
| | | | | | | | | | | | | | | | | | | | | It is possible that we can have the following situations, at least on Windows: -FreeType present, FontConfig missing -Cairo-FT present, with no FontConfig support. As gen-script-for-lang requires FontConfig, and PangoFT2 depends on HarfBuzz, FontConfig and Freetype, we need to check for them before we build PangoFT2, and so that we could include PangoFT2 support in PangoCairo. The tests and pango-view have an optional dependency on PangoFT2, so we need to also check whether we built PangoFT2 before we try to build things related to PangoFT2. For the tools, since gen-script-for-lang.c depends on FontConfig, check for it as well before we build it. https://bugzilla.gnome.org/show_bug.cgi?id=783274
* Update version number in meson.build as wellKhaled Hosny2018-03-271-1/+1
| | | | | Follow up of commit d4f3370336a40907f528a41e75a55fe4f50c1a11. Maintaining two build systems is tricky!
* 1.41.11.41.1Matthias Clasen2018-02-131-1/+1
|
* Disable -Werror=undefMichael Catanzaro2018-02-121-1/+1
|
* meson: Update rules for introspectionEmmanuele Bassi2018-02-121-1/+1
| | | | | | | | | | | | | | | Building introspection should not be gated on cross-compilation: it's perfectly acceptable to use an helper binary to run the introspection scanner when cross-compiling — in fact, it's what projects like Yocto do. Instead, we should have an option to disable the introspection generation explicitly. Additionally, when building introspection data for ancillary Pango libraries, like PangoCairo or PangoXft, we should depend on the GIR target, instead of adding an `--include-uninstalled` extra argument for the introspection scanner; this allows building Pango as a sub-project of another project, and lets Meson deal with the appropriate paths and arguments when invoking the scanner.
* Switch to using external FriBiDiKhaled Hosny2018-02-041-0/+4
|
* build: Only enable freetype if fontconfig is also availablePhilip Withnall2018-01-101-1/+2
| | | | | | | | | | | | | | | This changes meson.build to match what configure.ac already does. The code doesn’t have separate conditions for whether fontconfig and freetype are available: if freetype compilation is enabled, it assumes that fontconfig is also available. Previously, systems with freetype available, but no fontconfig, would fail to compile Pango due to trying to link against non-existent fontconfig symbols. Signed-off-by: Philip Withnall <withnall@endlessm.com> https://bugzilla.gnome.org/show_bug.cgi?id=792363
* Remove unneeded varBehdad Esfahbod2018-01-041-3/+0
|
* meson: Bump the fontconfig requirementsMatthias Clasen2018-01-031-1/+4
| | | | | Keep the autotools and meson builds in sync, as far as requirements are concerned.
* Bump version to 1.41Matthias Clasen2018-01-031-1/+1
| | | | We've added new API for font variations.
* 1.40.131.40.13Matthias Clasen2017-10-271-1/+1
|
* 1.40.121.40.12Matthias Clasen2017-09-041-1/+1
|
* 1.40.111.40.11Matthias Clasen2017-08-191-1/+1
|
* 1.40.101.40.10Matthias Clasen2017-08-151-1/+1
|
* Release Pango 1.40.91.40.9Emmanuele Bassi2017-08-091-1/+1
| | | | | | | Changes from 1.40.8: - Build and dist fixes - Fix build on Windows with MSVC (#783274)
* meson: Clean up things a bit on Visual StudioChun-wei Fan2017-08-081-19/+2
| | | | | | | | We can just force-include msvc_recommended_pragmas.h, which will silence the unwanted noise and point out to us potential problems in the code. https://bugzilla.gnome.org/show_bug.cgi?id=783274
* 1.40.81.40.8Matthias Clasen2017-08-071-1/+1
|
* meson: Specify version when defining _POSIX_C_SOURCETing-Wei Lan2017-07-181-1/+1
| | | | | | | | | | FreeBSD libc assumes defining _POSIX_C_SOURCE without specifying a version means a pre-C89 environment with the oldest version of POSIX standard, IEEE Std 1003.1-1988, causing several functions used by pango to be undeclared. To resolve this problem, simply provide a version number when defining _POSIX_C_SOURCE. https://bugzilla.gnome.org/show_bug.cgi?id=783428
* 1.40.71.40.7Matthias Clasen2017-07-171-1/+1
|
* meson: Generate correct sonamesJan Alexander Steffens (heftig)2017-05-221-1/+2
| | | | | "soversion:" is for the version placed in the soname. The full library revision goes into "version:". This affects the symlinks, too.
* meson: Ensure we generate the appropriate pkg-config filesEmmanuele Bassi2017-05-221-6/+19
| | | | | | The Pango pkg-config files are generated depending on the platform we are building for, and backends we are using. Only the `pango.pc` file is generated unconditionally.
* 1.40.61.40.6Matthias Clasen2017-05-221-1/+1
|
* meson: Install tests and additional dataEmmanuele Bassi2017-05-191-0/+1
|
* meson: Add a few missing things, minor fixes, TODONirbheek Chauhan2017-05-191-25/+46
|
* build: Add Meson build systemEmmanuele Bassi2017-05-191-0/+348
Meson is a meta build system that is: - fast - simpler to understand and use - portable to multiple platforms through different backends - well integrated with the GNOME platform - well maintained Using Meson allows us to build Pango much more quickly, and on all the platforms we currently target, without any loss of functionality, compared to Autotools. Some timing comparisons with hot ccache for both build systems: * autogen.sh: * meson real 0m11.149s real 0m2.525s user 0m8.153s user 0m1.609s sys 0m2.363s sys 0m1.206s * make -j$(($(nproc) + 2)) * ninja real 0m9.186s real 0m3.387s user 0m16.295s user 0m6.887s sys 0m5.337s sys 0m1.318s -------------------------------------------------------------- * autotools * meson + ninja real 0m27.669s real 0m5.772s user 0m45.622s user 0m8.465s sys 0m10.698s sys 0m2.357s System: Intel Core i7-7500U, SSD, 16GB of RAM