rpms/libaio/F-9 libaio-sparc.patch,NONE,1.1 libaio.spec,1.27,1.28

Dennis Gilmore ausil at fedoraproject.org
Thu Oct 2 02:35:32 UTC 2008


Author: ausil

Update of /cvs/pkgs/rpms/libaio/F-9
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv3368

Modified Files:
	libaio.spec 
Added Files:
	libaio-sparc.patch 
Log Message:
add patch with sparc support


libaio-sparc.patch:

--- NEW FILE libaio-sparc.patch ---
diff -Nur libaio-0.3.107-orig/compat-libaio-0.3.107/src/libaio.h libaio-0.3.107/compat-libaio-0.3.107/src/libaio.h
--- libaio-0.3.107-orig/compat-libaio-0.3.107/src/libaio.h	2008-01-09 14:49:12.000000000 -0600
+++ libaio-0.3.107/compat-libaio-0.3.107/src/libaio.h	2008-10-01 21:20:28.000000000 -0500
@@ -73,6 +73,14 @@
 #define PADDED(x, y)	unsigned y; x
 #define PADDEDptr(x, y) unsigned y; x
 #define PADDEDul(x, y)	unsigned y; unsigned long x
+#elif defined(__sparc__) && defined(__arch64__) /* big endian, 64 bits */
+#define PADDED(x, y)    unsigned y; x
+#define PADDEDptr(x,y)  x
+#define PADDEDul(x, y)  unsigned long x
+#elif defined(__sparc__)  /* big endian, 32 bits */
+#define PADDED(x, y)    unsigned y; x
+#define PADDEDptr(x, y) unsigned y; x
+#define PADDEDul(x, y)  unsigned y; unsigned long x
 #else
 #error	endian?
 #endif
diff -Nur libaio-0.3.107-orig/compat-libaio-0.3.107/src/syscall.h libaio-0.3.107/compat-libaio-0.3.107/src/syscall.h
--- libaio-0.3.107-orig/compat-libaio-0.3.107/src/syscall.h	2005-04-01 14:31:32.000000000 -0600
+++ libaio-0.3.107/compat-libaio-0.3.107/src/syscall.h	2008-10-01 21:20:28.000000000 -0500
@@ -22,6 +22,8 @@
 #include "syscall-s390.h"
 #elif defined(__alpha__)
 #include "syscall-alpha.h"
+#elif defined(__sparc__)
+#include "syscall-sparc.h"
 #else
 #error "add syscall-arch.h"
 #endif
