Description: Fix upstream Makefile and add hardening.
Author: Giovani Augusto Ferreira <giovani@debian.org>
Forwarded: not-needed
Reviewed-by: xiao sheng wen <atzlinux@sina.com>
Last-Update: 2024-07-09

Index: apngasm-2.91/Makefile
===================================================================
--- apngasm-2.91.orig/Makefile
+++ apngasm-2.91/Makefile
@@ -1,7 +1,8 @@
 PACKAGE    = apngasm
 CC         = gcc
 SRC_DIRS   = . 7z zopfli
-CFLAGS     = -Wall -pedantic -DFEATURE_7ZIP -DFEATURE_ZOPFLI
+CFLAGS     = -Wall -pedantic -DFEATURE_7ZIP -DFEATURE_ZOPFLI -g -fstack-protector-strong
+LDFLAGS    = -Wl,-z,relro -Wl,-z,now
 CFLAGS_OPT = -O2
 CFLAGS_7Z  = -Wno-sign-compare -Wno-reorder -Wno-maybe-uninitialized -Wno-parentheses
 LIBS       = -lstdc++ -lm -lpng -lz
@@ -16,19 +17,19 @@ OBJECTS := $(OBJECTS:.cpp=.o)
 all : $(PACKAGE)
 
 $(PACKAGE) : objdirs $(OBJECTS)
-	$(CC) -o $@ $(OBJECTS) -s $(LIBS)
+	$(CC) -o $@ $(OBJECTS) -s $(LIBS) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS)
 
 objdirs :
 	mkdir -p $(OBJ_DIRS)
 
 obj/%.o : %.cpp
-	$(CC) -o $@ -c $< $(INCUDE_DIRS) $(CFLAGS) $(CFLAGS_OPT)
+	$(CC) -o $@ -c $< $(INCUDE_DIRS) $(CPPFLAGS) $(CXXFLAGS) $(CFLAGS) $(LDFLAGS) $(CFLAGS_OPT)
 
 obj/%.o : %.c
-	$(CC) -o $@ -c $< $(INCUDE_DIRS) $(CFLAGS) $(CFLAGS_OPT)
+	$(CC) -o $@ -c $< $(INCUDE_DIRS) $(CPPFLAGS) $(CXXFLAGS) $(CFLAGS) $(LDFLAGS) $(CFLAGS_OPT)
 
 obj/%.o : %.cc
-	$(CC) -o $@ -c $< $(INCUDE_DIRS) $(CFLAGS) $(CFLAGS_OPT) $(CFLAGS_7Z)
+	$(CC) -o $@ -c $< $(INCUDE_DIRS) $(CPPFLAGS) $(CXXFLAGS) $(CFLAGS) $(LDFLAGS) $(CFLAGS_OPT) $(CFLAGS_7Z)
 
 .PHONY : clean
 
