Luya Tshimbalanga wrote on 2022/10/10 2:46:
Hello team,

openshadinglanguage 1.12.6.2 only successfully built on x86_64 architecture but 
failed on others due to the following errors:

In file included from 
/builddir/build/BUILD/OpenShadingLanguage-1.12.6.2/src/liboslexec/oslexec_pvt.h:42,
                  from 
/builddir/build/BUILD/OpenShadingLanguage-1.12.6.2/src/liboslexec/oslexec.cpp:12:
/builddir/build/BUILD/OpenShadingLanguage-1.12.6.2/src/include/OSL/mask.h:7:10: 
fatal error: immintrin.h: No such file or directory
     7 | #include <immintrin.h>
       |          ^~~~~~~~~~~~~
compilation terminated.


That "immintrin.h" is provided by both gcc and clang according to "dnf -C repoquery 
--whatprovides */immintrin.h". Could someone investigate the cause and provide a patch?

See https://koji.fedoraproject.org/koji/taskinfo?taskID=92833862

Thanks in advance


Well, gcc immintrin.h is "/usr/lib/gcc/x86_64-redhat-linux/12/include/immintrin.h" (note 
that "x86_64-" path).

And clang immintrin.h "/usr/lib64/clang/15.0.0/include/immintrin.h" says:
------------------------------------------
#if !defined(__i386__) && !defined(__x86_64__)
#error "This header is only meant to be used on x86 and x64 architecture"
#endif
------------------------------------------

AFAIK immintrin.h is available only on x86 / x86_64.

Then as far as I looked at src/include/OSL/mask.h, it looks like actually this 
supports non-x86 architectures
(as I see #elif defined(__GNUC__) || defined(__clang__) or so),
so just try to guard the inclusion like

#if defined(__i386__) || defined(__x86_64__)
#include <immintrin.h>
#endif

and see how it goes. Maybe some additional modification is needed, but for now 
I expect that
most things may go well.

Regards,
Mamoru
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to