diff -Nur libaio-0.3.107-orig/compat-libaio-0.3.107/src/syscall-sparc.h libaio-0.3.107/compat-libaio-0.3.107/src/syscall-sparc.h
--- libaio-0.3.107-orig/compat-libaio-0.3.107/src/syscall-sparc.h	1969-12-31 18:00:00.000000000 -0600
+++ libaio-0.3.107/compat-libaio-0.3.107/src/syscall-sparc.h	2008-10-01 21:20:28.000000000 -0500
@@ -0,0 +1,118 @@
+#include <errno.h>
+
+#define __NR_io_setup           268
+#define __NR_io_destroy         269
+#define __NR_io_submit          270
+#define __NR_io_cancel          271
+#define __NR_io_getevents       272
+
+#define io_syscall1(type,fname,sname,type1,arg1) \
+type fname(type1 arg1) \
+{ \
+long __res; \
+register long __g1 __asm__ ("g1") = __NR_##sname; \
+register long __o0 __asm__ ("o0") = (long)(arg1); \
+__asm__ __volatile__ ("t 0x10\n\t" \
+                      "bcc 1f\n\t" \
+                      "mov %%o0, %0\n\t" \
+                      "sub %%g0, %%o0, %0\n\t" \
+                      "1:\n\t" \
+                      : "=r" (__res), "=&r" (__o0) \
+                      : "1" (__o0), "r" (__g1) \
+                      : "cc"); \
+if (__res < -255 || __res >= 0) \
+        return (type) __res; \
+errno = -__res; \
+return -1; \
+}
+
+#define io_syscall2(type,fname,sname,type1,arg1,type2,arg2) \
+type fname(type1 arg1,type2 arg2) \
+{ \
+long __res; \
+register long __g1 __asm__ ("g1") = __NR_##sname; \
+register long __o0 __asm__ ("o0") = (long)(arg1); \
+register long __o1 __asm__ ("o1") = (long)(arg2); \
+__asm__ __volatile__ ("t 0x10\n\t" \
+                      "bcc 1f\n\t" \
+                      "mov %%o0, %0\n\t" \
+                      "sub %%g0, %%o0, %0\n\t" \
+                      "1:\n\t" \
+                      : "=r" (__res), "=&r" (__o0) \
+                      : "1" (__o0), "r" (__o1), "r" (__g1) \
+                      : "cc"); \
+if (__res < -255 || __res >= 0) \
+        return (type) __res; \
+errno = -__res; \
+return -1; \
+}
+
+#define io_syscall3(type,fname,sname,type1,arg1,type2,arg2,type3,arg3) \
+type fname(type1 arg1,type2 arg2,type3 arg3) \
+{ \
+long __res; \
+register long __g1 __asm__ ("g1") = __NR_##sname; \
+register long __o0 __asm__ ("o0") = (long)(arg1); \
+register long __o1 __asm__ ("o1") = (long)(arg2); \
+register long __o2 __asm__ ("o2") = (long)(arg3); \
+__asm__ __volatile__ ("t 0x10\n\t" \
+                      "bcc 1f\n\t" \
+                      "mov %%o0, %0\n\t" \
+                      "sub %%g0, %%o0, %0\n\t" \
+                      "1:\n\t" \
+                      : "=r" (__res), "=&r" (__o0) \
+                      : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__g1) \
+                      : "cc"); \
+if (__res < -255 || __res>=0) \
+        return (type) __res; \
+errno = -__res; \
+return -1; \
+}
+
+#define io_syscall4(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
+type fname (type1 arg1, type2 arg2, type3 arg3, type4 arg4) \
+{ \
+long __res; \
+register long __g1 __asm__ ("g1") = __NR_##sname; \
+register long __o0 __asm__ ("o0") = (long)(arg1); \
+register long __o1 __asm__ ("o1") = (long)(arg2); \
+register long __o2 __asm__ ("o2") = (long)(arg3); \
+register long __o3 __asm__ ("o3") = (long)(arg4); \
+__asm__ __volatile__ ("t 0x10\n\t" \
+                      "bcc 1f\n\t" \
+                      "mov %%o0, %0\n\t" \
+                      "sub %%g0, %%o0, %0\n\t" \
+                      "1:\n\t" \
+                      : "=r" (__res), "=&r" (__o0) \
+                      : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__g1) \
+                      : "cc"); \
+if (__res < -255 || __res>=0) \
+        return (type) __res; \
+errno = -__res; \
+return -1; \
+}
+
+#define io_syscall5(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4, \
+          type5,arg5) \
+type fname (type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5) \
+{ \
+long __res; \
+register long __g1 __asm__ ("g1") = __NR_##sname; \
+register long __o0 __asm__ ("o0") = (long)(arg1); \
+register long __o1 __asm__ ("o1") = (long)(arg2); \
+register long __o2 __asm__ ("o2") = (long)(arg3); \
+register long __o3 __asm__ ("o3") = (long)(arg4); \
+register long __o4 __asm__ ("o4") = (long)(arg5); \
+__asm__ __volatile__ ("t 0x10\n\t" \
+                      "bcc 1f\n\t" \
+                      "mov %%o0, %0\n\t" \
+                      "sub %%g0, %%o0, %0\n\t" \
+                      "1:\n\t" \
+                      : "=r" (__res), "=&r" (__o0) \
+                      : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__o4), "r" (__g1) \
+                      : "cc"); \
+if (__res < -255 || __res>=0) \
+        return (type) __res; \
+errno = -__res; \
+return -1; \
+}
diff -Nur libaio-0.3.107-orig/src/libaio.h libaio-0.3.107/src/libaio.h
--- libaio-0.3.107-orig/src/libaio.h	2008-01-09 14:49:12.000000000 -0600
+++ libaio-0.3.107/src/libaio.h	2008-10-01 21:13:51.000000000 -0500
@@ -73,6 +73,14 @@
 #define PADDED(x, y)	unsigned y; x
 #define PADDEDptr(x, y) unsigned y; x
 #define PADDEDul(x, y)	unsigned y; unsigned long x
