This is the mail archive of the cygwin@cygwin.com 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]

[ANNOUNCEMENT] Updated: libpng-1.2.3-1; New: libpng12-1.2.3-1 and libpng12-devel-1.2.3-1


The libpng package has been updated to version 1.2.3-1.  This includes
the new packages
   libpng12        (1.2.3-1)
   libpng12-devel  (1.2.3-1)
which complement the existing
   libpng10        (1.0.13-3)
   libpng10-devel  (1.0.13-3)
in addition to simply updating the 'libpng' package from 1.0.13-3 to
1.2.3-1.

libpng is a library that provides routines to access and
manipulate Portable Network Graphics (PNG) images.  PNG is a
lossless, patent-unencumbered image format intended to replace GIF.

CHANGES (since 1.0.13-3):

- update to the 1.2.3 release.

- this package replaces the libpng-1.0.13 package -- however, the
   LIBRARIES from 'libpng10-1.0.13-3' can coexist with the LIBRARIES
   from 'libpng12-1.2.3-1'.  Ditto libpng10-devel and libpng12-devel.
   I've deliberately structured these packages so that the libraries
   and header files can coexist, and you can install both.
   But there is only one 'libpng' package -- the most recent one.
   (Don't sweat it.  There's nothing in it except documentation)

- Note that IF you want to link your application against this newest
   version of libpng, you may need to change your application's source
   code.  Or, you can simply use -I/usr/include/libpng10/ and -lpng10
   and continue linking against the 1.0.x series.  However, all new
   development is happening on 1.2.x.

- Aside: there are a few packages that depend on cygpng2.dll (that
   is, on the libpng2 package).  libpng2 can be installed alongside
   these three packages, but new compiles will link against
   cygpng10.dll.  Package maintainers should remember to update
   their setup.hints when recompiling dependent packages, to
   reflect the (future) new dependence on the libpng10 package.

--
Charles Wilson
libpng volunteer maintainer for cygwin

INSTALLATION:

To update your installation, click on the "Install Cygwin now" link
on the http://cygwin.com/ web page.  This downloads setup.exe to your
system.  Then, run setup and update the libpng package -- and also
install the new libpng2 package.

Note that we have recently stopped downloads from sources.redhat.com
(aka cygwin.com) due to bandwidth limitations.  This means that you
will  need to find a mirror which has this update.

In the US,
ftp://mirrors.rcn.net/mirrors/sources.redhat.com/cygwin/
is a reliable high bandwidth connection.

In the UK,
http://programming.ccp14.ac.uk/ftp-mirror/programming/cygwin/pub/cygwin/
is usually up-to-date within 48 hours.

If one of the above doesn't have the latest version of this package
then you can either wait for the site to be updated or find another
mirror.

If you have questions or comments, please send them to the Cygwin
mailing list at: cygwin@cygwin.com .  I would appreciate if you would
use this mailing list rather than emailing me directly.  This includes
ideas and comments about the setup utility or Cygwin in general.

If you want to make a point or ask a question, the Cygwin mailing list
is the appropriate place.

               *** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO ***

If you want to unsubscribe from the cygwin-announce mailing list, look
at the "List-Unsubscribe: " tag in the email header of this message.
Send email to the address specified there.  It will be in the format:

cygwin-announce-unsubscribe-you=yourdomain.com@cygwin.com

NOTES:

In order to facilitate peaceful coexistence, the upstream libpng
folks made a few changes.  Now, you can use
   -I/usr/include/libpng10 -lpng10
to explicitly link against 1.0.x, or you can use
   -I/usr/include/libpng12 -lpng12
to explicitly link against 1.2.x

Also, they recommend symlinks so that
   -I/usr/include/libpng -lpng
will link against the newest version of libpng installed on
the system.

They also decided to scrap the [cyg|lib]png2.dll, 3.dll,
sequence, instead, going with <MAJ><MIN>, so 1.0.x is now
cygpng10.dll -- ditto for the import libs and static libs,
as well as moving the header files into versioned subdirs
of /usr/include/, although symbolic links to those header
files are put directly into /usr/include..

So, we have:

(in the 1.0.x series)
   dynamic lib: cygpng10.dll
   import lib:  libpng10.dll.a
   static lib:  libpng10.a
   include files:  /usr/include/libpng10/*

(in the 1.2.x series)
   dynamic lib: cygpng12.dll
   import lib:  libpng12.dll.a
   static lib:  libpng12.a
   include files:  /usr/include/libpng12/*

The symlinks I mentioned earlier:

   in /usr/lib:            libpng.dll.a  --> libpng12.dll.a
   in /usr/lib:            libpng.a      --> libpng12.a
   in /usr/include:        libpng        --> libpng12/
   in /usr/include:        png.h         --> libpng12/png.h
   in /usr/include:        pngconf.h     --> libpng12/pngconf.h
   in /usr/lib/pkgconfig:  libpng.pc     --> libpng12.pc
   in /usr/bin:            libpng-config --> libpng12-config

I've implemented this symlink creation as part of the postinstall
script.


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


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