db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rick Hillegas (JIRA)" <j...@apache.org>
Subject [jira] Updated: (DERBY-3984) Separate out the small number of build targets which really require JDK1.4 features from the bulk of the targets which ought to compile cleanly against small device libraries
Date Mon, 22 Dec 2008 14:14:44 GMT

     [ https://issues.apache.org/jira/browse/DERBY-3984?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Rick Hillegas updated DERBY-3984:

    Attachment: derby-3984-01-aa-defaultToJsr169.diff

Attaching derby-3984-01-aa-defaultToJsr169.diff. This patch makes the changes described above,
defaulting most build targets to use the classpath for small device platforms.

The practical consequence of applying this patch is this: When someone checks in a change
which violates the small device contract, the build will break for developers who have wired
the small device jars into their build environment. (Developers do that by setting the jsr169compile.classpath
variable in ant.properties.) This will give us early warning when the small device contract
has been broken, prompting us to fix these problems quickly.

Some build targets had to be changed to explicitly keep using the JDK 1.4 classpath as they
do today. I suspect that we would prefer that some of these targets defaulted to the small
device classpath. Fixing the code to make that possible is not part of this JIRA. Follow-on
JIRAs can be filed to fix these targets. In particular, you will notice the following:

1) The tools are built against the JDK 1.4 classpath.

2) So is the OSGI support.

3) So are a lot of tests.

Touches the following files:

M      build.xml
M      tools/ant/properties/compilepath.properties

Sets the default compiler classpath to be the small device classpath. Fixes up the stub compilers
to use the appropriate classpaths.

M      java/stubs/jsr169/javax/sql/RowSet.java

Removes some useless imports which were breaking the build.

M      java/demo/toursdb/build.xml

Compiles toursdb against the JDK 1.4 libraries.

M      java/tools/org/apache/derby/impl/tools/build.xml

Compiles the tools against the JDK 1.4 libraries.

M      java/engine/org/apache/derby/osgi/build.xml

Compiles the OSGI support against the JDK 1.4 libraries.

M      java/engine/org/apache/derby/iapi/jdbc/build.xml

Moves the compilation of an XA support class into a target which uses the JDK 1.4 libraries.

M      java/testing/org/apache/derbyTesting/unitTests/build.xml
M      java/testing/org/apache/derbyTesting/functionTests/tests/i18n/build.xml
M      java/testing/org/apache/derbyTesting/functionTests/tests/lang/build.xml
M      java/testing/org/apache/derbyTesting/functionTests/tests/replicationTests/build.xml
M      java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/build.xml
M      java/testing/org/apache/derbyTesting/functionTests/tests/perf/build.xml
M      java/testing/org/apache/derbyTesting/functionTests/tests/store/build.xml
M      java/testing/org/apache/derbyTesting/functionTests/tests/tools/build.xml
M      java/testing/org/apache/derbyTesting/functionTests/tests/memory/build.xml
M      java/testing/org/apache/derbyTesting/functionTests/tests/upgradeTests/build.xml
M      java/testing/org/apache/derbyTesting/functionTests/tests/derbynet/build.xml
M      java/testing/org/apache/derbyTesting/functionTests/harness/build.xml
M      java/testing/org/apache/derbyTesting/functionTests/util/build.xml
M      java/testing/org/apache/derbyTesting/junit/build.xml
M      java/testing/org/apache/derbyTesting/perf/build.xml

Compiles a lot of test classes against the JDK 1.4 libraries.

> Separate out the small number of build targets which really require JDK1.4 features from
the bulk of the targets which ought to compile cleanly against small device libraries
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>                 Key: DERBY-3984
>                 URL: https://issues.apache.org/jira/browse/DERBY-3984
>             Project: Derby
>          Issue Type: Improvement
>          Components: Build tools
>    Affects Versions:
>            Reporter: Rick Hillegas
>         Attachments: derby-3984-01-aa-defaultToJsr169.diff
> It would be good to make jsr169 the default platform for most Derby build targets. This
will allow the build to raise compile-time errors when a checkin violates the small-device
contract. Only a small number of features (listed in DERBY-3966) really require JDK1.4. Something
like the following may work:
> 1) Finish up DERBY-3966 so that java4compile.classpath defaults to an approximation of
${jdk14xmlSupport}: ${java15compile.classpath}
> 2) Make compile.classpath default to jsr169compile.classpath
> 3) Fortunately, jsr169compile.classpath itself already defaults to ${jsr169stubs}:${java14compile.classpath}
> 4) Change a (hopefully) small number of targets to use java14compile.classpath rather
than compile.classpath

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message