Page MenuHomePhabricator

[CMAKE] Add cross build toolchain files for PC Linux platform
ClosedPublic

Authored by Fabien on May 10 2019, 14:18.

Details

Summary

This allows to use the depends system for building a deterministic linux
binary.

Depends on D3017

Test Plan

Note: see dependencies in contrib/gitian-descriptors/gitian-linus.yml

mkdir buildcmake && cd buildcmake
cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/platforms/Linux64.cmake \
-GNinja ..
ninja

Run src/bitcoind and src/qt/bitcoin-qt on a 64 bits Linux

rm -rf *
cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/platforms/Linux32.cmake \
-GNinja ..
ninja

Run src/bitcoind and src/qt/bitcoin-qt on a 32 bits Linux

Diff Detail

Repository
rABC Bitcoin ABC
Branch
cmake_linux
Lint
Lint OK
Unit
No Unit Test Coverage
Build Status
Buildable 5823
Build 9708: Bitcoin ABC Teamcity Staging
Build 9707: arc lint + arc unit

Event Timeline

Fabien created this revision.May 10 2019, 14:18
Herald added a reviewer: Restricted Project. · View Herald TranscriptMay 10 2019, 14:18
deadalnix requested changes to this revision.May 12 2019, 23:26

It's not clear that this depends on any way on the diff you say it depends on.

cmake/platforms/Linux32.cmake
29 ↗(On Diff #8595)

Same as for 64 bits

cmake/platforms/Linux64.cmake
26 ↗(On Diff #8595)

One line

29 ↗(On Diff #8595)

It does seems like the extra variable is not making this any simpler, is it.

This revision now requires changes to proceed.May 12 2019, 23:26
Fabien updated this revision to Diff 8623.May 13 2019, 09:11

Remove extra variable.

Fabien added a comment.May 13 2019, 09:11

The dependency is only required for the test plan to pass.

deadalnix accepted this revision.May 16 2019, 23:09
This revision is now accepted and ready to land.May 16 2019, 23:09