GNU logs - #8550, boring messages


Message sent to owner <at> debbugs.gnu.org, bug-libtool@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#8550: A libtool question (trying to compile with MS VC++ from VS 2008 SP1)
Resent-From: "Robert A. Lerche" <ral@HIDDEN>
Original-Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Resent-To: owner <at> debbugs.gnu.org
Resent-CC: bug-libtool@HIDDEN
Resent-Date: Mon, 25 Apr 2011 17:14:02 +0000
Resent-Message-ID: <handler.8550.B.130375159714093 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: report 8550
X-GNU-PR-Package: libtool
X-GNU-PR-Keywords: 
To: 8550 <at> debbugs.gnu.org
Cc: gary@HIDDEN
X-Debbugs-Original-To: bug-libtool@HIDDEN
Received: via spool by submit <at> debbugs.gnu.org id=B.130375159714093
          (code B ref -1); Mon, 25 Apr 2011 17:14:02 +0000
Received: (at submit) by debbugs.gnu.org; 25 Apr 2011 17:13:17 +0000
Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1QEPLZ-0003fG-CW
	for submit <at> debbugs.gnu.org; Mon, 25 Apr 2011 13:13:17 -0400
Received: from eggs.gnu.org ([140.186.70.92])
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <ral@HIDDEN>) id 1QEPID-0003aA-F6
	for submit <at> debbugs.gnu.org; Mon, 25 Apr 2011 13:09:51 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <ral@HIDDEN>) id 1QEPI7-0008GJ-5m
	for submit <at> debbugs.gnu.org; Mon, 25 Apr 2011 13:09:44 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD
	autolearn=unavailable version=3.3.1
Received: from lists.gnu.org ([140.186.70.17]:45974)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <ral@HIDDEN>) id 1QEPI7-0008FD-42
	for submit <at> debbugs.gnu.org; Mon, 25 Apr 2011 13:09:43 -0400
Received: from eggs.gnu.org ([140.186.70.92]:43202)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <ral@HIDDEN>) id 1QEPI5-0005py-Rz
	for bug-libtool@HIDDEN; Mon, 25 Apr 2011 13:09:43 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <ral@HIDDEN>) id 1QEPI4-0008EU-LJ
	for bug-libtool@HIDDEN; Mon, 25 Apr 2011 13:09:41 -0400
Received: from nfw.msbit.com ([64.170.147.162]:42022 helo=msbit.com)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <ral@HIDDEN>)
	id 1QEPI3-0008Al-QF; Mon, 25 Apr 2011 13:09:40 -0400
Received: from msbit.com (localhost.msbit.com [127.0.0.1])
	by msbit.com (8.12.11/8.12.11) with ESMTP id p3PIATWc031717;
	Mon, 25 Apr 2011 11:10:29 -0700 (PDT)
Received: (from daemon@localhost)
	by msbit.com (8.12.11/8.12.11/Submit) id p3PIAGNb026853;
	Mon, 25 Apr 2011 11:10:16 -0700 (PDT)
Received: from UNKNOWN(10.88.176.104), claiming to be "mercury.msbit.com"
	via SMTP by nfw.msbit.com, id smtpdn16720; Mon Apr 25 11:10:10 2011
Received: from ral by mercury.msbit.com with local (Exim 4.50)
	id 1QEPAD-00085z-W9; Mon, 25 Apr 2011 10:01:34 -0700
Mime-Version: 1.0
Content-Type: multipart/mixed;
	boundary="++----------20110425100000-074758809----------++"
Content-Transfer-Encoding: 7bit
Message-Id: <E1QEPAD-00085z-W9@HIDDEN>
From: "Robert A. Lerche" <ral@HIDDEN>
Date: Mon, 25 Apr 2011 10:01:33 -0700
X-detected-operating-system: by eggs.gnu.org: OpenBSD 3.0-3.9
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3)
X-Received-From: 140.186.70.17
X-Spam-Score: -6.0 (------)
X-Mailman-Approved-At: Mon, 25 Apr 2011 13:13:16 -0400
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.11
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/pipermail/debbugs-submit>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
X-Spam-Score: -6.0 (------)

This is a multi-part message in MIME format.
--++----------20110425100000-074758809----------++
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Hi.

I am a consultant working for a large client on a high-profile
security-related project.

[trying to build libtool-2.4 with MSVC++]

I'm trying to introduce use of open source software instead of
proprietary systems.  The particular project uses Python for the
client, with OpenSSL for secure communications and a dynamic engine to
talk to a hardware security device.

This lash-up requires engine_pkcs11 and libp11, so in turn I need
libtool.

I have been able to compile everything with "pure Microsoft" tools
*except* libtool.

During development, as a workaround, I'm using MinGW/MSYS.  This
works.  However, I'd like to eliminate that dependency (various .dll
files) if possible.

I've seen tantalizing hints of MS VC++ support in a couple of posts on
Savannah but when I try to build libtool with the MS compiler I'm
getting stuck.  I have set up a PATH that includes MSYS for the tools
but omits gcc.  This almost works.

I attach a log of the current spot where my build fails.  

Thanks for any help you can give me.

--++----------20110425100000-074758809----------++
Content-Type: application/octet-stream; name="build-libtool-2.4-log"
Content-Transfer-Encoding: base64

