makedepend: Commit 3dc64b0b buggy?

Christian Weisgerber naddy at mips.inka.de
Tue Nov 22 21:53:20 UTC 2022


Commit 3dc64b0b in makedepend, intended to distinguish header files
in different directories, has the unfortunate side effect that some
headers are now listed several times.  That in turn overflows the
internal MAXFILES limit in a few real-world cases.

(We ran into this on OpenBSD when building some old third party
software that uses imake, e.g. xephem.)

Compare these excerpts:

---- old output ----
atlas.o: /usr/include/stdio.h /usr/include/sys/cdefs.h
atlas.o: /usr/include/machine/cdefs.h /usr/include/sys/_null.h
atlas.o: /usr/include/sys/_types.h /usr/include/machine/_types.h
atlas.o: /usr/include/sys/types.h /usr/include/sys/endian.h
atlas.o: /usr/include/sys/_endian.h /usr/include/machine/endian.h
atlas.o: ../../libastro/P_.h ../../libastro/astro.h

---- new output ----
atlas.o: /usr/include/stdio.h /usr/include/sys/cdefs.h
atlas.o: /usr/include/machine/cdefs.h /usr/include/sys/_null.h
atlas.o: /usr/include/sys/_types.h /usr/include/machine/_types.h
atlas.o: /usr/include/sys/types.h /usr/include/sys/cdefs.h
atlas.o: /usr/include/sys/endian.h /usr/include/sys/cdefs.h
atlas.o: /usr/include/sys/_endian.h /usr/include/sys/_types.h
atlas.o: /usr/include/machine/endian.h ../../libastro/P_.h
atlas.o: ../../libastro/astro.h

-- 
Christian "naddy" Weisgerber                          naddy at mips.inka.de


More information about the xorg-devel mailing list