package("cpp-sort") set_kind("library", {headeronly = true}) set_homepage("https://github.com/Morwenn/cpp-sort") set_description("Sorting algorithms & related tools for C++") set_license("MIT") add_urls("https://github.com/Morwenn/cpp-sort/archive/refs/tags/$(version).tar.gz", {version = function(version) if version:ge("2.0.0") then version = "v" .. version end return version end}) add_urls("https://github.com/Morwenn/cpp-sort.git", {alias = "git"}) add_versions("1.10.0", "48951cac0051d48fee286c3bc02804975f9d83269d80c10dfc5589e76a542765") add_versions("1.11.0", "a53b3ea240d6f8d8ea9da0a7e0c8e313cf5e714daedf1617473ab34f111ffeec") add_versions("1.12.0", "70877c1993fa1e5eb53974ac30aeb713448c206344379f193dec8ee887c23998") add_versions("1.12.1", "5b0b6f3b4d9ecc339d6c2204a18479edca49fbc4d487413e0ec747e143569e2a") add_versions("1.13.0", "646eca5c592d20cbde0fbff41c65527940bb6430be68e0224fb5fcbf38b0df92") add_versions("1.13.1", "139912c6004df8748bb1cfd3b94f2c6bfc2713885ed4b8e927a783d6b66963a8") add_versions("1.13.2", "f5384ed9c8abef2f26cb010df2687ac8bba52f0e1726935826a80e83c1347b23") add_versions("1.14.0", "3b85cd4580f54ae3f171777d0630b4f7c89c33cf96e9ae24a1dbebbf200c3195") add_versions("1.15.0", "886e813a4b87c6361e9b50c0a66c73b3b812f0ce0b7039ff3991eddce77e0dc7") add_versions("1.16.0", "54eb65de5655ce58719d45616f29e4b9060135b9cc8b526bcfc9f5434975ea8c") add_versions("1.17.0", "df6cbb805ff71e1b0a30fc1ed55696a2d8c70c3ab87447bee2b749e02415432e") add_versions("1.17.1", "addbcb6699b701f7a932d9b3cb53d8546e8f9e2bf9555962f864dbb43fc08de3") add_versions("1.17.2", "76708698aa22f605e2d16c5e927b4c3a88cf4b32df31467d2f036025c0178e82") add_versions("2.1.0", "b86af13cb265cff5c47c6a064a5b537c754d5abdcd663064f62d358df43c789c") add_versions("git:1.10.0", "1.10.0") add_versions("git:1.11.0", "1.11.0") add_versions("git:1.12.0", "1.12.0") add_versions("git:1.12.1", "1.12.1") add_versions("git:1.13.0", "1.13.0") add_versions("git:1.13.1", "1.13.1") add_versions("git:1.13.2", "1.13.2") add_versions("git:1.14.0", "1.14.0") add_versions("git:1.15.0", "1.15.0") add_versions("git:1.16.0", "1.16.0") add_versions("git:1.17.0", "1.17.0") add_versions("git:1.17.1", "1.17.1") add_versions("git:1.17.2", "1.17.2") add_versions("git:2.1.0", "v2.1.0") if is_plat("windows") then add_cxxflags("/permissive-") end on_install(function (package) os.cp("include", package:installdir()) end) on_test(function (package) local languages = package:version():ge("2.0.0") and "c++20" or "c++14" assert(package:check_cxxsnippets({test = [[ #include #include void test() { std::array arr = { 5, 8, 3, 2, 9 }; cppsort::smooth_sort(arr); } ]]}, {configs = {languages = languages}})) end)