Subject: pkg/26436: doxygen requires graphviz, which is seriously non-free
To: None <gnats-bugs@gnats.netbsd.org>
From: None <gdt@ir.bbn.com>
List: pkgsrc-bugs
Date: 07/26/2004 13:25:28
>Number:         26436
>Category:       pkg
>Synopsis:       doxygen requires graphviz, which is seriously non-free
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    pkg-manager
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Mon Jul 26 17:59:00 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator:     Greg Troxel
>Release:        NetBSD 2.0_BETA
>Organization:
        Greg Troxel <gdt@ir.bbn.com>
>Environment:
	
	
System: NetBSD call-cc.ir.bbn.com 2.0_BETA
Architecture: i386
Machine: i386
>Description:
Doxygen is free software (GPL), but the pkgsrc entry requires non-free
software to install.  While graphviz is useful with doxygen, it should
be possible, and arguably the default, to install doxygen without
requiring non-free software.

>How-To-Repeat:

Try to install doxygen.  Notice pkgsrc complain that one has to accept
the graphviz license.  Read the license and either decline to accept
or observe that in a typical corporate environment one is likely not
authorized to accept it.  Note that there is no way to install doxygen
from pkgsrc without graphviz.

>Fix:
Apply patch.  Not tested with DOXYGEN_USE_DOT=YES.

? work
Index: Makefile
===================================================================
RCS file: /NETBSD-CVS/pkgsrc/devel/doxygen/Makefile,v
retrieving revision 1.22
diff -u -r1.22 Makefile
--- Makefile	10 May 2004 00:15:49 -0000	1.22
+++ Makefile	26 Jul 2004 17:21:34 -0000
@@ -11,6 +11,12 @@
 
 DEPENDS+=		teTeX-[0-9]*:../../print/teTeX
 
+PLIST_SRC=		# empty
+
+.include "../../mk/bsd.prefs.mk"
+
+BUILD_DEFS+=DOXYGEN_USE_DOT
+
 WRKSRC=			${WRKDIR}/${PKGNAME_NOREV}
 USE_GNU_TOOLS+=		make
 USE_LANGUAGES=		c c++
@@ -20,19 +26,27 @@
 CONFIGURE_ARGS=		--make ${GMAKE}
 CONFIGURE_ARGS+=	--perl ${PERL5}
 CONFIGURE_ARGS+=	--install ${INSTALL}
-CONFIGURE_ARGS+=	--dot ${PREFIX}/bin/dot
 CONFIGURE_ARGS+=	--prefix ${PREFIX}
 CONFIGURE_ARGS+=	--docdir ${PREFIX}/share/doc
 
+.ifdef DOXYGEN_USE_DOT
+CONFIGURE_ARGS+=	--dot ${PREFIX}/bin/dot
+PLIST_SRC+=		${PKGDIR}/PLIST.dot
+.endif
+
 SUBST_CLASSES+=		pybin
 SUBST_STAGE.pybin=	pre-configure
 SUBST_FILES.pybin=	doc/Makefile.in
 SUBST_SED.pybin=	-e "s|@PYTHONBIN@|${PYTHONBIN}|g"
 
+PLIST_SRC+=		${PKGDIR}/PLIST
+
 post-install:
 	cd ${WRKSRC} && ${GMAKE} install_docs
 
+.ifdef DOXYGEN_USE_DOT
 .include "../../graphics/graphviz/buildlink3.mk"
+.endif
 .include "../../lang/python/application.mk"
 .include "../../mk/ghostscript.mk"
 .include "../../mk/bsd.pkg.mk"
Index: PLIST
===================================================================
RCS file: /NETBSD-CVS/pkgsrc/devel/doxygen/PLIST,v
retrieving revision 1.6
diff -u -r1.6 PLIST
--- PLIST	10 May 2004 00:15:49 -0000	1.6
+++ PLIST	26 Jul 2004 17:21:34 -0000
@@ -70,92 +70,6 @@
 share/doc/doxygen/examples/define/html/globals_defs.html
 share/doc/doxygen/examples/define/html/index.html
 share/doc/doxygen/examples/diagrams.cfg
