|
|
|
package("fontconfig")
|
|
|
|
|
|
|
|
set_homepage("https://www.freedesktop.org/wiki/Software/fontconfig/")
|
|
|
|
set_description("A library for configuring and customizing font access.")
|
|
|
|
|
|
|
|
set_urls("https://www.freedesktop.org/software/fontconfig/release/fontconfig-$(version).tar.gz")
|
|
|
|
add_versions("2.13.1", "9f0d852b39d75fc655f9f53850eb32555394f36104a044bb2b2fc9e66dbbfa7f")
|
|
|
|
add_versions("2.13.93", "0f302a18ee52dde0793fe38b266bf269dfe6e0c0ae140e30d72c6cca5dc08db5")
|
|
|
|
add_versions("2.13.94", "246d1640a7e54fba697b28e4445f4d9eb63dda1b511d19986249368ee7191882")
|
|
|
|
add_versions("2.14.0", "b8f607d556e8257da2f3616b4d704be30fd73bd71e367355ca78963f9a7f0434")
|
|
|
|
add_versions("2.14.2", "3ba2dd92158718acec5caaf1a716043b5aa055c27b081d914af3ccb40dce8a55")
|
|
|
|
|
|
|
|
-- fix the build issue with --enable-static
|
|
|
|
add_patches("2.13.1", "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/8208f99fa1676c42bfd8d74de3e9dac5366c150c.diff",
|
|
|
|
"2abdff214b99f2d074170e6512b0149cc858ea26cd930690aa6b4ccea2c549ef")
|
|
|
|
|
|
|
|
add_configs("nls", {description = "Enable Native Language Support (NLS)", default = false, type = "boolean"})
|
|
|
|
|
|
|
|
add_deps("meson", "ninja", "freetype", "expat", "gperf")
|
|
|
|
add_deps("python 3.x", {kind = "binary"})
|
|
|
|
if is_plat("linux") then
|
|
|
|
add_deps("pkg-config")
|
|
|
|
end
|
|
|
|
|
|
|
|
on_load("windows", "linux", "macosx", function (package)
|
|
|
|
if package:config("nls") and not package:is_plat("linux") then
|
|
|
|
package:add("deps", "libintl")
|
|
|
|
end
|
|
|
|
if package:is_plat("linux") and package:version():lt("2.13.91") then
|
|
|
|
package:add("deps", "util-linux", {configs = {libuuid = true}})
|
|
|
|
package:add("deps", "autoconf", "automake", "libtool", "bzip2")
|
|
|
|
end
|
|
|
|
end)
|
|
|
|
|
|
|
|
on_install("windows", "linux", "macosx", function (package)
|
|
|
|
if package:is_plat("windows") then
|
|
|
|
io.replace("meson.build", "c_args = []", "c_args = ['-DXML_STATIC']", {plain = true})
|
|
|
|
end
|
|
|
|
local configs = {
|
|
|
|
"-Dtests=disabled",
|
|
|
|
"-Dtools=disabled",
|
|
|
|
"-Ddoc=disabled"}
|
|
|
|
table.insert(configs, "-Ddebug=" .. (package:debug() and "true" or "false"))
|
|
|
|
table.insert(configs, "-Ddefault_library=" .. (package:config("shared") and "shared" or "static"))
|
|
|
|
table.insert(configs, "-Dnls=" .. (package:config("nls") and "enabled" or "disabled"))
|
|
|
|
import("package.tools.meson").install(package, configs)
|
|
|
|
end)
|
|
|
|
|
|
|
|
on_test(function (package)
|
|
|
|
assert(package:has_cfuncs("FcInitLoadConfigAndFonts", {includes = "fontconfig/fontconfig.h"}))
|
|
|
|
end)
|