xmake.lua 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. package("farmhash")
  2. set_homepage("https://github.com/google/farmhash")
  3. set_description("FarmHash, a family of hash functions.")
  4. set_license("MIT")
  5. add_urls("https://github.com/google/farmhash.git")
  6. add_versions("2019.05.14", "0d859a811870d10f53a594927d0d0b97573ad06d")
  7. add_configs("shared", {description = "Build shared library.", default = false, type = "boolean", readonly = true})
  8. on_install("windows", "macosx", "linux", "mingw", function (package)
  9. os.cd("src")
  10. io.writefile("xmake.lua", [[
  11. add_rules("mode.debug", "mode.release")
  12. target("farmhash")
  13. set_kind("static")
  14. set_languages("c++11")
  15. add_defines("FARMHASH_NO_BUILTIN_EXPECT")
  16. add_files("farmhash.cc")
  17. add_headerfiles("farmhash.h")
  18. ]])
  19. import("package.tools.xmake").install(package)
  20. end)
  21. on_test(function (package)
  22. assert(package:check_cxxsnippets({test = [[
  23. void test() {
  24. using namespace NAMESPACE_FOR_HASH_FUNCTIONS;
  25. char data[] = "hash";
  26. auto result = Hash(data, 4);
  27. }
  28. ]]}, {configs = {languages = "c++11"}, includes = "farmhash.h"}))
  29. end)