add Gtk3 repo source code install (#5154)

* add gtk3 source code install

* add gtk3+ source code install

* add gdk-pixbuf

* add x11 to packagedeps

* add libxext to packagedeps

* delete the gtk3 redundancy

* add rt link

* replace the at-spi2-core pkg-config symbol

* add the wayland config and changge at-spi2-core writting

* add bin for gdk-pixbuf

* add cairo to packagedeps

* change cairo.pc

* replace the cairo/cairo-xlib.h to cairo-xlib.h

* add plain=true

* delete gtk+3
pull/5215/head
benny066567 2 months ago committed by GitHub
parent a495469889
commit b6915ab0d4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 2
      packages/a/at-spi2-core/xmake.lua
  2. 2
      packages/g/gdk-pixbuf/xmake.lua
  3. 12
      packages/g/gtk+3/xmake.lua
  4. 44
      packages/g/gtk3/xmake.lua
  5. 1
      packages/l/libepoxy/xmake.lua

@ -18,6 +18,8 @@ package("at-spi2-core")
local configs = {}
table.insert(configs, "-Ddefault_library=" .. (package:config("shared") and "shared" or "static"))
import("package.tools.meson").install(package, configs, {packagedeps = {"glib", "libiconv", "libx11", "libxtst", "libxi", "dbus"}})
local atspi_pkgconfig_dir = package:installdir("lib/pkgconfig/atspi-2.pc")
io.replace(atspi_pkgconfig_dir, [[-DG_LOG_DOMAIN="dbind"]], [[-DG_LOG_DOMAIN=\"dbind\"]])
end)
on_test(function (package)

@ -55,6 +55,8 @@ package("gdk-pixbuf")
"-Dtests=false",
"-Dinstalled_tests=false"}
table.insert(configs, "-Ddefault_library=" .. (package:config("shared") and "shared" or "static"))
package:addenv("PATH", "bin")
import("package.tools.meson").install(package, configs, {packagedeps = {"libjpeg-turbo", "libpng", "libtiff", "glib", "pcre2", "libintl", "libiconv"}})
end)

@ -1,12 +0,0 @@
package("gtk+3")
set_homepage("https://gtk.org/")
set_description("Toolkit for creating graphical user interfaces")
set_license("LGPL-2.0-or-later")
on_fetch("linux", function (package, opt)
if opt.system and package.find_package then
return package:find_package("pkgconfig::gtk+-3.0")
end
end)

@ -0,0 +1,44 @@
package("gtk3")
set_homepage("https://gtk.org/")
set_description("Toolkit for creating graphical user interfaces")
set_license("LGPL-2.0-or-later")
add_urls("https://gitlab.gnome.org/GNOME/gtk/-/archive/3.24.43/gtk-$(version).tar.gz")
add_versions("3.24.43", "ab197f76719fc875067671247533f8e5bd2bc090568ec17317de410d06397b7f")
on_fetch("linux", function (package, opt)
if opt.system and package.find_package then
return package:find_package("pkgconfig::gtk+-3.0")
end
end)
if is_plat("linux") then
add_syslinks("rt")
end
add_includedirs("include", "include/gtk-3.0")
add_deps("meson", "ninja")
add_deps("cairo", {configs = {glib = true}})
add_deps("glib", "gdk-pixbuf", "pango", "libepoxy", "graphene", "libxkbcommon", "libxext")
add_deps("libx11", "libxfixes", "libxcursor", "libxi", "libxcomposite", "libxrandr", "libxdamage", "libxinerama", "at-spi2-core")
add_links("gtk-3", "gdk-3", "gailutil-3", "X11", "X11-cxb", "pangocairo-1.0", "pango", "rt")
on_install("linux", function (package)
local configs = {"-Dintrospection=false", "-Ddemos=false", "-Dexamples=false", "-Dtests=false"}
table.insert(configs, "-Ddefault_library=" .. (package:config("shared") and "shared" or "static"))
io.replace("gdk/x11/gdkglcontext-x11.c", [[cairo/cairo-xlib.h]], [[cairo-xlib.h]], {plain = true})
import("package.tools.meson").install(package, configs, {packagedeps = {"libx11",
"libxext",
"libxi",
"at-spi2-core",
"cairo",
"libthai",
"libdatrie",
"gdk-pixbuf"}})
end)
on_test(function (package)
assert(package:has_cfuncs("gtk_application_new", {includes = "gtk/gtk.h"}))
end)

@ -13,6 +13,7 @@ package("libepoxy")
if is_plat("linux") then
add_extsources("apt::libepoxy-dev")
add_deps("libx11", "pkg-config")
add_syslinks("pthread", "dl")
end
add_deps("meson", "ninja")

Loading…
Cancel
Save