It seems that if 'makeinfo' is missing from the system but that the timestamp of the .texi file is newer than the .info file that the .info file is removed and replaced with a zero size file. I tested this with automake 1.9.5.
I am trying to understand why what is happening is happening. I was led down this trail by problems with a Debian package that included a .diff.gz file that patched both the .texi and the .info files. Of course patch does not preserve timestamps. If patch ran fast then these files had the same timestamp. But there is a race and they might not have the same timestamp. In at least one case patch left the timestamps different. That caused the automake generated texi-to-info rule to run which removed the target .info file. The 'missing makeinfo' command ran and finding makeinfo missing it ran 'touch $file' creating a zero sized file. This was then packaged up. Everything appeared successful. I knew that 'missing makeinfo' had been called but I also knew that the patch also patched up the .info file directly so I expected the target file to be okay regardless. It was only later when I tried to install the package that install-info failed because of the zero sized .info file. Then I needed to peel the layers away until I could find out why. I can see that both the texi-to-info rule and the missing script are working together to keep going in this case by creating a zero sized target info file. So this is clearly intentional behavior. But why? It caused me a lot of work to debug why the package would fail the installation. It would have been a lot easier if the build had simply failed due to a missing makeinfo. Then I would have known right up front the problem and fixed it directly. Bob