]> git.pld-linux.org Git - packages/qt6.git/blob - no-implicit-sse2.patch
- do not enable sse2 just because compiler supports it
[packages/qt6.git] / no-implicit-sse2.patch
1 --- qt-everywhere-src-6.3.1/qtbase/cmake/QtInternalTargets.cmake~       2022-05-25 10:58:52.000000000 +0200
2 +++ qt-everywhere-src-6.3.1/qtbase/cmake/QtInternalTargets.cmake        2022-08-01 09:55:49.012682536 +0200
3 @@ -315,47 +315,6 @@
4      target_link_options(PlatformCommonInternal INTERFACE "-Wl,--enable-new-dtags")
5  endif()
6  
7 -function(qt_get_implicit_sse2_genex_condition out_var)
8 -    set(is_shared_lib "$<STREQUAL:$<TARGET_PROPERTY:TYPE>,SHARED_LIBRARY>")
9 -    set(is_static_lib "$<STREQUAL:$<TARGET_PROPERTY:TYPE>,STATIC_LIBRARY>")
10 -    set(is_static_qt_build "$<NOT:$<BOOL:${QT_BUILD_SHARED_LIBS}>>")
11 -    set(is_staitc_lib_during_static_qt_build "$<AND:${is_static_qt_build},${is_static_lib}>")
12 -    set(enable_sse2_condition "$<OR:${is_shared_lib},${is_staitc_lib_during_static_qt_build}>")
13 -    set(${out_var} "${enable_sse2_condition}" PARENT_SCOPE)
14 -endfunction()
15 -
16 -function(qt_auto_detect_implicit_sse2)
17 -    # sse2 configuration adjustment in qt_module.prf
18 -    # If the compiler supports SSE2, enable it unconditionally in all of Qt shared libraries
19 -    # (and only the libraries). This is not expected to be a problem because:
20 -    # - on Windows, sharing of libraries is uncommon
21 -    # - on Mac OS X, all x86 CPUs already have SSE2 support (we won't even reach here)
22 -    # - on Linux, the dynamic loader can find the libraries on LIBDIR/sse2/
23 -    # The last guarantee does not apply to executables and plugins, so we can't enable for them.
24 -    set(__implicit_sse2_for_qt_modules_enabled FALSE PARENT_SCOPE)
25 -    if(TEST_subarch_sse2 AND NOT TEST_arch_${TEST_architecture_arch}_subarch_sse2)
26 -        qt_get_implicit_sse2_genex_condition(enable_sse2_condition)
27 -        set(enable_sse2_genex "$<${enable_sse2_condition}:${QT_CFLAGS_SSE2}>")
28 -        target_compile_options(PlatformModuleInternal INTERFACE ${enable_sse2_genex})
29 -        set(__implicit_sse2_for_qt_modules_enabled TRUE PARENT_SCOPE)
30 -    endif()
31 -endfunction()
32 -qt_auto_detect_implicit_sse2()
33 -
34 -function(qt_auto_detect_fpmath)
35 -    # fpmath configuration adjustment in qt_module.prf
36 -    set(fpmath_supported FALSE)
37 -    if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang|GNU|IntelLLVM")
38 -        set(fpmath_supported TRUE)
39 -    endif()
40 -    if(fpmath_supported AND TEST_architecture_arch STREQUAL "i386" AND __implicit_sse2_for_qt_modules_enabled)
41 -        qt_get_implicit_sse2_genex_condition(enable_sse2_condition)
42 -        set(enable_fpmath_genex "$<${enable_sse2_condition}:-mfpmath=sse>")
43 -        target_compile_options(PlatformModuleInternal INTERFACE ${enable_fpmath_genex})
44 -    endif()
45 -endfunction()
46 -qt_auto_detect_fpmath()
47 -
48  function(qt_handle_apple_app_extension_api_only)
49      if(APPLE)
50          # Build Qt libraries with -fapplication-extension. Needed to avoid linker warnings
51 --- qtbase/src/gui/painting/qdrawhelper_p.h~    2022-05-25 10:58:52.000000000 +0200
52 +++ qtbase/src/gui/painting/qdrawhelper_p.h     2022-08-01 10:05:33.794191916 +0200
53 @@ -71,7 +71,7 @@
54  
55  #if defined(Q_CC_GNU)
56  #  define Q_DECL_RESTRICT __restrict__
57 -#  if defined(Q_PROCESSOR_X86_32) && defined(Q_CC_GNU) && !defined(Q_CC_CLANG) && !defined(Q_CC_INTEL)
58 +#  if defined(Q_PROCESSOR_X86_32) && defined(Q_CC_GNU) && !defined(Q_CC_CLANG) && !defined(Q_CC_INTEL) && defined(__SSE2__)
59  #    define Q_DECL_VECTORCALL __attribute__((sseregparm,regparm(3)))
60  #  else
61  #    define Q_DECL_VECTORCALL
This page took 0.046288 seconds and 3 git commands to generate.