Merge up to a510d51a78f14fbb8416037a587ce1bfc6016d24 from upstream #1282
Workflow file for this run
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
on: pull_request | |
name: Linux Build | |
jobs: | |
# 32-bit, clang | |
build32: | |
runs-on: ubuntu-20.04 | |
env: | |
CFLAGS: -m32 | |
CC: clang | |
PKG_CONFIG_PATH: /opt/libjim32/lib/pkgconfig | |
steps: | |
- name: Install required packages (apt-get) | |
run: | | |
sudo dpkg --add-architecture i386 | |
sudo apt-get update | |
sudo apt-get install clang gcc-multilib libssl-dev:i386 | |
- name: Get 32-bit JIM TCL from cache | |
id: cache-libjim32 | |
uses: actions/cache@v4 | |
with: | |
path: /opt/libjim32 | |
key: libjim32 | |
- if: ${{ steps.cache-libjim32.outputs.cache-hit != 'true' }} | |
name: Checkout JIM TCL | |
uses: actions/checkout@v4 | |
with: | |
repository: msteveb/jimtcl | |
ref: 0.83 | |
path: jimtcl | |
- if: ${{ steps.cache-libjim32.outputs.cache-hit != 'true' }} | |
name: Build 32-bit JIM TCL from source | |
run: | | |
cd jimtcl | |
./configure --prefix=/opt/libjim32 | |
make -j`nproc` | |
make install | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- run: ./bootstrap | |
- run: ./configure --enable-remote-bitbang --enable-jtag_vpi --disable-target64 | |
- run: make -j`nproc` | |
- run: file src/openocd | grep 32-bit | |
- run: src/openocd --version | |
# 64-bit, gcc | |
build64: | |
runs-on: ubuntu-latest | |
env: | |
CFLAGS: -m64 | |
CC: gcc | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- name: Configure environment | |
run: | | |
TAG=$(git rev-parse --short HEAD) | |
echo "TAG=$TAG" >> $GITHUB_OUTPUT | |
echo "NAME=openocd64-$TAG" >> $GITHUB_ENV | |
- name: Install required packages (apt-get) | |
run: | | |
sudo apt-get update | |
sudo apt-get install libusb-1.0-0 libusb-1.0-0-dev libjim-dev | |
- run: ./bootstrap | |
- run: ./configure --enable-remote-bitbang --enable-jtag_vpi --enable-ftdi-cjtag --prefix /tmp/${{ env.NAME }} | |
- run: make -j`nproc` | |
- name: Check that we built something | |
run: | | |
file src/openocd | grep 64-bit | |
src/openocd --version | |
- name: Package | |
# Package into tgz so that github stores a compressed artifact, even | |
# though it zips that artifact again before it sends it back to be | |
# downloaded. | |
run: | | |
make install | |
tar zcvf ${{ env.NAME }}.tgz -C /tmp ${{ env.NAME }} | |
- name: Upload Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ env.NAME }} | |
path: ${{ env.NAME }}.tgz |