From: Eric S. Raymond Date: Fri, 26 Dec 2003 18:34:15 +0000 (+0000) Subject: Ready to ship with new packaging. X-Git-Tag: 2.4~1 X-Git-Url: http://thyrsus.com/gitweb/?a=commitdiff_plain;h=7f389d17a17f2159dcf642278112fae06a290c74;p=deal.git Ready to ship with new packaging. --- diff --git a/Makefile b/Makefile index 9a020c8..e721bfa 100644 --- a/Makefile +++ b/Makefile @@ -1,14 +1,16 @@ # # Makefile for the card probability calculator # -# Note: When the version changes, you also have to change the RPM spec file. -VERS=2.2 +VERS=2.3 SOURCES = README COPYING Makefile deal.c deal.xml deal.spec deal: deal.c $(CC) -g deal.c -lm -o deal +clean: + rm -f deal deal.1 deal-*.tar.gz deal.o *.rpm *~ + deal-$(VERS).tar.gz: $(SOURCES) deal.1 @ls $(SOURCES) deal.1 | sed s:^:deal-$(VERS)/: >MANIFEST @(cd ..; ln -s deal deal-$(VERS)) @@ -28,14 +30,8 @@ uninstall: dist: deal-$(VERS).tar.gz RPMROOT=/usr/src/redhat -RPM = rpm -RPMFLAGS = -ba rpm: dist - cp deal-$(VERS).tar.gz $(RPMROOT)/SOURCES; - cp deal.spec $(RPMROOT)/SPECS - cd $(RPMROOT)/SPECS; $(RPM) $(RPMFLAGS) deal.spec - cp $(RPMROOT)/RPMS/`arch|sed 's/i[4-9]86/i386/'`/deal-$(VERS)*.rpm . + rpmbuild --define 'myversion $(VERS)' -ta deal-$(VERS).tar.gz + cp $(RPMROOT)/RPMS/*/deal-$(VERS)*.rpm . cp $(RPMROOT)/SRPMS/deal-$(VERS)*.src.rpm . -clean: - rm -f deal deal.1 deal-*.tar.gz deal.o *.rpm *~ diff --git a/deal.spec b/deal.spec index 2d9c8de..d7410fb 100644 --- a/deal.spec +++ b/deal.spec @@ -1,11 +1,12 @@ Name: deal -Version: 2.2 +Version: %{myversion} Release: 1 -URL: http://www.tuxedo.org/~esr/deal/ +URL: http://www.catb.org/~esr/deal/ Source0: %{name}-%{version}.tar.gz License: GPL Group: Applications/Math Summary: calculator for card-draw (nonreplacement) probabilities +%undefine __check_files %description This program is a calculator for card-draw probabilities. Specifically @@ -26,3 +27,8 @@ make install /usr/share/man/man1/deal.1 /usr/bin/deal %doc README COPYING + +%changelog +* Fri Dec 26 2003 Eric S. Raymond 2.3 +- Fixed a man-page bug, updated RPM packaging machinery. + diff --git a/deal.xml b/deal.xml index 1a175ca..24a1218 100644 --- a/deal.xml +++ b/deal.xml @@ -15,14 +15,14 @@ - deal -h -b base -t turns -c columns -g -w - specialstotal + specials + total @@ -38,11 +38,11 @@ the number of special cards contained in those k drawn cards. Then X has a hypergeometric distribution, with the following formula for probabilities: - + B(M, i) * B(N-M, k-i) P(X = i) = --------------------- B(N, k) - + where B(a,b) is the binomial coefficient (read "a choose b"), and is the number of ways to choose b objects out of a possible objects. The @@ -62,22 +62,14 @@ rounds to zero. Impossible outcomes are blank. The program accepts the following options to control its output: - - - -b - - + Number of cards to assume in the initial hand. Note: this defaults to -7, not to 0! +7, not to 0! - - - -g - - + Normally, the program displays the probability that you will have exactly a given number of specials. With @@ -88,88 +80,57 @@ show up in column 0 if nowhere else. - - - -w - - + -Force wide display (3 chars per percentage) to accommodate 100% probabilities. +Force wide display (3 chars per percentage) to accommodate 100% +probabilities. - - - -c - - + Number of table columns to generate in the report. Defaults to the number of specials plus one additional to accommodate the zero column. - - - -h - - + Suppress table headers and legends. - - - -t - - + Set number of draws to display probabilities for (default to 20 or the total number of cards, whichever is less) - - - -v - - + Verbose. Log the computation steps for each hypergeometricoefficient to standard error. Use this for debugging if you are a trained numerical analyst (kids, don't try this yourselves at home!). - - - -B - - + Binomial coefficient test. Compute and print the binomial coefficient B(n, k) or `n choose k'. - - - -G - - + Gamma function test. Compute and display the log of the gamma -function of the argument. If tells you that the computation of -B(n, k) is blowing up, this will enable you to probe the local lgamma -function. +function of the argument. If tells you that the +computation of B(n, k) is blowing up, this will enable you to probe +the local lgamma function. - - - -H - - + Compute the hypergeometric probability H(i, k, M, N) with arguments supplied from the command line. For debugging. @@ -195,18 +156,18 @@ Gathering" deck (MtG starts you with 7 cards): BUGS -The and options widen the column width of the tables to -accommodate 100% probabilities, at the cost of making the table too -wide to display on an 80-column terminal when the number of specials -is more than 17. When wide display is off, on the other hand, 23 -specials will fit in 80 colums, but 100% probabilities can mess up the -table formatting. +The and options widen +the column width of the tables to accommodate 100% probabilities, at +the cost of making the table too wide to display on an 80-column +terminal when the number of specials is more than 17. When wide +display is off, on the other hand, 23 specials will fit in 80 colums, +but 100% probabilities can mess up the table formatting. AUTHOR -Eric S. Raymond <esr@snark.thyrsus.com>. Based on the +Eric S. Raymond esr@snark.thyrsus.com. Based on the `cardprobs' program by Jeremy York. See my home page at http://www.tuxedo.org/~esr +url='http://www.catb.org/~esr'>http://www.catb.org/~esr for updates and other resources.