--- unstr/unstr.c.orig 2005-02-23 21:59:03.000000000 +0100 +++ unstr/unstr.c 2007-09-27 13:12:57.000000000 +0200 @@ -62,7 +62,15 @@ */ # include +#if defined(__FreeBSD__) # include +#elif defined(__APPLE__) && defined(__MACH__) +# include +# define be32toh ntohl +#else +# include +# define be32toh ntohl +#endif # include # include # include @@ -117,6 +125,9 @@ off_t pos; char buf[BUFSIZ]; +#ifndef __FreeBSD__ + #define be64toh(x) (((u_int64_t)be32toh(x & (u_int64_t)0x00000000FFFFFFFFULL)) << 32) | ((u_int64_t)be32toh((x & (u_int64_t)0xFFFFFFFF00000000ULL) >> 32)) +#endif for (i = 0; i < tbl->str_numstr; i++) { (void) fread(&pos, 1, sizeof pos, Dataf); (void) fseeko(Inf, be64toh(pos), 0);