SHA256
1
0
forked from pool/mono-core
OBS User unknown 2007-08-03 19:47:07 +00:00 committed by Git OBS Bridge
parent 8a3eef2bdb
commit 59eb2602c8
9 changed files with 93 additions and 217 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:780987a48256e6aff4206364a59f131a9aafbd5e3aa36694380d27b1d955176c
size 17146737

3
mono-1.2.5.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ec29da2a97cb0e171928141e9a53d6b5c9e3cd6cd7b0d26f4353f8bde4d0d57a
size 17953355

View File

@ -1,114 +0,0 @@
Index: scripts/mono-find-provides.in
===================================================================
--- scripts/mono-find-provides.in (revision 76729)
+++ scripts/mono-find-provides.in (working copy)
@@ -17,19 +17,15 @@
#monolist=($(printf "%s\n" "${monolist[@]}" | egrep "/gac/"))
# Disabled... see ChangeLog
-a=`which "$0"`
-d=`dirname "$a"`
-
# Set the prefix, unless it is overriden (used when building mono rpms)
-: ${prefix=$d/..}
+: ${prefix=@prefix@}
-exec_prefix=$d/..
libdir=$prefix/@reloc_libdir@
-bindir=$d
+bindir=$prefix/bin
# Bail out if monodis or libmono is missing
if [ ! -x $bindir/monodis ] || [ ! -f $libdir/libmono.so ] ; then
- echo "monodis missing or unusable, exiting..."
+ echo "monodis missing or unusable, exiting..." 1>&2
exit 1
fi
Index: scripts/mono-find-requires.in
===================================================================
--- scripts/mono-find-requires.in (revision 76729)
+++ scripts/mono-find-requires.in (working copy)
@@ -12,22 +12,29 @@
filelist=($(grep -Ev '/usr/doc/|/usr/share/doc/'))
monolist=($(printf "%s\n" "${filelist[@]}" | egrep "\\.(exe|dll)\$"))
-a=`which "$0"`
-d=`dirname "$a"`
+# parse .config files to find which native libraries to depend on
+# (target attribute must have double quotes for this to work, ie: target="file" )
+# Add /etc/mono/config ?
+configlist=($(printf "%s\n" "${filelist[@]}" | egrep "\\.config\$"))
# Set the prefix, unless it is overriden (used when building mono rpms)
-: ${prefix=$d/..}
+: ${prefix=@prefix@}
-exec_prefix=$d/..
libdir=$prefix/@reloc_libdir@
-bindir=$d
+bindir=$prefix/bin
# Bail out if monodis or libmono is missing
if [ ! -x $bindir/monodis ] || [ ! -f $libdir/libmono.so ] ; then
- echo "monodis missing or unusable, exiting..."
+ echo "monodis missing or unusable, exiting..." 1>&2
exit 1
fi
+# special case for 64bit archs
+if test "x@reloc_libdir@" = "xlib64" ; then
+ libext="()(64bit)"
+else
+ libext=""
+fi
# set LD_LIBRARY_PATH to ensure that libmono.so is found
export LD_LIBRARY_PATH=$libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
@@ -55,6 +62,46 @@
}
') 2> /dev/null
done
+ # Parse the xml .config files to see what native binaries we call into
+ for i in "${configlist[@]}"; do
+ awk 'match($_, /<dllmap .*target=.*/) {
+ ignore=0
+ req=""
+ split($_, toks, "\"")
+ for(i=1; i <= length(toks); i++) {
+ if(toks[i] ~ /target=/) {
+ req=toks[i+1]
+ }
+ if(toks[i] ~ /os=/) {
+ negate=0
+ found=0
+
+ attr=toks[i+1]
+ if(attr ~ /^!/) {
+ attr=substr(attr, 2, length(attr)-1)
+ negate=1
+ }
+
+ split(attr, os_targets, ",")
+ for(j=1; j <= length(os_targets); j++) {
+ if(os_targets[j] == "linux") {
+ found=1
+ }
+ }
+
+ if(negate) {
+ found=!found
+ }
+ if (!found) {
+ ignore=1
+ }
+ }
+ }
+ if(!ignore) {
+ system("rpm -q --whatprovides --queryformat \"%{NAME}\n\" ""\""req"'$libext'""\"")
+ }
+ } ' $i 2>/dev/null
+ done
)
PROVIDES=$(

View File

@ -1,3 +1,43 @@
-------------------------------------------------------------------
Fri Aug 3 17:40:00 CEST 2007 - wberrier@suse.de
- Update to 1.2.5
-Fixes for IronPython and Dynamic Language Runtime
-More C# 3.0 compiler features
-2.0 support for AOT assemblies
-Several performance improvements when running IronPython
-Reduced virtual table sizes
-Optimized double to int conversions using SSE2 on x86
-Proper caching of generic methods
-IL verifier implemented
-HttpWebRequest can now be used with X.509 client certificates
-Added support X.509 Client Certificate Chains for SSL/TLS
-Fixed SSL/TLS not to require exportable private keys for
client certificates
-Implemented import and export of DSA keys CryptoAPI-compatible
BLOB (2.0)
-Added SafeBag handling to Mono.Security's PKCS#12
-Regioninfo support
-Optimized dictionary type
-New TimeZone implementation
-new 2.0 Winform controls: MaskedTextBox, ToolStripPainter,
ToolStripSystemRenderer
-Mono Cairo API has been updated, it will now expose Cairo
1.2 API entry points.
- Don't use 64bit libs on ppc64 in find-requires (runtime is 32bit,
must use 32bit libraries)
-------------------------------------------------------------------
Mon Jul 30 12:16:15 CEST 2007 - ro@suse.de
- try to use 64bit libs on ppc64 as well in find-requires
-------------------------------------------------------------------
Tue Jul 10 14:03:53 MST 2007 - wberrier@novell.com
- Build against valgrind for 10.3 and above
-------------------------------------------------------------------
Tue Jul 05 20:03:53 MST 2007 - wberrier@novell.com

