xmake.lua 1.6 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package("libxext")
  2. set_homepage("https://www.x.org/")
  3. set_description("X.Org: Library for common extensions to the X11 protocol")
  4. set_urls("https://www.x.org/archive/individual/lib/libXext-$(version).tar.gz")
  5. add_versions("1.3.5", "1a3dcda154f803be0285b46c9338515804b874b5ccc7a2b769ab7fd76f1035bd")
  6. add_versions("1.3.6", "1a0ac5cd792a55d5d465ced8dbf403ed016c8e6d14380c0ea3646c4415496e3d")
  7. if is_plat("linux") then
  8. add_extsources("apt::libxext-dev")
  9. end
  10. if is_plat("macosx", "linux", "bsd", "cross") then
  11. add_deps("pkg-config", "libx11", "xorgproto")
  12. end
  13. on_install("macosx", "linux", "bsd", "cross", function (package)
  14. local configs = {"--sysconfdir=" .. package:installdir("etc"),
  15. "--localstatedir=" .. package:installdir("var"),
  16. "--disable-dependency-tracking",
  17. "--disable-silent-rules",
  18. "--enable-specs=no"}
  19. table.insert(configs, "--enable-static=" .. (package:config("shared") and "no" or "yes"))
  20. table.insert(configs, "--enable-shared=" .. (package:config("shared") and "yes" or "no"))
  21. if package:config("pic") then
  22. table.insert(configs, "--with-pic")
  23. end
  24. if package:is_plat("cross") then
  25. table.insert(configs, "--disable-malloc0returnsnull")
  26. end
  27. import("package.tools.autoconf").install(package, configs)
  28. end)
  29. on_test(function (package)
  30. assert(package:has_ctypes("XShapeEvent", {includes = "X11/extensions/shape.h"}))
  31. end)