+#elif defined(__sparc__) && defined(__arch64__) /* big endian, 64 bits */
+#define PADDED(x, y)    unsigned y; x
+#define PADDEDptr(x,y)  x
+#define PADDEDul(x, y)  unsigned long x
+#elif defined(__sparc__)  /* big endian, 32 bits */
+#define PADDED(x, y)    unsigned y; x
+#define PADDEDptr(x, y) unsigned y; x
+#define PADDEDul(x, y)  unsigned y; unsigned long x
 #else
 #error	endian?
 #endif
diff -Nur libaio-0.3.107-orig/src/syscall.h libaio-0.3.107/src/syscall.h
--- libaio-0.3.107-orig/src/syscall.h	2005-04-01 14:31:32.000000000 -0600
+++ libaio-0.3.107/src/syscall.h	2008-10-01 21:03:16.000000000 -0500
@@ -22,6 +22,8 @@
 #include "syscall-s390.h"
 #elif defined(__alpha__)
 #include "syscall-alpha.h"
+#elif defined(__sparc__)
+#include "syscall-sparc.h"
 #else
 #error "add syscall-arch.h"
 #endif
diff -Nur libaio-0.3.107-orig/src/syscall-sparc.h libaio-0.3.107/src/syscall-sparc.h
--- libaio-0.3.107-orig/src/syscall-sparc.h	1969-12-31 18:00:00.000000000 -0600
+++ libaio-0.3.107/src/syscall-sparc.h	2008-10-01 21:01:49.000000000 -0500
@@ -0,0 +1,118 @@
+#include <errno.h>
+
+#define __NR_io_setup           268
+#define __NR_io_destroy         269
+#define __NR_io_submit          270
+#define __NR_io_cancel          271
+#define __NR_io_getevents       272
+
+#define io_syscall1(type,fname,sname,type1,arg1) \
+type fname(type1 arg1) \
+{ \
+long __res; \
+register long __g1 __asm__ ("g1") = __NR_##sname; \
+register long __o0 __asm__ ("o0") = (long)(arg1); \
+__asm__ __volatile__ ("t 0x10\n\t" \
+                      "bcc 1f\n\t" \
+                      "mov %%o0, %0\n\t" \
+                      "sub %%g0, %%o0, %0\n\t" \
+                      "1:\n\t" \
+                      : "=r" (__res), "=&r" (__o0) \
+                      : "1" (__o0), "r" (__g1) \
+                      : "cc"); \
+if (__res < -255 || __res >= 0) \
+        return (type) __res; \
+errno = -__res; \
+return -1; \
+}
+
+#define io_syscall2(type,fname,sname,type1,arg1,type2,arg2) \
+type fname(type1 arg1,type2 arg2) \
+{ \
+long __res; \
+register long __g1 __asm__ ("g1") = __NR_##sname; \
+register long __o0 __asm__ ("o0") = (long)(arg1); \
+register long __o1 __asm__ ("o1") = (long)(arg2); \
+__asm__ __volatile__ ("t 0x10\n\t" \
+                      "bcc 1f\n\t" \
+                      "mov %%o0, %0\n\t" \
+                      "sub %%g0, %%o0, %0\n\t" \
+                      "1:\n\t" \
+                      : "=r" (__res), "=&r" (__o0) \
+                      : "1" (__o0), "r" (__o1), "r" (__g1) \
+                      : "cc"); \
+if (__res < -255 || __res >= 0) \
+        return (type) __res; \
+errno = -__res; \
+return -1; \
+}
+
+#define io_syscall3(type,fname,sname,type1,arg1,type2,arg2,type3,arg3) \
+type fname(type1 arg1,type2 arg2,type3 arg3) \
+{ \
+long __res; \
+register long __g1 __asm__ ("g1") = __NR_##sname; \
+register long __o0 __asm__ ("o0") = (long)(arg1); \
+register long __o1 __asm__ ("o1") = (long)(arg2); \
+register long __o2 __asm__ ("o2") = (long)(arg3); \
+__asm__ __volatile__ ("t 0x10\n\t" \
+                      "bcc 1f\n\t" \
+                      "mov %%o0, %0\n\t" \
+                      "sub %%g0, %%o0, %0\n\t" \
+                      "1:\n\t" \
+                      : "=r" (__res), "=&r" (__o0) \
+                      : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__g1) \
+                      : "cc"); \
+if (__res < -255 || __res>=0) \
+        return (type) __res; \
+errno = -__res; \
+return -1; \
+}
+
+#define io_syscall4(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
+type fname (type1 arg1, type2 arg2, type3 arg3, type4 arg4) \
+{ \
+long __res; \
+register long __g1 __asm__ ("g1") = __NR_##sname; \
+register long __o0 __asm__ ("o0") = (long)(arg1); \
+register long __o1 __asm__ ("o1") = (long)(arg2); \
+register long __o2 __asm__ ("o2") = (long)(arg3); \
+register long __o3 __asm__ ("o3") = (long)(arg4); \
+__asm__ __volatile__ ("t 0x10\n\t" \
+                      "bcc 1f\n\t" \
+                      "mov %%o0, %0\n\t" \
+                      "sub %%g0, %%o0, %0\n\t" \
+                      "1:\n\t" \
+                      : "=r" (__res), "=&r" (__o0) \
+                      : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__g1) \
+                      : "cc"); \
+if (__res < -255 || __res>=0) \
+        return (type) __res; \
+errno = -__res; \
+return -1; \
+}
+
+#define io_syscall5(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4, \
+          type5,arg5) \
+type fname (type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5) \
+{ \
+long __res; \
+register long __g1 __asm__ ("g1") = __NR_##sname; \
+register long __o0 __asm__ ("o0") = (long)(arg1); \
+register long __o1 __asm__ ("o1") = (long)(arg2); \
+register long __o2 __asm__ ("o2") = (long)(arg3); \
+register long __o3 __asm__ ("o3") = (long)(arg4); \
+register long __o4 __asm__ ("o4") = (long)(arg5); \
+__asm__ __volatile__ ("t 0x10\n\t" \
+                      "bcc 1f\n\t" \
+                      "mov %%o0, %0\n\t" \
+                      "sub %%g0, %%o0, %0\n\t" \
+                      "1:\n\t" \
+                      : "=r" (__res), "=&r" (__o0) \
+                      : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__o4), "r" (__g1) \
+                      : "cc"); \
+if (__res < -255 || __res>=0) \
+        return (type) __res; \
+errno = -__res; \
+return -1; \
+}