-share/doc/doxygen/examples/diagrams/html/annotated.html
-share/doc/doxygen/examples/diagrams/html/class_a-members.html
-share/doc/doxygen/examples/diagrams/html/class_a.html
-share/doc/doxygen/examples/diagrams/html/class_a__coll__graph.map
-share/doc/doxygen/examples/diagrams/html/class_a__coll__graph.md5
-share/doc/doxygen/examples/diagrams/html/class_a__coll__graph.png
-share/doc/doxygen/examples/diagrams/html/class_a__inherit__graph.map
-share/doc/doxygen/examples/diagrams/html/class_a__inherit__graph.md5
-share/doc/doxygen/examples/diagrams/html/class_a__inherit__graph.png
-share/doc/doxygen/examples/diagrams/html/class_b-members.html
-share/doc/doxygen/examples/diagrams/html/class_b.html
-share/doc/doxygen/examples/diagrams/html/class_b__coll__graph.map
-share/doc/doxygen/examples/diagrams/html/class_b__coll__graph.md5
-share/doc/doxygen/examples/diagrams/html/class_b__coll__graph.png
-share/doc/doxygen/examples/diagrams/html/class_b__inherit__graph.map
-share/doc/doxygen/examples/diagrams/html/class_b__inherit__graph.md5
-share/doc/doxygen/examples/diagrams/html/class_b__inherit__graph.png
-share/doc/doxygen/examples/diagrams/html/class_c-members.html
-share/doc/doxygen/examples/diagrams/html/class_c.html
-share/doc/doxygen/examples/diagrams/html/class_c__coll__graph.map
-share/doc/doxygen/examples/diagrams/html/class_c__coll__graph.md5
-share/doc/doxygen/examples/diagrams/html/class_c__coll__graph.png
-share/doc/doxygen/examples/diagrams/html/class_c__inherit__graph.map
-share/doc/doxygen/examples/diagrams/html/class_c__inherit__graph.md5
-share/doc/doxygen/examples/diagrams/html/class_c__inherit__graph.png
-share/doc/doxygen/examples/diagrams/html/class_d-members.html
-share/doc/doxygen/examples/diagrams/html/class_d.html
-share/doc/doxygen/examples/diagrams/html/class_d__coll__graph.map
-share/doc/doxygen/examples/diagrams/html/class_d__coll__graph.md5
-share/doc/doxygen/examples/diagrams/html/class_d__coll__graph.png
-share/doc/doxygen/examples/diagrams/html/class_d__inherit__graph.map
-share/doc/doxygen/examples/diagrams/html/class_d__inherit__graph.md5
-share/doc/doxygen/examples/diagrams/html/class_d__inherit__graph.png
-share/doc/doxygen/examples/diagrams/html/class_e-members.html
-share/doc/doxygen/examples/diagrams/html/class_e.html
-share/doc/doxygen/examples/diagrams/html/class_e__coll__graph.map
-share/doc/doxygen/examples/diagrams/html/class_e__coll__graph.md5
-share/doc/doxygen/examples/diagrams/html/class_e__coll__graph.png
-share/doc/doxygen/examples/diagrams/html/class_e__inherit__graph.map
-share/doc/doxygen/examples/diagrams/html/class_e__inherit__graph.md5
-share/doc/doxygen/examples/diagrams/html/class_e__inherit__graph.png
-share/doc/doxygen/examples/diagrams/html/diagrams__a_8h-source.html
-share/doc/doxygen/examples/diagrams/html/diagrams__a_8h.html
-share/doc/doxygen/examples/diagrams/html/diagrams__a_8h__dep__incl.map
-share/doc/doxygen/examples/diagrams/html/diagrams__a_8h__dep__incl.md5
-share/doc/doxygen/examples/diagrams/html/diagrams__a_8h__dep__incl.png
-share/doc/doxygen/examples/diagrams/html/diagrams__b_8h-source.html
-share/doc/doxygen/examples/diagrams/html/diagrams__b_8h.html
-share/doc/doxygen/examples/diagrams/html/diagrams__b_8h__dep__incl.map
-share/doc/doxygen/examples/diagrams/html/diagrams__b_8h__dep__incl.md5
-share/doc/doxygen/examples/diagrams/html/diagrams__b_8h__dep__incl.png
-share/doc/doxygen/examples/diagrams/html/diagrams__c_8h-source.html
-share/doc/doxygen/examples/diagrams/html/diagrams__c_8h.html
-share/doc/doxygen/examples/diagrams/html/diagrams__c_8h__dep__incl.map
-share/doc/doxygen/examples/diagrams/html/diagrams__c_8h__dep__incl.md5
-share/doc/doxygen/examples/diagrams/html/diagrams__c_8h__dep__incl.png
-share/doc/doxygen/examples/diagrams/html/diagrams__c_8h__incl.map
-share/doc/doxygen/examples/diagrams/html/diagrams__c_8h__incl.md5
-share/doc/doxygen/examples/diagrams/html/diagrams__c_8h__incl.png
-share/doc/doxygen/examples/diagrams/html/diagrams__d_8h-source.html
-share/doc/doxygen/examples/diagrams/html/diagrams__d_8h.html
-share/doc/doxygen/examples/diagrams/html/diagrams__d_8h__dep__incl.map
-share/doc/doxygen/examples/diagrams/html/diagrams__d_8h__dep__incl.md5
-share/doc/doxygen/examples/diagrams/html/diagrams__d_8h__dep__incl.png
-share/doc/doxygen/examples/diagrams/html/diagrams__d_8h__incl.map
-share/doc/doxygen/examples/diagrams/html/diagrams__d_8h__incl.md5
-share/doc/doxygen/examples/diagrams/html/diagrams__d_8h__incl.png
-share/doc/doxygen/examples/diagrams/html/diagrams__e_8h-source.html
-share/doc/doxygen/examples/diagrams/html/diagrams__e_8h.html
-share/doc/doxygen/examples/diagrams/html/diagrams__e_8h__incl.map
-share/doc/doxygen/examples/diagrams/html/diagrams__e_8h__incl.md5
-share/doc/doxygen/examples/diagrams/html/diagrams__e_8h__incl.png
-share/doc/doxygen/examples/diagrams/html/doxygen.css
-share/doc/doxygen/examples/diagrams/html/doxygen.png
-share/doc/doxygen/examples/diagrams/html/files.html
-share/doc/doxygen/examples/diagrams/html/functions.html
-share/doc/doxygen/examples/diagrams/html/functions_vars.html
-share/doc/doxygen/examples/diagrams/html/graph_legend.dot
-share/doc/doxygen/examples/diagrams/html/graph_legend.html
-share/doc/doxygen/examples/diagrams/html/graph_legend.png
-share/doc/doxygen/examples/diagrams/html/hierarchy.html
-share/doc/doxygen/examples/diagrams/html/index.html
-share/doc/doxygen/examples/diagrams/html/inherit__graph__0.map
-share/doc/doxygen/examples/diagrams/html/inherit__graph__0.md5
-share/doc/doxygen/examples/diagrams/html/inherit__graph__0.png
-share/doc/doxygen/examples/diagrams/html/inherits.html
 share/doc/doxygen/examples/diagrams_a.h
 share/doc/doxygen/examples/diagrams_b.h
 share/doc/doxygen/examples/diagrams_c.h
