Hi automakers,
I was about to make a release when I discovered that distcheck suddenly
didn't work anymore. The distclean rule failed with
Making distclean in doc
make[2]: Entering directory
`/home/peterJo/projects/software/yat-0.8.x/yat-0.8.2/_build/doc'
Makefile:498: ../yat/classifier/doxygen.mk: No such file or directory
Makefile:499: ../yat/normalizer/doxygen.mk: No such file or directory
This was for a stable branch release so there had just been minor
changes in two .cc files and no changes at all wrt the build system.
After some investigation I found that Automake 1.12.2 has changed the
order directories are traversed for clean rules. I must say I find it
unexpected that behaviour like this is changed between 1.12.1 and
1.12.2. I thought this kind of changes were only introduced when bumping
versions from say 1.11 to 1.12 and not between stable releases.
The reason I got the failure is that files doxygen.mk are included into
doc/Makefile. These files are generated in the corresponding Makefile
and listed under DISTCLEANFILES so they are deleted during 'make
distclean'. As SUBDIRS in top Makefile.am is SUBDIRS = doc yat that was
not a problem before since doc was entered first during cleaning and
doc/Makefile was already gone when the doxygen.mk files were removed.
Perhaps a strange use case, but still I wanted to report it.
I think I've found a workaround so I can get out the release without
needing to downgrade Automake.
Thanks,
Peter