Re: Fix the locale issue

2006-02-24 Thread Gary V. Vaughan
Hallo Ralf,

Ralf Wildenhues wrote:
> This patch restores the environment for mode=execute.  Unfortunately,
> it also means more overhead for every libtool invocation.  :-(
> (At least no fork&exec.)

Negligible time overhead... but an unfortunate ugliness all the same.

> OK to apply?

Yes, nice fix, thankyou!

> I think sometime post-2.0 I will want to throw out AS_SHELL_SANITIZE
> again, trade that in for AS_BOURNE_COMPATIBLE and some hand-written
> parts: most of the overhead is lost in this initialization. :(

LT_SHELL_SANITIZE eh? :-)  Agreed.

> And we really have the chance to do that portably: we can detect $unset,
> basename, and dirname and such all at configure time, not needing this
> at runtime.  And then we can go back to saving/restoring only those
> locale variables that we care about: now AS_SHELL_SANITIZE overwrites
> them all, so we _have_ to store them all.
> 
> I am thinking a bit, though, whether there is something we could get
> Autoconf to do, before their next release (so we don't have to wait
> three years until we can use features from their next but one release).

ACK.  It would be nice to push the solution back into Autoconf so that
everyone can benefit from it.

Cheers,
Gary.

>   * libltdl/config/ltmain.m4sh (startup): save all locale specific
>   environment, variables:, LANG, LANGUAGE, LC_ADDRESS, LC_ALL
>   LC_COLLATE, LC_CTYPE, LC_IDENTIFICATION, LC_MEASUREMENT,
>   LC_MESSAGES LC_MONETARY, LC_NAME, LC_NUMERIC, LC_PAPER,
>   LC_TELEPHONE, LC_TIME.
>   (func_mode_execute): Restore them.

-- 
Gary V. Vaughan  ())_.  [EMAIL PROTECTED],gnu.org}
Research Scientist   ( '/   http://tkd.kicks-ass.net
GNU Hacker   / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook


signature.asc
Description: OpenPGP digital signature


Re: PGI Compiler patch for cygwin

2006-02-24 Thread Ralf Wildenhues
* Eric Blake wrote on Fri, Feb 24, 2006 at 02:51:07PM CET:
> According to Christopher Hulbert on 2/22/2006 5:56 AM:
> > 
> > Actually it seems the problem is that a unix-style path is passed to
> > lib as the library name. This is probably not the correct fix, but
> > what I did was add the following to the func_extract_archives function
> > between the *-darwin* and * case.
> >   *-cygwin*)
> > my_xdir=`cygpath -m $my_xdir`
> > my_xabs=`cygpath -m $my_xabs`
> > func_extract_an_archive "$my_xdir" "$my_xabs"
> > ;;
> 
> Missing some proper quoting - consider if my_xabs contained something like
> '/dir with 2  spaces/file'.  Furthermore, I don't think this should this
> be done globally for cygwin because it penalizes compilers that do
> understand POSIX paths (gcc).

Certainly all uses of `cygpath' in ltmain are best replaced with uses of
the `fix_srcfile_path' variable.  We may need more variables like that,
to indicate the necessity of fixing for
- the compiler
- the archiver
- maybe even the linker separately from the compiler (hopefully not),
- possibly the name lister (NM).

Cheers,
Ralf




Re: Fix the locale issue

2006-02-24 Thread Ralf Wildenhues
Hi Gary,

