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

Reply via email to