Bug 190943 - upgrade devel/doxygen 1.8.3.1 -> 1.8.7
upgrade devel/doxygen 1.8.3.1 -> 1.8.7
Status: Closed FIXED
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s)
Latest
Any Any
: --- Affects Only Me
Assigned To: Kurt Jaeger
:
Depends on: 192171 192400
Blocks:
  Show dependency treegraph
 
Reported: 2014-06-11 18:52 UTC by Kurt Jaeger
Modified: 2014-08-11 06:08 UTC (History)
2 users (show)

See Also:


Attachments
svn diff for doxygen (22.80 KB, patch)
2014-06-11 18:52 UTC, Kurt Jaeger
no flags Details | Diff
patch with all options working (32.73 KB, patch)
2014-06-13 22:05 UTC, Kurt Jaeger
no flags Details | Diff
Alternate paching for Makefile and files/patch-md5 (11.47 KB, patch)
2014-06-13 22:19 UTC, Naram Qashat
no flags Details | Diff
Small Makefile and md5-related patch (319 bytes, patch)
2014-06-15 00:06 UTC, Naram Qashat
no flags Details | Diff
current patch (34.30 KB, patch)
2014-08-07 21:19 UTC, Kurt Jaeger
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Kurt Jaeger freebsd_committer 2014-06-11 18:52:51 UTC
Created attachment 143688 [details]
svn diff for doxygen

libreoffice wants to use doxygen >= 1.8.4, so please check and approve.

poudriere build log see http://people.freebsd.org/~pi/misc/doxygen-1.8.7.log
Comment 1 Naram Qashat 2014-06-12 01:02:54 UTC
Oh, I've been WANTING to update the port for ages now. But there is a small problem, while it builds you for in poudriere, that is with the default options, the port currently does NOT build if the option to build doxygen's PDF docs is enabled. Sadly, no one seems to know the solution to fix it, as it fails with both teTeX and TeX Live.

I'm willing to submit my own patch for it, but I need to get the PDF doc generation option working.

The mailing list thread I had started about it was here: http://lists.freebsd.org/pipermail/freebsd-ports/2014-March/090875.html

Granted, this might not seem like THAT big an issue, since the port can be usable without doxygen generating its own docs. But I believe this issue will cause even user invokation of doxygen to fail if they want PDF docs of their own code. I believe it had been said in the past that this option should not be removed from the port, despite the headaches it causes.
Comment 2 Kurt Jaeger freebsd_committer 2014-06-13 22:05:50 UTC
Created attachment 143759 [details]
patch with all options working

This patch provides 1.8.7 with all options working.

Two small open issues:
- The PDF generated does hot have the same depth of indention in chapter 28 (perl modules tree) that the HTML has.
- If you want PDF, you have to select HTML as well

It is achieved by patching the auto-generated latex/Makefile and the autogenerated latex/refman.tex before running both.

It also forces pdflatex to run non-stop and to ignore the resultcode. This
is a compromise (also known as ugly hack) due to latex sub-itemize-limits.

See

http://stackoverflow.com/questions/1935952/maximum-nesting-level-of-lists-in-latex

for some pointers to the issue (but no working solution).

We're trying to inform upstream about those issues and hope for feedback.

In the meantime I ask for approval to commit this update.
Comment 3 Kurt Jaeger freebsd_committer 2014-06-13 22:07:06 UTC
Link to the HTML version that shows additional indention:

http://www.stack.nl/~dimitri/doxygen/manual/perlmod_tree.html
Comment 4 Naram Qashat 2014-06-13 22:19:54 UTC
Created attachment 143761 [details]
Alternate paching for Makefile and files/patch-md5

I'm mostly fine with the update. However, I am attaching my own patches for Makefile and files/patch-md5 (which you had split apart in your diff, and I'm fine with that).

The Makefile patch does not include the MAKE_JOBS_UNSAFE that your patch has, but it includes requiring flex from ports (as I was running into problems because of the older flex in the base for my 9.2 on here) and adding a few extra flags to CONFIGURE_ARGS, as well as using USE_PYTHON_BUILD instead of adding python to the BUILD_DEPENDS.

