#9530: Improve/fix readline workarounds for Arch Linux and openSuSE, again
broken
on OpenSuSE 11.2 and 11.3
------------------------------+---------------------------------------------
Reporter: baechler | Owner: GeorgSWeber
Type: defect | Status: needs_review
Priority: critical | Milestone: sage-4.6
Component: build | Keywords: Arch Linux SuSE readline
Author: Thomas Bächler | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
------------------------------+---------------------------------------------
Comment(by drkirkby):
Replying to [comment:29 baechler]:
> drkirkby, cp -a is a rough equivalent to cp -dpR - as -d is (according
to your post) not portable, this might be problematic, as -d copies
symlinks as symlinks, instead of copying the underlying file (this is what
I intended there).
Two other options are to use {{{tar}}} or {{{pax}}}. Since I assume you
are more familiar with {{{tar}}}, that might be your preference. You could
use a temporary file, or you copy stdout of one tar command to stdin of
another using a pipe.
A third option might be to use {{{mv}}} instead of {{{cp}}}.
> Two more comments:
> 1) On Arch, the development headers for libreadline are always
installed. On openSuSE not by default.
Linux is a moving target - that can change at any time.
> 2) I am thinking to extend this test further: Instead of testing for a
particular distribution, test whether libreadline.so.6 is installed and
the development headers are present - and in those cases, never build
libreadline. This way, only systems lacking libreadline or providing the
old libreadline.so.5 would have to build libreadline, all others would use
the system's library.
In general I am not over keen on Sages system of installing everything.
However, if you do this on every platform not just Linux, have you thought
about how you would do this on Solaris and !OpenSolaris, for 64-bit
builds, where the libraries would not reside in {{{/usr/lib}}}, but in a
subdirectory which depends on the type of CPU? How about if only static
libraries are installed?
Have you thought about it when someone has an older version of readline in
{{{/usr/local}}}, but a later one in {{{/usr/local/lib}}}, or some other
random directory?
Basically I'm saying I don't think this is quite as easy as you might be
thinking it is. To make a change on every system, where there are only one
or two Linux distributions having this problem, is probably unwise.
Dave
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9530#comment:30>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.