From: Emmanuel Arias <eamanu@yaerobi.com>
Date: Thu, 23 Jun 2022 10:26:16 -0300
Subject: Add CXXFLAGS, CPPFLAGS and LDFLAGS in the build

Add the CXXFLAGS, CPPFLAGS and LDFLAGS flags in build to solve
hardening issues.

Rename the upstream CXXFLAGS to SCALENECXXFLAGS to used th
Debian CXXFLAGS and the upstream flags.
---
 GNUmakefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/GNUmakefile
+++ b/GNUmakefile
@@ -7,7 +7,7 @@
 .PHONY: black clang-format prettier format upload vendor-deps
 
 # CXXFLAGS = -std=c++14 -g -O0 # FIXME
-CXXFLAGS = -std=c++14 -Wall -g -O3 -DNDEBUG -D_REENTRANT=1 -DHL_USE_XXREALLOC=1 -pipe -fno-builtin-malloc -fvisibility=hidden -Wno-unused-result
+SCALENECXXFLAGS = -std=c++14 -Wall -g -O3 -DNDEBUG -D_REENTRANT=1 -DHL_USE_XXREALLOC=1 -pipe -fno-builtin-malloc -fvisibility=hidden -Wno-unused-result
 # CXX = g++
 
 INCLUDES  = -Isrc -Isrc/include
@@ -24,14 +24,14 @@
   else
     ARCH := -arch x86_64
   endif
-  CXXFLAGS := -std=c++14 -Wall -g -O3 -DNDEBUG -D_REENTRANT=1 -DHL_USE_XXREALLOC=1 -pipe -fno-builtin-malloc -fvisibility=hidden -flto -ftls-model=initial-exec -ftemplate-depth=1024 $(ARCH) -compatibility_version 1 -current_version 1 -dynamiclib
+  SCALENECXXFLAGS := -std=c++14 -Wall -g -O3 -DNDEBUG -D_REENTRANT=1 -DHL_USE_XXREALLOC=1 -pipe -fno-builtin-malloc -fvisibility=hidden -flto -ftls-model=initial-exec -ftemplate-depth=1024 $(ARCH) -compatibility_version 1 -current_version 1 -dynamiclib
   SED_INPLACE = -i ''
 
 else # non-Darwin
   LIBFILE := lib$(LIBNAME).so
   WRAPPER := vendor/Heap-Layers/wrappers/gnuwrapper.cpp
   INCLUDES := $(INCLUDES) -I/usr/include/nptl 
-  CXXFLAGS := $(CXXFLAGS) -fPIC -shared -Bsymbolic
+  SCALENECXXFLAGS := $(SCALENECXXFLAGS) -fPIC -shared -Bsymbolic
   RPATH_FLAGS :=
   SED_INPLACE = -i
 
@@ -44,7 +44,7 @@
 all: $(OUTDIR)/$(LIBFILE)
 
 $(OUTDIR)/$(LIBFILE): vendor-deps $(SRC) $(C_SOURCES) GNUmakefile
-	$(CXX) $(CXXFLAGS) $(INCLUDES) $(SRC) -o $(OUTDIR)/$(LIBFILE) -ldl -lpthread
+	$(CXX) $(SCALENECXXFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) $(INCLUDES) $(SRC) -o $(OUTDIR)/$(LIBFILE) -ldl -lpthread
 
 clean:
 	rm -f $(OUTDIR)/$(LIBFILE) scalene/*.so scalene/*.dylib