View File

@ -1,5 +1,5 @@
#
# spec file for package mono-core (Version 1.2.4)
# spec file for package mono-core (Version 1.2.5)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@ -15,15 +15,10 @@ License: LGPL v2 or later
Group: Development/Languages/Mono
Summary: A .NET Runtime Environment
URL: http://go-mono.org/
Version: 1.2.4
Release: 16
Version: 1.2.5
Release: 1
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source0: mono-%{version}.tar.bz2
Patch26: mono-r78768_ppc_pointer_cast.patch
Patch28: mono-config_rpm_requires.patch
Patch29: mono-provides_fix_r76875.patch
Patch30: mono-r77377_fix_ia64_find-requires.patch
Patch31: mono-r81450_fix_ia64_find-requires.patch
ExclusiveArch: %ix86 x86_64 ppc hppa armv4l sparc s390 ia64 s390x
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Provides: mono = %{version}-%{release}
@ -48,12 +43,16 @@ Requires: libgdiplus
# pulled in when libgdiplus is installed
Recommends: libgdiplus
%endif
BuildRequires: bc glib2-devel
BuildRequires: glib2-devel
#### suse options ####
%if 0%{?suse_version}
# For some reason these weren't required in 10.2 and before... ?
%if %{suse_version} > 1020
BuildRequires: bison
# Add valgrind support for 10.3 and above on supported platforms
%ifarch i586 x86_64 ppc ppc64
BuildRequires: valgrind
%endif
%endif
%if %{sles_version} == 9
%define configure_options export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/gnome/%_lib/pkgconfig
@ -114,6 +113,7 @@ Authors:
%_bindir/gacutil
%_bindir/gmcs
%_bindir/mcs
%_bindir/smcs
%_bindir/mozroots
%_bindir/setreg
%_bindir/sn
@ -452,7 +452,8 @@ Summary: Database connectivity for Mono
Group: Development/Languages/Mono
Requires: mono-core == %version-%release
Requires: mono-data == %version-%release
Requires: sqlite2
# TODO: Disable this, until a better solution is found
#Requires: sqlite2
%description -n mono-data-sqlite
The Mono Project is an open development initiative that is working to
@ -820,6 +821,7 @@ Authors:
%_mandir/man1/al.1.gz
%_mandir/man1/mono-xmltool.1.gz
%_mandir/man1/vbnc.1.gz
%_mandir/man1/resgen.1.gz
# Shell wrappers
%_bindir/al
%_bindir/al2
@ -836,8 +838,8 @@ Authors:
%_bindir/makecert
%_bindir/mkbundle
%_bindir/mkbundle2
%_bindir/monodiet
%_bindir/monodis
%_bindir/monolinker
%_bindir/monop
%_bindir/monop2
%_bindir/mono-api-diff
@ -856,8 +858,10 @@ Authors:
%_bindir/sgen
%_bindir/signcode
%_bindir/xbuild
%_mandir/man1/monolinker.1.gz
%_prefix/lib/mono/gac/PEAPI
%_prefix/lib/mono/1.0/PEAPI.dll
%_prefix/lib/mono/1.0/monolinker.*
%_prefix/lib/mono/2.0/PEAPI.dll
%_prefix/lib/mono/gac/Microsoft.Build.Tasks
%_prefix/lib/mono/2.0/Microsoft.Build.Tasks.dll
@ -867,6 +871,7 @@ Authors:
%_prefix/lib/mono/2.0/Microsoft.Build.Utilities.dll
%_prefix/lib/mono/gac/Microsoft.Build.Engine
%_prefix/lib/mono/2.0/Microsoft.Build.Engine.dll
%_prefix/lib/mono/gac/Mono.Cecil
%_bindir/monograph
%_prefix/include/mono-1.0
%_libdir/libmono-profiler-cov.*
@ -922,21 +927,13 @@ Authors:
%dir %_prefix/lib/mono/compat-2.0
%prep
%setup -q -n mono-%{version}
%patch26
%patch28
%patch29
%patch30
%patch31
%build
# What's this for?
rm -f libgc/libtool.m4
autoreconf --force --install
autoreconf --force --install libgc
# These are only needed if there are patches to the runtime
#rm -f libgc/libtool.m4
#autoreconf --force --install
#autoreconf --force --install libgc
export CFLAGS=" $RPM_OPT_FLAGS -DKDE_ASSEMBLIES='\"/opt/kde3/%{_lib}\"' -fno-strict-aliasing"
# From the buildbuddy config
# This is set by default by autoconf, don't need it
#export CFLAGS="$CFLAGS -O2"
# distro specific configure options
%{?configure_options}
%configure \
@ -1018,6 +1015,36 @@ rm -f ./usr/lib/mono/1.0/culevel.exe*
rm -rf ${RPM_BUILD_ROOT}
%changelog
* Fri Aug 03 2007 - wberrier@suse.de
- Update to 1.2.5
-Fixes for IronPython and Dynamic Language Runtime
-More C# 3.0 compiler features
-2.0 support for AOT assemblies
-Several performance improvements when running IronPython
-Reduced virtual table sizes
-Optimized double to int conversions using SSE2 on x86
-Proper caching of generic methods
-IL verifier implemented
-HttpWebRequest can now be used with X.509 client certificates
-Added support X.509 Client Certificate Chains for SSL/TLS
-Fixed SSL/TLS not to require exportable private keys for
client certificates
-Implemented import and export of DSA keys CryptoAPI-compatible
BLOB (2.0)
-Added SafeBag handling to Mono.Security's PKCS#12
-Regioninfo support
-Optimized dictionary type
-New TimeZone implementation
-new 2.0 Winform controls: MaskedTextBox, ToolStripPainter,
ToolStripSystemRenderer
-Mono Cairo API has been updated, it will now expose Cairo
1.2 API entry points.
- Don't use 64bit libs on ppc64 in find-requires (runtime is 32bit,
must use 32bit libraries)
* Mon Jul 30 2007 - ro@suse.de
- try to use 64bit libs on ppc64 as well in find-requires
* Tue Jul 10 2007 - wberrier@novell.com
- Build against valgrind for 10.3 and above
* Thu Jul 05 2007 - wberrier@novell.com
- mono-find-requires fixes for ia64 (bnc #282877)
* Wed Jun 20 2007 - ro@suse.de

View File

@ -1,26 +0,0 @@
Index: scripts/mono-find-requires.in
===================================================================
--- scripts/mono-find-requires.in (revision 76874)
+++ scripts/mono-find-requires.in (working copy)
@@ -69,7 +69,9 @@
ignore=0
req=""
split($_, toks, "\"")
- for(i=1; i <= length(toks); i++) {
+ toks_size=0
+ for(tok in toks) { toks_size++ }
+ for(i=1; i <= toks_size; i++) {
if(toks[i] ~ /target=/) {
req=toks[i+1]
}
@@ -84,7 +86,9 @@
}
split(attr, os_targets, ",")
- for(j=1; j <= length(os_targets); j++) {
+ os_targets_size=0
+ for(os_target in os_targets) { os_targets_size++ }
+ for(j=1; j <= os_targets_size; j++) {
if(os_targets[j] == "linux") {
found=1
}

View File

@ -1,10 +0,0 @@
Index: mcs/tools/mono-shlib-cop/mono-shlib-cop.exe.config
===================================================================
--- mcs/tools/mono-shlib-cop/mono-shlib-cop.exe.config (revision 77376)
+++ mcs/tools/mono-shlib-cop/mono-shlib-cop.exe.config (revision 77377)
@@ -1,5 +1,4 @@
<configuration>
- <dllmap dll="does-not-exist" target="libc.so.6"/>
<dllmap dll="libgmodule-2.0.so" target="libgmodule-2.0.so.0"/>
<dllmap dll="libglib-2.0.so" target="libglib-2.0.so.0"/>
</configuration>

View File

@ -1,20 +0,0 @@
--- mono/io-layer/atomic.h
+++ mono/io-layer/atomic.h
@@ -475,7 +475,7 @@
return result - 1;
}
-#define InterlockedCompareExchangePointer(dest,exch,comp) InterlockedCompareExchange((volatile gint32 *)(dest), (gint32)(exch), (gint32)(comp))
+#define InterlockedCompareExchangePointer(dest,exch,comp) (gpointer)InterlockedCompareExchange((volatile gint32 *)(dest), (gint32)(exch), (gint32)(comp))
static inline gint32 InterlockedCompareExchange(volatile gint32 *dest,
gint32 exch, gint32 comp) {
@@ -504,7 +504,7 @@
: "=r" (tmp) : "0" (tmp), "b" (dest), "r" (exch): "cc", "memory");
return(tmp);
}
-#define InterlockedExchangePointer(dest,exch) InterlockedExchange((volatile gint32 *)(dest), (gint32)(exch))
+#define InterlockedExchangePointer(dest,exch) (gpointer)InterlockedExchange((volatile gint32 *)(dest), (gint32)(exch))
static inline gint32 InterlockedExchangeAdd(volatile gint32 *dest, gint32 add)
{

View File

@ -1,21 +0,0 @@
Index: scripts/mono-find-requires.in
===================================================================
--- scripts/mono-find-requires.in (revision 81444)
+++ scripts/mono-find-requires.in (working copy)
@@ -33,9 +33,16 @@
if test "x@reloc_libdir@" = "xlib64" ; then
libext="()(64bit)"
else
+ # (note, this works on ppc64 since we only have 32bit mono
libext=""
fi
+# Exceptions:
+case `uname -m` in
+ # ia64 doesn't use lib64 for 'libdir' (sles 9 rpm used to provide both... no longer)
+ ia64) libext="()(64bit)" ;;
+esac
+
# set LD_LIBRARY_PATH to ensure that libmono.so is found
export LD_LIBRARY_PATH=$libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}