mirror of
https://gitee.com/openharmony/third_party_harfbuzz
synced 2024-11-27 17:30:25 +00:00
53db221259
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.
21 lines
352 B
CMake
21 lines
352 B
CMake
# CMake script to replace items
|
|
# in sources generated by glib-mkenums
|
|
|
|
FILE(READ ${ENUM_INPUT_SRC} enum_in)
|
|
|
|
STRING(REPLACE
|
|
"_t_get_type"
|
|
"_get_type"
|
|
enum_out_tmp
|
|
"${enum_in}"
|
|
)
|
|
|
|
STRING(REPLACE
|
|
"_T ("
|
|
" ("
|
|
enum_out
|
|
"${enum_out_tmp}"
|
|
)
|
|
|
|
FILE(WRITE ${ENUM_OUTPUT_SRC} "${enum_out}")
|
|
FILE(REMOVE ${ENUM_INPUT_SRC}) |