diff options
author | Feng, Bob C <bob.c.feng@intel.com> | 2019-04-30 19:07:01 +0800 |
---|---|---|
committer | Feng, Bob C <bob.c.feng@intel.com> | 2019-05-01 10:21:56 +0800 |
commit | c4c8c340ef010db3096702201fbd8c350d0cfcdc (patch) | |
tree | 1cafe54f63996dc528da44bc8e41cf38b2f8f2cd /BaseTools/Source | |
parent | 0d6de095a5aebe38091009297ed282c9d6996942 (diff) | |
download | edk2-c4c8c340ef010db3096702201fbd8c350d0cfcdc.tar.gz edk2-c4c8c340ef010db3096702201fbd8c350d0cfcdc.tar.bz2 edk2-c4c8c340ef010db3096702201fbd8c350d0cfcdc.zip |
BaseTools: Add GCC flags to Basetool build.
BZ:https://bugzilla.tianocore.org/show_bug.cgi?id=1764
Some compiler flags restrict the compiler from making
arbitrary decisions while handling undefined C/C++ behaviors.
Therefore they can be used to fix some issues caused by undefined behavior.
For example, for GCC, the following flags are available:
-fno-delete-null-pointer-checks tells
the compiler NOT to assume that null pointer deference does not exist.
-fwrapv tells the compiler that signed overflow always wraps.
This patch is going to add these 2 build options to
BaseTool GCC build option.
Signed-off-by: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Diffstat (limited to 'BaseTools/Source')
-rw-r--r-- | BaseTools/Source/C/Makefiles/header.makefile | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/BaseTools/Source/C/Makefiles/header.makefile b/BaseTools/Source/C/Makefiles/header.makefile index c2397b796c..eac295b4dd 100644 --- a/BaseTools/Source/C/Makefiles/header.makefile +++ b/BaseTools/Source/C/Makefiles/header.makefile @@ -71,7 +71,8 @@ ifeq ($(DARWIN),Darwin) BUILD_CFLAGS = -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror \
-Wno-deprecated-declarations -Wno-self-assign -Wno-unused-result -nostdlib -g
else
-BUILD_CFLAGS = -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror \
+BUILD_CFLAGS = -MD -fshort-wchar -fno-strict-aliasing -fwrapv \
+-fno-delete-null-pointer-checks -Wall -Werror \
-Wno-deprecated-declarations -Wno-stringop-truncation -Wno-restrict \
-Wno-unused-result -nostdlib -g
endif
|