Hello community, here is the log from the commit of package mono-core for openSUSE:Factory checked in at 2020-05-29 21:13:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mono-core (Old) and /work/SRC/openSUSE:Factory/.mono-core.new.3606 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mono-core" Fri May 29 21:13:40 2020 rev:127 rq:809780 version:6.8.0 Changes: -------- --- /work/SRC/openSUSE:Factory/mono-core/mono-core.changes 2020-05-22 14:18:32.149149467 +0200 +++ /work/SRC/openSUSE:Factory/.mono-core.new.3606/mono-core.changes 2020-05-29 21:13:52.178423119 +0200 @@ -1,0 +2,34 @@ +Thu May 28 07:05:06 UTC 2020 - Ismail Dönmez <idon...@suse.com> + +- Fixup mono-find-requires for v1 profiles + +------------------------------------------------------------------- +Wed May 27 09:35:05 UTC 2020 - Ismail Dönmez <idon...@suse.com> + +- Add mono-find-provides and mono-find-requires from Fedora and use + it instead. Fixes boo#1152775 + +------------------------------------------------------------------- +Tue May 26 19:57:47 UTC 2020 - Michael Gorse <mgo...@suse.com> + +- Add fix-s390x-ucontext.patch: fix the build on 15.2/s390x + (bsc#1171934). +- Add _constraints to prevent running out of disk space. + +------------------------------------------------------------------- +Sun May 24 08:07:07 UTC 2020 - Guillaume GARDET <guillaume.gar...@opensuse.org> + +- Enable roslyn on aarch64 to build additionnal tools (mdoc.exe, ...) + +------------------------------------------------------------------- +Wed Apr 29 10:05:31 UTC 2020 - Dominique Leuenberger <dims...@opensuse.org> + +- Add mono.attr and install it to %_rpmconfigdir/fileattrs: enable + the dependency scanner for rpm packages (boo#1152775). + +------------------------------------------------------------------- +Tue Apr 21 19:10:16 UTC 2020 - David Mulder <dmul...@suse.com> + +- Update to the most current mono release, 6.8.0.105. + +------------------------------------------------------------------- Old: ---- mono-6.8.0.96.tar.xz New: ---- _constraints fix-s390x-ucontext.patch mono-6.8.0.105.tar.xz mono-find-provides mono-find-requires mono.attr ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mono-core.spec ++++++ --- /var/tmp/diff_new_pack.Zpo5DH/_old 2020-05-29 21:13:54.002428617 +0200 +++ /var/tmp/diff_new_pack.Zpo5DH/_new 2020-05-29 21:13:54.002428617 +0200 @@ -33,13 +33,13 @@ %define btls no %endif -%ifarch %ix86 x86_64 %{arm} +%ifarch %ix86 x86_64 %{arm} aarch64 %define roslyn yes %else %define roslyn no %endif -%define version_suffix 96 +%define version_suffix 105 Name: mono-core Version: 6.8.0 @@ -51,6 +51,9 @@ Source0: http://download.mono-project.com/sources/mono/mono-%{version}.%{version_suffix}.tar.xz Source1: mono-core.rpmlintrc Source2: gmcs +Source3: mono.attr +Source4: mono-find-provides +Source5: mono-find-requires # ppc build segfault so exclude it ExcludeArch: ppc # PATCH-FIX-OPENSUSE remove checks for libmono in mono-find-provides and mono-find-requires scripts @@ -63,6 +66,8 @@ Patch20: xbuild-use-roslyn-vbc.patch # PATCH-FIX-OPENSUSE fix 64bit-portability-issue at exceptions-ppc.c:799 Patch21: fix-ppc-64bit-portability-issue.patch +# PATCH-FIX-UPSTREAM fix-s390x-ucontext.patch bsc#1171934 mgo...@suse.com -- fix s390x build on glibc 2.26. +Patch22: fix-s390x-ucontext.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: bison @@ -212,6 +217,7 @@ %patch20 -p1 %endif %patch21 -p1 +%patch22 -p1 %build %define _lto_cflags %{nil} @@ -277,6 +283,16 @@ %install %make_install +%if 0%{?suse_version} > 1500 +# install the rpm file attributes to arm the dependency scanner +mkdir -p %{buildroot}%{_rpmconfigdir}/fileattrs +install %{SOURCE3} %{buildroot}%{_rpmconfigdir}/fileattrs/mono.attr + +# Install custom mono-find-{provides/requires} +install -p -m755 %{SOURCE4} %{SOURCE5} %{buildroot}%{_rpmconfigdir} + +%endif + # Remove hardcoded lib directory from the config sed -i 's,\$mono_libdir/,,g' %{buildroot}%{_sysconfdir}/mono/config @@ -1268,7 +1284,7 @@ %defattr(-, root, root) %{_bindir}/aprofutil %{_prefix}/lib/mono/4.5/aprofutil.exe -%ifnarch aarch64 ppc64 ppc64le +%ifnarch ppc64 ppc64le s390x %{_prefix}/lib/mono/4.5/aprofutil.pdb %else %{_prefix}/lib/mono/4.5/aprofutil.exe.mdb @@ -1293,6 +1309,13 @@ %{_bindir}/mono-api-info %{_bindir}/mono-api-html %{_bindir}/mono-cil-strip + +%if 0%{?suse_version} > 1500 +%{_rpmconfigdir}/fileattrs/mono.attr +%{_rpmconfigdir}/mono-find-provides +%{_rpmconfigdir}/mono-find-requires +%endif + %{_bindir}/mono-find-provides %{_bindir}/mono-find-requires %{_bindir}/mono-heapviz @@ -1406,7 +1429,7 @@ %{_prefix}/lib/mono/4.5/mono-cil-strip.exe* %{_prefix}/lib/mono/4.5/mono-shlib-cop.exe* %{_prefix}/lib/mono/4.5/mono-xmltool.exe* -%ifnarch aarch64 ppc64 ppc64le +%ifnarch ppc64 ppc64le s390x %{_prefix}/lib/mono/4.5/monolinker.* %endif %{_prefix}/lib/mono/4.5/monop.exe* @@ -1559,7 +1582,7 @@ %{_mandir}/man1/monodocer.1%ext_man %{_mandir}/man1/monodocs2html.1%ext_man %{_mandir}/man5/mdoc.5%ext_man -%ifnarch aarch64 ppc64 ppc64le +%ifnarch ppc64 ppc64le s390x %{_prefix}/lib/mono/4.5/mdoc.exe* %endif %{_prefix}/lib/mono/4.5/mod.exe* ++++++ _constraints ++++++ <constraints> <hardware> <disk> <size unit="G">6</size> </disk> </hardware> </constraints> ++++++ fix-s390x-ucontext.patch ++++++ diff -urp mono-6.8.0.123.orig/mono/utils/mono-context.h mono-6.8.0.123/mono/utils/mono-context.h --- mono-6.8.0.123.orig/mono/utils/mono-context.h 2020-05-11 12:58:14.000000000 -0500 +++ mono-6.8.0.123/mono/utils/mono-context.h 2020-05-21 15:10:03.209484526 -0500 @@ -879,7 +879,7 @@ typedef struct { #include <sys/ucontext.h> -#if __GLIBC_PREREQ(2, 27) +#if __GLIBC_PREREQ(2, 26) typedef ucontext_t MonoContext; #else typedef struct ucontext MonoContext; ++++++ mono-6.8.0.96.tar.xz -> mono-6.8.0.105.tar.xz ++++++ /work/SRC/openSUSE:Factory/mono-core/mono-6.8.0.96.tar.xz /work/SRC/openSUSE:Factory/.mono-core.new.3606/mono-6.8.0.105.tar.xz differ: char 25, line 1 ++++++ mono-find-provides ++++++ #!/usr/bin/bash # # mono-find-provides # # Authors: # Ben Maurer (bmau...@ximian.com) # # (C) 2005 Novell (http://www.novell.com) # # Args: builddir buildroot libdir IFS=$'\n' filelist=($(grep -Ev '/usr/doc/|/usr/share/doc/')) monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$")) # If monodis is in the package being installed, use that one # This is to support building mono build_bindir="$2/usr/bin" build_libdir="$2$3" if [ -x $build_bindir/monodis ]; then monodis="$build_bindir/monodis" export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} elif [ -x /usr/bin/monodis ]; then monodis="/usr/bin/monodis" else exit 0; fi export MONO_SHARED_DIR=$1 for i in "${monolist[@]}"; do ($monodis --assembly $i | awk ' BEGIN { LIBNAME=""; VERSION=""; } /^Version:/ { VERSION=$2 } /^Name:/ { LIBNAME=$2 } END { if (VERSION && LIBNAME) print "mono(" LIBNAME ") = " VERSION } ') 2>/dev/null done ++++++ mono-find-requires ++++++ #!/usr/bin/bash # # mono-find-requires # # Authors: # Ben Maurer (bmau...@ximian.com) # # (C) 2005 Novell (http://www.novell.com) # # Args: builddir buildroot libdir IFS=$'\n' filelist=($(grep -Ev '/usr/doc/|/usr/share/doc/')) monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$")) # If monodis is in the package being installed, use that one # This is to support building mono build_bindir="$2/usr/bin" build_libdir="$2$3" if [ -x $build_bindir/monodis ]; then monodis="$build_bindir/monodis" export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} elif [ -x /usr/bin/monodis ]; then monodis="/usr/bin/monodis" else exit 0; fi export MONO_SHARED_DIR=$1 REQUIRES=$( for i in "${monolist[@]}"; do ($monodis --assemblyref $i | awk ' BEGIN { START=0; LIBNAME=""; VERSION=""; } (START==0) && /^[0-9]+: Version=/ { START=1; sub(/Version=/, "", $2); VERSION=$2 } (START==1) && /^\tName=/ { sub(/Name=/, "", $1); LIBNAME=$1 # Allow rpm deps to be resolved for 1.0 profile version if (VERSION=="1.0.3300.0") OP=">=" else OP="=" print "mono(" LIBNAME ") " OP " " VERSION START=0 } ') 2> /dev/null done ) PROVIDES=$( for i in "${monolist[@]}"; do ($monodis --assembly $i | awk ' BEGIN { LIBNAME=""; VERSION=""; } /^Version:/ { VERSION=$2 } /^Name:/ { LIBNAME=$2 } END { if (VERSION && LIBNAME) print "mono(" LIBNAME ") = " VERSION } ') 2>/dev/null done ) # # This is a little magic trick to get all REQUIRES that are not # in PROVIDES. While RPM functions correctly when such deps exist, # they make the metadata a bit bloated. # # Filter out dups from both lists REQUIRES=$(echo "$REQUIRES" | sort | uniq) PROVIDES=$(echo "$PROVIDES" | sort | uniq) # # Get a list of elements that exist in exactly one of PROVIDES or REQUIRES # UNIQ=$(echo "$PROVIDES $REQUIRES" | sort | uniq -u) # # Of those, only chose the ones that are in REQUIRES # echo "$UNIQ $REQUIRES" | sort | uniq -d ++++++ mono.attr ++++++ %__mono_provides %{_rpmconfigdir}/mono-find-provides %{_builddir}/%{?buildsubdir} %{buildroot} %{_libdir} %__mono_requires %{_rpmconfigdir}/mono-find-requires %{_builddir}/%{?buildsubdir} %{buildroot} %{_libdir} %__mono_magic Mono/.Net assembly