Compare commits

...

6 commits

Author SHA1 Message Date
574763abba
fix 2024-12-17 21:08:26 +01:00
ff74c3de01
Fix 2024-12-17 21:01:36 +01:00
6ea45868db
Migrate CI to forgejo 2024-12-17 20:02:35 +01:00
sven-ernw
ab7a02f0dd
Merge pull request from ttdennis/socat-ppc
Socat powerpc and powerpc64 builds
2023-06-09 17:30:23 +02:00
Dennis Heinze
b322d1b36c Socat ppc and ppc64 build 2023-05-26 09:24:40 +02:00
Dennis Heinze
44979a9703 Start ppc implementation 2023-05-26 09:24:23 +02:00
9 changed files with 123 additions and 22 deletions

View file

@ -4,16 +4,20 @@ on:
jobs:
build-x86:
name: Build socat x86
runs-on: ubuntu-latest
container: muslcc/x86_64:i686-linux-musl
runs-on: docker
container:
image: muslcc/x86_64:i686-linux-musl
outputs:
version: ${{ steps.build_socat.outputs.PACKAGED_VERSION }}
version: "${{ steps.build_socat.outputs.PACKAGED_VERSION }}"
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install dependencies
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
run: sudo apk update && sudo apk add bash nodejs git-lfs
- name: Checkout
uses: actions/checkout@v4
- name: Install build dependencies
run: sudo bash build/install_deps_alpine.sh
- name: Install testing dependencies
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
@ -23,18 +27,27 @@ jobs:
run: $GITHUB_WORKSPACE/build/targets/build_socat.sh x86
- name: Upload artifacts
uses: actions/upload-artifact@v2
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
with:
name: ${{ steps.build_socat.outputs.PACKAGED_NAME }}
path: ${{ steps.build_socat.outputs.PACKAGED_NAME_PATH }}
build-x86_64:
name: Build socat x86_64
runs-on: ubuntu-latest
runs-on: docker
container: muslcc/x86_64:x86_64-linux-musl
steps:
- name: Install dependencies
run: sudo apk update && sudo apk add bash nodejs git-lfs
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Install build dependencies
run: sudo bash build/install_deps_alpine.sh
- name: Checkout
uses: actions/checkout@v4
- name: Install dependencies
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
@ -47,18 +60,18 @@ jobs:
run: $GITHUB_WORKSPACE/build/targets/build_socat.sh x86_64
- name: Upload artifacts
uses: actions/upload-artifact@v2
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
with:
name: ${{ steps.build_socat.outputs.PACKAGED_NAME }}
path: ${{ steps.build_socat.outputs.PACKAGED_NAME_PATH }}
build-armhf:
name: Build socat ARMHF
runs-on: ubuntu-latest
runs-on: docker
container: muslcc/x86_64:arm-linux-musleabihf
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Install dependencies
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
@ -79,18 +92,18 @@ jobs:
run: $GITHUB_WORKSPACE/build/targets/build_socat.sh armhf
- name: Upload artifacts
uses: actions/upload-artifact@v2
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
with:
name: ${{ steps.build_socat.outputs.PACKAGED_NAME }}
path: ${{ steps.build_socat.outputs.PACKAGED_NAME_PATH }}
build-aarch64:
name: Build socat AARCH64
runs-on: ubuntu-latest
runs-on: docker
container: muslcc/x86_64:aarch64-linux-musl
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Install dependencies
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
@ -111,24 +124,88 @@ jobs:
run: $GITHUB_WORKSPACE/build/targets/build_socat.sh aarch64
- name: Upload artifacts
uses: actions/upload-artifact@v2
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
with:
name: ${{ steps.build_socat.outputs.PACKAGED_NAME }}
path: ${{ steps.build_socat.outputs.PACKAGED_NAME_PATH }}
build-ppc32:
name: Build socat powerpc32
runs-on: docker
container: muslcc/x86_64:powerpc-linux-musl
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install dependencies
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
- name: Install testing dependencies
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
- name: Install build compiler
run: /bin/sh -c "apk update && apk upgrade && apk add --no-cache curl rsync sudo util-linux && cd / && curl -so ${ARCH}-cross.tgz ${HOST}/${ARCH}-cross.tgz && tar -xf ${ARCH}-cross.tgz && rm ${ARCH}-cross.tgz && cd ${ARCH}-cross"
env:
ARCH: x86_64-linux-musl
HOST: http://musl.cc/
TEMP: /tmp
USER: 0
- name: Build socat
id: build_socat
run: $GITHUB_WORKSPACE/build/targets/build_socat.sh ppc32
- name: Upload artifacts
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
with:
name: ${{ steps.build_socat.outputs.PACKAGED_NAME }}
path: ${{ steps.build_socat.outputs.PACKAGED_NAME_PATH }}
build-ppc64:
name: Build socat powerpc64
runs-on: docker
container: muslcc/x86_64:powerpc64-linux-musl
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install dependencies
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
- name: Install testing dependencies
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
- name: Install build compiler
run: /bin/sh -c "apk update && apk upgrade && apk add --no-cache curl rsync sudo util-linux && cd / && curl -so ${ARCH}-cross.tgz ${HOST}/${ARCH}-cross.tgz && tar -xf ${ARCH}-cross.tgz && rm ${ARCH}-cross.tgz && cd ${ARCH}-cross"
env:
ARCH: x86_64-linux-musl
HOST: http://musl.cc/
TEMP: /tmp
USER: 0
- name: Build socat
id: build_socat
run: $GITHUB_WORKSPACE/build/targets/build_socat.sh ppc64
- name: Upload artifacts
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
with:
name: ${{ steps.build_socat.outputs.PACKAGED_NAME }}
path: ${{ steps.build_socat.outputs.PACKAGED_NAME_PATH }}
create-release:
name: Create socat Release
runs-on: ubuntu-latest
needs: [build-x86, build-x86_64, build-armhf, build-aarch64]
runs-on: docker
needs: [build-x86, build-x86_64, build-armhf, build-aarch64, build-ppc32, build-ppc64]
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Prepare Environment
run: mkdir /tmp/releases
- name: Download Artifacts
uses: actions/download-artifact@v2
uses: https://code.forgejo.org/forgejo/download-artifact@v4
with:
path: /tmp/releases

