X-Spam-Check-By: sourceware.org Message-ID: <20a807210703191421g10083a6difa3a020c1f20af34@mail.gmail.com> Date: Mon, 19 Mar 2007 17:21:18 -0400 From: "Vin Shelton" To: cygwin AT cygwin DOT com Subject: Making a cygwin setup CD MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_129366_26024035.1174339278773" X-Google-Sender-Auth: 317d0cb458fcb2c1 Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com ------=_Part_129366_26024035.1174339278773 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline Greetings, I have created a couple of scripts that I use to create a cygwin setup kit that can be burned onto a CD. I can then use that CD to install cygwin on machines with no network access. In addition, the scripts tailor the setup.ini file so that the user can specify additional packages to be installed by default when setup.exe is run. I'm posting these files here in the hopes that others may find these files useful. Here's a brief description of the files: autorun.inf - file to cause setup.exe to run automatically when the CD is inserted. MakeCygwinKit - zsh script to build the cygwin kit. Help output is pasted below: usage: MakeCygwinKit -hsv Create a cygwin setup kit in the subdirectory cygwin_disk-yyyy-mm-dd. The contents of cygwin_disk-yyyy-mm-dd can then be burned onto a CD. All cygwin base packages are included in the generated kit. The contents of the file "extra_packages" (or the environment variable $extra_packages) can be used to specify additional packages to add to the generated kit. All of the specified packages will be installed by default when setup.exe is run. In order for this script to work, the directory identified by the environment variable $cygwin_repo (which has a default value of "cygwin_repo") must contain a mirror image of the cygwin package repository. You can use the -s option to bootstrap this directory. Options: -h Print this help message. -s Sync the packages with a cygwin mirror before running the script. The environment variable $cygwin_site specifies which cygwin mirror to use. -v Print progress messages. MakeSetupIni.pl - this perl script, invoked by MakeCygwinKit, generates the setup.ini file. These scripts may or may not work for you 'out of the box', but I hope people find these scripts useful or perhaps instructive. Regards, Vin Shelton ------=_Part_129366_26024035.1174339278773 Content-Type: application/octet-stream; name=autorun.inf Content-Transfer-Encoding: base64 X-Attachment-Id: f_ezh6x7hm Content-Disposition: attachment; filename="autorun.inf" W2F1dG9ydW5dDQpvcGVuPXNldHVwLmV4ZSAtLWxvY2FsLWluc3RhbGwNCg== ------=_Part_129366_26024035.1174339278773 Content-Type: application/octet-stream; name=MakeCygwinKit Content-Transfer-Encoding: base64 X-Attachment-Id: f_ezh70as6 Content-Disposition: attachment; filename="MakeCygwinKit" IyEvdXNyL2Jpbi9lbnYgenNoCgojIEdlbmVyYXRlIGEgY3lnd2luIHNldHVw IGtpdCBpbiB0aGUgZGlyZWN0b3J5IGN5Z3dpbi15eXl5LW1tLWRkLgojIEV2 ZXJ5IHBhY2thZ2UgYmVsb25naW5nIHRvIHRoZSBCYXNlIGNhdGVnb3J5IGFu ZCBhbGwgdGhlIHBhY2thZ2VzCiMgbGlzdGVkIGluIHRoZSBleHRyYV9wYWNr YWdlcyBmaWxlIHdpbGwgYmUgaW5jbHVkZWQgaW4gdGhlIHNldHVwIGtpdC4K IyBBbGwgb2YgdGhlIHBhY2thZ2VzIHdpbGwgYmUgaW5zdGFsbGVkIGJ5IGRl ZmF1bHQgd2hlbiBzZXR1cC5leGUgaXMgcnVuLgojCiMgQXNzdW1wdGlvbnM6 CiMgIDEuIEN5Z3dpbiBpcyBhbHJlYWR5IGluc3RhbGxlZCBvbiB0aGUgbWFj aGluZS4gIEF0IGxlYXN0IGNvcmV1dGlscywKIyAgICAgZ2F3aywgZ3JlcCwg cGVybCwgcnN5bmMsIHRhciBhbmQgenNoIG11c3QgYmUgaW5zdGFsbGVkLgoj ICAyLiBBIGxvY2FsIHJlcG9zaXRvcnkgb2YgY3lnd2luIHBhY2thZ2VzIGhh cyBiZWVuIHNldCB1cCBpbiB0aGUKIyAgICAgZGlyZWN0b3J5IGlkZW50aWZp ZWQgYnkgdGhlIGN5Z3dpbl9yZXBvIGVudmlyb25tZW50IHZhcmlhYmxlCiMg ICAgIChkZWZhdWx0cyB0byB0aGUgZGlyZWN0b3J5IGN5Z3dpbl9yZXBvKS4g IFRoZSAtcyBvcHRpb24KIyAgICAgdG8gdGhpcyBzY3JpcHQgY2FuIGJlIHVz ZWQgdG8gY3JlYXRlIG9yIHN5bmMgdXAgdGhlIHJlcG9zaXRvcnkuCiMgIDMu IFRoZSBmaWxlIGV4dHJhX3BhY2thZ2VzIGNvbnRhaW5zIHRoZSBsaXN0IG9m IHBhY2thZ2VzIHRvIGFkZAojICAgICB0byB0aGUgZGVmYXVsdCBsaXN0IG9m IGN5Z3dpbiBwYWNrYWdlcy4gIEFsdGVybmF0aXZlbHksIGlmIHRoZQojICAg ICBlbnZpcm9ubWVudCB2YXJpYWJsZSBleHRyYV9wYWNrYWdlcyBpcyBzZXQs IGl0IG11c3QgYmUgYSBsaXN0CiMgICAgIG9mIHBhY2thZ2VzIHRvIGFkZCB0 byB0aGUgY3lnd2luIGJhc2UgaW5zdGFsbDsgZS5nLgojICAgICAgIGV4dHJh X3BhY2thZ2VzPSJiaXNvbiBmbGV4IiAuL01ha2VDeWd3aW5LaXQKIyAgICAg d2lsbCBhZGQgYmlzb24gYW5kIGZsZXggdG8gdGhlIHNldHVwIGtpdC4KIwoj IE9uY2UgeW91IGhhdmUgcnVuIHRoaXMgc2NyaXB0LCBidXJuIHRoZSBjb250 ZW50cyBvZiB0aGUKIyBjeWd3aW4teXl5eS1tbS1kZCBkaXJlY3Rvcnkgb250 byBhIENELCBhbmQgdGhhdCBDRCBjYW4gYmUKIyB1c2VkIHRvIGluc3RhbGwg YWxsIHRoZSBzcGVjaWZpZWQgY3lnd2luIHBhY2thZ2VzLCB3aXRob3V0CiMg cmVxdWlyaW5nIG5ldHdvcmsgYWNjZXNzLgoKZW11bGF0ZSB6c2gKc2V0b3B0 IGV4dGVuZGVkX2dsb2IKcHJvZ25hbWU9JHswOnR9CgpmdW5jdGlvbiB1c2Fn ZSB7CiAgcHJpbnQgLXUyICJcCnVzYWdlOiAkcHJvZ25hbWUgLWhzdgogICAg ICAgQ3JlYXRlIGEgY3lnd2luIHNldHVwIGtpdCBpbiB0aGUgc3ViZGlyZWN0 b3J5IGN5Z3dpbl9kaXNrLXl5eXktbW0tZGQuCiAgICAgICBUaGUgY29udGVu dHMgb2YgY3lnd2luX2Rpc2steXl5eS1tbS1kZCBjYW4gdGhlbiBiZSBidXJu ZWQgb250byBhIENELgogICAgICAgQWxsIGN5Z3dpbiBiYXNlIHBhY2thZ2Vz IGFyZSBpbmNsdWRlZCBpbiB0aGUgZ2VuZXJhdGVkIGtpdC4gIFRoZQogICAg ICAgY29udGVudHMgb2YgdGhlIGZpbGUgXCJleHRyYV9wYWNrYWdlc1wiIChv ciB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUKICAgICAgIFwkZXh0cmFfcGFj a2FnZXMpIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgYWRkaXRpb25hbCBwYWNr YWdlcyB0byBhZGQKICAgICAgIHRvIHRoZSBnZW5lcmF0ZWQga2l0LiAgQWxs IG9mIHRoZSBzcGVjaWZpZWQgcGFja2FnZXMgd2lsbCBiZSBpbnN0YWxsZWQK ICAgICAgIGJ5IGRlZmF1bHQgd2hlbiBzZXR1cC5leGUgaXMgcnVuLgogICAg ICAgSW4gb3JkZXIgZm9yIHRoaXMgc2NyaXB0IHRvIHdvcmssIHRoZSBkaXJl Y3RvcnkgaWRlbnRpZmllZAogICAgICAgYnkgdGhlIGVudmlyb25tZW50IHZh cmlhYmxlIFwkY3lnd2luX3JlcG8gKHdoaWNoIGhhcyBhIGRlZmF1bHQgdmFs dWUKICAgICAgIG9mIFwiY3lnd2luX3JlcG9cIikgbXVzdCBjb250YWluIGEg bWlycm9yIGltYWdlIG9mIHRoZSBjeWd3aW4gcGFja2FnZQogICAgICAgcmVw b3NpdG9yeS4gIFlvdSBjYW4gdXNlIHRoZSAtcyBvcHRpb24gdG8gYm9vdHN0 cmFwIHRoaXMgZGlyZWN0b3J5LgogICAgICAgT3B0aW9uczoKICAgICAgIC1o IFByaW50IHRoaXMgaGVscCBtZXNzYWdlLgogICAgICAgLXMgU3luYyB0aGUg cGFja2FnZXMgd2l0aCBhIGN5Z3dpbiBtaXJyb3IgYmVmb3JlIHJ1bm5pbmcg dGhlIHNjcmlwdC4KICAgICAgICAgIFRoZSBlbnZpcm9ubWVudCB2YXJpYWJs ZSBcJGN5Z3dpbl9zaXRlIHNwZWNpZmllcyB3aGljaAogICAgICAgICAgY3ln d2luIG1pcnJvciB0byB1c2UuCiAgICAgICAtdiBQcmludCBwcm9ncmVzcyBt ZXNzYWdlcy4iCn0KCiMgUGFyc2UgdGhlIG9wdGlvbnMKenBhcnNlb3B0cyAt RCBoPWhlbHAgcz1zeW5jX3BhY2thZ2VzIHY9dmVyYm9zZQoKaWYgW1sgLW4g JGhlbHAgXV07IHRoZW4KICB1c2FnZQogIGV4aXQgMApmaQoKOiAke2N5Z3dp bl9yZXBvOj0kUFdEL2N5Z3dpbl9yZXBvfQoKIyBBZGQgY3VycmVudCBkaXJl Y3RvcnkgdG8gJFBBVEguCnBhdGg9KCRQV0QgJHBhdGgpCgojIFN5bmMgdXAg dG8gdGhlIGxhdGVzdCBwYWNrYWdlcy4KaWYgW1sgLW4gJHN5bmNfcGFja2Fn ZXMgXV07IHRoZW4KICBjZCAkY3lnd2luX3JlcG8KICAjIFRoaXMgY29tbWFu ZCB3aWxsIGRpc3BsYXkgYSBsaXN0IG9mIG1pcnJvciBzaXRlcyB0aGF0IHN1 cHBvcnQgcnN5bmM6CiAgIyAgd2dldCAtcSAtTyAtIGh0dHA6Ly9jeWd3aW4u Y29tL21pcnJvcnMudHh0IHwgZ3JlcCByc3luYyB8IGN1dCAtZCc7JyAtZjEg fCBzZWQgLWUgJ3M7XChyc3luYzovL1swLTlhLXouLV0qXCkuKjtcMTsnCiAg Y3lnd2luX3NpdGU9JHtjeWd3aW5fc2l0ZTotcnN5bmM6Ly9taXJyb3JzLnht aXNzaW9uLmNvbS9jeWd3aW4vfQogIFtbIC1uICR2ZXJib3NlIF1dICYmIHBy aW50IC11MiAiU3luY2luZyBwYWNrYWdlcyBmcm9tIGN5Z3dpbiBtaXJyb3I6 ICRjeWd3aW5fc2l0ZSIKICByc3luYyAtYXogLS1leGNsdWRlIG1haWwtYXJj aGl2ZXMgJGN5Z3dpbl9zaXRlIC4KICBjZCAtCmZpCgojIERlZmluZSB0aGUg bGlzdCBvZiBwYWNrYWdlcyB0byBiZSBhZGRlZCB0byB0aGUgYmFzZSBraXQu CmlmIFtbIC1uICRleHRyYV9wYWNrYWdlcyBdXTsgdGhlbgogIGV4dHJhPSgg JHs9ZXh0cmFfcGFja2FnZXN9ICkKZWxzZQogIFtbIC1yIGV4dHJhX3BhY2th Z2VzIF1dICYmIGV4dHJhPSggJCg8ZXh0cmFfcGFja2FnZXMpICkKZmkKCiMg Q3JlYXRlIGFuZCBjaGFuZ2UgdG8gdGhlIG91dHB1dCBkaXJlY3RvcnkuCm91 dGRpcj1jeWd3aW5fZGlzay0kKGRhdGUgKyclWS0lbS0lZCcpCltbIC1uICR2 ZXJib3NlIF1dICYmIHByaW50IC11MiAiTWFraW5nIGEgY3lnd2luIHNldHVw IGtpdCBpbiAkb3V0ZGlyIgpta2RpciAkb3V0ZGlyCmNwIGF1dG9ydW4uaW5m ICRvdXRkaXIKY2QgJG91dGRpcgoKY3AgJGN5Z3dpbl9yZXBvL3NldHVwLmV4 ZSAkY3lnd2luX3JlcG8vc2V0dXAuaW5pIC4KCmlmIFtbIC1uICR2ZXJib3Nl IF1dOyB0aGVuCiAgaWYgW1sgLXogJGV4dHJhIF1dOyB0aGVuCiAgICBwcmlu dCAtdTIgIkFkZGluZyBubyBleHRyYSBwYWNrYWdlcyB0byB0aGUgYmFzZSBj eWd3aW4gc2V0dXAga2l0IgogIGVsc2UKICAgIHByaW50IC11MiAiQWRkaW5n IHRoZXNlIHBhY2thZ2VzIHRvIHRoZSBiYXNlIGN5Z3dpbiBzZXR1cCBraXQ6 ICRleHRyYSIKICBmaQpmaQoKIyBHZW5lcmF0ZSB0aGUgc2V0dXAuaW5pIGZp bGUuCk1ha2VTZXR1cEluaS5wbCAkZXh0cmEKCiMgQ29weSB0aGUgcGFja2Fn ZXMgaW50byB0aGUgcmVsZWFzZSBzdWJkaXJlY3RvcnkuCltbIC1uICR2ZXJi b3NlIF1dICYmIHByaW50IC11MiAiQ29weWluZyB0aGUgcGFja2FnZXMgdG8g JG91dGRpciIKdGFyIC1DICRjeWd3aW5fcmVwbyAtZiAtIC1jICQoZ3JlcCAn Xmluc3RhbGw6JyBzZXR1cC5pbmkgfCBhd2sgJ3twcmludCAkMn0nKSB8IHRh ciB4ZiAtCgojIExvY2FsIFZhcmlhYmxlczoKIyBtb2RlOiBrc2gKIyBzaC1p bmRlbnRhdGlvbjogMgojIGluZGVudC10YWJzLW1vZGU6IG5pbAojIEVuZDoK ------=_Part_129366_26024035.1174339278773 Content-Type: application/octet-stream; name=MakeSetupIni.pl Content-Transfer-Encoding: base64 X-Attachment-Id: f_ezh720yu Content-Disposition: attachment; filename="MakeSetupIni.pl" IyEvdXNyL2Jpbi9lbnYgcGVybAoKIyBNYWtlIGEgQ3lnd2luIHNldHVwLmlu aSBmaWxlIHRoYXQgY29udGFpbnMgYWxsIHRoZSBjeWd3aW4gYmFzZSBwYWNr YWdlcwojIGFuZCB0aGUgcGFja2FnZXMgdGhvc2UgcGFja2FnZXMgcmVxdWly ZSwgYXMgd2VsbCBhcyBhbnkgYWRkaXRpb25hbAojIHBhY2thZ2VzIG5hbWVk IG9uIHRoZSBjb21tYW5kIGxpbmUgYXJndW1lbnRzLgoKIy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQojIEV4dHJhY3QgdGhlIHBhY2thZ2UgaW5mb3JtYXRpb24gZnJvbSB0aGUg c2V0dXAuaW5pIGZpbGUuCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRzZXR1cGZpbGU9InNl dHVwLmluaSI7CnVubGVzcyAob3BlbihTRVRVUCwgJHNldHVwZmlsZSkpIHsK ICAgIGRpZSAiJDA6IGNvdWxkIG5vdCBvcGVuICRzZXR1cGZpbGUiOwp9Cgok LyA9ICIiOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgUGFy YWdyYXBoIG1vZGUKCiMgU2F2ZSB0aGUgc2V0dXAuaW5pIGhlYWRlci4KJHNl dHVwX2hlYWRlciA9IDxTRVRVUD47CgojIFJlYWQgc2V0dXAuaW5pIG9uZSBy ZWNvcmQgYXQgYSB0aW1lLgojIFN1cnByaXNpbmdseSwgZXZlbiB0aG91Z2gg dGhlIGZvcm1hdCBvZiBzZXR1cC5pbmkgc2VlbXMgdG8gYmUKIyBwYXJhZ3Jh cGgtb3JpZW50ZWQsIGJsYW5rIGxpbmVzIGFyZSBhbGxvd2VkIHdpdGhpbiBh IHJlY29yZC4KJG5leHRfcmVjb3JkID0gPFNFVFVQPjsKd2hpbGUgKCAkbmV4 dF9yZWNvcmQgKSB7CgogICAgIyBSZWFkIHVudGlsIHRoZSBzdGFydCBvZiB0 aGUgbmV4dCByZWNvcmQKICAgICRyZWNvcmQgPSAkbmV4dF9yZWNvcmQ7CiAg ICAkbmV4dF9yZWNvcmQgPSA8U0VUVVA+OwogICAgd2hpbGUgKCAhZW9mIFNF VFVQICYmICgkbmV4dF9yZWNvcmQgIX4gbS9eQCAvKSApIHsKICAgICAgICAk cmVjb3JkID0gJHJlY29yZCAuICRuZXh0X3JlY29yZDsKICAgICAgICAkbmV4 dF9yZWNvcmQgPSA8U0VUVVA+OwogICAgfQogICAgY2hvcCAkcmVjb3JkOwoK ICAgICgkcGtnKSA9ICgkcmVjb3JkID1+IC9eQCAoLiopXG5zZGVzYzogKC4q KVxuLyk7CgogICAgIyBTcGxpdCBwYWNrYWdlIGluZm8gaW50byBjdXIsIHBy ZXYgYW5kIHRlc3Qgc2VjdGlvbnMuCiAgICAoJGN1ciwgJHByZXYpID0gc3Bs aXQgL1xuXFtwcmV2XF0vLCAkcmVjb3JkOwogICAgaWYgKCAkcHJldiApIHsK ICAgICAgICAoJHByZXYsICR0ZXN0KSA9IHNwbGl0IC9cblxbdGVzdFxdLywg JHByZXY7CiAgICB9IGVsc2UgewogICAgICAgICgkY3VyLCAkdGVzdCkgPSBz cGxpdCAvXG5cW3Rlc3RcXS8sICRyZWNvcmQ7CiAgICB9CgogICAgIyBzZGVz Y3MgY2FuIGJlIG1vcmUgdGhhbiBvbmUgbGluZSBsb25nLCBhbmQKICAgICMg YSByZWNvcmQgZG9lc24ndCBuZWVkIHRvIGhhdmUgYW4gbGRlc2MuCiAgICAo JHNkZXNjeyRwa2d9KSA9ICgkY3VyID1+IC9zZGVzYzogKC4qKVxubGRlc2Mv cyk7CiAgICAoJHNkZXNjeyRwa2d9KSA9ICgkY3VyID1+IC9zZGVzYzogKC4q KVxuLykgaWYgKCAkc2Rlc2N7JHBrZ30gZXEgIiIgKTsKICAgICgkbGRlc2N7 JHBrZ30pID0gKCRjdXIgPX4gL1xubGRlc2M6ICguKilcbmNhdGVnb3J5Oi9z KTsKICAgICgkY2F0ZWdvcnl7JHBrZ30pID0gKCRjdXIgPX4gL1xuY2F0ZWdv cnk6ICguKikvKTsKICAgICgkcmVxdWlyZXN7JHBrZ30pID0gKCRjdXIgPX4g L1xucmVxdWlyZXM6ICguKikvKTsKICAgICgkdmVyc2lvbnskcGtnfSkgPSAo JGN1ciA9fiAvXG52ZXJzaW9uOiAoLiopLyk7CiAgICAoJGluc3RhbGx7JHBr Z30pID0gKCRjdXIgPX4gL1xuaW5zdGFsbDogKC4qKS8pOwogICAgKCRzb3Vy Y2V7JHBrZ30pID0gKCRjdXIgPX4gL1xuc291cmNlOiAoLiopLyk7CiAgICBp ZiAoICRwcmV2ICkgewogICAgICAgICgkcHJldl92ZXJzaW9ueyRwa2d9KSA9 ICgkcHJldiA9fiAvXG52ZXJzaW9uOiAoLiopLyk7CiAgICAgICAgKCRwcmV2 X2luc3RhbGx7JHBrZ30pID0gKCRwcmV2ID1+IC9cbmluc3RhbGw6ICguKikv KTsKICAgICAgICAoJHByZXZfc291cmNleyRwa2d9KSA9ICgkcHJldiA9fiAv XG5zb3VyY2U6ICguKikvKTsKICAgIH0KICAgIGlmICggJHRlc3QgKSB7CiAg ICAgICAgKCR0ZXN0X3ZlcnNpb257JHBrZ30pID0gKCR0ZXN0ID1+IC9cbnZl cnNpb246ICguKikvKTsKICAgICAgICAoJHRlc3RfaW5zdGFsbHskcGtnfSkg PSAoJHRlc3QgPX4gL1xuaW5zdGFsbDogKC4qKS8pOwogICAgICAgICgkdGVz dF9zb3VyY2V7JHBrZ30pID0gKCR0ZXN0ID1+IC9cbnNvdXJjZTogKC4qKS8p OwogICAgfQp9CmNsb3NlIFNFVFVQOwpyZW5hbWUgJHNldHVwZmlsZSwgIiRz ZXR1cGZpbGUuYmFrIjsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCiMgQ3JlYXRlIGEgcGFja2FnZSBsaXN0IGZyb20gdGhlIGxpc3Qgb2Yg YmFzZSBwYWNrYWdlcyBmb3VuZCBpbiB0aGUgc2V0dXAuaW5pCiMgZmlsZSBh bmQgYWRkIHRoZSBuYW1lcyBvZiBhbGwgdGhlIHVzZXItc3BlY2lmaWVkIGV4 dHJhIHBhY2thZ2VzLgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQoKZm9yZWFjaCAkcGtnICgga2V5cyAlc2Rlc2MpIHsKICAgICRwYWNrYWdl X2xpc3R7JHBrZ30gPSAxIGlmICgkY2F0ZWdvcnl7JHBrZ30gPX4gbS9cYmJh c2VcYi9pKTsKfQoKZm9yZWFjaCAkcGtnIChAQVJHVikgewogICAgJHBhY2th Z2VfbGlzdHskcGtnfSA9IDE7Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBBZGQgdG8gdGhl IHBhY2thZ2UgbGlzdCB0aGUgbmFtZXMgb2YgYWxsIHRoZSBwYWNrYWdlcwoj IHJlcXVpcmVkIGJ5IHBhY2thZ2VzIGFscmVhZHkgaW4gdGhlIHBhY2thZ2Ug bGlzdC4KIyBSZXBlYXQgdW50aWwgdGhlIGxpc3Qgb2YgcGFja2FnZXMgZG9l c24ndCBjaGFuZ2UuCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCnVuZGVmICVwcmV2X3BhY2thZ2Vf bGlzdDsKd2hpbGUgKCAlcHJldl9wYWNrYWdlX2xpc3QgbmUgJXBhY2thZ2Vf bGlzdCApIHsKICAgICVwcmV2X3BhY2thZ2VfbGlzdCA9ICVwYWNrYWdlX2xp c3Q7CiAgICBmb3JlYWNoICRwa2cgKCBrZXlzICVwcmV2X3BhY2thZ2VfbGlz dCApIHsKICAgICAgICBmb3JlYWNoICRwICggc3BsaXQgL1xzKy8sICRyZXF1 aXJlc3skcGtnfSApIHsKICAgICAgICAgICAgJHBhY2thZ2VfbGlzdHskcH0g PSAxOwogICAgICAgIH0KICAgIH0KfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1h a2Ugb25lIG9mIHRoZSBCYXNlIHBhY2thZ2VzIGRlcGVuZGVudCBvbiBhbGwg dGhlIHBhY2thZ2VzCiMgaW4gdGhlIHBhY2thZ2UgbGlzdC4gIFRoYXQgd2F5 LCB3aGVuIHNldHVwLmV4ZSBpcyBydW4sIGFsbAojIHRoZSBwYWNrYWdlcyBp biB0aGUga2l0IGdldCBpbnN0YWxsZWQgYnkgZGVmYXVsdC4KIy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQoKJG1hc3Rlcl9wa2c9Il91cGRhdGUtaW5mby1kaXIiOwokcmVx dWlyZXN7JG1hc3Rlcl9wa2d9ID0gam9pbigiICIsIHNvcnQga2V5cyAlcGFj a2FnZV9saXN0KTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBXcml0ZSBvdXQg YSBuZXcgc2V0dXAuaW5pIGZpbGUsIGNvbXByaXNlZCBvbmx5IG9mIHRoZSBw YWNrYWdlcwojIGluIHRoZSBwYWNrYWdlIGxpc3QuCiMtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KCm9wZW4gU1RET1VULCAiPiAkc2V0dXBmaWxlIjsKcHJpbnQgJHNl dHVwX2hlYWRlcjsKZm9yZWFjaCAkcGtnIChzb3J0IGtleXMgJXBhY2thZ2Vf bGlzdCkgewogICAgcHJpbnQgIlxuQCAkcGtnXG4iOwogICAgcHJpbnQgInNk ZXNjOiAkc2Rlc2N7JHBrZ31cbiI7CiAgICBwcmludCAibGRlc2M6ICRsZGVz Y3skcGtnfVxuIiBpZiAkbGRlc2N7JHBrZ307CiAgICBwcmludCAiY2F0ZWdv cnk6ICRjYXRlZ29yeXskcGtnfVxuIiBpZiAkY2F0ZWdvcnl7JHBrZ307CiAg ICBwcmludCAicmVxdWlyZXM6ICRyZXF1aXJlc3skcGtnfVxuIiBpZiAkcmVx dWlyZXN7JHBrZ307CiAgICBwcmludCAidmVyc2lvbjogJHZlcnNpb257JHBr Z31cbiIgaWYgJHZlcnNpb257JHBrZ307CiAgICBwcmludCAiaW5zdGFsbDog JGluc3RhbGx7JHBrZ31cbiIgaWYgJGluc3RhbGx7JHBrZ307CiAgICBwcmlu dCAic291cmNlOiAkc291cmNleyRwa2d9XG4iIGlmICRzb3VyY2V7JHBrZ307 CiAgICBpZiAoICRwcmV2X3ZlcnNpb257JHBrZ30gfHwgJHByZXZfaW5zdGFs bHskcGtnfSB8fCAkcHJldl9zb3VyY2V7JHBrZ30gKSB7CiAgICAgICAgcHJp bnQgIltwcmV2XVxuIjsKICAgICAgICBwcmludCAidmVyc2lvbjogJHByZXZf dmVyc2lvbnskcGtnfVxuIiBpZiAkcHJldl92ZXJzaW9ueyRwa2d9OwogICAg ICAgIHByaW50ICJpbnN0YWxsOiAkcHJldl9pbnN0YWxseyRwa2d9XG4iIGlm ICRwcmV2X2luc3RhbGx7JHBrZ307CiAgICAgICAgcHJpbnQgInNvdXJjZTog JHByZXZfc291cmNleyRwa2d9XG4iIGlmICRwcmV2X3NvdXJjZXskcGtnfTsK ICAgIH0KICAgIGlmICggJHRlc3RfdmVyc2lvbnskcGtnfSB8fCAkdGVzdF9p bnN0YWxseyRwa2d9IHx8ICR0ZXN0X3NvdXJjZXskcGtnfSApIHsKICAgICAg ICBwcmludCAiW3Rlc3RdXG4iOwogICAgICAgIHByaW50ICJ2ZXJzaW9uOiAk dGVzdF92ZXJzaW9ueyRwa2d9XG4iIGlmICR0ZXN0X3ZlcnNpb257JHBrZ307 CiAgICAgICAgcHJpbnQgImluc3RhbGw6ICR0ZXN0X2luc3RhbGx7JHBrZ31c biIgaWYgJHRlc3RfaW5zdGFsbHskcGtnfTsKICAgICAgICBwcmludCAic291 cmNlOiAkdGVzdF9zb3VyY2V7JHBrZ31cbiIgaWYgJHRlc3Rfc291cmNleyRw a2d9OwogICAgfQp9CgojIExvY2FsIFZhcmlhYmxlczoKIyBpbmRlbnQtdGFi cy1tb2RlOiBuaWwKIyBFbmQ6Cg== ------=_Part_129366_26024035.1174339278773 Content-Type: text/plain; charset=us-ascii -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/ ------=_Part_129366_26024035.1174339278773--