Apply ASLR to executable files.
authorBowon Ryu <bowon.ryu@samsung.com>
Wed, 8 Nov 2017 10:38:26 +0000 (19:38 +0900)
committerJiyoun Park <jy0703.park@samsung.com>
Tue, 19 Dec 2017 01:06:31 +0000 (10:06 +0900)
Change-Id: Ied149f0db33e4bc1a8c97203e88b036d82640ed6
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
src/Makefile_Ecore_Evas.am
src/Makefile_Edje.am
src/Makefile_Eeze.am
src/Makefile_Efreet.am
src/Makefile_Eldbus.am
src/Makefile_Embryo.am
src/Makefile_Evas.am

index debc996..d857efb 100644 (file)
@@ -311,6 +311,8 @@ bin_ecore_evas_ecore_evas_convert_SOURCES = bin/ecore_evas/ecore_evas_convert.c
 bin_ecore_evas_ecore_evas_convert_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_EVAS_CFLAGS@ @EINA_CFLAGS@ @ECORE_CFLAGS@ @EVAS_CFLAGS@
 bin_ecore_evas_ecore_evas_convert_LDADD = @USE_ECORE_EVAS_LIBS@ @USE_EINA_LIBS@ @USE_ECORE_LIBS@ @USE_EVAS_LIBS@
 bin_ecore_evas_ecore_evas_convert_DEPENDENCIES = @USE_ECORE_EVAS_INTERNAL_LIBS@ @USE_EINA_INTERNAL_LIBS@ @USE_ECORE_INTERNAL_LIBS@ @USE_EVAS_INTERNAL_LIBS@
+bin_ecore_evas_ecore_evas_convert_LDFLAGS = -pie
+bin_ecore_evas_ecore_evas_convert_CFLAGS = -fPIE
 
 bin_ecore_evas_eetpack_SOURCES = bin/ecore_evas/eetpack.c
 bin_ecore_evas_eetpack_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_EVAS_CFLAGS@ @EINA_CFLAGS@ @EET_CFLAGS@ @EVAS_CFLAGS@
index c57f111..ac6326c 100644 (file)
@@ -186,6 +186,8 @@ bin_edje_edje_cc_LDADD =  $(USE_EDJE_BIN_LIBS) @EDJE_LUA_LIBS@
 bin_edje_edje_cc_DEPENDENCIES = \
 @USE_EDJE_INTERNAL_LIBS@ \
 bin/edje/epp/epp$(EXEEXT) # epp is an artificial dependency because edje_cc will use it at runtime, so we be sure if we depend on edje_cc we get epp.
+bin_edje_edje_cc_LDFLAGS = -pie
+bin_edje_edje_cc_CFLAGS = -fPIE
 
 bin_edje_edje_decc_SOURCES = \
 bin/edje/edje_decc.c \
@@ -195,36 +197,50 @@ bin/edje/edje_cc_sources.c
 bin_edje_edje_decc_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
 bin_edje_edje_decc_LDADD =  $(USE_EDJE_BIN_LIBS)
 bin_edje_edje_decc_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+bin_edje_edje_decc_LDFLAGS = -pie
+bin_edje_edje_decc_CFLAGS = -fPIE
 
 bin_edje_edje_player_SOURCES = bin/edje/edje_player.c
 bin_edje_edje_player_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
 bin_edje_edje_player_LDADD =  $(USE_EDJE_BIN_LIBS)
 bin_edje_edje_player_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+bin_edje_edje_player_LDFLAGS = -pie
+bin_edje_edje_player_CFLAGS = -fPIE
 
 bin_edje_edje_inspector_SOURCES = bin/edje/edje_inspector.c
 bin_edje_edje_inspector_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
 bin_edje_edje_inspector_LDADD =  $(USE_EDJE_BIN_LIBS)
 bin_edje_edje_inspector_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+bin_edje_edje_inspector_LDFLAGS = -pie
+bin_edje_edje_inspector_CFLAGS = -fPIE
 
 bin_edje_edje_external_inspector_SOURCES = bin/edje/edje_external_inspector.c
 bin_edje_edje_external_inspector_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
 bin_edje_edje_external_inspector_LDADD =  $(USE_EDJE_BIN_LIBS)
 bin_edje_edje_external_inspector_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+bin_edje_edje_external_inspector_LDFLAGS = -pie
+bin_edje_edje_external_inspector_CFLAGS = -fPIE
 
 bin_edje_edje_codegen_SOURCES = bin/edje/edje_codegen.c
 bin_edje_edje_codegen_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
 bin_edje_edje_codegen_LDADD =  $(USE_EDJE_BIN_LIBS)
 bin_edje_edje_codegen_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+bin_edje_edje_codegen_LDFLAGS = -pie
