xref: /aosp_15_r20/external/libaom/build/cmake/toolchains/armv7-linux-gcc.cmake (revision 77c1e3ccc04c968bd2bc212e87364f250e820521)
1*77c1e3ccSAndroid Build Coastguard Worker#
2*77c1e3ccSAndroid Build Coastguard Worker# Copyright (c) 2017, Alliance for Open Media. All rights reserved.
3*77c1e3ccSAndroid Build Coastguard Worker#
4*77c1e3ccSAndroid Build Coastguard Worker# This source code is subject to the terms of the BSD 2 Clause License and the
5*77c1e3ccSAndroid Build Coastguard Worker# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was
6*77c1e3ccSAndroid Build Coastguard Worker# not distributed with this source code in the LICENSE file, you can obtain it
7*77c1e3ccSAndroid Build Coastguard Worker# at www.aomedia.org/license/software. If the Alliance for Open Media Patent
8*77c1e3ccSAndroid Build Coastguard Worker# License 1.0 was not distributed with this source code in the PATENTS file, you
9*77c1e3ccSAndroid Build Coastguard Worker# can obtain it at www.aomedia.org/license/patent.
10*77c1e3ccSAndroid Build Coastguard Worker#
11*77c1e3ccSAndroid Build Coastguard Workerif(AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7_LINUX_GCC_CMAKE_)
12*77c1e3ccSAndroid Build Coastguard Worker  return()
13*77c1e3ccSAndroid Build Coastguard Workerendif() # AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7_LINUX_GCC_CMAKE_
14*77c1e3ccSAndroid Build Coastguard Workerset(AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7_LINUX_GCC_CMAKE_ 1)
15*77c1e3ccSAndroid Build Coastguard Worker
16*77c1e3ccSAndroid Build Coastguard Workerset(CMAKE_SYSTEM_NAME "Linux")
17*77c1e3ccSAndroid Build Coastguard Worker
18*77c1e3ccSAndroid Build Coastguard Workerif("${CROSS}" STREQUAL "")
19*77c1e3ccSAndroid Build Coastguard Worker
20*77c1e3ccSAndroid Build Coastguard Worker  # Default the cross compiler prefix to one used by Debian and other package
21*77c1e3ccSAndroid Build Coastguard Worker  # management systems.
22*77c1e3ccSAndroid Build Coastguard Worker  set(CROSS arm-linux-gnueabihf-)
23*77c1e3ccSAndroid Build Coastguard Workerendif()
24*77c1e3ccSAndroid Build Coastguard Worker
25*77c1e3ccSAndroid Build Coastguard Workerif(NOT ${CROSS} MATCHES hf-$)
26*77c1e3ccSAndroid Build Coastguard Worker  set(AOM_EXTRA_TOOLCHAIN_FLAGS "-mfloat-abi=softfp")
27*77c1e3ccSAndroid Build Coastguard Workerendif()
28*77c1e3ccSAndroid Build Coastguard Worker
29*77c1e3ccSAndroid Build Coastguard Workerif(NOT CMAKE_C_COMPILER)
30*77c1e3ccSAndroid Build Coastguard Worker  set(CMAKE_C_COMPILER ${CROSS}gcc)
31*77c1e3ccSAndroid Build Coastguard Workerendif()
32*77c1e3ccSAndroid Build Coastguard Workerif(NOT CMAKE_CXX_COMPILER)
33*77c1e3ccSAndroid Build Coastguard Worker  set(CMAKE_CXX_COMPILER ${CROSS}g++)
34*77c1e3ccSAndroid Build Coastguard Workerendif()
35*77c1e3ccSAndroid Build Coastguard Workerif(NOT CMAKE_ASM_COMPILER)
36*77c1e3ccSAndroid Build Coastguard Worker  set(CMAKE_ASM_COMPILER ${CROSS}as)
37*77c1e3ccSAndroid Build Coastguard Workerendif()
38*77c1e3ccSAndroid Build Coastguard Workerset(CMAKE_C_FLAGS_INIT "-march=armv7-a -mfpu=vfpv3 \
39*77c1e3ccSAndroid Build Coastguard Worker                          ${AOM_EXTRA_TOOLCHAIN_FLAGS}")
40*77c1e3ccSAndroid Build Coastguard Workerset(CMAKE_CXX_FLAGS_INIT "-march=armv7-a -mfpu=vfpv3 \
41*77c1e3ccSAndroid Build Coastguard Worker                            ${AOM_EXTRA_TOOLCHAIN_FLAGS}")
42*77c1e3ccSAndroid Build Coastguard Workerset(AOM_AS_FLAGS --defsym ARCHITECTURE=7 -march=armv7-a -mfpu=neon
43*77c1e3ccSAndroid Build Coastguard Worker                 ${AOM_EXTRA_TOOLCHAIN_FLAGS})
44*77c1e3ccSAndroid Build Coastguard Workerset(CMAKE_SYSTEM_PROCESSOR "armv7")
45*77c1e3ccSAndroid Build Coastguard Worker
46*77c1e3ccSAndroid Build Coastguard Workerset(AOM_NEON_INTRIN_FLAG "-mfpu=neon ${AOM_EXTRA_TOOLCHAIN_FLAGS}")
47