Make vlc_common.h compatible with NetBSD

Disable calls that are already handled by the NetBSD libc:
 - popcount(3)
 - popcountll(3)
 - bswap16(3)
 - bswap32(3)
 - bswap64(3)

These functions were renamed to vlc_* in HEAD (vlc-4.x) and since
they are set in stone in the stable releases use ifdef NetBSD here.

This corrects fatal build issues reported on NetBSD.

Signed-off-by: Thomas Guillem <thomas@gllm.fr>
This commit is contained in:
Kamil Rytarowski 2018-03-12 15:10:00 +01:00 committed by Thomas Guillem
parent bab4c8269e
commit 535aed6be3
1 changed files with 4 additions and 0 deletions

View File

@ -556,6 +556,7 @@ static inline unsigned (ctz)(unsigned x)
#endif
}
#if !defined(__NetBSD__)
/** Bit weight */
VLC_USED
static inline unsigned (popcount)(unsigned x)
@ -589,6 +590,7 @@ static inline int (popcountll)(unsigned long long x)
return count;
#endif
}
#endif
VLC_USED
static inline unsigned (parity)(unsigned x)
@ -602,6 +604,7 @@ static inline unsigned (parity)(unsigned x)
#endif
}
#if !defined(__NetBSD__)
/** Byte swap (16 bits) */
VLC_USED
static inline uint16_t (bswap16)(uint16_t x)
@ -649,6 +652,7 @@ static inline uint64_t (bswap64)(uint64_t x)
| ((x & 0xFF00000000000000ULL) >> 56);
#endif
}
#endif
/* Integer overflow */
static inline bool uadd_overflow(unsigned a, unsigned b, unsigned *res)