From cc3c0ec0ebb422d9100df3857ec584d47143d0b2 Mon Sep 17 00:00:00 2001 From: Mario Fetka Date: Sun, 7 Sep 2025 09:12:10 +0200 Subject: [PATCH] workflow build and changelog for binutils --- .gitea/workflows/build.yml | 85 ++++++++++++++++++++++++++++++++++++++ binutils/meta/ChangeLog | 3 ++ 2 files changed, 88 insertions(+) create mode 100644 .gitea/workflows/build.yml diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml new file mode 100644 index 0000000..07d0eac --- /dev/null +++ b/.gitea/workflows/build.yml @@ -0,0 +1,85 @@ +name: Solaris Build + +on: + push: + branches: + - master + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + - name: SSH to build host and run builds + uses: appleboy/ssh-action@master + with: + host: 172.16.11.20 + username: root + key: ${{ secrets.BUILD_SSH_KEY }} + script: | + set -e + + echo "=== Updating sources ===" + cd /usr/src/buildpkg && git pull + cd /usr/src/dbpware-for-solaris && git pull + + export BUILDPKG_SCRIPTS=/usr/src/buildpkg/ + export BUILDPKG_BASE=/usr/src/dbpware-for-solaris/ + + # Define build order (adjust as needed) + BUILD_ORDER=( + binutils + # gcc + # gmake + # coreutils + # add more packages in dependency order + ) + + for pkg in "${BUILD_ORDER[@]}"; do + echo "=== Checking $pkg ===" + cd "$BUILDPKG_BASE/$pkg" + + # Parse basic fields from build.sh + topdir=$(grep -E '^topdir=' build.sh | cut -d= -f2) + version=$(grep -E '^version=' build.sh | cut -d= -f2) + pkgver=$(grep -E '^pkgver=' build.sh | cut -d= -f2) + secname="$topdir" + + # Skip build if package already exists + PKGFILE=$(ls -1 ${secname}-${version}-${pkgver}.dbp*.gz 2>/dev/null | head -n1 || true) + if [ -n "$PKGFILE" ]; then + echo "Package already built: $PKGFILE. Skipping." + continue + fi + + echo "=== Building $pkg (version $version pkgver $pkgver) ===" + LOGFILE=$(bash build.sh all 2>&1 | tee /tmp/build-$pkg.log | grep -oE '[^ ]+\.log' | tail -n1) + + if [ -z "$LOGFILE" ]; then + echo "ERROR: Could not detect logfile for $pkg" + exit 1 + fi + + echo "Tailing logfile: $LOGFILE" + tail -f "$LOGFILE" & + TAIL_PID=$! + + # Wait for the build to complete + wait -n + EXIT_CODE=$? + kill $TAIL_PID || true + + if [ $EXIT_CODE -eq 0 ]; then + echo "Build succeeded for $pkg, deleting logfile." + rm -f "$LOGFILE" || true + else + echo "Build FAILED for $pkg, keeping logfile: $LOGFILE" + exit $EXIT_CODE + fi + + echo "=== Finished $pkg ===" + done diff --git a/binutils/meta/ChangeLog b/binutils/meta/ChangeLog index a4eef35..7428f20 100644 --- a/binutils/meta/ChangeLog +++ b/binutils/meta/ChangeLog @@ -1,5 +1,8 @@ CHANGELOG --------- +* Sun Sep 07 2025 Mario Fetka - 2.25.1-1 +- Update to 2.25.1 + * Sat Apr 25 2015 Tom G. Christensen - 2.25-1 - Update to 2.25