Bug 248541

Summary: graphics/darktable fails to build using poudriere on 12.1 Stable amd64 with unknown format type pod error
Product: Ports & Packages Reporter: Robert Cina <transitive>
Component: Individual Port(s)Assignee: Jean-Sébastien Pédron <dumbbell>
Status: Closed FIXED    
Severity: Affects Only Me CC: m.ne, waitman
Priority: --- Flags: dumbbell: maintainer-feedback+
Version: Latest   
Hardware: amd64   
OS: Any   
Attachments:
Description Flags
Use textproc/p5-Pod-Parser during build
none
Use textproc/p5-Pod-Parser during build; update to version 3.2.1 m.ne: maintainer-approval?

Description Robert Cina 2020-08-08 21:41:07 UTC
The port graphics/darktable fails to build for me on 12.1 Stable amd64 using poudriere. I am seeing an unknown format type pod error when building but I am not sure what is the cause.  Any help is appreciated. Thanks.

Below is the output of the build log showing the error:

[650/682] cd /wrkdirs/usr/ports/graphics/darktable/work/darktable-3.0.2/doc/man && /usr/local/bin/po4a-translate -f pod -m darktable-cltest.pod -p po/es.po -l /wrkdirs/usr/ports/graphics/darktable/work/.build/doc/man/es/darktable-cltest.pod -k 0
FAILED: doc/man/es/darktable-cltest.pod 
cd /wrkdirs/usr/ports/graphics/darktable/work/darktable-3.0.2/doc/man && /usr/local/bin/po4a-translate -f pod -m darktable-cltest.pod -p po/es.po -l /wrkdirs/usr/ports/graphics/darktable/work/.build/doc/man/es/darktable-cltest.pod -k 0
Unknown format type: pod.
List of valid formats:
  - asciidoc: AsciiDoc format.
  - dia: uncompressed Dia diagrams.
  - docbook: DocBook XML.
  - guide: Gentoo Linux's XML documentation format.
  - ini: INI format.
  - kernelhelp: Help messages of each kernel compilation option.
  - latex: LaTeX format.
  - man: Good old manual page format.
  - pod: Perl Online Documentation format.
  - sgml: either DebianDoc or DocBook DTD.
  - texinfo: The info page format.
  - tex: generic TeX documents (see also latex).
  - text: simple text document.
  - wml: WML documents.
  - xhtml: XHTML documents.
  - xml: generic XML documents (see also docbook).
ninja: build stopped: subcommand failed.
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make: stopped in /usr/ports/graphics/darktable
=>> Cleaning up wrkdir
===>  Cleaning for darktable-3.0.2_1
build of graphics/darktable | darktable-3.0.2_1 ended at Sat Aug  8 17:30:20 EDT 2020
build time: 00:01:11
!!! build failure encountered !!!
Comment 1 waitman 2020-08-08 23:53:59 UTC
Looks like an upstream problem. po4a uses Pod::Parser which was removed in perl5-5.32.0 (which is what we now have in ports)
Comment 2 Martin Neubauer 2020-08-09 17:27:40 UTC
Created attachment 217115 [details]
Use textproc/p5-Pod-Parser during build

I've stumbled over this as well, but didn't have much time for analysing the issue. But with that hint creating a fix was fairly straightforward.

It might be better to throw in a check for PERL_LEVEL, but I wasn't sure it's needed in the general case and at least for my setup this would be irrelevant.
Comment 3 Jean-Sébastien Pédron freebsd_committer freebsd_triage 2020-08-10 07:33:41 UTC
Thank you all for the report, the analysis and the patch!

I will test that today.
Comment 4 Jean-Sébastien Pédron freebsd_committer freebsd_triage 2020-08-10 10:12:19 UTC
I confirm the patch fixes the build failure for me as well. Thank you!
Comment 5 commit-hook freebsd_committer freebsd_triage 2020-08-10 13:44:08 UTC
A commit references this bug:

Author: dumbbell
Date: Mon Aug 10 13:43:48 UTC 2020
New revision: 544619
URL: https://svnweb.freebsd.org/changeset/ports/544619

Log:
  graphics/darktable: Add textproc/p5-Pod-Parser to BUILD_DEPENDS

  This fixes the build after the latest Perl update to 5.32:

      FAILED: doc/man/es/darktable-cltest.pod
      cd /wrkdirs/usr/ports/graphics/darktable/work/darktable-3.0.2/doc/man && /usr/local/bin/po4a-translate -f pod -m darktable-cltest.pod -p po/es.po -l /wrkdirs/usr/ports/graphics/darktable/work/.build/doc/man/es/darktable-cltest.pod -k 0
      Unknown format type: pod.
      List of valid formats:
        - asciidoc: AsciiDoc format.
        - dia: uncompressed Dia diagrams.
        - docbook: DocBook XML.
        - guide: Gentoo Linux's XML documentation format.
        - ini: INI format.
        - kernelhelp: Help messages of each kernel compilation option.
        - latex: LaTeX format.
        - man: Good old manual page format.
        - pod: Perl Online Documentation format.
        - sgml: either DebianDoc or DocBook DTD.
        - texinfo: The info page format.
        - tex: generic TeX documents (see also latex).
        - text: simple text document.
        - wml: WML documents.
        - xhtml: XHTML documents.
        - xml: generic XML documents (see also docbook).
      ninja: build stopped: subcommand failed.
      ===> Compilation failed unexpectedly.
      Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
      the maintainer.
      *** Error code 1

  PR:		248541
  Submitted by:	m.ne@gmx.net
  Reported by:	Robert Cina <transitive@gmail.com>

Changes:
  head/graphics/darktable/Makefile
Comment 6 Martin Neubauer 2020-08-10 13:57:28 UTC
Created attachment 217129 [details]
Use textproc/p5-Pod-Parser during build; update to version 3.2.1

While having another look I noticed there just was a new release. Enjoy!
Comment 7 Jean-Sébastien Pédron freebsd_committer freebsd_triage 2020-08-10 17:51:55 UTC
Thank you! I committed a slightly modified patch.