Re: cyg/lib DLL naming

2005-06-17 Thread Peiva Jan
  As AGO pointed out, searching for libfreetype.dll is non-portable,
  dangerous, and silly.

 Not me, who is doing that, but one large SW open-source library.
 Therefore it is clear, that it have to link with other libraries in the
 system that it is using.

 Right, but that doesn't make the current approach any less dangerous,
 non-portable, or silly. [...]

I see, we have different opinions in this point. But I am not interested in
discussion about them.

 A rejoinder question, though: if you're buidling a native Win32
 application, why not use the native build of freetype as well?

Good point. But the things behind are more complex and avoiding to use this, so
I will not write about them.

There is only one thing I have to mention and what agrees with your words:
In final release of my app, the freetype should be included, just to avoid
problems with other dlls.

John


Re: cyg/lib DLL naming

2005-06-16 Thread Peiva Jan
 As AGO pointed out, searching for libfreetype.dll is non-portable,
 dangerous, and silly.

Not me, who is doing that, but one large SW open-source library. Therefore it is
clear, that it have to link with other libraries in the system that it is using.

Things turned in to the OS ideas. And I am not interrested in them, I want to
simply fix the incompatibility between Coin library and Cygwin. Coin library is
important for us, because we are using it for visualization on our university
(we are not the authors of the library).

 I think, you are missing the point. This compatibility library breaks the
 compatibility with non-cygwin world (see the previous discussion).

 No, I believe *you* are missing the point. [...]

:-)

If I skip all offensive words, I have to thank you for the discussion.

Let me give you the last question:
If I understand it correctly, I can not link with cygwin based DLLs without a
special handling code. Am I true?

John


Re: cyg/lib DLL naming

2005-06-16 Thread Igor Pechtchanski
On Thu, 16 Jun 2005, Peciva Jan wrote:

  As AGO pointed out, searching for libfreetype.dll is non-portable,
  dangerous, and silly.

 Not me, who is doing that, but one large SW open-source library.
 Therefore it is clear, that it have to link with other libraries in the
 system that it is using.

Right, but that doesn't make the current approach any less dangerous,
non-portable, or silly.  You may want to contact the authors of Coin and
let the know about this bug in their code.

 Things turned in to the OS ideas. And I am not interrested in them, I
 want to simply fix the incompatibility between Coin library and Cygwin.

Not quite.  These are dynamic loading ideas.  Building a bridge DLL is
hardly an OS-level thing.

However, I can see your problem, as the code to look up the freetype DLL
is probably hard-wired into Coin, and there isn't much you can do about
it.  As you mentioned, you could use some nasty workarounds (like
providing your own stub libfreetype.dll in your application directory,
which should be found first, and which links to the appropriate freetype
DLL), but eventually Coin should be fixed.

 Coin library is important for us, because we are using it for
 visualization on our university (we are not the authors of the library).

  I think, you are missing the point. This compatibility library breaks the
  compatibility with non-cygwin world (see the previous discussion).
 
  No, I believe *you* are missing the point. [...]

 :-)

 If I skip all offensive words, I have to thank you for the discussion.

You're welcome.  However, my profanity filter is overheating while trying
to find any offensive words in my previous message.  Would you mind
letting me know what they were, so that I could add them to the filter?

Or do you mean If I skip all offensive words that come to mind? :-)

 Let me give you the last question:
 If I understand it correctly, I can not link with cygwin based DLLs
 without a special handling code. Am I true?

In this context (linking from a pure Win32 application), yes, you need to
put some initialization code in (with the latest snapshot, that is).

A rejoinder question, though: if you're buidling a native Win32
application, why not use the native build of freetype as well?
Igor
-- 
http://cs.nyu.edu/~pechtcha/
  |\  _,,,---,,_[EMAIL PROTECTED]
