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

Bug#627427: dh-ocaml: dh_ocamldoc breaks if DH_ALWAYS_EXCLUDE is set



On 20/05/2011 16:09, Colin Watson wrote:
> Package: dh-ocaml
> Version: 1.0.0
> Severity: normal
> 
> I have DH_ALWAYS_EXCLUDE='CVS:.svn:{arch}:.arch-ids:.bzr:.git' in my
> environment, since I never want files in these directories to creep into
> binary packages I build.  When I tried to build gmetadom I found that it
> broke:
> 
>   dh_ocamldoc -plibgdome2-ocaml-dev
>   /usr/bin/ocamldoc: unknown option `-and'.
>   [... usage message ...]
>   dh_ocamldoc: /usr/bin/ocamldoc -sort   -and ! \( -regex .\*CVS.\* -or -regex .\*\\.svn.\* -or -regex .\*{arch}.\* -or -regex .\*\\.arch-ids.\* -or -regex .\*\\.bzr.\* -or -regex .\*\\.git.\* \)  -I debian/libgdome2-ocaml-dev/usr/lib/ocaml -I debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2 -I debian/libgdome2-ocaml-dev/usr/lib/ocaml/stublibs -html -stars -m A -d debian/libgdome2-ocaml-dev/usr/share/doc/libgdome2-ocaml-dev/html/api/ debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/gdome.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/gdomeDOMExceptionT.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/gdomeInit.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/gdomeNodeTypeT.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/gdomeT.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iAttr.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iCDATASection.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iCharacterData.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome
2/iComment.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iDOMImplementation.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iDOMString.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iDocument.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iDocumentFragment.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iDocumentType.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iElement.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iEntity.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iEntityReference.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iEvent.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iEventTarget.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iMutationEvent.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iNamedNodeMap.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iNode.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iNodeList.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iNotation.ml debian/libgdome2-ocaml-dev/us
r/lib/ocaml/gdome2/iProcessingInstruction.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/iText.ml debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tAttr.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tCDATASection.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tCharacterData.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tComment.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tDOMImplementation.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tDOMString.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tDOMTimeStamp.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tDocument.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tDocumentFragment.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tDocumentType.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tElement.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tEntity.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tEntityReference.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/
tEvent.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tEventListener.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tEventTarget.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tMutationEvent.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tNamedNodeMap.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tNode.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tNodeList.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tNotation.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tProcessingInstruction.mli debian/libgdome2-ocaml-dev/usr/lib/ocaml/gdome2/tText.mli returned exit code 2
>   make: *** [binary-install/libgdome2-ocaml-dev] Error 2
>   dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2
> 
> I don't see why these arguments are being passed to ocamldoc at all.  It
> looks like they're intended to be passed to find(1).  I don't quite see
> how to repair it easily upon inspection of the code, though.
> 

Thanks for this bugreport. It's indeed an annoying bug. To be honest, I
don't see why $dh{EXCLUDE_FIND} should be added to $ocamldoc_flags. This
seems plain wrong. I *think* that this flag was passed to `find`, in the
first version of dh_ocamldoc. And, this part got rewritten at some point
and introduced this bug. A trivial (and correct) fix would be to remove
lines 199--201. When defined, $dh{EXCLUDE_FIND} could be used in line 206
and (somehow) in 211--215.

I'll try to fix this soon, unless someone else beat me to it.

Regards,

-- 
Mehdi Dogguy مهدي الدڤي
http://dogguy.org/



Reply to: