buildroot/package/apitrace/apitrace.mk
Giulio Benetti ce053a2004 package/apitrace: fix microblaze build failure
Apitrace is affected by Gcc Bug 68485 that has already been worked
around, but after version bumping, CMakeLists.txt adds -O2 to
CMAKE_C_FLAGS_RELWITHDEBINFO that is in order appended to
CMAKE_C_FLAGS, making -O0 end appending to fail. To prevent this we
need to avoid CMAKE_C_FLAGS_RELWITHDEBINFO to be appended to
CMAKE_C_FLAGS, so let's do the same as flare-engine package that set
CMAKE_BUILD_TYPE to a fake build type called "buildroot", this way -O2
won't be appended after -O0 and work around restart to work as
expected.

Fixes:
http://autobuild.buildroot.net/results/2e3/2e31abd7b115d4c29117ca82007fd4f87f853ff7/

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-06-22 22:51:21 +02:00

46 lines
1.3 KiB
Makefile

################################################################################
#
# apitrace
#
################################################################################
APITRACE_VERSION = 9.0
APITRACE_SITE = $(call github,apitrace,apitrace,$(APITRACE_VERSION))
APITRACE_LICENSE = MIT
APITRACE_LICENSE_FILES = LICENSE
APITRACE_DEPENDENCIES = host-python3 libpng
ifeq ($(BR2_PACKAGE_XORG7),y)
APITRACE_DEPENDENCIES += xlib_libX11
APITRACE_CONF_OPTS += -DENABLE_X11=ON
else
APITRACE_CONF_OPTS += -DENABLE_X11=OFF
endif
# Gui was never tested, so we prefer to explicitly disable it
APITRACE_CONF_OPTS += -DENABLE_GUI=false
APITRACE_CFLAGS = $(TARGET_CFLAGS)
APITRACE_CXXFLAGS = $(TARGET_CXXFLAGS)
ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_68485),y)
# This works around embedded Brotli build failure
APITRACE_CFLAGS += -O0
# CMakeLists.txt sets CMAKE_CXX_FLAGS_<BUILD_TYPE> depending on
# BUILD_TYPE, and this comes after the generic CMAKE_CXX_FLAGS.
# Override CMAKE_BUILD_TYPE so no overrides are applied.
APITRACE_CONF_OPTS += -DCMAKE_BUILD_TYPE=Buildroot
endif
ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y)
# This works around Apitrace itself build failure
APITRACE_CXXFLAGS += -O0
endif
APITRACE_CONF_OPTS += \
-DCMAKE_C_FLAGS="$(APITRACE_CFLAGS)" \
-DCMAKE_CXX_FLAGS="$(APITRACE_CXXFLAGS)"
$(eval $(cmake-package))