Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package mingw64-filesystem for openSUSE:Factory checked in at 2025-08-25 20:37:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mingw64-filesystem (Old) and /work/SRC/openSUSE:Factory/.mingw64-filesystem.new.30751 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mingw64-filesystem" Mon Aug 25 20:37:46 2025 rev:35 rq:1301037 version:20250822 Changes: -------- --- /work/SRC/openSUSE:Factory/mingw64-filesystem/mingw64-filesystem.changes 2025-08-15 21:53:51.356599591 +0200 +++ /work/SRC/openSUSE:Factory/.mingw64-filesystem.new.30751/mingw64-filesystem.changes 2025-08-25 20:38:40.693549140 +0200 @@ -1,0 +2,8 @@ +Fri Aug 22 09:44:22 UTC 2025 - Ralf Habacker <[email protected]> + +- Update to version 20250822 +- Add checks to shell scripts to see if host-specific executable + files are present and report this as an error to avoid hidden + problems (bsc#1248468) + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mingw64-filesystem.spec ++++++ --- /var/tmp/diff_new_pack.PV1DM1/_old 2025-08-25 20:38:41.669590030 +0200 +++ /var/tmp/diff_new_pack.PV1DM1/_new 2025-08-25 20:38:41.673590197 +0200 @@ -1,7 +1,7 @@ # # spec file for package mingw64-filesystem # -# Copyright (c) 2025 SUSE LLC +# Copyright (c) 2025 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -31,7 +31,7 @@ %define _rpmmacrodir %{_sysconfdir}/rpm %endif Name: mingw64-filesystem -Version: 20250814 +Version: 20250822 Release: 0 Summary: MinGW base filesystem and environment License: GPL-2.0-or-later ++++++ mingw64-find-debuginfo.sh ++++++ --- /var/tmp/diff_new_pack.PV1DM1/_old 2025-08-25 20:38:41.797595392 +0200 +++ /var/tmp/diff_new_pack.PV1DM1/_new 2025-08-25 20:38:41.801595560 +0200 @@ -9,6 +9,12 @@ # --src-root-dir root dir for installing debug source files (src/debug is appended) # BUILDDIR build directory (often $HOME/rpmbuild/BUILD) # +# environment variables: +# OBJCOPY - object file copy tool (optional, default is $host-objcopy) +# OBJDUMP - object file dumper (optional, default is $host-objdump) +# ROOT_DIR - directory where to install debug sources (optional, default is <$ROOT_DIR>/src/debug) +# SRCFILES - tool to get debug source files from binaries (optional, default is $host-objdump-srcfiles) +# # $PWD package dir below $BUILDDIR target="mingw64" @@ -17,25 +23,40 @@ # extract debug info for a single file as child process if [[ -v RUN_SINGLE ]]; then f=$1 - case $("$host-objdump" -h "$f" 2>/dev/null | grep -E -o '(debug[\.a-z_]*|gnu.version)') in + result=$("$OBJDUMP" -h "$f" 2>/dev/null | grep -E -o '(debug[\.a-z_]*|gnu.version)') + case $result in *debuglink*) exit 0;; *debug*) ;; *gnu.version*) echo "WARNING: "`echo $f | sed -e "s,^$RPM_BUILD_ROOT/*,/,"`" is already stripped!" exit 0 ;; - *) exit 0 ;; + *) + echo "WARNING: "`echo $f | sed -e "s,^$RPM_BUILD_ROOT/*,/,"`" unknown case, value is '$result'" + exit 0 + ;; esac echo extracting debug info from $f # grep all listed source files belonging to this package into temporary source file list. - "$host-objdump" -Wi "$f" | "$host-objdump-srcfiles" | grep $srcdir >>"$SOURCEFILE.tmp" - "$host-objcopy" --only-keep-debug "$f" "$f.debug" || : + "$OBJDUMP" -Wi "$f" | "$SRCFILES" | grep $srcdir >>"$SOURCEFILE.tmp" + "$OBJCOPY" --only-keep-debug "$f" "$f.debug" || : pushd `dirname $f` - "$host-objcopy" --add-gnu-debuglink=`basename "$f.debug"` --strip-unneeded `basename "$f"` || : + "$OBJCOPY" --add-gnu-debuglink=`basename "$f.debug"` --strip-unneeded `basename "$f"` || : popd exit 0 fi +[ -z "$OBJDUMP" ] && OBJDUMP="$host-objdump" +[ -z "$OBJCOPY" ] && OBJCOPY="$host-objcopy" +[ -z "$SRCFILES" ] && SRCFILES="$host-objdump-srcfiles" + +for i in $OBJDUMP $OBJCOPY $SRCFILES; do + if ! [ -x "$(command -v $i)" ]; then + echo "Error: $i is not installed." >&2 + exit 1 + fi +done + # speed up running objdump, see bug https://bugzilla.opensuse.org/show_bug.cgi?id=1202431 export MALLOC_CHECK_=0 export MALLOC_PERTURB_=0 @@ -77,7 +98,15 @@ # extract debug info find $RPM_BUILD_ROOT -type f -name "*.exe" -or -name "*.dll" | sort | \ - srcdir=$srcdir SOURCEFILE=$SOURCEFILE BUILDDIR=$BUILDDIR RPM_BUILD_ROOT=$RPM_BUILD_ROOT RUN_SINGLE=1 xargs --max-args=1 --max-procs=0 bash -x $0 + BUILDDIR=$BUILDDIR \ + OBJDUMP=$OBJDUMP \ + OBJCOPY=$OBJCOPY \ + RPM_BUILD_ROOT=$RPM_BUILD_ROOT \ + RUN_SINGLE=1 \ + SOURCEFILE=$SOURCEFILE \ + SRCFILES=$SRCFILES \ + srcdir=$srcdir \ + xargs --max-args=1 --max-procs=0 bash -x $0 # generate debug info file list find $RPM_BUILD_ROOT -type f \ ++++++ mingw64-find-provides.sh ++++++ --- /var/tmp/diff_new_pack.PV1DM1/_old 2025-08-25 20:38:41.829596733 +0200 +++ /var/tmp/diff_new_pack.PV1DM1/_new 2025-08-25 20:38:41.833596901 +0200 @@ -10,6 +10,14 @@ fi [ -z "$OBJDUMP" ] && OBJDUMP="$host-objdump" +[ -z "$PKGCONF" ] && PKGCONF="$host-pkgconf" + +for i in $OBJDUMP $PKGCONF; do + if ! [ -x "$(command -v $i)" ]; then + echo "Error: $i is not installed." >&2 + exit 1 + fi +done filelist=`sed "s/['\"]/\\\&/g"` @@ -25,7 +33,7 @@ for g in $pcs; do [ ! -f "$g" ] && continue - PKG_CONFIG_PATH="${g%/*}" "$host-pkgconf" --print-errors --print-provides "$g" | awk '{ print "'"$target"'(pkg:"$1")", $2, $3 }' + PKG_CONFIG_PATH="${g%/*}" "$PKGCONF" --print-errors --print-provides "$g" | awk '{ print "'"$target"'(pkg:"$1")", $2, $3 }' done | sort -u for h in $libs; do ++++++ mingw64-find-requires.sh ++++++ --- /var/tmp/diff_new_pack.PV1DM1/_old 2025-08-25 20:38:41.849597570 +0200 +++ /var/tmp/diff_new_pack.PV1DM1/_new 2025-08-25 20:38:41.853597738 +0200 @@ -23,8 +23,16 @@ fi [ -z "$OBJDUMP" ] && OBJDUMP="$host-objdump" +[ -z "$PKGCONF" ] && PKGCONF="$host-pkgconf" [ -z "$STRINGS" ] && STRINGS="$host-strings" +for i in $OBJDUMP $PKGCONF $STRINGS; do + if ! [ -x "$(command -v $i)" ]; then + echo "Error: $i is not installed." >&2 + exit 1 + fi +done + # Get the list of files. filelist=`sed "s/['\"]/\\\&/g"` @@ -140,14 +148,14 @@ ( for g in $pcs; do dirname="${g%/*}" - PKG_CONFIG_PATH="$dirname" "$host-pkgconf" --print-errors --print-requires "$g" | awk '{ print "'"$target"'(pkg:"$1")", $2, $3 }' - PKG_CONFIG_PATH="$dirname" "$host-pkgconf" --print-errors --print-requires-private "$g" | grep -Ev "$exclude_pattern" | awk '{ print "'"$target"'(pkg:"$1")", $2, $3 }' - for h in $(PKG_CONFIG_PATH="$dirname" "$host-pkgconf" --libs-only-l "$g" | sed 's#^\-l##g;s# \-l# #g'); do + PKG_CONFIG_PATH="$dirname" "$PKGCONF" --print-errors --print-requires "$g" | awk '{ print "'"$target"'(pkg:"$1")", $2, $3 }' + PKG_CONFIG_PATH="$dirname" "$PKGCONF" --print-errors --print-requires-private "$g" | grep -Ev "$exclude_pattern" | awk '{ print "'"$target"'(pkg:"$1")", $2, $3 }' + for h in $(PKG_CONFIG_PATH="$dirname" "$PKGCONF" --libs-only-l "$g" | sed 's#^\-l##g;s# \-l# #g'); do echo "$target(lib:$h)" done done for k in $configs; do - for j in $(PKG_CONFIG="$host-pkgconf" "$k" --libs); do + for j in $(PKG_CONFIG="$PKGCONF" "$k" --libs); do case "$j" in -l*) echo "$j" | sed 's#\-l##g' | grep -Ev "$exclude_pattern" | awk '{ print "'"$target"'(lib:"$1")" }' ++++++ mingw64-install-post.sh ++++++ --- /var/tmp/diff_new_pack.PV1DM1/_old 2025-08-25 20:38:41.869598409 +0200 +++ /var/tmp/diff_new_pack.PV1DM1/_new 2025-08-25 20:38:41.873598576 +0200 @@ -10,16 +10,24 @@ exit 0 fi +[ -z "$OBJDUMP" ] && OBJDUMP="$host-objdump" +[ -z "$STRIP" ] && STRIP="$host-strip" + +for i in $OBJDUMP $STRIP; do + if ! [ -x "$(command -v $i)" ]; then + echo "Error: $i is not installed." >&2 + exit 1 + fi +done + LC_ALL= LANG= LC_TIME=POSIX cd "$RPM_BUILD_ROOT" -[ -z "$STRIP" ] && STRIP="$host-strip" - for f in `find . -type f -name "*.exe" -or -name "*.dll"`; do - case $("$host-objdump" -h "$f" 2>/dev/null | grep -E -o '(debug[\.a-z_]*|gnu.version)') in + case $("$OBJDUMP" -h "$f" 2>/dev/null | grep -E -o '(debug[\.a-z_]*|gnu.version)') in *debuglink*) continue ;; *debug*) ;; *gnu.version*)
