You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/sys-block/gpart/files/gpart-0.1h-l64seek.patch

72 lines
1.3 KiB

--- gpart-0.1h.orig/src/l64seek.c
+++ gpart-0.1h/src/l64seek.c
@@ -25,30 +25,11 @@
} ostck[OSTACKLEN];
static int osptr = -1;
-#if defined(__linux__) && defined(__i386__)
-_syscall5(int,_llseek,uint,fd,ulong,hi,ulong,lo,loff_t *,res,uint,wh)
-#endif
-
-
-
off64_t l64seek(int fd,off64_t offset,int whence)
{
off64_t ret = (off64_t)-1;
-#if defined(__linux__) && defined(__i386__)
- int iret;
- unsigned long ohi, olo;
-
- ohi = (unsigned long)((offset >> 32) & 0xFFFFFFFF);
- olo = (unsigned long)(offset & 0xFFFFFFFF);
- iret = _llseek(fd,ohi,olo,&ret,whence);
- if (iret == -1)
- ret = (off64_t)-1;
-#endif
-
-#if defined(__FreeBSD__) || (defined(__linux__) && defined(__alpha__))
ret = lseek(fd,offset,whence);
-#endif
return (ret);
}
--- gpart-0.1h.orig/src/l64seek.h
+++ gpart-0.1h/src/l64seek.h
@@ -17,6 +17,8 @@
#ifndef _L64SEEK_H
#define _L64SEEK_H
+#include <sys/stat.h>
+#include <sys/types.h>
#include <unistd.h>
/*
@@ -25,19 +27,7 @@
* offsets.
*/
-
-#if defined(__linux__)
-# include <linux/unistd.h>
-# include <sys/types.h>
- typedef int64_t off64_t;
-#endif
-
-
-#if defined(__FreeBSD__)
- typedef off_t off64_t;
-#endif
-
-
+typedef loff_t off64_t;
typedef off64_t s64_t;
off64_t l64seek(int fd, off64_t offset, int whence);
@@ -45,5 +35,4 @@
int l64opush(int);
s64_t l64opop(int);
-
#endif