Oddly, it wouldn't work even with the CPPFLAGS set (I tried setting CFLAGS too just to be sure). I'm thinking it must be gremlins of some sort :-). Meanwhile, I've bitten the bullet and upgraded myself to PGI 10.0-1 and things seem to be compiling happily now for 1.4.1rc1.

Here's the comment I put in OMPI's configure script with regards to the offsetof problem:

# This macro checks to ensure that the compiler properly supports
# offsetof(). The PGI compilers had a problem with this macro in some
# versions of their compiler on some platforms (e.g., 9.0-1 on
# x86_64). The workaround is to use -DNO_PGI_OFFSET in these cases.
# A bug report was submitted to PGI support in late June 2009; the
# problem was apparently a trivial typo in one of their header files
# and should be fixed in subsequent releases (e.g., 9.0-2?).

I don't know the exact version of PGI 9.0-x where it was fixed, but I'm pretty sure it *was* fixed at some point. Regardless, the workaround (add -DNO_PGI_OFFSET to CPPFLAGS) should make it work for you.