Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Aug 2014 17:10:20 +0000 (UTC)
From:      Alexey Dokuchaev <danfe@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r365679 - in head/devel/doxygen: . files
Message-ID:  <201408221710.s7MHAK9Z050051@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: danfe
Date: Fri Aug 22 17:10:20 2014
New Revision: 365679
URL: http://svnweb.freebsd.org/changeset/ports/365679
QAT: https://qat.redports.org/buildarchive/r365679/

Log:
  - Optionize for Graphviz and LaTeX (enabled by default, so hopefully the
    rest of the ports tree that uses Doxygen for their documentation aren't
    adversely affected)
  - Use new OPTIONS framework helpers
  - PDFDOCS relies on both the LATEX and HTMLDOCS options to be enabled
  - Remove a couple patches that believed to have no effect on PDFDOCS build
    because it should've been setting HAVE_LATEX in MAKE_ARGS instead of
    HAVE_PDFDOCS (which was done by a previous commit that submitter was
    unaware of back when it happened, but never should've happened to begin
    with)
  - While here: sort USES, remove MAKE_JOBS_UNSAFE [*], and cleanup Makefile,
    use correct spelling of PostScript and PDF in port description text
  
  [*] Except cleaning targets, use more robust make(1) syntax of -C, albeit
      I did not find evidence that cd ... ; $(MAKE) syntax was causing build
      failures with -jX.  Still, -C is better and safer in general.
  
  PR:		192732
  Submitted by:	maintainer
  Reviewed by:	marino

Deleted:
  head/devel/doxygen/files/patch-latex
  head/devel/doxygen/files/patch-refman
Modified:
  head/devel/doxygen/Makefile
  head/devel/doxygen/files/patch-Makefile.in
  head/devel/doxygen/pkg-descr

Modified: head/devel/doxygen/Makefile
==============================================================================
--- head/devel/doxygen/Makefile	Fri Aug 22 17:05:46 2014	(r365678)
+++ head/devel/doxygen/Makefile	Fri Aug 22 17:10:20 2014	(r365679)
@@ -3,6 +3,7 @@
 
 PORTNAME=	doxygen
 PORTVERSION=	1.8.7
+PORTREVISION=	1
 PORTEPOCH=	1
 CATEGORIES=	devel
 MASTER_SITES=	ftp://ftp.stack.nl/pub/users/dimitri/ \
@@ -16,25 +17,18 @@ LICENSE=	GPLv2
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
 BUILD_DEPENDS=	tmake:${PORTSDIR}/devel/tmake \
-		flex>0:${PORTSDIR}/textproc/flex \
-		python:${PORTSDIR}/lang/python \
-		dvips:${PORTSDIR}/print/tex-dvipsk \
-		${LOCALBASE}/share/fonts/cm-super/README:${PORTSDIR}/print/cm-super
-
+		${LOCALBASE}/bin/flex:${PORTSDIR}/textproc/flex
 LIB_DEPENDS=	libpng15.so:${PORTSDIR}/graphics/png
 
-USES=		bison iconv perl5 gmake
-USE_PYTHON=	2
-ALL_TARGET=	all
+USES=		bison gmake iconv perl5 python:2
 HAS_CONFIGURE=	yes
-MAKE_JOBS_UNSAFE=	yes
 QT_NONSTANDARD=	yes	# non-standard configure arguments
 CONFIGURE_ARGS=	--prefix ${PREFIX} --perl ${PERL} --make ${MAKE_CMD} \
 		--install "${INSTALL}" --flex ${LOCALBASE}/bin/flex
 REINPLACE_ARGS=	-i ''
 
-EXTRACT_AFTER_ARGS=	--exclude '*/libmd5'	\
-			--exclude '*/libpng'	\
+EXTRACT_AFTER_ARGS=	--exclude '*/libmd5' \
+			--exclude '*/libpng' \
 			--exclude '*/tmake'
 
 PLIST=		${WRKDIR}/plist
@@ -42,45 +36,47 @@ TMPDOCDEST=	${WRKDIR}/tmpdocdest
 
 PLIST_FILES=	bin/doxygen
 
-OPTIONS_DEFINE=	HTMLDOCS QT4 PDFDOCS
+OPTIONS_DEFINE=	GRAPHVIZ LATEX QT4 HTMLDOCS PDFDOCS
+OPTIONS_DEFAULT=	GRAPHVIZ LATEX
 QT4_DESC=	Install Doxywizard GUI
 HTMLDOCS_DESC=	Install documentation in HTML format
 PDFDOCS_DESC=	Install documentation in PDF format
 
