xmake.lua 1.3 KB

1234567891011121314151617181920212223242526272829303132333435
  1. package("mujs")
  2. set_homepage("http://mujs.com/")
  3. set_description("An embeddable Javascript interpreter in C.")
  4. set_license("ISC")
  5. add_urls("https://mujs.com/downloads/mujs-$(version).tar.gz")
  6. add_urls("https://github.com/ccxvii/mujs/archive/refs/tags/$(version).tar.gz",
  7. "https://github.com/ccxvii/mujs.git")
  8. add_versions("1.3.5", "78a311ae4224400774cb09ef5baa2633c26971513f8b931d3224a0eb85b13e0b")
  9. add_versions("1.3.4", "c015475880f6a382e706169c94371a7dd6cc22078832f6e0865af8289c2ef42b")
  10. if is_plat("linux", "bsd") then
  11. add_syslinks("m")
  12. end
  13. add_includedirs("include", "include/mujs")
  14. on_install(function (package)
  15. io.writefile("xmake.lua", [[
  16. add_rules("mode.release", "mode.debug")
  17. target("mujs")
  18. set_kind("$(kind)")
  19. add_files("js*.c", "utf*.c", "regexp.c")
  20. add_headerfiles("*.h", {prefixdir = "mujs"})
  21. if is_plat("windows") and is_kind("shared") then
  22. add_rules("utils.symbols.export_all")
  23. end
  24. ]])
  25. import("package.tools.xmake").install(package)
  26. end)
  27. on_test(function (package)
  28. assert(package:has_cfuncs("js_newstate", {includes = "mujs/mujs.h"}))
  29. end)