Index: lib/bind/config.mk =================================================================== --- lib/bind/config.mk (revision 223781) +++ lib/bind/config.mk (working copy) @@ -67,6 +67,8 @@ CFLAGS+= -I${LIB_BIND_DIR} # Use the right version of the atomic.h file from lib/isc .if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" ISC_ATOMIC_ARCH= x86_32 +.elif ${MACHINE_ARCH} == "sparc64" +ISC_ATOMIC_ARCH= noatomic .else ISC_ATOMIC_ARCH= ${MACHINE_CPUARCH} .endif Index: lib/bind/isc/isc/platform.h =================================================================== --- lib/bind/isc/isc/platform.h (revision 223781) +++ lib/bind/isc/isc/platform.h (working copy) @@ -253,7 +253,14 @@ * If the "xadd" operation is available on this architecture, * ISC_PLATFORM_HAVEXADD will be defined. */ +/* + * FreeBSD local modification, preserve this over upgrades + */ +#ifndef __sparc64__ #define ISC_PLATFORM_HAVEXADD 1 +#else +#undef ISC_PLATFORM_HAVEXADD +#endif /* * If the "xaddq" operation (64bit xadd) is available on this architecture, @@ -272,18 +279,39 @@ * If the "atomic swap" operation is available on this architecture, * ISC_PLATFORM_HAVEATOMICSTORE" will be defined. */ +/* + * FreeBSD local modification, preserve this over upgrades + */ +#ifndef __sparc64__ #define ISC_PLATFORM_HAVEATOMICSTORE 1 +#else +#undef ISC_PLATFORM_HAVEATOMICSTORE +#endif /* * If the "compare-and-exchange" operation is available on this architecture, * ISC_PLATFORM_HAVECMPXCHG will be defined. */ +/* + * FreeBSD local modification, preserve this over upgrades + */ +#ifndef __sparc64__ #define ISC_PLATFORM_HAVECMPXCHG 1 +#else +#undef ISC_PLATFORM_HAVECMPXCHG +#endif /* * Define if gcc ASM extension is available */ +/* + * FreeBSD local modification, preserve this over upgrades + */ +#ifndef __sparc64__ #define ISC_PLATFORM_USEGCCASM 1 +#else +#undef ISC_PLATFORM_USEGCCASM +#endif /* * Define if Tru64 style ASM syntax must be used.