+GRAPHVIZ_RUN_DEPENDS=	dot:${PORTSDIR}/graphics/graphviz
+
+LATEX_USE=	TEX=full
+
+QT4_USE=	QT4=corelib,gui,xml,qmake_build,moc_build,rcc_build
+QT4_CONFIGURE_ENV=	QTDIR="${QTDIR}"
+QT4_CONFIGURE_ON=	--with-doxywizard
+QT4_PLIST_FILES=	bin/doxywizard
+
+HTMLDOCS_ALL_TARGET=	docs
+HTMLDOCS_BUILD_DEPENDS=	dot:${PORTSDIR}/graphics/graphviz
+
+PDFDOCS_ALL_TARGET=	pdf
+PDFDOCS_MAKE_ARGS=	HAVE_LATEX=yes
+
 .include <bsd.port.options.mk>
 
-.if ${PORT_OPTIONS:MHTMLDOCS}
-ALL_TARGET+=	docs
-BUILD_DEPENDS+=	dot:${PORTSDIR}/graphics/graphviz
+.if ${PORT_OPTIONS:MPDFDOCS} && \
+	(empty(PORT_OPTIONS:MHTMLDOCS) || empty(PORT_OPTIONS:MLATEX))
+IGNORE=		PDFDOCS option requires HTMLDOCS and LATEX options to be set
+.endif
 
 .if ${PORT_OPTIONS:MPDFDOCS}
-ALL_TARGET+=	pdf
-USE_TEX=	latex:build
 USE_GHOSTSCRIPT_BUILD=	yes
-MAKE_ARGS+=	HAVE_PDFDOCS=yes
-.endif # PDFDOCS
-.endif # HTMLDOCS
+.endif
 
 .if ${PORT_OPTIONS:MQT4}
-USE_QT4=	corelib gui xml qmake_build moc_build rcc_build
-
-# Need this in env for build
+# Need this in env for the build
 QTDIR?=		${QT_PREFIX}
-CONFIGURE_ENV=	QTDIR="${QTDIR}"
-CONFIGURE_ARGS+=--with-doxywizard
-.endif # QT4
-
-.if ${MACHINE_ARCH:tl} == alpha
-CONFIGURE_ARGS+=	--enable-langs no
 .endif
 
-.if ${PORT_OPTIONS:MQT4}
-PLIST_FILES+=	bin/doxywizard
-.endif # QT4
-
 pre-configure:
-	@cd ${WRKSRC};for pro in src/*.pro.in addon/doxywizard/doxywizard.pro.in;do \
-		${ECHO} "unix:LIBS += ${ICONV_LIB}" >> $$pro; done
+	@cd ${WRKSRC}; for pro in src/*.pro.in \
+		addon/doxywizard/doxywizard.pro.in; do \
+			${ECHO} "unix:LIBS += ${ICONV_LIB}" >> $$pro; done
 	@${CHMOD} +x ${WRKSRC}/configure
 
 post-configure:
@@ -90,8 +86,7 @@ post-configure:
 			${WRKSRC}/addon/doxywizard/Makefile
 
 post-build:
-	cd ${BUILD_WRKSRC}/examples; \
-	${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} Makefile ${MAKE_ARGS} all
+	${DO_MAKE_BUILD} -C ${BUILD_WRKSRC}/examples all
 
 pre-install:
 	${RM} -rf ${TMPDOCDEST} ${PLIST}
@@ -109,23 +104,23 @@ pre-install:
 	${INSTALL_DATA} ${WRKSRC}/latex/doxygen_manual.pdf \
 			${WRKSRC}/latex/archoverview.eps \
 			${TMPDOCDEST}/doxygen
-.endif # PDFDOCS
+.endif
 	@cd ${TMPDOCDEST} \
 	&& ${FIND} -s * -type f -o -type l \
 		| ${SED} -e 's|^|share/doc/|' >> ${PLIST} \
 	&& ${FIND} -d * -type d \
 		| ${SED} -e 's|^|@dirrm share/doc/|' >> ${PLIST}
-.endif # HTMLDOCS
+.endif
 
 do-install:
-	${INSTALL_PROGRAM} ${WRKSRC}/bin/doxygen ${STAGEDIR}${PREFIX}/bin/
+	${INSTALL_PROGRAM} ${WRKSRC}/bin/doxygen ${STAGEDIR}${PREFIX}/bin
 .if ${PORT_OPTIONS:MQT4}
-	${INSTALL_PROGRAM} ${WRKSRC}/bin/doxywizard ${STAGEDIR}${PREFIX}/bin/
-.endif # QT4
+	${INSTALL_PROGRAM} ${WRKSRC}/bin/doxywizard ${STAGEDIR}${PREFIX}/bin
+.endif
 .if ${PORT_OPTIONS:MHTMLDOCS}
 	${MKDIR} ${STAGEDIR}${PREFIX}/share/doc/doxygen
 	${TAR} -C ${TMPDOCDEST} -cf - doxygen \
 		| ${TAR} -C ${STAGEDIR}${PREFIX}/share/doc --unlink -xf -
-.endif # HTMLDOCS
+.endif
 
 .include <bsd.port.mk>

Modified: head/devel/doxygen/files/patch-Makefile.in
==============================================================================
--- head/devel/doxygen/files/patch-Makefile.in	Fri Aug 22 17:05:46 2014	(r365678)
+++ head/devel/doxygen/files/patch-Makefile.in	Fri Aug 22 17:10:20 2014	(r365679)
@@ -1,7 +1,27 @@
 --- Makefile.in-orig	2014-06-14 08:30:10.000000000 +0200
 +++ Makefile.in	2014-06-14 08:31:21.000000000 +0200
-@@ -16,11 +16,10 @@
- 	cd addon/doxyapp ; $(MAKE) clean
+@@ -2,25 +2,24 @@
+ DESTDIR = 
+ 
+ doxywizard:
+-	cd addon/doxywizard ; $(MAKE) 
++	$(MAKE) -C addon/doxywizard
+ 
+ doxysearch:
+-	cd addon/doxysearch ; $(MAKE) 
++	$(MAKE) -C addon/doxysearch
+ 
+ doxmlparser:
+-	cd addon/doxmlparser/src ; $(MAKE)
+-	cd addon/doxmlparser/test ; $(MAKE)
+-	cd addon/doxmlparser/examples/metrics ; $(MAKE)
++	$(MAKE) -C addon/doxmlparser/src
++	$(MAKE) -C addon/doxmlparser/test
++	$(MAKE) -C addon/doxmlparser/examples/metrics
+ 
+ doxyapp:
+-	cd addon/doxyapp ; $(MAKE) clean
++	$(MAKE) -C addon/doxyapp
  
  clean: FORCE
 -	- cd examples ; $(MAKE) clean
@@ -16,7 +36,7 @@
  	-cd addon/doxywizard ; $(MAKE) clean
  	-cd addon/doxysearch ; $(MAKE) clean
  	-cd addon/doxyapp ; $(MAKE) clean
-@@ -32,7 +31,6 @@
+@@ -32,7 +31,6 @@ clean: FORCE
  
  distclean: clean
  	-cd src ; $(MAKE) distclean
@@ -24,7 +44,7 @@
  	-cd addon/doxywizard ; $(MAKE) distclean
  	-cd addon/doxysearch ; $(MAKE) distclean
  	-cd addon/doxyapp ; $(MAKE) distclean
-@@ -51,9 +49,8 @@
+@@ -51,9 +49,8 @@ distclean: clean
  	-rm -rf xml
  	-rm -f src/Makefile.doxygen src/Makefile.libdoxygen 
  	-rm -f src/Makefile.libdoxycfg src/libdoxycfg.t src/libdoxygen.t
@@ -35,12 +55,18 @@
  	-rm -rf generated_src
  	-rm -f addon/doxywizard/doxywizard.pro
  	-rm -f VERSION
-@@ -93,9 +90,9 @@
- 	cd doc ; $(MAKE)
+@@ -89,13 +86,13 @@ install_docs: 
+ 	cp -r html $(DESTDIR)$(DOCDIR)
+ 
+ docs: FORCE
+-	cd examples ; $(MAKE)
+-	cd doc ; $(MAKE)
++	$(MAKE) -C examples
++	$(MAKE) -C doc
  
  pdf: docs
 -	cd latex ; $(MAKE)
-+	cd latex ; patch < ../refman-patch ; patch < ../latex-patch ; $(MAKE)
++	$(MAKE) -C latex
  
 -DISTFILES =  Doxyfile libmd5 addon tmake doc examples bin lib objects testing \
 +DISTFILES =  Doxyfile addon tmake doc examples bin lib objects testing \

Modified: head/devel/doxygen/pkg-descr
==============================================================================
--- head/devel/doxygen/pkg-descr	Fri Aug 22 17:05:46 2014	(r365678)
+++ head/devel/doxygen/pkg-descr	Fri Aug 22 17:10:20 2014	(r365679)
@@ -1,7 +1,7 @@
 Doxygen is a documentation system for C++, C, Java, Objective-C, Python, IDL
 (Corba and Microsoft flavors) and to some extent PHP, C#, and D. It can
 generate an on-line class browser (in HTML) and/or an off-line reference
-manual (in LaTeX/ps/pdf) from a set of documented source files.
+manual (in LaTeX/PostScript/PDF) from a set of documented source files.
 The documentation is extracted directly from the sources.
 
 WWW: http://www.doxygen.org/



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201408221710.s7MHAK9Z050051>