xmake.lua 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package("ispc")
  2. set_kind("toolchain")
  3. set_homepage("https://ispc.github.io/")
  4. set_description("Intel® Implicit SPMD Program Compiler")
  5. set_license("BSD-3-Clause")
  6. add_configs("oneapi", {description = "Use the OneAPI version on Linux", default = false, type = "boolean"})
  7. if is_host("windows") then
  8. add_urls("https://github.com/ispc/ispc/releases/download/v$(version)/ispc-v$(version)-windows.zip")
  9. add_versions("1.17.0", "e9a7cc98f69357482985bcbf69fa006632cee7b3606069b4d5e16dc62092d660")
  10. add_versions("1.25.3", "3a97e325f236c34a68013bf56fcb4e23c811b404207a60c010dc38fa24e60c55")
  11. elseif is_host("macosx") then
  12. if is_arch("x86_64") then
  13. add_urls("https://github.com/ispc/ispc/releases/download/v$(version)/ispc-v$(version)-macOS.x86_64.tar.gz")
  14. add_versions("1.25.3", "6f35c5aec01a607c98d5661ef0f9e4d13665011247b17dfbc2f6a326120cb2aa")
  15. elseif is_arch("arm64") then
  16. add_urls("https://github.com/ispc/ispc/releases/download/v$(version)/ispc-v$(version)-macOS.arm64.tar.gz")
  17. add_versions("1.25.3", "a2bc150402bb9523261063d45a0f0deae50900c62238ae031cf9b9530393a4ac")
  18. else
  19. add_urls("https://github.com/ispc/ispc/releases/download/v$(version)/ispc-v$(version)-macOS.universal.tar.gz")
  20. add_versions("1.25.3", "c6a83d1d0c37698f3bba7fd1a44835af0236248efdaf2b4a32b768e9cbd04163")
  21. end
  22. elseif is_host("linux") then
  23. add_urls("https://github.com/ispc/ispc/releases/download/v$(version)/ispc-v$(version)-linux.tar.gz")
  24. add_versions("1.17.0", "6acc5df75efdce437f79b1b6489be8567c6d009e19dcc4851b9b37012afce1f7")
  25. add_versions("1.25.3", "4a89260cc1d216881735db4e60be72ca4630b8453f352b159867e215c85e1dbd")
  26. if is_arch("aarch64") then
  27. add_urls("https://github.com/ispc/ispc/releases/download/v$(version)/ispc-v$(version)-linux.aarch64.tar.gz")
  28. add_versions("1.25.3", "990c509244f32189c7b6e4ea49793706a62445e727b41f10b0883d98fc66f696")
  29. end
  30. on_load(function (package)
  31. if package:config("oneapi") then
  32. package:add("urls", "https://github.com/ispc/ispc/releases/download/v$(version)/ispc-v$(version)-linux-oneapi.tar.gz")
  33. package:add("versions", "1.25.3", "526fe36638e675b9e1bb0618ac30f5286339e7a7e7f5a8441cd7607177292804")
  34. end
  35. end)
  36. end
  37. on_install("@windows", "@macosx", "@linux", function (package)
  38. os.cp("*", package:installdir())
  39. end)
  40. on_test(function (package)
  41. os.vrun("ispc --version")
  42. end)