c2gtMy4xJCAuIC4uL25vLWdjYy1wYXRoLnNoIA0Kc2gtMy4xJCBlY2hvICRQQVRIDQovYy9tc3lz
L2JpbjovZS9NaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyA5LjAvQ29tbW9uNy9JREU6L2UvTWljcm9z
b2Z0IFZpc3VhbCBTdHVkaW8gOS4wL1ZDL0JJTjovZS9NaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyA5
LjAvQ29tbW9uNy9Ub29sczovYy9XSU5ET1dTL01pY3Jvc29mdC5ORVQvRnJhbWV3b3JrL3YzLjU6
L2MvV0lORE9XUy9NaWNyb3NvZnQuTkVUL0ZyYW1ld29yay92Mi4wLjUwNzI3Oi9lL01pY3Jvc29m
dCBWaXN1YWwgU3R1ZGlvIDkuMC9WQy9WQ1BhY2thZ2VzOi9jL1Byb2dyYW0gRmlsZXMvTWljcm9z
b2Z0IFNES3MvV2luZG93cy92Ni4wQS9iaW46L2MvV0lORE9XUy9zeXN0ZW0zMjovYy9XSU5ET1dT
Oi9jL1dJTkRPV1MvU3lzdGVtMzIvV2JlbTovYy9wcm9ncmFtIGZpbGVzL25hc206L2MvUHJvZ3Jh
bSBGaWxlcy9TbGlrU3ZuL2JpbjovYy9wZXJsL2Jpbg0Kc2gtMy4xJCBMRD0iL2UvTWljcm9zb2Z0
IFZpc3VhbCBTdHVkaW8gOS4wL1ZDL0JJTi9saW5rLmV4ZSINCnNoLTMuMSQgZXhwb3J0IExEDQpz
aC0zLjEkIC4vY29uZmlndXJlDQojIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIw0KIyMgQ29u
ZmlndXJpbmcgbGlidG9vbCAyLjQgIyMNCiMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMjDQoN
CmNoZWNraW5nIGZvciBhIEJTRC1jb21wYXRpYmxlIGluc3RhbGwuLi4gbGlibHRkbC9jb25maWcv
aW5zdGFsbC1zaCAtYw0KY2hlY2tpbmcgd2hldGhlciBidWlsZCBlbnZpcm9ubWVudCBpcyBzYW5l
Li4uIHllcw0KY2hlY2tpbmcgZm9yIGEgdGhyZWFkLXNhZmUgbWtkaXIgLXAuLi4gL2MvbXN5cy9i
aW4vbWtkaXIgLXANCmNoZWNraW5nIGZvciBnYXdrLi4uIGdhd2sNCmNoZWNraW5nIHdoZXRoZXIg
bWFrZSBzZXRzICQoTUFLRSkuLi4geWVzDQpjaGVja2luZyBidWlsZCBzeXN0ZW0gdHlwZS4uLiBp
Njg2LXBjLW1pbmd3MzINCmNoZWNraW5nIGhvc3Qgc3lzdGVtIHR5cGUuLi4gaTY4Ni1wYy1taW5n
dzMyDQpjb25maWd1cmU6IGF1dG9idWlsZCBwcm9qZWN0Li4uIEdOVSBMaWJ0b29sDQpjb25maWd1
cmU6IGF1dG9idWlsZCByZXZpc2lvbi4uLiAyLjQgKCkNCmNvbmZpZ3VyZTogYXV0b2J1aWxkIGhv
c3RuYW1lLi4uIHB5dGhvbi1kZXYNCmNvbmZpZ3VyZTogYXV0b2J1aWxkIG1vZGUuLi4gZGVmYXVs
dA0KY29uZmlndXJlOiBhdXRvYnVpbGQgdGltZXN0YW1wLi4uIDIwMTEwNDI1VDE2MTczNVoNCmNo
ZWNraW5nIGZvciBnY2MuLi4gbm8NCmNoZWNraW5nIGZvciBjYy4uLiBubw0KY2hlY2tpbmcgZm9y
IGNsLmV4ZS4uLiBjbC5leGUNCmNoZWNraW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgd29ya3Mu
Li4geWVzDQpjaGVja2luZyBmb3IgQyBjb21waWxlciBkZWZhdWx0IG91dHB1dCBmaWxlIG5hbWUu
Li4gY29uZnRlc3QuZXhlDQpjaGVja2luZyBmb3Igc3VmZml4IG9mIGV4ZWN1dGFibGVzLi4uIC5l
eGUNCmNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIGNyb3NzIGNvbXBpbGluZy4uLiBubw0KY2hlY2tp
bmcgZm9yIHN1ZmZpeCBvZiBvYmplY3QgZmlsZXMuLi4gb2JqDQpjaGVja2luZyB3aGV0aGVyIHdl
IGFyZSB1c2luZyB0aGUgR05VIEMgY29tcGlsZXIuLi4gbm8NCmNoZWNraW5nIHdoZXRoZXIgY2wu
ZXhlIGFjY2VwdHMgLWcuLi4geWVzDQpjaGVja2luZyBmb3IgY2wuZXhlIG9wdGlvbiB0byBhY2Nl
cHQgSVNPIEM4OS4uLiBub25lIG5lZWRlZA0KY2hlY2tpbmcgZm9yIHN0eWxlIG9mIGluY2x1ZGUg
dXNlZCBieSBtYWtlLi4uIEdOVQ0KY2hlY2tpbmcgZGVwZW5kZW5jeSBzdHlsZSBvZiBjbC5leGUu
Li4gbm9uZQ0KY2hlY2tpbmcgd2hldGhlciBjbC5leGUgYW5kIGNjIHVuZGVyc3RhbmQgLWMgYW5k
IC1vIHRvZ2V0aGVyLi4uIG5vDQpjaGVja2luZyBob3cgdG8gcnVuIHRoZSBDIHByZXByb2Nlc3Nv
ci4uLiAvZS9weXRob24tYWdhaW4vbGlidG9vbC0yLjQvbGlibHRkbC9jb25maWcvY29tcGlsZSBj
bC5leGUgLUUNCmNoZWNraW5nIGhvdyB0byBwcmludCBzdHJpbmdzLi4uIHByaW50Zg0KY2hlY2tp
bmcgZm9yIGEgc2VkIHRoYXQgZG9lcyBub3QgdHJ1bmNhdGUgb3V0cHV0Li4uIC9jL21zeXMvYmlu
L3NlZA0KY2hlY2tpbmcgZm9yIGdyZXAgdGhhdCBoYW5kbGVzIGxvbmcgbGluZXMgYW5kIC1lLi4u
IC9jL21zeXMvYmluL2dyZXANCmNoZWNraW5nIGZvciBlZ3JlcC4uLiAvYy9tc3lzL2Jpbi9ncmVw
IC1FDQpjaGVja2luZyBmb3IgZmdyZXAuLi4gL2MvbXN5cy9iaW4vZ3JlcCAtRg0KY2hlY2tpbmcg
Zm9yIG5vbi1HTlUgbGQuLi4gL2UvTWljcm9zb2Z0IFZpc3VhbCBTdHVkaW8gOS4wL1ZDL0JJTi9s
aW5rLmV4ZQ0KY2hlY2tpbmcgaWYgdGhlIGxpbmtlciAoL2UvTWljcm9zb2Z0IFZpc3VhbCBTdHVk
aW8gOS4wL1ZDL0JJTi9saW5rLmV4ZSkgaXMgR05VIGxkLi4uIG5vDQpjaGVja2luZyBmb3IgQlNE
LSBvciBNUy1jb21wYXRpYmxlIG5hbWUgbGlzdGVyIChubSkuLi4gbm8NCmNoZWNraW5nIGZvciBk
dW1wYmluLi4uIGR1bXBiaW4NCmNoZWNraW5nIHRoZSBuYW1lIGxpc3RlciAoZHVtcGJpbiAtc3lt
Ym9scykgaW50ZXJmYWNlLi4uIE1TIGR1bXBiaW4NCmNoZWNraW5nIHdoZXRoZXIgbG4gLXMgd29y
a3MuLi4gbm8sIHVzaW5nIGNwIC1wDQpjaGVja2luZyB0aGUgbWF4aW11bSBsZW5ndGggb2YgY29t
bWFuZCBsaW5lIGFyZ3VtZW50cy4uLiA4MTkyDQpjaGVja2luZyB3aGV0aGVyIHRoZSBzaGVsbCB1
bmRlcnN0YW5kcyBzb21lIFhTSSBjb25zdHJ1Y3RzLi4uIHllcw0KY2hlY2tpbmcgd2hldGhlciB0
aGUgc2hlbGwgdW5kZXJzdGFuZHMgIis9Ii4uLiB5ZXMNCmNoZWNraW5nIGhvdyB0byBjb252ZXJ0
IGk2ODYtcGMtbWluZ3czMiBmaWxlIG5hbWVzIHRvIGk2ODYtcGMtbWluZ3czMiBmb3JtYXQuLi4g
ZnVuY19jb252ZXJ0X2ZpbGVfbXN5c190b193MzINCmNoZWNraW5nIGhvdyB0byBjb252ZXJ0IGk2
ODYtcGMtbWluZ3czMiBmaWxlIG5hbWVzIHRvIHRvb2xjaGFpbiBmb3JtYXQuLi4gZnVuY19jb252
ZXJ0X2ZpbGVfbXN5c190b193MzINCmNoZWNraW5nIGZvciAvZS9NaWNyb3NvZnQgVmlzdWFsIFN0
dWRpbyA5LjAvVkMvQklOL2xpbmsuZXhlIG9wdGlvbiB0byByZWxvYWQgb2JqZWN0IGZpbGVzLi4u
IC1yDQpjaGVja2luZyBmb3Igb2JqZHVtcC4uLiBubw0KY2hlY2tpbmcgaG93IHRvIHJlY29nbml6
ZSBkZXBlbmRlbnQgbGlicmFyaWVzLi4uIGZpbGVfbWFnaWMgZmlsZSBmb3JtYXQgKHBlaSotaTM4
NiguKmFyY2hpdGVjdHVyZTogaTM4Nik/fHBlLWFybS13aW5jZXxwZS14ODYtNjQpDQpjaGVja2lu
ZyBmb3IgZGxsdG9vbC4uLiBubw0KY2hlY2tpbmcgaG93IHRvIGFzc29jaWF0ZSBydW50aW1lIGFu
ZCBsaW5rIGxpYnJhcmllcy4uLiBmdW5jX2N5Z21pbmdfZGxsX2Zvcl9pbXBsaWJfZmFsbGJhY2sN
CmNoZWNraW5nIGZvciBhci4uLiBubw0KY2hlY2tpbmcgZm9yIGFyY2hpdmVyIEBGSUxFIHN1cHBv
cnQuLi4gbm8NCmNoZWNraW5nIGZvciBzdHJpcC4uLiBubw0KY2hlY2tpbmcgZm9yIHJhbmxpYi4u
LiBubw0KY2hlY2tpbmcgY29tbWFuZCB0byBwYXJzZSBkdW1wYmluIC1zeW1ib2xzIG91dHB1dCBm
cm9tIC9lL3B5dGhvbi1hZ2Fpbi9saWJ0b29sLTIuNC9saWJsdGRsL2NvbmZpZy9jb21waWxlIGNs
LmV4ZSBvYmplY3QuLi4gb2sNCmNoZWNraW5nIGZvciBzeXNyb290Li4uIG5vDQpjaGVja2luZyBm
b3IgbXQuLi4gbXQNCmNoZWNraW5nIGlmIG10IGlzIGEgbWFuaWZlc3QgdG9vbC4uLiB5ZXMNCmNo
ZWNraW5nIGZvciBBTlNJIEMgaGVhZGVyIGZpbGVzLi4uIHllcw0KY2hlY2tpbmcgZm9yIHN5cy90
eXBlcy5oLi4uIHllcw0KY2hlY2tpbmcgZm9yIHN5cy9zdGF0LmguLi4geWVzDQpjaGVja2luZyBm
b3Igc3RkbGliLmguLi4geWVzDQpjaGVja2luZyBmb3Igc3RyaW5nLmguLi4geWVzDQpjaGVja2lu
ZyBmb3IgbWVtb3J5LmguLi4geWVzDQpjaGVja2luZyBmb3Igc3RyaW5ncy5oLi4uIG5vDQpjaGVj
a2luZyBmb3IgaW50dHlwZXMuaC4uLiBubw0KY2hlY2tpbmcgZm9yIHN0ZGludC5oLi4uIG5vDQpj
aGVja2luZyBmb3IgdW5pc3RkLmguLi4gbm8NCmNoZWNraW5nIGZvciBkbGZjbi5oLi4uIG5vDQpj
aGVja2luZyBmb3IgYXMuLi4gbm8NCmNoZWNraW5nIGZvciBkbGx0b29sLi4uIGZhbHNlDQpjaGVj
a2luZyBmb3Igb2JqZHVtcC4uLiBmYWxzZQ0KY2hlY2tpbmcgZm9yIG9iamRpci4uLiAubGlicw0K
Y2hlY2tpbmcgZm9yIC9lL3B5dGhvbi1hZ2Fpbi9saWJ0b29sLTIuNC9saWJsdGRsL2NvbmZpZy9j
b21waWxlIGNsLmV4ZSBvcHRpb24gdG8gcHJvZHVjZSBQSUMuLi4gLURETExfRVhQT1JUIC1EUElD
DQpjaGVja2luZyBpZiAvZS9weXRob24tYWdhaW4vbGlidG9vbC0yLjQvbGlibHRkbC9jb25maWcv
Y29tcGlsZSBjbC5leGUgUElDIGZsYWcgLURETExfRVhQT1JUIC1EUElDIHdvcmtzLi4uIHllcw0K
Y2hlY2tpbmcgaWYgL2UvcHl0aG9uLWFnYWluL2xpYnRvb2wtMi40L2xpYmx0ZGwvY29uZmlnL2Nv
bXBpbGUgY2wuZXhlIHN0YXRpYyBmbGFnICB3b3Jrcy4uLiB5ZXMNCmNoZWNraW5nIGlmIC9lL3B5
dGhvbi1hZ2Fpbi9saWJ0b29sLTIuNC9saWJsdGRsL2NvbmZpZy9jb21waWxlIGNsLmV4ZSBzdXBw
b3J0cyAtYyAtbyBmaWxlLm9iai4uLiB5ZXMNCmNoZWNraW5nIGlmIC9lL3B5dGhvbi1hZ2Fpbi9s
aWJ0b29sLTIuNC9saWJsdGRsL2NvbmZpZy9jb21waWxlIGNsLmV4ZSBzdXBwb3J0cyAtYyAtbyBm
aWxlLm9iai4uLiAoY2FjaGVkKSB5ZXMNCmNoZWNraW5nIHdoZXRoZXIgdGhlIC9lL3B5dGhvbi1h
Z2Fpbi9saWJ0b29sLTIuNC9saWJsdGRsL2NvbmZpZy9jb21waWxlIGNsLmV4ZSBsaW5rZXIgKC9l
L01pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIDkuMC9WQy9CSU4vbGluay5leGUpIHN1cHBvcnRzIHNo
YXJlZCBsaWJyYXJpZXMuLi4geWVzDQpjaGVja2luZyBkeW5hbWljIGxpbmtlciBjaGFyYWN0ZXJp
c3RpY3MuLi4gV2luMzIgbGluay5leGUNCmNoZWNraW5nIGhvdyB0byBoYXJkY29kZSBsaWJyYXJ5
IHBhdGhzIGludG8gcHJvZ3JhbXMuLi4gaW1tZWRpYXRlDQpjaGVja2luZyB3aGV0aGVyIHN0cmlw
cGluZyBsaWJyYXJpZXMgaXMgcG9zc2libGUuLi4gbm8NCmNoZWNraW5nIGlmIGxpYnRvb2wgc3Vw
cG9ydHMgc2hhcmVkIGxpYnJhcmllcy4uLiB5ZXMNCmNoZWNraW5nIHdoZXRoZXIgdG8gYnVpbGQg
c2hhcmVkIGxpYnJhcmllcy4uLiB5ZXMNCmNoZWNraW5nIHdoZXRoZXIgdG8gYnVpbGQgc3RhdGlj
IGxpYnJhcmllcy4uLiB5ZXMNCmNoZWNraW5nIHdoaWNoIGV4dGVuc2lvbiBpcyB1c2VkIGZvciBy
dW50aW1lIGxvYWRhYmxlIG1vZHVsZXMuLi4gLmRsbA0KY2hlY2tpbmcgd2hpY2ggdmFyaWFibGUg
c3BlY2lmaWVzIHJ1bi10aW1lIG1vZHVsZSBzZWFyY2ggcGF0aC4uLiBQQVRIDQpjaGVja2luZyBm
b3IgdGhlIGRlZmF1bHQgbGlicmFyeSBzZWFyY2ggcGF0aC4uLiAvbGliIC91c3IvbGliDQpjaGVj
a2luZyBmb3IgbGlicmFyeSBjb250YWluaW5nIGRsb3Blbi4uLiBubw0KY2hlY2tpbmcgZm9yIGRs
b3BlbiBpbiAtbHN2bGQuLi4gbm8NCmNoZWNraW5nIGZvciBzaGxfbG9hZC4uLiBubw0KY2hlY2tp
bmcgZm9yIHNobF9sb2FkIGluIC1sZGxkLi4uIG5vDQpjaGVja2luZyB3aGV0aGVyIGN5Z3dpbl9j
b252X3BhdGggaXMgZGVjbGFyZWQuLi4gbm8NCmNoZWNraW5nIGZvciBkbGRfbGluayBpbiAtbGRs
ZC4uLiBubw0KY2hlY2tpbmcgZm9yIF8gcHJlZml4IGluIGNvbXBpbGVkIHN5bWJvbHMuLi4geWVz
DQpjaGVja2luZyB3aGV0aGVyIGRlcGxpYnMgYXJlIGxvYWRlZCBieSBkbG9wZW4uLi4gdW5rbm93
bg0KY2hlY2tpbmcgZm9yIGFyZ3ouaC4uLiBubw0KY2hlY2tpbmcgZm9yIGVycm9yX3QuLi4gbm8N
CmNoZWNraW5nIGZvciBhcmd6X2FkZC4uLiBubw0KY2hlY2tpbmcgZm9yIGFyZ3pfYXBwZW5kLi4u
IG5vDQpjaGVja2luZyBmb3IgYXJnel9jb3VudC4uLiBubw0KY2hlY2tpbmcgZm9yIGFyZ3pfY3Jl
YXRlX3NlcC4uLiBubw0KY2hlY2tpbmcgZm9yIGFyZ3pfaW5zZXJ0Li4uIG5vDQpjaGVja2luZyBm
b3IgYXJnel9uZXh0Li4uIG5vDQpjaGVja2luZyBmb3IgYXJnel9zdHJpbmdpZnkuLi4gbm8NCmNo
ZWNraW5nIHdoZXRoZXIgbGlidG9vbCBzdXBwb3J0cyAtZGxvcGVuLy1kbHByZW9wZW4uLi4geWVz
DQpjaGVja2luZyBmb3IgdW5pc3RkLmguLi4gKGNhY2hlZCkgbm8NCmNoZWNraW5nIGZvciBkbC5o
Li4uIG5vDQpjaGVja2luZyBmb3Igc3lzL2RsLmguLi4gbm8NCmNoZWNraW5nIGZvciBkbGQuaC4u
LiBubw0KY2hlY2tpbmcgZm9yIG1hY2gtby9keWxkLmguLi4gbm8NCmNoZWNraW5nIGZvciBkaXJl
bnQuaC4uLiBubw0KY2hlY2tpbmcgZm9yIGNsb3NlZGlyLi4uIG5vDQpjaGVja2luZyBmb3Igb3Bl
bmRpci4uLiBubw0KY2hlY2tpbmcgZm9yIHJlYWRkaXIuLi4gbm8NCmNoZWNraW5nIGZvciBzdHJs
Y2F0Li4uIG5vDQpjaGVja2luZyBmb3Igc3RybGNweS4uLiBubw0KY2hlY2tpbmcgZm9yIGcrKy4u
LiBubw0KY2hlY2tpbmcgZm9yIGMrKy4uLiBubw0KY2hlY2tpbmcgZm9yIGdwcC4uLiBubw0KY2hl
Y2tpbmcgZm9yIGFDQy4uLiBubw0KY2hlY2tpbmcgZm9yIENDLi4uIG5vDQpjaGVja2luZyBmb3Ig
Y3h4Li4uIG5vDQpjaGVja2luZyBmb3IgY2MrKy4uLiBubw0KY2hlY2tpbmcgZm9yIGNsLmV4ZS4u
LiBjbC5leGUNCmNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgQysrIGNvbXBp
bGVyLi4uIG5vDQpjaGVja2luZyB3aGV0aGVyIGNsLmV4ZSBhY2NlcHRzIC1nLi4uIHllcw0KY2hl
Y2tpbmcgZGVwZW5kZW5jeSBzdHlsZSBvZiBjbC5leGUuLi4gbm9uZQ0KY2hlY2tpbmcgaG93IHRv
IHJ1biB0aGUgQysrIHByZXByb2Nlc3Nvci4uLiBjbC5leGUgLUUNCmNoZWNraW5nIHdoZXRoZXIg
dGhlIGNsLmV4ZSBsaW5rZXIgKC9lL01pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIDkuMC9WQy9CSU4v
bGluay5leGUpIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMuLi4geWVzDQpjaGVja2luZyBmb3Ig
Y2wuZXhlIG9wdGlvbiB0byBwcm9kdWNlIFBJQy4uLiAtRERMTF9FWFBPUlQgLURQSUMNCmNoZWNr
aW5nIGlmIGNsLmV4ZSBQSUMgZmxhZyAtRERMTF9FWFBPUlQgLURQSUMgd29ya3MuLi4geWVzDQpj
aGVja2luZyBpZiBjbC5leGUgc3RhdGljIGZsYWcgIHdvcmtzLi4uIHllcw0KY2hlY2tpbmcgaWYg
Y2wuZXhlIHN1cHBvcnRzIC1jIC1vIGZpbGUub2JqLi4uIG5vDQpjaGVja2luZyBpZiBjbC5leGUg
c3VwcG9ydHMgLWMgLW8gZmlsZS5vYmouLi4gKGNhY2hlZCkgbm8NCmNoZWNraW5nIHdoZXRoZXIg
dGhlIGNsLmV4ZSBsaW5rZXIgKC9lL01pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIDkuMC9WQy9CSU4v
bGluay5leGUpIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMuLi4geWVzDQpjaGVja2luZyBkeW5h
bWljIGxpbmtlciBjaGFyYWN0ZXJpc3RpY3MuLi4gV2luMzIgbGluay5leGUNCmNoZWNraW5nIGhv
dyB0byBoYXJkY29kZSBsaWJyYXJ5IHBhdGhzIGludG8gcHJvZ3JhbXMuLi4gaW1tZWRpYXRlDQpj
aGVja2luZyBmb3IgZzc3Li4uIG5vDQpjaGVja2luZyBmb3IgeGxmLi4uIG5vDQpjaGVja2luZyBm
b3IgZjc3Li4uIG5vDQpjaGVja2luZyBmb3IgZnJ0Li4uIG5vDQpjaGVja2luZyBmb3IgcGdmNzcu
Li4gbm8NCmNoZWNraW5nIGZvciBjZjc3Li4uIG5vDQpjaGVja2luZyBmb3IgZm9ydDc3Li4uIG5v
DQpjaGVja2luZyBmb3IgZmwzMi4uLiBubw0KY2hlY2tpbmcgZm9yIGFmNzcuLi4gbm8NCmNoZWNr
aW5nIGZvciB4bGY5MC4uLiBubw0KY2hlY2tpbmcgZm9yIGY5MC4uLiBubw0KY2hlY2tpbmcgZm9y
IHBnZjkwLi4uIG5vDQpjaGVja2luZyBmb3IgcGdocGYuLi4gbm8NCmNoZWNraW5nIGZvciBlcGNm
OTAuLi4gbm8NCmNoZWNraW5nIGZvciBnZm9ydHJhbi4uLiBubw0KY2hlY2tpbmcgZm9yIGc5NS4u
LiBubw0KY2hlY2tpbmcgZm9yIHhsZjk1Li4uIG5vDQpjaGVja2luZyBmb3IgZjk1Li4uIG5vDQpj
aGVja2luZyBmb3IgZm9ydC4uLiBubw0KY2hlY2tpbmcgZm9yIGlmb3J0Li4uIG5vDQpjaGVja2lu
ZyBmb3IgaWZjLi4uIG5vDQpjaGVja2luZyBmb3IgZWZjLi4uIG5vDQpjaGVja2luZyBmb3IgcGdm
b3J0cmFuLi4uIG5vDQpjaGVja2luZyBmb3IgcGdmOTUuLi4gbm8NCmNoZWNraW5nIGZvciBsZjk1
Li4uIG5vDQpjaGVja2luZyBmb3IgZnRuLi4uIG5vDQpjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1
c2luZyB0aGUgR05VIEZvcnRyYW4gNzcgY29tcGlsZXIuLi4gbm8NCmNoZWNraW5nIHdoZXRoZXIg
IGFjY2VwdHMgLWcuLi4gbm8NCmNoZWNraW5nIGZvciBnZm9ydHJhbi4uLiBubw0KY2hlY2tpbmcg
Zm9yIGc5NS4uLiBubw0KY2hlY2tpbmcgZm9yIHhsZjk1Li4uIG5vDQpjaGVja2luZyBmb3IgZjk1
Li4uIG5vDQpjaGVja2luZyBmb3IgZm9ydC4uLiBubw0KY2hlY2tpbmcgZm9yIGlmb3J0Li4uIG5v
DQpjaGVja2luZyBmb3IgaWZjLi4uIG5vDQpjaGVja2luZyBmb3IgZWZjLi4uIG5vDQpjaGVja2lu
ZyBmb3IgcGdmb3J0cmFuLi4uIG5vDQpjaGVja2luZyBmb3IgcGdmOTUuLi4gbm8NCmNoZWNraW5n
IGZvciBsZjk1Li4uIG5vDQpjaGVja2luZyBmb3IgZnRuLi4uIG5vDQpjaGVja2luZyBmb3IgeGxm
OTAuLi4gbm8NCmNoZWNraW5nIGZvciBmOTAuLi4gbm8NCmNoZWNraW5nIGZvciBwZ2Y5MC4uLiBu
bw0KY2hlY2tpbmcgZm9yIHBnaHBmLi4uIG5vDQpjaGVja2luZyBmb3IgZXBjZjkwLi4uIG5vDQpj
aGVja2luZyBmb3IgZzc3Li4uIG5vDQpjaGVja2luZyBmb3IgeGxmLi4uIG5vDQpjaGVja2luZyBm
b3IgZjc3Li4uIG5vDQpjaGVja2luZyBmb3IgZnJ0Li4uIG5vDQpjaGVja2luZyBmb3IgcGdmNzcu
Li4gbm8NCmNoZWNraW5nIGZvciBjZjc3Li4uIG5vDQpjaGVja2luZyBmb3IgZm9ydDc3Li4uIG5v
DQpjaGVja2luZyBmb3IgZmwzMi4uLiBubw0KY2hlY2tpbmcgZm9yIGFmNzcuLi4gbm8NCmNoZWNr
aW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgRm9ydHJhbiBjb21waWxlci4uLiBubw0K
Y2hlY2tpbmcgd2hldGhlciAgYWNjZXB0cyAtZy4uLiBubw0KY2hlY2tpbmcgZm9yIGdjai4uLiBu
bw0KY2hlY2tpbmcgZm9yIHdpbmRyZXMuLi4gbm8NCmNoZWNraW5nIHdoZXRoZXIgbWFrZSBzdXBw
b3J0cyBvcmRlci1vbmx5IHByZXJlcXVpc2l0ZXMuLi4geWVzDQpjb25maWd1cmU6IGNyZWF0aW5n
IC4vY29uZmlnLnN0YXR1cw0KY29uZmlnLnN0YXR1czogY3JlYXRpbmcgTWFrZWZpbGUNCmNvbmZp
Zy5zdGF0dXM6IGNyZWF0aW5nIGNvbmZpZy5oDQpjb25maWcuc3RhdHVzOiBleGVjdXRpbmcgdGVz
dHMvYXRjb25maWcgY29tbWFuZHMNCmNvbmZpZy5zdGF0dXM6IGV4ZWN1dGluZyBkZXBmaWxlcyBj
b21tYW5kcw0KY29uZmlnLnN0YXR1czogZXhlY3V0aW5nIGxpYnRvb2wgY29tbWFuZHMNCnNoLTMu
MSQgbWFrZQ0Kcm0gLWYgbGlidG9vbGl6ZS50bXAgbGlidG9vbGl6ZQ0Kc2V0IGR1bW15IGAvYmlu
L3NoIC4vbGlibHRkbC9jb25maWcvbWtzdGFtcCAuYDsgc2hpZnQ7IGNhc2UgMi40IGluICpbYWNl
Z2lrbW9xc3V3eV0pIFRJTUVTVEFNUD0iICQxICQyIiA7OyAqKSBUSU1FU1RBTVA9IiIgOzsgZXNh
YzsgXA0KCXNlZCAtZSAncyxARUdSRVBcQCwvYy9tc3lzL2Jpbi9ncmVwIC1FLGcnIC1lICdzLEBG
R1JFUFxALC9jL21zeXMvYmluL2dyZXAgLUYsZycgLWUgJ3MsQEdSRVBcQCwvYy9tc3lzL2Jpbi9n
cmVwLGcnIC1lICdzLEBMTl9TXEAsY3AgLXAsZycgLWUgJ3MsQE1BQ1JPX1ZFUlNJT05cQCwyLjQs
ZycgLWUgJ3MsQFBBQ0tBR0VcQCxsaWJ0b29sLGcnIC1lICdzLEBQQUNLQUdFX0JVR1JFUE9SVFxA
LGJ1Zy1saWJ0b29sQGdudS5vcmcsZycgLWUgJ3MsQFBBQ0tBR0VfVVJMXEAsaHR0cDovL3d3dy5n
bnUub3JnL3NvZnR3YXJlL2xpYnRvb2wvLGcnIC1lICdzLEBQQUNLQUdFX05BTUVcQCxHTlUgTGli
dG9vbCxnJyAtZSAncyxAUEFDS0FHRV9TVFJJTkdcQCxHTlUgTGlidG9vbCAyLjQsZycgLWUgJ3Ms
QFBBQ0tBR0VfVEFSTkFNRVxALGxpYnRvb2wsZycgLWUgJ3MsQFBBQ0tBR0VfVkVSU0lPTlxALDIu
NCxnJyAtZSAncyxAU0VEXEAsL2MvbXN5cy9iaW4vc2VkLGcnIC1lICdzLEBWRVJTSU9OXEAsMi40
LGcnIC1lICdzLEBhY2xvY2FsZGlyXEAsL3Vzci9sb2NhbC9zaGFyZS9hY2xvY2FsLGcnIC1lICdz
LEBkYXRhZGlyXEAsL3Vzci9sb2NhbC9zaGFyZSxnJyAtZSAncyxAcGtnZGF0YWRpclxALC91c3Iv
bG9jYWwvc2hhcmUvbGlidG9vbCxnJyAtZSAncyxAaG9zdF90cmlwbGV0XEAsaTY4Ni1wYy1taW5n
dzMyLGcnIC1lICdzLEBwcmVmaXhcQCwvdXNyL2xvY2FsLGcnIC1lICJzLEBUSU1FU1RBTVBcQCwk
VElNRVNUQU1QLGciIFwNCgkJLWUgJ3MsQGFjbG9jYWxfREFUQVxALG00L2FyZ3oubTQgbTQvbGli
dG9vbC5tNCBtNC9sdGRsLm00IG00L2x0b3B0aW9ucy5tNCBtNC9sdHN1Z2FyLm00IG00L2x0dmVy
c2lvbi5tNCBtNC9sdH5vYnNvbGV0ZS5tNCxnJyBcDQoJCS1lICJzLEBwa2dsdGRsX2ZpbGVzXEAs
bGlibHRkbC9DT1BZSU5HLkxJQiBsaWJsdGRsL1JFQURNRSBsaWJsdGRsL01ha2VmaWxlLmluYyBs
aWJsdGRsL01ha2VmaWxlLmFtIGxpYmx0ZGwvY29uZmlndXJlLmFjIGxpYmx0ZGwvYWNsb2NhbC5t
NCBsaWJsdGRsL01ha2VmaWxlLmluIGxpYmx0ZGwvY29uZmlnLWguaW4gbGlibHRkbC9jb25maWd1
cmUgbGlibHRkbC9hcmd6Xy5oIGxpYmx0ZGwvYXJnei5jIGxpYmx0ZGwvbG9hZGVycy9kbGRfbGlu
ay5jIGxpYmx0ZGwvbG9hZGVycy9kbG9wZW4uYyBsaWJsdGRsL2xvYWRlcnMvZHlsZC5jIGxpYmx0
ZGwvbG9hZGVycy9sb2FkX2FkZF9vbi5jIGxpYmx0ZGwvbG9hZGVycy9sb2FkbGlicmFyeS5jIGxp
Ymx0ZGwvbG9hZGVycy9zaGxfbG9hZC5jIGxpYmx0ZGwvbHRfX2RpcmVudC5jIGxpYmx0ZGwvbHRf
X3N0cmwuYyBsaWJsdGRsL2xpYmx0ZGwvbHRfX2FsbG9jLmggbGlibHRkbC9saWJsdGRsL2x0X19k
aXJlbnQuaCBsaWJsdGRsL2xpYmx0ZGwvbHRfX2dsaWJjLmggbGlibHRkbC9saWJsdGRsL2x0X19w
cml2YXRlLmggbGlibHRkbC9saWJsdGRsL2x0X19zdHJsLmggbGlibHRkbC9saWJsdGRsL2x0X2Rs
bG9hZGVyLmggbGlibHRkbC9saWJsdGRsL2x0X2Vycm9yLmggbGlibHRkbC9saWJsdGRsL2x0X3N5
c3RlbS5oIGxpYmx0ZGwvbGlibHRkbC9zbGlzdC5oIGxpYmx0ZGwvbG9hZGVycy9wcmVvcGVuLmMg
bGlibHRkbC9sdF9fYWxsb2MuYyBsaWJsdGRsL2x0X2RsbG9hZGVyLmMgbGlibHRkbC9sdF9lcnJv
ci5jIGxpYmx0ZGwvbHRkbC5jIGxpYmx0ZGwvbHRkbC5oIGxpYmx0ZGwvc2xpc3QuYyxnIiBcDQoJ
CS1lICJzLEBwa2djb25maWdfZmlsZXNcQCxjb25maWcvY29tcGlsZSBjb25maWcvY29uZmlnLmd1
ZXNzIGNvbmZpZy9jb25maWcuc3ViIGNvbmZpZy9kZXBjb21wIGNvbmZpZy9pbnN0YWxsLXNoIGNv
bmZpZy9taXNzaW5nIGNvbmZpZy9sdG1haW4uc2gsZyIgXA0KCQkuL2xpYnRvb2xpemUuaW4gPiBs
aWJ0b29saXplLnRtcA0KY2htb2QgYSt4IGxpYnRvb2xpemUudG1wDQpjaG1vZCBhLXcgbGlidG9v
bGl6ZS50bXANCm12IC1mIGxpYnRvb2xpemUudG1wIGxpYnRvb2xpemUNCi9iaW4vc2ggL2UvcHl0
aG9uLWFnYWluL2xpYnRvb2wtMi40L2xpYmx0ZGwvY29uZmlnL2luc3RhbGwtc2ggLWQgLiBsaWJs
dGRsLw0KY3AgLi9saWJsdGRsL2FyZ3pfLmggbGlibHRkbC9hcmd6LmgtdA0KbXYgbGlibHRkbC9h
cmd6LmgtdCBsaWJsdGRsL2FyZ3ouaA0KbWFrZSAgYWxsLXJlY3Vyc2l2ZQ0KbWFrZVsxXTogRW50
ZXJpbmcgZGlyZWN0b3J5IGAvZS9weXRob24tYWdhaW4vbGlidG9vbC0yLjQnDQptYWtlWzJdOiBF
bnRlcmluZyBkaXJlY3RvcnkgYC9lL3B5dGhvbi1hZ2Fpbi9saWJ0b29sLTIuNCcNCnNvdXJjZT0n
bGlibHRkbC9sb2FkZXJzL3ByZW9wZW4uYycgb2JqZWN0PSdsaWJsdGRsL2xvYWRlcnMvbGlibHRk
bF9saWJsdGRsX2xhLXByZW9wZW4ubG8nIGxpYnRvb2w9eWVzIFwNCglERVBESVI9LmRlcHMgZGVw
bW9kZT1ub25lIC9iaW4vc2ggLi9saWJsdGRsL2NvbmZpZy9kZXBjb21wIFwNCgkvYmluL3NoIC4v
bGlidG9vbCAgLS10YWc9Q0MgICAtLW1vZGU9Y29tcGlsZSAvZS9weXRob24tYWdhaW4vbGlidG9v
bC0yLjQvbGlibHRkbC9jb25maWcvY29tcGlsZSBjbC5leGUgLURIQVZFX0NPTkZJR19IIC1JLiAg
LURMVERMT1BFTj1sdGRsIC1ETFRfQ09ORklHX0g9Jzxjb25maWcuaD4nIC1ETFRETCAtSS4gLUku
IC1JbGlibHRkbCAtSS4vbGlibHRkbCAtSS4vbGlibHRkbC9saWJsdGRsICAgLWcgLWMgLW8gbGli
bHRkbC9sb2FkZXJzL2xpYmx0ZGxfbGlibHRkbF9sYS1wcmVvcGVuLmxvIGB0ZXN0IC1mICdsaWJs
dGRsL2xvYWRlcnMvcHJlb3Blbi5jJyB8fCBlY2hvICcuLydgbGlibHRkbC9sb2FkZXJzL3ByZW9w
ZW4uYw0KbGlidG9vbDogY29tcGlsZTogIC9lL3B5dGhvbi1hZ2Fpbi9saWJ0b29sLTIuNC9saWJs
dGRsL2NvbmZpZy9jb21waWxlIGNsLmV4ZSAtREhBVkVfQ09ORklHX0ggLUkuIC1ETFRETE9QRU49
bHRkbCAiLURMVF9DT05GSUdfSD08Y29uZmlnLmg+IiAtRExUREwgLUkuIC1JLiAtSWxpYmx0ZGwg
LUkuL2xpYmx0ZGwgLUkuL2xpYmx0ZGwvbGlibHRkbCAtZyAtYyBsaWJsdGRsL2xvYWRlcnMvcHJl
b3Blbi5jICAtRERMTF9FWFBPUlQgLURQSUMgLW8gbGlibHRkbC9sb2FkZXJzLy5saWJzL2xpYmx0
ZGxfbGlibHRkbF9sYS1wcmVvcGVuLm9iag0KTWljcm9zb2Z0IChSKSAzMi1iaXQgQy9DKysgT3B0
aW1pemluZyBDb21waWxlciBWZXJzaW9uIDE1LjAwLjMwNzI5LjAxIGZvciA4MHg4Ng0KQ29weXJp
Z2h0IChDKSBNaWNyb3NvZnQgQ29ycG9yYXRpb24uICBBbGwgcmlnaHRzIHJlc2VydmVkLg0KDQpj
bCA6IENvbW1hbmQgbGluZSB3YXJuaW5nIEQ5MDAyIDogaWdub3JpbmcgdW5rbm93biBvcHRpb24g
Jy1nJw0KcHJlb3Blbi5jDQpsaWJ0b29sOiBjb21waWxlOiAgL2UvcHl0aG9uLWFnYWluL2xpYnRv
b2wtMi40L2xpYmx0ZGwvY29uZmlnL2NvbXBpbGUgY2wuZXhlIC1ESEFWRV9DT05GSUdfSCAtSS4g
LURMVERMT1BFTj1sdGRsICItRExUX0NPTkZJR19IPTxjb25maWcuaD4iIC1ETFRETCAtSS4gLUku
IC1JbGlibHRkbCAtSS4vbGlibHRkbCAtSS4vbGlibHRkbC9saWJsdGRsIC1nIC1jIGxpYmx0ZGwv
bG9hZGVycy9wcmVvcGVuLmMgLW8gbGlibHRkbC9sb2FkZXJzL2xpYmx0ZGxfbGlibHRkbF9sYS1w
cmVvcGVuLm9iaiA+L2Rldi9udWxsIDI+JjENCnNvdXJjZT0nbGlibHRkbC9sdF9fYWxsb2MuYycg
b2JqZWN0PSdsaWJsdGRsL2xpYmx0ZGxfbGlibHRkbF9sYS1sdF9fYWxsb2MubG8nIGxpYnRvb2w9
eWVzIFwNCglERVBESVI9LmRlcHMgZGVwbW9kZT1ub25lIC9iaW4vc2ggLi9saWJsdGRsL2NvbmZp
Zy9kZXBjb21wIFwNCgkvYmluL3NoIC4vbGlidG9vbCAgLS10YWc9Q0MgICAtLW1vZGU9Y29tcGls
ZSAvZS9weXRob24tYWdhaW4vbGlidG9vbC0yLjQvbGlibHRkbC9jb25maWcvY29tcGlsZSBjbC5l
eGUgLURIQVZFX0NPTkZJR19IIC1JLiAgLURMVERMT1BFTj1sdGRsIC1ETFRfQ09ORklHX0g9Jzxj
b25maWcuaD4nIC1ETFRETCAtSS4gLUkuIC1JbGlibHRkbCAtSS4vbGlibHRkbCAtSS4vbGlibHRk
bC9saWJsdGRsICAgLWcgLWMgLW8gbGlibHRkbC9saWJsdGRsX2xpYmx0ZGxfbGEtbHRfX2FsbG9j
LmxvIGB0ZXN0IC1mICdsaWJsdGRsL2x0X19hbGxvYy5jJyB8fCBlY2hvICcuLydgbGlibHRkbC9s
dF9fYWxsb2MuYw0KbGlidG9vbDogY29tcGlsZTogIC9lL3B5dGhvbi1hZ2Fpbi9saWJ0b29sLTIu
NC9saWJsdGRsL2NvbmZpZy9jb21waWxlIGNsLmV4ZSAtREhBVkVfQ09ORklHX0ggLUkuIC1ETFRE
TE9QRU49bHRkbCAiLURMVF9DT05GSUdfSD08Y29uZmlnLmg+IiAtRExUREwgLUkuIC1JLiAtSWxp
Ymx0ZGwgLUkuL2xpYmx0ZGwgLUkuL2xpYmx0ZGwvbGlibHRkbCAtZyAtYyBsaWJsdGRsL2x0X19h
bGxvYy5jICAtRERMTF9FWFBPUlQgLURQSUMgLW8gbGlibHRkbC8ubGlicy9saWJsdGRsX2xpYmx0
ZGxfbGEtbHRfX2FsbG9jLm9iag0KTWljcm9zb2Z0IChSKSAzMi1iaXQgQy9DKysgT3B0aW1pemlu
ZyBDb21waWxlciBWZXJzaW9uIDE1LjAwLjMwNzI5LjAxIGZvciA4MHg4Ng0KQ29weXJpZ2h0IChD
KSBNaWNyb3NvZnQgQ29ycG9yYXRpb24uICBBbGwgcmlnaHRzIHJlc2VydmVkLg0KDQpjbCA6IENv
bW1hbmQgbGluZSB3YXJuaW5nIEQ5MDAyIDogaWdub3JpbmcgdW5rbm93biBvcHRpb24gJy1nJw0K
bHRfX2FsbG9jLmMNCmxpYnRvb2w6IGNvbXBpbGU6ICAvZS9weXRob24tYWdhaW4vbGlidG9vbC0y
LjQvbGlibHRkbC9jb25maWcvY29tcGlsZSBjbC5leGUgLURIQVZFX0NPTkZJR19IIC1JLiAtRExU
RExPUEVOPWx0ZGwgIi1ETFRfQ09ORklHX0g9PGNvbmZpZy5oPiIgLURMVERMIC1JLiAtSS4gLUls
aWJsdGRsIC1JLi9saWJsdGRsIC1JLi9saWJsdGRsL2xpYmx0ZGwgLWcgLWMgbGlibHRkbC9sdF9f
YWxsb2MuYyAtbyBsaWJsdGRsL2xpYmx0ZGxfbGlibHRkbF9sYS1sdF9fYWxsb2Mub2JqID4vZGV2
L251bGwgMj4mMQ0Kc291cmNlPSdsaWJsdGRsL2x0X2RsbG9hZGVyLmMnIG9iamVjdD0nbGlibHRk
bC9saWJsdGRsX2xpYmx0ZGxfbGEtbHRfZGxsb2FkZXIubG8nIGxpYnRvb2w9eWVzIFwNCglERVBE
SVI9LmRlcHMgZGVwbW9kZT1ub25lIC9iaW4vc2ggLi9saWJsdGRsL2NvbmZpZy9kZXBjb21wIFwN
CgkvYmluL3NoIC4vbGlidG9vbCAgLS10YWc9Q0MgICAtLW1vZGU9Y29tcGlsZSAvZS9weXRob24t
YWdhaW4vbGlidG9vbC0yLjQvbGlibHRkbC9jb25maWcvY29tcGlsZSBjbC5leGUgLURIQVZFX0NP
TkZJR19IIC1JLiAgLURMVERMT1BFTj1sdGRsIC1ETFRfQ09ORklHX0g9Jzxjb25maWcuaD4nIC1E
TFRETCAtSS4gLUkuIC1JbGlibHRkbCAtSS4vbGlibHRkbCAtSS4vbGlibHRkbC9saWJsdGRsICAg
LWcgLWMgLW8gbGlibHRkbC9saWJsdGRsX2xpYmx0ZGxfbGEtbHRfZGxsb2FkZXIubG8gYHRlc3Qg
LWYgJ2xpYmx0ZGwvbHRfZGxsb2FkZXIuYycgfHwgZWNobyAnLi8nYGxpYmx0ZGwvbHRfZGxsb2Fk
ZXIuYw0KbGlidG9vbDogY29tcGlsZTogIC9lL3B5dGhvbi1hZ2Fpbi9saWJ0b29sLTIuNC9saWJs
dGRsL2NvbmZpZy9jb21waWxlIGNsLmV4ZSAtREhBVkVfQ09ORklHX0ggLUkuIC1ETFRETE9QRU49
bHRkbCAiLURMVF9DT05GSUdfSD08Y29uZmlnLmg+IiAtRExUREwgLUkuIC1JLiAtSWxpYmx0ZGwg
LUkuL2xpYmx0ZGwgLUkuL2xpYmx0ZGwvbGlibHRkbCAtZyAtYyBsaWJsdGRsL2x0X2RsbG9hZGVy
LmMgIC1ERExMX0VYUE9SVCAtRFBJQyAtbyBsaWJsdGRsLy5saWJzL2xpYmx0ZGxfbGlibHRkbF9s
YS1sdF9kbGxvYWRlci5vYmoNCk1pY3Jvc29mdCAoUikgMzItYml0IEMvQysrIE9wdGltaXppbmcg
Q29tcGlsZXIgVmVyc2lvbiAxNS4wMC4zMDcyOS4wMSBmb3IgODB4ODYNCkNvcHlyaWdodCAoQykg
TWljcm9zb2Z0IENvcnBvcmF0aW9uLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4NCg0KY2wgOiBDb21t
YW5kIGxpbmUgd2FybmluZyBEOTAwMiA6IGlnbm9yaW5nIHVua25vd24gb3B0aW9uICctZycNCmx0
X2RsbG9hZGVyLmMNCmxpYnRvb2w6IGNvbXBpbGU6ICAvZS9weXRob24tYWdhaW4vbGlidG9vbC0y
LjQvbGlibHRkbC9jb25maWcvY29tcGlsZSBjbC5leGUgLURIQVZFX0NPTkZJR19IIC1JLiAtRExU
RExPUEVOPWx0ZGwgIi1ETFRfQ09ORklHX0g9PGNvbmZpZy5oPiIgLURMVERMIC1JLiAtSS4gLUls
aWJsdGRsIC1JLi9saWJsdGRsIC1JLi9saWJsdGRsL2xpYmx0ZGwgLWcgLWMgbGlibHRkbC9sdF9k
bGxvYWRlci5jIC1vIGxpYmx0ZGwvbGlibHRkbF9saWJsdGRsX2xhLWx0X2RsbG9hZGVyLm9iaiA+
L2Rldi9udWxsIDI+JjENCnNvdXJjZT0nbGlibHRkbC9sdF9lcnJvci5jJyBvYmplY3Q9J2xpYmx0
ZGwvbGlibHRkbF9saWJsdGRsX2xhLWx0X2Vycm9yLmxvJyBsaWJ0b29sPXllcyBcDQoJREVQRElS
PS5kZXBzIGRlcG1vZGU9bm9uZSAvYmluL3NoIC4vbGlibHRkbC9jb25maWcvZGVwY29tcCBcDQoJ
L2Jpbi9zaCAuL2xpYnRvb2wgIC0tdGFnPUNDICAgLS1tb2RlPWNvbXBpbGUgL2UvcHl0aG9uLWFn
YWluL2xpYnRvb2wtMi40L2xpYmx0ZGwvY29uZmlnL2NvbXBpbGUgY2wuZXhlIC1ESEFWRV9DT05G
SUdfSCAtSS4gIC1ETFRETE9QRU49bHRkbCAtRExUX0NPTkZJR19IPSc8Y29uZmlnLmg+JyAtRExU
REwgLUkuIC1JLiAtSWxpYmx0ZGwgLUkuL2xpYmx0ZGwgLUkuL2xpYmx0ZGwvbGlibHRkbCAgIC1n
IC1jIC1vIGxpYmx0ZGwvbGlibHRkbF9saWJsdGRsX2xhLWx0X2Vycm9yLmxvIGB0ZXN0IC1mICds
aWJsdGRsL2x0X2Vycm9yLmMnIHx8IGVjaG8gJy4vJ2BsaWJsdGRsL2x0X2Vycm9yLmMNCmxpYnRv
b2w6IGNvbXBpbGU6ICAvZS9weXRob24tYWdhaW4vbGlidG9vbC0yLjQvbGlibHRkbC9jb25maWcv
Y29tcGlsZSBjbC5leGUgLURIQVZFX0NPTkZJR19IIC1JLiAtRExURExPUEVOPWx0ZGwgIi1ETFRf
Q09ORklHX0g9PGNvbmZpZy5oPiIgLURMVERMIC1JLiAtSS4gLUlsaWJsdGRsIC1JLi9saWJsdGRs
IC1JLi9saWJsdGRsL2xpYmx0ZGwgLWcgLWMgbGlibHRkbC9sdF9lcnJvci5jICAtRERMTF9FWFBP
UlQgLURQSUMgLW8gbGlibHRkbC8ubGlicy9saWJsdGRsX2xpYmx0ZGxfbGEtbHRfZXJyb3Iub2Jq
DQpNaWNyb3NvZnQgKFIpIDMyLWJpdCBDL0MrKyBPcHRpbWl6aW5nIENvbXBpbGVyIFZlcnNpb24g
MTUuMDAuMzA3MjkuMDEgZm9yIDgweDg2DQpDb3B5cmlnaHQgKEMpIE1pY3Jvc29mdCBDb3Jwb3Jh
dGlvbi4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQoNCmNsIDogQ29tbWFuZCBsaW5lIHdhcm5pbmcg
RDkwMDIgOiBpZ25vcmluZyB1bmtub3duIG9wdGlvbiAnLWcnDQpsdF9lcnJvci5jDQpsaWJsdGRs
L2x0X2Vycm9yLmMoNTUpIDogd2FybmluZyBDNDA5MDogJ2Z1bmN0aW9uJyA6IGRpZmZlcmVudCAn
Y29uc3QnIHF1YWxpZmllcnMNCmxpYnRvb2w6IGNvbXBpbGU6ICAvZS9weXRob24tYWdhaW4vbGli
dG9vbC0yLjQvbGlibHRkbC9jb25maWcvY29tcGlsZSBjbC5leGUgLURIQVZFX0NPTkZJR19IIC1J
LiAtRExURExPUEVOPWx0ZGwgIi1ETFRfQ09ORklHX0g9PGNvbmZpZy5oPiIgLURMVERMIC1JLiAt
SS4gLUlsaWJsdGRsIC1JLi9saWJsdGRsIC1JLi9saWJsdGRsL2xpYmx0ZGwgLWcgLWMgbGlibHRk
bC9sdF9lcnJvci5jIC1vIGxpYmx0ZGwvbGlibHRkbF9saWJsdGRsX2xhLWx0X2Vycm9yLm9iaiA+
L2Rldi9udWxsIDI+JjENCnNvdXJjZT0nbGlibHRkbC9sdGRsLmMnIG9iamVjdD0nbGlibHRkbC9s
aWJsdGRsX2xpYmx0ZGxfbGEtbHRkbC5sbycgbGlidG9vbD15ZXMgXA0KCURFUERJUj0uZGVwcyBk
ZXBtb2RlPW5vbmUgL2Jpbi9zaCAuL2xpYmx0ZGwvY29uZmlnL2RlcGNvbXAgXA0KCS9iaW4vc2gg
Li9saWJ0b29sICAtLXRhZz1DQyAgIC0tbW9kZT1jb21waWxlIC9lL3B5dGhvbi1hZ2Fpbi9saWJ0
b29sLTIuNC9saWJsdGRsL2NvbmZpZy9jb21waWxlIGNsLmV4ZSAtREhBVkVfQ09ORklHX0ggLUku
ICAtRExURExPUEVOPWx0ZGwgLURMVF9DT05GSUdfSD0nPGNvbmZpZy5oPicgLURMVERMIC1JLiAt
SS4gLUlsaWJsdGRsIC1JLi9saWJsdGRsIC1JLi9saWJsdGRsL2xpYmx0ZGwgICAtZyAtYyAtbyBs
aWJsdGRsL2xpYmx0ZGxfbGlibHRkbF9sYS1sdGRsLmxvIGB0ZXN0IC1mICdsaWJsdGRsL2x0ZGwu
YycgfHwgZWNobyAnLi8nYGxpYmx0ZGwvbHRkbC5jDQpsaWJ0b29sOiBjb21waWxlOiAgL2UvcHl0
aG9uLWFnYWluL2xpYnRvb2wtMi40L2xpYmx0ZGwvY29uZmlnL2NvbXBpbGUgY2wuZXhlIC1ESEFW
RV9DT05GSUdfSCAtSS4gLURMVERMT1BFTj1sdGRsICItRExUX0NPTkZJR19IPTxjb25maWcuaD4i
IC1ETFRETCAtSS4gLUkuIC1JbGlibHRkbCAtSS4vbGlibHRkbCAtSS4vbGlibHRkbC9saWJsdGRs
IC1nIC1jIGxpYmx0ZGwvbHRkbC5jICAtRERMTF9FWFBPUlQgLURQSUMgLW8gbGlibHRkbC8ubGli
cy9saWJsdGRsX2xpYmx0ZGxfbGEtbHRkbC5vYmoNCk1pY3Jvc29mdCAoUikgMzItYml0IEMvQysr
IE9wdGltaXppbmcgQ29tcGlsZXIgVmVyc2lvbiAxNS4wMC4zMDcyOS4wMSBmb3IgODB4ODYNCkNv
cHlyaWdodCAoQykgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4N
Cg0KY2wgOiBDb21tYW5kIGxpbmUgd2FybmluZyBEOTAwMiA6IGlnbm9yaW5nIHVua25vd24gb3B0
aW9uICctZycNCmx0ZGwuYw0KbGlidG9vbDogY29tcGlsZTogIC9lL3B5dGhvbi1hZ2Fpbi9saWJ0
b29sLTIuNC9saWJsdGRsL2NvbmZpZy9jb21waWxlIGNsLmV4ZSAtREhBVkVfQ09ORklHX0ggLUku
IC1ETFRETE9QRU49bHRkbCAiLURMVF9DT05GSUdfSD08Y29uZmlnLmg+IiAtRExUREwgLUkuIC1J
LiAtSWxpYmx0ZGwgLUkuL2xpYmx0ZGwgLUkuL2xpYmx0ZGwvbGlibHRkbCAtZyAtYyBsaWJsdGRs
L2x0ZGwuYyAtbyBsaWJsdGRsL2xpYmx0ZGxfbGlibHRkbF9sYS1sdGRsLm9iaiA+L2Rldi9udWxs
IDI+JjENCnNvdXJjZT0nbGlibHRkbC9zbGlzdC5jJyBvYmplY3Q9J2xpYmx0ZGwvbGlibHRkbF9s
aWJsdGRsX2xhLXNsaXN0LmxvJyBsaWJ0b29sPXllcyBcDQoJREVQRElSPS5kZXBzIGRlcG1vZGU9
bm9uZSAvYmluL3NoIC4vbGlibHRkbC9jb25maWcvZGVwY29tcCBcDQoJL2Jpbi9zaCAuL2xpYnRv
b2wgIC0tdGFnPUNDICAgLS1tb2RlPWNvbXBpbGUgL2UvcHl0aG9uLWFnYWluL2xpYnRvb2wtMi40
L2xpYmx0ZGwvY29uZmlnL2NvbXBpbGUgY2wuZXhlIC1ESEFWRV9DT05GSUdfSCAtSS4gIC1ETFRE
TE9QRU49bHRkbCAtRExUX0NPTkZJR19IPSc8Y29uZmlnLmg+JyAtRExUREwgLUkuIC1JLiAtSWxp
Ymx0ZGwgLUkuL2xpYmx0ZGwgLUkuL2xpYmx0ZGwvbGlibHRkbCAgIC1nIC1jIC1vIGxpYmx0ZGwv
bGlibHRkbF9saWJsdGRsX2xhLXNsaXN0LmxvIGB0ZXN0IC1mICdsaWJsdGRsL3NsaXN0LmMnIHx8
IGVjaG8gJy4vJ2BsaWJsdGRsL3NsaXN0LmMNCmxpYnRvb2w6IGNvbXBpbGU6ICAvZS9weXRob24t
YWdhaW4vbGlidG9vbC0yLjQvbGlibHRkbC9jb25maWcvY29tcGlsZSBjbC5leGUgLURIQVZFX0NP
TkZJR19IIC1JLiAtRExURExPUEVOPWx0ZGwgIi1ETFRfQ09ORklHX0g9PGNvbmZpZy5oPiIgLURM
VERMIC1JLiAtSS4gLUlsaWJsdGRsIC1JLi9saWJsdGRsIC1JLi9saWJsdGRsL2xpYmx0ZGwgLWcg
LWMgbGlibHRkbC9zbGlzdC5jICAtRERMTF9FWFBPUlQgLURQSUMgLW8gbGlibHRkbC8ubGlicy9s
aWJsdGRsX2xpYmx0ZGxfbGEtc2xpc3Qub2JqDQpNaWNyb3NvZnQgKFIpIDMyLWJpdCBDL0MrKyBP
cHRpbWl6aW5nIENvbXBpbGVyIFZlcnNpb24gMTUuMDAuMzA3MjkuMDEgZm9yIDgweDg2DQpDb3B5
cmlnaHQgKEMpIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQoN
CmNsIDogQ29tbWFuZCBsaW5lIHdhcm5pbmcgRDkwMDIgOiBpZ25vcmluZyB1bmtub3duIG9wdGlv
biAnLWcnDQpzbGlzdC5jDQpsaWJ0b29sOiBjb21waWxlOiAgL2UvcHl0aG9uLWFnYWluL2xpYnRv
b2wtMi40L2xpYmx0ZGwvY29uZmlnL2NvbXBpbGUgY2wuZXhlIC1ESEFWRV9DT05GSUdfSCAtSS4g
LURMVERMT1BFTj1sdGRsICItRExUX0NPTkZJR19IPTxjb25maWcuaD4iIC1ETFRETCAtSS4gLUku
IC1JbGlibHRkbCAtSS4vbGlibHRkbCAtSS4vbGlibHRkbC9saWJsdGRsIC1nIC1jIGxpYmx0ZGwv
c2xpc3QuYyAtbyBsaWJsdGRsL2xpYmx0ZGxfbGlibHRkbF9sYS1zbGlzdC5vYmogPi9kZXYvbnVs
bCAyPiYxDQpzb3VyY2U9J2xpYmx0ZGwvbG9hZGVycy9sb2FkbGlicmFyeS5jJyBvYmplY3Q9J2xp
Ymx0ZGwvbG9hZGVycy9sb2FkbGlicmFyeS5sbycgbGlidG9vbD15ZXMgXA0KCURFUERJUj0uZGVw
cyBkZXBtb2RlPW5vbmUgL2Jpbi9zaCAuL2xpYmx0ZGwvY29uZmlnL2RlcGNvbXAgXA0KCS9iaW4v
c2ggLi9saWJ0b29sIC0tdGFnPUNDICAgLS1tb2RlPWNvbXBpbGUgL2UvcHl0aG9uLWFnYWluL2xp
YnRvb2wtMi40L2xpYmx0ZGwvY29uZmlnL2NvbXBpbGUgY2wuZXhlIC1ESEFWRV9DT05GSUdfSCAt
SS4gIC1ETFRfQ09ORklHX0g9Jzxjb25maWcuaD4nIC1ETFRETCAtSS4gLUkuIC1JbGlibHRkbCAt
SS4vbGlibHRkbCAtSS4vbGlibHRkbC9saWJsdGRsICAgLWcgLWMgLW8gbGlibHRkbC9sb2FkZXJz
L2xvYWRsaWJyYXJ5LmxvIGxpYmx0ZGwvbG9hZGVycy9sb2FkbGlicmFyeS5jDQpsaWJ0b29sOiBj
b21waWxlOiAgL2UvcHl0aG9uLWFnYWluL2xpYnRvb2wtMi40L2xpYmx0ZGwvY29uZmlnL2NvbXBp
bGUgY2wuZXhlIC1ESEFWRV9DT05GSUdfSCAtSS4gIi1ETFRfQ09ORklHX0g9PGNvbmZpZy5oPiIg
LURMVERMIC1JLiAtSS4gLUlsaWJsdGRsIC1JLi9saWJsdGRsIC1JLi9saWJsdGRsL2xpYmx0ZGwg
LWcgLWMgbGlibHRkbC9sb2FkZXJzL2xvYWRsaWJyYXJ5LmMgIC1ERExMX0VYUE9SVCAtRFBJQyAt
byBsaWJsdGRsL2xvYWRlcnMvLmxpYnMvbG9hZGxpYnJhcnkub2JqDQpNaWNyb3NvZnQgKFIpIDMy
LWJpdCBDL0MrKyBPcHRpbWl6aW5nIENvbXBpbGVyIFZlcnNpb24gMTUuMDAuMzA3MjkuMDEgZm9y
IDgweDg2DQpDb3B5cmlnaHQgKEMpIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gIEFsbCByaWdodHMg
cmVzZXJ2ZWQuDQoNCmNsIDogQ29tbWFuZCBsaW5lIHdhcm5pbmcgRDkwMDIgOiBpZ25vcmluZyB1
bmtub3duIG9wdGlvbiAnLWcnDQpsb2FkbGlicmFyeS5jDQpsaWJ0b29sOiBjb21waWxlOiAgL2Uv
cHl0aG9uLWFnYWluL2xpYnRvb2wtMi40L2xpYmx0ZGwvY29uZmlnL2NvbXBpbGUgY2wuZXhlIC1E
SEFWRV9DT05GSUdfSCAtSS4gIi1ETFRfQ09ORklHX0g9PGNvbmZpZy5oPiIgLURMVERMIC1JLiAt
SS4gLUlsaWJsdGRsIC1JLi9saWJsdGRsIC1JLi9saWJsdGRsL2xpYmx0ZGwgLWcgLWMgbGlibHRk
bC9sb2FkZXJzL2xvYWRsaWJyYXJ5LmMgLW8gbGlibHRkbC9sb2FkZXJzL2xvYWRsaWJyYXJ5Lm9i
aiA+L2Rldi9udWxsIDI+JjENCi9iaW4vc2ggLi9saWJ0b29sIC0tdGFnPUNDICAgLS1tb2RlPWxp
bmsgL2UvcHl0aG9uLWFnYWluL2xpYnRvb2wtMi40L2xpYmx0ZGwvY29uZmlnL2NvbXBpbGUgY2wu
ZXhlICAtZyAtbW9kdWxlIC1hdm9pZC12ZXJzaW9uICAtbyBsaWJsdGRsL2xvYWRsaWJyYXJ5Lmxh
ICBsaWJsdGRsL2xvYWRlcnMvbG9hZGxpYnJhcnkubG8gIA0KbGlidG9vbDogbGluazogZmFsc2Ug
Y3J1IGxpYmx0ZGwvLmxpYnMvbG9hZGxpYnJhcnkubGliIGxpYmx0ZGwvbG9hZGVycy8ubGlicy9s
b2FkbGlicmFyeS5vYmogDQptYWtlWzJdOiAqKiogW2xpYmx0ZGwvbG9hZGxpYnJhcnkubGFdIEVy
cm9yIDENCm1ha2VbMl06IExlYXZpbmcgZGlyZWN0b3J5IGAvZS9weXRob24tYWdhaW4vbGlidG9v
bC0yLjQnDQptYWtlWzFdOiAqKiogW2FsbC1yZWN1cnNpdmVdIEVycm9yIDENCm1ha2VbMV06IExl
YXZpbmcgZGlyZWN0b3J5IGAvZS9weXRob24tYWdhaW4vbGlidG9vbC0yLjQnDQptYWtlOiAqKiog
W2FsbF0gRXJyb3IgMg0Kc2gtMy4xJCA=
--++----------20110425100000-074758809----------++--




