New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[cmake] fix sse detection #10372
[cmake] fix sse detection #10372
Conversation
jenkins build this please |
@wsnipex from what I see - and I don't see much in cmake - it seems you are doing the right thing, checking sse4.1 and so on. If the others are fine, we can test it in master. The none SSE4 cpus get less and less - barely not many ION's available anymore :-) Only @MilhouseVH is still using one in a productive environment. |
jenkins build this please |
I believe Hitcher is an ION lover too. |
@@ -1,7 +1,9 @@ | |||
set(SOURCES CopyFrame.cpp) | |||
if(HAVE_SSE4_1) |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Looks good to me, thx! |
Currently unable to check this out :( are you sure with those -mblah flags for clang? |
didn't change the flags, I just added avx. Those I'm not sure about, but since sse* seems to be the same as on gcc, I guess they are the same for avx as well. |
updated. We now enable all SSE versions <= 4.1 by default(if available). |
jenkins build this please |
bdffffc
to
ffa3825
Compare
jenkins build this please |
jenkins build this please |
@wsnipex looking at the jenkins output it looks ok'ish (for ios no extensions are found as expected). For OSX the output is as follows: Not sure if this is correct. I wonder how this works. It finds the extensions that are available on the build host - right? How to ensure that the target where this runs has the same abilities in the end? Beside that i wonder why it says "-- Cross-Compiling: FALSE" on osx - maybe @fetzerch has an idea? (you know osx is a cross compile as it uses the sdk buildchain, not the host one...) |
Beside that i i've given the kodi-20160901-906b6a8-cmake_sse-x86_64.dmg a shot (from sept. 1st) and it seems to work ok. Won't be able to test anything else for this PR - so OK from me. |
yes, it checks the build host, same as before my change. The difference is that now you can disable sse extensions, which wasn't possible before. Currently only SSE(1) seems to be absolutely necessary to build(at least on linux), and we only compile with up to SSE2 in AudioEngine. I don't think there are any intel based Macs that don't support this. |
|
this broke cmake build with XCode target
|
in addition - its fine when generating gnu make files - strange ... |
Fixes errors such as: CMake Error at xbmc/utils/CMakeLists.txt:194 (target_compile_options): Cannot specify compile options for target "utils" which is not built by this project. Introduced by xbmc#10372. For Xcode (and VS) core_add_library adds the files to compile to the libkodi target. Therefore options have to be set for CORE_LIBRARY which is set by core_add_library and expands to the correct library depending on the generator.
Fixes false SSE detection in some environments, e.g. buildroot for arm
@fetzerch @Memphiz @fritsch for sanity checks and testing