[Bug 456398] Review Request: why - Why software verification platform
bugzilla at redhat.com
bugzilla at redhat.com
Thu Jul 24 20:11:44 UTC 2008
Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug report.
Summary: Review Request: why - Why software verification platform
https://bugzilla.redhat.com/show_bug.cgi?id=456398
------- Additional Comments From amdunn at gmail.com 2008-07-24 16:11 EST -------
(In reply to comment #2)
I'm addressing these as I write, but I thought it'd be good to comment on how
they're going/what I think about them.
> Must-do's:
> * You renamed "cpulimit" to "why-cpulimit", which is sensible enough, but at
> least gwhy (and maybe others) still call "cpulimit", so the whole thing
fails.
> Quick test:
> sudo yum install -y zenon
> rpmbuild -ba ~/rpmbuild/SPECS/why.spec
> sudo rpm -ivh ~/rpmbuild/RPMS/*/why*.rpm
> cd ~/rpmbuild/BUILD/why-2.13/examples-c/tutorial
> gwhy binary_search.c
> # then click on the "Zenon" column. Nothing works. Doing:
> strace -f -e trace=process gwhy binary_search.c
> # Note that that it's trying to run "cpulimit" instead. Ooops.
> # After fixing that, re-test.
Whoops, that's definitely my fault. Fixed in the next version (another patch).
> * Something else is wrong with the installation; even trivial tests of
> caduceus fail. After building, doing:
> cd ~/rpmbuild/BUILD/why-2.13/examples-c/tutorial
> caduceus max.c
> make -f max.makefile zenon
> Ends in failure. Running:
> strace -v -f -e trace=process make -f max.makefile zenon
> shows that the makefile invokes dp, which in turn tries to call zenon.
> But trying to invoke zenon on the generated file:
> zenon zenon/max_why.znn
> fails with a syntax error. (I guess it's possible it has a bad bug
> in Zenon.)
I figured out that Why's Zenon output is wrong (it changed
between Zenon versions and remained undetected due to the
complete lack of Zenon documentation). I contacted upstream, and
they wrote a patch for me this morning. The change will be added
to the next version of Why.
> * I believe you're missing some "Requires:". I could "yum erase tcl tk",
> and still install ALL the programs (including gwhy). rpm can
automatically
> deduce a lot of dependencies from library information, but it will miss
> stuff (e.g., stuff invoked via shell/command line). I was expecting
> gwhy, at least, to have more dependencies. I think that's a blocker.
I'll look at this.
> * Shouldn't the why-summer-school.tar.gz line include the URL?
No, because I created that file (a few PDFs packaged up).
> * Can you confirm that Fedora has the legal right to redistribute the
included
> documents? Fedora doesn't require the right to modify them (though that'd
be
> nice), but we need to make sure that it's legal to redistributed them. (Of
> course, if we could redistribute the .tex source files, that'd be even
better.)
I'll ask upstream.
> Here are a few suggestions:
> * No %check section. You ought to have SOME test in there, at least as a
> 'smoke test' to make sure everything can run with a trivial input. The
build's
> "bench" subdirectory has useful tests (though you can't run "./bench"
directly -
> looks like they've changed --type-only and didn't fix the tests).
Right, I originally wanted to run their tests, but they didn't
work. I did make my own (exceptionally brief) test, but I haven't
included it yet - I will.
> * You ought to install the examples that come with the distribution, those
in
> the build directory's "examples/" and "examples-c". I suggest copying them
to
> be placed somewhere under /usr/share/doc/..../examples. (you probably want
it
> further organized than that). The Caduceus web page
(http://caduceus.lri.fr/)
> points some out. For the trick to doing this, see:
> http://fedoraproject.org/wiki/PackageMaintainers/PackagingTricks#Examples
The example Makefiles are odd: the library files need to have
already been installed in the right places before the examples
can be compiled. Thus I can't put both in the build section, and
it doesn't seem right to put this in the install section...
> * /usr/bin/dp is an absurdly short name for /usr/bin, and almost certain to
> conflict with SOMETHING. You might consider renaming that, too.
Changing dp's name would require patches for the following files:
Makefile.in
examples/Makefile.common
bench/java/bench
but I believe that's it (however, I could be introducing errors
here... again, maybe I'll suggest this change to upstream instead
who would better know how to fix it)
> * I'm slightly surprised that Caduceus, Krakatoa, and Jessie aren't split
into
> separate packages. Did you consider splitting them up? Debian seems to
have
> done the same thing, so I won't make that a blocker.
I wasn't quite sure, and Debian didn't, so I didn't.
> * Is there other documentation you can include, e.g., specifically for
Caduceus,
> Krakatoa, and Jessie? I see that the makefile can generate the documents,
but
> that the release doesn't include the source .tex files.
I'll check on that.
> * The description isn't very clear for the unwashed masses, and it should
> clearly suggest installing zenon and Coq. Also: I don't think "why" accepts
ML,
> really; it accepts the "why" language, which is ML-like but isn't ML.
True - I'll clarify that.
--
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
More information about the Fedora-package-review
mailing list