From afe50b1cf384dc6394568cb69baebd623b07812d Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Wed, 22 May 2024 19:51:05 -0300 Subject: [PATCH] CMake: remove test for alloca for the global config We don't test for this anywhere in qtbase except for the qmake check (and qmake doesn't use alloca() anywhere). There are a couple of uses of alloca() itself in qtbase, but they are all in platform-specific code (android and qnx platform plugins) or third-party content (sqlite and imgui). The uses of this alloca() test in qtdeclarative have been removed too (it still uses alloca() but has local tests). Change-Id: If3345151ddf84c43a4f1fffd17d1f1519f5d3e39 Reviewed-by: Joerg Bornemann --- configure.cmake | 61 ----------------------- src/corelib/global/qconfig-bootstrapped.h | 7 --- src/tools/configure.cmake | 3 +- 3 files changed, 1 insertion(+), 70 deletions(-) diff --git a/configure.cmake b/configure.cmake index f42d921d7ba..d752b564ee1 100644 --- a/configure.cmake +++ b/configure.cmake @@ -416,55 +416,6 @@ int main(void) } ") -# alloca_stdlib_h -qt_config_compile_test(alloca_stdlib_h - LABEL "alloca() in stdlib.h" - CODE -"#include - -int main(void) -{ - /* BEGIN TEST: */ -alloca(1); - /* END TEST: */ - return 0; -} -") - -# alloca_h -qt_config_compile_test(alloca_h - LABEL "alloca() in alloca.h" - CODE -"#include -#ifdef __QNXNTO__ -// extra include needed in QNX7 to define NULL for the alloca() macro -# include -#endif - -int main(void) -{ - /* BEGIN TEST: */ -alloca(1); - /* END TEST: */ - return 0; -} -") - -# alloca_malloc_h -qt_config_compile_test(alloca_malloc_h - LABEL "alloca() in malloc.h" - CODE -"#include - -int main(void) -{ - /* BEGIN TEST: */ -alloca(1); - /* END TEST: */ - return 0; -} -") - # stack_protector if(NOT WASM AND NOT VXWORKS) # emcc doesn't support this, but the detection accidentally succeeds @@ -1005,18 +956,6 @@ qt_feature("posix_fallocate" PRIVATE LABEL "POSIX fallocate()" CONDITION TEST_posix_fallocate ) -qt_feature("alloca_h" PRIVATE - LABEL "alloca.h" - CONDITION TEST_alloca_h -) -qt_feature("alloca_malloc_h" PRIVATE - LABEL "alloca() in malloc.h" - CONDITION NOT QT_FEATURE_alloca_h AND TEST_alloca_malloc_h -) -qt_feature("alloca" PRIVATE - LABEL "alloca()" - CONDITION QT_FEATURE_alloca_h OR QT_FEATURE_alloca_malloc_h OR TEST_alloca_stdlib_h -) qt_feature("force-system-libs" PRIVATE LABEL "Force the usage of system libraries" AUTODETECT OFF diff --git a/src/corelib/global/qconfig-bootstrapped.h b/src/corelib/global/qconfig-bootstrapped.h index c2fe4661f6c..39793fdaf51 100644 --- a/src/corelib/global/qconfig-bootstrapped.h +++ b/src/corelib/global/qconfig-bootstrapped.h @@ -33,13 +33,6 @@ #define QT_NO_DEPRECATED // Keep feature-test macros in alphabetic order by feature name: -#define QT_FEATURE_alloca 1 -#define QT_FEATURE_alloca_h -1 -#ifdef _WIN32 -# define QT_FEATURE_alloca_malloc_h 1 -#else -# define QT_FEATURE_alloca_malloc_h -1 -#endif #define QT_FEATURE_cborstreamreader -1 #define QT_FEATURE_cborstreamwriter 1 #define QT_CRYPTOGRAPHICHASH_ONLY_SHA1 diff --git a/src/tools/configure.cmake b/src/tools/configure.cmake index f813b727ba3..618dc09f3b5 100644 --- a/src/tools/configure.cmake +++ b/src/tools/configure.cmake @@ -23,8 +23,7 @@ qt_feature("windeployqt" PRIVATE qt_feature("qmake" PRIVATE PURPOSE "The qmake tool helps simplify the build process for development projects across different platforms." - CONDITION QT_FEATURE_settings AND QT_FEATURE_alloca AND - (QT_FEATURE_alloca_malloc_h OR NOT WIN32) AND QT_FEATURE_cborstreamwriter AND + CONDITION QT_FEATURE_settings AND QT_FEATURE_cborstreamwriter AND QT_FEATURE_datestring AND QT_FEATURE_regularexpression AND QT_FEATURE_temporaryfile) qt_configure_add_summary_section(NAME "Core tools")