xmake.lua 1.2 KB

12345678910111213141516171819202122232425262728293031
  1. package("trompeloeil")
  2. set_kind("library", {headeronly = true})
  3. set_homepage("https://github.com/rollbear/trompeloeil")
  4. set_description("A thread-safe header-only mocking framework for C++11/14 using the Boost Software License 1.0")
  5. set_license("BSL-1.0")
  6. add_urls("https://github.com/rollbear/trompeloeil/archive/refs/tags/$(version).tar.gz")
  7. add_versions("v48", "eebd18456975251ea3450b815e241cccfefba5b883e4a36bd309f9cf629bdec6")
  8. add_versions("v47", "4a1d79260c1e49e065efe0817c8b9646098ba27eed1802b0c3ba7d959e4e5e84")
  9. add_versions("v43", "86a0afa2e97347202a0a883ab43da78c1d4bfff0d6cb93205cfc433d0d9eb9eb")
  10. on_install(function (package)
  11. os.cp("include", package:installdir())
  12. end)
  13. on_test(function (package)
  14. assert(package:check_cxxsnippets({test = [[
  15. class Interface
  16. {
  17. public:
  18. virtual bool foo(int, std::string& s) = 0;
  19. };
  20. class Mock : public Interface
  21. {
  22. public:
  23. MAKE_MOCK2(foo, bool(int, std::string&),override);
  24. };
  25. ]]}, {configs = {languages = "c++14"}, includes = { "trompeloeil.hpp" }}))
  26. end)