]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
2713. [port] aix/powerpc: 'asm("ics");' needs non standard assembler
authorMark Andrews <marka@isc.org>
Fri, 16 Oct 2009 04:10:06 +0000 (04:10 +0000)
committerMark Andrews <marka@isc.org>
Fri, 16 Oct 2009 04:10:06 +0000 (04:10 +0000)
                        flags.

CHANGES
configure.in

diff --git a/CHANGES b/CHANGES
index 0fe450c0d2fb4d73d04b114bb7207cab2596f45a..bf1fc69412f882ef31c6e4b3f60f593f14e585ee 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,6 @@
+2713.  [port]          aix/powerpc: 'asm("ics");' needs non standard assembler
+                       flags.
+
        --- 9.7.0b1 released ---
 
 2713.  [bug]           powerpc: atomic operations missing asm("ics") /
index 27e0d8752490070ba6240e8e86bcbdee598b7bab..6d116c4eaed9c0b6e6038dd7a92cc579280f692f 100644 (file)
@@ -18,7 +18,7 @@ AC_DIVERT_PUSH(1)dnl
 esyscmd([sed "s/^/# /" COPYRIGHT])dnl
 AC_DIVERT_POP()dnl
 
-AC_REVISION($Revision: 1.483 $)
+AC_REVISION($Revision: 1.484 $)
 
 AC_INIT(lib/dns/name.c)
 AC_PREREQ(2.59)
@@ -2431,7 +2431,37 @@ AC_ARG_ENABLE(atomic,
                        enable_atomic="autodetect")
 case "$enable_atomic" in
        yes|''|autodetect)
-               use_atomic=yes
+               case "$host" in
+               powerpc-ibm-aix*)
+                       if test "X$GCC" = "Xyes"; then
+                               AC_MSG_CHECKING([if asm("isc"); works])
+                               AC_TRY_COMPILE(,[
+                               main() { asm("ics"); exit(0); }
+                               ],
+                               [AC_MSG_RESULT(yes)
+                                use_atomic=yes],
+                               [
+                               saved_cflags="$CFLAGS"
+                               CFLAGS="$CFLAGS -Wa,-many"
+                               AC_TRY_RUN([
+                               main() { asm("ics"); exit(0); }
+                               ],
+                               [AC_MSG_RESULT([yes, required -Wa,-many])
+                                use_atomic=yes],
+                               [AC_MSG_RESULT([no, use_atomic disabled])
+                                CFLAGS="$saved_cflags"
+                                use_atomic=no],
+                               [AC_MSG_RESULT([cross compile, assume yes])
+                                CFLAGS="$saved_cflags"
+                                use_atomic=yes])
+                               ]
+                               )
+                       fi
+                       ;;
+               *)
+                       use_atomic=yes
+                       ;;
+               esac
                ;;
        no)
                use_atomic=no
@@ -2896,7 +2926,7 @@ AC_SUBST_FILE(BIND9_MAKE_RULES)
 BIND9_MAKE_RULES=$BIND9_TOP_BUILDDIR/make/rules
 
 . $srcdir/version
-BIND9_VERSION="VERSION=${MAJORVER}.${MINORVER}.${PATCHVER}${RELEASETYPE}${RELEASEVER}"
+BIND9_VERSION="VERSION=${MAJORVER}.${MINORVER}${PATCHVER:+.}${PATCHVER}${RELEASETYPE}${RELEASEVER}"
 AC_SUBST(BIND9_VERSION)
 
 if test -z "$ac_configure_args"; then