Page MenuHomePhabricator

[CMAKE] Fix split debug not working for libs on Debian
ClosedPublic

Authored by Fabien on Aug 24 2020, 14:40.

Details

Reviewers
deadalnix
Group Reviewers
Restricted Project
Commits
rABCfb955b258584: [CMAKE] Fix split debug not working for libs on Debian
Summary

By default cmake will install all the shared libs with the executable
bit set as it is the default from the linker, but Debian has a special
policy to no set this bit. As a consequence cmake special cased the way
the shared libs permissions are set during installation on Debian only
and remove the executable bit unless some flag is set to overwrite this
feature.
As a consequence the script checking for executable files for splitting
the debug info out of the binary will miss the shared libs on Debian.
This diff changes to behavior by supplying the bin and lib install
directories so the script no longer needs to guess what to strip.

Test Plan

On Debian:

ninja install-bitcoind-debug

Check the libbitcoinconsensus.so is stripped and has split debug info.

Diff Detail

Repository
rABC Bitcoin ABC
Branch
cmake_fix_shared_lib_non_executable
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 12455
Build 25071: Build Diffbuild-clang-tidy · build-diff · build-clang-10 · build-without-wallet
Build 25070: arc lint + arc unit