+bin_edje_edje_codegen_CFLAGS = -fPIE
 
 bin_edje_edje_pick_SOURCES = bin/edje/edje_pick.c
 bin_edje_edje_pick_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
 bin_edje_edje_pick_LDADD =  $(USE_EDJE_BIN_LIBS)
 bin_edje_edje_pick_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+bin_edje_edje_pick_LDFLAGS = -pie
+bin_edje_edje_pick_CFLAGS = -fPIE
 
 bin_edje_edje_watch_SOURCES = bin/edje/edje_watch.c
 bin_edje_edje_watch_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
 bin_edje_edje_watch_LDADD =  $(USE_EDJE_BIN_LIBS)
 bin_edje_edje_watch_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+bin_edje_edje_watch_LDFLAGS = -pie
+bin_edje_edje_watch_CFLAGS = -fPIE
 
 # EPP (Edje's CPP)
 eppdir = $(libdir)/edje/utils/$(MODULE_ARCH)
@@ -270,6 +286,8 @@ bin_edje_epp_epp_CPPFLAGS += \
 -I$(top_builddir)/src/lib/evil
 bin_edje_epp_epp_LDADD = lib/evil/libevil.la
 endif
+bin_edje_epp_epp_LDFLAGS = -pie
+bin_edje_epp_epp_CFLAGS = -fPIE
 
 # TODO: why keep these?
 EXTRA_DIST2 += \
index 9f86fa1..de97b11 100644 (file)
@@ -133,16 +133,22 @@ bin_eeze_eeze_mount_eeze_mount_SOURCES = bin/eeze/eeze_mount/eeze_mount.c
 bin_eeze_eeze_mount_eeze_mount_CPPFLAGS = -I$(top_builddir)/src/lib/efl @EEZE_CFLAGS@
 bin_eeze_eeze_mount_eeze_mount_LDADD = @USE_EEZE_LIBS@
 bin_eeze_eeze_mount_eeze_mount_DEPENDENCIES = @USE_EEZE_INTERNAL_LIBS@
+bin_eeze_eeze_mount_eeze_mount_LDFLAGS = -pie
+bin_eeze_eeze_mount_eeze_mount_CFLAGS = -fPIE
 
 bin_eeze_eeze_umount_eeze_umount_SOURCES = bin/eeze/eeze_umount/eeze_umount.c
 bin_eeze_eeze_umount_eeze_umount_CPPFLAGS = -I$(top_builddir)/src/lib/efl @EEZE_CFLAGS@
 bin_eeze_eeze_umount_eeze_umount_LDADD = @USE_EEZE_LIBS@
 bin_eeze_eeze_umount_eeze_umount_DEPENDENCIES = @USE_EEZE_INTERNAL_LIBS@
+bin_eeze_eeze_umount_eeze_umount_LDFLAGS = -pie
+bin_eeze_eeze_umount_eeze_umount_CFLAGS = -fPIE
 
 bin_eeze_eeze_disk_ls_eeze_disk_ls_SOURCES = bin/eeze/eeze_disk_ls/eeze_disk_ls.c
 bin_eeze_eeze_disk_ls_eeze_disk_ls_CPPFLAGS = -I$(top_builddir)/src/lib/efl @EEZE_CFLAGS@
 bin_eeze_eeze_disk_ls_eeze_disk_ls_LDADD = @USE_EEZE_LIBS@
 bin_eeze_eeze_disk_ls_eeze_disk_ls_DEPENDENCIES = @USE_EEZE_INTERNAL_LIBS@
+bin_eeze_eeze_disk_ls_eeze_disk_ls_LDFLAGS = -pie
+bin_eeze_eeze_disk_ls_eeze_disk_ls_CFLAGS = -fPIE
 
 bin_eeze_eeze_scanner_eeze_scanner_SOURCES = \
 bin/eeze/eeze_scanner/eeze_scanner.c \
index f955cec..b88c5ca 100644 (file)
@@ -104,11 +104,15 @@ bin_efreet_efreet_desktop_cache_create_CPPFLAGS = -I$(top_builddir)/src/lib/efl
 bin_efreet_efreet_desktop_cache_create_LDADD = $(USE_EFREET_BIN_LIBS)
 bin_efreet_efreet_desktop_cache_create_DEPENDENCIES = @USE_EFREET_INTERNAL_LIBS@
 bin_efreet_efreet_desktop_cache_create_SOURCES = bin/efreet/efreet_desktop_cache_create.c
