linux-ppc64le: Specify system processor and fix library finding.

This commit updates the toolchain to ensure libraries associated with
ppc64le can be found.

Since the libraries are all installed on the system and not in dedicated
root, FIND_ROOT_PATH should *not* be specified.
This commit is contained in:
Jean-Christophe Fillion-Robin 2016-04-18 23:37:20 -04:00
parent f07fe2e3b9
commit 2c81b4957f
2 changed files with 9 additions and 5 deletions

View File

@ -8,7 +8,11 @@ RUN echo "deb http://emdebian.org/tools/debian/ jessie main" >> /etc/apt/sources
RUN apt-get update && apt-get install -y \ RUN apt-get update && apt-get install -y \
crossbuild-essential-ppc64el \ crossbuild-essential-ppc64el \
gfortran-powerpc64le-linux-gnu gfortran-powerpc64le-linux-gnu \
libbz2-dev:ppc64el \
libexpat1-dev:ppc64el \
ncurses-dev:ppc64el \
libssl-dev:ppc64el
WORKDIR /usr/src WORKDIR /usr/src

View File

@ -1,5 +1,6 @@
set(CMAKE_SYSTEM_NAME Linux) set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_VERSION 1) set(CMAKE_SYSTEM_VERSION 1)
set(CMAKE_SYSTEM_PROCESSOR ppc64le)
set(cross_triple "powerpc64le-linux-gnu") set(cross_triple "powerpc64le-linux-gnu")
@ -7,9 +8,8 @@ set(CMAKE_C_COMPILER /usr/bin/${cross_triple}-cc)
set(CMAKE_CXX_COMPILER /usr/bin/${cross_triple}-c++) set(CMAKE_CXX_COMPILER /usr/bin/${cross_triple}-c++)
set(CMAKE_Fortran_COMPILER /usr/bin/${cross_triple}-gfortran) set(CMAKE_Fortran_COMPILER /usr/bin/${cross_triple}-gfortran)
set(CMAKE_FIND_ROOT_PATH /usr/${cross_triple}) # Discard path returned by pkg-config and associated with HINTS in module
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) # like FindOpenSSL.
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) set(CMAKE_IGNORE_PATH /usr/lib/x86_64-linux-gnu/ /usr/lib/x86_64-linux-gnu/lib/)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-ppc64le) set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-ppc64le)