From f1fe6dd843a43e308c8ea3ab68361b81550ba3ce Mon Sep 17 00:00:00 2001 From: chunseok lee Date: Tue, 23 Jan 2018 11:34:15 +0900 Subject: armoring patch : relro, stack-proector, FORTIFY_SOURCE armoring request from PM team Change-Id: I32610d6a1a6a2364fe89a55b05bffcb3ac93e2ff Signed-off-by: chunseok lee --- packaging/coreclr.spec | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/packaging/coreclr.spec b/packaging/coreclr.spec index dbb6c6569f..194cf43c60 100644 --- a/packaging/coreclr.spec +++ b/packaging/coreclr.spec @@ -294,12 +294,19 @@ export PAL_API_TRACING="pal.log" export PAL_DBG_CHANNELS="" %endif +%ifarch %{arm} +# for armoring request from PM group +# FIXME1: If you find better solution like CMAKE_CXX_FLAGS, please fix this +# FIXME2: This patch does not work on non-arm archtecture +export CXXFLAGS+="-fstack-protector-strong -D_FORTIFY_SOURCE=2" +%endif + %if 0%{skipmscorlib} %if 0%{skipnative} # No build native and mscorlib. %else # Build native only. -./build.sh %{_barch} %{_buildtype} clang3.8 skipmscorlib skipgenerateversion skipnuget %{testopt} cmakeargs "-DFEATURE_GDBJIT=TRUE -DFEATURE_DBGIPC=0 -DFEATURE_NI_BIND_FALLBACK=false -DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++" +./build.sh %{_barch} %{_buildtype} clang3.8 skipmscorlib skipgenerateversion skipnuget %{testopt} cmakeargs "-DFEATURE_GDBJIT=TRUE -DFEATURE_DBGIPC=0 -DFEATURE_NI_BIND_FALLBACK=false -DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++ -DCMAKE_SHARED_LINKER_FLAGS=-Wl,-z,relro -DCMAKE_EXE_LINKER_FLAGS=-Wl,-z,relro" %endif %else %if 0%{skipnative} @@ -307,7 +314,7 @@ export PAL_DBG_CHANNELS="" ./build.sh %{_barch} %{_buildtype} -skiprestore skipnative skipnuget %{testopt} %else # Build native and mscorlib. -./build.sh %{_barch} %{_buildtype} clang3.8 skipgenerateversion -skiprestore skipnuget %{testopt} cmakeargs "-DFEATURE_GDBJIT=TRUE -DFEATURE_DBGIPC=0 -DFEATURE_NI_BIND_FALLBACK=false -DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++" +./build.sh %{_barch} %{_buildtype} clang3.8 skipgenerateversion -skiprestore skipnuget %{testopt} cmakeargs "-DFEATURE_GDBJIT=TRUE -DFEATURE_DBGIPC=0 -DFEATURE_NI_BIND_FALLBACK=false -DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++ -DCMAKE_SHARED_LINKER_FLAGS=-Wl,-z,relro -DCMAKE_EXE_LINKER_FLAGS=-Wl,-z,relro" %endif %endif -- cgit v1.2.3