From 17c78d4d84a60fd1b21107554c66e36a6713995c Mon Sep 17 00:00:00 2001 From: Andrey Kazmin Date: Tue, 17 Dec 2019 20:17:03 +0300 Subject: Fixed build for gcc 9.2.0 Turned off "--target=" option for gcc in spec (because we strictly using native version), for clang this option was duplicated in cmake files. Prefered one in cmake files. Fixed profiler cmake files to get gcc lib path from environment variable. Set it in spec by invoking gcc with "-print-file-name=" option. Signed-off-by: Andrey Kazmin --- packaging/heaptrack.spec | 5 ++--- profiler/profiler/cross/armel/toolchain.cmake | 10 ++++++++-- profiler/profiler/cross/x86/toolchain.cmake | 10 ++++++++-- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/packaging/heaptrack.spec b/packaging/heaptrack.spec index a34c3e3..fbb9397 100644 --- a/packaging/heaptrack.spec +++ b/packaging/heaptrack.spec @@ -47,9 +47,6 @@ echo %{_target_arch} echo %{_target_os} echo %{_target_platform} -export CFLAGS="--target=%{_host}" -export CXXFLAGS="--target=%{_host}" - %define _heaptrack_build_conf RelWithDebInfo %define _coreclr_devel_directory %{_datarootdir}/%{netcoreappdir} @@ -70,6 +67,8 @@ make %{?jobs:-j%jobs} VERBOSE=1 %define arch_dir x86 %endif +export ENV_GCC_LIB_PATH=`gcc -print-file-name=` + cd ../profiler ROOTFS_DIR=/ \ CC=clang CXX=clang++ \ diff --git a/profiler/profiler/cross/armel/toolchain.cmake b/profiler/profiler/cross/armel/toolchain.cmake index 337e5fb..e9112ef 100644 --- a/profiler/profiler/cross/armel/toolchain.cmake +++ b/profiler/profiler/cross/armel/toolchain.cmake @@ -18,11 +18,17 @@ add_compile_options(-mthumb) add_compile_options(-mfpu=vfpv3) add_compile_options(--sysroot=${CROSS_ROOTFS}) +if (DEFINED ENV{ENV_GCC_LIB_PATH}) + set(GCC_LIB_PATH $ENV{ENV_GCC_LIB_PATH}) +else() + set(GCC_LIB_PATH /usr/lib/gcc/${TOOLCHAIN}/9.2.0) +endif() + if ("$ENV{CC}" MATCHES "lang") set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -target arm-linux-gnueabi") - set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -B${CROSS_ROOTFS}/usr/lib/gcc/${TOOLCHAIN}/6.2.1") + set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -B${CROSS_ROOTFS}${GCC_LIB_PATH}") endif() -set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -L${CROSS_ROOTFS}/usr/lib/gcc/${TOOLCHAIN}/6.2.1") +set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -L${CROSS_ROOTFS}${GCC_LIB_PATH}") set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} --sysroot=${CROSS_ROOTFS}") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${CROSS_LINK_FLAGS}" CACHE STRING "" FORCE) diff --git a/profiler/profiler/cross/x86/toolchain.cmake b/profiler/profiler/cross/x86/toolchain.cmake index 67ea813..56a4792 100644 --- a/profiler/profiler/cross/x86/toolchain.cmake +++ b/profiler/profiler/cross/x86/toolchain.cmake @@ -13,11 +13,17 @@ if ("$ENV{CC}" MATCHES "lang") add_compile_options(--target=i686-tizen-linux-gnu) endif() +if (DEFINED ENV{ENV_GCC_LIB_PATH}) + set(GCC_LIB_PATH $ENV{ENV_GCC_LIB_PATH}) +else() + set(GCC_LIB_PATH /usr/lib/gcc/${TOOLCHAIN}/9.2.0) +endif() + if ("$ENV{CC}" MATCHES "lang") set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -target i686-linux-gnu") - set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -B${CROSS_ROOTFS}/usr/lib/gcc/${TOOLCHAIN}/6.2.1") + set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -B${CROSS_ROOTFS}${GCC_LIB_PATH}") endif() -set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -L${CROSS_ROOTFS}/usr/lib/gcc/${TOOLCHAIN}/6.2.1") +set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -L${CROSS_ROOTFS}${GCC_LIB_PATH}") set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} --sysroot=${CROSS_ROOTFS}") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${CROSS_LINK_FLAGS}" CACHE STRING "" FORCE) -- cgit v1.2.3