1 |
Inspired by the recent ruby version handling post on gentoo-dev I came |
2 |
up with this scheme to handle JDK versions in the future: |
3 |
|
4 |
1. Have a JAVA_VERSION USE_EXPAND variable containing: "java5 java6" or |
5 |
any JDK versions supported at that time. |
6 |
|
7 |
2. The minimum flag that is on is used for the JDK version to emerge |
8 |
things. Just setting -source is not in reality making things run with |
9 |
the target, it just makes the bytecode usable for older JDKs. |
10 |
|
11 |
3. When depending on something java the eclasses will automatically pull |
12 |
in libraries targeting the right JDK using EAPI 2 use dependencies. |
13 |
|
14 |
Benefits: |
15 |
- You can compile everything to the highest byte code available |
16 |
- Simpler maintenance and marginally faster emerges when build.xml files |
17 |
don't always need to be rewritten. |
18 |
- Solve bug 161622 (java-config should look into the deptree when |
19 |
deciding wich vm to use) |
20 |
|
21 |
If this seem sane, it's best to rewrite the eclasses at the same time to |
22 |
delete all the cruft that we have collected over time like the different |
23 |
rewriter implementations. |
24 |
|
25 |
Regards, |
26 |
Petteri |