View file

@ -13,6 +13,8 @@ apk add \
libtool \
qemu-arm \
qemu-aarch64 \
qemu-ppc \
qemu-ppc64 \
file \
texinfo \
zip \

View file

@ -47,6 +47,10 @@ get_host_triple(){
host="arm-linux-musleabihf"
elif [ "$CURRENT_ARCH" == "aarch64" ];then
host="aarch64-linux-musl"
elif [ "$CURRENT_ARCH" == "ppc32" ];then
host="powerpc-linux-musl"
elif [ "$CURRENT_ARCH" == "ppc64" ];then
host="powerpc64-linux-musl"
fi
echo $host
}
@ -145,6 +149,20 @@ get_version(){
else
echo "qemu-aarch64 not found, skipping AARCH64 version checks." >&2
fi
elif [ "$CURRENT_ARCH" == "ppc32" ];then
if which qemu-ppc 1>&2 2>/dev/null;then
cmd="qemu-ppc ${cmd}"
version+=$(eval "$cmd")
else
echo "qemu-ppc not found, skipping ppc32 version checks." >&2
fi
elif [ "$CURRENT_ARCH" == "ppc64" ];then
if which qemu-ppc64 1>&2 2>/dev/null;then
cmd="qemu-ppc64 ${cmd}"
version+=$(eval "$cmd")
else
echo "qemu-ppc64 not found, skipping ppc64 version checks." >&2
fi
else
version+=$(eval "$cmd")
fi
@ -214,6 +232,10 @@ lib_build_openssl(){
openssl_arch="linux-x86_64"
elif [ "${CURRENT_ARCH}" == "aarch64" ];then
openssl_arch="linux-generic64"
elif [ "${CURRENT_ARCH}" == "ppc32" ];then
openssl_arch="linux-ppc"
elif [ "${CURRENT_ARCH}" == "ppc64" ];then
openssl_arch="linux-ppc"
fi
CFLAGS="${GCC_OPTS}" \
./Configure \

View file

@ -4,7 +4,7 @@ if [ -z "$GITHUB_WORKSPACE" ];then
exit 1
fi
if [ "$#" -ne 1 ];then
echo "Usage: ${0} [x86|x86_64|armhf|aarch64]"
echo "Usage: ${0} [x86|x86_64|armhf|aarch64|ppc32|ppc64]"
echo "Example: ${0} x86_64"
exit 1
fi