@@ -460,8 +374,6 @@
 @dirrm share/doc/doxygen/examples/example
 @dirrm share/doc/doxygen/examples/enum/html
 @dirrm share/doc/doxygen/examples/enum
-@dirrm share/doc/doxygen/examples/diagrams/html
-@dirrm share/doc/doxygen/examples/diagrams
 @dirrm share/doc/doxygen/examples/define/html
 @dirrm share/doc/doxygen/examples/define
 @dirrm share/doc/doxygen/examples/class/html
Index: PLIST.dot
===================================================================
RCS file: PLIST.dot
diff -N PLIST.dot
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ PLIST.dot	26 Jul 2004 17:21:34 -0000
@@ -0,0 +1,88 @@
+share/doc/doxygen/examples/diagrams/html/annotated.html
+share/doc/doxygen/examples/diagrams/html/class_a-members.html
+share/doc/doxygen/examples/diagrams/html/class_a.html
+share/doc/doxygen/examples/diagrams/html/class_a__coll__graph.map
+share/doc/doxygen/examples/diagrams/html/class_a__coll__graph.md5
+share/doc/doxygen/examples/diagrams/html/class_a__coll__graph.png
+share/doc/doxygen/examples/diagrams/html/class_a__inherit__graph.map
+share/doc/doxygen/examples/diagrams/html/class_a__inherit__graph.md5
+share/doc/doxygen/examples/diagrams/html/class_a__inherit__graph.png
+share/doc/doxygen/examples/diagrams/html/class_b-members.html
+share/doc/doxygen/examples/diagrams/html/class_b.html
+share/doc/doxygen/examples/diagrams/html/class_b__coll__graph.map
+share/doc/doxygen/examples/diagrams/html/class_b__coll__graph.md5
+share/doc/doxygen/examples/diagrams/html/class_b__coll__graph.png
+share/doc/doxygen/examples/diagrams/html/class_b__inherit__graph.map
+share/doc/doxygen/examples/diagrams/html/class_b__inherit__graph.md5
+share/doc/doxygen/examples/diagrams/html/class_b__inherit__graph.png
+share/doc/doxygen/examples/diagrams/html/class_c-members.html
+share/doc/doxygen/examples/diagrams/html/class_c.html
+share/doc/doxygen/examples/diagrams/html/class_c__coll__graph.map
+share/doc/doxygen/examples/diagrams/html/class_c__coll__graph.md5
+share/doc/doxygen/examples/diagrams/html/class_c__coll__graph.png
+share/doc/doxygen/examples/diagrams/html/class_c__inherit__graph.map
+share/doc/doxygen/examples/diagrams/html/class_c__inherit__graph.md5
+share/doc/doxygen/examples/diagrams/html/class_c__inherit__graph.png
+share/doc/doxygen/examples/diagrams/html/class_d-members.html
+share/doc/doxygen/examples/diagrams/html/class_d.html
+share/doc/doxygen/examples/diagrams/html/class_d__coll__graph.map
+share/doc/doxygen/examples/diagrams/html/class_d__coll__graph.md5
+share/doc/doxygen/examples/diagrams/html/class_d__coll__graph.png
+share/doc/doxygen/examples/diagrams/html/class_d__inherit__graph.map
+share/doc/doxygen/examples/diagrams/html/class_d__inherit__graph.md5
+share/doc/doxygen/examples/diagrams/html/class_d__inherit__graph.png
+share/doc/doxygen/examples/diagrams/html/class_e-members.html
+share/doc/doxygen/examples/diagrams/html/class_e.html
+share/doc/doxygen/examples/diagrams/html/class_e__coll__graph.map
+share/doc/doxygen/examples/diagrams/html/class_e__coll__graph.md5
+share/doc/doxygen/examples/diagrams/html/class_e__coll__graph.png
+share/doc/doxygen/examples/diagrams/html/class_e__inherit__graph.map
+share/doc/doxygen/examples/diagrams/html/class_e__inherit__graph.md5
+share/doc/doxygen/examples/diagrams/html/class_e__inherit__graph.png
+share/doc/doxygen/examples/diagrams/html/diagrams__a_8h-source.html
+share/doc/doxygen/examples/diagrams/html/diagrams__a_8h.html
+share/doc/doxygen/examples/diagrams/html/diagrams__a_8h__dep__incl.map
+share/doc/doxygen/examples/diagrams/html/diagrams__a_8h__dep__incl.md5
+share/doc/doxygen/examples/diagrams/html/diagrams__a_8h__dep__incl.png
+share/doc/doxygen/examples/diagrams/html/diagrams__b_8h-source.html
+share/doc/doxygen/examples/diagrams/html/diagrams__b_8h.html
+share/doc/doxygen/examples/diagrams/html/diagrams__b_8h__dep__incl.map
+share/doc/doxygen/examples/diagrams/html/diagrams__b_8h__dep__incl.md5
+share/doc/doxygen/examples/diagrams/html/diagrams__b_8h__dep__incl.png
+share/doc/doxygen/examples/diagrams/html/diagrams__c_8h-source.html
+share/doc/doxygen/examples/diagrams/html/diagrams__c_8h.html
+share/doc/doxygen/examples/diagrams/html/diagrams__c_8h__dep__incl.map
+share/doc/doxygen/examples/diagrams/html/diagrams__c_8h__dep__incl.md5
+share/doc/doxygen/examples/diagrams/html/diagrams__c_8h__dep__incl.png
+share/doc/doxygen/examples/diagrams/html/diagrams__c_8h__incl.map
+share/doc/doxygen/examples/diagrams/html/diagrams__c_8h__incl.md5
+share/doc/doxygen/examples/diagrams/html/diagrams__c_8h__incl.png
+share/doc/doxygen/examples/diagrams/html/diagrams__d_8h-source.html
+share/doc/doxygen/examples/diagrams/html/diagrams__d_8h.html
+share/doc/doxygen/examples/diagrams/html/diagrams__d_8h__dep__incl.map
+share/doc/doxygen/examples/diagrams/html/diagrams__d_8h__dep__incl.md5
+share/doc/doxygen/examples/diagrams/html/diagrams__d_8h__dep__incl.png
+share/doc/doxygen/examples/diagrams/html/diagrams__d_8h__incl.map
+share/doc/doxygen/examples/diagrams/html/diagrams__d_8h__incl.md5
+share/doc/doxygen/examples/diagrams/html/diagrams__d_8h__incl.png
+share/doc/doxygen/examples/diagrams/html/diagrams__e_8h-source.html
+share/doc/doxygen/examples/diagrams/html/diagrams__e_8h.html
+share/doc/doxygen/examples/diagrams/html/diagrams__e_8h__incl.map
+share/doc/doxygen/examples/diagrams/html/diagrams__e_8h__incl.md5
+share/doc/doxygen/examples/diagrams/html/diagrams__e_8h__incl.png
+share/doc/doxygen/examples/diagrams/html/doxygen.css
+share/doc/doxygen/examples/diagrams/html/doxygen.png
+share/doc/doxygen/examples/diagrams/html/files.html
+share/doc/doxygen/examples/diagrams/html/functions.html
+share/doc/doxygen/examples/diagrams/html/functions_vars.html
+share/doc/doxygen/examples/diagrams/html/graph_legend.dot
+share/doc/doxygen/examples/diagrams/html/graph_legend.html
+share/doc/doxygen/examples/diagrams/html/graph_legend.png
+share/doc/doxygen/examples/diagrams/html/hierarchy.html
+share/doc/doxygen/examples/diagrams/html/index.html
+share/doc/doxygen/examples/diagrams/html/inherit__graph__0.map
+share/doc/doxygen/examples/diagrams/html/inherit__graph__0.md5
+share/doc/doxygen/examples/diagrams/html/inherit__graph__0.png
+share/doc/doxygen/examples/diagrams/html/inherits.html
+@dirrm share/doc/doxygen/examples/diagrams/html
+@dirrm share/doc/doxygen/examples/diagrams


>Release-Note:
>Audit-Trail:
>Unformatted:
 recent pkgsrc from head of cvs