1 |
One thing to point out.. trying to detect and using vX are just hacks |
2 |
for what this really is - Adding abi (C++STL/ABI) information to the |
3 |
ebuilds/packages. |
4 |
|
5 |
To extend this - what happens when you have a compiler that isn't |
6 |
compatible with the system default? When the package is merged should |
7 |
some information from the toolchain like g++-48-cpp03 be inserted for |
8 |
the package? The only downside I could think about is a crazy world |
9 |
where libs end up being installed in. |
10 |
|
11 |
/usr/lib64/{CPP-ABI} |
12 |
/usr/lib64/g++-48-cpp03/ |
13 |
|
14 |
In this case the default system compiler could be gcc5 and then an |
15 |
"alt" compiler which provides a different ABI could be used based on |
16 |
some "restrict" or explicit information in the ebuild. That alt |
17 |
compiler would have to build all the dependencies, but as long as it |
18 |
knew about /usr/lib64/g++-48-cpp03/ and not /usr/lib64/g++-52-cpp11/ |
19 |
things would be ok... |
20 |
|
21 |
If you want c++11 and 03 to exist, link together and be perfect at the |
22 |
same time.. I think you're asking for trouble or the impossible. |
23 |
|
24 |
While we're solving this problem - the same sort of "ABI" may also |
25 |
help other languages suffering from similar problems like python |
26 |
(Which now "fixed" their problem, but it's still not a perfect world) |
27 |
|
28 |
Nothing is to say it won't pop up again in the future (Java?)... |