Hello, I'm trying to build the documentation of BIRD 2.0.2 on Fedora and RHEL/ CentOS 7 which fails like this:
--- snipp --- + /usr/bin/make -j4 -C doc make: Entering directory `/builddir/build/BUILD/bird-2.0.2/doc' make: Leaving directory `/builddir/build/BUILD/bird-2.0.2/doc' make: *** No rule to make target `/tools/progdoc', needed by `prog.sgml'. Stop. --- snapp --- When I decided to replace "$(srcdir)" in doc/Makefile by ".." it goes further, but still fails. Replacing "$(objdir)" by "../obj" and finally replacing "$(doc-srcdir)" by "." leads to the message that bird.sgml has a loop reference (which leads to an empty bird.sgml). And when removing this target, $(o)%.sgml: $(s)%.sgml $(objdir)/.dir-stamp cp $< $@ the documentation build even succeeds. In total that's then this diff: --- snipp --- --- bird-2.0.2/doc/Makefile 2018-01-16 10:46:06.000000000 +0100 +++ bird-2.0.2/doc/Makefile.doc 2018-11-25 16:38:22.988423717 +0100 @@ -1,7 +1,7 @@ # Force rebuilds .PHONY: progspell docs progdocs userdocs -doc-srcdir := $(shell cd $(s) && pwd) +doc-srcdir = . sgml2 := $(doc-srcdir)/sgml2 docs: progdocs userdocs @@ -16,11 +16,8 @@ userdocs: $(o)bird.html $(o)bird.pdf progspell: $(o)prog.spell -$(o)prog.sgml: $(srcdir)/tools/progdoc $(objdir)/.dir-stamp - $(srcdir)/tools/progdoc $(srcdir) $@ - -$(o)%.sgml: $(s)%.sgml $(objdir)/.dir-stamp - cp $< $@ +$(o)prog.sgml: ../tools/progdoc ../obj/.dir-stamp + ../tools/progdoc .. $@ $(o)%.html: $(o)%.sgml cd $(dir $@) && $(sgml2)html $(notdir $<) --- snapp --- Do you have any pointers? Is this a bug in BIRD or is this a Fedora/RHEL build system issue? Regards, Robert