Message sent:


Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Mailer: MIME-tools 5.427 (Entity 5.427)
Content-Type: text/plain; charset=utf-8
X-Loop: help-debbugs@HIDDEN
From: help-debbugs@HIDDEN (GNU bug Tracking System)
To: "Robert A. Lerche" <ral@HIDDEN>
Subject: bug#8550: Acknowledgement (A libtool question (trying to compile
 with MS VC++ from VS 2008 SP1))
Message-ID: <handler.8550.B.130375159714093.ack <at> debbugs.gnu.org>
References: <E1QEPAD-00085z-W9@HIDDEN>
X-Gnu-PR-Message: ack 8550
X-Gnu-PR-Package: libtool
Reply-To: 8550 <at> debbugs.gnu.org
Date: Mon, 25 Apr 2011 17:14:02 +0000

Thank you for filing a new bug report with GNU.

This is an automatically generated reply to let you know your message
has been received.

Your message is being forwarded to the package maintainers and other
interested parties for their attention; they will reply in due course.

Your message has been sent to the package maintainer(s):
 bug-libtool@HIDDEN

If you wish to submit further information on this problem, please
send it to 8550 <at> debbugs.gnu.org.

Please do not send mail to help-debbugs@HIDDEN unless you wish
to report a problem with the Bug-tracking system.

--=20
8550: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D8550
GNU Bug Tracking System
Contact help-debbugs@HIDDEN with problems


Message sent to owner <at> debbugs.gnu.org, bug-libtool@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#8550: A libtool question (trying to compile with MS VC++ from VS	2008 SP1)
Resent-From: Peter Rosin <peda@HIDDEN>
Original-Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Resent-To: owner <at> debbugs.gnu.org
Resent-CC: bug-libtool@HIDDEN
Resent-Date: Tue, 26 Apr 2011 08:36:02 +0000
Resent-Message-ID: <handler.8550.B.130380694831126 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 8550
X-GNU-PR-Package: libtool
X-GNU-PR-Keywords: 
To: bug-libtool@HIDDEN
Received: via spool by submit <at> debbugs.gnu.org id=B.130380694831126
          (code B ref -1); Tue, 26 Apr 2011 08:36:02 +0000
Received: (at submit) by debbugs.gnu.org; 26 Apr 2011 08:35:48 +0000
Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1QEdkJ-00085z-1n
	for submit <at> debbugs.gnu.org; Tue, 26 Apr 2011 04:35:47 -0400
Received: from eggs.gnu.org ([140.186.70.92])
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <peda@HIDDEN>) id 1QEdkH-00085h-FX
	for submit <at> debbugs.gnu.org; Tue, 26 Apr 2011 04:35:46 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <peda@HIDDEN>) id 1QEdkA-0001gn-Sd
	for submit <at> debbugs.gnu.org; Tue, 26 Apr 2011 04:35:40 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD
	autolearn=unavailable version=3.3.1