+bin_efreet_efreet_desktop_cache_create_LDFLAGS = -pie
+bin_efreet_efreet_desktop_cache_create_CFLAGS = -fPIE
 
 bin_efreet_efreet_icon_cache_create_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EFREET_COMMON_CPPFLAGS)
 bin_efreet_efreet_icon_cache_create_LDADD = $(USE_EFREET_BIN_LIBS)
 bin_efreet_efreet_icon_cache_create_DEPENDENCIES = @USE_EFREET_INTERNAL_LIBS@
 bin_efreet_efreet_icon_cache_create_SOURCES = bin/efreet/efreet_icon_cache_create.c
+bin_efreet_efreet_icon_cache_create_LDFLAGS = -pie
+bin_efreet_efreet_icon_cache_create_CFLAGS = -fPIE
 
 bin_efreet_efreet_mime_cache_create_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EFREET_COMMON_CPPFLAGS)
 bin_efreet_efreet_mime_cache_create_LDADD = $(USE_EFREET_BIN_LIBS)
index 99831d5..d2ae839 100644 (file)
@@ -107,6 +107,8 @@ else
 bin_eldbus_eldbus_codegen_LDADD = @USE_ELDBUS_LIBS@
 endif
 bin_eldbus_eldbus_codegen_DEPENDENCIES = @USE_ELDBUS_INTERNAL_LIBS@
+bin_eldbus_eldbus_codegen_LDFLAGS = -pie
+bin_eldbus_eldbus_codegen_CFLAGS = -fPIE
 
 if HAVE_CXX
 eldbus_eolian_cxx_hh = $(eldbus_eolian_files:%.eo=%.eo.hh)
index c31fb10..1305af5 100644 (file)
@@ -59,6 +59,8 @@ else
 bin_embryo_embryo_cc_LDADD = @USE_EMBRYO_LIBS@
 endif
 bin_embryo_embryo_cc_DEPENDENCIES = @USE_EMBRYO_INTERNAL_LIBS@
+bin_embryo_embryo_cc_LDFLAGS = -pie
+bin_embryo_embryo_cc_CFLAGS = -fPIE
 
 EXTRA_DIST2 += \
 bin/embryo/embryo_cc_sc5.scp \
index cf8a660..478c470 100644 (file)
@@ -1516,6 +1516,8 @@ bin_evas_evas_cserve2_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
 
 bin_evas_evas_cserve2_LDADD = @USE_EVAS_LIBS@
 bin_evas_evas_cserve2_DEPENDENCIES = @USE_EVAS_INTERNAL_LIBS@
+bin_evas_evas_cserve2_LDFLAGS = -pie
+bin_evas_evas_cserve2_CFLAGS = -fPIE
 
 bin_evas_evas_cserve2_client_SOURCES = \
 bin/evas/evas_cserve2_client.c
@@ -1525,6 +1527,8 @@ bin_evas_evas_cserve2_client_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
 @EVAS_CFLAGS@
 bin_evas_evas_cserve2_client_LDADD = @USE_EINA_LIBS@
 bin_evas_evas_cserve2_client_DEPENDENCIES = @USE_EINA_INTERNAL_LIBS@
+bin_evas_evas_cserve2_client_LDFLAGS = -pie
+bin_evas_evas_cserve2_client_CFLAGS = -fPIE
 
 bin_evas_evas_cserve2_usage_SOURCES = \
 bin/evas/evas_cserve2_usage.c
@@ -1534,6 +1538,8 @@ bin_evas_evas_cserve2_usage_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
 @EVAS_CFLAGS@
 bin_evas_evas_cserve2_usage_LDADD = @USE_EINA_LIBS@
 bin_evas_evas_cserve2_usage_DEPENDENCIES = @USE_EINA_INTERNAL_LIBS@
+bin_evas_evas_cserve2_usage_LDFLAGS = -pie
+bin_evas_evas_cserve2_usage_CFLAGS = -fPIE
 
 bin_evas_evas_cserve2_debug_SOURCES = \
 bin/evas/evas_cserve2_debug.c
@@ -1574,7 +1580,8 @@ bin_evas_evas_cserve2_slave_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
 
 bin_evas_evas_cserve2_slave_LDADD = @EVAS_CSERVE2_SLAVE_LIBS@ @USE_EINA_LIBS@ @USE_EMILE_LIBS@
 bin_evas_evas_cserve2_slave_DEPENDENCIES = @USE_EINA_INTERNAL_LIBS@ @USE_EO_INTERNAL_LIBS@ @USE_EMILE_INTERNAL_LIBS@
-bin_evas_evas_cserve2_slave_LDFLAGS = -export-dynamic
+bin_evas_evas_cserve2_slave_LDFLAGS = -export-dynamic -pie
+bin_evas_evas_cserve2_slave_CFLAGS = -fPIE
 
 bin_evas_dummy_slave_SOURCES = \
 bin/evas/dummy_slave.c