summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2003-01-18 19:46:17 +0000
committerEric Andersen <andersen@codepoet.org>2003-01-18 19:46:17 +0000
commit5faa9568e41b08fa5be573662b21ecbe031f612d (patch)
treebe7f7d9f4e4a27b7fd03eacfed563f9d57b28f69
parentf5636fb2e5e0f28814114d0af98443d9187a6aca (diff)
Only include lockf64 when large file support is enabled, fixing
a problem noticed by Jeff Mock. Sorry about that. -Erik
-rw-r--r--libc/misc/file/Makefile6
-rw-r--r--libc/misc/file/lockf64.c18
2 files changed, 23 insertions, 1 deletions
diff --git a/libc/misc/file/Makefile b/libc/misc/file/Makefile
index ed31037bb..195097e92 100644
--- a/libc/misc/file/Makefile
+++ b/libc/misc/file/Makefile
@@ -24,7 +24,11 @@
TOPDIR=../../../
include $(TOPDIR)Rules.mak
-CSRC=lockf.c lockf64.c
+ifeq ($(strip $(UCLIBC_HAS_LFS)),y)
+CSRC = lockf.c lockf64.c
+else
+CSRC = lockf.c
+endif
COBJS=$(patsubst %.c,%.o, $(CSRC))
OBJS=$(COBJS)
diff --git a/libc/misc/file/lockf64.c b/libc/misc/file/lockf64.c
index 673d11397..327707ac8 100644
--- a/libc/misc/file/lockf64.c
+++ b/libc/misc/file/lockf64.c
@@ -16,6 +16,23 @@
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
+#include <features.h>
+
+#ifdef __UCLIBC_HAS_LFS__
+#if defined _FILE_OFFSET_BITS && _FILE_OFFSET_BITS != 64
+#undef _FILE_OFFSET_BITS
+#define _FILE_OFFSET_BITS 64
+#endif
+#ifndef __USE_FILE_OFFSET64
+# define __USE_FILE_OFFSET64 1
+#endif
+#ifndef __USE_LARGEFILE64
+# define __USE_LARGEFILE64 1
+#endif
+#endif
+
+#define __USE_GNU
+
#include <sys/types.h>
#include <unistd.h>
#include <fcntl.h>
@@ -83,3 +100,4 @@ int lockf64 (int fd, int cmd, off64_t len64)
return fcntl(fd, cmd, &fl);
}
+