#10572: compiler/binutils wrapper
---------------------------------------------------+------------------------
       Reporter:  vbraun                           |         Owner:  
GeorgSWeber 
           Type:  enhancement                      |        Status:  
needs_review
       Priority:  major                            |     Milestone:  sage-5.10  
 
      Component:  build                            |    Resolution:             
 
       Keywords:  compiler gcc wrapper rpath spkg  |   Work issues:             
 
Report Upstream:  N/A                              |     Reviewers:             
 
        Authors:  Volker Braun                     |     Merged in:             
 
   Dependencies:                                   |      Stopgaps:             
 
---------------------------------------------------+------------------------

Old description:

> This ticket aims to implement a compiler wrapper that will suitably
> modify gcc/ld/... arguments before passing them on to the underlying
> compiler binaries. The most current version is at:
>
> https://bitbucket.org/vbraun/compilerwrapper
>
> and a spkg is here:
>
> http://boxen.math.washington.edu/home/vbraun/spkg/compilerwrapper-1.2.spkg
>
> The wrapper is implemented in pure C++ and does not depend on any Sage
> component. At the moment it only wraps gcc and does not do anything for
> other compilers.
>
> Apply trac_10572_compilerwrapper_root.patch to the sage root repository.

New description:

 This ticket implements a wrapper for the compiler that lets us rewrite
 compiler options on the fly. The goal is to fix:

 1. Clashes between system and Sage's libraries due to LD_LIBRARY_PATH
 abuse.
 1. Relocation issues, i.e., "dead" (hard-coded) RPATHs in binaries (shared
 libraries and executables) created by Sage, upon moving the installation
 (which includes installing a pre-built / binary distribution).
 1. Broken compiler versions / tool chains; work around by messing with
 (e.g.) optimization flags, depending on the present compiler and its known
 issues.

 The wrapper is implemented in pure C++ and does not depend on any Sage
 component. At the moment it only wraps gcc and does not do anything for
 other compilers.

 Code repository https://bitbucket.org/vbraun/compilerwrapper

 spkg is here:
 http://boxen.math.washington.edu/home/vbraun/spkg/compilerwrapper-1.2.spkg

 Apply trac_10572_compilerwrapper_root.patch to the sage root repository.

--

Comment (by vbraun):

 Leif: I don't think there is any point in making this an optional spkg. If
 the wrapper not installed before you compile the first dynamically-linked
 binary then it is useless.

 Updated the description.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10572#comment:38>
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 unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to