Build PDCursesMod #57
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build PDCursesMod | |
on: | |
workflow_dispatch: | |
schedule: | |
- cron: '0 9 1 1-12 *' | |
jobs: | |
raspios_lite-arm: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Clone PDCursesMod Master | |
uses: actions/checkout@master | |
with: | |
repository: Bill-Gray/PDCursesMod | |
ref: refs/heads/master | |
- name: Make | |
uses: pguyot/arm-runner-action@v2 | |
with: | |
base_image: raspios_lite:latest | |
bind_mount_repository: yes | |
commands: | | |
cd vt | |
make WIDE=Y DLL=Y CHTYPE_32=Y | |
mv libpdcurses.so libpdcursesmod-vt-arm.so | |
cd ../fb | |
make WIDE=Y DLL=Y CHTYPE_32=Y | |
mv libpdcurses.so libpdcursesmod-fb-arm.so | |
- name: Upload Artifacts (1) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'vt/*.so' | |
if-no-files-found: error | |
- name: Upload Artifacts (2) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'fb/*.so' | |
if-no-files-found: error | |
raspios_lite-arm64: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Clone PDCursesMod Master | |
uses: actions/checkout@master | |
with: | |
repository: Bill-Gray/PDCursesMod | |
ref: refs/heads/master | |
- name: Make | |
uses: pguyot/arm-runner-action@v2 | |
with: | |
base_image: raspios_lite_arm64:latest | |
bind_mount_repository: yes | |
commands: | | |
cd vt | |
make WIDE=Y DLL=Y CHTYPE_32=Y | |
mv libpdcurses.so libpdcursesmod-vt-arm64.so | |
cd ../fb | |
make WIDE=Y DLL=Y CHTYPE_32=Y | |
mv libpdcurses.so libpdcursesmod-fb-arm64.so | |
- name: Upload Artifacts (1) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'vt/*.so' | |
if-no-files-found: error | |
- name: Upload Artifacts (2) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'fb/*.so' | |
if-no-files-found: error | |
ubuntu-x64: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Clone PDCursesMod Master | |
uses: actions/checkout@master | |
with: | |
repository: Bill-Gray/PDCursesMod | |
ref: refs/heads/master | |
- name: Install SDL1 and SDL2 | |
run: | | |
sudo apt install libsdl1.2-dev libsdl-ttf2.0-dev libsdl2-dev libsdl2-ttf-dev | |
- name: Make VT | |
run: | | |
cd vt | |
make WIDE=Y DLL=Y CHTYPE_32=Y | |
mv libpdcurses.so libpdcursesmod-vt-x64.so | |
- name: Make FB | |
run: | | |
cd fb | |
make WIDE=Y DLL=Y CHTYPE_32=Y | |
mv libpdcurses.so libpdcursesmod-fb-x64.so | |
- name: Make SDL1 | |
run: | | |
cd sdl1 | |
make WIDE=Y DLL=Y CHTYPE_32=Y | |
mv libpdcurses.so libpdcursesmod-sdl1-x64.so | |
- name: Make SDL2 | |
run: | | |
cd sdl2 | |
make WIDE=Y DLL=Y CHTYPE_32=Y | |
mv libpdcurses.so libpdcursesmod-sdl2-x64.so | |
- name: Upload Artifacts (1) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'vt/*.so' | |
if-no-files-found: error | |
- name: Upload Artifacts (2) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'fb/*.so' | |
if-no-files-found: error | |
- name: Upload Artifacts (3) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'sdl1/*.so' | |
if-no-files-found: error | |
- name: Upload Artifacts (4) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'sdl2/*.so' | |
if-no-files-found: error | |
macos-x64: | |
runs-on: macOS-latest | |
steps: | |
- name: Clone PDCursesMod Master | |
uses: actions/checkout@master | |
with: | |
repository: Bill-Gray/PDCursesMod | |
ref: refs/heads/master | |
- name: Install SDL2 | |
run: | | |
brew install sdl2 sdl2_ttf | |
- name: Make VT | |
run: | | |
cd vt | |
make WIDE=Y DLL=Y CHTYPE_32=Y | |
mv libpdcurses.dylib libpdcursesmod-vt-x64.dylib | |
- name: Make SDL2 | |
run: | | |
cd sdl2 | |
make WIDE=Y DLL=Y CHTYPE_32=Y | |
mv libpdcurses.dylib libpdcursesmod-sdl2-x64.dylib | |
- name: Upload Artifacts (1) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'vt/*.dylib' | |
if-no-files-found: error | |
- name: Upload Artifacts (2) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'sdl2/*.dylib' | |
if-no-files-found: error | |
windows-x64: | |
runs-on: windows-2019 | |
steps: | |
- name: Clone PDCursesMod Master | |
uses: actions/checkout@master | |
with: | |
repository: Bill-Gray/PDCursesMod | |
ref: refs/heads/master | |
- name: Make WinGUI | |
run: | | |
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64 | |
cd wingui | |
nmake WIDE=Y DLL=Y CHTYPE_32=Y -f Makefile.vc | |
ren pdcurses.dll libpdcursesmod-wingui-x64.dll | |
shell: cmd | |
- name: Make WinCon | |
run: | | |
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64 | |
cd wincon | |
nmake WIDE=Y DLL=Y CHTYPE_32=Y -f Makefile.vc | |
ren pdcurses.dll libpdcursesmod-wincon-x64.dll | |
shell: cmd | |
- name: Make VT | |
run: | | |
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64 | |
cd vt | |
nmake WIDE=Y DLL=Y CHTYPE_32=Y -f Makefile.vc | |
ren pdcurses.dll libpdcursesmod-vt-x64.dll | |
shell: cmd | |
- name: Upload Artifacts (1) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'wingui/*.dll' | |
if-no-files-found: error | |
- name: Upload Artifacts (2) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'wincon/*.dll' | |
if-no-files-found: error | |
- name: Upload Artifacts (3) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: libraries | |
path: 'vt/*.dll' | |
if-no-files-found: error | |
create-pr: | |
runs-on: ubuntu-latest | |
needs: [ubuntu-x64, macos-x64, windows-x64, raspios_lite-arm, raspios_lite-arm64] | |
steps: | |
- name: Clone Repo | |
uses: actions/checkout@v3 | |
- uses: actions/[email protected] | |
with: | |
name: libraries | |
path: lib/pdcursesmod | |
- name: Create Pull Request | |
uses: peter-evans/create-pull-request@v6 | |
with: | |
commit-message: (chore) Update PDCursesMod native libraries. | |
committer: Alexandru Ciobanu <alex+git[bot]@ciobanu.org> | |
author: Alexandru Ciobanu <alex+git[bot]@ciobanu.org> | |
title: Update PDCursesMod native library to latest master. | |
body: This is an auto-generated PR with native library updates. | |
delete-branch: true | |
labels: dependencies | |
assignees: pavkam | |
branch: pdcursesmod-lib-update |