On 2010/5/19 Mathieu Malaterre wrote:
[...]
>> Information about needed libraries are already embedded within ELF
>> shared objects.
>> BTW I just tried and have been able to build gdcm package after
>> echo > /usr/lib/vtk-5.4/VTKLibraryDepends.cmake
>
> I think Brad King rejected your patch because you were not propagating
> vtkCommon or vtksys as an automatic dep.
I do not remember exactly and will read those mails again, but please
note that our situation is very different from upstream: we do not
support static linking (there is no static library in libvtk5-dev),
and we already have transitive linking via the ELF format, so IMHO
VTKLibraryDepends.cmake may be different from upstream.
> So if you have an empty /usr/lib/vtk-5.4/VTKLibraryDepends.cmake, you
> should be able to produce a simple example that does:
>
> add_executable(bla bla.cxx)
> target_link_libraries(bla vtkFiltering) # cmake will pull
> vtkCommon/vtksys dep automatically.
>
> In this case you can produce a different behavior for an installed
> tree VTK vs a build tree VTK.
Sorry, I do not understand your test case, it seems to work just fine here:
sudo sed -i -e 's/^/#/' /usr/lib/vtk-5.4/VTKLibraryDepends.cmake
echo 'int main() { }' > B.cxx
echo 'FIND_PACKAGE(VTK REQUIRED)
ADD_EXECUTABLE(B B.cxx)
TARGET_LINK_LIBRARIES(B vtkFiltering)' > CMakeLists.txt
cmake .
make
ldd B | grep vtk
libvtkFiltering.so.5.4 => /usr/lib/libvtkFiltering.so.5.4 (0xb7448000)
libvtkCommon.so.5.4 => /usr/lib/libvtkCommon.so.5.4 (0xb6f81000)
libvtksys.so.5.4 => /usr/lib/libvtksys.so.5.4 (0xb6f4c000)
Denis
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]