-
Bug
-
Resolution: Fixed
-
P2
-
6u5
-
b04
-
b07
-
x86
-
windows_xp
The Nimbus build changes have broken incremental Swing builds when using MKS.
The problem is that before building the nimbus-generator, we first remove the old nimbus-generator directory:
NIMBUS_BUILDER_OUTPUT_DIR=${GENSRCDIR}/nimbus-generator
...
rm -rf ${NIMBUS_BUILDER_OUTPUT_DIR}
GENSRCDIR is a relative path into the build directory: ../../../../build/windows-i586/gensrc/
According to the testing I've done, the problem is that MKS has trouble removing files with very long relative paths, and the files generated for Nimbus can have very long names. For instance, the longest full path is:
../../../../build/windows-i586/gensrc/nimbus-generator/org/jdesktop/synthdesigner/synthmodel/JiBX_X____________make_tools_swing_nimbus_classes_org_jdesktop_synthdesigner_synthmodel_SynthModel_jibx_xmlUIIconRegion_access.clas
which is 225 characters long!
Cygwin apparently has no such limitation.
Fortunately, it is not necessary to remove the old nimbus-generator/ directory. I've removed the rm line, and the nimbus-generator seems to build happily enough on top of the old one.
It would also be nice if the Nimbus Generator and source classes weren't built every time through. :)
The problem is that before building the nimbus-generator, we first remove the old nimbus-generator directory:
NIMBUS_BUILDER_OUTPUT_DIR=${GENSRCDIR}/nimbus-generator
...
rm -rf ${NIMBUS_BUILDER_OUTPUT_DIR}
GENSRCDIR is a relative path into the build directory: ../../../../build/windows-i586/gensrc/
According to the testing I've done, the problem is that MKS has trouble removing files with very long relative paths, and the files generated for Nimbus can have very long names. For instance, the longest full path is:
../../../../build/windows-i586/gensrc/nimbus-generator/org/jdesktop/synthdesigner/synthmodel/JiBX_X____________make_tools_swing_nimbus_classes_org_jdesktop_synthdesigner_synthmodel_SynthModel_jibx_xmlUIIconRegion_access.clas
which is 225 characters long!
Cygwin apparently has no such limitation.
Fortunately, it is not necessary to remove the old nimbus-generator/ directory. I've removed the rm line, and the nimbus-generator seems to build happily enough on top of the old one.
It would also be nice if the Nimbus Generator and source classes weren't built every time through. :)