diff options
-rw-r--r-- | meta-oe/recipes-devtools/perfetto/perfetto.bb | 25 |
1 files changed, 7 insertions, 18 deletions
diff --git a/meta-oe/recipes-devtools/perfetto/perfetto.bb b/meta-oe/recipes-devtools/perfetto/perfetto.bb index 98e39f068d..86ab18cacf 100644 --- a/meta-oe/recipes-devtools/perfetto/perfetto.bb +++ b/meta-oe/recipes-devtools/perfetto/perfetto.bb | |||
@@ -70,24 +70,14 @@ do_configure () { | |||
70 | elif [ $arch = "aarch64" ]; then | 70 | elif [ $arch = "aarch64" ]; then |
71 | arch="arm64" | 71 | arch="arm64" |
72 | fi | 72 | fi |
73 | |||
74 | # For ARM32 with hardware floating point using clang and musl, we need to | ||
75 | # specify -mfloat-abi=hard to make the ABI settings of the linker and the | ||
76 | # compiler match. The linker would use hardware float ABI. The compiler does | ||
77 | # not. As a result we need to force the compiler to do so by adding | ||
78 | # -mfloat-abi=hard to compilation flags. | ||
79 | FLOAT_ABI="" | ||
80 | if [[ "${@bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'true', 'false', d)}" == "true" ]]; then | ||
81 | FLOAT_ABI="-mfloat-abi=hard" | ||
82 | fi | ||
83 | 73 | ||
84 | ARGS=$ARGS" target_os=\"linux\"" | 74 | ARGS=$ARGS" target_os=\"linux\"" |
85 | ARGS=$ARGS" target_cpu=\"$arch\"" | 75 | ARGS=$ARGS" target_cpu=\"$arch\"" |
86 | ARGS=$ARGS" target_cc=\"$CC_BIN ${FLOAT_ABI}\"" | 76 | ARGS=$ARGS" target_cc=\"$CC_BIN ${TUNE_CCARGS}\"" |
87 | ARGS=$ARGS" target_cxx=\"$CXX_BIN -std=c++11 ${FLOAT_ABI}\"" | 77 | ARGS=$ARGS" target_cxx=\"$CXX_BIN -std=c++11 ${TUNE_CCARGS}\"" |
88 | ARGS=$ARGS" target_strip=\"$STRIP_BIN\"" # | 78 | ARGS=$ARGS" target_strip=\"$STRIP_BIN\"" # |
89 | ARGS=$ARGS" target_sysroot=\"${RECIPE_SYSROOT}\"" | 79 | ARGS=$ARGS" target_sysroot=\"${RECIPE_SYSROOT}\"" |
90 | ARGS=$ARGS" target_linker=\"$CC_BIN ${FLOAT_ABI} ${LDFLAGS}\"" | 80 | ARGS=$ARGS" target_linker=\"$CC_BIN ${TUNE_CCARGS} ${LDFLAGS}\"" |
91 | ARGS=$ARGS" target_ar=\"$AR\"" | 81 | ARGS=$ARGS" target_ar=\"$AR\"" |
92 | ARGS="'$ARGS'" | 82 | ARGS="'$ARGS'" |
93 | cmd="tools/gn gen --args=$ARGS ${B}" | 83 | cmd="tools/gn gen --args=$ARGS ${B}" |
@@ -100,7 +90,6 @@ do_configure () { | |||
100 | # Eliminate a few incompatible build flags | 90 | # Eliminate a few incompatible build flags |
101 | REPLACES="s/-Wl,--icf=all//g" | 91 | REPLACES="s/-Wl,--icf=all//g" |
102 | REPLACES=$REPLACES";s/-Werror//g" | 92 | REPLACES=$REPLACES";s/-Werror//g" |
103 | REPLACES=$REPLACES";s/-mfpu=neon//g" | ||
104 | REPLACES=$REPLACES";s/-fcolor-diagnostics//g" | 93 | REPLACES=$REPLACES";s/-fcolor-diagnostics//g" |
105 | REPLACES=$REPLACES";s/=format-security//g" | 94 | REPLACES=$REPLACES";s/=format-security//g" |
106 | REPLACES=$REPLACES";s/-fdiagnostics-show-template-tree//g" | 95 | REPLACES=$REPLACES";s/-fdiagnostics-show-template-tree//g" |
@@ -111,12 +100,12 @@ do_configure () { | |||
111 | 100 | ||
112 | # If using the clang toolchain: use the clang host-side binaries built by Bitbake | 101 | # If using the clang toolchain: use the clang host-side binaries built by Bitbake |
113 | if [ "${TOOLCHAIN}" = "clang" ]; then | 102 | if [ "${TOOLCHAIN}" = "clang" ]; then |
114 | BB_CLANGXX="${BUILD_CXX} ${BUILD_LDFLAGS} ${FLOAT_ABI}" | 103 | BB_CLANGXX="${BUILD_CXX} ${BUILD_LDFLAGS} ${TUNE_CCARGS}" |
115 | BB_CLANG="${BUILD_CC} ${FLOAT_ABI}" | 104 | BB_CLANG="${BUILD_CC} ${TUNE_CCARGS}" |
116 | BB_LLVM_OBJCOPY="${RECIPE_SYSROOT_NATIVE}/usr/bin/llvm-objcopy" | 105 | BB_LLVM_OBJCOPY="${RECIPE_SYSROOT_NATIVE}/usr/bin/llvm-objcopy" |
117 | 106 | ||
118 | HOST_CLANGXX="${STAGING_DIR_NATIVE}/usr/bin/clang++ -stdlib=libc++ -rtlib=libgcc -unwindlib=libgcc ${FLOAT_ABI}" | 107 | HOST_CLANGXX="${STAGING_DIR_NATIVE}/usr/bin/clang++ -stdlib=libc++ -rtlib=libgcc -unwindlib=libgcc ${TUNE_CCARGS}" |
119 | HOST_CLANG="${STAGING_DIR_NATIVE}/usr/bin/clang ${FLOAT_ABI}" | 108 | HOST_CLANG="${STAGING_DIR_NATIVE}/usr/bin/clang ${TUNE_CCARGS}" |
120 | HOST_LLVM_OBJCOPY="${STAGING_DIR_NATIVE}/usr/bin/llvm-objcopy" | 109 | HOST_LLVM_OBJCOPY="${STAGING_DIR_NATIVE}/usr/bin/llvm-objcopy" |
121 | 110 | ||
122 | cd gcc_like_host | 111 | cd gcc_like_host |