rpms/mono/devel mono-1.1.13.2-work-with-selinux.patch, NONE, 1.1 mono.spec, 1.27, 1.28

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Mon Feb 27 17:41:38 UTC 2006


Author: rstrode

Update of /cvs/dist/rpms/mono/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv31887

Modified Files:
	mono.spec 
Added Files:
	mono-1.1.13.2-work-with-selinux.patch 
Log Message:
- Patch from Jakub to make work with SELinux better


mono-1.1.13.2-work-with-selinux.patch:
 mono-compiler.h |   19 ++++++++++++-------
 1 files changed, 12 insertions(+), 7 deletions(-)

--- NEW FILE mono-1.1.13.2-work-with-selinux.patch ---
--- mono-1.1.13.2/mono/utils/mono-compiler.h.work-with-selinux	2006-02-27 12:38:30.000000000 -0500
+++ mono-1.1.13.2/mono/utils/mono-compiler.h	2006-02-27 12:38:46.000000000 -0500
@@ -9,10 +9,10 @@
 #ifdef HAVE_KW_THREAD
 #if HAVE_TLS_MODEL_ATTR
 
-#if defined(PIC) && defined(__x86_64__)
-#define MONO_TLS_FAST 
-#elif defined (__powerpc__)
+#if defined (__powerpc__)
 #define MONO_TLS_FAST
+#elif defined(PIC)
+#define MONO_TLS_FAST __attribute__((tls_model("initial-exec")))
 #else
 #define MONO_TLS_FAST __attribute__((tls_model("local-exec")))
 #endif
@@ -22,15 +22,20 @@
 #endif
 
 #if defined(__GNUC__) && defined(__i386__)
-#define MONO_THREAD_VAR_OFFSET(var,offset) __asm ("jmp 1f; .section writetext, \"awx\"; 1: movl $" #var "@ntpoff, %0; jmp 2f; .previous; 2:" : "=r" (offset));
+#if defined(PIC)
+#define MONO_THREAD_VAR_OFFSET(var,offset) do { int tmp; __asm ("call 1f; 1: popl %0; addl $_GLOBAL_OFFSET_TABLE_+[.-1b], %0; movl " #var "@gotntpoff(%0), %1" : "=r" (tmp), "=r" (offset)); } while (0)
+#else
+#define MONO_THREAD_VAR_OFFSET(var,offset) __asm ("movl $" #var "@ntpoff, %0" : "=r" (offset))
+#endif
 #elif defined(__x86_64__)
 #if defined(PIC)
-#define MONO_THREAD_VAR_OFFSET(var,offset) (offset) = -1
+#define MONO_THREAD_VAR_OFFSET(var,offset) do { guint64 foo;  __asm ("movq $" #var "@GOTTPOFF(%%rip), %0" : "=r" (foo)); offset
+= foo; } while (0)
 #else
-#define MONO_THREAD_VAR_OFFSET(var,offset) do { guint64 foo;  __asm ("jmp 1f; .section writetext, \"awx\"; 1: movq $" #var "@TPOFF, %0; jmp 2f; .previous; 2:" : "=a" (foo)); offset = foo; } while (0);
+#define MONO_THREAD_VAR_OFFSET(var,offset) do { guint64 foo;  __asm ("movq $" #var "@TPOFF, %0" : "=r" (foo)); offset = foo; } while (0)
 #endif
 #elif defined(__ia64__) && !defined(__INTEL_COMPILER)
-#define MONO_THREAD_VAR_OFFSET(var,offset) __asm ("addl %0 = @tprel(" #var "#), r0 ;;\n" : "=r" (offset));
+#define MONO_THREAD_VAR_OFFSET(var,offset) __asm ("addl %0 = @tprel(" #var "#), r0 ;;\n" : "=r" (offset))
 #else
 #define MONO_THREAD_VAR_OFFSET(var,offset) (offset) = -1
 #endif


Index: mono.spec
===================================================================
RCS file: /cvs/dist/rpms/mono/devel/mono.spec,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- mono.spec	12 Feb 2006 15:55:29 -0000	1.27
+++ mono.spec	27 Feb 2006 17:41:24 -0000	1.28
@@ -1,6 +1,6 @@
 Name:           mono
 Version:        1.1.13.2
-Release:        2
+Release:        3
 Summary:        a .NET runtime environment
 
 Group:          Development/Languages
@@ -14,6 +14,8 @@
 # JIT only availible on these:
 ExclusiveArch: %ix86 x86_64 ppc ia64 s390 s390x armv4l sparc
 
+Patch0: mono-1.1.13.2-work-with-selinux.patch
+
 %description
 The Mono runtime implements a JIT engine for the ECMA CLI
 virtual machine (as well as a byte code interpreter, the
@@ -217,6 +219,7 @@
 
 %prep
 %setup -q
+%patch0 -p1 -b .work-with-selinux
 
 %build
 %ifarch ia64 s390
@@ -490,6 +493,9 @@
 %gac_dll IBM.Data.DB2
 
 %changelog
+* Mon Feb 27 2006 Ray Strode <rstrode at redhat.com> - 1.1.13.2-3
+- Patch from Jakub to make work with SELinux better
+
 * Sun Feb 12 2006 Christopher Aillon <caillon at redhat.com> - 1.1.13.2-2
 - Rebuild
 




More information about the fedora-cvs-commits mailing list