On Sun, Jun 02, 2013 at 02:40:28PM -0700, Barret Rhoden wrote: > On 2013-06-02 at 14:23 Alan Modra wrote: > > On Sat, Jun 01, 2013 at 10:21:16AM -0700, Barret Rhoden wrote: > > > It does not fail if the Makefile doesn't > > > modify a file that it includes. > > > > Doesn't this mean you have a make loop? > > AFAIK, make reads in the included file once, then attempts to update it > as a goal, sees it needs updated, and reincludes it since it knows it > has changed. At that point, it is up to date, and doesn't re-touch it. > > http://www.gnu.org/software/make/manual/make.html#Remaking-Makefiles
If I run make with your Makefile, it runs for varying amounts of time before invoking objdump. make -dm shows make re-execing itself many times. Quite clearly make is touching both olderfile and newerfile many times. I think you really do have an infinite loop, which for some unknown reason terminates. My hypothesis was some sort of resource starvation, which then also causes the objdump problem. On my x86_64-linux box (AMD FX-8120 8 core) rm akaros-kernel.asm; make -dm > /tmp/dump 2>&1 ls -l /tmp/dump -rw-r--r-- 1 alan alan 2055825637 Jun 2 22:00 /tmp/dump grep Re-exec /tmp/dump | wc -l 54492 On a powerpc64-linux box (old mac G5) make seems to run forever. -- Alan Modra Australia Development Lab, IBM _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils