package An official xmake package repository https://xrepo.xmake.io/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
1.5 KiB

package("nim")
set_kind("toolchain")
set_homepage("https://nim-lang.org/")
set_description("Nim is a statically typed compiled systems programming language")
local precompiled = false
if is_host("windows") then
if os.arch() == "x86" then
add_urls("https://nim-lang.org/download/nim-$(version)_x32.zip")
add_versions("2.0.2", "d076d35fdab29baf83c66f1135a1fd607eb61d4c14037706f7be3ba58fb83d87")
precompiled = true
elseif os.arch() == "x64" then
add_urls("https://nim-lang.org/download/nim-$(version)_x64.zip")
add_versions("2.0.2", "948dbf8e3fdd1b5242e3d662fd25c50e9b2586e097be8a85c22d7db2bde70bad")
precompiled = true
end
end
if not precompiled then
add_urls("https://github.com/nim-lang/Nim/archive/refs/tags/v$(version).tar.gz")
add_versions("2.0.2", "2ca2f559d05e29f130cb4f319ebb93a98e7c0e2187716b17b2cb4e747f5ff798")
end
on_install("@windows", "@msys", function (package)
os.cp("*", package:installdir())
end)
on_install("@windows|arm64", function (package)
os.vrunv("./build_all.bat", {}, {shell = true})
os.cp("bin", package:installdir())
end)
on_install("@macosx", "@linux", function (package)
os.vrunv("./build_all.sh", {}, {shell = true})
os.cp("bin", package:installdir())
end)
on_test(function (package)
os.vrun("nim --version")
os.vrun("nimble --version")
end)