xmake.lua 1.1 KB

123456789101112131415161718192021222324252627
  1. package("matlab")
  2. set_homepage("https://www.mathworks.com/help/matlab/ref/mex.html")
  3. set_description("Build MEX function or engine application in matlab")
  4. on_fetch(function (package)
  5. import("detect.sdks.find_matlab")
  6. local matlab = find_matlab()
  7. if matlab then
  8. local result = {}
  9. if package:is_plat("mingw") then
  10. result.linkdirs = matlab.linkdirs.mingw64
  11. result.links = matlab.links.mingw64
  12. result.shflags = path.join(matlab.linkdirs.mingw64, "mexFunction.def")
  13. result.includedirs = matlab.includedirs
  14. elseif package:is_plat("windows") then
  15. result.linkdirs = matlab.linkdirs.microsoft
  16. result.links = matlab.links.microsoft
  17. result.shflags = "/EXPORT:mexFunction"
  18. result.includedirs = matlab.includedirs
  19. else
  20. wprint("Matlab MEX function do not support this platform[%s].", package:plat())
  21. return
  22. end
  23. return result
  24. else
  25. wprint("Can't find matlab.please check your machine.")
  26. end
  27. end)