Greg, I have the attached patch in my local pkgsrc tree. It reduces the latex dependency from the entire teTeX to some tex-* packages. As soon as I resolve conflicts between teTeX-texmf and doxygen's dependencies, I will commit it. I just need to import the remaining pstricks packages (tex-pst-*) before I bump teTeX-texmf's PKGREVISION. If you still think this is heavyweight, I would not object to making the latex dependencies optional/build-time only. -- Min Sik Kim
Attachment:
doxygen.diff
Description: Binary data
On Mar 18, 2011, at 11:29 AM, Greg Troxel wrote:
>
> doxygen depends on tex for two reasons:
>
> at build time, to create the doxygen manual
>
> at run time, so users can run latex on what doxygen produces
>
> The run-time dependency is unnecessary; users that want to process
> doxygen output to pdf can simply install tex. It's not like not
> depending on tex makes doxygen unable to produce latex format.
>
> The build-time dependency makes it more heavyweight to build doxygen,
> and is the usual tools/docs tradeoff.
>
> The overall motivation for change is somewhat restricted build
> environments that end up with too many packages.
>
> I've prepared a patch to add a latex option to address both, to ease the
> pain of those who would otherwise not need tex. The patch leaves it
> enabled by default
>
> So
>
> Any objections?
>
> Should I make tex a run-time dependency only, unconditionally? I
> realize it's a stretch, but the current dependency is a bit like
> making emacs depend on tex because you can export to latex and build
> from org mode.
>
> Should I make this disabled by default? In addition to theoretical
> answers, I'm curious to hear from actual doxygen users.
>
> Index: Makefile
> ===================================================================
> RCS file: /cvsroot/pkgsrc/devel/doxygen/Makefile,v
> retrieving revision 1.81
> diff -u -p -r1.81 Makefile
> --- Makefile 28 Feb 2011 14:52:44 -0000 1.81
> +++ Makefile 18 Mar 2011 18:15:22 -0000
> @@ -12,9 +12,6 @@ HOMEPAGE= http://www.doxygen.org/
> COMMENT= Documentation system for C++, Java, IDL and C
> LICENSE= gnu-gpl-v2
>
> -DEPENDS+= dvipsk-[0-9]*:../../print/dvipsk
> -DEPENDS+= texlive-pdftools-[0-9]*:../../print/texlive-pdftools
> -
> PKG_DESTDIR_SUPPORT= user-destdir
>
> TEX_ACCEPTED= teTeX3
> @@ -55,7 +52,9 @@ SUBST_SED.epstopdf= -e 's,"epstopdf","${
>
> PRIVILEGED_STAGES+= clean
>
> -INSTALL_TARGET= install install_docs
> +# Just install the binary and the man page. (If the latex option
> +# is enabled, this target will be augmented.)
> +INSTALL_TARGET= install
>
> .include "../../mk/bsd.prefs.mk"
>
> @@ -74,8 +73,8 @@ post-patch:
>
> BUILDLINK_API_DEPENDS.graphviz+= graphviz>=2.12nb1
>
> +.include "options.mk"
> .include "../../converters/libiconv/buildlink3.mk"
> .include "../../graphics/graphviz/buildlink3.mk"
> .include "../../lang/python/application.mk"
> -.include "../../mk/tex.buildlink3.mk"
> .include "../../mk/bsd.pkg.mk"
> Index: PLIST
> ===================================================================
> RCS file: /cvsroot/pkgsrc/devel/doxygen/PLIST,v
> retrieving revision 1.27
> diff -u -p -r1.27 PLIST
> --- PLIST 2 Jun 2010 04:17:02 -0000 1.27
> +++ PLIST 18 Mar 2011 18:15:22 -0000
> @@ -3,1034 +3,1034 @@ bin/doxygen
> bin/doxytag
> man/man1/doxygen.1
> man/man1/doxytag.1
> -share/doc/doxygen/doxygen_manual.pdf
> -share/doc/doxygen/examples/Makefile
> -share/doc/doxygen/examples/Makefile.in
> -share/doc/doxygen/examples/Makefile.win.in
> -share/doc/doxygen/examples/afterdoc.cfg
> -share/doc/doxygen/examples/afterdoc.h
> +${PLIST.latex}share/doc/doxygen/doxygen_manual.pdf
> +${PLIST.latex}share/doc/doxygen/examples/Makefile
> +${PLIST.latex}share/doc/doxygen/examples/Makefile.in
> +${PLIST.latex}share/doc/doxygen/examples/Makefile.win.in
> +${PLIST.latex}share/doc/doxygen/examples/afterdoc.cfg
> +${PLIST.latex}share/doc/doxygen/examples/afterdoc.h
> [many more lines omitted; basically all of share/doc/doxygen goes away]
> Index: options.mk
> ===================================================================
> RCS file: options.mk
> diff -N options.mk
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ options.mk 18 Mar 2011 18:15:22 -0000
> @@ -0,0 +1,25 @@
> +# $NetBSD$
> +#
> +PKG_OPTIONS_VAR= PKG_OPTIONS.doxygen
> +PKG_SUPPORTED_OPTIONS= latex
> +PKG_SUGGESTED_OPTIONS= latex
> +
> +.include "../../mk/bsd.options.mk"
> +
> +PLIST_VARS+= latex
> +
> +.if !empty(PKG_OPTIONS:Mlatex)
> +PLIST.latex= yes
> +
> +INSTALL_TARGET+= install_docs
> +
> +TEX_ACCEPTED= teTeX3
> +
> +# All three of these should be via USE_TOOLS. Optionally, entirely
> +# separately, tex should be a run-time dependency.
> +
> +DEPENDS+= dvipsk-[0-9]*:../../print/dvipsk
> +DEPENDS+= texlive-pdftools-[0-9]*:../../print/texlive-pdftools
> +.include "../../mk/tex.buildlink3.mk"
> +
> +.endif