summaryrefslogtreecommitdiff
path: root/.github/workflows/windows_lua.yml
diff options
context:
space:
mode:
authorruki <[email protected]>2021-09-22 00:39:36 +0800
committerruki <[email protected]>2021-09-22 00:39:36 +0800
commitd62f35f77a30fe0280086241af2142b282fa1f17 (patch)
treec1adc04dc3e71bbc29b66adf9b87b3bc4221105a /.github/workflows/windows_lua.yml
parenta4ee9d0372306ee34d3454968a0dfcb0ab91e0cf (diff)
switch to lua runtime on windows
Diffstat (limited to '.github/workflows/windows_lua.yml')
-rw-r--r--.github/workflows/windows_lua.yml122
1 files changed, 0 insertions, 122 deletions
diff --git a/.github/workflows/windows_lua.yml b/.github/workflows/windows_lua.yml
deleted file mode 100644
index b9352918d..000000000
--- a/.github/workflows/windows_lua.yml
+++ /dev/null
@@ -1,122 +0,0 @@
-name: Windows (Lua)
-
-on:
- pull_request:
- push:
- release:
- types: [published]
-
-jobs:
- build:
- strategy:
- matrix:
- os: [windows-latest, windows-2016]
- arch: [x64, x86]
-
- runs-on: ${{ matrix.os }}
-
- concurrency:
- group: ${{ github.head_ref }}-${{ matrix.os }}-${{ matrix.arch }}-Windows-Lua
- cancel-in-progress: true
- steps:
- - uses: actions/checkout@v2
- with:
- # WyriHaximus/github-action-get-previous-tag@master need it
- fetch-depth: 0
- submodules: true
- - uses: xmake-io/github-action-setup-xmake@v1
- with:
- # this is not supported, use dev branch instead
- # xmake-version: local#
- xmake-version: branch@dev
- - uses: dlang-community/setup-dlang@v1
- with:
- compiler: dmd-latest
- - uses: little-core-labs/[email protected]
- id: tagName
-
- - name: Prepare
- run: |
- xmake show
- Invoke-WebRequest "https://github.com/xmake-mirror/nsis/releases/download/v30b3/nsis-3.04.zip" -UseBasicParsing -OutFile ./nsis.zip
- Invoke-WebRequest "https://github.com/xmake-mirror/nsis/releases/download/v30b3/nsis-3.04-strlen_8192.zip" -UseBasicParsing -OutFile ./nsis-longstr.zip
- Invoke-WebRequest "https://github.com/xmake-mirror/nsis/releases/download/v30b3/UAC.zip" -UseBasicParsing -OutFile ./nsis-uac.zip
- Expand-Archive ./nsis.zip -DestinationPath ./nsis
- Move-Item ./nsis/*/* ./nsis
- Expand-Archive ./nsis-longstr.zip -DestinationPath ./nsis -Force
- Expand-Archive ./nsis-uac.zip -DestinationPath ./nsis -Force
- Move-Item ./nsis/UAC.nsh ./nsis/Include/
-
- - name: Build
- run: |
- xmake f -vD -P core -a ${{ matrix.arch }} --runtime=lua
- xmake -vD -P core
-
- - name: Tests
- run: |
- Copy-Item ./core/build/xmake.exe ./xmake
- Copy-Item ./scripts/xrepo.bat ./xmake
- Copy-Item ./scripts/xrepo.ps1 ./xmake
- $Env:XMAKE_PROGRAM_DIR = $(Resolve-Path ./xmake)
- Set-Item -Path Env:Path -Value ($Env:XMAKE_PROGRAM_DIR + ";" + $Env:Path)
- xrepo --version
- xmake show
- #xmake l -v private.utils.bcsave --rootname='@programdir' -x 'scripts/**|templates/**' xmake
- xmake lua -v -D tests/run.lua
-
- - name: Set release arch name
- run: |
- if ("${{ matrix.arch }}" -eq "x64") {
- Write-Output "RELEASE_NAME=win64" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf-8 -Append
- } else {
- Write-Output "RELEASE_NAME=win32" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf-8 -Append
- }
- - name: Artifact
- run: |
- # build installer
- (New-Item ./winenv/bin -ItemType Directory).FullName
- Invoke-WebRequest "https://github.com/xmake-mirror/7zip/releases/download/19.00/7z19.00-${{ matrix.arch }}.zip" -UseBasicParsing -OutFile .\7zip.zip
- Expand-Archive ./7zip.zip -DestinationPath ./7zip
- Copy-Item ./7zip/7z.exe ./winenv/bin
- Copy-Item ./7zip/7z.dll ./winenv/bin
- Invoke-WebRequest "https://curl.se/windows/dl-7.78.0_2/curl-7.78.0_2-win32-mingw.zip" -UseBasicParsing -OutFile .\curl.zip
- Expand-Archive ./curl.zip -DestinationPath ./curl
- Copy-Item ./curl/curl-7.78.0-win32-mingw/bin/curl.exe ./winenv/bin
- Copy-Item ./curl/curl-7.78.0-win32-mingw/bin/curl-ca-bundle.crt ./winenv/bin
- $version = (Get-Command xmake/xmake.exe).FileVersionInfo
- ./nsis/makensis.exe /DMAJOR=$($version.ProductMajorPart) /DMINOR=$($version.ProductMinorPart) /DALTER=$($version.ProductBuildPart) /DBUILD=$($($version.ProductVersion -split '\+')[1]) /D${{ matrix.arch }} .\scripts\installer.nsi
- (New-Item ./artifacts/${{env.RELEASE_NAME}} -ItemType Directory).FullName
- Copy-Item scripts/xmake.exe ./artifacts/${{env.RELEASE_NAME}}/xmake.exe
- # archive
- Copy-Item ./*.md ./xmake
- Copy-Item ./winenv ./xmake -Recurse
- Add-Type -AssemblyName System.Text.Encoding
- Add-Type -AssemblyName System.IO.Compression.FileSystem
- class FixedEncoder : System.Text.UTF8Encoding {
- FixedEncoder() : base($true) { }
- [byte[]] GetBytes([string] $s)
- {
- $s = $s.Replace("\", "/")
- return ([System.Text.UTF8Encoding]$this).GetBytes($s)
- }
- }
- Copy-Item ./xmake ./archive/xmake -Recurse
- [System.IO.Compression.ZipFile]::CreateFromDirectory("$PWD\archive", "$PWD\archive.zip", [System.IO.Compression.CompressionLevel]::Optimal, $false, [FixedEncoder]::new())
- (Get-FileHash .\archive.zip -Algorithm SHA256).Hash.ToLower() + " *xmake.zip`n" | Out-File ./shafile -Encoding ASCII -NoNewLine -Append
- Copy-Item archive.zip ./artifacts/${{env.RELEASE_NAME}}
- Copy-Item shafile ./artifacts/${{env.RELEASE_NAME}}
-
- # upload artifacts
- - uses: actions/upload-artifact@v2
- with:
- name: xmake-latest.${{env.RELEASE_NAME}}.exe
- path: artifacts/${{env.RELEASE_NAME}}/xmake.exe
- - uses: actions/upload-artifact@v2
- with:
- name: xmake-latest.${{ env.RELEASE_NAME }}.zip
- path: artifacts/${{env.RELEASE_NAME}}/archive.zip
- - uses: actions/upload-artifact@v2
- with:
- name: xmake-latest.${{ env.RELEASE_NAME }}.sha256
- path: artifacts/${{env.RELEASE_NAME}}/shafile
-