Stefan Kaltenbrunner <[EMAIL PROTECTED]> writes:
> *) why the large difference in the build-flags ?

CVS HEAD configure.in knows about icc and the release branches don't.
I think the changes were only put into HEAD because of lack of testing,
but if we have buildfarm coverage I think it'd be OK to back-port the
configure logic to the prior branches.  Any objections?

CVS HEAD configure.in:

# Some versions of GCC support some additional useful warning flags.
# Check whether they are supported, and add them to CFLAGS if so.

if test "$GCC" = yes; then

# ICC pretends to be GCC but it's lying; it doesn't support these options.
# So we have to check if "GCC" is really ICC.
AC_TRY_COMPILE([], [EMAIL PROTECTED]:@ifndef __INTEL_COMPILER
choke me
@%:@endif], [ICC=[yes]], [ICC=[no]])

  if test "$ICC" = no; then
    CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -Wpointer-arith -Winline"

    PGAC_PROG_CC_CFLAGS_OPT([-Wdeclaration-after-statement])
    PGAC_PROG_CC_CFLAGS_OPT([-Wendif-labels])
  else
    # Intel compiler has a bug/misoptimization in checking for
    # division by NAN (NaN == 0), -mp1 fixes it, so add it to the
    # CFLAGS.
    PGAC_PROG_CC_CFLAGS_OPT([-mp1])
  fi

  # Disable strict-aliasing rules; needed for gcc 3.3+
  PGAC_PROG_CC_CFLAGS_OPT([-fno-strict-aliasing])
elif test x"${CC}" = x"xlc"; then
  # AIX xlc has to have strict aliasing turned off too
  PGAC_PROG_CC_CFLAGS_OPT([-qnoansialias])
fi

8.1 equivalent code fragment:

if test "$GCC" = yes; then
  CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -Wpointer-arith -Winline"

  # Some versions of GCC support some additional useful warning flags.
  # Check whether they are supported, and add them to CFLAGS if so.
  PGAC_PROG_CC_CFLAGS_OPT([-Wdeclaration-after-statement])
  PGAC_PROG_CC_CFLAGS_OPT([-Wendif-labels])

  # Disable strict-aliasing rules; needed for gcc 3.3+
  PGAC_PROG_CC_CFLAGS_OPT([-fno-strict-aliasing])
fi

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

Reply via email to