pkgsrc-Users archive

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

Re: patch for doxygen to not depend on tex



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



Home | Main Index | Thread Index | Old Index