View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0002120CMakeCMakepublic2005-08-08 09:332005-08-08 14:34
ReporterMathieu Malaterre 
Assigned ToBrad King 
PriorityurgentSeveritymajorReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0002120: CMake cvs does not build vtk.jar anymore
DescriptionSteps to reproduce
$ cvs co VTK
$ mkdir VTK-java
$ cd VTK-java
$ ~/Dashboards/MyTests/CMake-gcc/bin/cmake -DVTK_WRAP_JAVA:BOOL=1 -DBUILD_SHARED_LIBS:BOOL=1../VTK
$ make
...
ls ./bin/vtk.jar

redo same operations with cmake 2.0.5 you get vtk.jar...
TagsNo tags attached.
Attached Files

 Relationships

  Notes
(0002811)
Brad King (manager)
2005-08-08 10:31

This bug may also be related to these failures:

http://www.vtk.org/Testing/Sites/hythloth.kitware/zRel42-Linux-gcc/20050808-0300-Nightly/Test.html [^]

This is a VTK 4.2 dashboard built using CVS CMake. The python_pyc target is not getting built properly.
(0002814)

2005-08-08 12:01

I'm assigning this bug to myself since I've fixed it.

The following use of old-style custom commands appears for the jar:

    ADD_CUSTOM_COMMAND(
      TARGET VTKBuildAll
      SOURCE VTKBuildAll
      DEPENDS ${VTK_BINARY_DIR}/java/vtk/vtkBuildAllDriver.class
      )

and in VTK 4.2 this also appears for python:

  ADD_CUSTOM_COMMAND(
    SOURCE vtkpython_pyc
    DEPENDS "${VTK_BINARY_DIR}/Wrapping/Python/vtk_compile_complete"
    TARGET vtkpython_pyc
    )

The SOURCE==TARGET trick was broken in cmAddCustomCommandCommand.cxx revision 1.23 when support for converting source/output paths from relative to full paths was added.

Since SOURCE is only a backward compatibility argument I've just removed the conversion from relative to full path for it. This fixes the problem:

/cvsroot/CMake/CMake/Source/cmAddCustomCommandCommand.cxx,v <-- cmAddCustomCommandCommand.cxx
new revision: 1.24; previous revision: 1.23
(0002815)
Brad King (manager)
2005-08-08 12:03

I've assigned this bug to myself since I've fixed it.
(0002816)
Brad King (manager)
2005-08-08 12:05

This is the fix:

/cvsroot/CMake/CMake/Source/cmAddCustomCommandCommand.cxx,v <-- cmAddCustomCommandCommand.cxx
new revision: 1.24; previous revision: 1.23

As of revision 1.23 the SOURCE argument got converted to a full path if it was relative. This broke the SOURCE==TARGET trick which was used for the vtk.jar and VTK 4.2 python targets.
(0002820)
Mathieu Malaterre (developer)
2005-08-08 13:12

Reopen since I cannot build VTK:

$ make make[2]: *** No rule to make target `Utilities/vtktiff/tif_fax3sm.c', needed by `Utilities/vtktiff/CMakeFiles/vtktiff.dir/tif_fax3sm.o'. Stop.
make[1]: *** [Utilities/vtktiff/CMakeFiles/vtktiff.dir/all] Error 2
make: *** [all] Error 2

Using

$ /Users/Malaterre/Dashboards/MyTests/CMake-gcc/bin/cmake --version cmake version 2.3-20050808


and following the exact steps describe above.
(0002822)
Brad King (manager)
2005-08-08 14:34

This error has nothing to do with vtk.jar or CMake. It is a bug in the VTK code exposed by CVS cmake. I've fixed the problem and now I get a vtk.jar. I'm closing the bug again.

 Issue History
Date Modified Username Field Change


Copyright © 2000 - 2018 MantisBT Team