Received: from lists.gnu.org ([140.186.70.17]:54511)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <peda@HIDDEN>) id 1QEdkA-0001gj-R0
	for submit <at> debbugs.gnu.org; Tue, 26 Apr 2011 04:35:38 -0400
Received: from eggs.gnu.org ([140.186.70.92]:33801)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <peda@HIDDEN>) id 1QEdk9-0007WL-74
	for bug-libtool@HIDDEN; Tue, 26 Apr 2011 04:35:38 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <peda@HIDDEN>) id 1QEdk7-0001fy-Gw
	for bug-libtool@HIDDEN; Tue, 26 Apr 2011 04:35:37 -0400
Received: from mail.lysator.liu.se ([130.236.254.3]:36136)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <peda@HIDDEN>) id 1QEdk7-0001fp-5x
	for bug-libtool@HIDDEN; Tue, 26 Apr 2011 04:35:35 -0400
Received: from mail.lysator.liu.se (localhost [127.0.0.1])
	by mail.lysator.liu.se (Postfix) with ESMTP id A96BA40027
	for <bug-libtool@HIDDEN>; Tue, 26 Apr 2011 10:35:31 +0200 (CEST)
Received: from [192.168.0.33] (h57n3fls301o1095.telia.com [81.230.178.57])
	(using TLSv1 with cipher AES256-SHA (256/256 bits))
	(No client certificate requested)
	by mail.lysator.liu.se (Postfix) with ESMTPSA id 76F4F40008
	for <bug-libtool@HIDDEN>; Tue, 26 Apr 2011 10:35:31 +0200 (CEST)
