Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package build for openSUSE:Factory checked in at 2023-01-08 21:25:15 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/build (Old) and /work/SRC/openSUSE:Factory/.build.new.1563 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "build" Sun Jan 8 21:25:15 2023 rev:147 rq:1056167 version:20230105 Changes: -------- --- /work/SRC/openSUSE:Factory/build/build.changes 2022-11-20 19:46:51.153181829 +0100 +++ /work/SRC/openSUSE:Factory/.build.new.1563/build.changes 2023-01-08 21:25:19.511170708 +0100 @@ -1,0 +2,14 @@ +Mon Jan 2 08:09:43 UTC 2023 - Adrian Schröter <adr...@suse.de> + +- configure mkbaselibs to create glibc-hwcaps baselibs as well +- Better filetype detection for temp changes files +- Add hook to run checks after mkbaselibs run +- Delete leftover multilinedefine variable definition +- Support multiline macros in the config's macro sections +- Support #!BuildConstraint lines +- Support #!BuildTarget in spec files to set the build target + (as workaround of broken BuildArch in rpm since 2001) +- Support a regexp for file renames +- Set home to /root when running build time services + +------------------------------------------------------------------- Old: ---- obs-build-20221118.tar.gz New: ---- obs-build-20230105.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ build.spec ++++++ --- /var/tmp/diff_new_pack.HqOrut/_old 2023-01-08 21:25:20.019173726 +0100 +++ /var/tmp/diff_new_pack.HqOrut/_new 2023-01-08 21:25:20.023173750 +0100 @@ -1,7 +1,7 @@ # # spec file # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -28,7 +28,7 @@ Summary: A Script to Build SUSE Linux RPMs License: GPL-2.0-only OR GPL-3.0-only Group: Development/Tools/Building -Version: 20221118 +Version: 20230105 Release: 0 Source: obs-build-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-build ++++++ PKGBUILD ++++++ --- /var/tmp/diff_new_pack.HqOrut/_old 2023-01-08 21:25:20.059173964 +0100 +++ /var/tmp/diff_new_pack.HqOrut/_new 2023-01-08 21:25:20.063173988 +0100 @@ -1,5 +1,5 @@ pkgname=build -pkgver=20221118 +pkgver=20230105 pkgrel=0 pkgdesc="Build packages in sandbox" arch=('i686' 'x86_64') ++++++ _service ++++++ --- /var/tmp/diff_new_pack.HqOrut/_old 2023-01-08 21:25:20.087174131 +0100 +++ /var/tmp/diff_new_pack.HqOrut/_new 2023-01-08 21:25:20.091174154 +0100 @@ -1,7 +1,7 @@ <services> <service name="tar_scm" mode="manual"> - <param name="revision">20221118</param> - <param name="version">20221118</param> + <param name="revision">20230105</param> + <param name="version">20230105</param> <param name="url">https://github.com/openSUSE/obs-build.git</param> <param name="scm">git</param> <param name="extract">dist/build.changes</param> ++++++ build.dsc ++++++ --- /var/tmp/diff_new_pack.HqOrut/_old 2023-01-08 21:25:20.111174274 +0100 +++ /var/tmp/diff_new_pack.HqOrut/_new 2023-01-08 21:25:20.111174274 +0100 @@ -1,6 +1,6 @@ Format: 1.0 Source: build -Version: 20221118 +Version: 20230105 Binary: build Maintainer: Adrian Schroeter <adr...@suse.de> Architecture: all ++++++ debian.changelog ++++++ --- /var/tmp/diff_new_pack.HqOrut/_old 2023-01-08 21:25:20.139174439 +0100 +++ /var/tmp/diff_new_pack.HqOrut/_new 2023-01-08 21:25:20.143174463 +0100 @@ -1,4 +1,4 @@ -build (20221118) unstable; urgency=low +build (20230105) unstable; urgency=low * Update to current git trunk - add sles11sp2 build config and adapt autodetection ++++++ obs-build-20221118.tar.gz -> obs-build-20230105.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20221118/Build/Rpm.pm new/obs-build-20230105/Build/Rpm.pm --- old/obs-build-20221118/Build/Rpm.pm 2022-11-18 17:09:21.000000000 +0100 +++ new/obs-build-20230105/Build/Rpm.pm 2023-01-05 13:17:01.000000000 +0100 @@ -230,7 +230,7 @@ sub initmacros { my ($config, $macros, $macros_args) = @_; for my $line (@{$config->{'macros'} || []}) { - next unless $line =~ /^%define\s*([0-9a-zA-Z_]+)(?:\(([^\)]*)\))?\s*(.*?)$/; + next unless $line =~ /^%define\s*([0-9a-zA-Z_]+)(?:\(([^\)]*)\))?\s*(.*?)$/s; my $macname = $1; my $macargs = $2; my $macbody = $3; @@ -711,6 +711,17 @@ push @{$ret->{'remoteassets'}}, $remoteasset; $remoteasset = undef; } + if ($preamble && $line =~ /^\#\!BuildTarget:\s*(\S+)\s*$/i) { + my $bt = $1; + if ($bt =~ s/(.*?)://) { + $bt = '' if $1 ne '' && $1 ne ($macros{'_target_cpu'} || 'unknown'); + } + delete $ret->{'buildtarget'}; + $ret->{'buildtarget'} = $bt if $bt; + } + if ($preamble && $line =~ /^\#\!BuildConstraint:\s*(\S.+?)\s*$/i) { + push @{$ret->{'buildconstraint'}}, $1; + } if ($line =~ /^(?:Requires\(pre\)|Requires\(post\)|PreReq)\s*:\s*(\S.*)$/i) { my $deps = $1; my @deps; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20221118/Build.pm new/obs-build-20230105/Build.pm --- old/obs-build-20221118/Build.pm 2022-11-18 17:09:21.000000000 +0100 +++ new/obs-build-20230105/Build.pm 2023-01-05 13:17:01.000000000 +0100 @@ -590,12 +590,8 @@ # add rawmacros to our macro list if ($config->{'rawmacros'} ne '') { for my $rm (split("\n", $config->{'rawmacros'})) { - if (@macros && $macros[-1] =~ /\\$/) { - if ($rm =~ /\\$/) { - push @macros, '...\\'; - } else { - push @macros, '...'; - } + if (@macros && $macros[-1] =~ /\\\z/s) { + $macros[-1] = substr($macros[-1], 0, -2)."\n$rm"; } elsif ($rm !~ /^%/) { push @macros, $rm; } else { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20221118/Makefile new/obs-build-20230105/Makefile --- old/obs-build-20221118/Makefile 2022-11-18 17:09:21.000000000 +0100 +++ new/obs-build-20230105/Makefile 2023-01-05 13:17:01.000000000 +0100 @@ -53,6 +53,7 @@ getbuildids \ killchroot \ queryconfig \ + queryrecipe \ common_functions \ init_buildsystem \ substitutedeps \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20221118/baselibs_configs/baselibs_global.conf new/obs-build-20230105/baselibs_configs/baselibs_global.conf --- old/obs-build-20221118/baselibs_configs/baselibs_global.conf 2022-11-18 17:09:21.000000000 +0100 +++ new/obs-build-20230105/baselibs_configs/baselibs_global.conf 2023-01-05 13:17:01.000000000 +0100 @@ -3,6 +3,9 @@ arch s390 targets s390x:32bit arch ppc targets ppc64:32bit arch ppc64 targets ppc:64bit +arch x86_64_v2 targets x86_64:x86-64-v2 +arch x86_64_v3 targets x86_64:x86-64-v3 +arch x86_64_v4 targets x86_64:x86-64-v4 arch sparc targets sparc64:32bit arch sparcv8 targets sparc64:32bit arch sparcv9 targets sparc64:32bit @@ -35,11 +38,32 @@ package /(.*-devel)$/ requires "<match1> = <version>" - -package /.(?<!-devel)$/ +targettype x86-64-v2 -/.* +targettype x86-64-v3 -/.* +targettype x86-64-v4 -/.* + +package /^(.*)(?<!-devel)$/ +targettype x86-64-v2 baselib +^/usr/lib64/(.*\.so.*)$ -> /usr/lib64/glibc-hwcaps/x86-64-v2/$1 +targettype x86-64-v3 baselib +^/usr/lib64/(.*\.so.*)$ -> /usr/lib64/glibc-hwcaps/x86-64-v3/$1 +targettype x86-64-v4 baselib +^/usr/lib64/(.*\.so.*)$ -> /usr/lib64/glibc-hwcaps/x86-64-v4/$1 +targettype x86-64-v2 requires "<match1> = <version>-<release>" +targettype x86-64-v2 autoreqprov off +targettype x86-64-v2 supplements "(<match1> = <version> and patterns-glibc-hwcaps-x86_64-v2)" +targettype x86-64-v3 requires "<match1> = <version>-<release>" +targettype x86-64-v3 autoreqprov off +targettype x86-64-v3 supplements "(<match1> = <version> and patterns-glibc-hwcaps-x86_64-v3)" +targettype x86-64-v4 requires "<match1> = <version>-<release>" +targettype x86-64-v4 autoreqprov off +targettype x86-64-v4 supplements "(<match1> = <version> and patterns-glibc-hwcaps-x86_64-v4)" post "/sbin/ldconfig" package /(.*)-debuginfo$/ targetname <match1>-<targettype>-debuginfo +/usr/lib/debug/(.*/)?lib(64|ilp32)?/.*\.(so\..*|so|o|a|la)(-.*-.*\..*)?\.debug$ +/usr/lib/debug/\.build-id/.* +targettype x86-64-v2 -/usr/lib/debug/\.build-id/.* +targettype x86-64-v3 -/usr/lib/debug/\.build-id/.* +targettype x86-64-v4 -/usr/lib/debug/\.build-id/.* +targettype x86-64-v2 +^/usr/lib/debug/usr/lib64/(.*\.(so\..*|so|o|a|la)(-.*-.*\..*)?\.debug)$ -> /usr/lib/debug/usr/lib64/glibc-hwcaps/x86-64-v2/$1 +targettype x86-64-v3 +^/usr/lib/debug/usr/lib64/(.*\.(so\..*|so|o|a|la)(-.*-.*\..*)?\.debug)$ -> /usr/lib/debug/usr/lib64/glibc-hwcaps/x86-64-v3/$1 +targettype x86-64-v4 +^/usr/lib/debug/usr/lib64/(.*\.(so\..*|so|o|a|la)(-.*-.*\..*)?\.debug)$ -> /usr/lib/debug/usr/lib64/glibc-hwcaps/x86-64-v4/$1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20221118/build new/obs-build-20230105/build --- old/obs-build-20221118/build 2022-11-18 17:09:21.000000000 +0100 +++ new/obs-build-20230105/build 2023-01-05 13:17:01.000000000 +0100 @@ -1799,7 +1799,7 @@ if test -e _service; then echo "Running build time source services..." - $BUILD_DIR/runservices --buildroot "$BUILD_ROOT" || cleanup_and_exit 1 + HOME=/root $BUILD_DIR/runservices --buildroot "$BUILD_ROOT" || cleanup_and_exit 1 fi # get rid of old src dir, it is no longer needed and just wastes space @@ -1898,7 +1898,6 @@ # RPM specific post checks are in /usr/lib/build/checks if test -n "$RPMS" -a -d "$BUILD_ROOT/usr/lib/build/checks" ; then - export DO_RPM_REMOVE=true # workaround for broken 13.1 check scripts which umount /proc if test -n "$RUNNING_IN_VM" -a "$BUILD_ROOT" = / ; then umount -n $BUILD_ROOT/proc/sys/fs/binfmt_misc 2>/dev/null @@ -1954,6 +1953,13 @@ create_baselibs fi +for SCRIPT in $BUILD_ROOT/usr/lib/build/post-mkbaselibs-checks/* ; do + if test -x "$SCRIPT"; then + echo "... running ${SCRIPT##*/}" + BUILD_ROOT=/ HOME=/root chroot "$BUILD_ROOT" "/usr/lib/build/post-mkbaselibs-checks/${SCRIPT##*/}" || cleanup_and_exit 1 + fi +done + if test -n "$MODULEMDFILE" ; then mkdir -p "$BUILD_ROOT/$TOPDIR/OTHER" find "$BUILD_ROOT/$TOPDIR/RPMS" "$BUILD_ROOT/$TOPDIR/SRPMS" -type f -name "*.rpm" | sort | $BUILD_DIR/writemodulemd ${DISTURL:+--disturl "$DISTURL"} "$MODULEMDFILE" - > "$BUILD_ROOT/$TOPDIR/OTHER/_modulemd.yaml" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20221118/build-recipe-spec new/obs-build-20230105/build-recipe-spec --- old/obs-build-20221118/build-recipe-spec 2022-11-18 17:09:21.000000000 +0100 +++ new/obs-build-20230105/build-recipe-spec 2023-01-05 13:17:01.000000000 +0100 @@ -34,6 +34,19 @@ chown -hR "$ABUILD_UID:$ABUILD_GID" "$BUILD_ROOT$TOPDIR" } +spec_get_buildtarget() { + local args=() + if test -n "$BUILD_FLAVOR" ; then + args[${#args[@]}]="--buildflavor" + args[${#args[@]}]="$BUILD_FLAVOR" + fi + if test -n "$OBS_PACKAGE" ; then + args[${#args[@]}]="--obspackage" + args[${#args[@]}]="$OBS_PACKAGE" + fi + queryrecipe "${args[@]}" --dist "$BUILD_DIST" --configdir "$CONFIG_DIR" --archpath "$BUILD_ARCH" "$BUILD_ROOT$TOPDIR/SOURCES/$RECIPEFILE" buildtarget +} + recipe_prepare_spec() { # fixup specfile args=() @@ -56,22 +69,6 @@ substitutedeps "${args[@]}" --root "$BUILD_ROOT" --dist "$BUILD_DIST" --archpath "$BUILD_ARCH" --configdir "$CONFIG_DIR" "$BUILD_ROOT$TOPDIR/SOURCES/$RECIPEFILE" "$BUILD_ROOT/.spec.new" || cleanup_and_exit 1 - # fix rpmrc if we are compiling for i686 - test -f $BUILD_ROOT/usr/lib/rpm/rpmrc_i586 && mv $BUILD_ROOT/usr/lib/rpm/rpmrc_i586 $BUILD_ROOT/usr/lib/rpm/rpmrc - if test -e $BUILD_ROOT/usr/lib/rpm/rpmrc -a "$BUILD_ARCH" != "${BUILD_ARCH#i686}" ; then - mv $BUILD_ROOT/usr/lib/rpm/rpmrc $BUILD_ROOT/usr/lib/rpm/rpmrc_i586 - sed -e 's/^buildarchtranslate: athlon.*/buildarchtranslate: athlon: i686/' -e 's/^buildarchtranslate: i686.*/buildarchtranslate: i686: i686/' < $BUILD_ROOT/usr/lib/rpm/rpmrc_i586 > $BUILD_ROOT/usr/lib/rpm/rpmrc - fi - - # extract optflags from configuration - queryconfig --dist "$BUILD_DIST" --configdir "$CONFIG_DIR" --archpath "$BUILD_ARCH" optflags ${BUILD_DEBUG:+debug} > $BUILD_ROOT/root/.rpmrc - test $BUILD_USER = abuild && cp -p $BUILD_ROOT/root/.rpmrc $BUILD_ROOT/home/abuild/.rpmrc - - if test -z "$ABUILD_TARGET"; then - ABUILD_TARGET=$(queryconfig target --dist "$BUILD_DIST" --configdir "$CONFIG_DIR" --archpath "$BUILD_ARCH" ) - test -z "$ABUILD_TARGET" || echo "build target is $ABUILD_TARGET" - fi - # report specfile changes if test -f $BUILD_ROOT/.spec.new ; then if ! cmp -s $BUILD_ROOT$TOPDIR/SOURCES/$RECIPEFILE $BUILD_ROOT/.spec.new ; then @@ -86,6 +83,23 @@ rm -f $BUILD_ROOT/.spec.new fi fi + + # fix rpmrc if we are compiling for i686 + test -f $BUILD_ROOT/usr/lib/rpm/rpmrc_i586 && mv $BUILD_ROOT/usr/lib/rpm/rpmrc_i586 $BUILD_ROOT/usr/lib/rpm/rpmrc + if test -e $BUILD_ROOT/usr/lib/rpm/rpmrc -a "$BUILD_ARCH" != "${BUILD_ARCH#i686}" ; then + mv $BUILD_ROOT/usr/lib/rpm/rpmrc $BUILD_ROOT/usr/lib/rpm/rpmrc_i586 + sed -e 's/^buildarchtranslate: athlon.*/buildarchtranslate: athlon: i686/' -e 's/^buildarchtranslate: i686.*/buildarchtranslate: i686: i686/' < $BUILD_ROOT/usr/lib/rpm/rpmrc_i586 > $BUILD_ROOT/usr/lib/rpm/rpmrc + fi + + # extract optflags from configuration + queryconfig --dist "$BUILD_DIST" --configdir "$CONFIG_DIR" --archpath "$BUILD_ARCH" optflags ${BUILD_DEBUG:+debug} > $BUILD_ROOT/root/.rpmrc + test $BUILD_USER = abuild && cp -p $BUILD_ROOT/root/.rpmrc $BUILD_ROOT/home/abuild/.rpmrc + + if test -z "$ABUILD_TARGET"; then + ABUILD_TARGET=$(spec_get_buildtarget) + test -z "$ABUILD_TARGET" && ABUILD_TARGET=$(queryconfig target --dist "$BUILD_DIST" --configdir "$CONFIG_DIR" --archpath "$BUILD_ARCH" ) + test -z "$ABUILD_TARGET" || echo "build target is $ABUILD_TARGET" + fi } spec_is_empty_dir() { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20221118/configs/sl15.3.conf new/obs-build-20230105/configs/sl15.3.conf --- old/obs-build-20221118/configs/sl15.3.conf 2022-11-18 17:09:21.000000000 +0100 +++ new/obs-build-20230105/configs/sl15.3.conf 2023-01-05 13:17:01.000000000 +0100 @@ -1,19 +1,3 @@ -%define _project openSUSE:Leap:15.3 - -### from SUSE:SLE-15:GA -%define _repository pool - -Macros: -%vendor obs://build.opensuse.org/openSUSE:Leap -%_download_url https://download.opensuse.org/repositories -%_project openSUSE:Leap:15.3 - -### from SUSE:SLE-15:GA - -%_repository pool -:Macros - - %define gcc_version 7 # new cycle handling @@ -24,14 +8,6 @@ Constraint: hardware:cpu:flag power8 %endif -Patterntype: rpm-md ymp -%if "%_repository" == "images" -Type: kiwi -Repotype: slepool:nobuildid -Patterntype: none -Prefer: sles-release -%endif - # create conflicts for packages installed into the target image Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini Substitute: build-packages:docker python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini @@ -40,12 +16,6 @@ Substitute: system-packages:mock mock createrepo_c Substitute: system-packages:kiwi-image python3-kiwi createrepo_c tar -%if "%_project" == "SUSE:SLE-15:GA" -Macros: -%shim_enforce_ms_signature 1 -:Macros -%endif - Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15 Substitute: system-packages:kiwi-product product-builder Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper @@ -222,7 +192,6 @@ Conflict: krb5-devel:krb5-mini Conflict: krb5:krb5-mini-devel -%if "%_repository" != "images" Prefer: gettext-tools-mini gettext-runtime-mini Prefer: ghostscript-mini Prefer: krb5-mini-devel:krb5-mini @@ -246,7 +215,6 @@ Ignore: curl-mini:this-is-only-for-build-envs Ignore: libcurl-mini-devel:this-is-only-for-build-envs Ignore: libcurl4-mini:this-is-only-for-build-envs -%endif # Ring0 packages should not pull in 'info' - making the base VM smaller Ignore: binutils:info @@ -955,29 +923,8 @@ Prefer: -openssl-1_0_0 ### from SUSE:SLE-15:Update -%define _repository pool-leap-15.3 - -Macros: - -### from SUSE:SLE-15:Update - -%_repository pool-leap-15.3 -:Macros - -%if "%_project" == "SUSE:SLE-15:Update" -SingleExport: true -Repotype: rpm-md splitdebug:_debug -%endif - Buildflags: useccache:ceph -%if "%_repository" == "images" -Type: kiwi -Repotype: slepool:nobuildid -Patterntype: none -Prefer: sles-release -%endif - Prefer: ImageMagick-config-7-upstream # disabled in GA by mistake, enabling it here @@ -1019,11 +966,6 @@ :Macros -%if "%_project" != "SUSE:SLE-15:Update" -BuildFlags: excludebuild:python3-base -BuildFlags: excludebuild:python3-doc -%endif - Prefer: -alsa-devel-32bit Prefer: -atk-devel-32bit Prefer: -atkmm1_6-devel-32bit @@ -1204,17 +1146,7 @@ Prefer: -krb5-devel-32bit ### from SUSE:SLE-15-SP1:GA -%define _repository pool - -Macros: - -### from SUSE:SLE-15-SP1:GA - -%_repository pool -:Macros - Patterntype: rpm-md ymp - %define sle_version 150100 Macros: @@ -1255,11 +1187,6 @@ Prefer: go1.12 ### from SUSE:SLE-15-SP1:Update -%define _repository pool-leap-15.3 -%if "%_project" == "SUSE:SLE-15-SP1:Update" -Repotype: rpm-md splitdebug:_debug -%endif - Prefer: slurm libpmi0 slurm-config slurm-node slurm-plugins Prefer: python-pytest4 python2-pytest4 python3-pytest4 Prefer: python3-pycryptodome @@ -1272,22 +1199,8 @@ ### from SUSE:SLE-15-SP2:GA -%define _repository pool - -Macros: - -### from SUSE:SLE-15-SP2:GA - -%_repository pool -:Macros Patterntype: rpm-md ymp -%if "%_repository" == "images" -Type: kiwi -Repotype: slepool:nobuildid -Patterntype: none -Prefer: sles-release -%endif %define sle_version 150200 @@ -1386,11 +1299,6 @@ Prefer: python2-subprocess32 ### from SUSE:SLE-15-SP2:Update -%define _repository pool-leap-15.3 -%if "%_project" == "SUSE:SLE-15-SP2:Update" -Repotype: rpm-md splitdebug:_debug -%endif - Prefer: python2-pycrypto Prefer: libgnutls-devel Prefer: libQt5Test-devel libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel libQt5PrintSupport-devel libQt5Concurrent-devel @@ -1400,24 +1308,7 @@ ### from SUSE:SLE-15-SP3:GA -%define _repository pool - -Macros: - -### from SUSE:SLE-15-SP3:GA - -%_repository pool -:Macros - Patterntype: rpm-md ymp -%if "%_repository" == "images" -Type: kiwi -Repotype: slepool:nobuildid -Patterntype: none -Prefer: sles-release -Support: release-compare -BuildFlags: obsgendiff -%endif Macros: %product_libs_gcc_ver 9 @@ -1592,15 +1483,6 @@ # KEEP END from older ### from openSUSE:Backports:SLE-15-SP3 -%define _repository standard - -Macros: - -### from openSUSE:Backports:SLE-15-SP3 - -%_repository standard -:Macros - Release: bp153.<CI_CNT>.<B_CNT> Patterntype: rpm-md ymp @@ -2027,16 +1909,6 @@ # I doubt this should set to 1 - maxlin # %define _with_mono 1 -%if "%_project" == "openSUSE:Backports:SLE-15-SP3" -Macros: -%vendor openSUSE -%distribution SUSE Linux Enterprise 15 SP3 -%packager https://bugs.opensuse.org -%suse_version 1500 -%sle_version 150300 -:Macros -%endif - Macros: %is_opensuse 1 %is_backports 1 @@ -2046,224 +1918,8 @@ :Macros #BuildFlags -%if "%_project" == "openSUSE:Backports:SLE-15-SP3" -# almost are HPC build flavor which conflicting with SLE binary RPM -BuildFlags: excludebuild:python-numpy:standard -BuildFlags: excludebuild:openblas:pthreads -BuildFlags: excludebuild:openblas:serial -BuildFlags: excludebuild:openmpi:standard -BuildFlags: excludebuild:openmpi2:standard -BuildFlags: excludebuild:openmpi3:standard -BuildFlags: excludebuild:metis -BuildFlags: excludebuild:metis:gnu-hpc -BuildFlags: excludebuild:metis:serial -BuildFlags: excludebuild:mpich:standard -BuildFlags: excludebuild:mvapich2:gnu-hpc-psm -BuildFlags: excludebuild:mvapich2:gnu-hpc-psm2 -BuildFlags: excludebuild:mvapich2:psm -BuildFlags: excludebuild:mvapich2:psm2 -BuildFlags: excludebuild:mvapich2:standard -BuildFlags: excludebuild:libappindicator:gtk3 -BuildFlags: excludebuild:python-Keras-Applications:test -BuildFlags: excludebuild:timescaledb:postgresql96 -BuildFlags: excludebuild:timescaledb:postgresql11 -BuildFlags: excludebuild:suitesparse -BuildFlags: excludebuild:yast2-adcommon-python -BuildFlags: excludebuild:ldacBT -BuildFlags: excludebuild:pgaudit:postgresql12 -BuildFlags: excludebuild:pgaudit:postgresql13 -# Exclude since they are released thru subpackages -BuildFlags: excludebuild:lua-lmod:doc-pdf -BuildFlags: excludebuild:adios:gnu-mpich-hpc -BuildFlags: excludebuild:adios:gnu-mvapich2-hpc -BuildFlags: excludebuild:adios:gnu-openmpi3-hpc -BuildFlags: excludebuild:adios:gnu-openmpi4-hpc -BuildFlags: excludebuild:nu-compilers-hpc:gnu-hpc -BuildFlags: excludebuild:gnu-compilers-hpc:gnu10-hpc -BuildFlags: excludebuild:hdf5:gnu-hpc -BuildFlags: excludebuild:hdf5:gnu-mpich-hpc -BuildFlags: excludebuild:hdf5:gnu-mvapich2-hpc -BuildFlags: excludebuild:hdf5:gnu-openmpi3-hpc -BuildFlags: excludebuild:hdf5:gnu-openmpi4-hpc -BuildFlags: excludebuild:hypre:gnu-mpich-hpc -BuildFlags: excludebuild:hypre:gnu-mvapich2-hpc -BuildFlags: excludebuild:hypre:gnu-openmpi3-hpc -BuildFlags: excludebuild:hypre:gnu-openmpi4-hpc -BuildFlags: excludebuild:imb:gnu-mpich-hpc -BuildFlags: excludebuild:imb:gnu-mvapich2-hpc -BuildFlags: excludebuild:imb:gnu-openmpi3-hpc -BuildFlags: excludebuild:imb:gnu-openmpi4-hpc -BuildFlags: excludebuild:mpich:gnu-hpc -BuildFlags: excludebuild:mpich:gnu-hpc-ofi -BuildFlags: excludebuild:mumps:gnu-mpich-hpc -BuildFlags: excludebuild:mumps:gnu-mvapich2-hpc -BuildFlags: excludebuild:mumps:gnu-openmpi3-hpc -BuildFlags: excludebuild:mumps:gnu-openmpi4-hpc -BuildFlags: excludebuild:mvapich2:gnu-hpc -BuildFlags: excludebuild:netcdf-cxx4:gnu-hpc -BuildFlags: excludebuild:netcdf-fortran:gnu-mpich-hpc -BuildFlags: excludebuild:netcdf-fortran:gnu-mvapich2-hpc -BuildFlags: excludebuild:netcdf-fortran:gnu-openmpi3-hpc -BuildFlags: excludebuild:netcdf-fortran:gnu-openmpi4-hpc -BuildFlags: excludebuild:netcdf:gnu-hpc -BuildFlags: excludebuild:netcdf:gnu-mpich-hpc -BuildFlags: excludebuild:netcdf:gnu-mvapich2-hpc -BuildFlags: excludebuild:netcdf:gnu-openmpi3-hpc -BuildFlags: excludebuild:netcdf:gnu-openmpi4-hpc -BuildFlags: excludebuild:ocr:gnu-hpc -BuildFlags: excludebuild:ocr:gnu-mpich-hpc -BuildFlags: excludebuild:ocr:gnu-mvapich2-hpc -BuildFlags: excludebuild:ocr:gnu-openmpi3-hpc -BuildFlags: excludebuild:openmpi2:gnu-hpc -BuildFlags: excludebuild:openmpi3:gnu-hpc -BuildFlags: excludebuild:openmpi:gnu-hpc -BuildFlags: excludebuild:petsc:doc -BuildFlags: excludebuild:scotch:gnu-mpich-hpc -BuildFlags: excludebuild:scotch:gnu-mvapich2-hpc -BuildFlags: excludebuild:scotch:gnu-openmpi3-hpc -BuildFlags: excludebuild:scotch:gnu-openmpi4-hpc -BuildFlags: excludebuild:superlu:gnu-hpc -BuildFlags: excludebuild:trilinos:documentation-hpc -BuildFlags: excludebuild:trilinos:gnu-mpich-hpc -BuildFlags: excludebuild:trilinos:gnu-mvapich2-hpc -BuildFlags: excludebuild:trilinos:gnu-openmpi3-hpc -BuildFlags: excludebuild:trilinos:gnu-openmpi4-hpc -%ifarch x86_64 aarch64 -BuildFlags: excludebuild:python-numpy:gnu-hpc -BuildFlags: excludebuild:adios:gnu-mpich-hpc -BuildFlags: excludebuild:adios:gnu-mvapich2-hpc -BuildFlags: excludebuild:adios:gnu-openmpi3-hpc -BuildFlags: excludebuild:adios:gnu-openmpi4-hpc -BuildFlags: excludebuild:hdf5:gnu-hpc -BuildFlags: excludebuild:hdf5:gnu-mpich-hpc -BuildFlags: excludebuild:hdf5:gnu-mvapich2-hpc -BuildFlags: excludebuild:hdf5:gnu-openmpi3-hpc -BuildFlags: excludebuild:hdf5:gnu-openmpi4-hpc -BuildFlags: excludebuild:openblas:gnu-hpc -BuildFlags: excludebuild:openblas:gnu-hpc-pthreads -BuildFlags: excludebuild:openmpi:gnu-hpc -BuildFlags: excludebuild:openmpi3:gnu-hpc -BuildFlags: excludebuild:openmpi2:gnu-hpc -BuildFlags: excludebuild:hypre:gnu-mpich-hpc -BuildFlags: excludebuild:hypre:gnu-mvapich2-hpc -BuildFlags: excludebuild:hypre:gnu-openmpi3-hpc -BuildFlags: excludebuild:hypre:gnu-openmpi4-hpc -BuildFlags: excludebuild:mumps:gnu-mpich-hpc -BuildFlags: excludebuild:mumps:gnu-mvapich2-hpc -BuildFlags: excludebuild:mumps:gnu-openmpi3-hpc -BuildFlags: excludebuild:mumps:gnu-openmpi4-hpc -BuildFlags: excludebuild:imb:gnu-mpich-hpc -BuildFlags: excludebuild:imb:gnu-mvapich2-hpc -BuildFlags: excludebuild:imb:gnu-openmpi3-hpc -BuildFlags: excludebuild:imb:gnu-openmpi4-hpc -BuildFlags: excludebuild:scalapack:gnu-mpich-hpc -BuildFlags: excludebuild:scalapack:gnu-mvapich2-hpc -BuildFlags: excludebuild:scalapack:gnu-openmpi3-hpc -BuildFlags: excludebuild:scalapack:gnu-openmpi4-hpc -BuildFlags: excludebuild:ocr:gnu-hpc -BuildFlags: excludebuild:ocr:gnu-mpich-hpc -BuildFlags: excludebuild:ocr:gnu-mvapich2-hpc -BuildFlags: excludebuild:ocr:gnu-openmpi3-hpc -BuildFlags: excludebuild:mpich:gnu-hpc -BuildFlags: excludebuild:mpich:gnu-hpc-ofi -BuildFlags: excludebuild:mvapich2:gnu-hpc -BuildFlags: excludebuild:netcdf:gnu-hpc -BuildFlags: excludebuild:netcdf:gnu-mpich-hpc -BuildFlags: excludebuild:netcdf:gnu-mvapich2-hpc -BuildFlags: excludebuild:netcdf:gnu-openmpi3-hpc -BuildFlags: excludebuild:netcdf:gnu-openmpi4-hpc -BuildFlags: excludebuild:petsc:doc -BuildFlags: excludebuild:petsc:gnu-mpich-hpc -BuildFlags: excludebuild:petsc:gnu-mvapich2-hpc -BuildFlags: excludebuild:petsc:gnu-openmpi3-hpc -BuildFlags: excludebuild:petsc:gnu-openmpi4-hpc -BuildFlags: excludebuild:scotch:gnu-mpich-hpc -BuildFlags: excludebuild:scotch:gnu-mvapich2-hpc -BuildFlags: excludebuild:scotch:gnu-openmpi3-hpc -BuildFlags: excludebuild:scotch:gnu-openmpi4-hpc -BuildFlags: excludebuild:superlu:gnu-hpc -BuildFlags: excludebuild:trilinos:documentation-hpc -BuildFlags: excludebuild:trilinos:gnu-mpich-hpc -BuildFlags: excludebuild:trilinos:gnu-mvapich2-hpc -BuildFlags: excludebuild:trilinos:gnu-openmpi3-hpc -BuildFlags: excludebuild:trilinos:gnu-openmpi4-hpc -BuildFlags: excludebuild:netcdf-cxx4:gnu-hpc -BuildFlags: excludebuild:netcdf-fortran:gnu-mpich-hpc -BuildFlags: excludebuild:netcdf-fortran:gnu-mvapich2-hpc -BuildFlags: excludebuild:netcdf-fortran:gnu-openmpi3-hpc -BuildFlags: excludebuild:netcdf-fortran:gnu-openmpi4-hpc -BuildFlags: excludebuild:gnu-compilers-hpc:gnu-hpc -BuildFlags: excludebuild:gnu-compilers-hpc:gnu10-hpc -%endif -%ifarch aarch64 ppc64le s390x -BuildFlags: excludebuild:openblas:openmp -%endif -%ifarch x86_64 ppc64le s390x -BuildFlags: excludebuild:fish -BuildFlags: excludebuild:fish3 -BuildFlags: excludebuild:umoci -%endif -%ifarch ppc64le s390x -BuildFlags: excludebuild:libdfp -%endif -%ifarch s390x -BuildFlags: excludebuild:smc-tools -BuildFlags: excludebuild:snipl -BuildFlags: excludebuild:yast2-reipl -BuildFlags: excludebuild:yast2-cio -%endif -%ifarch ppc64le -BuildFlags: excludebuild:sdcc -%endif - -# this is onlybuild -%ifarch i586 i686 -BuildFlags: onlybuild:FAudio -BuildFlags: onlybuild:SDL2_gfx -BuildFlags: onlybuild:SDL2_image -BuildFlags: onlybuild:SDL2_mixer -BuildFlags: onlybuild:SDL2_net -BuildFlags: onlybuild:SDL2_ttf -BuildFlags: onlybuild:SDL_Pango -BuildFlags: onlybuild:SDL_gfx -BuildFlags: onlybuild:SDL_image -BuildFlags: onlybuild:SDL_mixer -BuildFlags: onlybuild:SDL_net -BuildFlags: onlybuild:SDL_sound -BuildFlags: onlybuild:SDL_ttf -BuildFlags: onlybuild:SDLmm -BuildFlags: onlybuild:Regina-REXX -BuildFlags: onlybuild:catcodec -BuildFlags: onlybuild:fluidsynth -BuildFlags: onlybuild:libbs2b -BuildFlags: onlybuild:libmikmod -BuildFlags: onlybuild:libtiger -BuildFlags: onlybuild:libmediainfo -BuildFlags: onlybuild:libzen -BuildFlags: onlybuild:llvm -BuildFlags: onlybuild:opusfile -BuildFlags: onlybuild:oxygen-gtk2 -BuildFlags: onlybuild:ubuntu-fonts -BuildFlags: onlybuild:wine -BuildFlags: onlybuild:wine:staging -BuildFlags: onlybuild:libdbusmenu:gtk2 -BuildFlags: onlybuild:libdbusmenu:gtk3 -%endif -%endif -### from openSUSE:Leap:15.3 -%define _repository standard - -Macros: - -%distribution openSUSE:Leap:15.3 -%_project openSUSE:Leap:15.3 - ### from openSUSE:Leap:15.3 -%_repository standard -:Macros - - Release: <CI_CNT>.<B_CNT> spec:lp153.<CI_CNT>.<B_CNT> # uncomment before RC phase to get aaa_base-malloccheck etc. @@ -2279,38 +1935,16 @@ #Substitute: kiwi-packagemanager:instsource product-builder-plugin-openSUSE Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed -%if "%_repository" == "images" -Type: kiwi -Repotype: staticlinks -Patterntype: none -Prefer: openSUSE-release -Support: release-compare -BuildFlags: obsgendiff -%endif - # debug tools for local osc debugging Substitute: obs:cli_debug_packages gdb vim strace less rzsz # # vendor related # -%if "%_project" == "openSUSE:Leap:15.3" || "%_project" == "openSUSE:Leap:15.3:NonFree" -Repotype: none - -Macros: - -%vendor openSUSE -%distribution openSUSE Leap 15.3 -%packager https://bugs.opensuse.org -:Macros -%endif # do not pull rpmlint-Factory-strict unless openSUSE:Leap:15.3 # not sure this would work as my expectation - maxlin Support: !rpmlint-Factory-strict -%if "%_project" == "openSUSE:Leap:15.3" -Support: rpmlint-Factory-strict -%endif # temporary for bootstrap # Support: !rpmlint-mini !rpmlint-Factory !rpmlint-Factory-strict @@ -2479,15 +2113,6 @@ %_vendor suse :Macros - -%if "%_project" == "openSUSE:Leap:15.3" -%ifarch i586 i686 -BuildFlags: onlybuild:gstreamer-plugins-bad -BuildFlags: onlybuild:rpmlint-mini -%endif -%endif - - RepoURL: https://download.opensuse.org/distribution/leap/15.3/repo/oss RegistryURL: https://registry.opensuse.org diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20221118/dist/build.changes new/obs-build-20230105/dist/build.changes --- old/obs-build-20221118/dist/build.changes 2022-11-18 17:09:21.000000000 +0100 +++ new/obs-build-20230105/dist/build.changes 2023-01-05 13:17:01.000000000 +0100 @@ -1,4 +1,18 @@ ------------------------------------------------------------------- +Mon Jan 2 08:09:43 UTC 2023 - Adrian Schröter <adr...@suse.de> + +- configure mkbaselibs to create glibc-hwcaps baselibs as well +- Better filetype detection for temp changes files +- Add hook to run checks after mkbaselibs run +- Delete leftover multilinedefine variable definition +- Support multiline macros in the config's macro sections +- Support #!BuildConstraint lines +- Support #!BuildTarget in spec files to set the build target + (as workaround of broken BuildArch in rpm since 2001) +- Support a regexp for file renames +- Set home to /root when running build time services + +------------------------------------------------------------------- Fri Nov 18 15:34:56 UTC 2022 - Adrian Schröter <adr...@suse.de> - INCOMPATIBLE CHANGE: get rid off the power8 cpu limitation (#889) on powerpc diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20221118/mkbaselibs new/obs-build-20230105/mkbaselibs --- old/obs-build-20221118/mkbaselibs 2022-11-18 17:09:21.000000000 +0100 +++ new/obs-build-20230105/mkbaselibs 2023-01-05 13:17:01.000000000 +0100 @@ -372,10 +372,9 @@ # Used for each package by sub parse_config { - my $target = shift; - my $pkgname = shift; - my $pkgver = shift; + my ($target, $pkgname, $pkgver, $pkgrel, $pkgepoch) = @_; + my $pkgevr = $pkgepoch ? "$pkgepoch:$pkgver-$pkgrel" : "$pkgver-$pkgrel"; my $pkghasmatched; my $pkgmatches = 1; @@ -418,6 +417,8 @@ s/\<targetarch\>/$targetarch/g; s/\<name\>/$pkgname/g; s/\<version\>/$pkgver/g; + s/\<release\>/$pkgrel/g; + s/\<evr\>/$pkgevr/g; s/\<prefix\>/$prefix/g; s/\<extension\>/$extension/g; s/\<configdir\>/$configdir/g; @@ -569,7 +570,7 @@ } for my $target (@targets) { - next unless parse_config($target, $res{'NAME'}->[0], $res{'VERSION'}->[0]); + next unless parse_config($target, $res{'NAME'}->[0], $res{'VERSION'}->[0], $res{'RELEASE'}->[0], ($res{'EPOCH'} || [])->[0]); die("targetname not set\n") unless $targetname; $target_matched{$target} = 1; @@ -588,9 +589,15 @@ my $rr = substr($r, 1); if (substr($r, 0, 1) eq '+') { if ($rr =~ /^(.*?)\s*->\s*(.*?)$/) { - if (grep {$_ eq $1} @rpmfiles) { - $files{$1} = 1; - $moves{$1} = $2; + $rr = $1; + my $mrr = $2; + for my $f (grep {/$rr/} @rpmfiles) { + $files{$f} = 1; + $moves{$f} = $mrr; + if ($mrr =~ /\$[1-9]/) { + my @s = $f =~ /$rr/; + $moves{$f} =~ s/\$([1-9])/$s[$1 - 1]/g; + } } } else { for (grep {/$rr/} @rpmfiles) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20221118/queryconfig new/obs-build-20230105/queryconfig --- old/obs-build-20221118/queryconfig 2022-11-18 17:09:21.000000000 +0100 +++ new/obs-build-20230105/queryconfig 2023-01-05 13:17:01.000000000 +0100 @@ -45,7 +45,7 @@ shift @ARGV; $dist = shift @ARGV; next; - } elsif ($ARGV[0] eq '--archpath') { + } elsif ($ARGV[0] eq '--archpath' || $ARGV[0] eq '--arch') { shift @ARGV; $archs = shift @ARGV; next; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20221118/queryrecipe new/obs-build-20230105/queryrecipe --- old/obs-build-20221118/queryrecipe 1970-01-01 01:00:00.000000000 +0100 +++ new/obs-build-20230105/queryrecipe 2023-01-05 13:17:01.000000000 +0100 @@ -0,0 +1,88 @@ +#!/usr/bin/perl -w + +################################################################ +# +# Copyright (c) 1995-2014 SUSE Linux Products GmbH +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 or 3 as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program (see the file COPYING); if not, write to the +# Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# +################################################################ + +BEGIN { + unshift @INC, ($::ENV{'BUILD_DIR'} || '/usr/lib/build'); +} + +use strict; + +use Build; + +my ($dist, $archs, $configdir, $type, $recipe, $buildflavor, $obspackage); +$buildflavor = ''; + +$configdir = ($::ENV{'BUILD_DIR'} || '/usr/lib/build') . '/configs'; + +while (@ARGV) { + if ($ARGV[0] eq '--dist') { + shift @ARGV; + $dist = shift @ARGV; + next; + } elsif ($ARGV[0] eq '--archpath' || $ARGV[0] eq '--arch') { + shift @ARGV; + $archs = shift @ARGV; + next; + } elsif ($ARGV[0] eq '--configdir') { + shift @ARGV; + $configdir = shift @ARGV; + next; + } elsif ($ARGV[0] eq '--buildflavor') { + shift @ARGV; + $buildflavor = shift @ARGV; + next; + } elsif ($ARGV[0] eq '--obspackage') { + shift @ARGV; + $obspackage = shift @ARGV; + next; + } else { + if (!defined($recipe)) { + $recipe = shift @ARGV; + } else { + $type = shift @ARGV; + } + } +} + +die("Please specify what to query\n") unless defined $recipe; + +my $cf = Build::read_config_dist($dist, $archs, $configdir); +die("Unable to read config\n") unless $cf; +$cf->{'buildflavor'} = $buildflavor if defined $buildflavor; +$cf->{'obspackage'} = $obspackage if defined $obspackage; + +my $q = Build::parse($cf, $recipe); + +if (!defined $type) { + require Data::Dumper; + print Data::Dumper::Dumper($q); + exit(0); +} +if (ref($q->{$type}) eq 'ARRAY') { + print "$_\n" for @{$q->{$type}}; +} elsif (ref($q->{$type}) eq '') { + print "$q->{$type}\n" if defined $q->{$type}; +} elsif (defined $q->{$type}) { + print "unsupported query $type\n"; + exit(1); +} + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20221118/vc new/obs-build-20230105/vc --- old/obs-build-20221118/vc 2022-11-18 17:09:21.000000000 +0100 +++ new/obs-build-20230105/vc 2023-01-05 13:17:01.000000000 +0100 @@ -118,7 +118,7 @@ touch $changelog fi -tmpfile=`mktemp -q $changelog.vctmp.XXXXXX` +tmpfile=`mktemp -q vctmp.XXXXXX.$changelog` if [ $? -ne 0 ]; then echo "$0: Can't create temp file, exiting..." exit 1