Commit Graph

67 Commits

Author SHA1 Message Date
Chun-wei Fan
41b1825196 CMake builds: Support introspection builds
This adds support for introspection builds on Windows that is enabled by
the HB_HAVE_INTROSPECTION option, which will also enable HB_HAVE_GOBJECT
(and so HB_HAVE_GLIB) as they are required for introspection.

In order for this to work one must ensure that the Python installation
listed in PYTHON_EXECUTABLE is the same Python release series that was
used to build _giscanner.pyd (the Python module that is used by
g-ir-scanner), with the same architecture.  PKG_CONFIG_PATH and PATH
must be set correctly if $(PREFIX)\bin and/or $(PREFIX)\lib\pkgconfig
are not in the standard PATH and PKG_CONFIG_PATH, which is actually
in-line with the *NIX builds.
2017-10-19 18:36:32 +08:00
Chun-wei Fan
53db221259 CMake: Support building HarfBuzz-GObject
This adds support to the CMake build files to support building
HarfBuzz-GObject, which is actually a little bit complicated,
as we need to:

-Run glib-mkenums, which is a Python (for newer GLib/GObject) or PERL
 (for older, pre 2.53.4, GLib/GObject) script.  This matters more for
 Visual Studio builds as shebang lines are not supported, so we need to
 test-run it with PERL or Python to determine which is the correct
 interpretor to use.

-Next, we need to replace strings in the sources that we obtain from
 running glib-mkenums.  So, the solution here is to use a small utility
 CMake script for our purposes here, to maintain maximum compatibility.

-Ensure that things do work in the Visual Studio IDE builds.
2017-10-18 23:48:11 +08:00
Chun-wei Fan
162575f2c6 CMake builds: Fix builds
Include the fallback sources in the build, and update
src/Makefile.sources so that it can be read by the CMake build files.

Fix a typo in the DirectWrite configure option so that we can properly
enable DirectWrite builds.

Also, when building the utility program, install them as well.
2017-10-18 22:48:18 +08:00
Khaled Hosny
6760021d6f CMakelists.txt fix for Freetype builds (#564)
Instead of searching for freetype using pkg-config, use the FindFreetype
feature of CMake. This allows for better integration with other projects
that make use of CMake.

Fixes https://github.com/behdad/harfbuzz/issues/518
2017-10-12 12:35:08 +03:30
Ebrahim Byagowi
3b0e47ca00 Fix arm-none-eabi build (fixes #451) (#496) 2017-06-19 14:47:09 +04:30
Ebrahim Byagowi
152736981d [cmake] Add framework build support (#484) 2017-05-13 21:32:56 +04:30
Ebrahim Byagowi
bf50ddaf2b [cmake] minor (#482) 2017-05-04 20:31:42 +04:30
ebraminio
696641314e [cmake] Final touches (#473) 2017-04-19 22:59:46 +04:30
ebraminio
4d7c52066b [cmake] Remove HB_DISABLE_DEPRECATED as it seems needed for pango build (#470) 2017-04-17 15:53:46 +04:30
ebraminio
75931427aa [cmake] Fix try compile link issues (#466) 2017-04-14 05:08:11 +04:30
ebraminio
cb021e14ab [cmake] typo (#465) 2017-04-14 04:31:17 +04:30
ebraminio
a41d5ea445 [cmake] Add atomic ops availability detection (#464) 2017-04-14 04:25:50 +04:30
ebraminio
8568588202 [cmake] Remove NO_MT flag (#462) 2017-04-13 02:17:16 +04:30
ebraminio
adfd4ae1cf [cmake] Improve third party libraries support (#461) 2017-04-11 23:18:18 +04:30
ebraminio
3a8bc57211 [cmake] Add utils build support (#460) 2017-04-11 21:32:14 +04:30
ebraminio
d2acaf6d72 Split ragel generated files lists and remove hardcoded rl files lists (#453) 2017-04-05 11:21:23 +02:00
ebraminio
7d64c0ef37 Add CMake build support (#444) 2017-04-04 15:03:51 +04:30