Message-ID: <4DB683D1.9030709@HIDDEN>
Date: Tue, 26 Apr 2011 10:35:29 +0200
From: Peter Rosin <peda@HIDDEN>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
	rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9
MIME-Version: 1.0
References: <E1QEPAD-00085z-W9@HIDDEN>
In-Reply-To: <E1QEPAD-00085z-W9@HIDDEN>
Content-Type: multipart/mixed; boundary="------------040102020006010505060803"
X-Virus-Scanned: ClamAV using ClamSMTP
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2)
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3)
X-Received-From: 140.186.70.17
X-Spam-Score: -4.6 (----)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.11
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/pipermail/debbugs-submit>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
X-Spam-Score: -4.9 (----)

This is a multi-part message in MIME format.
--------------040102020006010505060803
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

Hi Robert,

Den 2011-04-25 19:01 skrev Robert A. Lerche:
> Hi.
> 
> I am a consultant working for a large client on a high-profile
> security-related project.
> 
> [trying to build libtool-2.4 with MSVC++]
> 
> I'm trying to introduce use of open source software instead of
> proprietary systems.  The particular project uses Python for the
> client, with OpenSSL for secure communications and a dynamic engine to
> talk to a hardware security device.
> 
> This lash-up requires engine_pkcs11 and libp11, so in turn I need
> libtool.
> 
> I have been able to compile everything with "pure Microsoft" tools
> *except* libtool.
> 
> During development, as a workaround, I'm using MinGW/MSYS.  This
> works.  However, I'd like to eliminate that dependency (various .dll
> files) if possible.
> 
> I've seen tantalizing hints of MS VC++ support in a couple of posts on
> Savannah but when I try to build libtool with the MS compiler I'm
> getting stuck.  I have set up a PATH that includes MSYS for the tools
> but omits gcc.  This almost works.
> 
> I attach a log of the current spot where my build fails.  
> 
> Thanks for any help you can give me.

