xmake.lua 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package("linux-tools")
  2. set_kind("binary")
  3. set_homepage("https://kernel.org/")
  4. set_description("Tools of the Linux kernel")
  5. set_license("GPL-2.0-only")
  6. add_urls("https://cdn.kernel.org/pub/linux/kernel/$(version).tar.xz",
  7. "https://mirrors.edge.kernel.org/pub/linux/kernel/$(version).tar.xz",
  8. {version = function (version)
  9. return "v" .. version:major() .. ".x/linux-" .. version
  10. end})
  11. add_versions("4.20.9", "b5de28fd594a01edacd06e53491ad0890293e5fbf98329346426cf6030ef1ea6")
  12. add_versions("5.0.8", "11908044e8cce1e093141f8da594708d45d05d0381676ae9aa3d8aeaf7c85435")
  13. add_versions("5.9.16", "b0d7abae88e5f91893627c645e680a95c818defd1b4fcaf3e2afb4b2b6b4ab86")
  14. add_versions("5.16.9", "1660e7228ec299c187c19739d115ded97f6b1be05a24986c4c443e7c5e8b744f")
  15. add_versions("5.19.8", "616308795a952a6a39b4c74807c33916850eb7166d8ed7c9a87a1ba55d7487ce")
  16. add_configs("bpftool", { description = "Enable bpftool.", default = true, type = "boolean"})
  17. local modules = {"bpftool"}
  18. on_load(function (package)
  19. for _, name in ipairs(modules) do
  20. if package:config(name) then
  21. import("modules." .. name).load(package)
  22. end
  23. end
  24. end)
  25. on_install("linux", function (package)
  26. for _, name in ipairs(modules) do
  27. if package:config(name) then
  28. local oldir = os.curdir()
  29. import("modules." .. name).install(package)
  30. os.cd(oldir)
  31. end
  32. end
  33. end)
  34. on_test(function (package)
  35. for _, name in ipairs(modules) do
  36. if package:config(name) then
  37. import("modules." .. name).test(package)
  38. end
  39. end
  40. end)