From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25020 invoked by alias); 17 Jan 2012 07:00:49 -0000 Received: (qmail 25005 invoked by uid 22791); 17 Jan 2012 07:00:47 -0000 X-SWARE-Spam-Status: No, hits=-3.0 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,RCVD_IN_DNSWL_LOW,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail-vw0-f41.google.com (HELO mail-vw0-f41.google.com) (209.85.212.41) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 17 Jan 2012 07:00:24 +0000 Received: by vbbfa15 with SMTP id fa15so1680250vbb.0 for ; Mon, 16 Jan 2012 23:00:23 -0800 (PST) Received: by 10.52.35.69 with SMTP id f5mr7542267vdj.29.1326783623830; Mon, 16 Jan 2012 23:00:23 -0800 (PST) MIME-Version: 1.0 Received: by 10.52.35.69 with SMTP id f5mr7542225vdj.29.1326783622019; Mon, 16 Jan 2012 23:00:22 -0800 (PST) Received: by 10.220.229.1 with HTTP; Mon, 16 Jan 2012 23:00:21 -0800 (PST) In-Reply-To: <4f143c53.ca3c440a.1d95.ffff9b71SMTPIN_ADDED@mx.google.com> References: <4f143c53.ca3c440a.1d95.ffff9b71SMTPIN_ADDED@mx.google.com> Date: Tue, 17 Jan 2012 09:56:00 -0000 Message-ID: Subject: Re: Possible fix for mingw32 directory relocation problems From: Doug Evans To: Pierre Muller Cc: gdb-patches@sourceware.org, Eli Zaretskii , asmwarrior@gmail.com, Tom Tromey X-System-Of-Record: true Content-Type: multipart/mixed; boundary=20cf307cfcd47bfb3304b6b3e2f2 X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2012-01/txt/msg00586.txt.bz2 --20cf307cfcd47bfb3304b6b3e2f2 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-length: 2527 On Mon, Jan 16, 2012 at 7:03 AM, Pierre Muller wrote: > =A0After some debugging, > we finally managed to find out that > mingw32 specific directory relocations are related > to msys -> mingw32 argument conversions. Thanks for the detective work! > http://sourceware.org/ml/gdb-patches/2012-01/msg00537.html > > This is explained in: > > http://www.mingw.org/wiki/Posix_path_conversion > > This page also allows to understand why > using mingw32 style paths for prefix at configure > level works and avoid the troubles encountered. > > This conversion concerns defines passed by command line arguments > to gcc, which are specific to main.o > compilation, as found in gdb/Makefile.in > 1520- > 1521:# main.o needs an explicit build rule to get TARGET_SYSTEM_ROOT and > BINDIR. > 1522-main.o: $(srcdir)/main.c > 1523: =A0 $(COMPILE) $(TARGET_SYSTEM_ROOT_DEFINE) -DBINDIR=3D\"$(bindir)\" > $(srcdir)/main.c > 1524- =A0 $(POSTCOMPILE) > 1525- > > =A0But this leads to a conversion: > =A0-DBINDIR=3D"/usr/local/bin\" > gets transformed into '-D' 'BINDIR=3D"E:/msys/mingw32/msys/1.0/local/bin"' > > =A0While other pates used in relocate_gdb_directory calls > are macros defined inside gdb/config.h > > config.h:#define DEBUGDIR "/usr/local/lib/debug" > config.h:#define GDB_DATADIR "/usr/local/share/gdb" > config.h:#define JIT_READER_DIR "/usr/local/lib/gdb" > > Those are of course not affected by msys command-line argument conversion. > > =A0The first question is: > Why do we need to pass BINDIR (and TARGET_SYSTEM_ROOT_DEFINE) > at the command line instead of inside config.h as for other > directories? We don't need to pass them on the command line. > =A0If the answer to the first question is "we don't", > then I need help about how to convert those > Makefile.in variables into new entries of generated config.h file. Possible patch is attached. Can you try it? I don't know that it will fix things, but based on what you've said it seems reasonable to try. There is an open issue that the current --with-sysroot relocatability computation is different than what GDB_AC_WITH_DIR does. We should fix that regardless. I've left that as a separate issue. [We should resolve it before checkin, but at this point I'm willing to just experiment until we know what the right fix is.] > =A0I don't have enough knowledge about autoconf scripts to > handle this... > =A0An extra bonus of this change would be that it would > render the special rule for main.o compilation unnecessary. --20cf307cfcd47bfb3304b6b3e2f2 Content-Type: application/octet-stream; name="mingw-config.patch" Content-Disposition: attachment; filename="mingw-config.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gxikoyke0 Content-length: 5267 MjAxMi0wMS0xNiAgRG91ZyBFdmFucyAgPGRqZUBzZWJhYmVhY2gub3JnPgoK CSogTWFrZWZpbGUuaW4gKFRBUkdFVF9TWVNURU1fUk9PVCwgVEFSR0VUX1NZ U1RFTV9ST09UX0RFRklORSk6IERlbGV0ZS4KCShtYWluLm8pOiBSZW1vdmUg cnVsZS4KCSogY29uZmlndXJlLmFjIChCSU5ESVIpOiBEZWZpbmUgaW4gY29u ZmlnLmguCgkoLS13aXRoLXN5c3Jvb3QpOiBEZWZpbmUgdXNpbmcgR0RCX0FD X1dJVEhfRElSLgoJKiBjb25maWd1cmU6IFJlZ2VuZXJhdGUuCgkqIGNvbmZp Zy5pbjogUmVnZW5lcmF0ZS4KCkluZGV4OiBNYWtlZmlsZS5pbgo9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3NyYy9zcmMvZ2RiL01h a2VmaWxlLmluLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjExODYKZGlmZiAt dSAtcCAtcjEuMTE4NiBNYWtlZmlsZS5pbgotLS0gTWFrZWZpbGUuaW4JMTAg SmFuIDIwMTIgMTY6MzA6NDMgLTAwMDAJMS4xMTg2CisrKyBNYWtlZmlsZS5p bgkxNyBKYW4gMjAxMiAwNjo0MjozMSAtMDAwMApAQCAtMTY2LDEwICsxNjYs NiBAQCBJTlRMID0gQExJQklOVExACiBJTlRMX0RFUFMgPSBATElCSU5UTF9E RVBACiBJTlRMX0NGTEFHUyA9IEBJTkNJTlRMQAogCi0jIERpZCB0aGUgdXNl ciBnaXZlIHVzIGEgLS13aXRoLXN5c3Jvb3Qgb3B0aW9uPwotVEFSR0VUX1NZ U1RFTV9ST09UID0gQFRBUkdFVF9TWVNURU1fUk9PVEAKLVRBUkdFVF9TWVNU RU1fUk9PVF9ERUZJTkUgPSBAVEFSR0VUX1NZU1RFTV9ST09UX0RFRklORUAK LQogIyBEaWQgdGhlIHVzZXIgZ2l2ZSB1cyBhIC0td2l0aC1nZGItZGF0YWRp ciBvcHRpb24/CiBHREJfREFUQURJUiA9IEBHREJfREFUQURJUkAKIApAQCAt MTUxOCwxMSArMTUxNCw2IEBAIEFMTERFUEZJTEVTID0gXAogIyBTb21lIGZp bGVzIG5lZWQgZXhwbGljaXQgYnVpbGQgcnVsZXMgKGR1ZSB0byAtV2Vycm9y IHByb2JsZW1zKSBvciBkdWUKICMgdG8gc3ViLWRpcmVjdG9yeSBmdW4gJ24n IGdhbWVzLgogCi0jIG1haW4ubyBuZWVkcyBhbiBleHBsaWNpdCBidWlsZCBy dWxlIHRvIGdldCBUQVJHRVRfU1lTVEVNX1JPT1QgYW5kIEJJTkRJUi4KLW1h aW4ubzogJChzcmNkaXIpL21haW4uYwotCSQoQ09NUElMRSkgJChUQVJHRVRf U1lTVEVNX1JPT1RfREVGSU5FKSAtREJJTkRJUj1cIiQoYmluZGlyKVwiICQo c3JjZGlyKS9tYWluLmMKLQkkKFBPU1RDT01QSUxFKQotCiAjIEZJWE1FOiBj YWduZXkvMjAwMy0wOC0xMDogIm1vbml0b3IuYyIgZ2V0cyAtV2Zvcm1hdC1u b25saXRlcmFsCiAjIGVycm9ycy4gIEl0IHR1cm5zIG91dCB0aGF0IHRoYXQg aXMgdGhlIGxlYXN0IG9mIG1vbml0b3IuYydzCiAjIHByb2JsZW1zLiAgVGhl IGZ1bmN0aW9uIHByaW50X3ZzcHJpbnRmIGFwcGVhcnMgdG8gYmUgdXNpbmcK SW5kZXg6IGNvbmZpZ3VyZS5hYwo9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJD UyBmaWxlOiAvY3ZzL3NyYy9zcmMvZ2RiL2NvbmZpZ3VyZS5hYyx2CnJldHJp ZXZpbmcgcmV2aXNpb24gMS4xNTIKZGlmZiAtdSAtcCAtcjEuMTUyIGNvbmZp Z3VyZS5hYwotLS0gY29uZmlndXJlLmFjCTQgSmFuIDIwMTIgMDg6MTc6MDAg LTAwMDAJMS4xNTIKKysrIGNvbmZpZ3VyZS5hYwkxNyBKYW4gMjAxMiAwNjo0 MjozMiAtMDAwMApAQCAtMTI1LDYgKzEyNSwxNCBAQCBHREJfQUNfV0lUSF9E SVIoREVCVUdESVIsIHNlcGFyYXRlLWRlYnVnCiAgICAgW2xvb2sgZm9yIGds b2JhbCBzZXBhcmF0ZSBkZWJ1ZyBpbmZvIGluIHRoaXMgcGF0aCBAPDpATElC RElSL2RlYnVnQDo+QF0sCiAgICAgWyR7bGliZGlyfS9kZWJ1Z10pCiAKKyMg V2UgY2FuJ3QgcGFzcyBwYXRocyBhcyBjb21tYW5kIGxpbmUgYXJndW1lbnRz LgorIyBNaW5ndzMyIHRyaWVzIHRvIGJlIGNsZXZlciBhbmQgd2lsbCBjb252 ZXJ0IHRoZSBwYXRocyBmb3IgdXMuCisjIEZvciBleGFtcGxlIC1EQklORElS PSIvdXNyL2xvY2FsL2JpbiIgcGFzc2VkIG9uIHRoZSBjb21tYW5kIGxpbmUg bWF5IGdldAorIyBjb252ZXJ0ZWQgdG8gIC1EQklORElSPSJFOi9tc3lzL21p bmd3MzIvbXN5cy8xLjAvbG9jYWwvYmluIi4KKyMgVGhpcyBicmVha3MgR0RC J3MgcmVsb2NhdGFibGUgcGF0aCBjb252ZXJzaW9ucyBzaW5jZSBwYXRocyBw YXNzZWQgaW4KKyMgY29uZmlnLmggZG8gbm90IGdldCBzbyB0cmFuc2xhdGVk LgorQUNfREVGSU5FX0RJUihCSU5ESVIsIGJpbmRpciwgW0RpcmVjdG9yeSBv ZiBwcm9ncmFtcy5dKQorCiAjIEdEQidzIGRhdGFkaXIgcmVsb2NhdGlvbgog CiBHREJfQUNfV0lUSF9ESVIoR0RCX0RBVEFESVIsIGdkYi1kYXRhZGlyLApA QCAtMTc1Myw0MiArMTc2MSwxMiBAQCBmaQogCiBkbmwgSGFuZGxlIG9wdGlv bmFsIGZlYXR1cmVzIHRoYXQgY2FuIGJlIGVuYWJsZWQuCiAKLXRhcmdldF9z eXNyb290X3JlbG9jPTAKLUFDX0FSR19XSVRIKHN5c3Jvb3QsCi1BU19IRUxQ X1NUUklORyhbLS13aXRoLXN5c3Jvb3RAPDpAPURJUkA6PkBdLCBbc2VhcmNo IGZvciB1c3IvbGliIGV0IGFsIHdpdGhpbiBESVJdKSwKLVsKLSBjYXNlICR7 d2l0aF9zeXNyb290fSBpbgotIHllcykgVEFSR0VUX1NZU1RFTV9ST09UPSck e2V4ZWNfcHJlZml4fS8ke3RhcmdldF9hbGlhc30vc3lzLXJvb3QnIDs7Ci0g KikgVEFSR0VUX1NZU1RFTV9ST09UPSR3aXRoX3N5c3Jvb3QgOzsKLSBlc2Fj Ci0KLSBUQVJHRVRfU1lTVEVNX1JPT1RfREVGSU5FPSctRFRBUkdFVF9TWVNU RU1fUk9PVD1cIiQoVEFSR0VUX1NZU1RFTV9ST09UKVwiJwotCi0gaWYgdGVz dCAieCRwcmVmaXgiID0geE5PTkU7IHRoZW4KLSAgdGVzdF9wcmVmaXg9L3Vz ci9sb2NhbAotIGVsc2UKLSAgdGVzdF9wcmVmaXg9JHByZWZpeAotIGZpCi0g aWYgdGVzdCAieCRleGVjX3ByZWZpeCIgPSB4Tk9ORSB8fCB0ZXN0ICJ4JGV4 ZWNfcHJlZml4IiA9ICd4JHtwcmVmaXh9JzsgdGhlbgotICB0ZXN0X2V4ZWNf cHJlZml4PSR0ZXN0X3ByZWZpeAotIGVsc2UKLSAgdGVzdF9leGVjX3ByZWZp eD0kZXhlY19wcmVmaXgKLSBmaQotIGNhc2UgJHtUQVJHRVRfU1lTVEVNX1JP T1R9IGluCi0gIiR7dGVzdF9wcmVmaXh9InwiJHt0ZXN0X3ByZWZpeH0vIip8 XAotICIke3Rlc3RfZXhlY19wcmVmaXh9InwiJHt0ZXN0X2V4ZWNfcHJlZml4 fS8iKnxcCi0gJyR7cHJlZml4fSd8JyR7cHJlZml4fS8nKnxcCi0gJyR7ZXhl Y19wcmVmaXh9J3wnJHtleGVjX3ByZWZpeH0vJyopCi0gICB0YXJnZXRfc3lz cm9vdF9yZWxvYz0xCi0gICA7OwotIGVzYWMKLV0sIFsKLSBUQVJHRVRfU1lT VEVNX1JPT1Q9Ci0gVEFSR0VUX1NZU1RFTV9ST09UX0RFRklORT0nLURUQVJH RVRfU1lTVEVNX1JPT1Q9XCJcIicKLV0pCi1UQVJHRVRfU1lTVEVNX1JPT1Rf REVGSU5FPSIkVEFSR0VUX1NZU1RFTV9ST09UX0RFRklORSAtRFRBUkdFVF9T WVNURU1fUk9PVF9SRUxPQ0FUQUJMRT0kdGFyZ2V0X3N5c3Jvb3RfcmVsb2Mi Ci1BQ19TVUJTVChUQVJHRVRfU1lTVEVNX1JPT1QpCi1BQ19TVUJTVChUQVJH RVRfU1lTVEVNX1JPT1RfREVGSU5FKQoraWYgdGVzdCAieCR3aXRoX3N5c3Jv b3QiID0geHllczsgdGhlbgorICB3aXRoX3N5c3Jvb3Q9IiR7ZXhlY19wcmVm aXh9LyR7dGFyZ2V0X2FsaWFzfS9zeXMtcm9vdCIKK2ZpCitHREJfQUNfV0lU SF9ESVIoVEFSR0VUX1NZU1RFTV9ST09ULCBzeXNyb290LAorICAgIFtzZWFy Y2ggZm9yIHVzci9saWIgZXQgYWwgd2l0aGluIFBBVEhdLAorICAgIFtdKQog CiBHREJfQUNfV0lUSF9ESVIoU1lTVEVNX0dEQklOSVQsIHN5c3RlbS1nZGJp bml0LAogICAgIFthdXRvbWF0aWNhbGx5IGxvYWQgYSBzeXN0ZW0td2lkZSBn ZGJpbml0IGZpbGVdLAo= --20cf307cfcd47bfb3304b6b3e2f2--