diff --git a/.github/workflows/build-daily-SPIRV-Tools.yml b/.github/workflows/build-daily-SPIRV-Tools.yml index 48f99ce..53198d5 100644 --- a/.github/workflows/build-daily-SPIRV-Tools.yml +++ b/.github/workflows/build-daily-SPIRV-Tools.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/KhronosGroup/SPIRV-Tools/tree/main"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-c2rust.yml b/.github/workflows/build-daily-c2rust.yml index 426a9c6..b8776fc 100644 --- a/.github/workflows/build-daily-c2rust.yml +++ b/.github/workflows/build-daily-c2rust.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/immunant/c2rust/tree/master"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-circt_trunk.yml b/.github/workflows/build-daily-circt_trunk.yml index dad70b7..da104de 100644 --- a/.github/workflows/build-daily-circt_trunk.yml +++ b/.github/workflows/build-daily-circt_trunk.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/llvm/circt/tree/main"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-clad-trunk-clang-21.1.0.yml b/.github/workflows/build-daily-clad-trunk-clang-21.1.0.yml index 22430b9..bfe617d 100644 --- a/.github/workflows/build-daily-clad-trunk-clang-21.1.0.yml +++ b/.github/workflows/build-daily-clad-trunk-clang-21.1.0.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/vgvassilev/clad/tree/master"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-clad.yml b/.github/workflows/build-daily-clad.yml index 515b97f..a0c1682 100644 --- a/.github/workflows/build-daily-clad.yml +++ b/.github/workflows/build-daily-clad.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/vgvassilev/clad/tree/master"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-clang_amdgpu.yml b/.github/workflows/build-daily-clang_amdgpu.yml index 077a4e7..0ab4c9f 100644 --- a/.github/workflows/build-daily-clang_amdgpu.yml +++ b/.github/workflows/build-daily-clang_amdgpu.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/ROCm/llvm-project/tree/amd-staging"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-clang_parmexpr.yml b/.github/workflows/build-daily-clang_parmexpr.yml index 1b61bbc..5d7c75c 100644 --- a/.github/workflows/build-daily-clang_parmexpr.yml +++ b/.github/workflows/build-daily-clang_parmexpr.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/ricejasonf/parametric_expressions/tree/master"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-dotnet.yml b/.github/workflows/build-daily-dotnet.yml index 910796b..ea36428 100644 --- a/.github/workflows/build-daily-dotnet.yml +++ b/.github/workflows/build-daily-dotnet.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/dotnet/runtime"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-gcc_contracts.yml b/.github/workflows/build-daily-gcc_contracts.yml index da5b6f1..1a88f33 100644 --- a/.github/workflows/build-daily-gcc_contracts.yml +++ b/.github/workflows/build-daily-gcc_contracts.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/lock3/gcc/tree/contracts"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-gcc_contracts_base.yml b/.github/workflows/build-daily-gcc_contracts_base.yml index e4c91b0..a9b0930 100644 --- a/.github/workflows/build-daily-gcc_contracts_base.yml +++ b/.github/workflows/build-daily-gcc_contracts_base.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/iains/gcc-git/tree/C++26-contracts-base"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-gcc_contracts_gnu.yml b/.github/workflows/build-daily-gcc_contracts_gnu.yml index a4135da..e341b22 100644 --- a/.github/workflows/build-daily-gcc_contracts_gnu.yml +++ b/.github/workflows/build-daily-gcc_contracts_gnu.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/iains/gcc-git/tree/C++26-contracts-GNU-extensions"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-gcc_contracts_labels.yml b/.github/workflows/build-daily-gcc_contracts_labels.yml index ee6da29..4c98863 100644 --- a/.github/workflows/build-daily-gcc_contracts_labels.yml +++ b/.github/workflows/build-daily-gcc_contracts_labels.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/lock3/gcc/tree/contract-labels"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-gcc_contracts_nonattr.yml b/.github/workflows/build-daily-gcc_contracts_nonattr.yml index 4e763e8..f94955e 100644 --- a/.github/workflows/build-daily-gcc_contracts_nonattr.yml +++ b/.github/workflows/build-daily-gcc_contracts_nonattr.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/villevoutilainen/gcc/tree/contracts-nonattr"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-gcc_coroutines.yml b/.github/workflows/build-daily-gcc_coroutines.yml index f46a892..95e8306 100644 --- a/.github/workflows/build-daily-gcc_coroutines.yml +++ b/.github/workflows/build-daily-gcc_coroutines.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/iains/gcc-cxx-coroutines/tree/c++-coroutines"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-gcc_gccrs_master.yml b/.github/workflows/build-daily-gcc_gccrs_master.yml index b1016d3..7f9e7d7 100644 --- a/.github/workflows/build-daily-gcc_gccrs_master.yml +++ b/.github/workflows/build-daily-gcc_gccrs_master.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/Rust-GCC/gccrs/tree/master"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-gcc_lambda_p2034.yml b/.github/workflows/build-daily-gcc_lambda_p2034.yml index d604bf6..2bfc80e 100644 --- a/.github/workflows/build-daily-gcc_lambda_p2034.yml +++ b/.github/workflows/build-daily-gcc_lambda_p2034.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/villevoutilainen/gcc/tree/lambda-p2034"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-gcc_p1144.yml b/.github/workflows/build-daily-gcc_p1144.yml index c6cbb9c..f82f4c6 100644 --- a/.github/workflows/build-daily-gcc_p1144.yml +++ b/.github/workflows/build-daily-gcc_p1144.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/Quuxplusone/gcc/tree/trivially-relocatable"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-gcc_thomas_healy.yml b/.github/workflows/build-daily-gcc_thomas_healy.yml index 4826630..84acd59 100644 --- a/.github/workflows/build-daily-gcc_thomas_healy.yml +++ b/.github/workflows/build-daily-gcc_thomas_healy.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/healytpk/gcc-thomas-healy/tree/trunk"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-gcc_trivial_relocation.yml b/.github/workflows/build-daily-gcc_trivial_relocation.yml index f1a37a5..b0c9a6f 100644 --- a/.github/workflows/build-daily-gcc_trivial_relocation.yml +++ b/.github/workflows/build-daily-gcc_trivial_relocation.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/iains/gcc-git/tree/C++2z-trivial-relocation"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-ispc.yml b/.github/workflows/build-daily-ispc.yml index 7939845..8a15558 100644 --- a/.github/workflows/build-daily-ispc.yml +++ b/.github/workflows/build-daily-ispc.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/ispc/ispc"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-lc3.yml b/.github/workflows/build-daily-lc3.yml index 45379bb..fd6cd8a 100644 --- a/.github/workflows/build-daily-lc3.yml +++ b/.github/workflows/build-daily-lc3.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/xavierrouth/lc3-compiler"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-micropython.yml b/.github/workflows/build-daily-micropython.yml index e0e8a93..6b88001 100644 --- a/.github/workflows/build-daily-micropython.yml +++ b/.github/workflows/build-daily-micropython.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/micropython/micropython"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-movfuscator.yml b/.github/workflows/build-daily-movfuscator.yml index e52251b..c214aa2 100644 --- a/.github/workflows/build-daily-movfuscator.yml +++ b/.github/workflows/build-daily-movfuscator.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/xoreaxeaxeax/movfuscator/tree/master"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-mrustc.yml b/.github/workflows/build-daily-mrustc.yml index 993509e..399744f 100644 --- a/.github/workflows/build-daily-mrustc.yml +++ b/.github/workflows/build-daily-mrustc.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/thepowersgang/mrustc/tree/master"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-ncc-ng.yml b/.github/workflows/build-daily-ncc-ng.yml index 0a47750..fad5da0 100644 --- a/.github/workflows/build-daily-ncc-ng.yml +++ b/.github/workflows/build-daily-ncc-ng.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/Norcroft/ncc-ng/tree/trunk"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-rustc-cg-gcc_master.yml b/.github/workflows/build-daily-rustc-cg-gcc_master.yml index 4cfde79..8b824c3 100644 --- a/.github/workflows/build-daily-rustc-cg-gcc_master.yml +++ b/.github/workflows/build-daily-rustc-cg-gcc_master.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/rust-lang/rustc_codegen_gcc/tree/master", "https://github.com/rust-lang/gcc/tree/master"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/.github/workflows/build-daily-wyrm.yml b/.github/workflows/build-daily-wyrm.yml index a6d31ce..a7bc21f 100644 --- a/.github/workflows/build-daily-wyrm.yml +++ b/.github/workflows/build-daily-wyrm.yml @@ -7,7 +7,50 @@ on: workflow_dispatch: jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/jeremy-rifkin/wyrm/tree/main"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] steps: - name: Start from a clean directory diff --git a/compilers.yaml b/compilers.yaml index 894a2a5..599ba22 100644 --- a/compilers.yaml +++ b/compilers.yaml @@ -7,20 +7,20 @@ compilers: - { image: clang, name: llvm, args: llvm-trunk } - { image: gcc, name: gcc } - { image: gcc, name: gcc_cobol_master, args: cobol-master } - - { image: gcc, name: gcc_contracts, args: lock3-contracts-trunk } - - { image: gcc, name: gcc_contracts_labels, args: lock3-contracts-labels-trunk } - - { image: gcc, name: gcc_contracts_nonattr, args: contracts-nonattr-trunk } - - { image: gcc, name: gcc_contracts_base, args: contracts-base-trunk } - - { image: gcc, name: gcc_contracts_gnu, args: contracts-GNUext-trunk } - - { image: gcc, name: gcc_lambda_p2034, args: contracts-lambda-p2034-trunk } - - { image: gcc, name: gcc_coroutines, args: cxx-coroutines-trunk } - - { image: gcc, name: gcc_trivial_relocation, args: trivial-relocation-trunk } - - { image: gcc, name: gcc_gccrs_master, args: gccrs-master } + - { image: gcc, name: gcc_contracts, args: lock3-contracts-trunk, repos: ["https://github.com/lock3/gcc/tree/contracts"] } + - { image: gcc, name: gcc_contracts_labels, args: lock3-contracts-labels-trunk, repos: ["https://github.com/lock3/gcc/tree/contract-labels"] } + - { image: gcc, name: gcc_contracts_nonattr, args: contracts-nonattr-trunk, repos: ["https://github.com/villevoutilainen/gcc/tree/contracts-nonattr"] } + - { image: gcc, name: gcc_contracts_base, args: contracts-base-trunk, repos: ["https://github.com/iains/gcc-git/tree/C++26-contracts-base"] } + - { image: gcc, name: gcc_contracts_gnu, args: contracts-GNUext-trunk, repos: ["https://github.com/iains/gcc-git/tree/C++26-contracts-GNU-extensions"] } + - { image: gcc, name: gcc_lambda_p2034, args: contracts-lambda-p2034-trunk, repos: ["https://github.com/villevoutilainen/gcc/tree/lambda-p2034"] } + - { image: gcc, name: gcc_coroutines, args: cxx-coroutines-trunk, repos: ["https://github.com/iains/gcc-cxx-coroutines/tree/c++-coroutines"] } + - { image: gcc, name: gcc_trivial_relocation, args: trivial-relocation-trunk, repos: ["https://github.com/iains/gcc-git/tree/C++2z-trivial-relocation"] } + - { image: gcc, name: gcc_gccrs_master, args: gccrs-master, repos: ["https://github.com/Rust-GCC/gccrs/tree/master"] } - { image: gcc, name: gcc_modules, args: cxx-modules-trunk } - - { image: gcc, name: gcc_p1144, args: p1144-trunk } - - { image: gcc, name: gcc_thomas_healy, args: thomas-healy-trunk } + - { image: gcc, name: gcc_p1144, args: p1144-trunk, repos: ["https://github.com/Quuxplusone/gcc/tree/trivially-relocatable"] } + - { image: gcc, name: gcc_thomas_healy, args: thomas-healy-trunk, repos: ["https://github.com/healytpk/gcc-thomas-healy/tree/trunk"] } - { image: clang, name: clang } - - { image: clang, name: clang_amdgpu, args: rocm-trunk } + - { image: clang, name: clang_amdgpu, args: rocm-trunk, repos: ["https://github.com/ROCm/llvm-project/tree/amd-staging"] } - { image: clang, name: clang_assertions, args: assertions-trunk } - { image: clang, name: clang_autonsdmi, args: autonsdmi-trunk, repos: ["https://github.com/cor3ntin/llvm-project/tree/experiments"] } - { image: clang, name: clang_bb_p2996, args: bb-p2996-trunk, repos: ["https://github.com/bloomberg/clang-p2996/tree/p2996"] } @@ -52,32 +52,32 @@ compilers: - { image: clang, name: clang_p3776, args: p3776-trunk, repos: ["https://github.com/term-est/llvm-project/tree/P3776-More-Trailing-Commas"] } - { image: clang, name: clang_p3822, args: p3822-trunk, repos: ["https://github.com/yuxuanchen1997/llvm-project/tree/users/yuxuanchen1997/p3822r0-requirements-noexcept"] } - { image: clang, name: clang_p3951, args: p3951-trunk, repos: ["https://github.com/brevzin/llvm-project/tree/template-strings"] } - - { image: clang, name: clang_parmexpr, command: build-parmexpr.sh } + - { image: clang, name: clang_parmexpr, command: build-parmexpr.sh, repos: ["https://github.com/ricejasonf/parametric_expressions/tree/master"] } - { image: clang, name: clang_patmat, args: patmat-trunk, repos: ["https://github.com/mpark/llvm-project/tree/p2688-pattern-matching"] } - { image: clang, name: clang_reflection, args: reflection-trunk, repos: ["https://github.com/matus-chochlik/llvm-project/tree/reflection"] } - { image: clang, name: clang_relocatable, args: relocatable-trunk, repos: ["https://github.com/Quuxplusone/llvm-project/tree/trivially-relocatable"] } - { image: clang, name: clang_variadic_friends, args: variadic-friends-trunk, repos: ["https://github.com/dancrn/llvm-project/tree/cxx-variadic-friends"] } - { image: clang, name: clang_hana, args: hana-clang-trunk, repos: ["https://github.com/hanickadot/llvm-project/tree/compiler-explorer/hana-clang"] } - { image: clang, name: clang_swiftlang, args: swiftlang-trunk, repos: ["https://github.com/swiftlang/llvm-project/tree/next"] } - - { image: dotnet, name: dotnet, command: build.sh, args: trunk } + - { image: dotnet, name: dotnet, command: build.sh, args: trunk, repos: ["https://github.com/dotnet/runtime"] } - { image: clang, name: mlir_trunk, args: mlir-trunk } - { image: go, name: go } - { image: ccc, name: ccc, command: build.sh, args: main, repos: ["https://github.com/anthropics/claudes-c-compiler/tree/main"] } - { image: misc, name: tinycc, command: build-tinycc.sh } - { image: misc, name: cc65, command: buildcc65.sh, repos: ["https://github.com/cc65/cc65/tree/master"] } - - { image: misc, name: mrustc, command: build-mrustc.sh, args: master } - - { image: rust-cg-gcc, name: rustc-cg-gcc_master, command: build.sh, args: master } - - { image: misc, name: SPIRV-Tools, command: build-spirv-tools.sh, args: main } - - { image: lc3, name: lc3, command: build.sh } - - { image: c2rust, name: c2rust, command: build.sh, args: master } + - { image: misc, name: mrustc, command: build-mrustc.sh, args: master, repos: ["https://github.com/thepowersgang/mrustc/tree/master"] } + - { image: rust-cg-gcc, name: rustc-cg-gcc_master, command: build.sh, args: master, repos: ["https://github.com/rust-lang/rustc_codegen_gcc/tree/master", "https://github.com/rust-lang/gcc/tree/master"] } + - { image: misc, name: SPIRV-Tools, command: build-spirv-tools.sh, args: main, repos: ["https://github.com/KhronosGroup/SPIRV-Tools/tree/main"] } + - { image: lc3, name: lc3, command: build.sh, repos: ["https://github.com/xavierrouth/lc3-compiler"] } + - { image: c2rust, name: c2rust, command: build.sh, args: master, repos: ["https://github.com/immunant/c2rust/tree/master"] } - { image: misc, name: clspv, command: build-clspv.sh, args: main, repos: ["https://github.com/google/clspv/tree/main"] } - { image: jakt, name: jakt, command: build.sh, args: trunk, repos: ["https://github.com/SerenityOS/jakt/tree/main"] } - { image: misc, name: cppfront, command: build-cppfront.sh, args: trunk, repos: ["https://github.com/hsutter/cppfront/tree/main"] } - { image: misc, name: dxc, command: build-dxc.sh, args: trunk, repos: ["https://github.com/microsoft/DirectXShaderCompiler/tree/main"] } - { image: misc, name: pahole, command: build-pahole.sh, args: trunk } - - { image: misc, name: movfuscator, command: build-movfuscator.sh } - - { image: misc, name: wyrm, command: build-wyrm-transpiler.sh } - - { image: ncc-ng, name: ncc-ng, command: build.sh, args: trunk } + - { image: misc, name: movfuscator, command: build-movfuscator.sh, repos: ["https://github.com/xoreaxeaxeax/movfuscator/tree/master"] } + - { image: misc, name: wyrm, command: build-wyrm-transpiler.sh, repos: ["https://github.com/jeremy-rifkin/wyrm/tree/main"] } + - { image: ncc-ng, name: ncc-ng, command: build.sh, args: trunk, repos: ["https://github.com/Norcroft/ncc-ng/tree/trunk"] } - { image: gcc-cross, name: arm32, args: "arm trunk" } - { image: gcc-cross, name: arm64, args: "arm64 trunk" } - { image: gcc-cross, name: riscv32, args: "riscv32 trunk" } @@ -93,7 +93,7 @@ compilers: # - { image: clang, name: dang, args: dang-main } - { image: clang, name: widberg, args: widberg-main, repos: ["https://github.com/widberg/llvm-project-widberg-extensions/tree/main"] } - - { image: ispc, name: ispc } + - { image: ispc, name: ispc, repos: ["https://github.com/ispc/ispc"] } # See https://github.com/compiler-explorer/compiler-explorer/issues/6828 # - { image: ispc, name: ispc_templates_new, args: templates_new-trunk } @@ -103,11 +103,11 @@ compilers: - { image: hylo, name: hylo, repos: ["https://github.com/hylo-lang/hylo/tree/main"] } - { image: vast, name: vast, repos: ["https://github.com/trailofbits/vast/tree/master"] } - { image: mads, name: madpascal, args: trunk, repos: ["https://github.com/tebe6502/Mad-Assembler/tree/master", "https://github.com/tebe6502/Mad-Pascal/tree/master"] } - - { image: clang, name: circt_trunk, command: build-circt.sh, args: trunk} - - { image: clad, name: clad, args: trunk} - - { image: clad, name: clad-trunk-clang-21.1.0, args: trunk-clang-21.1.0} + - { image: clang, name: circt_trunk, command: build-circt.sh, args: trunk, repos: ["https://github.com/llvm/circt/tree/main"] } + - { image: clad, name: clad, args: trunk, repos: ["https://github.com/vgvassilev/clad/tree/master"] } + - { image: clad, name: clad-trunk-clang-21.1.0, args: trunk-clang-21.1.0, repos: ["https://github.com/vgvassilev/clad/tree/master"] } - { image: miri, name: miri, command: build.sh, args: nightly } - - { image: micropython, name: micropython, command: build.sh, args: preview } + - { image: micropython, name: micropython, command: build.sh, args: preview, repos: ["https://github.com/micropython/micropython"] } ad_hoc: - { image: gcc, command: build.sh }