The files/patch-md5 patch is slightly different than before, because I included a few other places that should've also been patched to use the base MD5 implementation. If you wish to keep the MD5 patches split like in your patch, I'm fine with that, but I included it as I currently have it in my local edit of the port.
Comment 5 Kurt Jaeger freebsd_committer 2014-06-13 22:24:27 UTC
MAKE_JOBS_UNSAFE is needed, otherwise the build with PDF etc fails according to my tests.

Consolidating your patches now spoils a working commit 8-}

I suggest to commit now, and you provide separate patch-md5-parts and
the other Makefile patches in a new PR which I will work on tomorrow ?

Is that OK ?
Comment 6 Naram Qashat 2014-06-13 22:28:10 UTC
Well, as long as the port builds for everyone else without my changes to the Makefile, I'm fine with that. The biggest reason for needing the ports version of flex is that building doxygen itself was failing for me because of the old base version of flex. Otherwise, go right ahead with the commit.
Comment 7 commit-hook freebsd_committer 2014-06-14 07:23:57 UTC
A commit references this bug:

Author: pi
Date: Sat Jun 14 07:22:57 UTC 2014
New revision: 357752
URL: http://svnweb.freebsd.org/changeset/ports/357752

Log:
  devel/doxygen: 1.8.3.1 -> 1.8.7

  In a second step, the python build part has to be tested (still open)

  PR:		ports/190943
  Submitted by:	Naram Qashat <cyberbotx@cyberbotx.com> (maintainer)

Changes:
  head/devel/doxygen/Makefile
  head/devel/doxygen/distinfo
  head/devel/doxygen/files/patch-Makefile.in
  head/devel/doxygen/files/patch-addon-doxywizard-Makefile.in
  head/devel/doxygen/files/patch-ah
  head/devel/doxygen/files/patch-configure
  head/devel/doxygen/files/patch-examples-Makefile.in
  head/devel/doxygen/files/patch-latex
  head/devel/doxygen/files/patch-md5
  head/devel/doxygen/files/patch-md5-Doxyfile
  head/devel/doxygen/files/patch-md5-definition
  head/devel/doxygen/files/patch-md5-dirdef
  head/devel/doxygen/files/patch-md5-dot
  head/devel/doxygen/files/patch-md5-doxygen.pro.in
  head/devel/doxygen/files/patch-md5-memberdef
  head/devel/doxygen/files/patch-md5-membergroup
  head/devel/doxygen/files/patch-md5-util
  head/devel/doxygen/files/patch-refman
  head/devel/doxygen/files/patch-warnings
Comment 8 Kurt Jaeger freebsd_committer 2014-06-14 07:28:25 UTC
I just committed the change with some of your changes integrated.

The USE_PYTHON_BUILD change was left on the sidelines, because it breaks
with python3.

It was tested in poudriere on 10.0 and 9.2 (both amd64), but only without the
options. I'll check that post-commit (yes, I know...)

Please re-submit those md5 changes I missed. For the md5 patches: if possible,
please do not provide one big patch-md5, but seperate files.
Comment 9 Naram Qashat 2014-06-15 00:06:04 UTC
Created attachment 143785 [details]
Small Makefile and md5-related patch

OK, I'm attaching a patch that removes a line from the Makefile (a USE_PYTHON_BUILD line that was conditional) and also adding a single MD5-related patch, as all the others have been taken care of.
Comment 10 Kurt Jaeger freebsd_committer 2014-06-19 07:20:17 UTC
I reverted the upgrade from 1.8.3.1 to 1.8.7 because some ports broke,
as reported by antoine@ and because culot@ suggested doing so:

- audio/jack
- audio/libmpdclient
- comms/openobex
- comms/rtl-sdr
- devel/avr-libc
- devel/libdbusmenu-qt (413 skipped!)
- graphics/partio

https://phabric.freebsd.org/D228 was set up to review the fix for libdbusmenu-qt.

The issue open to discussion: does it require a exp-run and fix of
probably 100 ports to upgrade doxygen ?
Comment 11 Kurt Jaeger freebsd_committer 2014-08-07 21:19:14 UTC
Created attachment 145488 [details]
current patch

