Subject: Re: bug#35650: [PATCH] Improving HP-UX support

From: Paul Eggert <[email-masked]>
Date: Wed, 15 May 2019 10:59:03 -0700

On 5/14/19 2:15 PM, Osipov, Michael wrote:
>> configure:68559: checking whether this system supports stdbuf
>> configure:68586: /opt/aCC/bin/aCC -AC99 -o conftest +z -g
>> -I/opt/ports/coreutils/include -D_INCLUDE_STDC__SOURCE_199901 -b
>> -L/opt/ports/coreutils/lib/hpux32 conftest.c  >&5
>> configure:68586: $? = 0
>> configure:68591: result: yes
>
> I do not really understand the purpose of the patch as it does not
> really test for PIC/shared.

The patch alters the 'configure' script so that it's pickier about
rejecting warnings from the compiler.

The 'configure' script should be testing for -fPIC and -shared. It
should have something like this.

  $as_echo_n "checking whether this system supports stdbuf... " >&6; }
  CFLAGS="-fPIC $CFLAGS"
  LDFLAGS="-shared $LDFLAGS"
  stdbuf_supported=no
  # Note we only LINK here rather than RUN to support cross compilation
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  ...
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
    stdbuf_supported=yes
  fi

So there should be an -fPIC and a -shared in the command line, but there
isn't in the diagnostics you mentioned. This is puzzling because the
diagnostic output you mentioned in <https://debbugs.gnu.org/35650#20>
did have -fPIC and -shared. So my guess is that somehow your 'configure'
script wasn't regenerated properly after you upgraded to my recent patch.

Please investigate why that is. I suggest looking into your updated
'configure' script to see whether it matches mine in this area. You can
also try putting the shell command 'set -x' into the 'configure' where
you want more debugging output.

Or, it might be easier for you to regenerate the source code from
scratch, by running this on a GNU/Linux platform:

git clone https://git.savannah.gnu.org/git/coreutils.git
cd coreutils
./bootstrap
./configure
make dist

and then unpacking and building the resulting tarball on HP-UX.