|
|
|
package("gobject-introspection")
|
|
|
|
|
|
|
|
set_homepage("https://gi.readthedocs.io/en/latest/")
|
|
|
|
set_description("GObject introspection is a middleware layer between C libraries (using GObject) and language bindings.")
|
|
|
|
set_license("LGPL-2.0")
|
|
|
|
|
|
|
|
add_urls("https://download.gnome.org/sources/gobject-introspection/$(version).tar.xz", {version = function (version)
|
|
|
|
return format("%d.%d/gobject-introspection-%s", version:major(), version:minor(), version)
|
|
|
|
end})
|
|
|
|
add_versions("1.70.0", "902b4906e3102d17aa2fcb6dad1c19971c70f2a82a159ddc4a94df73a3cafc4a")
|
|
|
|
|
|
|
|
add_configs("shared", {description = "Build shared library.", default = true, type = "boolean", readonly = true})
|
|
|
|
|
|
|
|
if is_plat("linux") then
|
|
|
|
add_extsources("apt::libgirepository1.0-dev", "pacman::gobject-introspection-runtime")
|
|
|
|
end
|
|
|
|
|
|
|
|
add_deps("meson", "ninja", "pkg-config", "python 3.x", "flex", "bison")
|
|
|
|
add_deps("glib", {configs = {shared = true}})
|
|
|
|
add_includedirs("include/gobject-introspection-1.0")
|
|
|
|
on_install("macosx", "linux", function (package)
|
|
|
|
import("package.tools.meson").install(package)
|
|
|
|
package:addenv("PATH", "bin")
|
|
|
|
end)
|
|
|
|
|
|
|
|
on_test(function (package)
|
|
|
|
assert(package:has_cfuncs("g_irepository_get_default", {includes = "girepository.h"}))
|
|
|
|
end)
|