Hi, thank you very much for your message.
Karl Berry <k...@freefriends.org> writes: > Hi Tomas - thanks for writing. As far as I know, there is nothing in > Automake to support extension of dependency tracking by users to new > languages. Unfortunately. > > If it's possible for you to add dependency tracking for Guile into > Automake, that would be welcome. While I would love to see Guile dependency tracking support in Automake, the Guile support itself would need to be added first, and I am not sure how do go about that. Is there some example I could try to follow how this is usually done for scripting languages? The .scm and .go files Guile have are roughly equivalent to .py and .pyc in python to give you rough idea. Currently I am doing something like the following: --8<---------------cut here---------------start------------->8--- moddir = $(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION) nobase_mod_DATA = $(SOURCES) $(NOCOMP_SOURCES) ccachedir = $(libdir)/guile/$(GUILE_EFFECTIVE_VERSION)/site-ccache nobase_ccache_DATA = $(GO_FILES) EXTRA_DIST += $(SOURCES) $(NOCOMP_SOURCES) CLEANFILES += $(GO_FILES) $(GO_FILES_TEST) guile_install_go_files = install-nobase_ccacheDATA $(guile_install_go_files): install-nobase_modDATA SUFFIXES += .scm .go --8<---------------cut here---------------end--------------->8--- I am not sure how to fit that well into the primaries. For the dependency tracking itself, I feel like my current implementation is bit too unreliable to be contributed, but I plan to keep working on it. It is bit messy without support from the compiler. > > You might like to peruse the second chapter in the automake-history manual: > > https://www.gnu.org/software/automake/history/automake-history.html#Dependency-Tracking-Evolution > > The first chapter is automake release history (skip it), but the second > chapter is all about the different approaches to dependency tracking > taken in Automake over time. The (make)Automatic Prerequisites node is > specifically mentioned; that was the first approach of dependency > tracking in automake, and it was abandoned, for reasons explained there. > > Extending to new languages is mentioned as a possible extension at > the end of the chapter, but that's all there is, a bare mention. This was a good read, I did not know there is automake-history manual. Thank you for the pointer. ^_^ The recommendations make sense, however it is bit tricky to implement without support in the compiler. It is bit funny how I have decided to cut one corner and immediately ran into one of the listed issues. :) Have a nice day, Tomas -- There are only two hard things in Computer Science: cache invalidation, naming things and off-by-one errors.