xmake.lua 1.5 KB

123456789101112131415161718192021222324252627282930313233
  1. package("libpciaccess")
  2. set_homepage("https://gitlab.freedesktop.org/xorg/lib/libpciaccess")
  3. set_description("Generic PCI access library")
  4. set_license("MIT")
  5. add_urls("https://gitlab.freedesktop.org/xorg/lib/libpciaccess/-/archive/libpciaccess-$(version)/libpciaccess-libpciaccess-$(version).tar.gz",
  6. "https://gitlab.freedesktop.org/xorg/lib/libpciaccess.git")
  7. add_versions("0.18.1", "a395317730e0e8d5e71419d4d1256a89e32c2fa793607b63c4d0fb497ae34602")
  8. add_configs("zlib", {description = "Enable zlib support to read gzip compressed pci.ids.", default = false, type = "boolean"})
  9. add_configs("linux_rom_fallback", {description = "Enable support for falling back to /dev/mem for roms on Linux.", default = false, type = "boolean"})
  10. add_deps("meson", "ninja")
  11. add_deps("hwdata", {private = true})
  12. on_load(function (package)
  13. if package:config("zlib") then
  14. package:add("deps", "zlib")
  15. end
  16. end)
  17. on_install("linux", "bsd", function (package)
  18. local configs = {}
  19. table.insert(configs, "-Dzlib=" .. (package:config("zlib") and "enabled" or "disabled"))
  20. table.insert(configs, "-Dlinux-rom-fallback=" .. (package:config("linux_rom_fallback") and "true" or "false"))
  21. table.insert(configs, "-Dpci-ids=" .. package:dep("hwdata"):installdir("share/hwdata"))
  22. import("package.tools.meson").install(package, configs)
  23. end)
  24. on_test(function (package)
  25. assert(package:has_cfuncs("pci_system_init", {includes = "pciaccess.h"}))
  26. end)