| Summary: | OCaml dependency generation broken again (with patch) | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Richard W.M. Jones <rjones> | ||||
| Component: | rpm | Assignee: | Panu Matilainen <pmatilai> | ||||
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
| Severity: | unspecified | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | rawhide | CC: | ffesti, jnovy, pmatilai | ||||
| Target Milestone: | --- | Keywords: | Upstream | ||||
| Target Release: | --- | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2012-03-30 19:07:00 UTC | Type: | --- | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Attachments: |
|
||||||
Created attachment 564924 [details]
0001-Correctly-quote-tr-blank-in-OCaml-dependency-scripts.patch
Patch against rpm.git.
By the way the cause of the bug is even more interesting. It only happens if you have a file called 'b' in the current directory (I was running that from /tmp where I have a temporary file called 'b'). [:blank:] (unquoted) is treated as a shell glob. When it doesn't match anything, it is passed through to the tr command. But if you have a file called 'a', 'b', 'l' etc then it suddenly matches that file. Anyway, the patch in comment 1 should still be applied. (Thanks to Jim Meyering for the explanation) Applied upstream, thanks. Leaving open for Fedora tracking. Oh and this is fixed in rawhide in rpm >= 4.9.90 now. For older versions this is the kind of fix that I expect to pull into a 4.9.x maintenance release as well, when the time comes. |
Description of problem: OCaml dependency generation is broken because of a change in /bin/sh. We used the following command: tr [:blank:] '\n' Because of some change in /bin/sh, the unquoted [:blank:] turns into a 'b' character. Quoting it ('[:blank:]') fixes the issue. So please apply the attached patch to rpm which adds the necessary quoting. Version-Release number of selected component (if applicable): 4.9.1.2 Steps to Reproduce: $ echo /usr/lib64/ocaml/bigarray.cma | /usr/lib/rpm/ocaml-find-requires.sh Fatal error: exception Sys_error("igarray.cma: No such file or directory") Fatal error: exception Sys_error("igarray.cma: No such file or directory") ocaml(runtime) = 3.12.1 (Note this breaks because 'bigarray' contains a 'b' character) With the patched ocaml-find-requires.sh, it works: $ echo /usr/lib64/ocaml/bigarray.cma | /tmp/ocaml-find-requires.sh ocaml(Array) = 720848e0b508273805ef38d884a57618 ocaml(Complex) = 9aea79838f042027ab9539d587834bc8 ocaml(Pervasives) = db723a1798b122e08919a2bfed062514 ocaml(Unix) = 2a19929a535447ed0c8fc58ae3adc1a0 ocaml(runtime) = 3.12.1