Binaries Ubuntu 20,22,24 (linux-gcc) #65
This file contains 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: Binaries Ubuntu 20,22,24 (linux-gcc) | |
on: | |
workflow_dispatch: | |
branches: [ master, dev ] | |
env: | |
VERSION: "091224b2" | |
jobs: | |
build: | |
strategy: | |
matrix: | |
os: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04] # Specify the Ubuntu version | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: developer library installs | |
run: | | |
sudo apt install build-essential | |
#sudo apt install desktop-file-utils | |
sudo apt install libxt-dev | |
export VRS=`grep -E 'meYEAR|meMONTH|meDAY' src/evers.h | head -n 3 | awk '{ print $3 }' | paste -sd '-' | sed 's/[-"]//g'` | |
echo "VRS=$VRS" >> $GITHUB_ENV | |
- name: Extract branch name | |
run: echo "BRANCH_NAME=${GITHUB_REF#refs/heads/}" >> $GITHUB_ENV | |
- name: make bfs binary | |
run: make -f linux32gcc.gmk bfs/bin | |
- name: make mec binary | |
run: make -f linux32gcc.gmk mec | |
- name: make mew binary | |
run: make -f linux32gcc.gmk mew | |
- name: make mecw binary | |
run: make -f linux32gcc.gmk mecw | |
- name: make mecb binary | |
run: | | |
make -f linux32gcc.gmk mecb | |
- name: make mewb binary | |
run: make -f linux32gcc.gmk mewb | |
- name: make mecwb binary | |
run: make -f linux32gcc.gmk mecwb | |
- name: make brew package | |
run: | | |
make -f linux32gcc.gmk brew | |
rm -rf brew-*/ | |
- name: Make release | |
run: | | |
export MEPATH=${{ matrix.os }}-MicroEmacs09-${VRS}-Linux | |
mkdir $MEPATH | |
mkdir $MEPATH/bin | |
mkdir -p $MEPATH/man/1 | |
mkdir -p $MEPATH/share/jasspa | |
mkdir $MEPATH/share/spelling | |
mkdir $MEPATH/share/company | |
cp doc/me.1 $MEPATH/man/1/ | |
cp bfs/bfs $MEPATH/bin/ | |
cp src/.linux32gcc-release-mecw/mecw $MEPATH/bin/ | |
cp src/.linux32gcc-release-mew/mew $MEPATH/bin/ | |
cp src/.linux32gcc-release-mec/mec $MEPATH/bin/ | |
cp linux-*me*.bin $MEPATH/bin/ | |
cp license.txt $MEPATH/share/jasspa/ | |
cp COPYING $MEPATH/share/jasspa/ | |
cp README-standalone.md $MEPATH/share/jasspa/ | |
cp -r jasspa/macros $MEPATH/share/jasspa/ | |
echo "Documentation is in share/jasspa" > ${MEPATH}/readme.txt | |
- name: Make mecb release | |
run: | | |
mkdir ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecb | |
mkdir ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecb/bin | |
cp bfs/bfs ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecb/bin/ | |
cp linux-*mecb.bin ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecb/bin/ | |
cp bin/mecu ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecb/bin/ | |
chmod 755 ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecb/bin/mecu | |
cp license.txt ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecb/ | |
cp COPYING ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecb/ | |
cp README-standalone.md ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecb/ | |
- name: Make mewb release | |
run: | | |
mkdir ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mewb | |
mkdir ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mewb/bin | |
cp bfs/bfs ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mewb/bin/ | |
cp linux-*mewb.bin ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mewb/bin/ | |
cp license.txt ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mewb/ | |
cp COPYING ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mewb/ | |
cp README-standalone.md ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mewb/ | |
- name: Make mecwb release | |
run: | | |
mkdir ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecwb | |
mkdir ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecwb/bin | |
cp bfs/bfs ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecwb/bin/ | |
cp linux-*mecwb.bin ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecwb/bin/ | |
cp bin/mecu ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecb/bin/ | |
sed -i -E 's/mecb/mecwb -n/' ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecb/bin/mecu | |
cp license.txt ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecwb/ | |
cp COPYING ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecwb/ | |
cp README-standalone.md ${{ matrix.os }}-MicroEmacs09-${VRS}-Linux-mecwb/ | |
- name: Upload Ubuntu Release files | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ matrix.os }}-MicroEmacs09-${{ env.VRS }}-Linux-${{ env.BRANCH_NAME }} | |
path: ${{ matrix.os }}-MicroEmacs09-${{ env.VRS }}-Linux | |
- name: Upload Ubuntu mecb Release files | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ matrix.os }}-MicroEmacs09-${{ env.VRS }}-Linux-mecb-${{ env.BRANCH_NAME }} | |
path: ${{ matrix.os }}-MicroEmacs09-${{ env.VRS }}-Linux-mecb | |
- name: Upload Ubuntu mewb Release files | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ matrix.os }}-MicroEmacs09-${{ env.VRS }}-Linux-mewb-${{ env.BRANCH_NAME }} | |
path: ${{ matrix.os }}-MicroEmacs09-${{ env.VRS }}-Linux-mewb | |
- name: Upload Ubuntu mecwb Release files | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ matrix.os }}-MicroEmacs09-${{ env.VRS }}-Linux-mecwb-${{ env.BRANCH_NAME }} | |
path: ${{ matrix.os }}-MicroEmacs09-${{ env.VRS }}-Linux-mecwb | |
- name: Combined Release | |
run: | | |
make -f linux32gcc.gmk release app=mecb | |
make -f linux32gcc.gmk release app=mewb | |
make -f linux32gcc.gmk release app=mecwb | |
export DIR=`ls linux-*-mecb.bin | sed 's/-mecb.bin//'` | |
echo $DIR | |
- name: Upload Ubuntu Combined Release | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Release-${{ matrix.os }}-${{ env.BRANCH_NAME }} | |
path: linux-*/ | |
- name: Upload Brew Package | |
uses: actions/upload-artifact@v4 | |
with: | |
name: brew-${{ matrix.os }} | |
path: brew-* | |