cmake: handle dists which prefix gcc binaries wth arch triplet

Issue #1026
This commit is contained in:
redfish 2016-08-31 22:21:22 -04:00
parent c3ba844f03
commit 0f94f61805
1 changed files with 12 additions and 2 deletions

View File

@ -417,8 +417,18 @@ else()
endif()
# Since gcc 4.9 the LTO format is non-standard (slim), so we need the gcc-specific ar and ranlib binaries
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND NOT (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.9.0) AND NOT OPENBSD)
set(CMAKE_AR "gcc-ar")
set(CMAKE_RANLIB "gcc-ranlib")
# When invoking cmake on distributions on which gcc's binaries are prefix
# with an arch-specific triplet, the user has to either specify
# -DCHOST=... or -DCMAKE_AR=... and -DCMAKE_RANLIB=...
if (DEFINED CHOST)
set(CHOST_PREFIX "${CHOST}-")
endif()
if (NOT DEFINED CMAKE_AR)
set(CMAKE_AR "${CHOST_PREFIX}gcc-ar")
endif()
if (NOT DEFINED CMAKE_RANLIB)
set(CMAKE_RANLIB "${CHOST_PREFIX}gcc-ranlib")
endif()
endif()
endif()