package An official xmake package repository https://xrepo.xmake.io/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

51 lines
2.5 KiB

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)