1*89c4ff92SAndroid Build Coastguard Worker# 2*89c4ff92SAndroid Build Coastguard Worker# Copyright © 2020 Arm Ltd and Contributors. All rights reserved. 3*89c4ff92SAndroid Build Coastguard Worker# SPDX-License-Identifier: MIT 4*89c4ff92SAndroid Build Coastguard Worker# 5*89c4ff92SAndroid Build Coastguard Worker 6*89c4ff92SAndroid Build Coastguard Worker# toolchain file for building for Windows on an Ubuntu Linux system. 7*89c4ff92SAndroid Build Coastguard Worker# 8*89c4ff92SAndroid Build Coastguard Worker# Typical usage: 9*89c4ff92SAndroid Build Coastguard Worker# *) install cross compiler: `sudo apt-get install mingw-w64` 10*89c4ff92SAndroid Build Coastguard Worker# *) cmake -DCMAKE_TOOLCHAIN_FILE=~/toolchain-x86-ubuntu-mingw64.cmake 11*89c4ff92SAndroid Build Coastguard Worker 12*89c4ff92SAndroid Build Coastguard Workerset(CMAKE_SYSTEM_NAME Windows) 13*89c4ff92SAndroid Build Coastguard Workerset(TOOLCHAIN_PREFIX x86_64-w64-mingw32) 14*89c4ff92SAndroid Build Coastguard Worker 15*89c4ff92SAndroid Build Coastguard Worker# cross compilers to use for C and C++ 16*89c4ff92SAndroid Build Coastguard Workerset(CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc) 17*89c4ff92SAndroid Build Coastguard Workerset(CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}-g++) 18*89c4ff92SAndroid Build Coastguard Worker 19*89c4ff92SAndroid Build Coastguard Worker# target environment on the build host system 20*89c4ff92SAndroid Build Coastguard Worker# set 1st to dir with the cross compiler's C/C++ headers/libs 21*89c4ff92SAndroid Build Coastguard Workerset(CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX}) 22*89c4ff92SAndroid Build Coastguard Worker 23*89c4ff92SAndroid Build Coastguard Worker# modify default behavior of FIND_XXX() commands to 24*89c4ff92SAndroid Build Coastguard Worker# search for headers/libs in the target environment and 25*89c4ff92SAndroid Build Coastguard Worker# search for programs in the build host environment 26*89c4ff92SAndroid Build Coastguard Workerset(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) 27*89c4ff92SAndroid Build Coastguard Workerset(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) 28*89c4ff92SAndroid Build Coastguard Workerset(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) 29