Subject: Re: build failure in libgroff
To: Chris Baird <cjb@brushtail.apana.org.au>
From: Frederick Bruckman <fredb@immanent.net>
List: netbsd-help
Date: 10/26/2003 14:57:54
On Mon, 27 Oct 2003, Chris Baird wrote:

> With about as 'pristine' current sources and building environment as I
> can manage (rsync [--delete --prvzt], near-empty /etc/mk.conf, nuked
> /usr/obj + destdir + tooldir, etc.), for the past fortnight I've had
> the following break in "./build.sh release":
>
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> i386/usr/include/g++     -nostdinc -isystem /usr/src/destdir.i386/usr/include  /usr/src/gnu/dist/groff/src/libs/libgroff/change_lf.cpp
> #    create  cmap.d
> CC=/usr/src/tooldir.NetBSD-1.6ZD-i386/bin/i386--netbsdelf-gcc /usr/src/tooldir.NetBSD-1.6ZD-i386/bin/nbmkdep -f cmap.d    -nostdinc++ -isystem-cxx  /usr/src/destdir.i386/usr/include/g++     -nostdinc -isystem /usr/src/destdir.i386/usr/include  /usr/src/gnu/dist/groff/src/libs/libgroff/cmap.cpp
> /usr/src/gnu/dist/groff/src/libs/libgroff/cmap.cpp:24:18: cmap.h: No such file or directory
> nbmkdep: compile failed.
>
> *** Failed target:  cmap.d
> *** Failed command: CC=/usr/src/tooldir.NetBSD-1.6ZD-i386/bin/i386--netbsdelf-gcc /usr/src/tooldir.NetBSD-1.6ZD-i386/bin/nbmkdep -f cmap.d -nostdinc++ -isystem-cxx /usr/src/destdir.i386/usr/include/g++ -nostdinc -isystem /usr/src/destdir.i386/usr/include /usr/src/gnu/dist/groff/src/libs/libgroff/cmap.cpp
> *** Error code 1
>
> Stop.
> nbmake: stopped in /usr/src/gnu/usr.bin/groff/src/libs/libgroff
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> For some reason, /usr/src/gnu/dist/groff/src/include/cmap.h is
> forgotten about... Can anyone suggest why this is happening?

Your compiler command line seems to be missing some fairly important
things.  Here's one from a successful build (lines wrapped by hand):

#    create  cmap.d
CC=/p/i386-current/tools/bin/i386--netbsdelf-gcc
    /p/i386-current/tools/bin/nbmkdep -f cmap.d  -DHAVE_CONFIG_H
    -I/usr/src/gnu/dist/groff/src/include
    -I/usr/src/gnu/usr.bin/groff/src/include  -nostdinc++ -isystem-cxx
    /p/i386-current/image/usr/include/g++     -nostdinc -isystem
    /p/i386-current/image/usr/include
    /usr/src/gnu/dist/groff/src/libs/libgroff/cmap.cpp

In fact, you're missing all the ${CFLAGS} settings from "Makefile.inc"
in "src/gnu/usr.bin/groff/". What happens when you try to build in that
directory directly?

    cd /usr/src/gnu/usr.bin/groff
    /usr/src/tooldir.NetBSD-1.6ZD-i386/bin/nbmake-i386 depend

Could it be something set in your environment? Maybe try

    cd /usr/src
    env -i ./build.sh release


Frederick