Index: src/generate/unix/Makefile.config
===================================================================
--- src.orig/generate/unix/Makefile.config
+++ src/generate/unix/Makefile.config
@@ -167,6 +167,8 @@ ifneq ($(NOFORTIFY),TRUE)
OPT_CFLAGS += -D_FORTIFY_SOURCE=2
endif
+OPT_CFLAGS += -fPIC -pie
+
CFLAGS += \
-D$(HOST)\
-D_GNU_SOURCE\
Index: src/generate/unix/iasl/Makefile
===================================================================
--- src.orig/generate/unix/iasl/Makefile
+++ src/generate/unix/iasl/Makefile
@@ -302,20 +302,21 @@ $(OBJDIR)/prparserparse.c : $(ASL_COM
# Cannot use the common compile warning flags since the C files are created
# by the utilities above and they are not necessarily ANSI C, etc.
#
+HARDENING_FLAGS = -fPIC -pie
$(OBJDIR)/aslcompilerlex.o : $(OBJDIR)/aslcompilerlex.c
- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
+ $(CC) -c $(CFLAGS) $(HARDENING_FLAGS) -Wall -Werror -o$@ $<
$(OBJDIR)/aslcompilerparse.o : $(OBJDIR)/aslcompilerparse.c
- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
+ $(CC) -c $(CFLAGS) $(HARDENING_FLAGS) -Wall -Werror -o$@ $<
$(OBJDIR)/dtparserlex.o : $(OBJDIR)/dtparserlex.c
- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
+ $(CC) -c $(CFLAGS) $(HARDENING_FLAGS) -Wall -Werror -o$@ $<
$(OBJDIR)/dtparserparse.o : $(OBJDIR)/dtparserparse.c
- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
+ $(CC) -c $(CFLAGS) $(HARDENING_FLAGS) -Wall -Werror -o$@ $<
$(OBJDIR)/prparserlex.o : $(OBJDIR)/prparserlex.c
- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
+ $(CC) -c $(CFLAGS) $(HARDENING_FLAGS) -Wall -Werror -o$@ $<
$(OBJDIR)/prparserparse.o : $(OBJDIR)/prparserparse.c
- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
+ $(CC) -c $(CFLAGS) $(HARDENING_FLAGS) -Wall -Werror -o$@ $<