xmake.lua 1.9 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package("jxrlib")
  2. set_homepage("https://github.com/4creators/jxrlib")
  3. set_description("jxrlib is JPEG XR Image Codec reference implementation library released by Microsoft under BSD-2-Clause License. This repo is a clone of jxrlib as released by Microsoft from it's original Codeplex location https://jxrlib.codeplex.com. The only changes comprise addition of LICENSE and README.md in repo root.")
  4. set_license("BSD-2-Clause")
  5. add_urls("https://github.com/4creators/jxrlib/archive/refs/tags/$(version).tar.gz",
  6. "https://github.com/4creators/jxrlib.git")
  7. add_versions("v2019.10.9", "555c006e27c5cb66f99c05dcbb2feb197199ca9018dbd06d3467d37cd29a79cd")
  8. -- https://github.com/conan-io/conan-center-index/tree/master/recipes/jxrlib/all/patches
  9. add_patches("2019.10.9", "patches/missing-declarations.patch", "5f92269d5aef7abdae7fdd2df42259cdce1f41b394f204768a234d462f3a9ae6")
  10. -- https://github.com/microsoft/vcpkg/blob/b9f5f9c4fd0088a7e56ae357a4ba39bc3f8be2de/ports/jxrlib/fix-mingw.patch
  11. add_patches("2019.10.9", "patches/mingw.patch", "00b06017562d618832943e02d914f39ff5480a8917dd8147b2c26fd15f68ddaa")
  12. add_configs("tools", {description = "Build tools", default = false, type = "boolean"})
  13. add_includedirs("include", "include/jxrlib")
  14. on_load(function (package)
  15. package:add("links", "jxrglue", "jpegxr")
  16. if package:is_plat("windows", "mingw", "msys") then
  17. package:add("defines", "WIN32")
  18. else
  19. package:add("defines", "__ANSI__")
  20. end
  21. end)
  22. on_install(function (package)
  23. os.cp(path.join(package:scriptdir(), "port", "xmake.lua"), "xmake.lua")
  24. import("package.tools.xmake").install(package, {tools = package:config("tools")})
  25. end)
  26. on_test(function (package)
  27. assert(package:has_cfuncs("PKCreateCodecFactory", {includes = "JXRTest.h"}))
  28. end)