diff -Paur --no-dereference -- mtools.upstream/configure mtools/configure --- mtools.upstream/configure +++ mtools/configure @@ -3964,17 +3964,11 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char iconv (); +#include int main () { -return iconv (); +return (int) iconv; ; return 0; } diff -Paur --no-dereference -- mtools.upstream/file.c mtools/file.c --- mtools.upstream/file.c +++ mtools/file.c @@ -522,7 +522,7 @@ extern long timezone; #endif tzset(); - tzone = (long) timezone; + tzone = (long) 0; } #else tzone = 0; diff -Paur --no-dereference -- mtools.upstream/mainloop.h mtools/mainloop.h --- mtools.upstream/mainloop.h +++ mtools/mainloop.h @@ -18,7 +18,6 @@ * along with Mtools. If not, see . */ -#include #include "mtoolsDirentry.h" typedef struct bounded_string { diff -Paur --no-dereference -- mtools.upstream/mcopy.c mtools/mcopy.c --- mtools.upstream/mcopy.c +++ mtools/mcopy.c @@ -39,28 +39,12 @@ static void set_mtime(const char *target, time_t mtime) { if (target && strcmp(target, "-") && mtime != 0L) { -#ifdef HAVE_UTIMES - struct timeval tv[2]; - tv[0].tv_sec = mtime; - tv[0].tv_usec = 0; - tv[1].tv_sec = mtime; - tv[1].tv_usec = 0; - utimes(target, tv); -#else -#ifdef HAVE_UTIME -#ifndef HAVE_UTIMBUF - struct utimbuf { - time_t actime; /* access time */ - time_t modtime; /* modification time */ - }; -#endif - struct utimbuf utbuf; - - utbuf.actime = mtime; - utbuf.modtime = mtime; - utime(target, &utbuf); -#endif -#endif + struct timespec ts[2]; + ts[0].tv_sec = mtime; + ts[0].tv_nsec = 0; + ts[1].tv_sec = mtime; + ts[1].tv_nsec = 0; + utimens(target, ts); } return; } diff -Paur --no-dereference -- mtools.upstream/sysincludes.h mtools/sysincludes.h --- mtools.upstream/sysincludes.h +++ mtools/sysincludes.h @@ -397,19 +397,11 @@ /* missing functions */ #ifndef HAVE_SRANDOM -# ifdef OS_mingw32msvc -# define srandom srand -# else -# define srandom srand48 -# endif +# define srandom #endif #ifndef HAVE_RANDOM -# ifdef OS_mingw32msvc -# define random (long)rand -# else -# define random (long)lrand48 -# endif +# define random (long)arc4random #endif #ifndef HAVE_STRCHR