summaryrefslogtreecommitdiff
path: root/packaging/0001-Add-pie-to-linker-option.patch
diff options
context:
space:
mode:
Diffstat (limited to 'packaging/0001-Add-pie-to-linker-option.patch')
-rw-r--r--packaging/0001-Add-pie-to-linker-option.patch104
1 files changed, 104 insertions, 0 deletions
diff --git a/packaging/0001-Add-pie-to-linker-option.patch b/packaging/0001-Add-pie-to-linker-option.patch
new file mode 100644
index 0000000000..338e58e2a8
--- /dev/null
+++ b/packaging/0001-Add-pie-to-linker-option.patch
@@ -0,0 +1,104 @@
+From 2839b40789b70f23f25c575817cb9639f940c81e Mon Sep 17 00:00:00 2001
+From: CHUNSEOK LEE <chunseok.lee@samsung.com>
+Date: Wed, 23 Aug 2017 16:42:31 +0900
+Subject: [PATCH] Add -pie to linker option
+
+There have been no -pie linker option.
+This patch adds -pie linker option into crossgen, ildasm, ilasm, and
+corerun, coreconsole
+---
+ src/coreclr/hosts/unixcoreconsole/CMakeLists.txt | 2 ++
+ src/coreclr/hosts/unixcorerun/CMakeLists.txt | 2 ++
+ src/dlls/mscorpe/CMakeLists.txt | 1 +
+ src/ilasm/CMakeLists.txt | 2 ++
+ src/ildasm/exe/CMakeLists.txt | 1 +
+ src/ildasm/unixcoreclrloader/CMakeLists.txt | 2 ++
+ src/tools/crossgen/CMakeLists.txt | 1 +
+ 7 files changed, 11 insertions(+)
+
+diff --git a/src/coreclr/hosts/unixcoreconsole/CMakeLists.txt b/src/coreclr/hosts/unixcoreconsole/CMakeLists.txt
+index 2daeaab..15d6d38 100644
+--- a/src/coreclr/hosts/unixcoreconsole/CMakeLists.txt
++++ b/src/coreclr/hosts/unixcoreconsole/CMakeLists.txt
+@@ -31,4 +31,6 @@ if(NOT CLR_CMAKE_PLATFORM_ANDROID)
+ )
+ endif()
+
++set_target_properties(coreconsole PROPERTIES LINK_FLAGS -pie)
++
+ install_clr(coreconsole)
+diff --git a/src/coreclr/hosts/unixcorerun/CMakeLists.txt b/src/coreclr/hosts/unixcorerun/CMakeLists.txt
+index 07beaae..85499c8 100644
+--- a/src/coreclr/hosts/unixcorerun/CMakeLists.txt
++++ b/src/coreclr/hosts/unixcorerun/CMakeLists.txt
+@@ -32,4 +32,6 @@ if(NOT CLR_CMAKE_PLATFORM_ANDROID)
+ )
+ endif()
+
++set_target_properties(corerun PROPERTIES LINK_FLAGS -pie)
++
+ install_clr(corerun)
+diff --git a/src/dlls/mscorpe/CMakeLists.txt b/src/dlls/mscorpe/CMakeLists.txt
+index fd884b1..b4b1e5e 100644
+--- a/src/dlls/mscorpe/CMakeLists.txt
++++ b/src/dlls/mscorpe/CMakeLists.txt
+@@ -12,6 +12,7 @@ set(MSCORPE_SOURCES
+ if(WIN32)
+ else()
+ add_compile_options(-Wno-delete-non-virtual-dtor)
++ add_compile_options(-fPIC)
+ endif(WIN32)
+
+ add_library_clr(mscorpe STATIC
+diff --git a/src/ilasm/CMakeLists.txt b/src/ilasm/CMakeLists.txt
+index 9e99d02..5668d1f 100644
+--- a/src/ilasm/CMakeLists.txt
++++ b/src/ilasm/CMakeLists.txt
+@@ -64,6 +64,8 @@ if(CLR_CMAKE_PLATFORM_UNIX)
+ palrt
+ )
+
++ set_target_properties(ilasm PROPERTIES LINK_FLAGS -pie)
++
+ # FreeBSD and NetBSD implement dlopen(3) in libc
+ if(NOT CMAKE_SYSTEM_NAME STREQUAL FreeBSD AND NOT CMAKE_SYSTEM_NAME STREQUAL NetBSD)
+ target_link_libraries(ilasm
+diff --git a/src/ildasm/exe/CMakeLists.txt b/src/ildasm/exe/CMakeLists.txt
+index bf09be5..cfd5db0 100644
+--- a/src/ildasm/exe/CMakeLists.txt
++++ b/src/ildasm/exe/CMakeLists.txt
+@@ -54,6 +54,7 @@ if(CLR_CMAKE_PLATFORM_UNIX)
+ coreclrpal
+ palrt
+ )
++ set_target_properties(ildasm PROPERTIES LINK_FLAGS -pie)
+
+ # FreeBSD and NetBSD implement dlopen(3) in libc
+ if(NOT CMAKE_SYSTEM_NAME STREQUAL FreeBSD AND NOT CMAKE_SYSTEM_NAME STREQUAL NetBSD)
+diff --git a/src/ildasm/unixcoreclrloader/CMakeLists.txt b/src/ildasm/unixcoreclrloader/CMakeLists.txt
+index 6a3916b..abbe08c 100644
+--- a/src/ildasm/unixcoreclrloader/CMakeLists.txt
++++ b/src/ildasm/unixcoreclrloader/CMakeLists.txt
+@@ -1,5 +1,7 @@
+ project(unixcoreclrloader)
+
++add_compile_options(-fPIC)
++
+ include_directories(${CMAKE_SOURCE_DIR}/src/coreclr/hosts/unixcoreruncommon)
+ add_library(unixcoreclrloader
+ STATIC
+diff --git a/src/tools/crossgen/CMakeLists.txt b/src/tools/crossgen/CMakeLists.txt
+index 3b9c5ba..b8e9cf7 100644
+--- a/src/tools/crossgen/CMakeLists.txt
++++ b/src/tools/crossgen/CMakeLists.txt
+@@ -50,6 +50,7 @@ if(CLR_CMAKE_PLATFORM_UNIX)
+ coreclrpal
+ palrt
+ )
++ set_target_properties(crossgen PROPERTIES LINK_FLAGS -pie)
+ else()
+ target_link_libraries(crossgen
+ advapi32
+--
+2.7.4
+