Re: test project example -help with builddir configuration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Interesting;

So in Oren's m4 file this is the target referenced for DX_CONFIG

#     .PHONY: doxygen-run doxygen-doc $(DX_PS_GOAL) $(DX_PDF_GOAL)
#
#     .INTERMEDIATE: doxygen-run $(DX_PS_GOAL) $(DX_PDF_GOAL)
#
#     doxygen-run: @DX_DOCDIR@/@PACKAGE@.tag
#
#     doxygen-doc: doxygen-run $(DX_PS_GOAL) $(DX_PDF_GOAL)
#
#     @DX_DOCDIR@/@PACKAGE@.tag: $(DX_CONFIG) $(pkginclude_HEADERS)
#         rm -rf @DX_DOCDIR@
#         $(DX_ENV) $(DX_DOXYGEN) $(srcdir)/$(DX_CONFIG)

I think it calls doxygen in the process of building target PACKAGE.tag; but it reference the srcdir relative to current.

the value of DX_CONFIG is set on the initialization command present in configure.ac:



AC_DEFUN([DX_INIT_DOXYGEN], [

# Files:
AC_SUBST([DX_PROJECT], [$1])
AC_SUBST([DX_CONFIG], [ifelse([$2], [], Doxyfile, [$2])])
AC_SUBST([DX_DOCDIR], [ifelse([$3], [], doxygen-doc, [$3])])

I don't think changing the file name is a good idea in DX_INIT_DOXYGEN so how would I change the target call above to make a builddir/doxygen.cfg and then execute it?

My thought was a conditional command

# if [ "$builddir" != "$srcdir" ] ;
#         $(DX_ENV) $(DX_DOXYGEN) $(builddir)/$(DX_CONFIG)
# elseif [ "$builddir" == "$srcdir" ]
#         $(DX_ENV) $(DX_DOXYGEN) $(srcdir)/$(DX_CONFIG)
#fi

also a conditional AC_SUBST inside configure.ac that reflects the same choice to make a builddir config if needed but keep the doxygen.cfg @srcdir@ since that is the location of the files under inspection but I haven't written a script in 5 years...so forgive my ignorance. Thoughts?

Thanks,

Dave

On 13-11-17 05:24 PM, Peter Johansson wrote:
Hi Dave,

On 11/16/2      013 02:35 PM, dave wrote:

But when i switch to a fresh build directory and then try to configure outside the sourcedir it fails with :
[dave@localhost build-hello]$ make doxygen-run
make: *** No rule to make target `../helloworld_cc-0.5/doxygen.cfg', needed by `doxygen-doc/helloworld_cc.tag'. Stop.


You set @DX_CONFIG@ to $(srcdir)/doxygen.cfg but you don't have that file, becaue you have a $(builddir)/doxygen.cfg.

Easiest is probably to change how @DX_CONFIG@ is defined, but I haven't tested.

Hope that helps,
Peter



_______________________________________________
Autoconf mailing list
Autoconf@xxxxxxx
https://lists.gnu.org/mailman/listinfo/autoconf




[Index of Archives]     [GCC Help]     [Kernel Discussion]     [RPM Discussion]     [Red Hat Development]     [Yosemite News]     [Linux USB]     [Samba]

  Powered by Linux