ZZZzz /,`.-'`'-.  ;-;;,_[EMAIL PROTECTED]
 |,4-  ) )-,_. ,\ (  `'-'   Igor Pechtchanski, Ph.D.
'---''(_/--'  `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

The Sun will pass between the Earth and the Moon tonight for a total
Lunar eclipse... -- WCBS Radio Newsbrief, Oct 27 2004, 12:01 pm EDT


Re: cyg/lib DLL naming

2005-06-15 Thread Peiva Jan
  our cross-platform application is working on Linux and Windows but
  not on Cygwin when X are installed. The problem has been tracked down
  and as a result: What is the reason for naming
  /usr/X11R6/bin/libfreetype.dll and not cygfreetype.dll ?
 
  This is an old library from the XFree86-dll-compat package and the
  package is only required by program which have not been updated to the
  naming structure which is used for over year now.

 Thanks for the response. I am glad that cyg prefix is planned to be used
 everywhere. However, can you give me some hints when will be the package
 or the DLL probably removed?

 Why do you care?  It's a *compatibility* library, there for *old*
 executables. If you link with freetype now, the new DLLs should be used
 automatically.

I think, you are missing the point. This compatibility library breaks the
compatibility with non-cygwin world (see the previous discussion). Therefore,
I was asking, WHY is it prefixed lib* and not cyg* and WHEN will it be
removed to get this bug fixed.

Anyway, I know, that it may take some time to get the things happen.
I should probably consider some nasty workarounds.

John



Re: cyg/lib DLL naming

2005-06-15 Thread Alexander Gottwald
On Tue, 14 Jun 2005, [iso-8859-2] Pe?iva Jan wrote:

 Thanks for the response. I am glad that cyg prefix is planned to be used
 everywhere. However, can you give me some hints when will be the package or 
 the
 DLL probably removed?

When no other package has a dependency on XFree86-lib-compat. Currently TeXmacs
has.

bye
ago 
-- 
 [EMAIL PROTECTED] 
 http://www.gotti.org   ICQ: 126018723


Re: cyg/lib DLL naming

2005-06-15 Thread Alexander Gottwald
On Wed, 15 Jun 2005, [iso-8859-2] Pe?iva Jan wrote:

 I think, you are missing the point. This compatibility library breaks the
 compatibility with non-cygwin world (see the previous discussion). Therefore,
 I was asking, WHY is it prefixed lib* and not cyg* and WHEN will it be
 removed to get this bug fixed.

This is not a cygwin bug. Searching for libfreetype.dll somewhere on the 
system causes unpredictable results (btw: I could name a trojan libfreetype.dll
place it somewhere in $PATH and your program would just execute it).

Either uninstall the XFree86-lib-compat package, wait for its disappearance or 
ask the application provider to fix this.

bye
ago
-- 
 [EMAIL PROTECTED] 
 http://www.gotti.org   ICQ: 126018723


Re: cyg/lib DLL naming

2005-06-15 Thread Igor Pechtchanski
On Wed, 15 Jun 2005, Peciva Jan wrote:

   our cross-platform application is working on Linux and Windows but
   not on Cygwin when X are installed. The problem has been tracked down
   and as a result: What is the reason for naming
   /usr/X11R6/bin/libfreetype.dll and not cygfreetype.dll ?
  
   This is an old library from the XFree86-dll-compat package and the
   package is only required by program which have not been updated to the
   naming structure which is used for over year now.
 
  Thanks for the response. I am glad that cyg prefix is planned to be used
  everywhere. However, can you give me some hints when will be the package
  or the DLL probably removed?
 
  Why do you care?  It's a *compatibility* library, there for *old*
  executables. If you link with freetype now, the new DLLs should be used
  automatically.

 I think, you are missing the point. This compatibility library breaks the
 compatibility with non-cygwin world (see the previous discussion).

No, I believe *you* are missing the point.  As AGO pointed out, searching
for libfreetype.dll is non-portable, dangerous, and silly.  If you wish to
use freetype, why not link with an appropriate import library and let it
pick up the known DLL?  If you want to do this conditionally, you could
even create a bridge DLL, and load *that* via the dlopen() calls.

 Therefore, I was asking, WHY is it prefixed lib* and not cyg*

Because that was the convention the maintainer chose at the time.

 and WHEN will it be removed to get this bug fixed.

Probably never.  Again, *this is not a bug*.  If this breaks your
application, it's a bug in your application, which is non-portable and
will need to be fixed.

 Anyway, I know, that it may take some time to get the things happen.

An indefinite amount of time.  Even if TeXmacs gets recompiled to use the
newer libfreetype packages, the compatibility library will probably still
be around, since many unofficial packages may depend on it as well.  It
won't be installed by default, but you can't count on any particular
machine not having that DLL.

 I should probably consider some nasty workarounds.

Yes, you should.  Except, as I suggested above, they need not be
particularly nasty.
Igor
-- 
http://cs.nyu.edu/~pechtcha/
  |\  _,,,---,,_[EMAIL PROTECTED]
ZZZzz /,`.-'`'-.  ;-;;,_[EMAIL PROTECTED]
 |,4-  ) )-,_. ,\ (  `'-'   Igor Pechtchanski, Ph.D.
'---''(_/--'  `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

The Sun will pass between the Earth and the Moon tonight for a total
Lunar eclipse... -- WCBS Radio Newsbrief, Oct 27 2004, 12:01 pm EDT


Re: cyg/lib DLL naming

2005-06-15 Thread Igor Pechtchanski
On Mon, 13 Jun 2005, Peciva Jan wrote:

 [snip]
 (*) I am expecting that I have understood it well, that I can not link MSVC
 compiled applications and cygwin-gcc compiled DLLs.

And this is not completely true anymore either.  There were some fixes in
the recent snapshots of Cygwin that allow cygwin1.dll to be loaded
dynamically from elsewhere (see the cygwin-patches archives for the
discussion).
Igor
-- 
http://cs.nyu.edu/~pechtcha/
  |\  _,,,---,,_[EMAIL PROTECTED]
ZZZzz /,`.-'`'-.  ;-;;,_[EMAIL PROTECTED]
 |,4-  ) )-,_. ,\ (  `'-'   Igor Pechtchanski, Ph.D.
'---''(_/--'  `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

The Sun will pass between the Earth and the Moon tonight for a total
Lunar eclipse... -- WCBS Radio Newsbrief, Oct 27 2004, 12:01 pm EDT


Re: cyg/lib DLL naming

2005-06-14 Thread Peiva Jan
 Hi,

 our cross-platform application is working on Linux and Windows but not on
 Cygwin when X are installed. The problem has been tracked down and as a
 result: What is the reason for naming /usr/X11R6/bin/libfreetype.dll and
 not cygfreetype.dll ?

 This is an old library from the XFree86-dll-compat package and the package
 is only required by program which have not been updated to the naming
 structure which is used for over year now.

Thanks for the response. I am glad that cyg prefix is planned to be used
everywhere. However, can you give me some hints when will be the package or the
DLL probably removed?

Thanks,
John


Re: cyg/lib DLL naming

2005-06-14 Thread Igor Pechtchanski
On Tue, 14 Jun 2005, Peciva Jan wrote:

  our cross-platform application is working on Linux and Windows but
  not on Cygwin when X are installed. The problem has been tracked down
  and as a result: What is the reason for naming
  /usr/X11R6/bin/libfreetype.dll and not cygfreetype.dll ?
 
  This is an old library from the XFree86-dll-compat package and the
  package is only required by program which have not been updated to the
  naming structure which is used for over year now.

 Thanks for the response. I am glad that cyg prefix is planned to be used
 everywhere. However, can you give me some hints when will be the package
 or the DLL probably removed?

Why do you care?  It's a *compatibility* library, there for *old*
executables.  If you link with freetype now, the new DLLs should be used
automatically.  All you need is the libfreetype2-devel package, as well as
libfreetype26 (the runtime).  Note that libfreetype26 contains
cygfreetype-6.dll.

However, to answer your question, the compatibility packages are usually
around until the last application using them switches to linking with the
new runtime.  Since there's no way to know when that happens (because
others may have unofficial applications), the DLLs stay around practically
forever.  Now that the Cygwin Time Machine is operational, though, this
may change.
Igor
-- 
http://cs.nyu.edu/~pechtcha/
  |\  _,,,---,,_[EMAIL PROTECTED]
ZZZzz /,`.-'`'-.  ;-;;,_[EMAIL PROTECTED]
 |,4-  ) )-,_. ,\ (  `'-'   Igor Pechtchanski, Ph.D.
'---''(_/--'  `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

The Sun will pass between the Earth and the Moon tonight for a total
Lunar eclipse... -- WCBS Radio Newsbrief, Oct 27 2004, 12:01 pm EDT


cyg/lib DLL naming

2005-06-13 Thread Peiva Jan
Hi,

our cross-platform application is working on Linux and Windows but not on Cygwin
when X are installed. The problem has been tracked down and as a result:
What is the reason for naming /usr/X11R6/bin/libfreetype.dll and not
cygfreetype.dll ?

We are using Coin for 3D rendering and it automatically looks for freetype
library, that may be installed on the system. Because Coin does not link with
cygwin1.dll, it results in crash(*). Such problem may have other applications
also, if they are using FreeType and they are for some reason used in cygwin.
Otherwise, cygwin is making barrier between its own compiled applications and
non-cygwin-native applications that can not be used in cygwin anymore.

Maybe, you have also some reasons for naming them like this. Should I develop
some strange workaround based on detection whether FreeType library is linked
against cygwin1.dll, or can the naming be considered a bug that will be removed
in future releases? Or any other suggestions?


(*) I am expecting that I have understood it well, that I can not link MSVC
compiled applications and cygwin-gcc compiled DLLs.

Thanks for any comments.
John



Re: cyg/lib DLL naming

2005-06-13 Thread Alexander Gottwald
On Mon, 13 Jun 2005, [iso-8859-2] Pe?iva Jan wrote:

 Hi,
 
 our cross-platform application is working on Linux and Windows but not on 
 Cygwin
 when X are installed. The problem has been tracked down and as a result:
 What is the reason for naming /usr/X11R6/bin/libfreetype.dll and not
 cygfreetype.dll ?

This is an old library from the XFree86-dll-compat package and the package is 
only 
required by program which have not been updated to the naming structure which 
is used
for over year now. 

bye
ago
-- 
 [EMAIL PROTECTED] 
 http://www.gotti.org   ICQ: 126018723