Rationale behind _cmake_skip_rpath choice in /etc/rpm/macros.cmake

Kevin Kofler kevin.kofler at chello.at
Thu Oct 15 23:31:47 UTC 2009


Theodore Papadopoulo wrote:
> I would like to understand why the file macros.cmake as distributed in
> fedora-10 defines:
> %_cmake_skip_rpath -DCMAKE_SKIP_RPATH:BOOL=ON

Because otherwise installed binaries would end up with rpaths, even for 
standard library paths. (Probably a bug, I wonder if that got fixed yet.)

It's also quite silly to build the binaries with rpaths first and then edit 
them out when installing, as normally those rpaths shouldn't be needed 
(that's what the .shell wrappers in the uninstalled tree which set 
LD_LIBRARY_PATH are for).

> Disabling the rpath made all the checks to fail, so I added a:
> 
> %define _cmake_skip_rpath -DCMAKE_SKIP_RPATH:BOOL=OFF
> 
> at the beginning of my specfile.

Then the testsuite for that package is broken, they need to run the .shell 
wrappers which CMake creates in the object tree for this purpose, not the 
uninstalled binaries directly. If they use CMake correctly, it'll take care 
of this automatically. But apparently they hardcode the binary to run 
without taking care of this.

        Kevin Kofler




More information about the fedora-devel-list mailing list