aboutsummaryrefslogtreecommitdiff
path: root/spec/outputs/luarocks_upload.lua
blob: 96988d70da5c06b30a1f6aa5093399d2784d3fe1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
local luarocksKey = ...
local version
do
	local _with_0 = io.open("src/yuescript/yue_compiler.cpp")
	if _with_0 ~= nil then
		local codes = _with_0:read("*a")
		_with_0:close()
		version = codes:match("const std::string_view version = \"(.-)\"sv;")
	end
end
if not (version ~= nil) then
	print("failed to get version!")
	os.exit(1)
end
local rockspec = "rockspec_format = '3.0'\npackage = 'Yuescript'\nversion = '" .. tostring(version) .. "-1'\nsource = {\n	url = 'git+https://github.com/pigpigyyy/yuescript'\n}\ndescription = {\n	summary = 'Yuescript is a Moonscript dialect.',\n	detailed = [[\n	Yuescript is a Moonscript dialect. It is derived from Moonscript language 0.5.0 and continuously adopting new features to be more up to date. ]],\n	homepage = 'https://github.com/pigpigyyy/yuescript',\n	maintainer = 'Li Jin <dragon-fly@qq.com>',\n	labels = {'yuescript','cpp','transpiler','moonscript'},\n	license = 'MIT'\n}\ndependencies = {\n	'lua >= 5.1',\n}\nbuild = {\n	type = 'cmake',\n	variables = {\n		LUA='$(LUA)',\n		LUA_INCDIR='$(LUA_INCDIR)',\n		CMAKE_BUILD_TYPE='Release'\n	},\n	install = {\n		lib = {\n			'build.luarocks/yue.so'\n		},\n		bin = {\n			'build.luarocks/yue'\n		}\n	}\n}"
local specFile = "yuescript-" .. tostring(version) .. "-1.rockspec"
do
	local _with_0 = io.open(specFile, "w+")
	if _with_0 ~= nil then
		_with_0:write(rockspec)
		_with_0:close()
	end
end
local result = io.popen("luarocks upload --api-key " .. tostring(luarocksKey) .. " " .. tostring(specFile)):read('*a')
if not result:match("Done:") then
	print(result)
	return os.exit(1)
end