Mail Archives: cygwin/2001/07/03/21:43:07
Readline is a library that provides user-input functions complete with
history functions and line-editing capabilities. Since the API has
changed between readline-4.1 and readline-4.2, see the "Port notes" at
the end of /usr/doc/Cygwin/readline-4.2.README if your favorite app no
longer compiles properly with this version of readline.
readline-4.2-3 depends on ncurses-5.2-5.
WARNING: Chet Ramey, the maintainer of the GNU readline package, has
changed the readline API between version 4.1 and 4.2. Some functions
and variables were added, but more problematic, other functions and
variables were removed. Most of these changes were due to function
renaming so that the function names followed a more sensible scheme.
However, this breaks backwards compatibility.
Therefore, the DLL version in this package is "5" instead of "4". That
way, binaries that depend on the old dll (like postgresql) can coexist
with the new package. The dll numbering sequence (cygreadline4.dll,
cygreadline5.dll) is completely arbitrary and doesn't have anything to
do with the 4.0, 4.1, 4.2 package numbering sequence.
HOWEVER, since setup will *uninstall* the old dll when upgrading
readline, this package contains both the old dll's and the new dll's.
New programs will link with the new dll's, but the old executables that
are already linked to the old dll's will continue to work properly.
Currently, the only *official* packages that depend on and are affected
by this are postgresql (psql.exe) and python. Eventually, I hope the
postgresql maintainer will recompile that package to use the new
cygreadline5.dll.
CHANGES FROM readline-4.1-2
* API changes in the base package from GNU
* readline now honors the "ALL_STATIC" flag for static linking, in
addition to the "READLINE_STATIC" flag. (See below)
* includes the old dll's as well as the new ones
INSTALLATION:
To update your installation, click on the "Install Cygwin now" link on
the http://sources.redhat.com/cygwin web page. This downloads setup.exe
to your system.
Run setup and answer all of the questions. Note that you must choose
a mirror site. The following sites should have the updated package soon:
ftp://mirrors.rcn.net/pub/sourceware/cygwin/ (US)
ftp://linux.sarang.net/mirror/development/compiler/cygwin/ (Korea)
ftp://ftp.mirror.ac.uk/sites/sourceware.cygnus.com/pub/cygwin (UK)
The setup.exe program will figure out what needs to be updated on your
system and should install the less package automatically.
If you have questions or comments, please send them to the Cygwin
mailing list at: cygwin AT sources DOT redhat DOT 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 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 to 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 DOT com AT sources DOT redhat DOT com
NOTES:
o Building the package from source requires gcc-2.95.2-5 and
binutils-20001029-2 or later
o depends on ncurses-5.2-5 or later.
o The package includes several test and conversion utilities which are
useful for evaluating readline. Both dynamically-linked and
statically-linked versions are installed.
o Abides by the cygwin package system standard:
- import-lib /usr/lib/libreadline.dll.a
- import-lib /usr/lib/libhistory.dll.a
- static-lib /usr/lib/libreadline.a
- static-lib /usr/lib/libhistory.a
- stripped dll /usr/bin/cygreadline5.dll
- stripped dll /usr/bin/cyghistory5.dll
- cygwin-specific docs in /usr/doc/Cygwin/readline-4.2.README
- generic docs in /usr/doc/readline-4.2/*
o A cygwin-specific README and PATCH are stored in the source archive,
under <top>/CYGWIN-PATCHES/* (although that patch has already been
applied to the archive itself). The cygwin-specific README is also
installed by the binary distribution as described above.
o After installing, please read /usr/doc/Cygwin/readline-4.2.README
o Should run the following commands after installing
install-info --dir-file=/usr/info/dir \
--info-file=/usr/info/readline.info
install-info --dir-file=/usr/info/dir \
--info-file=/usr/info/history.info
o If you are building a package that depends on readline (or solely on
history), and you wish to link *statically*, define -DREADLINE_STATIC
(and -DNCURSES_STATIC because of dependency issues) to get the 'correct'
#define's in readline.h (or history.h) when compiling the .o files in
your package. Also, use 'gcc -static' when linking your package.
o You can also use -DALL_STATIC as a synonym for both -DREADLINE_STATIC
and -DNCURSES_STATIC. Eventually, many of the cygwin packages on
sources.redhat.com that provide both dll's and static libs will honor
the ALL_STATIC flag. That way, you won't have to type "-DZLIB_STATIC
-DPNG_STATIC -DJPEG_STATIC -DTIFF_STATIC ....". Currently, only the
following packages honor the ALL_STATIC flag:
ncurses readline zlib libpng xpm-nox jpeg tiff gettext
The following do not (yet)
jbig gdbm
o No special -Ddefine options or link options are needed when building a
package that depends on readline (or history) and you want to link
dynamically (recommended).
--Chuck Wilson
--
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/
- Raw text -