Commit graph

124 commits

Author SHA1 Message Date
Khaled Hosny
b461c4224a Fold the remaining Makefile.sources into CMakeLists.txt
That is the only place where they are used now.
2024-06-27 16:33:16 +03:00
Khaled Hosny
fa82ecd2c7 Fix CMake build 2024-06-27 15:28:38 +03:00
Don Olmstead
cef1eafb77 Use find_package for ICU
ICU 75.1 requires C++17 support so use `find_package(ICU)` which determines the versioning. Sets `CMAKE_CXX_STANDARD` when that happens.

Follows along with what Meson build did in 93d58f83.
2024-06-14 13:51:14 -07:00
Timo Suoranta
39b5ae79f0 Fix for #4395 2024-04-12 19:33:29 +02:00
Bruce Mitchener
582a5b3a92 cmake: Switch to find_package(Python3).
The existing way of working used in this file was deprecated in
cmake 3.12 and a new way supplied.

See https://cmake.org/cmake/help/latest/policy/CMP0148.html
2024-02-19 20:10:04 +02:00
Behdad Esfahbod
4a18c502e2 [cmake] Treat VITA like gcc
https://github.com/vitasdk/packages/issues/300
2024-01-23 05:12:43 -08:00
Chun-wei Fan
5e9710ffc0 CMake: Update introspection cflags
Make the flags between --cflags-[begin|end] correspond to the ones used in the
Meson builds better.
2023-11-30 17:42:46 +08:00
Chun-wei Fan
ea526c3dcb CMake: Generate and install hb-features.h
By the features that are enabled for the build.  The header is installed unless
one chooses not to install it
2023-11-30 17:35:04 +08:00
Chun-wei Fan
86fd6b10c4 CMake: Build the hb-info utility program
...if GObject support is enabled.
2023-11-30 16:39:10 +08:00
Chun-wei Fan
d112ed40fc CMake: Install hb-subset-repacker.h
It ought to be installed.
2023-11-30 16:32:30 +08:00
Chun-wei Fan
1d86b844df CMake: Build libharfbuzz-cairo and fix hb-view build
There is now a separate library that we build if Cairo support is enabled,
which will also be used to build hb-view, so we:

* Add support in the CMake build files to build libharfbuzz-cairo, if enabled
  via HB_HAVE_CAIRO. Move the Cairo detection bits around as a result.
* Generate pkg-config file for libharfbuzz-cairo, and add 'cairo' to
  Requires.private.
* Fix building hb-view, which will now depend on libharfbuzz-cairo, so Cairo
  support must be explicitly enabled.
* Stop depending automatically on Cairo if HB_BUILD_UTILS is enabled unless
  Cairo support is enabled as a result.