Index: libaio.spec
===================================================================
RCS file: /cvs/pkgs/rpms/libaio/F-9/libaio.spec,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- libaio.spec	2 Oct 2008 01:45:54 -0000	1.27
+++ libaio.spec	2 Oct 2008 02:35:02 -0000	1.28
@@ -1,10 +1,11 @@
 Name: libaio
 Version: 0.3.107
-Release: 2%{?dist}
+Release: 3%{?dist}
 Summary: Linux-native asynchronous I/O access library
 License: LGPL
 Group:  System Environment/Libraries
 Source: %{name}-%{version}.tar.gz
+Patch0: libaio-sparc.patch
 BuildRoot: %{_tmppath}/%{name}-root
 
 %description
@@ -27,6 +28,7 @@
 %prep
 %setup -a 0
 mv %{name}-%{version} compat-%{name}-%{version}
+%patch0 -p1
 
 %build
 # A library with a soname of 1.0.0 was inadvertantly released.  This
@@ -68,6 +70,9 @@
 %attr(0644,root,root) %{_libdir}/libaio.a
 
 %changelog
+* Wed Oct 01 2008 Dennis Gilmore <dennis at ausil.us> - 0.3.107-3
+- add patch for sparc
+
 * Wed Oct 01 2008 Dennis Gilmore <dennis at ausil.us> - 0.3.107-2
 - remove ExclusiveArch
 




More information about the fedora-extras-commits mailing list