summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlperl/lib/auto
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2010-05-12 16:54:37 +0000
committerNorbert Preining <preining@logic.at>2010-05-12 16:54:37 +0000
commit661c41a09e39a182865e0b51e34cc995a0dc96e8 (patch)
tree2f79bb1406e22fdcb2587be8ffda6c0c609d7932 /Master/tlpkg/tlperl/lib/auto
parentb645030efc22e13c2498a1522083634ab91b2de1 (diff)
move tlperl.straw to tlperl
git-svn-id: svn://tug.org/texlive/trunk@18210 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg/tlperl/lib/auto')
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Algorithm/Diff/.packlist6
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Archive/Extract/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Archive/Tar/.packlist7
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Archive/Zip/.packlist15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Attribute/Handlers/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/AutoLoader/.packlist2
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/B/B.dllbin0 -> 120832 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/BerkeleyDB/.packlist7
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/BerkeleyDB/BerkeleyDB.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/BerkeleyDB/BerkeleyDB.dllbin0 -> 1519616 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/BerkeleyDB/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/CGI/.packlist9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/CPAN/.packlist37
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/CPAN/Checksums/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/CPAN/DistnameInfo/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/CPAN/Inject/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/CPAN/SQLite/.packlist13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/CPANPLUS/.packlist47
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/CPANPLUS/Dist/Build/.packlist2
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Class/ErrorHandler/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Class/ISA/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Class/Loader/.packlist2
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Bzip2/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Bzip2/Bzip2.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Bzip2/Bzip2.dllbin0 -> 113152 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Bzip2/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/Bzip2.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/Bzip2.dllbin0 -> 81408 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/Zlib.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/Zlib.dllbin0 -> 120832 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/Zlib/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/unLZMA/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/unLZMA/unLZMA.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Compress/unLZMA/unLZMA.dllbin0 -> 14848 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Convert/ASCII/Armour/.packlist2
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Convert/ASN1/.packlist7
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Convert/PEM/.packlist2
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/Blowfish/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/Blowfish/Blowfish.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/Blowfish/Blowfish.dllbin0 -> 15872 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/.packlist6
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/autosplit.ix7
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/decrypt.al47
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/encrypt.al44
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/init.al69
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/CBC/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/DES/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/DES/DES.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/DES/DES.dllbin0 -> 15360 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/DES_EDE3/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/DH/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/DSA/.packlist7
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/IDEA/.packlist5
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/IDEA/IDEA.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/IDEA/IDEA.dllbin0 -> 10752 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/OpenPGP/.packlist39
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/Primes/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/.packlist5
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/RIPEMD160.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/RIPEMD160.dllbin0 -> 17920 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/RSA/.packlist14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/Random/.packlist9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/Rijndael/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/Rijndael/Rijndael.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/Rijndael/Rijndael.dllbin0 -> 18432 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/SSLeay/.packlist9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/SSLeay/SSLeay.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/SSLeay/SSLeay.dllbin0 -> 29184 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/Twofish/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/Twofish/Twofish.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Crypt/Twofish/Twofish.dllbin0 -> 23040 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Cwd/.packlist12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Cwd/Cwd.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Cwd/Cwd.dllbin0 -> 12288 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/ODBC/.packlist5
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/ODBC/ODBC.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/ODBC/ODBC.dllbin0 -> 111104 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/Pg/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/Pg/Pg.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/Pg/Pg.dllbin0 -> 238080 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/SQLite/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/SQLite/SQLite.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/SQLite/SQLite.dllbin0 -> 512000 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/mysql/.packlist6
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/mysql/libmysql.dllbin0 -> 2359296 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/mysql/mysql.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBD/mysql/mysql.dllbin0 -> 98816 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBI/.packlist66
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBI/DBI.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBI/DBI.dllbin0 -> 118784 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBI/DBIXS.h519
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBI/Driver.xst775
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBI/Driver_xst.h118
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBI/dbd_xsh.h58
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBI/dbi_sql.h96
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBI/dbipport.h4954
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBI/dbivport.h52
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBI/dbixs_rev.h2
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBIx/Simple/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DBM/Deep/.packlist8
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DB_File/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DB_File/DB_File.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DB_File/DB_File.dllbin0 -> 1341440 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DB_File/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Data/Buffer/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Data/Compare/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Data/Dumper/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Data/Dumper/Dumper.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Data/Dumper/Dumper.dllbin0 -> 33280 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Data/Random/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Devel/DProf/DProf.dllbin0 -> 16384 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Devel/PPPort/PPPort.dllbin0 -> 108032 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Devel/Peek/Peek.dllbin0 -> 15360 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Digest/BubbleBabble/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Digest/MD2/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Digest/MD2/MD2.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Digest/MD2/MD2.dllbin0 -> 13312 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Digest/MD5/MD5.dllbin0 -> 15360 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Digest/SHA/.packlist5
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Digest/SHA/SHA.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Digest/SHA/SHA.dllbin0 -> 46592 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Digest/SHA1/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Digest/SHA1/SHA1.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Digest/SHA1/SHA1.dllbin0 -> 17408 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DynaLoader/autosplit.ix8
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DynaLoader/dl_expandspec.al31
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DynaLoader/dl_find_symbol_anywhere.al19
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/DynaLoader/dl_findfile.al86
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/.packlist56
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/Byte/Byte.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/Byte/Byte.dllbin0 -> 110592 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/CN/CN.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/CN/CN.dllbin0 -> 742400 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/EBCDIC/EBCDIC.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/EBCDIC/EBCDIC.dllbin0 -> 17920 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/Encode.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/Encode.dllbin0 -> 31744 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/JP/JP.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/JP/JP.dllbin0 -> 858624 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/KR/KR.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/KR/KR.dllbin0 -> 813568 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/Symbol/Symbol.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/Symbol/Symbol.dllbin0 -> 22016 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/TW/TW.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/TW/TW.dllbin0 -> 759808 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/Unicode/Unicode.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Encode/Unicode/Unicode.dllbin0 -> 20992 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/ExtUtils/CBuilder/.packlist13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/ExtUtils/MakeMaker/.packlist30
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/ExtUtils/Manifest/.packlist2
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/ExtUtils/ParseXS/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/FCGI/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/FCGI/FCGI.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/FCGI/FCGI.dllbin0 -> 51200 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Fcntl/Fcntl.dllbin0 -> 12288 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/File/Fetch/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/File/Find/Rule/.packlist5
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/File/Glob/Glob.dllbin0 -> 16896 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/File/HomeDir/.packlist8
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/File/Path/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/File/Remove/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/File/Which/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/File/chmod/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/File/pushd/.packlist2
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Filter/Util/Call/Call.dllbin0 -> 13824 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/GD/.packlist12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/GD/GD.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/GD/GD.dllbin0 -> 118272 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/GD/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/GDBM_File/GDBM_File.dllbin0 -> 41984 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/HTML/Parser/.packlist9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/HTML/Parser/Parser.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/HTML/Parser/Parser.dllbin0 -> 44032 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/HTML/Tagset/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Hash/Util/FieldHash/FieldHash.dllbin0 -> 17408 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Hash/Util/Util.dllbin0 -> 10240 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/IO/IO.dllbin0 -> 16896 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/IO/Socket/SSL/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/IO/String/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/IO/Zlib/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/IPC/Cmd/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/IPC/Run3/.packlist6
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/IPC/System/Simple/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/.packlist84
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/CountColor/CountColor.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/CountColor/CountColor.dllbin0 -> 9728 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/File/ICO/ICO.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/File/ICO/ICO.dllbin0 -> 28160 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/File/SGI/SGI.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/File/SGI/SGI.dllbin0 -> 23040 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/Filter/DynTest/DynTest.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/Filter/DynTest/DynTest.dllbin0 -> 9728 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/Filter/Flines/Flines.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/Filter/Flines/Flines.dllbin0 -> 9728 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/Filter/Mandelbrot/Mandelbrot.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/Filter/Mandelbrot/Mandelbrot.dllbin0 -> 10752 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/Imager.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Imager/Imager.dllbin0 -> 573440 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/JSON/.packlist6
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/JSON/XS/.packlist6
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/JSON/XS/XS.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/JSON/XS/XS.dllbin0 -> 55296 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/LWP/Online/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/List/Util/.packlist7
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/List/Util/Util.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/List/Util/Util.dllbin0 -> 26112 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Locale/Maketext/Simple/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Log/Message/Simple/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/MIME/Base64/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/MIME/Base64/Base64.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/MIME/Base64/Base64.dllbin0 -> 12800 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Math/BigInt/FastCalc/FastCalc.dllbin0 -> 17920 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Math/BigInt/GMP/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Math/BigInt/GMP/GMP.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Math/BigInt/GMP/GMP.dllbin0 -> 113152 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Math/BigRat/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Math/GMP/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Math/GMP/GMP.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Math/GMP/GMP.dllbin0 -> 124416 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Math/GMP/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Math/Pari/.packlist6
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Math/Pari/Pari.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Math/Pari/Pari.dllbin0 -> 2341376 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Module/Build/.packlist34
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Module/CoreList/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Module/Load/Conditional/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Module/Loaded/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Module/Signature/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SMTP/TLS/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/.packlist79
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/SSLeay.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/SSLeay.dllbin0 -> 233472 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/autosplit.ix78
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/debug_read.al22
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https2.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https3.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https4.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/do_httpx2.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/do_httpx3.al43
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/do_httpx4.al19
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/dump_peer_certificate.al29
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/get_http.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/get_http3.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/get_http4.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/get_https.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/get_https3.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/get_https4.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/get_httpx.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/get_httpx3.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/get_httpx4.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/head_http.al10
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/head_http3.al10
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/head_http4.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/head_https.al10
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/head_https3.al10
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/head_https4.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/head_httpx.al10
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/head_httpx3.al10
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/head_httpx4.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/http_cat.al34
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/https_cat.al97
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/httpx_cat.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/make_form.al25
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/make_headers.al21
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/new_x_ctx.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/open_proxy_tcp_connection.al31
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/open_tcp_connection.al40
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/post_http.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/post_http3.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/post_http4.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/post_https.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/post_https3.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/post_https4.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/post_httpx.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/post_httpx3.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/post_httpx4.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/put_http.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/put_http3.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/put_http4.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/put_https.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/put_https3.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/put_https4.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/put_httpx.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/put_httpx3.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/put_httpx4.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/randomize.al31
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/set_cert_and_key.al23
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/set_proxy.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/set_server_cert_and_key.al14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_read_CRLF.al10
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_read_all.al28
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_read_until.al95
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_write_CRLF.al23
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_write_all.al38
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/sslcat.al99
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_read_CRLF.al11
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_read_all.al26
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_read_until.al34
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_write_CRLF.al23
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_write_all.al36
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/tcpcat.al37
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/tcpxcat.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/want_X509_lookup.al15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/want_nothing.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/want_read.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Net/SSLeay/want_write.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Number/Compare/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Object/Accessor/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Opcode/Opcode.dllbin0 -> 20992 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/PAR/.packlist7
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/PAR/Dist/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/PAR/Dist/FromPPD/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/PAR/Dist/InstallPPD/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/PAR/Repository/Client/.packlist5
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/PAR/Repository/Query/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/POSIX.dllbin0 -> 88064 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigAction/flags.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigAction/handler.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigAction/mask.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigAction/new.al11
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigAction/safe.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigRt/CLEAR.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigRt/DELETE.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigRt/EXISTS.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigRt/FETCH.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigRt/SCALAR.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigRt/STORE.al9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigRt/_check.al15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigRt/_croak.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigRt/_exist.al14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigRt/_getsig.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigRt/_init.al14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/SigRt/new.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/abs.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/alarm.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/assert.al15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/atan2.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/atexit.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/atof.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/atoi.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/atol.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/autosplit.ix173
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/bsearch.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/calloc.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/chdir.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/chmod.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/chown.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/clearerr.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/closedir.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/cos.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/creat.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/div.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/errno.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/execl.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/execle.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/execlp.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/execv.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/execve.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/execvp.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/exit.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/exp.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fabs.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fclose.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fcntl.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fdopen.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/feof.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/ferror.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fflush.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fgetc.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fgetpos.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fgets.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fileno.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fopen.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fork.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fprintf.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fputc.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fputs.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fread.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/free.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/freopen.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fscanf.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fseek.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fsetpos.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fstat.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fsync.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/ftell.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/fwrite.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getc.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getchar.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getegid.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getenv.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/geteuid.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getgid.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getgrgid.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getgrnam.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getgroups.al14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getlogin.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getpgrp.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getpid.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getppid.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getpwnam.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getpwuid.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/gets.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/getuid.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/gmtime.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/isatty.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/kill.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/labs.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/ldiv.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/link.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/load_imports.al230
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/localtime.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/log.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/longjmp.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/malloc.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/memchr.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/memcmp.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/memcpy.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/memmove.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/memset.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/mkdir.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/offsetof.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/opendir.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/perror.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/pow.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/printf.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/putc.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/putchar.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/puts.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/qsort.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/raise.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/rand.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/readdir.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/realloc.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/redef.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/remove.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/rename.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/rewind.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/rewinddir.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/rmdir.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/scanf.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/setbuf.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/setjmp.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/setvbuf.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/siglongjmp.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/sigsetjmp.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/sin.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/sleep.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/sprintf.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/sqrt.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/srand.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/sscanf.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/stat.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strcat.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strchr.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strcmp.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strcpy.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strcspn.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strerror.al14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strlen.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strncat.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strncmp.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strncpy.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strpbrk.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strrchr.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strspn.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strstr.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/strtok.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/system.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/time.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/tmpfile.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/tolower.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/toupper.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/umask.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/ungetc.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/unimpl.al14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/unlink.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/usage.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/utime.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/vfprintf.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/vprintf.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/vsprintf.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/wait.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/POSIX/waitpid.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/PPM/.packlist10
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Params/Util/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Params/Util/Util.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Params/Util/Util.dllbin0 -> 16384 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Parse/Binary/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Parse/CPAN/Meta/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/PerlIO/encoding/encoding.dllbin0 -> 23552 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/PerlIO/scalar/scalar.dllbin0 -> 10752 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/PerlIO/via/via.dllbin0 -> 17408 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Pod/Perldoc/.packlist14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Pod/Plainer/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Pod/Simple/.packlist32
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Probe/Perl/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/SDBM_File/SDBM_File.dllbin0 -> 30208 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Safe/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Socket/Socket.dllbin0 -> 18944 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Sort/Versions/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/.packlist28
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/BIN_VERSION_NV.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/BIN_WRITE_VERSION_NV.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/CAN_FLOCK.al21
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/Storable.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/Storable.dllbin0 -> 72192 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/_freeze.al23
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/_retrieve.al31
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/_store.al41
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/_store_fd.al27
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/autosplit.ix28
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al25
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/file_magic.al21
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/freeze.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/lock_nstore.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/lock_retrieve.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/lock_store.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/logcarp.al12
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/logcroak.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/nfreeze.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/nstore.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/nstore_fd.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/read_magic.al69
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/retrieve.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/show_file_magic.al30
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/store.al20
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/store_fd.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Storable/thaw.al28
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/String/CRC32/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/String/CRC32/CRC32.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/String/CRC32/CRC32.dllbin0 -> 9216 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Sub/Uplevel/.packlist2
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Switch/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Sys/Hostname/Hostname.dllbin0 -> 8192 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Sys/Hostname/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Term/ANSIColor/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Term/ReadKey/ReadKey.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Term/ReadKey/ReadKey.dllbin0 -> 21504 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Term/ReadKey/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Test/Deep/.packlist42
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Test/Exception/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Test/Harness/.packlist52
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Test/Manifest/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Test/NoWarnings/.packlist2
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Test/Script/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Test/Simple/.packlist8
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Test/Tester/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Test/Warn/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Text/Balanced/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Text/Diff/.packlist2
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Text/Glob/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Text/Soundex/Soundex.dllbin0 -> 9216 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tie/EncryptedHash/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Time/HiRes/HiRes.dllbin0 -> 20480 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Time/Piece/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Time/Piece/Piece.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Time/Piece/Piece.dllbin0 -> 21504 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/.packlist664
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/CancelRepeat.al15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Canvas/Canvas.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Canvas/Canvas.dllbin0 -> 153600 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Clipboard/autosplit.ix6
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Clipboard/getSelected.al15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Compound/Compound.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Compound/Compound.dllbin0 -> 20480 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/DragDrop/Win32Site/Win32Site.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/DragDrop/Win32Site/Win32Site.dllbin0 -> 11264 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/EnterFocus.al27
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Entry/Entry.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Entry/Entry.dllbin0 -> 41984 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Error.al20
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Event/Event.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Event/Event.dllbin0 -> 57344 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/FirstMenu.al21
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/FocusChildren.al35
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/FocusOK.al36
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Frame/AddScrollbars.al52
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Frame/FindMenu.al22
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Frame/autosplit.ix24
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Frame/freeze_on_map.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Frame/label.al24
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Frame/labelPack.al50
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Frame/labelVariable.al27
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Frame/packscrollbars.al86
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Frame/queuePack.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Frame/sbset.al15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Frame/scrollbars.al24
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/HList/HList.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/HList/HList.dllbin0 -> 52224 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/IO/IO.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/IO/IO.dllbin0 -> 12288 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/ImageNames.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/ImageTypes.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/JPEG/JPEG.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/JPEG/JPEG.dllbin0 -> 17408 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/AutoScan.al49
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/BeginExtend.al34
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/BeginSelect.al46
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/BeginToggle.al40
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/ButtonRelease_1.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/CLEAR.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/Cancel.al42
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/Cntrl_End.al19
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/Cntrl_Home.al19
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/Cntrl_backslash.al19
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/DELETE.al19
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/DataExtend.al39
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/EXISTS.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/EXTEND.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/ExtendUpDown.al36
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/FETCH.al56
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/FETCHSIZE.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/Listbox.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/Listbox.dllbin0 -> 31744 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/Motion.al77
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/POP.al19
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/PUSH.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/SHIFT.al19
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/SPLICE.al84
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/STORE.al80
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/SelectAll.al32
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/SetList.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/TIEARRAY.al15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/TIESCALAR.al15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/UNSHIFT.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/UpDown.al41
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/autosplit.ix56
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/clipboardPaste.al21
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/deleteSelected.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/getSelected.al24
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Listbox/xyIndex.al29
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Menubutton/Menubutton.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Menubutton/Menubutton.dllbin0 -> 21504 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/NBFrame/NBFrame.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/NBFrame/NBFrame.dllbin0 -> 22528 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/PNG/PNG.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/PNG/PNG.dllbin0 -> 16384 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Pixmap/Pixmap.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Pixmap/Pixmap.dllbin0 -> 26624 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Receive.al23
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/RepeatId.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scale/Activate.al33
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scale/ButtonDown.al40
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scale/ButtonUp.al16
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scale/ControlPress.al31
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scale/Drag.al29
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scale/EndDrag.al23
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scale/Enter.al19
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scale/Increment.al61
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scale/Leave.al15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scale/Scale.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scale/Scale.dllbin0 -> 25088 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scale/autosplit.ix22
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ButtonDown.al55
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ButtonUp.al26
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Drag.al43
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/EndDrag.al28
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Enter.al21
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Leave.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Motion.al15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlByPages.al38
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlByUnits.al37
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlToPos.al35
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlTopBottom.al32
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Scrollbar.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Scrollbar.dllbin0 -> 20992 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Select.al59
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/StartDrag.al38
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Scrollbar/autosplit.ix30
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Selection.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/TList/TList.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/TList/TList.dllbin0 -> 28672 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Table/Create.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Table/Posn.al15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Table/autosplit.ix14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Table/see.al46
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Table/totalColumns.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Table/totalRows.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Text/Text.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Text/Text.dllbin0 -> 114176 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Text/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/TextEdit/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/TextUndo/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/TixGrid/TixGrid.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/TixGrid/TixGrid.dllbin0 -> 52224 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Tk.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Tk.dllbin0 -> 807424 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_BindIn.al19
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_BindOut.al20
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_Create.al56
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_Destroy.al29
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_In.al24
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_Out.al32
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Toplevel/autosplit.ix10
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/TraverseToMenu.al27
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/ASkludge.al30
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/AltKeyInDialog.al20
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/AmpWidget.al36
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/FindAltKeyTarget.al38
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/MasterMenu.al14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/RestoreFocusGrab.al59
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/SetAmpText.al19
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/SetFocusGrab.al38
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/UnderlineAmpersand.al29
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/autosplit.ix27
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/bindDump.al87
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/clipboardKeysyms.al51
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Widget/pathname.al15
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Wm/AnchorAdjust.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Wm/FullScreen.al29
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Wm/Popup.al50
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Wm/Post.al20
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Wm/autosplit.ix14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Wm/iconposition.al24
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/X/X.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/X/X.dllbin0 -> 25088 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/X/autosplit.ix3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Xlib/Xlib.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/Xlib/Xlib.dllbin0 -> 29696 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/autosplit.ix49
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/break.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/focusFollowsMouse.al14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/focusNext.al18
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/focusPrev.al28
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/getEncoding.al43
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/getNextFocus.al44
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/getPrevFocus.al54
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/interps.al14
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/lsearch.al19
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/pTk/extralibs.ld1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/tabFocus.al13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tk/updateWidgets.al17
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Tree/DAG_Node/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/URI/.packlist52
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Unicode/Normalize/Normalize.dllbin0 -> 195072 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/API/.packlist9
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/API/API.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/API/API.dllbin0 -> 21504 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/API/Callback/Callback.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/API/Callback/Callback.dllbin0 -> 16384 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/EventLog/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/EventLog/EventLog.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/EventLog/EventLog.dllbin0 -> 24576 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/Exe/.packlist28
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/File/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/File/File.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/File/File.dllbin0 -> 10240 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/File/Object/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/Process/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/Process/Process.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/Process/Process.dllbin0 -> 39936 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/Shortcut/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/Shortcut/Shortcut.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/Shortcut/Shortcut.dllbin0 -> 24576 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/TieRegistry/.packlist2
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/Win32.dllbin0 -> 44032 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/WinError/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/WinError/WinError.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32/WinError/WinError.dllbin0 -> 68096 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32API/File/File.dllbin0 -> 83968 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32API/Registry/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32API/Registry/Registry.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32API/Registry/Registry.dllbin0 -> 187392 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/Win32CORE/extralibs.ld1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/XML/LibXML/.packlist43
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/XML/LibXML/LibXML.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/XML/LibXML/LibXML.dllbin0 -> 333824 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/XML/LibXSLT/.packlist4
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/XML/LibXSLT/LibXSLT.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/XML/LibXSLT/LibXSLT.xs.dllbin0 -> 47104 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/XML/NamespaceSupport/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/XML/Parser/.packlist29
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/XML/Parser/Expat/Expat.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/XML/Parser/Expat/Expat.dllbin0 -> 67072 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/XML/SAX/.packlist23
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/YAML/.packlist13
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/YAML/Tiny/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/attrs/attrs.dllbin0 -> 9216 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/common/sense/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/constant/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/local/lib/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/mro/mro.dllbin0 -> 13824 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/parent/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/pip/.packlist7
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/pler/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/re/re.dllbin0 -> 292864 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/sdbm/extralibs.ld1
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/threads/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/threads/shared/.packlist3
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/threads/shared/shared.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/threads/shared/shared.dllbin0 -> 31232 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/threads/threads.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/threads/threads.dllbin0 -> 34304 bytes
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/version/.packlist6
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/version/vxs/vxs.bs0
-rwxr-xr-xMaster/tlpkg/tlperl/lib/auto/version/vxs/vxs.dllbin0 -> 27136 bytes
803 files changed, 17205 insertions, 0 deletions
diff --git a/Master/tlpkg/tlperl/lib/auto/Algorithm/Diff/.packlist b/Master/tlpkg/tlperl/lib/auto/Algorithm/Diff/.packlist
new file mode 100755
index 00000000000..ab95cb95058
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Algorithm/Diff/.packlist
@@ -0,0 +1,6 @@
+C:\strawberry\perl\vendor\lib\Algorithm\Diff.pm
+C:\strawberry\perl\vendor\lib\Algorithm\DiffOld.pm
+C:\strawberry\perl\vendor\lib\Algorithm\cdiff.pl
+C:\strawberry\perl\vendor\lib\Algorithm\diff.pl
+C:\strawberry\perl\vendor\lib\Algorithm\diffnew.pl
+C:\strawberry\perl\vendor\lib\Algorithm\htmldiff.pl
diff --git a/Master/tlpkg/tlperl/lib/auto/Archive/Extract/.packlist b/Master/tlpkg/tlperl/lib/auto/Archive/Extract/.packlist
new file mode 100755
index 00000000000..afd2a6f663f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Archive/Extract/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Archive\Extract.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Archive/Tar/.packlist b/Master/tlpkg/tlperl/lib/auto/Archive/Tar/.packlist
new file mode 100755
index 00000000000..eb062581884
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Archive/Tar/.packlist
@@ -0,0 +1,7 @@
+C:\strawberry\perl\bin\ptar
+C:\strawberry\perl\bin\ptar.bat
+C:\strawberry\perl\bin\ptardiff
+C:\strawberry\perl\bin\ptardiff.bat
+C:\strawberry\perl\lib\Archive\Tar.pm
+C:\strawberry\perl\lib\Archive\Tar\Constant.pm
+C:\strawberry\perl\lib\Archive\Tar\File.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Archive/Zip/.packlist b/Master/tlpkg/tlperl/lib/auto/Archive/Zip/.packlist
new file mode 100755
index 00000000000..101ffc23eb4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Archive/Zip/.packlist
@@ -0,0 +1,15 @@
+C:\strawberry\perl\bin\crc32
+C:\strawberry\perl\bin\crc32.bat
+C:\strawberry\perl\vendor\lib\Archive\Zip.pm
+C:\strawberry\perl\vendor\lib\Archive\Zip\Archive.pm
+C:\strawberry\perl\vendor\lib\Archive\Zip\BufferedFileHandle.pm
+C:\strawberry\perl\vendor\lib\Archive\Zip\DirectoryMember.pm
+C:\strawberry\perl\vendor\lib\Archive\Zip\FAQ.pod
+C:\strawberry\perl\vendor\lib\Archive\Zip\FileMember.pm
+C:\strawberry\perl\vendor\lib\Archive\Zip\Member.pm
+C:\strawberry\perl\vendor\lib\Archive\Zip\MemberRead.pm
+C:\strawberry\perl\vendor\lib\Archive\Zip\MockFileHandle.pm
+C:\strawberry\perl\vendor\lib\Archive\Zip\NewFileMember.pm
+C:\strawberry\perl\vendor\lib\Archive\Zip\StringMember.pm
+C:\strawberry\perl\vendor\lib\Archive\Zip\Tree.pm
+C:\strawberry\perl\vendor\lib\Archive\Zip\ZipFileMember.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Attribute/Handlers/.packlist b/Master/tlpkg/tlperl/lib/auto/Attribute/Handlers/.packlist
new file mode 100755
index 00000000000..f7c66532956
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Attribute/Handlers/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Attribute\Handlers.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/AutoLoader/.packlist b/Master/tlpkg/tlperl/lib/auto/AutoLoader/.packlist
new file mode 100755
index 00000000000..4ad64c3dac5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/AutoLoader/.packlist
@@ -0,0 +1,2 @@
+C:\strawberry\perl\lib\AutoLoader.pm
+C:\strawberry\perl\lib\AutoSplit.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/B/B.dll b/Master/tlpkg/tlperl/lib/auto/B/B.dll
new file mode 100755
index 00000000000..b1e3e67e501
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/B/B.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/BerkeleyDB/.packlist b/Master/tlpkg/tlperl/lib/auto/BerkeleyDB/.packlist
new file mode 100755
index 00000000000..2691f89a5cf
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/BerkeleyDB/.packlist
@@ -0,0 +1,7 @@
+C:\strawberry\perl\vendor\lib\BerkeleyDB.pm
+C:\strawberry\perl\vendor\lib\BerkeleyDB.pod
+C:\strawberry\perl\vendor\lib\BerkeleyDB\Btree.pm
+C:\strawberry\perl\vendor\lib\BerkeleyDB\Hash.pm
+C:\strawberry\perl\vendor\lib\auto\BerkeleyDB\BerkeleyDB.bs
+C:\strawberry\perl\vendor\lib\auto\BerkeleyDB\BerkeleyDB.dll
+C:\strawberry\perl\vendor\lib\auto\BerkeleyDB\autosplit.ix
diff --git a/Master/tlpkg/tlperl/lib/auto/BerkeleyDB/BerkeleyDB.bs b/Master/tlpkg/tlperl/lib/auto/BerkeleyDB/BerkeleyDB.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/BerkeleyDB/BerkeleyDB.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/BerkeleyDB/BerkeleyDB.dll b/Master/tlpkg/tlperl/lib/auto/BerkeleyDB/BerkeleyDB.dll
new file mode 100755
index 00000000000..4c7ada7f687
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/BerkeleyDB/BerkeleyDB.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/BerkeleyDB/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/BerkeleyDB/autosplit.ix
new file mode 100755
index 00000000000..651e60bc181
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/BerkeleyDB/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for blib\lib\BerkeleyDB.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/CGI/.packlist b/Master/tlpkg/tlperl/lib/auto/CGI/.packlist
new file mode 100755
index 00000000000..d952f7acdfe
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/CGI/.packlist
@@ -0,0 +1,9 @@
+C:\strawberry\perl\lib\CGI.pm
+C:\strawberry\perl\lib\CGI\Apache.pm
+C:\strawberry\perl\lib\CGI\Carp.pm
+C:\strawberry\perl\lib\CGI\Cookie.pm
+C:\strawberry\perl\lib\CGI\Fast.pm
+C:\strawberry\perl\lib\CGI\Pretty.pm
+C:\strawberry\perl\lib\CGI\Push.pm
+C:\strawberry\perl\lib\CGI\Switch.pm
+C:\strawberry\perl\lib\CGI\Util.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/CPAN/.packlist b/Master/tlpkg/tlperl/lib/auto/CPAN/.packlist
new file mode 100755
index 00000000000..f04aa552a84
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/CPAN/.packlist
@@ -0,0 +1,37 @@
+C:\strawberry\perl\bin\cpan
+C:\strawberry\perl\bin\cpan.bat
+C:\strawberry\perl\lib\App\Cpan.pm
+C:\strawberry\perl\lib\CPAN.pm
+C:\strawberry\perl\lib\CPAN\API\HOWTO.pod
+C:\strawberry\perl\lib\CPAN\Admin.pm
+C:\strawberry\perl\lib\CPAN\Author.pm
+C:\strawberry\perl\lib\CPAN\Bundle.pm
+C:\strawberry\perl\lib\CPAN\CacheMgr.pm
+C:\strawberry\perl\lib\CPAN\Complete.pm
+C:\strawberry\perl\lib\CPAN\Debug.pm
+C:\strawberry\perl\lib\CPAN\DeferredCode.pm
+C:\strawberry\perl\lib\CPAN\Distribution.pm
+C:\strawberry\perl\lib\CPAN\Distroprefs.pm
+C:\strawberry\perl\lib\CPAN\Distrostatus.pm
+C:\strawberry\perl\lib\CPAN\Exception\RecursiveDependency.pm
+C:\strawberry\perl\lib\CPAN\Exception\blocked_urllist.pm
+C:\strawberry\perl\lib\CPAN\Exception\yaml_not_installed.pm
+C:\strawberry\perl\lib\CPAN\FTP.pm
+C:\strawberry\perl\lib\CPAN\FTP\netrc.pm
+C:\strawberry\perl\lib\CPAN\FirstTime.pm
+C:\strawberry\perl\lib\CPAN\HandleConfig.pm
+C:\strawberry\perl\lib\CPAN\Index.pm
+C:\strawberry\perl\lib\CPAN\InfoObj.pm
+C:\strawberry\perl\lib\CPAN\Kwalify.pm
+C:\strawberry\perl\lib\CPAN\Kwalify\distroprefs.dd
+C:\strawberry\perl\lib\CPAN\Kwalify\distroprefs.yml
+C:\strawberry\perl\lib\CPAN\LWP\UserAgent.pm
+C:\strawberry\perl\lib\CPAN\Mirrors.pm
+C:\strawberry\perl\lib\CPAN\Module.pm
+C:\strawberry\perl\lib\CPAN\Nox.pm
+C:\strawberry\perl\lib\CPAN\Prompt.pm
+C:\strawberry\perl\lib\CPAN\Queue.pm
+C:\strawberry\perl\lib\CPAN\Shell.pm
+C:\strawberry\perl\lib\CPAN\Tarzip.pm
+C:\strawberry\perl\lib\CPAN\URL.pm
+C:\strawberry\perl\lib\CPAN\Version.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/CPAN/Checksums/.packlist b/Master/tlpkg/tlperl/lib/auto/CPAN/Checksums/.packlist
new file mode 100755
index 00000000000..bdc402976a5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/CPAN/Checksums/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\CPAN\Checksums.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/CPAN/DistnameInfo/.packlist b/Master/tlpkg/tlperl/lib/auto/CPAN/DistnameInfo/.packlist
new file mode 100755
index 00000000000..4f7c0615226
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/CPAN/DistnameInfo/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\CPAN\DistnameInfo.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/CPAN/Inject/.packlist b/Master/tlpkg/tlperl/lib/auto/CPAN/Inject/.packlist
new file mode 100755
index 00000000000..1e45407105b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/CPAN/Inject/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\bin\cpaninject
+C:\strawberry\perl\bin\cpaninject.bat
+C:\strawberry\perl\vendor\lib\CPAN\Inject.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/CPAN/SQLite/.packlist b/Master/tlpkg/tlperl/lib/auto/CPAN/SQLite/.packlist
new file mode 100755
index 00000000000..69911e61400
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/CPAN/SQLite/.packlist
@@ -0,0 +1,13 @@
+C:\strawberry\perl\bin\cpandb
+C:\strawberry\perl\bin\cpandb.bat
+C:\strawberry\perl\vendor\lib\CPAN\SQLite.pm
+C:\strawberry\perl\vendor\lib\CPAN\SQLite\DBI.pm
+C:\strawberry\perl\vendor\lib\CPAN\SQLite\DBI\Index.pm
+C:\strawberry\perl\vendor\lib\CPAN\SQLite\DBI\Search.pm
+C:\strawberry\perl\vendor\lib\CPAN\SQLite\Index.pm
+C:\strawberry\perl\vendor\lib\CPAN\SQLite\Info.pm
+C:\strawberry\perl\vendor\lib\CPAN\SQLite\META.pm
+C:\strawberry\perl\vendor\lib\CPAN\SQLite\Populate.pm
+C:\strawberry\perl\vendor\lib\CPAN\SQLite\Search.pm
+C:\strawberry\perl\vendor\lib\CPAN\SQLite\State.pm
+C:\strawberry\perl\vendor\lib\CPAN\SQLite\Util.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/CPANPLUS/.packlist b/Master/tlpkg/tlperl/lib/auto/CPANPLUS/.packlist
new file mode 100755
index 00000000000..8db17f2197b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/CPANPLUS/.packlist
@@ -0,0 +1,47 @@
+C:\strawberry\perl\bin\cpan2dist
+C:\strawberry\perl\bin\cpan2dist.bat
+C:\strawberry\perl\bin\cpanp
+C:\strawberry\perl\bin\cpanp-run-perl
+C:\strawberry\perl\bin\cpanp-run-perl.bat
+C:\strawberry\perl\bin\cpanp.bat
+C:\strawberry\perl\lib\CPANPLUS.pm
+C:\strawberry\perl\lib\CPANPLUS\Backend.pm
+C:\strawberry\perl\lib\CPANPLUS\Backend\RV.pm
+C:\strawberry\perl\lib\CPANPLUS\Config.pm
+C:\strawberry\perl\lib\CPANPLUS\Configure.pm
+C:\strawberry\perl\lib\CPANPLUS\Configure\Setup.pm
+C:\strawberry\perl\lib\CPANPLUS\Dist.pm
+C:\strawberry\perl\lib\CPANPLUS\Dist\Autobundle.pm
+C:\strawberry\perl\lib\CPANPLUS\Dist\Base.pm
+C:\strawberry\perl\lib\CPANPLUS\Dist\MM.pm
+C:\strawberry\perl\lib\CPANPLUS\Dist\Sample.pm
+C:\strawberry\perl\lib\CPANPLUS\Error.pm
+C:\strawberry\perl\lib\CPANPLUS\FAQ.pod
+C:\strawberry\perl\lib\CPANPLUS\Hacking.pod
+C:\strawberry\perl\lib\CPANPLUS\Internals.pm
+C:\strawberry\perl\lib\CPANPLUS\Internals\Constants.pm
+C:\strawberry\perl\lib\CPANPLUS\Internals\Constants\Report.pm
+C:\strawberry\perl\lib\CPANPLUS\Internals\Extract.pm
+C:\strawberry\perl\lib\CPANPLUS\Internals\Fetch.pm
+C:\strawberry\perl\lib\CPANPLUS\Internals\Report.pm
+C:\strawberry\perl\lib\CPANPLUS\Internals\Search.pm
+C:\strawberry\perl\lib\CPANPLUS\Internals\Source.pm
+C:\strawberry\perl\lib\CPANPLUS\Internals\Source\Memory.pm
+C:\strawberry\perl\lib\CPANPLUS\Internals\Source\SQLite.pm
+C:\strawberry\perl\lib\CPANPLUS\Internals\Source\SQLite\Tie.pm
+C:\strawberry\perl\lib\CPANPLUS\Internals\Utils.pm
+C:\strawberry\perl\lib\CPANPLUS\Internals\Utils\Autoflush.pm
+C:\strawberry\perl\lib\CPANPLUS\Module.pm
+C:\strawberry\perl\lib\CPANPLUS\Module\Author.pm
+C:\strawberry\perl\lib\CPANPLUS\Module\Author\Fake.pm
+C:\strawberry\perl\lib\CPANPLUS\Module\Checksums.pm
+C:\strawberry\perl\lib\CPANPLUS\Module\Fake.pm
+C:\strawberry\perl\lib\CPANPLUS\Module\Signature.pm
+C:\strawberry\perl\lib\CPANPLUS\Selfupdate.pm
+C:\strawberry\perl\lib\CPANPLUS\Shell.pm
+C:\strawberry\perl\lib\CPANPLUS\Shell\Classic.pm
+C:\strawberry\perl\lib\CPANPLUS\Shell\Default.pm
+C:\strawberry\perl\lib\CPANPLUS\Shell\Default\Plugins\CustomSource.pm
+C:\strawberry\perl\lib\CPANPLUS\Shell\Default\Plugins\HOWTO.pod
+C:\strawberry\perl\lib\CPANPLUS\Shell\Default\Plugins\Remote.pm
+C:\strawberry\perl\lib\CPANPLUS\Shell\Default\Plugins\Source.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/CPANPLUS/Dist/Build/.packlist b/Master/tlpkg/tlperl/lib/auto/CPANPLUS/Dist/Build/.packlist
new file mode 100755
index 00000000000..30780e235a8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/CPANPLUS/Dist/Build/.packlist
@@ -0,0 +1,2 @@
+C:\strawberry\perl\lib\CPANPLUS\Dist\Build.pm
+C:\strawberry\perl\lib\CPANPLUS\Dist\Build\Constants.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Class/ErrorHandler/.packlist b/Master/tlpkg/tlperl/lib/auto/Class/ErrorHandler/.packlist
new file mode 100755
index 00000000000..ea13985a6d3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Class/ErrorHandler/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Class\ErrorHandler.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Class/ISA/.packlist b/Master/tlpkg/tlperl/lib/auto/Class/ISA/.packlist
new file mode 100755
index 00000000000..0f7d2f81d07
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Class/ISA/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Class\ISA.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Class/Loader/.packlist b/Master/tlpkg/tlperl/lib/auto/Class/Loader/.packlist
new file mode 100755
index 00000000000..e036c49ade7
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Class/Loader/.packlist
@@ -0,0 +1,2 @@
+C:\strawberry\perl\vendor\lib\Class\Loader.pm
+C:\strawberry\perl\vendor\lib\Class\LoaderTest.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Bzip2/.packlist b/Master/tlpkg/tlperl/lib/auto/Compress/Bzip2/.packlist
new file mode 100755
index 00000000000..1f93b32249d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Bzip2/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\vendor\lib\Compress\Bzip2.pm
+C:\strawberry\perl\vendor\lib\auto\Compress\Bzip2\Bzip2.bs
+C:\strawberry\perl\vendor\lib\auto\Compress\Bzip2\Bzip2.dll
+C:\strawberry\perl\vendor\lib\auto\Compress\Bzip2\autosplit.ix
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Bzip2/Bzip2.bs b/Master/tlpkg/tlperl/lib/auto/Compress/Bzip2/Bzip2.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Bzip2/Bzip2.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Bzip2/Bzip2.dll b/Master/tlpkg/tlperl/lib/auto/Compress/Bzip2/Bzip2.dll
new file mode 100755
index 00000000000..89eee8a506f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Bzip2/Bzip2.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Bzip2/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Compress/Bzip2/autosplit.ix
new file mode 100755
index 00000000000..0faf0b863de
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Bzip2/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for blib\lib\Compress\Bzip2.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/.packlist b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/.packlist
new file mode 100755
index 00000000000..01459ed27d3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\lib\Compress\Raw\Bzip2.pm
+C:\strawberry\perl\lib\auto\Compress\Raw\Bzip2\Bzip2.bs
+C:\strawberry\perl\lib\auto\Compress\Raw\Bzip2\Bzip2.dll
+C:\strawberry\perl\lib\auto\Compress\Raw\Bzip2\autosplit.ix
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/Bzip2.bs b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/Bzip2.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/Bzip2.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/Bzip2.dll b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/Bzip2.dll
new file mode 100755
index 00000000000..2e184a7450a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/Bzip2.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/autosplit.ix
new file mode 100755
index 00000000000..dcc49033693
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Bzip2/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for blib\lib\Compress\Raw\Bzip2.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/.packlist b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/.packlist
new file mode 100755
index 00000000000..531f3bf6ea2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\lib\Compress\Raw\Zlib.pm
+C:\strawberry\perl\lib\auto\Compress\Raw\Zlib\Zlib.bs
+C:\strawberry\perl\lib\auto\Compress\Raw\Zlib\Zlib.dll
+C:\strawberry\perl\lib\auto\Compress\Raw\Zlib\autosplit.ix
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/Zlib.bs b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/Zlib.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/Zlib.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/Zlib.dll b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/Zlib.dll
new file mode 100755
index 00000000000..a430eb0f79e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/Zlib.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/autosplit.ix
new file mode 100755
index 00000000000..bcf12323af3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Raw/Zlib/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for blib\lib\Compress\Raw\Zlib.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/Zlib/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Compress/Zlib/autosplit.ix
new file mode 100755
index 00000000000..f4098e4a8c7
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/Zlib/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for blib\lib\Compress\Zlib.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/unLZMA/.packlist b/Master/tlpkg/tlperl/lib/auto/Compress/unLZMA/.packlist
new file mode 100755
index 00000000000..dfc9d7169d8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/unLZMA/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Compress\unLZMA.pm
+C:\strawberry\perl\vendor\lib\auto\Compress\unLZMA\unLZMA.bs
+C:\strawberry\perl\vendor\lib\auto\Compress\unLZMA\unLZMA.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/unLZMA/unLZMA.bs b/Master/tlpkg/tlperl/lib/auto/Compress/unLZMA/unLZMA.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/unLZMA/unLZMA.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Compress/unLZMA/unLZMA.dll b/Master/tlpkg/tlperl/lib/auto/Compress/unLZMA/unLZMA.dll
new file mode 100755
index 00000000000..3ba33d63875
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Compress/unLZMA/unLZMA.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Convert/ASCII/Armour/.packlist b/Master/tlpkg/tlperl/lib/auto/Convert/ASCII/Armour/.packlist
new file mode 100755
index 00000000000..d671eb43b8a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Convert/ASCII/Armour/.packlist
@@ -0,0 +1,2 @@
+C:\strawberry\perl\vendor\lib\Convert\ASCII\Armor.pm
+C:\strawberry\perl\vendor\lib\Convert\ASCII\Armour.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Convert/ASN1/.packlist b/Master/tlpkg/tlperl/lib/auto/Convert/ASN1/.packlist
new file mode 100755
index 00000000000..b412c340aee
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Convert/ASN1/.packlist
@@ -0,0 +1,7 @@
+C:\strawberry\perl\vendor\lib\Convert\ASN1.pm
+C:\strawberry\perl\vendor\lib\Convert\ASN1.pod
+C:\strawberry\perl\vendor\lib\Convert\ASN1\Debug.pm
+C:\strawberry\perl\vendor\lib\Convert\ASN1\IO.pm
+C:\strawberry\perl\vendor\lib\Convert\ASN1\_decode.pm
+C:\strawberry\perl\vendor\lib\Convert\ASN1\_encode.pm
+C:\strawberry\perl\vendor\lib\Convert\ASN1\parser.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Convert/PEM/.packlist b/Master/tlpkg/tlperl/lib/auto/Convert/PEM/.packlist
new file mode 100755
index 00000000000..2b0b8d4792d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Convert/PEM/.packlist
@@ -0,0 +1,2 @@
+C:\strawberry\perl\vendor\lib\Convert\PEM.pm
+C:\strawberry\perl\vendor\lib\Convert\PEM\CBC.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/Blowfish/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/Blowfish/.packlist
new file mode 100755
index 00000000000..72450144d0c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/Blowfish/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Crypt\Blowfish.pm
+C:\strawberry\perl\vendor\lib\auto\Crypt\Blowfish\Blowfish.bs
+C:\strawberry\perl\vendor\lib\auto\Crypt\Blowfish\Blowfish.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/Blowfish/Blowfish.bs b/Master/tlpkg/tlperl/lib/auto/Crypt/Blowfish/Blowfish.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/Blowfish/Blowfish.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/Blowfish/Blowfish.dll b/Master/tlpkg/tlperl/lib/auto/Crypt/Blowfish/Blowfish.dll
new file mode 100755
index 00000000000..3bdbeaf040b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/Blowfish/Blowfish.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/.packlist
new file mode 100755
index 00000000000..aac4209938b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/.packlist
@@ -0,0 +1,6 @@
+C:\strawberry\perl\vendor\lib\Crypt\CAST5_PP.pm
+C:\strawberry\perl\vendor\lib\Crypt\CAST5_PP\Tables.pm
+C:\strawberry\perl\vendor\lib\auto\Crypt\CAST5_PP\autosplit.ix
+C:\strawberry\perl\vendor\lib\auto\Crypt\CAST5_PP\decrypt.al
+C:\strawberry\perl\vendor\lib\auto\Crypt\CAST5_PP\encrypt.al
+C:\strawberry\perl\vendor\lib\auto\Crypt\CAST5_PP\init.al
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/autosplit.ix
new file mode 100755
index 00000000000..da2bd7977c2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/autosplit.ix
@@ -0,0 +1,7 @@
+# Index created by AutoSplit for blib\lib\Crypt\CAST5_PP.pm
+# (file acts as timestamp)
+package Crypt::CAST5_PP;
+sub init ;
+sub encrypt ;
+sub decrypt ;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/decrypt.al b/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/decrypt.al
new file mode 100755
index 00000000000..7afcede8922
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/decrypt.al
@@ -0,0 +1,47 @@
+# NOTE: Derived from blib\lib\Crypt\CAST5_PP.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Crypt::CAST5_PP;
+
+#line 223 "blib\lib\Crypt\CAST5_PP.pm (autosplit into blib\lib\auto\Crypt\CAST5_PP\decrypt.al)"
+sub decrypt {
+ use strict;
+ use integer;
+ my ($cast5, $block) = @_;
+ croak "Block size must be 8" if length($block) != 8;
+
+ my $decrypt = $cast5->{decrypt};
+ unless ($decrypt) {
+ my $key = $cast5->{key} or croak "Call init() first";
+ my $rounds = $cast5->{rounds};
+ my $f = 'sub{my($r,$l,$i)=unpack"N2",$_[0];';
+
+ my ($l, $r) = qw( $r $l );
+ my ($op1, $op2, $op3) = qw( - + ^ );
+ foreach (1 .. $rounds%3) { ($op1, $op2, $op3) = ($op2, $op3, $op1) }
+ foreach my $round (1 .. $rounds) {
+ my $km = $key->[$rounds-$round];
+ my $kr = $key->[$rounds-$round+16];
+
+ my $rot = "";
+ if ($kr) {
+ my $mask = ~(~0<<$kr) & 0xffffffff;
+ my $kr2 = 32-$kr;
+ $rot = "\$i=\$i<<$kr|\$i>>$kr2&$mask;"
+ }
+
+ $f .= "\$i=$km$op1$r;$rot$l^=((\$s1[\$i>>24&255]$op2\$s2[\$i>>16&255])$op3\$s3[\$i>>8&255])$op1\$s4[\$i&255];";
+ ($l, $r) = ($r, $l);
+ ($op1, $op2, $op3) = ($op3, $op1, $op2);
+ }
+
+ $f .= 'pack"N2",$l&0xffffffff,$r&0xffffffff}';
+ $cast5->{decrypt} = $decrypt = eval $f;
+ }
+
+ return $decrypt->($block);
+} # decrypt
+
+# end CAST5_PP.pm
+1;
+# end of Crypt::CAST5_PP::decrypt
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/encrypt.al b/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/encrypt.al
new file mode 100755
index 00000000000..1041e4955d0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/encrypt.al
@@ -0,0 +1,44 @@
+# NOTE: Derived from blib\lib\Crypt\CAST5_PP.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Crypt::CAST5_PP;
+
+#line 187 "blib\lib\Crypt\CAST5_PP.pm (autosplit into blib\lib\auto\Crypt\CAST5_PP\encrypt.al)"
+sub encrypt {
+ use strict;
+ use integer;
+ my ($cast5, $block) = @_;
+ croak "Block size must be 8" if length($block) != 8;
+
+ my $encrypt = $cast5->{encrypt};
+ unless ($encrypt) {
+ my $key = $cast5->{key} or croak "Call init() first";
+ my $f = 'sub{my($l,$r,$i)=unpack"N2",$_[0];';
+
+ my ($l, $r) = qw( $l $r );
+ my ($op1, $op2, $op3) = qw( + ^ - );
+ foreach my $round (0 .. $cast5->{rounds}-1) {
+ my $km = $key->[$round];
+ my $kr = $key->[$round+16];
+
+ my $rot = "";
+ if ($kr) {
+ my $mask = ~(~0<<$kr) & 0xffffffff;
+ my $kr2 = 32-$kr;
+ $rot = "\$i=\$i<<$kr|\$i>>$kr2&$mask;"
+ }
+
+ $f .= "\$i=$km$op1$r;$rot$l^=((\$s1[\$i>>24&255]$op2\$s2[\$i>>16&255])$op3\$s3[\$i>>8&255])$op1\$s4[\$i&255];";
+ ($l, $r) = ($r, $l);
+ ($op1, $op2, $op3) = ($op2, $op3, $op1);
+ }
+
+ $f .= 'pack"N2",$r&0xffffffff,$l&0xffffffff}';
+ $cast5->{encrypt} = $encrypt = eval $f;
+ }
+
+ return $encrypt->($block);
+} # encrypt
+
+# end of Crypt::CAST5_PP::encrypt
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/init.al b/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/init.al
new file mode 100755
index 00000000000..ae273c61b33
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/CAST5_PP/init.al
@@ -0,0 +1,69 @@
+# NOTE: Derived from blib\lib\Crypt\CAST5_PP.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Crypt::CAST5_PP;
+
+#line 126 "blib\lib\Crypt\CAST5_PP.pm (autosplit into blib\lib\auto\Crypt\CAST5_PP\init.al)"
+sub init {
+ use strict;
+ use integer;
+ my ($cast5, $key) = @_;
+ croak "Key length must be 40 to 128 bits"
+ if length($key) < 5 || length($key) > 16;
+ require Crypt::CAST5_PP::Tables;
+
+ # untaint the key. this keeps the evals from blowing up later.
+ # arguably, a tainted key should result in tainted output. oh well.
+ $key =~ /^(.*)$/s and $key = $1;
+
+ # null-pad the key to 16 bytes, and then split it into 32-bit chunks
+ my ($s, $t, $u, $v) = unpack "N4", pack "a16", $key;
+
+ # compute the key schedule
+ # don't try to read this -- it's generated by mkschedule
+ my ($w, $x, $y, $z, @k);
+ for (1..2) {
+ $w=$s^$s5[$v>>16&255]^$s6[$v&255]^$s7[$v>>24&255]^$s8[$v>>8&255]^$s7[$u>>24&255];
+ $x=$u^$s5[$w>>24&255]^$s6[$w>>8&255]^$s7[$w>>16&255]^$s8[$w&255]^$s8[$u>>8&255];
+ $y=$v^$s5[$x&255]^$s6[$x>>8&255]^$s7[$x>>16&255]^$s8[$x>>24&255]^$s5[$u>>16&255];
+ $z=$t^$s5[$y>>8&255]^$s6[$y>>16&255]^$s7[$y&255]^$s8[$y>>24&255]^$s6[$u&255];
+ push@k,$s5[$y>>24&255]^$s6[$y>>16&255]^$s7[$x&255]^$s8[$x>>8&255]^$s5[$w>>8&255];
+ push@k,$s5[$y>>8&255]^$s6[$y&255]^$s7[$x>>16&255]^$s8[$x>>24&255]^$s6[$x>>8&255];
+ push@k,$s5[$z>>24&255]^$s6[$z>>16&255]^$s7[$w&255]^$s8[$w>>8&255]^$s7[$y>>16&255];
+ push@k,$s5[$z>>8&255]^$s6[$z&255]^$s7[$w>>16&255]^$s8[$w>>24&255]^$s8[$z>>24&255];
+ $s=$y^$s5[$x>>16&255]^$s6[$x&255]^$s7[$x>>24&255]^$s8[$x>>8&255]^$s7[$w>>24&255];
+ $t=$w^$s5[$s>>24&255]^$s6[$s>>8&255]^$s7[$s>>16&255]^$s8[$s&255]^$s8[$w>>8&255];
+ $u=$x^$s5[$t&255]^$s6[$t>>8&255]^$s7[$t>>16&255]^$s8[$t>>24&255]^$s5[$w>>16&255];
+ $v=$z^$s5[$u>>8&255]^$s6[$u>>16&255]^$s7[$u&255]^$s8[$u>>24&255]^$s6[$w&255];
+ push@k,$s5[$s&255]^$s6[$s>>8&255]^$s7[$v>>24&255]^$s8[$v>>16&255]^$s5[$u>>24&255];
+ push@k,$s5[$s>>16&255]^$s6[$s>>24&255]^$s7[$v>>8&255]^$s8[$v&255]^$s6[$v>>16&255];
+ push@k,$s5[$t&255]^$s6[$t>>8&255]^$s7[$u>>24&255]^$s8[$u>>16&255]^$s7[$s&255];
+ push@k,$s5[$t>>16&255]^$s6[$t>>24&255]^$s7[$u>>8&255]^$s8[$u&255]^$s8[$t&255];
+ $w=$s^$s5[$v>>16&255]^$s6[$v&255]^$s7[$v>>24&255]^$s8[$v>>8&255]^$s7[$u>>24&255];
+ $x=$u^$s5[$w>>24&255]^$s6[$w>>8&255]^$s7[$w>>16&255]^$s8[$w&255]^$s8[$u>>8&255];
+ $y=$v^$s5[$x&255]^$s6[$x>>8&255]^$s7[$x>>16&255]^$s8[$x>>24&255]^$s5[$u>>16&255];
+ $z=$t^$s5[$y>>8&255]^$s6[$y>>16&255]^$s7[$y&255]^$s8[$y>>24&255]^$s6[$u&255];
+ push@k,$s5[$w&255]^$s6[$w>>8&255]^$s7[$z>>24&255]^$s8[$z>>16&255]^$s5[$y>>16&255];
+ push@k,$s5[$w>>16&255]^$s6[$w>>24&255]^$s7[$z>>8&255]^$s8[$z&255]^$s6[$z>>24&255];
+ push@k,$s5[$x&255]^$s6[$x>>8&255]^$s7[$y>>24&255]^$s8[$y>>16&255]^$s7[$w>>8&255];
+ push@k,$s5[$x>>16&255]^$s6[$x>>24&255]^$s7[$y>>8&255]^$s8[$y&255]^$s8[$x>>8&255];
+ $s=$y^$s5[$x>>16&255]^$s6[$x&255]^$s7[$x>>24&255]^$s8[$x>>8&255]^$s7[$w>>24&255];
+ $t=$w^$s5[$s>>24&255]^$s6[$s>>8&255]^$s7[$s>>16&255]^$s8[$s&255]^$s8[$w>>8&255];
+ $u=$x^$s5[$t&255]^$s6[$t>>8&255]^$s7[$t>>16&255]^$s8[$t>>24&255]^$s5[$w>>16&255];
+ $v=$z^$s5[$u>>8&255]^$s6[$u>>16&255]^$s7[$u&255]^$s8[$u>>24&255]^$s6[$w&255];
+ push@k,$s5[$u>>24&255]^$s6[$u>>16&255]^$s7[$t&255]^$s8[$t>>8&255]^$s5[$s&255];
+ push@k,$s5[$u>>8&255]^$s6[$u&255]^$s7[$t>>16&255]^$s8[$t>>24&255]^$s6[$t&255];
+ push@k,$s5[$v>>24&255]^$s6[$v>>16&255]^$s7[$s&255]^$s8[$s>>8&255]^$s7[$u>>24&255];
+ push@k,$s5[$v>>8&255]^$s6[$v&255]^$s7[$s>>16&255]^$s8[$s>>24&255]^$s8[$v>>16&255];
+ }
+
+ for (16..31) { $k[$_] &= 31 }
+ delete $cast5->{encrypt};
+ delete $cast5->{decrypt};
+ $cast5->{rounds} = length($key) <= 10 ? 12 : 16;
+ $cast5->{key} = \@k;
+ return $cast5;
+} # init
+
+# end of Crypt::CAST5_PP::init
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/CBC/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/CBC/.packlist
new file mode 100755
index 00000000000..9e4bb73b0e7
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/CBC/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Crypt\CBC.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/DES/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/DES/.packlist
new file mode 100755
index 00000000000..4db5877d52c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/DES/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Crypt\DES.pm
+C:\strawberry\perl\vendor\lib\auto\Crypt\DES\DES.bs
+C:\strawberry\perl\vendor\lib\auto\Crypt\DES\DES.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/DES/DES.bs b/Master/tlpkg/tlperl/lib/auto/Crypt/DES/DES.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/DES/DES.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/DES/DES.dll b/Master/tlpkg/tlperl/lib/auto/Crypt/DES/DES.dll
new file mode 100755
index 00000000000..f043487558a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/DES/DES.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/DES_EDE3/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/DES_EDE3/.packlist
new file mode 100755
index 00000000000..1de2b0c6ad1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/DES_EDE3/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Crypt\DES_EDE3.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/DH/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/DH/.packlist
new file mode 100755
index 00000000000..bc0a0aa4640
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/DH/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Crypt\DH.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/DSA/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/DSA/.packlist
new file mode 100755
index 00000000000..2970863abf7
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/DSA/.packlist
@@ -0,0 +1,7 @@
+C:\strawberry\perl\vendor\lib\Crypt\DSA.pm
+C:\strawberry\perl\vendor\lib\Crypt\DSA\Key.pm
+C:\strawberry\perl\vendor\lib\Crypt\DSA\KeyChain.pm
+C:\strawberry\perl\vendor\lib\Crypt\DSA\Key\PEM.pm
+C:\strawberry\perl\vendor\lib\Crypt\DSA\Key\SSH2.pm
+C:\strawberry\perl\vendor\lib\Crypt\DSA\Signature.pm
+C:\strawberry\perl\vendor\lib\Crypt\DSA\Util.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/IDEA/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/IDEA/.packlist
new file mode 100755
index 00000000000..f0f778620c8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/IDEA/.packlist
@@ -0,0 +1,5 @@
+C:\strawberry\perl\vendor\lib\Crypt\._test.pl
+C:\strawberry\perl\vendor\lib\Crypt\IDEA.pm
+C:\strawberry\perl\vendor\lib\Crypt\IDEA.pod
+C:\strawberry\perl\vendor\lib\auto\Crypt\IDEA\IDEA.bs
+C:\strawberry\perl\vendor\lib\auto\Crypt\IDEA\IDEA.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/IDEA/IDEA.bs b/Master/tlpkg/tlperl/lib/auto/Crypt/IDEA/IDEA.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/IDEA/IDEA.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/IDEA/IDEA.dll b/Master/tlpkg/tlperl/lib/auto/Crypt/IDEA/IDEA.dll
new file mode 100755
index 00000000000..c3182c0f1ac
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/IDEA/IDEA.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/OpenPGP/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/OpenPGP/.packlist
new file mode 100755
index 00000000000..511e24203c5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/OpenPGP/.packlist
@@ -0,0 +1,39 @@
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Armour.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Buffer.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\CFB.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Certificate.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Cipher.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Ciphertext.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Compressed.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Config.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Constants.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Digest.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\ErrorHandler.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Key.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\KeyBlock.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\KeyRing.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\KeyServer.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Key\Public.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Key\Public\DSA.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Key\Public\ElGamal.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Key\Public\RSA.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Key\Secret.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Key\Secret\DSA.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Key\Secret\ElGamal.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Key\Secret\RSA.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\MDC.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Marker.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Message.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\OnePassSig.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\PacketFactory.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Plaintext.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\S2k.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\SKSessionKey.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\SessionKey.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Signature.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Signature\SubPacket.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Trust.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\UserID.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Util.pm
+C:\strawberry\perl\vendor\lib\Crypt\OpenPGP\Words.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/Primes/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/Primes/.packlist
new file mode 100755
index 00000000000..4f3fa5cc0fa
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/Primes/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\bin\largeprimes
+C:\strawberry\perl\bin\largeprimes.bat
+C:\strawberry\perl\vendor\lib\Crypt\Primes.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/.packlist
new file mode 100755
index 00000000000..cff4348dcf0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/.packlist
@@ -0,0 +1,5 @@
+C:\strawberry\perl\vendor\lib\Crypt\RIPEMD160.pm
+C:\strawberry\perl\vendor\lib\Crypt\RIPEMD160\MAC.pm
+C:\strawberry\perl\vendor\lib\auto\Crypt\RIPEMD160\RIPEMD160.bs
+C:\strawberry\perl\vendor\lib\auto\Crypt\RIPEMD160\RIPEMD160.dll
+C:\strawberry\perl\vendor\lib\auto\Crypt\RIPEMD160\autosplit.ix
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/RIPEMD160.bs b/Master/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/RIPEMD160.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/RIPEMD160.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/RIPEMD160.dll b/Master/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/RIPEMD160.dll
new file mode 100755
index 00000000000..e1abdc5453c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/RIPEMD160.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/autosplit.ix
new file mode 100755
index 00000000000..a083199e4d5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/RIPEMD160/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for blib\lib\Crypt\RIPEMD160.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/RSA/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/RSA/.packlist
new file mode 100755
index 00000000000..55887e7f42a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/RSA/.packlist
@@ -0,0 +1,14 @@
+C:\strawberry\perl\vendor\lib\Crypt\RSA.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\DataFormat.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\Debug.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\ES\OAEP.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\ES\PKCS1v15.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\Errorhandler.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\Key.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\Key\Private.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\Key\Private\SSH.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\Key\Public.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\Key\Public\SSH.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\Primitives.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\SS\PKCS1v15.pm
+C:\strawberry\perl\vendor\lib\Crypt\RSA\SS\PSS.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/Random/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/Random/.packlist
new file mode 100755
index 00000000000..23e48886660
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/Random/.packlist
@@ -0,0 +1,9 @@
+C:\strawberry\perl\bin\makerandom
+C:\strawberry\perl\bin\makerandom.bat
+C:\strawberry\perl\vendor\lib\Crypt\Random.pm
+C:\strawberry\perl\vendor\lib\Crypt\Random\Generator.pm
+C:\strawberry\perl\vendor\lib\Crypt\Random\Provider\File.pm
+C:\strawberry\perl\vendor\lib\Crypt\Random\Provider\devrandom.pm
+C:\strawberry\perl\vendor\lib\Crypt\Random\Provider\devurandom.pm
+C:\strawberry\perl\vendor\lib\Crypt\Random\Provider\egd.pm
+C:\strawberry\perl\vendor\lib\Crypt\Random\Provider\rand.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/Rijndael/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/Rijndael/.packlist
new file mode 100755
index 00000000000..bde3d0220ff
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/Rijndael/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Crypt\Rijndael.pm
+C:\strawberry\perl\vendor\lib\auto\Crypt\Rijndael\Rijndael.bs
+C:\strawberry\perl\vendor\lib\auto\Crypt\Rijndael\Rijndael.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/Rijndael/Rijndael.bs b/Master/tlpkg/tlperl/lib/auto/Crypt/Rijndael/Rijndael.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/Rijndael/Rijndael.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/Rijndael/Rijndael.dll b/Master/tlpkg/tlperl/lib/auto/Crypt/Rijndael/Rijndael.dll
new file mode 100755
index 00000000000..2c6d205c728
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/Rijndael/Rijndael.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/SSLeay/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/SSLeay/.packlist
new file mode 100755
index 00000000000..da8330ad9cf
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/SSLeay/.packlist
@@ -0,0 +1,9 @@
+C:\strawberry\perl\vendor\lib\Crypt\SSLeay.pm
+C:\strawberry\perl\vendor\lib\Crypt\SSLeay\CTX.pm
+C:\strawberry\perl\vendor\lib\Crypt\SSLeay\Conn.pm
+C:\strawberry\perl\vendor\lib\Crypt\SSLeay\Err.pm
+C:\strawberry\perl\vendor\lib\Crypt\SSLeay\MainContext.pm
+C:\strawberry\perl\vendor\lib\Crypt\SSLeay\X509.pm
+C:\strawberry\perl\vendor\lib\Net\SSL.pm
+C:\strawberry\perl\vendor\lib\auto\Crypt\SSLeay\SSLeay.bs
+C:\strawberry\perl\vendor\lib\auto\Crypt\SSLeay\SSLeay.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/SSLeay/SSLeay.bs b/Master/tlpkg/tlperl/lib/auto/Crypt/SSLeay/SSLeay.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/SSLeay/SSLeay.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/SSLeay/SSLeay.dll b/Master/tlpkg/tlperl/lib/auto/Crypt/SSLeay/SSLeay.dll
new file mode 100755
index 00000000000..2079b5cd1b7
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/SSLeay/SSLeay.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/Twofish/.packlist b/Master/tlpkg/tlperl/lib/auto/Crypt/Twofish/.packlist
new file mode 100755
index 00000000000..67dbca98338
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/Twofish/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Crypt\Twofish.pm
+C:\strawberry\perl\vendor\lib\auto\Crypt\Twofish\Twofish.bs
+C:\strawberry\perl\vendor\lib\auto\Crypt\Twofish\Twofish.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/Twofish/Twofish.bs b/Master/tlpkg/tlperl/lib/auto/Crypt/Twofish/Twofish.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/Twofish/Twofish.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Crypt/Twofish/Twofish.dll b/Master/tlpkg/tlperl/lib/auto/Crypt/Twofish/Twofish.dll
new file mode 100755
index 00000000000..323e51db070
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Crypt/Twofish/Twofish.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Cwd/.packlist b/Master/tlpkg/tlperl/lib/auto/Cwd/.packlist
new file mode 100755
index 00000000000..0d5c260a6d6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Cwd/.packlist
@@ -0,0 +1,12 @@
+C:\strawberry\perl\lib\Cwd.pm
+C:\strawberry\perl\lib\File\Spec.pm
+C:\strawberry\perl\lib\File\Spec\Cygwin.pm
+C:\strawberry\perl\lib\File\Spec\Epoc.pm
+C:\strawberry\perl\lib\File\Spec\Functions.pm
+C:\strawberry\perl\lib\File\Spec\Mac.pm
+C:\strawberry\perl\lib\File\Spec\OS2.pm
+C:\strawberry\perl\lib\File\Spec\Unix.pm
+C:\strawberry\perl\lib\File\Spec\VMS.pm
+C:\strawberry\perl\lib\File\Spec\Win32.pm
+C:\strawberry\perl\lib\auto\Cwd\Cwd.bs
+C:\strawberry\perl\lib\auto\Cwd\Cwd.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Cwd/Cwd.bs b/Master/tlpkg/tlperl/lib/auto/Cwd/Cwd.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Cwd/Cwd.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Cwd/Cwd.dll b/Master/tlpkg/tlperl/lib/auto/Cwd/Cwd.dll
new file mode 100755
index 00000000000..0841fc80cee
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Cwd/Cwd.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/ODBC/.packlist b/Master/tlpkg/tlperl/lib/auto/DBD/ODBC/.packlist
new file mode 100755
index 00000000000..dd2a88fa28e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/ODBC/.packlist
@@ -0,0 +1,5 @@
+C:\strawberry\perl\vendor\lib\DBD\ODBC.pm
+C:\strawberry\perl\vendor\lib\DBD\ODBC\Changes.pm
+C:\strawberry\perl\vendor\lib\DBD\ODBC\FAQ.pm
+C:\strawberry\perl\vendor\lib\auto\DBD\ODBC\ODBC.bs
+C:\strawberry\perl\vendor\lib\auto\DBD\ODBC\ODBC.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/ODBC/ODBC.bs b/Master/tlpkg/tlperl/lib/auto/DBD/ODBC/ODBC.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/ODBC/ODBC.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/ODBC/ODBC.dll b/Master/tlpkg/tlperl/lib/auto/DBD/ODBC/ODBC.dll
new file mode 100755
index 00000000000..056716e17e6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/ODBC/ODBC.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/Pg/.packlist b/Master/tlpkg/tlperl/lib/auto/DBD/Pg/.packlist
new file mode 100755
index 00000000000..86f5b168e0d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/Pg/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\vendor\lib\Bundle\DBD\Pg.pm
+C:\strawberry\perl\vendor\lib\DBD\Pg.pm
+C:\strawberry\perl\vendor\lib\auto\DBD\Pg\Pg.bs
+C:\strawberry\perl\vendor\lib\auto\DBD\Pg\Pg.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/Pg/Pg.bs b/Master/tlpkg/tlperl/lib/auto/DBD/Pg/Pg.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/Pg/Pg.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/Pg/Pg.dll b/Master/tlpkg/tlperl/lib/auto/DBD/Pg/Pg.dll
new file mode 100755
index 00000000000..528aa161bc4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/Pg/Pg.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/SQLite/.packlist b/Master/tlpkg/tlperl/lib/auto/DBD/SQLite/.packlist
new file mode 100755
index 00000000000..aae5b9ae406
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/SQLite/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\vendor\lib\DBD\SQLite.pm
+C:\strawberry\perl\vendor\lib\DBD\SQLite\Cookbook.pod
+C:\strawberry\perl\vendor\lib\auto\DBD\SQLite\SQLite.bs
+C:\strawberry\perl\vendor\lib\auto\DBD\SQLite\SQLite.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/SQLite/SQLite.bs b/Master/tlpkg/tlperl/lib/auto/DBD/SQLite/SQLite.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/SQLite/SQLite.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/SQLite/SQLite.dll b/Master/tlpkg/tlperl/lib/auto/DBD/SQLite/SQLite.dll
new file mode 100755
index 00000000000..aa4c8a8c880
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/SQLite/SQLite.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/mysql/.packlist b/Master/tlpkg/tlperl/lib/auto/DBD/mysql/.packlist
new file mode 100755
index 00000000000..9953af53d94
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/mysql/.packlist
@@ -0,0 +1,6 @@
+C:\strawberry\perl\vendor\lib\Bundle\DBD\mysql.pm
+C:\strawberry\perl\vendor\lib\DBD\mysql.pm
+C:\strawberry\perl\vendor\lib\DBD\mysql\GetInfo.pm
+C:\strawberry\perl\vendor\lib\DBD\mysql\INSTALL.pod
+C:\strawberry\perl\vendor\lib\auto\DBD\mysql\mysql.bs
+C:\strawberry\perl\vendor\lib\auto\DBD\mysql\mysql.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/mysql/libmysql.dll b/Master/tlpkg/tlperl/lib/auto/DBD/mysql/libmysql.dll
new file mode 100755
index 00000000000..2f240f1e3a4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/mysql/libmysql.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/mysql/mysql.bs b/Master/tlpkg/tlperl/lib/auto/DBD/mysql/mysql.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/mysql/mysql.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/DBD/mysql/mysql.dll b/Master/tlpkg/tlperl/lib/auto/DBD/mysql/mysql.dll
new file mode 100755
index 00000000000..14393ecffcb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBD/mysql/mysql.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/DBI/.packlist b/Master/tlpkg/tlperl/lib/auto/DBI/.packlist
new file mode 100755
index 00000000000..bbca50fb4ef
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBI/.packlist
@@ -0,0 +1,66 @@
+C:\strawberry\perl\bin\dbilogstrip
+C:\strawberry\perl\bin\dbilogstrip.bat
+C:\strawberry\perl\bin\dbiprof
+C:\strawberry\perl\bin\dbiprof.bat
+C:\strawberry\perl\bin\dbiproxy
+C:\strawberry\perl\bin\dbiproxy.bat
+C:\strawberry\perl\vendor\lib\Bundle\DBI.pm
+C:\strawberry\perl\vendor\lib\DBD\DBM.pm
+C:\strawberry\perl\vendor\lib\DBD\ExampleP.pm
+C:\strawberry\perl\vendor\lib\DBD\File.pm
+C:\strawberry\perl\vendor\lib\DBD\Gofer.pm
+C:\strawberry\perl\vendor\lib\DBD\Gofer\Policy\Base.pm
+C:\strawberry\perl\vendor\lib\DBD\Gofer\Policy\classic.pm
+C:\strawberry\perl\vendor\lib\DBD\Gofer\Policy\pedantic.pm
+C:\strawberry\perl\vendor\lib\DBD\Gofer\Policy\rush.pm
+C:\strawberry\perl\vendor\lib\DBD\Gofer\Transport\Base.pm
+C:\strawberry\perl\vendor\lib\DBD\Gofer\Transport\null.pm
+C:\strawberry\perl\vendor\lib\DBD\Gofer\Transport\pipeone.pm
+C:\strawberry\perl\vendor\lib\DBD\Gofer\Transport\stream.pm
+C:\strawberry\perl\vendor\lib\DBD\NullP.pm
+C:\strawberry\perl\vendor\lib\DBD\Proxy.pm
+C:\strawberry\perl\vendor\lib\DBD\Sponge.pm
+C:\strawberry\perl\vendor\lib\DBI.pm
+C:\strawberry\perl\vendor\lib\DBI\Changes.pm
+C:\strawberry\perl\vendor\lib\DBI\Const\GetInfoReturn.pm
+C:\strawberry\perl\vendor\lib\DBI\Const\GetInfoType.pm
+C:\strawberry\perl\vendor\lib\DBI\Const\GetInfo\ANSI.pm
+C:\strawberry\perl\vendor\lib\DBI\Const\GetInfo\ODBC.pm
+C:\strawberry\perl\vendor\lib\DBI\DBD.pm
+C:\strawberry\perl\vendor\lib\DBI\DBD\Metadata.pm
+C:\strawberry\perl\vendor\lib\DBI\FAQ.pm
+C:\strawberry\perl\vendor\lib\DBI\Gofer\Execute.pm
+C:\strawberry\perl\vendor\lib\DBI\Gofer\Request.pm
+C:\strawberry\perl\vendor\lib\DBI\Gofer\Response.pm
+C:\strawberry\perl\vendor\lib\DBI\Gofer\Serializer\Base.pm
+C:\strawberry\perl\vendor\lib\DBI\Gofer\Serializer\DataDumper.pm
+C:\strawberry\perl\vendor\lib\DBI\Gofer\Serializer\Storable.pm
+C:\strawberry\perl\vendor\lib\DBI\Gofer\Transport\Base.pm
+C:\strawberry\perl\vendor\lib\DBI\Gofer\Transport\pipeone.pm
+C:\strawberry\perl\vendor\lib\DBI\Gofer\Transport\stream.pm
+C:\strawberry\perl\vendor\lib\DBI\Profile.pm
+C:\strawberry\perl\vendor\lib\DBI\ProfileData.pm
+C:\strawberry\perl\vendor\lib\DBI\ProfileDumper.pm
+C:\strawberry\perl\vendor\lib\DBI\ProfileDumper\Apache.pm
+C:\strawberry\perl\vendor\lib\DBI\ProfileSubs.pm
+C:\strawberry\perl\vendor\lib\DBI\ProxyServer.pm
+C:\strawberry\perl\vendor\lib\DBI\PurePerl.pm
+C:\strawberry\perl\vendor\lib\DBI\Roadmap.pm
+C:\strawberry\perl\vendor\lib\DBI\SQL\Nano.pm
+C:\strawberry\perl\vendor\lib\DBI\Util\CacheMemory.pm
+C:\strawberry\perl\vendor\lib\DBI\Util\_accessor.pm
+C:\strawberry\perl\vendor\lib\DBI\W32ODBC.pm
+C:\strawberry\perl\vendor\lib\Roadmap.pod
+C:\strawberry\perl\vendor\lib\TASKS.pod
+C:\strawberry\perl\vendor\lib\Win32\DBIODBC.pm
+C:\strawberry\perl\vendor\lib\auto\DBI\DBI.bs
+C:\strawberry\perl\vendor\lib\auto\DBI\DBI.dll
+C:\strawberry\perl\vendor\lib\auto\DBI\DBIXS.h
+C:\strawberry\perl\vendor\lib\auto\DBI\Driver.xst
+C:\strawberry\perl\vendor\lib\auto\DBI\Driver_xst.h
+C:\strawberry\perl\vendor\lib\auto\DBI\dbd_xsh.h
+C:\strawberry\perl\vendor\lib\auto\DBI\dbi_sql.h
+C:\strawberry\perl\vendor\lib\auto\DBI\dbipport.h
+C:\strawberry\perl\vendor\lib\auto\DBI\dbivport.h
+C:\strawberry\perl\vendor\lib\auto\DBI\dbixs_rev.h
+C:\strawberry\perl\vendor\lib\dbixs_rev.pl
diff --git a/Master/tlpkg/tlperl/lib/auto/DBI/DBI.bs b/Master/tlpkg/tlperl/lib/auto/DBI/DBI.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBI/DBI.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/DBI/DBI.dll b/Master/tlpkg/tlperl/lib/auto/DBI/DBI.dll
new file mode 100755
index 00000000000..0879692039f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBI/DBI.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/DBI/DBIXS.h b/Master/tlpkg/tlperl/lib/auto/DBI/DBIXS.h
new file mode 100755
index 00000000000..a371bf8d855
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBI/DBIXS.h
@@ -0,0 +1,519 @@
+/* $Id: DBIXS.h 12559 2009-03-02 11:14:07Z timbo $
+ *
+ * Copyright (c) 1994-2002 Tim Bunce Ireland
+ *
+ * See COPYRIGHT section in DBI.pm for usage and distribution rights.
+ */
+
+/* DBI Interface Definitions for DBD Modules */
+
+#ifndef DBIXS_VERSION /* prevent multiple inclusion */
+
+#ifndef DBIS
+#define DBIS dbis /* default name for dbistate_t variable */
+#endif
+
+/* first pull in the standard Perl header files for extensions */
+#define PERL_POLLUTE
+#include <EXTERN.h>
+#include <perl.h>
+#include <XSUB.h>
+
+#ifdef debug /* causes problems with DBIS->debug */
+#undef debug
+#endif
+
+#ifdef std /* causes problems with STLport <tscheresky@micron.com> */
+#undef std
+#endif
+
+/* define DBIXS_REVISION */
+#include "dbixs_rev.h"
+
+/* Perl backwards compatibility definitions */
+#include "dbipport.h"
+
+/* DBI SQL_* type definitions */
+#include "dbi_sql.h"
+
+
+/* The DBIXS_VERSION value will be incremented whenever new code is
+ * added to the interface (this file) or significant changes are made.
+ * It's primary goal is to allow newer drivers to compile against an
+ * older installed DBI. This is mainly an issue whilst the API grows
+ * and learns from the needs of various drivers. See also the
+ * DBISTATE_VERSION macro below. You can think of DBIXS_VERSION as
+ * being a compile time check and DBISTATE_VERSION as a runtime check.
+ * By contract, DBIXS_REVISION is a driver source compatibility tool.
+ */
+#define DBIXS_VERSION 93
+
+#ifdef NEED_DBIXS_VERSION
+#if NEED_DBIXS_VERSION > DBIXS_VERSION
+error You_need_to_upgrade_your_DBI_module_before_building_this_driver
+#endif
+#else
+#define NEED_DBIXS_VERSION DBIXS_VERSION
+#endif
+
+
+#define DBI_LOCK
+#define DBI_UNLOCK
+
+#ifndef DBI_NO_THREADS
+#ifdef USE_ITHREADS
+#define DBI_USE_THREADS
+#endif /* USE_ITHREADS */
+#endif /* DBI_NO_THREADS */
+
+
+/* forward struct declarations */
+
+typedef struct dbistate_st dbistate_t;
+/* implementor needs to define actual struct { dbih_??c_t com; ... }*/
+typedef struct imp_drh_st imp_drh_t; /* driver */
+typedef struct imp_dbh_st imp_dbh_t; /* database */
+typedef struct imp_sth_st imp_sth_t; /* statement */
+typedef struct imp_fdh_st imp_fdh_t; /* field descriptor */
+typedef struct imp_xxh_st imp_xxh_t; /* any (defined below) */
+#define DBI_imp_data_ imp_xxh_t /* friendly for take_imp_data */
+
+
+
+/* --- DBI Handle Common Data Structure (all handles have one) --- */
+
+/* Handle types. Code currently assumes child = parent + 1. */
+#define DBIt_DR 1
+#define DBIt_DB 2
+#define DBIt_ST 3
+#define DBIt_FD 4
+
+/* component structures */
+
+typedef struct dbih_com_std_st {
+ U32 flags;
+ int call_depth; /* used by DBI to track nested calls (int) */
+ U16 type; /* DBIt_DR, DBIt_DB, DBIt_ST */
+ HV *my_h; /* copy of outer handle HV (not refcounted) */
+ SV *parent_h; /* parent inner handle (ref to hv) (r.c.inc) */
+ imp_xxh_t *parent_com; /* parent com struct shortcut */
+ PerlInterpreter * thr_user; /* thread that owns the handle */
+
+ HV *imp_stash; /* who is the implementor for this handle */
+ SV *imp_data; /* optional implementors data (for perl imp's) */
+
+ I32 kids; /* count of db's for dr's, st's for db's etc */
+ I32 active_kids; /* kids which are currently DBIc_ACTIVE */
+ U32 pad; /* keep binary compat */
+ dbistate_t *dbistate;
+} dbih_com_std_t;
+
+typedef struct dbih_com_attr_st {
+ /* These are copies of the Hash values (ref.cnt.inc'd) */
+ /* Many of the hash values are themselves references */
+ SV *TraceLevel;
+ SV *State; /* Standard SQLSTATE, 5 char string */
+ SV *Err; /* Native engine error code */
+ SV *Errstr; /* Native engine error message */
+ UV ErrCount;
+ U32 LongReadLen; /* auto read length for long/blob types */
+ SV *FetchHashKeyName; /* for fetchrow_hashref */
+ /* (NEW FIELDS?... DON'T FORGET TO UPDATE dbih_clearcom()!) */
+} dbih_com_attr_t;
+
+
+struct dbih_com_st { /* complete core structure (typedef'd above) */
+ dbih_com_std_t std;
+ dbih_com_attr_t attr;
+};
+
+/* This 'implementors' type the DBI defines by default as a way to */
+/* refer to the imp_??h data of a handle without considering its type. */
+struct imp_xxh_st { struct dbih_com_st com; };
+
+/* Define handle-type specific structures for implementors to include */
+/* at the start of their private structures. */
+
+typedef struct { /* -- DRIVER -- */
+ dbih_com_std_t std;
+ dbih_com_attr_t attr;
+ HV *_old_cached_kids; /* not used, here for binary compat */
+} dbih_drc_t;
+
+typedef struct { /* -- DATABASE -- */
+ dbih_com_std_t std; /* \__ standard structure */
+ dbih_com_attr_t attr; /* / plus... (nothing else right now) */
+ HV *_old_cached_kids; /* not used, here for binary compat */
+} dbih_dbc_t;
+
+typedef struct { /* -- STATEMENT -- */
+ dbih_com_std_t std; /* \__ standard structure */
+ dbih_com_attr_t attr; /* / plus ... */
+
+ int num_params; /* number of placeholders */
+ int num_fields; /* NUM_OF_FIELDS, must be set */
+ AV *fields_svav; /* special row buffer (inc bind_cols) */
+ IV row_count; /* incremented by get_fbav() */
+
+ AV *fields_fdav; /* not used yet, may change */
+
+ I32 spare1;
+ void *spare2;
+} dbih_stc_t;
+
+
+/* XXX THIS STRUCTURE SHOULD NOT BE USED */
+typedef struct { /* -- FIELD DESCRIPTOR -- */
+ dbih_com_std_t std; /* standard structure (not fully setup) */
+
+ /* core attributes (from DescribeCol in ODBC) */
+ char *col_name; /* see dbih_make_fdsv */
+ I16 col_name_len;
+ I16 col_sql_type;
+ I16 col_precision;
+ I16 col_scale;
+ I16 col_nullable;
+
+ /* additional attributes (from ColAttributes in ODBC) */
+ I32 col_length;
+ I32 col_disp_size;
+
+ I32 spare1;
+ void *spare2;
+} dbih_fdc_t;
+
+
+#define _imp2com(p,f) ((p)->com.f)
+
+#define DBIc_FLAGS(imp) _imp2com(imp, std.flags)
+#define DBIc_TYPE(imp) _imp2com(imp, std.type)
+#define DBIc_CALL_DEPTH(imp) _imp2com(imp, std.call_depth)
+#define DBIc_MY_H(imp) _imp2com(imp, std.my_h)
+#define DBIc_PARENT_H(imp) _imp2com(imp, std.parent_h)
+#define DBIc_PARENT_COM(imp) _imp2com(imp, std.parent_com)
+#define DBIc_THR_COND(imp) _imp2com(imp, std.thr_cond)
+#define DBIc_THR_USER(imp) _imp2com(imp, std.thr_user)
+#define DBIc_THR_USER_NONE (0xFFFF)
+#define DBIc_IMP_STASH(imp) _imp2com(imp, std.imp_stash)
+#define DBIc_IMP_DATA(imp) _imp2com(imp, std.imp_data)
+#define DBIc_DBISTATE(imp) _imp2com(imp, std.dbistate)
+#define DBIc_LOGPIO(imp) DBIc_DBISTATE(imp)->logfp
+#define DBIc_KIDS(imp) _imp2com(imp, std.kids)
+#define DBIc_ACTIVE_KIDS(imp) _imp2com(imp, std.active_kids)
+#define DBIc_LAST_METHOD(imp) _imp2com(imp, std.last_method)
+
+#define DBIc_TRACE_LEVEL_MASK 0x0000000F
+#define DBIc_TRACE_FLAGS_MASK 0xFFFFFF00
+#define DBIc_TRACE_SETTINGS(imp) (DBIc_DBISTATE(imp)->debug)
+#define DBIc_TRACE_LEVEL(imp) (DBIc_TRACE_SETTINGS(imp) & DBIc_TRACE_LEVEL_MASK)
+#define DBIc_TRACE_FLAGS(imp) (DBIc_TRACE_SETTINGS(imp) & DBIc_TRACE_FLAGS_MASK)
+/* DBIc_TRACE_MATCHES(this, crnt): true if this 'matches' (is within) crnt
+ DBIc_TRACE_MATCHES(foo, DBIc_TRACE_SETTINGS(imp))
+*/
+#define DBIc_TRACE_MATCHES(this, crnt) \
+ ( ((crnt & DBIc_TRACE_LEVEL_MASK) >= (this & DBIc_TRACE_LEVEL_MASK)) \
+ || ((crnt & DBIc_TRACE_FLAGS_MASK) & (this & DBIc_TRACE_FLAGS_MASK)) )
+/* DBIc_TRACE: true if flags match & DBI level>=flaglevel, or if DBI level>level
+ This is the main trace testing macro to be used by drivers.
+ (Drivers should define their own DBDtf_* macros for the top 8 bits: 0xFF000000)
+ DBIc_TRACE(imp, 0, 0, 4) = if level >= 4
+ DBIc_TRACE(imp, DBDtf_FOO, 2, 4) = if tracing DBDtf_FOO & level>=2 or level>=4
+ DBIc_TRACE(imp, DBDtf_FOO, 2, 0) = as above but never trace just due to level
+*/
+#define DBIc_TRACE(imp, flags, flaglevel, level) \
+ ( (flags && (DBIc_TRACE_FLAGS(imp) & flags) && (DBIc_TRACE_LEVEL(imp) >= flaglevel)) \
+ || (level && DBIc_TRACE_LEVEL(imp) >= level) )
+
+#define DBIc_DEBUG(imp) (_imp2com(imp, attr.TraceLevel)) /* deprecated */
+#define DBIc_DEBUGIV(imp) SvIV(DBIc_DEBUG(imp)) /* deprecated */
+#define DBIc_STATE(imp) SvRV(_imp2com(imp, attr.State))
+#define DBIc_ERR(imp) SvRV(_imp2com(imp, attr.Err))
+#define DBIc_ERRSTR(imp) SvRV(_imp2com(imp, attr.Errstr))
+#define DBIc_ErrCount(imp) _imp2com(imp, attr.ErrCount)
+#define DBIc_LongReadLen(imp) _imp2com(imp, attr.LongReadLen)
+#define DBIc_LongReadLen_init 80 /* may change */
+#define DBIc_FetchHashKeyName(imp) (_imp2com(imp, attr.FetchHashKeyName))
+
+/* handle sub-type specific fields */
+/* dbh & drh */
+#define DBIc_CACHED_KIDS(imp) Nullhv /* no longer used, here for src compat */
+/* sth */
+#define DBIc_NUM_FIELDS(imp) _imp2com(imp, num_fields)
+#define DBIc_NUM_PARAMS(imp) _imp2com(imp, num_params)
+#define DBIc_NUM_PARAMS_AT_EXECUTE -9 /* see Driver.xst */
+#define DBIc_ROW_COUNT(imp) _imp2com(imp, row_count)
+#define DBIc_FIELDS_AV(imp) _imp2com(imp, fields_svav)
+#define DBIc_FDESC_AV(imp) _imp2com(imp, fields_fdav)
+#define DBIc_FDESC(imp, i) ((imp_fdh_t*)(void*)SvPVX(AvARRAY(DBIc_FDESC_AV(imp))[i]))
+
+/* XXX --- DO NOT CHANGE THESE VALUES AS THEY ARE COMPILED INTO DRIVERS --- XXX */
+#define DBIcf_COMSET 0x000001 /* needs to be clear'd before free'd */
+#define DBIcf_IMPSET 0x000002 /* has implementor data to be clear'd */
+#define DBIcf_ACTIVE 0x000004 /* needs finish/disconnect before clear */
+#define DBIcf_IADESTROY 0x000008 /* do DBIc_ACTIVE_off before DESTROY */
+#define DBIcf_WARN 0x000010 /* warn about poor practice etc */
+#define DBIcf_COMPAT 0x000020 /* compat/emulation mode (eg oraperl) */
+#define DBIcf_ChopBlanks 0x000040 /* rtrim spaces from fetch char columns */
+#define DBIcf_RaiseError 0x000080 /* throw exception (croak) on error */
+#define DBIcf_PrintError 0x000100 /* warn() on error */
+#define DBIcf_AutoCommit 0x000200 /* dbh only. used by drivers */
+#define DBIcf_LongTruncOk 0x000400 /* truncation to LongReadLen is okay */
+#define DBIcf_MultiThread 0x000800 /* allow multiple threads to enter */
+#define DBIcf_HandleSetErr 0x001000 /* has coderef HandleSetErr attribute */
+#define DBIcf_ShowErrorStatement 0x002000 /* include Statement in error */
+#define DBIcf_BegunWork 0x004000 /* between begin_work & commit/rollback */
+#define DBIcf_HandleError 0x008000 /* has coderef in HandleError attribute */
+#define DBIcf_Profile 0x010000 /* profile activity on this handle */
+#define DBIcf_TaintIn 0x020000 /* check inputs for taintedness */
+#define DBIcf_TaintOut 0x040000 /* taint outgoing data */
+#define DBIcf_Executed 0x080000 /* do/execute called since commit/rollb */
+#define DBIcf_PrintWarn 0x100000 /* warn() on warning (err="0") */
+#define DBIcf_Callbacks 0x200000 /* has Callbacks attribute hash */
+/* NOTE: new flags may require clone() to be updated */
+
+#define DBIcf_INHERITMASK /* what NOT to pass on to children */ \
+ (U32)( DBIcf_COMSET | DBIcf_IMPSET | DBIcf_ACTIVE | DBIcf_IADESTROY \
+ | DBIcf_AutoCommit | DBIcf_BegunWork | DBIcf_Executed | DBIcf_Callbacks )
+
+/* general purpose bit setting and testing macros */
+#define DBIbf_is( bitset,flag) ((bitset) & (flag))
+#define DBIbf_has(bitset,flag) DBIbf_is(bitset, flag) /* alias for _is */
+#define DBIbf_on( bitset,flag) ((bitset) |= (flag))
+#define DBIbf_off(bitset,flag) ((bitset) &= ~(flag))
+#define DBIbf_set(bitset,flag,on) ((on) ? DBIbf_on(bitset, flag) : DBIbf_off(bitset,flag))
+
+/* as above, but specifically for DBIc_FLAGS imp flags (except ACTIVE) */
+#define DBIc_is(imp, flag) DBIbf_is( DBIc_FLAGS(imp), flag)
+#define DBIc_has(imp,flag) DBIc_is(imp, flag) /* alias for DBIc_is */
+#define DBIc_on(imp, flag) DBIbf_on( DBIc_FLAGS(imp), flag)
+#define DBIc_off(imp,flag) DBIbf_off(DBIc_FLAGS(imp), flag)
+#define DBIc_set(imp,flag,on) DBIbf_set(DBIc_FLAGS(imp), flag, on)
+
+#define DBIc_COMSET(imp) DBIc_is(imp, DBIcf_COMSET)
+#define DBIc_COMSET_on(imp) DBIc_on(imp, DBIcf_COMSET)
+#define DBIc_COMSET_off(imp) DBIc_off(imp,DBIcf_COMSET)
+
+#define DBIc_IMPSET(imp) DBIc_is(imp, DBIcf_IMPSET)
+#define DBIc_IMPSET_on(imp) DBIc_on(imp, DBIcf_IMPSET)
+#define DBIc_IMPSET_off(imp) DBIc_off(imp,DBIcf_IMPSET)
+
+#define DBIc_ACTIVE(imp) (DBIc_FLAGS(imp) & DBIcf_ACTIVE)
+#define DBIc_ACTIVE_on(imp) /* adjust parent's active kid count */ \
+ do { \
+ imp_xxh_t *ph_com = DBIc_PARENT_COM(imp); \
+ if (!DBIc_ACTIVE(imp) && ph_com && !dirty \
+ && ++DBIc_ACTIVE_KIDS(ph_com) > DBIc_KIDS(ph_com)) \
+ croak("panic: DBI active kids (%ld) > kids (%ld)", \
+ (long)DBIc_ACTIVE_KIDS(ph_com), \
+ (long)DBIc_KIDS(ph_com)); \
+ DBIc_FLAGS(imp) |= DBIcf_ACTIVE; \
+ } while(0)
+#define DBIc_ACTIVE_off(imp) /* adjust parent's active kid count */ \
+ do { \
+ imp_xxh_t *ph_com = DBIc_PARENT_COM(imp); \
+ if (DBIc_ACTIVE(imp) && ph_com && !dirty \
+ && (--DBIc_ACTIVE_KIDS(ph_com) > DBIc_KIDS(ph_com) \
+ || DBIc_ACTIVE_KIDS(ph_com) < 0) ) \
+ croak("panic: DBI active kids (%ld) < 0 or > kids (%ld)", \
+ (long)DBIc_ACTIVE_KIDS(ph_com), \
+ (long)DBIc_KIDS(ph_com)); \
+ DBIc_FLAGS(imp) &= ~DBIcf_ACTIVE; \
+ } while(0)
+
+#define DBIc_IADESTROY(imp) (DBIc_FLAGS(imp) & DBIcf_IADESTROY)
+#define DBIc_IADESTROY_on(imp) (DBIc_FLAGS(imp) |= DBIcf_IADESTROY)
+#define DBIc_IADESTROY_off(imp) (DBIc_FLAGS(imp) &= ~DBIcf_IADESTROY)
+
+#define DBIc_WARN(imp) (DBIc_FLAGS(imp) & DBIcf_WARN)
+#define DBIc_WARN_on(imp) (DBIc_FLAGS(imp) |= DBIcf_WARN)
+#define DBIc_WARN_off(imp) (DBIc_FLAGS(imp) &= ~DBIcf_WARN)
+
+#define DBIc_COMPAT(imp) (DBIc_FLAGS(imp) & DBIcf_COMPAT)
+#define DBIc_COMPAT_on(imp) (DBIc_FLAGS(imp) |= DBIcf_COMPAT)
+#define DBIc_COMPAT_off(imp) (DBIc_FLAGS(imp) &= ~DBIcf_COMPAT)
+
+
+#ifdef IN_DBI_XS /* get Handle Common Data Structure */
+#define DBIh_COM(h) (dbih_getcom2(aTHX_ h, 0))
+#else
+#define DBIh_COM(h) (DBIS->getcom(h))
+#define neatsvpv(sv,len) (DBIS->neat_svpv(sv,len))
+#endif
+
+
+/* --- Implementors Private Data Support --- */
+
+#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
+#define D_imp_drh(h) D_impdata(imp_drh, imp_drh_t, h)
+#define D_imp_dbh(h) D_impdata(imp_dbh, imp_dbh_t, h)
+#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
+#define D_imp_xxh(h) D_impdata(imp_xxh, imp_xxh_t, h)
+
+#define D_imp_from_child(name,type,child) \
+ type *name = (type*)(DBIc_PARENT_COM(child))
+#define D_imp_drh_from_dbh D_imp_from_child(imp_drh, imp_drh_t, imp_dbh)
+#define D_imp_dbh_from_sth D_imp_from_child(imp_dbh, imp_dbh_t, imp_sth)
+
+#define DBI_IMP_SIZE(n,s) sv_setiv(perl_get_sv((n), GV_ADDMULTI), (s)) /* XXX */
+
+
+
+/* --- Event Support (VERY LIABLE TO CHANGE) --- */
+
+#define DBIh_EVENTx(h,t,a1,a2) /* deprecated XXX */ &PL_sv_no
+#define DBIh_EVENT0(h,t) DBIh_EVENTx((h), (t), &PL_sv_undef, &PL_sv_undef)
+#define DBIh_EVENT1(h,t, a1) DBIh_EVENTx((h), (t), (a1), &PL_sv_undef)
+#define DBIh_EVENT2(h,t, a1,a2) DBIh_EVENTx((h), (t), (a1), (a2))
+
+#define ERROR_event "ERROR"
+#define WARN_event "WARN"
+#define MSG_event "MESSAGE"
+#define DBEVENT_event "DBEVENT"
+#define UNKNOWN_event "UNKNOWN"
+
+#define DBIh_SET_ERR_SV(h,i, err, errstr, state, method) \
+ (DBIc_DBISTATE(i)->set_err_sv(h,i, err, errstr, state, method))
+#define DBIh_SET_ERR_CHAR(h,i, err_c, err_i, errstr, state, method) \
+ (DBIc_DBISTATE(i)->set_err_char(h,i, err_c, err_i, errstr, state, method))
+
+
+/* --- Handy Macros --- */
+
+#define DBIh_CLEAR_ERROR(imp_xxh) (void)( \
+ (void)SvOK_off(DBIc_ERR(imp_xxh)), \
+ (void)SvOK_off(DBIc_ERRSTR(imp_xxh)), \
+ (void)SvOK_off(DBIc_STATE(imp_xxh)) \
+ )
+
+
+/* --- DBI State Structure --- */
+
+struct dbistate_st {
+
+#define DBISTATE_VERSION 94 /* Must change whenever dbistate_t does */
+
+ /* this must be the first member in structure */
+ void (*check_version) _((const char *name,
+ int dbis_cv, int dbis_cs, int need_dbixs_cv,
+ int drc_s, int dbc_s, int stc_s, int fdc_s));
+
+ /* version and size are used to check for DBI/DBD version mis-match */
+ U16 version; /* version of this structure */
+ U16 size;
+ U16 xs_version; /* version of the overall DBIXS / DBD interface */
+ U16 spare_pad;
+
+ I32 debug;
+ PerlIO *logfp;
+
+ /* pointers to DBI functions which the DBD's will want to use */
+ char * (*neat_svpv) _((SV *sv, STRLEN maxlen));
+ imp_xxh_t * (*getcom) _((SV *h)); /* see DBIh_COM macro */
+ void (*clearcom) _((imp_xxh_t *imp_xxh));
+ SV * (*event) _((SV *h, const char *name, SV*, SV*));
+ int (*set_attr_k) _((SV *h, SV *keysv, int dbikey, SV *valuesv));
+ SV * (*get_attr_k) _((SV *h, SV *keysv, int dbikey));
+ AV * (*get_fbav) _((imp_sth_t *imp_sth));
+ SV * (*make_fdsv) _((SV *sth, const char *imp_class, STRLEN imp_size, const char *col_name));
+ int (*bind_as_num) _((int sql_type, int p, int s, int *t, void *v));
+ I32 (*hash) _((const char *string, long i));
+ SV * (*preparse) _((SV *sth, char *statement, IV ps_return, IV ps_accept, void *foo));
+
+ SV *neatsvpvlen; /* only show dbgpvlen chars when debugging pv's */
+
+ PerlInterpreter * thr_owner; /* thread that owns this dbistate */
+
+ int (*logmsg) _((imp_xxh_t *imp_xxh, const char *fmt, ...));
+ int (*set_err_sv) _((SV *h, imp_xxh_t *imp_xxh, SV *err, SV *errstr, SV *state, SV *method));
+ int (*set_err_char) _((SV *h, imp_xxh_t *imp_xxh, const char *err, IV err_i, const char *errstr, const char *state, const char *method));
+ int (*bind_col) _((SV *sth, SV *col, SV *ref, SV *attribs));
+
+ IO *logfp_ref; /* DAA keep ptr to filehandle for refcounting */
+
+ /* WARNING: Only add new structure members here, and reduce pad2 to keep */
+ /* the memory footprint exactly the same */
+ void *pad2[4];
+};
+
+/* macros for backwards compatibility */
+#define set_attr(h, k, v) set_attr_k(h, k, 0, v)
+#define get_attr(h, k) get_attr_k(h, k, 0)
+
+#define DBISTATE_PERLNAME "DBI::_dbistate"
+#define DBISTATE_ADDRSV (perl_get_sv(DBISTATE_PERLNAME, 0x05))
+#define DBILOGFP (DBIS->logfp)
+#ifdef IN_DBI_XS
+#define DBILOGMSG (dbih_logmsg)
+#else
+#define DBILOGMSG (DBIS->logmsg)
+#endif
+
+
+/* --- perl object (ActiveState) / multiplicity hooks and hoops --- */
+/* note that USE_ITHREADS implies MULTIPLICITY */
+#define DBIS_PUBLISHED_LVALUE (*(INT2PTR(dbistate_t**, &SvIVX(DBISTATE_ADDRSV))))
+#if defined(MULTIPLICITY) || defined(PERL_OBJECT) || defined(PERL_CAPI)
+
+# define DBISTATE_DECLARE typedef int dummy_dbistate /* keep semicolon from feeling lonely */
+# define DBISTATE_INIT_DBIS typedef int dummy_dbistate2; /* keep semicolon from feeling lonely */
+# undef DBIS
+# define DBIS DBIS_PUBLISHED_LVALUE
+# define dbis DBIS_PUBLISHED_LVALUE /* temp for old drivers using 'dbis' instead of 'DBIS' */
+
+#else /* plain and simple non perl object / multiplicity case */
+
+# define DBISTATE_DECLARE static dbistate_t *DBIS
+# define DBISTATE_INIT_DBIS (DBIS = DBIS_PUBLISHED_LVALUE)
+#endif
+
+# define DBISTATE_INIT { /* typically use in BOOT: of XS file */ \
+ DBISTATE_INIT_DBIS; \
+ if (DBIS == NULL) \
+ croak("Unable to get DBI state from %s at %p. DBI not loaded.", DBISTATE_PERLNAME, (void*)DBISTATE_ADDRSV); \
+ DBIS->check_version(__FILE__, DBISTATE_VERSION, sizeof(*DBIS), NEED_DBIXS_VERSION, \
+ sizeof(dbih_drc_t), sizeof(dbih_dbc_t), sizeof(dbih_stc_t), sizeof(dbih_fdc_t) \
+ ); \
+}
+
+
+/* --- Assorted Utility Macros --- */
+
+#define DBD_ATTRIB_OK(attribs) /* is this a usable attrib value */ \
+ (attribs && SvROK(attribs) && SvTYPE(SvRV(attribs))==SVt_PVHV)
+
+/* If attribs value supplied then croak if it's not a hash ref. */
+/* Also map undef to Null. Should always be called to pre-process the */
+/* attribs value. One day we may add some extra magic in here. */
+#define DBD_ATTRIBS_CHECK(func, h, attribs) \
+ if ((attribs) && SvOK(attribs)) { \
+ if (!SvROK(attribs) || SvTYPE(SvRV(attribs))!=SVt_PVHV) \
+ croak("%s->%s(...): attribute parameter '%s' is not a hash ref", \
+ SvPV_nolen(h), func, SvPV_nolen(attribs)); \
+ } else (attribs) = Nullsv
+
+#define DBD_ATTRIB_GET_SVP(attribs, key,klen) \
+ (DBD_ATTRIB_OK(attribs) \
+ ? hv_fetch((HV*)SvRV(attribs), key,klen, 0) \
+ : (SV **)Nullsv)
+
+#define DBD_ATTRIB_GET_IV(attribs, key,klen, svp, var) \
+ if ((svp=DBD_ATTRIB_GET_SVP(attribs, key,klen)) != NULL) \
+ var = SvIV(*svp)
+
+#define DBD_ATTRIB_GET_BOOL(attribs, key,klen, svp, var) \
+ if ((svp=DBD_ATTRIB_GET_SVP(attribs, key,klen)) != NULL) \
+ var = SvTRUE(*svp)
+
+#define DBD_ATTRIB_TRUE(attribs, key,klen, svp) \
+ ( ((svp=DBD_ATTRIB_GET_SVP(attribs, key,klen)) != NULL) \
+ ? SvTRUE(*svp) : 0 )
+
+#define DBD_ATTRIB_GET_PV(attribs, key,klen, svp, dflt) \
+ (((svp=DBD_ATTRIB_GET_SVP(attribs, key,klen)) != NULL) \
+ ? SvPV_nolen(*svp) : (dflt))
+
+#define DBD_ATTRIB_DELETE(attribs, key, klen) \
+ hv_delete((HV*)SvRV(attribs), key, klen, G_DISCARD)
+
+#endif /* DBIXS_VERSION */
+/* end of DBIXS.h */
diff --git a/Master/tlpkg/tlperl/lib/auto/DBI/Driver.xst b/Master/tlpkg/tlperl/lib/auto/DBI/Driver.xst
new file mode 100755
index 00000000000..f4527560925
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBI/Driver.xst
@@ -0,0 +1,775 @@
+# $Id: Driver.xst 12816 2009-06-08 10:07:26Z timbo $
+# Copyright (c) 1997-2002 Tim Bunce Ireland
+# Copyright (c) 2002 Jonathan Leffler
+#
+# You may distribute under the terms of either the GNU General Public
+# License or the Artistic License, as specified in the Perl README file.
+
+
+#include "Driver_xst.h"
+
+
+MODULE = DBD::~DRIVER~ PACKAGE = DBD::~DRIVER~
+
+REQUIRE: 1.929
+PROTOTYPES: DISABLE
+
+BOOT:
+ items = 0; /* avoid 'unused variable' warning */
+ DBISTATE_INIT;
+ /* XXX this interface will change: */
+ DBI_IMP_SIZE("DBD::~DRIVER~::dr::imp_data_size", sizeof(imp_drh_t));
+ DBI_IMP_SIZE("DBD::~DRIVER~::db::imp_data_size", sizeof(imp_dbh_t));
+ DBI_IMP_SIZE("DBD::~DRIVER~::st::imp_data_size", sizeof(imp_sth_t));
+ dbd_init(DBIS);
+
+
+# ------------------------------------------------------------
+# driver level interface
+# ------------------------------------------------------------
+MODULE = DBD::~DRIVER~ PACKAGE = DBD::~DRIVER~::dr
+
+
+void
+dbixs_revision(...)
+ PPCODE:
+ ST(0) = sv_2mortal(newSViv(DBIXS_REVISION));
+
+
+#ifdef dbd_discon_all
+
+# disconnect_all renamed and ALIAS'd to avoid length clash on VMS :-(
+void
+discon_all_(drh)
+ SV * drh
+ ALIAS:
+ disconnect_all = 1
+ CODE:
+ D_imp_drh(drh);
+ if (0) ix = ix; /* avoid unused variable warning */
+ ST(0) = dbd_discon_all(drh, imp_drh) ? &sv_yes : &sv_no;
+
+#endif /* dbd_discon_all */
+
+
+#ifdef dbd_dr_data_sources
+
+void
+data_sources(drh, attr = Nullsv)
+ SV *drh
+ SV *attr
+ PPCODE:
+ {
+ D_imp_drh(drh);
+ AV *av = dbd_dr_data_sources(drh, imp_drh, attr);
+ if (av) {
+ int i;
+ int n = AvFILL(av)+1;
+ EXTEND(sp, n);
+ for (i = 0; i < n; ++i) {
+ PUSHs(AvARRAY(av)[i]);
+ }
+ }
+ }
+
+#endif
+
+
+# ------------------------------------------------------------
+# database level interface
+# ------------------------------------------------------------
+MODULE = DBD::~DRIVER~ PACKAGE = DBD::~DRIVER~::db
+
+
+void
+_login(dbh, dbname, username, password, attribs=Nullsv)
+ SV * dbh
+ SV * dbname
+ SV * username
+ SV * password
+ SV * attribs
+ CODE:
+ {
+ STRLEN lna;
+ D_imp_dbh(dbh);
+ char *u = (SvOK(username)) ? SvPV(username,lna) : "";
+ char *p = (SvOK(password)) ? SvPV(password,lna) : "";
+#ifdef dbd_db_login6_sv
+ ST(0) = dbd_db_login6_sv(dbh, imp_dbh, dbname, username, password, attribs) ? &sv_yes : &sv_no;
+#elif defined(dbd_db_login6)
+ ST(0) = dbd_db_login6(dbh, imp_dbh, SvPV_nolen(dbname), u, p, attribs) ? &sv_yes : &sv_no;
+#else
+ ST(0) = dbd_db_login( dbh, imp_dbh, SvPV_nolen(dbname), u, p) ? &sv_yes : &sv_no;
+#endif
+ }
+
+
+void
+selectall_arrayref(...)
+ PREINIT:
+ SV *sth;
+ SV **maxrows_svp;
+ SV **tmp_svp;
+ SV *attr = &PL_sv_undef;
+ imp_sth_t *imp_sth;
+ CODE:
+ if (items > 2) {
+ attr = ST(2);
+ if (SvROK(attr) &&
+ (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))
+ ) {
+ /* fallback to perl implementation */
+ SV *tmp =dbixst_bounce_method("DBD::~DRIVER~::db::SUPER::selectall_arrayref", items);
+ SPAGAIN;
+ ST(0) = tmp;
+ XSRETURN(1);
+ }
+ }
+ /* --- prepare --- */
+ if (SvROK(ST(1))) {
+ MAGIC *mg;
+ sth = ST(1);
+ /* switch to inner handle if not already */
+ if ( (mg = mg_find(SvRV(sth),'P')) )
+ sth = mg->mg_obj;
+ }
+ else {
+ sth = dbixst_bounce_method("prepare", 3);
+ SPAGAIN; SP -= items; /* because stack might have been realloc'd */
+ if (!SvROK(sth))
+ XSRETURN_UNDEF;
+ /* switch to inner handle */
+ sth = mg_find(SvRV(sth),'P')->mg_obj;
+ }
+ imp_sth = (imp_sth_t*)(DBIh_COM(sth));
+ /* --- bind_param --- */
+ if (items > 3) { /* need to bind params before execute */
+ if (!dbdxst_bind_params(sth, imp_sth, items-2, ax+2) ) {
+ XSRETURN_UNDEF;
+ }
+ }
+ /* --- execute --- */
+ DBIc_ROW_COUNT(imp_sth) = 0;
+ if ( dbd_st_execute(sth, imp_sth) <= -2 ) { /* -2 == error */
+ XSRETURN_UNDEF;
+ }
+ /* --- fetchall --- */
+ maxrows_svp = DBD_ATTRIB_GET_SVP(attr, "MaxRows", 7);
+ ST(0) = dbdxst_fetchall_arrayref(sth, &PL_sv_undef, (maxrows_svp) ? *maxrows_svp : &PL_sv_undef);
+
+
+void
+selectrow_arrayref(...)
+ ALIAS:
+ selectrow_array = 1
+ PREINIT:
+ int is_selectrow_array = (ix == 1);
+ imp_sth_t *imp_sth;
+ SV *sth;
+ AV *row_av;
+ PPCODE:
+ if (SvROK(ST(1))) {
+ MAGIC *mg;
+ sth = ST(1);
+ /* switch to inner handle if not already */
+ if ( (mg = mg_find(SvRV(sth),'P')) )
+ sth = mg->mg_obj;
+ }
+ else {
+ /* --- prepare --- */
+ sth = dbixst_bounce_method("prepare", 3);
+ SPAGAIN; SP -= items; /* because stack might have been realloc'd */
+ if (!SvROK(sth)) {
+ if (is_selectrow_array) { XSRETURN_EMPTY; } else { XSRETURN_UNDEF; }
+ }
+ /* switch to inner handle */
+ sth = mg_find(SvRV(sth),'P')->mg_obj;
+ }
+ imp_sth = (imp_sth_t*)(DBIh_COM(sth));
+ /* --- bind_param --- */
+ if (items > 3) { /* need to bind params before execute */
+ if (!dbdxst_bind_params(sth, imp_sth, items-2, ax+2) ) {
+ if (is_selectrow_array) { XSRETURN_EMPTY; } else { XSRETURN_UNDEF; }
+ }
+ }
+ /* --- execute --- */
+ DBIc_ROW_COUNT(imp_sth) = 0;
+ if ( dbd_st_execute(sth, imp_sth) <= -2 ) { /* -2 == error */
+ if (is_selectrow_array) { XSRETURN_EMPTY; } else { XSRETURN_UNDEF; }
+ }
+ /* --- fetchrow_arrayref --- */
+ row_av = dbd_st_fetch(sth, imp_sth);
+ if (!row_av) {
+ if (GIMME == G_SCALAR)
+ PUSHs(&PL_sv_undef);
+ }
+ else if (is_selectrow_array) {
+ int i;
+ int num_fields = AvFILL(row_av)+1;
+ if (GIMME == G_SCALAR)
+ num_fields = 1; /* return just first field */
+ EXTEND(sp, num_fields);
+ for(i=0; i < num_fields; ++i) {
+ PUSHs(AvARRAY(row_av)[i]);
+ }
+ }
+ else {
+ PUSHs( sv_2mortal(newRV((SV *)row_av)) );
+ }
+ /* --- finish --- */
+#ifdef dbd_st_finish3
+ dbd_st_finish3(sth, imp_sth, 0);
+#else
+ dbd_st_finish(sth, imp_sth);
+#endif
+
+
+#ifdef dbd_db_do4 /* deebeedee-deebee-doo, deebee-doobee-dah? */
+
+void
+do(dbh, statement, params = Nullsv)
+ SV * dbh
+ char * statement
+ SV * params
+ CODE:
+ {
+ D_imp_dbh(dbh);
+ IV retval;
+ retval = dbd_db_do4(dbh, imp_dbh, statement, params);
+ /* remember that dbd_db_do4 must return <= -2 for error */
+ if (retval == 0) /* ok with no rows affected */
+ XST_mPV(0, "0E0"); /* (true but zero) */
+ else if (retval < -1) /* -1 == unknown number of rows */
+ XST_mUNDEF(0); /* <= -2 means error */
+ else
+ XST_mIV(0, retval); /* typically 1, rowcount or -1 */
+ }
+
+#endif
+
+
+#ifdef dbd_db_last_insert_id
+
+void
+last_insert_id(dbh, catalog, schema, table, field, attr=Nullsv)
+ SV * dbh
+ SV * catalog
+ SV * schema
+ SV * table
+ SV * field
+ SV * attr
+ CODE:
+ {
+ D_imp_dbh(dbh);
+ ST(0) = dbd_db_last_insert_id(dbh, imp_dbh, catalog, schema, table, field, attr);
+ }
+
+#endif
+
+
+void
+commit(dbh)
+ SV * dbh
+ CODE:
+ D_imp_dbh(dbh);
+ if (DBIc_has(imp_dbh,DBIcf_AutoCommit) && DBIc_WARN(imp_dbh))
+ warn("commit ineffective with AutoCommit enabled");
+ ST(0) = dbd_db_commit(dbh, imp_dbh) ? &sv_yes : &sv_no;
+
+
+void
+rollback(dbh)
+ SV * dbh
+ CODE:
+ D_imp_dbh(dbh);
+ if (DBIc_has(imp_dbh,DBIcf_AutoCommit) && DBIc_WARN(imp_dbh))
+ warn("rollback ineffective with AutoCommit enabled");
+ ST(0) = dbd_db_rollback(dbh, imp_dbh) ? &sv_yes : &sv_no;
+
+
+void
+disconnect(dbh)
+ SV * dbh
+ CODE:
+ D_imp_dbh(dbh);
+ if ( !DBIc_ACTIVE(imp_dbh) ) {
+ XSRETURN_YES;
+ }
+ /* Check for disconnect() being called whilst refs to cursors */
+ /* still exists. This possibly needs some more thought. */
+ if (DBIc_ACTIVE_KIDS(imp_dbh) && DBIc_WARN(imp_dbh) && !dirty) {
+ STRLEN lna;
+ char *plural = (DBIc_ACTIVE_KIDS(imp_dbh)==1) ? "" : "s";
+ warn("%s->disconnect invalidates %d active statement handle%s %s",
+ SvPV(dbh,lna), (int)DBIc_ACTIVE_KIDS(imp_dbh), plural,
+ "(either destroy statement handles or call finish on them before disconnecting)");
+ }
+ ST(0) = dbd_db_disconnect(dbh, imp_dbh) ? &sv_yes : &sv_no;
+ DBIc_ACTIVE_off(imp_dbh); /* ensure it's off, regardless */
+
+
+void
+STORE(dbh, keysv, valuesv)
+ SV * dbh
+ SV * keysv
+ SV * valuesv
+ CODE:
+ D_imp_dbh(dbh);
+ if (SvGMAGICAL(valuesv))
+ mg_get(valuesv);
+ ST(0) = &sv_yes;
+ if (!dbd_db_STORE_attrib(dbh, imp_dbh, keysv, valuesv))
+ if (!DBIc_DBISTATE(imp_dbh)->set_attr(dbh, keysv, valuesv))
+ ST(0) = &sv_no;
+
+
+void
+FETCH(dbh, keysv)
+ SV * dbh
+ SV * keysv
+ CODE:
+ D_imp_dbh(dbh);
+ SV *valuesv = dbd_db_FETCH_attrib(dbh, imp_dbh, keysv);
+ if (!valuesv)
+ valuesv = DBIc_DBISTATE(imp_dbh)->get_attr(dbh, keysv);
+ ST(0) = valuesv; /* dbd_db_FETCH_attrib did sv_2mortal */
+
+
+void
+DESTROY(dbh)
+ SV * dbh
+ PPCODE:
+ /* keep in sync with default DESTROY in DBI.xs */
+ D_imp_dbh(dbh);
+ ST(0) = &sv_yes;
+ if (!DBIc_IMPSET(imp_dbh)) { /* was never fully set up */
+ STRLEN lna;
+ if (DBIc_WARN(imp_dbh) && !dirty && DBIc_DBISTATE(imp_dbh)->debug >= 2)
+ PerlIO_printf(DBIc_LOGPIO(imp_dbh),
+ " DESTROY for %s ignored - handle not initialised\n",
+ SvPV(dbh,lna));
+ }
+ else {
+ if (DBIc_IADESTROY(imp_dbh)) { /* want's ineffective destroy */
+ DBIc_ACTIVE_off(imp_dbh);
+ if (DBIc_DBISTATE(imp_dbh)->debug)
+ PerlIO_printf(DBIc_LOGPIO(imp_dbh), " DESTROY %s skipped due to InactiveDestroy\n", SvPV_nolen(dbh));
+ }
+ if (DBIc_ACTIVE(imp_dbh)) {
+ if (!DBIc_has(imp_dbh,DBIcf_AutoCommit)) {
+ /* Application is using transactions and hasn't explicitly disconnected.
+ Some databases will automatically commit on graceful disconnect.
+ Since we're about to gracefully disconnect as part of the DESTROY
+ we want to be sure we're not about to implicitly commit changes
+ that are incomplete and should be rolled back. (The DESTROY may
+ be due to a RaiseError, for example.) So we rollback here.
+ This will be harmless if the application has issued a commit,
+ XXX Could add an attribute flag to indicate that the driver
+ doesn't have this problem. Patches welcome.
+ */
+ if (DBIc_WARN(imp_dbh)
+ && DBIc_is(imp_dbh, DBIcf_Executed) /* has not just called commit/rollback */
+ && (!dirty || DBIc_DBISTATE(imp_dbh)->debug >= 3)
+ ) {
+ warn("Issuing rollback() due to DESTROY without explicit disconnect() of %s handle %s",
+ SvPV_nolen(*hv_fetch((HV*)SvRV(dbh), "ImplementorClass", 16, 1)),
+ SvPV_nolen(*hv_fetch((HV*)SvRV(dbh), "Name", 4, 1))
+ );
+ }
+ dbd_db_rollback(dbh, imp_dbh); /* ROLLBACK! */
+ }
+ dbd_db_disconnect(dbh, imp_dbh);
+ DBIc_ACTIVE_off(imp_dbh); /* ensure it's off, regardless */
+ }
+ dbd_db_destroy(dbh, imp_dbh);
+ }
+
+
+#ifdef dbd_take_imp_data
+
+void
+take_imp_data(h)
+ SV * h
+ CODE:
+ D_imp_xxh(h);
+ /* dbd_take_imp_data() returns &sv_no (or other defined but false value)
+ * to indicate "preparations complete, now call SUPER::take_imp_data" for me.
+ * Anything else is returned to the caller via sv_2mortal(sv), typically that
+ * would be &sv_undef for error or an SV holding the imp_data.
+ */
+ SV *sv = dbd_take_imp_data(h, imp_xxh, NULL);
+ if (SvOK(sv) && !SvTRUE(sv)) {
+ SV *tmp = dbixst_bounce_method("DBD::~DRIVER~::db::SUPER::take_imp_data", items);
+ SPAGAIN;
+ ST(0) = tmp;
+ } else {
+ ST(0) = sv_2mortal(sv);
+ }
+
+#endif
+
+#ifdef dbd_db_data_sources
+
+void
+data_sources(dbh, attr = Nullsv)
+ SV *dbh
+ SV *attr
+ PPCODE:
+ {
+ D_imp_dbh(dbh);
+ AV *av = dbd_db_data_sources(dbh, imp_dbh, attr);
+ if (av) {
+ int i;
+ int n = AvFILL(av)+1;
+ EXTEND(sp, n);
+ for (i = 0; i < n; ++i) {
+ PUSHs(AvARRAY(av)[i]);
+ }
+ }
+ }
+
+#endif
+
+# -- end of DBD::~DRIVER~::db
+
+# ------------------------------------------------------------
+# statement interface
+# ------------------------------------------------------------
+MODULE = DBD::~DRIVER~ PACKAGE = DBD::~DRIVER~::st
+
+
+void
+_prepare(sth, statement, attribs=Nullsv)
+ SV * sth
+ SV * statement
+ SV * attribs
+ CODE:
+ {
+ D_imp_sth(sth);
+ DBD_ATTRIBS_CHECK("_prepare", sth, attribs);
+#ifdef dbd_st_prepare_sv
+ ST(0) = dbd_st_prepare_sv(sth, imp_sth, statement, attribs) ? &sv_yes : &sv_no;
+#else
+ ST(0) = dbd_st_prepare(sth, imp_sth, SvPV_nolen(statement), attribs) ? &sv_yes : &sv_no;
+#endif
+ }
+
+
+#ifdef dbd_st_rows
+
+void
+rows(sth)
+ SV * sth
+ CODE:
+ D_imp_sth(sth);
+ XST_mIV(0, dbd_st_rows(sth, imp_sth));
+
+#endif /* dbd_st_rows */
+
+
+#ifdef dbd_st_bind_col
+
+void
+bind_col(sth, col, ref, attribs=Nullsv)
+ SV * sth
+ SV * col
+ SV * ref
+ SV * attribs
+ CODE:
+ {
+ IV sql_type = 0;
+ D_imp_sth(sth);
+ if (SvGMAGICAL(ref))
+ mg_get(ref);
+ if (attribs) {
+ if (SvNIOK(attribs)) {
+ sql_type = SvIV(attribs);
+ attribs = Nullsv;
+ }
+ else {
+ SV **svp;
+ DBD_ATTRIBS_CHECK("bind_col", sth, attribs);
+ /* XXX we should perhaps complain if TYPE is not SvNIOK */
+ DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);
+ }
+ }
+ switch(dbd_st_bind_col(sth, imp_sth, col, ref, sql_type, attribs)) {
+ case 2: ST(0) = &sv_yes; /* job done completely */
+ break;
+ case 1: /* fallback to DBI default */
+ ST(0) = (DBIc_DBISTATE(imp_sth)->bind_col(sth, col, ref, attribs))
+ ? &sv_yes : &sv_no;
+ break;
+ default: ST(0) = &sv_no; /* dbd_st_bind_col has called set_err */
+ break;
+ }
+ }
+
+#endif /* dbd_st_bind_col */
+
+void
+bind_param(sth, param, value, attribs=Nullsv)
+ SV * sth
+ SV * param
+ SV * value
+ SV * attribs
+ CODE:
+ {
+ IV sql_type = 0;
+ D_imp_sth(sth);
+ if (SvGMAGICAL(value))
+ mg_get(value);
+ if (attribs) {
+ if (SvNIOK(attribs)) {
+ sql_type = SvIV(attribs);
+ attribs = Nullsv;
+ }
+ else {
+ SV **svp;
+ DBD_ATTRIBS_CHECK("bind_param", sth, attribs);
+ /* XXX we should perhaps complain if TYPE is not SvNIOK */
+ DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);
+ }
+ }
+ ST(0) = dbd_bind_ph(sth, imp_sth, param, value, sql_type, attribs, FALSE, 0)
+ ? &sv_yes : &sv_no;
+ }
+
+
+void
+bind_param_inout(sth, param, value_ref, maxlen, attribs=Nullsv)
+ SV * sth
+ SV * param
+ SV * value_ref
+ IV maxlen
+ SV * attribs
+ CODE:
+ {
+ IV sql_type = 0;
+ D_imp_sth(sth);
+ SV *value;
+ if (!SvROK(value_ref) || SvTYPE(SvRV(value_ref)) > SVt_PVMG)
+ croak("bind_param_inout needs a reference to a scalar value");
+ value = SvRV(value_ref);
+ if (SvREADONLY(value))
+ croak("Modification of a read-only value attempted");
+ if (SvGMAGICAL(value))
+ mg_get(value);
+ if (attribs) {
+ if (SvNIOK(attribs)) {
+ sql_type = SvIV(attribs);
+ attribs = Nullsv;
+ }
+ else {
+ SV **svp;
+ DBD_ATTRIBS_CHECK("bind_param", sth, attribs);
+ DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);
+ }
+ }
+ ST(0) = dbd_bind_ph(sth, imp_sth, param, value, sql_type, attribs, TRUE, maxlen)
+ ? &sv_yes : &sv_no;
+ }
+
+
+void
+execute(sth, ...)
+ SV * sth
+ CODE:
+ D_imp_sth(sth);
+ int retval;
+ if (items > 1) { /* need to bind params */
+ if (!dbdxst_bind_params(sth, imp_sth, items, ax) ) {
+ XSRETURN_UNDEF;
+ }
+ }
+ /* XXX this code is duplicated in selectrow_arrayref above */
+ if (DBIc_ROW_COUNT(imp_sth) > 0) /* reset for re-execute */
+ DBIc_ROW_COUNT(imp_sth) = 0;
+ retval = dbd_st_execute(sth, imp_sth);
+ /* remember that dbd_st_execute must return <= -2 for error */
+ if (retval == 0) /* ok with no rows affected */
+ XST_mPV(0, "0E0"); /* (true but zero) */
+ else if (retval < -1) /* -1 == unknown number of rows */
+ XST_mUNDEF(0); /* <= -2 means error */
+ else
+ XST_mIV(0, retval); /* typically 1, rowcount or -1 */
+
+
+#ifdef dbd_st_execute_for_fetch
+
+void
+execute_for_fetch(sth, fetch_tuple_sub, tuple_status = Nullsv)
+ SV * sth
+ SV * fetch_tuple_sub
+ SV * tuple_status
+ CODE:
+ {
+ D_imp_sth(sth);
+ ST(0) = dbd_st_execute_for_fetch(sth, imp_sth, fetch_tuple_sub, tuple_status);
+ }
+
+#endif
+
+
+
+void
+fetchrow_arrayref(sth)
+ SV * sth
+ ALIAS:
+ fetch = 1
+ CODE:
+ D_imp_sth(sth);
+ AV *av;
+ if (0) ix = ix; /* avoid unused variable warning */
+ av = dbd_st_fetch(sth, imp_sth);
+ ST(0) = (av) ? sv_2mortal(newRV((SV *)av)) : &PL_sv_undef;
+
+
+void
+fetchrow_array(sth)
+ SV * sth
+ ALIAS:
+ fetchrow = 1
+ PPCODE:
+ D_imp_sth(sth);
+ AV *av;
+ av = dbd_st_fetch(sth, imp_sth);
+ if (av) {
+ int i;
+ int num_fields = AvFILL(av)+1;
+ EXTEND(sp, num_fields);
+ for(i=0; i < num_fields; ++i) {
+ PUSHs(AvARRAY(av)[i]);
+ }
+ if (0) ix = ix; /* avoid unused variable warning */
+ }
+
+
+void
+fetchall_arrayref(sth, slice=&PL_sv_undef, batch_row_count=&PL_sv_undef)
+ SV * sth
+ SV * slice
+ SV * batch_row_count
+ CODE:
+ if (SvOK(slice)) { /* fallback to perl implementation */
+ SV *tmp = dbixst_bounce_method("DBD::~DRIVER~::st::SUPER::fetchall_arrayref", 3);
+ SPAGAIN;
+ ST(0) = tmp;
+ }
+ else {
+ ST(0) = dbdxst_fetchall_arrayref(sth, slice, batch_row_count);
+ }
+
+
+void
+finish(sth)
+ SV * sth
+ CODE:
+ D_imp_sth(sth);
+ D_imp_dbh_from_sth;
+ if (!DBIc_ACTIVE(imp_sth)) {
+ /* No active statement to finish */
+ XSRETURN_YES;
+ }
+ if (!DBIc_ACTIVE(imp_dbh)) {
+ /* Either an explicit disconnect() or global destruction */
+ /* has disconnected us from the database. Finish is meaningless */
+ DBIc_ACTIVE_off(imp_sth);
+ XSRETURN_YES;
+ }
+#ifdef dbd_st_finish3
+ ST(0) = dbd_st_finish3(sth, imp_sth, 0) ? &sv_yes : &sv_no;
+#else
+ ST(0) = dbd_st_finish(sth, imp_sth) ? &sv_yes : &sv_no;
+#endif
+
+
+void
+blob_read(sth, field, offset, len, destrv=Nullsv, destoffset=0)
+ SV * sth
+ int field
+ long offset
+ long len
+ SV * destrv
+ long destoffset
+ CODE:
+ {
+ D_imp_sth(sth);
+ if (!destrv)
+ destrv = sv_2mortal(newRV(sv_2mortal(newSV(0))));
+ if (dbd_st_blob_read(sth, imp_sth, field, offset, len, destrv, destoffset))
+ ST(0) = SvRV(destrv);
+ else ST(0) = &PL_sv_undef;
+ }
+
+
+void
+STORE(sth, keysv, valuesv)
+ SV * sth
+ SV * keysv
+ SV * valuesv
+ CODE:
+ D_imp_sth(sth);
+ if (SvGMAGICAL(valuesv))
+ mg_get(valuesv);
+ ST(0) = &sv_yes;
+ if (!dbd_st_STORE_attrib(sth, imp_sth, keysv, valuesv))
+ if (!DBIc_DBISTATE(imp_sth)->set_attr(sth, keysv, valuesv))
+ ST(0) = &sv_no;
+
+
+# FETCH renamed and ALIAS'd to avoid case clash on VMS :-(
+void
+FETCH_attrib(sth, keysv)
+ SV * sth
+ SV * keysv
+ ALIAS:
+ FETCH = 1
+ CODE:
+ D_imp_sth(sth);
+ SV *valuesv;
+ if (0) ix = ix; /* avoid unused variable warning */
+ valuesv = dbd_st_FETCH_attrib(sth, imp_sth, keysv);
+ if (!valuesv)
+ valuesv = DBIc_DBISTATE(imp_sth)->get_attr(sth, keysv);
+ ST(0) = valuesv; /* dbd_st_FETCH_attrib did sv_2mortal */
+
+
+void
+DESTROY(sth)
+ SV * sth
+ PPCODE:
+ /* keep in sync with default DESTROY in DBI.xs */
+ D_imp_sth(sth);
+ ST(0) = &sv_yes;
+ if (!DBIc_IMPSET(imp_sth)) { /* was never fully set up */
+ STRLEN lna;
+ if (DBIc_WARN(imp_sth) && !dirty && DBIc_DBISTATE(imp_sth)->debug >= 2)
+ PerlIO_printf(DBIc_LOGPIO(imp_sth),
+ " DESTROY for %s ignored - handle not initialised\n",
+ SvPV(sth,lna));
+ }
+ else {
+ if (DBIc_IADESTROY(imp_sth)) { /* want's ineffective destroy */
+ DBIc_ACTIVE_off(imp_sth);
+ if (DBIc_DBISTATE(imp_sth)->debug)
+ PerlIO_printf(DBIc_LOGPIO(imp_sth), " DESTROY %s skipped due to InactiveDestroy\n", SvPV_nolen(sth));
+ }
+ if (DBIc_ACTIVE(imp_sth)) {
+ D_imp_dbh_from_sth;
+ if (!dirty && DBIc_ACTIVE(imp_dbh)) {
+#ifdef dbd_st_finish3
+ dbd_st_finish3(sth, imp_sth, 1);
+#else
+ dbd_st_finish(sth, imp_sth);
+#endif
+ }
+ else {
+ DBIc_ACTIVE_off(imp_sth);
+ }
+ }
+ dbd_st_destroy(sth, imp_sth);
+ }
+
+# end of ~DRIVER~.xst
+# vim:ts=8:sw=4:et
diff --git a/Master/tlpkg/tlperl/lib/auto/DBI/Driver_xst.h b/Master/tlpkg/tlperl/lib/auto/DBI/Driver_xst.h
new file mode 100755
index 00000000000..d3965f13eac
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBI/Driver_xst.h
@@ -0,0 +1,118 @@
+/*
+# $Id: Driver_xst.h 10378 2007-12-06 10:48:17Z timbo $
+# Copyright (c) 2002 Tim Bunce Ireland
+#
+# You may distribute under the terms of either the GNU General Public
+# License or the Artistic License, as specified in the Perl README file.
+*/
+
+
+/* This is really just a workaround for SUPER:: not working right for XS code.
+ * It would be better if we setup perl's context so SUPER:: did the right thing
+ * (borrowing the relevant magic from pp_entersub in perl pp_hot.c).
+ * Then we could just use call_method("SUPER::foo") instead.
+ * XXX remember to call SPAGAIN in the calling code after calling this!
+ */
+static SV *
+dbixst_bounce_method(char *methname, int params)
+{
+ dTHX;
+ /* XXX this 'magic' undoes the dMARK embedded in the dXSARGS of our caller */
+ /* so that the dXSARGS below can set things up as they were for our caller */
+ void *xxx = PL_markstack_ptr++;
+ dXSARGS; /* declares sp, ax, mark, items */
+ int i;
+ SV *sv;
+ int debug = 0;
+ D_imp_xxh(ST(0));
+ if (debug >= 3) {
+ PerlIO_printf(DBIc_LOGPIO(imp_xxh),
+ " -> %s (trampoline call with %d (%ld) params)\n", methname, params, (long)items);
+ xxx = xxx; /* avoid unused var warning */
+ }
+ EXTEND(SP, params);
+ PUSHMARK(SP);
+ for (i=0; i < params; ++i) {
+ sv = (i >= items) ? &sv_undef : ST(i);
+ PUSHs(sv);
+ }
+ PUTBACK;
+ i = perl_call_method(methname, G_SCALAR);
+ SPAGAIN;
+ sv = (i) ? POPs : &sv_undef;
+ PUTBACK;
+ if (debug >= 3)
+ PerlIO_printf(DBIc_LOGPIO(imp_xxh),
+ " <- %s= %s (trampoline call return)\n", methname, neatsvpv(sv,0));
+ return sv;
+}
+
+
+static int
+dbdxst_bind_params(SV *sth, imp_sth_t *imp_sth, I32 items, I32 ax)
+{
+ /* Handle binding supplied values to placeholders. */
+ /* items = one greater than the number of params */
+ /* ax = ax from calling sub, maybe adjusted to match items */
+ dTHX;
+ int i;
+ SV *idx;
+ if (items-1 != DBIc_NUM_PARAMS(imp_sth)
+ && DBIc_NUM_PARAMS(imp_sth) != DBIc_NUM_PARAMS_AT_EXECUTE
+ ) {
+ char errmsg[99];
+ sprintf(errmsg,"called with %d bind variables when %d are needed",
+ (int)items-1, DBIc_NUM_PARAMS(imp_sth));
+ sv_setpv(DBIc_ERRSTR(imp_sth), errmsg);
+ sv_setiv(DBIc_ERR(imp_sth), (IV)-1);
+ return 0;
+ }
+ idx = sv_2mortal(newSViv(0));
+ for(i=1; i < items ; ++i) {
+ SV* value = ST(i);
+ if (SvGMAGICAL(value))
+ mg_get(value); /* trigger magic to FETCH the value */
+ sv_setiv(idx, i);
+ if (!dbd_bind_ph(sth, imp_sth, idx, value, 0, Nullsv, FALSE, 0)) {
+ return 0; /* dbd_bind_ph already registered error */
+ }
+ }
+ return 1;
+}
+
+#ifndef dbd_fetchall_arrayref
+static SV *
+dbdxst_fetchall_arrayref(SV *sth, SV *slice, SV *batch_row_count)
+{
+ dTHX;
+ D_imp_sth(sth);
+ SV *rows_rvav;
+ if (SvOK(slice)) { /* should never get here */
+ char errmsg[99];
+ sprintf(errmsg,"slice param not supported by XS version of fetchall_arrayref");
+ sv_setpv(DBIc_ERRSTR(imp_sth), errmsg);
+ sv_setiv(DBIc_ERR(imp_sth), (IV)-1);
+ return &sv_undef;
+ }
+ else {
+ IV maxrows = SvOK(batch_row_count) ? SvIV(batch_row_count) : -1;
+ AV *fetched_av;
+ AV *rows_av = newAV();
+ if ( !DBIc_ACTIVE(imp_sth) && maxrows>0 ) {
+ /* to simplify application logic we return undef without an error */
+ /* if we've fetched all the rows and called with a batch_row_count */
+ return &sv_undef;
+ }
+ av_extend(rows_av, (maxrows>0) ? maxrows : 31);
+ while ( (maxrows < 0 || maxrows-- > 0)
+ && (fetched_av = dbd_st_fetch(sth, imp_sth))
+ ) {
+ AV *copy_row_av = av_make(AvFILL(fetched_av)+1, AvARRAY(fetched_av));
+ av_push(rows_av, newRV_noinc((SV*)copy_row_av));
+ }
+ rows_rvav = sv_2mortal(newRV_noinc((SV *)rows_av));
+ }
+ return rows_rvav;
+}
+#endif
+
diff --git a/Master/tlpkg/tlperl/lib/auto/DBI/dbd_xsh.h b/Master/tlpkg/tlperl/lib/auto/DBI/dbd_xsh.h
new file mode 100755
index 00000000000..f238bb5e2f6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBI/dbd_xsh.h
@@ -0,0 +1,58 @@
+/* @(#)$Id: dbd_xsh.h 11724 2008-09-02 13:34:31Z mjevans $
+ *
+ * Copyright 2000-2002 Tim Bunce
+ * Copyright 2002 Jonathan Leffler
+ *
+ * These prototypes are for dbdimp.c funcs used in the XS file.
+ * These names are #defined to driver specific names by the
+ * dbdimp.h file in the driver source.
+ */
+
+#ifndef DBI_DBD_XSH_H
+#define DBI_DBD_XSH_H
+
+void dbd_init _((dbistate_t *dbistate));
+
+int dbd_discon_all _((SV *drh, imp_drh_t *imp_drh));
+SV *dbd_take_imp_data _((SV *h, imp_xxh_t *imp_xxh, void *foo));
+
+/* Support for dbd_dr_data_sources and dbd_db_do added to Driver.xst in DBI v1.33 */
+/* dbd_dr_data_sources: optional: defined by a driver that calls a C */
+/* function to get the list of data sources */
+AV *dbd_dr_data_sources(SV *drh, imp_drh_t *imp_drh, SV *attrs);
+
+int dbd_db_login6_sv _((SV *dbh, imp_dbh_t *imp_dbh, SV *dbname, SV *uid, SV *pwd, SV*attribs));
+int dbd_db_login6 _((SV *dbh, imp_dbh_t *imp_dbh, char *dbname, char *uid, char *pwd, SV*attribs));
+int dbd_db_login _((SV *dbh, imp_dbh_t *imp_dbh, char *dbname, char *uid, char *pwd)); /* deprecated */
+/* Note: interface of dbd_db_do changed in v1.33 */
+/* Old prototype: dbd_db_do _((SV *sv, char *statement)); */
+/* dbd_db_do: optional: defined by a driver if the DBI default version is too slow */
+int dbd_db_do4 _((SV *dbh, imp_dbh_t *imp_dbh, char *statement, SV *params));
+int dbd_db_commit _((SV *dbh, imp_dbh_t *imp_dbh));
+int dbd_db_rollback _((SV *dbh, imp_dbh_t *imp_dbh));
+int dbd_db_disconnect _((SV *dbh, imp_dbh_t *imp_dbh));
+void dbd_db_destroy _((SV *dbh, imp_dbh_t *imp_dbh));
+int dbd_db_STORE_attrib _((SV *dbh, imp_dbh_t *imp_dbh, SV *keysv, SV *valuesv));
+SV *dbd_db_FETCH_attrib _((SV *dbh, imp_dbh_t *imp_dbh, SV *keysv));
+SV *dbd_db_last_insert_id _((SV *dbh, imp_dbh_t *imp_dbh, SV *catalog, SV *schema, SV *table, SV *field, SV *attr));
+AV *dbd_db_data_sources _((SV *dbh, imp_dbh_t *imp_dbh, SV *attr));
+
+int dbd_st_prepare _((SV *sth, imp_sth_t *imp_sth, char *statement, SV *attribs));
+int dbd_st_prepare_sv _((SV *sth, imp_sth_t *imp_sth, SV *statement, SV *attribs));
+int dbd_st_rows _((SV *sth, imp_sth_t *imp_sth));
+int dbd_st_execute _((SV *sth, imp_sth_t *imp_sth));
+AV *dbd_st_fetch _((SV *sth, imp_sth_t *imp_sth));
+int dbd_st_finish3 _((SV *sth, imp_sth_t *imp_sth, int from_destroy));
+int dbd_st_finish _((SV *sth, imp_sth_t *imp_sth)); /* deprecated */
+void dbd_st_destroy _((SV *sth, imp_sth_t *imp_sth));
+int dbd_st_blob_read _((SV *sth, imp_sth_t *imp_sth,
+ int field, long offset, long len, SV *destrv, long destoffset));
+int dbd_st_STORE_attrib _((SV *sth, imp_sth_t *imp_sth, SV *keysv, SV *valuesv));
+SV *dbd_st_FETCH_attrib _((SV *sth, imp_sth_t *imp_sth, SV *keysv));
+SV *dbd_st_execute_for_fetch _((SV *sth, imp_sth_t *imp_sth, SV *fetch_tuple_sub, SV *tuple_status));
+
+int dbd_bind_ph _((SV *sth, imp_sth_t *imp_sth,
+ SV *param, SV *value, IV sql_type, SV *attribs,
+ int is_inout, IV maxlen));
+
+#endif /* end of dbd_xsh.h */
diff --git a/Master/tlpkg/tlperl/lib/auto/DBI/dbi_sql.h b/Master/tlpkg/tlperl/lib/auto/DBI/dbi_sql.h
new file mode 100755
index 00000000000..1d7869d467a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBI/dbi_sql.h
@@ -0,0 +1,96 @@
+/* $Id: dbi_sql.h 2488 2006-02-07 22:24:43Z timbo $
+ *
+ * Copyright (c) 1997,1998,1999 Tim Bunce England
+ *
+ * See COPYRIGHT section in DBI.pm for usage and distribution rights.
+ */
+
+
+/* Some core SQL CLI standard (ODBC) declarations */
+#ifndef SQL_SUCCESS /* don't clash with ODBC based drivers */
+
+/* SQL datatype codes */
+#define SQL_GUID (-11)
+#define SQL_WLONGVARCHAR (-10)
+#define SQL_WVARCHAR (-9)
+#define SQL_WCHAR (-8)
+#define SQL_BIT (-7)
+#define SQL_TINYINT (-6)
+#define SQL_BIGINT (-5)
+#define SQL_LONGVARBINARY (-4)
+#define SQL_VARBINARY (-3)
+#define SQL_BINARY (-2)
+#define SQL_LONGVARCHAR (-1)
+#define SQL_UNKNOWN_TYPE 0
+#define SQL_ALL_TYPES 0
+#define SQL_CHAR 1
+#define SQL_NUMERIC 2
+#define SQL_DECIMAL 3
+#define SQL_INTEGER 4
+#define SQL_SMALLINT 5
+#define SQL_FLOAT 6
+#define SQL_REAL 7
+#define SQL_DOUBLE 8
+#define SQL_DATETIME 9
+#define SQL_DATE 9
+#define SQL_INTERVAL 10
+#define SQL_TIME 10
+#define SQL_TIMESTAMP 11
+#define SQL_VARCHAR 12
+#define SQL_BOOLEAN 16
+#define SQL_UDT 17
+#define SQL_UDT_LOCATOR 18
+#define SQL_ROW 19
+#define SQL_REF 20
+#define SQL_BLOB 30
+#define SQL_BLOB_LOCATOR 31
+#define SQL_CLOB 40
+#define SQL_CLOB_LOCATOR 41
+#define SQL_ARRAY 50
+#define SQL_ARRAY_LOCATOR 51
+#define SQL_MULTISET 55
+#define SQL_MULTISET_LOCATOR 56
+#define SQL_TYPE_DATE 91
+#define SQL_TYPE_TIME 92
+#define SQL_TYPE_TIMESTAMP 93
+#define SQL_TYPE_TIME_WITH_TIMEZONE 94
+#define SQL_TYPE_TIMESTAMP_WITH_TIMEZONE 95
+#define SQL_INTERVAL_YEAR 101
+#define SQL_INTERVAL_MONTH 102
+#define SQL_INTERVAL_DAY 103
+#define SQL_INTERVAL_HOUR 104
+#define SQL_INTERVAL_MINUTE 105
+#define SQL_INTERVAL_SECOND 106
+#define SQL_INTERVAL_YEAR_TO_MONTH 107
+#define SQL_INTERVAL_DAY_TO_HOUR 108
+#define SQL_INTERVAL_DAY_TO_MINUTE 109
+#define SQL_INTERVAL_DAY_TO_SECOND 110
+#define SQL_INTERVAL_HOUR_TO_MINUTE 111
+#define SQL_INTERVAL_HOUR_TO_SECOND 112
+#define SQL_INTERVAL_MINUTE_TO_SECOND 113
+
+
+/* Main return codes */
+#define SQL_ERROR (-1)
+#define SQL_SUCCESS 0
+#define SQL_SUCCESS_WITH_INFO 1
+#define SQL_NO_DATA_FOUND 100
+
+/*
+ * for ODBC SQL Cursor Types
+ */
+#define SQL_CURSOR_FORWARD_ONLY 0UL
+#define SQL_CURSOR_KEYSET_DRIVEN 1UL
+#define SQL_CURSOR_DYNAMIC 2UL
+#define SQL_CURSOR_STATIC 3UL
+#define SQL_CURSOR_TYPE_DEFAULT SQL_CURSOR_FORWARD_ONLY
+
+#endif /* SQL_SUCCESS */
+
+/* Handy macro for testing for success and success with info. */
+/* BEWARE that this macro can have side effects since rc appears twice! */
+/* So DONT use it as if(SQL_ok(func(...))) { ... } */
+#define SQL_ok(rc) ((rc)==SQL_SUCCESS || (rc)==SQL_SUCCESS_WITH_INFO)
+
+
+/* end of dbi_sql.h */
diff --git a/Master/tlpkg/tlperl/lib/auto/DBI/dbipport.h b/Master/tlpkg/tlperl/lib/auto/DBI/dbipport.h
new file mode 100755
index 00000000000..8a9c47c0aed
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBI/dbipport.h
@@ -0,0 +1,4954 @@
+#if 0
+<<'SKIP';
+#endif
+/*
+----------------------------------------------------------------------
+
+ ppport.h -- Perl/Pollution/Portability Version 3.06_01
+
+ Automatically created by Devel::PPPort running under
+ perl 5.008008 on Wed Apr 26 01:39:44 2006.
+
+ Do NOT edit this file directly! -- Edit PPPort_pm.PL and the
+ includes in parts/inc/ instead.
+
+ Use 'perldoc ppport.h' to view the documentation below.
+
+----------------------------------------------------------------------
+
+SKIP
+
+=pod
+
+=head1 NAME
+
+ppport.h - Perl/Pollution/Portability version 3.06_01
+
+=head1 SYNOPSIS
+
+ perl ppport.h [options] [source files]
+
+ Searches current directory for files if no [source files] are given
+
+ --help show short help
+
+ --patch=file write one patch file with changes
+ --copy=suffix write changed copies with suffix
+ --diff=program use diff program and options
+
+ --compat-version=version provide compatibility with Perl version
+ --cplusplus accept C++ comments
+
+ --quiet don't output anything except fatal errors
+ --nodiag don't show diagnostics
+ --nohints don't show hints
+ --nochanges don't suggest changes
+ --nofilter don't filter input files
+
+ --list-provided list provided API
+ --list-unsupported list unsupported API
+ --api-info=name show Perl API portability information
+
+=head1 COMPATIBILITY
+
+This version of F<ppport.h> is designed to support operation with Perl
+installations back to 5.003, and has been tested up to 5.9.3.
+
+=head1 OPTIONS
+
+=head2 --help
+
+Display a brief usage summary.
+
+=head2 --patch=I<file>
+
+If this option is given, a single patch file will be created if
+any changes are suggested. This requires a working diff program
+to be installed on your system.
+
+=head2 --copy=I<suffix>
+
+If this option is given, a copy of each file will be saved with
+the given suffix that contains the suggested changes. This does
+not require any external programs.
+
+If neither C<--patch> or C<--copy> are given, the default is to
+simply print the diffs for each file. This requires either
+C<Text::Diff> or a C<diff> program to be installed.
+
+=head2 --diff=I<program>
+
+Manually set the diff program and options to use. The default
+is to use C<Text::Diff>, when installed, and output unified
+context diffs.
+
+=head2 --compat-version=I<version>
+
+Tell F<ppport.h> to check for compatibility with the given
+Perl version. The default is to check for compatibility with Perl
+version 5.003. You can use this option to reduce the output
+of F<ppport.h> if you intend to be backward compatible only
+up to a certain Perl version.
+
+=head2 --cplusplus
+
+Usually, F<ppport.h> will detect C++ style comments and
+replace them with C style comments for portability reasons.
+Using this option instructs F<ppport.h> to leave C++
+comments untouched.
+
+=head2 --quiet
+
+Be quiet. Don't print anything except fatal errors.
+
+=head2 --nodiag
+
+Don't output any diagnostic messages. Only portability
+alerts will be printed.
+
+=head2 --nohints
+
+Don't output any hints. Hints often contain useful portability
+notes.
+
+=head2 --nochanges
+
+Don't suggest any changes. Only give diagnostic output and hints
+unless these are also deactivated.
+
+=head2 --nofilter
+
+Don't filter the list of input files. By default, files not looking
+like source code (i.e. not *.xs, *.c, *.cc, *.cpp or *.h) are skipped.
+
+=head2 --list-provided
+
+Lists the API elements for which compatibility is provided by
+F<ppport.h>. Also lists if it must be explicitly requested,
+if it has dependencies, and if there are hints for it.
+
+=head2 --list-unsupported
+
+Lists the API elements that are known not to be supported by
+F<ppport.h> and below which version of Perl they probably
+won't be available or work.
+
+=head2 --api-info=I<name>
+
+Show portability information for API elements matching I<name>.
+If I<name> is surrounded by slashes, it is interpreted as a regular
+expression.
+
+=head1 DESCRIPTION
+
+In order for a Perl extension (XS) module to be as portable as possible
+across differing versions of Perl itself, certain steps need to be taken.
+
+=over 4
+
+=item *
+
+Including this header is the first major one. This alone will give you
+access to a large part of the Perl API that hasn't been available in
+earlier Perl releases. Use
+
+ perl ppport.h --list-provided
+
+to see which API elements are provided by ppport.h.
+
+=item *
+
+You should avoid using deprecated parts of the API. For example, using
+global Perl variables without the C<PL_> prefix is deprecated. Also,
+some API functions used to have a C<perl_> prefix. Using this form is
+also deprecated. You can safely use the supported API, as F<ppport.h>
+will provide wrappers for older Perl versions.
+
+=item *
+
+If you use one of a few functions that were not present in earlier
+versions of Perl, and that can't be provided using a macro, you have
+to explicitly request support for these functions by adding one or
+more C<#define>s in your source code before the inclusion of F<ppport.h>.
+
+These functions will be marked C<explicit> in the list shown by
+C<--list-provided>.
+
+Depending on whether you module has a single or multiple files that
+use such functions, you want either C<static> or global variants.
+
+For a C<static> function, use:
+
+ #define NEED_function
+
+For a global function, use:
+
+ #define NEED_function_GLOBAL
+
+Note that you mustn't have more than one global request for one
+function in your project.
+
+ Function Static Request Global Request
+ -----------------------------------------------------------------------------------------
+ eval_pv() NEED_eval_pv NEED_eval_pv_GLOBAL
+ grok_bin() NEED_grok_bin NEED_grok_bin_GLOBAL
+ grok_hex() NEED_grok_hex NEED_grok_hex_GLOBAL
+ grok_number() NEED_grok_number NEED_grok_number_GLOBAL
+ grok_numeric_radix() NEED_grok_numeric_radix NEED_grok_numeric_radix_GLOBAL
+ grok_oct() NEED_grok_oct NEED_grok_oct_GLOBAL
+ newCONSTSUB() NEED_newCONSTSUB NEED_newCONSTSUB_GLOBAL
+ newRV_noinc() NEED_newRV_noinc NEED_newRV_noinc_GLOBAL
+ sv_2pv_nolen() NEED_sv_2pv_nolen NEED_sv_2pv_nolen_GLOBAL
+ sv_2pvbyte() NEED_sv_2pvbyte NEED_sv_2pvbyte_GLOBAL
+ sv_catpvf_mg() NEED_sv_catpvf_mg NEED_sv_catpvf_mg_GLOBAL
+ sv_catpvf_mg_nocontext() NEED_sv_catpvf_mg_nocontext NEED_sv_catpvf_mg_nocontext_GLOBAL
+ sv_setpvf_mg() NEED_sv_setpvf_mg NEED_sv_setpvf_mg_GLOBAL
+ sv_setpvf_mg_nocontext() NEED_sv_setpvf_mg_nocontext NEED_sv_setpvf_mg_nocontext_GLOBAL
+ vnewSVpvf() NEED_vnewSVpvf NEED_vnewSVpvf_GLOBAL
+
+To avoid namespace conflicts, you can change the namespace of the
+explicitly exported functions using the C<DPPP_NAMESPACE> macro.
+Just C<#define> the macro before including C<ppport.h>:
+
+ #define DPPP_NAMESPACE MyOwnNamespace_
+ #include "ppport.h"
+
+The default namespace is C<DPPP_>.
+
+=back
+
+The good thing is that most of the above can be checked by running
+F<ppport.h> on your source code. See the next section for
+details.
+
+=head1 EXAMPLES
+
+To verify whether F<ppport.h> is needed for your module, whether you
+should make any changes to your code, and whether any special defines
+should be used, F<ppport.h> can be run as a Perl script to check your
+source code. Simply say:
+
+ perl ppport.h
+
+The result will usually be a list of patches suggesting changes
+that should at least be acceptable, if not necessarily the most
+efficient solution, or a fix for all possible problems.
+
+If you know that your XS module uses features only available in
+newer Perl releases, if you're aware that it uses C++ comments,
+and if you want all suggestions as a single patch file, you could
+use something like this:
+
+ perl ppport.h --compat-version=5.6.0 --cplusplus --patch=test.diff
+
+If you only want your code to be scanned without any suggestions
+for changes, use:
+
+ perl ppport.h --nochanges
+
+You can specify a different C<diff> program or options, using
+the C<--diff> option:
+
+ perl ppport.h --diff='diff -C 10'
+
+This would output context diffs with 10 lines of context.
+
+To display portability information for the C<newSVpvn> function,
+use:
+
+ perl ppport.h --api-info=newSVpvn
+
+Since the argument to C<--api-info> can be a regular expression,
+you can use
+
+ perl ppport.h --api-info=/_nomg$/
+
+to display portability information for all C<_nomg> functions or
+
+ perl ppport.h --api-info=/./
+
+to display information for all known API elements.
+
+=head1 BUGS
+
+If this version of F<ppport.h> is causing failure during
+the compilation of this module, please check if newer versions
+of either this module or C<Devel::PPPort> are available on CPAN
+before sending a bug report.
+
+If F<ppport.h> was generated using the latest version of
+C<Devel::PPPort> and is causing failure of this module, please
+file a bug report using the CPAN Request Tracker at L<http://rt.cpan.org/>.
+
+Please include the following information:
+
+=over 4
+
+=item 1.
+
+The complete output from running "perl -V"
+
+=item 2.
+
+This file.
+
+=item 3.
+
+The name and version of the module you were trying to build.
+
+=item 4.
+
+A full log of the build that failed.
+
+=item 5.
+
+Any other information that you think could be relevant.
+
+=back
+
+For the latest version of this code, please get the C<Devel::PPPort>
+module from CPAN.
+
+=head1 COPYRIGHT
+
+Version 3.x, Copyright (c) 2004-2005, Marcus Holland-Moritz.
+
+Version 2.x, Copyright (C) 2001, Paul Marquess.
+
+Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
+
+This program is free software; you can redistribute it and/or
+modify it under the same terms as Perl itself.
+
+=head1 SEE ALSO
+
+See L<Devel::PPPort>.
+
+=cut
+
+use strict;
+
+my %opt = (
+ quiet => 0,
+ diag => 1,
+ hints => 1,
+ changes => 1,
+ cplusplus => 0,
+ filter => 1,
+);
+
+my($ppport) = $0 =~ /([\w.]+)$/;
+my $LF = '(?:\r\n|[\r\n])'; # line feed
+my $HS = "[ \t]"; # horizontal whitespace
+
+eval {
+ require Getopt::Long;
+ Getopt::Long::GetOptions(\%opt, qw(
+ help quiet diag! filter! hints! changes! cplusplus
+ patch=s copy=s diff=s compat-version=s
+ list-provided list-unsupported api-info=s
+ )) or usage();
+};
+
+if ($@ and grep /^-/, @ARGV) {
+ usage() if "@ARGV" =~ /^--?h(?:elp)?$/;
+ die "Getopt::Long not found. Please don't use any options.\n";
+}
+
+usage() if $opt{help};
+
+if (exists $opt{'compat-version'}) {
+ my($r,$v,$s) = eval { parse_version($opt{'compat-version'}) };
+ if ($@) {
+ die "Invalid version number format: '$opt{'compat-version'}'\n";
+ }
+ die "Only Perl 5 is supported\n" if $r != 5;
+ die "Invalid version number: $opt{'compat-version'}\n" if $v >= 1000 || $s >= 1000;
+ $opt{'compat-version'} = sprintf "%d.%03d%03d", $r, $v, $s;
+}
+else {
+ $opt{'compat-version'} = 5;
+}
+
+# Never use C comments in this file!!!!!
+my $ccs = '/'.'*';
+my $cce = '*'.'/';
+my $rccs = quotemeta $ccs;
+my $rcce = quotemeta $cce;
+
+my %API = map { /^(\w+)\|([^|]*)\|([^|]*)\|(\w*)$/
+ ? ( $1 => {
+ ($2 ? ( base => $2 ) : ()),
+ ($3 ? ( todo => $3 ) : ()),
+ (index($4, 'v') >= 0 ? ( varargs => 1 ) : ()),
+ (index($4, 'p') >= 0 ? ( provided => 1 ) : ()),
+ (index($4, 'n') >= 0 ? ( nothxarg => 1 ) : ()),
+ } )
+ : die "invalid spec: $_" } qw(
+AvFILLp|5.004050||p
+AvFILL|||
+CLASS|||n
+CX_CURPAD_SAVE|||
+CX_CURPAD_SV|||
+CopFILEAV|5.006000||p
+CopFILEGV_set|5.006000||p
+CopFILEGV|5.006000||p
+CopFILESV|5.006000||p
+CopFILE_set|5.006000||p
+CopFILE|5.006000||p
+CopSTASHPV_set|5.006000||p
+CopSTASHPV|5.006000||p
+CopSTASH_eq|5.006000||p
+CopSTASH_set|5.006000||p
+CopSTASH|5.006000||p
+CopyD|5.009002||p
+Copy|||
+CvPADLIST|||
+CvSTASH|||
+CvWEAKOUTSIDE|||
+DEFSV|5.004050||p
+END_EXTERN_C|5.005000||p
+ENTER|||
+ERRSV|5.004050||p
+EXTEND|||
+EXTERN_C|5.005000||p
+FREETMPS|||
+GIMME_V||5.004000|n
+GIMME|||n
+GROK_NUMERIC_RADIX|5.007002||p
+G_ARRAY|||
+G_DISCARD|||
+G_EVAL|||
+G_NOARGS|||
+G_SCALAR|||
+G_VOID||5.004000|
+GetVars|||
+GvSV|||
+Gv_AMupdate|||
+HEf_SVKEY||5.004000|
+HeHASH||5.004000|
+HeKEY||5.004000|
+HeKLEN||5.004000|
+HePV||5.004000|
+HeSVKEY_force||5.004000|
+HeSVKEY_set||5.004000|
+HeSVKEY||5.004000|
+HeVAL||5.004000|
+HvNAME|||
+INT2PTR|5.006000||p
+IN_LOCALE_COMPILETIME|5.007002||p
+IN_LOCALE_RUNTIME|5.007002||p
+IN_LOCALE|5.007002||p
+IN_PERL_COMPILETIME|5.008001||p
+IS_NUMBER_GREATER_THAN_UV_MAX|5.007002||p
+IS_NUMBER_INFINITY|5.007002||p
+IS_NUMBER_IN_UV|5.007002||p
+IS_NUMBER_NAN|5.007003||p
+IS_NUMBER_NEG|5.007002||p
+IS_NUMBER_NOT_INT|5.007002||p
+IVSIZE|5.006000||p
+IVTYPE|5.006000||p
+IVdf|5.006000||p
+LEAVE|||
+LVRET|||
+MARK|||
+MY_CXT_CLONE|5.009002||p
+MY_CXT_INIT|5.007003||p
+MY_CXT|5.007003||p
+MoveD|5.009002||p
+Move|||
+NEWSV|||
+NOOP|5.005000||p
+NUM2PTR|5.006000||p
+NVTYPE|5.006000||p
+NVef|5.006001||p
+NVff|5.006001||p
+NVgf|5.006001||p
+Newc|||
+Newz|||
+New|||
+Nullav|||
+Nullch|||
+Nullcv|||
+Nullhv|||
+Nullsv|||
+ORIGMARK|||
+PAD_BASE_SV|||
+PAD_CLONE_VARS|||
+PAD_COMPNAME_FLAGS|||
+PAD_COMPNAME_GEN_set|||
+PAD_COMPNAME_GEN|||
+PAD_COMPNAME_OURSTASH|||
+PAD_COMPNAME_PV|||
+PAD_COMPNAME_TYPE|||
+PAD_RESTORE_LOCAL|||
+PAD_SAVE_LOCAL|||
+PAD_SAVE_SETNULLPAD|||
+PAD_SETSV|||
+PAD_SET_CUR_NOSAVE|||
+PAD_SET_CUR|||
+PAD_SVl|||
+PAD_SV|||
+PERL_BCDVERSION|5.009003||p
+PERL_GCC_BRACE_GROUPS_FORBIDDEN|5.008001||p
+PERL_INT_MAX|5.004000||p
+PERL_INT_MIN|5.004000||p
+PERL_LONG_MAX|5.004000||p
+PERL_LONG_MIN|5.004000||p
+PERL_MAGIC_arylen|5.007002||p
+PERL_MAGIC_backref|5.007002||p
+PERL_MAGIC_bm|5.007002||p
+PERL_MAGIC_collxfrm|5.007002||p
+PERL_MAGIC_dbfile|5.007002||p
+PERL_MAGIC_dbline|5.007002||p
+PERL_MAGIC_defelem|5.007002||p
+PERL_MAGIC_envelem|5.007002||p
+PERL_MAGIC_env|5.007002||p
+PERL_MAGIC_ext|5.007002||p
+PERL_MAGIC_fm|5.007002||p
+PERL_MAGIC_glob|5.007002||p
+PERL_MAGIC_isaelem|5.007002||p
+PERL_MAGIC_isa|5.007002||p
+PERL_MAGIC_mutex|5.007002||p
+PERL_MAGIC_nkeys|5.007002||p
+PERL_MAGIC_overload_elem|5.007002||p
+PERL_MAGIC_overload_table|5.007002||p
+PERL_MAGIC_overload|5.007002||p
+PERL_MAGIC_pos|5.007002||p
+PERL_MAGIC_qr|5.007002||p
+PERL_MAGIC_regdata|5.007002||p
+PERL_MAGIC_regdatum|5.007002||p
+PERL_MAGIC_regex_global|5.007002||p
+PERL_MAGIC_shared_scalar|5.007003||p
+PERL_MAGIC_shared|5.007003||p
+PERL_MAGIC_sigelem|5.007002||p
+PERL_MAGIC_sig|5.007002||p
+PERL_MAGIC_substr|5.007002||p
+PERL_MAGIC_sv|5.007002||p
+PERL_MAGIC_taint|5.007002||p
+PERL_MAGIC_tiedelem|5.007002||p
+PERL_MAGIC_tiedscalar|5.007002||p
+PERL_MAGIC_tied|5.007002||p
+PERL_MAGIC_utf8|5.008001||p
+PERL_MAGIC_uvar_elem|5.007003||p
+PERL_MAGIC_uvar|5.007002||p
+PERL_MAGIC_vec|5.007002||p
+PERL_MAGIC_vstring|5.008001||p
+PERL_QUAD_MAX|5.004000||p
+PERL_QUAD_MIN|5.004000||p
+PERL_REVISION|5.006000||p
+PERL_SCAN_ALLOW_UNDERSCORES|5.007003||p
+PERL_SCAN_DISALLOW_PREFIX|5.007003||p
+PERL_SCAN_GREATER_THAN_UV_MAX|5.007003||p
+PERL_SCAN_SILENT_ILLDIGIT|5.008001||p
+PERL_SHORT_MAX|5.004000||p
+PERL_SHORT_MIN|5.004000||p
+PERL_SUBVERSION|5.006000||p
+PERL_UCHAR_MAX|5.004000||p
+PERL_UCHAR_MIN|5.004000||p
+PERL_UINT_MAX|5.004000||p
+PERL_UINT_MIN|5.004000||p
+PERL_ULONG_MAX|5.004000||p
+PERL_ULONG_MIN|5.004000||p
+PERL_UNUSED_DECL|5.007002||p
+PERL_UQUAD_MAX|5.004000||p
+PERL_UQUAD_MIN|5.004000||p
+PERL_USHORT_MAX|5.004000||p
+PERL_USHORT_MIN|5.004000||p
+PERL_VERSION|5.006000||p
+PL_DBsingle|||pn
+PL_DBsub|||pn
+PL_DBtrace|||n
+PL_Sv|5.005000||p
+PL_compiling|5.004050||p
+PL_copline|5.005000||p
+PL_curcop|5.004050||p
+PL_curstash|5.004050||p
+PL_debstash|5.004050||p
+PL_defgv|5.004050||p
+PL_diehook|5.004050||p
+PL_dirty|5.004050||p
+PL_dowarn|||pn
+PL_errgv|5.004050||p
+PL_hexdigit|5.005000||p
+PL_hints|5.005000||p
+PL_last_in_gv|||n
+PL_modglobal||5.005000|n
+PL_na|5.004050||pn
+PL_no_modify|5.006000||p
+PL_ofs_sv|||n
+PL_perl_destruct_level|5.004050||p
+PL_perldb|5.004050||p
+PL_ppaddr|5.006000||p
+PL_rsfp_filters|5.004050||p
+PL_rsfp|5.004050||p
+PL_rs|||n
+PL_stack_base|5.004050||p
+PL_stack_sp|5.004050||p
+PL_stdingv|5.004050||p
+PL_sv_arenaroot|5.004050||p
+PL_sv_no|5.004050||pn
+PL_sv_undef|5.004050||pn
+PL_sv_yes|5.004050||pn
+PL_tainted|5.004050||p
+PL_tainting|5.004050||p
+POPi|||n
+POPl|||n
+POPn|||n
+POPpbytex||5.007001|n
+POPpx||5.005030|n
+POPp|||n
+POPs|||n
+PTR2IV|5.006000||p
+PTR2NV|5.006000||p
+PTR2UV|5.006000||p
+PTR2ul|5.007001||p
+PTRV|5.006000||p
+PUSHMARK|||
+PUSHi|||
+PUSHmortal|5.009002||p
+PUSHn|||
+PUSHp|||
+PUSHs|||
+PUSHu|5.004000||p
+PUTBACK|||
+PerlIO_clearerr||5.007003|
+PerlIO_close||5.007003|
+PerlIO_eof||5.007003|
+PerlIO_error||5.007003|
+PerlIO_fileno||5.007003|
+PerlIO_fill||5.007003|
+PerlIO_flush||5.007003|
+PerlIO_get_base||5.007003|
+PerlIO_get_bufsiz||5.007003|
+PerlIO_get_cnt||5.007003|
+PerlIO_get_ptr||5.007003|
+PerlIO_read||5.007003|
+PerlIO_seek||5.007003|
+PerlIO_set_cnt||5.007003|
+PerlIO_set_ptrcnt||5.007003|
+PerlIO_setlinebuf||5.007003|
+PerlIO_stderr||5.007003|
+PerlIO_stdin||5.007003|
+PerlIO_stdout||5.007003|
+PerlIO_tell||5.007003|
+PerlIO_unread||5.007003|
+PerlIO_write||5.007003|
+Poison|5.008000||p
+RETVAL|||n
+Renewc|||
+Renew|||
+SAVECLEARSV|||
+SAVECOMPPAD|||
+SAVEPADSV|||
+SAVETMPS|||
+SAVE_DEFSV|5.004050||p
+SPAGAIN|||
+SP|||
+START_EXTERN_C|5.005000||p
+START_MY_CXT|5.007003||p
+STMT_END|||p
+STMT_START|||p
+ST|||
+SVt_IV|||
+SVt_NV|||
+SVt_PVAV|||
+SVt_PVCV|||
+SVt_PVHV|||
+SVt_PVMG|||
+SVt_PV|||
+Safefree|||
+Slab_Alloc|||
+Slab_Free|||
+StructCopy|||
+SvCUR_set|||
+SvCUR|||
+SvEND|||
+SvGETMAGIC|5.004050||p
+SvGROW|||
+SvIOK_UV||5.006000|
+SvIOK_notUV||5.006000|
+SvIOK_off|||
+SvIOK_only_UV||5.006000|
+SvIOK_only|||
+SvIOK_on|||
+SvIOKp|||
+SvIOK|||
+SvIVX|||
+SvIV_nomg|5.009001||p
+SvIV_set|||
+SvIVx|||
+SvIV|||
+SvIsCOW_shared_hash||5.008003|
+SvIsCOW||5.008003|
+SvLEN_set|||
+SvLEN|||
+SvLOCK||5.007003|
+SvMAGIC_set||5.009003|
+SvNIOK_off|||
+SvNIOKp|||
+SvNIOK|||
+SvNOK_off|||
+SvNOK_only|||
+SvNOK_on|||
+SvNOKp|||
+SvNOK|||
+SvNVX|||
+SvNV_set|||
+SvNVx|||
+SvNV|||
+SvOK|||
+SvOOK|||
+SvPOK_off|||
+SvPOK_only_UTF8||5.006000|
+SvPOK_only|||
+SvPOK_on|||
+SvPOKp|||
+SvPOK|||
+SvPVX|||
+SvPV_force_nomg|5.007002||p
+SvPV_force|||
+SvPV_nolen|5.006000||p
+SvPV_nomg|5.007002||p
+SvPV_set|||
+SvPVbyte_force||5.009002|
+SvPVbyte_nolen||5.006000|
+SvPVbytex_force||5.006000|
+SvPVbytex||5.006000|
+SvPVbyte|5.006000||p
+SvPVutf8_force||5.006000|
+SvPVutf8_nolen||5.006000|
+SvPVutf8x_force||5.006000|
+SvPVutf8x||5.006000|
+SvPVutf8||5.006000|
+SvPVx|||
+SvPV|||
+SvREFCNT_dec|||
+SvREFCNT_inc|||
+SvREFCNT|||
+SvROK_off|||
+SvROK_on|||
+SvROK|||
+SvRV_set||5.009003|
+SvRV|||
+SvSETMAGIC|||
+SvSHARE||5.007003|
+SvSTASH_set||5.009003|
+SvSTASH|||
+SvSetMagicSV_nosteal||5.004000|
+SvSetMagicSV||5.004000|
+SvSetSV_nosteal||5.004000|
+SvSetSV|||
+SvTAINTED_off||5.004000|
+SvTAINTED_on||5.004000|
+SvTAINTED||5.004000|
+SvTAINT|||
+SvTRUE|||
+SvTYPE|||
+SvUNLOCK||5.007003|
+SvUOK||5.007001|
+SvUPGRADE|||
+SvUTF8_off||5.006000|
+SvUTF8_on||5.006000|
+SvUTF8||5.006000|
+SvUVXx|5.004000||p
+SvUVX|5.004000||p
+SvUV_nomg|5.009001||p
+SvUV_set||5.009003|
+SvUVx|5.004000||p
+SvUV|5.004000||p
+SvVOK||5.008001|
+THIS|||n
+UNDERBAR|5.009002||p
+UVSIZE|5.006000||p
+UVTYPE|5.006000||p
+UVXf|5.007001||p
+UVof|5.006000||p
+UVuf|5.006000||p
+UVxf|5.006000||p
+XCPT_CATCH|5.009002||p
+XCPT_RETHROW|5.009002||p
+XCPT_TRY_END|5.009002||p
+XCPT_TRY_START|5.009002||p
+XPUSHi|||
+XPUSHmortal|5.009002||p
+XPUSHn|||
+XPUSHp|||
+XPUSHs|||
+XPUSHu|5.004000||p
+XSRETURN_EMPTY|||
+XSRETURN_IV|||
+XSRETURN_NO|||
+XSRETURN_NV|||
+XSRETURN_PV|||
+XSRETURN_UNDEF|||
+XSRETURN_UV|5.008001||p
+XSRETURN_YES|||
+XSRETURN|||
+XST_mIV|||
+XST_mNO|||
+XST_mNV|||
+XST_mPV|||
+XST_mUNDEF|||
+XST_mUV|5.008001||p
+XST_mYES|||
+XS_VERSION_BOOTCHECK|||
+XS_VERSION|||
+XS|||
+ZeroD|5.009002||p
+Zero|||
+_aMY_CXT|5.007003||p
+_pMY_CXT|5.007003||p
+aMY_CXT_|5.007003||p
+aMY_CXT|5.007003||p
+aTHX_|5.006000||p
+aTHX|5.006000||p
+add_data|||
+allocmy|||
+amagic_call|||
+any_dup|||
+ao|||
+append_elem|||
+append_list|||
+apply_attrs_my|||
+apply_attrs_string||5.006001|
+apply_attrs|||
+apply|||
+asIV|||
+asUV|||
+atfork_lock||5.007003|n
+atfork_unlock||5.007003|n
+av_arylen_p||5.009003|
+av_clear|||
+av_delete||5.006000|
+av_exists||5.006000|
+av_extend|||
+av_fake|||
+av_fetch|||
+av_fill|||
+av_len|||
+av_make|||
+av_pop|||
+av_push|||
+av_reify|||
+av_shift|||
+av_store|||
+av_undef|||
+av_unshift|||
+ax|||n
+bad_type|||
+bind_match|||
+block_end|||
+block_gimme||5.004000|
+block_start|||
+boolSV|5.004000||p
+boot_core_PerlIO|||
+boot_core_UNIVERSAL|||
+boot_core_xsutils|||
+bytes_from_utf8||5.007001|
+bytes_to_utf8||5.006001|
+cache_re|||
+call_argv|5.006000||p
+call_atexit||5.006000|
+call_body|||
+call_list_body|||
+call_list||5.004000|
+call_method|5.006000||p
+call_pv|5.006000||p
+call_sv|5.006000||p
+calloc||5.007002|n
+cando|||
+cast_i32||5.006000|
+cast_iv||5.006000|
+cast_ulong||5.006000|
+cast_uv||5.006000|
+check_uni|||
+checkcomma|||
+checkposixcc|||
+ck_anoncode|||
+ck_bitop|||
+ck_concat|||
+ck_defined|||
+ck_delete|||
+ck_die|||
+ck_eof|||
+ck_eval|||
+ck_exec|||
+ck_exists|||
+ck_exit|||
+ck_ftst|||
+ck_fun|||
+ck_glob|||
+ck_grep|||
+ck_index|||
+ck_join|||
+ck_lengthconst|||
+ck_lfun|||
+ck_listiob|||
+ck_match|||
+ck_method|||
+ck_null|||
+ck_open|||
+ck_repeat|||
+ck_require|||
+ck_retarget|||
+ck_return|||
+ck_rfun|||
+ck_rvconst|||
+ck_sassign|||
+ck_select|||
+ck_shift|||
+ck_sort|||
+ck_spair|||
+ck_split|||
+ck_subr|||
+ck_substr|||
+ck_svconst|||
+ck_trunc|||
+ck_unpack|||
+cl_and|||
+cl_anything|||
+cl_init_zero|||
+cl_init|||
+cl_is_anything|||
+cl_or|||
+closest_cop|||
+convert|||
+cop_free|||
+cr_textfilter|||
+croak_nocontext|||vn
+croak|||v
+csighandler||5.007001|n
+custom_op_desc||5.007003|
+custom_op_name||5.007003|
+cv_ckproto|||
+cv_clone|||
+cv_const_sv||5.004000|
+cv_dump|||
+cv_undef|||
+cx_dump||5.005000|
+cx_dup|||
+cxinc|||
+dAXMARK||5.009003|
+dAX|5.007002||p
+dITEMS|5.007002||p
+dMARK|||
+dMY_CXT_SV|5.007003||p
+dMY_CXT|5.007003||p
+dNOOP|5.006000||p
+dORIGMARK|||
+dSP|||
+dTHR|5.004050||p
+dTHXa|5.006000||p
+dTHXoa|5.006000||p
+dTHX|5.006000||p
+dUNDERBAR|5.009002||p
+dXCPT|5.009002||p
+dXSARGS|||
+dXSI32|||
+dXSTARG|5.006000||p
+deb_curcv|||
+deb_nocontext|||vn
+deb_stack_all|||
+deb_stack_n|||
+debop||5.005000|
+debprofdump||5.005000|
+debprof|||
+debstackptrs||5.007003|
+debstack||5.007003|
+deb||5.007003|v
+del_he|||
+del_sv|||
+delimcpy||5.004000|
+depcom|||
+deprecate_old|||
+deprecate|||
+despatch_signals||5.007001|
+die_nocontext|||vn
+die_where|||
+die|||v
+dirp_dup|||
+div128|||
+djSP|||
+do_aexec5|||
+do_aexec|||
+do_aspawn|||
+do_binmode||5.004050|
+do_chomp|||
+do_chop|||
+do_close|||
+do_dump_pad|||
+do_eof|||
+do_exec3|||
+do_execfree|||
+do_exec|||
+do_gv_dump||5.006000|
+do_gvgv_dump||5.006000|
+do_hv_dump||5.006000|
+do_ipcctl|||
+do_ipcget|||
+do_join|||
+do_kv|||
+do_magic_dump||5.006000|
+do_msgrcv|||
+do_msgsnd|||
+do_oddball|||
+do_op_dump||5.006000|
+do_open9||5.006000|
+do_openn||5.007001|
+do_open||5.004000|
+do_pipe|||
+do_pmop_dump||5.006000|
+do_print|||
+do_readline|||
+do_seek|||
+do_semop|||
+do_shmio|||
+do_spawn_nowait|||
+do_spawn|||
+do_sprintf|||
+do_sv_dump||5.006000|
+do_sysseek|||
+do_tell|||
+do_trans_complex_utf8|||
+do_trans_complex|||
+do_trans_count_utf8|||
+do_trans_count|||
+do_trans_simple_utf8|||
+do_trans_simple|||
+do_trans|||
+do_vecget|||
+do_vecset|||
+do_vop|||
+docatch_body|||
+docatch|||
+doeval|||
+dofile|||
+dofindlabel|||
+doform|||
+doing_taint||5.008001|n
+dooneliner|||
+doopen_pm|||
+doparseform|||
+dopoptoeval|||
+dopoptolabel|||
+dopoptoloop|||
+dopoptosub_at|||
+dopoptosub|||
+dounwind|||
+dowantarray|||
+dump_all||5.006000|
+dump_eval||5.006000|
+dump_fds|||
+dump_form||5.006000|
+dump_indent||5.006000|v
+dump_mstats|||
+dump_packsubs||5.006000|
+dump_sub||5.006000|
+dump_vindent||5.006000|
+dumpuntil|||
+dup_attrlist|||
+emulate_eaccess|||
+eval_pv|5.006000||p
+eval_sv|5.006000||p
+expect_number|||
+fbm_compile||5.005000|
+fbm_instr||5.005000|
+fd_on_nosuid_fs|||
+filter_add|||
+filter_del|||
+filter_gets|||
+filter_read|||
+find_beginning|||
+find_byclass|||
+find_in_my_stash|||
+find_runcv|||
+find_rundefsvoffset||5.009002|
+find_script|||
+find_uninit_var|||
+fold_constants|||
+forbid_setid|||
+force_ident|||
+force_list|||
+force_next|||
+force_version|||
+force_word|||
+form_nocontext|||vn
+form||5.004000|v
+fp_dup|||
+fprintf_nocontext|||vn
+free_global_struct|||
+free_tied_hv_pool|||
+free_tmps|||
+gen_constant_list|||
+get_av|5.006000||p
+get_context||5.006000|n
+get_cv|5.006000||p
+get_db_sub|||
+get_debug_opts|||
+get_hash_seed|||
+get_hv|5.006000||p
+get_mstats|||
+get_no_modify|||
+get_num|||
+get_op_descs||5.005000|
+get_op_names||5.005000|
+get_opargs|||
+get_ppaddr||5.006000|
+get_sv|5.006000||p
+get_vtbl||5.005030|
+getcwd_sv||5.007002|
+getenv_len|||
+gp_dup|||
+gp_free|||
+gp_ref|||
+grok_bin|5.007003||p
+grok_hex|5.007003||p
+grok_number|5.007002||p
+grok_numeric_radix|5.007002||p
+grok_oct|5.007003||p
+group_end|||
+gv_AVadd|||
+gv_HVadd|||
+gv_IOadd|||
+gv_autoload4||5.004000|
+gv_check|||
+gv_dump||5.006000|
+gv_efullname3||5.004000|
+gv_efullname4||5.006001|
+gv_efullname|||
+gv_ename|||
+gv_fetchfile|||
+gv_fetchmeth_autoload||5.007003|
+gv_fetchmethod_autoload||5.004000|
+gv_fetchmethod|||
+gv_fetchmeth|||
+gv_fetchpvn_flags||5.009002|
+gv_fetchpv|||
+gv_fetchsv||5.009002|
+gv_fullname3||5.004000|
+gv_fullname4||5.006001|
+gv_fullname|||
+gv_handler||5.007001|
+gv_init_sv|||
+gv_init|||
+gv_share|||
+gv_stashpvn|5.006000||p
+gv_stashpv|||
+gv_stashsv|||
+he_dup|||
+hek_dup|||
+hfreeentries|||
+hsplit|||
+hv_assert||5.009001|
+hv_auxinit|||
+hv_clear_placeholders||5.009001|
+hv_clear|||
+hv_delayfree_ent||5.004000|
+hv_delete_common|||
+hv_delete_ent||5.004000|
+hv_delete|||
+hv_eiter_p||5.009003|
+hv_eiter_set||5.009003|
+hv_exists_ent||5.004000|
+hv_exists|||
+hv_fetch_common|||
+hv_fetch_ent||5.004000|
+hv_fetch|||
+hv_free_ent||5.004000|
+hv_iterinit|||
+hv_iterkeysv||5.004000|
+hv_iterkey|||
+hv_iternext_flags||5.008000|
+hv_iternextsv|||
+hv_iternext|||
+hv_iterval|||
+hv_ksplit||5.004000|
+hv_magic_check|||
+hv_magic|||
+hv_name_set||5.009003|
+hv_notallowed|||
+hv_placeholders_get||5.009003|
+hv_placeholders_p||5.009003|
+hv_placeholders_set||5.009003|
+hv_riter_p||5.009003|
+hv_riter_set||5.009003|
+hv_scalar||5.009001|
+hv_store_ent||5.004000|
+hv_store_flags||5.008000|
+hv_store|||
+hv_undef|||
+ibcmp_locale||5.004000|
+ibcmp_utf8||5.007003|
+ibcmp|||
+incl_perldb|||
+incline|||
+incpush|||
+ingroup|||
+init_argv_symbols|||
+init_debugger|||
+init_global_struct|||
+init_i18nl10n||5.006000|
+init_i18nl14n||5.006000|
+init_ids|||
+init_interp|||
+init_lexer|||
+init_main_stash|||
+init_perllib|||
+init_postdump_symbols|||
+init_predump_symbols|||
+init_stacks||5.005000|
+init_tm||5.007002|
+instr|||
+intro_my|||
+intuit_method|||
+intuit_more|||
+invert|||
+io_close|||
+isALNUM|||
+isALPHA|||
+isDIGIT|||
+isLOWER|||
+isSPACE|||
+isUPPER|||
+is_an_int|||
+is_gv_magical_sv|||
+is_gv_magical|||
+is_handle_constructor|||
+is_list_assignment|||
+is_lvalue_sub||5.007001|
+is_uni_alnum_lc||5.006000|
+is_uni_alnumc_lc||5.006000|
+is_uni_alnumc||5.006000|
+is_uni_alnum||5.006000|
+is_uni_alpha_lc||5.006000|
+is_uni_alpha||5.006000|
+is_uni_ascii_lc||5.006000|
+is_uni_ascii||5.006000|
+is_uni_cntrl_lc||5.006000|
+is_uni_cntrl||5.006000|
+is_uni_digit_lc||5.006000|
+is_uni_digit||5.006000|
+is_uni_graph_lc||5.006000|
+is_uni_graph||5.006000|
+is_uni_idfirst_lc||5.006000|
+is_uni_idfirst||5.006000|
+is_uni_lower_lc||5.006000|
+is_uni_lower||5.006000|
+is_uni_print_lc||5.006000|
+is_uni_print||5.006000|
+is_uni_punct_lc||5.006000|
+is_uni_punct||5.006000|
+is_uni_space_lc||5.006000|
+is_uni_space||5.006000|
+is_uni_upper_lc||5.006000|
+is_uni_upper||5.006000|
+is_uni_xdigit_lc||5.006000|
+is_uni_xdigit||5.006000|
+is_utf8_alnumc||5.006000|
+is_utf8_alnum||5.006000|
+is_utf8_alpha||5.006000|
+is_utf8_ascii||5.006000|
+is_utf8_char_slow|||
+is_utf8_char||5.006000|
+is_utf8_cntrl||5.006000|
+is_utf8_digit||5.006000|
+is_utf8_graph||5.006000|
+is_utf8_idcont||5.008000|
+is_utf8_idfirst||5.006000|
+is_utf8_lower||5.006000|
+is_utf8_mark||5.006000|
+is_utf8_print||5.006000|
+is_utf8_punct||5.006000|
+is_utf8_space||5.006000|
+is_utf8_string_loclen||5.009003|
+is_utf8_string_loc||5.008001|
+is_utf8_string||5.006001|
+is_utf8_upper||5.006000|
+is_utf8_xdigit||5.006000|
+isa_lookup|||
+items|||n
+ix|||n
+jmaybe|||
+keyword|||
+leave_scope|||
+lex_end|||
+lex_start|||
+linklist|||
+listkids|||
+list|||
+load_module_nocontext|||vn
+load_module||5.006000|v
+localize|||
+looks_like_number|||
+lop|||
+mPUSHi|5.009002||p
+mPUSHn|5.009002||p
+mPUSHp|5.009002||p
+mPUSHu|5.009002||p
+mXPUSHi|5.009002||p
+mXPUSHn|5.009002||p
+mXPUSHp|5.009002||p
+mXPUSHu|5.009002||p
+magic_clear_all_env|||
+magic_clearenv|||
+magic_clearpack|||
+magic_clearsig|||
+magic_dump||5.006000|
+magic_existspack|||
+magic_freearylen_p|||
+magic_freeovrld|||
+magic_freeregexp|||
+magic_getarylen|||
+magic_getdefelem|||
+magic_getglob|||
+magic_getnkeys|||
+magic_getpack|||
+magic_getpos|||
+magic_getsig|||
+magic_getsubstr|||
+magic_gettaint|||
+magic_getuvar|||
+magic_getvec|||
+magic_get|||
+magic_killbackrefs|||
+magic_len|||
+magic_methcall|||
+magic_methpack|||
+magic_nextpack|||
+magic_regdata_cnt|||
+magic_regdatum_get|||
+magic_regdatum_set|||
+magic_scalarpack|||
+magic_set_all_env|||
+magic_setamagic|||
+magic_setarylen|||
+magic_setbm|||
+magic_setcollxfrm|||
+magic_setdbline|||
+magic_setdefelem|||
+magic_setenv|||
+magic_setfm|||
+magic_setglob|||
+magic_setisa|||
+magic_setmglob|||
+magic_setnkeys|||
+magic_setpack|||
+magic_setpos|||
+magic_setregexp|||
+magic_setsig|||
+magic_setsubstr|||
+magic_settaint|||
+magic_setutf8|||
+magic_setuvar|||
+magic_setvec|||
+magic_set|||
+magic_sizepack|||
+magic_wipepack|||
+magicname|||
+make_trie|||
+malloced_size|||n
+malloc||5.007002|n
+markstack_grow|||
+measure_struct|||
+memEQ|5.004000||p
+memNE|5.004000||p
+mem_collxfrm|||
+mess_alloc|||
+mess_nocontext|||vn
+mess||5.006000|v
+method_common|||
+mfree||5.007002|n
+mg_clear|||
+mg_copy|||
+mg_dup|||
+mg_find|||
+mg_free|||
+mg_get|||
+mg_length||5.005000|
+mg_localize|||
+mg_magical|||
+mg_set|||
+mg_size||5.005000|
+mini_mktime||5.007002|
+missingterm|||
+mode_from_discipline|||
+modkids|||
+mod|||
+moreswitches|||
+mul128|||
+mulexp10|||n
+my_atof2||5.007002|
+my_atof||5.006000|
+my_attrs|||
+my_bcopy|||n
+my_betoh16|||n
+my_betoh32|||n
+my_betoh64|||n
+my_betohi|||n
+my_betohl|||n
+my_betohs|||n
+my_bzero|||n
+my_chsize|||
+my_exit_jump|||
+my_exit|||
+my_failure_exit||5.004000|
+my_fflush_all||5.006000|
+my_fork||5.007003|n
+my_htobe16|||n
+my_htobe32|||n
+my_htobe64|||n
+my_htobei|||n
+my_htobel|||n
+my_htobes|||n
+my_htole16|||n
+my_htole32|||n
+my_htole64|||n
+my_htolei|||n
+my_htolel|||n
+my_htoles|||n
+my_htonl|||
+my_kid|||
+my_letoh16|||n
+my_letoh32|||n
+my_letoh64|||n
+my_letohi|||n
+my_letohl|||n
+my_letohs|||n
+my_lstat|||
+my_memcmp||5.004000|n
+my_memset|||n
+my_ntohl|||
+my_pclose||5.004000|
+my_popen_list||5.007001|
+my_popen||5.004000|
+my_setenv|||
+my_socketpair||5.007003|n
+my_stat|||
+my_strftime||5.007002|
+my_swabn|||n
+my_swap|||
+my_unexec|||
+my|||
+newANONATTRSUB||5.006000|
+newANONHASH|||
+newANONLIST|||
+newANONSUB|||
+newASSIGNOP|||
+newATTRSUB||5.006000|
+newAVREF|||
+newAV|||
+newBINOP|||
+newCONDOP|||
+newCONSTSUB|5.006000||p
+newCVREF|||
+newDEFSVOP|||
+newFORM|||
+newFOROP|||
+newGVOP|||
+newGVREF|||
+newGVgen|||
+newHVREF|||
+newHVhv||5.005000|
+newHV|||
+newIO|||
+newLISTOP|||
+newLOGOP|||
+newLOOPEX|||
+newLOOPOP|||
+newMYSUB||5.006000|
+newNULLLIST|||
+newOP|||
+newPADOP||5.006000|
+newPMOP|||
+newPROG|||
+newPVOP|||
+newRANGE|||
+newRV_inc|5.004000||p
+newRV_noinc|5.006000||p
+newRV|||
+newSLICEOP|||
+newSTATEOP|||
+newSUB|||
+newSVOP|||
+newSVREF|||
+newSVhek||5.009003|
+newSViv|||
+newSVnv|||
+newSVpvf_nocontext|||vn
+newSVpvf||5.004000|v
+newSVpvn_share||5.007001|
+newSVpvn|5.006000||p
+newSVpv|||
+newSVrv|||
+newSVsv|||
+newSVuv|5.006000||p
+newSV|||
+newUNOP|||
+newWHILEOP||5.009003|
+newXSproto||5.006000|
+newXS||5.006000|
+new_collate||5.006000|
+new_constant|||
+new_ctype||5.006000|
+new_he|||
+new_logop|||
+new_numeric||5.006000|
+new_stackinfo||5.005000|
+new_version||5.009000|
+next_symbol|||
+nextargv|||
+nextchar|||
+ninstr|||
+no_bareword_allowed|||
+no_fh_allowed|||
+no_op|||
+not_a_number|||
+nothreadhook||5.008000|
+nuke_stacks|||
+num_overflow|||n
+oopsAV|||
+oopsCV|||
+oopsHV|||
+op_clear|||
+op_const_sv|||
+op_dump||5.006000|
+op_free|||
+op_null||5.007002|
+op_refcnt_lock||5.009002|
+op_refcnt_unlock||5.009002|
+open_script|||
+pMY_CXT_|5.007003||p
+pMY_CXT|5.007003||p
+pTHX_|5.006000||p
+pTHX|5.006000||p
+pack_cat||5.007003|
+pack_rec|||
+package|||
+packlist||5.008001|
+pad_add_anon|||
+pad_add_name|||
+pad_alloc|||
+pad_block_start|||
+pad_check_dup|||
+pad_compname_type|||
+pad_findlex|||
+pad_findmy|||
+pad_fixup_inner_anons|||
+pad_free|||
+pad_leavemy|||
+pad_new|||
+pad_push|||
+pad_reset|||
+pad_setsv|||
+pad_sv|||
+pad_swipe|||
+pad_tidy|||
+pad_undef|||
+parse_body|||
+parse_unicode_opts|||
+path_is_absolute|||
+peep|||
+pending_ident|||
+perl_alloc_using|||n
+perl_alloc|||n
+perl_clone_using|||n
+perl_clone|||n
+perl_construct|||n
+perl_destruct||5.007003|n
+perl_free|||n
+perl_parse||5.006000|n
+perl_run|||n
+pidgone|||
+pmflag|||
+pmop_dump||5.006000|
+pmruntime|||
+pmtrans|||
+pop_scope|||
+pregcomp|||
+pregexec|||
+pregfree|||
+prepend_elem|||
+printf_nocontext|||vn
+ptr_table_clear|||
+ptr_table_fetch|||
+ptr_table_free|||
+ptr_table_new|||
+ptr_table_split|||
+ptr_table_store|||
+push_scope|||
+put_byte|||
+pv_display||5.006000|
+pv_uni_display||5.007003|
+qerror|||
+re_croak2|||
+re_dup|||
+re_intuit_start||5.006000|
+re_intuit_string||5.006000|
+realloc||5.007002|n
+reentrant_free|||
+reentrant_init|||
+reentrant_retry|||vn
+reentrant_size|||
+refkids|||
+refto|||
+ref|||
+reg_node|||
+reganode|||
+regatom|||
+regbranch|||
+regclass_swash||5.007003|
+regclass|||
+regcp_set_to|||
+regcppop|||
+regcppush|||
+regcurly|||
+regdump||5.005000|
+regexec_flags||5.005000|
+reghop3|||
+reghopmaybe3|||
+reghopmaybe|||
+reghop|||
+reginclass|||
+reginitcolors||5.006000|
+reginsert|||
+regmatch|||
+regnext||5.005000|
+regoptail|||
+regpiece|||
+regpposixcc|||
+regprop|||
+regrepeat_hard|||
+regrepeat|||
+regtail|||
+regtry|||
+reguni|||
+regwhite|||
+reg|||
+repeatcpy|||
+report_evil_fh|||
+report_uninit|||
+require_errno|||
+require_pv||5.006000|
+rninstr|||
+rsignal_restore|||
+rsignal_save|||
+rsignal_state||5.004000|
+rsignal||5.004000|
+run_body|||
+runops_debug||5.005000|
+runops_standard||5.005000|
+rvpv_dup|||
+rxres_free|||
+rxres_restore|||
+rxres_save|||
+safesyscalloc||5.006000|n
+safesysfree||5.006000|n
+safesysmalloc||5.006000|n
+safesysrealloc||5.006000|n
+same_dirent|||
+save_I16||5.004000|
+save_I32|||
+save_I8||5.006000|
+save_aelem||5.004050|
+save_alloc||5.006000|
+save_aptr|||
+save_ary|||
+save_bool||5.008001|
+save_clearsv|||
+save_delete|||
+save_destructor_x||5.006000|
+save_destructor||5.006000|
+save_freeop|||
+save_freepv|||
+save_freesv|||
+save_generic_pvref||5.006001|
+save_generic_svref||5.005030|
+save_gp||5.004000|
+save_hash|||
+save_hek_flags|||
+save_helem||5.004050|
+save_hints||5.005000|
+save_hptr|||
+save_int|||
+save_item|||
+save_iv||5.005000|
+save_lines|||
+save_list|||
+save_long|||
+save_magic|||
+save_mortalizesv||5.007001|
+save_nogv|||
+save_op|||
+save_padsv||5.007001|
+save_pptr|||
+save_re_context||5.006000|
+save_scalar_at|||
+save_scalar|||
+save_set_svflags||5.009000|
+save_shared_pvref||5.007003|
+save_sptr|||
+save_svref|||
+save_threadsv||5.005000|
+save_vptr||5.006000|
+savepvn|||
+savepv|||
+savesharedpv||5.007003|
+savestack_grow_cnt||5.008001|
+savestack_grow|||
+savesvpv||5.009002|
+sawparens|||
+scalar_mod_type|||
+scalarboolean|||
+scalarkids|||
+scalarseq|||
+scalarvoid|||
+scalar|||
+scan_bin||5.006000|
+scan_commit|||
+scan_const|||
+scan_formline|||
+scan_heredoc|||
+scan_hex|||
+scan_ident|||
+scan_inputsymbol|||
+scan_num||5.007001|
+scan_oct|||
+scan_pat|||
+scan_str|||
+scan_subst|||
+scan_trans|||
+scan_version||5.009001|
+scan_vstring||5.008001|
+scan_word|||
+scope|||
+screaminstr||5.005000|
+seed|||
+set_context||5.006000|n
+set_csh|||
+set_numeric_local||5.006000|
+set_numeric_radix||5.006000|
+set_numeric_standard||5.006000|
+setdefout|||
+setenv_getix|||
+share_hek_flags|||
+share_hek|||
+si_dup|||
+sighandler|||n
+simplify_sort|||
+skipspace|||
+sortsv||5.007003|
+ss_dup|||
+stack_grow|||
+start_glob|||
+start_subparse||5.004000|
+stashpv_hvname_match||5.009003|
+stdize_locale|||
+strEQ|||
+strGE|||
+strGT|||
+strLE|||
+strLT|||
+strNE|||
+str_to_version||5.006000|
+strnEQ|||
+strnNE|||
+study_chunk|||
+sub_crush_depth|||
+sublex_done|||
+sublex_push|||
+sublex_start|||
+sv_2bool|||
+sv_2cv|||
+sv_2io|||
+sv_2iuv_non_preserve|||
+sv_2iv_flags||5.009001|
+sv_2iv|||
+sv_2mortal|||
+sv_2nv|||
+sv_2pv_flags||5.007002|
+sv_2pv_nolen|5.006000||p
+sv_2pvbyte_nolen|||
+sv_2pvbyte|5.006000||p
+sv_2pvutf8_nolen||5.006000|
+sv_2pvutf8||5.006000|
+sv_2pv|||
+sv_2uv_flags||5.009001|
+sv_2uv|5.004000||p
+sv_add_arena|||
+sv_add_backref|||
+sv_backoff|||
+sv_bless|||
+sv_cat_decode||5.008001|
+sv_catpv_mg|5.006000||p
+sv_catpvf_mg_nocontext|||pvn
+sv_catpvf_mg|5.006000|5.004000|pv
+sv_catpvf_nocontext|||vn
+sv_catpvf||5.004000|v
+sv_catpvn_flags||5.007002|
+sv_catpvn_mg|5.006000||p
+sv_catpvn_nomg|5.007002||p
+sv_catpvn|||
+sv_catpv|||
+sv_catsv_flags||5.007002|
+sv_catsv_mg|5.006000||p
+sv_catsv_nomg|5.007002||p
+sv_catsv|||
+sv_chop|||
+sv_clean_all|||
+sv_clean_objs|||
+sv_clear|||
+sv_cmp_locale||5.004000|
+sv_cmp|||
+sv_collxfrm|||
+sv_compile_2op||5.008001|
+sv_copypv||5.007003|
+sv_dec|||
+sv_del_backref|||
+sv_derived_from||5.004000|
+sv_dump|||
+sv_dup|||
+sv_eq|||
+sv_force_normal_flags||5.007001|
+sv_force_normal||5.006000|
+sv_free2|||
+sv_free_arenas|||
+sv_free|||
+sv_gets||5.004000|
+sv_grow|||
+sv_inc|||
+sv_insert|||
+sv_isa|||
+sv_isobject|||
+sv_iv||5.005000|
+sv_len_utf8||5.006000|
+sv_len|||
+sv_magicext||5.007003|
+sv_magic|||
+sv_mortalcopy|||
+sv_newmortal|||
+sv_newref|||
+sv_nolocking||5.007003|
+sv_nosharing||5.007003|
+sv_nounlocking||5.007003|
+sv_nv||5.005000|
+sv_peek||5.005000|
+sv_pos_b2u||5.006000|
+sv_pos_u2b||5.006000|
+sv_pvbyten_force||5.006000|
+sv_pvbyten||5.006000|
+sv_pvbyte||5.006000|
+sv_pvn_force_flags||5.007002|
+sv_pvn_force|||p
+sv_pvn_nomg|5.007003||p
+sv_pvn|5.006000||p
+sv_pvutf8n_force||5.006000|
+sv_pvutf8n||5.006000|
+sv_pvutf8||5.006000|
+sv_pv||5.006000|
+sv_recode_to_utf8||5.007003|
+sv_reftype|||
+sv_release_COW|||
+sv_release_IVX|||
+sv_replace|||
+sv_report_used|||
+sv_reset|||
+sv_rvweaken||5.006000|
+sv_setiv_mg|5.006000||p
+sv_setiv|||
+sv_setnv_mg|5.006000||p
+sv_setnv|||
+sv_setpv_mg|5.006000||p
+sv_setpvf_mg_nocontext|||pvn
+sv_setpvf_mg|5.006000|5.004000|pv
+sv_setpvf_nocontext|||vn
+sv_setpvf||5.004000|v
+sv_setpviv_mg||5.008001|
+sv_setpviv||5.008001|
+sv_setpvn_mg|5.006000||p
+sv_setpvn|||
+sv_setpv|||
+sv_setref_iv|||
+sv_setref_nv|||
+sv_setref_pvn|||
+sv_setref_pv|||
+sv_setref_uv||5.007001|
+sv_setsv_cow|||
+sv_setsv_flags||5.007002|
+sv_setsv_mg|5.006000||p
+sv_setsv_nomg|5.007002||p
+sv_setsv|||
+sv_setuv_mg|5.006000||p
+sv_setuv|5.006000||p
+sv_tainted||5.004000|
+sv_taint||5.004000|
+sv_true||5.005000|
+sv_unglob|||
+sv_uni_display||5.007003|
+sv_unmagic|||
+sv_unref_flags||5.007001|
+sv_unref|||
+sv_untaint||5.004000|
+sv_upgrade|||
+sv_usepvn_mg|5.006000||p
+sv_usepvn|||
+sv_utf8_decode||5.006000|
+sv_utf8_downgrade||5.006000|
+sv_utf8_encode||5.006000|
+sv_utf8_upgrade_flags||5.007002|
+sv_utf8_upgrade||5.007001|
+sv_uv|5.006000||p
+sv_vcatpvf_mg|5.006000|5.004000|p
+sv_vcatpvfn||5.004000|
+sv_vcatpvf|5.006000|5.004000|p
+sv_vsetpvf_mg|5.006000|5.004000|p
+sv_vsetpvfn||5.004000|
+sv_vsetpvf|5.006000|5.004000|p
+svtype|||
+swallow_bom|||
+swash_fetch||5.007002|
+swash_init||5.006000|
+sys_intern_clear|||
+sys_intern_dup|||
+sys_intern_init|||
+taint_env|||
+taint_proper|||
+tmps_grow||5.006000|
+toLOWER|||
+toUPPER|||
+to_byte_substr|||
+to_uni_fold||5.007003|
+to_uni_lower_lc||5.006000|
+to_uni_lower||5.007003|
+to_uni_title_lc||5.006000|
+to_uni_title||5.007003|
+to_uni_upper_lc||5.006000|
+to_uni_upper||5.007003|
+to_utf8_case||5.007003|
+to_utf8_fold||5.007003|
+to_utf8_lower||5.007003|
+to_utf8_substr|||
+to_utf8_title||5.007003|
+to_utf8_upper||5.007003|
+tokeq|||
+tokereport|||
+too_few_arguments|||
+too_many_arguments|||
+unlnk|||
+unpack_rec|||
+unpack_str||5.007003|
+unpackstring||5.008001|
+unshare_hek_or_pvn|||
+unshare_hek|||
+unsharepvn||5.004000|
+upg_version||5.009000|
+usage|||
+utf16_textfilter|||
+utf16_to_utf8_reversed||5.006001|
+utf16_to_utf8||5.006001|
+utf16rev_textfilter|||
+utf8_distance||5.006000|
+utf8_hop||5.006000|
+utf8_length||5.007001|
+utf8_mg_pos_init|||
+utf8_mg_pos|||
+utf8_to_bytes||5.006001|
+utf8_to_uvchr||5.007001|
+utf8_to_uvuni||5.007001|
+utf8n_to_uvchr||5.007001|
+utf8n_to_uvuni||5.007001|
+utilize|||
+uvchr_to_utf8_flags||5.007003|
+uvchr_to_utf8||5.007001|
+uvuni_to_utf8_flags||5.007003|
+uvuni_to_utf8||5.007001|
+validate_suid|||
+varname|||
+vcmp||5.009000|
+vcroak||5.006000|
+vdeb||5.007003|
+vdie|||
+vform||5.006000|
+visit|||
+vivify_defelem|||
+vivify_ref|||
+vload_module||5.006000|
+vmess||5.006000|
+vnewSVpvf|5.006000|5.004000|p
+vnormal||5.009002|
+vnumify||5.009000|
+vstringify||5.009000|
+vwarner||5.006000|
+vwarn||5.006000|
+wait4pid|||
+warn_nocontext|||vn
+warner_nocontext|||vn
+warner||5.006000|v
+warn|||v
+watch|||
+whichsig|||
+write_to_stderr|||
+yyerror|||
+yylex|||
+yyparse|||
+yywarn|||
+);
+
+if (exists $opt{'list-unsupported'}) {
+ my $f;
+ for $f (sort { lc $a cmp lc $b } keys %API) {
+ next unless $API{$f}{todo};
+ print "$f ", '.'x(40-length($f)), " ", format_version($API{$f}{todo}), "\n";
+ }
+ exit 0;
+}
+
+# Scan for possible replacement candidates
+
+my(%replace, %need, %hints, %depends);
+my $replace = 0;
+my $hint = '';
+
+while (<DATA>) {
+ if ($hint) {
+ if (m{^\s*\*\s(.*?)\s*$}) {
+ $hints{$hint} ||= ''; # suppress warning with older perls
+ $hints{$hint} .= "$1\n";
+ }
+ else {
+ $hint = '';
+ }
+ }
+ $hint = $1 if m{^\s*$rccs\sHint:\s+(\w+)\s*$};
+
+ $replace = $1 if m{^\s*$rccs\s+Replace:\s+(\d+)\s+$rcce\s*$};
+ $replace{$2} = $1 if $replace and m{^\s*#\s*define\s+(\w+)(?:\([^)]*\))?\s+(\w+)};
+ $replace{$2} = $1 if m{^\s*#\s*define\s+(\w+)(?:\([^)]*\))?\s+(\w+).*$rccs\s+Replace\s+$rcce};
+ $replace{$1} = $2 if m{^\s*$rccs\s+Replace (\w+) with (\w+)\s+$rcce\s*$};
+
+ if (m{^\s*$rccs\s+(\w+)\s+depends\s+on\s+(\w+(\s*,\s*\w+)*)\s+$rcce\s*$}) {
+ push @{$depends{$1}}, map { s/\s+//g; $_ } split /,/, $2;
+ }
+
+ $need{$1} = 1 if m{^#if\s+defined\(NEED_(\w+)(?:_GLOBAL)?\)};
+}
+
+if (exists $opt{'api-info'}) {
+ my $f;
+ my $count = 0;
+ my $match = $opt{'api-info'} =~ m!^/(.*)/$! ? $1 : "^\Q$opt{'api-info'}\E\$";
+ for $f (sort { lc $a cmp lc $b } keys %API) {
+ next unless $f =~ /$match/;
+ print "\n=== $f ===\n\n";
+ my $info = 0;
+ if ($API{$f}{base} || $API{$f}{todo}) {
+ my $base = format_version($API{$f}{base} || $API{$f}{todo});
+ print "Supported at least starting from perl-$base.\n";
+ $info++;
+ }
+ if ($API{$f}{provided}) {
+ my $todo = $API{$f}{todo} ? format_version($API{$f}{todo}) : "5.003";
+ print "Support by $ppport provided back to perl-$todo.\n";
+ print "Support needs to be explicitly requested by NEED_$f.\n" if exists $need{$f};
+ print "Depends on: ", join(', ', @{$depends{$f}}), ".\n" if exists $depends{$f};
+ print "$hints{$f}" if exists $hints{$f};
+ $info++;
+ }
+ unless ($info) {
+ print "No portability information available.\n";
+ }
+ $count++;
+ }
+ if ($count > 0) {
+ print "\n";
+ }
+ else {
+ print "Found no API matching '$opt{'api-info'}'.\n";
+ }
+ exit 0;
+}
+
+if (exists $opt{'list-provided'}) {
+ my $f;
+ for $f (sort { lc $a cmp lc $b } keys %API) {
+ next unless $API{$f}{provided};
+ my @flags;
+ push @flags, 'explicit' if exists $need{$f};
+ push @flags, 'depend' if exists $depends{$f};
+ push @flags, 'hint' if exists $hints{$f};
+ my $flags = @flags ? ' ['.join(', ', @flags).']' : '';
+ print "$f$flags\n";
+ }
+ exit 0;
+}
+
+my @files;
+my @srcext = qw( xs c h cc cpp );
+my $srcext = join '|', @srcext;
+
+if (@ARGV) {
+ my %seen;
+ @files = grep { -f && !exists $seen{$_} } map { glob $_ } @ARGV;
+}
+else {
+ eval {
+ require File::Find;
+ File::Find::find(sub {
+ $File::Find::name =~ /\.($srcext)$/i
+ and push @files, $File::Find::name;
+ }, '.');
+ };
+ if ($@) {
+ @files = map { glob "*.$_" } @srcext;
+ }
+}
+
+if (!@ARGV || $opt{filter}) {
+ my(@in, @out);
+ my %xsc = map { /(.*)\.xs$/ ? ("$1.c" => 1, "$1.cc" => 1) : () } @files;
+ for (@files) {
+ my $out = exists $xsc{$_} || /\b\Q$ppport\E$/i || !/\.($srcext)$/i;
+ push @{ $out ? \@out : \@in }, $_;
+ }
+ if (@ARGV && @out) {
+ warning("Skipping the following files (use --nofilter to avoid this):\n| ", join "\n| ", @out);
+ }
+ @files = @in;
+}
+
+unless (@files) {
+ die "No input files given!\n";
+}
+
+my(%files, %global, %revreplace);
+%revreplace = reverse %replace;
+my $filename;
+my $patch_opened = 0;
+
+for $filename (@files) {
+ unless (open IN, "<$filename") {
+ warn "Unable to read from $filename: $!\n";
+ next;
+ }
+
+ info("Scanning $filename ...");
+
+ my $c = do { local $/; <IN> };
+ close IN;
+
+ my %file = (orig => $c, changes => 0);
+
+ # temporarily remove C comments from the code
+ my @ccom;
+ $c =~ s{
+ (
+ [^"'/]+
+ |
+ (?:"[^"\\]*(?:\\.[^"\\]*)*" [^"'/]*)+
+ |
+ (?:'[^'\\]*(?:\\.[^'\\]*)*' [^"'/]*)+
+ )
+ |
+ (/ (?:
+ \*[^*]*\*+(?:[^$ccs][^*]*\*+)* /
+ |
+ /[^\r\n]*
+ ))
+ }{
+ defined $2 and push @ccom, $2;
+ defined $1 ? $1 : "$ccs$#ccom$cce";
+ }egsx;
+
+ $file{ccom} = \@ccom;
+ $file{code} = $c;
+ $file{has_inc_ppport} = ($c =~ /#.*include.*\Q$ppport\E/);
+
+ my $func;
+
+ for $func (keys %API) {
+ my $match = $func;
+ $match .= "|$revreplace{$func}" if exists $revreplace{$func};
+ if ($c =~ /\b(?:Perl_)?($match)\b/) {
+ $file{uses_replace}{$1}++ if exists $revreplace{$func} && $1 eq $revreplace{$func};
+ $file{uses_Perl}{$func}++ if $c =~ /\bPerl_$func\b/;
+ if (exists $API{$func}{provided}) {
+ if (!exists $API{$func}{base} || $API{$func}{base} > $opt{'compat-version'}) {
+ $file{uses}{$func}++;
+ my @deps = rec_depend($func);
+ if (@deps) {
+ $file{uses_deps}{$func} = \@deps;
+ for (@deps) {
+ $file{uses}{$_} = 0 unless exists $file{uses}{$_};
+ }
+ }
+ for ($func, @deps) {
+ if (exists $need{$_}) {
+ $file{needs}{$_} = 'static';
+ }
+ }
+ }
+ }
+ if (exists $API{$func}{todo} && $API{$func}{todo} > $opt{'compat-version'}) {
+ if ($c =~ /\b$func\b/) {
+ $file{uses_todo}{$func}++;
+ }
+ }
+ }
+ }
+
+ while ($c =~ /^$HS*#$HS*define$HS+(NEED_(\w+?)(_GLOBAL)?)\b/mg) {
+ if (exists $need{$2}) {
+ $file{defined $3 ? 'needed_global' : 'needed_static'}{$2}++;
+ }
+ else {
+ warning("Possibly wrong #define $1 in $filename");
+ }
+ }
+
+ for (qw(uses needs uses_todo needed_global needed_static)) {
+ for $func (keys %{$file{$_}}) {
+ push @{$global{$_}{$func}}, $filename;
+ }
+ }
+
+ $files{$filename} = \%file;
+}
+
+# Globally resolve NEED_'s
+my $need;
+for $need (keys %{$global{needs}}) {
+ if (@{$global{needs}{$need}} > 1) {
+ my @targets = @{$global{needs}{$need}};
+ my @t = grep $files{$_}{needed_global}{$need}, @targets;
+ @targets = @t if @t;
+ @t = grep /\.xs$/i, @targets;
+ @targets = @t if @t;
+ my $target = shift @targets;
+ $files{$target}{needs}{$need} = 'global';
+ for (@{$global{needs}{$need}}) {
+ $files{$_}{needs}{$need} = 'extern' if $_ ne $target;
+ }
+ }
+}
+
+for $filename (@files) {
+ exists $files{$filename} or next;
+
+ info("=== Analyzing $filename ===");
+
+ my %file = %{$files{$filename}};
+ my $func;
+ my $c = $file{code};
+
+ for $func (sort keys %{$file{uses_Perl}}) {
+ if ($API{$func}{varargs}) {
+ my $changes = ($c =~ s{\b(Perl_$func\s*\(\s*)(?!aTHX_?)(\)|[^\s)]*\))}
+ { $1 . ($2 eq ')' ? 'aTHX' : 'aTHX_ ') . $2 }ge);
+ if ($changes) {
+ warning("Doesn't pass interpreter argument aTHX to Perl_$func");
+ $file{changes} += $changes;
+ }
+ }
+ else {
+ warning("Uses Perl_$func instead of $func");
+ $file{changes} += ($c =~ s{\bPerl_$func(\s*)\((\s*aTHX_?)?\s*}
+ {$func$1(}g);
+ }
+ }
+
+ for $func (sort keys %{$file{uses_replace}}) {
+ warning("Uses $func instead of $replace{$func}");
+ $file{changes} += ($c =~ s/\b$func\b/$replace{$func}/g);
+ }
+
+ for $func (sort keys %{$file{uses}}) {
+ next unless $file{uses}{$func}; # if it's only a dependency
+ if (exists $file{uses_deps}{$func}) {
+ diag("Uses $func, which depends on ", join(', ', @{$file{uses_deps}{$func}}));
+ }
+ elsif (exists $replace{$func}) {
+ warning("Uses $func instead of $replace{$func}");
+ $file{changes} += ($c =~ s/\b$func\b/$replace{$func}/g);
+ }
+ else {
+ diag("Uses $func");
+ }
+ hint($func);
+ }
+
+ for $func (sort keys %{$file{uses_todo}}) {
+ warning("Uses $func, which may not be portable below perl ",
+ format_version($API{$func}{todo}));
+ }
+
+ for $func (sort keys %{$file{needed_static}}) {
+ my $message = '';
+ if (not exists $file{uses}{$func}) {
+ $message = "No need to define NEED_$func if $func is never used";
+ }
+ elsif (exists $file{needs}{$func} && $file{needs}{$func} ne 'static') {
+ $message = "No need to define NEED_$func when already needed globally";
+ }
+ if ($message) {
+ diag($message);
+ $file{changes} += ($c =~ s/^$HS*#$HS*define$HS+NEED_$func\b.*$LF//mg);
+ }
+ }
+
+ for $func (sort keys %{$file{needed_global}}) {
+ my $message = '';
+ if (not exists $global{uses}{$func}) {
+ $message = "No need to define NEED_${func}_GLOBAL if $func is never used";
+ }
+ elsif (exists $file{needs}{$func}) {
+ if ($file{needs}{$func} eq 'extern') {
+ $message = "No need to define NEED_${func}_GLOBAL when already needed globally";
+ }
+ elsif ($file{needs}{$func} eq 'static') {
+ $message = "No need to define NEED_${func}_GLOBAL when only used in this file";
+ }
+ }
+ if ($message) {
+ diag($message);
+ $file{changes} += ($c =~ s/^$HS*#$HS*define$HS+NEED_${func}_GLOBAL\b.*$LF//mg);
+ }
+ }
+
+ $file{needs_inc_ppport} = keys %{$file{uses}};
+
+ if ($file{needs_inc_ppport}) {
+ my $pp = '';
+
+ for $func (sort keys %{$file{needs}}) {
+ my $type = $file{needs}{$func};
+ next if $type eq 'extern';
+ my $suffix = $type eq 'global' ? '_GLOBAL' : '';
+ unless (exists $file{"needed_$type"}{$func}) {
+ if ($type eq 'global') {
+ diag("Files [@{$global{needs}{$func}}] need $func, adding global request");
+ }
+ else {
+ diag("File needs $func, adding static request");
+ }
+ $pp .= "#define NEED_$func$suffix\n";
+ }
+ }
+
+ if ($pp && ($c =~ s/^(?=$HS*#$HS*define$HS+NEED_\w+)/$pp/m)) {
+ $pp = '';
+ $file{changes}++;
+ }
+
+ unless ($file{has_inc_ppport}) {
+ diag("Needs to include '$ppport'");
+ $pp .= qq(#include "$ppport"\n)
+ }
+
+ if ($pp) {
+ $file{changes} += ($c =~ s/^($HS*#$HS*define$HS+NEED_\w+.*?)^/$1$pp/ms)
+ || ($c =~ s/^(?=$HS*#$HS*include.*\Q$ppport\E)/$pp/m)
+ || ($c =~ s/^($HS*#$HS*include.*XSUB.*\s*?)^/$1$pp/m)
+ || ($c =~ s/^/$pp/);
+ }
+ }
+ else {
+ if ($file{has_inc_ppport}) {
+ diag("No need to include '$ppport'");
+ $file{changes} += ($c =~ s/^$HS*?#$HS*include.*\Q$ppport\E.*?$LF//m);
+ }
+ }
+
+ # put back in our C comments
+ my $ix;
+ my $cppc = 0;
+ my @ccom = @{$file{ccom}};
+ for $ix (0 .. $#ccom) {
+ if (!$opt{cplusplus} && $ccom[$ix] =~ s!^//!!) {
+ $cppc++;
+ $file{changes} += $c =~ s/$rccs$ix$rcce/$ccs$ccom[$ix] $cce/;
+ }
+ else {
+ $c =~ s/$rccs$ix$rcce/$ccom[$ix]/;
+ }
+ }
+
+ if ($cppc) {
+ my $s = $cppc != 1 ? 's' : '';
+ warning("Uses $cppc C++ style comment$s, which is not portable");
+ }
+
+ if ($file{changes}) {
+ if (exists $opt{copy}) {
+ my $newfile = "$filename$opt{copy}";
+ if (-e $newfile) {
+ error("'$newfile' already exists, refusing to write copy of '$filename'");
+ }
+ else {
+ local *F;
+ if (open F, ">$newfile") {
+ info("Writing copy of '$filename' with changes to '$newfile'");
+ print F $c;
+ close F;
+ }
+ else {
+ error("Cannot open '$newfile' for writing: $!");
+ }
+ }
+ }
+ elsif (exists $opt{patch} || $opt{changes}) {
+ if (exists $opt{patch}) {
+ unless ($patch_opened) {
+ if (open PATCH, ">$opt{patch}") {
+ $patch_opened = 1;
+ }
+ else {
+ error("Cannot open '$opt{patch}' for writing: $!");
+ delete $opt{patch};
+ $opt{changes} = 1;
+ goto fallback;
+ }
+ }
+ mydiff(\*PATCH, $filename, $c);
+ }
+ else {
+fallback:
+ info("Suggested changes:");
+ mydiff(\*STDOUT, $filename, $c);
+ }
+ }
+ else {
+ my $s = $file{changes} == 1 ? '' : 's';
+ info("$file{changes} potentially required change$s detected");
+ }
+ }
+ else {
+ info("Looks good");
+ }
+}
+
+close PATCH if $patch_opened;
+
+exit 0;
+
+
+sub mydiff
+{
+ local *F = shift;
+ my($file, $str) = @_;
+ my $diff;
+
+ if (exists $opt{diff}) {
+ $diff = run_diff($opt{diff}, $file, $str);
+ }
+
+ if (!defined $diff and can_use('Text::Diff')) {
+ $diff = Text::Diff::diff($file, \$str, { STYLE => 'Unified' });
+ $diff = <<HEADER . $diff;
+--- $file
++++ $file.patched
+HEADER
+ }
+
+ if (!defined $diff) {
+ $diff = run_diff('diff -u', $file, $str);
+ }
+
+ if (!defined $diff) {
+ $diff = run_diff('diff', $file, $str);
+ }
+
+ if (!defined $diff) {
+ error("Cannot generate a diff. Please install Text::Diff or use --copy.");
+ return;
+ }
+
+ print F $diff;
+
+}
+
+sub run_diff
+{
+ my($prog, $file, $str) = @_;
+ my $tmp = 'dppptemp';
+ my $suf = 'aaa';
+ my $diff = '';
+ local *F;
+
+ while (-e "$tmp.$suf") { $suf++ }
+ $tmp = "$tmp.$suf";
+
+ if (open F, ">$tmp") {
+ print F $str;
+ close F;
+
+ if (open F, "$prog $file $tmp |") {
+ while (<F>) {
+ s/\Q$tmp\E/$file.patched/;
+ $diff .= $_;
+ }
+ close F;
+ unlink $tmp;
+ return $diff;
+ }
+
+ unlink $tmp;
+ }
+ else {
+ error("Cannot open '$tmp' for writing: $!");
+ }
+
+ return undef;
+}
+
+sub can_use
+{
+ eval "use @_;";
+ return $@ eq '';
+}
+
+sub rec_depend
+{
+ my $func = shift;
+ my %seen;
+ return () unless exists $depends{$func};
+ grep !$seen{$_}++, map { ($_, rec_depend($_)) } @{$depends{$func}};
+}
+
+sub parse_version
+{
+ my $ver = shift;
+
+ if ($ver =~ /^(\d+)\.(\d+)\.(\d+)$/) {
+ return ($1, $2, $3);
+ }
+ elsif ($ver !~ /^\d+\.[\d_]+$/) {
+ die "cannot parse version '$ver'\n";
+ }
+
+ $ver =~ s/_//g;
+ $ver =~ s/$/000000/;
+
+ my($r,$v,$s) = $ver =~ /(\d+)\.(\d{3})(\d{3})/;
+
+ $v = int $v;
+ $s = int $s;
+
+ if ($r < 5 || ($r == 5 && $v < 6)) {
+ if ($s % 10) {
+ die "cannot parse version '$ver'\n";
+ }
+ }
+
+ return ($r, $v, $s);
+}
+
+sub format_version
+{
+ my $ver = shift;
+
+ $ver =~ s/$/000000/;
+ my($r,$v,$s) = $ver =~ /(\d+)\.(\d{3})(\d{3})/;
+
+ $v = int $v;
+ $s = int $s;
+
+ if ($r < 5 || ($r == 5 && $v < 6)) {
+ if ($s % 10) {
+ die "invalid version '$ver'\n";
+ }
+ $s /= 10;
+
+ $ver = sprintf "%d.%03d", $r, $v;
+ $s > 0 and $ver .= sprintf "_%02d", $s;
+
+ return $ver;
+ }
+
+ return sprintf "%d.%d.%d", $r, $v, $s;
+}
+
+sub info
+{
+ $opt{quiet} and return;
+ print @_, "\n";
+}
+
+sub diag
+{
+ $opt{quiet} and return;
+ $opt{diag} and print @_, "\n";
+}
+
+sub warning
+{
+ $opt{quiet} and return;
+ print "*** ", @_, "\n";
+}
+
+sub error
+{
+ print "*** ERROR: ", @_, "\n";
+}
+
+my %given_hints;
+sub hint
+{
+ $opt{quiet} and return;
+ $opt{hints} or return;
+ my $func = shift;
+ exists $hints{$func} or return;
+ $given_hints{$func}++ and return;
+ my $hint = $hints{$func};
+ $hint =~ s/^/ /mg;
+ print " --- hint for $func ---\n", $hint;
+}
+
+sub usage
+{
+ my($usage) = do { local(@ARGV,$/)=($0); <> } =~ /^=head\d$HS+SYNOPSIS\s*^(.*?)\s*^=/ms;
+ my %M = ( 'I' => '*' );
+ $usage =~ s/^\s*perl\s+\S+/$^X $0/;
+ $usage =~ s/([A-Z])<([^>]+)>/$M{$1}$2$M{$1}/g;
+
+ print <<ENDUSAGE;
+
+Usage: $usage
+
+See perldoc $0 for details.
+
+ENDUSAGE
+
+ exit 2;
+}
+
+__DATA__
+*/
+
+#ifndef _P_P_PORTABILITY_H_
+#define _P_P_PORTABILITY_H_
+
+#ifndef DPPP_NAMESPACE
+# define DPPP_NAMESPACE DPPP_
+#endif
+
+#define DPPP_CAT2(x,y) CAT2(x,y)
+#define DPPP_(name) DPPP_CAT2(DPPP_NAMESPACE, name)
+
+#ifndef PERL_REVISION
+# if !defined(__PATCHLEVEL_H_INCLUDED__) && !(defined(PATCHLEVEL) && defined(SUBVERSION))
+# define PERL_PATCHLEVEL_H_IMPLICIT
+# include <patchlevel.h>
+# endif
+# if !(defined(PERL_VERSION) || (defined(SUBVERSION) && defined(PATCHLEVEL)))
+# include <could_not_find_Perl_patchlevel.h>
+# endif
+# ifndef PERL_REVISION
+# define PERL_REVISION (5)
+ /* Replace: 1 */
+# define PERL_VERSION PATCHLEVEL
+# define PERL_SUBVERSION SUBVERSION
+ /* Replace PERL_PATCHLEVEL with PERL_VERSION */
+ /* Replace: 0 */
+# endif
+#endif
+
+#define PERL_BCDVERSION ((PERL_REVISION * 0x1000000L) + (PERL_VERSION * 0x1000L) + PERL_SUBVERSION)
+
+/* It is very unlikely that anyone will try to use this with Perl 6
+ (or greater), but who knows.
+ */
+#if PERL_REVISION != 5
+# error ppport.h only works with Perl version 5
+#endif /* PERL_REVISION != 5 */
+
+#ifdef I_LIMITS
+# include <limits.h>
+#endif
+
+#ifndef PERL_UCHAR_MIN
+# define PERL_UCHAR_MIN ((unsigned char)0)
+#endif
+
+#ifndef PERL_UCHAR_MAX
+# ifdef UCHAR_MAX
+# define PERL_UCHAR_MAX ((unsigned char)UCHAR_MAX)
+# else
+# ifdef MAXUCHAR
+# define PERL_UCHAR_MAX ((unsigned char)MAXUCHAR)
+# else
+# define PERL_UCHAR_MAX ((unsigned char)~(unsigned)0)
+# endif
+# endif
+#endif
+
+#ifndef PERL_USHORT_MIN
+# define PERL_USHORT_MIN ((unsigned short)0)
+#endif
+
+#ifndef PERL_USHORT_MAX
+# ifdef USHORT_MAX
+# define PERL_USHORT_MAX ((unsigned short)USHORT_MAX)
+# else
+# ifdef MAXUSHORT
+# define PERL_USHORT_MAX ((unsigned short)MAXUSHORT)
+# else
+# ifdef USHRT_MAX
+# define PERL_USHORT_MAX ((unsigned short)USHRT_MAX)
+# else
+# define PERL_USHORT_MAX ((unsigned short)~(unsigned)0)
+# endif
+# endif
+# endif
+#endif
+
+#ifndef PERL_SHORT_MAX
+# ifdef SHORT_MAX
+# define PERL_SHORT_MAX ((short)SHORT_MAX)
+# else
+# ifdef MAXSHORT /* Often used in <values.h> */
+# define PERL_SHORT_MAX ((short)MAXSHORT)
+# else
+# ifdef SHRT_MAX
+# define PERL_SHORT_MAX ((short)SHRT_MAX)
+# else
+# define PERL_SHORT_MAX ((short) (PERL_USHORT_MAX >> 1))
+# endif
+# endif
+# endif
+#endif
+
+#ifndef PERL_SHORT_MIN
+# ifdef SHORT_MIN
+# define PERL_SHORT_MIN ((short)SHORT_MIN)
+# else
+# ifdef MINSHORT
+# define PERL_SHORT_MIN ((short)MINSHORT)
+# else
+# ifdef SHRT_MIN
+# define PERL_SHORT_MIN ((short)SHRT_MIN)
+# else
+# define PERL_SHORT_MIN (-PERL_SHORT_MAX - ((3 & -1) == 3))
+# endif
+# endif
+# endif
+#endif
+
+#ifndef PERL_UINT_MAX
+# ifdef UINT_MAX
+# define PERL_UINT_MAX ((unsigned int)UINT_MAX)
+# else
+# ifdef MAXUINT
+# define PERL_UINT_MAX ((unsigned int)MAXUINT)
+# else
+# define PERL_UINT_MAX (~(unsigned int)0)
+# endif
+# endif
+#endif
+
+#ifndef PERL_UINT_MIN
+# define PERL_UINT_MIN ((unsigned int)0)
+#endif
+
+#ifndef PERL_INT_MAX
+# ifdef INT_MAX
+# define PERL_INT_MAX ((int)INT_MAX)
+# else
+# ifdef MAXINT /* Often used in <values.h> */
+# define PERL_INT_MAX ((int)MAXINT)
+# else
+# define PERL_INT_MAX ((int)(PERL_UINT_MAX >> 1))
+# endif
+# endif
+#endif
+
+#ifndef PERL_INT_MIN
+# ifdef INT_MIN
+# define PERL_INT_MIN ((int)INT_MIN)
+# else
+# ifdef MININT
+# define PERL_INT_MIN ((int)MININT)
+# else
+# define PERL_INT_MIN (-PERL_INT_MAX - ((3 & -1) == 3))
+# endif
+# endif
+#endif
+
+#ifndef PERL_ULONG_MAX
+# ifdef ULONG_MAX
+# define PERL_ULONG_MAX ((unsigned long)ULONG_MAX)
+# else
+# ifdef MAXULONG
+# define PERL_ULONG_MAX ((unsigned long)MAXULONG)
+# else
+# define PERL_ULONG_MAX (~(unsigned long)0)
+# endif
+# endif
+#endif
+
+#ifndef PERL_ULONG_MIN
+# define PERL_ULONG_MIN ((unsigned long)0L)
+#endif
+
+#ifndef PERL_LONG_MAX
+# ifdef LONG_MAX
+# define PERL_LONG_MAX ((long)LONG_MAX)
+# else
+# ifdef MAXLONG
+# define PERL_LONG_MAX ((long)MAXLONG)
+# else
+# define PERL_LONG_MAX ((long) (PERL_ULONG_MAX >> 1))
+# endif
+# endif
+#endif
+
+#ifndef PERL_LONG_MIN
+# ifdef LONG_MIN
+# define PERL_LONG_MIN ((long)LONG_MIN)
+# else
+# ifdef MINLONG
+# define PERL_LONG_MIN ((long)MINLONG)
+# else
+# define PERL_LONG_MIN (-PERL_LONG_MAX - ((3 & -1) == 3))
+# endif
+# endif
+#endif
+
+#if defined(HAS_QUAD) && (defined(convex) || defined(uts))
+# ifndef PERL_UQUAD_MAX
+# ifdef ULONGLONG_MAX
+# define PERL_UQUAD_MAX ((unsigned long long)ULONGLONG_MAX)
+# else
+# ifdef MAXULONGLONG
+# define PERL_UQUAD_MAX ((unsigned long long)MAXULONGLONG)
+# else
+# define PERL_UQUAD_MAX (~(unsigned long long)0)
+# endif
+# endif
+# endif
+
+# ifndef PERL_UQUAD_MIN
+# define PERL_UQUAD_MIN ((unsigned long long)0L)
+# endif
+
+# ifndef PERL_QUAD_MAX
+# ifdef LONGLONG_MAX
+# define PERL_QUAD_MAX ((long long)LONGLONG_MAX)
+# else
+# ifdef MAXLONGLONG
+# define PERL_QUAD_MAX ((long long)MAXLONGLONG)
+# else
+# define PERL_QUAD_MAX ((long long) (PERL_UQUAD_MAX >> 1))
+# endif
+# endif
+# endif
+
+# ifndef PERL_QUAD_MIN
+# ifdef LONGLONG_MIN
+# define PERL_QUAD_MIN ((long long)LONGLONG_MIN)
+# else
+# ifdef MINLONGLONG
+# define PERL_QUAD_MIN ((long long)MINLONGLONG)
+# else
+# define PERL_QUAD_MIN (-PERL_QUAD_MAX - ((3 & -1) == 3))
+# endif
+# endif
+# endif
+#endif
+
+/* This is based on code from 5.003 perl.h */
+#ifdef HAS_QUAD
+# ifdef cray
+#ifndef IVTYPE
+# define IVTYPE int
+#endif
+
+#ifndef IV_MIN
+# define IV_MIN PERL_INT_MIN
+#endif
+
+#ifndef IV_MAX
+# define IV_MAX PERL_INT_MAX
+#endif
+
+#ifndef UV_MIN
+# define UV_MIN PERL_UINT_MIN
+#endif
+
+#ifndef UV_MAX
+# define UV_MAX PERL_UINT_MAX
+#endif
+
+# ifdef INTSIZE
+#ifndef IVSIZE
+# define IVSIZE INTSIZE
+#endif
+
+# endif
+# else
+# if defined(convex) || defined(uts)
+#ifndef IVTYPE
+# define IVTYPE long long
+#endif
+
+#ifndef IV_MIN
+# define IV_MIN PERL_QUAD_MIN
+#endif
+
+#ifndef IV_MAX
+# define IV_MAX PERL_QUAD_MAX
+#endif
+
+#ifndef UV_MIN
+# define UV_MIN PERL_UQUAD_MIN
+#endif
+
+#ifndef UV_MAX
+# define UV_MAX PERL_UQUAD_MAX
+#endif
+
+# ifdef LONGLONGSIZE
+#ifndef IVSIZE
+# define IVSIZE LONGLONGSIZE
+#endif
+
+# endif
+# else
+#ifndef IVTYPE
+# define IVTYPE long
+#endif
+
+#ifndef IV_MIN
+# define IV_MIN PERL_LONG_MIN
+#endif
+
+#ifndef IV_MAX
+# define IV_MAX PERL_LONG_MAX
+#endif
+
+#ifndef UV_MIN
+# define UV_MIN PERL_ULONG_MIN
+#endif
+
+#ifndef UV_MAX
+# define UV_MAX PERL_ULONG_MAX
+#endif
+
+# ifdef LONGSIZE
+#ifndef IVSIZE
+# define IVSIZE LONGSIZE
+#endif
+
+# endif
+# endif
+# endif
+#ifndef IVSIZE
+# define IVSIZE 8
+#endif
+
+#ifndef PERL_QUAD_MIN
+# define PERL_QUAD_MIN IV_MIN
+#endif
+
+#ifndef PERL_QUAD_MAX
+# define PERL_QUAD_MAX IV_MAX
+#endif
+
+#ifndef PERL_UQUAD_MIN
+# define PERL_UQUAD_MIN UV_MIN
+#endif
+
+#ifndef PERL_UQUAD_MAX
+# define PERL_UQUAD_MAX UV_MAX
+#endif
+
+#else
+#ifndef IVTYPE
+# define IVTYPE long
+#endif
+
+#ifndef IV_MIN
+# define IV_MIN PERL_LONG_MIN
+#endif
+
+#ifndef IV_MAX
+# define IV_MAX PERL_LONG_MAX
+#endif
+
+#ifndef UV_MIN
+# define UV_MIN PERL_ULONG_MIN
+#endif
+
+#ifndef UV_MAX
+# define UV_MAX PERL_ULONG_MAX
+#endif
+
+#endif
+
+#ifndef IVSIZE
+# ifdef LONGSIZE
+# define IVSIZE LONGSIZE
+# else
+# define IVSIZE 4 /* A bold guess, but the best we can make. */
+# endif
+#endif
+#ifndef UVTYPE
+# define UVTYPE unsigned IVTYPE
+#endif
+
+#ifndef UVSIZE
+# define UVSIZE IVSIZE
+#endif
+
+#ifndef sv_setuv
+# define sv_setuv(sv, uv) \
+ STMT_START { \
+ UV TeMpUv = uv; \
+ if (TeMpUv <= IV_MAX) \
+ sv_setiv(sv, TeMpUv); \
+ else \
+ sv_setnv(sv, (double)TeMpUv); \
+ } STMT_END
+#endif
+
+#ifndef newSVuv
+# define newSVuv(uv) ((uv) <= IV_MAX ? newSViv((IV)uv) : newSVnv((NV)uv))
+#endif
+#ifndef sv_2uv
+# define sv_2uv(sv) ((PL_Sv = (sv)), (UV) (SvNOK(PL_Sv) ? SvNV(PL_Sv) : sv_2nv(PL_Sv)))
+#endif
+
+#ifndef SvUVX
+# define SvUVX(sv) ((UV)SvIVX(sv))
+#endif
+
+#ifndef SvUVXx
+# define SvUVXx(sv) SvUVX(sv)
+#endif
+
+#ifndef SvUV
+# define SvUV(sv) (SvIOK(sv) ? SvUVX(sv) : sv_2uv(sv))
+#endif
+
+#ifndef SvUVx
+# define SvUVx(sv) ((PL_Sv = (sv)), SvUV(PL_Sv))
+#endif
+
+/* Hint: sv_uv
+ * Always use the SvUVx() macro instead of sv_uv().
+ */
+#ifndef sv_uv
+# define sv_uv(sv) SvUVx(sv)
+#endif
+#ifndef XST_mUV
+# define XST_mUV(i,v) (ST(i) = sv_2mortal(newSVuv(v)) )
+#endif
+
+#ifndef XSRETURN_UV
+# define XSRETURN_UV(v) STMT_START { XST_mUV(0,v); XSRETURN(1); } STMT_END
+#endif
+#ifndef PUSHu
+# define PUSHu(u) STMT_START { sv_setuv(TARG, (UV)(u)); PUSHTARG; } STMT_END
+#endif
+
+#ifndef XPUSHu
+# define XPUSHu(u) STMT_START { sv_setuv(TARG, (UV)(u)); XPUSHTARG; } STMT_END
+#endif
+
+#if (PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION <= 5))
+/* Replace: 1 */
+# define PL_DBsingle DBsingle
+# define PL_DBsub DBsub
+# define PL_Sv Sv
+# define PL_compiling compiling
+# define PL_copline copline
+# define PL_curcop curcop
+# define PL_curstash curstash
+# define PL_debstash debstash
+# define PL_defgv defgv
+# define PL_diehook diehook
+# define PL_dirty dirty
+# define PL_dowarn dowarn
+# define PL_errgv errgv
+# define PL_hexdigit hexdigit
+# define PL_hints hints
+# define PL_na na
+# define PL_no_modify no_modify
+# define PL_perl_destruct_level perl_destruct_level
+# define PL_perldb perldb
+# define PL_ppaddr ppaddr
+# define PL_rsfp_filters rsfp_filters
+# define PL_rsfp rsfp
+# define PL_stack_base stack_base
+# define PL_stack_sp stack_sp
+# define PL_stdingv stdingv
+# define PL_sv_arenaroot sv_arenaroot
+# define PL_sv_no sv_no
+# define PL_sv_undef sv_undef
+# define PL_sv_yes sv_yes
+# define PL_tainted tainted
+# define PL_tainting tainting
+/* Replace: 0 */
+#endif
+
+#ifndef PERL_UNUSED_DECL
+# ifdef HASATTRIBUTE
+# if (defined(__GNUC__) && defined(__cplusplus)) || defined(__INTEL_COMPILER)
+# define PERL_UNUSED_DECL
+# else
+# define PERL_UNUSED_DECL __attribute__((unused))
+# endif
+# else
+# define PERL_UNUSED_DECL
+# endif
+#endif
+#ifndef NOOP
+# define NOOP (void)0
+#endif
+
+#ifndef dNOOP
+# define dNOOP extern int Perl___notused PERL_UNUSED_DECL
+#endif
+
+#ifndef NVTYPE
+# if defined(USE_LONG_DOUBLE) && defined(HAS_LONG_DOUBLE)
+# define NVTYPE long double
+# else
+# define NVTYPE double
+# endif
+typedef NVTYPE NV;
+#endif
+
+#ifndef INT2PTR
+
+# if (IVSIZE == PTRSIZE) && (UVSIZE == PTRSIZE)
+# define PTRV UV
+# define INT2PTR(any,d) (any)(d)
+# else
+# if PTRSIZE == LONGSIZE
+# define PTRV unsigned long
+# else
+# define PTRV unsigned
+# endif
+# define INT2PTR(any,d) (any)(PTRV)(d)
+# endif
+
+# define NUM2PTR(any,d) (any)(PTRV)(d)
+# define PTR2IV(p) INT2PTR(IV,p)
+# define PTR2UV(p) INT2PTR(UV,p)
+# define PTR2NV(p) NUM2PTR(NV,p)
+
+# if PTRSIZE == LONGSIZE
+# define PTR2ul(p) (unsigned long)(p)
+# else
+# define PTR2ul(p) INT2PTR(unsigned long,p)
+# endif
+
+#endif /* !INT2PTR */
+
+#undef START_EXTERN_C
+#undef END_EXTERN_C
+#undef EXTERN_C
+#ifdef __cplusplus
+# define START_EXTERN_C extern "C" {
+# define END_EXTERN_C }
+# define EXTERN_C extern "C"
+#else
+# define START_EXTERN_C
+# define END_EXTERN_C
+# define EXTERN_C extern
+#endif
+
+#ifndef PERL_GCC_BRACE_GROUPS_FORBIDDEN
+# if defined(__STRICT_ANSI__) && defined(PERL_GCC_PEDANTIC)
+# define PERL_GCC_BRACE_GROUPS_FORBIDDEN
+# endif
+#endif
+
+#undef STMT_START
+#undef STMT_END
+#if defined(__GNUC__) && !defined(PERL_GCC_BRACE_GROUPS_FORBIDDEN) && !defined(__cplusplus)
+# define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
+# define STMT_END )
+#else
+# if defined(VOIDFLAGS) && (VOIDFLAGS) && (defined(sun) || defined(__sun__)) && !defined(__GNUC__)
+# define STMT_START if (1)
+# define STMT_END else (void)0
+# else
+# define STMT_START do
+# define STMT_END while (0)
+# endif
+#endif
+#ifndef boolSV
+# define boolSV(b) ((b) ? &PL_sv_yes : &PL_sv_no)
+#endif
+
+/* DEFSV appears first in 5.004_56 */
+#ifndef DEFSV
+# define DEFSV GvSV(PL_defgv)
+#endif
+
+#ifndef SAVE_DEFSV
+# define SAVE_DEFSV SAVESPTR(GvSV(PL_defgv))
+#endif
+
+/* Older perls (<=5.003) lack AvFILLp */
+#ifndef AvFILLp
+# define AvFILLp AvFILL
+#endif
+#ifndef ERRSV
+# define ERRSV get_sv("@",FALSE)
+#endif
+#ifndef newSVpvn
+# define newSVpvn(data,len) ((data) \
+ ? ((len) ? newSVpv((data), (len)) : newSVpv("", 0)) \
+ : newSV(0))
+#endif
+
+/* Hint: gv_stashpvn
+ * This function's backport doesn't support the length parameter, but
+ * rather ignores it. Portability can only be ensured if the length
+ * parameter is used for speed reasons, but the length can always be
+ * correctly computed from the string argument.
+ */
+#ifndef gv_stashpvn
+# define gv_stashpvn(str,len,create) gv_stashpv(str,create)
+#endif
+
+/* Replace: 1 */
+#ifndef get_cv
+# define get_cv perl_get_cv
+#endif
+
+#ifndef get_sv
+# define get_sv perl_get_sv
+#endif
+
+#ifndef get_av
+# define get_av perl_get_av
+#endif
+
+#ifndef get_hv
+# define get_hv perl_get_hv
+#endif
+
+/* Replace: 0 */
+
+#ifdef HAS_MEMCMP
+#ifndef memNE
+# define memNE(s1,s2,l) (memcmp(s1,s2,l))
+#endif
+
+#ifndef memEQ
+# define memEQ(s1,s2,l) (!memcmp(s1,s2,l))
+#endif
+
+#else
+#ifndef memNE
+# define memNE(s1,s2,l) (bcmp(s1,s2,l))
+#endif
+
+#ifndef memEQ
+# define memEQ(s1,s2,l) (!bcmp(s1,s2,l))
+#endif
+
+#endif
+#ifndef MoveD
+# define MoveD(s,d,n,t) memmove((char*)(d),(char*)(s), (n) * sizeof(t))
+#endif
+
+#ifndef CopyD
+# define CopyD(s,d,n,t) memcpy((char*)(d),(char*)(s), (n) * sizeof(t))
+#endif
+
+#ifdef HAS_MEMSET
+#ifndef ZeroD
+# define ZeroD(d,n,t) memzero((char*)(d), (n) * sizeof(t))
+#endif
+
+#else
+#ifndef ZeroD
+# define ZeroD(d,n,t) ((void)memzero((char*)(d), (n) * sizeof(t)),d)
+#endif
+
+#endif
+#ifndef Poison
+# define Poison(d,n,t) (void)memset((char*)(d), 0xAB, (n) * sizeof(t))
+#endif
+#ifndef dUNDERBAR
+# define dUNDERBAR dNOOP
+#endif
+
+#ifndef UNDERBAR
+# define UNDERBAR DEFSV
+#endif
+#ifndef dAX
+# define dAX I32 ax = MARK - PL_stack_base + 1
+#endif
+
+#ifndef dITEMS
+# define dITEMS I32 items = SP - MARK
+#endif
+#ifndef dXSTARG
+# define dXSTARG SV * targ = sv_newmortal()
+#endif
+#ifndef dTHR
+# define dTHR dNOOP
+#endif
+#ifndef dTHX
+# define dTHX dNOOP
+#endif
+
+#ifndef dTHXa
+# define dTHXa(x) dNOOP
+#endif
+#ifndef pTHX
+# define pTHX void
+#endif
+
+#ifndef pTHX_
+# define pTHX_
+#endif
+
+#ifndef aTHX
+# define aTHX
+#endif
+
+#ifndef aTHX_
+# define aTHX_
+#endif
+#ifndef dTHXoa
+# define dTHXoa(x) dTHXa(x)
+#endif
+#ifndef PUSHmortal
+# define PUSHmortal PUSHs(sv_newmortal())
+#endif
+
+#ifndef mPUSHp
+# define mPUSHp(p,l) sv_setpvn_mg(PUSHmortal, (p), (l))
+#endif
+
+#ifndef mPUSHn
+# define mPUSHn(n) sv_setnv_mg(PUSHmortal, (NV)(n))
+#endif
+
+#ifndef mPUSHi
+# define mPUSHi(i) sv_setiv_mg(PUSHmortal, (IV)(i))
+#endif
+
+#ifndef mPUSHu
+# define mPUSHu(u) sv_setuv_mg(PUSHmortal, (UV)(u))
+#endif
+#ifndef XPUSHmortal
+# define XPUSHmortal XPUSHs(sv_newmortal())
+#endif
+
+#ifndef mXPUSHp
+# define mXPUSHp(p,l) STMT_START { EXTEND(sp,1); sv_setpvn_mg(PUSHmortal, (p), (l)); } STMT_END
+#endif
+
+#ifndef mXPUSHn
+# define mXPUSHn(n) STMT_START { EXTEND(sp,1); sv_setnv_mg(PUSHmortal, (NV)(n)); } STMT_END
+#endif
+
+#ifndef mXPUSHi
+# define mXPUSHi(i) STMT_START { EXTEND(sp,1); sv_setiv_mg(PUSHmortal, (IV)(i)); } STMT_END
+#endif
+
+#ifndef mXPUSHu
+# define mXPUSHu(u) STMT_START { EXTEND(sp,1); sv_setuv_mg(PUSHmortal, (UV)(u)); } STMT_END
+#endif
+
+/* Replace: 1 */
+#ifndef call_sv
+# define call_sv perl_call_sv
+#endif
+
+#ifndef call_pv
+# define call_pv perl_call_pv
+#endif
+
+#ifndef call_argv
+# define call_argv perl_call_argv
+#endif
+
+#ifndef call_method
+# define call_method perl_call_method
+#endif
+#ifndef eval_sv
+# define eval_sv perl_eval_sv
+#endif
+
+/* Replace: 0 */
+
+/* Replace perl_eval_pv with eval_pv */
+/* eval_pv depends on eval_sv */
+
+#ifndef eval_pv
+#if defined(NEED_eval_pv)
+static SV* DPPP_(my_eval_pv)(char *p, I32 croak_on_error);
+static
+#else
+extern SV* DPPP_(my_eval_pv)(char *p, I32 croak_on_error);
+#endif
+
+#ifdef eval_pv
+# undef eval_pv
+#endif
+#define eval_pv(a,b) DPPP_(my_eval_pv)(aTHX_ a,b)
+#define Perl_eval_pv DPPP_(my_eval_pv)
+
+#if defined(NEED_eval_pv) || defined(NEED_eval_pv_GLOBAL)
+
+SV*
+DPPP_(my_eval_pv)(char *p, I32 croak_on_error)
+{
+ dSP;
+ SV* sv = newSVpv(p, 0);
+
+ PUSHMARK(sp);
+ eval_sv(sv, G_SCALAR);
+ SvREFCNT_dec(sv);
+
+ SPAGAIN;
+ sv = POPs;
+ PUTBACK;
+
+ if (croak_on_error && SvTRUE(GvSV(errgv)))
+ croak(SvPVx(GvSV(errgv), na));
+
+ return sv;
+}
+
+#endif
+#endif
+#ifndef newRV_inc
+# define newRV_inc(sv) newRV(sv) /* Replace */
+#endif
+
+#ifndef newRV_noinc
+#if defined(NEED_newRV_noinc)
+static SV * DPPP_(my_newRV_noinc)(SV *sv);
+static
+#else
+extern SV * DPPP_(my_newRV_noinc)(SV *sv);
+#endif
+
+#ifdef newRV_noinc
+# undef newRV_noinc
+#endif
+#define newRV_noinc(a) DPPP_(my_newRV_noinc)(aTHX_ a)
+#define Perl_newRV_noinc DPPP_(my_newRV_noinc)
+
+#if defined(NEED_newRV_noinc) || defined(NEED_newRV_noinc_GLOBAL)
+SV *
+DPPP_(my_newRV_noinc)(SV *sv)
+{
+ SV *rv = (SV *)newRV(sv);
+ SvREFCNT_dec(sv);
+ return rv;
+}
+#endif
+#endif
+
+/* Hint: newCONSTSUB
+ * Returns a CV* as of perl-5.7.1. This return value is not supported
+ * by Devel::PPPort.
+ */
+
+/* newCONSTSUB from IO.xs is in the core starting with 5.004_63 */
+#if ((PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION < 63))) && ((PERL_VERSION != 4) || (PERL_SUBVERSION != 5))
+#if defined(NEED_newCONSTSUB)
+static void DPPP_(my_newCONSTSUB)(HV *stash, char *name, SV *sv);
+static
+#else
+extern void DPPP_(my_newCONSTSUB)(HV *stash, char *name, SV *sv);
+#endif
+
+#ifdef newCONSTSUB
+# undef newCONSTSUB
+#endif
+#define newCONSTSUB(a,b,c) DPPP_(my_newCONSTSUB)(aTHX_ a,b,c)
+#define Perl_newCONSTSUB DPPP_(my_newCONSTSUB)
+
+#if defined(NEED_newCONSTSUB) || defined(NEED_newCONSTSUB_GLOBAL)
+
+void
+DPPP_(my_newCONSTSUB)(HV *stash, char *name, SV *sv)
+{
+ U32 oldhints = PL_hints;
+ HV *old_cop_stash = PL_curcop->cop_stash;
+ HV *old_curstash = PL_curstash;
+ line_t oldline = PL_curcop->cop_line;
+ PL_curcop->cop_line = PL_copline;
+
+ PL_hints &= ~HINT_BLOCK_SCOPE;
+ if (stash)
+ PL_curstash = PL_curcop->cop_stash = stash;
+
+ newSUB(
+
+#if ((PERL_VERSION < 3) || ((PERL_VERSION == 3) && (PERL_SUBVERSION < 22)))
+ start_subparse(),
+#elif ((PERL_VERSION == 3) && (PERL_SUBVERSION == 22))
+ start_subparse(0),
+#else /* 5.003_23 onwards */
+ start_subparse(FALSE, 0),
+#endif
+
+ newSVOP(OP_CONST, 0, newSVpv(name,0)),
+ newSVOP(OP_CONST, 0, &PL_sv_no), /* SvPV(&PL_sv_no) == "" -- GMB */
+ newSTATEOP(0, Nullch, newSVOP(OP_CONST, 0, sv))
+ );
+
+ PL_hints = oldhints;
+ PL_curcop->cop_stash = old_cop_stash;
+ PL_curstash = old_curstash;
+ PL_curcop->cop_line = oldline;
+}
+#endif
+#endif
+
+/*
+ * Boilerplate macros for initializing and accessing interpreter-local
+ * data from C. All statics in extensions should be reworked to use
+ * this, if you want to make the extension thread-safe. See ext/re/re.xs
+ * for an example of the use of these macros.
+ *
+ * Code that uses these macros is responsible for the following:
+ * 1. #define MY_CXT_KEY to a unique string, e.g. "DynaLoader_guts"
+ * 2. Declare a typedef named my_cxt_t that is a structure that contains
+ * all the data that needs to be interpreter-local.
+ * 3. Use the START_MY_CXT macro after the declaration of my_cxt_t.
+ * 4. Use the MY_CXT_INIT macro such that it is called exactly once
+ * (typically put in the BOOT: section).
+ * 5. Use the members of the my_cxt_t structure everywhere as
+ * MY_CXT.member.
+ * 6. Use the dMY_CXT macro (a declaration) in all the functions that
+ * access MY_CXT.
+ */
+
+#if defined(MULTIPLICITY) || defined(PERL_OBJECT) || \
+ defined(PERL_CAPI) || defined(PERL_IMPLICIT_CONTEXT)
+
+#ifndef START_MY_CXT
+
+/* This must appear in all extensions that define a my_cxt_t structure,
+ * right after the definition (i.e. at file scope). The non-threads
+ * case below uses it to declare the data as static. */
+#define START_MY_CXT
+
+#if (PERL_VERSION < 4 || (PERL_VERSION == 4 && PERL_SUBVERSION < 68 ))
+/* Fetches the SV that keeps the per-interpreter data. */
+#define dMY_CXT_SV \
+ SV *my_cxt_sv = get_sv(MY_CXT_KEY, FALSE)
+#else /* >= perl5.004_68 */
+#define dMY_CXT_SV \
+ SV *my_cxt_sv = *hv_fetch(PL_modglobal, MY_CXT_KEY, \
+ sizeof(MY_CXT_KEY)-1, TRUE)
+#endif /* < perl5.004_68 */
+
+/* This declaration should be used within all functions that use the
+ * interpreter-local data. */
+#define dMY_CXT \
+ dMY_CXT_SV; \
+ my_cxt_t *my_cxtp = INT2PTR(my_cxt_t*,SvUV(my_cxt_sv))
+
+/* Creates and zeroes the per-interpreter data.
+ * (We allocate my_cxtp in a Perl SV so that it will be released when
+ * the interpreter goes away.) */
+#define MY_CXT_INIT \
+ dMY_CXT_SV; \
+ /* newSV() allocates one more than needed */ \
+ my_cxt_t *my_cxtp = (my_cxt_t*)SvPVX(newSV(sizeof(my_cxt_t)-1));\
+ Zero(my_cxtp, 1, my_cxt_t); \
+ sv_setuv(my_cxt_sv, PTR2UV(my_cxtp))
+
+/* This macro must be used to access members of the my_cxt_t structure.
+ * e.g. MYCXT.some_data */
+#define MY_CXT (*my_cxtp)
+
+/* Judicious use of these macros can reduce the number of times dMY_CXT
+ * is used. Use is similar to pTHX, aTHX etc. */
+#define pMY_CXT my_cxt_t *my_cxtp
+#define pMY_CXT_ pMY_CXT,
+#define _pMY_CXT ,pMY_CXT
+#define aMY_CXT my_cxtp
+#define aMY_CXT_ aMY_CXT,
+#define _aMY_CXT ,aMY_CXT
+
+#endif /* START_MY_CXT */
+
+#ifndef MY_CXT_CLONE
+/* Clones the per-interpreter data. */
+#define MY_CXT_CLONE \
+ dMY_CXT_SV; \
+ my_cxt_t *my_cxtp = (my_cxt_t*)SvPVX(newSV(sizeof(my_cxt_t)-1));\
+ Copy(INT2PTR(my_cxt_t*, SvUV(my_cxt_sv)), my_cxtp, 1, my_cxt_t);\
+ sv_setuv(my_cxt_sv, PTR2UV(my_cxtp))
+#endif
+
+#else /* single interpreter */
+
+#ifndef START_MY_CXT
+
+#define START_MY_CXT static my_cxt_t my_cxt;
+#define dMY_CXT_SV dNOOP
+#define dMY_CXT dNOOP
+#define MY_CXT_INIT NOOP
+#define MY_CXT my_cxt
+
+#define pMY_CXT void
+#define pMY_CXT_
+#define _pMY_CXT
+#define aMY_CXT
+#define aMY_CXT_
+#define _aMY_CXT
+
+#endif /* START_MY_CXT */
+
+#ifndef MY_CXT_CLONE
+#define MY_CXT_CLONE NOOP
+#endif
+
+#endif
+
+#ifndef IVdf
+# if IVSIZE == LONGSIZE
+# define IVdf "ld"
+# define UVuf "lu"
+# define UVof "lo"
+# define UVxf "lx"
+# define UVXf "lX"
+# else
+# if IVSIZE == INTSIZE
+# define IVdf "d"
+# define UVuf "u"
+# define UVof "o"
+# define UVxf "x"
+# define UVXf "X"
+# endif
+# endif
+#endif
+
+#ifndef NVef
+# if defined(USE_LONG_DOUBLE) && defined(HAS_LONG_DOUBLE) && \
+ defined(PERL_PRIfldbl) /* Not very likely, but let's try anyway. */
+# define NVef PERL_PRIeldbl
+# define NVff PERL_PRIfldbl
+# define NVgf PERL_PRIgldbl
+# else
+# define NVef "e"
+# define NVff "f"
+# define NVgf "g"
+# endif
+#endif
+
+#ifndef SvPV_nolen
+
+#if defined(NEED_sv_2pv_nolen)
+static char * DPPP_(my_sv_2pv_nolen)(pTHX_ register SV *sv);
+static
+#else
+extern char * DPPP_(my_sv_2pv_nolen)(pTHX_ register SV *sv);
+#endif
+
+#ifdef sv_2pv_nolen
+# undef sv_2pv_nolen
+#endif
+#define sv_2pv_nolen(a) DPPP_(my_sv_2pv_nolen)(aTHX_ a)
+#define Perl_sv_2pv_nolen DPPP_(my_sv_2pv_nolen)
+
+#if defined(NEED_sv_2pv_nolen) || defined(NEED_sv_2pv_nolen_GLOBAL)
+
+char *
+DPPP_(my_sv_2pv_nolen)(pTHX_ register SV *sv)
+{
+ STRLEN n_a;
+ return sv_2pv(sv, &n_a);
+}
+
+#endif
+
+/* Hint: sv_2pv_nolen
+ * Use the SvPV_nolen() macro instead of sv_2pv_nolen().
+ */
+
+/* SvPV_nolen depends on sv_2pv_nolen */
+#define SvPV_nolen(sv) \
+ ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \
+ ? SvPVX(sv) : sv_2pv_nolen(sv))
+
+#endif
+
+#ifdef SvPVbyte
+
+/* Hint: SvPVbyte
+ * Does not work in perl-5.6.1, ppport.h implements a version
+ * borrowed from perl-5.7.3.
+ */
+
+#if ((PERL_VERSION < 7) || ((PERL_VERSION == 7) && (PERL_SUBVERSION < 0)))
+
+#if defined(NEED_sv_2pvbyte)
+static char * DPPP_(my_sv_2pvbyte)(pTHX_ register SV *sv, STRLEN *lp);
+static
+#else
+extern char * DPPP_(my_sv_2pvbyte)(pTHX_ register SV *sv, STRLEN *lp);
+#endif
+
+#ifdef sv_2pvbyte
+# undef sv_2pvbyte
+#endif
+#define sv_2pvbyte(a,b) DPPP_(my_sv_2pvbyte)(aTHX_ a,b)
+#define Perl_sv_2pvbyte DPPP_(my_sv_2pvbyte)
+
+#if defined(NEED_sv_2pvbyte) || defined(NEED_sv_2pvbyte_GLOBAL)
+
+char *
+DPPP_(my_sv_2pvbyte)(pTHX_ register SV *sv, STRLEN *lp)
+{
+ sv_utf8_downgrade(sv,0);
+ return SvPV(sv,*lp);
+}
+
+#endif
+
+/* Hint: sv_2pvbyte
+ * Use the SvPVbyte() macro instead of sv_2pvbyte().
+ */
+
+#undef SvPVbyte
+
+/* SvPVbyte depends on sv_2pvbyte */
+#define SvPVbyte(sv, lp) \
+ ((SvFLAGS(sv) & (SVf_POK|SVf_UTF8)) == (SVf_POK) \
+ ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pvbyte(sv, &lp))
+
+#endif
+
+#else
+
+# define SvPVbyte SvPV
+# define sv_2pvbyte sv_2pv
+
+#endif
+
+/* sv_2pvbyte_nolen depends on sv_2pv_nolen */
+#ifndef sv_2pvbyte_nolen
+# define sv_2pvbyte_nolen sv_2pv_nolen
+#endif
+
+/* Hint: sv_pvn
+ * Always use the SvPV() macro instead of sv_pvn().
+ */
+#ifndef sv_pvn
+# define sv_pvn(sv, len) SvPV(sv, len)
+#endif
+
+/* Hint: sv_pvn_force
+ * Always use the SvPV_force() macro instead of sv_pvn_force().
+ */
+#ifndef sv_pvn_force
+# define sv_pvn_force(sv, len) SvPV_force(sv, len)
+#endif
+
+#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(vnewSVpvf)
+#if defined(NEED_vnewSVpvf)
+static SV * DPPP_(my_vnewSVpvf)(pTHX_ const char * pat, va_list * args);
+static
+#else
+extern SV * DPPP_(my_vnewSVpvf)(pTHX_ const char * pat, va_list * args);
+#endif
+
+#ifdef vnewSVpvf
+# undef vnewSVpvf
+#endif
+#define vnewSVpvf(a,b) DPPP_(my_vnewSVpvf)(aTHX_ a,b)
+#define Perl_vnewSVpvf DPPP_(my_vnewSVpvf)
+
+#if defined(NEED_vnewSVpvf) || defined(NEED_vnewSVpvf_GLOBAL)
+
+SV *
+DPPP_(my_vnewSVpvf)(pTHX_ const char *pat, va_list *args)
+{
+ register SV *sv = newSV(0);
+ sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*));
+ return sv;
+}
+
+#endif
+#endif
+
+/* sv_vcatpvf depends on sv_vcatpvfn */
+#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_vcatpvf)
+# define sv_vcatpvf(sv, pat, args) sv_vcatpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*))
+#endif
+
+/* sv_vsetpvf depends on sv_vsetpvfn */
+#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_vsetpvf)
+# define sv_vsetpvf(sv, pat, args) sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*))
+#endif
+
+/* sv_catpvf_mg depends on sv_vcatpvfn, sv_catpvf_mg_nocontext */
+#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_catpvf_mg)
+#if defined(NEED_sv_catpvf_mg)
+static void DPPP_(my_sv_catpvf_mg)(pTHX_ SV * sv, const char * pat, ...);
+static
+#else
+extern void DPPP_(my_sv_catpvf_mg)(pTHX_ SV * sv, const char * pat, ...);
+#endif
+
+#define Perl_sv_catpvf_mg DPPP_(my_sv_catpvf_mg)
+
+#if defined(NEED_sv_catpvf_mg) || defined(NEED_sv_catpvf_mg_GLOBAL)
+
+void
+DPPP_(my_sv_catpvf_mg)(pTHX_ SV *sv, const char *pat, ...)
+{
+ va_list args;
+ va_start(args, pat);
+ sv_vcatpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*));
+ SvSETMAGIC(sv);
+ va_end(args);
+}
+
+#endif
+#endif
+
+/* sv_catpvf_mg_nocontext depends on sv_vcatpvfn */
+#ifdef PERL_IMPLICIT_CONTEXT
+#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_catpvf_mg_nocontext)
+#if defined(NEED_sv_catpvf_mg_nocontext)
+static void DPPP_(my_sv_catpvf_mg_nocontext)(SV * sv, const char * pat, ...);
+static
+#else
+extern void DPPP_(my_sv_catpvf_mg_nocontext)(SV * sv, const char * pat, ...);
+#endif
+
+#define sv_catpvf_mg_nocontext DPPP_(my_sv_catpvf_mg_nocontext)
+#define Perl_sv_catpvf_mg_nocontext DPPP_(my_sv_catpvf_mg_nocontext)
+
+#if defined(NEED_sv_catpvf_mg_nocontext) || defined(NEED_sv_catpvf_mg_nocontext_GLOBAL)
+
+void
+DPPP_(my_sv_catpvf_mg_nocontext)(SV *sv, const char *pat, ...)
+{
+ dTHX;
+ va_list args;
+ va_start(args, pat);
+ sv_vcatpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*));
+ SvSETMAGIC(sv);
+ va_end(args);
+}
+
+#endif
+#endif
+#endif
+
+#ifndef sv_catpvf_mg
+# ifdef PERL_IMPLICIT_CONTEXT
+# define sv_catpvf_mg Perl_sv_catpvf_mg_nocontext
+# else
+# define sv_catpvf_mg Perl_sv_catpvf_mg
+# endif
+#endif
+
+/* sv_vcatpvf_mg depends on sv_vcatpvfn */
+#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_vcatpvf_mg)
+# define sv_vcatpvf_mg(sv, pat, args) \
+ STMT_START { \
+ sv_vcatpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); \
+ SvSETMAGIC(sv); \
+ } STMT_END
+#endif
+
+/* sv_setpvf_mg depends on sv_vsetpvfn, sv_setpvf_mg_nocontext */
+#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_setpvf_mg)
+#if defined(NEED_sv_setpvf_mg)
+static void DPPP_(my_sv_setpvf_mg)(pTHX_ SV * sv, const char * pat, ...);
+static
+#else
+extern void DPPP_(my_sv_setpvf_mg)(pTHX_ SV * sv, const char * pat, ...);
+#endif
+
+#define Perl_sv_setpvf_mg DPPP_(my_sv_setpvf_mg)
+
+#if defined(NEED_sv_setpvf_mg) || defined(NEED_sv_setpvf_mg_GLOBAL)
+
+void
+DPPP_(my_sv_setpvf_mg)(pTHX_ SV *sv, const char *pat, ...)
+{
+ va_list args;
+ va_start(args, pat);
+ sv_vsetpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*));
+ SvSETMAGIC(sv);
+ va_end(args);
+}
+
+#endif
+#endif
+
+/* sv_setpvf_mg_nocontext depends on sv_vsetpvfn */
+#ifdef PERL_IMPLICIT_CONTEXT
+#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_setpvf_mg_nocontext)
+#if defined(NEED_sv_setpvf_mg_nocontext)
+static void DPPP_(my_sv_setpvf_mg_nocontext)(SV * sv, const char * pat, ...);
+static
+#else
+extern void DPPP_(my_sv_setpvf_mg_nocontext)(SV * sv, const char * pat, ...);
+#endif
+
+#define sv_setpvf_mg_nocontext DPPP_(my_sv_setpvf_mg_nocontext)
+#define Perl_sv_setpvf_mg_nocontext DPPP_(my_sv_setpvf_mg_nocontext)
+
+#if defined(NEED_sv_setpvf_mg_nocontext) || defined(NEED_sv_setpvf_mg_nocontext_GLOBAL)
+
+void
+DPPP_(my_sv_setpvf_mg_nocontext)(SV *sv, const char *pat, ...)
+{
+ dTHX;
+ va_list args;
+ va_start(args, pat);
+ sv_vsetpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*));
+ SvSETMAGIC(sv);
+ va_end(args);
+}
+
+#endif
+#endif
+#endif
+
+#ifndef sv_setpvf_mg
+# ifdef PERL_IMPLICIT_CONTEXT
+# define sv_setpvf_mg Perl_sv_setpvf_mg_nocontext
+# else
+# define sv_setpvf_mg Perl_sv_setpvf_mg
+# endif
+#endif
+
+/* sv_vsetpvf_mg depends on sv_vsetpvfn */
+#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_vsetpvf_mg)
+# define sv_vsetpvf_mg(sv, pat, args) \
+ STMT_START { \
+ sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); \
+ SvSETMAGIC(sv); \
+ } STMT_END
+#endif
+#ifndef SvGETMAGIC
+# define SvGETMAGIC(x) STMT_START { if (SvGMAGICAL(x)) mg_get(x); } STMT_END
+#endif
+#ifndef PERL_MAGIC_sv
+# define PERL_MAGIC_sv '\0'
+#endif
+
+#ifndef PERL_MAGIC_overload
+# define PERL_MAGIC_overload 'A'
+#endif
+
+#ifndef PERL_MAGIC_overload_elem
+# define PERL_MAGIC_overload_elem 'a'
+#endif
+
+#ifndef PERL_MAGIC_overload_table
+# define PERL_MAGIC_overload_table 'c'
+#endif
+
+#ifndef PERL_MAGIC_bm
+# define PERL_MAGIC_bm 'B'
+#endif
+
+#ifndef PERL_MAGIC_regdata
+# define PERL_MAGIC_regdata 'D'
+#endif
+
+#ifndef PERL_MAGIC_regdatum
+# define PERL_MAGIC_regdatum 'd'
+#endif
+
+#ifndef PERL_MAGIC_env
+# define PERL_MAGIC_env 'E'
+#endif
+
+#ifndef PERL_MAGIC_envelem
+# define PERL_MAGIC_envelem 'e'
+#endif
+
+#ifndef PERL_MAGIC_fm
+# define PERL_MAGIC_fm 'f'
+#endif
+
+#ifndef PERL_MAGIC_regex_global
+# define PERL_MAGIC_regex_global 'g'
+#endif
+
+#ifndef PERL_MAGIC_isa
+# define PERL_MAGIC_isa 'I'
+#endif
+
+#ifndef PERL_MAGIC_isaelem
+# define PERL_MAGIC_isaelem 'i'
+#endif
+
+#ifndef PERL_MAGIC_nkeys
+# define PERL_MAGIC_nkeys 'k'
+#endif
+
+#ifndef PERL_MAGIC_dbfile
+# define PERL_MAGIC_dbfile 'L'
+#endif
+
+#ifndef PERL_MAGIC_dbline
+# define PERL_MAGIC_dbline 'l'
+#endif
+
+#ifndef PERL_MAGIC_mutex
+# define PERL_MAGIC_mutex 'm'
+#endif
+
+#ifndef PERL_MAGIC_shared
+# define PERL_MAGIC_shared 'N'
+#endif
+
+#ifndef PERL_MAGIC_shared_scalar
+# define PERL_MAGIC_shared_scalar 'n'
+#endif
+
+#ifndef PERL_MAGIC_collxfrm
+# define PERL_MAGIC_collxfrm 'o'
+#endif
+
+#ifndef PERL_MAGIC_tied
+# define PERL_MAGIC_tied 'P'
+#endif
+
+#ifndef PERL_MAGIC_tiedelem
+# define PERL_MAGIC_tiedelem 'p'
+#endif
+
+#ifndef PERL_MAGIC_tiedscalar
+# define PERL_MAGIC_tiedscalar 'q'
+#endif
+
+#ifndef PERL_MAGIC_qr
+# define PERL_MAGIC_qr 'r'
+#endif
+
+#ifndef PERL_MAGIC_sig
+# define PERL_MAGIC_sig 'S'
+#endif
+
+#ifndef PERL_MAGIC_sigelem
+# define PERL_MAGIC_sigelem 's'
+#endif
+
+#ifndef PERL_MAGIC_taint
+# define PERL_MAGIC_taint 't'
+#endif
+
+#ifndef PERL_MAGIC_uvar
+# define PERL_MAGIC_uvar 'U'
+#endif
+
+#ifndef PERL_MAGIC_uvar_elem
+# define PERL_MAGIC_uvar_elem 'u'
+#endif
+
+#ifndef PERL_MAGIC_vstring
+# define PERL_MAGIC_vstring 'V'
+#endif
+
+#ifndef PERL_MAGIC_vec
+# define PERL_MAGIC_vec 'v'
+#endif
+
+#ifndef PERL_MAGIC_utf8
+# define PERL_MAGIC_utf8 'w'
+#endif
+
+#ifndef PERL_MAGIC_substr
+# define PERL_MAGIC_substr 'x'
+#endif
+
+#ifndef PERL_MAGIC_defelem
+# define PERL_MAGIC_defelem 'y'
+#endif
+
+#ifndef PERL_MAGIC_glob
+# define PERL_MAGIC_glob '*'
+#endif
+
+#ifndef PERL_MAGIC_arylen
+# define PERL_MAGIC_arylen '#'
+#endif
+
+#ifndef PERL_MAGIC_pos
+# define PERL_MAGIC_pos '.'
+#endif
+
+#ifndef PERL_MAGIC_backref
+# define PERL_MAGIC_backref '<'
+#endif
+
+#ifndef PERL_MAGIC_ext
+# define PERL_MAGIC_ext '~'
+#endif
+
+/* That's the best we can do... */
+#ifndef SvPV_force_nomg
+# define SvPV_force_nomg SvPV_force
+#endif
+
+#ifndef SvPV_nomg
+# define SvPV_nomg SvPV
+#endif
+
+#ifndef sv_catpvn_nomg
+# define sv_catpvn_nomg sv_catpvn
+#endif
+
+#ifndef sv_catsv_nomg
+# define sv_catsv_nomg sv_catsv
+#endif
+
+#ifndef sv_setsv_nomg
+# define sv_setsv_nomg sv_setsv
+#endif
+
+#ifndef sv_pvn_nomg
+# define sv_pvn_nomg sv_pvn
+#endif
+
+#ifndef SvIV_nomg
+# define SvIV_nomg SvIV
+#endif
+
+#ifndef SvUV_nomg
+# define SvUV_nomg SvUV
+#endif
+
+#ifndef sv_catpv_mg
+# define sv_catpv_mg(sv, ptr) \
+ STMT_START { \
+ SV *TeMpSv = sv; \
+ sv_catpv(TeMpSv,ptr); \
+ SvSETMAGIC(TeMpSv); \
+ } STMT_END
+#endif
+
+#ifndef sv_catpvn_mg
+# define sv_catpvn_mg(sv, ptr, len) \
+ STMT_START { \
+ SV *TeMpSv = sv; \
+ sv_catpvn(TeMpSv,ptr,len); \
+ SvSETMAGIC(TeMpSv); \
+ } STMT_END
+#endif
+
+#ifndef sv_catsv_mg
+# define sv_catsv_mg(dsv, ssv) \
+ STMT_START { \
+ SV *TeMpSv = dsv; \
+ sv_catsv(TeMpSv,ssv); \
+ SvSETMAGIC(TeMpSv); \
+ } STMT_END
+#endif
+
+#ifndef sv_setiv_mg
+# define sv_setiv_mg(sv, i) \
+ STMT_START { \
+ SV *TeMpSv = sv; \
+ sv_setiv(TeMpSv,i); \
+ SvSETMAGIC(TeMpSv); \
+ } STMT_END
+#endif
+
+#ifndef sv_setnv_mg
+# define sv_setnv_mg(sv, num) \
+ STMT_START { \
+ SV *TeMpSv = sv; \
+ sv_setnv(TeMpSv,num); \
+ SvSETMAGIC(TeMpSv); \
+ } STMT_END
+#endif
+
+#ifndef sv_setpv_mg
+# define sv_setpv_mg(sv, ptr) \
+ STMT_START { \
+ SV *TeMpSv = sv; \
+ sv_setpv(TeMpSv,ptr); \
+ SvSETMAGIC(TeMpSv); \
+ } STMT_END
+#endif
+
+#ifndef sv_setpvn_mg
+# define sv_setpvn_mg(sv, ptr, len) \
+ STMT_START { \
+ SV *TeMpSv = sv; \
+ sv_setpvn(TeMpSv,ptr,len); \
+ SvSETMAGIC(TeMpSv); \
+ } STMT_END
+#endif
+
+#ifndef sv_setsv_mg
+# define sv_setsv_mg(dsv, ssv) \
+ STMT_START { \
+ SV *TeMpSv = dsv; \
+ sv_setsv(TeMpSv,ssv); \
+ SvSETMAGIC(TeMpSv); \
+ } STMT_END
+#endif
+
+#ifndef sv_setuv_mg
+# define sv_setuv_mg(sv, i) \
+ STMT_START { \
+ SV *TeMpSv = sv; \
+ sv_setuv(TeMpSv,i); \
+ SvSETMAGIC(TeMpSv); \
+ } STMT_END
+#endif
+
+#ifndef sv_usepvn_mg
+# define sv_usepvn_mg(sv, ptr, len) \
+ STMT_START { \
+ SV *TeMpSv = sv; \
+ sv_usepvn(TeMpSv,ptr,len); \
+ SvSETMAGIC(TeMpSv); \
+ } STMT_END
+#endif
+
+#ifdef USE_ITHREADS
+#ifndef CopFILE
+# define CopFILE(c) ((c)->cop_file)
+#endif
+
+#ifndef CopFILEGV
+# define CopFILEGV(c) (CopFILE(c) ? gv_fetchfile(CopFILE(c)) : Nullgv)
+#endif
+
+#ifndef CopFILE_set
+# define CopFILE_set(c,pv) ((c)->cop_file = savepv(pv))
+#endif
+
+#ifndef CopFILESV
+# define CopFILESV(c) (CopFILE(c) ? GvSV(gv_fetchfile(CopFILE(c))) : Nullsv)
+#endif
+
+#ifndef CopFILEAV
+# define CopFILEAV(c) (CopFILE(c) ? GvAV(gv_fetchfile(CopFILE(c))) : Nullav)
+#endif
+
+#ifndef CopSTASHPV
+# define CopSTASHPV(c) ((c)->cop_stashpv)
+#endif
+
+#ifndef CopSTASHPV_set
+# define CopSTASHPV_set(c,pv) ((c)->cop_stashpv = ((pv) ? savepv(pv) : Nullch))
+#endif
+
+#ifndef CopSTASH
+# define CopSTASH(c) (CopSTASHPV(c) ? gv_stashpv(CopSTASHPV(c),GV_ADD) : Nullhv)
+#endif
+
+#ifndef CopSTASH_set
+# define CopSTASH_set(c,hv) CopSTASHPV_set(c, (hv) ? HvNAME(hv) : Nullch)
+#endif
+
+#ifndef CopSTASH_eq
+# define CopSTASH_eq(c,hv) ((hv) && (CopSTASHPV(c) == HvNAME(hv) \
+ || (CopSTASHPV(c) && HvNAME(hv) \
+ && strEQ(CopSTASHPV(c), HvNAME(hv)))))
+#endif
+
+#else
+#ifndef CopFILEGV
+# define CopFILEGV(c) ((c)->cop_filegv)
+#endif
+
+#ifndef CopFILEGV_set
+# define CopFILEGV_set(c,gv) ((c)->cop_filegv = (GV*)SvREFCNT_inc(gv))
+#endif
+
+#ifndef CopFILE_set
+# define CopFILE_set(c,pv) CopFILEGV_set((c), gv_fetchfile(pv))
+#endif
+
+#ifndef CopFILESV
+# define CopFILESV(c) (CopFILEGV(c) ? GvSV(CopFILEGV(c)) : Nullsv)
+#endif
+
+#ifndef CopFILEAV
+# define CopFILEAV(c) (CopFILEGV(c) ? GvAV(CopFILEGV(c)) : Nullav)
+#endif
+
+#ifndef CopFILE
+# define CopFILE(c) (CopFILESV(c) ? SvPVX(CopFILESV(c)) : Nullch)
+#endif
+
+#ifndef CopSTASH
+# define CopSTASH(c) ((c)->cop_stash)
+#endif
+
+#ifndef CopSTASH_set
+# define CopSTASH_set(c,hv) ((c)->cop_stash = (hv))
+#endif
+
+#ifndef CopSTASHPV
+# define CopSTASHPV(c) (CopSTASH(c) ? HvNAME(CopSTASH(c)) : Nullch)
+#endif
+
+#ifndef CopSTASHPV_set
+# define CopSTASHPV_set(c,pv) CopSTASH_set((c), gv_stashpv(pv,GV_ADD))
+#endif
+
+#ifndef CopSTASH_eq
+# define CopSTASH_eq(c,hv) (CopSTASH(c) == (hv))
+#endif
+
+#endif /* USE_ITHREADS */
+#ifndef IN_PERL_COMPILETIME
+# define IN_PERL_COMPILETIME (PL_curcop == &PL_compiling)
+#endif
+
+#ifndef IN_LOCALE_RUNTIME
+# define IN_LOCALE_RUNTIME (PL_curcop->op_private & HINT_LOCALE)
+#endif
+
+#ifndef IN_LOCALE_COMPILETIME
+# define IN_LOCALE_COMPILETIME (PL_hints & HINT_LOCALE)
+#endif
+
+#ifndef IN_LOCALE
+# define IN_LOCALE (IN_PERL_COMPILETIME ? IN_LOCALE_COMPILETIME : IN_LOCALE_RUNTIME)
+#endif
+#ifndef IS_NUMBER_IN_UV
+# define IS_NUMBER_IN_UV 0x01
+#endif
+
+#ifndef IS_NUMBER_GREATER_THAN_UV_MAX
+# define IS_NUMBER_GREATER_THAN_UV_MAX 0x02
+#endif
+
+#ifndef IS_NUMBER_NOT_INT
+# define IS_NUMBER_NOT_INT 0x04
+#endif
+
+#ifndef IS_NUMBER_NEG
+# define IS_NUMBER_NEG 0x08
+#endif
+
+#ifndef IS_NUMBER_INFINITY
+# define IS_NUMBER_INFINITY 0x10
+#endif
+
+#ifndef IS_NUMBER_NAN
+# define IS_NUMBER_NAN 0x20
+#endif
+
+/* GROK_NUMERIC_RADIX depends on grok_numeric_radix */
+#ifndef GROK_NUMERIC_RADIX
+# define GROK_NUMERIC_RADIX(sp, send) grok_numeric_radix(sp, send)
+#endif
+#ifndef PERL_SCAN_GREATER_THAN_UV_MAX
+# define PERL_SCAN_GREATER_THAN_UV_MAX 0x02
+#endif
+
+#ifndef PERL_SCAN_SILENT_ILLDIGIT
+# define PERL_SCAN_SILENT_ILLDIGIT 0x04
+#endif
+
+#ifndef PERL_SCAN_ALLOW_UNDERSCORES
+# define PERL_SCAN_ALLOW_UNDERSCORES 0x01
+#endif
+
+#ifndef PERL_SCAN_DISALLOW_PREFIX
+# define PERL_SCAN_DISALLOW_PREFIX 0x02
+#endif
+
+#ifndef grok_numeric_radix
+#if defined(NEED_grok_numeric_radix)
+static bool DPPP_(my_grok_numeric_radix)(pTHX_ const char ** sp, const char * send);
+static
+#else
+extern bool DPPP_(my_grok_numeric_radix)(pTHX_ const char ** sp, const char * send);
+#endif
+
+#ifdef grok_numeric_radix
+# undef grok_numeric_radix
+#endif
+#define grok_numeric_radix(a,b) DPPP_(my_grok_numeric_radix)(aTHX_ a,b)
+#define Perl_grok_numeric_radix DPPP_(my_grok_numeric_radix)
+
+#if defined(NEED_grok_numeric_radix) || defined(NEED_grok_numeric_radix_GLOBAL)
+bool
+DPPP_(my_grok_numeric_radix)(pTHX_ const char **sp, const char *send)
+{
+#ifdef USE_LOCALE_NUMERIC
+#ifdef PL_numeric_radix_sv
+ if (PL_numeric_radix_sv && IN_LOCALE) {
+ STRLEN len;
+ char* radix = SvPV(PL_numeric_radix_sv, len);
+ if (*sp + len <= send && memEQ(*sp, radix, len)) {
+ *sp += len;
+ return TRUE;
+ }
+ }
+#else
+ /* older perls don't have PL_numeric_radix_sv so the radix
+ * must manually be requested from locale.h
+ */
+#include <locale.h>
+ dTHR; /* needed for older threaded perls */
+ struct lconv *lc = localeconv();
+ char *radix = lc->decimal_point;
+ if (radix && IN_LOCALE) {
+ STRLEN len = strlen(radix);
+ if (*sp + len <= send && memEQ(*sp, radix, len)) {
+ *sp += len;
+ return TRUE;
+ }
+ }
+#endif /* PERL_VERSION */
+#endif /* USE_LOCALE_NUMERIC */
+ /* always try "." if numeric radix didn't match because
+ * we may have data from different locales mixed */
+ if (*sp < send && **sp == '.') {
+ ++*sp;
+ return TRUE;
+ }
+ return FALSE;
+}
+#endif
+#endif
+
+/* grok_number depends on grok_numeric_radix */
+
+#ifndef grok_number
+#if defined(NEED_grok_number)
+static int DPPP_(my_grok_number)(pTHX_ const char * pv, STRLEN len, UV * valuep);
+static
+#else
+extern int DPPP_(my_grok_number)(pTHX_ const char * pv, STRLEN len, UV * valuep);
+#endif
+
+#ifdef grok_number
+# undef grok_number
+#endif
+#define grok_number(a,b,c) DPPP_(my_grok_number)(aTHX_ a,b,c)
+#define Perl_grok_number DPPP_(my_grok_number)
+
+#if defined(NEED_grok_number) || defined(NEED_grok_number_GLOBAL)
+int
+DPPP_(my_grok_number)(pTHX_ const char *pv, STRLEN len, UV *valuep)
+{
+ const char *s = pv;
+ const char *send = pv + len;
+ const UV max_div_10 = UV_MAX / 10;
+ const char max_mod_10 = UV_MAX % 10;
+ int numtype = 0;
+ int sawinf = 0;
+ int sawnan = 0;
+
+ while (s < send && isSPACE(*s))
+ s++;
+ if (s == send) {
+ return 0;
+ } else if (*s == '-') {
+ s++;
+ numtype = IS_NUMBER_NEG;
+ }
+ else if (*s == '+')
+ s++;
+
+ if (s == send)
+ return 0;
+
+ /* next must be digit or the radix separator or beginning of infinity */
+ if (isDIGIT(*s)) {
+ /* UVs are at least 32 bits, so the first 9 decimal digits cannot
+ overflow. */
+ UV value = *s - '0';
+ /* This construction seems to be more optimiser friendly.
+ (without it gcc does the isDIGIT test and the *s - '0' separately)
+ With it gcc on arm is managing 6 instructions (6 cycles) per digit.
+ In theory the optimiser could deduce how far to unroll the loop
+ before checking for overflow. */
+ if (++s < send) {
+ int digit = *s - '0';
+ if (digit >= 0 && digit <= 9) {
+ value = value * 10 + digit;
+ if (++s < send) {
+ digit = *s - '0';
+ if (digit >= 0 && digit <= 9) {
+ value = value * 10 + digit;
+ if (++s < send) {
+ digit = *s - '0';
+ if (digit >= 0 && digit <= 9) {
+ value = value * 10 + digit;
+ if (++s < send) {
+ digit = *s - '0';
+ if (digit >= 0 && digit <= 9) {
+ value = value * 10 + digit;
+ if (++s < send) {
+ digit = *s - '0';
+ if (digit >= 0 && digit <= 9) {
+ value = value * 10 + digit;
+ if (++s < send) {
+ digit = *s - '0';
+ if (digit >= 0 && digit <= 9) {
+ value = value * 10 + digit;
+ if (++s < send) {
+ digit = *s - '0';
+ if (digit >= 0 && digit <= 9) {
+ value = value * 10 + digit;
+ if (++s < send) {
+ digit = *s - '0';
+ if (digit >= 0 && digit <= 9) {
+ value = value * 10 + digit;
+ if (++s < send) {
+ /* Now got 9 digits, so need to check
+ each time for overflow. */
+ digit = *s - '0';
+ while (digit >= 0 && digit <= 9
+ && (value < max_div_10
+ || (value == max_div_10
+ && digit <= max_mod_10))) {
+ value = value * 10 + digit;
+ if (++s < send)
+ digit = *s - '0';
+ else
+ break;
+ }
+ if (digit >= 0 && digit <= 9
+ && (s < send)) {
+ /* value overflowed.
+ skip the remaining digits, don't
+ worry about setting *valuep. */
+ do {
+ s++;
+ } while (s < send && isDIGIT(*s));
+ numtype |=
+ IS_NUMBER_GREATER_THAN_UV_MAX;
+ goto skip_value;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ numtype |= IS_NUMBER_IN_UV;
+ if (valuep)
+ *valuep = value;
+
+ skip_value:
+ if (GROK_NUMERIC_RADIX(&s, send)) {
+ numtype |= IS_NUMBER_NOT_INT;
+ while (s < send && isDIGIT(*s)) /* optional digits after the radix */
+ s++;
+ }
+ }
+ else if (GROK_NUMERIC_RADIX(&s, send)) {
+ numtype |= IS_NUMBER_NOT_INT | IS_NUMBER_IN_UV; /* valuep assigned below */
+ /* no digits before the radix means we need digits after it */
+ if (s < send && isDIGIT(*s)) {
+ do {
+ s++;
+ } while (s < send && isDIGIT(*s));
+ if (valuep) {
+ /* integer approximation is valid - it's 0. */
+ *valuep = 0;
+ }
+ }
+ else
+ return 0;
+ } else if (*s == 'I' || *s == 'i') {
+ s++; if (s == send || (*s != 'N' && *s != 'n')) return 0;
+ s++; if (s == send || (*s != 'F' && *s != 'f')) return 0;
+ s++; if (s < send && (*s == 'I' || *s == 'i')) {
+ s++; if (s == send || (*s != 'N' && *s != 'n')) return 0;
+ s++; if (s == send || (*s != 'I' && *s != 'i')) return 0;
+ s++; if (s == send || (*s != 'T' && *s != 't')) return 0;
+ s++; if (s == send || (*s != 'Y' && *s != 'y')) return 0;
+ s++;
+ }
+ sawinf = 1;
+ } else if (*s == 'N' || *s == 'n') {
+ /* XXX TODO: There are signaling NaNs and quiet NaNs. */
+ s++; if (s == send || (*s != 'A' && *s != 'a')) return 0;
+ s++; if (s == send || (*s != 'N' && *s != 'n')) return 0;
+ s++;
+ sawnan = 1;
+ } else
+ return 0;
+
+ if (sawinf) {
+ numtype &= IS_NUMBER_NEG; /* Keep track of sign */
+ numtype |= IS_NUMBER_INFINITY | IS_NUMBER_NOT_INT;
+ } else if (sawnan) {
+ numtype &= IS_NUMBER_NEG; /* Keep track of sign */
+ numtype |= IS_NUMBER_NAN | IS_NUMBER_NOT_INT;
+ } else if (s < send) {
+ /* we can have an optional exponent part */
+ if (*s == 'e' || *s == 'E') {
+ /* The only flag we keep is sign. Blow away any "it's UV" */
+ numtype &= IS_NUMBER_NEG;
+ numtype |= IS_NUMBER_NOT_INT;
+ s++;
+ if (s < send && (*s == '-' || *s == '+'))
+ s++;
+ if (s < send && isDIGIT(*s)) {
+ do {
+ s++;
+ } while (s < send && isDIGIT(*s));
+ }
+ else
+ return 0;
+ }
+ }
+ while (s < send && isSPACE(*s))
+ s++;
+ if (s >= send)
+ return numtype;
+ if (len == 10 && memEQ(pv, "0 but true", 10)) {
+ if (valuep)
+ *valuep = 0;
+ return IS_NUMBER_IN_UV;
+ }
+ return 0;
+}
+#endif
+#endif
+
+/*
+ * The grok_* routines have been modified to use warn() instead of
+ * Perl_warner(). Also, 'hexdigit' was the former name of PL_hexdigit,
+ * which is why the stack variable has been renamed to 'xdigit'.
+ */
+
+#ifndef grok_bin
+#if defined(NEED_grok_bin)
+static UV DPPP_(my_grok_bin)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result);
+static
+#else
+extern UV DPPP_(my_grok_bin)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result);
+#endif
+
+#ifdef grok_bin
+# undef grok_bin
+#endif
+#define grok_bin(a,b,c,d) DPPP_(my_grok_bin)(aTHX_ a,b,c,d)
+#define Perl_grok_bin DPPP_(my_grok_bin)
+
+#if defined(NEED_grok_bin) || defined(NEED_grok_bin_GLOBAL)
+UV
+DPPP_(my_grok_bin)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result)
+{
+ const char *s = start;
+ STRLEN len = *len_p;
+ UV value = 0;
+ NV value_nv = 0;
+
+ const UV max_div_2 = UV_MAX / 2;
+ bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES;
+ bool overflowed = FALSE;
+
+ if (!(*flags & PERL_SCAN_DISALLOW_PREFIX)) {
+ /* strip off leading b or 0b.
+ for compatibility silently suffer "b" and "0b" as valid binary
+ numbers. */
+ if (len >= 1) {
+ if (s[0] == 'b') {
+ s++;
+ len--;
+ }
+ else if (len >= 2 && s[0] == '0' && s[1] == 'b') {
+ s+=2;
+ len-=2;
+ }
+ }
+ }
+
+ for (; len-- && *s; s++) {
+ char bit = *s;
+ if (bit == '0' || bit == '1') {
+ /* Write it in this wonky order with a goto to attempt to get the
+ compiler to make the common case integer-only loop pretty tight.
+ With gcc seems to be much straighter code than old scan_bin. */
+ redo:
+ if (!overflowed) {
+ if (value <= max_div_2) {
+ value = (value << 1) | (bit - '0');
+ continue;
+ }
+ /* Bah. We're just overflowed. */
+ warn("Integer overflow in binary number");
+ overflowed = TRUE;
+ value_nv = (NV) value;
+ }
+ value_nv *= 2.0;
+ /* If an NV has not enough bits in its mantissa to
+ * represent a UV this summing of small low-order numbers
+ * is a waste of time (because the NV cannot preserve
+ * the low-order bits anyway): we could just remember when
+ * did we overflow and in the end just multiply value_nv by the
+ * right amount. */
+ value_nv += (NV)(bit - '0');
+ continue;
+ }
+ if (bit == '_' && len && allow_underscores && (bit = s[1])
+ && (bit == '0' || bit == '1'))
+ {
+ --len;
+ ++s;
+ goto redo;
+ }
+ if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT))
+ warn("Illegal binary digit '%c' ignored", *s);
+ break;
+ }
+
+ if ( ( overflowed && value_nv > 4294967295.0)
+#if UVSIZE > 4
+ || (!overflowed && value > 0xffffffff )
+#endif
+ ) {
+ warn("Binary number > 0b11111111111111111111111111111111 non-portable");
+ }
+ *len_p = s - start;
+ if (!overflowed) {
+ *flags = 0;
+ return value;
+ }
+ *flags = PERL_SCAN_GREATER_THAN_UV_MAX;
+ if (result)
+ *result = value_nv;
+ return UV_MAX;
+}
+#endif
+#endif
+
+#ifndef grok_hex
+#if defined(NEED_grok_hex)
+static UV DPPP_(my_grok_hex)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result);
+static
+#else
+extern UV DPPP_(my_grok_hex)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result);
+#endif
+
+#ifdef grok_hex
+# undef grok_hex
+#endif
+#define grok_hex(a,b,c,d) DPPP_(my_grok_hex)(aTHX_ a,b,c,d)
+#define Perl_grok_hex DPPP_(my_grok_hex)
+
+#if defined(NEED_grok_hex) || defined(NEED_grok_hex_GLOBAL)
+UV
+DPPP_(my_grok_hex)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result)
+{
+ const char *s = start;
+ STRLEN len = *len_p;
+ UV value = 0;
+ NV value_nv = 0;
+
+ const UV max_div_16 = UV_MAX / 16;
+ bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES;
+ bool overflowed = FALSE;
+ const char *xdigit;
+
+ if (!(*flags & PERL_SCAN_DISALLOW_PREFIX)) {
+ /* strip off leading x or 0x.
+ for compatibility silently suffer "x" and "0x" as valid hex numbers.
+ */
+ if (len >= 1) {
+ if (s[0] == 'x') {
+ s++;
+ len--;
+ }
+ else if (len >= 2 && s[0] == '0' && s[1] == 'x') {
+ s+=2;
+ len-=2;
+ }
+ }
+ }
+
+ for (; len-- && *s; s++) {
+ xdigit = strchr((char *) PL_hexdigit, *s);
+ if (xdigit) {
+ /* Write it in this wonky order with a goto to attempt to get the
+ compiler to make the common case integer-only loop pretty tight.
+ With gcc seems to be much straighter code than old scan_hex. */
+ redo:
+ if (!overflowed) {
+ if (value <= max_div_16) {
+ value = (value << 4) | ((xdigit - PL_hexdigit) & 15);
+ continue;
+ }
+ warn("Integer overflow in hexadecimal number");
+ overflowed = TRUE;
+ value_nv = (NV) value;
+ }
+ value_nv *= 16.0;
+ /* If an NV has not enough bits in its mantissa to
+ * represent a UV this summing of small low-order numbers
+ * is a waste of time (because the NV cannot preserve
+ * the low-order bits anyway): we could just remember when
+ * did we overflow and in the end just multiply value_nv by the
+ * right amount of 16-tuples. */
+ value_nv += (NV)((xdigit - PL_hexdigit) & 15);
+ continue;
+ }
+ if (*s == '_' && len && allow_underscores && s[1]
+ && (xdigit = strchr((char *) PL_hexdigit, s[1])))
+ {
+ --len;
+ ++s;
+ goto redo;
+ }
+ if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT))
+ warn("Illegal hexadecimal digit '%c' ignored", *s);
+ break;
+ }
+
+ if ( ( overflowed && value_nv > 4294967295.0)
+#if UVSIZE > 4
+ || (!overflowed && value > 0xffffffff )
+#endif
+ ) {
+ warn("Hexadecimal number > 0xffffffff non-portable");
+ }
+ *len_p = s - start;
+ if (!overflowed) {
+ *flags = 0;
+ return value;
+ }
+ *flags = PERL_SCAN_GREATER_THAN_UV_MAX;
+ if (result)
+ *result = value_nv;
+ return UV_MAX;
+}
+#endif
+#endif
+
+#ifndef grok_oct
+#if defined(NEED_grok_oct)
+static UV DPPP_(my_grok_oct)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result);
+static
+#else
+extern UV DPPP_(my_grok_oct)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result);
+#endif
+
+#ifdef grok_oct
+# undef grok_oct
+#endif
+#define grok_oct(a,b,c,d) DPPP_(my_grok_oct)(aTHX_ a,b,c,d)
+#define Perl_grok_oct DPPP_(my_grok_oct)
+
+#if defined(NEED_grok_oct) || defined(NEED_grok_oct_GLOBAL)
+UV
+DPPP_(my_grok_oct)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result)
+{
+ const char *s = start;
+ STRLEN len = *len_p;
+ UV value = 0;
+ NV value_nv = 0;
+
+ const UV max_div_8 = UV_MAX / 8;
+ bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES;
+ bool overflowed = FALSE;
+
+ for (; len-- && *s; s++) {
+ /* gcc 2.95 optimiser not smart enough to figure that this subtraction
+ out front allows slicker code. */
+ int digit = *s - '0';
+ if (digit >= 0 && digit <= 7) {
+ /* Write it in this wonky order with a goto to attempt to get the
+ compiler to make the common case integer-only loop pretty tight.
+ */
+ redo:
+ if (!overflowed) {
+ if (value <= max_div_8) {
+ value = (value << 3) | digit;
+ continue;
+ }
+ /* Bah. We're just overflowed. */
+ warn("Integer overflow in octal number");
+ overflowed = TRUE;
+ value_nv = (NV) value;
+ }
+ value_nv *= 8.0;
+ /* If an NV has not enough bits in its mantissa to
+ * represent a UV this summing of small low-order numbers
+ * is a waste of time (because the NV cannot preserve
+ * the low-order bits anyway): we could just remember when
+ * did we overflow and in the end just multiply value_nv by the
+ * right amount of 8-tuples. */
+ value_nv += (NV)digit;
+ continue;
+ }
+ if (digit == ('_' - '0') && len && allow_underscores
+ && (digit = s[1] - '0') && (digit >= 0 && digit <= 7))
+ {
+ --len;
+ ++s;
+ goto redo;
+ }
+ /* Allow \octal to work the DWIM way (that is, stop scanning
+ * as soon as non-octal characters are seen, complain only iff
+ * someone seems to want to use the digits eight and nine). */
+ if (digit == 8 || digit == 9) {
+ if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT))
+ warn("Illegal octal digit '%c' ignored", *s);
+ }
+ break;
+ }
+
+ if ( ( overflowed && value_nv > 4294967295.0)
+#if UVSIZE > 4
+ || (!overflowed && value > 0xffffffff )
+#endif
+ ) {
+ warn("Octal number > 037777777777 non-portable");
+ }
+ *len_p = s - start;
+ if (!overflowed) {
+ *flags = 0;
+ return value;
+ }
+ *flags = PERL_SCAN_GREATER_THAN_UV_MAX;
+ if (result)
+ *result = value_nv;
+ return UV_MAX;
+}
+#endif
+#endif
+
+#ifdef NO_XSLOCKS
+# ifdef dJMPENV
+# define dXCPT dJMPENV; int rEtV = 0
+# define XCPT_TRY_START JMPENV_PUSH(rEtV); if (rEtV == 0)
+# define XCPT_TRY_END JMPENV_POP;
+# define XCPT_CATCH if (rEtV != 0)
+# define XCPT_RETHROW JMPENV_JUMP(rEtV)
+# else
+# define dXCPT Sigjmp_buf oldTOP; int rEtV = 0
+# define XCPT_TRY_START Copy(top_env, oldTOP, 1, Sigjmp_buf); rEtV = Sigsetjmp(top_env, 1); if (rEtV == 0)
+# define XCPT_TRY_END Copy(oldTOP, top_env, 1, Sigjmp_buf);
+# define XCPT_CATCH if (rEtV != 0)
+# define XCPT_RETHROW Siglongjmp(top_env, rEtV)
+# endif
+#endif
+
+#endif /* _P_P_PORTABILITY_H_ */
+
+/* End of File ppport.h */
diff --git a/Master/tlpkg/tlperl/lib/auto/DBI/dbivport.h b/Master/tlpkg/tlperl/lib/auto/DBI/dbivport.h
new file mode 100755
index 00000000000..77dd96b86fb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBI/dbivport.h
@@ -0,0 +1,52 @@
+/* dbivport.h
+
+ Provides macros that enable greater portability between DBI versions.
+
+ This file should be *copied* and included in driver distributions
+ and #included into the source, after #include DBIXS.h
+
+ New driver releases should include an updated copy of dbivport.h
+ from the most recent DBI release.
+*/
+
+#ifndef DBI_VPORT_H
+#define DBI_VPORT_H
+
+#ifndef DBIh_SET_ERR_CHAR
+/* Emulate DBIh_SET_ERR_CHAR
+ Only uses the err_i, errstr and state parameters.
+*/
+#define DBIh_SET_ERR_CHAR(h, imp_xxh, err_c, err_i, errstr, state, method) \
+ sv_setiv(DBIc_ERR(imp_xxh), err_i); \
+ (state) ? (void)sv_setpv(DBIc_STATE(imp_xxh), state) : (void)SvOK_off(DBIc_STATE(imp_xxh)); \
+ sv_setpv(DBIc_ERRSTR(imp_xxh), errstr)
+#endif
+
+#ifndef DBIcf_Executed
+#define DBIcf_Executed 0x080000
+#endif
+
+#ifndef DBIc_TRACE_LEVEL_MASK
+#define DBIc_TRACE_LEVEL_MASK 0x0000000F
+#define DBIc_TRACE_FLAGS_MASK 0xFFFFFF00
+#define DBIc_TRACE_SETTINGS(imp) (DBIc_DBISTATE(imp)->debug)
+#define DBIc_TRACE_LEVEL(imp) (DBIc_TRACE_SETTINGS(imp) & DBIc_TRACE_LEVEL_MASK)
+#define DBIc_TRACE_FLAGS(imp) (DBIc_TRACE_SETTINGS(imp) & DBIc_TRACE_FLAGS_MASK)
+/* DBIc_TRACE_MATCHES - true if s1 'matches' s2 (c.f. trace_msg())
+ DBIc_TRACE_MATCHES(foo, DBIc_TRACE_SETTINGS(imp))
+*/
+#define DBIc_TRACE_MATCHES(s1, s2) \
+ ( ((s1 & DBIc_TRACE_LEVEL_MASK) >= (s2 & DBIc_TRACE_LEVEL_MASK)) \
+ || ((s1 & DBIc_TRACE_FLAGS_MASK) & (s2 & DBIc_TRACE_FLAGS_MASK)) )
+/* DBIc_TRACE - true if flags match & DBI level>=flaglevel, or if DBI level>level
+ DBIc_TRACE(imp, 0, 0, 4) = if level >= 4
+ DBIc_TRACE(imp, DBDtf_FOO, 2, 4) = if tracing DBDtf_FOO & level>=2 or level>=4
+ DBIc_TRACE(imp, DBDtf_FOO, 2, 0) = as above but never trace just due to level
+*/
+#define DBIc_TRACE(imp, flags, flaglevel, level) \
+ ( (flags && (DBIc_TRACE_FLAGS(imp) & flags) && (DBIc_TRACE_LEVEL(imp) >= flaglevel)) \
+ || (level && DBIc_TRACE_LEVEL(imp) >= level) )
+#endif
+
+
+#endif /* !DBI_VPORT_H */
diff --git a/Master/tlpkg/tlperl/lib/auto/DBI/dbixs_rev.h b/Master/tlpkg/tlperl/lib/auto/DBI/dbixs_rev.h
new file mode 100755
index 00000000000..da50f6018c8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBI/dbixs_rev.h
@@ -0,0 +1,2 @@
+/* Sat May 2 16:48:00 2009 */
+#define DBIXS_REVISION 12733
diff --git a/Master/tlpkg/tlperl/lib/auto/DBIx/Simple/.packlist b/Master/tlpkg/tlperl/lib/auto/DBIx/Simple/.packlist
new file mode 100755
index 00000000000..f71f69d95e6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBIx/Simple/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\DBIx\Simple.pm
+C:\strawberry\perl\vendor\lib\DBIx\Simple\Comparison.pod
+C:\strawberry\perl\vendor\lib\DBIx\Simple\Examples.pod
diff --git a/Master/tlpkg/tlperl/lib/auto/DBM/Deep/.packlist b/Master/tlpkg/tlperl/lib/auto/DBM/Deep/.packlist
new file mode 100755
index 00000000000..e357818632c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DBM/Deep/.packlist
@@ -0,0 +1,8 @@
+C:\strawberry\perl\vendor\lib\DBM\Deep.pm
+C:\strawberry\perl\vendor\lib\DBM\Deep.pod
+C:\strawberry\perl\vendor\lib\DBM\Deep\Array.pm
+C:\strawberry\perl\vendor\lib\DBM\Deep\Cookbook.pod
+C:\strawberry\perl\vendor\lib\DBM\Deep\Engine.pm
+C:\strawberry\perl\vendor\lib\DBM\Deep\File.pm
+C:\strawberry\perl\vendor\lib\DBM\Deep\Hash.pm
+C:\strawberry\perl\vendor\lib\DBM\Deep\Internals.pod
diff --git a/Master/tlpkg/tlperl/lib/auto/DB_File/.packlist b/Master/tlpkg/tlperl/lib/auto/DB_File/.packlist
new file mode 100755
index 00000000000..22a8ff47aba
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DB_File/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\vendor\lib\DB_File.pm
+C:\strawberry\perl\vendor\lib\auto\DB_File\DB_File.bs
+C:\strawberry\perl\vendor\lib\auto\DB_File\DB_File.dll
+C:\strawberry\perl\vendor\lib\auto\DB_File\autosplit.ix
diff --git a/Master/tlpkg/tlperl/lib/auto/DB_File/DB_File.bs b/Master/tlpkg/tlperl/lib/auto/DB_File/DB_File.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DB_File/DB_File.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/DB_File/DB_File.dll b/Master/tlpkg/tlperl/lib/auto/DB_File/DB_File.dll
new file mode 100755
index 00000000000..4d8669c4861
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DB_File/DB_File.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/DB_File/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/DB_File/autosplit.ix
new file mode 100755
index 00000000000..caa08654e87
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DB_File/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for blib\lib\DB_File.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Data/Buffer/.packlist b/Master/tlpkg/tlperl/lib/auto/Data/Buffer/.packlist
new file mode 100755
index 00000000000..d7ad4473176
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Data/Buffer/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Data\Buffer.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Data/Compare/.packlist b/Master/tlpkg/tlperl/lib/auto/Data/Compare/.packlist
new file mode 100755
index 00000000000..a378e7d69bf
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Data/Compare/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Data\Compare.pm
+C:\strawberry\perl\vendor\lib\Data\Compare\Plugins.pod
+C:\strawberry\perl\vendor\lib\Data\Compare\Plugins\Scalar\Properties.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Data/Dumper/.packlist b/Master/tlpkg/tlperl/lib/auto/Data/Dumper/.packlist
new file mode 100755
index 00000000000..fdecd9a9d92
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Data/Dumper/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\lib\Data\Dumper.pm
+C:\strawberry\perl\lib\auto\Data\Dumper\Dumper.bs
+C:\strawberry\perl\lib\auto\Data\Dumper\Dumper.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Data/Dumper/Dumper.bs b/Master/tlpkg/tlperl/lib/auto/Data/Dumper/Dumper.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Data/Dumper/Dumper.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Data/Dumper/Dumper.dll b/Master/tlpkg/tlperl/lib/auto/Data/Dumper/Dumper.dll
new file mode 100755
index 00000000000..4f566821c0c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Data/Dumper/Dumper.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Data/Random/.packlist b/Master/tlpkg/tlperl/lib/auto/Data/Random/.packlist
new file mode 100755
index 00000000000..21945e52a6b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Data/Random/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Data\Random.pm
+C:\strawberry\perl\vendor\lib\Data\Random\WordList.pm
+C:\strawberry\perl\vendor\lib\Data\Random\dict
diff --git a/Master/tlpkg/tlperl/lib/auto/Devel/DProf/DProf.dll b/Master/tlpkg/tlperl/lib/auto/Devel/DProf/DProf.dll
new file mode 100755
index 00000000000..3ef80bf4d4c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Devel/DProf/DProf.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Devel/PPPort/PPPort.dll b/Master/tlpkg/tlperl/lib/auto/Devel/PPPort/PPPort.dll
new file mode 100755
index 00000000000..9d533a2b064
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Devel/PPPort/PPPort.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Devel/Peek/Peek.dll b/Master/tlpkg/tlperl/lib/auto/Devel/Peek/Peek.dll
new file mode 100755
index 00000000000..11b31869de2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Devel/Peek/Peek.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Digest/BubbleBabble/.packlist b/Master/tlpkg/tlperl/lib/auto/Digest/BubbleBabble/.packlist
new file mode 100755
index 00000000000..78a2d20fe82
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Digest/BubbleBabble/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Digest\BubbleBabble.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Digest/MD2/.packlist b/Master/tlpkg/tlperl/lib/auto/Digest/MD2/.packlist
new file mode 100755
index 00000000000..c6ed5aa837f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Digest/MD2/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Digest\MD2.pm
+C:\strawberry\perl\vendor\lib\auto\Digest\MD2\MD2.bs
+C:\strawberry\perl\vendor\lib\auto\Digest\MD2\MD2.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Digest/MD2/MD2.bs b/Master/tlpkg/tlperl/lib/auto/Digest/MD2/MD2.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Digest/MD2/MD2.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Digest/MD2/MD2.dll b/Master/tlpkg/tlperl/lib/auto/Digest/MD2/MD2.dll
new file mode 100755
index 00000000000..19c561e4d25
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Digest/MD2/MD2.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Digest/MD5/MD5.dll b/Master/tlpkg/tlperl/lib/auto/Digest/MD5/MD5.dll
new file mode 100755
index 00000000000..b7192969cc4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Digest/MD5/MD5.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Digest/SHA/.packlist b/Master/tlpkg/tlperl/lib/auto/Digest/SHA/.packlist
new file mode 100755
index 00000000000..f1db4cae8da
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Digest/SHA/.packlist
@@ -0,0 +1,5 @@
+C:\strawberry\perl\bin\shasum
+C:\strawberry\perl\bin\shasum.bat
+C:\strawberry\perl\lib\Digest\SHA.pm
+C:\strawberry\perl\lib\auto\Digest\SHA\SHA.bs
+C:\strawberry\perl\lib\auto\Digest\SHA\SHA.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Digest/SHA/SHA.bs b/Master/tlpkg/tlperl/lib/auto/Digest/SHA/SHA.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Digest/SHA/SHA.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Digest/SHA/SHA.dll b/Master/tlpkg/tlperl/lib/auto/Digest/SHA/SHA.dll
new file mode 100755
index 00000000000..0763104384a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Digest/SHA/SHA.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Digest/SHA1/.packlist b/Master/tlpkg/tlperl/lib/auto/Digest/SHA1/.packlist
new file mode 100755
index 00000000000..4d4a0049a22
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Digest/SHA1/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Digest\SHA1.pm
+C:\strawberry\perl\vendor\lib\auto\Digest\SHA1\SHA1.bs
+C:\strawberry\perl\vendor\lib\auto\Digest\SHA1\SHA1.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Digest/SHA1/SHA1.bs b/Master/tlpkg/tlperl/lib/auto/Digest/SHA1/SHA1.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Digest/SHA1/SHA1.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Digest/SHA1/SHA1.dll b/Master/tlpkg/tlperl/lib/auto/Digest/SHA1/SHA1.dll
new file mode 100755
index 00000000000..09a65381987
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Digest/SHA1/SHA1.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/DynaLoader/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/DynaLoader/autosplit.ix
new file mode 100755
index 00000000000..d7605efa074
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DynaLoader/autosplit.ix
@@ -0,0 +1,8 @@
+# Index created by AutoSplit for ../LIB\DynaLoader.pm
+# (file acts as timestamp)
+package DynaLoader;
+sub dl_findfile ;
+sub dl_expandspec ;
+sub dl_find_symbol_anywhere
+;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/DynaLoader/dl_expandspec.al b/Master/tlpkg/tlperl/lib/auto/DynaLoader/dl_expandspec.al
new file mode 100755
index 00000000000..0c2e8215d10
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DynaLoader/dl_expandspec.al
@@ -0,0 +1,31 @@
+# NOTE: Derived from ../LIB\DynaLoader.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package DynaLoader;
+
+#line 318 "../LIB\DynaLoader.pm (autosplit into ..\lib\auto\DynaLoader\dl_expandspec.al)"
+sub dl_expandspec {
+ my($spec) = @_;
+ # Optional function invoked if DynaLoader.pm sets $do_expand.
+ # Most systems do not require or use this function.
+ # Some systems may implement it in the dl_*.xs file in which case
+ # this autoload version will not be called but is harmless.
+
+ # This function is designed to deal with systems which treat some
+ # 'filenames' in a special way. For example VMS 'Logical Names'
+ # (something like unix environment variables - but different).
+ # This function should recognise such names and expand them into
+ # full file paths.
+ # Must return undef if $spec is invalid or file does not exist.
+
+ my $file = $spec; # default output to input
+
+
+ return undef unless -f $file;
+
+ print STDERR "dl_expandspec($spec) => $file\n" if $dl_debug;
+ $file;
+}
+
+# end of DynaLoader::dl_expandspec
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/DynaLoader/dl_find_symbol_anywhere.al b/Master/tlpkg/tlperl/lib/auto/DynaLoader/dl_find_symbol_anywhere.al
new file mode 100755
index 00000000000..fb182a01ed0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DynaLoader/dl_find_symbol_anywhere.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from ../LIB\DynaLoader.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package DynaLoader;
+
+#line 341 "../LIB\DynaLoader.pm (autosplit into ..\lib\auto\DynaLoader\dl_find_symbol_anywhere.al)"
+sub dl_find_symbol_anywhere
+{
+ my $sym = shift;
+ my $libref;
+ foreach $libref (@dl_librefs) {
+ my $symref = dl_find_symbol($libref,$sym);
+ return $symref if $symref;
+ }
+ return undef;
+}
+
+1;
+# end of DynaLoader::dl_find_symbol_anywhere
diff --git a/Master/tlpkg/tlperl/lib/auto/DynaLoader/dl_findfile.al b/Master/tlpkg/tlperl/lib/auto/DynaLoader/dl_findfile.al
new file mode 100755
index 00000000000..3f7dfadaf83
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/DynaLoader/dl_findfile.al
@@ -0,0 +1,86 @@
+# NOTE: Derived from ../LIB\DynaLoader.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package DynaLoader;
+
+#line 239 "../LIB\DynaLoader.pm (autosplit into ..\lib\auto\DynaLoader\dl_findfile.al)"
+sub dl_findfile {
+ # Read ext/DynaLoader/DynaLoader.doc for detailed information.
+ # This function does not automatically consider the architecture
+ # or the perl library auto directories.
+ my (@args) = @_;
+ my (@dirs, $dir); # which directories to search
+ my (@found); # full paths to real files we have found
+ #my $dl_ext= 'dll'; # $Config::Config{'dlext'} suffix for perl extensions
+ #my $dl_so = 'dll'; # $Config::Config{'so'} suffix for shared libraries
+
+ print STDERR "dl_findfile(@args)\n" if $dl_debug;
+
+ # accumulate directories but process files as they appear
+ arg: foreach(@args) {
+ # Special fast case: full filepath requires no search
+
+
+
+ if (m:/: && -f $_) {
+ push(@found,$_);
+ last arg unless wantarray;
+ next;
+ }
+
+
+ # Deal with directories first:
+ # Using a -L prefix is the preferred option (faster and more robust)
+ if (m:^-L:) { s/^-L//; push(@dirs, $_); next; }
+
+
+
+ # Otherwise we try to try to spot directories by a heuristic
+ # (this is a more complicated issue than it first appears)
+ if (m:/: && -d $_) { push(@dirs, $_); next; }
+
+
+
+ # Only files should get this far...
+ my(@names, $name); # what filenames to look for
+ if (m:-l: ) { # convert -lname to appropriate library name
+ s/-l//;
+ push(@names,"lib$_.$dl_so");
+ push(@names,"lib$_.a");
+ } else { # Umm, a bare name. Try various alternatives:
+ # these should be ordered with the most likely first
+ push(@names,"$_.$dl_dlext") unless m/\.$dl_dlext$/o;
+ push(@names,"$_.$dl_so") unless m/\.$dl_so$/o;
+ push(@names,"lib$_.$dl_so") unless m:/:;
+ push(@names,"$_.a") if !m/\.a$/ and $dlsrc eq "dl_dld.xs";
+ push(@names, $_);
+ }
+ my $dirsep = '/';
+
+ foreach $dir (@dirs, @dl_library_path) {
+ next unless -d $dir;
+
+ foreach $name (@names) {
+ my($file) = "$dir$dirsep$name";
+ print STDERR " checking in $dir for $name\n" if $dl_debug;
+ $file = ($do_expand) ? dl_expandspec($file) : (-f $file && $file);
+ #$file = _check_file($file);
+ if ($file) {
+ push(@found, $file);
+ next arg; # no need to look any further
+ }
+ }
+ }
+ }
+ if ($dl_debug) {
+ foreach(@dirs) {
+ print STDERR " dl_findfile ignored non-existent directory: $_\n" unless -d $_;
+ }
+ print STDERR "dl_findfile found: @found\n";
+ }
+ return $found[0] unless wantarray;
+ @found;
+}
+
+# end of DynaLoader::dl_findfile
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/.packlist b/Master/tlpkg/tlperl/lib/auto/Encode/.packlist
new file mode 100755
index 00000000000..364afe9cac4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/.packlist
@@ -0,0 +1,56 @@
+C:\strawberry\perl\bin\enc2xs
+C:\strawberry\perl\bin\enc2xs.bat
+C:\strawberry\perl\bin\piconv
+C:\strawberry\perl\bin\piconv.bat
+C:\strawberry\perl\lib\Encode.pm
+C:\strawberry\perl\lib\Encode\Alias.pm
+C:\strawberry\perl\lib\Encode\Byte.pm
+C:\strawberry\perl\lib\Encode\CJKConstants.pm
+C:\strawberry\perl\lib\Encode\CN.pm
+C:\strawberry\perl\lib\Encode\CN\HZ.pm
+C:\strawberry\perl\lib\Encode\Changes.e2x
+C:\strawberry\perl\lib\Encode\Config.pm
+C:\strawberry\perl\lib\Encode\ConfigLocal_PM.e2x
+C:\strawberry\perl\lib\Encode\EBCDIC.pm
+C:\strawberry\perl\lib\Encode\Encoder.pm
+C:\strawberry\perl\lib\Encode\Encoding.pm
+C:\strawberry\perl\lib\Encode\GSM0338.pm
+C:\strawberry\perl\lib\Encode\Guess.pm
+C:\strawberry\perl\lib\Encode\JP.pm
+C:\strawberry\perl\lib\Encode\JP\H2Z.pm
+C:\strawberry\perl\lib\Encode\JP\JIS7.pm
+C:\strawberry\perl\lib\Encode\KR.pm
+C:\strawberry\perl\lib\Encode\KR\2022_KR.pm
+C:\strawberry\perl\lib\Encode\MIME\Header.pm
+C:\strawberry\perl\lib\Encode\MIME\Header\ISO_2022_JP.pm
+C:\strawberry\perl\lib\Encode\MIME\Name.pm
+C:\strawberry\perl\lib\Encode\Makefile_PL.e2x
+C:\strawberry\perl\lib\Encode\PerlIO.pod
+C:\strawberry\perl\lib\Encode\README.e2x
+C:\strawberry\perl\lib\Encode\Supported.pod
+C:\strawberry\perl\lib\Encode\Symbol.pm
+C:\strawberry\perl\lib\Encode\TW.pm
+C:\strawberry\perl\lib\Encode\Unicode.pm
+C:\strawberry\perl\lib\Encode\Unicode\UTF7.pm
+C:\strawberry\perl\lib\Encode\_PM.e2x
+C:\strawberry\perl\lib\Encode\_T.e2x
+C:\strawberry\perl\lib\Encode\encode.h
+C:\strawberry\perl\lib\auto\Encode\Byte\Byte.bs
+C:\strawberry\perl\lib\auto\Encode\Byte\Byte.dll
+C:\strawberry\perl\lib\auto\Encode\CN\CN.bs
+C:\strawberry\perl\lib\auto\Encode\CN\CN.dll
+C:\strawberry\perl\lib\auto\Encode\EBCDIC\EBCDIC.bs
+C:\strawberry\perl\lib\auto\Encode\EBCDIC\EBCDIC.dll
+C:\strawberry\perl\lib\auto\Encode\Encode.bs
+C:\strawberry\perl\lib\auto\Encode\Encode.dll
+C:\strawberry\perl\lib\auto\Encode\JP\JP.bs
+C:\strawberry\perl\lib\auto\Encode\JP\JP.dll
+C:\strawberry\perl\lib\auto\Encode\KR\KR.bs
+C:\strawberry\perl\lib\auto\Encode\KR\KR.dll
+C:\strawberry\perl\lib\auto\Encode\Symbol\Symbol.bs
+C:\strawberry\perl\lib\auto\Encode\Symbol\Symbol.dll
+C:\strawberry\perl\lib\auto\Encode\TW\TW.bs
+C:\strawberry\perl\lib\auto\Encode\TW\TW.dll
+C:\strawberry\perl\lib\auto\Encode\Unicode\Unicode.bs
+C:\strawberry\perl\lib\auto\Encode\Unicode\Unicode.dll
+C:\strawberry\perl\lib\encoding.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/Byte/Byte.bs b/Master/tlpkg/tlperl/lib/auto/Encode/Byte/Byte.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/Byte/Byte.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/Byte/Byte.dll b/Master/tlpkg/tlperl/lib/auto/Encode/Byte/Byte.dll
new file mode 100755
index 00000000000..f16bacb9a28
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/Byte/Byte.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/CN/CN.bs b/Master/tlpkg/tlperl/lib/auto/Encode/CN/CN.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/CN/CN.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/CN/CN.dll b/Master/tlpkg/tlperl/lib/auto/Encode/CN/CN.dll
new file mode 100755
index 00000000000..e0ae27afb21
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/CN/CN.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/EBCDIC/EBCDIC.bs b/Master/tlpkg/tlperl/lib/auto/Encode/EBCDIC/EBCDIC.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/EBCDIC/EBCDIC.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/EBCDIC/EBCDIC.dll b/Master/tlpkg/tlperl/lib/auto/Encode/EBCDIC/EBCDIC.dll
new file mode 100755
index 00000000000..31b79626541
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/EBCDIC/EBCDIC.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/Encode.bs b/Master/tlpkg/tlperl/lib/auto/Encode/Encode.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/Encode.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/Encode.dll b/Master/tlpkg/tlperl/lib/auto/Encode/Encode.dll
new file mode 100755
index 00000000000..5c2ffbf7b43
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/Encode.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/JP/JP.bs b/Master/tlpkg/tlperl/lib/auto/Encode/JP/JP.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/JP/JP.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/JP/JP.dll b/Master/tlpkg/tlperl/lib/auto/Encode/JP/JP.dll
new file mode 100755
index 00000000000..e21bdcc9682
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/JP/JP.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/KR/KR.bs b/Master/tlpkg/tlperl/lib/auto/Encode/KR/KR.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/KR/KR.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/KR/KR.dll b/Master/tlpkg/tlperl/lib/auto/Encode/KR/KR.dll
new file mode 100755
index 00000000000..57f19225d3e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/KR/KR.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/Symbol/Symbol.bs b/Master/tlpkg/tlperl/lib/auto/Encode/Symbol/Symbol.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/Symbol/Symbol.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/Symbol/Symbol.dll b/Master/tlpkg/tlperl/lib/auto/Encode/Symbol/Symbol.dll
new file mode 100755
index 00000000000..2b45c4b46f9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/Symbol/Symbol.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/TW/TW.bs b/Master/tlpkg/tlperl/lib/auto/Encode/TW/TW.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/TW/TW.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/TW/TW.dll b/Master/tlpkg/tlperl/lib/auto/Encode/TW/TW.dll
new file mode 100755
index 00000000000..dcae5090e3a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/TW/TW.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/Unicode/Unicode.bs b/Master/tlpkg/tlperl/lib/auto/Encode/Unicode/Unicode.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/Unicode/Unicode.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Encode/Unicode/Unicode.dll b/Master/tlpkg/tlperl/lib/auto/Encode/Unicode/Unicode.dll
new file mode 100755
index 00000000000..68aaf072c99
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Encode/Unicode/Unicode.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/ExtUtils/CBuilder/.packlist b/Master/tlpkg/tlperl/lib/auto/ExtUtils/CBuilder/.packlist
new file mode 100755
index 00000000000..892a0b233f1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/ExtUtils/CBuilder/.packlist
@@ -0,0 +1,13 @@
+C:\strawberry\perl\lib\ExtUtils\CBuilder.pm
+C:\strawberry\perl\lib\ExtUtils\CBuilder\Base.pm
+C:\strawberry\perl\lib\ExtUtils\CBuilder\Platform\Unix.pm
+C:\strawberry\perl\lib\ExtUtils\CBuilder\Platform\VMS.pm
+C:\strawberry\perl\lib\ExtUtils\CBuilder\Platform\Windows.pm
+C:\strawberry\perl\lib\ExtUtils\CBuilder\Platform\Windows\BCC.pm
+C:\strawberry\perl\lib\ExtUtils\CBuilder\Platform\Windows\GCC.pm
+C:\strawberry\perl\lib\ExtUtils\CBuilder\Platform\Windows\MSVC.pm
+C:\strawberry\perl\lib\ExtUtils\CBuilder\Platform\aix.pm
+C:\strawberry\perl\lib\ExtUtils\CBuilder\Platform\cygwin.pm
+C:\strawberry\perl\lib\ExtUtils\CBuilder\Platform\darwin.pm
+C:\strawberry\perl\lib\ExtUtils\CBuilder\Platform\dec_osf.pm
+C:\strawberry\perl\lib\ExtUtils\CBuilder\Platform\os2.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/ExtUtils/MakeMaker/.packlist b/Master/tlpkg/tlperl/lib/auto/ExtUtils/MakeMaker/.packlist
new file mode 100755
index 00000000000..3fb8f839151
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/ExtUtils/MakeMaker/.packlist
@@ -0,0 +1,30 @@
+C:\strawberry\perl\bin\instmodsh
+C:\strawberry\perl\bin\instmodsh.bat
+C:\strawberry\perl\lib\ExtUtils\Command\MM.pm
+C:\strawberry\perl\lib\ExtUtils\Liblist.pm
+C:\strawberry\perl\lib\ExtUtils\Liblist\Kid.pm
+C:\strawberry\perl\lib\ExtUtils\MM.pm
+C:\strawberry\perl\lib\ExtUtils\MM_AIX.pm
+C:\strawberry\perl\lib\ExtUtils\MM_Any.pm
+C:\strawberry\perl\lib\ExtUtils\MM_BeOS.pm
+C:\strawberry\perl\lib\ExtUtils\MM_Cygwin.pm
+C:\strawberry\perl\lib\ExtUtils\MM_DOS.pm
+C:\strawberry\perl\lib\ExtUtils\MM_Darwin.pm
+C:\strawberry\perl\lib\ExtUtils\MM_MacOS.pm
+C:\strawberry\perl\lib\ExtUtils\MM_NW5.pm
+C:\strawberry\perl\lib\ExtUtils\MM_OS2.pm
+C:\strawberry\perl\lib\ExtUtils\MM_QNX.pm
+C:\strawberry\perl\lib\ExtUtils\MM_UWIN.pm
+C:\strawberry\perl\lib\ExtUtils\MM_Unix.pm
+C:\strawberry\perl\lib\ExtUtils\MM_VMS.pm
+C:\strawberry\perl\lib\ExtUtils\MM_VOS.pm
+C:\strawberry\perl\lib\ExtUtils\MM_Win32.pm
+C:\strawberry\perl\lib\ExtUtils\MM_Win95.pm
+C:\strawberry\perl\lib\ExtUtils\MY.pm
+C:\strawberry\perl\lib\ExtUtils\MakeMaker.pm
+C:\strawberry\perl\lib\ExtUtils\MakeMaker\Config.pm
+C:\strawberry\perl\lib\ExtUtils\MakeMaker\FAQ.pod
+C:\strawberry\perl\lib\ExtUtils\MakeMaker\Tutorial.pod
+C:\strawberry\perl\lib\ExtUtils\Mkbootstrap.pm
+C:\strawberry\perl\lib\ExtUtils\Mksymlists.pm
+C:\strawberry\perl\lib\ExtUtils\testlib.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/ExtUtils/Manifest/.packlist b/Master/tlpkg/tlperl/lib/auto/ExtUtils/Manifest/.packlist
new file mode 100755
index 00000000000..a7e4d59a97d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/ExtUtils/Manifest/.packlist
@@ -0,0 +1,2 @@
+C:\strawberry\perl\lib\ExtUtils\MANIFEST.SKIP
+C:\strawberry\perl\lib\ExtUtils\Manifest.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/ExtUtils/ParseXS/.packlist b/Master/tlpkg/tlperl/lib/auto/ExtUtils/ParseXS/.packlist
new file mode 100755
index 00000000000..2b62f1cd0d3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/ExtUtils/ParseXS/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\ExtUtils\ParseXS.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/FCGI/.packlist b/Master/tlpkg/tlperl/lib/auto/FCGI/.packlist
new file mode 100755
index 00000000000..9c4d640c909
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/FCGI/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\FCGI.pm
+C:\strawberry\perl\vendor\lib\auto\FCGI\FCGI.bs
+C:\strawberry\perl\vendor\lib\auto\FCGI\FCGI.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/FCGI/FCGI.bs b/Master/tlpkg/tlperl/lib/auto/FCGI/FCGI.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/FCGI/FCGI.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/FCGI/FCGI.dll b/Master/tlpkg/tlperl/lib/auto/FCGI/FCGI.dll
new file mode 100755
index 00000000000..ca6e3172486
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/FCGI/FCGI.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Fcntl/Fcntl.dll b/Master/tlpkg/tlperl/lib/auto/Fcntl/Fcntl.dll
new file mode 100755
index 00000000000..9d4d9e785b1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Fcntl/Fcntl.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/File/Fetch/.packlist b/Master/tlpkg/tlperl/lib/auto/File/Fetch/.packlist
new file mode 100755
index 00000000000..4039d3ff87b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/File/Fetch/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\File\Fetch.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/File/Find/Rule/.packlist b/Master/tlpkg/tlperl/lib/auto/File/Find/Rule/.packlist
new file mode 100755
index 00000000000..1ae447043d0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/File/Find/Rule/.packlist
@@ -0,0 +1,5 @@
+C:\strawberry\perl\bin\findrule
+C:\strawberry\perl\bin\findrule.bat
+C:\strawberry\perl\vendor\lib\File\Find\Rule.pm
+C:\strawberry\perl\vendor\lib\File\Find\Rule\Extending.pod
+C:\strawberry\perl\vendor\lib\File\Find\Rule\Procedural.pod
diff --git a/Master/tlpkg/tlperl/lib/auto/File/Glob/Glob.dll b/Master/tlpkg/tlperl/lib/auto/File/Glob/Glob.dll
new file mode 100755
index 00000000000..6dd181ca97e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/File/Glob/Glob.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/File/HomeDir/.packlist b/Master/tlpkg/tlperl/lib/auto/File/HomeDir/.packlist
new file mode 100755
index 00000000000..a14b901ef7a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/File/HomeDir/.packlist
@@ -0,0 +1,8 @@
+C:\strawberry\perl\vendor\lib\File\HomeDir.pm
+C:\strawberry\perl\vendor\lib\File\HomeDir\Darwin.pm
+C:\strawberry\perl\vendor\lib\File\HomeDir\Darwin\Carbon.pm
+C:\strawberry\perl\vendor\lib\File\HomeDir\Darwin\Cocoa.pm
+C:\strawberry\perl\vendor\lib\File\HomeDir\Driver.pm
+C:\strawberry\perl\vendor\lib\File\HomeDir\MacOS9.pm
+C:\strawberry\perl\vendor\lib\File\HomeDir\Unix.pm
+C:\strawberry\perl\vendor\lib\File\HomeDir\Windows.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/File/Path/.packlist b/Master/tlpkg/tlperl/lib/auto/File/Path/.packlist
new file mode 100755
index 00000000000..edda80ae65b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/File/Path/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\File\Path.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/File/Remove/.packlist b/Master/tlpkg/tlperl/lib/auto/File/Remove/.packlist
new file mode 100755
index 00000000000..12df10cc0fa
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/File/Remove/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\File\Remove.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/File/Which/.packlist b/Master/tlpkg/tlperl/lib/auto/File/Which/.packlist
new file mode 100755
index 00000000000..9fb782b7ad3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/File/Which/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\bin\pwhich
+C:\strawberry\perl\bin\pwhich.bat
+C:\strawberry\perl\vendor\lib\File\Which.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/File/chmod/.packlist b/Master/tlpkg/tlperl/lib/auto/File/chmod/.packlist
new file mode 100755
index 00000000000..3871660f580
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/File/chmod/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\File\chmod.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/File/pushd/.packlist b/Master/tlpkg/tlperl/lib/auto/File/pushd/.packlist
new file mode 100755
index 00000000000..648f4304324
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/File/pushd/.packlist
@@ -0,0 +1,2 @@
+C:\strawberry\perl\vendor\lib\File\pushd.pm
+C:\strawberry\perl\vendor\lib\File\pushd.pod
diff --git a/Master/tlpkg/tlperl/lib/auto/Filter/Util/Call/Call.dll b/Master/tlpkg/tlperl/lib/auto/Filter/Util/Call/Call.dll
new file mode 100755
index 00000000000..7079cd5bb97
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Filter/Util/Call/Call.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/GD/.packlist b/Master/tlpkg/tlperl/lib/auto/GD/.packlist
new file mode 100755
index 00000000000..642823ec17e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/GD/.packlist
@@ -0,0 +1,12 @@
+C:\strawberry\perl\bin\bdf2gdfont.bat
+C:\strawberry\perl\bin\bdf2gdfont.pl
+C:\strawberry\perl\vendor\lib\GD.pm
+C:\strawberry\perl\vendor\lib\GD\Group.pm
+C:\strawberry\perl\vendor\lib\GD\Image.pm
+C:\strawberry\perl\vendor\lib\GD\Polygon.pm
+C:\strawberry\perl\vendor\lib\GD\Polyline.pm
+C:\strawberry\perl\vendor\lib\GD\Simple.pm
+C:\strawberry\perl\vendor\lib\auto\GD\GD.bs
+C:\strawberry\perl\vendor\lib\auto\GD\GD.dll
+C:\strawberry\perl\vendor\lib\auto\GD\autosplit.ix
+C:\strawberry\perl\vendor\lib\qd.pl
diff --git a/Master/tlpkg/tlperl/lib/auto/GD/GD.bs b/Master/tlpkg/tlperl/lib/auto/GD/GD.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/GD/GD.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/GD/GD.dll b/Master/tlpkg/tlperl/lib/auto/GD/GD.dll
new file mode 100755
index 00000000000..ca97a739e47
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/GD/GD.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/GD/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/GD/autosplit.ix
new file mode 100755
index 00000000000..08d99792e77
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/GD/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for blib\lib/GD.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/GDBM_File/GDBM_File.dll b/Master/tlpkg/tlperl/lib/auto/GDBM_File/GDBM_File.dll
new file mode 100755
index 00000000000..a9f16e7e42c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/GDBM_File/GDBM_File.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/HTML/Parser/.packlist b/Master/tlpkg/tlperl/lib/auto/HTML/Parser/.packlist
new file mode 100755
index 00000000000..f218529c9dd
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/HTML/Parser/.packlist
@@ -0,0 +1,9 @@
+C:\strawberry\perl\vendor\lib\HTML\Entities.pm
+C:\strawberry\perl\vendor\lib\HTML\Filter.pm
+C:\strawberry\perl\vendor\lib\HTML\HeadParser.pm
+C:\strawberry\perl\vendor\lib\HTML\LinkExtor.pm
+C:\strawberry\perl\vendor\lib\HTML\Parser.pm
+C:\strawberry\perl\vendor\lib\HTML\PullParser.pm
+C:\strawberry\perl\vendor\lib\HTML\TokeParser.pm
+C:\strawberry\perl\vendor\lib\auto\HTML\Parser\Parser.bs
+C:\strawberry\perl\vendor\lib\auto\HTML\Parser\Parser.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/HTML/Parser/Parser.bs b/Master/tlpkg/tlperl/lib/auto/HTML/Parser/Parser.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/HTML/Parser/Parser.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/HTML/Parser/Parser.dll b/Master/tlpkg/tlperl/lib/auto/HTML/Parser/Parser.dll
new file mode 100755
index 00000000000..98a83952fba
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/HTML/Parser/Parser.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/HTML/Tagset/.packlist b/Master/tlpkg/tlperl/lib/auto/HTML/Tagset/.packlist
new file mode 100755
index 00000000000..04801efd792
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/HTML/Tagset/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\HTML\Tagset.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Hash/Util/FieldHash/FieldHash.dll b/Master/tlpkg/tlperl/lib/auto/Hash/Util/FieldHash/FieldHash.dll
new file mode 100755
index 00000000000..b83cb307dde
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Hash/Util/FieldHash/FieldHash.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Hash/Util/Util.dll b/Master/tlpkg/tlperl/lib/auto/Hash/Util/Util.dll
new file mode 100755
index 00000000000..46beb4cf7a1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Hash/Util/Util.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/IO/IO.dll b/Master/tlpkg/tlperl/lib/auto/IO/IO.dll
new file mode 100755
index 00000000000..0b6d35fe014
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/IO/IO.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/IO/Socket/SSL/.packlist b/Master/tlpkg/tlperl/lib/auto/IO/Socket/SSL/.packlist
new file mode 100755
index 00000000000..b0e8826ad86
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/IO/Socket/SSL/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\IO\Socket\SSL.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/IO/String/.packlist b/Master/tlpkg/tlperl/lib/auto/IO/String/.packlist
new file mode 100755
index 00000000000..b80eb617ad4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/IO/String/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\IO\String.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/IO/Zlib/.packlist b/Master/tlpkg/tlperl/lib/auto/IO/Zlib/.packlist
new file mode 100755
index 00000000000..e007f0eca0f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/IO/Zlib/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\IO\Zlib.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/IPC/Cmd/.packlist b/Master/tlpkg/tlperl/lib/auto/IPC/Cmd/.packlist
new file mode 100755
index 00000000000..2ffd1d07115
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/IPC/Cmd/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\IPC\Cmd.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/IPC/Run3/.packlist b/Master/tlpkg/tlperl/lib/auto/IPC/Run3/.packlist
new file mode 100755
index 00000000000..d290e8fdc65
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/IPC/Run3/.packlist
@@ -0,0 +1,6 @@
+C:\strawberry\perl\vendor\lib\IPC\Run3.pm
+C:\strawberry\perl\vendor\lib\IPC\Run3\ProfArrayBuffer.pm
+C:\strawberry\perl\vendor\lib\IPC\Run3\ProfLogReader.pm
+C:\strawberry\perl\vendor\lib\IPC\Run3\ProfLogger.pm
+C:\strawberry\perl\vendor\lib\IPC\Run3\ProfPP.pm
+C:\strawberry\perl\vendor\lib\IPC\Run3\ProfReporter.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/IPC/System/Simple/.packlist b/Master/tlpkg/tlperl/lib/auto/IPC/System/Simple/.packlist
new file mode 100755
index 00000000000..82cd6c6a7e3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/IPC/System/Simple/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\IPC\System\Simple.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/.packlist b/Master/tlpkg/tlperl/lib/auto/Imager/.packlist
new file mode 100755
index 00000000000..29233b3960c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/.packlist
@@ -0,0 +1,84 @@
+C:\strawberry\perl\vendor\lib\Imager.pm
+C:\strawberry\perl\vendor\lib\Imager\API.pod
+C:\strawberry\perl\vendor\lib\Imager\APIRef.pod
+C:\strawberry\perl\vendor\lib\Imager\Color.pm
+C:\strawberry\perl\vendor\lib\Imager\Color\Float.pm
+C:\strawberry\perl\vendor\lib\Imager\Color\Table.pm
+C:\strawberry\perl\vendor\lib\Imager\Cookbook.pod
+C:\strawberry\perl\vendor\lib\Imager\CountColor.pm
+C:\strawberry\perl\vendor\lib\Imager\Draw.pod
+C:\strawberry\perl\vendor\lib\Imager\Engines.pod
+C:\strawberry\perl\vendor\lib\Imager\Expr.pm
+C:\strawberry\perl\vendor\lib\Imager\Expr\Assem.pm
+C:\strawberry\perl\vendor\lib\Imager\ExtUtils.pm
+C:\strawberry\perl\vendor\lib\Imager\File\CUR.pm
+C:\strawberry\perl\vendor\lib\Imager\File\ICO.pm
+C:\strawberry\perl\vendor\lib\Imager\File\SGI.pm
+C:\strawberry\perl\vendor\lib\Imager\Files.pod
+C:\strawberry\perl\vendor\lib\Imager\Fill.pm
+C:\strawberry\perl\vendor\lib\Imager\Filter\DynTest.pm
+C:\strawberry\perl\vendor\lib\Imager\Filter\Flines.pm
+C:\strawberry\perl\vendor\lib\Imager\Filter\Mandelbrot.pm
+C:\strawberry\perl\vendor\lib\Imager\Filters.pod
+C:\strawberry\perl\vendor\lib\Imager\Font.pm
+C:\strawberry\perl\vendor\lib\Imager\Font\BBox.pm
+C:\strawberry\perl\vendor\lib\Imager\Font\FreeType2.pm
+C:\strawberry\perl\vendor\lib\Imager\Font\Image.pm
+C:\strawberry\perl\vendor\lib\Imager\Font\Truetype.pm
+C:\strawberry\perl\vendor\lib\Imager\Font\Type1.pm
+C:\strawberry\perl\vendor\lib\Imager\Font\Win32.pm
+C:\strawberry\perl\vendor\lib\Imager\Font\Wrap.pm
+C:\strawberry\perl\vendor\lib\Imager\Fountain.pm
+C:\strawberry\perl\vendor\lib\Imager\Handy.pod
+C:\strawberry\perl\vendor\lib\Imager\ImageTypes.pod
+C:\strawberry\perl\vendor\lib\Imager\Inline.pod
+C:\strawberry\perl\vendor\lib\Imager\LargeSamples.pod
+C:\strawberry\perl\vendor\lib\Imager\Matrix2d.pm
+C:\strawberry\perl\vendor\lib\Imager\Preprocess.pm
+C:\strawberry\perl\vendor\lib\Imager\Regops.pm
+C:\strawberry\perl\vendor\lib\Imager\Test.pm
+C:\strawberry\perl\vendor\lib\Imager\Transform.pm
+C:\strawberry\perl\vendor\lib\Imager\Transformations.pod
+C:\strawberry\perl\vendor\lib\Imager\Tutorial.pod
+C:\strawberry\perl\vendor\lib\Imager\include\draw.h
+C:\strawberry\perl\vendor\lib\Imager\include\dynaload.h
+C:\strawberry\perl\vendor\lib\Imager\include\ext.h
+C:\strawberry\perl\vendor\lib\Imager\include\feat.h
+C:\strawberry\perl\vendor\lib\Imager\include\imager.h
+C:\strawberry\perl\vendor\lib\Imager\include\imageri.h
+C:\strawberry\perl\vendor\lib\Imager\include\imconfig.h
+C:\strawberry\perl\vendor\lib\Imager\include\imdatatypes.h
+C:\strawberry\perl\vendor\lib\Imager\include\imerror.h
+C:\strawberry\perl\vendor\lib\Imager\include\imexif.h
+C:\strawberry\perl\vendor\lib\Imager\include\imext.h
+C:\strawberry\perl\vendor\lib\Imager\include\imextdef.h
+C:\strawberry\perl\vendor\lib\Imager\include\imexttypes.h
+C:\strawberry\perl\vendor\lib\Imager\include\imio.h
+C:\strawberry\perl\vendor\lib\Imager\include\immacros.h
+C:\strawberry\perl\vendor\lib\Imager\include\imperl.h
+C:\strawberry\perl\vendor\lib\Imager\include\imrender.h
+C:\strawberry\perl\vendor\lib\Imager\include\iolayer.h
+C:\strawberry\perl\vendor\lib\Imager\include\iolayert.h
+C:\strawberry\perl\vendor\lib\Imager\include\log.h
+C:\strawberry\perl\vendor\lib\Imager\include\plug.h
+C:\strawberry\perl\vendor\lib\Imager\include\ppport.h
+C:\strawberry\perl\vendor\lib\Imager\include\regmach.h
+C:\strawberry\perl\vendor\lib\Imager\include\rendert.h
+C:\strawberry\perl\vendor\lib\Imager\include\stackmach.h
+C:\strawberry\perl\vendor\lib\Imager\interface.pod
+C:\strawberry\perl\vendor\lib\Imager\regmach.pod
+C:\strawberry\perl\vendor\lib\Imager\typemap
+C:\strawberry\perl\vendor\lib\auto\Imager\CountColor\CountColor.bs
+C:\strawberry\perl\vendor\lib\auto\Imager\CountColor\CountColor.dll
+C:\strawberry\perl\vendor\lib\auto\Imager\File\ICO\ICO.bs
+C:\strawberry\perl\vendor\lib\auto\Imager\File\ICO\ICO.dll
+C:\strawberry\perl\vendor\lib\auto\Imager\File\SGI\SGI.bs
+C:\strawberry\perl\vendor\lib\auto\Imager\File\SGI\SGI.dll
+C:\strawberry\perl\vendor\lib\auto\Imager\Filter\DynTest\DynTest.bs
+C:\strawberry\perl\vendor\lib\auto\Imager\Filter\DynTest\DynTest.dll
+C:\strawberry\perl\vendor\lib\auto\Imager\Filter\Flines\Flines.bs
+C:\strawberry\perl\vendor\lib\auto\Imager\Filter\Flines\Flines.dll
+C:\strawberry\perl\vendor\lib\auto\Imager\Filter\Mandelbrot\Mandelbrot.bs
+C:\strawberry\perl\vendor\lib\auto\Imager\Filter\Mandelbrot\Mandelbrot.dll
+C:\strawberry\perl\vendor\lib\auto\Imager\Imager.bs
+C:\strawberry\perl\vendor\lib\auto\Imager\Imager.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/CountColor/CountColor.bs b/Master/tlpkg/tlperl/lib/auto/Imager/CountColor/CountColor.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/CountColor/CountColor.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/CountColor/CountColor.dll b/Master/tlpkg/tlperl/lib/auto/Imager/CountColor/CountColor.dll
new file mode 100755
index 00000000000..5129ae4d921
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/CountColor/CountColor.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/File/ICO/ICO.bs b/Master/tlpkg/tlperl/lib/auto/Imager/File/ICO/ICO.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/File/ICO/ICO.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/File/ICO/ICO.dll b/Master/tlpkg/tlperl/lib/auto/Imager/File/ICO/ICO.dll
new file mode 100755
index 00000000000..5c577825c8c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/File/ICO/ICO.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/File/SGI/SGI.bs b/Master/tlpkg/tlperl/lib/auto/Imager/File/SGI/SGI.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/File/SGI/SGI.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/File/SGI/SGI.dll b/Master/tlpkg/tlperl/lib/auto/Imager/File/SGI/SGI.dll
new file mode 100755
index 00000000000..80139c02021
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/File/SGI/SGI.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/Filter/DynTest/DynTest.bs b/Master/tlpkg/tlperl/lib/auto/Imager/Filter/DynTest/DynTest.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/Filter/DynTest/DynTest.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/Filter/DynTest/DynTest.dll b/Master/tlpkg/tlperl/lib/auto/Imager/Filter/DynTest/DynTest.dll
new file mode 100755
index 00000000000..a4cbfc2f722
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/Filter/DynTest/DynTest.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/Filter/Flines/Flines.bs b/Master/tlpkg/tlperl/lib/auto/Imager/Filter/Flines/Flines.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/Filter/Flines/Flines.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/Filter/Flines/Flines.dll b/Master/tlpkg/tlperl/lib/auto/Imager/Filter/Flines/Flines.dll
new file mode 100755
index 00000000000..095ea83fb2f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/Filter/Flines/Flines.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/Filter/Mandelbrot/Mandelbrot.bs b/Master/tlpkg/tlperl/lib/auto/Imager/Filter/Mandelbrot/Mandelbrot.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/Filter/Mandelbrot/Mandelbrot.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/Filter/Mandelbrot/Mandelbrot.dll b/Master/tlpkg/tlperl/lib/auto/Imager/Filter/Mandelbrot/Mandelbrot.dll
new file mode 100755
index 00000000000..e7ea0ab0674
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/Filter/Mandelbrot/Mandelbrot.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/Imager.bs b/Master/tlpkg/tlperl/lib/auto/Imager/Imager.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/Imager.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Imager/Imager.dll b/Master/tlpkg/tlperl/lib/auto/Imager/Imager.dll
new file mode 100755
index 00000000000..3a310ea85e6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Imager/Imager.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/JSON/.packlist b/Master/tlpkg/tlperl/lib/auto/JSON/.packlist
new file mode 100755
index 00000000000..ef52c6a14d5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/JSON/.packlist
@@ -0,0 +1,6 @@
+C:\strawberry\perl\vendor\lib\JSON.pm
+C:\strawberry\perl\vendor\lib\JSON\PP.pm
+C:\strawberry\perl\vendor\lib\JSON\PP5005.pm
+C:\strawberry\perl\vendor\lib\JSON\PP56.pm
+C:\strawberry\perl\vendor\lib\JSON\PP58.pm
+C:\strawberry\perl\vendor\lib\JSON\PP\Boolean.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/JSON/XS/.packlist b/Master/tlpkg/tlperl/lib/auto/JSON/XS/.packlist
new file mode 100755
index 00000000000..4ea0033edf5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/JSON/XS/.packlist
@@ -0,0 +1,6 @@
+C:\strawberry\perl\bin\json_xs
+C:\strawberry\perl\bin\json_xs.bat
+C:\strawberry\perl\vendor\lib\JSON\XS.pm
+C:\strawberry\perl\vendor\lib\JSON\XS\Boolean.pm
+C:\strawberry\perl\vendor\lib\auto\JSON\XS\XS.bs
+C:\strawberry\perl\vendor\lib\auto\JSON\XS\XS.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/JSON/XS/XS.bs b/Master/tlpkg/tlperl/lib/auto/JSON/XS/XS.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/JSON/XS/XS.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/JSON/XS/XS.dll b/Master/tlpkg/tlperl/lib/auto/JSON/XS/XS.dll
new file mode 100755
index 00000000000..02267b611ae
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/JSON/XS/XS.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/LWP/Online/.packlist b/Master/tlpkg/tlperl/lib/auto/LWP/Online/.packlist
new file mode 100755
index 00000000000..3ff84267d10
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/LWP/Online/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\LWP\Online.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/List/Util/.packlist b/Master/tlpkg/tlperl/lib/auto/List/Util/.packlist
new file mode 100755
index 00000000000..710ca31fa4d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/List/Util/.packlist
@@ -0,0 +1,7 @@
+C:\strawberry\perl\lib\List\Util.pm
+C:\strawberry\perl\lib\List\Util\PP.pm
+C:\strawberry\perl\lib\List\Util\XS.pm
+C:\strawberry\perl\lib\Scalar\Util.pm
+C:\strawberry\perl\lib\Scalar\Util\PP.pm
+C:\strawberry\perl\lib\auto\List\Util\Util.bs
+C:\strawberry\perl\lib\auto\List\Util\Util.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/List/Util/Util.bs b/Master/tlpkg/tlperl/lib/auto/List/Util/Util.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/List/Util/Util.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/List/Util/Util.dll b/Master/tlpkg/tlperl/lib/auto/List/Util/Util.dll
new file mode 100755
index 00000000000..01df21ded10
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/List/Util/Util.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Locale/Maketext/Simple/.packlist b/Master/tlpkg/tlperl/lib/auto/Locale/Maketext/Simple/.packlist
new file mode 100755
index 00000000000..56e8d678d4e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Locale/Maketext/Simple/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Locale\Maketext\Simple.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Log/Message/Simple/.packlist b/Master/tlpkg/tlperl/lib/auto/Log/Message/Simple/.packlist
new file mode 100755
index 00000000000..1d69e2603af
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Log/Message/Simple/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Log\Message\Simple.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/MIME/Base64/.packlist b/Master/tlpkg/tlperl/lib/auto/MIME/Base64/.packlist
new file mode 100755
index 00000000000..280ffc09659
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/MIME/Base64/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\lib\MIME\Base64.pm
+C:\strawberry\perl\lib\MIME\QuotedPrint.pm
+C:\strawberry\perl\lib\auto\MIME\Base64\Base64.bs
+C:\strawberry\perl\lib\auto\MIME\Base64\Base64.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/MIME/Base64/Base64.bs b/Master/tlpkg/tlperl/lib/auto/MIME/Base64/Base64.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/MIME/Base64/Base64.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/MIME/Base64/Base64.dll b/Master/tlpkg/tlperl/lib/auto/MIME/Base64/Base64.dll
new file mode 100755
index 00000000000..8393983bf01
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/MIME/Base64/Base64.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Math/BigInt/FastCalc/FastCalc.dll b/Master/tlpkg/tlperl/lib/auto/Math/BigInt/FastCalc/FastCalc.dll
new file mode 100755
index 00000000000..3063a91466c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Math/BigInt/FastCalc/FastCalc.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Math/BigInt/GMP/.packlist b/Master/tlpkg/tlperl/lib/auto/Math/BigInt/GMP/.packlist
new file mode 100755
index 00000000000..75f8164a903
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Math/BigInt/GMP/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Math\BigInt\GMP.pm
+C:\strawberry\perl\vendor\lib\auto\Math\BigInt\GMP\GMP.bs
+C:\strawberry\perl\vendor\lib\auto\Math\BigInt\GMP\GMP.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Math/BigInt/GMP/GMP.bs b/Master/tlpkg/tlperl/lib/auto/Math/BigInt/GMP/GMP.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Math/BigInt/GMP/GMP.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Math/BigInt/GMP/GMP.dll b/Master/tlpkg/tlperl/lib/auto/Math/BigInt/GMP/GMP.dll
new file mode 100755
index 00000000000..16db58f1356
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Math/BigInt/GMP/GMP.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Math/BigRat/.packlist b/Master/tlpkg/tlperl/lib/auto/Math/BigRat/.packlist
new file mode 100755
index 00000000000..82747a6b502
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Math/BigRat/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Math\BigRat.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Math/GMP/.packlist b/Master/tlpkg/tlperl/lib/auto/Math/GMP/.packlist
new file mode 100755
index 00000000000..f7cd2597c5c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Math/GMP/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\vendor\lib\Math\GMP.pm
+C:\strawberry\perl\vendor\lib\auto\Math\GMP\GMP.bs
+C:\strawberry\perl\vendor\lib\auto\Math\GMP\GMP.dll
+C:\strawberry\perl\vendor\lib\auto\Math\GMP\autosplit.ix
diff --git a/Master/tlpkg/tlperl/lib/auto/Math/GMP/GMP.bs b/Master/tlpkg/tlperl/lib/auto/Math/GMP/GMP.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Math/GMP/GMP.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Math/GMP/GMP.dll b/Master/tlpkg/tlperl/lib/auto/Math/GMP/GMP.dll
new file mode 100755
index 00000000000..da8ef9d1ae2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Math/GMP/GMP.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Math/GMP/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Math/GMP/autosplit.ix
new file mode 100755
index 00000000000..c109cc69d26
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Math/GMP/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for blib\lib\Math\GMP.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Math/Pari/.packlist b/Master/tlpkg/tlperl/lib/auto/Math/Pari/.packlist
new file mode 100755
index 00000000000..9f9494114d0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Math/Pari/.packlist
@@ -0,0 +1,6 @@
+C:\strawberry\perl\vendor\lib\Math\Pari.pm
+C:\strawberry\perl\vendor\lib\Math\PariInit.pm
+C:\strawberry\perl\vendor\lib\Math\libPARI.dumb.pod
+C:\strawberry\perl\vendor\lib\Math\libPARI.pod
+C:\strawberry\perl\vendor\lib\auto\Math\Pari\Pari.bs
+C:\strawberry\perl\vendor\lib\auto\Math\Pari\Pari.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Math/Pari/Pari.bs b/Master/tlpkg/tlperl/lib/auto/Math/Pari/Pari.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Math/Pari/Pari.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Math/Pari/Pari.dll b/Master/tlpkg/tlperl/lib/auto/Math/Pari/Pari.dll
new file mode 100755
index 00000000000..604d4d5be93
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Math/Pari/Pari.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Module/Build/.packlist b/Master/tlpkg/tlperl/lib/auto/Module/Build/.packlist
new file mode 100755
index 00000000000..b28356dc56a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Module/Build/.packlist
@@ -0,0 +1,34 @@
+C:\strawberry\perl\bin\config_data
+C:\strawberry\perl\bin\config_data.bat
+C:\strawberry\perl\lib\Module\Build.pm
+C:\strawberry\perl\lib\Module\Build\API.pod
+C:\strawberry\perl\lib\Module\Build\Authoring.pod
+C:\strawberry\perl\lib\Module\Build\Base.pm
+C:\strawberry\perl\lib\Module\Build\Bundling.pod
+C:\strawberry\perl\lib\Module\Build\Compat.pm
+C:\strawberry\perl\lib\Module\Build\Config.pm
+C:\strawberry\perl\lib\Module\Build\ConfigData.pm
+C:\strawberry\perl\lib\Module\Build\Cookbook.pm
+C:\strawberry\perl\lib\Module\Build\Dumper.pm
+C:\strawberry\perl\lib\Module\Build\ModuleInfo.pm
+C:\strawberry\perl\lib\Module\Build\Notes.pm
+C:\strawberry\perl\lib\Module\Build\PPMMaker.pm
+C:\strawberry\perl\lib\Module\Build\Platform\Amiga.pm
+C:\strawberry\perl\lib\Module\Build\Platform\Default.pm
+C:\strawberry\perl\lib\Module\Build\Platform\EBCDIC.pm
+C:\strawberry\perl\lib\Module\Build\Platform\MPEiX.pm
+C:\strawberry\perl\lib\Module\Build\Platform\MacOS.pm
+C:\strawberry\perl\lib\Module\Build\Platform\RiscOS.pm
+C:\strawberry\perl\lib\Module\Build\Platform\Unix.pm
+C:\strawberry\perl\lib\Module\Build\Platform\VMS.pm
+C:\strawberry\perl\lib\Module\Build\Platform\VOS.pm
+C:\strawberry\perl\lib\Module\Build\Platform\Windows.pm
+C:\strawberry\perl\lib\Module\Build\Platform\aix.pm
+C:\strawberry\perl\lib\Module\Build\Platform\cygwin.pm
+C:\strawberry\perl\lib\Module\Build\Platform\darwin.pm
+C:\strawberry\perl\lib\Module\Build\Platform\os2.pm
+C:\strawberry\perl\lib\Module\Build\PodParser.pm
+C:\strawberry\perl\lib\Module\Build\Version.pm
+C:\strawberry\perl\lib\Module\Build\YAML.pm
+C:\strawberry\perl\lib\inc\latest.pm
+C:\strawberry\perl\lib\inc\latest\private.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Module/CoreList/.packlist b/Master/tlpkg/tlperl/lib/auto/Module/CoreList/.packlist
new file mode 100755
index 00000000000..1b2d6491ee6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Module/CoreList/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\bin\corelist
+C:\strawberry\perl\bin\corelist.bat
+C:\strawberry\perl\lib\Module\CoreList.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Module/Load/Conditional/.packlist b/Master/tlpkg/tlperl/lib/auto/Module/Load/Conditional/.packlist
new file mode 100755
index 00000000000..f8ff2029b01
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Module/Load/Conditional/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Module\Load\Conditional.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Module/Loaded/.packlist b/Master/tlpkg/tlperl/lib/auto/Module/Loaded/.packlist
new file mode 100755
index 00000000000..8d2a6bd5cf4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Module/Loaded/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Module\Loaded.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Module/Signature/.packlist b/Master/tlpkg/tlperl/lib/auto/Module/Signature/.packlist
new file mode 100755
index 00000000000..8d29426f2b1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Module/Signature/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\bin\cpansign
+C:\strawberry\perl\bin\cpansign.bat
+C:\strawberry\perl\vendor\lib\Module\Signature.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SMTP/TLS/.packlist b/Master/tlpkg/tlperl/lib/auto/Net/SMTP/TLS/.packlist
new file mode 100755
index 00000000000..13dcecdb913
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SMTP/TLS/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Net\SMTP\TLS.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/.packlist b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/.packlist
new file mode 100755
index 00000000000..9e3886a79cf
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/.packlist
@@ -0,0 +1,79 @@
+C:\strawberry\perl\vendor\lib\Net\SSLeay.pm
+C:\strawberry\perl\vendor\lib\Net\SSLeay\Handle.pm
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\SSLeay.bs
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\SSLeay.dll
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\autosplit.ix
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\debug_read.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_https.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_https2.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_https3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_https4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_httpx2.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_httpx3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_httpx4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\dump_peer_certificate.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_http.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_http3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_http4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_https.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_https3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_https4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_httpx.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_httpx3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_httpx4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_http.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_http3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_http4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_https.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_https3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_https4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_httpx.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_httpx3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_httpx4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\http_cat.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\https_cat.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\httpx_cat.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\make_form.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\make_headers.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\new_x_ctx.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\open_proxy_tcp_connection.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\open_tcp_connection.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_http.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_http3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_http4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_https.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_https3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_https4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_httpx.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_httpx3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_httpx4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_http.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_http3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_http4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_https.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_https3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_https4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_httpx.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_httpx3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_httpx4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\randomize.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\set_cert_and_key.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\set_proxy.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\set_server_cert_and_key.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\ssl_read_CRLF.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\ssl_read_all.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\ssl_read_until.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\ssl_write_CRLF.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\ssl_write_all.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\sslcat.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcp_read_CRLF.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcp_read_all.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcp_read_until.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcp_write_CRLF.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcp_write_all.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcpcat.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcpxcat.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\want_X509_lookup.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\want_nothing.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\want_read.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\want_write.al
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/SSLeay.bs b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/SSLeay.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/SSLeay.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/SSLeay.dll b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/SSLeay.dll
new file mode 100755
index 00000000000..61c88241073
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/SSLeay.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/autosplit.ix
new file mode 100755
index 00000000000..48af6553b06
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/autosplit.ix
@@ -0,0 +1,78 @@
+# Index created by AutoSplit for blib\lib\Net\SSLeay.pm
+# (file acts as timestamp)
+package Net::SSLeay;
+sub want_nothing ;
+sub want_read ;
+sub want_write ;
+sub want_X509_lookup ;
+sub open_tcp_connection ;
+sub open_proxy_tcp_connection ;
+sub debug_read ;
+sub ssl_read_all ;
+sub tcp_read_all ;
+sub ssl_write_all ;
+sub tcp_write_all ;
+sub ssl_read_until ($;$$);
+sub tcp_read_until ;
+sub ssl_read_CRLF ($;$);
+sub tcp_read_CRLF ;
+sub ssl_write_CRLF ($$);
+sub tcp_write_CRLF ;
+sub dump_peer_certificate ($);
+sub randomize (;$$);
+sub new_x_ctx ;
+sub sslcat ;
+sub tcpcat ;
+sub tcpxcat ;
+sub https_cat ;
+sub http_cat ;
+sub httpx_cat ;
+sub set_cert_and_key ($$$);
+sub set_server_cert_and_key ($$$);
+sub set_proxy ($$;**);
+sub make_form ;
+sub make_headers ;
+sub do_httpx3 ;
+sub do_https3 ;
+sub do_httpx2 ;
+sub do_https2 ;
+sub do_httpx4 ;
+sub do_https4 ;
+sub get_https ;
+sub post_https ;
+sub put_https ;
+sub head_https ;
+sub get_https3 ;
+sub post_https3 ;
+sub put_https3 ;
+sub head_https3 ;
+sub get_https4 ;
+sub post_https4 ;
+sub put_https4 ;
+sub head_https4 ;
+sub get_http ;
+sub post_http ;
+sub put_http ;
+sub head_http ;
+sub get_http3 ;
+sub post_http3 ;
+sub put_http3 ;
+sub head_http3 ;
+sub get_http4 ;
+sub post_http4 ;
+sub put_http4 ;
+sub head_http4 ;
+sub get_httpx ;
+sub post_httpx ;
+sub put_httpx ;
+sub head_httpx ;
+sub get_httpx3 ;
+sub post_httpx3 ;
+sub put_httpx3 ;
+sub head_httpx3 ;
+sub get_httpx4 ;
+sub post_httpx4 ;
+sub put_httpx4 ;
+sub head_httpx4 ;
+sub do_https ;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/debug_read.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/debug_read.al
new file mode 100755
index 00000000000..b9a2a73fa9f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/debug_read.al
@@ -0,0 +1,22 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1856 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\debug_read.al)"
+###
+### read and write helpers that block
+###
+
+sub debug_read {
+ my ($replyr, $gotr) = @_;
+ my $vm = $trace>2 && $linux_debug ?
+ (split ' ', `cat /proc/$$/stat`)[22] : 'vm_unknown';
+ warn " got " . blength($$gotr) . ':'
+ . blength($$replyr) . " bytes (VM=$vm).\n" if $trace == 3;
+ warn " got `$$gotr' (" . blength($$gotr) . ':'
+ . blength($$replyr) . " bytes, VM=$vm)\n" if $trace>3;
+}
+
+# end of Net::SSLeay::debug_read
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https.al
new file mode 100755
index 00000000000..91a207be120
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2601 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_https.al)"
+sub do_https {
+ my ($site, $port, $path, $method, $headers,
+ $content, $mime_type, $crt_path, $key_path) = @_;
+
+ do_https2($method, $site, $port, $path, $headers,
+ $content, $mime_type, $crt_path, $key_path);
+}
+
+1;
+__END__
+1;
+# end of Net::SSLeay::do_https
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https2.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https2.al
new file mode 100755
index 00000000000..192e31a2948
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https2.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2529 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_https2.al)"
+sub do_https2 { splice(@_,1,0) = 1; do_httpx2; } # Legacy undocumented
+
+### Returns headers as a hash where multiple instances of same header
+### are handled correctly.
+
+# end of Net::SSLeay::do_https2
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https3.al
new file mode 100755
index 00000000000..c7dc9690d5a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https3.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2514 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_https3.al)"
+sub do_https3 { splice(@_,1,0) = 1; do_httpx3; } # Legacy undocumented
+
+### do_https2() is a legacy version in the sense that it is unable
+### to return all instances of duplicate headers.
+
+# end of Net::SSLeay::do_https3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https4.al
new file mode 100755
index 00000000000..55207adad59
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_https4.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2545 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_https4.al)"
+sub do_https4 { splice(@_,1,0) = 1; do_httpx4; } # Legacy undocumented
+
+# https
+
+# end of Net::SSLeay::do_https4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_httpx2.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_httpx2.al
new file mode 100755
index 00000000000..e94566d1db2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_httpx2.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2519 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_httpx2.al)"
+sub do_httpx2 {
+ my ($page, $response, $headers, $server_cert) = &do_httpx3;
+ X509_free($server_cert) if defined $server_cert;
+ return ($page, $response,
+ map( { ($h,$v)=/^(\S+)\:\s*(.*)$/; (uc($h),$v); }
+ split(/\s?\n/, $headers)
+ )
+ );
+}
+
+# end of Net::SSLeay::do_httpx2
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_httpx3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_httpx3.al
new file mode 100755
index 00000000000..af352036cdc
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_httpx3.al
@@ -0,0 +1,43 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2479 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_httpx3.al)"
+sub do_httpx3 {
+ my ($method, $usessl, $site, $port, $path, $headers,
+ $content, $mime_type, $crt_path, $key_path) = @_;
+ my ($response, $page, $h,$v);
+
+ if ($content) {
+ $mime_type = "application/x-www-form-urlencoded" unless $mime_type;
+ my $len = blength($content);
+ $content = "Content-Type: $mime_type$CRLF"
+ . "Content-Length: $len$CRLF$CRLF$content";
+ } else {
+ $content = "$CRLF$CRLF";
+ }
+ my $req = "$method $path HTTP/1.0$CRLF";
+ unless (defined $headers && $headers =~ /^Host:/m) {
+ $req .= "Host: $site";
+ unless (($port == 80 && !$usessl) || ($port == 443 && $usessl)) {
+ $req .= ":$port";
+ }
+ $req .= $CRLF;
+ }
+ $req .= (defined $headers ? $headers : '') . "Accept: */*$CRLF$content";
+
+ warn "do_httpx3($method,$usessl,$site:$port)" if $trace;
+ my ($http, $errs, $server_cert)
+ = httpx_cat($usessl, $site, $port, $req, $crt_path, $key_path);
+ return (undef, "HTTP/1.0 900 NET OR SSL ERROR$CRLF$CRLF$errs") if $errs;
+
+ $http = '' if !defined $http;
+ ($headers, $page) = split /\s?\n\s?\n/, $http, 2;
+ warn "headers >$headers< page >>$page<< http >>>$http<<<" if $trace>1;
+ ($response, $headers) = split /\s?\n/, $headers, 2;
+ return ($page, $response, $headers, $server_cert);
+}
+
+# end of Net::SSLeay::do_httpx3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_httpx4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_httpx4.al
new file mode 100755
index 00000000000..c7666531579
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/do_httpx4.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2534 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_httpx4.al)"
+sub do_httpx4 {
+ my ($page, $response, $headers, $server_cert) = &do_httpx3;
+ X509_free($server_cert) if defined $server_cert;
+ my %hr = ();
+ for my $hh (split /\s?\n/, $headers) {
+ my ($h,$v)=/^(\S+)\:\s*(.*)$/;
+ push @{$hr{uc($h)}}, $v;
+ }
+ return ($page, $response, \%hr);
+}
+
+# end of Net::SSLeay::do_httpx4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/dump_peer_certificate.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/dump_peer_certificate.al
new file mode 100755
index 00000000000..b37a1eff84b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/dump_peer_certificate.al
@@ -0,0 +1,29 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2114 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\dump_peer_certificate.al)"
+### Quickly print out with whom we're talking
+
+sub dump_peer_certificate ($) {
+ my ($ssl) = @_;
+ my $cert = get_peer_certificate($ssl);
+ return if print_errs('get_peer_certificate');
+ print "no cert defined\n" if !defined($cert);
+ # Cipher=NONE with empty cert fix
+ if (!defined($cert) || ($cert == 0)) {
+ warn "cert = `$cert'\n" if $trace;
+ return "Subject Name: undefined\nIssuer Name: undefined\n";
+ } else {
+ my $x = 'Subject Name: '
+ . X509_NAME_oneline(X509_get_subject_name($cert)) . "\n"
+ . 'Issuer Name: '
+ . X509_NAME_oneline(X509_get_issuer_name($cert)) . "\n";
+ Net::SSLeay::X509_free($cert);
+ return $x;
+ }
+}
+
+# end of Net::SSLeay::dump_peer_certificate
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_http.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_http.al
new file mode 100755
index 00000000000..91b6882b25a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_http.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2566 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_http.al)"
+sub get_http { do_httpx2(GET => 0, @_) }
+# end of Net::SSLeay::get_http
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_http3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_http3.al
new file mode 100755
index 00000000000..2877134a5c1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_http3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2571 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_http3.al)"
+sub get_http3 { do_httpx3(GET => 0, @_) }
+# end of Net::SSLeay::get_http3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_http4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_http4.al
new file mode 100755
index 00000000000..3b7aeb8bfb3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_http4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2576 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_http4.al)"
+sub get_http4 { do_httpx4(GET => 0, @_) }
+# end of Net::SSLeay::get_http4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_https.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_https.al
new file mode 100755
index 00000000000..d66a0c1f181
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_https.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2549 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_https.al)"
+sub get_https { do_httpx2(GET => 1, @_) }
+# end of Net::SSLeay::get_https
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_https3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_https3.al
new file mode 100755
index 00000000000..013d6591618
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_https3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2554 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_https3.al)"
+sub get_https3 { do_httpx3(GET => 1, @_) }
+# end of Net::SSLeay::get_https3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_https4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_https4.al
new file mode 100755
index 00000000000..36448f196ee
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_https4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2559 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_https4.al)"
+sub get_https4 { do_httpx4(GET => 1, @_) }
+# end of Net::SSLeay::get_https4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_httpx.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_httpx.al
new file mode 100755
index 00000000000..07a74658149
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_httpx.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2583 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_httpx.al)"
+sub get_httpx { do_httpx2(GET => @_) }
+# end of Net::SSLeay::get_httpx
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_httpx3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_httpx3.al
new file mode 100755
index 00000000000..10307f280fd
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_httpx3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2588 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_httpx3.al)"
+sub get_httpx3 { do_httpx3(GET => @_) }
+# end of Net::SSLeay::get_httpx3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_httpx4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_httpx4.al
new file mode 100755
index 00000000000..0f400add2a8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/get_httpx4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2593 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_httpx4.al)"
+sub get_httpx4 { do_httpx4(GET => @_) }
+# end of Net::SSLeay::get_httpx4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_http.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_http.al
new file mode 100755
index 00000000000..8f8fc2ea672
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_http.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2569 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_http.al)"
+sub head_http { do_httpx2(HEAD => 0, @_) }
+
+# end of Net::SSLeay::head_http
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_http3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_http3.al
new file mode 100755
index 00000000000..d1cd62e1831
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_http3.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2574 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_http3.al)"
+sub head_http3 { do_httpx3(HEAD => 0, @_) }
+
+# end of Net::SSLeay::head_http3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_http4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_http4.al
new file mode 100755
index 00000000000..9078198a378
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_http4.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2579 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_http4.al)"
+sub head_http4 { do_httpx4(HEAD => 0, @_) }
+
+# Either https or http
+
+# end of Net::SSLeay::head_http4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_https.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_https.al
new file mode 100755
index 00000000000..98d2739ad6a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_https.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2552 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_https.al)"
+sub head_https { do_httpx2(HEAD => 1, @_) }
+
+# end of Net::SSLeay::head_https
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_https3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_https3.al
new file mode 100755
index 00000000000..f97eb8f9ff5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_https3.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2557 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_https3.al)"
+sub head_https3 { do_httpx3(HEAD => 1, @_) }
+
+# end of Net::SSLeay::head_https3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_https4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_https4.al
new file mode 100755
index 00000000000..f5262f16c21
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_https4.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2562 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_https4.al)"
+sub head_https4 { do_httpx4(HEAD => 1, @_) }
+
+# http
+
+# end of Net::SSLeay::head_https4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_httpx.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_httpx.al
new file mode 100755
index 00000000000..7877cae2e60
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_httpx.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2586 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_httpx.al)"
+sub head_httpx { do_httpx2(HEAD => @_) }
+
+# end of Net::SSLeay::head_httpx
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_httpx3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_httpx3.al
new file mode 100755
index 00000000000..c3759fb0f51
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_httpx3.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2591 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_httpx3.al)"
+sub head_httpx3 { do_httpx3(HEAD => @_) }
+
+# end of Net::SSLeay::head_httpx3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_httpx4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_httpx4.al
new file mode 100755
index 00000000000..9170fabaab4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/head_httpx4.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2596 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_httpx4.al)"
+sub head_httpx4 { do_httpx4(HEAD => @_) }
+
+### Legacy, don't use
+# ($page, $respone_or_err, %headers) = do_https(...);
+
+# end of Net::SSLeay::head_httpx4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/http_cat.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/http_cat.al
new file mode 100755
index 00000000000..fc6672e7280
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/http_cat.al
@@ -0,0 +1,34 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2384 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\http_cat.al)"
+sub http_cat { # address, port, message --> returns reply / (reply,errs,cert)
+ my ($dest_serv, $port, $out_message) = @_;
+ my ($got, $errs, $written);
+
+ ($got, $errs) = open_proxy_tcp_connection($dest_serv, $port);
+ return (wantarray ? (undef, $errs) : undef) unless $got;
+
+ ### Connected. Exchange some data (doing repeated tries if necessary).
+
+ warn "http_cat $$: sending " . blength($out_message) . " bytes...\n"
+ if $trace==3;
+ warn "http_cat $$: sending `$out_message' (" . blength($out_message)
+ . " bytes)...\n" if $trace>3;
+ ($written, $errs) = tcp_write_all($out_message);
+ goto cleanup unless $written;
+
+ warn "waiting for reply...\n" if $trace>2;
+ ($got, $errs) = tcp_read_all(200000);
+ warn "Got " . blength($got) . " bytes.\n" if $trace==3;
+ warn "Got `$got' (" . blength($got) . " bytes)\n" if $trace>3;
+
+cleanup:
+ close SSLCAT_S;
+ return wantarray ? ($got, $errs) : $got;
+}
+
+# end of Net::SSLeay::http_cat
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/https_cat.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/https_cat.al
new file mode 100755
index 00000000000..33bf8053702
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/https_cat.al
@@ -0,0 +1,97 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2295 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\https_cat.al)"
+###
+### Basic request - response primitive, this is different from sslcat
+### because this does not shutdown the connection.
+###
+
+sub https_cat { # address, port, message --> returns reply / (reply,errs,cert)
+ my ($dest_serv, $port, $out_message, $crt_path, $key_path) = @_;
+ my ($ctx, $ssl, $got, $errs, $written);
+
+ ($got, $errs) = open_proxy_tcp_connection($dest_serv, $port);
+ return (wantarray ? (undef, $errs) : undef) unless $got;
+
+ ### Do SSL negotiation stuff
+
+ warn "Creating SSL $ssl_version context...\n" if $trace>2;
+ load_error_strings(); # Some bloat, but I'm after ease of use
+ SSLeay_add_ssl_algorithms(); # and debuggability.
+ randomize();
+
+ $ctx = new_x_ctx();
+ goto cleanup2 if $errs = print_errs('CTX_new') or !$ctx;
+
+ CTX_set_options($ctx, &OP_ALL);
+ goto cleanup2 if $errs = print_errs('CTX_set_options');
+
+ warn "Cert `$crt_path' given without key" if $crt_path && !$key_path;
+ set_cert_and_key($ctx, $crt_path, $key_path) if $crt_path;
+
+ warn "Creating SSL connection (context was '$ctx')...\n" if $trace>2;
+ $ssl = new($ctx);
+ goto cleanup if $errs = print_errs('SSL_new') or !$ssl;
+
+ warn "Setting fd (ctx $ctx, con $ssl)...\n" if $trace>2;
+ set_fd($ssl, fileno(SSLCAT_S));
+ goto cleanup if $errs = print_errs('set_fd');
+
+ warn "Entering SSL negotiation phase...\n" if $trace>2;
+
+ if ($trace>2) {
+ my $i = 0;
+ my $p = '';
+ my $cipher_list = 'Cipher list: ';
+ $p=Net::SSLeay::get_cipher_list($ssl,$i);
+ $cipher_list .= $p if $p;
+ do {
+ $i++;
+ $cipher_list .= ', ' . $p if $p;
+ $p=Net::SSLeay::get_cipher_list($ssl,$i);
+ } while $p;
+ $cipher_list .= '\n';
+ warn $cipher_list;
+ }
+
+ $got = Net::SSLeay::connect($ssl);
+ warn "SSLeay connect failed" if $trace>2 && $got==0;
+ goto cleanup if $errs = print_errs('SSL_connect');
+
+ my $server_cert = get_peer_certificate($ssl);
+ print_errs('get_peer_certificate');
+ if ($trace>1) {
+ warn "Cipher `" . get_cipher($ssl) . "'\n";
+ print_errs('get_ciper');
+ warn dump_peer_certificate($ssl);
+ }
+
+ ### Connected. Exchange some data (doing repeated tries if necessary).
+
+ warn "https_cat $$: sending " . blength($out_message) . " bytes...\n"
+ if $trace==3;
+ warn "https_cat $$: sending `$out_message' (" . blength($out_message)
+ . " bytes)...\n" if $trace>3;
+ ($written, $errs) = ssl_write_all($ssl, $out_message);
+ goto cleanup unless $written;
+
+ warn "waiting for reply...\n" if $trace>2;
+ ($got, $errs) = ssl_read_all($ssl);
+ warn "Got " . blength($got) . " bytes.\n" if $trace==3;
+ warn "Got `$got' (" . blength($got) . " bytes)\n" if $trace>3;
+
+cleanup:
+ free ($ssl);
+ $errs .= print_errs('SSL_free');
+cleanup2:
+ CTX_free ($ctx);
+ $errs .= print_errs('CTX_free');
+ close SSLCAT_S;
+ return wantarray ? ($got, $errs, $server_cert) : $got;
+}
+
+# end of Net::SSLeay::https_cat
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/httpx_cat.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/httpx_cat.al
new file mode 100755
index 00000000000..aaa98aeb732
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/httpx_cat.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2410 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\httpx_cat.al)"
+sub httpx_cat {
+ my ($usessl, $site, $port, $req, $crt_path, $key_path) = @_;
+ warn "httpx_cat: usessl=$usessl ($site:$port)" if $trace;
+ if ($usessl) {
+ return https_cat($site, $port, $req, $crt_path, $key_path);
+ } else {
+ return http_cat($site, $port, $req);
+ }
+}
+
+# end of Net::SSLeay::httpx_cat
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/make_form.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/make_form.al
new file mode 100755
index 00000000000..cdc20a2d49d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/make_form.al
@@ -0,0 +1,25 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2449 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\make_form.al)"
+###
+### Easy https manipulation routines
+###
+
+sub make_form {
+ my (@fields) = @_;
+ my $form;
+ while (@fields) {
+ my ($name, $data) = (shift(@fields), shift(@fields));
+ $data =~ s/([^\w\-.\@\$ ])/sprintf("%%%2.2x",ord($1))/gse;
+ $data =~ tr[ ][+];
+ $form .= "$name=$data&";
+ }
+ chop $form;
+ return $form;
+}
+
+# end of Net::SSLeay::make_form
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/make_headers.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/make_headers.al
new file mode 100755
index 00000000000..171483bc4ae
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/make_headers.al
@@ -0,0 +1,21 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2466 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\make_headers.al)"
+sub make_headers {
+ my (@headers) = @_;
+ my $headers;
+ while (@headers) {
+ my $header = shift(@headers);
+ my $value = shift(@headers);
+ $header =~ s/:$//;
+ $value =~ s/\x0d?\x0a$//; # because we add it soon, see below
+ $headers .= "$header: $value$CRLF";
+ }
+ return $headers;
+}
+
+# end of Net::SSLeay::make_headers
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/new_x_ctx.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/new_x_ctx.al
new file mode 100755
index 00000000000..97fa45556ca
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/new_x_ctx.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2158 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\new_x_ctx.al)"
+sub new_x_ctx {
+ if ($ssl_version == 2) { $ctx = CTX_v2_new(); }
+ elsif ($ssl_version == 3) { $ctx = CTX_v3_new(); }
+ elsif ($ssl_version == 10) { $ctx = CTX_tlsv1_new(); }
+ else { $ctx = CTX_new(); }
+ return $ctx;
+}
+
+# end of Net::SSLeay::new_x_ctx
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/open_proxy_tcp_connection.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/open_proxy_tcp_connection.al
new file mode 100755
index 00000000000..19ce508c465
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/open_proxy_tcp_connection.al
@@ -0,0 +1,31 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1833 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\open_proxy_tcp_connection.al)"
+### Open connection via standard web proxy, if one was defined
+### using set_proxy().
+
+sub open_proxy_tcp_connection {
+ my ($dest_serv, $port) = @_;
+ return open_tcp_connection($dest_serv, $port) if !$proxyhost;
+
+ warn "Connect via proxy: $proxyhost:$proxyport" if $trace>2;
+ my ($ret, $errs) = open_tcp_connection($proxyhost, $proxyport);
+ return wantarray ? (0, $errs) : 0 if !$ret; # Connection fail
+
+ warn "Asking proxy to connect to $dest_serv:$port" if $trace>2;
+ #print SSLCAT_S "CONNECT $dest_serv:$port HTTP/1.0$proxyauth$CRLF$CRLF";
+ #my $line = <SSLCAT_S>; # *** bug? Mixing stdio with syscall read?
+ ($ret, $errs) =
+ tcp_write_all("CONNECT $dest_serv:$port HTTP/1.0$proxyauth$CRLF$CRLF");
+ return wantarray ? (0,$errs) : 0 if $errs;
+ ($line, $errs) = tcp_read_until($CRLF . $CRLF, 1024);
+ warn "Proxy response: $line" if $trace>2;
+ return wantarray ? (0,$errs) : 0 if $errs;
+ return wantarray ? (1,'') : 1; # Success
+}
+
+# end of Net::SSLeay::open_proxy_tcp_connection
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/open_tcp_connection.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/open_tcp_connection.al
new file mode 100755
index 00000000000..ddad138f36c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/open_tcp_connection.al
@@ -0,0 +1,40 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1801 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\open_tcp_connection.al)"
+sub open_tcp_connection {
+ my ($dest_serv, $port) = @_;
+ my ($errs);
+
+ $port = getservbyname($port, 'tcp') unless $port =~ /^\d+$/;
+ my $dest_serv_ip = gethostbyname($dest_serv);
+ unless (defined($dest_serv_ip)) {
+ $errs = "$0 $$: open_tcp_connection: destination host not found:"
+ . " `$dest_serv' (port $port) ($!)\n";
+ warn $errs if $trace;
+ return wantarray ? (0, $errs) : 0;
+ }
+ my $sin = sockaddr_in($port, $dest_serv_ip);
+
+ warn "Opening connection to $dest_serv:$port (" .
+ inet_ntoa($dest_serv_ip) . ")" if $trace>2;
+
+ my $proto = getprotobyname('tcp');
+ if (socket (SSLCAT_S, &PF_INET(), &SOCK_STREAM(), $proto)) {
+ warn "next connect" if $trace>3;
+ if (CORE::connect (SSLCAT_S, $sin)) {
+ my $old_out = select (SSLCAT_S); $| = 1; select ($old_out);
+ warn "connected to $dest_serv, $port" if $trace>3;
+ return wantarray ? (1, undef) : 1; # Success
+ }
+ }
+ $errs = "$0 $$: open_tcp_connection: failed `$dest_serv', $port ($!)\n";
+ warn $errs if $trace;
+ close SSLCAT_S;
+ return wantarray ? (0, $errs) : 0; # Fail
+}
+
+# end of Net::SSLeay::open_tcp_connection
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_http.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_http.al
new file mode 100755
index 00000000000..23dd45dcb95
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_http.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2567 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_http.al)"
+sub post_http { do_httpx2(POST => 0, @_) }
+# end of Net::SSLeay::post_http
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_http3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_http3.al
new file mode 100755
index 00000000000..2b1d62628bb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_http3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2572 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_http3.al)"
+sub post_http3 { do_httpx3(POST => 0, @_) }
+# end of Net::SSLeay::post_http3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_http4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_http4.al
new file mode 100755
index 00000000000..3139b18e5ea
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_http4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2577 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_http4.al)"
+sub post_http4 { do_httpx4(POST => 0, @_) }
+# end of Net::SSLeay::post_http4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_https.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_https.al
new file mode 100755
index 00000000000..e1506be2ced
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_https.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2550 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_https.al)"
+sub post_https { do_httpx2(POST => 1, @_) }
+# end of Net::SSLeay::post_https
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_https3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_https3.al
new file mode 100755
index 00000000000..a81201b57d5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_https3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2555 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_https3.al)"
+sub post_https3 { do_httpx3(POST => 1, @_) }
+# end of Net::SSLeay::post_https3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_https4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_https4.al
new file mode 100755
index 00000000000..f3ad2d7dc72
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_https4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2560 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_https4.al)"
+sub post_https4 { do_httpx4(POST => 1, @_) }
+# end of Net::SSLeay::post_https4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_httpx.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_httpx.al
new file mode 100755
index 00000000000..28a8e56ae9d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_httpx.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2584 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_httpx.al)"
+sub post_httpx { do_httpx2(POST => @_) }
+# end of Net::SSLeay::post_httpx
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_httpx3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_httpx3.al
new file mode 100755
index 00000000000..263f4feb0f9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_httpx3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2589 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_httpx3.al)"
+sub post_httpx3 { do_httpx3(POST => @_) }
+# end of Net::SSLeay::post_httpx3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_httpx4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_httpx4.al
new file mode 100755
index 00000000000..dd022e2d23d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/post_httpx4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2594 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_httpx4.al)"
+sub post_httpx4 { do_httpx4(POST => @_) }
+# end of Net::SSLeay::post_httpx4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_http.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_http.al
new file mode 100755
index 00000000000..ac7bbd648cf
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_http.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2568 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_http.al)"
+sub put_http { do_httpx2(PUT => 0, @_) }
+# end of Net::SSLeay::put_http
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_http3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_http3.al
new file mode 100755
index 00000000000..42e1a6d35b6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_http3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2573 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_http3.al)"
+sub put_http3 { do_httpx3(PUT => 0, @_) }
+# end of Net::SSLeay::put_http3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_http4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_http4.al
new file mode 100755
index 00000000000..c27a2135152
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_http4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2578 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_http4.al)"
+sub put_http4 { do_httpx4(PUT => 0, @_) }
+# end of Net::SSLeay::put_http4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_https.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_https.al
new file mode 100755
index 00000000000..c2bda1f4e8d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_https.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2551 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_https.al)"
+sub put_https { do_httpx2(PUT => 1, @_) }
+# end of Net::SSLeay::put_https
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_https3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_https3.al
new file mode 100755
index 00000000000..5471ed36331
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_https3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2556 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_https3.al)"
+sub put_https3 { do_httpx3(PUT => 1, @_) }
+# end of Net::SSLeay::put_https3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_https4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_https4.al
new file mode 100755
index 00000000000..0e3ee8addfe
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_https4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2561 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_https4.al)"
+sub put_https4 { do_httpx4(PUT => 1, @_) }
+# end of Net::SSLeay::put_https4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_httpx.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_httpx.al
new file mode 100755
index 00000000000..f203c211743
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_httpx.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2585 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_httpx.al)"
+sub put_httpx { do_httpx2(PUT => @_) }
+# end of Net::SSLeay::put_httpx
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_httpx3.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_httpx3.al
new file mode 100755
index 00000000000..1bb34e1cb9f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_httpx3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2590 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_httpx3.al)"
+sub put_httpx3 { do_httpx3(PUT => @_) }
+# end of Net::SSLeay::put_httpx3
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_httpx4.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_httpx4.al
new file mode 100755
index 00000000000..d85cf654363
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/put_httpx4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2595 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_httpx4.al)"
+sub put_httpx4 { do_httpx4(PUT => @_) }
+# end of Net::SSLeay::put_httpx4
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/randomize.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/randomize.al
new file mode 100755
index 00000000000..7aee1949055
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/randomize.al
@@ -0,0 +1,31 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2135 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\randomize.al)"
+### Arrange some randomness for eay PRNG
+
+sub randomize (;$$) {
+ my ($rn_seed_file, $seed, $egd_path) = @_;
+ my $rnsf = defined($rn_seed_file) && -r $rn_seed_file;
+
+ $egd_path = '';
+ $egd_path = $ENV{'EGD_PATH'} if $ENV{'EGD_PATH'};
+
+ RAND_seed(rand() + $$); # Stir it with time and pid
+
+ unless ($rnsf || -r $Net::SSLeay::random_device || $seed || -S $egd_path) {
+ warn "Random number generator not seeded!!!" if $trace;
+ }
+
+ RAND_load_file($rn_seed_file, -s _) if $rnsf;
+ RAND_seed($seed) if $seed;
+ RAND_seed($ENV{RND_SEED}) if $ENV{RND_SEED};
+ RAND_egd($egd_path) if -e $egd_path && -S _;
+ RAND_load_file($Net::SSLeay::random_device, $Net::SSLeay::how_random/8)
+ if -r $Net::SSLeay::random_device;
+}
+
+# end of Net::SSLeay::randomize
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/set_cert_and_key.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/set_cert_and_key.al
new file mode 100755
index 00000000000..c01d81b05ca
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/set_cert_and_key.al
@@ -0,0 +1,23 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2420 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\set_cert_and_key.al)"
+###
+### Easy set up of private key and certificate
+###
+
+sub set_cert_and_key ($$$) {
+ my ($ctx, $cert_path, $key_path) = @_;
+ my $errs = '';
+ # Following will ask password unless private key is not encrypted
+ CTX_use_RSAPrivateKey_file ($ctx, $key_path, &FILETYPE_PEM);
+ $errs .= print_errs("private key `$key_path' ($!)");
+ CTX_use_certificate_file ($ctx, $cert_path, &FILETYPE_PEM);
+ $errs .= print_errs("certificate `$cert_path' ($!)");
+ return wantarray ? (undef, $errs) : ($errs eq '');
+}
+
+# end of Net::SSLeay::set_cert_and_key
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/set_proxy.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/set_proxy.al
new file mode 100755
index 00000000000..3488e566e8f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/set_proxy.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2441 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\set_proxy.al)"
+sub set_proxy ($$;**) {
+ ($proxyhost, $proxyport, $proxyuser, $proxypass) = @_;
+ require MIME::Base64 if $proxyuser;
+ $proxyauth = $CRLF . 'Proxy-authorization: Basic '
+ . MIME::Base64::encode("$proxyuser:$proxypass", '')
+ if $proxyuser;
+}
+
+# end of Net::SSLeay::set_proxy
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/set_server_cert_and_key.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/set_server_cert_and_key.al
new file mode 100755
index 00000000000..d0677fee0e4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/set_server_cert_and_key.al
@@ -0,0 +1,14 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2435 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\set_server_cert_and_key.al)"
+### Old deprecated API
+
+sub set_server_cert_and_key ($$$) { &set_cert_and_key }
+
+### Set up to use web proxy
+
+# end of Net::SSLeay::set_server_cert_and_key
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_read_CRLF.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_read_CRLF.al
new file mode 100755
index 00000000000..a2e3dcffc47
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_read_CRLF.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2079 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\ssl_read_CRLF.al)"
+# ssl_read_CRLF($ssl [, $max_length])
+sub ssl_read_CRLF ($;$) { ssl_read_until($_[0], $CRLF, $_[1]) }
+# end of Net::SSLeay::ssl_read_CRLF
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_read_all.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_read_all.al
new file mode 100755
index 00000000000..73154b37a6d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_read_all.al
@@ -0,0 +1,28 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1870 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\ssl_read_all.al)"
+sub ssl_read_all {
+ my ($ssl,$how_much) = @_;
+ $how_much = 2000000000 unless $how_much;
+ my ($got, $errs);
+ my $reply = '';
+
+ while ($how_much > 0) {
+ $got = Net::SSLeay::read($ssl,
+ ($how_much > 32768) ? 32768 : $how_much
+ );
+ last if $errs = print_errs('SSL_read');
+ $how_much -= blength($got);
+ debug_read(\$reply, \$got) if $trace>1;
+ last if $got eq ''; # EOF
+ $reply .= $got;
+ }
+
+ return wantarray ? ($reply, $errs) : $reply;
+}
+
+# end of Net::SSLeay::ssl_read_all
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_read_until.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_read_until.al
new file mode 100755
index 00000000000..252b4400516
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_read_until.al
@@ -0,0 +1,95 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1966 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\ssl_read_until.al)"
+### from patch by Clinton Wong <clintdw@netcom.com>
+
+# ssl_read_until($ssl [, $delimit [, $max_length]])
+# if $delimit missing, use $/ if it exists, otherwise use \n
+# read until delimiter reached, up to $max_length chars if defined
+
+sub ssl_read_until ($;$$) {
+ my ($ssl,$delim, $max_length) = @_;
+ local $[;
+
+ # guess the delim string if missing
+ if ( ! defined $delim ) {
+ if ( defined $/ && length $/ ) { $delim = $/ }
+ else { $delim = "\n" } # Note: \n,$/ value depends on the platform
+ }
+ my $len_delim = length $delim;
+
+ my ($got);
+ my $reply = '';
+
+ # If we have OpenSSL 0.9.6a or later, we can use SSL_peek to
+ # speed things up.
+ # N.B. 0.9.6a has security problems, so the support for
+ # anything earlier than 0.9.6e will be dropped soon.
+ if (&Net::SSLeay::OPENSSL_VERSION_NUMBER >= 0x0090601f) {
+ $max_length = 2000000000 unless (defined $max_length);
+ my ($pending, $peek_length, $found, $done);
+ while (blength($reply) < $max_length and !$done) {
+ #Block if necessary until we get some data
+ $got = Net::SSLeay::peek($ssl,1);
+ last if print_errs('SSL_peek');
+
+ $pending = Net::SSLeay::pending($ssl) + blength($reply);
+ $peek_length = ($pending > $max_length) ? $max_length : $pending;
+ $peek_length -= blength($reply);
+ $got = Net::SSLeay::peek($ssl, $peek_length);
+ last if print_errs('SSL_peek');
+ $peek_length = blength($got);
+
+ #$found = index($got, $delim); # Old and broken
+
+ # the delimiter may be split across two gets, so we prepend
+ # a little from the last get onto this one before we check
+ # for a match
+ my $match;
+ if(blength($reply) >= blength($delim) - 1) {
+ #if what we've read so far is greater or equal
+ #in length of what we need to prepatch
+ $match = substr $reply, blength($reply) - blength($delim) + 1;
+ } else {
+ $match = $reply;
+ }
+
+ $match .= $got;
+ $found = index($match, $delim);
+
+ if ($found > -1) {
+ #$got = Net::SSLeay::read($ssl, $found+$len_delim);
+ #read up to the end of the delimiter
+ $got = Net::SSLeay::read($ssl,
+ $found + $len_delim
+ - ((blength $match) - (blength $got)));
+ $done = 1;
+ } else {
+ $got = Net::SSLeay::read($ssl, $peek_length);
+ $done = 1 if ($peek_length == $max_length - blength($reply));
+ }
+
+ last if print_errs('SSL_read');
+ debug_read(\$reply, \$got) if $trace>1;
+ last if $got eq '';
+ $reply .= $got;
+ }
+ } else {
+ while (!defined $max_length || length $reply < $max_length) {
+ $got = Net::SSLeay::read($ssl,1); # one by one
+ last if print_errs('SSL_read');
+ debug_read(\$reply, \$got) if $trace>1;
+ last if $got eq '';
+ $reply .= $got;
+ last if $len_delim
+ && substr($reply, blength($reply)-$len_delim) eq $delim;
+ }
+ }
+ return $reply;
+}
+
+# end of Net::SSLeay::ssl_read_until
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_write_CRLF.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_write_CRLF.al
new file mode 100755
index 00000000000..586198b4132
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_write_CRLF.al
@@ -0,0 +1,23 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2084 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\ssl_write_CRLF.al)"
+sub ssl_write_CRLF ($$) {
+ # the next line uses less memory but might use more network packets
+ return ssl_write_all($_[0], $_[1]) + ssl_write_all($_[0], $CRLF);
+
+ # the next few lines do the same thing at the expense of memory, with
+ # the chance that it will use less packets, since CRLF is in the original
+ # message and won't be sent separately.
+
+ #my $data_ref;
+ #if (ref $_[1]) { $data_ref = $_[1] }
+ # else { $data_ref = \$_[1] }
+ #my $message = $$data_ref . $CRLF;
+ #return ssl_write_all($_[0], \$message);
+}
+
+# end of Net::SSLeay::ssl_write_CRLF
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_write_all.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_write_all.al
new file mode 100755
index 00000000000..cf18ffd4eb1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/ssl_write_all.al
@@ -0,0 +1,38 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1908 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\ssl_write_all.al)"
+sub ssl_write_all {
+ my $ssl = $_[0];
+ my ($data_ref, $errs);
+ if (ref $_[1]) {
+ $data_ref = $_[1];
+ } else {
+ $data_ref = \$_[1];
+ }
+ my ($wrote, $written, $to_write) = (0,0, blength($$data_ref));
+ my $vm = $trace>2 && $linux_debug ?
+ (split ' ', `cat /proc/$$/stat`)[22] : 'vm_unknown';
+ warn " write_all VM at entry=$vm\n" if $trace>2;
+ while ($to_write) {
+ #sleep 1; # *** DEBUG
+ warn "partial `$$data_ref'\n" if $trace>3;
+ $wrote = write_partial($ssl, $written, $to_write, $$data_ref);
+ if (defined $wrote && ($wrote > 0)) { # write_partial can return -1
+ $written += $wrote;
+ $to_write -= $wrote;
+ }
+ $vm = $trace>2 && $linux_debug ?
+ (split ' ', `cat /proc/$$/stat`)[22] : 'vm_unknown';
+ warn " written so far $wrote:$written bytes (VM=$vm)\n" if $trace>2;
+
+ $errs .= print_errs('SSL_write');
+ return (wantarray ? (undef, $errs) : undef) if $errs;
+ }
+ return wantarray ? ($written, $errs) : $written;
+}
+
+# end of Net::SSLeay::ssl_write_all
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/sslcat.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/sslcat.al
new file mode 100755
index 00000000000..9cb18a3a842
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/sslcat.al
@@ -0,0 +1,99 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2166 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\sslcat.al)"
+###
+### Basic request - response primitive (don't use for https)
+###
+
+sub sslcat { # address, port, message, $crt, $key --> reply / (reply,errs,cert)
+ my ($dest_serv, $port, $out_message, $crt_path, $key_path) = @_;
+ my ($ctx, $ssl, $got, $errs, $written);
+
+ ($got, $errs) = open_proxy_tcp_connection($dest_serv, $port);
+ return (wantarray ? (undef, $errs) : undef) unless $got;
+
+ ### Do SSL negotiation stuff
+
+ warn "Creating SSL $ssl_version context...\n" if $trace>2;
+ load_error_strings(); # Some bloat, but I'm after ease of use
+ SSLeay_add_ssl_algorithms(); # and debuggability.
+ randomize();
+
+ $ctx = new_x_ctx();
+ goto cleanup2 if $errs = print_errs('CTX_new') or !$ctx;
+
+ CTX_set_options($ctx, &OP_ALL);
+ goto cleanup2 if $errs = print_errs('CTX_set_options');
+
+ warn "Cert `$crt_path' given without key" if $crt_path && !$key_path;
+ set_cert_and_key($ctx, $crt_path, $key_path) if $crt_path;
+
+ warn "Creating SSL connection (context was '$ctx')...\n" if $trace>2;
+ $ssl = new($ctx);
+ goto cleanup if $errs = print_errs('SSL_new') or !$ssl;
+
+ warn "Setting fd (ctx $ctx, con $ssl)...\n" if $trace>2;
+ set_fd($ssl, fileno(SSLCAT_S));
+ goto cleanup if $errs = print_errs('set_fd');
+
+ warn "Entering SSL negotiation phase...\n" if $trace>2;
+
+ if ($trace>2) {
+ my $i = 0;
+ my $p = '';
+ my $cipher_list = 'Cipher list: ';
+ $p=Net::SSLeay::get_cipher_list($ssl,$i);
+ $cipher_list .= $p if $p;
+ do {
+ $i++;
+ $cipher_list .= ', ' . $p if $p;
+ $p=Net::SSLeay::get_cipher_list($ssl,$i);
+ } while $p;
+ $cipher_list .= '\n';
+ warn $cipher_list;
+ }
+
+ $got = Net::SSLeay::connect($ssl);
+ warn "SSLeay connect returned $got\n" if $trace>2;
+ goto cleanup if $errs = print_errs('SSL_connect');
+
+ my $server_cert = get_peer_certificate($ssl);
+ print_errs('get_peer_certificate');
+ if ($trace>1) {
+ warn "Cipher `" . get_cipher($ssl) . "'\n";
+ print_errs('get_ciper');
+ warn dump_peer_certificate($ssl);
+ }
+
+ ### Connected. Exchange some data (doing repeated tries if necessary).
+
+ warn "sslcat $$: sending " . blength($out_message) . " bytes...\n"
+ if $trace==3;
+ warn "sslcat $$: sending `$out_message' (" . blength($out_message)
+ . " bytes)...\n" if $trace>3;
+ ($written, $errs) = ssl_write_all($ssl, $out_message);
+ goto cleanup unless $written;
+
+ sleep $slowly if $slowly; # Closing too soon can abort broken servers
+ CORE::shutdown SSLCAT_S, 1; # Half close --> No more output, send EOF to server
+
+ warn "waiting for reply...\n" if $trace>2;
+ ($got, $errs) = ssl_read_all($ssl);
+ warn "Got " . blength($got) . " bytes.\n" if $trace==3;
+ warn "Got `$got' (" . blength($got) . " bytes)\n" if $trace>3;
+
+cleanup:
+ free ($ssl);
+ $errs .= print_errs('SSL_free');
+cleanup2:
+ CTX_free ($ctx);
+ $errs .= print_errs('CTX_free');
+ close SSLCAT_S;
+ return wantarray ? ($got, $errs, $server_cert) : $got;
+}
+
+# end of Net::SSLeay::sslcat
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_read_CRLF.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_read_CRLF.al
new file mode 100755
index 00000000000..1cbec66b70f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_read_CRLF.al
@@ -0,0 +1,11 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2081 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcp_read_CRLF.al)"
+sub tcp_read_CRLF { tcp_read_until($CRLF, $_[0]) }
+
+# ssl_write_CRLF($ssl, $message) writes $message and appends CRLF
+# end of Net::SSLeay::tcp_read_CRLF
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_read_all.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_read_all.al
new file mode 100755
index 00000000000..4b583610227
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_read_all.al
@@ -0,0 +1,26 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1890 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcp_read_all.al)"
+sub tcp_read_all {
+ my ($how_much) = @_;
+ $how_much = 2000000000 unless $how_much;
+ my ($n, $got, $errs);
+ my $reply = '';
+
+ my $bsize = 0x10000;
+ while ($how_much > 0) {
+ $n = sysread(SSLCAT_S,$got, (($bsize < $how_much) ? $bsize : $how_much));
+ warn "Read error: $! ($n,$how_much)" unless defined $n;
+ last if !$n; # EOF
+ $how_much -= $n;
+ debug_read(\$reply, \$got) if $trace>1;
+ $reply .= $got;
+ }
+ return wantarray ? ($reply, $errs) : $reply;
+}
+
+# end of Net::SSLeay::tcp_read_all
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_read_until.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_read_until.al
new file mode 100755
index 00000000000..c6be56ed626
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_read_until.al
@@ -0,0 +1,34 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2053 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcp_read_until.al)"
+sub tcp_read_until {
+ my ($delim, $max_length) = @_;
+ local $[;
+
+ # guess the delim string if missing
+ if ( ! defined $delim ) {
+ if ( defined $/ && length $/ ) { $delim = $/ }
+ else { $delim = "\n" } # Note: \n,$/ value depends on the platform
+ }
+ my $len_delim = length $delim;
+
+ my ($n,$got);
+ my $reply = '';
+
+ while (!defined $max_length || length $reply < $max_length) {
+ $n = sysread(SSLCAT_S, $got, 1); # one by one
+ warn "tcp_read_until: $!" if !defined $n;
+ debug_read(\$reply, \$got) if $trace>1;
+ last if !$n; # EOF
+ $reply .= $got;
+ last if $len_delim
+ && substr($reply, blength($reply)-$len_delim) eq $delim;
+ }
+ return $reply;
+}
+
+# end of Net::SSLeay::tcp_read_until
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_write_CRLF.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_write_CRLF.al
new file mode 100755
index 00000000000..fc3f04af922
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_write_CRLF.al
@@ -0,0 +1,23 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2099 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcp_write_CRLF.al)"
+sub tcp_write_CRLF {
+ # the next line uses less memory but might use more network packets
+ return tcp_write_all($_[0]) + tcp_write_all($CRLF);
+
+ # the next few lines do the same thing at the expense of memory, with
+ # the chance that it will use less packets, since CRLF is in the original
+ # message and won't be sent separately.
+
+ #my $data_ref;
+ #if (ref $_[1]) { $data_ref = $_[1] }
+ # else { $data_ref = \$_[1] }
+ #my $message = $$data_ref . $CRLF;
+ #return tcp_write_all($_[0], \$message);
+}
+
+# end of Net::SSLeay::tcp_write_CRLF
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_write_all.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_write_all.al
new file mode 100755
index 00000000000..0c701728a86
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcp_write_all.al
@@ -0,0 +1,36 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1938 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcp_write_all.al)"
+sub tcp_write_all {
+ my ($data_ref, $errs);
+ if (ref $_[0]) {
+ $data_ref = $_[0];
+ } else {
+ $data_ref = \$_[0];
+ }
+ my ($wrote, $written, $to_write) = (0,0, blength($$data_ref));
+ my $vm = $trace>2 && $linux_debug ?
+ (split ' ', `cat /proc/$$/stat`)[22] : 'vm_unknown';
+ warn " write_all VM at entry=$vm to_write=$to_write\n" if $trace>2;
+ while ($to_write) {
+ warn "partial `$$data_ref'\n" if $trace>3;
+ $wrote = syswrite(SSLCAT_S, $$data_ref, $to_write, $written);
+ if (defined $wrote && ($wrote > 0)) { # write_partial can return -1
+ $written += $wrote;
+ $to_write -= $wrote;
+ } elsif (!defined($wrote)) {
+ warn "tcp_write_all: $!";
+ return (wantarray ? (undef, "$!") : undef);
+ }
+ $vm = $trace>2 && $linux_debug ?
+ (split ' ', `cat /proc/$$/stat`)[22] : 'vm_unknown';
+ warn " written so far $wrote:$written bytes (VM=$vm)\n" if $trace>2;
+ }
+ return wantarray ? ($written, '') : $written;
+}
+
+# end of Net::SSLeay::tcp_write_all
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcpcat.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcpcat.al
new file mode 100755
index 00000000000..b36faeae7a2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcpcat.al
@@ -0,0 +1,37 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2257 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcpcat.al)"
+sub tcpcat { # address, port, message, $crt, $key --> reply / (reply,errs,cert)
+ my ($dest_serv, $port, $out_message) = @_;
+ my ($got, $errs, $written);
+
+ ($got, $errs) = open_proxy_tcp_connection($dest_serv, $port);
+ return (wantarray ? (undef, $errs) : undef) unless $got;
+
+ ### Connected. Exchange some data (doing repeated tries if necessary).
+
+ warn "tcpcat $$: sending " . blength($out_message) . " bytes...\n"
+ if $trace==3;
+ warn "tcpcat $$: sending `$out_message' (" . blength($out_message)
+ . " bytes)...\n" if $trace>3;
+ ($written, $errs) = tcp_write_all($out_message);
+ goto cleanup unless $written;
+
+ sleep $slowly if $slowly; # Closing too soon can abort broken servers
+ CORE::shutdown SSLCAT_S, 1; # Half close --> No more output, send EOF to server
+
+ warn "waiting for reply...\n" if $trace>2;
+ ($got, $errs) = tcp_read_all($ssl);
+ warn "Got " . blength($got) . " bytes.\n" if $trace==3;
+ warn "Got `$got' (" . blength($got) . " bytes)\n" if $trace>3;
+
+cleanup:
+ close SSLCAT_S;
+ return wantarray ? ($got, $errs) : $got;
+}
+
+# end of Net::SSLeay::tcpcat
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcpxcat.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcpxcat.al
new file mode 100755
index 00000000000..4e79ce00087
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/tcpxcat.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2286 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcpxcat.al)"
+sub tcpxcat {
+ my ($usessl, $site, $port, $req, $crt_path, $key_path) = @_;
+ if ($usessl) {
+ return sslcat($site, $port, $req, $crt_path, $key_path);
+ } else {
+ return tcpcat($site, $port, $req);
+ }
+}
+
+# end of Net::SSLeay::tcpxcat
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/want_X509_lookup.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/want_X509_lookup.al
new file mode 100755
index 00000000000..e17c706f565
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/want_X509_lookup.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1794 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\want_X509_lookup.al)"
+sub want_X509_lookup { want(shift) == 4 }
+
+###
+### Open TCP stream to given host and port, looking up the details
+### from system databases or DNS.
+###
+
+# end of Net::SSLeay::want_X509_lookup
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/want_nothing.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/want_nothing.al
new file mode 100755
index 00000000000..df3d1005d24
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/want_nothing.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1784 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\want_nothing.al)"
+# Documentation. Use `perl-root/pod/pod2html SSLeay.pm` to output html
+
+
+# ';
+
+### Some methods that are macros in C
+
+sub want_nothing { want(shift) == 1 }
+# end of Net::SSLeay::want_nothing
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/want_read.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/want_read.al
new file mode 100755
index 00000000000..e3a41612772
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/want_read.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1792 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\want_read.al)"
+sub want_read { want(shift) == 2 }
+# end of Net::SSLeay::want_read
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/want_write.al b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/want_write.al
new file mode 100755
index 00000000000..941e1853bbe
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Net/SSLeay/want_write.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1793 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\want_write.al)"
+sub want_write { want(shift) == 3 }
+# end of Net::SSLeay::want_write
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Number/Compare/.packlist b/Master/tlpkg/tlperl/lib/auto/Number/Compare/.packlist
new file mode 100755
index 00000000000..81c9a811e0c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Number/Compare/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Number\Compare.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Object/Accessor/.packlist b/Master/tlpkg/tlperl/lib/auto/Object/Accessor/.packlist
new file mode 100755
index 00000000000..2602ae2199e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Object/Accessor/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Object\Accessor.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Opcode/Opcode.dll b/Master/tlpkg/tlperl/lib/auto/Opcode/Opcode.dll
new file mode 100755
index 00000000000..89a416de5c3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Opcode/Opcode.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/PAR/.packlist b/Master/tlpkg/tlperl/lib/auto/PAR/.packlist
new file mode 100755
index 00000000000..6a263a75cad
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/PAR/.packlist
@@ -0,0 +1,7 @@
+C:\strawberry\perl\vendor\lib\PAR.pm
+C:\strawberry\perl\vendor\lib\PAR\Environment.pod
+C:\strawberry\perl\vendor\lib\PAR\FAQ.pod
+C:\strawberry\perl\vendor\lib\PAR\Heavy.pm
+C:\strawberry\perl\vendor\lib\PAR\SetupProgname.pm
+C:\strawberry\perl\vendor\lib\PAR\SetupTemp.pm
+C:\strawberry\perl\vendor\lib\PAR\Tutorial.pod
diff --git a/Master/tlpkg/tlperl/lib/auto/PAR/Dist/.packlist b/Master/tlpkg/tlperl/lib/auto/PAR/Dist/.packlist
new file mode 100755
index 00000000000..f58e59ac6a9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/PAR/Dist/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\PAR\Dist.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/PAR/Dist/FromPPD/.packlist b/Master/tlpkg/tlperl/lib/auto/PAR/Dist/FromPPD/.packlist
new file mode 100755
index 00000000000..82db882d4b6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/PAR/Dist/FromPPD/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\bin\ppd2par
+C:\strawberry\perl\bin\ppd2par.bat
+C:\strawberry\perl\vendor\lib\PAR\Dist\FromPPD.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/PAR/Dist/InstallPPD/.packlist b/Master/tlpkg/tlperl/lib/auto/PAR/Dist/InstallPPD/.packlist
new file mode 100755
index 00000000000..e1481a92eca
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/PAR/Dist/InstallPPD/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\bin\parinstallppd
+C:\strawberry\perl\bin\parinstallppd.bat
+C:\strawberry\perl\vendor\lib\PAR\Dist\InstallPPD.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/PAR/Repository/Client/.packlist b/Master/tlpkg/tlperl/lib/auto/PAR/Repository/Client/.packlist
new file mode 100755
index 00000000000..404e521bacb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/PAR/Repository/Client/.packlist
@@ -0,0 +1,5 @@
+C:\strawberry\perl\vendor\lib\PAR\Repository\Client.pm
+C:\strawberry\perl\vendor\lib\PAR\Repository\Client\DBM.pm
+C:\strawberry\perl\vendor\lib\PAR\Repository\Client\HTTP.pm
+C:\strawberry\perl\vendor\lib\PAR\Repository\Client\Local.pm
+C:\strawberry\perl\vendor\lib\PAR\Repository\Client\Util.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/PAR/Repository/Query/.packlist b/Master/tlpkg/tlperl/lib/auto/PAR/Repository/Query/.packlist
new file mode 100755
index 00000000000..8410ab340d7
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/PAR/Repository/Query/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\PAR\Repository\Query.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/POSIX.dll b/Master/tlpkg/tlperl/lib/auto/POSIX/POSIX.dll
new file mode 100755
index 00000000000..1af4b64989b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/POSIX.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/flags.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/flags.al
new file mode 100755
index 00000000000..7cbdb7bb920
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/flags.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigAction;
+
+#line 986 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigAction\flags.al)"
+sub flags { $_[0]->{FLAGS} = $_[1] if @_ > 1; $_[0]->{FLAGS} };
+# end of POSIX::SigAction::flags
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/handler.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/handler.al
new file mode 100755
index 00000000000..3d03d1c9a99
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/handler.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigAction;
+
+#line 984 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigAction\handler.al)"
+sub handler { $_[0]->{HANDLER} = $_[1] if @_ > 1; $_[0]->{HANDLER} };
+# end of POSIX::SigAction::handler
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/mask.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/mask.al
new file mode 100755
index 00000000000..bc8bd31e8c0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/mask.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigAction;
+
+#line 985 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigAction\mask.al)"
+sub mask { $_[0]->{MASK} = $_[1] if @_ > 1; $_[0]->{MASK} };
+# end of POSIX::SigAction::mask
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/new.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/new.al
new file mode 100755
index 00000000000..b74b2d4a4de
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/new.al
@@ -0,0 +1,11 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigAction;
+
+#line 981 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigAction\new.al)"
+package POSIX::SigAction;
+
+sub new { bless {HANDLER => $_[1], MASK => $_[2], FLAGS => $_[3] || 0, SAFE => 0}, $_[0] }
+# end of POSIX::SigAction::new
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/safe.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/safe.al
new file mode 100755
index 00000000000..a9f21cc5f18
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigAction/safe.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigAction;
+
+#line 987 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigAction\safe.al)"
+sub safe { $_[0]->{SAFE} = $_[1] if @_ > 1; $_[0]->{SAFE} };
+
+package POSIX::SigRt;
+
+
+# end of POSIX::SigRt::safe
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/CLEAR.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/CLEAR.al
new file mode 100755
index 00000000000..78d3d5bb622
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/CLEAR.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigRt;
+
+#line 1041 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigRt\CLEAR.al)"
+sub CLEAR { &_exist; delete @SIG{ &POSIX::SIGRTMIN .. &POSIX::SIGRTMAX } }
+# end of POSIX::SigRt::CLEAR
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/DELETE.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/DELETE.al
new file mode 100755
index 00000000000..6bac474d05b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/DELETE.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigRt;
+
+#line 1040 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigRt\DELETE.al)"
+sub DELETE { delete $SIG{ &_check } }
+# end of POSIX::SigRt::DELETE
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/EXISTS.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/EXISTS.al
new file mode 100755
index 00000000000..2f2c73d94a8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/EXISTS.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigRt;
+
+#line 1034 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigRt\EXISTS.al)"
+sub EXISTS { &_exist }
+# end of POSIX::SigRt::EXISTS
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/FETCH.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/FETCH.al
new file mode 100755
index 00000000000..ed18ab0d9b6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/FETCH.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigRt;
+
+#line 1035 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigRt\FETCH.al)"
+sub FETCH { my $rtsig = &_check;
+ my $oa = POSIX::SigAction->new();
+ POSIX::sigaction($rtsig, undef, $oa);
+ return $oa->{HANDLER} }
+# end of POSIX::SigRt::FETCH
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/SCALAR.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/SCALAR.al
new file mode 100755
index 00000000000..feec293431c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/SCALAR.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigRt;
+
+#line 1042 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigRt\SCALAR.al)"
+sub SCALAR { &_croak; $_sigrtn + 1 }
+1;
+# end of POSIX::SigRt::SCALAR
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/STORE.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/STORE.al
new file mode 100755
index 00000000000..f4c6466a06b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/STORE.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigRt;
+
+#line 1039 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigRt\STORE.al)"
+sub STORE { my $rtsig = &_check; new($rtsig, $_[2], $SIGACTION_FLAGS) }
+# end of POSIX::SigRt::STORE
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_check.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_check.al
new file mode 100755
index 00000000000..c1a46c3e6c3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_check.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigRt;
+
+#line 1018 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigRt\_check.al)"
+sub _check {
+ my ($rtsig, $ok) = &_exist;
+ die "No POSIX::SigRt signal $_[1] (valid range SIGRTMIN..SIGRTMAX, or $_SIGRTMIN..$_SIGRTMAX)"
+ unless $ok;
+ return $rtsig;
+}
+
+# end of POSIX::SigRt::_check
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_croak.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_croak.al
new file mode 100755
index 00000000000..742d4e9cd46
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_croak.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigRt;
+
+#line 998 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigRt\_croak.al)"
+sub _croak {
+ &_init unless defined $_sigrtn;
+ die "POSIX::SigRt not available" unless defined $_sigrtn && $_sigrtn > 0;
+}
+
+# end of POSIX::SigRt::_croak
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_exist.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_exist.al
new file mode 100755
index 00000000000..075bbed6ab8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_exist.al
@@ -0,0 +1,14 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigRt;
+
+#line 1012 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigRt\_exist.al)"
+sub _exist {
+ my $rtsig = _getsig($_[1]);
+ my $ok = $rtsig >= $_SIGRTMIN && $rtsig <= $_SIGRTMAX;
+ ($rtsig, $ok);
+}
+
+# end of POSIX::SigRt::_exist
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_getsig.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_getsig.al
new file mode 100755
index 00000000000..1cdbfaaf197
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_getsig.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigRt;
+
+#line 1003 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigRt\_getsig.al)"
+sub _getsig {
+ &_croak;
+ my $rtsig = $_[0];
+ # Allow (SIGRT)?MIN( + n)?, a common idiom when doing these things in C.
+ $rtsig = $_SIGRTMIN + ($1 || 0)
+ if $rtsig =~ /^(?:(?:SIG)?RT)?MIN(\s*\+\s*(\d+))?$/;
+ return $rtsig;
+}
+
+# end of POSIX::SigRt::_getsig
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_init.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_init.al
new file mode 100755
index 00000000000..8ac96299ec6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/_init.al
@@ -0,0 +1,14 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigRt;
+
+#line 992 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigRt\_init.al)"
+sub _init {
+ $_SIGRTMIN = &POSIX::SIGRTMIN;
+ $_SIGRTMAX = &POSIX::SIGRTMAX;
+ $_sigrtn = $_SIGRTMAX - $_SIGRTMIN;
+}
+
+# end of POSIX::SigRt::_init
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/new.al b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/new.al
new file mode 100755
index 00000000000..30b6100a634
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/SigRt/new.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX::SigRt;
+
+#line 1025 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\SigRt\new.al)"
+sub new {
+ my ($rtsig, $handler, $flags) = @_;
+ my $sigset = POSIX::SigSet->new($rtsig);
+ my $sigact = POSIX::SigAction->new($handler,
+ $sigset,
+ $flags);
+ POSIX::sigaction($rtsig, $sigact);
+}
+
+# end of POSIX::SigRt::new
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/abs.al b/Master/tlpkg/tlperl/lib/auto/POSIX/abs.al
new file mode 100755
index 00000000000..a882e5a0309
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/abs.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 414 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\abs.al)"
+sub abs {
+ usage "abs(x)" if @_ != 1;
+ CORE::abs($_[0]);
+}
+
+# end of POSIX::abs
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/alarm.al b/Master/tlpkg/tlperl/lib/auto/POSIX/alarm.al
new file mode 100755
index 00000000000..2bf97977aeb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/alarm.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 631 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\alarm.al)"
+sub alarm {
+ usage "alarm(seconds)" if @_ != 1;
+ CORE::alarm($_[0]);
+}
+
+# end of POSIX::alarm
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/assert.al b/Master/tlpkg/tlperl/lib/auto/POSIX/assert.al
new file mode 100755
index 00000000000..fbeefa8583c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/assert.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 96 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\assert.al)"
+sub assert {
+ usage "assert(expr)" if @_ != 1;
+ if (!$_[0]) {
+ croak "Assertion failed";
+ }
+}
+
+# end of POSIX::assert
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/atan2.al b/Master/tlpkg/tlperl/lib/auto/POSIX/atan2.al
new file mode 100755
index 00000000000..41b71fab8e4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/atan2.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 161 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\atan2.al)"
+sub atan2 {
+ usage "atan2(x,y)" if @_ != 2;
+ CORE::atan2($_[0], $_[1]);
+}
+
+# end of POSIX::atan2
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/atexit.al b/Master/tlpkg/tlperl/lib/auto/POSIX/atexit.al
new file mode 100755
index 00000000000..7df942dfda6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/atexit.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 419 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\atexit.al)"
+sub atexit {
+ unimpl "atexit() is C-specific: use END {} instead";
+}
+
+# end of POSIX::atexit
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/atof.al b/Master/tlpkg/tlperl/lib/auto/POSIX/atof.al
new file mode 100755
index 00000000000..5f4d2c51bbb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/atof.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 423 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\atof.al)"
+sub atof {
+ unimpl "atof() is C-specific, stopped";
+}
+
+# end of POSIX::atof
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/atoi.al b/Master/tlpkg/tlperl/lib/auto/POSIX/atoi.al
new file mode 100755
index 00000000000..57b26c01896
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/atoi.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 427 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\atoi.al)"
+sub atoi {
+ unimpl "atoi() is C-specific, stopped";
+}
+
+# end of POSIX::atoi
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/atol.al b/Master/tlpkg/tlperl/lib/auto/POSIX/atol.al
new file mode 100755
index 00000000000..f5784993845
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/atol.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 431 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\atol.al)"
+sub atol {
+ unimpl "atol() is C-specific, stopped";
+}
+
+# end of POSIX::atol
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/POSIX/autosplit.ix
new file mode 100755
index 00000000000..cc56f9ada79
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/autosplit.ix
@@ -0,0 +1,173 @@
+# Index created by AutoSplit for ..\..\lib\POSIX.pm
+# (file acts as timestamp)
+package POSIX;
+sub usage ;
+sub redef ;
+sub unimpl ;
+sub assert ;
+sub tolower ;
+sub toupper ;
+sub closedir ;
+sub opendir ;
+sub readdir ;
+sub rewinddir ;
+sub errno ;
+sub creat ;
+sub fcntl ;
+sub getgrgid ;
+sub getgrnam ;
+sub atan2 ;
+sub cos ;
+sub exp ;
+sub fabs ;
+sub log ;
+sub pow ;
+sub sin ;
+sub sqrt ;
+sub getpwnam ;
+sub getpwuid ;
+sub longjmp ;
+sub setjmp ;
+sub siglongjmp ;
+sub sigsetjmp ;
+sub kill ;
+sub raise ;
+sub offsetof ;
+sub clearerr ;
+sub fclose ;
+sub fdopen ;
+sub feof ;
+sub fgetc ;
+sub fgets ;
+sub fileno ;
+sub fopen ;
+sub fprintf ;
+sub fputc ;
+sub fputs ;
+sub fread ;
+sub freopen ;
+sub fscanf ;
+sub fseek ;
+sub fsync ;
+sub ferror ;
+sub fflush ;
+sub fgetpos ;
+sub fsetpos ;
+sub ftell ;
+sub fwrite ;
+sub getc ;
+sub getchar ;
+sub gets ;
+sub perror ;
+sub printf ;
+sub putc ;
+sub putchar ;
+sub puts ;
+sub remove ;
+sub rename ;
+sub rewind ;
+sub scanf ;
+sub sprintf ;
+sub sscanf ;
+sub tmpfile ;
+sub ungetc ;
+sub vfprintf ;
+sub vprintf ;
+sub vsprintf ;
+sub abs ;
+sub atexit ;
+sub atof ;
+sub atoi ;
+sub atol ;
+sub bsearch ;
+sub calloc ;
+sub div ;
+sub exit ;
+sub free ;
+sub getenv ;
+sub labs ;
+sub ldiv ;
+sub malloc ;
+sub qsort ;
+sub rand ;
+sub realloc ;
+sub srand ;
+sub system ;
+sub memchr ;
+sub memcmp ;
+sub memcpy ;
+sub memmove ;
+sub memset ;
+sub strcat ;
+sub strchr ;
+sub strcmp ;
+sub strcpy ;
+sub strcspn ;
+sub strerror ;
+sub strlen ;
+sub strncat ;
+sub strncmp ;
+sub strncpy ;
+sub strpbrk ;
+sub strrchr ;
+sub strspn ;
+sub strstr ;
+sub strtok ;
+sub chmod ;
+sub fstat ;
+sub mkdir ;
+sub stat ;
+sub umask ;
+sub wait ;
+sub waitpid ;
+sub gmtime ;
+sub localtime ;
+sub time ;
+sub alarm ;
+sub chdir ;
+sub chown ;
+sub execl ;
+sub execle ;
+sub execlp ;
+sub execv ;
+sub execve ;
+sub execvp ;
+sub fork ;
+sub getegid ;
+sub geteuid ;
+sub getgid ;
+sub getgroups ;
+sub getlogin ;
+sub getpgrp ;
+sub getpid ;
+sub getppid ;
+sub getuid ;
+sub isatty ;
+sub link ;
+sub rmdir ;
+sub setbuf ;
+sub setvbuf ;
+sub sleep ;
+sub unlink ;
+sub utime ;
+sub load_imports ;
+package POSIX::SigAction;
+sub new ;
+sub handler ;
+sub mask ;
+sub flags ;
+sub safe ;
+package POSIX::SigRt;
+sub _init ;
+sub _croak ;
+sub _getsig ;
+sub _exist ;
+sub _check ;
+sub new ;
+sub EXISTS ;
+sub FETCH ;
+sub STORE ;
+sub DELETE ;
+sub CLEAR ;
+sub SCALAR ;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/bsearch.al b/Master/tlpkg/tlperl/lib/auto/POSIX/bsearch.al
new file mode 100755
index 00000000000..617c37ee740
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/bsearch.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 435 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\bsearch.al)"
+sub bsearch {
+ unimpl "bsearch() not supplied";
+}
+
+# end of POSIX::bsearch
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/calloc.al b/Master/tlpkg/tlperl/lib/auto/POSIX/calloc.al
new file mode 100755
index 00000000000..01b6db33ae8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/calloc.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 439 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\calloc.al)"
+sub calloc {
+ unimpl "calloc() is C-specific, stopped";
+}
+
+# end of POSIX::calloc
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/chdir.al b/Master/tlpkg/tlperl/lib/auto/POSIX/chdir.al
new file mode 100755
index 00000000000..9b6b663387d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/chdir.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 636 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\chdir.al)"
+sub chdir {
+ usage "chdir(directory)" if @_ != 1;
+ CORE::chdir($_[0]);
+}
+
+# end of POSIX::chdir
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/chmod.al b/Master/tlpkg/tlperl/lib/auto/POSIX/chmod.al
new file mode 100755
index 00000000000..86721b2ae61
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/chmod.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 577 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\chmod.al)"
+sub chmod {
+ usage "chmod(mode, filename)" if @_ != 2;
+ CORE::chmod($_[0], $_[1]);
+}
+
+# end of POSIX::chmod
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/chown.al b/Master/tlpkg/tlperl/lib/auto/POSIX/chown.al
new file mode 100755
index 00000000000..9c12a41fa04
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/chown.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 641 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\chown.al)"
+sub chown {
+ usage "chown(uid, gid, filename)" if @_ != 3;
+ CORE::chown($_[0], $_[1], $_[2]);
+}
+
+# end of POSIX::chown
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/clearerr.al b/Master/tlpkg/tlperl/lib/auto/POSIX/clearerr.al
new file mode 100755
index 00000000000..bae5e4f2f1d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/clearerr.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 241 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\clearerr.al)"
+sub clearerr {
+ redef "IO::Handle::clearerr()";
+}
+
+# end of POSIX::clearerr
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/closedir.al b/Master/tlpkg/tlperl/lib/auto/POSIX/closedir.al
new file mode 100755
index 00000000000..425cbd44126
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/closedir.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 113 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\closedir.al)"
+sub closedir {
+ usage "closedir(dirhandle)" if @_ != 1;
+ CORE::closedir($_[0]);
+}
+
+# end of POSIX::closedir
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/cos.al b/Master/tlpkg/tlperl/lib/auto/POSIX/cos.al
new file mode 100755
index 00000000000..890ef0c2354
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/cos.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 166 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\cos.al)"
+sub cos {
+ usage "cos(x)" if @_ != 1;
+ CORE::cos($_[0]);
+}
+
+# end of POSIX::cos
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/creat.al b/Master/tlpkg/tlperl/lib/auto/POSIX/creat.al
new file mode 100755
index 00000000000..5ed2f6eee46
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/creat.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 141 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\creat.al)"
+sub creat {
+ usage "creat(filename, mode)" if @_ != 2;
+ &open($_[0], &O_WRONLY | &O_CREAT | &O_TRUNC, $_[1]);
+}
+
+# end of POSIX::creat
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/div.al b/Master/tlpkg/tlperl/lib/auto/POSIX/div.al
new file mode 100755
index 00000000000..5871ee1b0de
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/div.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 443 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\div.al)"
+sub div {
+ unimpl "div() is C-specific, use /, % and int instead";
+}
+
+# end of POSIX::div
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/errno.al b/Master/tlpkg/tlperl/lib/auto/POSIX/errno.al
new file mode 100755
index 00000000000..e7362909f46
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/errno.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 136 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\errno.al)"
+sub errno {
+ usage "errno()" if @_ != 0;
+ $! + 0;
+}
+
+# end of POSIX::errno
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/execl.al b/Master/tlpkg/tlperl/lib/auto/POSIX/execl.al
new file mode 100755
index 00000000000..33e650902bc
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/execl.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 646 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\execl.al)"
+sub execl {
+ unimpl "execl() is C-specific, stopped";
+}
+
+# end of POSIX::execl
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/execle.al b/Master/tlpkg/tlperl/lib/auto/POSIX/execle.al
new file mode 100755
index 00000000000..43d56a3bda1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/execle.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 650 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\execle.al)"
+sub execle {
+ unimpl "execle() is C-specific, stopped";
+}
+
+# end of POSIX::execle
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/execlp.al b/Master/tlpkg/tlperl/lib/auto/POSIX/execlp.al
new file mode 100755
index 00000000000..093719d84bf
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/execlp.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 654 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\execlp.al)"
+sub execlp {
+ unimpl "execlp() is C-specific, stopped";
+}
+
+# end of POSIX::execlp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/execv.al b/Master/tlpkg/tlperl/lib/auto/POSIX/execv.al
new file mode 100755
index 00000000000..76273074eb4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/execv.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 658 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\execv.al)"
+sub execv {
+ unimpl "execv() is C-specific, stopped";
+}
+
+# end of POSIX::execv
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/execve.al b/Master/tlpkg/tlperl/lib/auto/POSIX/execve.al
new file mode 100755
index 00000000000..33105ccd6fb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/execve.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 662 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\execve.al)"
+sub execve {
+ unimpl "execve() is C-specific, stopped";
+}
+
+# end of POSIX::execve
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/execvp.al b/Master/tlpkg/tlperl/lib/auto/POSIX/execvp.al
new file mode 100755
index 00000000000..4a17521841e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/execvp.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 666 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\execvp.al)"
+sub execvp {
+ unimpl "execvp() is C-specific, stopped";
+}
+
+# end of POSIX::execvp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/exit.al b/Master/tlpkg/tlperl/lib/auto/POSIX/exit.al
new file mode 100755
index 00000000000..559dd68b1e2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/exit.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 447 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\exit.al)"
+sub exit {
+ usage "exit(status)" if @_ != 1;
+ CORE::exit($_[0]);
+}
+
+# end of POSIX::exit
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/exp.al b/Master/tlpkg/tlperl/lib/auto/POSIX/exp.al
new file mode 100755
index 00000000000..6c278f38250
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/exp.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 171 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\exp.al)"
+sub exp {
+ usage "exp(x)" if @_ != 1;
+ CORE::exp($_[0]);
+}
+
+# end of POSIX::exp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fabs.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fabs.al
new file mode 100755
index 00000000000..7813dc843b5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fabs.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 176 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fabs.al)"
+sub fabs {
+ usage "fabs(x)" if @_ != 1;
+ CORE::abs($_[0]);
+}
+
+# end of POSIX::fabs
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fclose.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fclose.al
new file mode 100755
index 00000000000..1312109c813
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fclose.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 245 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fclose.al)"
+sub fclose {
+ redef "IO::Handle::close()";
+}
+
+# end of POSIX::fclose
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fcntl.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fcntl.al
new file mode 100755
index 00000000000..4ee8654751c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fcntl.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 146 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fcntl.al)"
+sub fcntl {
+ usage "fcntl(filehandle, cmd, arg)" if @_ != 3;
+ CORE::fcntl($_[0], $_[1], $_[2]);
+}
+
+# end of POSIX::fcntl
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fdopen.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fdopen.al
new file mode 100755
index 00000000000..d700c0d834a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fdopen.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 249 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fdopen.al)"
+sub fdopen {
+ redef "IO::Handle::new_from_fd()";
+}
+
+# end of POSIX::fdopen
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/feof.al b/Master/tlpkg/tlperl/lib/auto/POSIX/feof.al
new file mode 100755
index 00000000000..917afb91354
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/feof.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 253 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\feof.al)"
+sub feof {
+ redef "IO::Handle::eof()";
+}
+
+# end of POSIX::feof
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/ferror.al b/Master/tlpkg/tlperl/lib/auto/POSIX/ferror.al
new file mode 100755
index 00000000000..f253b1b7741
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/ferror.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 305 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\ferror.al)"
+sub ferror {
+ redef "IO::Handle::error()";
+}
+
+# end of POSIX::ferror
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fflush.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fflush.al
new file mode 100755
index 00000000000..1f874ceaf89
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fflush.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 309 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fflush.al)"
+sub fflush {
+ redef "IO::Handle::flush()";
+}
+
+# end of POSIX::fflush
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fgetc.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fgetc.al
new file mode 100755
index 00000000000..6832ce432af
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fgetc.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 257 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fgetc.al)"
+sub fgetc {
+ redef "IO::Handle::getc()";
+}
+
+# end of POSIX::fgetc
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fgetpos.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fgetpos.al
new file mode 100755
index 00000000000..02294ca2b39
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fgetpos.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 313 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fgetpos.al)"
+sub fgetpos {
+ redef "IO::Seekable::getpos()";
+}
+
+# end of POSIX::fgetpos
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fgets.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fgets.al
new file mode 100755
index 00000000000..c845912c726
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fgets.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 261 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fgets.al)"
+sub fgets {
+ redef "IO::Handle::gets()";
+}
+
+# end of POSIX::fgets
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fileno.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fileno.al
new file mode 100755
index 00000000000..31dc7db13ab
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fileno.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 265 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fileno.al)"
+sub fileno {
+ redef "IO::Handle::fileno()";
+}
+
+# end of POSIX::fileno
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fopen.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fopen.al
new file mode 100755
index 00000000000..da5d546422c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fopen.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 269 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fopen.al)"
+sub fopen {
+ redef "IO::File::open()";
+}
+
+# end of POSIX::fopen
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fork.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fork.al
new file mode 100755
index 00000000000..5596e03901d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fork.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 670 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fork.al)"
+sub fork {
+ usage "fork()" if @_ != 0;
+ CORE::fork;
+}
+
+# end of POSIX::fork
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fprintf.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fprintf.al
new file mode 100755
index 00000000000..8a10db84339
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fprintf.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 273 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fprintf.al)"
+sub fprintf {
+ unimpl "fprintf() is C-specific--use printf instead";
+}
+
+# end of POSIX::fprintf
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fputc.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fputc.al
new file mode 100755
index 00000000000..37e5c79fe9d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fputc.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 277 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fputc.al)"
+sub fputc {
+ unimpl "fputc() is C-specific--use print instead";
+}
+
+# end of POSIX::fputc
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fputs.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fputs.al
new file mode 100755
index 00000000000..6aeb04ee678
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fputs.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 281 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fputs.al)"
+sub fputs {
+ unimpl "fputs() is C-specific--use print instead";
+}
+
+# end of POSIX::fputs
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fread.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fread.al
new file mode 100755
index 00000000000..f2f56c48f5e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fread.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 285 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fread.al)"
+sub fread {
+ unimpl "fread() is C-specific--use read instead";
+}
+
+# end of POSIX::fread
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/free.al b/Master/tlpkg/tlperl/lib/auto/POSIX/free.al
new file mode 100755
index 00000000000..1fc25d909e2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/free.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 452 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\free.al)"
+sub free {
+ unimpl "free() is C-specific, stopped";
+}
+
+# end of POSIX::free
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/freopen.al b/Master/tlpkg/tlperl/lib/auto/POSIX/freopen.al
new file mode 100755
index 00000000000..867307d33f3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/freopen.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 289 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\freopen.al)"
+sub freopen {
+ unimpl "freopen() is C-specific--use open instead";
+}
+
+# end of POSIX::freopen
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fscanf.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fscanf.al
new file mode 100755
index 00000000000..4b07b50d257
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fscanf.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 293 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fscanf.al)"
+sub fscanf {
+ unimpl "fscanf() is C-specific--use <> and regular expressions instead";
+}
+
+# end of POSIX::fscanf
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fseek.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fseek.al
new file mode 100755
index 00000000000..5f65bd0e29a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fseek.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 297 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fseek.al)"
+sub fseek {
+ redef "IO::Seekable::seek()";
+}
+
+# end of POSIX::fseek
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fsetpos.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fsetpos.al
new file mode 100755
index 00000000000..e865a66d01c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fsetpos.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 317 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fsetpos.al)"
+sub fsetpos {
+ redef "IO::Seekable::setpos()";
+}
+
+# end of POSIX::fsetpos
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fstat.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fstat.al
new file mode 100755
index 00000000000..c02f89a3f2f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fstat.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 582 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fstat.al)"
+sub fstat {
+ usage "fstat(fd)" if @_ != 1;
+ local *TMP;
+ CORE::open(TMP, "<&$_[0]"); # Gross.
+ my @l = CORE::stat(TMP);
+ CORE::close(TMP);
+ @l;
+}
+
+# end of POSIX::fstat
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fsync.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fsync.al
new file mode 100755
index 00000000000..357f178623d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fsync.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 301 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fsync.al)"
+sub fsync {
+ redef "IO::Handle::sync()";
+}
+
+# end of POSIX::fsync
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/ftell.al b/Master/tlpkg/tlperl/lib/auto/POSIX/ftell.al
new file mode 100755
index 00000000000..f1f1754637c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/ftell.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 321 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\ftell.al)"
+sub ftell {
+ redef "IO::Seekable::tell()";
+}
+
+# end of POSIX::ftell
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/fwrite.al b/Master/tlpkg/tlperl/lib/auto/POSIX/fwrite.al
new file mode 100755
index 00000000000..825f8d7e154
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/fwrite.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 325 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\fwrite.al)"
+sub fwrite {
+ unimpl "fwrite() is C-specific--use print instead";
+}
+
+# end of POSIX::fwrite
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getc.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getc.al
new file mode 100755
index 00000000000..6dc4bbe38e7
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getc.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 329 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getc.al)"
+sub getc {
+ usage "getc(handle)" if @_ != 1;
+ CORE::getc($_[0]);
+}
+
+# end of POSIX::getc
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getchar.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getchar.al
new file mode 100755
index 00000000000..b03a3a30708
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getchar.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 334 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getchar.al)"
+sub getchar {
+ usage "getchar()" if @_ != 0;
+ CORE::getc(STDIN);
+}
+
+# end of POSIX::getchar
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getegid.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getegid.al
new file mode 100755
index 00000000000..9d9a7404bcc
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getegid.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 675 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getegid.al)"
+sub getegid {
+ usage "getegid()" if @_ != 0;
+ $) + 0;
+}
+
+# end of POSIX::getegid
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getenv.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getenv.al
new file mode 100755
index 00000000000..db932eacaff
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getenv.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 456 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getenv.al)"
+sub getenv {
+ usage "getenv(name)" if @_ != 1;
+ $ENV{$_[0]};
+}
+
+# end of POSIX::getenv
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/geteuid.al b/Master/tlpkg/tlperl/lib/auto/POSIX/geteuid.al
new file mode 100755
index 00000000000..ab000a972c9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/geteuid.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 680 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\geteuid.al)"
+sub geteuid {
+ usage "geteuid()" if @_ != 0;
+ $> + 0;
+}
+
+# end of POSIX::geteuid
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getgid.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getgid.al
new file mode 100755
index 00000000000..484d13bffb3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getgid.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 685 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getgid.al)"
+sub getgid {
+ usage "getgid()" if @_ != 0;
+ $( + 0;
+}
+
+# end of POSIX::getgid
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getgrgid.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getgrgid.al
new file mode 100755
index 00000000000..3afd5b121a8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getgrgid.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 151 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getgrgid.al)"
+sub getgrgid {
+ usage "getgrgid(gid)" if @_ != 1;
+ CORE::getgrgid($_[0]);
+}
+
+# end of POSIX::getgrgid
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getgrnam.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getgrnam.al
new file mode 100755
index 00000000000..8dcc0fb9eb5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getgrnam.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 156 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getgrnam.al)"
+sub getgrnam {
+ usage "getgrnam(name)" if @_ != 1;
+ CORE::getgrnam($_[0]);
+}
+
+# end of POSIX::getgrnam
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getgroups.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getgroups.al
new file mode 100755
index 00000000000..95dca454d01
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getgroups.al
@@ -0,0 +1,14 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 690 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getgroups.al)"
+sub getgroups {
+ usage "getgroups()" if @_ != 0;
+ my %seen;
+ grep(!$seen{$_}++, split(' ', $) ));
+}
+
+# end of POSIX::getgroups
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getlogin.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getlogin.al
new file mode 100755
index 00000000000..3fd23d795d0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getlogin.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 696 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getlogin.al)"
+sub getlogin {
+ usage "getlogin()" if @_ != 0;
+ CORE::getlogin();
+}
+
+# end of POSIX::getlogin
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getpgrp.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getpgrp.al
new file mode 100755
index 00000000000..4f204a60e60
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getpgrp.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 701 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getpgrp.al)"
+sub getpgrp {
+ usage "getpgrp()" if @_ != 0;
+ CORE::getpgrp;
+}
+
+# end of POSIX::getpgrp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getpid.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getpid.al
new file mode 100755
index 00000000000..fe5c3c351cf
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getpid.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 706 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getpid.al)"
+sub getpid {
+ usage "getpid()" if @_ != 0;
+ $$;
+}
+
+# end of POSIX::getpid
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getppid.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getppid.al
new file mode 100755
index 00000000000..583ada5edba
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getppid.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 711 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getppid.al)"
+sub getppid {
+ usage "getppid()" if @_ != 0;
+ CORE::getppid;
+}
+
+# end of POSIX::getppid
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getpwnam.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getpwnam.al
new file mode 100755
index 00000000000..00c3c6a7fda
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getpwnam.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 201 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getpwnam.al)"
+sub getpwnam {
+ usage "getpwnam(name)" if @_ != 1;
+ CORE::getpwnam($_[0]);
+}
+
+# end of POSIX::getpwnam
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getpwuid.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getpwuid.al
new file mode 100755
index 00000000000..488bc594a04
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getpwuid.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 206 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getpwuid.al)"
+sub getpwuid {
+ usage "getpwuid(uid)" if @_ != 1;
+ CORE::getpwuid($_[0]);
+}
+
+# end of POSIX::getpwuid
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/gets.al b/Master/tlpkg/tlperl/lib/auto/POSIX/gets.al
new file mode 100755
index 00000000000..e703a86f8fb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/gets.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 339 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\gets.al)"
+sub gets {
+ usage "gets()" if @_ != 0;
+ scalar <STDIN>;
+}
+
+# end of POSIX::gets
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/getuid.al b/Master/tlpkg/tlperl/lib/auto/POSIX/getuid.al
new file mode 100755
index 00000000000..8702cbf6bc5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/getuid.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 716 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\getuid.al)"
+sub getuid {
+ usage "getuid()" if @_ != 0;
+ $<;
+}
+
+# end of POSIX::getuid
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/gmtime.al b/Master/tlpkg/tlperl/lib/auto/POSIX/gmtime.al
new file mode 100755
index 00000000000..b976b322410
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/gmtime.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 616 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\gmtime.al)"
+sub gmtime {
+ usage "gmtime(time)" if @_ != 1;
+ CORE::gmtime($_[0]);
+}
+
+# end of POSIX::gmtime
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/isatty.al b/Master/tlpkg/tlperl/lib/auto/POSIX/isatty.al
new file mode 100755
index 00000000000..a5511b672a0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/isatty.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 721 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\isatty.al)"
+sub isatty {
+ usage "isatty(filehandle)" if @_ != 1;
+ -t $_[0];
+}
+
+# end of POSIX::isatty
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/kill.al b/Master/tlpkg/tlperl/lib/auto/POSIX/kill.al
new file mode 100755
index 00000000000..193d93e845e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/kill.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 227 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\kill.al)"
+sub kill {
+ usage "kill(pid, sig)" if @_ != 2;
+ CORE::kill $_[1], $_[0];
+}
+
+# end of POSIX::kill
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/labs.al b/Master/tlpkg/tlperl/lib/auto/POSIX/labs.al
new file mode 100755
index 00000000000..04133e79244
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/labs.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 461 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\labs.al)"
+sub labs {
+ unimpl "labs() is C-specific, use abs instead";
+}
+
+# end of POSIX::labs
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/ldiv.al b/Master/tlpkg/tlperl/lib/auto/POSIX/ldiv.al
new file mode 100755
index 00000000000..c6679286485
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/ldiv.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 465 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\ldiv.al)"
+sub ldiv {
+ unimpl "ldiv() is C-specific, use /, % and int instead";
+}
+
+# end of POSIX::ldiv
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/link.al b/Master/tlpkg/tlperl/lib/auto/POSIX/link.al
new file mode 100755
index 00000000000..d68d80dcff6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/link.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 726 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\link.al)"
+sub link {
+ usage "link(oldfilename, newfilename)" if @_ != 2;
+ CORE::link($_[0], $_[1]);
+}
+
+# end of POSIX::link
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/load_imports.al b/Master/tlpkg/tlperl/lib/auto/POSIX/load_imports.al
new file mode 100755
index 00000000000..cf692f646ae
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/load_imports.al
@@ -0,0 +1,230 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 759 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\load_imports.al)"
+sub load_imports {
+%EXPORT_TAGS = (
+
+ assert_h => [qw(assert NDEBUG)],
+
+ ctype_h => [qw(isalnum isalpha iscntrl isdigit isgraph islower
+ isprint ispunct isspace isupper isxdigit tolower toupper)],
+
+ dirent_h => [],
+
+ errno_h => [qw(E2BIG EACCES EADDRINUSE EADDRNOTAVAIL EAFNOSUPPORT
+ EAGAIN EALREADY EBADF EBUSY ECHILD ECONNABORTED
+ ECONNREFUSED ECONNRESET EDEADLK EDESTADDRREQ EDOM EDQUOT
+ EEXIST EFAULT EFBIG EHOSTDOWN EHOSTUNREACH EINPROGRESS
+ EINTR EINVAL EIO EISCONN EISDIR ELOOP EMFILE EMLINK
+ EMSGSIZE ENAMETOOLONG ENETDOWN ENETRESET ENETUNREACH
+ ENFILE ENOBUFS ENODEV ENOENT ENOEXEC ENOLCK ENOMEM
+ ENOPROTOOPT ENOSPC ENOSYS ENOTBLK ENOTCONN ENOTDIR
+ ENOTEMPTY ENOTSOCK ENOTTY ENXIO EOPNOTSUPP EPERM
+ EPFNOSUPPORT EPIPE EPROCLIM EPROTONOSUPPORT EPROTOTYPE
+ ERANGE EREMOTE ERESTART EROFS ESHUTDOWN ESOCKTNOSUPPORT
+ ESPIPE ESRCH ESTALE ETIMEDOUT ETOOMANYREFS ETXTBSY
+ EUSERS EWOULDBLOCK EXDEV errno)],
+
+ fcntl_h => [qw(FD_CLOEXEC F_DUPFD F_GETFD F_GETFL F_GETLK F_RDLCK
+ F_SETFD F_SETFL F_SETLK F_SETLKW F_UNLCK F_WRLCK
+ O_ACCMODE O_APPEND O_CREAT O_EXCL O_NOCTTY O_NONBLOCK
+ O_RDONLY O_RDWR O_TRUNC O_WRONLY
+ creat
+ SEEK_CUR SEEK_END SEEK_SET
+ S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU
+ S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISGID S_ISREG S_ISUID
+ S_IWGRP S_IWOTH S_IWUSR)],
+
+ float_h => [qw(DBL_DIG DBL_EPSILON DBL_MANT_DIG
+ DBL_MAX DBL_MAX_10_EXP DBL_MAX_EXP
+ DBL_MIN DBL_MIN_10_EXP DBL_MIN_EXP
+ FLT_DIG FLT_EPSILON FLT_MANT_DIG
+ FLT_MAX FLT_MAX_10_EXP FLT_MAX_EXP
+ FLT_MIN FLT_MIN_10_EXP FLT_MIN_EXP
+ FLT_RADIX FLT_ROUNDS
+ LDBL_DIG LDBL_EPSILON LDBL_MANT_DIG
+ LDBL_MAX LDBL_MAX_10_EXP LDBL_MAX_EXP
+ LDBL_MIN LDBL_MIN_10_EXP LDBL_MIN_EXP)],
+
+ grp_h => [],
+
+ limits_h => [qw( ARG_MAX CHAR_BIT CHAR_MAX CHAR_MIN CHILD_MAX
+ INT_MAX INT_MIN LINK_MAX LONG_MAX LONG_MIN MAX_CANON
+ MAX_INPUT MB_LEN_MAX NAME_MAX NGROUPS_MAX OPEN_MAX
+ PATH_MAX PIPE_BUF SCHAR_MAX SCHAR_MIN SHRT_MAX SHRT_MIN
+ SSIZE_MAX STREAM_MAX TZNAME_MAX UCHAR_MAX UINT_MAX
+ ULONG_MAX USHRT_MAX _POSIX_ARG_MAX _POSIX_CHILD_MAX
+ _POSIX_LINK_MAX _POSIX_MAX_CANON _POSIX_MAX_INPUT
+ _POSIX_NAME_MAX _POSIX_NGROUPS_MAX _POSIX_OPEN_MAX
+ _POSIX_PATH_MAX _POSIX_PIPE_BUF _POSIX_SSIZE_MAX
+ _POSIX_STREAM_MAX _POSIX_TZNAME_MAX)],
+
+ locale_h => [qw(LC_ALL LC_COLLATE LC_CTYPE LC_MESSAGES
+ LC_MONETARY LC_NUMERIC LC_TIME NULL
+ localeconv setlocale)],
+
+ math_h => [qw(HUGE_VAL acos asin atan ceil cosh fabs floor fmod
+ frexp ldexp log10 modf pow sinh tan tanh)],
+
+ pwd_h => [],
+
+ setjmp_h => [qw(longjmp setjmp siglongjmp sigsetjmp)],
+
+ signal_h => [qw(SA_NOCLDSTOP SA_NOCLDWAIT SA_NODEFER SA_ONSTACK
+ SA_RESETHAND SA_RESTART SA_SIGINFO SIGABRT SIGALRM
+ SIGCHLD SIGCONT SIGFPE SIGHUP SIGILL SIGINT SIGKILL
+ SIGPIPE %SIGRT SIGRTMIN SIGRTMAX SIGQUIT SIGSEGV SIGSTOP
+ SIGTERM SIGTSTP SIGTTIN SIGTTOU SIGUSR1 SIGUSR2
+ SIG_BLOCK SIG_DFL SIG_ERR SIG_IGN SIG_SETMASK SIG_UNBLOCK
+ raise sigaction signal sigpending sigprocmask sigsuspend)],
+
+ stdarg_h => [],
+
+ stddef_h => [qw(NULL offsetof)],
+
+ stdio_h => [qw(BUFSIZ EOF FILENAME_MAX L_ctermid L_cuserid
+ L_tmpname NULL SEEK_CUR SEEK_END SEEK_SET
+ STREAM_MAX TMP_MAX stderr stdin stdout
+ clearerr fclose fdopen feof ferror fflush fgetc fgetpos
+ fgets fopen fprintf fputc fputs fread freopen
+ fscanf fseek fsetpos ftell fwrite getchar gets
+ perror putc putchar puts remove rewind
+ scanf setbuf setvbuf sscanf tmpfile tmpnam
+ ungetc vfprintf vprintf vsprintf)],
+
+ stdlib_h => [qw(EXIT_FAILURE EXIT_SUCCESS MB_CUR_MAX NULL RAND_MAX
+ abort atexit atof atoi atol bsearch calloc div
+ free getenv labs ldiv malloc mblen mbstowcs mbtowc
+ qsort realloc strtod strtol strtoul wcstombs wctomb)],
+
+ string_h => [qw(NULL memchr memcmp memcpy memmove memset strcat
+ strchr strcmp strcoll strcpy strcspn strerror strlen
+ strncat strncmp strncpy strpbrk strrchr strspn strstr
+ strtok strxfrm)],
+
+ sys_stat_h => [qw(S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU
+ S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISGID S_ISREG
+ S_ISUID S_IWGRP S_IWOTH S_IWUSR S_IXGRP S_IXOTH S_IXUSR
+ fstat mkfifo)],
+
+ sys_times_h => [],
+
+ sys_types_h => [],
+
+ sys_utsname_h => [qw(uname)],
+
+ sys_wait_h => [qw(WEXITSTATUS WIFEXITED WIFSIGNALED WIFSTOPPED
+ WNOHANG WSTOPSIG WTERMSIG WUNTRACED)],
+
+ termios_h => [qw( B0 B110 B1200 B134 B150 B1800 B19200 B200 B2400
+ B300 B38400 B4800 B50 B600 B75 B9600 BRKINT CLOCAL
+ CREAD CS5 CS6 CS7 CS8 CSIZE CSTOPB ECHO ECHOE ECHOK
+ ECHONL HUPCL ICANON ICRNL IEXTEN IGNBRK IGNCR IGNPAR
+ INLCR INPCK ISIG ISTRIP IXOFF IXON NCCS NOFLSH OPOST
+ PARENB PARMRK PARODD TCIFLUSH TCIOFF TCIOFLUSH TCION
+ TCOFLUSH TCOOFF TCOON TCSADRAIN TCSAFLUSH TCSANOW
+ TOSTOP VEOF VEOL VERASE VINTR VKILL VMIN VQUIT VSTART
+ VSTOP VSUSP VTIME
+ cfgetispeed cfgetospeed cfsetispeed cfsetospeed tcdrain
+ tcflow tcflush tcgetattr tcsendbreak tcsetattr )],
+
+ time_h => [qw(CLK_TCK CLOCKS_PER_SEC NULL asctime clock ctime
+ difftime mktime strftime tzset tzname)],
+
+ unistd_h => [qw(F_OK NULL R_OK SEEK_CUR SEEK_END SEEK_SET
+ STDERR_FILENO STDIN_FILENO STDOUT_FILENO W_OK X_OK
+ _PC_CHOWN_RESTRICTED _PC_LINK_MAX _PC_MAX_CANON
+ _PC_MAX_INPUT _PC_NAME_MAX _PC_NO_TRUNC _PC_PATH_MAX
+ _PC_PIPE_BUF _PC_VDISABLE _POSIX_CHOWN_RESTRICTED
+ _POSIX_JOB_CONTROL _POSIX_NO_TRUNC _POSIX_SAVED_IDS
+ _POSIX_VDISABLE _POSIX_VERSION _SC_ARG_MAX
+ _SC_CHILD_MAX _SC_CLK_TCK _SC_JOB_CONTROL
+ _SC_NGROUPS_MAX _SC_OPEN_MAX _SC_PAGESIZE _SC_SAVED_IDS
+ _SC_STREAM_MAX _SC_TZNAME_MAX _SC_VERSION
+ _exit access ctermid cuserid
+ dup2 dup execl execle execlp execv execve execvp
+ fpathconf fsync getcwd getegid geteuid getgid getgroups
+ getpid getuid isatty lseek pathconf pause setgid setpgid
+ setsid setuid sysconf tcgetpgrp tcsetpgrp ttyname)],
+
+ utime_h => [],
+
+);
+
+# Exporter::export_tags();
+{
+ # De-duplicate the export list:
+ my %export;
+ @export{map {@$_} values %EXPORT_TAGS} = ();
+ # Doing the de-dup with a temporary hash has the advantage that the SVs in
+ # @EXPORT are actually shared hash key sacalars, which will save some memory.
+ push @EXPORT, keys %export;
+}
+
+@EXPORT_OK = qw(
+ abs
+ alarm
+ atan2
+ chdir
+ chmod
+ chown
+ close
+ closedir
+ cos
+ exit
+ exp
+ fcntl
+ fileno
+ fork
+ getc
+ getgrgid
+ getgrnam
+ getlogin
+ getpgrp
+ getppid
+ getpwnam
+ getpwuid
+ gmtime
+ isatty
+ kill
+ lchown
+ link
+ localtime
+ log
+ mkdir
+ nice
+ open
+ opendir
+ pipe
+ printf
+ rand
+ read
+ readdir
+ rename
+ rewinddir
+ rmdir
+ sin
+ sleep
+ sprintf
+ sqrt
+ srand
+ stat
+ system
+ time
+ times
+ umask
+ unlink
+ utime
+ wait
+ waitpid
+ write
+);
+
+require Exporter;
+}
+
+# end of POSIX::SigAction::load_imports
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/localtime.al b/Master/tlpkg/tlperl/lib/auto/POSIX/localtime.al
new file mode 100755
index 00000000000..c2d15ad16ae
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/localtime.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 621 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\localtime.al)"
+sub localtime {
+ usage "localtime(time)" if @_ != 1;
+ CORE::localtime($_[0]);
+}
+
+# end of POSIX::localtime
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/log.al b/Master/tlpkg/tlperl/lib/auto/POSIX/log.al
new file mode 100755
index 00000000000..682dea9598f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/log.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 181 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\log.al)"
+sub log {
+ usage "log(x)" if @_ != 1;
+ CORE::log($_[0]);
+}
+
+# end of POSIX::log
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/longjmp.al b/Master/tlpkg/tlperl/lib/auto/POSIX/longjmp.al
new file mode 100755
index 00000000000..b62bd3c94c2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/longjmp.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 211 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\longjmp.al)"
+sub longjmp {
+ unimpl "longjmp() is C-specific: use die instead";
+}
+
+# end of POSIX::longjmp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/malloc.al b/Master/tlpkg/tlperl/lib/auto/POSIX/malloc.al
new file mode 100755
index 00000000000..0922d0174b5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/malloc.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 469 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\malloc.al)"
+sub malloc {
+ unimpl "malloc() is C-specific, stopped";
+}
+
+# end of POSIX::malloc
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/memchr.al b/Master/tlpkg/tlperl/lib/auto/POSIX/memchr.al
new file mode 100755
index 00000000000..7344db15757
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/memchr.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 494 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\memchr.al)"
+sub memchr {
+ unimpl "memchr() is C-specific, use index() instead";
+}
+
+# end of POSIX::memchr
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/memcmp.al b/Master/tlpkg/tlperl/lib/auto/POSIX/memcmp.al
new file mode 100755
index 00000000000..a5c9844ea0d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/memcmp.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 498 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\memcmp.al)"
+sub memcmp {
+ unimpl "memcmp() is C-specific, use eq instead";
+}
+
+# end of POSIX::memcmp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/memcpy.al b/Master/tlpkg/tlperl/lib/auto/POSIX/memcpy.al
new file mode 100755
index 00000000000..53c62d6bb4e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/memcpy.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 502 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\memcpy.al)"
+sub memcpy {
+ unimpl "memcpy() is C-specific, use = instead";
+}
+
+# end of POSIX::memcpy
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/memmove.al b/Master/tlpkg/tlperl/lib/auto/POSIX/memmove.al
new file mode 100755
index 00000000000..a3cb8905083
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/memmove.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 506 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\memmove.al)"
+sub memmove {
+ unimpl "memmove() is C-specific, use = instead";
+}
+
+# end of POSIX::memmove
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/memset.al b/Master/tlpkg/tlperl/lib/auto/POSIX/memset.al
new file mode 100755
index 00000000000..b71c7b65ed3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/memset.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 510 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\memset.al)"
+sub memset {
+ unimpl "memset() is C-specific, use x instead";
+}
+
+# end of POSIX::memset
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/mkdir.al b/Master/tlpkg/tlperl/lib/auto/POSIX/mkdir.al
new file mode 100755
index 00000000000..290a5df0c80
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/mkdir.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 591 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\mkdir.al)"
+sub mkdir {
+ usage "mkdir(directoryname, mode)" if @_ != 2;
+ CORE::mkdir($_[0], $_[1]);
+}
+
+# end of POSIX::mkdir
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/offsetof.al b/Master/tlpkg/tlperl/lib/auto/POSIX/offsetof.al
new file mode 100755
index 00000000000..94fb579e749
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/offsetof.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 237 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\offsetof.al)"
+sub offsetof {
+ unimpl "offsetof() is C-specific, stopped";
+}
+
+# end of POSIX::offsetof
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/opendir.al b/Master/tlpkg/tlperl/lib/auto/POSIX/opendir.al
new file mode 100755
index 00000000000..1112e2eaeb5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/opendir.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 118 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\opendir.al)"
+sub opendir {
+ usage "opendir(directory)" if @_ != 1;
+ my $dirhandle;
+ CORE::opendir($dirhandle, $_[0])
+ ? $dirhandle
+ : undef;
+}
+
+# end of POSIX::opendir
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/perror.al b/Master/tlpkg/tlperl/lib/auto/POSIX/perror.al
new file mode 100755
index 00000000000..c35baf5a47b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/perror.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 344 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\perror.al)"
+sub perror {
+ print STDERR "@_: " if @_;
+ print STDERR $!,"\n";
+}
+
+# end of POSIX::perror
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/pow.al b/Master/tlpkg/tlperl/lib/auto/POSIX/pow.al
new file mode 100755
index 00000000000..5cc8fb73a39
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/pow.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 186 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\pow.al)"
+sub pow {
+ usage "pow(x,exponent)" if @_ != 2;
+ $_[0] ** $_[1];
+}
+
+# end of POSIX::pow
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/printf.al b/Master/tlpkg/tlperl/lib/auto/POSIX/printf.al
new file mode 100755
index 00000000000..3c0e704371e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/printf.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 349 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\printf.al)"
+sub printf {
+ usage "printf(pattern, args...)" if @_ < 1;
+ CORE::printf STDOUT @_;
+}
+
+# end of POSIX::printf
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/putc.al b/Master/tlpkg/tlperl/lib/auto/POSIX/putc.al
new file mode 100755
index 00000000000..561218c6e7c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/putc.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 354 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\putc.al)"
+sub putc {
+ unimpl "putc() is C-specific--use print instead";
+}
+
+# end of POSIX::putc
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/putchar.al b/Master/tlpkg/tlperl/lib/auto/POSIX/putchar.al
new file mode 100755
index 00000000000..90edc4f1dde
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/putchar.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 358 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\putchar.al)"
+sub putchar {
+ unimpl "putchar() is C-specific--use print instead";
+}
+
+# end of POSIX::putchar
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/puts.al b/Master/tlpkg/tlperl/lib/auto/POSIX/puts.al
new file mode 100755
index 00000000000..b35380c91b2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/puts.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 362 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\puts.al)"
+sub puts {
+ unimpl "puts() is C-specific--use print instead";
+}
+
+# end of POSIX::puts
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/qsort.al b/Master/tlpkg/tlperl/lib/auto/POSIX/qsort.al
new file mode 100755
index 00000000000..e0e8438d51e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/qsort.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 473 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\qsort.al)"
+sub qsort {
+ unimpl "qsort() is C-specific, use sort instead";
+}
+
+# end of POSIX::qsort
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/raise.al b/Master/tlpkg/tlperl/lib/auto/POSIX/raise.al
new file mode 100755
index 00000000000..25998d61b6c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/raise.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 232 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\raise.al)"
+sub raise {
+ usage "raise(sig)" if @_ != 1;
+ CORE::kill $_[0], $$; # Is this good enough?
+}
+
+# end of POSIX::raise
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/rand.al b/Master/tlpkg/tlperl/lib/auto/POSIX/rand.al
new file mode 100755
index 00000000000..ea6457f00d5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/rand.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 477 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\rand.al)"
+sub rand {
+ unimpl "rand() is non-portable, use Perl's rand instead";
+}
+
+# end of POSIX::rand
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/readdir.al b/Master/tlpkg/tlperl/lib/auto/POSIX/readdir.al
new file mode 100755
index 00000000000..458c7cda637
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/readdir.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 126 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\readdir.al)"
+sub readdir {
+ usage "readdir(dirhandle)" if @_ != 1;
+ CORE::readdir($_[0]);
+}
+
+# end of POSIX::readdir
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/realloc.al b/Master/tlpkg/tlperl/lib/auto/POSIX/realloc.al
new file mode 100755
index 00000000000..a7332965b92
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/realloc.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 481 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\realloc.al)"
+sub realloc {
+ unimpl "realloc() is C-specific, stopped";
+}
+
+# end of POSIX::realloc
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/redef.al b/Master/tlpkg/tlperl/lib/auto/POSIX/redef.al
new file mode 100755
index 00000000000..1d6197f7dc3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/redef.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 85 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\redef.al)"
+sub redef {
+ my ($mess) = @_;
+ croak "Use method $mess instead";
+}
+
+# end of POSIX::redef
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/remove.al b/Master/tlpkg/tlperl/lib/auto/POSIX/remove.al
new file mode 100755
index 00000000000..32665fa8ea8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/remove.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 366 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\remove.al)"
+sub remove {
+ usage "remove(filename)" if @_ != 1;
+ (-d $_[0]) ? CORE::rmdir($_[0]) : CORE::unlink($_[0]);
+}
+
+# end of POSIX::remove
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/rename.al b/Master/tlpkg/tlperl/lib/auto/POSIX/rename.al
new file mode 100755
index 00000000000..6d04ef039a8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/rename.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 371 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\rename.al)"
+sub rename {
+ usage "rename(oldfilename, newfilename)" if @_ != 2;
+ CORE::rename($_[0], $_[1]);
+}
+
+# end of POSIX::rename
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/rewind.al b/Master/tlpkg/tlperl/lib/auto/POSIX/rewind.al
new file mode 100755
index 00000000000..0f97af8f961
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/rewind.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 376 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\rewind.al)"
+sub rewind {
+ usage "rewind(filehandle)" if @_ != 1;
+ CORE::seek($_[0],0,0);
+}
+
+# end of POSIX::rewind
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/rewinddir.al b/Master/tlpkg/tlperl/lib/auto/POSIX/rewinddir.al
new file mode 100755
index 00000000000..1c960662ea9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/rewinddir.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 131 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\rewinddir.al)"
+sub rewinddir {
+ usage "rewinddir(dirhandle)" if @_ != 1;
+ CORE::rewinddir($_[0]);
+}
+
+# end of POSIX::rewinddir
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/rmdir.al b/Master/tlpkg/tlperl/lib/auto/POSIX/rmdir.al
new file mode 100755
index 00000000000..54af051f17e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/rmdir.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 731 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\rmdir.al)"
+sub rmdir {
+ usage "rmdir(directoryname)" if @_ != 1;
+ CORE::rmdir($_[0]);
+}
+
+# end of POSIX::rmdir
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/scanf.al b/Master/tlpkg/tlperl/lib/auto/POSIX/scanf.al
new file mode 100755
index 00000000000..7b0784b3831
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/scanf.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 381 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\scanf.al)"
+sub scanf {
+ unimpl "scanf() is C-specific--use <> and regular expressions instead";
+}
+
+# end of POSIX::scanf
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/setbuf.al b/Master/tlpkg/tlperl/lib/auto/POSIX/setbuf.al
new file mode 100755
index 00000000000..4b56a02e221
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/setbuf.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 736 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\setbuf.al)"
+sub setbuf {
+ redef "IO::Handle::setbuf()";
+}
+
+# end of POSIX::setbuf
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/setjmp.al b/Master/tlpkg/tlperl/lib/auto/POSIX/setjmp.al
new file mode 100755
index 00000000000..6154bbf8a44
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/setjmp.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 215 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\setjmp.al)"
+sub setjmp {
+ unimpl "setjmp() is C-specific: use eval {} instead";
+}
+
+# end of POSIX::setjmp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/setvbuf.al b/Master/tlpkg/tlperl/lib/auto/POSIX/setvbuf.al
new file mode 100755
index 00000000000..bc45457297a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/setvbuf.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 740 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\setvbuf.al)"
+sub setvbuf {
+ redef "IO::Handle::setvbuf()";
+}
+
+# end of POSIX::setvbuf
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/siglongjmp.al b/Master/tlpkg/tlperl/lib/auto/POSIX/siglongjmp.al
new file mode 100755
index 00000000000..46abe2bdb96
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/siglongjmp.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 219 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\siglongjmp.al)"
+sub siglongjmp {
+ unimpl "siglongjmp() is C-specific: use die instead";
+}
+
+# end of POSIX::siglongjmp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/sigsetjmp.al b/Master/tlpkg/tlperl/lib/auto/POSIX/sigsetjmp.al
new file mode 100755
index 00000000000..3ba63224a31
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/sigsetjmp.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 223 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\sigsetjmp.al)"
+sub sigsetjmp {
+ unimpl "sigsetjmp() is C-specific: use eval {} instead";
+}
+
+# end of POSIX::sigsetjmp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/sin.al b/Master/tlpkg/tlperl/lib/auto/POSIX/sin.al
new file mode 100755
index 00000000000..d9079ba09c4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/sin.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 191 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\sin.al)"
+sub sin {
+ usage "sin(x)" if @_ != 1;
+ CORE::sin($_[0]);
+}
+
+# end of POSIX::sin
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/sleep.al b/Master/tlpkg/tlperl/lib/auto/POSIX/sleep.al
new file mode 100755
index 00000000000..05cba00f359
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/sleep.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 744 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\sleep.al)"
+sub sleep {
+ usage "sleep(seconds)" if @_ != 1;
+ $_[0] - CORE::sleep($_[0]);
+}
+
+# end of POSIX::sleep
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/sprintf.al b/Master/tlpkg/tlperl/lib/auto/POSIX/sprintf.al
new file mode 100755
index 00000000000..e32b6749d0f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/sprintf.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 385 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\sprintf.al)"
+sub sprintf {
+ usage "sprintf(pattern,args)" if @_ == 0;
+ CORE::sprintf(shift,@_);
+}
+
+# end of POSIX::sprintf
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/sqrt.al b/Master/tlpkg/tlperl/lib/auto/POSIX/sqrt.al
new file mode 100755
index 00000000000..ea41719f675
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/sqrt.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 196 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\sqrt.al)"
+sub sqrt {
+ usage "sqrt(x)" if @_ != 1;
+ CORE::sqrt($_[0]);
+}
+
+# end of POSIX::sqrt
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/srand.al b/Master/tlpkg/tlperl/lib/auto/POSIX/srand.al
new file mode 100755
index 00000000000..9c8cd65ad95
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/srand.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 485 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\srand.al)"
+sub srand {
+ unimpl "srand()";
+}
+
+# end of POSIX::srand
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/sscanf.al b/Master/tlpkg/tlperl/lib/auto/POSIX/sscanf.al
new file mode 100755
index 00000000000..a9f418536fd
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/sscanf.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 390 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\sscanf.al)"
+sub sscanf {
+ unimpl "sscanf() is C-specific--use regular expressions instead";
+}
+
+# end of POSIX::sscanf
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/stat.al b/Master/tlpkg/tlperl/lib/auto/POSIX/stat.al
new file mode 100755
index 00000000000..23373a26950
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/stat.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 596 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\stat.al)"
+sub stat {
+ usage "stat(filename)" if @_ != 1;
+ CORE::stat($_[0]);
+}
+
+# end of POSIX::stat
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strcat.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strcat.al
new file mode 100755
index 00000000000..112037d7bb9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strcat.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 514 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strcat.al)"
+sub strcat {
+ unimpl "strcat() is C-specific, use .= instead";
+}
+
+# end of POSIX::strcat
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strchr.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strchr.al
new file mode 100755
index 00000000000..0e4d59d4d22
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strchr.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 518 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strchr.al)"
+sub strchr {
+ unimpl "strchr() is C-specific, use index() instead";
+}
+
+# end of POSIX::strchr
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strcmp.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strcmp.al
new file mode 100755
index 00000000000..026444d1aa0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strcmp.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 522 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strcmp.al)"
+sub strcmp {
+ unimpl "strcmp() is C-specific, use eq instead";
+}
+
+# end of POSIX::strcmp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strcpy.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strcpy.al
new file mode 100755
index 00000000000..41895d60428
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strcpy.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 526 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strcpy.al)"
+sub strcpy {
+ unimpl "strcpy() is C-specific, use = instead";
+}
+
+# end of POSIX::strcpy
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strcspn.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strcspn.al
new file mode 100755
index 00000000000..e3979bf3673
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strcspn.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 530 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strcspn.al)"
+sub strcspn {
+ unimpl "strcspn() is C-specific, use regular expressions instead";
+}
+
+# end of POSIX::strcspn
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strerror.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strerror.al
new file mode 100755
index 00000000000..4364eb48fec
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strerror.al
@@ -0,0 +1,14 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 534 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strerror.al)"
+sub strerror {
+ usage "strerror(errno)" if @_ != 1;
+ local $! = $_[0];
+ $! . "";
+}
+
+# end of POSIX::strerror
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strlen.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strlen.al
new file mode 100755
index 00000000000..2f9ee7bf0a2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strlen.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 540 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strlen.al)"
+sub strlen {
+ unimpl "strlen() is C-specific, use length instead";
+}
+
+# end of POSIX::strlen
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strncat.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strncat.al
new file mode 100755
index 00000000000..b909bd27c25
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strncat.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 544 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strncat.al)"
+sub strncat {
+ unimpl "strncat() is C-specific, use .= instead";
+}
+
+# end of POSIX::strncat
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strncmp.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strncmp.al
new file mode 100755
index 00000000000..dde452e3628
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strncmp.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 548 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strncmp.al)"
+sub strncmp {
+ unimpl "strncmp() is C-specific, use eq instead";
+}
+
+# end of POSIX::strncmp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strncpy.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strncpy.al
new file mode 100755
index 00000000000..6b2d97f8202
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strncpy.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 552 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strncpy.al)"
+sub strncpy {
+ unimpl "strncpy() is C-specific, use = instead";
+}
+
+# end of POSIX::strncpy
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strpbrk.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strpbrk.al
new file mode 100755
index 00000000000..b3a1f91897b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strpbrk.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 556 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strpbrk.al)"
+sub strpbrk {
+ unimpl "strpbrk() is C-specific, stopped";
+}
+
+# end of POSIX::strpbrk
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strrchr.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strrchr.al
new file mode 100755
index 00000000000..8b11901a304
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strrchr.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 560 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strrchr.al)"
+sub strrchr {
+ unimpl "strrchr() is C-specific, use rindex() instead";
+}
+
+# end of POSIX::strrchr
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strspn.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strspn.al
new file mode 100755
index 00000000000..098bf697de1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strspn.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 564 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strspn.al)"
+sub strspn {
+ unimpl "strspn() is C-specific, stopped";
+}
+
+# end of POSIX::strspn
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strstr.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strstr.al
new file mode 100755
index 00000000000..ecc94a24f2c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strstr.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 568 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strstr.al)"
+sub strstr {
+ usage "strstr(big, little)" if @_ != 2;
+ CORE::index($_[0], $_[1]);
+}
+
+# end of POSIX::strstr
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/strtok.al b/Master/tlpkg/tlperl/lib/auto/POSIX/strtok.al
new file mode 100755
index 00000000000..f065d58b27c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/strtok.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 573 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\strtok.al)"
+sub strtok {
+ unimpl "strtok() is C-specific, stopped";
+}
+
+# end of POSIX::strtok
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/system.al b/Master/tlpkg/tlperl/lib/auto/POSIX/system.al
new file mode 100755
index 00000000000..17d9b552290
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/system.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 489 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\system.al)"
+sub system {
+ usage "system(command)" if @_ != 1;
+ CORE::system($_[0]);
+}
+
+# end of POSIX::system
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/time.al b/Master/tlpkg/tlperl/lib/auto/POSIX/time.al
new file mode 100755
index 00000000000..f588c89117f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/time.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 626 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\time.al)"
+sub time {
+ usage "time()" if @_ != 0;
+ CORE::time;
+}
+
+# end of POSIX::time
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/tmpfile.al b/Master/tlpkg/tlperl/lib/auto/POSIX/tmpfile.al
new file mode 100755
index 00000000000..ebc5850baf8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/tmpfile.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 394 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\tmpfile.al)"
+sub tmpfile {
+ redef "IO::File::new_tmpfile()";
+}
+
+# end of POSIX::tmpfile
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/tolower.al b/Master/tlpkg/tlperl/lib/auto/POSIX/tolower.al
new file mode 100755
index 00000000000..35a40ad5026
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/tolower.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 103 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\tolower.al)"
+sub tolower {
+ usage "tolower(string)" if @_ != 1;
+ lc($_[0]);
+}
+
+# end of POSIX::tolower
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/toupper.al b/Master/tlpkg/tlperl/lib/auto/POSIX/toupper.al
new file mode 100755
index 00000000000..47f12bd4932
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/toupper.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 108 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\toupper.al)"
+sub toupper {
+ usage "toupper(string)" if @_ != 1;
+ uc($_[0]);
+}
+
+# end of POSIX::toupper
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/umask.al b/Master/tlpkg/tlperl/lib/auto/POSIX/umask.al
new file mode 100755
index 00000000000..e1c107c8f44
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/umask.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 601 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\umask.al)"
+sub umask {
+ usage "umask(mask)" if @_ != 1;
+ CORE::umask($_[0]);
+}
+
+# end of POSIX::umask
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/ungetc.al b/Master/tlpkg/tlperl/lib/auto/POSIX/ungetc.al
new file mode 100755
index 00000000000..ea27e327c46
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/ungetc.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 398 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\ungetc.al)"
+sub ungetc {
+ redef "IO::Handle::ungetc()";
+}
+
+# end of POSIX::ungetc
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/unimpl.al b/Master/tlpkg/tlperl/lib/auto/POSIX/unimpl.al
new file mode 100755
index 00000000000..bc48d9b3023
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/unimpl.al
@@ -0,0 +1,14 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 90 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\unimpl.al)"
+sub unimpl {
+ my ($mess) = @_;
+ $mess =~ s/xxx//;
+ croak "Unimplemented: POSIX::$mess";
+}
+
+# end of POSIX::unimpl
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/unlink.al b/Master/tlpkg/tlperl/lib/auto/POSIX/unlink.al
new file mode 100755
index 00000000000..9a9a0b668b6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/unlink.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 749 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\unlink.al)"
+sub unlink {
+ usage "unlink(filename)" if @_ != 1;
+ CORE::unlink($_[0]);
+}
+
+# end of POSIX::unlink
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/usage.al b/Master/tlpkg/tlperl/lib/auto/POSIX/usage.al
new file mode 100755
index 00000000000..83c0cdf9e8a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/usage.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 80 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\usage.al)"
+sub usage {
+ my ($mess) = @_;
+ croak "Usage: POSIX::$mess";
+}
+
+# end of POSIX::usage
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/utime.al b/Master/tlpkg/tlperl/lib/auto/POSIX/utime.al
new file mode 100755
index 00000000000..07d84838ab3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/utime.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 754 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\utime.al)"
+sub utime {
+ usage "utime(filename, atime, mtime)" if @_ != 3;
+ CORE::utime($_[1], $_[2], $_[0]);
+}
+
+# end of POSIX::utime
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/vfprintf.al b/Master/tlpkg/tlperl/lib/auto/POSIX/vfprintf.al
new file mode 100755
index 00000000000..461a48fd006
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/vfprintf.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 402 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\vfprintf.al)"
+sub vfprintf {
+ unimpl "vfprintf() is C-specific";
+}
+
+# end of POSIX::vfprintf
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/vprintf.al b/Master/tlpkg/tlperl/lib/auto/POSIX/vprintf.al
new file mode 100755
index 00000000000..a0d2bd202fd
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/vprintf.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 406 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\vprintf.al)"
+sub vprintf {
+ unimpl "vprintf() is C-specific";
+}
+
+# end of POSIX::vprintf
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/vsprintf.al b/Master/tlpkg/tlperl/lib/auto/POSIX/vsprintf.al
new file mode 100755
index 00000000000..835cf3de11c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/vsprintf.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 410 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\vsprintf.al)"
+sub vsprintf {
+ unimpl "vsprintf() is C-specific";
+}
+
+# end of POSIX::vsprintf
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/wait.al b/Master/tlpkg/tlperl/lib/auto/POSIX/wait.al
new file mode 100755
index 00000000000..fb68d776372
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/wait.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 606 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\wait.al)"
+sub wait {
+ usage "wait()" if @_ != 0;
+ CORE::wait();
+}
+
+# end of POSIX::wait
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/POSIX/waitpid.al b/Master/tlpkg/tlperl/lib/auto/POSIX/waitpid.al
new file mode 100755
index 00000000000..a211a453aa0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/POSIX/waitpid.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\..\lib\POSIX.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package POSIX;
+
+#line 611 "..\..\lib\POSIX.pm (autosplit into ..\..\lib\auto\POSIX\waitpid.al)"
+sub waitpid {
+ usage "waitpid(pid, options)" if @_ != 2;
+ CORE::waitpid($_[0], $_[1]);
+}
+
+# end of POSIX::waitpid
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/PPM/.packlist b/Master/tlpkg/tlperl/lib/auto/PPM/.packlist
new file mode 100755
index 00000000000..9d6668fa195
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/PPM/.packlist
@@ -0,0 +1,10 @@
+C:\strawberry\perl\bin\ppm.bat
+C:\strawberry\perl\bin\ppm.pl
+C:\strawberry\perl\vendor\lib\PPM.pm
+C:\strawberry\perl\vendor\lib\PPM\RelocPerl.pm
+C:\strawberry\perl\vendor\lib\PPM\XML\Element.pm
+C:\strawberry\perl\vendor\lib\PPM\XML\PPD.pm
+C:\strawberry\perl\vendor\lib\PPM\XML\PPMConfig.pm
+C:\strawberry\perl\vendor\lib\PPM\XML\RepositorySummary.pm
+C:\strawberry\perl\vendor\lib\PPM\XML\ValidatingElement.pm
+C:\strawberry\perl\vendor\lib\ppm.xml
diff --git a/Master/tlpkg/tlperl/lib/auto/Params/Util/.packlist b/Master/tlpkg/tlperl/lib/auto/Params/Util/.packlist
new file mode 100755
index 00000000000..95f503fbe12
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Params/Util/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Params\Util.pm
+C:\strawberry\perl\vendor\lib\auto\Params\Util\Util.bs
+C:\strawberry\perl\vendor\lib\auto\Params\Util\Util.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Params/Util/Util.bs b/Master/tlpkg/tlperl/lib/auto/Params/Util/Util.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Params/Util/Util.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Params/Util/Util.dll b/Master/tlpkg/tlperl/lib/auto/Params/Util/Util.dll
new file mode 100755
index 00000000000..f9e1dfefaae
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Params/Util/Util.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Parse/Binary/.packlist b/Master/tlpkg/tlperl/lib/auto/Parse/Binary/.packlist
new file mode 100755
index 00000000000..31b6e608c22
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Parse/Binary/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Parse\Binary.pm
+C:\strawberry\perl\vendor\lib\Parse\Binary\FixedFormat.pm
+C:\strawberry\perl\vendor\lib\Parse\Binary\FixedFormat\Variants.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Parse/CPAN/Meta/.packlist b/Master/tlpkg/tlperl/lib/auto/Parse/CPAN/Meta/.packlist
new file mode 100755
index 00000000000..7163740efd6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Parse/CPAN/Meta/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Parse\CPAN\Meta.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/PerlIO/encoding/encoding.dll b/Master/tlpkg/tlperl/lib/auto/PerlIO/encoding/encoding.dll
new file mode 100755
index 00000000000..5ad744a28ff
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/PerlIO/encoding/encoding.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/PerlIO/scalar/scalar.dll b/Master/tlpkg/tlperl/lib/auto/PerlIO/scalar/scalar.dll
new file mode 100755
index 00000000000..3281cdcbd7f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/PerlIO/scalar/scalar.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/PerlIO/via/via.dll b/Master/tlpkg/tlperl/lib/auto/PerlIO/via/via.dll
new file mode 100755
index 00000000000..e45fd37929b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/PerlIO/via/via.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Pod/Perldoc/.packlist b/Master/tlpkg/tlperl/lib/auto/Pod/Perldoc/.packlist
new file mode 100755
index 00000000000..78a1948d04a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Pod/Perldoc/.packlist
@@ -0,0 +1,14 @@
+C:\strawberry\perl\bin\perldoc
+C:\strawberry\perl\bin\perldoc.bat
+C:\strawberry\perl\lib\Pod\Perldoc.pm
+C:\strawberry\perl\lib\Pod\Perldoc\BaseTo.pm
+C:\strawberry\perl\lib\Pod\Perldoc\GetOptsOO.pm
+C:\strawberry\perl\lib\Pod\Perldoc\ToChecker.pm
+C:\strawberry\perl\lib\Pod\Perldoc\ToMan.pm
+C:\strawberry\perl\lib\Pod\Perldoc\ToNroff.pm
+C:\strawberry\perl\lib\Pod\Perldoc\ToPod.pm
+C:\strawberry\perl\lib\Pod\Perldoc\ToRtf.pm
+C:\strawberry\perl\lib\Pod\Perldoc\ToText.pm
+C:\strawberry\perl\lib\Pod\Perldoc\ToTk.pm
+C:\strawberry\perl\lib\Pod\Perldoc\ToXml.pm
+C:\strawberry\perl\lib\perldoc.pod
diff --git a/Master/tlpkg/tlperl/lib/auto/Pod/Plainer/.packlist b/Master/tlpkg/tlperl/lib/auto/Pod/Plainer/.packlist
new file mode 100755
index 00000000000..ec34ed7d99f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Pod/Plainer/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Pod\Plainer.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Pod/Simple/.packlist b/Master/tlpkg/tlperl/lib/auto/Pod/Simple/.packlist
new file mode 100755
index 00000000000..88e62dfd9fc
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Pod/Simple/.packlist
@@ -0,0 +1,32 @@
+C:\strawberry\perl\lib\Pod\Simple.pm
+C:\strawberry\perl\lib\Pod\Simple.pod
+C:\strawberry\perl\lib\Pod\Simple\BlackBox.pm
+C:\strawberry\perl\lib\Pod\Simple\Checker.pm
+C:\strawberry\perl\lib\Pod\Simple\Debug.pm
+C:\strawberry\perl\lib\Pod\Simple\DumpAsText.pm
+C:\strawberry\perl\lib\Pod\Simple\DumpAsXML.pm
+C:\strawberry\perl\lib\Pod\Simple\HTML.pm
+C:\strawberry\perl\lib\Pod\Simple\HTMLBatch.pm
+C:\strawberry\perl\lib\Pod\Simple\HTMLLegacy.pm
+C:\strawberry\perl\lib\Pod\Simple\LinkSection.pm
+C:\strawberry\perl\lib\Pod\Simple\Methody.pm
+C:\strawberry\perl\lib\Pod\Simple\Progress.pm
+C:\strawberry\perl\lib\Pod\Simple\PullParser.pm
+C:\strawberry\perl\lib\Pod\Simple\PullParserEndToken.pm
+C:\strawberry\perl\lib\Pod\Simple\PullParserStartToken.pm
+C:\strawberry\perl\lib\Pod\Simple\PullParserTextToken.pm
+C:\strawberry\perl\lib\Pod\Simple\PullParserToken.pm
+C:\strawberry\perl\lib\Pod\Simple\RTF.pm
+C:\strawberry\perl\lib\Pod\Simple\Search.pm
+C:\strawberry\perl\lib\Pod\Simple\SimpleTree.pm
+C:\strawberry\perl\lib\Pod\Simple\Subclassing.pod
+C:\strawberry\perl\lib\Pod\Simple\Text.pm
+C:\strawberry\perl\lib\Pod\Simple\TextContent.pm
+C:\strawberry\perl\lib\Pod\Simple\TiedOutFH.pm
+C:\strawberry\perl\lib\Pod\Simple\Transcode.pm
+C:\strawberry\perl\lib\Pod\Simple\TranscodeDumb.pm
+C:\strawberry\perl\lib\Pod\Simple\TranscodeSmart.pm
+C:\strawberry\perl\lib\Pod\Simple\XHTML.pm
+C:\strawberry\perl\lib\Pod\Simple\XMLOutStream.pm
+C:\strawberry\perl\lib\perlpod.pod
+C:\strawberry\perl\lib\perlpodspec.pod
diff --git a/Master/tlpkg/tlperl/lib/auto/Probe/Perl/.packlist b/Master/tlpkg/tlperl/lib/auto/Probe/Perl/.packlist
new file mode 100755
index 00000000000..461b0f88164
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Probe/Perl/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Probe\Perl.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/SDBM_File/SDBM_File.dll b/Master/tlpkg/tlperl/lib/auto/SDBM_File/SDBM_File.dll
new file mode 100755
index 00000000000..083a5362c89
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/SDBM_File/SDBM_File.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Safe/.packlist b/Master/tlpkg/tlperl/lib/auto/Safe/.packlist
new file mode 100755
index 00000000000..60280ad5fe1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Safe/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Safe.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Socket/Socket.dll b/Master/tlpkg/tlperl/lib/auto/Socket/Socket.dll
new file mode 100755
index 00000000000..359f3dc7f7c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Socket/Socket.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Sort/Versions/.packlist b/Master/tlpkg/tlperl/lib/auto/Sort/Versions/.packlist
new file mode 100755
index 00000000000..6adc0f48d25
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Sort/Versions/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Sort\Versions.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/.packlist b/Master/tlpkg/tlperl/lib/auto/Storable/.packlist
new file mode 100755
index 00000000000..71cadc6ec1c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/.packlist
@@ -0,0 +1,28 @@
+C:\strawberry\perl\lib\Storable.pm
+C:\strawberry\perl\lib\auto\Storable\BIN_VERSION_NV.al
+C:\strawberry\perl\lib\auto\Storable\BIN_WRITE_VERSION_NV.al
+C:\strawberry\perl\lib\auto\Storable\CAN_FLOCK.al
+C:\strawberry\perl\lib\auto\Storable\Storable.bs
+C:\strawberry\perl\lib\auto\Storable\Storable.dll
+C:\strawberry\perl\lib\auto\Storable\_freeze.al
+C:\strawberry\perl\lib\auto\Storable\_retrieve.al
+C:\strawberry\perl\lib\auto\Storable\_store.al
+C:\strawberry\perl\lib\auto\Storable\_store_fd.al
+C:\strawberry\perl\lib\auto\Storable\autosplit.ix
+C:\strawberry\perl\lib\auto\Storable\fd_retrieve.al
+C:\strawberry\perl\lib\auto\Storable\file_magic.al
+C:\strawberry\perl\lib\auto\Storable\freeze.al
+C:\strawberry\perl\lib\auto\Storable\lock_nstore.al
+C:\strawberry\perl\lib\auto\Storable\lock_retrieve.al
+C:\strawberry\perl\lib\auto\Storable\lock_store.al
+C:\strawberry\perl\lib\auto\Storable\logcarp.al
+C:\strawberry\perl\lib\auto\Storable\logcroak.al
+C:\strawberry\perl\lib\auto\Storable\nfreeze.al
+C:\strawberry\perl\lib\auto\Storable\nstore.al
+C:\strawberry\perl\lib\auto\Storable\nstore_fd.al
+C:\strawberry\perl\lib\auto\Storable\read_magic.al
+C:\strawberry\perl\lib\auto\Storable\retrieve.al
+C:\strawberry\perl\lib\auto\Storable\show_file_magic.al
+C:\strawberry\perl\lib\auto\Storable\store.al
+C:\strawberry\perl\lib\auto\Storable\store_fd.al
+C:\strawberry\perl\lib\auto\Storable\thaw.al
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/BIN_VERSION_NV.al b/Master/tlpkg/tlperl/lib/auto/Storable/BIN_VERSION_NV.al
new file mode 100755
index 00000000000..bd620b054d5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/BIN_VERSION_NV.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 192 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\BIN_VERSION_NV.al)"
+sub BIN_VERSION_NV {
+ sprintf "%d.%03d", BIN_MAJOR(), BIN_MINOR();
+}
+
+# end of Storable::BIN_VERSION_NV
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/BIN_WRITE_VERSION_NV.al b/Master/tlpkg/tlperl/lib/auto/Storable/BIN_WRITE_VERSION_NV.al
new file mode 100755
index 00000000000..8a20f970983
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/BIN_WRITE_VERSION_NV.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 196 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\BIN_WRITE_VERSION_NV.al)"
+sub BIN_WRITE_VERSION_NV {
+ sprintf "%d.%03d", BIN_MAJOR(), BIN_WRITE_MINOR();
+}
+
+# end of Storable::BIN_WRITE_VERSION_NV
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/CAN_FLOCK.al b/Master/tlpkg/tlperl/lib/auto/Storable/CAN_FLOCK.al
new file mode 100755
index 00000000000..de43b1a3c89
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/CAN_FLOCK.al
@@ -0,0 +1,21 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 83 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\CAN_FLOCK.al)"
+#
+# Determine whether locking is possible, but only when needed.
+#
+
+sub CAN_FLOCK; my $CAN_FLOCK; sub CAN_FLOCK {
+ return $CAN_FLOCK if defined $CAN_FLOCK;
+ require Config; import Config;
+ return $CAN_FLOCK =
+ $Config{'d_flock'} ||
+ $Config{'d_fcntl_can_lock'} ||
+ $Config{'d_lockf'};
+}
+
+# end of Storable::CAN_FLOCK
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/Storable.bs b/Master/tlpkg/tlperl/lib/auto/Storable/Storable.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/Storable.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/Storable.dll b/Master/tlpkg/tlperl/lib/auto/Storable/Storable.dll
new file mode 100755
index 00000000000..75306d3f82f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/Storable.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/_freeze.al b/Master/tlpkg/tlperl/lib/auto/Storable/_freeze.al
new file mode 100755
index 00000000000..87918bd5b11
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/_freeze.al
@@ -0,0 +1,23 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 330 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\_freeze.al)"
+# Internal freeze routine
+sub _freeze {
+ my $xsptr = shift;
+ my $self = shift;
+ logcroak "not a reference" unless ref($self);
+ logcroak "too many arguments" unless @_ == 0; # No @foo in arglist
+ my $da = $@; # Don't mess if called from exception handler
+ my $ret;
+ # Call C routine mstore or net_mstore, depending on network order
+ eval { $ret = &$xsptr($self) };
+ logcroak $@ if $@ =~ s/\.?\n$/,/;
+ $@ = $da;
+ return $ret ? $ret : undef;
+}
+
+# end of Storable::_freeze
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/_retrieve.al b/Master/tlpkg/tlperl/lib/auto/Storable/_retrieve.al
new file mode 100755
index 00000000000..5a798322ea8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/_retrieve.al
@@ -0,0 +1,31 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 364 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\_retrieve.al)"
+# Internal retrieve routine
+sub _retrieve {
+ my ($file, $use_locking) = @_;
+ local *FILE;
+ open(FILE, $file) || logcroak "can't open $file: $!";
+ binmode FILE; # Archaic systems...
+ my $self;
+ my $da = $@; # Could be from exception handler
+ if ($use_locking) {
+ unless (&CAN_FLOCK) {
+ logcarp "Storable::lock_store: fcntl/flock emulation broken on $^O";
+ return undef;
+ }
+ flock(FILE, LOCK_SH) || logcroak "can't get shared lock on $file: $!";
+ # Unlocking will happen when FILE is closed
+ }
+ eval { $self = pretrieve(*FILE) }; # Call C routine
+ close(FILE);
+ logcroak $@ if $@ =~ s/\.?\n$/,/;
+ $@ = $da;
+ return $self;
+}
+
+# end of Storable::_retrieve
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/_store.al b/Master/tlpkg/tlperl/lib/auto/Storable/_store.al
new file mode 100755
index 00000000000..9eade5dfe86
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/_store.al
@@ -0,0 +1,41 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 239 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\_store.al)"
+# Internal store to file routine
+sub _store {
+ my $xsptr = shift;
+ my $self = shift;
+ my ($file, $use_locking) = @_;
+ logcroak "not a reference" unless ref($self);
+ logcroak "wrong argument number" unless @_ == 2; # No @foo in arglist
+ local *FILE;
+ if ($use_locking) {
+ open(FILE, ">>$file") || logcroak "can't write into $file: $!";
+ unless (&CAN_FLOCK) {
+ logcarp "Storable::lock_store: fcntl/flock emulation broken on $^O";
+ return undef;
+ }
+ flock(FILE, LOCK_EX) ||
+ logcroak "can't get exclusive lock on $file: $!";
+ truncate FILE, 0;
+ # Unlocking will happen when FILE is closed
+ } else {
+ open(FILE, ">$file") || logcroak "can't create $file: $!";
+ }
+ binmode FILE; # Archaic systems...
+ my $da = $@; # Don't mess if called from exception handler
+ my $ret;
+ # Call C routine nstore or pstore, depending on network order
+ eval { $ret = &$xsptr(*FILE, $self) };
+ close(FILE) or $ret = undef;
+ unlink($file) or warn "Can't unlink $file: $!\n" if $@ || !defined $ret;
+ logcroak $@ if $@ =~ s/\.?\n$/,/;
+ $@ = $da;
+ return $ret ? $ret : undef;
+}
+
+# end of Storable::_store
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/_store_fd.al b/Master/tlpkg/tlperl/lib/auto/Storable/_store_fd.al
new file mode 100755
index 00000000000..ce3def2cfc8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/_store_fd.al
@@ -0,0 +1,27 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 292 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\_store_fd.al)"
+# Internal store routine on opened file descriptor
+sub _store_fd {
+ my $xsptr = shift;
+ my $self = shift;
+ my ($file) = @_;
+ logcroak "not a reference" unless ref($self);
+ logcroak "too many arguments" unless @_ == 1; # No @foo in arglist
+ my $fd = fileno($file);
+ logcroak "not a valid file descriptor" unless defined $fd;
+ my $da = $@; # Don't mess if called from exception handler
+ my $ret;
+ # Call C routine nstore or pstore, depending on network order
+ eval { $ret = &$xsptr($file, $self) };
+ logcroak $@ if $@ =~ s/\.?\n$/,/;
+ local $\; print $file ''; # Autoflush the file if wanted
+ $@ = $da;
+ return $ret ? $ret : undef;
+}
+
+# end of Storable::_store_fd
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Storable/autosplit.ix
new file mode 100755
index 00000000000..04fcedf21c0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/autosplit.ix
@@ -0,0 +1,28 @@
+# Index created by AutoSplit for blib\lib\Storable.pm
+# (file acts as timestamp)
+package Storable;
+sub logcroak ;
+sub logcarp ;
+sub CAN_FLOCK ;
+sub show_file_magic ;
+sub file_magic ;
+sub read_magic ;
+sub BIN_VERSION_NV ;
+sub BIN_WRITE_VERSION_NV ;
+sub store ;
+sub nstore ;
+sub lock_store ;
+sub lock_nstore ;
+sub _store ;
+sub store_fd ;
+sub nstore_fd ;
+sub _store_fd ;
+sub freeze ;
+sub nfreeze ;
+sub _freeze ;
+sub retrieve ;
+sub lock_retrieve ;
+sub _retrieve ;
+sub fd_retrieve ;
+sub thaw ;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al b/Master/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al
new file mode 100755
index 00000000000..93f9f18a835
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/fd_retrieve.al
@@ -0,0 +1,25 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 387 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\fd_retrieve.al)"
+#
+# fd_retrieve
+#
+# Same as retrieve, but perform from an already opened file descriptor instead.
+#
+sub fd_retrieve {
+ my ($file) = @_;
+ my $fd = fileno($file);
+ logcroak "not a valid file descriptor" unless defined $fd;
+ my $self;
+ my $da = $@; # Could be from exception handler
+ eval { $self = pretrieve($file) }; # Call C routine
+ logcroak $@ if $@ =~ s/\.?\n$/,/;
+ $@ = $da;
+ return $self;
+}
+
+# end of Storable::fd_retrieve
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/file_magic.al b/Master/tlpkg/tlperl/lib/auto/Storable/file_magic.al
new file mode 100755
index 00000000000..532ab40ba60
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/file_magic.al
@@ -0,0 +1,21 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 118 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\file_magic.al)"
+sub file_magic {
+ my $file = shift;
+ my $fh = new FileHandle;
+ open($fh, "<". $file) || die "Can't open '$file': $!";
+ binmode($fh);
+ defined(sysread($fh, my $buf, 32)) || die "Can't read from '$file': $!";
+ close($fh);
+
+ $file = "./$file" unless $file; # ensure TRUE value
+
+ return read_magic($buf, $file);
+}
+
+# end of Storable::file_magic
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/freeze.al b/Master/tlpkg/tlperl/lib/auto/Storable/freeze.al
new file mode 100755
index 00000000000..cb95bf29970
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/freeze.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 311 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\freeze.al)"
+#
+# freeze
+#
+# Store oject and its hierarchy in memory and return a scalar
+# containing the result.
+#
+sub freeze {
+ _freeze(\&mstore, @_);
+}
+
+# end of Storable::freeze
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/lock_nstore.al b/Master/tlpkg/tlperl/lib/auto/Storable/lock_nstore.al
new file mode 100755
index 00000000000..acd4cde5650
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/lock_nstore.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 230 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\lock_nstore.al)"
+#
+# lock_nstore
+#
+# Same as nstore, but flock the file first (advisory locking).
+#
+sub lock_nstore {
+ return _store(\&net_pstore, @_, 1);
+}
+
+# end of Storable::lock_nstore
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/lock_retrieve.al b/Master/tlpkg/tlperl/lib/auto/Storable/lock_retrieve.al
new file mode 100755
index 00000000000..41290bcd00d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/lock_retrieve.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 355 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\lock_retrieve.al)"
+#
+# lock_retrieve
+#
+# Same as retrieve, but with advisory locking.
+#
+sub lock_retrieve {
+ _retrieve($_[0], 1);
+}
+
+# end of Storable::lock_retrieve
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/lock_store.al b/Master/tlpkg/tlperl/lib/auto/Storable/lock_store.al
new file mode 100755
index 00000000000..1c94e960fab
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/lock_store.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 221 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\lock_store.al)"
+#
+# lock_store
+#
+# Same as store, but flock the file first (advisory locking).
+#
+sub lock_store {
+ return _store(\&pstore, @_, 1);
+}
+
+# end of Storable::lock_store
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/logcarp.al b/Master/tlpkg/tlperl/lib/auto/Storable/logcarp.al
new file mode 100755
index 00000000000..58642b8ba1f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/logcarp.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 79 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\logcarp.al)"
+sub logcarp {
+ Carp::carp(@_);
+}
+
+# end of Storable::logcarp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/logcroak.al b/Master/tlpkg/tlperl/lib/auto/Storable/logcroak.al
new file mode 100755
index 00000000000..fd37cfe86e0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/logcroak.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 70 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\logcroak.al)"
+#
+# Use of Log::Agent is optional. If it hasn't imported these subs then
+# Autoloader will kindly supply our fallback implementation.
+#
+
+sub logcroak {
+ Carp::croak(@_);
+}
+
+# end of Storable::logcroak
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/nfreeze.al b/Master/tlpkg/tlperl/lib/auto/Storable/nfreeze.al
new file mode 100755
index 00000000000..c79d3cf3c3d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/nfreeze.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 321 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\nfreeze.al)"
+#
+# nfreeze
+#
+# Same as freeze but in network order.
+#
+sub nfreeze {
+ _freeze(\&net_mstore, @_);
+}
+
+# end of Storable::nfreeze
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/nstore.al b/Master/tlpkg/tlperl/lib/auto/Storable/nstore.al
new file mode 100755
index 00000000000..395635f5e2b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/nstore.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 212 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\nstore.al)"
+#
+# nstore
+#
+# Same as store, but in network order.
+#
+sub nstore {
+ return _store(\&net_pstore, @_, 0);
+}
+
+# end of Storable::nstore
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/nstore_fd.al b/Master/tlpkg/tlperl/lib/auto/Storable/nstore_fd.al
new file mode 100755
index 00000000000..bf359c31991
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/nstore_fd.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 282 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\nstore_fd.al)"
+#
+# nstore_fd
+#
+# Same as store_fd, but in network order.
+#
+sub nstore_fd {
+ my ($self, $file) = @_;
+ return _store_fd(\&net_pstore, @_);
+}
+
+# end of Storable::nstore_fd
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/read_magic.al b/Master/tlpkg/tlperl/lib/auto/Storable/read_magic.al
new file mode 100755
index 00000000000..f98dbb156c7
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/read_magic.al
@@ -0,0 +1,69 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 131 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\read_magic.al)"
+sub read_magic {
+ my($buf, $file) = @_;
+ my %info;
+
+ my $buflen = length($buf);
+ my $magic;
+ if ($buf =~ s/^(pst0|perl-store)//) {
+ $magic = $1;
+ $info{file} = $file || 1;
+ }
+ else {
+ return undef if $file;
+ $magic = "";
+ }
+
+ return undef unless length($buf);
+
+ my $net_order;
+ if ($magic eq "perl-store" && ord(substr($buf, 0, 1)) > 1) {
+ $info{version} = -1;
+ $net_order = 0;
+ }
+ else {
+ $net_order = ord(substr($buf, 0, 1, ""));
+ my $major = $net_order >> 1;
+ return undef if $major > 4; # sanity (assuming we never go that high)
+ $info{major} = $major;
+ $net_order &= 0x01;
+ if ($major > 1) {
+ return undef unless length($buf);
+ my $minor = ord(substr($buf, 0, 1, ""));
+ $info{minor} = $minor;
+ $info{version} = "$major.$minor";
+ $info{version_nv} = sprintf "%d.%03d", $major, $minor;
+ }
+ else {
+ $info{version} = $major;
+ }
+ }
+ $info{version_nv} ||= $info{version};
+ $info{netorder} = $net_order;
+
+ unless ($net_order) {
+ return undef unless length($buf);
+ my $len = ord(substr($buf, 0, 1, ""));
+ return undef unless length($buf) >= $len;
+ return undef unless $len == 4 || $len == 8; # sanity
+ $info{byteorder} = substr($buf, 0, $len, "");
+ $info{intsize} = ord(substr($buf, 0, 1, ""));
+ $info{longsize} = ord(substr($buf, 0, 1, ""));
+ $info{ptrsize} = ord(substr($buf, 0, 1, ""));
+ if ($info{version_nv} >= 2.002) {
+ return undef unless length($buf);
+ $info{nvsize} = ord(substr($buf, 0, 1, ""));
+ }
+ }
+ $info{hdrsize} = $buflen - length($buf);
+
+ return \%info;
+}
+
+# end of Storable::read_magic
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/retrieve.al b/Master/tlpkg/tlperl/lib/auto/Storable/retrieve.al
new file mode 100755
index 00000000000..284565257d5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/retrieve.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 345 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\retrieve.al)"
+#
+# retrieve
+#
+# Retrieve object hierarchy from disk, returning a reference to the root
+# object of that tree.
+#
+sub retrieve {
+ _retrieve($_[0], 0);
+}
+
+# end of Storable::retrieve
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/show_file_magic.al b/Master/tlpkg/tlperl/lib/auto/Storable/show_file_magic.al
new file mode 100755
index 00000000000..2f7abe325c0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/show_file_magic.al
@@ -0,0 +1,30 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 96 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\show_file_magic.al)"
+sub show_file_magic {
+ print <<EOM;
+#
+# To recognize the data files of the Perl module Storable,
+# the following lines need to be added to the local magic(5) file,
+# usually either /usr/share/misc/magic or /etc/magic.
+#
+0 string perl-store perl Storable(v0.6) data
+>4 byte >0 (net-order %d)
+>>4 byte &01 (network-ordered)
+>>4 byte =3 (major 1)
+>>4 byte =2 (major 1)
+
+0 string pst0 perl Storable(v0.7) data
+>4 byte >0
+>>4 byte &01 (network-ordered)
+>>4 byte =5 (major 2)
+>>4 byte =4 (major 2)
+>>5 byte >0 (minor %d)
+EOM
+}
+
+# end of Storable::show_file_magic
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/store.al b/Master/tlpkg/tlperl/lib/auto/Storable/store.al
new file mode 100755
index 00000000000..48ed4b12ac3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/store.al
@@ -0,0 +1,20 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 200 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\store.al)"
+#
+# store
+#
+# Store target object hierarchy, identified by a reference to its root.
+# The stored object tree may later be retrieved to memory via retrieve.
+# Returns undef if an I/O error occurred, in which case the file is
+# removed.
+#
+sub store {
+ return _store(\&pstore, @_, 0);
+}
+
+# end of Storable::store
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/store_fd.al b/Master/tlpkg/tlperl/lib/auto/Storable/store_fd.al
new file mode 100755
index 00000000000..01a5ba2aaeb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/store_fd.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 272 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\store_fd.al)"
+#
+# store_fd
+#
+# Same as store, but perform on an already opened file descriptor instead.
+# Returns undef if an I/O error occurred.
+#
+sub store_fd {
+ return _store_fd(\&pstore, @_);
+}
+
+# end of Storable::store_fd
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Storable/thaw.al b/Master/tlpkg/tlperl/lib/auto/Storable/thaw.al
new file mode 100755
index 00000000000..5349dfcc054
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Storable/thaw.al
@@ -0,0 +1,28 @@
+# NOTE: Derived from blib\lib\Storable.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Storable;
+
+#line 404 "blib\lib\Storable.pm (autosplit into blib\lib\auto\Storable\thaw.al)"
+#
+# thaw
+#
+# Recreate objects in memory from an existing frozen image created
+# by freeze. If the frozen image passed is undef, return undef.
+#
+sub thaw {
+ my ($frozen) = @_;
+ return undef unless defined $frozen;
+ my $self;
+ my $da = $@; # Could be from exception handler
+ eval { $self = mretrieve($frozen) }; # Call C routine
+ logcroak $@ if $@ =~ s/\.?\n$/,/;
+ $@ = $da;
+ return $self;
+}
+
+1;
+__END__
+
+1;
+# end of Storable::thaw
diff --git a/Master/tlpkg/tlperl/lib/auto/String/CRC32/.packlist b/Master/tlpkg/tlperl/lib/auto/String/CRC32/.packlist
new file mode 100755
index 00000000000..ef8c86498b0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/String/CRC32/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\vendor\lib\String\CRC32.pm
+C:\strawberry\perl\vendor\lib\String\CRC32.pod
+C:\strawberry\perl\vendor\lib\auto\String\CRC32\CRC32.bs
+C:\strawberry\perl\vendor\lib\auto\String\CRC32\CRC32.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/String/CRC32/CRC32.bs b/Master/tlpkg/tlperl/lib/auto/String/CRC32/CRC32.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/String/CRC32/CRC32.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/String/CRC32/CRC32.dll b/Master/tlpkg/tlperl/lib/auto/String/CRC32/CRC32.dll
new file mode 100755
index 00000000000..1848288d9e3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/String/CRC32/CRC32.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Sub/Uplevel/.packlist b/Master/tlpkg/tlperl/lib/auto/Sub/Uplevel/.packlist
new file mode 100755
index 00000000000..f3d2f75ec82
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Sub/Uplevel/.packlist
@@ -0,0 +1,2 @@
+C:\strawberry\perl\vendor\lib\Sub\Uplevel.pm
+C:\strawberry\perl\vendor\lib\Sub\Uplevel.pod
diff --git a/Master/tlpkg/tlperl/lib/auto/Switch/.packlist b/Master/tlpkg/tlperl/lib/auto/Switch/.packlist
new file mode 100755
index 00000000000..069e96659eb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Switch/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Switch.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Sys/Hostname/Hostname.dll b/Master/tlpkg/tlperl/lib/auto/Sys/Hostname/Hostname.dll
new file mode 100755
index 00000000000..948ff2f4302
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Sys/Hostname/Hostname.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Sys/Hostname/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Sys/Hostname/autosplit.ix
new file mode 100755
index 00000000000..f7014ea8d84
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Sys/Hostname/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for ..\..\lib\Sys\Hostname.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Term/ANSIColor/.packlist b/Master/tlpkg/tlperl/lib/auto/Term/ANSIColor/.packlist
new file mode 100755
index 00000000000..47117b5ad4e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Term/ANSIColor/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Term\ANSIColor.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Term/ReadKey/ReadKey.bs b/Master/tlpkg/tlperl/lib/auto/Term/ReadKey/ReadKey.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Term/ReadKey/ReadKey.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Term/ReadKey/ReadKey.dll b/Master/tlpkg/tlperl/lib/auto/Term/ReadKey/ReadKey.dll
new file mode 100755
index 00000000000..64edbb46e18
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Term/ReadKey/ReadKey.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Term/ReadKey/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Term/ReadKey/autosplit.ix
new file mode 100755
index 00000000000..0d578a2f538
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Term/ReadKey/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for blib\lib\Term/ReadKey.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Test/Deep/.packlist b/Master/tlpkg/tlperl/lib/auto/Test/Deep/.packlist
new file mode 100755
index 00000000000..3771ae41e2a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Test/Deep/.packlist
@@ -0,0 +1,42 @@
+C:\strawberry\perl\vendor\lib\Test\Deep.pm
+C:\strawberry\perl\vendor\lib\Test\Deep.pod
+C:\strawberry\perl\vendor\lib\Test\Deep\All.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Any.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Array.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\ArrayEach.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\ArrayElementsOnly.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\ArrayLength.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\ArrayLengthOnly.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Blessed.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Boolean.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Cache.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Cache\Simple.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Class.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Cmp.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Code.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Hash.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\HashEach.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\HashElements.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\HashKeys.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\HashKeysOnly.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Ignore.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Isa.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\ListMethods.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\MM.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Methods.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\NoTest.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Number.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Ref.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\RefType.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Regexp.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\RegexpMatches.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\RegexpOnly.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\RegexpRef.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\RegexpRefOnly.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\RegexpVersion.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\ScalarRef.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\ScalarRefOnly.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Set.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Shallow.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\Stack.pm
+C:\strawberry\perl\vendor\lib\Test\Deep\String.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Test/Exception/.packlist b/Master/tlpkg/tlperl/lib/auto/Test/Exception/.packlist
new file mode 100755
index 00000000000..a0e803a6fac
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Test/Exception/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Test\Exception.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Test/Harness/.packlist b/Master/tlpkg/tlperl/lib/auto/Test/Harness/.packlist
new file mode 100755
index 00000000000..b51d6118dd9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Test/Harness/.packlist
@@ -0,0 +1,52 @@
+C:\strawberry\perl\bin\prove
+C:\strawberry\perl\bin\prove.bat
+C:\strawberry\perl\lib\App\Prove.pm
+C:\strawberry\perl\lib\App\Prove\State.pm
+C:\strawberry\perl\lib\App\Prove\State\Result.pm
+C:\strawberry\perl\lib\App\Prove\State\Result\Test.pm
+C:\strawberry\perl\lib\TAP\Base.pm
+C:\strawberry\perl\lib\TAP\Formatter\Base.pm
+C:\strawberry\perl\lib\TAP\Formatter\Color.pm
+C:\strawberry\perl\lib\TAP\Formatter\Console.pm
+C:\strawberry\perl\lib\TAP\Formatter\Console\ParallelSession.pm
+C:\strawberry\perl\lib\TAP\Formatter\Console\Session.pm
+C:\strawberry\perl\lib\TAP\Formatter\File.pm
+C:\strawberry\perl\lib\TAP\Formatter\File\Session.pm
+C:\strawberry\perl\lib\TAP\Formatter\Session.pm
+C:\strawberry\perl\lib\TAP\Harness.pm
+C:\strawberry\perl\lib\TAP\Harness\Beyond.pod
+C:\strawberry\perl\lib\TAP\Object.pm
+C:\strawberry\perl\lib\TAP\Parser.pm
+C:\strawberry\perl\lib\TAP\Parser\Aggregator.pm
+C:\strawberry\perl\lib\TAP\Parser\Grammar.pm
+C:\strawberry\perl\lib\TAP\Parser\Iterator.pm
+C:\strawberry\perl\lib\TAP\Parser\IteratorFactory.pm
+C:\strawberry\perl\lib\TAP\Parser\Iterator\Array.pm
+C:\strawberry\perl\lib\TAP\Parser\Iterator\Process.pm
+C:\strawberry\perl\lib\TAP\Parser\Iterator\Stream.pm
+C:\strawberry\perl\lib\TAP\Parser\Multiplexer.pm
+C:\strawberry\perl\lib\TAP\Parser\Result.pm
+C:\strawberry\perl\lib\TAP\Parser\ResultFactory.pm
+C:\strawberry\perl\lib\TAP\Parser\Result\Bailout.pm
+C:\strawberry\perl\lib\TAP\Parser\Result\Comment.pm
+C:\strawberry\perl\lib\TAP\Parser\Result\Plan.pm
+C:\strawberry\perl\lib\TAP\Parser\Result\Pragma.pm
+C:\strawberry\perl\lib\TAP\Parser\Result\Test.pm
+C:\strawberry\perl\lib\TAP\Parser\Result\Unknown.pm
+C:\strawberry\perl\lib\TAP\Parser\Result\Version.pm
+C:\strawberry\perl\lib\TAP\Parser\Result\YAML.pm
+C:\strawberry\perl\lib\TAP\Parser\Scheduler.pm
+C:\strawberry\perl\lib\TAP\Parser\Scheduler\Job.pm
+C:\strawberry\perl\lib\TAP\Parser\Scheduler\Spinner.pm
+C:\strawberry\perl\lib\TAP\Parser\Source.pm
+C:\strawberry\perl\lib\TAP\Parser\SourceHandler.pm
+C:\strawberry\perl\lib\TAP\Parser\SourceHandler\Executable.pm
+C:\strawberry\perl\lib\TAP\Parser\SourceHandler\File.pm
+C:\strawberry\perl\lib\TAP\Parser\SourceHandler\Handle.pm
+C:\strawberry\perl\lib\TAP\Parser\SourceHandler\Perl.pm
+C:\strawberry\perl\lib\TAP\Parser\SourceHandler\RawTAP.pm
+C:\strawberry\perl\lib\TAP\Parser\SourceHandler\pgTAP.pm
+C:\strawberry\perl\lib\TAP\Parser\Utils.pm
+C:\strawberry\perl\lib\TAP\Parser\YAMLish\Reader.pm
+C:\strawberry\perl\lib\TAP\Parser\YAMLish\Writer.pm
+C:\strawberry\perl\lib\Test\Harness.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Test/Manifest/.packlist b/Master/tlpkg/tlperl/lib/auto/Test/Manifest/.packlist
new file mode 100755
index 00000000000..7812656ee1a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Test/Manifest/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Test\Manifest.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Test/NoWarnings/.packlist b/Master/tlpkg/tlperl/lib/auto/Test/NoWarnings/.packlist
new file mode 100755
index 00000000000..6235fd4f35a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Test/NoWarnings/.packlist
@@ -0,0 +1,2 @@
+C:\strawberry\perl\vendor\lib\Test\NoWarnings.pm
+C:\strawberry\perl\vendor\lib\Test\NoWarnings\Warning.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Test/Script/.packlist b/Master/tlpkg/tlperl/lib/auto/Test/Script/.packlist
new file mode 100755
index 00000000000..140e977675e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Test/Script/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Test\Script.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Test/Simple/.packlist b/Master/tlpkg/tlperl/lib/auto/Test/Simple/.packlist
new file mode 100755
index 00000000000..b0c56b22f03
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Test/Simple/.packlist
@@ -0,0 +1,8 @@
+C:\strawberry\perl\lib\Test\Builder.pm
+C:\strawberry\perl\lib\Test\Builder\IO\Scalar.pm
+C:\strawberry\perl\lib\Test\Builder\Module.pm
+C:\strawberry\perl\lib\Test\Builder\Tester.pm
+C:\strawberry\perl\lib\Test\Builder\Tester\Color.pm
+C:\strawberry\perl\lib\Test\More.pm
+C:\strawberry\perl\lib\Test\Simple.pm
+C:\strawberry\perl\lib\Test\Tutorial.pod
diff --git a/Master/tlpkg/tlperl/lib/auto/Test/Tester/.packlist b/Master/tlpkg/tlperl/lib/auto/Test/Tester/.packlist
new file mode 100755
index 00000000000..6e0646f2efb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Test/Tester/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\vendor\lib\Test\Tester.pm
+C:\strawberry\perl\vendor\lib\Test\Tester\Capture.pm
+C:\strawberry\perl\vendor\lib\Test\Tester\CaptureRunner.pm
+C:\strawberry\perl\vendor\lib\Test\Tester\Delegate.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Test/Warn/.packlist b/Master/tlpkg/tlperl/lib/auto/Test/Warn/.packlist
new file mode 100755
index 00000000000..6377aa01db4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Test/Warn/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Test\Warn.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Text/Balanced/.packlist b/Master/tlpkg/tlperl/lib/auto/Text/Balanced/.packlist
new file mode 100755
index 00000000000..1ca3f88d769
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Text/Balanced/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\Text\Balanced.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Text/Diff/.packlist b/Master/tlpkg/tlperl/lib/auto/Text/Diff/.packlist
new file mode 100755
index 00000000000..abb4b3a7fdc
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Text/Diff/.packlist
@@ -0,0 +1,2 @@
+C:\strawberry\perl\vendor\lib\Text\Diff.pm
+C:\strawberry\perl\vendor\lib\Text\Diff\Table.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Text/Glob/.packlist b/Master/tlpkg/tlperl/lib/auto/Text/Glob/.packlist
new file mode 100755
index 00000000000..a6ffb2200de
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Text/Glob/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Text\Glob.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Text/Soundex/Soundex.dll b/Master/tlpkg/tlperl/lib/auto/Text/Soundex/Soundex.dll
new file mode 100755
index 00000000000..b2f84236216
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Text/Soundex/Soundex.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tie/EncryptedHash/.packlist b/Master/tlpkg/tlperl/lib/auto/Tie/EncryptedHash/.packlist
new file mode 100755
index 00000000000..f706ebf120c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tie/EncryptedHash/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Tie\EncryptedHash.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Time/HiRes/HiRes.dll b/Master/tlpkg/tlperl/lib/auto/Time/HiRes/HiRes.dll
new file mode 100755
index 00000000000..c83b3eb2fd9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Time/HiRes/HiRes.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Time/Piece/.packlist b/Master/tlpkg/tlperl/lib/auto/Time/Piece/.packlist
new file mode 100755
index 00000000000..ab048cc2a2a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Time/Piece/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\lib\Time\Piece.pm
+C:\strawberry\perl\lib\Time\Seconds.pm
+C:\strawberry\perl\lib\auto\Time\Piece\Piece.bs
+C:\strawberry\perl\lib\auto\Time\Piece\Piece.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Time/Piece/Piece.bs b/Master/tlpkg/tlperl/lib/auto/Time/Piece/Piece.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Time/Piece/Piece.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Time/Piece/Piece.dll b/Master/tlpkg/tlperl/lib/auto/Time/Piece/Piece.dll
new file mode 100755
index 00000000000..ea2b2c1dfb6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Time/Piece/Piece.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/.packlist b/Master/tlpkg/tlperl/lib/auto/Tk/.packlist
new file mode 100755
index 00000000000..135d7140fde
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/.packlist
@@ -0,0 +1,664 @@
+C:\strawberry\perl\bin\gedi
+C:\strawberry\perl\bin\gedi.bat
+C:\strawberry\perl\bin\ptked
+C:\strawberry\perl\bin\ptked.bat
+C:\strawberry\perl\bin\ptksh
+C:\strawberry\perl\bin\ptksh.bat
+C:\strawberry\perl\bin\tkjpeg
+C:\strawberry\perl\bin\tkjpeg.bat
+C:\strawberry\perl\bin\widget
+C:\strawberry\perl\bin\widget.bat
+C:\strawberry\perl\site\lib\Tie\Watch.pm
+C:\strawberry\perl\site\lib\Tk.pm
+C:\strawberry\perl\site\lib\Tk.pod
+C:\strawberry\perl\site\lib\Tk\804delta.pod
+C:\strawberry\perl\site\lib\Tk\Adjuster.pm
+C:\strawberry\perl\site\lib\Tk\Adjuster.pod
+C:\strawberry\perl\site\lib\Tk\After.pm
+C:\strawberry\perl\site\lib\Tk\Animation.pm
+C:\strawberry\perl\site\lib\Tk\Animation.pod
+C:\strawberry\perl\site\lib\Tk\Balloon.pm
+C:\strawberry\perl\site\lib\Tk\Balloon.pod
+C:\strawberry\perl\site\lib\Tk\Bitmap.pm
+C:\strawberry\perl\site\lib\Tk\Bitmap.pod
+C:\strawberry\perl\site\lib\Tk\BrowseEntry.pm
+C:\strawberry\perl\site\lib\Tk\BrowseEntry.pod
+C:\strawberry\perl\site\lib\Tk\Button.pm
+C:\strawberry\perl\site\lib\Tk\Button.pod
+C:\strawberry\perl\site\lib\Tk\Camel.xpm
+C:\strawberry\perl\site\lib\Tk\Canvas.pm
+C:\strawberry\perl\site\lib\Tk\Canvas.pod
+C:\strawberry\perl\site\lib\Tk\Checkbutton.pm
+C:\strawberry\perl\site\lib\Tk\Checkbutton.pod
+C:\strawberry\perl\site\lib\Tk\Clipboard.pm
+C:\strawberry\perl\site\lib\Tk\Clipboard.pod
+C:\strawberry\perl\site\lib\Tk\CmdLine.pm
+C:\strawberry\perl\site\lib\Tk\CmdLine.pod
+C:\strawberry\perl\site\lib\Tk\ColorEdit.xpm
+C:\strawberry\perl\site\lib\Tk\ColorEditor.pm
+C:\strawberry\perl\site\lib\Tk\ColorEditor.pod
+C:\strawberry\perl\site\lib\Tk\Common.pod
+C:\strawberry\perl\site\lib\Tk\Compound.pm
+C:\strawberry\perl\site\lib\Tk\Compound.pod
+C:\strawberry\perl\site\lib\Tk\Config.pm
+C:\strawberry\perl\site\lib\Tk\ConfigSpecs.pod
+C:\strawberry\perl\site\lib\Tk\Configure.pm
+C:\strawberry\perl\site\lib\Tk\Credits
+C:\strawberry\perl\site\lib\Tk\DItem.pod
+C:\strawberry\perl\site\lib\Tk\Derived.pm
+C:\strawberry\perl\site\lib\Tk\Derived.pod
+C:\strawberry\perl\site\lib\Tk\Dialog.pm
+C:\strawberry\perl\site\lib\Tk\Dialog.pod
+C:\strawberry\perl\site\lib\Tk\DialogBox.pm
+C:\strawberry\perl\site\lib\Tk\DialogBox.pod
+C:\strawberry\perl\site\lib\Tk\DirTree.pm
+C:\strawberry\perl\site\lib\Tk\DirTree.pod
+C:\strawberry\perl\site\lib\Tk\Dirlist.pm
+C:\strawberry\perl\site\lib\Tk\DragDrop.pm
+C:\strawberry\perl\site\lib\Tk\DragDrop\Common.pm
+C:\strawberry\perl\site\lib\Tk\DragDrop\LocalDrop.pm
+C:\strawberry\perl\site\lib\Tk\DragDrop\Rect.pm
+C:\strawberry\perl\site\lib\Tk\DragDrop\SunConst.pm
+C:\strawberry\perl\site\lib\Tk\DragDrop\SunDrop.pm
+C:\strawberry\perl\site\lib\Tk\DragDrop\SunSite.pm
+C:\strawberry\perl\site\lib\Tk\DragDrop\Win32Drop.pm
+C:\strawberry\perl\site\lib\Tk\DragDrop\Win32Site.pm
+C:\strawberry\perl\site\lib\Tk\DragDrop\XDNDDrop.pm
+C:\strawberry\perl\site\lib\Tk\DragDrop\XDNDSite.pm
+C:\strawberry\perl\site\lib\Tk\DropSite.pm
+C:\strawberry\perl\site\lib\Tk\DropSite.pod
+C:\strawberry\perl\site\lib\Tk\DummyEncode.pm
+C:\strawberry\perl\site\lib\Tk\English.pm
+C:\strawberry\perl\site\lib\Tk\Entry.pm
+C:\strawberry\perl\site\lib\Tk\Entry.pod
+C:\strawberry\perl\site\lib\Tk\Error.pod
+C:\strawberry\perl\site\lib\Tk\ErrorDialog.pm
+C:\strawberry\perl\site\lib\Tk\Event.pm
+C:\strawberry\perl\site\lib\Tk\Event\IO.pm
+C:\strawberry\perl\site\lib\Tk\Eventloop.pod
+C:\strawberry\perl\site\lib\Tk\FBox.pm
+C:\strawberry\perl\site\lib\Tk\FBox.pod
+C:\strawberry\perl\site\lib\Tk\FileSelect.pm
+C:\strawberry\perl\site\lib\Tk\FileSelect.pod
+C:\strawberry\perl\site\lib\Tk\FloatEntry.pm
+C:\strawberry\perl\site\lib\Tk\Font.pm
+C:\strawberry\perl\site\lib\Tk\Font.pod
+C:\strawberry\perl\site\lib\Tk\Frame.pm
+C:\strawberry\perl\site\lib\Tk\Frame.pod
+C:\strawberry\perl\site\lib\Tk\HList.pm
+C:\strawberry\perl\site\lib\Tk\HList.pod
+C:\strawberry\perl\site\lib\Tk\IO.pm
+C:\strawberry\perl\site\lib\Tk\IO.pod
+C:\strawberry\perl\site\lib\Tk\IconList.pm
+C:\strawberry\perl\site\lib\Tk\IconList.pod
+C:\strawberry\perl\site\lib\Tk\Image.pm
+C:\strawberry\perl\site\lib\Tk\Image.pod
+C:\strawberry\perl\site\lib\Tk\InputO.pod
+C:\strawberry\perl\site\lib\Tk\Internals.pod
+C:\strawberry\perl\site\lib\Tk\ItemStyle.pm
+C:\strawberry\perl\site\lib\Tk\JPEG.pm
+C:\strawberry\perl\site\lib\Tk\LabEntry.pm
+C:\strawberry\perl\site\lib\Tk\LabFrame.pm
+C:\strawberry\perl\site\lib\Tk\LabFrame.pod
+C:\strawberry\perl\site\lib\Tk\LabRadio.pm
+C:\strawberry\perl\site\lib\Tk\Label.pm
+C:\strawberry\perl\site\lib\Tk\Label.pod
+C:\strawberry\perl\site\lib\Tk\Labelframe.pm
+C:\strawberry\perl\site\lib\Tk\Labelframe.pod
+C:\strawberry\perl\site\lib\Tk\Listbox.pm
+C:\strawberry\perl\site\lib\Tk\Listbox.pod
+C:\strawberry\perl\site\lib\Tk\MMtry.pm
+C:\strawberry\perl\site\lib\Tk\MMutil.pm
+C:\strawberry\perl\site\lib\Tk\MainWindow.pm
+C:\strawberry\perl\site\lib\Tk\MainWindow.pod
+C:\strawberry\perl\site\lib\Tk\MakeDepend.pm
+C:\strawberry\perl\site\lib\Tk\Menu.pm
+C:\strawberry\perl\site\lib\Tk\Menu.pod
+C:\strawberry\perl\site\lib\Tk\Menu\Item.pm
+C:\strawberry\perl\site\lib\Tk\Menu\Item.pod
+C:\strawberry\perl\site\lib\Tk\Menubar.pm
+C:\strawberry\perl\site\lib\Tk\Menubutton.pm
+C:\strawberry\perl\site\lib\Tk\Menubutton.pod
+C:\strawberry\perl\site\lib\Tk\Message.pm
+C:\strawberry\perl\site\lib\Tk\Message.pod
+C:\strawberry\perl\site\lib\Tk\MsgBox.pm
+C:\strawberry\perl\site\lib\Tk\MsgBox.pod
+C:\strawberry\perl\site\lib\Tk\Mwm.pod
+C:\strawberry\perl\site\lib\Tk\NBFrame.pm
+C:\strawberry\perl\site\lib\Tk\NoteBook.pm
+C:\strawberry\perl\site\lib\Tk\NoteBook.pod
+C:\strawberry\perl\site\lib\Tk\Optionmenu.pm
+C:\strawberry\perl\site\lib\Tk\Optionmenu.pod
+C:\strawberry\perl\site\lib\Tk\PNG.pm
+C:\strawberry\perl\site\lib\Tk\Pane.pm
+C:\strawberry\perl\site\lib\Tk\Panedwindow.pm
+C:\strawberry\perl\site\lib\Tk\Panedwindow.pod
+C:\strawberry\perl\site\lib\Tk\Photo.pm
+C:\strawberry\perl\site\lib\Tk\Photo.pod
+C:\strawberry\perl\site\lib\Tk\Pixmap.pm
+C:\strawberry\perl\site\lib\Tk\Pixmap.pod
+C:\strawberry\perl\site\lib\Tk\Popup.pod
+C:\strawberry\perl\site\lib\Tk\Pretty.pm
+C:\strawberry\perl\site\lib\Tk\ProgressBar.pm
+C:\strawberry\perl\site\lib\Tk\README.Adjust
+C:\strawberry\perl\site\lib\Tk\ROText.pm
+C:\strawberry\perl\site\lib\Tk\ROText.pod
+C:\strawberry\perl\site\lib\Tk\Radiobutton.pm
+C:\strawberry\perl\site\lib\Tk\Radiobutton.pod
+C:\strawberry\perl\site\lib\Tk\Region.pm
+C:\strawberry\perl\site\lib\Tk\Reindex.pm
+C:\strawberry\perl\site\lib\Tk\ReindexedROText.pm
+C:\strawberry\perl\site\lib\Tk\ReindexedText.pm
+C:\strawberry\perl\site\lib\Tk\Scale.pm
+C:\strawberry\perl\site\lib\Tk\Scale.pod
+C:\strawberry\perl\site\lib\Tk\Scrollbar.pm
+C:\strawberry\perl\site\lib\Tk\Scrollbar.pod
+C:\strawberry\perl\site\lib\Tk\Scrolled.pod
+C:\strawberry\perl\site\lib\Tk\Spinbox.pm
+C:\strawberry\perl\site\lib\Tk\Spinbox.pod
+C:\strawberry\perl\site\lib\Tk\Stats.pm
+C:\strawberry\perl\site\lib\Tk\Submethods.pm
+C:\strawberry\perl\site\lib\Tk\Submethods.pod
+C:\strawberry\perl\site\lib\Tk\SunConst.pod
+C:\strawberry\perl\site\lib\Tk\TList.pm
+C:\strawberry\perl\site\lib\Tk\TList.pod
+C:\strawberry\perl\site\lib\Tk\Table.pm
+C:\strawberry\perl\site\lib\Tk\Table.pod
+C:\strawberry\perl\site\lib\Tk\Tcl-perl.pod
+C:\strawberry\perl\site\lib\Tk\Text.pm
+C:\strawberry\perl\site\lib\Tk\Text.pod
+C:\strawberry\perl\site\lib\Tk\TextEdit.pm
+C:\strawberry\perl\site\lib\Tk\TextList.pm
+C:\strawberry\perl\site\lib\Tk\TextUndo.pm
+C:\strawberry\perl\site\lib\Tk\TextUndo.pod
+C:\strawberry\perl\site\lib\Tk\Text\Tag.pm
+C:\strawberry\perl\site\lib\Tk\Tiler.pm
+C:\strawberry\perl\site\lib\Tk\Tiler.pod
+C:\strawberry\perl\site\lib\Tk\TixGrid.pm
+C:\strawberry\perl\site\lib\Tk\TixGrid.pod
+C:\strawberry\perl\site\lib\Tk\Tk.xbm
+C:\strawberry\perl\site\lib\Tk\Tk.xpm
+C:\strawberry\perl\site\lib\Tk\TkXSUB.def
+C:\strawberry\perl\site\lib\Tk\Toplevel.pm
+C:\strawberry\perl\site\lib\Tk\Toplevel.pod
+C:\strawberry\perl\site\lib\Tk\Trace.pm
+C:\strawberry\perl\site\lib\Tk\Tree.pm
+C:\strawberry\perl\site\lib\Tk\Tree.pod
+C:\strawberry\perl\site\lib\Tk\UserGuide.pod
+C:\strawberry\perl\site\lib\Tk\Widget.pm
+C:\strawberry\perl\site\lib\Tk\Widget.pod
+C:\strawberry\perl\site\lib\Tk\WidgetDemo.pod
+C:\strawberry\perl\site\lib\Tk\Wm.pm
+C:\strawberry\perl\site\lib\Tk\Wm.pod
+C:\strawberry\perl\site\lib\Tk\X.pm
+C:\strawberry\perl\site\lib\Tk\X.pod
+C:\strawberry\perl\site\lib\Tk\X11Font.pm
+C:\strawberry\perl\site\lib\Tk\X11Font.pod
+C:\strawberry\perl\site\lib\Tk\X11\X.h
+C:\strawberry\perl\site\lib\Tk\X11\Xatom.h
+C:\strawberry\perl\site\lib\Tk\X11\Xfuncproto.h
+C:\strawberry\perl\site\lib\Tk\X11\Xlib.h
+C:\strawberry\perl\site\lib\Tk\X11\Xutil.h
+C:\strawberry\perl\site\lib\Tk\X11\cursorfont.h
+C:\strawberry\perl\site\lib\Tk\X11\keysym.h
+C:\strawberry\perl\site\lib\Tk\X11\keysymdef.h
+C:\strawberry\perl\site\lib\Tk\X11\license.terms
+C:\strawberry\perl\site\lib\Tk\Xcamel.gif
+C:\strawberry\perl\site\lib\Tk\Xlib.pm
+C:\strawberry\perl\site\lib\Tk\Xrm.pm
+C:\strawberry\perl\site\lib\Tk\Xrm.pod
+C:\strawberry\perl\site\lib\Tk\act_folder.xbm
+C:\strawberry\perl\site\lib\Tk\act_folder.xpm
+C:\strawberry\perl\site\lib\Tk\after.pod
+C:\strawberry\perl\site\lib\Tk\anim.gif
+C:\strawberry\perl\site\lib\Tk\arrowdownwin.xbm
+C:\strawberry\perl\site\lib\Tk\balArrow.xbm
+C:\strawberry\perl\site\lib\Tk\bind.pod
+C:\strawberry\perl\site\lib\Tk\bindtags.pod
+C:\strawberry\perl\site\lib\Tk\callbacks.pod
+C:\strawberry\perl\site\lib\Tk\cbxarrow.xbm
+C:\strawberry\perl\site\lib\Tk\chooseColor.pod
+C:\strawberry\perl\site\lib\Tk\chooseDirectory.pod
+C:\strawberry\perl\site\lib\Tk\composite.pod
+C:\strawberry\perl\site\lib\Tk\demos\LabEnLabRad.pm
+C:\strawberry\perl\site\lib\Tk\demos\images\QuitPB.xpm
+C:\strawberry\perl\site\lib\Tk\demos\images\QuitPBa.xpm
+C:\strawberry\perl\site\lib\Tk\demos\images\c.icon
+C:\strawberry\perl\site\lib\Tk\demos\images\cursor.cur
+C:\strawberry\perl\site\lib\Tk\demos\images\cursor.mask
+C:\strawberry\perl\site\lib\Tk\demos\images\cursor.xbm
+C:\strawberry\perl\site\lib\Tk\demos\images\dir.icon
+C:\strawberry\perl\site\lib\Tk\demos\images\dir.mask
+C:\strawberry\perl\site\lib\Tk\demos\images\earth.gif
+C:\strawberry\perl\site\lib\Tk\demos\images\earthris.gif
+C:\strawberry\perl\site\lib\Tk\demos\images\face
+C:\strawberry\perl\site\lib\Tk\demos\images\flagdown
+C:\strawberry\perl\site\lib\Tk\demos\images\flagup
+C:\strawberry\perl\site\lib\Tk\demos\images\grey.25
+C:\strawberry\perl\site\lib\Tk\demos\images\grey.5
+C:\strawberry\perl\site\lib\Tk\demos\images\letters
+C:\strawberry\perl\site\lib\Tk\demos\images\mickey.gif
+C:\strawberry\perl\site\lib\Tk\demos\images\ned.xpm
+C:\strawberry\perl\site\lib\Tk\demos\images\noletters
+C:\strawberry\perl\site\lib\Tk\demos\images\page.icon
+C:\strawberry\perl\site\lib\Tk\demos\images\page.mask
+C:\strawberry\perl\site\lib\Tk\demos\images\pattern
+C:\strawberry\perl\site\lib\Tk\demos\images\teapot.ppm
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\Ball.pm
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\HList.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\HList2.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\Plot.pm
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\WidgetDemo.pm
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\arrows.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\balloon.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\bind.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\bitmaps.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\bounce.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\browseentry.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\browseentry2.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\button.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\check.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\choosedir.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\clrpick.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\colors.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\cscroll.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\ctext.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\dialog1.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\dialog2.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\dirtree.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\entry1.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\entry2.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\entry3.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\filebox.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\floor.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\form.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\form_mgr.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\hello.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\hscale.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\icon.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\image1.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\image2.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\items.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\keysyms.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\labelframe.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\labels.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\labframe.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\mega.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\menbut.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\menus.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\menus2.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\msgBox.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\notebook.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\paned1.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\paned2.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\photo1.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\photo2.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\plot.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\progress.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\puzzle.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\radio.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\ruler.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\sayings.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\search.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\showVars.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\slide.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\spin.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\states.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\style.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\texts.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\trace1.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\trace2.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\transtile.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\twind.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\unicodeout.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\virtevents1.pl
+C:\strawberry\perl\site\lib\Tk\demos\widget_lib\vscale.pl
+C:\strawberry\perl\site\lib\Tk\demos\widtrib\Gedi.pl
+C:\strawberry\perl\site\lib\Tk\demos\widtrib\TEMPLATE.pl
+C:\strawberry\perl\site\lib\Tk\demos\widtrib\Tiler.pl
+C:\strawberry\perl\site\lib\Tk\demos\widtrib\all.pl
+C:\strawberry\perl\site\lib\Tk\demos\widtrib\cursor.pl
+C:\strawberry\perl\site\lib\Tk\demos\widtrib\lib\npuz\Xcamel.npuz
+C:\strawberry\perl\site\lib\Tk\demos\widtrib\npuz.pl
+C:\strawberry\perl\site\lib\Tk\demos\widtrib\plop.pl
+C:\strawberry\perl\site\lib\Tk\event.pod
+C:\strawberry\perl\site\lib\Tk\exit.pod
+C:\strawberry\perl\site\lib\Tk\file.xbm
+C:\strawberry\perl\site\lib\Tk\file.xpm
+C:\strawberry\perl\site\lib\Tk\fileevent.pod
+C:\strawberry\perl\site\lib\Tk\focus.pod
+C:\strawberry\perl\site\lib\Tk\folder.xbm
+C:\strawberry\perl\site\lib\Tk\folder.xpm
+C:\strawberry\perl\site\lib\Tk\form.pod
+C:\strawberry\perl\site\lib\Tk\getOpenFile.pod
+C:\strawberry\perl\site\lib\Tk\grab.pod
+C:\strawberry\perl\site\lib\Tk\grid.pod
+C:\strawberry\perl\site\lib\Tk\icon.gif
+C:\strawberry\perl\site\lib\Tk\install.pm
+C:\strawberry\perl\site\lib\Tk\license.terms
+C:\strawberry\perl\site\lib\Tk\mega.pod
+C:\strawberry\perl\site\lib\Tk\messageBox.pod
+C:\strawberry\perl\site\lib\Tk\openfile.xbm
+C:\strawberry\perl\site\lib\Tk\openfolder.xbm
+C:\strawberry\perl\site\lib\Tk\openfolder.xpm
+C:\strawberry\perl\site\lib\Tk\option.pod
+C:\strawberry\perl\site\lib\Tk\options.pod
+C:\strawberry\perl\site\lib\Tk\overview.pod
+C:\strawberry\perl\site\lib\Tk\pTk.pod
+C:\strawberry\perl\site\lib\Tk\pTk\Lang.h
+C:\strawberry\perl\site\lib\Tk\pTk\Lang.m
+C:\strawberry\perl\site\lib\Tk\pTk\Lang.t
+C:\strawberry\perl\site\lib\Tk\pTk\Lang_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\Tcl-pTk
+C:\strawberry\perl\site\lib\Tk\pTk\Xlib.h
+C:\strawberry\perl\site\lib\Tk\pTk\Xlib.m
+C:\strawberry\perl\site\lib\Tk\pTk\Xlib.t
+C:\strawberry\perl\site\lib\Tk\pTk\Xlib_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\compat\limits.h
+C:\strawberry\perl\site\lib\Tk\pTk\compat\stdlib.h
+C:\strawberry\perl\site\lib\Tk\pTk\compat\unistd.h
+C:\strawberry\perl\site\lib\Tk\pTk\default.h
+C:\strawberry\perl\site\lib\Tk\pTk\img.h
+C:\strawberry\perl\site\lib\Tk\pTk\imgInt.h
+C:\strawberry\perl\site\lib\Tk\pTk\imgInt.m
+C:\strawberry\perl\site\lib\Tk\pTk\imgInt.t
+C:\strawberry\perl\site\lib\Tk\pTk\imgInt_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\ks_names.h
+C:\strawberry\perl\site\lib\Tk\pTk\mkVFunc
+C:\strawberry\perl\site\lib\Tk\pTk\moredefs.h
+C:\strawberry\perl\site\lib\Tk\pTk\port.h
+C:\strawberry\perl\site\lib\Tk\pTk\tcl.h
+C:\strawberry\perl\site\lib\Tk\pTk\tclDecls.h
+C:\strawberry\perl\site\lib\Tk\pTk\tclDecls.m
+C:\strawberry\perl\site\lib\Tk\pTk\tclDecls.t
+C:\strawberry\perl\site\lib\Tk\pTk\tclDecls_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tclIntDecls.h
+C:\strawberry\perl\site\lib\Tk\pTk\tclIntPlatDecls.h
+C:\strawberry\perl\site\lib\Tk\pTk\tclMath.h
+C:\strawberry\perl\site\lib\Tk\pTk\tclPlatDecls.h
+C:\strawberry\perl\site\lib\Tk\pTk\tclWinInt.h
+C:\strawberry\perl\site\lib\Tk\pTk\tix.h
+C:\strawberry\perl\site\lib\Tk\pTk\tix.m
+C:\strawberry\perl\site\lib\Tk\pTk\tix.t
+C:\strawberry\perl\site\lib\Tk\pTk\tixBitmaps.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixDef.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixForm.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixGrData.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixGrid.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixHList.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixImgXpm.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixImgXpm.m
+C:\strawberry\perl\site\lib\Tk\pTk\tixImgXpm.t
+C:\strawberry\perl\site\lib\Tk\pTk\tixImgXpm_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixInt.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixInt.m
+C:\strawberry\perl\site\lib\Tk\pTk\tixInt.t
+C:\strawberry\perl\site\lib\Tk\pTk\tixInt_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixPort.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixTList.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixWinInt.h
+C:\strawberry\perl\site\lib\Tk\pTk\tixWinPort.h
+C:\strawberry\perl\site\lib\Tk\pTk\tix_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tk.h
+C:\strawberry\perl\site\lib\Tk\pTk\tk.m
+C:\strawberry\perl\site\lib\Tk\pTk\tk.t
+C:\strawberry\perl\site\lib\Tk\pTk\tk3d.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkButton.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkCanvas.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkCanvases.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkColor.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkConfig.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkDecls.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkDecls.m
+C:\strawberry\perl\site\lib\Tk\pTk\tkDecls.t
+C:\strawberry\perl\site\lib\Tk\pTk\tkDecls_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkEvent.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkEvent.m
+C:\strawberry\perl\site\lib\Tk\pTk\tkEvent.t
+C:\strawberry\perl\site\lib\Tk\pTk\tkEvent_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkFileFilter.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkFont.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkImgPhoto.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkImgPhoto.m
+C:\strawberry\perl\site\lib\Tk\pTk\tkImgPhoto.t
+C:\strawberry\perl\site\lib\Tk\pTk\tkImgPhoto_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkInitScript.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkInt.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkInt.m
+C:\strawberry\perl\site\lib\Tk\pTk\tkInt.t
+C:\strawberry\perl\site\lib\Tk\pTk\tkIntDecls.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkIntDecls.m
+C:\strawberry\perl\site\lib\Tk\pTk\tkIntDecls.t
+C:\strawberry\perl\site\lib\Tk\pTk\tkIntDecls_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkIntPlatDecls.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkIntPlatDecls.m
+C:\strawberry\perl\site\lib\Tk\pTk\tkIntPlatDecls.t
+C:\strawberry\perl\site\lib\Tk\pTk\tkIntPlatDecls_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkIntXlibDecls.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkIntXlibDecls.m
+C:\strawberry\perl\site\lib\Tk\pTk\tkIntXlibDecls.t
+C:\strawberry\perl\site\lib\Tk\pTk\tkIntXlibDecls_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkInt_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkMenu.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkMenubutton.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkOption.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkOption.m
+C:\strawberry\perl\site\lib\Tk\pTk\tkOption.t
+C:\strawberry\perl\site\lib\Tk\pTk\tkOption_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkPlatDecls.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkPlatDecls.m
+C:\strawberry\perl\site\lib\Tk\pTk\tkPlatDecls.t
+C:\strawberry\perl\site\lib\Tk\pTk\tkPlatDecls_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkPort.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkScale.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkScrollbar.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkSelect.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkText.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkUndo.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkVMacro.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkWin.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkWinDefault.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkWinInt.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkWinPort.h
+C:\strawberry\perl\site\lib\Tk\pTk\tkXrm.h
+C:\strawberry\perl\site\lib\Tk\pTk\tk_f.h
+C:\strawberry\perl\site\lib\Tk\pTk\xbytes.h
+C:\strawberry\perl\site\lib\Tk\pack.pod
+C:\strawberry\perl\site\lib\Tk\palette.pod
+C:\strawberry\perl\site\lib\Tk\place.pod
+C:\strawberry\perl\site\lib\Tk\prolog.ps
+C:\strawberry\perl\site\lib\Tk\reindex.pl
+C:\strawberry\perl\site\lib\Tk\selection.pod
+C:\strawberry\perl\site\lib\Tk\send.pod
+C:\strawberry\perl\site\lib\Tk\srcfile.xpm
+C:\strawberry\perl\site\lib\Tk\textfile.xpm
+C:\strawberry\perl\site\lib\Tk\tixWm.pod
+C:\strawberry\perl\site\lib\Tk\tkGlue.def
+C:\strawberry\perl\site\lib\Tk\tkGlue.h
+C:\strawberry\perl\site\lib\Tk\tkGlue.m
+C:\strawberry\perl\site\lib\Tk\tkGlue.t
+C:\strawberry\perl\site\lib\Tk\tkGlue_f.h
+C:\strawberry\perl\site\lib\Tk\tkvars.pod
+C:\strawberry\perl\site\lib\Tk\tranicon.gif
+C:\strawberry\perl\site\lib\Tk\typemap
+C:\strawberry\perl\site\lib\Tk\vtab.def
+C:\strawberry\perl\site\lib\Tk\widgets.pm
+C:\strawberry\perl\site\lib\Tk\widgets.pod
+C:\strawberry\perl\site\lib\Tk\win.xbm
+C:\strawberry\perl\site\lib\Tk\winfolder.xpm
+C:\strawberry\perl\site\lib\Tk\wintext.xpm
+C:\strawberry\perl\site\lib\auto\Tk\CancelRepeat.al
+C:\strawberry\perl\site\lib\auto\Tk\Canvas\Canvas.bs
+C:\strawberry\perl\site\lib\auto\Tk\Canvas\Canvas.dll
+C:\strawberry\perl\site\lib\auto\Tk\Clipboard\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\Clipboard\getSelected.al
+C:\strawberry\perl\site\lib\auto\Tk\Compound\Compound.bs
+C:\strawberry\perl\site\lib\auto\Tk\Compound\Compound.dll
+C:\strawberry\perl\site\lib\auto\Tk\DragDrop\Win32Site\Win32Site.bs
+C:\strawberry\perl\site\lib\auto\Tk\DragDrop\Win32Site\Win32Site.dll
+C:\strawberry\perl\site\lib\auto\Tk\EnterFocus.al
+C:\strawberry\perl\site\lib\auto\Tk\Entry\Entry.bs
+C:\strawberry\perl\site\lib\auto\Tk\Entry\Entry.dll
+C:\strawberry\perl\site\lib\auto\Tk\Error.al
+C:\strawberry\perl\site\lib\auto\Tk\Event\Event.bs
+C:\strawberry\perl\site\lib\auto\Tk\Event\Event.dll
+C:\strawberry\perl\site\lib\auto\Tk\FirstMenu.al
+C:\strawberry\perl\site\lib\auto\Tk\FocusChildren.al
+C:\strawberry\perl\site\lib\auto\Tk\FocusOK.al
+C:\strawberry\perl\site\lib\auto\Tk\Frame\AddScrollbars.al
+C:\strawberry\perl\site\lib\auto\Tk\Frame\FindMenu.al
+C:\strawberry\perl\site\lib\auto\Tk\Frame\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\Frame\freeze_on_map.al
+C:\strawberry\perl\site\lib\auto\Tk\Frame\label.al
+C:\strawberry\perl\site\lib\auto\Tk\Frame\labelPack.al
+C:\strawberry\perl\site\lib\auto\Tk\Frame\labelVariable.al
+C:\strawberry\perl\site\lib\auto\Tk\Frame\packscrollbars.al
+C:\strawberry\perl\site\lib\auto\Tk\Frame\queuePack.al
+C:\strawberry\perl\site\lib\auto\Tk\Frame\sbset.al
+C:\strawberry\perl\site\lib\auto\Tk\Frame\scrollbars.al
+C:\strawberry\perl\site\lib\auto\Tk\HList\HList.bs
+C:\strawberry\perl\site\lib\auto\Tk\HList\HList.dll
+C:\strawberry\perl\site\lib\auto\Tk\IO\IO.bs
+C:\strawberry\perl\site\lib\auto\Tk\IO\IO.dll
+C:\strawberry\perl\site\lib\auto\Tk\ImageNames.al
+C:\strawberry\perl\site\lib\auto\Tk\ImageTypes.al
+C:\strawberry\perl\site\lib\auto\Tk\JPEG\JPEG.bs
+C:\strawberry\perl\site\lib\auto\Tk\JPEG\JPEG.dll
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\AutoScan.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\BeginExtend.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\BeginSelect.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\BeginToggle.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\ButtonRelease_1.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\CLEAR.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\Cancel.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\Cntrl_End.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\Cntrl_Home.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\Cntrl_backslash.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\DELETE.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\DataExtend.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\EXISTS.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\EXTEND.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\ExtendUpDown.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\FETCH.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\FETCHSIZE.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\Listbox.bs
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\Listbox.dll
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\Motion.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\POP.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\PUSH.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\SHIFT.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\SPLICE.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\STORE.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\SelectAll.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\SetList.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\TIEARRAY.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\TIESCALAR.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\UNSHIFT.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\UpDown.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\clipboardPaste.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\deleteSelected.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\getSelected.al
+C:\strawberry\perl\site\lib\auto\Tk\Listbox\xyIndex.al
+C:\strawberry\perl\site\lib\auto\Tk\Menubutton\Menubutton.bs
+C:\strawberry\perl\site\lib\auto\Tk\Menubutton\Menubutton.dll
+C:\strawberry\perl\site\lib\auto\Tk\NBFrame\NBFrame.bs
+C:\strawberry\perl\site\lib\auto\Tk\NBFrame\NBFrame.dll
+C:\strawberry\perl\site\lib\auto\Tk\PNG\PNG.bs
+C:\strawberry\perl\site\lib\auto\Tk\PNG\PNG.dll
+C:\strawberry\perl\site\lib\auto\Tk\Pixmap\Pixmap.bs
+C:\strawberry\perl\site\lib\auto\Tk\Pixmap\Pixmap.dll
+C:\strawberry\perl\site\lib\auto\Tk\Receive.al
+C:\strawberry\perl\site\lib\auto\Tk\RepeatId.al
+C:\strawberry\perl\site\lib\auto\Tk\Scale\Activate.al
+C:\strawberry\perl\site\lib\auto\Tk\Scale\ButtonDown.al
+C:\strawberry\perl\site\lib\auto\Tk\Scale\ButtonUp.al
+C:\strawberry\perl\site\lib\auto\Tk\Scale\ControlPress.al
+C:\strawberry\perl\site\lib\auto\Tk\Scale\Drag.al
+C:\strawberry\perl\site\lib\auto\Tk\Scale\EndDrag.al
+C:\strawberry\perl\site\lib\auto\Tk\Scale\Enter.al
+C:\strawberry\perl\site\lib\auto\Tk\Scale\Increment.al
+C:\strawberry\perl\site\lib\auto\Tk\Scale\Leave.al
+C:\strawberry\perl\site\lib\auto\Tk\Scale\Scale.bs
+C:\strawberry\perl\site\lib\auto\Tk\Scale\Scale.dll
+C:\strawberry\perl\site\lib\auto\Tk\Scale\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\ButtonDown.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\ButtonUp.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\Drag.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\EndDrag.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\Enter.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\Leave.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\Motion.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\ScrlByPages.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\ScrlByUnits.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\ScrlToPos.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\ScrlTopBottom.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\Scrollbar.bs
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\Scrollbar.dll
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\Select.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\StartDrag.al
+C:\strawberry\perl\site\lib\auto\Tk\Scrollbar\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\Selection.al
+C:\strawberry\perl\site\lib\auto\Tk\TList\TList.bs
+C:\strawberry\perl\site\lib\auto\Tk\TList\TList.dll
+C:\strawberry\perl\site\lib\auto\Tk\Table\Create.al
+C:\strawberry\perl\site\lib\auto\Tk\Table\Posn.al
+C:\strawberry\perl\site\lib\auto\Tk\Table\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\Table\see.al
+C:\strawberry\perl\site\lib\auto\Tk\Table\totalColumns.al
+C:\strawberry\perl\site\lib\auto\Tk\Table\totalRows.al
+C:\strawberry\perl\site\lib\auto\Tk\TextEdit\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\TextUndo\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\Text\Text.bs
+C:\strawberry\perl\site\lib\auto\Tk\Text\Text.dll
+C:\strawberry\perl\site\lib\auto\Tk\Text\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\TixGrid\TixGrid.bs
+C:\strawberry\perl\site\lib\auto\Tk\TixGrid\TixGrid.dll
+C:\strawberry\perl\site\lib\auto\Tk\Tk.bs
+C:\strawberry\perl\site\lib\auto\Tk\Tk.dll
+C:\strawberry\perl\site\lib\auto\Tk\Toplevel\FG_BindIn.al
+C:\strawberry\perl\site\lib\auto\Tk\Toplevel\FG_BindOut.al
+C:\strawberry\perl\site\lib\auto\Tk\Toplevel\FG_Create.al
+C:\strawberry\perl\site\lib\auto\Tk\Toplevel\FG_Destroy.al
+C:\strawberry\perl\site\lib\auto\Tk\Toplevel\FG_In.al
+C:\strawberry\perl\site\lib\auto\Tk\Toplevel\FG_Out.al
+C:\strawberry\perl\site\lib\auto\Tk\Toplevel\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\TraverseToMenu.al
+C:\strawberry\perl\site\lib\auto\Tk\Widget\ASkludge.al
+C:\strawberry\perl\site\lib\auto\Tk\Widget\AltKeyInDialog.al
+C:\strawberry\perl\site\lib\auto\Tk\Widget\AmpWidget.al
+C:\strawberry\perl\site\lib\auto\Tk\Widget\FindAltKeyTarget.al
+C:\strawberry\perl\site\lib\auto\Tk\Widget\MasterMenu.al
+C:\strawberry\perl\site\lib\auto\Tk\Widget\RestoreFocusGrab.al
+C:\strawberry\perl\site\lib\auto\Tk\Widget\SetAmpText.al
+C:\strawberry\perl\site\lib\auto\Tk\Widget\SetFocusGrab.al
+C:\strawberry\perl\site\lib\auto\Tk\Widget\UnderlineAmpersand.al
+C:\strawberry\perl\site\lib\auto\Tk\Widget\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\Widget\bindDump.al
+C:\strawberry\perl\site\lib\auto\Tk\Widget\clipboardKeysyms.al
+C:\strawberry\perl\site\lib\auto\Tk\Widget\pathname.al
+C:\strawberry\perl\site\lib\auto\Tk\Wm\AnchorAdjust.al
+C:\strawberry\perl\site\lib\auto\Tk\Wm\FullScreen.al
+C:\strawberry\perl\site\lib\auto\Tk\Wm\Popup.al
+C:\strawberry\perl\site\lib\auto\Tk\Wm\Post.al
+C:\strawberry\perl\site\lib\auto\Tk\Wm\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\Wm\iconposition.al
+C:\strawberry\perl\site\lib\auto\Tk\X\X.bs
+C:\strawberry\perl\site\lib\auto\Tk\X\X.dll
+C:\strawberry\perl\site\lib\auto\Tk\X\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\Xlib\Xlib.bs
+C:\strawberry\perl\site\lib\auto\Tk\Xlib\Xlib.dll
+C:\strawberry\perl\site\lib\auto\Tk\autosplit.ix
+C:\strawberry\perl\site\lib\auto\Tk\break.al
+C:\strawberry\perl\site\lib\auto\Tk\focusFollowsMouse.al
+C:\strawberry\perl\site\lib\auto\Tk\focusNext.al
+C:\strawberry\perl\site\lib\auto\Tk\focusPrev.al
+C:\strawberry\perl\site\lib\auto\Tk\getEncoding.al
+C:\strawberry\perl\site\lib\auto\Tk\getNextFocus.al
+C:\strawberry\perl\site\lib\auto\Tk\getPrevFocus.al
+C:\strawberry\perl\site\lib\auto\Tk\interps.al
+C:\strawberry\perl\site\lib\auto\Tk\lsearch.al
+C:\strawberry\perl\site\lib\auto\Tk\pTk\extralibs.ld
+C:\strawberry\perl\site\lib\auto\Tk\tabFocus.al
+C:\strawberry\perl\site\lib\auto\Tk\updateWidgets.al
+C:\strawberry\perl\site\lib\fix_4_os2.pl
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/CancelRepeat.al b/Master/tlpkg/tlperl/lib/auto/Tk/CancelRepeat.al
new file mode 100755
index 00000000000..ca82516a200
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/CancelRepeat.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 508 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\CancelRepeat.al)"
+sub CancelRepeat
+{
+ my $w = shift->MainWindow;
+ my $id = delete $w->{_afterId_};
+ $w->after('cancel',$id) if (defined $id);
+}
+
+# end of Tk::CancelRepeat
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Canvas/Canvas.bs b/Master/tlpkg/tlperl/lib/auto/Tk/Canvas/Canvas.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Canvas/Canvas.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Canvas/Canvas.dll b/Master/tlpkg/tlperl/lib/auto/Tk/Canvas/Canvas.dll
new file mode 100755
index 00000000000..fbf6d021ad5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Canvas/Canvas.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Clipboard/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/Clipboard/autosplit.ix
new file mode 100755
index 00000000000..9831f74facb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Clipboard/autosplit.ix
@@ -0,0 +1,6 @@
+# Index created by AutoSplit for blib\lib\Tk\Clipboard.pm
+# (file acts as timestamp)
+package Tk::Clipboard;
+sub getSelected
+;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Clipboard/getSelected.al b/Master/tlpkg/tlperl/lib/auto/Tk/Clipboard/getSelected.al
new file mode 100755
index 00000000000..44ba7b74bf0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Clipboard/getSelected.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from blib\lib\Tk\Clipboard.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Clipboard;
+
+#line 115 "blib\lib\Tk\Clipboard.pm (autosplit into blib\lib\auto\Tk\Clipboard\getSelected.al)"
+sub getSelected
+{
+ my $w = shift;
+ my $val = Tk::catch { $w->get('sel.first','sel.last') };
+ return $val;
+}
+
+1;
+# end of Tk::Clipboard::getSelected
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Compound/Compound.bs b/Master/tlpkg/tlperl/lib/auto/Tk/Compound/Compound.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Compound/Compound.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Compound/Compound.dll b/Master/tlpkg/tlperl/lib/auto/Tk/Compound/Compound.dll
new file mode 100755
index 00000000000..66c510b1724
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Compound/Compound.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/DragDrop/Win32Site/Win32Site.bs b/Master/tlpkg/tlperl/lib/auto/Tk/DragDrop/Win32Site/Win32Site.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/DragDrop/Win32Site/Win32Site.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/DragDrop/Win32Site/Win32Site.dll b/Master/tlpkg/tlperl/lib/auto/Tk/DragDrop/Win32Site/Win32Site.dll
new file mode 100755
index 00000000000..86fca69122d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/DragDrop/Win32Site/Win32Site.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/EnterFocus.al b/Master/tlpkg/tlperl/lib/auto/Tk/EnterFocus.al
new file mode 100755
index 00000000000..e5a09f65466
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/EnterFocus.al
@@ -0,0 +1,27 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 692 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\EnterFocus.al)"
+# focusFollowsMouse
+#
+# If this procedure is invoked, Tk will enter "focus-follows-mouse"
+# mode, where the focus is always on whatever window contains the
+# mouse. If this procedure isn't invoked, then the user typically
+# has to click on a window to give it the focus.
+#
+# Arguments:
+# None.
+
+sub EnterFocus
+{
+ my $w = shift;
+ return unless $w;
+ my $Ev = $w->XEvent;
+ my $d = $Ev->d;
+ $w->Tk::focus() if ($d eq 'NotifyAncestor' || $d eq 'NotifyNonlinear' || $d eq 'NotifyInferior');
+}
+
+# end of Tk::EnterFocus
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Entry/Entry.bs b/Master/tlpkg/tlperl/lib/auto/Tk/Entry/Entry.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Entry/Entry.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Entry/Entry.dll b/Master/tlpkg/tlperl/lib/auto/Tk/Entry/Entry.dll
new file mode 100755
index 00000000000..aa9476cb0b8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Entry/Entry.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Error.al b/Master/tlpkg/tlperl/lib/auto/Tk/Error.al
new file mode 100755
index 00000000000..0c1d8218ced
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Error.al
@@ -0,0 +1,20 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 496 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\Error.al)"
+sub Error
+{my $w = shift;
+ my $error = shift;
+ if (Exists($w))
+ {
+ my $grab = $w->grab('current');
+ $grab->Unbusy if (defined $grab);
+ }
+ chomp($error);
+ warn "Tk::Error: $error\n " . join("\n ",@_)."\n";
+}
+
+# end of Tk::Error
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Event/Event.bs b/Master/tlpkg/tlperl/lib/auto/Tk/Event/Event.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Event/Event.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Event/Event.dll b/Master/tlpkg/tlperl/lib/auto/Tk/Event/Event.dll
new file mode 100755
index 00000000000..caaaca67c35
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Event/Event.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/FirstMenu.al b/Master/tlpkg/tlperl/lib/auto/Tk/FirstMenu.al
new file mode 100755
index 00000000000..c2cee5e9f4e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/FirstMenu.al
@@ -0,0 +1,21 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 740 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\FirstMenu.al)"
+# tkFirstMenu --
+# This procedure traverses to the first menubutton in the toplevel
+# for a given window, and posts that menubutton's menu.
+#
+# Arguments:
+# w - Name of a window. Selects which toplevel
+# to search for menubuttons.
+sub FirstMenu
+{
+ my $w = shift;
+ $w = $w->toplevel->FindMenu('');
+}
+
+# end of Tk::FirstMenu
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/FocusChildren.al b/Master/tlpkg/tlperl/lib/auto/Tk/FocusChildren.al
new file mode 100755
index 00000000000..1c3c6b83bbd
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/FocusChildren.al
@@ -0,0 +1,35 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 525 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\FocusChildren.al)"
+#----------------------------------------------------------------------------
+# focus.tcl --
+#
+# This file defines several procedures for managing the input
+# focus.
+#
+# @(#) focus.tcl 1.6 94/12/19 17:06:46
+#
+# Copyright (c) 1994 Sun Microsystems, Inc.
+#
+# See the file "license.terms" for information on usage and redistribution
+# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
+
+sub FocusChildren { shift->children }
+
+#
+# focusNext --
+# This procedure is invoked to move the input focus to the next window
+# after a given one. "Next" is defined in terms of the window
+# stacking order, with all the windows underneath a given top-level
+# (no matter how deeply nested in the hierarchy) considered except
+# for frames and toplevels.
+#
+# Arguments:
+# w - Name of a window: the procedure will set the focus
+# to the next window after this one in the traversal
+# order.
+# end of Tk::FocusChildren
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/FocusOK.al b/Master/tlpkg/tlperl/lib/auto/Tk/FocusOK.al
new file mode 100755
index 00000000000..32da7b795b3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/FocusOK.al
@@ -0,0 +1,36 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 663 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\FocusOK.al)"
+sub FocusOK
+{
+ my $w = shift;
+ my $value;
+ catch { $value = $w->cget('-takefocus') };
+ if (!$@ && defined($value))
+ {
+ return 0 if ($value eq '0');
+ return $w->viewable if ($value eq '1');
+ if ($value)
+ {
+ $value = $w->$value();
+ return $value if (defined $value);
+ }
+ }
+ if (!$w->viewable)
+ {
+ return 0;
+ }
+ catch { $value = $w->cget('-state') } ;
+ if (!$@ && defined($value) && $value eq 'disabled')
+ {
+ return 0;
+ }
+ $value = grep(/Key|Focus/,$w->Tk::bind(),$w->Tk::bind(ref($w)));
+ return $value;
+}
+
+# end of Tk::FocusOK
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Frame/AddScrollbars.al b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/AddScrollbars.al
new file mode 100755
index 00000000000..aa12259f675
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/AddScrollbars.al
@@ -0,0 +1,52 @@
+# NOTE: Derived from blib\lib\Tk\Frame.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Frame;
+
+#line 225 "blib\lib\Tk\Frame.pm (autosplit into blib\lib\auto\Tk\Frame\AddScrollbars.al)"
+sub AddScrollbars
+{
+ require Tk::Scrollbar;
+ my ($cw,$w) = @_;
+ my $def = '';
+ my ($x,$y) = ('','');
+ my $s = 0;
+ my $c;
+ $cw->freeze_on_map;
+ foreach $c ($w->configure)
+ {
+ my $opt = $c->[0];
+ if ($opt eq '-yscrollcommand')
+ {
+ my $slice = Tk::Frame->new($cw,Name => 'ysbslice');
+ my $ysb = Tk::Scrollbar->new($slice,-orient => 'vertical', -command => [ 'yview', $w ]);
+ my $size = $ysb->cget('-width');
+ my $corner = Tk::Frame->new($slice,Name=>'corner','-relief' => 'raised',
+ '-width' => $size, '-height' => $size);
+ $ysb->pack(-side => 'left', -fill => 'y');
+ $cw->Advertise('yscrollbar' => $ysb);
+ $cw->Advertise('corner' => $corner);
+ $cw->Advertise('ysbslice' => $slice);
+ $corner->{'before'} = $ysb->PathName;
+ $slice->{'before'} = $w->PathName;
+ $y = 'w';
+ $s = 1;
+ }
+ elsif ($opt eq '-xscrollcommand')
+ {
+ my $xsb = Tk::Scrollbar->new($cw,-orient => 'horizontal', -command => [ 'xview', $w ]);
+ $cw->Advertise('xscrollbar' => $xsb);
+ $xsb->{'before'} = $w->PathName;
+ $x = 's';
+ $s = 1;
+ }
+ }
+ if ($s)
+ {
+ $cw->Advertise('scrolled' => $w);
+ $cw->ConfigSpecs('-scrollbars' => ['METHOD','scrollbars','Scrollbars',$x.$y]);
+ }
+}
+
+# end of Tk::Frame::AddScrollbars
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Frame/FindMenu.al b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/FindMenu.al
new file mode 100755
index 00000000000..66e71c29b21
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/FindMenu.al
@@ -0,0 +1,22 @@
+# NOTE: Derived from blib\lib\Tk\Frame.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Frame;
+
+#line 363 "blib\lib\Tk\Frame.pm (autosplit into blib\lib\auto\Tk\Frame\FindMenu.al)"
+sub FindMenu
+{
+ my ($w,$char) = @_;
+ my $child;
+ my $match;
+ foreach $child ($w->children)
+ {
+ next unless (ref $child);
+ $match = $child->FindMenu($char);
+ return $match if (defined $match);
+ }
+ return undef;
+}
+
+1;
+# end of Tk::Frame::FindMenu
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Frame/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/autosplit.ix
new file mode 100755
index 00000000000..6e5b939fce1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/autosplit.ix
@@ -0,0 +1,24 @@
+# Index created by AutoSplit for blib\lib\Tk\Frame.pm
+# (file acts as timestamp)
+package Tk::Frame;
+sub labelPack
+;
+sub labelVariable
+;
+sub label
+;
+sub queuePack
+;
+sub sbset
+;
+sub freeze_on_map
+;
+sub AddScrollbars
+;
+sub packscrollbars
+;
+sub scrollbars
+;
+sub FindMenu
+;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Frame/freeze_on_map.al b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/freeze_on_map.al
new file mode 100755
index 00000000000..6a8b8a4f96e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/freeze_on_map.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Tk\Frame.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Frame;
+
+#line 215 "blib\lib\Tk\Frame.pm (autosplit into blib\lib\auto\Tk\Frame\freeze_on_map.al)"
+sub freeze_on_map
+{
+ my ($w) = @_;
+ unless ($w->Tk::bind('Freeze','<Map>'))
+ {
+ $w->Tk::bind('Freeze','<Map>',['packPropagate' => 0])
+ }
+ $w->AddBindTag('Freeze');
+}
+
+# end of Tk::Frame::freeze_on_map
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Frame/label.al b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/label.al
new file mode 100755
index 00000000000..83ec70ed803
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/label.al
@@ -0,0 +1,24 @@
+# NOTE: Derived from blib\lib\Tk\Frame.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Frame;
+
+#line 182 "blib\lib\Tk\Frame.pm (autosplit into blib\lib\auto\Tk\Frame\label.al)"
+sub label
+{
+ my ($cw,$val) = @_;
+ my $var = $cw->cget('-labelVariable');
+ if (@_ > 1 && defined $val)
+ {
+ if (!defined $var)
+ {
+ $var = \$cw->{Configure}{'-label'};
+ $cw->labelVariable($var);
+ }
+ $$var = $val;
+ }
+ return (defined $var) ? $$var : undef;;
+}
+
+# end of Tk::Frame::label
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Frame/labelPack.al b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/labelPack.al
new file mode 100755
index 00000000000..0cfa8631c24
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/labelPack.al
@@ -0,0 +1,50 @@
+# NOTE: Derived from blib\lib\Tk\Frame.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Frame;
+
+#line 121 "blib\lib\Tk\Frame.pm (autosplit into blib\lib\auto\Tk\Frame\labelPack.al)"
+sub labelPack
+{
+ my ($cw,$val) = @_;
+ my $w = $cw->Subwidget('label');
+ my @result = ();
+ if (@_ > 1)
+ {
+ if (defined($w) && !defined($val))
+ {
+ $w->packForget;
+ }
+ elsif (defined($val) && !defined ($w))
+ {
+ require Tk::Label;
+ $w = Tk::Label->new($cw,-textvariable => $cw->labelVariable);
+ $cw->Advertise('label' => $w);
+ $cw->ConfigDelegate('label',qw(-text -textvariable));
+ }
+ if (defined($val) && defined($w))
+ {
+ my %pack = @$val;
+ unless (exists $pack{-side})
+ {
+ $pack{-side} = 'top' unless (exists $pack{-side});
+ }
+ unless (exists $pack{-fill})
+ {
+ $pack{-fill} = 'x' if ($pack{-side} =~ /(top|bottom)/);
+ $pack{-fill} = 'y' if ($pack{-side} =~ /(left|right)/);
+ }
+ unless (exists($pack{'-before'}) || exists($pack{'-after'}))
+ {
+ my $before = ($cw->packSlaves)[0];
+ $pack{'-before'} = $before if (defined $before);
+ }
+ $w->pack(%pack);
+ }
+ }
+ @result = $w->packInfo if (defined $w);
+ return (wantarray) ? @result : \@result;
+}
+
+# end of Tk::Frame::labelPack
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Frame/labelVariable.al b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/labelVariable.al
new file mode 100755
index 00000000000..ca60cff1288
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/labelVariable.al
@@ -0,0 +1,27 @@
+# NOTE: Derived from blib\lib\Tk\Frame.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Frame;
+
+#line 163 "blib\lib\Tk\Frame.pm (autosplit into blib\lib\auto\Tk\Frame\labelVariable.al)"
+sub labelVariable
+{
+ my ($cw,$val) = @_;
+ my $var = \$cw->{Configure}{'-labelVariable'};
+ if (@_ > 1 && defined $val)
+ {
+ $$var = $val;
+ $$val = '' unless (defined $$val);
+ my $w = $cw->Subwidget('label');
+ unless (defined $w)
+ {
+ $cw->labelPack([]);
+ $w = $cw->Subwidget('label');
+ }
+ $w->configure(-textvariable => $val);
+ }
+ return $$var;
+}
+
+# end of Tk::Frame::labelVariable
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Frame/packscrollbars.al b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/packscrollbars.al
new file mode 100755
index 00000000000..9990eb67b13
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/packscrollbars.al
@@ -0,0 +1,86 @@
+# NOTE: Derived from blib\lib\Tk\Frame.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Frame;
+
+#line 269 "blib\lib\Tk\Frame.pm (autosplit into blib\lib\auto\Tk\Frame\packscrollbars.al)"
+sub packscrollbars
+{
+ my ($cw) = @_;
+ my $opt = $cw->cget('-scrollbars');
+ my $slice = $cw->Subwidget('ysbslice');
+ my $xsb = $cw->Subwidget('xscrollbar');
+ my $corner = $cw->Subwidget('corner');
+ my $w = $cw->Subwidget('scrolled');
+ my $xside = (($opt =~ /n/) ? 'top' : 'bottom');
+ my $havex = 0;
+ my $havey = 0;
+ $opt =~ s/r//;
+ $cw->{'pack_pending'} = 0;
+ if (defined $slice)
+ {
+ my $reqy;
+ my $ysb = $cw->Subwidget('yscrollbar');
+ if ($opt =~ /(o)?[we]/ && (($reqy = !defined($1)) || $ysb->Needed))
+ {
+ my $yside = (($opt =~ /w/) ? 'left' : 'right');
+ $slice->pack(-side => $yside, -fill => 'y',-before => $slice->{'before'});
+ $havey = 1;
+ if ($reqy)
+ {
+ $w->configure(-yscrollcommand => ['set', $ysb]);
+ }
+ else
+ {
+ $w->configure(-yscrollcommand => ['sbset', $cw, $ysb, \$cw->{'packysb'}]);
+ }
+ }
+ else
+ {
+ $w->configure(-yscrollcommand => undef) unless $opt =~ s/[we]//;
+ $slice->packForget;
+ }
+ $cw->{'packysb'} = $havey;
+ }
+ if (defined $xsb)
+ {
+ my $reqx;
+ if ($opt =~ /(o)?[ns]/ && (($reqx = !defined($1)) || $xsb->Needed))
+ {
+ $xsb->pack(-side => $xside, -fill => 'x',-before => $xsb->{'before'});
+ $havex = 1;
+ if ($reqx)
+ {
+ $w->configure(-xscrollcommand => ['set', $xsb]);
+ }
+ else
+ {
+ $w->configure(-xscrollcommand => ['sbset', $cw, $xsb, \$cw->{'packxsb'}]);
+ }
+ }
+ else
+ {
+ $w->configure(-xscrollcommand => undef) unless $opt =~ s/[ns]//;
+ $xsb->packForget;
+ }
+ $cw->{'packxsb'} = $havex;
+ }
+ if (defined $corner)
+ {
+ if ($havex && $havey && defined $corner->{'before'})
+ {
+ my $anchor = $opt;
+ $anchor =~ s/o//g;
+ $corner->configure(-height => $xsb->ReqHeight);
+ $corner->pack(-before => $corner->{'before'}, -side => $xside,
+ -anchor => $anchor, -fill => 'x');
+ }
+ else
+ {
+ $corner->packForget;
+ }
+ }
+}
+
+# end of Tk::Frame::packscrollbars
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Frame/queuePack.al b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/queuePack.al
new file mode 100755
index 00000000000..59fe3ee4de0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/queuePack.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Tk\Frame.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Frame;
+
+#line 198 "blib\lib\Tk\Frame.pm (autosplit into blib\lib\auto\Tk\Frame\queuePack.al)"
+sub queuePack
+{
+ my ($cw) = @_;
+ unless ($cw->{'pack_pending'})
+ {
+ $cw->{'pack_pending'} = 1;
+ $cw->afterIdle([$cw,'packscrollbars']);
+ }
+}
+
+# end of Tk::Frame::queuePack
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Frame/sbset.al b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/sbset.al
new file mode 100755
index 00000000000..cca4f0d642a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/sbset.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from blib\lib\Tk\Frame.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Frame;
+
+#line 208 "blib\lib\Tk\Frame.pm (autosplit into blib\lib\auto\Tk\Frame\sbset.al)"
+sub sbset
+{
+ my ($cw,$sb,$ref,@args) = @_;
+ $sb->set(@args);
+ $cw->queuePack if (@args == 2 && $sb->Needed != $$ref);
+}
+
+# end of Tk::Frame::sbset
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Frame/scrollbars.al b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/scrollbars.al
new file mode 100755
index 00000000000..21eeb53d2b9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Frame/scrollbars.al
@@ -0,0 +1,24 @@
+# NOTE: Derived from blib\lib\Tk\Frame.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Frame;
+
+#line 347 "blib\lib\Tk\Frame.pm (autosplit into blib\lib\auto\Tk\Frame\scrollbars.al)"
+sub scrollbars
+{
+ my ($cw,$opt) = @_;
+ my $var = \$cw->{'-scrollbars'};
+ if (@_ > 1)
+ {
+ my $old = $$var;
+ if (!defined $old || $old ne $opt)
+ {
+ $$var = $opt;
+ $cw->queuePack;
+ }
+ }
+ return $$var;
+}
+
+# end of Tk::Frame::scrollbars
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/HList/HList.bs b/Master/tlpkg/tlperl/lib/auto/Tk/HList/HList.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/HList/HList.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/HList/HList.dll b/Master/tlpkg/tlperl/lib/auto/Tk/HList/HList.dll
new file mode 100755
index 00000000000..5dde82a5ac0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/HList/HList.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/IO/IO.bs b/Master/tlpkg/tlperl/lib/auto/Tk/IO/IO.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/IO/IO.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/IO/IO.dll b/Master/tlpkg/tlperl/lib/auto/Tk/IO/IO.dll
new file mode 100755
index 00000000000..adb1c93f257
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/IO/IO.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/ImageNames.al b/Master/tlpkg/tlperl/lib/auto/Tk/ImageNames.al
new file mode 100755
index 00000000000..9e9a7a00d29
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/ImageNames.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 792 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\ImageNames.al)"
+sub ImageNames
+{
+ image('names');
+}
+
+# end of Tk::ImageNames
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/ImageTypes.al b/Master/tlpkg/tlperl/lib/auto/Tk/ImageTypes.al
new file mode 100755
index 00000000000..2ab5a66b0de
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/ImageTypes.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 797 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\ImageTypes.al)"
+sub ImageTypes
+{
+ image('types');
+}
+
+# end of Tk::ImageTypes
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/JPEG/JPEG.bs b/Master/tlpkg/tlperl/lib/auto/Tk/JPEG/JPEG.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/JPEG/JPEG.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/JPEG/JPEG.dll b/Master/tlpkg/tlperl/lib/auto/Tk/JPEG/JPEG.dll
new file mode 100755
index 00000000000..ea8966b3b17
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/JPEG/JPEG.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/AutoScan.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/AutoScan.al
new file mode 100755
index 00000000000..89bda0179c6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/AutoScan.al
@@ -0,0 +1,49 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 676 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\AutoScan.al)"
+# AutoScan --
+# This procedure is invoked when the mouse leaves an entry window
+# with button 1 down. It scrolls the window up, down, left, or
+# right, depending on where the mouse left the window, and reschedules
+# itself as an "after" command so that the window continues to scroll until
+# the mouse moves back into the window or the mouse button is released.
+#
+# Arguments:
+# w - The entry window.
+# x - The x-coordinate of the mouse when it left the window.
+# y - The y-coordinate of the mouse when it left the window.
+sub AutoScan
+{
+ my $w = shift;
+ return if !Tk::Exists($w);
+ my $x = shift;
+ my $y = shift;
+ if ($y >= $w->height)
+ {
+ $w->yview('scroll',1,'units')
+ }
+ elsif ($y < 0)
+ {
+ $w->yview('scroll',-1,'units')
+ }
+ elsif ($x >= $w->width)
+ {
+ $w->xview('scroll',2,'units')
+ }
+ elsif ($x < 0)
+ {
+ $w->xview('scroll',-2,'units')
+ }
+ else
+ {
+ return;
+ }
+ $w->Motion($w->index("@" . $x . ',' . $y));
+ $w->RepeatId($w->after(50,'AutoScan',$w,$x,$y));
+}
+
+# end of Tk::Listbox::AutoScan
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/BeginExtend.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/BeginExtend.al
new file mode 100755
index 00000000000..afd8f0e9fda
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/BeginExtend.al
@@ -0,0 +1,34 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 620 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\BeginExtend.al)"
+# BeginExtend --
+#
+# This procedure is typically invoked on shift-button-1 presses. It
+# begins the process of extending a selection in the listbox. Its
+# exact behavior depends on the selection mode currently in effect
+# for the listbox; see the Motif documentation for details.
+#
+# Arguments:
+# w - The listbox widget.
+# el - The element for the selection operation (typically the
+# one under the pointer). Must be in numerical form.
+sub BeginExtend
+{
+ my $w = shift;
+ my $el = shift;
+ if ($w->cget('-selectmode') eq 'extended' && $w->selectionIncludes('anchor'))
+ {
+ $w->Motion($el)
+ }
+ else
+ {
+ # No selection yet; simulate the begin-select operation.
+ $w->BeginSelect($el);
+ }
+}
+
+# end of Tk::Listbox::BeginExtend
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/BeginSelect.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/BeginSelect.al
new file mode 100755
index 00000000000..304a0afe1e1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/BeginSelect.al
@@ -0,0 +1,46 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 515 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\BeginSelect.al)"
+# BeginSelect --
+#
+# This procedure is typically invoked on button-1 presses. It begins
+# the process of making a selection in the listbox. Its exact behavior
+# depends on the selection mode currently in effect for the listbox;
+# see the Motif documentation for details.
+#
+# Arguments:
+# w - The listbox widget.
+# el - The element for the selection operation (typically the
+# one under the pointer). Must be in numerical form.
+sub BeginSelect
+{
+ my $w = shift;
+ my $el = shift;
+ if ($w->cget('-selectmode') eq 'multiple')
+ {
+ if ($w->selectionIncludes($el))
+ {
+ $w->selectionClear($el)
+ }
+ else
+ {
+ $w->selectionSet($el)
+ }
+ }
+ else
+ {
+ $w->selectionClear(0,'end');
+ $w->selectionSet($el);
+ $w->selectionAnchor($el);
+ @Selection = ();
+ $Prev = $el
+ }
+ $w->focus if ($w->cget('-takefocus'));
+ $w->eventGenerate("<<ListboxSelect>>");
+}
+
+# end of Tk::Listbox::BeginSelect
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/BeginToggle.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/BeginToggle.al
new file mode 100755
index 00000000000..6c70e35d75a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/BeginToggle.al
@@ -0,0 +1,40 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 645 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\BeginToggle.al)"
+# BeginToggle --
+#
+# This procedure is typically invoked on control-button-1 presses. It
+# begins the process of toggling a selection in the listbox. Its
+# exact behavior depends on the selection mode currently in effect
+# for the listbox; see the Motif documentation for details.
+#
+# Arguments:
+# w - The listbox widget.
+# el - The element for the selection operation (typically the
+# one under the pointer). Must be in numerical form.
+sub BeginToggle
+{
+ my $w = shift;
+ my $el = shift;
+ if ($w->cget('-selectmode') eq 'extended')
+ {
+ @Selection = $w->curselection();
+ $Prev = $el;
+ $w->selectionAnchor($el);
+ if ($w->selectionIncludes($el))
+ {
+ $w->selectionClear($el)
+ }
+ else
+ {
+ $w->selectionSet($el)
+ }
+ $w->eventGenerate("<<ListboxSelect>>");
+ }
+}
+
+# end of Tk::Listbox::BeginToggle
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/ButtonRelease_1.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/ButtonRelease_1.al
new file mode 100755
index 00000000000..ec8fa789fb9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/ButtonRelease_1.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 471 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\ButtonRelease_1.al)"
+sub ButtonRelease_1
+{
+ my $w = shift;
+ my $Ev = $w->XEvent;
+ $w->CancelRepeat;
+ $w->activate($Ev->xy);
+}
+
+# end of Tk::Listbox::ButtonRelease_1
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/CLEAR.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/CLEAR.al
new file mode 100755
index 00000000000..8ed6feba4b5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/CLEAR.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 304 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\CLEAR.al)"
+# CLEAR
+# -----
+# Empty the Listbox of contents if tied to an array
+sub CLEAR {
+ my $class = shift;
+ ${$class->{OBJECT}}->delete(0, 'end');
+}
+
+# end of Tk::Listbox::CLEAR
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cancel.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cancel.al
new file mode 100755
index 00000000000..7ff924756f8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cancel.al
@@ -0,0 +1,42 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 805 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\Cancel.al)"
+# Cancel
+#
+# This procedure is invoked to cancel an extended selection in
+# progress. If there is an extended selection in progress, it
+# restores all of the items between the active one and the anchor
+# to their previous selection state.
+#
+# Arguments:
+# w - The listbox widget.
+sub Cancel
+{
+ my $w = shift;
+ if ($w->cget('-selectmode') ne 'extended' || !defined $Prev)
+ {
+ return;
+ }
+ my $first = $w->index('anchor');
+ my $last = $Prev;
+ if ($first > $last)
+ {
+ ($first, $last) = ($last, $first);
+ }
+ $w->selectionClear($first,$last);
+ while ($first <= $last)
+ {
+ if (Tk::lsearch(\@Selection,$first) >= 0)
+ {
+ $w->selectionSet($first)
+ }
+ $first++
+ }
+ $w->eventGenerate("<<ListboxSelect>>");
+}
+
+# end of Tk::Listbox::Cancel
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cntrl_End.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cntrl_End.al
new file mode 100755
index 00000000000..dad5a4bc0d1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cntrl_End.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 492 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\Cntrl_End.al)"
+sub Cntrl_End
+{
+ my $w = shift;
+ my $Ev = $w->XEvent;
+ $w->activate('end');
+ $w->see('end');
+ $w->selectionClear(0,'end');
+ $w->selectionSet('end');
+ $w->eventGenerate("<<ListboxSelect>>");
+}
+
+# end of Tk::Listbox::Cntrl_End
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cntrl_Home.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cntrl_Home.al
new file mode 100755
index 00000000000..08131896da1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cntrl_Home.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 480 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\Cntrl_Home.al)"
+sub Cntrl_Home
+{
+ my $w = shift;
+ my $Ev = $w->XEvent;
+ $w->activate(0);
+ $w->see(0);
+ $w->selectionClear(0,'end');
+ $w->selectionSet(0);
+ $w->eventGenerate("<<ListboxSelect>>");
+}
+
+# end of Tk::Listbox::Cntrl_Home
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cntrl_backslash.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cntrl_backslash.al
new file mode 100755
index 00000000000..402426261a7
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Cntrl_backslash.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 504 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\Cntrl_backslash.al)"
+sub Cntrl_backslash
+{
+ my $w = shift;
+ my $Ev = $w->XEvent;
+ if ($w->cget('-selectmode') ne 'browse')
+ {
+ $w->selectionClear(0,'end');
+ $w->eventGenerate("<<ListboxSelect>>");
+ }
+}
+
+# end of Tk::Listbox::Cntrl_backslash
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/DELETE.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/DELETE.al
new file mode 100755
index 00000000000..3dd81ad40fd
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/DELETE.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 355 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\DELETE.al)"
+# DELETE
+# ------
+# Delete element at specified index
+sub DELETE {
+ my ( $class, @list ) = @_;
+
+ my $value = ${$class->{OBJECT}}->get(@list);
+ ${$class->{OBJECT}}->delete(@list);
+ return $value;
+}
+
+# end of Tk::Listbox::DELETE
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/DataExtend.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/DataExtend.al
new file mode 100755
index 00000000000..4240300aa68
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/DataExtend.al
@@ -0,0 +1,39 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 775 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\DataExtend.al)"
+# DataExtend
+#
+# This procedure is called for key-presses such as Shift-KEndData.
+# If the selection mode isn't multiple or extend then it does nothing.
+# Otherwise it moves the active element to el and, if we're in
+# extended mode, extends the selection to that point.
+#
+# Arguments:
+# w - The listbox widget.
+# el - An integer element number.
+sub DataExtend
+{
+ my $w = shift;
+ my $el = shift;
+ my $mode = $w->cget('-selectmode');
+ if ($mode eq 'extended')
+ {
+ $w->activate($el);
+ $w->see($el);
+ if ($w->selectionIncludes('anchor'))
+ {
+ $w->Motion($el)
+ }
+ }
+ elsif ($mode eq 'multiple')
+ {
+ $w->activate($el);
+ $w->see($el)
+ }
+}
+
+# end of Tk::Listbox::DataExtend
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/EXISTS.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/EXISTS.al
new file mode 100755
index 00000000000..ae1ed1bc5e6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/EXISTS.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 366 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\EXISTS.al)"
+# EXISTS
+# ------
+# Returns true if the index exist, and undef if not
+sub EXISTS {
+ my ( $class, $index ) = @_;
+ return undef unless ${$class->{OBJECT}}->get($index);
+}
+
+# end of Tk::Listbox::EXISTS
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/EXTEND.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/EXTEND.al
new file mode 100755
index 00000000000..2a483ea08c1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/EXTEND.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 312 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\EXTEND.al)"
+# EXTEND
+# ------
+# Do nothing and be happy about it
+sub EXTEND { }
+
+# PUSH
+# ----
+# Append elements onto the Listbox contents
+# end of Tk::Listbox::EXTEND
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/ExtendUpDown.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/ExtendUpDown.al
new file mode 100755
index 00000000000..9b72250ea41
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/ExtendUpDown.al
@@ -0,0 +1,36 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 748 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\ExtendUpDown.al)"
+# ExtendUpDown --
+#
+# Does nothing unless we're in extended selection mode; in this
+# case it moves the location cursor (active element) up or down by
+# one element, and extends the selection to that point.
+#
+# Arguments:
+# w - The listbox widget.
+# amount - +1 to move down one item, -1 to move back one item.
+sub ExtendUpDown
+{
+ my $w = shift;
+ my $amount = shift;
+ if ($w->cget('-selectmode') ne 'extended')
+ {
+ return;
+ }
+ my $active = $w->index('active');
+ if (!@Selection)
+ {
+ $w->selectionSet($active);
+ @Selection = $w->curselection;
+ }
+ $w->activate($active + $amount);
+ $w->see('active');
+ $w->Motion($w->index('active'))
+}
+
+# end of Tk::Listbox::ExtendUpDown
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/FETCH.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/FETCH.al
new file mode 100755
index 00000000000..fbbe7a3ce9a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/FETCH.al
@@ -0,0 +1,56 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 176 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\FETCH.al)"
+# FETCH
+# -----
+# Return either the full contents or only the selected items in the
+# box depending on whether we tied it to an array or scalar respectively
+sub FETCH {
+ my $class = shift;
+
+ my $self = ${$class->{OBJECT}};
+ my %options = %{$class->{OPTION}} if defined $class->{OPTION};;
+
+ # Define the return variable
+ my $result;
+
+ # Check whether we are have a tied array or scalar quantity
+ if ( @_ ) {
+ my $i = shift;
+ # The Tk:: Listbox has been tied to an array, we are returning
+ # an array list of the current items in the Listbox
+ $result = $self->get($i);
+ } else {
+ # The Tk::Listbox has been tied to a scalar, we are returning a
+ # reference to an array or hash containing the currently selected items
+ my ( @array, %hash );
+
+ if ( defined $options{ReturnType} ) {
+
+ # THREE-WAY SWITCH
+ if ( $options{ReturnType} eq "index" ) {
+ $result = [$self->curselection];
+ } elsif ( $options{ReturnType} eq "element" ) {
+ foreach my $selection ( $self->curselection ) {
+ push(@array,$self->get($selection)); }
+ $result = \@array;
+ } elsif ( $options{ReturnType} eq "both" ) {
+ foreach my $selection ( $self->curselection ) {
+ %hash = ( %hash, $selection => $self->get($selection)); }
+ $result = \%hash;
+ }
+ } else {
+ # return elements (default)
+ foreach my $selection ( $self->curselection ) {
+ push(@array,$self->get($selection)); }
+ $result = \@array;
+ }
+ }
+ return $result;
+}
+
+# end of Tk::Listbox::FETCH
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/FETCHSIZE.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/FETCHSIZE.al
new file mode 100755
index 00000000000..13b612a26f5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/FETCHSIZE.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 224 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\FETCHSIZE.al)"
+# FETCHSIZE
+# ---------
+# Return the number of elements in the Listbox when tied to an array
+sub FETCHSIZE {
+ my $class = shift;
+ return ${$class->{OBJECT}}->size();
+}
+
+# end of Tk::Listbox::FETCHSIZE
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Listbox.bs b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Listbox.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Listbox.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Listbox.dll b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Listbox.dll
new file mode 100755
index 00000000000..e3967f04e10
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Listbox.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Motion.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Motion.al
new file mode 100755
index 00000000000..c1c3cbd978b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/Motion.al
@@ -0,0 +1,77 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 552 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\Motion.al)"
+# Motion --
+#
+# This procedure is called to process mouse motion events while
+# button 1 is down. It may move or extend the selection, depending
+# on the listbox's selection mode.
+#
+# Arguments:
+# w - The listbox widget.
+# el - The element under the pointer (must be a number).
+sub Motion
+{
+ my $w = shift;
+ my $el = shift;
+ if (defined($Prev) && $el == $Prev)
+ {
+ return;
+ }
+ my $anchor = $w->index('anchor');
+ my $mode = $w->cget('-selectmode');
+ if ($mode eq 'browse')
+ {
+ $w->selectionClear(0,'end');
+ $w->selectionSet($el);
+ $Prev = $el;
+ $w->eventGenerate("<<ListboxSelect>>");
+ }
+ elsif ($mode eq 'extended')
+ {
+ my $i = $Prev;
+ if (!defined $i || $i eq '')
+ {
+ $i = $el;
+ $w->selectionSet($el);
+ }
+ if ($w->selectionIncludes('anchor'))
+ {
+ $w->selectionClear($i,$el);
+ $w->selectionSet('anchor',$el)
+ }
+ else
+ {
+ $w->selectionClear($i,$el);
+ $w->selectionClear('anchor',$el)
+ }
+ if (!@Selection)
+ {
+ @Selection = $w->curselection;
+ }
+ while ($i < $el && $i < $anchor)
+ {
+ if (Tk::lsearch(\@Selection,$i) >= 0)
+ {
+ $w->selectionSet($i)
+ }
+ $i++
+ }
+ while ($i > $el && $i > $anchor)
+ {
+ if (Tk::lsearch(\@Selection,$i) >= 0)
+ {
+ $w->selectionSet($i)
+ }
+ $i--
+ }
+ $Prev = $el;
+ $w->eventGenerate("<<ListboxSelect>>");
+ }
+}
+
+# end of Tk::Listbox::Motion
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/POP.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/POP.al
new file mode 100755
index 00000000000..db469652447
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/POP.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 325 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\POP.al)"
+# POP
+# ---
+# Remove last element of the array and return it
+sub POP {
+ my $class = shift;
+
+ my $value = ${$class->{OBJECT}}->get('end');
+ ${$class->{OBJECT}}->delete('end');
+ return $value;
+}
+
+# end of Tk::Listbox::POP
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/PUSH.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/PUSH.al
new file mode 100755
index 00000000000..f2168ef46d9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/PUSH.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 320 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\PUSH.al)"
+sub PUSH {
+ my ( $class, @list ) = @_;
+ ${$class->{OBJECT}}->insert('end', @list);
+}
+
+# end of Tk::Listbox::PUSH
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/SHIFT.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/SHIFT.al
new file mode 100755
index 00000000000..96a41f7d79c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/SHIFT.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 336 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\SHIFT.al)"
+# SHIFT
+# -----
+# Removes the first element and returns it
+sub SHIFT {
+ my $class = shift;
+
+ my $value = ${$class->{OBJECT}}->get(0);
+ ${$class->{OBJECT}}->delete(0);
+ return $value
+}
+
+# end of Tk::Listbox::SHIFT
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/SPLICE.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/SPLICE.al
new file mode 100755
index 00000000000..aeddea8196a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/SPLICE.al
@@ -0,0 +1,84 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 374 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\SPLICE.al)"
+# SPLICE
+# ------
+# Performs equivalent of splice on the listbox contents
+sub SPLICE {
+ my $class = shift;
+
+ my $self = ${$class->{OBJECT}};
+
+ # check for arguments
+ my @elements;
+ if ( scalar(@_) == 0 ) {
+ # none
+ @elements = $self->get(0,'end');
+ $self->delete(0,'end');
+ return wantarray ? @elements : $elements[scalar(@elements)-1];;
+
+ } elsif ( scalar(@_) == 1 ) {
+ # $offset
+ my ( $offset ) = @_;
+ if ( $offset < 0 ) {
+ my $start = $self->size() + $offset;
+ if ( $start > 0 ) {
+ @elements = $self->get($start,'end');
+ $self->delete($start,'end');
+ return wantarray ? @elements : $elements[scalar(@elements)-1];
+ } else {
+ return undef;
+ }
+ } else {
+ @elements = $self->get($offset,'end');
+ $self->delete($offset,'end');
+ return wantarray ? @elements : $elements[scalar(@elements)-1];
+ }
+
+ } elsif ( scalar(@_) == 2 ) {
+ # $offset and $length
+ my ( $offset, $length ) = @_;
+ if ( $offset < 0 ) {
+ my $start = $self->size() + $offset;
+ my $end = $self->size() + $offset + $length - 1;
+ if ( $start > 0 ) {
+ @elements = $self->get($start,$end);
+ $self->delete($start,$end);
+ return wantarray ? @elements : $elements[scalar(@elements)-1];
+ } else {
+ return undef;
+ }
+ } else {
+ @elements = $self->get($offset,$offset+$length-1);
+ $self->delete($offset,$offset+$length-1);
+ return wantarray ? @elements : $elements[scalar(@elements)-1];
+ }
+
+ } else {
+ # $offset, $length and @list
+ my ( $offset, $length, @list ) = @_;
+ if ( $offset < 0 ) {
+ my $start = $self->size() + $offset;
+ my $end = $self->size() + $offset + $length - 1;
+ if ( $start > 0 ) {
+ @elements = $self->get($start,$end);
+ $self->delete($start,$end);
+ $self->insert($start,@list);
+ return wantarray ? @elements : $elements[scalar(@elements)-1];
+ } else {
+ return undef;
+ }
+ } else {
+ @elements = $self->get($offset,$offset+$length-1);
+ $self->delete($offset,$offset+$length-1);
+ $self->insert($offset,@list);
+ return wantarray ? @elements : $elements[scalar(@elements)-1];
+ }
+ }
+}
+
+# end of Tk::Listbox::SPLICE
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/STORE.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/STORE.al
new file mode 100755
index 00000000000..492c32ccc1e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/STORE.al
@@ -0,0 +1,80 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 232 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\STORE.al)"
+# STORE
+# -----
+# If tied to an array we will modify the Listbox contents, while if tied
+# to a scalar we will select and clear elements.
+sub STORE {
+
+ if ( scalar(@_) == 2 ) {
+ # we have a tied scalar
+ my ( $class, $selected ) = @_;
+ my $self = ${$class->{OBJECT}};
+ my %options = %{$class->{OPTION}} if defined $class->{OPTION};;
+
+ # clear currently selected elements
+ $self->selectionClear(0,'end');
+
+ # set selected elements
+ if ( defined $options{ReturnType} ) {
+
+ # THREE-WAY SWITCH
+ if ( $options{ReturnType} eq "index" ) {
+ for ( my $i=0; $i < scalar(@$selected) ; $i++ ) {
+ for ( my $j=0; $j < $self->size() ; $j++ ) {
+ if( $j == $$selected[$i] ) {
+ $self->selectionSet($j); last; }
+ }
+ }
+ } elsif ( $options{ReturnType} eq "element" ) {
+ for ( my $k=0; $k < scalar(@$selected) ; $k++ ) {
+ for ( my $l=0; $l < $self->size() ; $l++ ) {
+ if( $self->get($l) eq $$selected[$k] ) {
+ $self->selectionSet($l); last; }
+ }
+ }
+ } elsif ( $options{ReturnType} eq "both" ) {
+ foreach my $key ( keys %$selected ) {
+ $self->selectionSet($key)
+ if $$selected{$key} eq $self->get($key);
+ }
+ }
+ } else {
+ # return elements (default)
+ for ( my $k=0; $k < scalar(@$selected) ; $k++ ) {
+ for ( my $l=0; $l < $self->size() ; $l++ ) {
+ if( $self->get($l) eq $$selected[$k] ) {
+ $self->selectionSet($l); last; }
+ }
+ }
+ }
+
+ } else {
+ # we have a tied array
+ my ( $class, $index, $value ) = @_;
+ my $self = ${$class->{OBJECT}};
+
+ # check size of current contents list
+ my $sizeof = $self->size();
+
+ if ( $index <= $sizeof ) {
+ # Change a current listbox entry
+ $self->delete($index);
+ $self->insert($index, $value);
+ } else {
+ # Add a new value
+ if ( defined $index ) {
+ $self->insert($index, $value);
+ } else {
+ $self->insert("end", $value);
+ }
+ }
+ }
+}
+
+# end of Tk::Listbox::STORE
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/SelectAll.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/SelectAll.al
new file mode 100755
index 00000000000..50569afbe50
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/SelectAll.al
@@ -0,0 +1,32 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 838 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\SelectAll.al)"
+# SelectAll
+#
+# This procedure is invoked to handle the "select all" operation.
+# For single and browse mode, it just selects the active element.
+# Otherwise it selects everything in the widget.
+#
+# Arguments:
+# w - The listbox widget.
+sub SelectAll
+{
+ my $w = shift;
+ my $mode = $w->cget('-selectmode');
+ if ($mode eq 'single' || $mode eq 'browse')
+ {
+ $w->selectionClear(0,'end');
+ $w->selectionSet('active')
+ }
+ else
+ {
+ $w->selectionSet(0,'end')
+ }
+ $w->eventGenerate("<<ListboxSelect>>");
+}
+
+# end of Tk::Listbox::SelectAll
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/SetList.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/SetList.al
new file mode 100755
index 00000000000..25e4f596592
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/SetList.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 862 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\SetList.al)"
+# Perl/Tk extensions:
+sub SetList
+{
+ my $w = shift;
+ $w->delete(0,'end');
+ $w->insert('end',@_);
+}
+
+# end of Tk::Listbox::SetList
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/TIEARRAY.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/TIEARRAY.al
new file mode 100755
index 00000000000..8c147e8eac8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/TIEARRAY.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 160 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\TIEARRAY.al)"
+sub TIEARRAY {
+ my ( $class, $obj, %options ) = @_;
+ return bless {
+ OBJECT => \$obj,
+ OPTION => \%options }, $class;
+}
+
+# end of Tk::Listbox::TIEARRAY
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/TIESCALAR.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/TIESCALAR.al
new file mode 100755
index 00000000000..9cedf047c7f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/TIESCALAR.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 169 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\TIESCALAR.al)"
+sub TIESCALAR {
+ my ( $class, $obj, %options ) = @_;
+ return bless {
+ OBJECT => \$obj,
+ OPTION => \%options }, $class;
+}
+
+# end of Tk::Listbox::TIESCALAR
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/UNSHIFT.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/UNSHIFT.al
new file mode 100755
index 00000000000..10d6bae86ec
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/UNSHIFT.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 347 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\UNSHIFT.al)"
+# UNSHIFT
+# -------
+# Insert elements at the beginning of the Listbox
+sub UNSHIFT {
+ my ( $class, @list ) = @_;
+ ${$class->{OBJECT}}->insert(0, @list);
+}
+
+# end of Tk::Listbox::UNSHIFT
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/UpDown.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/UpDown.al
new file mode 100755
index 00000000000..7ffbfebf4e1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/UpDown.al
@@ -0,0 +1,41 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 716 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\UpDown.al)"
+# UpDown --
+#
+# Moves the location cursor (active element) up or down by one element,
+# and changes the selection if we're in browse or extended selection
+# mode.
+#
+# Arguments:
+# w - The listbox widget.
+# amount - +1 to move down one item, -1 to move back one item.
+sub UpDown
+{
+ my $w = shift;
+ my $amount = shift;
+ $w->activate($w->index('active')+$amount);
+ $w->see('active');
+ my $mode = $w->cget('-selectmode');
+ if ($mode eq 'browse')
+ {
+ $w->selectionClear(0,'end');
+ $w->selectionSet('active');
+ $w->eventGenerate("<<ListboxSelect>>");
+ }
+ elsif ($mode eq 'extended')
+ {
+ $w->selectionClear(0,'end');
+ $w->selectionSet('active');
+ $w->selectionAnchor('active');
+ $Prev = $w->index('active');
+ @Selection = ();
+ $w->eventGenerate("<<ListboxSelect>>");
+ }
+}
+
+# end of Tk::Listbox::UpDown
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/autosplit.ix
new file mode 100755
index 00000000000..0cd2e67037c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/autosplit.ix
@@ -0,0 +1,56 @@
+# Index created by AutoSplit for ..\blib\lib\Tk\Listbox.pm
+# (file acts as timestamp)
+package Tk::Listbox;
+sub TIEARRAY ;
+sub TIESCALAR ;
+sub FETCH ;
+sub FETCHSIZE ;
+sub STORE ;
+sub CLEAR ;
+sub EXTEND ;
+sub PUSH ;
+sub POP ;
+sub SHIFT ;
+sub UNSHIFT ;
+sub DELETE ;
+sub EXISTS ;
+sub SPLICE ;
+sub xyIndex
+;
+sub ButtonRelease_1
+;
+sub Cntrl_Home
+;
+sub Cntrl_End
+;
+sub Cntrl_backslash
+;
+sub BeginSelect
+;
+sub Motion
+;
+sub BeginExtend
+;
+sub BeginToggle
+;
+sub AutoScan
+;
+sub UpDown
+;
+sub ExtendUpDown
+;
+sub DataExtend
+;
+sub Cancel
+;
+sub SelectAll
+;
+sub SetList
+;
+sub deleteSelected
+;
+sub clipboardPaste
+;
+sub getSelected
+;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/clipboardPaste.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/clipboardPaste.al
new file mode 100755
index 00000000000..28f0bd731de
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/clipboardPaste.al
@@ -0,0 +1,21 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 880 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\clipboardPaste.al)"
+sub clipboardPaste
+{
+ my $w = shift;
+ my $index = $w->index('active') || $w->index($w->XEvent->xy);
+ my $str;
+ eval {local $SIG{__DIE__}; $str = $w->clipboardGet };
+ return if $@;
+ foreach (split("\n",$str))
+ {
+ $w->insert($index++,$_);
+ }
+}
+
+# end of Tk::Listbox::clipboardPaste
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/deleteSelected.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/deleteSelected.al
new file mode 100755
index 00000000000..45bdfe73221
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/deleteSelected.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 870 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\deleteSelected.al)"
+sub deleteSelected
+{
+ my $w = shift;
+ my $i;
+ foreach $i (reverse $w->curselection)
+ {
+ $w->delete($i);
+ }
+}
+
+# end of Tk::Listbox::deleteSelected
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/getSelected.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/getSelected.al
new file mode 100755
index 00000000000..a729a713d3e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/getSelected.al
@@ -0,0 +1,24 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 893 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\getSelected.al)"
+sub getSelected
+{
+ my ($w) = @_;
+ my $i;
+ my (@result) = ();
+ foreach $i ($w->curselection)
+ {
+ push(@result,$w->get($i));
+ }
+ return (wantarray) ? @result : $result[0];
+}
+
+1;
+__END__
+
+
+1;
+# end of Tk::Listbox::getSelected
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/xyIndex.al b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/xyIndex.al
new file mode 100755
index 00000000000..5689afdb6ef
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Listbox/xyIndex.al
@@ -0,0 +1,29 @@
+# NOTE: Derived from ..\blib\lib\Tk\Listbox.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Listbox;
+
+#line 450 "..\blib\lib\Tk\Listbox.pm (autosplit into ..\blib\lib\auto\Tk\Listbox\xyIndex.al)"
+# ----
+
+#
+# Bind --
+# This procedure is invoked the first time the mouse enters a listbox
+# widget or a listbox widget receives the input focus. It creates
+# all of the class bindings for listboxes.
+#
+# Arguments:
+# event - Indicates which event caused the procedure to be invoked
+# (Enter or FocusIn). It is used so that we can carry out
+# the functions of that event in addition to setting up
+# bindings.
+
+sub xyIndex
+{
+ my $w = shift;
+ my $Ev = $w->XEvent;
+ return $w->index($Ev->xy);
+}
+
+# end of Tk::Listbox::xyIndex
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Menubutton/Menubutton.bs b/Master/tlpkg/tlperl/lib/auto/Tk/Menubutton/Menubutton.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Menubutton/Menubutton.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Menubutton/Menubutton.dll b/Master/tlpkg/tlperl/lib/auto/Tk/Menubutton/Menubutton.dll
new file mode 100755
index 00000000000..c7df93046c8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Menubutton/Menubutton.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/NBFrame/NBFrame.bs b/Master/tlpkg/tlperl/lib/auto/Tk/NBFrame/NBFrame.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/NBFrame/NBFrame.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/NBFrame/NBFrame.dll b/Master/tlpkg/tlperl/lib/auto/Tk/NBFrame/NBFrame.dll
new file mode 100755
index 00000000000..77fc594dfe1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/NBFrame/NBFrame.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/PNG/PNG.bs b/Master/tlpkg/tlperl/lib/auto/Tk/PNG/PNG.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/PNG/PNG.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/PNG/PNG.dll b/Master/tlpkg/tlperl/lib/auto/Tk/PNG/PNG.dll
new file mode 100755
index 00000000000..a2e01d50b00
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/PNG/PNG.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Pixmap/Pixmap.bs b/Master/tlpkg/tlperl/lib/auto/Tk/Pixmap/Pixmap.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Pixmap/Pixmap.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Pixmap/Pixmap.dll b/Master/tlpkg/tlperl/lib/auto/Tk/Pixmap/Pixmap.dll
new file mode 100755
index 00000000000..2f1ab5d5781
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Pixmap/Pixmap.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Receive.al b/Master/tlpkg/tlperl/lib/auto/Tk/Receive.al
new file mode 100755
index 00000000000..b4551cb8ee4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Receive.al
@@ -0,0 +1,23 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 763 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\Receive.al)"
+# If we have sub Clipboard in Tk then use base qw(Tk::Clipboard ....)
+# calls it when it does its eval "require $base"
+#sub Clipboard
+#{my $w = shift;
+# my $cmd = shift;
+# croak "Use clipboard\u$cmd()";
+#}
+
+sub Receive
+{
+ my $w = shift;
+ warn 'Receive(' . join(',',@_) .')';
+ die 'Tk rejects send(' . join(',',@_) .")\n";
+}
+
+# end of Tk::Receive
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/RepeatId.al b/Master/tlpkg/tlperl/lib/auto/Tk/RepeatId.al
new file mode 100755
index 00000000000..2f13fee43a1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/RepeatId.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 515 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\RepeatId.al)"
+sub RepeatId
+{
+ my ($w,$id) = @_;
+ $w = $w->MainWindow;
+ $w->CancelRepeat;
+ $w->{_afterId_} = $id;
+}
+
+# end of Tk::RepeatId
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Activate.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Activate.al
new file mode 100755
index 00000000000..500358c8e0e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Activate.al
@@ -0,0 +1,33 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scale.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scale;
+
+#line 86 "..\blib\lib\Tk\Scale.pm (autosplit into ..\blib\lib\auto\Tk\Scale\Activate.al)"
+# Activate --
+# This procedure is invoked to check a given x-y position in the
+# scale and activate the slider if the x-y position falls within
+# the slider.
+#
+# Arguments:
+# w - The scale widget.
+# x, y - Mouse coordinates.
+sub Activate
+{
+ my $w = shift;
+ my $x = shift;
+ my $y = shift;
+ return if ($w->cget('-state') eq 'disabled');
+ my $ident = $w->identify($x,$y);
+ if (defined($ident) && $ident eq 'slider')
+ {
+ $w->configure(-state => 'active')
+ }
+ else
+ {
+ $w->configure(-state => 'normal')
+ }
+}
+
+# end of Tk::Scale::Activate
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scale/ButtonDown.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/ButtonDown.al
new file mode 100755
index 00000000000..61ed6f32c11
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/ButtonDown.al
@@ -0,0 +1,40 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scale.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scale;
+
+#line 138 "..\blib\lib\Tk\Scale.pm (autosplit into ..\blib\lib\auto\Tk\Scale\ButtonDown.al)"
+# ButtonDown --
+# This procedure is invoked when a button is pressed in a scale. It
+# takes different actions depending on where the button was pressed.
+#
+# Arguments:
+# w - The scale widget.
+# x, y - Mouse coordinates of button press.
+sub ButtonDown
+{
+ my $w = shift;
+ my $x = shift;
+ my $y = shift;
+ $Tk::dragging = 0;
+ $el = $w->identify($x,$y);
+ return unless ($el);
+ if ($el eq 'trough1')
+ {
+ $w->Increment('up','little','initial')
+ }
+ elsif ($el eq 'trough2')
+ {
+ $w->Increment('down','little','initial')
+ }
+ elsif ($el eq 'slider')
+ {
+ $Tk::dragging = 1;
+ my @coords = $w->coords();
+ $Tk::deltaX = $x-$coords[0];
+ $Tk::deltaY = $y-$coords[1];
+ }
+}
+
+# end of Tk::Scale::ButtonDown
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scale/ButtonUp.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/ButtonUp.al
new file mode 100755
index 00000000000..d5a22a77a46
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/ButtonUp.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scale.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scale;
+
+#line 129 "..\blib\lib\Tk\Scale.pm (autosplit into ..\blib\lib\auto\Tk\Scale\ButtonUp.al)"
+sub ButtonUp
+{
+ my ($w,$x,$y) = @_;
+ $w->CancelRepeat();
+ $w->EndDrag();
+ $w->Activate($x,$y)
+}
+
+# end of Tk::Scale::ButtonUp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scale/ControlPress.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/ControlPress.al
new file mode 100755
index 00000000000..50d7ad8b447
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/ControlPress.al
@@ -0,0 +1,31 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scale.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scale;
+
+#line 255 "..\blib\lib\Tk\Scale.pm (autosplit into ..\blib\lib\auto\Tk\Scale\ControlPress.al)"
+# ControlPress --
+# This procedure handles button presses that are made with the Control
+# key down. Depending on the mouse position, it adjusts the scale
+# value to one end of the range or the other.
+#
+# Arguments:
+# w - The scale widget.
+# x, y - Mouse coordinates where the button was pressed.
+sub ControlPress
+{
+ my ($w,$x,$y) = @_;
+ my $el = $w->identify($x,$y);
+ return unless ($el);
+ if ($el eq 'trough1')
+ {
+ $w->set($w->cget('-from'))
+ }
+ elsif ($el eq 'trough2')
+ {
+ $w->set($w->cget('-to'))
+ }
+}
+
+1;
+# end of Tk::Scale::ControlPress
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Drag.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Drag.al
new file mode 100755
index 00000000000..0bc63b12879
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Drag.al
@@ -0,0 +1,29 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scale.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scale;
+
+#line 169 "..\blib\lib\Tk\Scale.pm (autosplit into ..\blib\lib\auto\Tk\Scale\Drag.al)"
+# Drag --
+# This procedure is called when the mouse is dragged with
+# mouse button 1 down. If the drag started inside the slider
+# (i.e. the scale is active) then the scale's value is adjusted
+# to reflect the mouse's position.
+#
+# Arguments:
+# w - The scale widget.
+# x, y - Mouse coordinates.
+sub Drag
+{
+ my $w = shift;
+ my $x = shift;
+ my $y = shift;
+ if (!$Tk::dragging)
+ {
+ return;
+ }
+ $w->set($w->get($x-$Tk::deltaX,$y-$Tk::deltaY))
+}
+
+# end of Tk::Scale::Drag
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scale/EndDrag.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/EndDrag.al
new file mode 100755
index 00000000000..86037b86d92
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/EndDrag.al
@@ -0,0 +1,23 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scale.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scale;
+
+#line 189 "..\blib\lib\Tk\Scale.pm (autosplit into ..\blib\lib\auto\Tk\Scale\EndDrag.al)"
+# EndDrag --
+# This procedure is called to end an interactive drag of the
+# slider. It just marks the drag as over.
+# Arguments:
+# w - The scale widget.
+sub EndDrag
+{
+ my $w = shift;
+ if (!$Tk::dragging)
+ {
+ return;
+ }
+ $Tk::dragging = 0;
+}
+
+# end of Tk::Scale::EndDrag
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Enter.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Enter.al
new file mode 100755
index 00000000000..1326a5ed9a0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Enter.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scale.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scale;
+
+#line 118 "..\blib\lib\Tk\Scale.pm (autosplit into ..\blib\lib\auto\Tk\Scale\Enter.al)"
+sub Enter
+{
+ my ($w,$x,$y) = @_;
+ if ($Tk::strictMotif)
+ {
+ $w->{'activeBg'} = $w->cget('-activebackground');
+ $w->configure('-activebackground',$w->cget('-background'));
+ }
+ $w->Activate($x,$y);
+}
+
+# end of Tk::Scale::Enter
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Increment.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Increment.al
new file mode 100755
index 00000000000..76432eeaf40
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Increment.al
@@ -0,0 +1,61 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scale.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scale;
+
+#line 203 "..\blib\lib\Tk\Scale.pm (autosplit into ..\blib\lib\auto\Tk\Scale\Increment.al)"
+# Increment --
+# This procedure is invoked to increment the value of a scale and
+# to set up auto-repeating of the action if that is desired. The
+# way the value is incremented depends on the "dir" and "big"
+# arguments.
+#
+# Arguments:
+# w - The scale widget.
+# dir - "up" means move value towards -from, "down" means
+# move towards -to.
+# big - Size of increments: "big" or "little".
+# repeat - Whether and how to auto-repeat the action: "noRepeat"
+# means don't auto-repeat, "initial" means this is the
+# first action in an auto-repeat sequence, and "again"
+# means this is the second repetition or later.
+sub Increment
+{
+ my $w = shift;
+ my $dir = shift;
+ my $big = shift;
+ my $repeat = shift;
+ my $inc;
+ if ($big eq 'big')
+ {
+ $inc = $w->cget('-bigincrement');
+ if ($inc == 0)
+ {
+ $inc = abs(($w->cget('-to')-$w->cget('-from')))/10.0
+ }
+ if ($inc < $w->cget('-resolution'))
+ {
+ $inc = $w->cget('-resolution')
+ }
+ }
+ else
+ {
+ $inc = $w->cget('-resolution')
+ }
+ if (($w->cget('-from') > $w->cget('-to')) ^ ($dir eq 'up'))
+ {
+ $inc = -$inc
+ }
+ $w->set($w->get()+$inc);
+ if ($repeat eq 'again')
+ {
+ $w->RepeatId($w->after($w->cget('-repeatinterval'),'Increment',$w,$dir,$big,'again'));
+ }
+ elsif ($repeat eq 'initial')
+ {
+ $w->RepeatId($w->after($w->cget('-repeatdelay'),'Increment',$w,$dir,$big,'again'));
+ }
+}
+
+# end of Tk::Scale::Increment
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Leave.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Leave.al
new file mode 100755
index 00000000000..eb6f7b69f89
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Leave.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scale.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scale;
+
+#line 111 "..\blib\lib\Tk\Scale.pm (autosplit into ..\blib\lib\auto\Tk\Scale\Leave.al)"
+sub Leave
+{
+ my ($w) = @_;
+ $w->configure('-activebackground',$w->{'activeBg'}) if ($Tk::strictMotif);
+ $w->configure('-state','normal') if ($w->cget('-state') eq 'active');
+}
+
+# end of Tk::Scale::Leave
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Scale.bs b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Scale.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Scale.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Scale.dll b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Scale.dll
new file mode 100755
index 00000000000..a9dbd0201f7
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/Scale.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scale/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/autosplit.ix
new file mode 100755
index 00000000000..a5c5d2292f2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scale/autosplit.ix
@@ -0,0 +1,22 @@
+# Index created by AutoSplit for ..\blib\lib\Tk\Scale.pm
+# (file acts as timestamp)
+package Tk::Scale;
+sub Activate
+;
+sub Leave
+;
+sub Enter
+;
+sub ButtonUp
+;
+sub ButtonDown
+;
+sub Drag
+;
+sub EndDrag
+;
+sub Increment
+;
+sub ControlPress
+;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ButtonDown.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ButtonDown.al
new file mode 100755
index 00000000000..d80e2217abc
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ButtonDown.al
@@ -0,0 +1,55 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 116 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\ButtonDown.al)"
+# tkScrollButtonDown --
+# This procedure is invoked when a button is pressed in a scrollbar.
+# It changes the way the scrollbar is displayed and takes actions
+# depending on where the mouse is.
+#
+# Arguments:
+# w - The scrollbar widget.
+# x, y - Mouse coordinates.
+
+sub ButtonDown
+{my $w = shift;
+ my $e = $w->XEvent;
+ my $element = $w->identify($e->x,$e->y);
+ $w->configure('-activerelief' => 'sunken');
+ if ($e->b == 1 and
+ (defined($element) && $element eq 'slider'))
+ {
+ $w->StartDrag($e->x,$e->y);
+ }
+ elsif ($e->b == 2 and
+ (defined($element) && $element =~ /^(trough[12]|slider)$/o))
+ {
+ my $pos = $w->fraction($e->x, $e->y);
+ my($head, $tail) = $w->get;
+ my $len = $tail - $head;
+
+ $head = $pos - $len/2;
+ $tail = $pos + $len/2;
+ if ($head < 0) {
+ $head = 0;
+ $tail = $len;
+ }
+ elsif ($tail > 1) {
+ $head = 1 - $len;
+ $tail = 1;
+ }
+ $w->ScrlToPos($head);
+ $w->set($head, $tail);
+
+ $w->StartDrag($e->x,$e->y);
+ }
+ else
+ {
+ $w->Select($element,'initial');
+ }
+}
+
+# end of Tk::Scrollbar::ButtonDown
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ButtonUp.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ButtonUp.al
new file mode 100755
index 00000000000..68857548755
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ButtonUp.al
@@ -0,0 +1,26 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 163 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\ButtonUp.al)"
+# tkScrollButtonUp --
+# This procedure is invoked when a button is released in a scrollbar.
+# It cancels scans and auto-repeats that were in progress, and restores
+# the way the active element is displayed.
+#
+# Arguments:
+# w - The scrollbar widget.
+# x, y - Mouse coordinates.
+
+sub ButtonUp
+{my $w = shift;
+ my $e = $w->XEvent;
+ $w->CancelRepeat;
+ $w->configure('-activerelief' => 'raised');
+ $w->EndDrag($e->x,$e->y);
+ $w->activate($w->identify($e->x,$e->y));
+}
+
+# end of Tk::Scrollbar::ButtonUp
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Drag.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Drag.al
new file mode 100755
index 00000000000..988f9d4a3ef
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Drag.al
@@ -0,0 +1,43 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 262 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\Drag.al)"
+# tkScrollDrag --
+# This procedure is called for each mouse motion even when the slider
+# is being dragged. It notifies the associated widget if we're not
+# jump scrolling, and it just updates the scrollbar if we are jump
+# scrolling.
+#
+# Arguments:
+# w - The scrollbar widget.
+# x, y - The current mouse position.
+
+sub Drag
+{
+ my($w,$x,$y) = @_;
+ return if !defined $initPos;
+ my $delta = $w->delta($x-$pressX, $y-$pressY);
+ if ($w->cget('-jump'))
+ {
+ if (@initValues == 2)
+ {
+ $w->set($initValues[0]+$delta, $initValues[1]+$delta);
+ }
+ else
+ {
+ $delta = sprintf "%d", $delta * $initValues[0]; # round()
+ $initValues[2] += $delta;
+ $initValues[3] += $delta;
+ $w->set(@initValues[2,3]);
+ }
+ }
+ else
+ {
+ $w->ScrlToPos($initPos+$delta);
+ }
+}
+
+# end of Tk::Scrollbar::Drag
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/EndDrag.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/EndDrag.al
new file mode 100755
index 00000000000..8c401b6fc31
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/EndDrag.al
@@ -0,0 +1,28 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 297 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\EndDrag.al)"
+# tkScrollEndDrag --
+# This procedure is called to end an interactive drag of the slider.
+# It scrolls the window if we're in jump mode, otherwise it does nothing.
+#
+# Arguments:
+# w - The scrollbar widget.
+# x, y - The mouse position at the end of the drag operation.
+
+sub EndDrag
+{
+ my($w,$x,$y) = @_;
+ return if (!defined $initPos);
+ if ($w->cget('-jump'))
+ {
+ my $delta = $w->delta($x-$pressX, $y-$pressY);
+ $w->ScrlToPos($initPos+$delta);
+ }
+ undef $initPos;
+}
+
+# end of Tk::Scrollbar::EndDrag
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Enter.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Enter.al
new file mode 100755
index 00000000000..9584a7fa34c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Enter.al
@@ -0,0 +1,21 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 86 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\Enter.al)"
+sub Enter
+{
+ my $w = shift;
+ my $e = $w->XEvent;
+ if ($Tk::strictMotif)
+ {
+ my $bg = $w->cget('-background');
+ $activeBg = $w->cget('-activebackground');
+ $w->configure('-activebackground' => $bg);
+ }
+ $w->activate($w->identify($e->x,$e->y));
+}
+
+# end of Tk::Scrollbar::Enter
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Leave.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Leave.al
new file mode 100755
index 00000000000..a6c5e89d91e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Leave.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 99 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\Leave.al)"
+sub Leave
+{
+ my $w = shift;
+ if ($Tk::strictMotif)
+ {
+ $w->configure('-activebackground' => $activeBg) if (defined $activeBg) ;
+ }
+ $w->activate('');
+}
+
+# end of Tk::Scrollbar::Leave
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Motion.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Motion.al
new file mode 100755
index 00000000000..46aac656c70
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Motion.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 109 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\Motion.al)"
+sub Motion
+{
+ my $w = shift;
+ my $e = $w->XEvent;
+ $w->activate($w->identify($e->x,$e->y));
+}
+
+# end of Tk::Scrollbar::Motion
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlByPages.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlByPages.al
new file mode 100755
index 00000000000..9d4018e9128
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlByPages.al
@@ -0,0 +1,38 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 346 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\ScrlByPages.al)"
+# tkScrlByPages --
+# This procedure tells the scrollbar's associated widget to scroll up
+# or down by a given number of screenfuls. It notifies the associated
+# widget in different ways for old and new command syntaxes.
+#
+# Arguments:
+# w - The scrollbar widget.
+# orient - Which kinds of scrollbars this applies to: "h" for
+# horizontal, "v" for vertical, "hv" for both.
+# amount - How many screens to scroll: typically 1 or -1.
+
+sub ScrlByPages
+{
+ my $w = shift;
+ my $orient = shift;
+ my $amount = shift;
+ my $cmd = $w->cget('-command');
+ return unless (defined $cmd);
+ return if (index($orient,substr($w->cget('-orient'),0,1)) < 0);
+ my @info = $w->get;
+ if (@info == 2)
+ {
+ $cmd->Call('scroll',$amount,'pages');
+ }
+ else
+ {
+ $cmd->Call($info[2]+$amount*($info[1]-1));
+ }
+}
+
+# end of Tk::Scrollbar::ScrlByPages
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlByUnits.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlByUnits.al
new file mode 100755
index 00000000000..a364b3e52ce
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlByUnits.al
@@ -0,0 +1,37 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 317 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\ScrlByUnits.al)"
+# tkScrlByUnits --
+# This procedure tells the scrollbar's associated widget to scroll up
+# or down by a given number of units. It notifies the associated widget
+# in different ways for old and new command syntaxes.
+#
+# Arguments:
+# w - The scrollbar widget.
+# orient - Which kinds of scrollbars this applies to: "h" for
+# horizontal, "v" for vertical, "hv" for both.
+# amount - How many units to scroll: typically 1 or -1.
+
+sub ScrlByUnits
+{my $w = shift;
+ my $orient = shift;
+ my $amount = shift;
+ my $cmd = $w->cget('-command');
+ return unless (defined $cmd);
+ return if (index($orient,substr($w->cget('-orient'),0,1)) < 0);
+ my @info = $w->get;
+ if (@info == 2)
+ {
+ $cmd->Call('scroll',$amount,'units');
+ }
+ else
+ {
+ $cmd->Call($info[2]+$amount);
+ }
+}
+
+# end of Tk::Scrollbar::ScrlByUnits
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlToPos.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlToPos.al
new file mode 100755
index 00000000000..e277237953e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlToPos.al
@@ -0,0 +1,35 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 376 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\ScrlToPos.al)"
+# tkScrlToPos --
+# This procedure tells the scrollbar's associated widget to scroll to
+# a particular location, given by a fraction between 0 and 1. It notifies
+# the associated widget in different ways for old and new command syntaxes.
+#
+# Arguments:
+# w - The scrollbar widget.
+# pos - A fraction between 0 and 1 indicating a desired position
+# in the document.
+
+sub ScrlToPos
+{
+ my $w = shift;
+ my $pos = shift;
+ my $cmd = $w->cget('-command');
+ return unless (defined $cmd);
+ my @info = $w->get;
+ if (@info == 2)
+ {
+ $cmd->Call('moveto',$pos);
+ }
+ else
+ {
+ $cmd->Call(int($info[0]*$pos));
+ }
+}
+
+# end of Tk::Scrollbar::ScrlToPos
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlTopBottom.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlTopBottom.al
new file mode 100755
index 00000000000..7a00efe616f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/ScrlTopBottom.al
@@ -0,0 +1,32 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 403 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\ScrlTopBottom.al)"
+# tkScrlTopBottom
+# Scroll to the top or bottom of the document, depending on the mouse
+# position.
+#
+# Arguments:
+# w - The scrollbar widget.
+# x, y - Mouse coordinates within the widget.
+
+sub ScrlTopBottom
+{
+ my $w = shift;
+ my $e = $w->XEvent;
+ my $element = $w->identify($e->x,$e->y);
+ return unless ($element);
+ if ($element =~ /1$/)
+ {
+ $w->ScrlToPos(0);
+ }
+ elsif ($element =~ /2$/)
+ {
+ $w->ScrlToPos(1);
+ }
+}
+
+1;
+# end of Tk::Scrollbar::ScrlTopBottom
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Scrollbar.bs b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Scrollbar.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Scrollbar.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Scrollbar.dll b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Scrollbar.dll
new file mode 100755
index 00000000000..f069631d631
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Scrollbar.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Select.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Select.al
new file mode 100755
index 00000000000..0da50da443b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/Select.al
@@ -0,0 +1,59 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 181 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\Select.al)"
+# tkScrollSelect --
+# This procedure is invoked when button 1 is pressed over the scrollbar.
+# It invokes one of several scrolling actions depending on where in
+# the scrollbar the button was pressed.
+#
+# Arguments:
+# w - The scrollbar widget.
+# element - The element of the scrollbar that was selected, such
+# as "arrow1" or "trough2". Shouldn't be "slider".
+# repeat - Whether and how to auto-repeat the action: "noRepeat"
+# means don't auto-repeat, "initial" means this is the
+# first action in an auto-repeat sequence, and "again"
+# means this is the second repetition or later.
+
+sub Select
+{
+ my $w = shift;
+ my $element = shift;
+ my $repeat = shift;
+ return unless defined ($element);
+ if ($element eq 'arrow1')
+ {
+ $w->ScrlByUnits('hv',-1);
+ }
+ elsif ($element eq 'trough1')
+ {
+ $w->ScrlByPages('hv',-1);
+ }
+ elsif ($element eq 'trough2')
+ {
+ $w->ScrlByPages('hv', 1);
+ }
+ elsif ($element eq 'arrow2')
+ {
+ $w->ScrlByUnits('hv', 1);
+ }
+ else
+ {
+ return;
+ }
+
+ if ($repeat eq 'again')
+ {
+ $w->RepeatId($w->after($w->cget('-repeatinterval'),['Select',$w,$element,'again']));
+ }
+ elsif ($repeat eq 'initial')
+ {
+ $w->RepeatId($w->after($w->cget('-repeatdelay'),['Select',$w,$element,'again']));
+ }
+}
+
+# end of Tk::Scrollbar::Select
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/StartDrag.al b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/StartDrag.al
new file mode 100755
index 00000000000..32edbfdef24
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/StartDrag.al
@@ -0,0 +1,38 @@
+# NOTE: Derived from ..\blib\lib\Tk\Scrollbar.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Scrollbar;
+
+#line 232 "..\blib\lib\Tk\Scrollbar.pm (autosplit into ..\blib\lib\auto\Tk\Scrollbar\StartDrag.al)"
+# tkScrollStartDrag --
+# This procedure is called to initiate a drag of the slider. It just
+# remembers the starting position of the slider.
+#
+# Arguments:
+# w - The scrollbar widget.
+# x, y - The mouse position at the start of the drag operation.
+
+sub StartDrag
+{
+ my($w,$x,$y) = @_;
+ return unless (defined ($w->cget('-command')));
+ $pressX = $x;
+ $pressY = $y;
+ @initValues = $w->get;
+ my $iv0 = $initValues[0];
+ if (@initValues == 2)
+ {
+ $initPos = $iv0;
+ }
+ elsif ($iv0 == 0)
+ {
+ $initPos = 0;
+ }
+ else
+ {
+ $initPos = $initValues[2]/$initValues[0];
+ }
+}
+
+# end of Tk::Scrollbar::StartDrag
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/autosplit.ix
new file mode 100755
index 00000000000..293d1322dd4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Scrollbar/autosplit.ix
@@ -0,0 +1,30 @@
+# Index created by AutoSplit for ..\blib\lib\Tk\Scrollbar.pm
+# (file acts as timestamp)
+package Tk::Scrollbar;
+sub Enter
+;
+sub Leave
+;
+sub Motion
+;
+sub ButtonDown
+;
+sub ButtonUp
+;
+sub Select
+;
+sub StartDrag
+;
+sub Drag
+;
+sub EndDrag
+;
+sub ScrlByUnits
+;
+sub ScrlByPages
+;
+sub ScrlToPos
+;
+sub ScrlTopBottom
+;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Selection.al b/Master/tlpkg/tlperl/lib/auto/Tk/Selection.al
new file mode 100755
index 00000000000..d9be0b224bd
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Selection.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 753 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\Selection.al)"
+# These wrappers don't use method syntax so need to live
+# in same package as raw Tk routines are newXS'ed into.
+
+sub Selection
+{my $widget = shift;
+ my $cmd = shift;
+ croak 'Use SelectionOwn/SelectionOwner' if ($cmd eq 'own');
+ croak "Use Selection\u$cmd()";
+}
+
+# end of Tk::Selection
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/TList/TList.bs b/Master/tlpkg/tlperl/lib/auto/Tk/TList/TList.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/TList/TList.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/TList/TList.dll b/Master/tlpkg/tlperl/lib/auto/Tk/TList/TList.dll
new file mode 100755
index 00000000000..d6282c14837
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/TList/TList.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Table/Create.al b/Master/tlpkg/tlperl/lib/auto/Tk/Table/Create.al
new file mode 100755
index 00000000000..5e4ee32401a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Table/Create.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from blib\lib\Tk\Table.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Table;
+
+#line 535 "blib\lib\Tk\Table.pm (autosplit into blib\lib\auto\Tk\Table\Create.al)"
+sub Create
+{
+ my $t = shift;
+ my $r = shift;
+ my $c = shift;
+ my $kind = shift;
+ $t->put($r,$c,$t->$kind(@_));
+}
+
+# end of Tk::Table::Create
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Table/Posn.al b/Master/tlpkg/tlperl/lib/auto/Tk/Table/Posn.al
new file mode 100755
index 00000000000..b02293300fe
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Table/Posn.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from blib\lib\Tk\Table.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Table;
+
+#line 554 "blib\lib\Tk\Table.pm (autosplit into blib\lib\auto\Tk\Table\Posn.al)"
+sub Posn
+{
+ my ($t,$s) = @_;
+ my $info = $t->{Slave}{$s->PathName};
+ return (wantarray) ? @$info : $info;
+}
+
+# end of Tk::Table::Posn
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Table/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/Table/autosplit.ix
new file mode 100755
index 00000000000..1616ae28e83
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Table/autosplit.ix
@@ -0,0 +1,14 @@
+# Index created by AutoSplit for blib\lib\Tk\Table.pm
+# (file acts as timestamp)
+package Tk::Table;
+sub Create
+;
+sub totalColumns
+;
+sub totalRows
+;
+sub Posn
+;
+sub see
+;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Table/see.al b/Master/tlpkg/tlperl/lib/auto/Tk/Table/see.al
new file mode 100755
index 00000000000..49b89a219f1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Table/see.al
@@ -0,0 +1,46 @@
+# NOTE: Derived from blib\lib\Tk\Table.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Table;
+
+#line 561 "blib\lib\Tk\Table.pm (autosplit into blib\lib\auto\Tk\Table\see.al)"
+sub see
+{
+ my $t = shift;
+ my ($row,$col) = (@_ == 2) ? @_ : @{$t->{Slave}{$_[0]->PathName}};
+ my $see = 1;
+ if (($row -= $t->cget('-fixedrows')) >= 0)
+ {
+ if ($row < $t->{Top})
+ {
+ $t->{Top} = $row;
+ $t->QueueLayout(_ViewChange);
+ $see = 0;
+ }
+ elsif ($row >= $t->{Bottom})
+ {
+ $t->{Top} += ($row - $t->{Bottom}+1);
+ $t->QueueLayout(_ViewChange);
+ $see = 0;
+ }
+ }
+ if (($col -= $t->cget('-fixedcolumns')) >= 0)
+ {
+ if ($col < $t->{Left})
+ {
+ $t->{Left} = $col;
+ $t->QueueLayout(_ViewChange);
+ $see = 0;
+ }
+ elsif ($col >= $t->{Right})
+ {
+ $t->{Left} += ($col - $t->{Right}+1);
+ $t->QueueLayout(_ViewChange);
+ $see = 0;
+ }
+ }
+ return $see;
+}
+
+1;
+# end of Tk::Table::see
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Table/totalColumns.al b/Master/tlpkg/tlperl/lib/auto/Tk/Table/totalColumns.al
new file mode 100755
index 00000000000..915c55be8c5
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Table/totalColumns.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from blib\lib\Tk\Table.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Table;
+
+#line 544 "blib\lib\Tk\Table.pm (autosplit into blib\lib\auto\Tk\Table\totalColumns.al)"
+sub totalColumns
+{
+ scalar @{shift->{'Width'}};
+}
+
+# end of Tk::Table::totalColumns
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Table/totalRows.al b/Master/tlpkg/tlperl/lib/auto/Tk/Table/totalRows.al
new file mode 100755
index 00000000000..358f63e01b8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Table/totalRows.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from blib\lib\Tk\Table.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Table;
+
+#line 549 "blib\lib\Tk\Table.pm (autosplit into blib\lib\auto\Tk\Table\totalRows.al)"
+sub totalRows
+{
+ scalar @{shift->{'Height'}};
+}
+
+# end of Tk::Table::totalRows
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Text/Text.bs b/Master/tlpkg/tlperl/lib/auto/Tk/Text/Text.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Text/Text.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Text/Text.dll b/Master/tlpkg/tlperl/lib/auto/Tk/Text/Text.dll
new file mode 100755
index 00000000000..21cfeb1a5f3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Text/Text.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Text/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/Text/autosplit.ix
new file mode 100755
index 00000000000..48a5455c34a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Text/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for ..\blib\lib\Tk\Text.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/TextEdit/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/TextEdit/autosplit.ix
new file mode 100755
index 00000000000..d7c2cbff9ec
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/TextEdit/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for blib\lib\Tk\TextEdit.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/TextUndo/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/TextUndo/autosplit.ix
new file mode 100755
index 00000000000..3aef3c081a4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/TextUndo/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for blib\lib\Tk\TextUndo.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/TixGrid/TixGrid.bs b/Master/tlpkg/tlperl/lib/auto/Tk/TixGrid/TixGrid.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/TixGrid/TixGrid.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/TixGrid/TixGrid.dll b/Master/tlpkg/tlperl/lib/auto/Tk/TixGrid/TixGrid.dll
new file mode 100755
index 00000000000..4cc5280be95
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/TixGrid/TixGrid.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Tk.bs b/Master/tlpkg/tlperl/lib/auto/Tk/Tk.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Tk.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Tk.dll b/Master/tlpkg/tlperl/lib/auto/Tk/Tk.dll
new file mode 100755
index 00000000000..59f2b0fee6c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Tk.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_BindIn.al b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_BindIn.al
new file mode 100755
index 00000000000..8a0a0a6c911
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_BindIn.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from blib\lib\Tk\Toplevel.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Toplevel;
+
+#line 128 "blib\lib\Tk\Toplevel.pm (autosplit into blib\lib\auto\Tk\Toplevel\FG_BindIn.al)"
+# tkFocusGroup_BindIn --
+#
+# Add a widget into the "FocusIn" list of the focus group. The $cmd will be
+# called when the widget is focused on by the user.
+#
+sub FG_BindIn {
+ my($t, $w, $cmd) = @_;
+ $t->Error("focus group \"$t\" doesn't exist") unless (exists $t->{'_fg'});
+ $t->{'_FocusIn'}{$w} = Tk::Callback->new($cmd);
+}
+
+# end of Tk::Toplevel::FG_BindIn
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_BindOut.al b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_BindOut.al
new file mode 100755
index 00000000000..d7fb14d40dc
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_BindOut.al
@@ -0,0 +1,20 @@
+# NOTE: Derived from blib\lib\Tk\Toplevel.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Toplevel;
+
+#line 139 "blib\lib\Tk\Toplevel.pm (autosplit into blib\lib\auto\Tk\Toplevel\FG_BindOut.al)"
+# tkFocusGroup_BindOut --
+#
+# Add a widget into the "FocusOut" list of the focus group. The
+# $cmd will be called when the widget loses the focus (User
+# types Tab or click on another widget).
+#
+sub FG_BindOut {
+ my($t, $w, $cmd) = @_;
+ $t->Error("focus group \"$t\" doesn't exist") unless (exists $t->{'_fg'});
+ $t->{'_FocusOut'}{$w} = Tk::Callback->new($cmd);
+}
+
+# end of Tk::Toplevel::FG_BindOut
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_Create.al b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_Create.al
new file mode 100755
index 00000000000..34bb933cfa0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_Create.al
@@ -0,0 +1,56 @@
+# NOTE: Derived from blib\lib\Tk\Toplevel.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Toplevel;
+
+#line 80 "blib\lib\Tk\Toplevel.pm (autosplit into blib\lib\auto\Tk\Toplevel\FG_Create.al)"
+#----------------------------------------------------------------------
+#
+# Focus Group
+#
+# Focus groups are used to handle the user's focusing actions inside a
+# toplevel.
+#
+# One example of using focus groups is: when the user focuses on an
+# entry, the text in the entry is highlighted and the cursor is put to
+# the end of the text. When the user changes focus to another widget,
+# the text in the previously focused entry is validated.
+#
+
+#----------------------------------------------------------------------
+# tkFocusGroup_Create --
+#
+# Create a focus group. All the widgets in a focus group must be
+# within the same focus toplevel. Each toplevel can have only
+# one focus group, which is identified by the name of the
+# toplevel widget.
+#
+sub FG_Create {
+ my $t = shift;
+ unless (exists $t->{'_fg'}) {
+ $t->{'_fg'} = 1;
+ $t->bind('<FocusIn>', sub {
+ my $w = shift;
+ my $Ev = $w->XEvent;
+ $t->FG_In($w, $Ev->d);
+ }
+ );
+ $t->bind('<FocusOut>', sub {
+ my $w = shift;
+ my $Ev = $w->XEvent;
+ $t->FG_Out($w, $Ev->d);
+ }
+ );
+ $t->bind('<Destroy>', sub {
+ my $w = shift;
+ my $Ev = $w->XEvent;
+ $t->FG_Destroy($w);
+ }
+ );
+ # <Destroy> is not sufficient to break loops if never mapped.
+ $t->OnDestroy([$t,'FG_Destroy']);
+ }
+}
+
+# end of Tk::Toplevel::FG_Create
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_Destroy.al b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_Destroy.al
new file mode 100755
index 00000000000..e0af457799f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_Destroy.al
@@ -0,0 +1,29 @@
+# NOTE: Derived from blib\lib\Tk\Toplevel.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Toplevel;
+
+#line 151 "blib\lib\Tk\Toplevel.pm (autosplit into blib\lib\auto\Tk\Toplevel\FG_Destroy.al)"
+# tkFocusGroup_Destroy --
+#
+# Cleans up when members of the focus group is deleted, or when the
+# toplevel itself gets deleted.
+#
+sub FG_Destroy {
+ my($t, $w) = @_;
+ if (!defined($w) || $t == $w) {
+ delete $t->{'_fg'};
+ delete $t->{'_focus'};
+ delete $t->{'_FocusOut'};
+ delete $t->{'_FocusIn'};
+ } else {
+ if (exists $t->{'_focus'}) {
+ delete $t->{'_focus'} if ($t->{'_focus'} == $w);
+ }
+ delete $t->{'_FocusIn'}{$w};
+ delete $t->{'_FocusOut'}{$w};
+ }
+}
+
+# end of Tk::Toplevel::FG_Destroy
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_In.al b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_In.al
new file mode 100755
index 00000000000..74cf18b9b9d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_In.al
@@ -0,0 +1,24 @@
+# NOTE: Derived from blib\lib\Tk\Toplevel.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Toplevel;
+
+#line 172 "blib\lib\Tk\Toplevel.pm (autosplit into blib\lib\auto\Tk\Toplevel\FG_In.al)"
+# tkFocusGroup_In --
+#
+# Handles the <FocusIn> event. Calls the FocusIn command for the newly
+# focused widget in the focus group.
+#
+sub FG_In {
+ my($t, $w, $detail) = @_;
+ if (defined $t->{'_focus'} and $t->{'_focus'} eq $w) {
+ # This is already in focus
+ return;
+ } else {
+ $t->{'_focus'} = $w;
+ $t->{'_FocusIn'}{$w}->Call if exists $t->{'_FocusIn'}{$w};
+ }
+}
+
+# end of Tk::Toplevel::FG_In
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_Out.al b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_Out.al
new file mode 100755
index 00000000000..9dfaffe9d2e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/FG_Out.al
@@ -0,0 +1,32 @@
+# NOTE: Derived from blib\lib\Tk\Toplevel.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Toplevel;
+
+#line 188 "blib\lib\Tk\Toplevel.pm (autosplit into blib\lib\auto\Tk\Toplevel\FG_Out.al)"
+# tkFocusGroup_Out --
+#
+# Handles the <FocusOut> event. Checks if this is really a lose
+# focus event, not one generated by the mouse moving out of the
+# toplevel window. Calls the FocusOut command for the widget
+# who loses its focus.
+#
+sub FG_Out {
+ my($t, $w, $detail) = @_;
+ if ($detail ne 'NotifyNonlinear' and $detail ne 'NotifyNonlinearVirtual') {
+ # This is caused by mouse moving out of the window
+ return;
+ }
+ unless (exists $t->{'_FocusOut'}{$w}) {
+ return;
+ } else {
+ $t->{'_FocusOut'}{$w}->Call;
+ delete $t->{'_focus'};
+ }
+}
+
+1;
+
+__END__
+1;
+# end of Tk::Toplevel::FG_Out
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/autosplit.ix
new file mode 100755
index 00000000000..859b90d9a40
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Toplevel/autosplit.ix
@@ -0,0 +1,10 @@
+# Index created by AutoSplit for blib\lib\Tk\Toplevel.pm
+# (file acts as timestamp)
+package Tk::Toplevel;
+sub FG_Create ;
+sub FG_BindIn ;
+sub FG_BindOut ;
+sub FG_Destroy ;
+sub FG_In ;
+sub FG_Out ;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/TraverseToMenu.al b/Master/tlpkg/tlperl/lib/auto/Tk/TraverseToMenu.al
new file mode 100755
index 00000000000..73412e5dc58
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/TraverseToMenu.al
@@ -0,0 +1,27 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 722 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\TraverseToMenu.al)"
+# tkTraverseToMenu --
+# This procedure implements keyboard traversal of menus. Given an
+# ASCII character "char", it looks for a menubutton with that character
+# underlined. If one is found, it posts the menubutton's menu
+#
+# Arguments:
+# w - Window in which the key was typed (selects
+# a toplevel window).
+# char - Character that selects a menu. The case
+# is ignored. If an empty string, nothing
+# happens.
+sub TraverseToMenu
+{
+ my $w = shift;
+ my $char = shift;
+ return unless(defined $char && $char ne '');
+ $w = $w->toplevel->FindMenu($char);
+}
+
+# end of Tk::TraverseToMenu
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/ASkludge.al b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/ASkludge.al
new file mode 100755
index 00000000000..91c49d8511e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/ASkludge.al
@@ -0,0 +1,30 @@
+# NOTE: Derived from blib\lib\Tk\Widget.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Widget;
+
+#line 1508 "blib\lib\Tk\Widget.pm (autosplit into blib\lib\auto\Tk\Widget\ASkludge.al)"
+sub ASkludge
+{
+ my ($hash,$sense) = @_;
+ foreach my $key (%$hash)
+ {
+ if ($key =~ /-.*variable/ && ref($hash->{$key}) eq 'SCALAR')
+ {
+ if ($sense)
+ {
+ my $val = ${$hash->{$key}};
+ require Tie::Scalar;
+ tie ${$hash->{$key}},'Tie::StdScalar';
+ ${$hash->{$key}} = $val;
+ }
+ else
+ {
+ untie ${$hash->{$key}};
+ }
+ }
+ }
+}
+
+# end of Tk::Widget::ASkludge
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/AltKeyInDialog.al b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/AltKeyInDialog.al
new file mode 100755
index 00000000000..463a8da2c6b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/AltKeyInDialog.al
@@ -0,0 +1,20 @@
+# NOTE: Derived from blib\lib\Tk\Widget.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Widget;
+
+#line 1672 "blib\lib\Tk\Widget.pm (autosplit into blib\lib\auto\Tk\Widget\AltKeyInDialog.al)"
+# ::tk::AltKeyInDialog --
+# <Alt-Key> event handler for standard dialogs. Sends <<AltUnderlined>>
+# to button or label which has appropriate underlined character
+#
+sub AltKeyInDialog
+{
+ my ($w, $key) = @_;
+ my $target = $w->FindAltKeyTarget($key);
+ return if !$target;
+ $target->eventGenerate('<<AltUnderlined>>');
+}
+
+# end of Tk::Widget::AltKeyInDialog
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/AmpWidget.al b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/AmpWidget.al
new file mode 100755
index 00000000000..c98f42d38db
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/AmpWidget.al
@@ -0,0 +1,36 @@
+# NOTE: Derived from blib\lib\Tk\Widget.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Widget;
+
+#line 1614 "blib\lib\Tk\Widget.pm (autosplit into blib\lib\auto\Tk\Widget\AmpWidget.al)"
+# ::tk::AmpWidget --
+# Creates new widget, turning -text option into -text and
+# -underline options, returned by ::tk::UnderlineAmpersand.
+#
+sub AmpWidget
+{
+ my ($w,$class,%args) = @_;
+ my @options;
+ while(my($opt,$val) = each %args)
+ {
+ if ($opt eq "-text")
+ {
+ my ($newtext,$under) = $w->UnderlineAmpersand($val);
+ push @options, -text => $newtext, -underline => $under;
+ }
+ else
+ {
+ push @options, $opt, $val;
+ }
+ }
+ my $result = $w->$class(@options);
+ if ($result->can('AmpWidgetPostHook'))
+ {
+ $result->AmpWidgetPostHook;
+ }
+ return $result;
+}
+
+# end of Tk::Widget::AmpWidget
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/FindAltKeyTarget.al b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/FindAltKeyTarget.al
new file mode 100755
index 00000000000..c152adb0347
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/FindAltKeyTarget.al
@@ -0,0 +1,38 @@
+# NOTE: Derived from blib\lib\Tk\Widget.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Widget;
+
+#line 1642 "blib\lib\Tk\Widget.pm (autosplit into blib\lib\auto\Tk\Widget\FindAltKeyTarget.al)"
+# ::tk::FindAltKeyTarget --
+# search recursively through the hierarchy of visible widgets
+# to find button or label which has $char as underlined character
+#
+sub FindAltKeyTarget
+{
+ my ($w,$char) = @_;
+ $char = lc $char;
+ if ($w->isa('Tk::Button') || $w->isa('Tk::Label'))
+ {
+ if ($char eq lc substr($w->cget(-text), $w->cget(-underline), 1))
+ {
+ return $w;
+ }
+ else
+ {
+ return undef;
+ }
+ }
+ else
+ {
+ for my $cw ($w->gridSlaves, $w->packSlaves, $w->placeSlaves) # Cannot handle $w->formSlaves here?
+ {
+ my $target = $cw->FindAltKeyTarget($char);
+ return $target if ($target);
+ }
+ }
+ undef;
+}
+
+# end of Tk::Widget::FindAltKeyTarget
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/MasterMenu.al b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/MasterMenu.al
new file mode 100755
index 00000000000..510e8bb6b5c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/MasterMenu.al
@@ -0,0 +1,14 @@
+# NOTE: Derived from blib\lib\Tk\Widget.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Widget;
+
+#line 1765 "blib\lib\Tk\Widget.pm (autosplit into blib\lib\auto\Tk\Widget\MasterMenu.al)"
+# See http://rt.cpan.org/Ticket/Display.html?id=30929 and
+# http://rt.cpan.org/Ticket/Display.html?id=31016
+sub MasterMenu
+ {
+ }
+
+1;
+# end of Tk::Widget::MasterMenu
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/RestoreFocusGrab.al b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/RestoreFocusGrab.al
new file mode 100755
index 00000000000..3744f3fcb33
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/RestoreFocusGrab.al
@@ -0,0 +1,59 @@
+# NOTE: Derived from blib\lib\Tk\Widget.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Widget;
+
+#line 1714 "blib\lib\Tk\Widget.pm (autosplit into blib\lib\auto\Tk\Widget\RestoreFocusGrab.al)"
+# ::tk::RestoreFocusGrab --
+# restore old focus and grab (for dialogs)
+# Arguments:
+# grab window that had taken grab
+# focus window that had taken focus
+# destroy destroy|withdraw - how to handle the old grabbed window
+# Results:
+# Returns nothing
+#
+sub RestoreFocusGrab
+{
+ my ($grab, $focus, $destroy) = @_;
+ $destroy = 'destroy' if !$destroy;
+ my $index = "$grab,$focus";
+ my ($oldFocus, $oldGrab, $oldStatus);
+ if (exists $Tk::FocusGrab{$index})
+ {
+ ($oldFocus, $oldGrab, $oldStatus) = $Tk::FocusGrab{$index};
+ delete $Tk::FocusGrab{$index};
+ }
+ else
+ {
+ $oldGrab = "";
+ }
+
+ Tk::catch { $oldFocus->focus };
+ if (Tk::Exists($grab))
+ {
+ $grab->grabRelease;
+ if ($destroy eq "withdraw")
+ {
+ $grab->withdraw;
+ }
+ else
+ {
+ $grab->destroy;
+ }
+ }
+ if (Tk::Exists($oldGrab) && $oldGrab->ismapped)
+ {
+ if ($oldStatus eq "global")
+ {
+ $oldGrab->grabGlobal;
+ }
+ else
+ {
+ $oldGrab->grab;
+ }
+ }
+}
+
+# end of Tk::Widget::RestoreFocusGrab
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/SetAmpText.al b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/SetAmpText.al
new file mode 100755
index 00000000000..01029718d24
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/SetAmpText.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from blib\lib\Tk\Widget.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Widget;
+
+#line 1603 "blib\lib\Tk\Widget.pm (autosplit into blib\lib\auto\Tk\Widget\SetAmpText.al)"
+# ::tk::SetAmpText --
+# Given widget path and text with "magic ampersands",
+# sets -text and -underline options for the widget
+#
+sub SetAmpText
+{
+ my ($w,$text) = @_;
+ my ($newtext,$under) = $w->UnderlineAmpersand($text);
+ $w->configure(-text => $newtext, -underline => $under);
+}
+
+# end of Tk::Widget::SetAmpText
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/SetFocusGrab.al b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/SetFocusGrab.al
new file mode 100755
index 00000000000..3aa45d65312
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/SetFocusGrab.al
@@ -0,0 +1,38 @@
+# NOTE: Derived from blib\lib\Tk\Widget.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Widget;
+
+#line 1684 "blib\lib\Tk\Widget.pm (autosplit into blib\lib\auto\Tk\Widget\SetFocusGrab.al)"
+# ::tk::SetFocusGrab --
+# swap out current focus and grab temporarily (for dialogs)
+# Arguments:
+# grab new window to grab
+# focus window to give focus to
+# Results:
+# Returns nothing
+#
+sub SetFocusGrab
+{
+ my ($grab,$focus) = @_;
+ my $index = "$grab,$focus";
+ $Tk::FocusGrab{$index} ||= [];
+ my $data = $Tk::FocusGrab{$index};
+ push @$data, $grab->focusCurrent;
+ my $oldGrab = $grab->grabCurrent;
+ push @$data, $oldGrab;
+ if (Tk::Exists($oldGrab))
+ {
+ push @$data, $oldGrab->grabStatus;
+ }
+ # The "grab" command will fail if another application
+ # already holds the grab. So catch it.
+ Tk::catch { $grab->grab };
+ if (Tk::Exists($focus))
+ {
+ $focus->focus;
+ }
+}
+
+# end of Tk::Widget::SetFocusGrab
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/UnderlineAmpersand.al b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/UnderlineAmpersand.al
new file mode 100755
index 00000000000..f1eee316c7a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/UnderlineAmpersand.al
@@ -0,0 +1,29 @@
+# NOTE: Derived from blib\lib\Tk\Widget.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Widget;
+
+#line 1582 "blib\lib\Tk\Widget.pm (autosplit into blib\lib\auto\Tk\Widget\UnderlineAmpersand.al)"
+# ::tk::UnderlineAmpersand --
+# This procedure takes some text with ampersand and returns
+# text w/o ampersand and position of the ampersand.
+# Double ampersands are converted to single ones.
+# Position returned is -1 when there is no ampersand.
+#
+sub UnderlineAmpersand
+{
+ my (undef,$text) = @_;
+ if ($text =~ m{(?<!&)&(?!&)}g)
+ {
+ my $idx = pos $text;
+ $text =~ s{(?<!&)&(?!&)}{};
+ ($text, $idx);
+ }
+ else
+ {
+ ($text, -1);
+ }
+}
+
+# end of Tk::Widget::UnderlineAmpersand
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/autosplit.ix
new file mode 100755
index 00000000000..7844cc0b25e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/autosplit.ix
@@ -0,0 +1,27 @@
+# Index created by AutoSplit for blib\lib\Tk\Widget.pm
+# (file acts as timestamp)
+package Tk::Widget;
+sub bindDump ;
+sub ASkludge
+;
+sub clipboardKeysyms
+;
+sub pathname
+;
+sub UnderlineAmpersand
+;
+sub SetAmpText
+;
+sub AmpWidget
+;
+sub FindAltKeyTarget
+;
+sub AltKeyInDialog
+;
+sub SetFocusGrab
+;
+sub RestoreFocusGrab
+;
+sub MasterMenu
+;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/bindDump.al b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/bindDump.al
new file mode 100755
index 00000000000..b39fac08fc0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/bindDump.al
@@ -0,0 +1,87 @@
+# NOTE: Derived from blib\lib\Tk\Widget.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Widget;
+
+#line 1428 "blib\lib\Tk\Widget.pm (autosplit into blib\lib\auto\Tk\Widget\bindDump.al)"
+sub bindDump {
+
+ # Dump lots of good binding information. This pretty-print subroutine
+ # is, essentially, the following code in disguise:
+ #
+ # print "Binding information for $w\n";
+ # foreach my $tag ($w->bindtags) {
+ # printf "\n Binding tag '$tag' has these bindings:\n";
+ # foreach my $binding ($w->bind($tag)) {
+ # printf " $binding\n";
+ # }
+ # }
+
+ my ($w) = @_;
+
+ my (@bindtags) = $w->bindtags;
+ my $digits = length( scalar @bindtags );
+ my ($spc1, $spc2) = ($digits + 33, $digits + 35);
+ my $format1 = "%${digits}d.";
+ my $format2 = ' ' x ($digits + 2);
+ my $n = 0;
+
+ my @out;
+ push @out, sprintf( "\n## Binding information for '%s', %s ##", $w->PathName, $w );
+
+ foreach my $tag (@bindtags) {
+ my (@bindings) = $w->bind($tag);
+ $n++; # count this bindtag
+
+ if ($#bindings == -1) {
+ push @out, sprintf( "\n$format1 Binding tag '$tag' has no bindings.\n", $n );
+ } else {
+ push @out, sprintf( "\n$format1 Binding tag '$tag' has these bindings:\n", $n );
+
+ foreach my $binding ( @bindings ) {
+ my $callback = $w->bind($tag, $binding);
+ push @out, sprintf( "$format2%27s : %-40s\n", $binding, $callback );
+
+ if ($callback =~ /SCALAR/) {
+ if (ref $$callback) {
+ push @out, sprintf( "%s %s\n", ' ' x $spc1, $$callback );
+ } else {
+ push @out, sprintf( "%s '%s'\n", ' ' x $spc1, $$callback );
+ }
+ } elsif ($callback =~ /ARRAY/) {
+ if (ref $callback->[0]) {
+ push @out, sprintf( "%s %s\n", ' ' x $spc1, $callback->[0], "\n" );
+ } else {
+ push @out, sprintf( "%s '%s'\n", ' ' x $spc1, $callback->[0], "\n" );
+ }
+ foreach my $arg (@$callback[1 .. $#$callback]) {
+ if (ref $arg) {
+ push @out, sprintf( "%s %-40s", ' ' x $spc2, $arg );
+ } else {
+ push @out, sprintf( "%s '%s'", ' ' x $spc2, $arg );
+ }
+
+ if (ref $arg eq 'Tk::Ev') {
+ if ($arg =~ /SCALAR/) {
+ push @out, sprintf( ": '$$arg'" );
+ } else {
+ push @out, sprintf( ": '%s'", join("' '", @$arg) );
+ }
+ }
+
+ push @out, sprintf( "\n" );
+ } # forend callback arguments
+ } # ifend callback
+
+ } # forend all bindings for one tag
+
+ } # ifend have bindings
+
+ } # forend all tags
+ push @out, sprintf( "\n" );
+ return @out;
+
+} # end bindDump
+
+# end of Tk::Widget::bindDump
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/clipboardKeysyms.al b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/clipboardKeysyms.al
new file mode 100755
index 00000000000..538fa0e42d8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/clipboardKeysyms.al
@@ -0,0 +1,51 @@
+# NOTE: Derived from blib\lib\Tk\Widget.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Widget;
+
+#line 1532 "blib\lib\Tk\Widget.pm (autosplit into blib\lib\auto\Tk\Widget\clipboardKeysyms.al)"
+# clipboardKeysyms --
+# This procedure is invoked to identify the keys that correspond to
+# the "copy", "cut", and "paste" functions for the clipboard.
+#
+# Arguments:
+# copy - Name of the key (keysym name plus modifiers, if any,
+# such as "Meta-y") used for the copy operation.
+# cut - Name of the key used for the cut operation.
+# paste - Name of the key used for the paste operation.
+#
+# This method is obsolete use clipboardOperations and abstract
+# event types instead. See Clipboard.pm and Mainwindow.pm
+
+sub clipboardKeysyms
+{
+ my @class = ();
+ my $mw = shift;
+ if (ref $mw)
+ {
+ $mw = $mw->DelegateFor('bind');
+ }
+ else
+ {
+ push(@class,$mw);
+ $mw = shift;
+ }
+ if (@_)
+ {
+ my $copy = shift;
+ $mw->Tk::bind(@class,"<$copy>",'clipboardCopy') if (defined $copy);
+ }
+ if (@_)
+ {
+ my $cut = shift;
+ $mw->Tk::bind(@class,"<$cut>",'clipboardCut') if (defined $cut);
+ }
+ if (@_)
+ {
+ my $paste = shift;
+ $mw->Tk::bind(@class,"<$paste>",'clipboardPaste') if (defined $paste);
+ }
+}
+
+# end of Tk::Widget::clipboardKeysyms
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Widget/pathname.al b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/pathname.al
new file mode 100755
index 00000000000..10ac95fa2c6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Widget/pathname.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from blib\lib\Tk\Widget.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Widget;
+
+#line 1575 "blib\lib\Tk\Widget.pm (autosplit into blib\lib\auto\Tk\Widget\pathname.al)"
+sub pathname
+{
+ my ($w,$id) = @_;
+ my $x = $w->winfo('pathname',-displayof => oct($id));
+ return $x->PathName;
+}
+
+# end of Tk::Widget::pathname
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Wm/AnchorAdjust.al b/Master/tlpkg/tlperl/lib/auto/Tk/Wm/AnchorAdjust.al
new file mode 100755
index 00000000000..538612878ed
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Wm/AnchorAdjust.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from blib\lib\Tk\Wm.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Wm;
+
+#line 87 "blib\lib\Tk\Wm.pm (autosplit into blib\lib\auto\Tk\Wm\AnchorAdjust.al)"
+sub AnchorAdjust
+{
+ my ($anchor,$X,$Y,$w,$h) = @_;
+ $anchor = 'c' unless (defined $anchor);
+ $Y += ($anchor =~ /s/) ? $h : ($anchor =~ /n/) ? 0 : $h/2;
+ $X += ($anchor =~ /e/) ? $w : ($anchor =~ /w/) ? 0 : $w/2;
+ return ($X,$Y);
+}
+
+# end of Tk::Wm::AnchorAdjust
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Wm/FullScreen.al b/Master/tlpkg/tlperl/lib/auto/Tk/Wm/FullScreen.al
new file mode 100755
index 00000000000..4d5702cc60d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Wm/FullScreen.al
@@ -0,0 +1,29 @@
+# NOTE: Derived from blib\lib\Tk\Wm.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Wm;
+
+#line 138 "blib\lib\Tk\Wm.pm (autosplit into blib\lib\auto\Tk\Wm\FullScreen.al)"
+sub FullScreen
+{
+ my $w = shift;
+ my $over = (@_) ? shift : 0;
+ my $width = $w->screenwidth;
+ my $height = $w->screenheight;
+ $w->GeometryRequest($width,$height);
+ $w->overrideredirect($over & 1);
+ $w->Post(0,0);
+ $w->update;
+ if ($over & 2)
+ {
+ my $x = $w->rootx;
+ my $y = $w->rooty;
+ $width -= 2*$x;
+ $height -= $x + $y;
+ $w->GeometryRequest($width,$height);
+ $w->update;
+ }
+}
+
+# end of Tk::Wm::FullScreen
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Wm/Popup.al b/Master/tlpkg/tlperl/lib/auto/Tk/Wm/Popup.al
new file mode 100755
index 00000000000..3f460c5bac6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Wm/Popup.al
@@ -0,0 +1,50 @@
+# NOTE: Derived from blib\lib\Tk\Wm.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Wm;
+
+#line 96 "blib\lib\Tk\Wm.pm (autosplit into blib\lib\auto\Tk\Wm\Popup.al)"
+sub Popup
+{
+ my $w = shift;
+ $w->configure(@_) if @_;
+ $w->idletasks;
+ my ($mw,$mh) = ($w->reqwidth,$w->reqheight);
+ my ($rx,$ry,$rw,$rh) = (0,0,0,0);
+ my $base = $w->cget('-popover');
+ my $outside = 0;
+ if (defined $base)
+ {
+ if ($base eq 'cursor')
+ {
+ ($rx,$ry) = $w->pointerxy;
+ }
+ else
+ {
+ $rx = $base->rootx;
+ $ry = $base->rooty;
+ $rw = $base->Width;
+ $rh = $base->Height;
+ }
+ }
+ else
+ {
+ my $sc = ($w->parent) ? $w->parent->toplevel : $w;
+ $rx = -$sc->vrootx;
+ $ry = -$sc->vrooty;
+ $rw = $w->screenwidth;
+ $rh = $w->screenheight;
+ }
+ my ($X,$Y) = AnchorAdjust($w->cget('-overanchor'),$rx,$ry,$rw,$rh);
+ ($X,$Y) = AnchorAdjust($w->cget('-popanchor'),$X,$Y,-$mw,-$mh);
+ # adjust to not cross screen borders
+ if ($X < 0) { $X = 0 }
+ if ($Y < 0) { $Y = 0 }
+ if ($mw > $w->screenwidth) { $X = 0 }
+ if ($mh > $w->screenheight) { $Y = 0 }
+ $w->Post($X,$Y);
+ $w->waitVisibility;
+}
+
+# end of Tk::Wm::Popup
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Wm/Post.al b/Master/tlpkg/tlperl/lib/auto/Tk/Wm/Post.al
new file mode 100755
index 00000000000..f3f5c8e3e08
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Wm/Post.al
@@ -0,0 +1,20 @@
+# NOTE: Derived from blib\lib\Tk\Wm.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Wm;
+
+#line 75 "blib\lib\Tk\Wm.pm (autosplit into blib\lib\auto\Tk\Wm\Post.al)"
+sub Post
+{
+ my ($w,$X,$Y) = @_;
+ $X = int($X);
+ $Y = int($Y);
+ $w->positionfrom('user');
+ $w->geometry("+$X+$Y");
+ # $w->MoveToplevelWindow($X,$Y);
+ $w->deiconify;
+ $w->raise;
+}
+
+# end of Tk::Wm::Post
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Wm/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/Wm/autosplit.ix
new file mode 100755
index 00000000000..201dbe8ba99
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Wm/autosplit.ix
@@ -0,0 +1,14 @@
+# Index created by AutoSplit for blib\lib\Tk\Wm.pm
+# (file acts as timestamp)
+package Tk::Wm;
+sub Post
+;
+sub AnchorAdjust
+;
+sub Popup
+;
+sub FullScreen
+;
+sub iconposition
+;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Wm/iconposition.al b/Master/tlpkg/tlperl/lib/auto/Tk/Wm/iconposition.al
new file mode 100755
index 00000000000..9254968f61c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Wm/iconposition.al
@@ -0,0 +1,24 @@
+# NOTE: Derived from blib\lib\Tk\Wm.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk::Wm;
+
+#line 159 "blib\lib\Tk\Wm.pm (autosplit into blib\lib\auto\Tk\Wm\iconposition.al)"
+sub iconposition
+{
+ my $w = shift;
+ if (@_ == 1)
+ {
+ return $w->wm('iconposition',$1,$2) if $_[0] =~ /^(\d+),(\d+)$/;
+ if ($_[0] =~ /^([+-])(\d+)([+-])(\d+)$/)
+ {
+ my $x = ($1 eq '-') ? $w->screenwidth-$2 : $2;
+ my $y = ($3 eq '-') ? $w->screenheight-$4 : $4;
+ return $w->wm('iconposition',$x,$y);
+ }
+ }
+ $w->wm('iconposition',@_);
+}
+
+1;
+# end of Tk::Wm::iconposition
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/X/X.bs b/Master/tlpkg/tlperl/lib/auto/Tk/X/X.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/X/X.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/X/X.dll b/Master/tlpkg/tlperl/lib/auto/Tk/X/X.dll
new file mode 100755
index 00000000000..f99eb5be549
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/X/X.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/X/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/X/autosplit.ix
new file mode 100755
index 00000000000..e63dbf19b00
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/X/autosplit.ix
@@ -0,0 +1,3 @@
+# Index created by AutoSplit for ..\..\blib\lib\Tk\X.pm
+# (file acts as timestamp)
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Xlib/Xlib.bs b/Master/tlpkg/tlperl/lib/auto/Tk/Xlib/Xlib.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Xlib/Xlib.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/Xlib/Xlib.dll b/Master/tlpkg/tlperl/lib/auto/Tk/Xlib/Xlib.dll
new file mode 100755
index 00000000000..e2b3a0d1663
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/Xlib/Xlib.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/autosplit.ix b/Master/tlpkg/tlperl/lib/auto/Tk/autosplit.ix
new file mode 100755
index 00000000000..8fb1449e58f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/autosplit.ix
@@ -0,0 +1,49 @@
+# Index created by AutoSplit for blib\lib\Tk.pm
+# (file acts as timestamp)
+package Tk;
+sub Error
+;
+sub CancelRepeat
+;
+sub RepeatId
+;
+sub FocusChildren ;
+sub focusNext
+;
+sub getNextFocus
+;
+sub focusPrev
+;
+sub getPrevFocus
+;
+sub FocusOK
+;
+sub EnterFocus
+;
+sub tabFocus
+;
+sub focusFollowsMouse
+;
+sub TraverseToMenu
+;
+sub FirstMenu
+;
+sub Selection
+;
+sub Receive
+;
+sub break
+;
+sub updateWidgets
+;
+sub ImageNames
+;
+sub ImageTypes
+;
+sub interps
+;
+sub lsearch
+;
+sub getEncoding
+;
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/break.al b/Master/tlpkg/tlperl/lib/auto/Tk/break.al
new file mode 100755
index 00000000000..4aa6c220d97
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/break.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 778 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\break.al)"
+sub break
+{
+ die "_TK_BREAK_\n";
+}
+
+# end of Tk::break
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/focusFollowsMouse.al b/Master/tlpkg/tlperl/lib/auto/Tk/focusFollowsMouse.al
new file mode 100755
index 00000000000..48f2d2552cc
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/focusFollowsMouse.al
@@ -0,0 +1,14 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 716 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\focusFollowsMouse.al)"
+sub focusFollowsMouse
+{
+ my $widget = shift;
+ $widget->bind('all','<Enter>','EnterFocus');
+}
+
+# end of Tk::focusFollowsMouse
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/focusNext.al b/Master/tlpkg/tlperl/lib/auto/Tk/focusNext.al
new file mode 100755
index 00000000000..a8eeb5fc55f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/focusNext.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 552 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\focusNext.al)"
+sub focusNext
+{
+ my $w = shift;
+ my $cur = $w->getNextFocus;
+ if ($cur)
+ {
+ $cur->tabFocus;
+ }
+}
+
+# end of Tk::focusNext
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/focusPrev.al b/Master/tlpkg/tlperl/lib/auto/Tk/focusPrev.al
new file mode 100755
index 00000000000..effc8f75110
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/focusPrev.al
@@ -0,0 +1,28 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 597 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\focusPrev.al)"
+# focusPrev --
+# This procedure is invoked to move the input focus to the previous
+# window before a given one. "Previous" is defined in terms of the
+# window stacking order, with all the windows underneath a given
+# top-level (no matter how deeply nested in the hierarchy) considered.
+#
+# Arguments:
+# w - Name of a window: the procedure will set the focus
+# to the previous window before this one in the traversal
+# order.
+sub focusPrev
+{
+ my $w = shift;
+ my $cur = $w->getPrevFocus;
+ if ($cur)
+ {
+ $cur->tabFocus;
+ }
+}
+
+# end of Tk::focusPrev
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/getEncoding.al b/Master/tlpkg/tlperl/lib/auto/Tk/getEncoding.al
new file mode 100755
index 00000000000..1ac20ba8d7d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/getEncoding.al
@@ -0,0 +1,43 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 820 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\getEncoding.al)"
+sub getEncoding
+{
+ my ($class,$name) = @_;
+ eval { require Encode };
+ if ($@)
+ {
+ require Tk::DummyEncode;
+ return Tk::DummyEncode->getEncoding($name);
+ }
+ $name = $Tk::font_encoding{$name} if exists $Tk::font_encoding{$name};
+ my $enc = Encode::find_encoding($name);
+
+ unless ($enc)
+ {
+ $enc = Encode::find_encoding($name) if ($name =~ s/[-_]\d+$//)
+ }
+# if ($enc)
+# {
+# print STDERR "Lookup '$name' => ".$enc->name."\n";
+# }
+# else
+# {
+# print STDERR "Failed '$name'\n";
+# }
+ unless ($enc)
+ {
+ if ($name eq 'X11ControlChars')
+ {
+ require Tk::DummyEncode;
+ $Encode::encoding{$name} = $enc = Tk::DummyEncode->getEncoding($name);
+ }
+ }
+ return $enc;
+}
+
+1;
+# end of Tk::getEncoding
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/getNextFocus.al b/Master/tlpkg/tlperl/lib/auto/Tk/getNextFocus.al
new file mode 100755
index 00000000000..456c393b3c2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/getNextFocus.al
@@ -0,0 +1,44 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 562 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\getNextFocus.al)"
+sub getNextFocus
+{
+ my $w = shift;
+ my $cur = $w;
+ while (1)
+ {
+ # Descend to just before the first child of the current widget.
+ my $parent = $cur;
+ my @children = $cur->FocusChildren();
+ my $i = -1;
+ # Look for the next sibling that isn't a top-level.
+ while (1)
+ {
+ $i += 1;
+ if ($i < @children)
+ {
+ $cur = $children[$i];
+ next if ($cur->toplevel == $cur);
+ last
+ }
+ # No more siblings, so go to the current widget's parent.
+ # If it's a top-level, break out of the loop, otherwise
+ # look for its next sibling.
+ $cur = $parent;
+ last if ($cur->toplevel() == $cur);
+ $parent = $parent->parent();
+ @children = $parent->FocusChildren();
+ $i = lsearch(\@children,$cur);
+ }
+ if ($cur == $w || $cur->FocusOK)
+ {
+ return $cur;
+ }
+ }
+}
+
+# end of Tk::getNextFocus
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/getPrevFocus.al b/Master/tlpkg/tlperl/lib/auto/Tk/getPrevFocus.al
new file mode 100755
index 00000000000..85912416379
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/getPrevFocus.al
@@ -0,0 +1,54 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 617 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\getPrevFocus.al)"
+sub getPrevFocus
+{
+ my $w = shift;
+ my $cur = $w;
+ my @children;
+ my $i;
+ my $parent;
+ while (1)
+ {
+ # Collect information about the current window's position
+ # among its siblings. Also, if the window is a top-level,
+ # then reposition to just after the last child of the window.
+ if ($cur->toplevel() == $cur)
+ {
+ $parent = $cur;
+ @children = $cur->FocusChildren();
+ $i = @children;
+ }
+ else
+ {
+ $parent = $cur->parent();
+ @children = $parent->FocusChildren();
+ $i = lsearch(\@children,$cur);
+ }
+ # Go to the previous sibling, then descend to its last descendant
+ # (highest in stacking order. While doing this, ignore top-levels
+ # and their descendants. When we run out of descendants, go up
+ # one level to the parent.
+ while ($i > 0)
+ {
+ $i--;
+ $cur = $children[$i];
+ next if ($cur->toplevel() == $cur);
+ $parent = $cur;
+ @children = $parent->FocusChildren();
+ $i = @children;
+ }
+ $cur = $parent;
+ if ($cur == $w || $cur->FocusOK)
+ {
+ return $cur;
+ }
+ }
+
+}
+
+# end of Tk::getPrevFocus
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/interps.al b/Master/tlpkg/tlperl/lib/auto/Tk/interps.al
new file mode 100755
index 00000000000..507c66037fd
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/interps.al
@@ -0,0 +1,14 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 802 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\interps.al)"
+sub interps
+{
+ my $w = shift;
+ return $w->winfo('interps','-displayof');
+}
+
+# end of Tk::interps
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/lsearch.al b/Master/tlpkg/tlperl/lib/auto/Tk/lsearch.al
new file mode 100755
index 00000000000..61c82143f7b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/lsearch.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 808 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\lsearch.al)"
+sub lsearch
+{my $ar = shift;
+ my $x = shift;
+ my $i;
+ for ($i = 0; $i < scalar @$ar; $i++)
+ {
+ return $i if ($$ar[$i] eq $x);
+ }
+ return -1;
+}
+
+# end of Tk::lsearch
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/pTk/extralibs.ld b/Master/tlpkg/tlperl/lib/auto/Tk/pTk/extralibs.ld
new file mode 100755
index 00000000000..2977aa9fd7d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/pTk/extralibs.ld
@@ -0,0 +1 @@
+C:\strawberry\c\lib\libcomdlg32.a C:\strawberry\c\lib\libgdi32.a C:\strawberry\c\lib\libmoldname.a C:\strawberry\c\lib\libkernel32.a C:\strawberry\c\lib\libuser32.a C:\strawberry\c\lib\libgdi32.a C:\strawberry\c\lib\libwinspool.a C:\strawberry\c\lib\libcomdlg32.a C:\strawberry\c\lib\libadvapi32.a C:\strawberry\c\lib\libshell32.a C:\strawberry\c\lib\libole32.a C:\strawberry\c\lib\liboleaut32.a C:\strawberry\c\lib\libnetapi32.a C:\strawberry\c\lib\libuuid.a C:\strawberry\c\lib\libws2_32.a C:\strawberry\c\lib\libmpr.a C:\strawberry\c\lib\libwinmm.a C:\strawberry\c\lib\libversion.a C:\strawberry\c\lib\libodbc32.a C:\strawberry\c\lib\libodbccp32.a
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/tabFocus.al b/Master/tlpkg/tlperl/lib/auto/Tk/tabFocus.al
new file mode 100755
index 00000000000..c01d6940cf4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/tabFocus.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 711 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\tabFocus.al)"
+sub tabFocus
+{
+ shift->Tk::focus;
+}
+
+# end of Tk::tabFocus
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tk/updateWidgets.al b/Master/tlpkg/tlperl/lib/auto/Tk/updateWidgets.al
new file mode 100755
index 00000000000..980a6bbc632
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tk/updateWidgets.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from blib\lib\Tk.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Tk;
+
+#line 783 "blib\lib\Tk.pm (autosplit into blib\lib\auto\Tk\updateWidgets.al)"
+sub updateWidgets
+{
+ my ($w) = @_;
+ while ($w->DoOneEvent(DONT_WAIT|IDLE_EVENTS|WINDOW_EVENTS))
+ {
+ }
+ $w;
+}
+
+# end of Tk::updateWidgets
+1;
diff --git a/Master/tlpkg/tlperl/lib/auto/Tree/DAG_Node/.packlist b/Master/tlpkg/tlperl/lib/auto/Tree/DAG_Node/.packlist
new file mode 100755
index 00000000000..6388eb83be1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Tree/DAG_Node/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Tree\DAG_Node.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/URI/.packlist b/Master/tlpkg/tlperl/lib/auto/URI/.packlist
new file mode 100755
index 00000000000..c65e55da5d7
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/URI/.packlist
@@ -0,0 +1,52 @@
+C:\strawberry\perl\vendor\lib\URI.pm
+C:\strawberry\perl\vendor\lib\URI\Escape.pm
+C:\strawberry\perl\vendor\lib\URI\Heuristic.pm
+C:\strawberry\perl\vendor\lib\URI\IRI.pm
+C:\strawberry\perl\vendor\lib\URI\QueryParam.pm
+C:\strawberry\perl\vendor\lib\URI\Split.pm
+C:\strawberry\perl\vendor\lib\URI\URL.pm
+C:\strawberry\perl\vendor\lib\URI\WithBase.pm
+C:\strawberry\perl\vendor\lib\URI\_foreign.pm
+C:\strawberry\perl\vendor\lib\URI\_generic.pm
+C:\strawberry\perl\vendor\lib\URI\_idna.pm
+C:\strawberry\perl\vendor\lib\URI\_ldap.pm
+C:\strawberry\perl\vendor\lib\URI\_login.pm
+C:\strawberry\perl\vendor\lib\URI\_punycode.pm
+C:\strawberry\perl\vendor\lib\URI\_query.pm
+C:\strawberry\perl\vendor\lib\URI\_segment.pm
+C:\strawberry\perl\vendor\lib\URI\_server.pm
+C:\strawberry\perl\vendor\lib\URI\_userpass.pm
+C:\strawberry\perl\vendor\lib\URI\data.pm
+C:\strawberry\perl\vendor\lib\URI\file.pm
+C:\strawberry\perl\vendor\lib\URI\file\Base.pm
+C:\strawberry\perl\vendor\lib\URI\file\FAT.pm
+C:\strawberry\perl\vendor\lib\URI\file\Mac.pm
+C:\strawberry\perl\vendor\lib\URI\file\OS2.pm
+C:\strawberry\perl\vendor\lib\URI\file\QNX.pm
+C:\strawberry\perl\vendor\lib\URI\file\Unix.pm
+C:\strawberry\perl\vendor\lib\URI\file\Win32.pm
+C:\strawberry\perl\vendor\lib\URI\ftp.pm
+C:\strawberry\perl\vendor\lib\URI\gopher.pm
+C:\strawberry\perl\vendor\lib\URI\http.pm
+C:\strawberry\perl\vendor\lib\URI\https.pm
+C:\strawberry\perl\vendor\lib\URI\ldap.pm
+C:\strawberry\perl\vendor\lib\URI\ldapi.pm
+C:\strawberry\perl\vendor\lib\URI\ldaps.pm
+C:\strawberry\perl\vendor\lib\URI\mailto.pm
+C:\strawberry\perl\vendor\lib\URI\mms.pm
+C:\strawberry\perl\vendor\lib\URI\news.pm
+C:\strawberry\perl\vendor\lib\URI\nntp.pm
+C:\strawberry\perl\vendor\lib\URI\pop.pm
+C:\strawberry\perl\vendor\lib\URI\rlogin.pm
+C:\strawberry\perl\vendor\lib\URI\rsync.pm
+C:\strawberry\perl\vendor\lib\URI\rtsp.pm
+C:\strawberry\perl\vendor\lib\URI\rtspu.pm
+C:\strawberry\perl\vendor\lib\URI\sip.pm
+C:\strawberry\perl\vendor\lib\URI\sips.pm
+C:\strawberry\perl\vendor\lib\URI\snews.pm
+C:\strawberry\perl\vendor\lib\URI\ssh.pm
+C:\strawberry\perl\vendor\lib\URI\telnet.pm
+C:\strawberry\perl\vendor\lib\URI\tn3270.pm
+C:\strawberry\perl\vendor\lib\URI\urn.pm
+C:\strawberry\perl\vendor\lib\URI\urn\isbn.pm
+C:\strawberry\perl\vendor\lib\URI\urn\oid.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Unicode/Normalize/Normalize.dll b/Master/tlpkg/tlperl/lib/auto/Unicode/Normalize/Normalize.dll
new file mode 100755
index 00000000000..26b18601f3b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Unicode/Normalize/Normalize.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/API/.packlist b/Master/tlpkg/tlperl/lib/auto/Win32/API/.packlist
new file mode 100755
index 00000000000..2df7f0622c9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/API/.packlist
@@ -0,0 +1,9 @@
+C:\strawberry\perl\vendor\lib\Win32\API.pm
+C:\strawberry\perl\vendor\lib\Win32\API\Callback.pm
+C:\strawberry\perl\vendor\lib\Win32\API\Struct.pm
+C:\strawberry\perl\vendor\lib\Win32\API\Test.pm
+C:\strawberry\perl\vendor\lib\Win32\API\Type.pm
+C:\strawberry\perl\vendor\lib\auto\Win32\API\API.bs
+C:\strawberry\perl\vendor\lib\auto\Win32\API\API.dll
+C:\strawberry\perl\vendor\lib\auto\Win32\API\Callback\Callback.bs
+C:\strawberry\perl\vendor\lib\auto\Win32\API\Callback\Callback.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/API/API.bs b/Master/tlpkg/tlperl/lib/auto/Win32/API/API.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/API/API.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/API/API.dll b/Master/tlpkg/tlperl/lib/auto/Win32/API/API.dll
new file mode 100755
index 00000000000..e8315b61e25
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/API/API.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/API/Callback/Callback.bs b/Master/tlpkg/tlperl/lib/auto/Win32/API/Callback/Callback.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/API/Callback/Callback.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/API/Callback/Callback.dll b/Master/tlpkg/tlperl/lib/auto/Win32/API/Callback/Callback.dll
new file mode 100755
index 00000000000..e44e4ee127f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/API/Callback/Callback.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/EventLog/.packlist b/Master/tlpkg/tlperl/lib/auto/Win32/EventLog/.packlist
new file mode 100755
index 00000000000..7e7f1416c62
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/EventLog/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Win32\EventLog.pm
+C:\strawberry\perl\vendor\lib\auto\Win32\EventLog\EventLog.bs
+C:\strawberry\perl\vendor\lib\auto\Win32\EventLog\EventLog.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/EventLog/EventLog.bs b/Master/tlpkg/tlperl/lib/auto/Win32/EventLog/EventLog.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/EventLog/EventLog.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/EventLog/EventLog.dll b/Master/tlpkg/tlperl/lib/auto/Win32/EventLog/EventLog.dll
new file mode 100755
index 00000000000..2a7fcd2be9a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/EventLog/EventLog.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/Exe/.packlist b/Master/tlpkg/tlperl/lib/auto/Win32/Exe/.packlist
new file mode 100755
index 00000000000..a3c77e8bb81
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/Exe/.packlist
@@ -0,0 +1,28 @@
+C:\strawberry\perl\bin\exe_update.bat
+C:\strawberry\perl\bin\exe_update.pl
+C:\strawberry\perl\vendor\lib\Win32\Exe.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Base.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\DataDirectory.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\DebugDirectory.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\DebugTable.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\IconFile.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\PE.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\PE\Header.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\PE\Header\PE32.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Resource.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\ResourceData.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\ResourceEntry.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\ResourceEntry\Id.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\ResourceEntry\Name.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\ResourceTable.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Resource\GroupIcon.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Resource\Icon.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Resource\Manifest.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Resource\Version.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Section.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Section\Code.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Section\Data.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Section\Debug.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Section\Exports.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Section\Imports.pm
+C:\strawberry\perl\vendor\lib\Win32\Exe\Section\Resources.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/File/.packlist b/Master/tlpkg/tlperl/lib/auto/Win32/File/.packlist
new file mode 100755
index 00000000000..ca037534cda
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/File/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Win32\File.pm
+C:\strawberry\perl\vendor\lib\auto\Win32\File\File.bs
+C:\strawberry\perl\vendor\lib\auto\Win32\File\File.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/File/File.bs b/Master/tlpkg/tlperl/lib/auto/Win32/File/File.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/File/File.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/File/File.dll b/Master/tlpkg/tlperl/lib/auto/Win32/File/File.dll
new file mode 100755
index 00000000000..1e5aabc9b58
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/File/File.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/File/Object/.packlist b/Master/tlpkg/tlperl/lib/auto/Win32/File/Object/.packlist
new file mode 100755
index 00000000000..7c0fdbc4fe2
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/File/Object/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Win32\File\Object.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/Process/.packlist b/Master/tlpkg/tlperl/lib/auto/Win32/Process/.packlist
new file mode 100755
index 00000000000..9bbc7669357
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/Process/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Win32\Process.pm
+C:\strawberry\perl\vendor\lib\auto\Win32\Process\Process.bs
+C:\strawberry\perl\vendor\lib\auto\Win32\Process\Process.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/Process/Process.bs b/Master/tlpkg/tlperl/lib/auto/Win32/Process/Process.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/Process/Process.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/Process/Process.dll b/Master/tlpkg/tlperl/lib/auto/Win32/Process/Process.dll
new file mode 100755
index 00000000000..b2d581f7e90
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/Process/Process.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/Shortcut/.packlist b/Master/tlpkg/tlperl/lib/auto/Win32/Shortcut/.packlist
new file mode 100755
index 00000000000..5a7d0e10df4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/Shortcut/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\site\lib\Win32\Shortcut.pm
+C:\strawberry\perl\site\lib\auto\Win32\Shortcut\Shortcut.bs
+C:\strawberry\perl\site\lib\auto\Win32\Shortcut\Shortcut.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/Shortcut/Shortcut.bs b/Master/tlpkg/tlperl/lib/auto/Win32/Shortcut/Shortcut.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/Shortcut/Shortcut.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/Shortcut/Shortcut.dll b/Master/tlpkg/tlperl/lib/auto/Win32/Shortcut/Shortcut.dll
new file mode 100755
index 00000000000..f42ad0fc380
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/Shortcut/Shortcut.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/TieRegistry/.packlist b/Master/tlpkg/tlperl/lib/auto/Win32/TieRegistry/.packlist
new file mode 100755
index 00000000000..4c7c0ae0128
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/TieRegistry/.packlist
@@ -0,0 +1,2 @@
+C:\strawberry\perl\vendor\lib\Tie\Registry.pm
+C:\strawberry\perl\vendor\lib\Win32\TieRegistry.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/Win32.dll b/Master/tlpkg/tlperl/lib/auto/Win32/Win32.dll
new file mode 100755
index 00000000000..20a3237eeec
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/Win32.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/WinError/.packlist b/Master/tlpkg/tlperl/lib/auto/Win32/WinError/.packlist
new file mode 100755
index 00000000000..82415855e81
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/WinError/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\vendor\lib\Win32\WinError.pm
+C:\strawberry\perl\vendor\lib\auto\Win32\WinError\WinError.bs
+C:\strawberry\perl\vendor\lib\auto\Win32\WinError\WinError.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/WinError/WinError.bs b/Master/tlpkg/tlperl/lib/auto/Win32/WinError/WinError.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/WinError/WinError.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32/WinError/WinError.dll b/Master/tlpkg/tlperl/lib/auto/Win32/WinError/WinError.dll
new file mode 100755
index 00000000000..d031680b972
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32/WinError/WinError.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32API/File/File.dll b/Master/tlpkg/tlperl/lib/auto/Win32API/File/File.dll
new file mode 100755
index 00000000000..c894b41ab9c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32API/File/File.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32API/Registry/.packlist b/Master/tlpkg/tlperl/lib/auto/Win32API/Registry/.packlist
new file mode 100755
index 00000000000..2508c196ac0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32API/Registry/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\vendor\lib\Win32API\Registry.pm
+C:\strawberry\perl\vendor\lib\Win32API\Registry\cRegistry.pc
+C:\strawberry\perl\vendor\lib\auto\Win32API\Registry\Registry.bs
+C:\strawberry\perl\vendor\lib\auto\Win32API\Registry\Registry.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32API/Registry/Registry.bs b/Master/tlpkg/tlperl/lib/auto/Win32API/Registry/Registry.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32API/Registry/Registry.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32API/Registry/Registry.dll b/Master/tlpkg/tlperl/lib/auto/Win32API/Registry/Registry.dll
new file mode 100755
index 00000000000..6bce69614df
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32API/Registry/Registry.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/Win32CORE/extralibs.ld b/Master/tlpkg/tlperl/lib/auto/Win32CORE/extralibs.ld
new file mode 100755
index 00000000000..8b137891791
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/Win32CORE/extralibs.ld
@@ -0,0 +1 @@
+
diff --git a/Master/tlpkg/tlperl/lib/auto/XML/LibXML/.packlist b/Master/tlpkg/tlperl/lib/auto/XML/LibXML/.packlist
new file mode 100755
index 00000000000..76481f2f9bc
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/XML/LibXML/.packlist
@@ -0,0 +1,43 @@
+C:\strawberry\perl\vendor\lib\XML\LibXML.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Attr.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Boolean.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\CDATASection.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Comment.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Common.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\Common.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\DOM.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Document.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\DocumentFragment.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Dtd.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Element.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\ErrNo.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\ErrNo.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Error.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\Error.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\InputCallback.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Literal.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\Namespace.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Node.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\NodeList.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\Number.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\PI.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Parser.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Pattern.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Reader.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\Reader.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\RegExp.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\RelaxNG.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\SAX.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\SAX.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\SAX\Builder.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\SAX\Builder.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\SAX\Generator.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\SAX\Parser.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\Schema.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\Text.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\XPathContext.pm
+C:\strawberry\perl\vendor\lib\XML\LibXML\XPathContext.pod
+C:\strawberry\perl\vendor\lib\XML\LibXML\XPathExpression.pod
+C:\strawberry\perl\vendor\lib\auto\XML\LibXML\LibXML.bs
+C:\strawberry\perl\vendor\lib\auto\XML\LibXML\LibXML.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/XML/LibXML/LibXML.bs b/Master/tlpkg/tlperl/lib/auto/XML/LibXML/LibXML.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/XML/LibXML/LibXML.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/XML/LibXML/LibXML.dll b/Master/tlpkg/tlperl/lib/auto/XML/LibXML/LibXML.dll
new file mode 100755
index 00000000000..02a3989984e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/XML/LibXML/LibXML.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/XML/LibXSLT/.packlist b/Master/tlpkg/tlperl/lib/auto/XML/LibXSLT/.packlist
new file mode 100755
index 00000000000..023ecfe7ce8
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/XML/LibXSLT/.packlist
@@ -0,0 +1,4 @@
+C:\strawberry\perl\vendor\lib\XML\LibXSLT.pm
+C:\strawberry\perl\vendor\lib\XML\benchmark.pl
+C:\strawberry\perl\vendor\lib\auto\XML\LibXSLT\LibXSLT.bs
+C:\strawberry\perl\vendor\lib\auto\XML\LibXSLT\LibXSLT.xs.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/XML/LibXSLT/LibXSLT.bs b/Master/tlpkg/tlperl/lib/auto/XML/LibXSLT/LibXSLT.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/XML/LibXSLT/LibXSLT.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/XML/LibXSLT/LibXSLT.xs.dll b/Master/tlpkg/tlperl/lib/auto/XML/LibXSLT/LibXSLT.xs.dll
new file mode 100755
index 00000000000..da8d9e4a0a0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/XML/LibXSLT/LibXSLT.xs.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/XML/NamespaceSupport/.packlist b/Master/tlpkg/tlperl/lib/auto/XML/NamespaceSupport/.packlist
new file mode 100755
index 00000000000..01e42eadb77
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/XML/NamespaceSupport/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\XML\NamespaceSupport.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/XML/Parser/.packlist b/Master/tlpkg/tlperl/lib/auto/XML/Parser/.packlist
new file mode 100755
index 00000000000..30ed036a473
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/XML/Parser/.packlist
@@ -0,0 +1,29 @@
+C:\strawberry\perl\vendor\lib\XML\Parser.pm
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\Japanese_Encodings.msg
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\README
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\big5.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\euc-kr.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\iso-8859-2.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\iso-8859-3.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\iso-8859-4.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\iso-8859-5.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\iso-8859-7.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\iso-8859-8.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\iso-8859-9.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\windows-1250.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\windows-1252.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\x-euc-jp-jisx0221.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\x-euc-jp-unicode.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\x-sjis-cp932.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\x-sjis-jdk117.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\x-sjis-jisx0221.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Encodings\x-sjis-unicode.enc
+C:\strawberry\perl\vendor\lib\XML\Parser\Expat.pm
+C:\strawberry\perl\vendor\lib\XML\Parser\LWPExternEnt.pl
+C:\strawberry\perl\vendor\lib\XML\Parser\Style\Debug.pm
+C:\strawberry\perl\vendor\lib\XML\Parser\Style\Objects.pm
+C:\strawberry\perl\vendor\lib\XML\Parser\Style\Stream.pm
+C:\strawberry\perl\vendor\lib\XML\Parser\Style\Subs.pm
+C:\strawberry\perl\vendor\lib\XML\Parser\Style\Tree.pm
+C:\strawberry\perl\vendor\lib\auto\XML\Parser\Expat\Expat.bs
+C:\strawberry\perl\vendor\lib\auto\XML\Parser\Expat\Expat.dll
diff --git a/Master/tlpkg/tlperl/lib/auto/XML/Parser/Expat/Expat.bs b/Master/tlpkg/tlperl/lib/auto/XML/Parser/Expat/Expat.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/XML/Parser/Expat/Expat.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/XML/Parser/Expat/Expat.dll b/Master/tlpkg/tlperl/lib/auto/XML/Parser/Expat/Expat.dll
new file mode 100755
index 00000000000..6fc95748ddb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/XML/Parser/Expat/Expat.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/XML/SAX/.packlist b/Master/tlpkg/tlperl/lib/auto/XML/SAX/.packlist
new file mode 100755
index 00000000000..1335aeded91
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/XML/SAX/.packlist
@@ -0,0 +1,23 @@
+C:\strawberry\perl\vendor\lib\XML\SAX.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\Base.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\DocumentLocator.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\Exception.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\Intro.pod
+C:\strawberry\perl\vendor\lib\XML\SAX\ParserFactory.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\DTDDecls.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\DebugHandler.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\DocType.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\EncodingDetect.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\Exception.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\NoUnicodeExt.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\Productions.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\Reader.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\Reader\NoUnicodeExt.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\Reader\Stream.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\Reader\String.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\Reader\URI.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\Reader\UnicodeExt.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\UnicodeExt.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\PurePerl\XMLDecl.pm
+C:\strawberry\perl\vendor\lib\XML\SAX\placeholder.pl
diff --git a/Master/tlpkg/tlperl/lib/auto/YAML/.packlist b/Master/tlpkg/tlperl/lib/auto/YAML/.packlist
new file mode 100755
index 00000000000..0534ff663b6
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/YAML/.packlist
@@ -0,0 +1,13 @@
+C:\strawberry\perl\vendor\lib\Test\YAML.pm
+C:\strawberry\perl\vendor\lib\YAML.pm
+C:\strawberry\perl\vendor\lib\YAML\Any.pm
+C:\strawberry\perl\vendor\lib\YAML\Base.pm
+C:\strawberry\perl\vendor\lib\YAML\Dumper.pm
+C:\strawberry\perl\vendor\lib\YAML\Dumper\Base.pm
+C:\strawberry\perl\vendor\lib\YAML\Error.pm
+C:\strawberry\perl\vendor\lib\YAML\Loader.pm
+C:\strawberry\perl\vendor\lib\YAML\Loader\Base.pm
+C:\strawberry\perl\vendor\lib\YAML\Marshall.pm
+C:\strawberry\perl\vendor\lib\YAML\Node.pm
+C:\strawberry\perl\vendor\lib\YAML\Tag.pm
+C:\strawberry\perl\vendor\lib\YAML\Types.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/YAML/Tiny/.packlist b/Master/tlpkg/tlperl/lib/auto/YAML/Tiny/.packlist
new file mode 100755
index 00000000000..bb09f007d40
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/YAML/Tiny/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\YAML\Tiny.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/attrs/attrs.dll b/Master/tlpkg/tlperl/lib/auto/attrs/attrs.dll
new file mode 100755
index 00000000000..cb71ac5b0f3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/attrs/attrs.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/common/sense/.packlist b/Master/tlpkg/tlperl/lib/auto/common/sense/.packlist
new file mode 100755
index 00000000000..111ba85c562
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/common/sense/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\common\sense.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/constant/.packlist b/Master/tlpkg/tlperl/lib/auto/constant/.packlist
new file mode 100755
index 00000000000..7739844ef19
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/constant/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\constant.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/local/lib/.packlist b/Master/tlpkg/tlperl/lib/auto/local/lib/.packlist
new file mode 100755
index 00000000000..e3a9856157f
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/local/lib/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\local\lib.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/mro/mro.dll b/Master/tlpkg/tlperl/lib/auto/mro/mro.dll
new file mode 100755
index 00000000000..d5e1972db72
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/mro/mro.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/parent/.packlist b/Master/tlpkg/tlperl/lib/auto/parent/.packlist
new file mode 100755
index 00000000000..8e430619fdd
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/parent/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\lib\parent.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/pip/.packlist b/Master/tlpkg/tlperl/lib/auto/pip/.packlist
new file mode 100755
index 00000000000..b6f6c298872
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/pip/.packlist
@@ -0,0 +1,7 @@
+C:\strawberry\perl\bin\pip
+C:\strawberry\perl\bin\pip.bat
+C:\strawberry\perl\vendor\lib\Module\P5Z.pm
+C:\strawberry\perl\vendor\lib\Module\Plan\Archive.pm
+C:\strawberry\perl\vendor\lib\Module\Plan\Base.pm
+C:\strawberry\perl\vendor\lib\Module\Plan\Lite.pm
+C:\strawberry\perl\vendor\lib\pip.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/pler/.packlist b/Master/tlpkg/tlperl/lib/auto/pler/.packlist
new file mode 100755
index 00000000000..b8f385828d4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/pler/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\bin\pler
+C:\strawberry\perl\bin\pler.bat
+C:\strawberry\perl\vendor\lib\pler.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/re/re.dll b/Master/tlpkg/tlperl/lib/auto/re/re.dll
new file mode 100755
index 00000000000..a42ee9fb3e4
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/re/re.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/sdbm/extralibs.ld b/Master/tlpkg/tlperl/lib/auto/sdbm/extralibs.ld
new file mode 100755
index 00000000000..8b137891791
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/sdbm/extralibs.ld
@@ -0,0 +1 @@
+
diff --git a/Master/tlpkg/tlperl/lib/auto/threads/.packlist b/Master/tlpkg/tlperl/lib/auto/threads/.packlist
new file mode 100755
index 00000000000..d9613b5f2ee
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/threads/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\lib\auto\threads\threads.bs
+C:\strawberry\perl\lib\auto\threads\threads.dll
+C:\strawberry\perl\lib\threads.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/threads/shared/.packlist b/Master/tlpkg/tlperl/lib/auto/threads/shared/.packlist
new file mode 100755
index 00000000000..6342304b14d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/threads/shared/.packlist
@@ -0,0 +1,3 @@
+C:\strawberry\perl\lib\auto\threads\shared\shared.bs
+C:\strawberry\perl\lib\auto\threads\shared\shared.dll
+C:\strawberry\perl\lib\threads\shared.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/threads/shared/shared.bs b/Master/tlpkg/tlperl/lib/auto/threads/shared/shared.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/threads/shared/shared.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/threads/shared/shared.dll b/Master/tlpkg/tlperl/lib/auto/threads/shared/shared.dll
new file mode 100755
index 00000000000..5c825fad62e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/threads/shared/shared.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/threads/threads.bs b/Master/tlpkg/tlperl/lib/auto/threads/threads.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/threads/threads.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/threads/threads.dll b/Master/tlpkg/tlperl/lib/auto/threads/threads.dll
new file mode 100755
index 00000000000..ea2c52a7405
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/threads/threads.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl/lib/auto/version/.packlist b/Master/tlpkg/tlperl/lib/auto/version/.packlist
new file mode 100755
index 00000000000..ae54b4936d1
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/version/.packlist
@@ -0,0 +1,6 @@
+C:\strawberry\perl\lib\auto\version\vxs\vxs.bs
+C:\strawberry\perl\lib\auto\version\vxs\vxs.dll
+C:\strawberry\perl\lib\version.pm
+C:\strawberry\perl\lib\version.pod
+C:\strawberry\perl\lib\version\Internals.pod
+C:\strawberry\perl\lib\version\vxs.pm
diff --git a/Master/tlpkg/tlperl/lib/auto/version/vxs/vxs.bs b/Master/tlpkg/tlperl/lib/auto/version/vxs/vxs.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/version/vxs/vxs.bs
diff --git a/Master/tlpkg/tlperl/lib/auto/version/vxs/vxs.dll b/Master/tlpkg/tlperl/lib/auto/version/vxs/vxs.dll
new file mode 100755
index 00000000000..d3960230c88
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/auto/version/vxs/vxs.dll
Binary files differ