Gitweb links:

...log 
http://git.netsurf-browser.org/libdom.git/shortlog/f69781e1f062444b5af3f62d431d7d94018da53b
...commit 
http://git.netsurf-browser.org/libdom.git/commit/f69781e1f062444b5af3f62d431d7d94018da53b
...tree 
http://git.netsurf-browser.org/libdom.git/tree/f69781e1f062444b5af3f62d431d7d94018da53b

The branch, master has been updated
       via  f69781e1f062444b5af3f62d431d7d94018da53b (commit)
       via  52889522ced6f6c1053c1e8a7d8d547a0a1d849f (commit)
       via  4d62e012995929c5d5711051b30b89f998590e94 (commit)
      from  5b7073f9d7e7e78b601d89fc3f9f7c4479bcccce (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commitdiff 
http://git.netsurf-browser.org/libdom.git/commit/?id=f69781e1f062444b5af3f62d431d7d94018da53b
commit f69781e1f062444b5af3f62d431d7d94018da53b
Author: Michael Drake <[email protected]>
Commit: Michael Drake <[email protected]>

    ci: actions: Add cross compilation jobs

diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index 12e02cc..87c33f1 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -1,10 +1,11 @@
-name: "Linux Build"
+name: "Build"
 
 on: [push]
 
 jobs:
+  # Native linux builds
   linux:
-    name: '${{ matrix.os }}: ${{ matrix.compiler.vendor }}'
+    name: 'Linux: ${{ matrix.os }}: ${{ matrix.compiler.vendor }}'
     runs-on: ${{ matrix.os }}
     strategy:
       fail-fast: false
@@ -87,3 +88,160 @@ jobs:
           export TARGET_WORKSPACE="$(pwd)/projects"
           source projects/env.sh
           make test
+
+  # Cross compile using toolchains built in the toolchains repo.
+  cross:
+    name: 'Cross: ${{ matrix.toolchain }}' # ATM toolchain unique across builds
+    runs-on: ubuntu-24.04 # Matches toolchains workflow
+    strategy:
+      fail-fast: false
+      matrix:
+        toolchain:
+          - arm-riscos-gnueabi
+          - arm-unknown-riscos
+          - i686-w64-mingw32
+          - m5475-atari-mint
+          - m68k-atari-mint
+          - m68k-unknown-amigaos
+          - ppc-amigaos
+          - x86_64-w64-mingw32
+
+    steps:
+    - name: Checkout repository
+      uses: actions/checkout@v6
+      with:
+        fetch-depth: 1
+
+    - name: apt-get install packages
+      run: sudo apt-get update -qq &&
+           sudo apt-get install --no-install-recommends -y
+               bison
+               build-essential
+               ccache
+               check
+               clang
+               flex
+               git
+               gperf
+               jlha-utils
+               libcurl4-openssl-dev
+               libhtml-parser-perl
+               libjpeg-dev
+               libpng-dev
+               librsvg2-dev
+               llvm
+               nsis
+               pkg-config
+
+    - name: Get env.sh
+      run: |
+           mkdir projects
+           wget -O projects/env.sh 
https://raw.githubusercontent.com/netsurf-browser/netsurf/refs/heads/master/docs/env.sh
+
+
+    - name: ccache
+      uses: hendrikmuhs/[email protected]
+      with:
+        key: ${{ github.job }}-${{ matrix.toolchain }}
+        max-size: 128M
+
+    # look for toolchain for this branch name first, then default to master
+    - name: Download toolchain
+      run: |
+        set -e
+        
+        TOOLCHAIN_NAME="${{ matrix.toolchain }}"
+        BRANCH_NAME="${{ github.ref_name }}"
+        
+        # Function to try downloading toolchain from a specific tag
+        download_toolchain() {
+          local ref="$1"
+          local 
download_url="https://github.com/netsurf-browser/toolchains/releases/download/${ref}/${TOOLCHAIN_NAME}.tar.gz";
+          
+          echo "Trying to download toolchain from ref: $ref"
+          echo "URL: $download_url"
+          
+          if curl -f -L -o "${TOOLCHAIN_NAME}.tar.gz" "$download_url"; then
+            echo "Got toolchain with ref: $ref"
+            return 0
+          else
+            echo "Failed to download toolchain with ref: $ref"
+            return 1
+          fi
+        }
+        
+        # Try branch-specific toolchain first
+        safe_branch=$(echo "$BRANCH_NAME" | sed 's/[^a-zA-Z0-9._-]/-/g')
+        branch_tag="gh-${safe_branch}-unstable"
+        
+        if download_toolchain "$branch_tag"; then
+          echo "Downloaded branch-specific toolchain"
+        elif download_toolchain "gh-master-unstable"; then
+          echo "Downloaded fallback master toolchain"
+        else
+          echo "Failed to download any toolchain variant"
+          exit 1
+        fi
+
+    - name: Install toolchain
+      run: |
+        echo "Installing toolchain: ${{ matrix.toolchain }}"
+        sudo tar -xzf "${{ matrix.toolchain }}.tar.gz" -C /
+        rm "${{ matrix.toolchain }}.tar.gz"
+        echo "Toolchain testament:"
+        cat /opt/netsurf/${{ matrix.toolchain }}/BUILD_INFO.txt
+
+    - name: Build and install project libs
+      env:
+        HOST: "${{ matrix.toolchain }}"
+        TARGET_WORKSPACE: "${{ github.workspace }}/projects" # Same as 
"$(pwd)/projects"
+        TARGET: ${{ github.event.repository.name }}
+        Q:
+      run: |
+        echo "HOST=$HOST"
+        echo "TARGET_WORKSPACE=$TARGET_WORKSPACE"
+        
+        echo "Looking for cross-compiler tools..."
+        echo "Expected path: /opt/netsurf/${HOST}/cross/bin/"
+        if [ -f "/opt/netsurf/${HOST}/cross/bin/${HOST}-gcc" ]; then
+          echo "Found: /opt/netsurf/${HOST}/cross/bin/${HOST}-gcc"
+          echo "Testing if it's executable:"
+          /opt/netsurf/${HOST}/cross/bin/${HOST}-gcc --version || echo "Failed 
to execute gcc --version"
+          echo "Testing dumpmachine output:"
+          /opt/netsurf/${HOST}/cross/bin/${HOST}-gcc -dumpmachine || echo 
"Failed to execute gcc -dumpmachine"
+        else
+          echo "NOT FOUND: /opt/netsurf/${HOST}/cross/bin/${HOST}-gcc"
+        fi
+        
+        echo "Sourcing env.sh with error checking..."
+        set -e  # Exit on any error
+        if ! source projects/env.sh; then
+          echo "env.sh failed with exit code $?"
+          exit 1
+        fi
+        echo "env.sh sourced successfully"
+        echo "BUILD=$BUILD"
+        echo "HOST=$HOST"
+        echo "TARGET_WORKSPACE=$TARGET_WORKSPACE"
+        echo "USE_CPUS=$USE_CPUS"
+
+        echo "Cloning libs..."
+        ns-clone -d -s -b ${GITHUB_REF_NAME}
+        echo "Building and installing tools..."
+        ns-make-tools install
+        echo "Building and installing libs..."
+        ns-make-libs install
+
+    - name: Build Library
+      env:
+        HOST: "${{ matrix.toolchain }}"
+        TARGET_WORKSPACE: "${{ github.workspace }}/projects" # Same as 
"$(pwd)/projects"
+        Q:
+      run: |
+        echo "Sourcing env.sh with error checking..."
+        set -e  # Exit on any error
+        if ! source projects/env.sh; then
+          echo "env.sh failed with exit code $?"
+          exit 1
+        fi
+        make -j"$(nproc)"


commitdiff 
http://git.netsurf-browser.org/libdom.git/commit/?id=52889522ced6f6c1053c1e8a7d8d547a0a1d849f
commit 52889522ced6f6c1053c1e8a7d8d547a0a1d849f
Author: Michael Drake <[email protected]>
Commit: Michael Drake <[email protected]>

    ci: actions: Use matching branch name for deps if available

diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index a2c8488..12e02cc 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -60,7 +60,7 @@ jobs:
       run: |
           export TARGET_WORKSPACE="$(pwd)/projects"
           source projects/env.sh
-          ns-clone -d -s
+          ns-clone -d -s -b ${GITHUB_REF_NAME}
           ns-make-libs install
 
     - name: Build Library


commitdiff 
http://git.netsurf-browser.org/libdom.git/commit/?id=4d62e012995929c5d5711051b30b89f998590e94
commit 4d62e012995929c5d5711051b30b89f998590e94
Author: Michael Drake <[email protected]>
Commit: Michael Drake <[email protected]>

    ci: actions: Update to checkout v6

diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index cb4eda1..a2c8488 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -22,7 +22,7 @@ jobs:
 
     steps:
     - name: Checkout repository
-      uses: actions/checkout@v3
+      uses: actions/checkout@v6
       with:
         fetch-depth: 1
 


-----------------------------------------------------------------------

Summary of changes:
 .github/workflows/build.yaml | 166 +++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 162 insertions(+), 4 deletions(-)

diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index cb4eda1..87c33f1 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -1,10 +1,11 @@
-name: "Linux Build"
+name: "Build"
 
 on: [push]
 
 jobs:
+  # Native linux builds
   linux:
-    name: '${{ matrix.os }}: ${{ matrix.compiler.vendor }}'
+    name: 'Linux: ${{ matrix.os }}: ${{ matrix.compiler.vendor }}'
     runs-on: ${{ matrix.os }}
     strategy:
       fail-fast: false
@@ -22,7 +23,7 @@ jobs:
 
     steps:
     - name: Checkout repository
-      uses: actions/checkout@v3
+      uses: actions/checkout@v6
       with:
         fetch-depth: 1
 
@@ -60,7 +61,7 @@ jobs:
       run: |
           export TARGET_WORKSPACE="$(pwd)/projects"
           source projects/env.sh
-          ns-clone -d -s
+          ns-clone -d -s -b ${GITHUB_REF_NAME}
           ns-make-libs install
 
     - name: Build Library
@@ -87,3 +88,160 @@ jobs:
           export TARGET_WORKSPACE="$(pwd)/projects"
           source projects/env.sh
           make test
+
+  # Cross compile using toolchains built in the toolchains repo.
+  cross:
+    name: 'Cross: ${{ matrix.toolchain }}' # ATM toolchain unique across builds
+    runs-on: ubuntu-24.04 # Matches toolchains workflow
+    strategy:
+      fail-fast: false
+      matrix:
+        toolchain:
+          - arm-riscos-gnueabi
+          - arm-unknown-riscos
+          - i686-w64-mingw32
+          - m5475-atari-mint
+          - m68k-atari-mint
+          - m68k-unknown-amigaos
+          - ppc-amigaos
+          - x86_64-w64-mingw32
+
+    steps:
+    - name: Checkout repository
+      uses: actions/checkout@v6
+      with:
+        fetch-depth: 1
+
+    - name: apt-get install packages
+      run: sudo apt-get update -qq &&
+           sudo apt-get install --no-install-recommends -y
+               bison
+               build-essential
+               ccache
+               check
+               clang
+               flex
+               git
+               gperf
+               jlha-utils
+               libcurl4-openssl-dev
+               libhtml-parser-perl
+               libjpeg-dev
+               libpng-dev
+               librsvg2-dev
+               llvm
+               nsis
+               pkg-config
+
+    - name: Get env.sh
+      run: |
+           mkdir projects
+           wget -O projects/env.sh 
https://raw.githubusercontent.com/netsurf-browser/netsurf/refs/heads/master/docs/env.sh
+
+
+    - name: ccache
+      uses: hendrikmuhs/[email protected]
+      with:
+        key: ${{ github.job }}-${{ matrix.toolchain }}
+        max-size: 128M
+
+    # look for toolchain for this branch name first, then default to master
+    - name: Download toolchain
+      run: |
+        set -e
+        
+        TOOLCHAIN_NAME="${{ matrix.toolchain }}"
+        BRANCH_NAME="${{ github.ref_name }}"
+        
+        # Function to try downloading toolchain from a specific tag
+        download_toolchain() {
+          local ref="$1"
+          local 
download_url="https://github.com/netsurf-browser/toolchains/releases/download/${ref}/${TOOLCHAIN_NAME}.tar.gz";
+          
+          echo "Trying to download toolchain from ref: $ref"
+          echo "URL: $download_url"
+          
+          if curl -f -L -o "${TOOLCHAIN_NAME}.tar.gz" "$download_url"; then
+            echo "Got toolchain with ref: $ref"
+            return 0
+          else
+            echo "Failed to download toolchain with ref: $ref"
+            return 1
+          fi
+        }
+        
+        # Try branch-specific toolchain first
+        safe_branch=$(echo "$BRANCH_NAME" | sed 's/[^a-zA-Z0-9._-]/-/g')
+        branch_tag="gh-${safe_branch}-unstable"
+        
+        if download_toolchain "$branch_tag"; then
+          echo "Downloaded branch-specific toolchain"
+        elif download_toolchain "gh-master-unstable"; then
+          echo "Downloaded fallback master toolchain"
+        else
+          echo "Failed to download any toolchain variant"
+          exit 1
+        fi
+
+    - name: Install toolchain
+      run: |
+        echo "Installing toolchain: ${{ matrix.toolchain }}"
+        sudo tar -xzf "${{ matrix.toolchain }}.tar.gz" -C /
+        rm "${{ matrix.toolchain }}.tar.gz"
+        echo "Toolchain testament:"
+        cat /opt/netsurf/${{ matrix.toolchain }}/BUILD_INFO.txt
+
+    - name: Build and install project libs
+      env:
+        HOST: "${{ matrix.toolchain }}"
+        TARGET_WORKSPACE: "${{ github.workspace }}/projects" # Same as 
"$(pwd)/projects"
+        TARGET: ${{ github.event.repository.name }}
+        Q:
+      run: |
+        echo "HOST=$HOST"
+        echo "TARGET_WORKSPACE=$TARGET_WORKSPACE"
+        
+        echo "Looking for cross-compiler tools..."
+        echo "Expected path: /opt/netsurf/${HOST}/cross/bin/"
+        if [ -f "/opt/netsurf/${HOST}/cross/bin/${HOST}-gcc" ]; then
+          echo "Found: /opt/netsurf/${HOST}/cross/bin/${HOST}-gcc"
+          echo "Testing if it's executable:"
+          /opt/netsurf/${HOST}/cross/bin/${HOST}-gcc --version || echo "Failed 
to execute gcc --version"
+          echo "Testing dumpmachine output:"
+          /opt/netsurf/${HOST}/cross/bin/${HOST}-gcc -dumpmachine || echo 
"Failed to execute gcc -dumpmachine"
+        else
+          echo "NOT FOUND: /opt/netsurf/${HOST}/cross/bin/${HOST}-gcc"
+        fi
+        
+        echo "Sourcing env.sh with error checking..."
+        set -e  # Exit on any error
+        if ! source projects/env.sh; then
+          echo "env.sh failed with exit code $?"
+          exit 1
+        fi
+        echo "env.sh sourced successfully"
+        echo "BUILD=$BUILD"
+        echo "HOST=$HOST"
+        echo "TARGET_WORKSPACE=$TARGET_WORKSPACE"
+        echo "USE_CPUS=$USE_CPUS"
+
+        echo "Cloning libs..."
+        ns-clone -d -s -b ${GITHUB_REF_NAME}
+        echo "Building and installing tools..."
+        ns-make-tools install
+        echo "Building and installing libs..."
+        ns-make-libs install
+
+    - name: Build Library
+      env:
+        HOST: "${{ matrix.toolchain }}"
+        TARGET_WORKSPACE: "${{ github.workspace }}/projects" # Same as 
"$(pwd)/projects"
+        Q:
+      run: |
+        echo "Sourcing env.sh with error checking..."
+        set -e  # Exit on any error
+        if ! source projects/env.sh; then
+          echo "env.sh failed with exit code $?"
+          exit 1
+        fi
+        make -j"$(nproc)"


-- 
Document Object Model library

Reply via email to