#9871: Change compiler flags on Solaris to build without text relocations.
----------------------------+-----------------------------------------------
   Reporter:  drkirkby      |       Owner:  GeorgSWeber                         
       
       Type:  defect        |      Status:  needs_work                          
       
   Priority:  critical      |   Milestone:  sage-4.6                            
       
  Component:  build         |    Keywords:                                      
       
     Author:  David Kirkby  |    Upstream:  Not yet reported upstream; Will do 
shortly.
   Reviewer:                |      Merged:                                      
       
Work_issues:                |  
----------------------------+-----------------------------------------------

Old description:

> As documented at #9833, the Cliquer library is causing problems on 64-bit
> Solaris and 64-bit !OpenSolaris. This needs '''urgently''' resolving, as
> it is the first problem hit when building a 64-bit version of Sage on
> Solaris or !OpenSolaris.
>
> As documented at #9521, the test suite for Cliquer is not run correctly.
> It should generally be run from {{{spkg-install}}}, but given it takes
> only a few seconds to run on even slow hardware, it makes sense to run
> the tests each time Sage is built.
>
> The upstream source code has modifications too. Given the latest version
> is a bug-fix only release, it is wise to update this. (Rather
> confusingly, the version currently in Sage is 1.2, but the bug-fix
> release is 1.21. I believe the authors should have called it 1.2.1) See
> http://users.tkk.fi/pat/cliquer.html
>
> '''There are a number of other issues with Cliquer's spkg-install and
> Makefile. These are the subject of ticket #9870 and will NOT be addressed
> here to save time, and allow the critical Solaris fix to be integrated as
> soon as possible.'''
>
> The changes which are made are:
>  * Update the source code to the latest version.
>  * Change the compiler options for Solaris from
>
>  {{{-G -Bdynamic}}}
>
>  to
>
>  {{{-shared -Wl,-h,libcliquer.so}}}
>
>  as this avoid the fatal relocation error documented at #9833.
>  * Run the test cases every time Sage is built, as they take only a few
> seconds to run. Since the exit code of {{{make test}}} is always zero,
> even if tests fail, it was decided to save the output of {{{make test}}}
> into a file, then check for the word "ERROR" in that file. If it exists,
> a test has failed. If not, all tests have passed.
>  * Add correct compiler flags for AIX and HP-UX. These have not been
> checked, but should work.
>  * Add an {{{spkg-check}}} file which prints a message that the self-
> tests are run each time Sage is built.
>  * Copy the shared library to the filename {{{libcliquer.sl}}} on HP-UX,
> as that is the extension HP use for shared libraries. (The package
> currently always builds this as {{{libcliquer.so}}} on all platforms),
> despite that is wrong for several platforms. Most cases are already
> covered in {{{spkg-install}}}, but HP-UX was not.
>  * Rename the directory {{{patch}}} to {{{patches}}}
>  * Put the directory {{{patches}}} and revision control - previously
> {{{patch}}} was in .hgignore
>
> The updated package can be found at
>
> http://boxen.math.washington.edu/home/kirkby/patches/cliquer-1.21.spkg

New description:

 As documented at #9833, the Cliquer library is causing problems on 64-bit
 Solaris and 64-bit !OpenSolaris. This needs '''urgently''' resolving, as
 it is the first problem hit when building a 64-bit version of Sage on
 Solaris or !OpenSolaris.

 Since #9870 will clean up the page completely, the changes are just
 limited those necessary to get this building on Solaris without text
 relocations.

--

Comment(by drkirkby):

 Replying to [comment:11 leif]:

 > I've taken over ''that'' ticket (#9870). If this ticket here quickly
 gets positively reviewed, I can make the remaining changes, based on it.
 Changing {{{testcases.c}}} is rather independent of that, but not the
 rest.

 Leif,
 since you have taken on #9870, I think it's sensible if I restrict this
 ticket to '''only''' changing the compiler flags on Solaris, to allow this
 to build properly on Solaris without the text relocations. It's pointless
 me making other changes, which you are going to change anyway.

 I've written code to enable the tests, but you intend changing the source
 code. As such I am going to make only a dozen or so bytes of changes.

 Dave

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9871#comment:12>
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.

Reply via email to