Applied, thanks!
Damien Zammit, le ven. 23 janv. 2026 06:32:38 +0000, a ecrit:
> TESTED: All CI jobs execute and run the test suite.
> Passes all tests on i386, some x86_64 tests are exposed as failing.
>
> ---
> .forgejo/workflows/action.yaml | 110 +++++++++++++++++++++++++++++++++
> 1 file changed, 110 insertions(+)
> create mode 100644 .forgejo/workflows/action.yaml
>
> diff --git a/.forgejo/workflows/action.yaml b/.forgejo/workflows/action.yaml
> new file mode 100644
> index 00000000..7ac521dd
> --- /dev/null
> +++ b/.forgejo/workflows/action.yaml
> @@ -0,0 +1,110 @@
> +on:
> + push:
> + branches:
> + - 'master'
> + - 'ci-*'
> +
> +jobs:
> + i386:
> + runs-on: self
> + strategy:
> + matrix:
> + smp: ["--enable-ncpus=1 --enable-apic", "--enable-ncpus=1
> --disable-apic", "--enable-ncpus=8"]
> + pae: ["--enable-pae", "--disable-pae"]
> + kdb: ["--enable-kdb", "--disable-kdb"]
> + steps:
> + - name: Checkout code
> + uses: actions/checkout@v6
> + - name: gnumach 32 bit
> + run: |
> + git clone -q --depth=1 --single-branch
> https://https.git.savannah.gnu.org/git/hurd/mig.git mig32
> + autoreconf -fi
> + mkdir gnu32
> + mkdir build32
> + cd build32
> + ../configure --prefix= --host=i686-gnu LD=i686-linux-gnu-ld
> CC=i686-linux-gnu-gcc \
> + --disable-linux-groups \
> + ${{ matrix.smp }} \
> + ${{ matrix.pae }} \
> + ${{ matrix.kdb }}
> + make DESTDIR=../gnu32 install-data
> + cd ..
> + cd mig32
> + autoreconf -fi
> + mkdir build32
> + cd build32
> + GNU=$(realpath ../../gnu32)
> + TARGET_CPPFLAGS=-I"$GNU"/include TARGET_CC=i686-linux-gnu-gcc
> ../configure --prefix="$GNU" --target=i686-gnu
> + make all install
> + PATH=$PATH:$GNU/bin
> + cd ../..
> + cd build32
> + CCASFLAGS="-fdebug-prefix-map=$PWD=."
> CFLAGS="-ffile-prefix-map=$PWD=." \
> + ../configure --prefix= --host=i686-gnu \
> + MIG=i686-gnu-mig LD=i686-linux-gnu-ld
> CC=i686-linux-gnu-gcc \
> + --disable-linux-groups \
> + ${{ matrix.smp }} \
> + ${{ matrix.pae }} \
> + ${{ matrix.kdb }}
> + make gnumach.gz
> + make VERBOSE=true check
> + x86_64:
> + runs-on: self
> + strategy:
> + matrix:
> + smp: ["--enable-ncpus=1", "--enable-ncpus=8"]
> + user32: ["--enable-user32", "--disable-user32"]
> + kdb: ["--enable-kdb", "--disable-kdb"]
> + steps:
> + - name: Checkout code
> + uses: actions/checkout@v6
> + - name: gnumach 64 bit
> + run: |
> + git clone -q --depth=1 --single-branch
> https://https.git.savannah.gnu.org/git/hurd/mig.git
> + autoreconf -fi
> + if [ ${{ matrix.user32 }} == '--enable-user32' ]; then
> + USER_H=i686
> + else
> + USER_H=x86_64
> + fi
> + mkdir gnu64
> + mkdir build64
> + cd build64
> + ../configure --prefix= --host=x86_64-gnu LD=x86_64-linux-gnu-ld
> CC=x86_64-linux-gnu-gcc \
> + --enable-apic \
> + --disable-linux-groups \
> + ${{ matrix.smp }} \
> + ${{ matrix.user32 }} \
> + ${{ matrix.kdb }}
> + make DESTDIR=../gnu64 install-data
> + cd ..
> + cd mig
> + autoreconf -fi
> + mkdir build64
> + cd build64
> + GNU=$(realpath ../../gnu64)
> + TARGET_CPPFLAGS=-I"$GNU"/include TARGET_CC=x86_64-linux-gnu-gcc
> ../configure --prefix="$GNU" --target=x86_64-gnu
> + make all install
> + cd ..
> + if [ "$USER_H" == "i686" ]; then
> + # We need both migs
> + mkdir build32
> + cd build32
> + TARGET_CPPFLAGS=-I"$GNU"/include TARGET_CC=i686-linux-gnu-gcc
> ../configure --prefix="$GNU" --target=i686-gnu
> + make all install
> + cd ..
> + fi
> + cd ..
> + PATH=$PATH:$GNU/bin
> + cd build64
> + CCASFLAGS="-fdebug-prefix-map=$PWD=."
> CFLAGS="-ffile-prefix-map=$PWD=." \
> + ../configure --prefix= --host=x86_64-gnu \
> + MIG=x86_64-gnu-mig LD=x86_64-linux-gnu-ld
> CC=x86_64-linux-gnu-gcc \
> + USER_MIG=${USER_H}-gnu-mig USER_CC=${USER_H}-linux-gnu-gcc
> USER_CPP="${USER_H}-linux-gnu-gcc -E" \
> + --enable-apic \
> + --disable-linux-groups \
> + ${{ matrix.smp }} \
> + ${{ matrix.user32 }} \
> + ${{ matrix.kdb }}
> + make gnumach.gz
> + make VERBOSE=true check
> --
> 2.51.0
>
>
>
--
Samuel
void *memmem (const void *meule_de_foin, size_t lg_meule,
const void *aiguille, size_t lg_aiguille);
(extrait de la page de man de memmem -- Manuel du programmeur Linux)