This is a bug discovered when trying to build postgresql 9.0.3 on Redhat
Enterprise Linux 5. If env var U is set, it fails, as pointed out by
the Postgres maintainer. I guess it's autoconf 2.59, and I'm guessing
you're past that now, so possibly it has already been fixed. Baffling
bug, though.
--Tim
-------- Original Message --------
Subject: Re: [BUGS] Make fails if env var U set
Date: Wed, 13 Apr 2011 13:20:51 -0400
From: Tom Lane <t...@sss.pgh.pa.us>
To: Wallace, Timothy - 0993 - MITLL <twall...@ll.mit.edu>
CC: pgsql-b...@postgresql.org <pgsql-b...@postgresql.org>
Tim Wallace <twall...@ll.mit.edu> writes:
Version: 9.0.3
after successful configure, make fails if you have the env var "U" set.
It fails almost immediately in the src/port directory with a
nonsensical error message involving the contents of the "U" var. Unset
U and everything built fine.
So far as I can find, there is no reference to a symbol "U" in any of our
makefiles. However, there is this bit in the configure script:
ac_libobjs=
ac_ltlibobjs=
for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
# 1. Remove the extension, and $U if already installed.
ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
# 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
# will be set to the directory where LIBOBJS objects are built.
ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext"
ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo'
done
LIBOBJS=$ac_libobjs
LTLIBOBJS=$ac_ltlibobjs
I have no idea what that's trying to do, but maybe it gets confused
if U has an existing definition. Suggest you file a bug against
autoconf.
regards, tom lane