@@ -82830,6 +82830,7 @@ const toolCache = __nccwpck_require__(5561);
82830
82830
const os = __nccwpck_require__(2037);
82831
82831
const path = __nccwpck_require__(1017);
82832
82832
const semver = __nccwpck_require__(117);
82833
+ const git = __nccwpck_require__(3555);
82833
82834
function getInstallerUrl(version, latest) {
82834
82835
const ver = version.version;
82835
82836
switch (version.type) {
@@ -82857,10 +82858,24 @@ function getInstallerUrl(version, latest) {
82857
82858
}
82858
82859
}
82859
82860
}
82861
+ async function installFromSource(xmakeBin, sourceDir, binDir) {
82862
+ await (0, exec_1.exec)(xmakeBin, ['-y'], { cwd: sourceDir });
82863
+ await (0, exec_1.exec)(xmakeBin, ['pack', '-y', '--formats=nsis', '--autobuild=n', '-o', binDir, '--basename=xmake', 'xmake'], {
82864
+ cwd: sourceDir,
82865
+ });
82866
+ //await exec(xmakeBin, ['install', '-o', binDir], { cwd: sourceDir });
82867
+ // xmake pack -y --formats=nsis --autobuild=n -o pack --basename=xmake xmake
82868
+ }
82860
82869
async function winInstall(version, latest) {
82861
82870
if (version.type === 'local' || latest.type === 'local') {
82862
82871
throw new Error('Local builds for windows is not supported');
82863
82872
}
82873
+ /*
82874
+ const actionsCacheFolder = core.getInput('actions-cache-folder');
82875
+ let actionsCacheKey = core.getInput('actions-cache-key');
82876
+ if (!actionsCacheKey) {
82877
+ actionsCacheKey = '';
82878
+ }*/
82864
82879
const ver = version.version;
82865
82880
let toolDir = toolCache.find('xmake', ver);
82866
82881
if (!toolDir) {
@@ -82887,6 +82902,37 @@ async function winInstall(version, latest) {
82887
82902
await io.rmRF(installer);
82888
82903
return cacheDir;
82889
82904
});
82905
+ await (0, exec_1.exec)(`"${toolDir}/xmake.exe" --version`);
82906
+ if (version.type === 'heads') {
82907
+ const sourceDir = await core.group(`download xmake source ${String(version)}`, () => git.create(version.repo, version.sha));
82908
+ toolDir = await core.group(`install xmake source ${String(version)}`, async () => {
82909
+ const binDir = path.join(os.tmpdir(), `xmake-${version.sha}`);
82910
+ await installFromSource(`${toolDir}/xmake.exe`, `${sourceDir}/core`, 'pack');
82911
+ await (0, exec_1.exec)(`"pack/xmake.exe" /NOADMIN /S /D=${binDir}`);
82912
+ core.info(`installed to ${binDir}`);
82913
+ const cacheDir = await toolCache.cacheDir(binDir, 'xmake', ver);
82914
+ await io.rmRF(binDir);
82915
+ await io.rmRF('pack/xmake.exe');
82916
+ return cacheDir;
82917
+ //const cacheDir = await toolCache.cacheDir(binDir, 'xmake', ver);
82918
+ /*
82919
+ let cacheDir = '';
82920
+ if (actionsCacheFolder && process.env.GITHUB_WORKSPACE) {
82921
+ cacheDir = path.join(process.env.GITHUB_WORKSPACE, actionsCacheFolder);
82922
+ await io.cp(binDir, cacheDir, {
82923
+ recursive: true,
82924
+ });
82925
+ await cache.saveCache([actionsCacheFolder], cacheKey);
82926
+ } else {
82927
+ cacheDir = await toolCache.cacheDir(binDir, 'xmake', ver);
82928
+ }*/
82929
+ /*
82930
+ await io.rmRF(binDir);
82931
+ await git.cleanup(version.sha);
82932
+ return cacheDir;
82933
+ */
82934
+ });
82935
+ }
82890
82936
}
82891
82937
core.addPath(toolDir);
82892
82938
}
0 commit comments