I see one piece missing piece, and that is the archiver which isn't
autodetected by autotools (yet, a patch has been suggested, but it is
pending review, or something). The MS archiver (lib.exe) isn't anything like
a POSIX archiver (ar), so you need a wrapper for it. I suggest the ar-lib
wrapper included in Automake. However, there's no released version of
Automake that supplies it (yet), so I have attached it here for your
convenience.

I use it like this: .../configure AR="/path/to/ar-lib lib", but you may also
export AR if you like that better.

I think that should be it.

Cheers,
Peter

--------------040102020006010505060803
Content-Type: text/plain;
 name="ar-lib"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="ar-lib"

#! /bin/sh
# Wrapper for Microsoft lib.exe

me=ar-lib
scriptversion=2010-09-02.19; # UTC

# Copyright (C) 2010 Free Software
# Foundation, Inc.
# Written by Peter Rosin <peda@HIDDEN>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.

# This file is maintained in Automake, please report
# bugs to <bug-automake@HIDDEN> or send patches to
# <automake-patches@HIDDEN>.


# func_error message
func_error ()
{
  echo "$me: $1" 1>&2
  exit 1
}

file_conv=

# func_file_conv build_file
# Convert a $build file to $host form and store it in $file
# Currently only supports Win32 hosts.
func_file_conv ()
{
  file=$1
  case $file in
    / | /[!/]*) # absolute file, and not a UNC file
      if test -z "$file_conv"; then
	# lazily determine how to convert abs files
	case `uname -s` in
	  MINGW*)
	    file_conv=mingw
	    ;;
	  CYGWIN*)
	    file_conv=cygwin
	    ;;
	  *)
	    file_conv=wine
	    ;;
	esac
      fi
      case $file_conv in
	mingw)
	  file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
	  ;;
	cygwin)
	  file=`cygpath -m "$file" || echo "$file"`
	  ;;
	wine)
	  file=`winepath -w "$file" || echo "$file"`
	  ;;
      esac
      ;;
  esac
}

# func_at_file at_file operation archive
# Iterate over all members in AT_FILE performing OPERATION on ARCHIVE
# for each of them.
# When interpreting the content of the @FILE, do NOT use func_file_conv,
# since the user would need to supply preconverted file names to
# binutils ar, at least for MinGW.
func_at_file ()
{
  operation=$2
  archive=$3
  at_file_contents=`cat "$1"`
  eval set x "$at_file_contents"
  shift

  for member
  do
    $AR -NOLOGO $operation:"$member" "$archive" || exit $?
  done
}

case $1 in
  '')
     func_error "no command.  Try \`$0 --help' for more information."
     ;;
  -h | --h*)
    cat <<EOF
Usage: $me [--help] [--version] PROGRAM ACTION ARCHIVE [MEMBER...]

Members may be specified in a file named with @FILE.
EOF
    exit $?
    ;;
  -v | --v*)
    echo "$me, version $scriptversion"
    exit $?
    ;;
esac

if test $# -lt 3; then
  func_error "you must specify a program, an action and an archive"
fi

AR=$1
shift
while :
do
  if test $# -lt 2; then
    func_error "you must specify a program, an action and an archive"
  fi
  case $1 in
    -lib | -LIB \
    | -ltcg | -LTCG \
    | -machine* | -MACHINE* \
    | -subsystem* | -SUBSYSTEM* \
    | -verbose | -VERBOSE \
    | -wx* | -WX* )
      AR="$AR $1"
      shift
      ;;
    *)
      action=$1
      shift
      break
      ;;
  esac
done
orig_archive=$1
shift
func_file_conv "$orig_archive"
archive=$file

# strip leading dash in $action
action=${action#-}

delete=
extract=
list=
replace=
create=

while test -n "$action"
do
  case $action in
    d*) delete=yes  ;;
    x*) extract=yes ;;
    t*) list=yes    ;;
    r*) replace=yes ;;
    c*) create=yes  ;;
    u*)             ;; # TODO: don't ignore the update modifier
    *)
      func_error "unknown action specified"
      ;;
  esac
  action=${action#?}
done

case $delete$extract$list$replace in
  yes)
    ;;
  yesyes*)
    func_error "more than one action specified"
    ;;
  *)
    func_error "no action specified"
    ;;
esac

if test -n "$delete"; then
  if test ! -f "$orig_archive"; then
    func_error "archive not found"
  fi
  for member
  do
    case $1 in
      @*)
        func_at_file "${1#@}" -REMOVE "$archive"
        ;;
      *)
        func_file_conv "$1"
        $AR -NOLOGO -REMOVE:"$file" "$archive" || exit $?
        ;;
    esac
  done

elif test -n "$extract"; then
  if test ! -f "$orig_archive"; then
    func_error "archive not found"
  fi
  if test $# -gt 0; then
    for member
    do
      case $1 in
        @*)
          func_at_file "${1#@}" -EXTRACT "$archive"
          ;;
        *)
          func_file_conv "$1"
          $AR -NOLOGO -EXTRACT:"$file" "$archive" || exit $?
          ;;
      esac
    done
  else
    $AR -NOLOGO -LIST "$archive" | sed -e 's/\\/\\\\/g' | while read member
    do
      $AR -NOLOGO -EXTRACT:"$member" "$archive" || exit $?
    done
  fi

elif test -n "$replace"; then
  if test ! -f "$orig_archive"; then
    if test -z "$create"; then
      echo "$me: creating $orig_archive"
    fi
    orig_archive=
  else
    orig_archive=$archive
  fi

  for member
  do
    case $1 in
    @*)
      func_file_conv "${1#@}"
      set x "$@" "@$file"
      ;;
    *)
      func_file_conv "$1"
      set x "$@" "$file"
      ;;
    esac
    shift
    shift
  done

  if test -n "$orig_archive"; then
    $AR -NOLOGO -OUT:"$archive" "$orig_archive" "$@" || exit $?
  else
    $AR -NOLOGO -OUT:"$archive" "$@" || exit $?
  fi

elif test -n "$list"; then
  if test ! -f "$orig_archive"; then
    func_error "archive not found"
  fi
  $AR -NOLOGO -LIST "$archive" || exit $?
fi

--------------040102020006010505060803--




Message sent to owner <at> debbugs.gnu.org, bug-libtool@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#8550: A libtool question (trying to compile with MS VC++ from VS 2008 SP1)
References: <E1QEPAD-00085z-W9@HIDDEN>
In-Reply-To: <E1QEPAD-00085z-W9@HIDDEN>
Resent-From: Peter Rosin <peda@HIDDEN>
Original-Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Resent-To: owner <at> debbugs.gnu.org
Resent-CC: bug-libtool@HIDDEN
Resent-Date: Tue, 26 Apr 2011 19:11:02 +0000
Resent-Message-ID: <handler.8550.B8550.130384506128731 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 8550
X-GNU-PR-Package: libtool
X-GNU-PR-Keywords: 
To: 8550 <at> debbugs.gnu.org
Cc: "Robert A. Lerche" <ral@HIDDEN>
Received: via spool by 8550-submit <at> debbugs.gnu.org id=B8550.130384506128731
          (code B ref 8550); Tue, 26 Apr 2011 19:11:02 +0000
Received: (at 8550) by debbugs.gnu.org; 26 Apr 2011 19:11:01 +0000
Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1QEnf2-0007TL-LJ
	for submit <at> debbugs.gnu.org; Tue, 26 Apr 2011 15:11:01 -0400
Received: from mail.lysator.liu.se ([130.236.254.3])
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <peda@HIDDEN>) id 1QEney-0007T5-8r
	for 8550 <at> debbugs.gnu.org; Tue, 26 Apr 2011 15:10:57 -0400
Received: from mail.lysator.liu.se (localhost [127.0.0.1])
	by mail.lysator.liu.se (Postfix) with ESMTP id 5E34A40008;
	Tue, 26 Apr 2011 21:10:50 +0200 (CEST)
