From 5ddccf34c4f57e6e7fca767c1628a0d98ce8bdaf Mon Sep 17 00:00:00 2001 From: Bruce Cran Date: Wed, 8 Jul 2015 01:06:25 +0000 Subject: [PATCH] BaseTools: Fix build on FreeBSD and allow use of non-gcc system compiler On FreeBSD, uuid.h is in /usr/include, not /usr/include/uuid. Fix some errors when building using clang caused by self-assignment: the preferred way to 'use' a variable is '(void)x;', not 'x = x;'. Where the system provides $(CC) etc. by default, don't override it to be gcc. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Bruce Cran Reviewed-by: Yingke Liu git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17866 6f19259b-4bc3-4df7-8a09-765794883524 --- BaseTools/Source/C/GenFv/GenFvInternalLib.c | 7 ++++++- BaseTools/Source/C/LzmaCompress/LzmaCompress.c | 4 ++-- BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c | 2 +- BaseTools/Source/C/Makefiles/header.makefile | 10 +++++----- BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile | 2 +- 5 files changed, 15 insertions(+), 10 deletions(-) diff --git a/BaseTools/Source/C/GenFv/GenFvInternalLib.c b/BaseTools/Source/C/GenFv/GenFvInternalLib.c index ed9d496b7b..005098508b 100644 --- a/BaseTools/Source/C/GenFv/GenFvInternalLib.c +++ b/BaseTools/Source/C/GenFv/GenFvInternalLib.c @@ -16,8 +16,13 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. // // Include files // -#ifdef __GNUC__ + +#if defined(__FreeBSD__) +#include +#elif defined(__GNUC__) #include +#endif +#ifdef __GNUC__ #include #endif #include diff --git a/BaseTools/Source/C/LzmaCompress/LzmaCompress.c b/BaseTools/Source/C/LzmaCompress/LzmaCompress.c index b569b4e4d9..1de07a3541 100644 --- a/BaseTools/Source/C/LzmaCompress/LzmaCompress.c +++ b/BaseTools/Source/C/LzmaCompress/LzmaCompress.c @@ -43,8 +43,8 @@ const char *kCantWriteMessage = "Can not write output file"; const char *kCantAllocateMessage = "Can not allocate memory"; const char *kDataErrorMessage = "Data error"; -static void *SzAlloc(void *p, size_t size) { p = p; return MyAlloc(size); } -static void SzFree(void *p, void *address) { p = p; MyFree(address); } +static void *SzAlloc(void *p, size_t size) { (void)p; return MyAlloc(size); } +static void SzFree(void *p, void *address) { (void)p; MyFree(address); } static ISzAlloc g_Alloc = { SzAlloc, SzFree }; static Bool mQuietMode = False; diff --git a/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c b/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c index 7272272784..95c3c9ff5f 100644 --- a/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c +++ b/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c @@ -2112,7 +2112,7 @@ void LzmaEnc_Finish(CLzmaEncHandle pp) if (p->mtMode) MatchFinderMt_ReleaseStream(&p->matchFinderMt); #else - pp = pp; + (void)pp; #endif } diff --git a/BaseTools/Source/C/Makefiles/header.makefile b/BaseTools/Source/C/Makefiles/header.makefile index 6a759d94c7..09d2bff0e0 100644 --- a/BaseTools/Source/C/Makefiles/header.makefile +++ b/BaseTools/Source/C/Makefiles/header.makefile @@ -21,11 +21,11 @@ CYGWIN:=$(findstring CYGWIN, $(shell uname -s)) LINUX:=$(findstring Linux, $(shell uname -s)) DARWIN:=$(findstring Darwin, $(shell uname -s)) -CC = gcc -CXX = g++ -AS = gcc -AR = ar -LD = ld +CC ?= gcc +CXX ?= g++ +AS ?= gcc +AR ?= ar +LD ?= ld LINKER ?= $(CC) ifeq ($(ARCH), IA32) ARCH_INCLUDE = -I $(MAKEROOT)/Include/Ia32/ diff --git a/BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile b/BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile index 478a3a1ccf..c49cfd8fb2 100644 --- a/BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile +++ b/BaseTools/Source/C/VfrCompile/Pccts/antlr/makefile @@ -164,7 +164,7 @@ PCCTS_H=../h # # UNIX (default) # -CC=gcc +CC?=gcc COPT=-O ANTLR=${BIN_DIR}/antlr DLG=${BIN_DIR}/dlg -- 2.39.2