This is the current patch for others to test against.
Comment 12 Kurt Jaeger freebsd_committer 2014-08-08 20:05:01 UTC
(In reply to Kurt Jaeger from comment #10)
> The issue open to discussion: does it require a exp-run and fix of
> probably 100 ports to upgrade doxygen ?

The consensus was: Yes, exp-run is necessary. Preparing a patch that allows this.
Comment 13 Kurt Jaeger freebsd_committer 2014-08-08 20:19:55 UTC
> The consensus was: Yes, exp-run is necessary. Preparing a patch that allows
> this.

It's now at http://people.freebsd.org/~pi/misc/20140808-doxygen.svndiff
Comment 14 commit-hook freebsd_committer 2014-08-09 19:39:33 UTC
A commit references this bug:

Author: antoine
Date: Sat Aug  9 19:39:12 UTC 2014
New revision: 364468
URL: http://svnweb.freebsd.org/changeset/ports/364468

Log:
  Update devel/doxygen to 1.8.7
  Update dependent ports to build with it

  Most of work by:	pi@
  Exp-run:	self
  PR:		ports/190943

Changes:
  head/audio/jack/Makefile
  head/audio/jack/pkg-plist
  head/audio/libmpdclient/Makefile
  head/audio/libmpdclient/pkg-plist
  head/comms/openobex/Makefile
  head/comms/openobex/pkg-plist
  head/comms/rtl-sdr/Makefile
  head/comms/rtl-sdr/pkg-plist
  head/comms/usrp/Makefile
  head/comms/usrp/pkg-plist
  head/databases/libdrizzle/Makefile
  head/databases/libdrizzle/pkg-plist
  head/devel/avr-libc/Makefile
  head/devel/avr-libc/files/
  head/devel/avr-libc/files/patch-doc-api-Makefile.in
  head/devel/avr-libc/files/patch-patch
  head/devel/avr-libc/pkg-plist
  head/devel/cppunit/Makefile
  head/devel/cppunit/pkg-plist
  head/devel/doxygen/Makefile
  head/devel/doxygen/distinfo
  head/devel/doxygen/files/patch-Makefile.in
  head/devel/doxygen/files/patch-addon-doxywizard-Makefile.in
  head/devel/doxygen/files/patch-configure
  head/devel/doxygen/files/patch-examples-Makefile.in
  head/devel/doxygen/files/patch-latex
  head/devel/doxygen/files/patch-md5
  head/devel/doxygen/files/patch-md5-Doxyfile
  head/devel/doxygen/files/patch-md5-definition
  head/devel/doxygen/files/patch-md5-dirdef
  head/devel/doxygen/files/patch-md5-dot
  head/devel/doxygen/files/patch-md5-doxygen.pro.in
  head/devel/doxygen/files/patch-md5-memberdef
  head/devel/doxygen/files/patch-md5-membergroup
  head/devel/doxygen/files/patch-md5-util
  head/devel/doxygen/files/patch-refman
  head/devel/doxygen/files/patch-warnings
  head/devel/libdbusmenu-qt/Makefile
  head/devel/libdbusmenu-qt/pkg-plist
  head/devel/libthai/Makefile
  head/devel/libthai/pkg-plist
  head/graphics/partio/Makefile
  head/graphics/partio/pkg-plist
  head/math/fflas-ffpack/Makefile
  head/math/fflas-ffpack/pkg-plist
  head/math/givaro/Makefile
  head/math/givaro/pkg-plist
  head/net/nmsg/Makefile
  head/net/nmsg/pkg-plist
Comment 15 Naram Qashat 2014-08-11 06:08:03 UTC
OK, I know this was committed, but I have to question something in the patch to update it to 1.8.7. Why is there a forced dependency on print/tex-dvipsk and print/cm-super? The port doesn't need tex to build UNLESS the PDFDOCS option is enabled. And I have no idea why print/cm-super was added. Can this be looked in to? Especially the tex part, because someone apparently complained to me about the forced dependency on tex.