Subject: lib/9633: build chokes in crypto-intl/lib/libroken (make includes)
To: None <gnats-bugs@gnats.netbsd.org>
From: None <itojun@itojun.org>
List: netbsd-bugs
Date: 03/17/2000 16:51:57
>Number:         9633
>Category:       lib
>Synopsis:       build chokes in crypto-intl/lib/libroken (make includes)
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    lib-bug-people (Library Bug People)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Mar 17 16:42:00 2000
>Last-Modified:
>Originator:     Jun-ichiro itojun Hagino
>Organization:
	itojun.org
>Release:        latest current, 6 hours before Sat Mar 18 00:??:?? JST 2000
>Environment:
NetBSD turmeric.itojun.org 1.4U NetBSD 1.4U (TURMERIC.v6) #20: Sat Mar 11 21:15:43 PST 2000     itojun@turmeric.itojun.org:/usr/home/itojun/NetBSD/src/sys/arch/i386/compile/TURMERIC.v6 i386

>Description:
	crypto-intl/lib/libroken/Makefile performs compilation during "make
	includes".  build chokes every time additional include files are
	referenced somewhere.  for example, we have new include file called
	"machine/endian_machdep.h" created this week.  since "make includes"
	visit crypto-intl/lib/libroken before sys/arch/ARCH/includes,
	"make include" chokes here.

	print_version.h is explicitly build in "make includes".  however,
	it seems to me that it is better to build print_version.h in
	"beforedepend".

includes ===> lib/../crypto-intl/lib/libroken
cc -O2  -Werror   -I.  -I/usr/home/itojun/NetBSD/cryptosrc-intl/crypto-intl/lib/
libroken/../../include  -I/usr/home/itojun/NetBSD/cryptosrc-intl/crypto-intl/lib
/libroken/../../dist/heimdal/lib/roken  -DHAVE_CONFIG_H -c /usr/home/itojun/NetB
SD/cryptosrc-intl/crypto-intl/lib/libroken/../../dist/heimdal/lib/roken/make-pri
nt-version.c
In file included from /usr/include/machine/endian.h:3,
                 from /usr/include/sys/types.h:50,
                 from /usr/home/itojun/NetBSD/cryptosrc-intl/crypto-intl/lib/lib
roken/../../include/config.h:1160,
                 from /usr/home/itojun/NetBSD/cryptosrc-intl/crypto-intl/lib/lib
roken/../../dist/heimdal/lib/roken/make-print-version.c:35:
/usr/include/sys/endian.h:49: machine/endian_machdep.h: No such file or director
y
*** Error code 1

Stop.
*** Error code 1

Stop.
*** Error code 1

Stop.
*** Error code 1

Stop.

>How-To-Repeat:
	make build
>Fix:
	there are several possible fixes.
	1. avoid performing builds during "make includes".  build
	   print_version.h in beforedepend.
	2. change order of SUBDIR in top-level Makefile so that kerberos-
	   related directories are visited in very last part. (there can be
	   too many sideeffects).
>Audit-Trail:
>Unformatted: