This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ITP] mingw-libjpeg, mingw-libpng, mingw-openssl


Peter Quiring wrote:
I've created some packages for Cygwin under the mingw category. They are mingw versions of libjpeg, libpng,

Sorry, but I have to veto these (but see good news, below)


and openssl.

I'll leave Corinna to comment on this one.

The conventions I
used are slightly different from cygwin standards but were neccessary to compile under the mingw system.

See, that's the problem: cygwin doesn't distribute "mingw" packages, in the sense of "packages that were created using the 'mingw system': mingw compiler and framework". mingw-zlib and mingw-bzip2 are perhaps poor names, but they refer to *cygwin* generated packages that were simply compiled so that they do not use cygwin1.dll.


Now, after looking at your libpng package, I see that you're actually using *cygwin's* gcc with a -mno-cygwin flag -- which is fine. But it's not, really, the "mingw system". The "mingw system" is a different animal, over at http://mingw.sourceforge.net/.

There's really no reason for cygwin to distribute *any* non-cygwin apps or libs -- the current exceptions are: setup.exe (which obviously can't require cygwin) and the libraries needed to build setup.exe (mingw-zlib, mingw-bzip2), and one or two other apps like strace.exe and cygcheck.exe where it should be obvious why they can't depend on cygwin1.dll.

Finally, even if cygwin *should* distribute non-cygwin libraries, they'd still have to follow the cygwin packaging standard (which your source tarballs do not). Plus, it really makes *no* sense for different versions of the same library to be maintained by different people. *IF* the community thinks that it would be a good idea for cygwin to distribute non-cygwin versions of libpng and libjpeg, then the maintainer of the cygwin versions of those libs should do it.

That'd be me.

Or...it _could_ be you -- 'cause I'd be willing if the circumstances were right to relinquish maintainership of these packages. However, I think it'd make most people nervous if I handed over maintainership of core graphics libraries for the cygwin platform to a relative newcomer (this was your first post to any cygwin list, right? I see you've been involved with http://www.winehq.com, but not here.)

The source includes two scripts, one to
compile and another to package the binary bz2 file. I hope this would be accepted since I've put a lot of work into this. You can view the packages at http://digiforce.sf.net/cygwin (all setup.hint files are there too).
Please ignore the mingw-zlib package there, it's just a modified copy of the one already distributed at cygwin.com.
These packages are some standard packages I need while programming with mingw and I don't intend on adding anything else at the moment.


One note about my packages is that only static libs are in the binary packages since that's the idea behind mingw.

Err, nope. libtool-1.5-mingwPORT includes a shared lib, libltdl-3.dll. There's nothing about mingw that requires static libraries (or else why did those poor schlebs work so hard to get support for building shared libraries (of third-party, non-libtool code) on mingw added to libtool in the first place?


Thanks for considering my packages, and thanks for cygwin in general - an essential tool for multi-platform developers.

Yes, yes it is.


So, here's the good news: if others think that it'd be a good idea to include no-cygwin versions of libpng and libjpeg, I could be persuaded to ITP the following myself, after knocking them into a little better shape:

http://cygutils.fruitbat.org/testing/mingw-old/mingw-libpng
http://cygutils.fruitbat.org/testing/mingw-old/mingw-jpeg

I *might* fix 'em up and put 'em in a more prominent area of the cygutils website with a setup.ini even if the community doesn't think they should be included in the core distro.

--
Chuck


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]