Add -fpie and -pie option (ASLR) 14/144014/4 accepted/tizen/4.0/unified/20170829.015746 accepted/tizen/unified/20170816.053813 submit/tizen/20170814.123808 submit/tizen_4.0/20170828.100004
authorDmitry Kovalenko <d.kovalenko@samsung.com>
Mon, 14 Aug 2017 08:41:28 +0000 (11:41 +0300)
committerDmitry Kovalenko <d.kovalenko@samsung.com>
Mon, 14 Aug 2017 12:22:28 +0000 (15:22 +0300)
Change-Id: Ic36375fce45805cdc72d73f2a0005f34da7453e6
Signed-off-by: Dmitry Kovalenko <d.kovalenko@samsung.com>
elf_parsing/Makefile

index c3926ff..7f34f9f 100644 (file)
@@ -4,7 +4,7 @@ LIB_HEADER=parse_elf.h
 
 WARN_FLAGS= -Werror -Wall -Wextra
 CXXFLAGS = $(WARN_FLAGS)
-CXXFLAGS+= -O2 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -D_FILE_OFFSET_BITS=64
+CXXFLAGS+= -O2 -fvisibility=hidden -fvisibility-inlines-hidden -D_FILE_OFFSET_BITS=64
 
 # binary
 BIN_SRC := parser.cpp
@@ -14,8 +14,14 @@ BIN_OBJ := $(BIN_SRC:.cpp=.o)
 LIB_SRC := parse_elf.cpp elf_impl.cpp
 LIB_OBJ := $(LIB_SRC:.cpp=.o)
 
-%.o : %.cpp
-       $(CXX) -c $(CXXFLAGS) $< -o $@
+parser.o: parser.cpp
+       $(CXX) -c $(CXXFLAGS) -fpie $< -o $@
+
+parse_elf.o: parse_elf.cpp
+       $(CXX) -c $(CXXFLAGS) -fPIC $< -o $@
+
+elf_impl.o: elf_impl.cpp
+       $(CXX) -c $(CXXFLAGS) -fPIC $< -o $@
 
 all: elfparser elflib
 
@@ -26,7 +32,7 @@ $(LIB_TARGET): $(LIB_OBJ)
        $(CXX) $^ $(CXXFLAGS) -shared -o $@
 
 $(BIN_TARGET): $(BIN_OBJ) $(LIB_TARGET)
-       $(CXX) $^ -o $@ -L. -lparserelf
+       $(CXX) $^ -o $@ -L. -lparserelf -pie
 
 install_elf: elfparser
        [ -d "$(DESTDIR)/$(BINDIR)" ] || mkdir -p $(DESTDIR)/$(BINDIR)