zherczeg / sljit

Platform independent low-level JIT compiler
Other
826 stars 73 forks source link

Add action #259

Closed vorosl closed 1 month ago

vorosl commented 2 months ago

Add action for testing sljit on different architectures

zherczeg commented 2 months ago

Please give a better description for this patch

lrzlin commented 1 month ago

Seems that this patch is using qemu-user, in that case maybe we could add loong64 CI support to sljit?

Edit: I wrote the loongarch64 one, tested under ubuntu, which should be fine, could you please add this into your PR? Otherwise I'll add a seperate PR, I do think sljit really needs CI for maintainability.

build-test-on-loongarch64:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
      with:
        submodules: true
    - name: Install compiler
      run: |
          sudo apt update
          sudo apt install -y make wget ninja-build
          wget https://github.com/loongson/build-tools/releases/download/2024.06.01/x86_64-cross-tools-loongarch64-binutils_2.42-gcc_14.1.0-glibc_2.39.tar.xz
          tar -xvf x86_64-cross-tools-loongarch64-binutils_2.42-gcc_14.1.0-glibc_2.39.tar.xz
    - name: Install qemu
      run: |
          wget https://download.qemu.org/qemu-9.0.2.tar.xz
          tar -xvf qemu-9.0.2.tar.xz
          cd qemu-9.0.2
          ./configure --target-list="loongarch64-linux-user"
          make -j4
    - name: Build and test
      env:
        CROSS_COMPILER: ./cross-tools/bin/loongarch64-unknown-linux-gnu-gcc
        CFLAGS: -march=la464
        EXTRA_LDFLAGS: -static
      run: |
        make all
        ./qemu-9.0.2/build/qemu-loongarch64 ./bin/sljit_test -v
vorosl commented 1 month ago

Seems that this patch is using qemu-user, in that case maybe we could add loong64 CI support to sljit?

Edit: I wrote the loongarch64 one, tested under ubuntu, which should be fine, could you please add this into your PR? Otherwise I'll add a seperate PR, I do think sljit really needs CI for maintainability.

build-test-on-loongarch64:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
      with:
        submodules: true
    - name: Install compiler
      run: |
          sudo apt update
          sudo apt install -y make wget ninja-build
          wget https://github.com/loongson/build-tools/releases/download/2024.06.01/x86_64-cross-tools-loongarch64-binutils_2.42-gcc_14.1.0-glibc_2.39.tar.xz
          tar -xvf x86_64-cross-tools-loongarch64-binutils_2.42-gcc_14.1.0-glibc_2.39.tar.xz
    - name: Install qemu
      run: |
          wget https://download.qemu.org/qemu-9.0.2.tar.xz
          tar -xvf qemu-9.0.2.tar.xz
          cd qemu-9.0.2
          ./configure --target-list="loongarch64-linux-user"
          make -j4
    - name: Build and test
      env:
        CROSS_COMPILER: ./cross-tools/bin/loongarch64-unknown-linux-gnu-gcc
        CFLAGS: -march=la464
        EXTRA_LDFLAGS: -static
      run: |
        make all
        ./qemu-9.0.2/build/qemu-loongarch64 ./bin/sljit_test -v

@lrzlin Thank you very much your CI script, I've inserted it into my PR.