Subject: depcomp bug with HP-UX cc and VPATH build
From: Bruno Haible <[email-masked]>
To: [email-masked]
Date: Mon, 11 Apr 2011 02:44:48 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

The dependencies mechanism of Automake leads to a compilation failure when
used in a VPATH build (with GNU make, of course) and HP-UX cc. The failure
occurs during the third command of this command sequence:
  $ gmake
  $ gmake clean
  $ gmake
  ...
  gmake[4]: Entering directory `/tmp/testdir1/build-vpath/gllib'
  source='../../gllib/nonblocking.c' object='../../gllib/nonblocking.o' libtool=no \
  DEPDIR=.deps depmode=hp /bin/sh ../../build-aux/depcomp \
  cc -Ae -O -DHAVE_CONFIG_H -I. -I../../gllib -I..  -DGNULIB_STRICT_CHECKING=1   -g -c ../../gllib/nonblocking.c
  cpp: "", line 0: error 4066: Cannot create "../../gllib/.deps/nonblocking.TPo" file for "-M../../gllib/.deps/nonblocking.TPo" option. (No such file or directory[errno=2])
  gmake[4]: *** [../../gllib/nonblocking.o] Error 1

Relevant software in use:

$ automake --version
automake (GNU automake) 1.11.1

$ autoconf --version
autoconf (GNU Autoconf) 2.68

$ uname -sr 
HP-UX B.11.00

$ gmake --version
GNU Make version 3.79.1, by Richard Stallman and Roland McGrath.
Built for hppa1.1-hp-hpux11.00

$ what `which cc`
/opt/ansic/bin/cc:
        $Revision: 92453-07 linker linker crt0.o B.11.47 051104 $
        LINT B.11.X.35098-35101.GP CXREF B.11.X.35098-35101.GP
        HP92453-01 B.11.X.35098-35101.GP HP C Compiler
         $ PATCH/11.00:PHCO_27774  Oct  3 2002 09:45:59 $ 

How to reproduce:

- Create a gnulib testdir for module 'nonblocking'.
  $ ./gnulib-tool --create-testdir --dir=/tmp/testdir nonblocking
- Transport it to the HP-UX 11.00 machine.
- On this machine, start 'bash', then
$ export PATH=/opt/langtools/bin:$PATH
$ export CC="cc -Ae -O"
$ mkdir build-vpath
$ cd build-vpath
$ ../configure
$ gmake
$ gmake clean
$ gmake

In a build with $(builddir) = $(srcdir), there is no problem.

Bruno
-- 
In memoriam Hendrik Nicolaas Werkman <http://en.wikipedia.org/wiki/Hendrik_Nicolaas_Werkman>