79bea6cf60
With Microblaze Gcc version 4.9 build hangs due to a bug discovered for Gcc 4.9 only. Since Gcc 4.9 is not maintaned anymore it doesn't make sense to report this bug in Gcc bugzilla and use BR2_TOOLCHAIN_HAS_GCC_BUG_. So let's check if we're building for Microblaze with Gcc version < 5.x and work around the bug forcing the use of -O0. To reproduce this bug build with following defconfig: ' BR2_microblazeel=y BR2_ENABLE_DEBUG=y BR2_OPTIMIZE_2=y BR2_KERNEL_HEADERS_5_0=y BR2_TOOLCHAIN_BUILDROOT_LOCALE=y BR2_GCC_VERSION_4_9_X=y BR2_TOOLCHAIN_BUILDROOT_CXX=y BR2_TOOLCHAIN_BUILDROOT_FORTRAN=y BR2_GCC_ENABLE_LTO=y BR2_PACKAGE_SQLITE=y ' Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
78 lines
2.1 KiB
Makefile
78 lines
2.1 KiB
Makefile
################################################################################
|
|
#
|
|
# sqlite
|
|
#
|
|
################################################################################
|
|
|
|
SQLITE_VERSION = 3280000
|
|
SQLITE_SOURCE = sqlite-autoconf-$(SQLITE_VERSION).tar.gz
|
|
SQLITE_SITE = https://www.sqlite.org/2019
|
|
SQLITE_LICENSE = Public domain
|
|
SQLITE_LICENSE_FILES = tea/license.terms
|
|
SQLITE_INSTALL_STAGING = YES
|
|
|
|
ifeq ($(BR2_PACKAGE_SQLITE_STAT3),y)
|
|
SQLITE_CFLAGS += -DSQLITE_ENABLE_STAT3
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_SQLITE_ENABLE_COLUMN_METADATA),y)
|
|
SQLITE_CFLAGS += -DSQLITE_ENABLE_COLUMN_METADATA
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_SQLITE_ENABLE_FTS3),y)
|
|
SQLITE_CFLAGS += -DSQLITE_ENABLE_FTS3
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_SQLITE_ENABLE_JSON1),y)
|
|
SQLITE_CFLAGS += -DSQLITE_ENABLE_JSON1
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_SQLITE_ENABLE_UNLOCK_NOTIFY),y)
|
|
SQLITE_CFLAGS += -DSQLITE_ENABLE_UNLOCK_NOTIFY
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_SQLITE_SECURE_DELETE),y)
|
|
SQLITE_CFLAGS += -DSQLITE_SECURE_DELETE
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_SQLITE_NO_SYNC),y)
|
|
SQLITE_CFLAGS += -DSQLITE_NO_SYNC
|
|
endif
|
|
|
|
# Building with Microblaze Gcc 4.9 makes compiling to hang.
|
|
# Work around using -O0
|
|
ifeq ($(BR2_microblaze):$(BR2_TOOLCHAIN_GCC_AT_LEAST_5),y:)
|
|
SQLITE_CFLAGS += $(TARGET_CFLAGS) -O0
|
|
else
|
|
# fallback to standard -O3 when -Ofast is present to avoid -ffast-math
|
|
SQLITE_CFLAGS += $(subst -Ofast,-O3,$(TARGET_CFLAGS))
|
|
endif
|
|
|
|
SQLITE_CONF_ENV = CFLAGS="$(SQLITE_CFLAGS)"
|
|
|
|
ifeq ($(BR2_STATIC_LIBS),y)
|
|
SQLITE_CONF_OPTS += --enable-dynamic-extensions=no
|
|
else
|
|
SQLITE_CONF_OPTS += --disable-static-shell
|
|
endif
|
|
|
|
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
|
|
SQLITE_CONF_OPTS += --enable-threadsafe
|
|
else
|
|
SQLITE_CONF_OPTS += --disable-threadsafe
|
|
SQLITE_CFLAGS += -DSQLITE_THREADSAFE=0
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_NCURSES)$(BR2_PACKAGE_READLINE),yy)
|
|
SQLITE_DEPENDENCIES += ncurses readline
|
|
SQLITE_CONF_OPTS += --disable-editline --enable-readline
|
|
else ifeq ($(BR2_PACKAGE_LIBEDIT),y)
|
|
SQLITE_DEPENDENCIES += libedit
|
|
SQLITE_CONF_OPTS += --enable-editline --disable-readline
|
|
else
|
|
SQLITE_CONF_OPTS += --disable-editline --disable-readline
|
|
endif
|
|
|
|
$(eval $(autotools-package))
|
|
$(eval $(host-autotools-package))
|