Received: from [192.168.0.33] (h57n3fls301o1095.telia.com [81.230.178.57])
	(using TLSv1 with cipher AES256-SHA (256/256 bits))
	(No client certificate requested)
	by mail.lysator.liu.se (Postfix) with ESMTPSA id 1E63D40003;
	Tue, 26 Apr 2011 21:10:49 +0200 (CEST)
Message-ID: <4DB718B9.3000603@HIDDEN>
Date: Tue, 26 Apr 2011 21:10:49 +0200
From: Peter Rosin <peda@HIDDEN>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
	rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="------------060908000300080502030107"
X-Virus-Scanned: ClamAV using ClamSMTP
X-Spam-Score: -3.1 (---)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.11
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/pipermail/debbugs-submit>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
X-Spam-Score: -3.0 (---)

This is a multi-part message in MIME format.
--------------060908000300080502030107
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

[Forwarding this (sightly edited) to debbugs and Robert, the reporter]

Hi Robert,

Den 2011-04-25 19:01 skrev Robert A. Lerche:
> Hi.
> 
> I am a consultant working for a large client on a high-profile
> security-related project.
> 
> [trying to build libtool-2.4 with MSVC++]
> 
> I'm trying to introduce use of open source software instead of
> proprietary systems.  The particular project uses Python for the
> client, with OpenSSL for secure communications and a dynamic engine to
> talk to a hardware security device.
> 
> This lash-up requires engine_pkcs11 and libp11, so in turn I need
> libtool.
> 
> I have been able to compile everything with "pure Microsoft" tools
> *except* libtool.
> 
> During development, as a workaround, I'm using MinGW/MSYS.  This
> works.  However, I'd like to eliminate that dependency (various .dll
> files) if possible.
> 
> I've seen tantalizing hints of MS VC++ support in a couple of posts on
> Savannah but when I try to build libtool with the MS compiler I'm
> getting stuck.  I have set up a PATH that includes MSYS for the tools
> but omits gcc.  This almost works.
> 
> I attach a log of the current spot where my build fails.  
> 
> Thanks for any help you can give me.

I see one missing piece, and that is the archiver, which isn't
autodetected by autotools (yet, a patch has been suggested, but it is
pending review, or something). The MS archiver (lib.exe) isn't anything like
a POSIX archiver (ar), so you need a wrapper for it. I suggest the ar-lib
wrapper included in Automake. However, there's no released version of
Automake that supplies it (yet), so I have attached it here for your
convenience.

I use it like this: .../configure AR="/path/to/ar-lib lib", but you may also
export AR if you like that better.

I think that should be it.

Cheers,
Peter


--------------060908000300080502030107
Content-Type: text/plain;
 name="ar-lib"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="ar-lib"

#! /bin/sh
# Wrapper for Microsoft lib.exe

me=ar-lib
scriptversion=2010-09-02.19; # UTC

# Copyright (C) 2010 Free Software
# Foundation, Inc.
# Written by Peter Rosin <peda@HIDDEN>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.

# This file is maintained in Automake, please report
# bugs to <bug-automake@HIDDEN> or send patches to
# <automake-patches@HIDDEN>.


# func_error message
func_error ()
{
  echo "$me: $1" 1>&2
  exit 1
}

file_conv=

# func_file_conv build_file
# Convert a $build file to $host form and store it in $file
# Currently only supports Win32 hosts.
func_file_conv ()
{
  file=$1
  case $file in
    / | /[!/]*) # absolute file, and not a UNC file
      if test -z "$file_conv"; then
	# lazily determine how to convert abs files
	case `uname -s` in
	  MINGW*)
	    file_conv=mingw
	    ;;
	  CYGWIN*)
	    file_conv=cygwin
	    ;;
	  *)
	    file_conv=wine
	    ;;
	esac
      fi
      case $file_conv in
	mingw)
	  file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
	  ;;
	cygwin)
	  file=`cygpath -m "$file" || echo "$file"`
	  ;;
	wine)
	  file=`winepath -w "$file" || echo "$file"`
	  ;;
      esac
      ;;
  esac
}

# func_at_file at_file operation archive
# Iterate over all members in AT_FILE performing OPERATION on ARCHIVE
# for each of them.
# When interpreting the content of the @FILE, do NOT use func_file_conv,
# since the user would need to supply preconverted file names to
# binutils ar, at least for MinGW.
func_at_file ()
{
  operation=$2
  archive=$3
  at_file_contents=`cat "$1"`
  eval set x "$at_file_contents"
  shift

  for member
  do
    $AR -NOLOGO $operation:"$member" "$archive" || exit $?
  done
}

case $1 in
  '')
     func_error "no command.  Try \`$0 --help' for more information."
     ;;
  -h | --h*)
    cat <<EOF
Usage: $me [--help] [--version] PROGRAM ACTION ARCHIVE [MEMBER...]

Members may be specified in a file named with @FILE.
EOF
    exit $?
    ;;
  -v | --v*)
    echo "$me, version $scriptversion"
    exit $?
    ;;
esac

if test $# -lt 3; then
  func_error "you must specify a program, an action and an archive"
fi

AR=$1
shift
while :
do
  if test $# -lt 2; then
    func_error "you must specify a program, an action and an archive"
  fi
  case $1 in
    -lib | -LIB \
    | -ltcg | -LTCG \
    | -machine* | -MACHINE* \
    | -subsystem* | -SUBSYSTEM* \
    | -verbose | -VERBOSE \
    | -wx* | -WX* )
      AR="$AR $1"
      shift
      ;;
    *)
      action=$1
      shift
      break
      ;;
  esac
done
orig_archive=$1
shift
func_file_conv "$orig_archive"
archive=$file

# strip leading dash in $action
action=${action#-}

delete=
extract=
list=
replace=
create=

while test -n "$action"
do
  case $action in
    d*) delete=yes  ;;
    x*) extract=yes ;;
    t*) list=yes    ;;
    r*) replace=yes ;;
    c*) create=yes  ;;
    u*)             ;; # TODO: don't ignore the update modifier
    *)
      func_error "unknown action specified"
      ;;
  esac
  action=${action#?}
done

case $delete$extract$list$replace in
  yes)
    ;;
  yesyes*)
    func_error "more than one action specified"
    ;;
  *)
    func_error "no action specified"
    ;;
esac

if test -n "$delete"; then
  if test ! -f "$orig_archive"; then
    func_error "archive not found"
  fi
  for member
  do
    case $1 in
      @*)
        func_at_file "${1#@}" -REMOVE "$archive"
        ;;
      *)
        func_file_conv "$1"
        $AR -NOLOGO -REMOVE:"$file" "$archive" || exit $?
        ;;
    esac
  done

elif test -n "$extract"; then
  if test ! -f "$orig_archive"; then
    func_error "archive not found"
  fi
  if test $# -gt 0; then
    for member
    do
      case $1 in
        @*)
          func_at_file "${1#@}" -EXTRACT "$archive"
          ;;
        *)
          func_file_conv "$1"
          $AR -NOLOGO -EXTRACT:"$file" "$archive" || exit $?
          ;;
      esac
    done
  else
    $AR -NOLOGO -LIST "$archive" | sed -e 's/\\/\\\\/g' | while read member
    do
      $AR -NOLOGO -EXTRACT:"$member" "$archive" || exit $?
    done
  fi

elif test -n "$replace"; then
  if test ! -f "$orig_archive"; then
    if test -z "$create"; then
      echo "$me: creating $orig_archive"
    fi
    orig_archive=
  else
    orig_archive=$archive
  fi

  for member
  do
    case $1 in
    @*)
      func_file_conv "${1#@}"
      set x "$@" "@$file"
      ;;
    *)
      func_file_conv "$1"
      set x "$@" "$file"
      ;;
    esac
    shift
    shift
  done

  if test -n "$orig_archive"; then
    $AR -NOLOGO -OUT:"$archive" "$orig_archive" "$@" || exit $?
  else
    $AR -NOLOGO -OUT:"$archive" "$@" || exit $?
  fi

elif test -n "$list"; then
  if test ! -f "$orig_archive"; then
    func_error "archive not found"
  fi
  $AR -NOLOGO -LIST "$archive" || exit $?
fi


--------------060908000300080502030107--




Message sent to owner <at> debbugs.gnu.org, bug-libtool@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#8550: solved! [... compile with MS VC++ from VS 2008 SP1 ]
In-Reply-To: <E1QEPAD-00085z-W9@HIDDEN>
Resent-From: "Robert A. Lerche" <ral@HIDDEN>
Original-Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Resent-To: owner <at> debbugs.gnu.org
Resent-CC: bug-libtool@HIDDEN
Resent-Date: Mon, 02 May 2011 19:18:01 +0000
Resent-Message-ID: <handler.8550.B.13043638242784 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 8550
X-GNU-PR-Package: libtool
X-GNU-PR-Keywords: 
To: bug-libtool@HIDDEN
Cc: Peter Rosin <peda@HIDDEN>
Received: via spool by submit <at> debbugs.gnu.org id=B.13043638242784
          (code B ref -1); Mon, 02 May 2011 19:18:01 +0000
Received: (at submit) by debbugs.gnu.org; 2 May 2011 19:17:04 +0000
Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1QGycC-0000ir-BT
	for submit <at> debbugs.gnu.org; Mon, 02 May 2011 15:17:04 -0400
Received: from eggs.gnu.org ([140.186.70.92])
	by debbugs.gnu.org with esmtp (Exim 4.69)
	(envelope-from <ral@HIDDEN>) id 1QGyc9-0000iB-0X
	for submit <at> debbugs.gnu.org; Mon, 02 May 2011 15:17:03 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <ral@HIDDEN>) id 1QGyc3-0003Sc-4y
	for submit <at> debbugs.gnu.org; Mon, 02 May 2011 15:16:55 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD
	autolearn=unavailable version=3.3.1
Received: from lists.gnu.org ([140.186.70.17]:42938)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <ral@HIDDEN>) id 1QGyc3-0003SY-3N
	for submit <at> debbugs.gnu.org; Mon, 02 May 2011 15:16:55 -0400
Received: from eggs.gnu.org ([140.186.70.92]:41640)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <ral@HIDDEN>) id 1QGyc2-0006eE-Ea
	for bug-libtool@HIDDEN; Mon, 02 May 2011 15:16:55 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <ral@HIDDEN>) id 1QGyc1-0003S8-D1
	for bug-libtool@HIDDEN; Mon, 02 May 2011 15:16:54 -0400
Received: from nfw.msbit.com ([64.170.147.162]:42648 helo=msbit.com)
	by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <ral@HIDDEN>) id 1QGyc1-0003RC-39
	for bug-libtool@HIDDEN; Mon, 02 May 2011 15:16:53 -0400
Received: from msbit.com (localhost.msbit.com [127.0.0.1])
	by msbit.com (8.12.11/8.12.11) with ESMTP id p42KI6M9008018;
	Mon, 2 May 2011 13:18:06 -0700 (PDT)
Received: (from daemon@localhost)
	by msbit.com (8.12.11/8.12.11/Submit) id p42KHo6u031851;
	Mon, 2 May 2011 13:17:50 -0700 (PDT)
Received: from UNKNOWN(10.88.176.104), claiming to be "mercury.msbit.com"
	via SMTP by nfw.msbit.com, id smtpdM15391; Mon May  2 13:17:40 2011
Received: from ral by mercury.msbit.com with local (Exim 4.50)
	id 1QGySz-0007Ex-6l; Mon, 02 May 2011 12:07:33 -0700
References: <E1QEmlo-0000ie-KN@HIDDEN>
	<4DB71756.5020209@HIDDEN>
Message-Id: <E1QGySz-0007Ex-6l@HIDDEN>
From: "Robert A. Lerche" <ral@HIDDEN>
Date: Mon, 02 May 2011 12:07:33 -0700
X-detected-operating-system: by eggs.gnu.org: OpenBSD 3.0-3.9
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3)
X-Received-From: 140.186.70.17
X-Spam-Score: -6.0 (------)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.11
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/pipermail/debbugs-submit>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
	<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
X-Spam-Score: -6.0 (------)

My thanks to Peter Rosin.  The "ar-lib" script worked perfectly.

Not only did this allow me to compile libtool with MS Visual C++, in
turn it also solved another problem for me (a .dll incompatibility
that resulted in a crash in another module under Windows 7).

Open source proves its worth yet again.





Last modified: Mon, 25 Nov 2019 12:00:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.