summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xconfigure6
-rw-r--r--osdep/Makefile3
-rw-r--r--osdep/fseeko.c19
-rw-r--r--osdep/ftello.c19
4 files changed, 28 insertions, 19 deletions
diff --git a/configure b/configure
index 8b0ec8f5e8..c3db8a4a22 100755
--- a/configure
+++ b/configure
@@ -3439,8 +3439,10 @@ _fseeko=no
cc_check && _fseeko=yes
if test "$_fseeko" = yes ; then
_def_fseeko='#define HAVE_FSEEKO 1'
+ _need_fseeko=no
else
_def_fseeko='#undef HAVE_FSEEKO'
+ _need_fseeko=yes
fi
echores "$_fseeko"
@@ -7234,8 +7236,10 @@ _ftello=no
cc_check && _ftello=yes
if test "$_ftello" = yes ; then
_def_ftello='#define HAVE_FTELLO 1'
+ _need_ftello=no
else
_def_ftello='#undef HAVE_FTELLO'
+ _need_ftello=yes
fi
echores "$_ftello"
@@ -7479,6 +7483,8 @@ HAVE_XVMC_ACCEL = $_xvmc
HAVE_SYS_MMAN_H = _mman
+NEED_FSEEKO = $_need_fseeko
+NEED_FTELLO = $_need_ftello
NEED_GLOB = $_need_glob
NEED_SCANDIR = $_need_scandir
NEED_SETENV = $_need_setenv
diff --git a/osdep/Makefile b/osdep/Makefile
index 9865581623..d1fee0ef78 100644
--- a/osdep/Makefile
+++ b/osdep/Makefile
@@ -4,7 +4,6 @@ include ../config.mak
LIBNAME = libosdep.a
SRCS= strl.c \
- fseeko.c \
SRCS-$(HAVE_SYS_MMAN_H) += mmap_anon.c
SRCS-$(MACOSX_FINDER_SUPPORT) += macosx_finder_args.c
@@ -12,6 +11,8 @@ ifneq ($(TARGET_OS),MINGW32)
SRCS-$(STREAM_CACHE) += shmem.c
endif
+SRCS-$(NEED_FSEEKO) += fseeko.c
+SRCS-$(NEED_FTELLO) += ftello.c
SRCS-$(NEED_GETTIMEOFDAY) += gettimeofday.c
SRCS-$(NEED_SCANDIR) += scandir.c
SRCS-$(NEED_SETENV) += setenv.c
diff --git a/osdep/fseeko.c b/osdep/fseeko.c
index decbaf5c8f..7d942a1c25 100644
--- a/osdep/fseeko.c
+++ b/osdep/fseeko.c
@@ -4,13 +4,11 @@
*/
#include "config.h"
-
-#if !defined(HAVE_FSEEKO) || !defined(HAVE_FTELLO)
+
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <errno.h>
-#endif
#ifdef WIN32
#define flockfile
@@ -25,7 +23,6 @@
* This is thread-safe on BSD/OS using flockfile/funlockfile.
*/
-#ifndef HAVE_FSEEKO
int
fseeko(FILE *stream, off_t offset, int whence)
{
@@ -68,17 +65,3 @@ failure:
funlockfile(stream);
return -1;
}
-#endif
-
-
-#ifndef HAVE_FTELLO
-off_t
-ftello(FILE *stream)
-{
- fpos_t floc;
-
- if (fgetpos(stream, &floc) != 0)
- return -1;
- return floc;
-}
-#endif
diff --git a/osdep/ftello.c b/osdep/ftello.c
new file mode 100644
index 0000000000..d11710b89f
--- /dev/null
+++ b/osdep/ftello.c
@@ -0,0 +1,19 @@
+/*
+ * ftello.c
+ * 64-bit version of ftello() for systems which do not have it
+ */
+
+#include "config.h"
+
+#include <stdio.h>
+#include <sys/types.h>
+
+off_t
+ftello(FILE *stream)
+{
+ fpos_t floc;
+
+ if (fgetpos(stream, &floc) != 0)
+ return -1;
+ return floc;
+}