* Gary V. Vaughan wrote on Thu, Feb 23, 2006 at 11:53:39PM CET:
> Ralf Wildenhues wrote:
> > This patch restores the environment for mode=execute.  Unfortunately,
> > it also means more overhead for every libtool invocation.  :-(
> > (At least no fork&exec.)
> 
> Negligible time overhead... but an unfortunate ugliness all the same.

The corresponding Autoconf code is not negligible in overhead.

> > OK to apply?
> 
> Yes, nice fix, thankyou!

Applied.  But I also added an `export $lt_var' for good measure, at the
right position.

> > I am thinking a bit, though, whether there is something we could get
> > Autoconf to do, before their next release (so we don't have to wait
> > three years until we can use features from their next but one release).
> 
> ACK.  It would be nice to push the solution back into Autoconf so that
> everyone can benefit from it.

Let's see about that.

Cheers,
Ralf

> > * libltdl/config/ltmain.m4sh (startup): save all locale specific
> > environment, variables:, LANG, LANGUAGE, LC_ADDRESS, LC_ALL
> > LC_COLLATE, LC_CTYPE, LC_IDENTIFICATION, LC_MEASUREMENT,
> > LC_MESSAGES LC_MONETARY, LC_NAME, LC_NUMERIC, LC_PAPER,
> > LC_TELEPHONE, LC_TIME.
> > (func_mode_execute): Restore them.




Re: PGI Compiler patch for cygwin

2006-02-24 Thread Eric Blake
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

According to Christopher Hulbert on 2/22/2006 5:56 AM:
> 
> Actually it seems the problem is that a unix-style path is passed to
> lib as the library name. This is probably not the correct fix, but
> what I did was add the following to the func_extract_archives function
> between the *-darwin* and * case.
>   *-cygwin*)
> my_xdir=`cygpath -m $my_xdir`
> my_xabs=`cygpath -m $my_xabs`
> func_extract_an_archive "$my_xdir" "$my_xabs"
> ;;

Missing some proper quoting - consider if my_xabs contained something like
'/dir with 2  spaces/file'.  Furthermore, I don't think this should this
be done globally for cygwin because it penalizes compilers that do
understand POSIX paths (gcc).  When using cygwin as a compilation
environment, but targetting a compiler that does not understand POSIX
paths, it is usually better to wrap the compiler inside a script that does
the command-line conversion, and use that script as the compiler.  So you
were correct that it is not the correct fix, but it is a good indication
of the problem that needs to be resolved.

- --
Life is short - so eat dessert first!

Eric Blake [EMAIL PROTECTED]
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.1 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFD/w9L84KuGfSFAYARAreSAJ951956g75zOA+4VOy1D7ejXLOX5wCgvzj0
Oz2Q8wFWaDHgHs74Bzkefs0=
=k4Ov
-END PGP SIGNATURE-




Re: PGI Compiler patch for cygwin

2006-02-24 Thread Christopher Hulbert
On 2/24/06, Eric Blake <[EMAIL PROTECTED]> wrote:
> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA1
>
> According to Christopher Hulbert on 2/22/2006 5:56 AM:
> >
> > Actually it seems the problem is that a unix-style path is passed to
> > lib as the library name. This is probably not the correct fix, but
> > what I did was add the following to the func_extract_archives function
> > between the *-darwin* and * case.
> >   *-cygwin*)
> > my_xdir=`cygpath -m $my_xdir`
> > my_xabs=`cygpath -m $my_xabs`
> > func_extract_an_archive "$my_xdir" "$my_xabs"
> > ;;
>
> Missing some proper quoting - consider if my_xabs contained something like
> '/dir with 2  spaces/file'.  Furthermore, I don't think this should this
> be done globally for cygwin because it penalizes compilers that do
> understand POSIX paths (gcc).  When using cygwin as a compilation
> environment, but targetting a compiler that does not understand POSIX
> paths, it is usually better to wrap the compiler inside a script that does
> the command-line conversion, and use that script as the compiler.  So you
> were correct that it is not the correct fix, but it is a good indication
> of the problem that needs to be resolved.

Correct, I'm not familiar enough with all the details and
repurcussions which is why I indicated it probably was not a proper
fix, but did the job for my particular case which should indicate to
the persons who do know the details to create the proper fix :)!

I don't know if I like wrapping the compiler in script or I'm not
fully understanding what you are saying.  I guess if it's transparent
to the user compiling the code it's not a big deal, but I think a
better solution would be to have a test when in the cygwin environment
for posix path acceptance.  This could easily be done by trying to
compile a simple test source file in the compiler's language where the
compile line used the absolute posix path which would either fail or
pass.

Chris

>
> - --
> Life is short - so eat dessert first!
>
> Eric Blake [EMAIL PROTECTED]
> -BEGIN PGP SIGNATURE-
> Version: GnuPG v1.4.1 (Cygwin)
> Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
> Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
>
> iD8DBQFD/w9L84KuGfSFAYARAreSAJ951956g75zOA+4VOy1D7ejXLOX5wCgvzj0
> Oz2Q8wFWaDHgHs74Bzkefs0=
> =k4Ov
> -END PGP SIGNATURE-
>




Re: PGI Compiler patch for cygwin

2006-02-24 Thread Christopher Hulbert
On 2/18/06, Ralf Wildenhues <[EMAIL PROTECTED]> wrote:
> Hi Christopher,
>
> * Christopher Hulbert wrote on Wed, Feb 15, 2006 at 04:08:33PM CET:
> > The attached patch fixes the empty wl variable and the MS toolchain
> > assumption of -link -dll.
>
> The patch is ok, could you be bothered to run the testsuite once,
> verbosely
>   make check VERBOSE=x TESTSUITE_FLAGS=-V
>   make check-local
>
> and send (packed) the output and tests/testsuite.log, so we could hash
> out any other simple issues for decent support?
>
> Thanks,
> Ralf
>


pgi_patch_testsuite.tar.bz2
Description: BZip2 compressed data