summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configurecompiler.cmake13
-rw-r--r--src/binder/CMakeLists.txt4
-rw-r--r--src/classlibnative/bcltype/CMakeLists.txt4
-rw-r--r--src/classlibnative/float/CMakeLists.txt4
-rw-r--r--src/coreclr/hosts/osxbundlerun/CMakeLists.txt2
-rw-r--r--src/coreclr/hosts/unixcoreconsole/CMakeLists.txt2
-rw-r--r--src/coreclr/hosts/unixcorerun/CMakeLists.txt2
-rw-r--r--src/coreclr/hosts/unixcoreruncommon/CMakeLists.txt2
-rw-r--r--src/corefx/System.Globalization.Native/CMakeLists.txt2
-rw-r--r--src/debug/daccess/CMakeLists.txt1
-rw-r--r--src/debug/dbgutil/CMakeLists.txt4
-rw-r--r--src/debug/debug-pal/CMakeLists.txt1
-rw-r--r--src/debug/di/CMakeLists.txt1
-rw-r--r--src/debug/ee/CMakeLists.txt4
-rw-r--r--src/debug/ee/wks/CMakeLists.txt2
-rw-r--r--src/debug/ildbsymlib/CMakeLists.txt4
-rw-r--r--src/debug/shim/CMakeLists.txt4
-rw-r--r--src/dlls/dbgshim/CMakeLists.txt2
-rw-r--r--src/dlls/mscordac/CMakeLists.txt4
-rw-r--r--src/dlls/mscorrc/CMakeLists.txt4
-rw-r--r--src/gc/CMakeLists.txt1
-rw-r--r--src/gc/unix/CMakeLists.txt1
-rw-r--r--src/gcinfo/CMakeLists.txt4
-rw-r--r--src/ilasm/CMakeLists.txt4
-rw-r--r--src/ildasm/exe/CMakeLists.txt1
-rw-r--r--src/inc/CMakeLists.txt1
-rw-r--r--src/jit/dll/CMakeLists.txt2
-rw-r--r--src/md/ceefilegen/CMakeLists.txt4
-rw-r--r--src/md/compiler/CMakeLists.txt4
-rw-r--r--src/md/datasource/CMakeLists.txt4
-rw-r--r--src/md/enc/CMakeLists.txt4
-rw-r--r--src/md/hotdata/CMakeLists.txt4
-rw-r--r--src/md/runtime/CMakeLists.txt4
-rw-r--r--src/md/winmd/CMakeLists.txt4
-rw-r--r--src/nativeresources/CMakeLists.txt2
-rw-r--r--src/pal/src/CMakeLists.txt2
-rw-r--r--src/pal/src/eventprovider/lttngprovider/CMakeLists.txt2
-rw-r--r--src/pal/tests/palsuite/exception_handling/pal_sxs/test1/CMakeLists.txt1
-rw-r--r--src/palrt/CMakeLists.txt2
-rw-r--r--src/strongname/api/CMakeLists.txt4
-rw-r--r--src/tools/crossgen/CMakeLists.txt1
-rw-r--r--src/unwinder/CMakeLists.txt4
-rw-r--r--src/utilcode/CMakeLists.txt4
-rw-r--r--src/vm/CMakeLists.txt4
-rw-r--r--tests/CMakeLists.txt4
45 files changed, 10 insertions, 128 deletions
diff --git a/configurecompiler.cmake b/configurecompiler.cmake
index 2d995d6416..5d5925c8bf 100644
--- a/configurecompiler.cmake
+++ b/configurecompiler.cmake
@@ -6,6 +6,9 @@ set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
+# All code we build should be compiled as position independent
+set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+
set(CLR_DEFINES_DEBUG_INIT DEBUG _DEBUG _DBG URTBLDENV_FRIENDLY=Checked BUILDENV_CHECKED=1)
set(CLR_DEFINES_CHECKED_INIT DEBUG _DEBUG _DBG URTBLDENV_FRIENDLY=Checked BUILDENV_CHECKED=1)
set(CLR_DEFINES_RELEASE_INIT NDEBUG URTBLDENV_FRIENDLY=Retail)
@@ -333,10 +336,9 @@ elseif (CLR_CMAKE_PLATFORM_UNIX)
endif ()
# -fdata-sections -ffunction-sections: each function has own section instead of one per .o file (needed for --gc-sections)
- # -fPIC: enable Position Independent Code normally just for shared libraries but required when linking with address sanitizer
# -O1: optimization level used instead of -O0 to avoid compile error "invalid operand for inline asm constraint"
- set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${CLR_SANITIZE_CXX_FLAGS} -fdata-sections -ffunction-sections -fPIC -O1")
- set(CMAKE_CXX_FLAGS_CHECKED "${CMAKE_CXX_FLAGS_CHECKED} ${CLR_SANITIZE_CXX_FLAGS} -fdata-sections -ffunction-sections -fPIC -O1")
+ set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${CLR_SANITIZE_CXX_FLAGS} -fdata-sections -ffunction-sections -O1")
+ set(CMAKE_CXX_FLAGS_CHECKED "${CMAKE_CXX_FLAGS_CHECKED} ${CLR_SANITIZE_CXX_FLAGS} -fdata-sections -ffunction-sections -O1")
set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${CLR_SANITIZE_LINK_FLAGS}")
set(CMAKE_EXE_LINKER_FLAGS_CHECKED "${CMAKE_EXE_LINKER_FLAGS_CHECKED} ${CLR_SANITIZE_LINK_FLAGS}")
@@ -346,6 +348,11 @@ elseif (CLR_CMAKE_PLATFORM_UNIX)
set(CMAKE_SHARED_LINKER_FLAGS_CHECKED "${CMAKE_SHARED_LINKER_FLAGS_CHECKED} ${CLR_SANITIZE_LINK_FLAGS} -Wl,--gc-sections")
endif ()
endif(UPPERCASE_CMAKE_BUILD_TYPE STREQUAL DEBUG OR UPPERCASE_CMAKE_BUILD_TYPE STREQUAL CHECKED)
+
+ # This linker option causes executables we build to be marked as containing position independent code.
+ # It is necessary to make ASLR work for executables.
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pie" )
+
endif(WIN32)
# CLR_ADDITIONAL_LINKER_FLAGS - used for passing additional arguments to linker
diff --git a/src/binder/CMakeLists.txt b/src/binder/CMakeLists.txt
index d92bec6c99..07f6c15bff 100644
--- a/src/binder/CMakeLists.txt
+++ b/src/binder/CMakeLists.txt
@@ -91,9 +91,5 @@ endif(WIN32)
convert_to_absolute_path(BINDER_SOURCES ${BINDER_SOURCES})
convert_to_absolute_path(BINDER_CROSSGEN_SOURCES ${BINDER_CROSSGEN_SOURCES})
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_subdirectory(v3binder)
add_subdirectory(v3binder_crossgen)
diff --git a/src/classlibnative/bcltype/CMakeLists.txt b/src/classlibnative/bcltype/CMakeLists.txt
index 843d7e8b68..67d1ad2bab 100644
--- a/src/classlibnative/bcltype/CMakeLists.txt
+++ b/src/classlibnative/bcltype/CMakeLists.txt
@@ -11,10 +11,6 @@ set(BCLTYPE_SOURCES
variant.cpp
)
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_library_clr(bcltype
STATIC
${BCLTYPE_SOURCES}
diff --git a/src/classlibnative/float/CMakeLists.txt b/src/classlibnative/float/CMakeLists.txt
index bf173fe658..44d40c9259 100644
--- a/src/classlibnative/float/CMakeLists.txt
+++ b/src/classlibnative/float/CMakeLists.txt
@@ -7,10 +7,6 @@ set(FLOAT_SOURCES
floatsingle.cpp
)
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_library_clr(comfloat_wks
STATIC
${FLOAT_SOURCES}
diff --git a/src/coreclr/hosts/osxbundlerun/CMakeLists.txt b/src/coreclr/hosts/osxbundlerun/CMakeLists.txt
index 8af173f970..802c5899ad 100644
--- a/src/coreclr/hosts/osxbundlerun/CMakeLists.txt
+++ b/src/coreclr/hosts/osxbundlerun/CMakeLists.txt
@@ -2,8 +2,6 @@ project(osxbundlerun)
include_directories(../unixcoreruncommon)
-add_compile_options(-fPIE)
-
set(CORERUN_SOURCES
osxbundlerun.cpp
)
diff --git a/src/coreclr/hosts/unixcoreconsole/CMakeLists.txt b/src/coreclr/hosts/unixcoreconsole/CMakeLists.txt
index 2daeaabfa3..6e337b662b 100644
--- a/src/coreclr/hosts/unixcoreconsole/CMakeLists.txt
+++ b/src/coreclr/hosts/unixcoreconsole/CMakeLists.txt
@@ -2,8 +2,6 @@ project(unixcoreconsole)
include_directories(../unixcoreruncommon)
-add_compile_options(-fPIE)
-
set(CORECONSOLE_SOURCES
coreconsole.cpp
)
diff --git a/src/coreclr/hosts/unixcorerun/CMakeLists.txt b/src/coreclr/hosts/unixcorerun/CMakeLists.txt
index 07beaae1df..5ee10b871c 100644
--- a/src/coreclr/hosts/unixcorerun/CMakeLists.txt
+++ b/src/coreclr/hosts/unixcorerun/CMakeLists.txt
@@ -2,8 +2,6 @@ project(unixcorerun)
include_directories(../unixcoreruncommon)
-add_compile_options(-fPIE)
-
set(CORERUN_SOURCES
corerun.cpp
)
diff --git a/src/coreclr/hosts/unixcoreruncommon/CMakeLists.txt b/src/coreclr/hosts/unixcoreruncommon/CMakeLists.txt
index 93a5bbf9ff..c859b0a312 100644
--- a/src/coreclr/hosts/unixcoreruncommon/CMakeLists.txt
+++ b/src/coreclr/hosts/unixcoreruncommon/CMakeLists.txt
@@ -1,7 +1,5 @@
project(unixcoreruncommon)
-add_compile_options(-fPIC)
-
set(CMAKE_INCLUDE_CURRENT_DIR ON)
include(configure.cmake)
diff --git a/src/corefx/System.Globalization.Native/CMakeLists.txt b/src/corefx/System.Globalization.Native/CMakeLists.txt
index 1d4c946f23..86709d71fb 100644
--- a/src/corefx/System.Globalization.Native/CMakeLists.txt
+++ b/src/corefx/System.Globalization.Native/CMakeLists.txt
@@ -37,8 +37,6 @@ endif()
include(configure.cmake)
-add_compile_options(-fPIC)
-
set(NATIVEGLOBALIZATION_SOURCES
pal_calendarData.c
pal_casing.c
diff --git a/src/debug/daccess/CMakeLists.txt b/src/debug/daccess/CMakeLists.txt
index 0e8ccfe67f..241a629948 100644
--- a/src/debug/daccess/CMakeLists.txt
+++ b/src/debug/daccess/CMakeLists.txt
@@ -11,7 +11,6 @@ include_directories(${CLR_DIR}/src/gcdump)
if(CLR_CMAKE_PLATFORM_UNIX)
include_directories(${GENERATED_INCLUDE_DIR})
- add_compile_options(-fPIC)
endif(CLR_CMAKE_PLATFORM_UNIX)
set(DACCESS_SOURCES
diff --git a/src/debug/dbgutil/CMakeLists.txt b/src/debug/dbgutil/CMakeLists.txt
index 1c0d49a24e..6c43b5ca75 100644
--- a/src/debug/dbgutil/CMakeLists.txt
+++ b/src/debug/dbgutil/CMakeLists.txt
@@ -9,8 +9,4 @@ set(DBGUTIL_SOURCES
dbgutil.cpp
)
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_library_clr(dbgutil STATIC ${DBGUTIL_SOURCES})
diff --git a/src/debug/debug-pal/CMakeLists.txt b/src/debug/debug-pal/CMakeLists.txt
index 59ed63ea4f..cea36b7644 100644
--- a/src/debug/debug-pal/CMakeLists.txt
+++ b/src/debug/debug-pal/CMakeLists.txt
@@ -16,7 +16,6 @@ if(WIN32)
endif(WIN32)
if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
add_definitions(-DFEATURE_PAL)
add_definitions(-DPAL_IMPLEMENTATION)
diff --git a/src/debug/di/CMakeLists.txt b/src/debug/di/CMakeLists.txt
index f0a9d41ec9..1c34eac59e 100644
--- a/src/debug/di/CMakeLists.txt
+++ b/src/debug/di/CMakeLists.txt
@@ -89,7 +89,6 @@ if(WIN32)
set(CORDBDI_SOURCES_ASM_FILE ${CMAKE_CURRENT_BINARY_DIR}/${name}.obj)
endif()
elseif(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
if(CLR_CMAKE_TARGET_ARCH_AMD64 OR CLR_CMAKE_TARGET_ARCH_ARM64 OR CLR_CMAKE_TARGET_ARCH_ARM)
set(CORDBDI_SOURCES_ASM_FILE
diff --git a/src/debug/ee/CMakeLists.txt b/src/debug/ee/CMakeLists.txt
index 11a670285b..383ab24cfb 100644
--- a/src/debug/ee/CMakeLists.txt
+++ b/src/debug/ee/CMakeLists.txt
@@ -6,10 +6,6 @@ include_directories(BEFORE ${VM_DIR})
include_directories(BEFORE ${VM_DIR}/${ARCH_SOURCES_DIR})
include_directories(BEFORE ${CMAKE_CURRENT_SOURCE_DIR})
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
set(CORDBEE_SOURCES_DAC_AND_WKS
controller.cpp
debugger.cpp
diff --git a/src/debug/ee/wks/CMakeLists.txt b/src/debug/ee/wks/CMakeLists.txt
index c6a4bccb08..6a1a47c7b8 100644
--- a/src/debug/ee/wks/CMakeLists.txt
+++ b/src/debug/ee/wks/CMakeLists.txt
@@ -54,8 +54,6 @@ if (WIN32)
else ()
- add_compile_options(-fPIC)
-
if(CLR_CMAKE_PLATFORM_ARCH_AMD64 OR CLR_CMAKE_PLATFORM_ARCH_ARM OR CLR_CMAKE_PLATFORM_ARCH_ARM64 OR CLR_CMAKE_PLATFORM_ARCH_I386)
add_library_clr(cordbee_wks ${CORDBEE_SOURCES_WKS} ../${ARCH_SOURCES_DIR}/dbghelpers.S)
else()
diff --git a/src/debug/ildbsymlib/CMakeLists.txt b/src/debug/ildbsymlib/CMakeLists.txt
index 1bd1096ed6..cf72a0e8e9 100644
--- a/src/debug/ildbsymlib/CMakeLists.txt
+++ b/src/debug/ildbsymlib/CMakeLists.txt
@@ -10,9 +10,5 @@ set( ILDBSYMLIB_SOURCES
symwrite.cpp
)
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_library_clr(ildbsymlib ${ILDBSYMLIB_SOURCES})
diff --git a/src/debug/shim/CMakeLists.txt b/src/debug/shim/CMakeLists.txt
index 8720eb7df2..28b7f624c5 100644
--- a/src/debug/shim/CMakeLists.txt
+++ b/src/debug/shim/CMakeLists.txt
@@ -4,10 +4,6 @@ if(WIN32)
add_definitions(-DHOST_IS_WINDOWS_OS)
endif(WIN32)
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
set(DEBUGSHIM_SOURCES
debugshim.cpp
)
diff --git a/src/dlls/dbgshim/CMakeLists.txt b/src/dlls/dbgshim/CMakeLists.txt
index 7e6ae61de1..ca4556bd03 100644
--- a/src/dlls/dbgshim/CMakeLists.txt
+++ b/src/dlls/dbgshim/CMakeLists.txt
@@ -41,8 +41,6 @@ endif(CLR_CMAKE_PLATFORM_DARWIN)
add_library_clr(dbgshim SHARED ${DBGSHIM_SOURCES})
if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-
add_custom_target(dbgshim_exports DEPENDS ${EXPORTS_FILE})
add_dependencies(dbgshim dbgshim_exports)
diff --git a/src/dlls/mscordac/CMakeLists.txt b/src/dlls/mscordac/CMakeLists.txt
index e065eba023..df8d615e0a 100644
--- a/src/dlls/mscordac/CMakeLists.txt
+++ b/src/dlls/mscordac/CMakeLists.txt
@@ -1,10 +1,6 @@
include(${CLR_DIR}/dac.cmake)
add_definitions(-DFEATURE_NO_HOST)
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
set(CLR_DAC_SOURCES
)
diff --git a/src/dlls/mscorrc/CMakeLists.txt b/src/dlls/mscorrc/CMakeLists.txt
index 8f67988a23..366ace4631 100644
--- a/src/dlls/mscorrc/CMakeLists.txt
+++ b/src/dlls/mscorrc/CMakeLists.txt
@@ -9,10 +9,6 @@ if(WIN32)
string(REPLACE "/guard:cf" "" CMAKE_SHARED_LINKER_FLAGS ${CMAKE_SHARED_LINKER_FLAGS})
endif(WIN32)
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_subdirectory(full)
# Only add the small version of the resources if the platform is Windows.
diff --git a/src/gc/CMakeLists.txt b/src/gc/CMakeLists.txt
index ab9f3a0bad..17a774ceb5 100644
--- a/src/gc/CMakeLists.txt
+++ b/src/gc/CMakeLists.txt
@@ -97,7 +97,6 @@ target_link_libraries(clrgc ${GC_LINK_LIBRARIES})
install_clr(clrgc)
if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
# dprintf causes many warnings (https://github.com/dotnet/coreclr/issues/13367)
add_compile_options(-Wno-format)
endif(CLR_CMAKE_PLATFORM_UNIX)
diff --git a/src/gc/unix/CMakeLists.txt b/src/gc/unix/CMakeLists.txt
index fbb94fd513..7c6e627c73 100644
--- a/src/gc/unix/CMakeLists.txt
+++ b/src/gc/unix/CMakeLists.txt
@@ -1,5 +1,4 @@
set(CMAKE_INCLUDE_CURRENT_DIR ON)
-add_compile_options(-fPIC)
include_directories("../env")
include(configure.cmake)
diff --git a/src/gcinfo/CMakeLists.txt b/src/gcinfo/CMakeLists.txt
index 79c4f486da..c9c60db89e 100644
--- a/src/gcinfo/CMakeLists.txt
+++ b/src/gcinfo/CMakeLists.txt
@@ -16,10 +16,6 @@ endif(CLR_CMAKE_TARGET_ARCH_I386)
convert_to_absolute_path(GCINFO_SOURCES ${GCINFO_SOURCES})
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_subdirectory(lib)
add_subdirectory(crossgen)
diff --git a/src/ilasm/CMakeLists.txt b/src/ilasm/CMakeLists.txt
index 6117030dcc..46850fabf2 100644
--- a/src/ilasm/CMakeLists.txt
+++ b/src/ilasm/CMakeLists.txt
@@ -10,10 +10,6 @@ add_definitions(-DFEATURE_CORECLR)
include_directories(.)
include_directories(../ildasm/unixcoreclrloader)
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIE)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
set(ILASM_SOURCES
assem.cpp
writer.cpp
diff --git a/src/ildasm/exe/CMakeLists.txt b/src/ildasm/exe/CMakeLists.txt
index 196f2395b7..a8ca1df3b0 100644
--- a/src/ildasm/exe/CMakeLists.txt
+++ b/src/ildasm/exe/CMakeLists.txt
@@ -10,7 +10,6 @@ add_definitions(-DFEATURE_CORECLR)
include_directories(..)
if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIE)
include_directories(../unixcoreclrloader)
build_resources(${CMAKE_CURRENT_SOURCE_DIR}/../dasm.rc dasm_rc TARGET_CPP_FILE)
diff --git a/src/inc/CMakeLists.txt b/src/inc/CMakeLists.txt
index c38d59587a..a6692ee4b2 100644
--- a/src/inc/CMakeLists.txt
+++ b/src/inc/CMakeLists.txt
@@ -62,7 +62,6 @@ foreach(IDL_SOURCE IN LISTS CORGUIDS_IDL_SOURCES)
list(APPEND CORGUIDS_SOURCES ${C_SOURCE})
endforeach(IDL_SOURCE)
-add_compile_options(-fPIC)
endif(WIN32)
if(FEATURE_JIT_PITCHING)
diff --git a/src/jit/dll/CMakeLists.txt b/src/jit/dll/CMakeLists.txt
index 9e930de69d..624e357989 100644
--- a/src/jit/dll/CMakeLists.txt
+++ b/src/jit/dll/CMakeLists.txt
@@ -3,8 +3,6 @@ project(ClrJit)
set_source_files_properties(${JIT_EXPORTS_FILE} PROPERTIES GENERATED TRUE)
if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-
add_library_clr(clrjit_static
STATIC
${SHARED_LIB_SOURCES}
diff --git a/src/md/ceefilegen/CMakeLists.txt b/src/md/ceefilegen/CMakeLists.txt
index 7170facc6f..57d4cb6338 100644
--- a/src/md/ceefilegen/CMakeLists.txt
+++ b/src/md/ceefilegen/CMakeLists.txt
@@ -21,10 +21,6 @@ set(CEEFILEGEN_HEADERS
../../inc/utilcode.h
)
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_precompiled_header(stdafx.h stdafx.cpp CEEFILEGEN_SOURCES)
if (WIN32)
diff --git a/src/md/compiler/CMakeLists.txt b/src/md/compiler/CMakeLists.txt
index 5000f1b6fc..260731d4a3 100644
--- a/src/md/compiler/CMakeLists.txt
+++ b/src/md/compiler/CMakeLists.txt
@@ -51,10 +51,6 @@ set(MDCOMPILER_HEADERS
convert_to_absolute_path(MDCOMPILER_SOURCES ${MDCOMPILER_SOURCES})
convert_to_absolute_path(MDCOMPILER_HEADERS ${MDCOMPILER_HEADERS})
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_subdirectory(dac)
add_subdirectory(wks)
add_subdirectory(dbi)
diff --git a/src/md/datasource/CMakeLists.txt b/src/md/datasource/CMakeLists.txt
index 489ef343aa..3aaa00afa2 100644
--- a/src/md/datasource/CMakeLists.txt
+++ b/src/md/datasource/CMakeLists.txt
@@ -1,7 +1,3 @@
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
set(MDDATASOURCE_SOURCES
api.cpp
datatargetreader.cpp
diff --git a/src/md/enc/CMakeLists.txt b/src/md/enc/CMakeLists.txt
index 32d640a09a..2f1398d6f1 100644
--- a/src/md/enc/CMakeLists.txt
+++ b/src/md/enc/CMakeLists.txt
@@ -44,10 +44,6 @@ endif(WIN32)
convert_to_absolute_path(MDRUNTIMERW_HEADERS ${MDRUNTIMERW_HEADERS})
convert_to_absolute_path(MDRUNTIMERW_SOURCES ${MDRUNTIMERW_SOURCES})
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_subdirectory(dac)
add_subdirectory(wks)
add_subdirectory(dbi)
diff --git a/src/md/hotdata/CMakeLists.txt b/src/md/hotdata/CMakeLists.txt
index 600da6a2be..92a16cc9f2 100644
--- a/src/md/hotdata/CMakeLists.txt
+++ b/src/md/hotdata/CMakeLists.txt
@@ -25,10 +25,6 @@ set(MDHOTDATA_HEADERS
convert_to_absolute_path(MDHOTDATA_HEADERS ${MDHOTDATA_HEADERS})
convert_to_absolute_path(MDHOTDATA_SOURCES ${MDHOTDATA_SOURCES})
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_subdirectory(dac)
add_subdirectory(full)
add_subdirectory(crossgen)
diff --git a/src/md/runtime/CMakeLists.txt b/src/md/runtime/CMakeLists.txt
index 1111bdb0fe..fc817b1f0d 100644
--- a/src/md/runtime/CMakeLists.txt
+++ b/src/md/runtime/CMakeLists.txt
@@ -41,10 +41,6 @@ set(MDRUNTIME_HEADERS
convert_to_absolute_path(MDRUNTIME_HEADERS ${MDRUNTIME_HEADERS})
convert_to_absolute_path(MDRUNTIME_SOURCES ${MDRUNTIME_SOURCES})
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_subdirectory(dac)
add_subdirectory(wks)
add_subdirectory(dbi)
diff --git a/src/md/winmd/CMakeLists.txt b/src/md/winmd/CMakeLists.txt
index 31dbbbfc4f..567a9758f1 100644
--- a/src/md/winmd/CMakeLists.txt
+++ b/src/md/winmd/CMakeLists.txt
@@ -20,10 +20,6 @@ set(MDWINMD_HEADERS
convert_to_absolute_path(MDWINMD_HEADERS ${MDWINMD_HEADERS})
convert_to_absolute_path(MDWINMD_SOURCES ${MDWINMD_SOURCES})
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_subdirectory(dac)
add_subdirectory(wks)
if(WIN32)
diff --git a/src/nativeresources/CMakeLists.txt b/src/nativeresources/CMakeLists.txt
index e73a0d2129..947a914389 100644
--- a/src/nativeresources/CMakeLists.txt
+++ b/src/nativeresources/CMakeLists.txt
@@ -1,7 +1,5 @@
project(nativeresourcestring)
-add_compile_options(-fPIC)
-
add_library_clr(nativeresourcestring
STATIC
resourcestring.cpp
diff --git a/src/pal/src/CMakeLists.txt b/src/pal/src/CMakeLists.txt
index 3bc1dc89a0..683eda0c7e 100644
--- a/src/pal/src/CMakeLists.txt
+++ b/src/pal/src/CMakeLists.txt
@@ -9,8 +9,6 @@ if(NOT DEFINED ENV{ROOTFS_DIR})
include_directories(SYSTEM /usr/local/include)
endif()
-add_compile_options(-fPIC)
-
if(NOT CLR_CMAKE_USE_SYSTEM_LIBUNWIND)
include_directories(libunwind/include)
include_directories(libunwind/include/tdep)
diff --git a/src/pal/src/eventprovider/lttngprovider/CMakeLists.txt b/src/pal/src/eventprovider/lttngprovider/CMakeLists.txt
index b5bf8e8551..1f49aef64e 100644
--- a/src/pal/src/eventprovider/lttngprovider/CMakeLists.txt
+++ b/src/pal/src/eventprovider/lttngprovider/CMakeLists.txt
@@ -46,8 +46,6 @@ add_library(eventprovider
eventproviderhelpers.cpp
)
-add_compile_options(-fPIC)
-
add_library(coreclrtraceptprovider
SHARED
${TRACEPOINT_PROVIDER_SOURCES}
diff --git a/src/pal/tests/palsuite/exception_handling/pal_sxs/test1/CMakeLists.txt b/src/pal/tests/palsuite/exception_handling/pal_sxs/test1/CMakeLists.txt
index 4a3abc2d64..685ac2ed4f 100644
--- a/src/pal/tests/palsuite/exception_handling/pal_sxs/test1/CMakeLists.txt
+++ b/src/pal/tests/palsuite/exception_handling/pal_sxs/test1/CMakeLists.txt
@@ -3,7 +3,6 @@ cmake_minimum_required(VERSION 2.8.12.2)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
add_definitions(-DFEATURE_ENABLE_HARDWARE_EXCEPTIONS)
endif(CLR_CMAKE_PLATFORM_UNIX)
diff --git a/src/palrt/CMakeLists.txt b/src/palrt/CMakeLists.txt
index d9f7b94d70..77fdc67a52 100644
--- a/src/palrt/CMakeLists.txt
+++ b/src/palrt/CMakeLists.txt
@@ -12,8 +12,6 @@ set(PALRT_SOURCES
variant.cpp
)
-add_compile_options(-fPIC)
-
add_library_clr(palrt
STATIC
${PALRT_SOURCES}
diff --git a/src/strongname/api/CMakeLists.txt b/src/strongname/api/CMakeLists.txt
index 4efcdb953c..6e596d8ea9 100644
--- a/src/strongname/api/CMakeLists.txt
+++ b/src/strongname/api/CMakeLists.txt
@@ -17,10 +17,6 @@ set(STRONGNAME_SOURCES
convert_to_absolute_path(STRONGNAME_SOURCES ${STRONGNAME_SOURCES})
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_subdirectory(dac)
add_subdirectory(wks)
add_subdirectory(crossgen)
diff --git a/src/tools/crossgen/CMakeLists.txt b/src/tools/crossgen/CMakeLists.txt
index 6b96f83998..10ff481069 100644
--- a/src/tools/crossgen/CMakeLists.txt
+++ b/src/tools/crossgen/CMakeLists.txt
@@ -14,7 +14,6 @@ if(WIN32)
endif()
if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIE)
add_definitions(-DNO_NGENPDB)
endif(CLR_CMAKE_PLATFORM_UNIX)
diff --git a/src/unwinder/CMakeLists.txt b/src/unwinder/CMakeLists.txt
index 5cd7bae337..9a5d7829c8 100644
--- a/src/unwinder/CMakeLists.txt
+++ b/src/unwinder/CMakeLists.txt
@@ -19,10 +19,6 @@ list(APPEND UNWINDER_SOURCES
convert_to_absolute_path(UNWINDER_SOURCES ${UNWINDER_SOURCES})
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
if(CLR_CMAKE_PLATFORM_UNIX)
add_subdirectory(wks)
endif(CLR_CMAKE_PLATFORM_UNIX)
diff --git a/src/utilcode/CMakeLists.txt b/src/utilcode/CMakeLists.txt
index 4e5f73faf1..785d1d7e92 100644
--- a/src/utilcode/CMakeLists.txt
+++ b/src/utilcode/CMakeLists.txt
@@ -108,10 +108,6 @@ convert_to_absolute_path(UTILCODE_DAC_SOURCES ${UTILCODE_DAC_SOURCES})
convert_to_absolute_path(UTILCODE_CROSSGEN_SOURCES ${UTILCODE_CROSSGEN_SOURCES})
convert_to_absolute_path(UTILCODE_STATICNOHOST_SOURCES ${UTILCODE_STATICNOHOST_SOURCES})
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
add_subdirectory(dac)
add_subdirectory(dyncrt)
add_subdirectory(staticnohost)
diff --git a/src/vm/CMakeLists.txt b/src/vm/CMakeLists.txt
index 10f8d340aa..7d887c1c03 100644
--- a/src/vm/CMakeLists.txt
+++ b/src/vm/CMakeLists.txt
@@ -21,10 +21,6 @@ else()
endif(UPPERCASE_CMAKE_BUILD_TYPE STREQUAL DEBUG OR UPPERCASE_CMAKE_BUILD_TYPE STREQUAL CHECKED)
endif(CMAKE_CONFIGURATION_TYPES)
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
if(FEATURE_GDBJIT)
set(VM_SOURCES_GDBJIT
gdbjit.cpp
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 665b368746..a55602917e 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -32,10 +32,6 @@ if (WIN32)
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHsc")
endif()
-if(CLR_CMAKE_PLATFORM_UNIX)
- add_compile_options(-fPIC)
-endif(CLR_CMAKE_PLATFORM_UNIX)
-
MACRO(SUBDIRLIST result curdir)
FILE(GLOB children RELATIVE ${curdir} ${curdir}/*)
SET(dirlist "")