xmake.lua 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package("enet6")
  2. set_homepage("https://github.com/SirLynix/enet6")
  3. set_description("A fork of ENet (reliable UDP networking library) in order to add IPv6 support.")
  4. set_license("MIT")
  5. add_urls("https://github.com/SirLynix/enet6/archive/refs/tags/$(version).tar.gz",
  6. "https://github.com/SirLynix/enet6.git")
  7. add_versions("v6.0.2", "e4678f2d22ea689b7de66bffb553c9f60d429051f44ca6177e8364eb960c7503")
  8. add_versions("v6.0.1", "8df91f35d2edc78113924de95946680175007e249c3afd401ec4ad9a1e9572d9")
  9. add_versions("v6.0.0", "4a6358fcf81a0011d7342349d60941201f88c1c88f124f583a502e4591030a88")
  10. if is_plat("windows", "mingw") then
  11. add_syslinks("winmm", "ws2_32")
  12. end
  13. on_load("windows", "mingw", function (package)
  14. if package:config("shared") then
  15. package:add("defines", "ENET_DLL")
  16. end
  17. end)
  18. on_install(function (package)
  19. import("package.tools.xmake").install(package)
  20. end)
  21. on_test(function (package)
  22. assert(package:check_cxxsnippets({test = [[
  23. void test()
  24. {
  25. if (enet_initialize () != 0)
  26. return;
  27. ENetAddress address;
  28. ENetHost* server;
  29. enet_address_build_any(&address, ENET_ADDRESS_TYPE_IPV6);
  30. address.port = 1234;
  31. server = enet_host_create (ENET_ADDRESS_TYPE_ANY, &address, 32, 2, 0, 0);
  32. if (server == NULL)
  33. return;
  34. ENetEvent event;
  35. while (enet_host_service (server, &event, 1000) > 0);
  36. enet_host_destroy(server);
  37. enet_deinitialize();
  38. }
  39. ]]}, {includes = {"enet6/enet.h"}}))
  40. end)