2023-11-30 16:31:44 +08:00
Amir Masoud Abdol
0a3e4c12ac Replace the deprecated $<CONFIGURATION> with $<CONFIG> 2023-01-17 11:09:15 +02:00
Ankith
a120b01ab3
[cmake] Generate pkg-config .pc files 2022-09-06 18:28:43 +05:30
Not-a-Bug Won't Fix
aec34e17eb Fix target_link_libraries signatures mixing 2022-07-07 13:35:50 -06:00
Luca Bacci
3a722c5354 Fixes for DWrite header checks 2022-07-06 12:00:36 -06:00
Luca Bacci
1abc14b463 Do not link with the DWrite lib
It's loaded dynamically now
2022-07-06 17:55:39 +02:00
Cosimo Lupo
53eeeab0e3 CMakeLists.txt: also match 'AppleClang' compiler to not link with libc++ 2022-04-06 14:20:59 +02:00
Timo Suoranta
b8c2c1ab37
Use freetype from CMake target when present (#3361)
Add check for Freetype CMake target. If it is found:
- enable HB_HAVE_FREETYPE option
- add HAVE_FREETYPE=1 define
- bypass finding Freetype as cmake package
- add Freetype CMake target as dependency to harfbuzz
2022-01-11 05:14:44 -07:00
faywong
b621c4fc29 [subset] Refine the coding style 2021-10-11 13:07:12 -06:00
faywong
f8538d3117 [subset] Export header & archive when HB_BUILD_SUBSET
Ease the adopt of hb-subset feature for 3rd party developers
2021-10-11 13:07:12 -06:00
NikitaFeodonit
19cd84b4e9 CMake: Detect pthread with module FindThread
Set CMake minimum version to 3.1.
2021-09-15 17:28:43 +03:00
Behdad Esfahbod
c4b49075f6 Update CMakeLists.txt
Keep the warning.
2021-04-01 11:47:33 -06:00
Timo Suoranta
9945f32746 Test fix to export target include directories 2021-04-01 11:47:33 -06:00
Behdad Esfahbod
dbcf2f417f [cmake] Fix syntax 2021-03-01 12:43:32 -07:00
Behdad Esfahbod
11c28cb5fa [cmake] Define HAVE_PTHREAD if not on win32
Yeah...
2021-02-22 17:38:53 -07:00
Behdad Esfahbod
c2fc2aa44c [atomic] Remove Solaris intrinsics 2021-02-20 15:20:33 -07:00
Behdad Esfahbod
7099a6dca1 [atomic] Remove old Intel primitives implementation 2021-02-20 15:20:06 -07:00
Chun-wei Fan
2953a66ab6 CMake: Define HAVE_GOBJECT when harfbuzz-gobject is built
Without this, the built library for harfbuzz-gobject is unuseful.
2020-12-11 14:00:10 +03:30
David Corbett
e25aa49a1b Fix a dead link in CMakeLists.txt 2020-10-17 12:32:41 -04:00
Ebrahim Byagowi
2af58c3518 Revert "Remove cmake build files"
This reverts commit 4e572c9407.
2020-08-12 01:00:33 +04:30
Ebrahim Byagowi
4e572c9407
Remove cmake build files
As discussed in https://github.com/harfbuzz/harfbuzz/pull/2252
2020-07-30 16:19:15 +04:30
Ebrahim Byagowi
1536271f6b Don't check roundf availability in cmake and meson 2020-06-28 13:35:28 +04:30
Ebrahim Byagowi
8c84fee2e5 Update build systems status messages 2020-06-22 04:32:59 +04:30
Ebrahim Byagowi
44fe1c8ff1 Remove xlocale use now that isn't available in most distros
Our CI bots don't detect it in Alpine, ArchLinux, Ubuntu and Fedora
so let's get rid of it use the fallback we are using anyway for a
long time.
2020-05-10 14:51:35 +04: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
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
79b2b8a91f minor 2020-02-19 16:41:13 +03:30
Rico Tzschichholz
2c9fbf5561 Improve GIR build 2020-02-19 14:12:29 +03:30
Ebrahim Byagowi
f7187e90d2 [cmake] Don't build src/main
Closes #2108
2020-01-24 20:36:30 +03:30
Don
878e3588a3 [cmake] Add harfbuzz-icu library 2019-11-06 09:23:03 +03:30
Ebrahim Byagowi
d50d2fcbc7 Fallback if roundf didn't exist, like in dietlibc (#1953) 2019-09-02 19:32:05 -05:00
Derzsi Dániel
658424b29e
[cmake] Fix CMake build on newer CMake versions
Unfortunately, newer CMake versions die during regex variable extraction, causing the build to fail.

This is caused by the lack of escaping used around variables in the extract_make_variable function, causing these variables to be automatically unwrapped into empty strings.
2019-07-26 22:52:03 +03:00
Ebrahim Byagowi
eb8bd2f7ec Add hb_gdi_face_create API
Based on Konstantin Ritt work posted on mailing list
2019-07-21 14:22:19 -07:00
Ebrahim Byagowi
9fea6b4dd4
[amalgam] Use it in cmake port and fix conflicts (#1812) 2019-07-05 18:46:41 +04:30
Behdad Esfahbod
efef672911 Fix cmake build
Hopefullly.
2019-06-17 22:57:51 -07:00
Behdad Esfahbod
23768a99e0 [config] Replace HAVE_FALLBACK with HB_NO_FALLBACK_SHAPE
This disables fallback shaper in tiny builds.  Projects that don't
use our build system and want to disable fallback shaper (eg. Firefox)
should define HB_NO_FALLBACK_SHAPE now.

Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-06-17 20:29:29 -07:00
Ebrahim Byagowi
c4cae81a26 Remove round polyfill
Added in 01dff1e and 19256bef, this was targeted at older
msvc versions that don't support C99 but now as we require
C++11 we don't target places those envs thus removing this.
2019-06-10 12:49:50 -07:00
Behdad Esfahbod
b567d4ea14 Fix build after UCDN -> UCD 2019-05-23 21:36:42 -04:00
Behdad Esfahbod
3fc066314a Another try at fixing cmake build 2019-04-24 16:41:57 -07:00