xmake.lua 1.1 KB

1234567891011121314151617181920212223242526
  1. package("cosmocc")
  2. set_kind("toolchain")
  3. set_homepage("https://github.com/jart/cosmopolitan")
  4. set_description("build-once run-anywhere c library")
  5. add_urls("https://cosmo.zip/pub/cosmocc/cosmocc-$(version).zip",
  6. "https://github.com/xmake-mirror/cosmopolitan/releases/download/$(version)/cosmocc-$(version).zip")
  7. add_versions("3.2.4", "d2fa6dbf6f987310494581deff5b915dbdc5ca701f20f7613bb0dcf1de2ee511")
  8. add_versions("3.3.2", "a695012ffbeac5e26e3c4a740debc15273f47e9a8bdc55e8b76a623154d5914b")
  9. on_load("@windows|x64", function (package)
  10. package:add("deps", "msys2")
  11. end)
  12. on_install("@windows", "@macosx", "@linux", "@bsd", "@cygwin", "@msys", function (package)
  13. if is_host("windows") then
  14. import("lib.detect.find_tool")
  15. assert(find_tool("sh"), "cosmocc need sh/bash, please install it first!")
  16. end
  17. os.cp("*", package:installdir(), {symlink = true})
  18. end)
  19. on_test(function (package)
  20. local cosmocc = path.join(package:installdir("bin"), "cosmocc")
  21. os.vrunv(cosmocc, {"--version"}, {shell = true})
  22. end)