xmake.lua 1.4 KB

1234567891011121314151617181920212223242526272829303132
  1. package("xtrans")
  2. set_kind("library", {headeronly = true})
  3. set_homepage("https://www.x.org/")
  4. set_description("X.Org: X Network Transport layer shared code")
  5. set_urls("https://www.x.org/archive/individual/lib/xtrans-$(version).tar.gz")
  6. add_versions("1.4.0", "48ed850ce772fef1b44ca23639b0a57e38884045ed2cbb18ab137ef33ec713f9")
  7. add_versions("1.6.0", "936b74c60b19c317c3f3cb1b114575032528dbdaf428740483200ea874c2ca0a")
  8. if is_plat("linux") then
  9. add_extsources("apt::xtrans-dev", "pacman::xtrans")
  10. end
  11. if is_plat("macosx", "linux", "bsd", "cross") then
  12. add_deps("pkg-config", "util-macros", "xorgproto")
  13. end
  14. on_install("macosx", "linux", "bsd", "cross", function (package)
  15. local configs = {"--sysconfdir=" .. package:installdir("etc"),
  16. "--localstatedir=" .. package:installdir("var"),
  17. "--disable-dependency-tracking",
  18. "--disable-silent-rules",
  19. "--enable-docs=no"}
  20. -- fedora systems do not provide sys/stropts.h
  21. io.replace("Xtranslcl.c", "# include <sys/stropts.h>", "# include <sys/ioctl.h>")
  22. io.replace("Xtranslcl.c", "# include <stropts.h>", "# include <sys/ioctl.h>")
  23. import("package.tools.autoconf").install(package, configs)
  24. end)
  25. on_test(function (package)
  26. assert(package:has_ctypes("Xtransaddr", {includes = "X11/Xtrans/Xtrans.h"}))
  27. end)