diff --git a/build-package.sh b/build-package.sh index f8aa1d0..ceefac9 100755 --- a/build-package.sh +++ b/build-package.sh @@ -17,16 +17,13 @@ done trap "rmdir '$LOCKDIR'" EXIT echo "Acquired host lock, starting build of $PKG" -# --- Navigate to package directory --- cd "$BUILDPKG_BASE/$PKG" -# --- Read package metadata from build.sh --- topdir=$(ggrep -E '^topdir=' build.sh | cut -d= -f2) version=$(ggrep -E '^version=' build.sh | cut -d= -f2) pkgver=$(ggrep -E '^pkgver=' build.sh | cut -d= -f2) secname="$topdir" -# --- Check 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." @@ -34,25 +31,26 @@ if [ -n "$PKGFILE" ]; then fi # --- Run the build --- -LOGFILE=$(bash build.sh all 2>&1 | tee /tmp/build-$secname.log | ggrep -oE '[^ ]+\.log' | gtail -n1) -if [ -n "$LOGFILE" ] && [ -f "$LOGFILE" ]; then - echo "Tailing logfile: $LOGFILE" - gtail -f "$LOGFILE" & - TAIL_PID=$! -else - echo "ERROR: No logfile detected for $PKG" - exit 1 +bash build.sh all +EXIT_CODE=$? + +# --- Find logfile --- +LOGFILE=$(ls -1 ${secname}-*.log 2>/dev/null | sort | tail -n1) + +# --- Always output logfile --- +if [ -f "$LOGFILE" ]; then + echo + echo "================ Log output: $LOGFILE ================" + cat "$LOGFILE" + echo "=====================================================" fi -wait -n -EXIT_CODE=$? -kill $TAIL_PID || true - +# --- Handle logfile --- if [ $EXIT_CODE -eq 0 ]; then - echo "Build succeeded for $PKG, deleting logfile." + echo "Build succeeded for $PKG, deleting logfile: $LOGFILE" rm -f "$LOGFILE" || true else - echo "Build FAILED for $PKG, keeping logfile: $LOGFILE" + echo "Build FAILED for $PKG, logfile kept: $LOGFILE" exit $EXIT_CODE fi