mirror of
https://github.com/isar/libmdbx.git
synced 2025-01-29 10:38:20 +08:00
mdbx: workaround for "alignment-reduction-ignored" lcc's bug.
Change-Id: I000bfaffd78ef7b6e27d6178bc2a5defc32cc357
This commit is contained in:
parent
a2099586ed
commit
c267a71475
8
Makefile
8
Makefile
@ -26,6 +26,14 @@ CXX ?= g++
|
|||||||
XCFLAGS ?= -DNDEBUG=1 -DMDBX_DEBUG=0 -DLIBMDBX_EXPORTS=1
|
XCFLAGS ?= -DNDEBUG=1 -DMDBX_DEBUG=0 -DLIBMDBX_EXPORTS=1
|
||||||
CFLAGS ?= -O2 -g3 -Wall -Werror -Wextra -ffunction-sections -fPIC -fvisibility=hidden
|
CFLAGS ?= -O2 -g3 -Wall -Werror -Wextra -ffunction-sections -fPIC -fvisibility=hidden
|
||||||
CFLAGS += -D_GNU_SOURCE=1 -std=gnu11 -pthread $(XCFLAGS)
|
CFLAGS += -D_GNU_SOURCE=1 -std=gnu11 -pthread $(XCFLAGS)
|
||||||
|
|
||||||
|
# temporary workaround for lcc's bug
|
||||||
|
TARGET_ARCH_e2k = $(shell (export LC_ALL=C; ($(CC) --version 2>&1; $(CC) -v 2>&1) | grep -q -i 'e2k' && echo yes || echo no))
|
||||||
|
ifeq ($(TARGET_ARCH_e2k),yes)
|
||||||
|
TARGET_ARCH := e2k
|
||||||
|
CFLAGS += -mtune=native -Wno-alignment-reduction-ignored
|
||||||
|
endif
|
||||||
|
|
||||||
CXXFLAGS = -std=c++11 $(filter-out -std=gnu11,$(CFLAGS))
|
CXXFLAGS = -std=c++11 $(filter-out -std=gnu11,$(CFLAGS))
|
||||||
TESTDB ?= $(shell [ -d /dev/shm ] && echo /dev/shm || echo /tmp)/mdbx-check.db
|
TESTDB ?= $(shell [ -d /dev/shm ] && echo /dev/shm || echo /tmp)/mdbx-check.db
|
||||||
TESTLOG ?= $(shell [ -d /dev/shm ] && echo /dev/shm || echo /tmp)/mdbx-check.log
|
TESTLOG ?= $(shell [ -d /dev/shm ] && echo /dev/shm || echo /tmp)/mdbx-check.log
|
||||||
|
12
src/bits.h
12
src/bits.h
@ -98,6 +98,18 @@
|
|||||||
#endif
|
#endif
|
||||||
#endif /* -Wconstant-logical-operand */
|
#endif /* -Wconstant-logical-operand */
|
||||||
|
|
||||||
|
#if __has_warning("-Walignment-reduction-ignored") || defined(__e2k__) || defined(__ICC)
|
||||||
|
#if defined(__ICC)
|
||||||
|
#pragma warning(disable: 3453 1366)
|
||||||
|
#elif defined(__clang__)
|
||||||
|
#pragma clang diagnostic ignored "-Walignment-reduction-ignored"
|
||||||
|
#elif defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic ignored "-Walignment-reduction-ignored"
|
||||||
|
#else
|
||||||
|
#pragma warning disable "alignment-reduction-ignored"
|
||||||
|
#endif
|
||||||
|
#endif /* -Wno-constant-logical-operand */
|
||||||
|
|
||||||
#include "./osal.h"
|
#include "./osal.h"
|
||||||
|
|
||||||
/* *INDENT-ON* */
|
/* *INDENT-ON* */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user