diff --git a/CMakeLists.txt b/CMakeLists.txt index 09570e7dd17..13bc7d23475 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -167,8 +167,6 @@ add_link_options(LINKER:-z,text) add_link_options(LINKER:--no-allow-shlib-undefined) add_compile_definitions(SANITIZE_PTRS) -set(CMAKE_CXX_FLAGS_STATIC "${CMAKE_CXX_FLAGS} -static") -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pie -fpic") if (ENABLE_COMPILETIME_FORMAT_CHECK) add_compile_definitions(ENABLE_COMPILETIME_FORMAT_CHECK) diff --git a/Meta/CMake/serenity_compile_options.cmake b/Meta/CMake/serenity_compile_options.cmake index 6bab7b77085..7cc39f5a25d 100644 --- a/Meta/CMake/serenity_compile_options.cmake +++ b/Meta/CMake/serenity_compile_options.cmake @@ -27,6 +27,8 @@ add_link_options(-fstack-protector-strong) add_compile_options(-g1) +set(CMAKE_POSITION_INDEPENDENT_CODE ON) + if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") add_compile_options(-Wno-maybe-uninitialized) add_compile_options(-Wcast-align) diff --git a/Userland/DynamicLoader/CMakeLists.txt b/Userland/DynamicLoader/CMakeLists.txt index e76ff69b680..469054966e0 100644 --- a/Userland/DynamicLoader/CMakeLists.txt +++ b/Userland/DynamicLoader/CMakeLists.txt @@ -30,7 +30,7 @@ add_definitions(-D_DYNAMIC_LOADER) set(SOURCES ${LOADER_SOURCES} ${AK_SOURCES} ${ELF_SOURCES} ${LIBC_SOURCES1} ${LIBC_SOURCES2} ${LIBC_SOURCES3} ${LIBSYSTEM_SOURCES}) -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti -nostdlib -pie -fpic -DNO_TLS") +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti -nostdlib -pie -fpie -DNO_TLS") if ("${SERENITY_ARCH}" STREQUAL "aarch64") # On aarch64 the stack protector would be accessed before the Loader can relocate itself.