add RP2040 port #50
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" | |
| on: | |
| workflow_dispatch: | |
| push: | |
| concurrency: | |
| group: "build" | |
| cancel-in-progress: true | |
| jobs: | |
| build-win32: | |
| name: "Build for Windows 32-bit" | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Disable initramfs update | |
| run: sudo sed -i 's/yes/no/g' /etc/initramfs-tools/update-initramfs.conf | |
| - name: Disable man-db update | |
| run: sudo rm -f /var/lib/man-db/auto-update | |
| - name: Install packages | |
| run: sudo apt-get install mingw-w64 | |
| - name: Get premake5 | |
| run: wget https://github.com/premake/premake-core/releases/download/v5.0.0-beta7/premake-5.0.0-beta7-linux.tar.gz && tar xvf premake-*.tar.gz | |
| - name: Build | |
| run: ./premake5 gmake --build-speak=yes && make config=release_win32 -j3 | |
| - name: Organize artifacts | |
| run: | | |
| mkdir -p speak-win32 | |
| cp bin/*/*/speak.exe speak-win32/ | |
| cp bin/*/*/dtc.dll speak-win32/ | |
| cp -r dic speak-win32/ | |
| cp -r DECtalk.conf speak-win32/ | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: build-win32 | |
| path: speak-win32/ | |
| build-win64: | |
| name: "Build for Windows 64-bit" | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Disable initramfs update | |
| run: sudo sed -i 's/yes/no/g' /etc/initramfs-tools/update-initramfs.conf | |
| - name: Disable man-db update | |
| run: sudo rm -f /var/lib/man-db/auto-update | |
| - name: Install packages | |
| run: sudo apt-get install mingw-w64 | |
| - name: Get premake5 | |
| run: wget https://github.com/premake/premake-core/releases/download/v5.0.0-beta7/premake-5.0.0-beta7-linux.tar.gz && tar xvf premake-*.tar.gz | |
| - name: Build | |
| run: ./premake5 gmake --build-speak=yes && make config=release_win64 -j3 | |
| - name: Organize artifacts | |
| run: | | |
| mkdir -p speak-win64 | |
| cp bin/*/*/speak.exe speak-win64/ | |
| cp bin/*/*/dtc.dll speak-win64/ | |
| cp -r dic speak-win64/ | |
| cp -r DECtalk.conf speak-win64/ | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: build-win64 | |
| path: speak-win64/ | |
| build-appimage: | |
| name: "Build for AppImage" | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Disable initramfs update | |
| run: sudo sed -i 's/yes/no/g' /etc/initramfs-tools/update-initramfs.conf | |
| - name: Disable man-db update | |
| run: sudo rm -f /var/lib/man-db/auto-update | |
| - name: Install packages | |
| run: sudo apt-get install libxpm-dev libmotif-dev libxt-dev | |
| - name: Get premake5 | |
| run: wget https://github.com/premake/premake-core/releases/download/v5.0.0-beta7/premake-5.0.0-beta7-linux.tar.gz && tar xvf premake-*.tar.gz | |
| - name: Build | |
| run: ./premake5 gmake --build-speak=yes && make config=release_native -j3 && ./create_appimage.sh | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: build-appimage | |
| path: Speak-x86_64.AppImage | |
| release: | |
| name: "Release" | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| needs: [build-win32, build-win64, build-appimage] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Download from build-win32 | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: build-win32 | |
| path: speak-win32 | |
| - name: Download from build-win64 | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: build-win64 | |
| path: speak-win64 | |
| - name: Download from build-appimage | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: build-appimage | |
| - name: Delete old release | |
| run: gh release delete "latest" --cleanup-tag -y || true | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: compress artifacts | |
| run: zip -rv speak-windows.zip speak-win32 speak-win64 | |
| - name: Release | |
| run: gh release create -t "latest-dectalk-develop" "latest" *.zip *.AppImage -n "Latest release" | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |