From 8a7f556520409d9684bc55707158afd9fd628d8c Mon Sep 17 00:00:00 2001 From: Username404 Date: Wed, 16 Aug 2023 20:36:05 +0200 Subject: [PATCH] CMakeLists.txt: Allow PIE with UPX since it now seems to work with it Signed-off-by: Username404 --- CMakeLists.txt | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b27ead4..5bdef30 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -186,17 +186,7 @@ option(NO_SELF_PACKER "Disables usage of a self-packer") if (NOT (UPPERCASE_BUILD_TYPE STREQUAL "DEBUG" OR UPPERCASE_BUILD_TYPE STREQUAL "RELWITHDEBINFO" OR NO_SELF_PACKER OR DEFINED EMSCRIPTEN)) include(FindSelfPackers) if (SELF_PACKER_FOR_EXECUTABLE MATCHES upx) # UPX version d61edc9 or higher is required when using a cross-compiler to target the musl C library - if (CMAKE_CXX_LINK_NO_PIE_SUPPORTED OR MINGW) # MINGW does not support PIE, yet the variable is set to NO. - set(SELF_PACKER_FOR_EXECUTABLE_FLAGS ${SELF_PACKER_FOR_EXECUTABLE_FLAGS} --ultra-brute --best) - if (USER_DEFINED_PIE AND CMAKE_POSITION_INDEPENDENT_CODE) - message(NOTICE "-- Could NOT manually enable PIE (UPX is in use)") - endif() - set(CMAKE_POSITION_INDEPENDENT_CODE FALSE) - set_target_properties(${EXENAME} PROPERTIES POSITION_INDEPENDENT_CODE ${CMAKE_POSITION_INDEPENDENT_CODE}) - else() - set(SELF_PACKER_FOR_EXECUTABLE "SELF_PACKER_FOR_EXECUTABLE-NOTFOUND") - message(NOTICE "UPX usage has been disabled because position-dependent executables are unsupported by the current compiler") - endif() + set(SELF_PACKER_FOR_EXECUTABLE_FLAGS ${SELF_PACKER_FOR_EXECUTABLE_FLAGS} --ultra-brute --best) endif() if (NOT SELF_PACKER_FOR_EXECUTABLE STREQUAL "SELF_PACKER_FOR_EXECUTABLE-NOTFOUND") add_custom_command(TARGET ${EXENAME} POST_BUILD COMMAND "${SELF_PACKER_FOR_EXECUTABLE}" ${SELF_PACKER_FOR_EXECUTABLE_FLAGS} $ VERBATIM)