1: LON-CAPA perl modules
2: Scott Harrison
3: May 28, 2001
4: October 4, 2001
5: October 20, 2001
6:
7: Beginning to
8: index the perl modules
9: used in constructing
10: LON-CAPA-systemperl
11:
12: You can run CVS:loncom/build/system_dependencies/make perltest
13: to see if you have all the perl modules you need.
14:
15: Not ordinarily on a 6.2 or 7.1 system
16:
17: ----------------------------------------------- Digest
18: ***NEED TO HAVE DIGEST::MD5, etc IN HERE***
19:
20: ----------------------------------------------- Math-FFT
21: http://www.linuxjar.com/CPAN/authors/id/R/RK/RKOBES/Math-FFT-0.25.tar.gz
22: Randy Kobes [randy@theoryx5.uwinnipeg.ca]
23:
24: The Math::FFT module provides an interface to various
25: Fast Fourier Transform (FFT) routines of the C routine of fft4g.c,
26: available at http://momonga.t.u-tokyo.ac.jp/~ooura/fft.html.
27: The one-dimensional data sets, of size 2^n, are assumed
28: to be sampled at a constant rate.
29:
30:
31: ----------------------------------------------- GDTextUtil
32: http://www.cpan.org/authors/id/MVERB/GDTextUtil-0.80.tar.gz
33: This are Text utilities for use with the GD drawing package.
34:
35: ----------------------------------------------- GDGraph3d
36: http://www.cpan.org/authors/id/W/WA/WADG/GDGraph3d-0.56.tar.gz
37: provides 3D graphs for the GD::Graph module by Martien Verbruggen
38: AUTHOR
39: Jeremy Wadsack for Wadsack-Allen Digital Group.
40: <dgsupport@wadsack-allen.com>
41:
42: ----------------------------------------------- GDGraph
43: http://www.cpan.org/authors/id/MVERB/GDGraph-1.33.tar.gz
44: a package to generate charts
45: AUTHOR
46:
47: Martien Verbruggen
48: mgjv@tradingpost.com.au
49:
50: FIRST PNG PORT as Chart::PNGgraph
51:
52: Steve Bonds
53: sbonds@agora.rdrop.com
54:
55: ----------------------------------------------- Math-Cephes
56: http://www.cpan.org/authors/id/R/RK/RKOBES/Math-Cephes-0.25.tar.gz
57: The Math::Cephes module provides a perl interface to over
58: 150 functions of the cephes math library of Stephen Moshier
59: [moshier@mediaone.net].
60:
61: Perl interface by Randy Kobes [randy@theoryx5.uwinnipeg.ca].
62:
63: Note, bit arithmetic makes this build architecture dependent
64: for only IBM-PC-like computers.
65:
66: perl Makefile.PL
67: make
68: make test
69: make install
70:
71: files
72:
73: ----------------------------------------------- Math-Random
74: http://www.cpan.org/authors/id/G/GR/GROMMEL/Math-Random-0.64.tar.gz
75:
76: Written by Geoffrey Rommel, John Venier and Barry W. Brown.
77: We use this for the encoded randomizing functions needed for LON-CAPA homework
78: handling (translation from previous CAPA functions).
79:
80: John Venier [venier@odin.mdacc.tmc.edu]
81:
82: perl Makefile.PL
83: make
84: make test
85: make install
86:
87: ----------------------------------------------- GD-Barcode
88: http://www.cpan.org/modules/by-module/GD/GD-Barcode-1.13.tar.gz
89: Kawai Takanori [GCD00051@nifty.ne.jp]
90: GD/Barcode.pm
91: GD/Barcode/COOP2of5.pm
92: GD/Barcode/Code39.pm
93: GD/Barcode/EAN13.pm
94: GD/Barcode/EAN8.pm
95: GD/Barcode/IATA2of5.pm
96: GD/Barcode/ITF.pm
97: GD/Barcode/Industrial2of5.pm
98: GD/Barcode/Matrix2of5.pm
99: GD/Barcode/NW7.pm
100: GD/Barcode/UPCA.pm
101: GD/Barcode/UPCE.pm
102: perl Makefile.PL
103: make
104: make test
105: (as root)
106: make install
107:
108: ----------------------------------------------- GD
109: http://www.cpan.org/modules/by-module/GD/GD-1.33.tar.gz
110: GD.pm
111: Lincoln D. Stein [lstein@cshl.org]
112:
113: Note: need gd-devel rpm for this
114: and libpng-devel
115: and freetype-devel
116: and X11-devel
117: #no this command: ln -s /usr/X11R6/lib/libX11.so.6 /usr/X11R6/lib/libX11.so
118: #no this command: ln -s /usr/X11R6/lib/libXpm.so.4 /usr/X11R6/lib/libXpm.so
119:
120: perl Makefile.PL
121: Please choose the features that match how libgd was built:
122: Build JPEG support? [y]
123: Build FreeType support? [y]
124: Build XPM support? [y]
125:
126: make
127: make test
128: (as root)
129: make install
130: (may also possibly need
131: http://www.boutell.com/gd/http/gd-1.8.4.tar.gz, see doc/barcode.html)
132:
133: ----------------------------------------------- Algorithm-Diff
134: http://www.cpan.org/authors/id/N/NE/NEDKONZ/Algorithm-Diff-1.11a.tar.gz
135: Algorithm/Diff.pm
136: Algorithm/Diffold.pm
137:
138: perl Makefile.PL
139: make
140: make test
141: (as root)
142: make install
143:
144: ---------------------------------------------- libwww-perl
145: http://www.cpan.org/authors/id/G/GA/GAAS/libwww-perl-5.53.tar.gz
146: HTTP/Cookies.pm
147: HTTP/Daemon.pm
148: HTTP/Date.pm
149: HTTP/Headers.pm
150: HTTP/Headers/Auth.pm
151: HTTP/Headers/ETag.pm
152: HTTP/Headers/Util.pm
153: HTTP/Message.pm
154: HTTP/Negotiate.pm
155: HTTP/Request.pm
156: HTTP/Request/Common.pm
157: HTTP/Response.pm
158: HTTP/Status.pm
159: BUNDLE/LWP.pm
160: File/Listing.pm
161: HTML/Form.pm
162: LWP.pm
163: LWP/Authen/Basic.pm
164: LWP/Authen/Digest.pm
165: LWP/Debug.pm
166: LWP/MediaTypes.pm
167: LWP/MemberMixin.pm
168: LWP/Protocol.pm
169: LWP/Protocol/data.pm
170: LWP/Protocol/file.pm
171: LWP/Protocol/ftp.pm
172: LWP/Protocol/gopher.pm
173: LWP/Protocol/http.pm
174: LWP/Protocol/https.pm
175: LWP/Protocol/mailto.pm
176: LWP/Protocol/nntp.pm
177: LWP/RobotUA.pm
178: LWP/Simple.pm
179: LWP/UserAgent.pm
180:
181: (needs URI, HTML::Parser, MIME::Base64, Net::FTP)
182:
183: Gisle Aas [gisle@aas.no]
184:
185: perl Makefile.PL
186: make
187: make test
188: (as root)
189: make install
190:
191: ---------------------------------------------- HTML-Tagset
192: http://www.cpan.org/authors/id/S/SB/SBURKE/HTML-Tagset-3.03.tar.gz
193: Sean M. Burke [sburke@cpan.org]
194: HTML/Tagset.pm
195:
196: ---------------------------------------------- HTML-Tree
197: http://www.cpan.org/authors/id/S/SB/SBURKE/HTML-Tree-3.11.tar.gz
198: Gisle Aas [gisle@aas.no]
199: Sean M. Burke [sburke@cpan.org]
200: HTML/Tree.pm
201: HTML/TreeBuilder.pm
202: HTML/AsSubs.pm
203: HTML/Element.pm
204: HTML/Element/traverse.pm
205: HTML/Parse.pm
206:
207: ---------------------------------------------- HTML-Parser
208: http://www.cpan.org/authors/id/G/GA/GAAS/HTML-Parser-3.25.tar.gz
209: Gisle Aas [gisle@aas.no]
210: HTML/Parser.pm 1
211: HTML/TokeParser.pm 1
212:
213: Need these patches applied:
214:
215: diff -urN HTML-Parser-3.25/hparser.c HTML-Parser-3.25.1/hparser.c
216: --- HTML-Parser-3.25/hparser.c Thu May 10 15:27:28 2001
217: +++ HTML-Parser-3.25.1/hparser.c Wed Feb 20 13:23:34 2002
218: @@ -1094,14 +1094,21 @@
219: hctype_t tag_name_first, tag_name_char;
220: hctype_t attr_name_first, attr_name_char;
221:
222: - if (p_state->strict_names || p_state->xml_mode) {
223: + if (p_state->strict_names) {
224: tag_name_first = attr_name_first = HCTYPE_NAME_FIRST;
225: tag_name_char = attr_name_char = HCTYPE_NAME_CHAR;
226: }
227: else {
228: - tag_name_first = tag_name_char = HCTYPE_NOT_SPACE_GT;
229: - attr_name_first = HCTYPE_NOT_SPACE_GT;
230: - attr_name_char = HCTYPE_NOT_SPACE_EQ_GT;
231: + if (p_state->xml_mode) {
232: + tag_name_first = tag_name_char = HCTYPE_NOT_SPACE_SLASH_GT;
233: + attr_name_first = HCTYPE_NOT_SPACE_SLASH_GT;
234: + attr_name_char = HCTYPE_NOT_SPACE_EQ_GT;
235: + }
236: + else {
237: + tag_name_first = tag_name_char = HCTYPE_NOT_SPACE_GT;
238: + attr_name_first = HCTYPE_NOT_SPACE_GT;
239: + attr_name_char = HCTYPE_NOT_SPACE_EQ_GT;
240: + }
241: }
242:
243: s += 2;
244: @@ -1158,8 +1165,11 @@
245: else {
246: char *word_start = s;
247: while (s < end && isHNOT_SPACE_GT(*s)) {
248: - if (p_state->xml_mode && *s == '/')
249: - break;
250: + if (p_state->xml_mode && *s == '/') {
251: + /* look ahead to see if the tag ends */
252: + if ((s+1)==end || *(s+1)=='>')
253: + break;
254: + }
255: s++;
256: }
257: if (s == end)
258:
259: diff -urN HTML-Parser-3.25/Parser.pm HTML-Parser-3.25.2/Parser.pm
260: --- HTML-Parser-3.25/Parser.pm Fri May 11 13:24:09 2001
261: +++ HTML-Parser-3.25.2/Parser.pm Wed Mar 6 16:47:46 2002
262: @@ -427,6 +427,11 @@
263: There are currently no events associated with the marked section
264: markup, but the text can be returned as C<skipped_text>.
265:
266: +=item $p->encoded_entities( [$bool] )
267: +
268: +By default, attr and @attr decode general enitites for attribute values.
269: +This turns off that behavior.
270: +
271: =back
272:
273: As markup and text is recognized, handlers are invoked. The following
274: diff -urN HTML-Parser-3.25/Parser.xs HTML-Parser-3.25.2/Parser.xs
275: --- HTML-Parser-3.25/Parser.xs Thu May 10 15:27:28 2001
276: +++ HTML-Parser-3.25.2/Parser.xs Wed Mar 6 16:48:56 2002
277: @@ -297,6 +297,7 @@
278: HTML::Parser::xml_mode = 3
279: HTML::Parser::unbroken_text = 4
280: HTML::Parser::marked_sections = 5
281: + HTML::Parser::encoded_entities = 6
282: PREINIT:
283: bool *attr;
284: CODE:
285: @@ -311,6 +312,7 @@
286: #else
287: croak("marked sections not supported"); break;
288: #endif
289: + case 6: attr = &pstate->encoded_entities; break;
290: default:
291: croak("Unknown boolean attribute (%d)", ix);
292: }
293: diff -urN HTML-Parser-3.25/hparser.c HTML-Parser-3.25.2/hparser.c
294: --- HTML-Parser-3.25/hparser.c Thu May 10 15:27:28 2001
295: +++ HTML-Parser-3.25.2/hparser.c Wed Mar 6 16:44:47 2002
296: @@ -398,7 +398,8 @@
297: beg++; len -= 2;
298: }
299: attrval = newSVpvn(beg, len);
300: - decode_entities(aTHX_ attrval, p_state->entity2char);
301: + if (!p_state->encoded_entities)
302: + decode_entities(aTHX_ attrval, p_state->entity2char);
303: }
304: else { /* boolean */
305: if (p_state->bool_attr_val)
306: diff -urN HTML-Parser-3.25/hparser.h HTML-Parser-3.25.2/hparser.h
307: --- HTML-Parser-3.25/hparser.h Tue May 8 13:03:27 2001
308: +++ HTML-Parser-3.25.2/hparser.h Wed Mar 6 16:48:18 2002
309: @@ -99,6 +99,7 @@
310: bool strict_names;
311: bool xml_mode;
312: bool unbroken_text;
313: + bool encoded_entities;
314:
315: /* other configuration stuff */
316: SV* bool_attr_val;
317: diff -urN HTML-Parser-3.25/t/encoded-entities.t HTML-Parser-3.25.2/t/encoded-entities.t
318: --- HTML-Parser-3.25/t/encoded-entities.t Wed Dec 31 19:00:00 1969
319: +++ HTML-Parser-3.25.2/t/encoded-entities.t Wed Mar 6 17:13:53 2002
320: @@ -0,0 +1,32 @@
321: +use strict;
322: +print "1..2\n";
323: +
324: +use HTML::Parser ();
325: +my $p = HTML::Parser->new();
326: +$p->encoded_entities(1);
327: +
328: +my $text = "";
329: +$p->handler(start =>
330: + sub {
331: + my($tag, $attr) = @_;
332: + $text .= "S[$tag";
333: + for my $k (sort keys %$attr) {
334: + my $v = $attr->{$k};
335: + $text .= " $k=$v";
336: + }
337: + $text .= "]";
338: + }, "tagname,attr");
339: +
340: +my $html = <<'EOT';
341: +<tag arg="&<>">
342: +EOT
343: +
344: +$p->parse($html)->eof;
345: +
346: +print "not " unless $text eq 'S[tag arg=&<>]'; print "ok 1\n";
347: +
348: +$text = "";
349: +$p->encoded_entities(0);
350: +$p->parse($html)->eof;
351: +
352: +print "not " unless $text eq 'S[tag arg=&<>]'; print "ok 2\n";
353:
354: ---------------------------------------------- IO-stringy
355: http://www.cpan.org/authors/id/E/ER/ERYQ/IO-stringy-2.108.tar.gz
356: (needed by MIME-tools)
357:
358: ---------------------------------------------- MIME-Base64
359: http://www.cpan.org/authors/id/G/GA/GAAS/MIME-Base64-2.12.tar.gz
360:
361:
362: ---------------------------------------------- MailTools
363: http://www.cpan.org/authors/id/G/GB/GBARR/MailTools-1.15.tar.gz
364:
365: ---------------------------------------------- MIME-tools
366: http://www.cpan.org/authors/id/E/ER/ERYQ/MIME-tools-BETA-5.503.tar.gz
367: Eryq, (eryq@zeegee.com)
368: MIME/Body.pm
369: MIME/Decoder.pm
370: MIME/Decoder/Base64.pm
371: MIME/Decoder/Binary.pm
372: MIME/Decoder/Gzip64.pm
373: MIME/Decoder/NBit.pm
374: MIME/Decoder/QuotedPrint.pm
375: MIME/Decoder/UU.pm
376: MIME/Entity.pm
377: MIME/Field/ConTraEnc.pm
378: MIME/Field/ContDisp.pm
379: MIME/Field/ContType.pm
380: MIME/Field/ParamVal.pm
381: MIME/Head.pm
382: MIME/Parser.pm
383: MIME/Parser/Filer.pm
384: MIME/Parser/Reader.pm
385: MIME/Parser/Results.pm
386: MIME/Tools.pm
387: MIME/Words.pm
388:
389: ----------------------------------------------- libnet
390: http://www.cpan.org/authors/id/G/GB/GBARR/libnet-1.0704.tar.gz
391: http://www.cpan.org/authors/id/GBARR/Net-PH-2.21.tar.gz
392: http://www.cpan.org/authors/id/GBARR/Net-SNPP-1.12.tar.gz
393:
394: Graham Barr [gbarr@pobox.com]
395: Net/Cmd.pm
396: Net/Config.pm
397: Net/Domain.pm
398: Net/DummyInetd.pm
399: Net/FTP.pm
400: Net/FTP/A.pm
401: Net/FTP/E.pm
402: Net/FTP/I.pm
403: Net/FTP/L.pm
404: Net/FTP/dataconn.pm
405: Net/NNTP.pm
406: Net/Netrc.pm
407: Net/PH.pm
408: Net/POP3.pm
409: Net/SMTP.pm
410: Net/SNPP.pm
411: Net/Time.pm
412:
413: ---------------------------------------------- Text-Query-...
414: http://www.cpan.org/authors/id/E/EB/EBOHLMAN/Text-Query-Advanced-0.05.tar.gz
415: http://www.cpan.org/authors/id/E/EB/EBOHLMAN/Text-Query-0.07.tar.gz
416: http://www.cpan.org/authors/id/E/EB/EBOHLMAN/Text-Query-Simple-0.03.tar.gz
417: Eric Bohlman [ebohlman@netcom.com]
418: Loic Dachary [loic@senga.org]
419: Text/Query.pm
420: Text/Query/Advanced.pm
421: Text/Query/Build.pm
422: Text/Query/BuildAdvancedString.pm
423: Text/Query/BuildSimpleString.pm
424: Text/Query/Optimize.pm
425: Text/Query/Parse.pm
426: Text/Query/ParseAdvanced.pm
427: Text/Query/ParseSimple.pm
428: Text/Query/Simple.pm
429: Text/Query/Solve.pm
430: Text/Query/SolveAdvancedString.pm
431: Text/Query/SolveSimpleString.pm
432:
433: ---------------------------------------------- Krb4
434: http://www.cpan.org/authors/id/J/JH/JHORWITZ/Krb4-1.1.tar.gz
435: Need kerberos 4 from http://sunsite.ualberta.ca/pub/Mirror/kth-krb/src/
436: [root@kirk krb4-0.10.1]# diff configure.in configure.in~
437: 27c27
438: < AC_PREFIX_DEFAULT(/usr/local/krb4)
439: ---
440: > AC_PREFIX_DEFAULT(/usr/athena)
441: /usr/local/krb4 is what you want on this line!!!!
442: autoconf configure.in > configure
443:
444: autoconf must be 2.52 so compile this from source too
445: also install flex to configure krb4
446: and install yacc
447: Jeff Horwitz [jeff@smashing.org]
448: Authen/Krb4.pm
449:
450: ---------------------------------------------- Crypt-DES/IDEA
451: http://www.cpan.org/authors/id/D/DP/DPARIS/Crypt-DES-2.03.tar.gz
452: http://www.cpan.org/authors/id/D/DP/DPARIS/Crypt-IDEA-1.01.tar.gz
453: Dave Paris [amused@pobox.com]
454: Crypt/DES.pm
455: Crypt/IDEA.pm
456:
457: ---------------------------------------------- DBI
458: http://www.cpan.org/authors/id/T/TI/TIMB/DBI-1.20.tar.gz
459: Tim Bunce [Tim.Bunce@pobox.com]
460: DBD/ADO.pm
461: DBD/ExampleP.pm
462: DBD/Multiplex.pm
463: DBD/NullP.pm
464: DBD/Proxy.pm
465: DBD/Sponge.pm
466: DBD/mysql.pm
467: DBI.pm
468: DBI/DBD.pm
469: DBI/FAQ.pm
470: DBI/Format.pm
471: DBI/ProxyServer.pm
472: DBI/Shell.pm
473: DBI/W32ODBC.pm
474:
475: ---------------------------------------------- Safe-Hole
476: http://www.cpan.org/authors/id/S/SE/SEYN/Safe-Hole-0.08.tar.gz
477: Sey Nakajima [sey@jkc.co.jp]
478:
479: ---------------------------------------------- Msql-Mysql-modules
480: http://www.cpan.org/authors/id/J/JW/JWIED/Msql-Mysql-modules-1.2216.tar.gz
481: Jochen Wiedmann [joe@ispsoft.de]
482:
483: [root@fenchurch Msql-Mysql-modules-1.2215]# perl Makefile.PL
484: Which drivers do you want to install?
485:
486: 1) MySQL only
487: 2) mSQL only (either of mSQL 1 or mSQL 2)
488: 3) MySQL and mSQL (either of mSQL 1 or mSQL 2)
489:
490: 4) mSQL 1 and mSQL 2
491: 5) MySQL, mSQL 1 and mSQL 2
492:
493: Enter the appropriate number: [3] 1
494:
495: Do you want to install the MysqlPerl emulation? You might keep your old
496: Mysql module (to be distinguished from DBD::mysql!) if you are concerned
497: about compatibility to existing applications! [y] n
498: Where is your MySQL installed? Please tell me the directory that
499: contains the subdir 'include'. [/usr/local/mysql]
500: Which database should I use for testing the MySQL drivers? [test]
501: On which host is database test running (hostname, ip address
502: or host:port) [localhost]
503: User name for connecting to database test? [undef]
504: Password for connecting to database test? [undef]
505: [root@fenchurch Msql-Mysql-modules-1.2215]# make
506: [root@fenchurch Msql-Mysql-modules-1.2215]# make test
507: make[1]: Entering directory `/home/user/Msql-Mysql-modules-1.2215/mysql'
508: make[1]: Leaving directory `/home/user/Msql-Mysql-modules-1.2215/mysql'
509: make[1]: Entering directory `/home/user/Msql-Mysql-modules-1.2215/mysql'
510: PERL_DL_NONLAZY=1 /usr/bin/perl -I../blib/arch -I../blib/lib -I/usr/lib/perl5/5.00503/i386-linux -I/usr/lib/perl5/5.00503 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
511:
512: To test, make sure that root does not have a password
513: in the mysql::user table. (You should reset the password
514: after this with mysqladmin -u root password 'new-password').
515:
516: ---------------------------------------------- mod_perl
517: http://www.cpan.org/authors/id/DOUGM/mod_perl-1.26.tar.gz
518:
519: Just 6.2 needs these extras
520:
521: ---------------------------------------------- IO
522: http://www.cpan.org/authors/id/G/GB/GBARR/IO-1.20.tar.gz
523: Graham Barr [gbarr@pobox.com]
524: IO/Dir.pm
525: IO/Poll.pm
526: IO/Socket/INET.pm
527: IO/Socket/UNIX.pm
528:
529:
530: **** IMPORTANT NOTE ****
531: For things to work well for perl 5.005 (redhat 6.2)
532: older versions of
533: /usr/lib/perl5/5.00503/i386-linux/IO.pm
534: /usr/lib/perl5/5.00503/i386-linux/IO/File.pm
535: /usr/lib/perl5/5.00503/i386-linux/IO/Handle.pm
536: /usr/lib/perl5/5.00503/i386-linux/IO/Pipe.pm
537: /usr/lib/perl5/5.00503/i386-linux/IO/Seekable.pm
538: /usr/lib/perl5/5.00503/i386-linux/IO/Select.pm
539: /usr/lib/perl5/5.00503/i386-linux/IO/Socket.pm
540: /usr/lib/perl5/5.00503/i386-linux/auto/IO/IO.so
541: are needed (can rewrite with rpm -Uvh perl after
542: installing LON-CAPA-systemperl).
543:
544: perl Makefile.PL
545: make
546: make test
547: (as root)
548: make install
549:
550:
551: and others...
552: (document incomplete)
553:
554: cat systemperl_files.txt | perl make_rpm.pl systemperl 3.1 '' '' SYSTEMPERL
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>